Mini Running Ant by drludos
"Tiny Creatures" you say? Doesn't it sound a lot like... "Pokémon" (Pocket Monster)? And what is "tiny" in the Pokémon World? You've guessed it, it's the "Pokémon Mini" Console!

So, for my LD56 compo entry, I'm happy to present you a brand new (tiny) game for the Pokémon Mini console: Mini Running Ant!

The game is simple. You play as a ant, a must go as far as possible without touching a rock. Use Left and Right to avoid rocks. Press and hold any button to run instead of walk. Here is the game running on real hardware, but it works the same on emulators:

The gameplay is simple, but hopefully it'll entertain you for a brief moment! And if you are looking for a challenge, my current highscore is 347 points!

Emulator recommandation
You can use any Pokemon Mini emulator to play this game, such as Pokémini, available for a wide variety of platforms (Win, Linux, consoles, etc.): https://sourceforge.net/projects/pokemini/files/0.60/ It's even available as a RetroArch core, so you can use it on almost a wide range of retro emulation devices too!
And of course, if you have an actual Pokémini mini at home (+ a Flashcart), you can course use it on real hardware too!
About
The game was made from scratch in about 7 hours, with an extra 3 hours spent on download, installing and configuring the SDK to create Pokémon Mini games. So that's about 10 hours in total that I was able to dedicate to the Ludum Dare compo this time. It's less that I would have hoped to, but I'm still happy to have managed to submit something, and to have been able to try my hand at making game for a new retro console.
I've been toying with the idea of making a game for the Pokémon Mini as soon as I received the Pokémini Flashcart from Inside Gadgets (https://shop.insidegadgets.com/product/pokemon-mini-2mb-flash-cart/), but I never made the jump. When I discovered the "Tiny Creatures" theme, I immediately thought about Pokémon. And from that, I soon got the idea to finally try to make a game for one of the smallest game console there is!
Regarding the game itself, it was developed 100% in C, using the wonderful "S1C88 compiler" maintained by the wonderful Pokémon Mini homebrew community: https://github.com/pokemon-mini/c88-pokemini
The sample program was great to have a working basis, and the various tools hosted on this repo will help convert graphics to Pokemon mini format.
I also heavily leaned on the community wiki to learn how the machine works: https://wiki.sublab.net/index.php/Pokemon_Mini
It's a very interesting machine, with a dedicated graphic chip that can display 24 16x16 pixels sprites and a scrolling background plane on a gorgeous 1bit screen gathering 96x64 pixels (the theme said "Tiny"!).
The current game has no sound, as this part is more complicated and I didn't have the time to work on it. Maybe in a post compo version?
In order to help fellow LDer making their own Pokémon Mini games, I've tried to comment the source code as much as possible. And also feel free to ask me any question you might have about it.
Well, that was a fun ride, I hope you'll enjoy the end result!
| Pokémon Mini (ROM file) | https://drludos.itch.io/mini-running-ant-pokemon-mini |
| Source Code (S1C88 compiler) | https://drludos.itch.io/mini-running-ant-pokemon-mini |
| Original URL | https://ldjam.com/events/ludum-dare/56/mini-running-ant |
Ratings
| Overall | 39th | 4.06⭐ | 27🧑⚖️ |
| Fun | 93th | 3.66⭐ | 27🧑⚖️ |
| Innovation | 2th | 4.54⭐ | 27🧑⚖️ |
| Theme | 7th | 4.4⭐ | 27🧑⚖️ |
| Graphics | 56th | 4.1⭐ | 27🧑⚖️ |
| Audio | 247th | 2.438⭐ | 18🧑⚖️ |
| Humor | 205th | 2.725⭐ | 22🧑⚖️ |
| Mood | 138th | 3.476⭐ | 23🧑⚖️ |
| Given | 22🗳️ | 25🗨️ |
Great job! Programming this low level is always a headache for me. I'm amazed you were able to make this in 7 (+3) hours!
I was wrong.
High score 264
I was really determined to get over 100. Got *so close* with a best score of 98. I think it mostly came down to luck with the rock placement.

Nice work, it's really cool to see a project that's able to run on obscure hardware. And kudos for the work you did on the documentation. I think that's a really great contribution especially in a game jam that has education, sharing, and open source as part of its core values.
P.S., it might be nice to link directly to a download page for the emulator. I had to search around a bit to find one, and it might put some people off from trying your game out.

(The emulator I used was Pokemini (https://sourceforge.net/projects/pokemini/), which worked reasonably well out of the box, in case anybody is scrolling through the comments looking for emulator recs.)
This is very cool stuff, tying the hardware into the theme is truly next level. Amazing idea! Feels great to control too, I never would have guessed that this was only seven hours and your first project on the hardware. Plus with annotated source code and everything! Really awesome stuff! Great work on this game, I enjoyed it a lot!
my high score is 210

The sprite format was a pain and I had to actually look at the reference but otherwise... this is nice code. Didn't even have to *actually* modify the code to compile it, I only had to, uhh, implement a suitable fraction of the Pokemon Mini in a cheeky way.
Anyway, it's a pretty simple game and quite nice to play.
Also here's the wrapper source if anyone's interested, it's quite rough but it works fine on, uhh, a high-end machine? https://gist.github.com/iamgreaser/0887892e6e8290c7c0c92c470362b447
Booting it up, it's really impressive for something made from scratch for a game jam! If the ant could get a bit closer to the edges, that might make it easier to avoid unwinnable situations (by giving more options to the player).
My high score:

Game itself is extremely luck based, but with enough persistence I got a golden seed!

Although I have already too many unfinished NES stuff I should work on... I'm kinda curious about this thing, maybe I'll try playing with it someday (I'll bookmark this page just in case, your source code and references will be helpful).
PS: My best score was almost 90 points.
This weekend, I managed to beat my own highscore, and reached 347 points on real hardware. I've updated the page with a new highscore photo, and also a short gameplay video of the game running on real hardware.
For now, the **current record holder is @samuli with 413 points**, congratulations!
Thanks @andrewkennedy for the wise suggestion to put an emulator link here, I've updated the page to do so.
Thanks a lot @iamgreaser for taking the time to port the game to Linux, this is very impressive! That's what I love with Ludum Dare and all the game being open-source, the community always comes up with interesting and unexpected ideas and enhancements! :) And yes the sprite format is a bit odd, with the first bytes of the tile data being "masks", but this technical choice makes the consoles quite easy to develop games for, as mask and graphics data are stored together and thus easy to update when animating sprites. Really thanks for your contribution, it's really motivating to keep doing games! :)
And @wendel-scardua I recommend making games for the Pokémon Mini, it's a very fun experience for me. The console is actually quite close to a Game Boy or a NES in its spirit. It has a "PPU" (here called the DPC) capable of displaying one plane of scrollable background tilemap *(various sizes available, I used 12x16 tiles here, so 1 screen width x 2 screen height)*, and up to 24 sprites handled through an OAM table like other machines. Everything being made of 1-bit graphics is a strong limitation, but also speeds up development time IMHO :). The whole SDK being available in C really helps to get started (although developing in assembly is possible too of course, with the same toolchain).
I'll try to keep working on a post-compo version of the game, at least to try to add some sound in the game. And I'll see if I can tweak it to improve gameplay too! :)
Thanks again everyone for your great feedback, you're awesome!

I don't think I've managed to get much farther than this :laughing:
I always love to see old console games in the jam, having tried my hand at a GBA game myself in a previous LD. I had heard of the console but it's my first time trying a Pokémon Mini game. It's obviously very simple but I think the only thing it's truly missing is sound - though I don't know if Pokémini games had any music.
Regarding the game itself, I felt that the ant's peculiar shape made it tough to figure out its hitbox. It looks like it doesn't kill you to hit something with your legs, but I think I sometimes died because my behind hit a rock? It's a bit hard to gauge in motion. Otherwise the main issue is that you sometimes have to choose whether to stay in the left or right lane, but if you're unlucky, the path you've chosen might be a dead end and there's no way to know in advance. I'm also not sure the the random rock placement is guaranteed to always leave room for the player, as I sometimes found myself in front of a barrage like this:

Congratulations on making something in such a short time! Especially if you had to learn the basics of making Pokémon Mini homebrew along the way.