This is our first PICO-8 project, made in a little game jam with some friends!
Our prompt was generated by the Cowface Games Ludum Dare theme generator: Underworld and Retreat!
The story goes:
You are Jonathan, a meek demon spy sent to collect Heaven's magical relic. When combined with the one in Hell, it will create the ultimate weapon. The game starts after Jonathan has already infiltrated Heaven and stolen the relic - now take a leap and make your way back home!
This is unfinished so far, but collecting the purity from innocent beings (rainbows, butterflies, etc) will add to your strength in the second half of the game (which doesn't exist yet).
Jetpack - PICO-8 edition, 30 hot levels and various enemies
Jetman does not know how to jump.
Jetman uses his jetpack if you press C.
Jetman can not have more than 4 lives.
Level restart (if you get stuck and can not die) - press X
That's me playing level 12:
Level 1 to 12 - if you get past level 12, it gets easier ;)
Have fun!

Hi,
first off, Pico8 totally blasts me - developing games with it is like a flash back into the 80ies, only with suitable tools. Great work! Too, I like the idea of the strict limitations of the system, but there are some things which may extend them without breaking the idea.
At the moment, the rom in the cartridge supports space for all built in editors. There is sprite space, map space, sound and music space. They are all sufficient for the general "hardware" of Pico8. But the rom lacks of one thing - user space! There is a user space in the ram, following the rom mirrors for all the build in editor data. But why isn't it possible to use the user space in the rom?
This leads to the situation, that one has to initialize all user data in code space. This seems to me a waste of space and tokens. True, from adding the user space to the rom, one problem arises: How to fill it? I spent some thoughts on this with the premise to keep the general idea of Pico8 and its workflow. So, how about this:
1.) Add the user space to the rom. Shouldn't be much work and shouldn't break existing cartidges, although some version tag might be necessary.
2.) Add a general function _build aside to _init, _update and _draw. As you obviously have access to the tokens, I would remove this one from the export versions and wouldn't count the tokens in this function (Including the function itself), but leave the 256kb limit.
This would allow to poke data into the user space without wasting any tokens. One could even preprocess the data, like adding preprocessed line feeds to string data, create lookup tables and such. Further, this would allow us to store an initial titlescreen into the screen ram on boot time... This would be a simple, but great extension of the general build process without touching any of the grounding principels.
A hex editor as an additional tool would be pro, but not required.
Another bigger feature I would love is bank switching. As the "CPU" is definitly an 8 bit one, it could address 64kb of ram. Sure. Virtual ram space is expensive in our imaginary 80ies development world, in which Pico8 exists. But as Pico8 tries to mock up an 8 bit console system, there always was the possibility, that the cartridge-rom was bigger than the system ram. So, how about picking this up by adding a banking space at $8000-$8fff, which is read only and maps to one or more rom banks within the cartridge? They should be limited, up to max 32kb, no doubt, but I think adding bank management would add some extra spice to this retro style development and this wouldn't break anything else either. Initialization would work with the _build function as well. A nice addition to this would be a _switch(a,b) function, which is called, if f1-f4 are pressed and which handles copying editor specific data between the banks, leaving the risk to handle this correctly to the developer him/herself.
Some other features, I would wish for, which are simpler to explain:
a) Add a ceil function, that one is missing painfully.
b) Add some kind of tooltip if you are over a function with the cursor, which shows the token count of that specific function.
c) A simple find with ctrl+f would be great. Currently, I'm using NotePad++ beside Pico8 constantly open for that...
d) Reading the character value as numeric from a strings position. I know, requested several times and there is a workaround, but I don't think this workaround should be needed...
e) Would be nice to be able to set the border color and the background color (e.g. for cls). Could be either background(col) and cls(col) or color(drawcol,clscol,bordercol).
f) Hidden directories are never a good idea to store things, the user shall access or copy by hand. Maybe an extra document directory for cartridges would be nice...
g) Anonymous Functions? Would be great to be able to write code like
h) A modulo function. Needed, writing an own is a waste of space and tokens.
i) The ability to call a function or other code from a string. Maybe something like eval("myfunc(3)")?
startscrolling("Hello World",10,begin cls() end)
Reading, this would trigger a scrolltext with Hello World scrolling over the screen and calling the anonymous function when finished, clearing the screen.
h) A goto line with ctrl+g. Bonus: Accept the name of a function as input.
These are my suggestions so far, maybe they are of some use :)
Keep up the great work!
BOING is my very first game. It is a not so accurate recreation of Pong. This is release 1.11. As it stands, it is quite playable, but I might add new features later on.
Player controls:
Player 1: up and down arrows.
Player 2: E and D
Press X to skip intro and confirm menu selection.
version 1.11
General playability tweaks:
- tweaked paddle speed, ball speed and direction on reflection
- lowered difficulty in 1 player vs cpu mode.
version 1.0
- First official release.
here is a fun little project to make the pico jr portable system clone that can almoust fit in your pocket.
curent specs:
-arduino uno or uno compatible clone
-ssd1331 color oled display mine is only 0.95inch
-button and resistor i only needed 1 for my rainbowcurveJR game but can add more
- optional usb batery pack
since the display is 64x96 im using the extra space for text, could posible turn that int0 a terminal output at some point
this is more or less a proof of concept and probebly needs many improvments since the game im using to test is very simplistic also curent setup wont alow more then 1 game on the device


Hi everybody.
I wanted to create a mandelbrot-generator in Pico. This current version is just a very basic PICO-adaption of code from Rosettacode.org. I'd like to add a zooming and panning functionality. If you'd like to jump in and help, that'd be highly appreciated, as I'm a true maths-idiot.
Best,
Tassilo
Utilizing Potato Maze (apparently also known as Puzzle Cave) I made a puzzle where you play as a tiny murderess and the goal is to collect all the guts and avoid the detectives! Guts unlock weapons so you can harvest more organs.
Still fixing some bugs, but enjoy it.
This was made as part of DMG.to 's Dread Jam 2015
CC4-BY-NC-SA
Pico-8's persistent memory architecture allows several games to share the same persistent cart data.
Therefore, I propose the revival of the SHARECART 1000 project.
It would work something like this: pre-divide the persistent data in areas for numeric values, flags, strings and raw data. Each game gets to use that data as they like.
Thoughts?
This is my second cartridge (even if the first one is not finisehd yet)
i wanted to try play with lights and random levels
You play a girl who try to go deeper into some strange cave.
Avoid the inhabitants or they'll hit you, try to find the exit portal of each level
Arrows to move
C for a useless particles spell
X for a level reset


Current state: Final (1.0)
For Little Awful Jam 2016 (Theme: "Chill")
http://www.awfuljams.com/little-awful-2016
Code: https://github.com/buffis/LittleAwfulJam2016
Music by Pizza (http://pizzamakesgames.itch.io/)






11 comments
















