I decided that the first game I should make for this system would be an homage to the earliest game I have strong memories of playing : “Moon Mine“. Published in 1983, “Moon Mine” was available only on the TI-99/4a, Which means that nobody has ever heard of it. I had it though, and it was a blast. For years this was my favorite game.
So here’s my remake. Made from memory and by closely examining the old game manual I found in the basement.
The original classic was made by Rob F Hendren and John Phillips and I’ve always felt it didn’t get enough nostalgia love.
The instructions are in the system menu. Basically use the arrow keys to move the lasers. O to fire. X to beam down a crew-member to retrieve minerals and water samples.
Controls
Z to start. Z to flip box over to next side. Arrows move the barcode scanner. X scans a barcode. Z to restart from the game over screen.
Objective
Scan as many barcodes as you can in the 90 seconds allotted. Be careful not to flip the boxes too fast, or you'll have to go all the way back around.
Commentary
This game has been on the back burner for ages. The inspiration was trying to simulate a cube/box that you could flip over in a semi-real way, but I spent ages messing with that and ultimately couldn't make it work. It was a classic case of solving a problem the game didn't need to be solved. I changed it so that the box always flipped over to the 'next' side, so you just needed to carefully press one button instead of imagining a real cube. It's not as cool, but it did allow this game to happen.
itch.io page: here

made for BANANA JAM to be played on a DIY arcade machine (made from banana boxes) on RETROSPELSMÄSSAN 2017 at BANANPIREN. check out the jam entry here: https://catnip.itch.io/monoid
made by Ossian Borén (pod3x3) and Erik Svedäng ({Else.Heartbreak})
MONOID is a shooter with a polarity mechanic (Ikaruga, Fast Racing). You can only be hurt by projectiles the flashing projectiles, switch polarity to change them into powerups instead! you have a shared energy meter for both health and ammo.
you get 1 point per pickup and 10 points per enemy, but each pickup you get without getting it will add a multiplier of 1. while you have less than 20 energy that multiplier is doubled. have fun!


How to add extra keys
observing a vertical shooter game PAT Shooter all the default player 1 keys (up, down, left right, z,x) were assigned I was trying to add more keys (for example 'A' for refill rockets).
btn(0),btn(1),btn(2),btn(3),btn(4),btn(5) -> all working as default player 1 keys but now I want to add
btn(6). Can anyone tell me how to do that



Hey everyone! I suffer from idea blocks pretty regularly so I made this tool. Most of the time game idea generators will generate a cool name or something, but this one is based around relationships between verbs. You can arrange the cards however you like, using as many (or as few) cards as you'd like, and then generate ideas! I like to just continually generate them until something pops out to me and then I save a screenshot to the desktop.
I hope it helps someone other than me!


Here is a function I made that is small and simple but may be useful to everyone. It launches a bunch of functions you've set, checking how many times each can be called in a frame and print sorted results so that the quickest function shows first. So, tailor made for optimisation or just know which is the fastest of many functions achieving the same goal. For example I needed to answer this agonizing question: when drawing a single big "+" sign, is it better to use 2 rectfills but draw twice the center zone, or to draw 3 rectfills (middle bar, plus left and right bars) so that no pixel is drawn twice? Now I'm ready and prepared to meet the Sphinx.
The running example here shows what is the fastest way to clear a screen between a cls or a rectfill (well, I made the wrong choice for months!) Just for fun I added clearing the screen with a bunch of lines and even psets. Surprisingly, lines are not that a bad choice against cls. Maybe there are more efficient ways I don't know, with peek or so. With this function they're easy to test.
The use and process are simple, the code above should be clear enough. If not, just declare an array containing your functions to test, each as an object with 2 properties :
- name: used for showing results
- f: your function
Then in _update (or _update60 if you want to get results every 1/60 second) call stat1comparator() with your functions array as argument. stat1comparator will then launch each function as many times it is possible before going beyond one frame and show results once it's done. For precision results also show how many iteration were called before going outside of the frame, and what were the precise time needed (with the limit of Pico float precision). The ratio iterations/time is used to sort the list. Just be aware that to get consistent results stat1comparator needs entire frames, so don't call it after any other processing.
And for the "+" enigma answer, I let you find by yourself :).

I made this to try and learn a bit more about PICO-8. I am a programmer by trade but this is the first wee game I've tried to make in PICO-8.
I apologise for the terrible music - this is definitely the thing I am weakest at. :)
I set myself a target of finishing something within approximately a day of effort. The eating microgame never made it into this minigame.


Here's a stab at some lossy compression of the Bad Apple animation-- clocking in at 25 seconds long without even touching the sprite sheet.
The compression algorithm finds the best possible dictionary of 32 different 8x8 tiles with which to represent all of the frames of the animation. Then for each 8x8 chunk of each frame that is being compressed, I find the closest possible match out of this dictionary and record the index of this chunk. Finally, I use run length encoding to compress the string of dictionary indexes for each frame. (That's the idea at least...)
That gets things down to around 54 bytes per frame while still being recognizable.
This is inspired by gamax92 (https://www.lexaloffle.com/bbs/?tid=3263) and this C64 version (https://www.youtube.com/watch?v=OsDy-4L6-tQ)
-ElectricGryphon








I wonder, once the highscores feature comes into play, will it be possible to do some extremely limited networking using it? Say for example, instead of using the highscore number as a highscore number, but instead as data. I imagine it wouldn't allow for any real-time networking, but I think it's worth keeping in mind that the highscore number could be used for other things than scores. Maybe showing what decisions other players took, like a Telltale game. Or gravestones of players who have passed away and where.









Does printh() cause any output when exported to html5? I have a pico8 game which creates a file that can be used to program a robot and I was thinking about it's ability to be deployed on a webserver which then serves the programming files as a download to users. Is this possible or will printh() only work on local pico8 machines?
Thanks
Marceline
So I was running out of sprites and I thought "there must be a decent way around this"
a few hours later I came up with this. This cart is just showing 3 frames of a 128x128 animation - three times the size of the sprite sheet. You can peek at the code to see the relevant function - string_to_sprite() - but if you want to know the pipeline, here's how I did it.
-I just searched for some anime gif at 128x128 to show this off, picked the first one I thought looked neat, opened it in Aseprite.
-I switched over to the pico-8 palette and remapped the image to it
-Then I went to pico-8 and typed the command "export img.png" - this gives you a 128x128 image of the spritesheet.
-Then I went back into Aseprite, opened img.png and copied the first frame of animation to it, and saved.
-Back in pico-8, typed the command "import img.png" - now we have the first frame of animation.
-In the sprite sheet editor view, I copied a 16x4 selection of sprites by holding shift + clicking and dragging, ctrl+c
-I then went into notepad, and pasted the selection. Now, if you do this you'll see a long string, starting with



Started playing around with 2D sims - fluids seem hard to do at reasonable resolution given CPU constraints, but waves are just fine. More natural boat control and bilinear interpolation for wave rendering (more detail! less blocky!) both might make this more fun.
I'm also wondering if there's a racing game here where you can interact with the waves and they aren't just part of the scenery.


