Made within 24 hours for HackBU's 2024 hackathon! 

We challenged ourselves to make a simple roguelike in PICO-8, using Perlin noise to create a new map from scratch every time!

Inspiration

We like to make games! It combines both our love for game development with some cool programming, since PICO-8 doesn't have any libraries or boilerplate code. We had to implement camera smoothing, particles, Perlin noise, animations, etc. all ourselves, which is pretty fun!

What it does

It first procedurally generates a map using Perlin noise (with 5 different biomes), moves to a main menu, then spawns a player and 4 monuments that you have to repair; you fight off enemies while the monuments are repairing, and you win if you get to repair all 4!

How we built it

Using the PICO-8 engine, which houses a sprite editor and simple graphics functions. It uses Lua as its language. Again, no pre-made code or libraries other than built-in PICO-8 functions like simple math (cosine, sine, etc.) and drawing sprites to the screen. 

Justin worked on the player & camera movement, enemies, spawning monuments, attacks, health & mana bar, and particle FX.

Liz worked on the Perlin noise algorithm, procedurally generating the map, creating 5 biomes, making sure all biomes were presented inside of the game evenly, and that there were no weird or unexpected artifacts from the generation algorithm. She also drew the map with the correct sprites on-screen.

Challenges we ran into

Working with PICO-8's limited memory, since it replicates classic 1980's consoles. Liz had to make the procedurally generated map smaller so that it wouldn't crash. Also, implementing the noise algorithm in Lua, since she had to be careful with what type each variable is, as the original algorithm had unsigned ints, etc. whereas Lua only has "number".

Source code

Click on this link then under the main play square there is a tab "Code", which you can click on to see all the source code for the game!


Leave a comment

Log in with itch.io to leave a comment.