Infinitroid - a 64x64 jam game for #lowresjam.  Now in beta version, probably final release as well since I am now having issues fitting any patch code into the game memory.

Explore "infinite" metroid-like levels generated on the fly.  32 of them actually, due to how codes work, but it's enough ;)


LEFT and RIGHT to walk.

Z and X are used for input/jumping/shooting.

Hold DOWN and press Z to swap weapons once you find an alternate gun.

DOWN interacts with SHIP and ELEVATORS(yes, even for going up)  Hold the button down to heal while standing on the SHIP.  When escaping, stand on your ship and press DOWN to win the game.

UP shows the MAP.  It's primitive, but should help in most cases of being lost.

Known issues:

  • I have had a map generate with 0 time in the escape sequence once while testing.  I'm not sure what triggered it, and haven't seen that bug since.  If anyone discovers the ID, post it so I can track down what's going wrong.
  • The boss is VERY HARD without the upgraded guns.  His bullets deal 90 damage, so it's no joke.  The final weapon in the game can take him down pretty easily if you know where/when to shoot him.  He has a sneaky time to shoot him in his animations for the hit to count.  There is little feedback for a hit against him, sorry, I am hitting token limits.
  • Minor visual issue, the grid doesn't color itself "completed" when a collectable is picked up.  This is due to a token count issue.  I have not figured out a way to squeeze in the color change logic.  The world map display updates properly, so use that to confirm your collectables.

Change Log:


  • Surprise ninja update!  Actually just exporting with the new version of pico8 to add the support for mobile controls.  Now if you are on a phone, the game should be creating some game boy like buttons below it for play on your phone.  The feature is part of the new exporter for Pico8, so hopefully this works out of the box.
  • Added p8 source file to downloads.  If you own pico8, feel free to download and mod to your heart's content.  Please credit me as the original designer/programmer (Dark Griffin) if you release a modded version to the public.  But by all means, have fun changing all the graphics/tiles/code to mod your own characters/tile layouts/enemy AI into the game.

    You might have to shave a few tokens from other parts of the game if doing enemy AI, the cart is literally right on the edge of full, sorry.  A suggestion for starting this is to redo the collision code to check for Manhattan distance instead of box positioning.  I'm sure there are many others lurking around if you search carefully enough.  Enjoy!
  • No change to web game, to keep voting fair.


  • Fixed jump through roof bug.  YAY!
  • Respawn now fills the player's tanks, to save you all some grinding time.  It also helps players not get stuck in certain very unfortunate room/elevator checkpoint situations.
  • Map screen added to game, also shows collected items as a different color.


  • Restructured many code calls to make objects share functions across the game.  This earned me a little bit of extra tokens to use. 
  • Added checkpoint system.  Death during the mission will restart you at the last elevator used, or your ship if you died in the beginning.  If you die during escape, you will spawn just before picking up the experiment item to try again.  This should help make it much easier to play the game! ;)
  • Added final boss.  Game now is fully playable from start to finish, with progression, items, boss fight, and escape sequence.
  • Numerous bugs/leaks crushed to prevent crashes.


  • Removed map overview display for now, in favor of an updated room display. 

    The intent is for it to come back as a "map room" or a "map display mode".  I would need a few solutions for the map offsets and map gen runaway first to keep maps "in screen". 

    The problem is one of character memory, I'm already pushing the compression limits for carts as it is.  Currently, playing without a map of the planet really sucks though.  I'll see what, if anything, I can do after the key features are in place.
  • Updated the nearby room display to better show the rooms features/exits.  It's much more useful for navigation now.
  • Added pickup rooms, stats, player health.
  • Added a second enemy type, uses new enemy bullet system.
  • Enemies hurt player.
  • Game cycles through from intro screen, seed screen, game play, and results(on death or mission completion).  Don't get too attached to the seed layouts, map generation is still a work in progress.
  • Game tracks time and results of collection percentage across maps.
  • Sub weapons are in place, they just deal more damage for now.  They have ammo but are severely limited in this build due to lack of an enemy drop system.  So use them very wisely(or not at all, really).
  • The capsule and escape sequence exists in the game, game can be finished.  Everything is stacked on the first 4 floors for this build in a haphazard manner.
  • Fixed a billion possible crashes throughout the generator, player room transitioning, and enemy spawning system.  That code was a total mess in the first draft, it's all fixed now.
  • Rendering is all done through the same draw functions now, so tiles, enemies, player, and bullets all run a single function.  This saves tons of memory for fitting in other features.
  • PRESSING UP at the player ship will heal the player.  This is also how you escape with the capsule.  There isn't a documentation or help prompt for this yet, I know, shame on me.


Still not much of a game.  A lot of ground covered though!


  • Rooms(screens) now have "types".  This allows placing a start room and marking elevator shaft areas for now.  Eventually this will be how the game populates the map with different room generation rules.  (The start room just generates a floor and has no ship graphic yet.  I plan to add in some sort of start sequence to begin the game in the polish phases later.)
  • Map generation is in place.  It's not very smart but it's mostly functional(see known issues).  If you crash on boot, just restart for a new world seed.
  • rooms now use x y position based seeds, meaning all rooms can recreate themselves when revisited.  This will eventually need a map seed added to it's value to prevent all map x,y positions being the same across worlds.
  • Sound effects first pass, rudimentary sounds in place for shoot, jump, and enemy death.
  • music/atmosphere first pass.  Rooms/screens now play music based on type of room and location.  Currently only the top row works.  Enjoy that elevator shaft room music, should bring a bit of a smile to metroid fans even if it's not the exact tune from the game.
  • Rooms support offsets for the room construction sprites, this is the start of making the areas more "unique" so they don't use the same green tiles all the way down.
  • Basic enemy spawning systems are now in place.  The only enemy is a floating blob for now.  The AI system can be expanded to make new types.  Enemies are harmless for now since player doesn't have a damage system yet.
  • Basic bullet collision, it's box based which is good enough for now.  Enemies will take damage and die.  Bullets have a concept of damage values.
  • There is a basic "game mode" structure to the code now, for future use making title, results, and seed entry screens.

Known issues:

  • Sometimes on world generation the game crashes, not sure why yet.  I suspect it has something to do with creating the start on top of the elevator, or otherwise moving it out of play.  The crash location in code is at the elevator shifting code, so maybe it's escaping the map array.  I may need to find a way to select 2 rooms from a row range without picking the same one twice to solve this issue.  (I'll need that solution for the metroid-like power up rooms later anyway.)
  • There is no way to navigate from the top row for now, since elevators and prop areas for rooms are not implemented yet.
  • Rarely I have witnessed the map generating outside the boundary of the map area.  There isn't any crashes but it looks very odd on the display.  Probably will need to fix this if I intend to show the map on screen in the hud.


  • Initial upload.  Not much yet to play/see, but a lot under the hood.  
  • The screen level you are seeing is being made from 4x4 chunks, with a roof and floor being built using their own selections of chunk.  Restart the game cart to see this in action.
  • The player can move with acceptable "alpha" tile collisions and pretty lame jumping physics.  Ramps don't get accounted for yet, I'm still thinking up solutions to that.  For now they are square tile collisions.
  • The player can shoot using a button, they are limited to 3 shots at a time.  The shots are actually making use of a full on bullet system that is work in progress.  Eventually enemies and the player will all use this same system, with bullets tagged for being friendly or not.
Rated 4.0 out of 5 stars
AuthorGawain (DarkGriffin)
Made withPICO-8
Tags8-Bit, Exploration, LOWREZJAM, Metroidvania, PICO-8


Download NowName your own price

Click download now to get access to the following files:

infinite.p8 Source Code Cart for Pico8 82 kB

Development log


Log in with to leave a comment.

So, the concept is really cool and it's done pretty well, but I still had some fun-related issues ^.^'

First of all, the other guns seem pretty redundant outside of the boss battle. Same with the jump upgrades. It wouldn't even be a problem if there were more enemy types that require more hits to kill in the later areas or if there were rooms that require going up to the ceiling to avoid some obstacles instead of just sticking to the floor level.

Another thing is the escape sequence; the game is easy and the auto destruction part is even easier than the rest of it, because 15 minutes is way too much to feel pressured. Even having just half of this amount of time would be a bit more than enough.

But every other thing about Infinitroid is just great and it's really hard not to enjoy that Atari-esque demake of Metroid :D

Neat! Here's my stats...

(1 edit)

Great game!