Programmer, Game Designer, & Project Manager
Michael Bettes, Jonica Brooks, Kameron Thrasher.
Hole Flounder was my 3rd game jam and 2nd entry for Ludum dare. My goal this time was to make as much of a polished game in 72 hours, as the rest of my game jams never seemed quite finished. This allowed me to focus on the more detailed side of game development/programming. I also wanted to see what I could accomplish with a small team that I have worked with previously.
I had done all the programming besides simple UI scripts. Most of this was the player controls, animations, level programming, procedural generation, abilities, sound transitions, and more. I was also managing what everyone else was getting done so we could finish the game on time and helping my team as needed.
It was fairly difficult to get the player movement to feel good and falling at the same time, so I learned what most game developers realize in endless games, to just move the level instead. The procedural generation was also a little tricky to figure out to make it easy for the level designer (Michael) to easily add new level segments without changing the code. Using naming conventions and file reading, this was something I was able to overcome. Lastly, trying to have the level change based on the current depth was easy. This was solved by having the changing tileset generation at runtime, which took learning how Unity Tilesets worked and also a lot of math to have the tiles generate at correct locations.
I learned how to do simple procedural generation based off some predetermined templates. A better understanding of coroutines in unity, and a better understanding of how to develop while keeping in mind for a level designer/game designer ease of editing. I also learned how to use the resources folder in unity, and in retrospect what I could use instead of the resources folder (like scriptable objects).
I also took advantage of naming conventions, naming certain files (like level templates or animations) in a way where I could reference them from logic rather than using the animation controller state machine.