Log In  

BBS > Superblog
Posts: All | Following    GIFs: All | Postcarts    Off-site: Accounts

Cart #43223 | 2017-08-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

2
1 comment


I'm making a swimming game and need help making a jump/move

The current code isn't quite giving me the right feel because I don't know how to use calculus here
(i presume that's what I need to do)

can I get a fix for my issue, please?

cls(12)

x=60
y=60

function _update()
 y=y+.7
 if btnp(2) then y=y-10 end --slapsh up
 if btnp(0) then x=x-3 end --splah back
 if btnp(1) then x=x+3 end --splash forward
end 

function _draw()
 cls(12)
 circfill(x,y,4,7)
end

edited for online use

4 comments


Cart #43204 | 2017-08-13 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA


It isn't really much of anything yet, to be quite honest, I am just learning the basics of programming, and as such am trying to keep it simple.

I have a few ideas for how I would like to expand it, but, before it becomes too messy, I am looking for feedback on how I could make this code more space efficient, more expandable, etc to maximize the amount I am able to add to it. For example, the bottom lower corner is being reserved for a graphical map, story elements, etc. This is just a basic start, from someone beginning in programming, looking for some feedback, good or bad.

An example of a minor annoyance, which I have yet to solve, is that I need to make the top item of each menu an unclickable word, else the keypress that leads to a menu immediately clicks the first item, even using btnp(4)

Also, the beginning stats are by no means balanced, at this point this is pretty much just a silly 'proof of concept.'

0 comments


Cart #46942 | 2017-12-02 | Embed ▽ | License: CC4-BY-NC-SA
4


Your rocket has run out of fuel, and you have landed on this planet in hopes of finding some. This is the first game I have uploaded to the BBS. In this update I re-positioned an object so that an unintended death could not occur.

4
4 comments


Really simple question, when (if at all) will there be ports of Pico-8 for Android and iOS?
I think that would be a perfect way to emphasize the portability and make-a-game-anywhere aspect that I love about Pico-8.

I have read in the FAQ that says "Ports for iOS and android and possibly other platforms are planned after 1.0", which I dont know if its still accurate. Any ideas on if this will still be a thing?
Id even buy it another time ;P

EDIT: if it does get ported somehow, please add Hardware-keyboard support, not just for typing but also for actually playing :P

2
0 comments


It's pretty fun to make simple stuff on Pico-8. But it's difficult to try to making complicated stuff on Pico-8

I'm a very amateur programmer since I'm only a teen. I know practice is good for this kind of thing and I shouldn't rush into it.

But I can't find many of the things I see on other Pico-8 games on the wiki, how to use them, or when I will need them.

So can some of you professionals give me some tips and things that I can do in my code that may help when I try making my games

that would be great if you could tell me some stuff

Pico-8 is what is finally making me able to code things other than the Scratch and Hopscotch stuff because it gets all the weird things you have to do out of the way and has a simple interface

2
5 comments


This is just a simple little visual toy I made, not an actual game.

Cart #43189 | 2017-08-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
8

I decided to try making a Tweetcart the other day, and realized that the method I was using generated a lot of different animated patterns when you changed just one value in it (180 patterns, to be exact). So, I built a menu around it to manually change that value and wound up with this.

And yes, I did go through all 180 possibilities to find the ones I though looked good. I had a long car ride and time to kill, ok?

Anyways, just thought I'd put this here in case people were interested. Feel free to post your favorites!

[i]NOTE: You can find the original Tweetcart (or at least a gif of it and a code screenshot) on my Twitter: @Jusiv_
It's the same effect as Pattern #5 in this version.

[ Continue Reading.. ]

8
0 comments


Cart #43187 | 2017-08-12 | Code ▽ | Embed ▽ | No License
1

A game made in 1 hour for the 1 hour game jam.

Shoot the blue thing 100 times.

1
0 comments


I've found luacheck useful when writing lua. It is very much like JSHint for JavaScript and other static analysis tools in general. Luacheck finds usage of undefined global variables, unused variables and values, accessing uninitialized variables, unreachable code, etc.

Here is a Gist of my pico-8 .luacheckrc, I keep it in the parent directory of my pico-8 files. I also use p8tool so I can work on lua files directly.

std = {
  -- these globals can be set and accessed.
  globals = { "_init", "_draw", "_update", "_update60" },

  -- these globals can only be accessed.
  read_globals = {
    --[[
      copy(
        `-- from ${location.href} ${(new Date()).toISOString()}\n` +
        [].slice.call($('#WikiaMainContent').find('ul>li>a,.mw-headline'))
          .map(a => a.tagName == 'A' ?
            `'${a.innerText.replace(/\(.*/g,'')}', -- ${a.innerText.trim()}` :
            `\n-- ${a.innerText.trim()}`).join('\n'))
    ]]

    -- from http://pico-8.wikia.com/wiki/APIReference 2017-08-12T17:14:36.282Z

    -- The game loop
    'flip', -- flip()

    -- Graphics
    'camera', -- camera([x,] [y])
    'circ', -- circ(x, y, r, [col])
    'circfill', -- circfill(x, y, r, [col])
    'clip', -- clip([x,] [y,] [w,] [h])
    'cls', -- cls()
    'color', -- color(col)
    'cursor', -- cursor(x, y)
    'fget', -- fget(n, [f])
    'fset', -- fset(n, [f,] [v])
    'line', -- line(x0, y0, x1, y1, [col])
    'pal', -- pal([c0,] [c1,] [p])
    'palt', -- palt([c,] [t])
    'pget', -- pget(x, y)
    'print', -- print(str, [x,] [y,] [col])
    'pset', -- pset(x, y, [c])
    'rect', -- rect(x0, y0, x1, y1, [col])
    'rectfill', -- rectfill(x0, y0, x1, y1, [col])
    'sget', -- sget(x, y)
    'spr', -- spr(n, x, y, [w,] [h,] [flip_x,] [flip_y])
    'sset', -- sset(x, y, [c])
    'sspr', -- sspr(sx, sy, sw, sh, dx, dy, [dw,] [dh,] [flip_x,] [flip_y])

    -- Tables
    'add', -- add(t, v)
    'all', -- all(t)
    'del', -- del(t, v)
    'foreach', -- foreach(t, f)
    'pairs', -- pairs(t)

    -- Input
    'btn', -- btn([i,] [p])
    'btnp', -- btnp([i,] [p])

    -- Sound
    'music', -- music([n,] [fade_len,] [channel_mask])
    'sfx', -- sfx(n, [channel,] [offset])

    -- Map
    'map', -- map(cel_x, cel_y, sx, sy, cel_w, cel_h, [layer])
    'mget', -- mget(x, y)
    'mset', -- mset(x, y, v)

    -- Memory
    'cstore', -- cstore(dest_addr, source_addr, len, [filename])
    'memcpy', -- memcpy(dest_addr, source_addr, len)
    'memset', -- memset(dest_addr, val, len)
    'peek', -- peek(addr)
    'poke', -- poke(addr, val)
    'reload', -- reload(dest_addr, source_addr, len, [filename])

    -- Math
    'abs', -- abs(x)
    'atan2', -- atan2(dx, dy)
    'band', -- band(x, y)
    'bnot', -- bnot(x)
    'bor', -- bor(x, y)
    'bxor', -- bxor(x, y, )
    'cos', -- cos(x)
    'flr', -- flr(x)
    'max', -- max(x, y)
    'mid', -- mid(x, y, z)
    'min', -- min(x, y)
    'rnd', -- rnd(x)
    'shl', -- shl(x, y)
    'shr', -- shr(x, y)
    'sin', -- sin(x)
    'sqrt', -- sqrt(x)
    'srand', -- srand(x)

    -- Cartridge data
    'cartdata', -- cartdata(id)
    'dget', -- dget(index)
    'dset', -- dset(index, value)

    -- Coroutines
    'cocreate', -- cocreate(func)
    'coresume', -- coresume(cor)
    'costatus', -- costatus(cor)
    'yield', -- yield()

    -- Values and objects
    'setmetatable', -- setmetatable(tbl, metatbl)
    'type', -- type(v)
    'sub', -- sub(str, from, [to])

    -- Time
    'time', -- time()

    -- System
    'menuitem', -- menuitem(index, [label, callback])

    -- Debugging
    'assert', -- assert(expr)
    'printh', -- printh(str, [filename], [overwrite])
    'stat', -- stat(n)
    'stop', -- stop()
    'trace', -- trace()
  }
}
6
0 comments


Cart #43175 | 2017-08-12 | Code ▽ | Embed ▽ | No License
14

Star-flowers bloom once in a hundred years, but only if their roots are rich with rain and electricity.

You are a cute cloud, in charge of a field of star-flowers.

Wield your ancient powers over wind and water to nurture your star-flower garden, and pump the field's battery full of electricity! Watch out for missiles and chompers along the way!

Good luck!

14
3 comments


Cart #43172 | 2017-08-12 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

2
2 comments


I'm trying to make a (sort of) rhythm game in Pico-8. It should be possible, using stat(20) for example, to trigger events in time with the music. Inside the console, it works fine, and running the exported version in (Mac OS) Chrome or Safari; but run in Firefox, the music is out of sync; sometimes early, sometimes late.

Has anyone else come across this problem?

0 comments



ID is "polesmith"

(Feel free to delete this post.)

7 comments


Hiya. I don't know if this is the best place to ask so apologies if it's not!

Does the Pocket CHIP support the latest version of PICO 8? I seem to remember a while ago that it was lagging behind a bit...

Thanks for any help. :)

0 comments



Hi! I just started using PICO-8 and I'm having a little trouble with my collision code.

It works fine when colliding against walls, but colliding against corners (the red tiles) breaks it.

Here is the collision part of the code:

function placeMeeting(x, y, f)
    local tilesize = 8
    local tilex = flr(x/8)
    local tiley = flr(y/8)
    local s = mget(tilex, tiley)
    return (fget(s, f))
end

And this is the movement part:

        if (btn(0)) then
            if (not placeMeeting(p.x-1, p.y, solidtile)) then
                p.x -= p.speed
            end
            p.mirror = true
        elseif (btn(1)) then
            if (not placeMeeting(p.x+p.bbox_w+1, p.y, solidtile)) then
                p.x += p.speed
            end
            p.mirror = false
        end

        if (btn(2)) then
            if (not placeMeeting(p.x, p.y-1, solidtile)) then
                p.y -= p.speed
            end
        elseif (btn(3)) then
            if (not placeMeeting(p.x, p.y+p.bbox_h+1, solidtile)) then
                p.y += p.speed
            end
        end

[ Continue Reading.. ]

2 comments


I have pico 8 on my home pc, my work pc, and my raspberry pi, but they each have their own favorites list. Is there a way to put this favorites list in the root path? I have all my carts and such in a dropbox share that all three machines use, but not the favourites.txt.

Also is there a way to sort favourites.txt (other than just editing the file and sorting by the column of the title of the game)?

0 comments


Is there any way to make a pattern stop short of 32 notes? (like famitracker has a Bxx effect for jumping to another pattern/frame) I have some music with a repeating section but it won't fit in 32 notes. if I could make it stop at say note 24 (or whatever it ends up being) I could repeat this section in a pattern and not have to waste an extra sfx.

4 comments


The mobile player on the forum is pretty nice, but it's missing one important feature : It doesn't disable the long-press context menu.

If you hold the d-pad or a button down (as you do) it pops up a context menu, making the games frustrating.

Until this is fixed, I recommend using this bookmarklet to fix it.

javascript:(function()%7Bwindow.oncontextmenu%20%3D%20function(event)%20%7Bevent.preventDefault()%3Bevent.stopPropagation()%3Breturn%20false%3B%7D%7D)()

The forum strips out JavaScript links, so I can't link to the bookmarket, but make a new bookmark, and copy/paste that code into the URL field. Tapping on it will disable the context menu, making Pico8 a joy to play on mobile firefox.

1
2 comments


I'm noob with PICO-8 and wanna play "Mary had a little lamb" using only beeps from code. Not using sfx editor, not using music.

however, i dont hear any beeps. Whats wrong?

	print("Press arrow keys ",12,64,0)
        ID=0

	if btnp(0) then sfx(id,"E-4")
	  elseif btnp(1) then sfx(id,"E-6")
	  elseif btnp(2) then sfx(id,"E-7")
	  elseif btnp(3) then sfx(id,"E-5")
	end
3 comments




Top    Load More Posts ->