Categories
Design Development Journal Process

The Pineapple Platformer Completed

I had meaning to track more of my progress as I was going through the final stages of this project but, alas, here we are and I am calling this project done. I plan to cover more in depth my takeaways through a series of post-mortem posts but for now here is a high-level.

The Platform Solution

This really went in a few different directions before I landed on something that really worked well for me. I started out generating each platform programmatically in a confined space I dubbed a “Level Module”. These modules were to make up the larger level and would really just adhere to a set of rules that I thrust upon them and fill in the details through controlled randomization. I had a working version of this but when I went to add additional variability, I opened up a whole new set of problems. In the end it seemed like I was forcing myself to take the hard path because that was the one I had started on in lieu of any reason beyond my own hubris. I decided to make a change.

I wound up building the level out of rows of modules instead of individual modules. This allowed me much more control over my rules adherence – for example, each row must contain at least one open-topped module. As far as the platform generation, I build two libraries of prefabs – closed top and open top. Each of these prefabs has a number of potential spawn points for the player and/or pickup item. In the end this granted me a more than acceptable level of variability, randomization, and extensibility.

Race to the Finish

Once I got the level generation completed, it was back to familiar territory. I’ve made quite a few prototypes that have never seen the light of day so when it comes to movement, score tracking, and spawning assets it was more a matter of work to be done, less a learning opportunity. I did take some time to implement the new Input System which – despite the growing pains – I am learning to love.

I put together some basic art assets and a UI in a matter of hours. Thematically this game is a puked fever dream but it’s something I know my daughter will appreciate so I am more than ok with that.

All in all this project was a great refresher and I wound up generating a few new game ideas that I may explore in the future. As I stated, a more in depth post-mortem is coming but, for now, the game can be played right here. I also added it to the new Games page. Enjoy.

As an additional note, there is something in watching your children become absorbed and interact a thing that you created that I truly don’t have a way to communicate. Even if their highlight was moving the character back and forth on the screen like he was shaking his head and giggling.