Web: https://dl.dropboxusercontent.com/u/3594143/yal.cc/r/picodoc/index.html
I've made a small cheat sheet/API reference thing for pico-8's standard functions.
It provides a list of names+arguments, and you can click to expand/collapse sections/function descriptions:
Generally intended to greatly reduce the amount of scrolling back and forth while looking things up.

Previously, clicking on the play link on the forum went to a new page, and I was able to play those cartridges.
Now, clicking on the play link opens a black box, and I can't play.
Currently, the control-shift-J debugging console shows:
pico8.js "preload time: 61 ms" pico8.js:8:23 ">codo_init" pico8.js:7:485 "platform: Emscripten" pico8.js:7:485 "codo_system_init" pico8.js:7:485 "codo_reset_timer" pico8.js:7:485 "codo_gui_init" pico8.js:7:485 "codo_keys_init" pico8.js:7:485 "codo_text_init" pico8.js:7:485 "codo_video_init" pico8.js:7:485 "codo_mouse_init" pico8.js:7:485 "codo_joystick_init" pico8.js:7:485 "<ok" pico8.js:7:485 "codo_set_screen 580 420 8 100codo_fopen_vdisk pico8.dat (rb)" pico8.js:7:485 "codo_fopen pico8.dat (rb) opened" pico8.js:7:485 "codo_load_pod: pico8.dat failed " pico8.js:7:485 "couldn't load gfx1.pod" pico8.js:7:485 "exit(0) called" pico8.js:7:485 Use of getPreventDefault() is deprecated. Use defaultPrevented instead. bbs console.trace(): init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:477 e() init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:477 a.parseJSON() init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:487 Sc() init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:56 y() init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:339 .send/b() init.c2f64d23c4cf69134b807820c0019b241a772cd4.js:365 |

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~[b]update: now you can squiggle while you wiggle[/b]~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ arrow keys // move ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ x // start squigglin' ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ z // stop + enjoy the wiggle ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[i]keep on wigglin'[/i]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |

This is my first PICO-8 game, the one I have been working on in a sideways sort of way ever since trying out the thing for the first time a week and a bit ago. You play as a transforming beach ball person, who must rid their beach of pesky sunbathers to properly enjoy the glorious island day. Cursors move, Z/X will start the game or restart after the end.
It's super silly and I won't be at all upset if you mute the music.
full sized map 128x64, with step-time movement,.
not much to do yet, Z randomizes the forest, . X triggers a sound for testing.
if you move over a seed (smallest objects) the GUI text shows what you are effecting,.
context sensitive controls to be added,. . Take Seed, Drop Seed, Eat Seed,. etc.
should lead to some map manipulation style gameplay eventually.., forest management?
more to come,.
I'm trying to port Write Fight for playing on a cocktail cabinet (players at opposite ends of a face-up screen). So one of the things I want to do is write text & HUD elements oriented to the player who collected it. Is there a function, such as camera(), where I could flip/rotate all draw calls until reset?
I'm doing work-arounds in the meantime, but I thought I'd throw out the question.
Thanks.
Little test space game, might flesh it out a bit more, loving pico-8!
Update : 29 April 2015
Added a bit of game flow like title screen and stuff.
Enemies move towards you.
You can die.
Score!
Konami Morning Music
TODO
Add a star field
scrolling
generate levels on seeds
enemy motherships spawn enemies?
momentum based ship movement?
Who knows! Just kinda going with ideas when i get a little tinker time.

I was playing some of the cartridges last night on my TV, running Chrome on Android 4.4 on the Tronsmart Orion R28 hardware (RK3288 chip),. I had a XBOX 360 USB wired gamepad plugged in. The controllers Left Analog stick AND the D-pad functioned well,. however the only button that worked was the Back button would go back a web page ending the game. It would be great if the action buttons could be mapped as well,. since the browser supports fullscreen and the games play well.
I just tried the 360 controler on my win7 PC and running on Chrome I get no gamepad support,. however running the actual Pico-8 I get movement with the Left Analog Stick and the Action Buttons are mapped and work,. however the D-pad does not work,.

So, this may not work in future versions of Pico-8, but right now, I've noticed that if you do a load() within your game game code, you still have your base ram untouched until you run run(). With that info, you can use objelisks technique (https://www.lexaloffle.com/bbs/?tid=1860) and use cstore(x,y,z) and some empty space in the spritesheet to transfer info from one cartrige to another. Then use run() to switch to the new cartrige and peek to read back the transfered info. A single sprite equals 32 bytes with is good enough for a metroidvania.
As I said, there's no guarantee that load() will work like that in the future and it probably wouldn't work like that on a "real" Pico-8 console, so in a way it could be considered cheating. But right now it works.

thanks guys! :D We've added an updated version that now uses a rather scary looking "MASTERBUN/GLITCHBUN" to draw all of the sprites (except the chubby one), using pal() to recolour the different areas as needed to save space.
We went from 6 sets of 2x2 sprites at 4 frames each (96 sprite-blocks) to only 2 sets (32 sprite blocks, + potential for more buns). This is especially important since we have not decided if we want to use the shared memory space for sprites or for the map.
The only problem is that pal(x, 0) remaps x to actual black instead of transparent, as I expected. Unless I find a work around I will have to create additional master-sprites for bunnies with bows on one and both ears (bringing the total back up to 64 blocks), which is really too bad.
This is my first time programming a game myself (and the first time working with my sister!) and I'm really please with how things are going. If anyone knows the solution to the transparency/black problem, I'd love to hear it!
old version:






4 comments




