Fragments
- 10 Devlogs
- 26 Total hours
A game written without any engine
A game written without any engine
I fixed the issue where maze generation would break on mazes larger than 15x15 because uint8_t would overflow. Also, I added centered labels and fixed resolution issues like labels appearing offscreen. I removed the old physical buttons meant for touch screens because this is becoming desktop only (web is included for this release but not onwards). Also, mazes now change size depending on which floor they belong to.
I re-implemented the map algorithm to use Prim’s algorithm instead of sidewinder. I also changed it to use cells with bitflags for the walls instead of doubling the map size. Maps can now be dynamically sized instead of using a compile time constant so on different levels I can make them larger or smaller. I also tweaked Prim’s algorithm to generate a braid maze instead of a perfect maze.
I finally got time to work on this again. I cleaned up the code a bit and made maze generation generic over any size. I also collapsed the 2d maze to be 1d to hopefully help with cache locality under certain actions.
I added proper collisions for the maze that is generated. I also added proper font sizing options, fixed web platform compilation, created a GUI start screen, properly modularized the the code to be based off the tile size, and refactored some of the code.
I added working maze generation based off the sidewinder algorithm using bitwise operations for the maze creation. Each level is procedurally generated and randomly places the picture frame fragment in the level. I temporarily removed collisions for moving outside of the map. I now need to add collisions with the maze and to clamp the camera to the screen.
Finished up the starting animation but without any of the proper artwork. Everything is smooth and I refactored the animation code into a function.
I created an animation at the beginning explaining the story before the gameplay would start.
I setup better movement, a basic tutorial flow, and changed some colors. I also changed the font to be rendering Iosevka instead of the default font and sub-setted to minimize bundle size.
Added proper bounds checking for the player. I usually don’t work in c which is why it took a while.
I properly linked raylib using it’s template. This took a while because nix makes stuff very odd to package and build when it requires dependencies. I also got proper 2d movement working.