Postmortem


Overview

This project originated as my submission to GameDev.tv Game Jam 2024. The theme was The Last Stand. Various ideas were tossed around, but I settled on this game as I thought I could have fun with the art and content. The idea of a T-Rex throwing newspapers with their little arms amused me. I also thought the game was within my skill to make, but still a good learning lesson. I took lots of inspiration from Vampire Survivors.

Original Expectations vs. Reality

  1. I expected that this game was within my skill level.
    1. That was the case. Every challenge I came across, I was able to find a solution. And when that solution wasn’t working anymore, I was able to adapt. Any issues I had, I was able to Google up a solution and I understood how it worked. Some problems were very specific to how Unity worked and some were trickier programming problems.
  2. There would be lots for me to learn.
    1. I did learn a lot. Some of it was with the behaviour of Unity. Some of it was game design. There were lots of things to learn in structuring my code. Pushing myself to fully complete the game with time spent on polish taught me lots. Definitely a very good learning experience.
  3. I thought I could get the game mostly done during the 10 day game jam.
    1. I don’t think anyone ever gets in all the features they wanted before the game jam deadline. I certainly didn’t. But I got enough for an interesting game loop.
  4. This is not so much an expectation as much as I had a fear that I would get bored working on this game post-jam.
    1. I had some lulls, but the challenge kept me interested. There were many problems big and small that I enjoyed finding solutions to. Making the art was also more fun than I expected.
  5. The art would be quick to do.
    1. No. It was not. Maybe because I was picky. Maybe because I’m not a great or experienced artist. But I still found it fun to do and I hope to get better.
  6. Small one, but I thought I’d have to make the game over a few Unity scenes.
    1. Unintentionally, I ended up making the game all in a single scene. It worked out well better than I expected. If I can, I think I’ll try to structure more games in the same was as the UI seemed to work out pretty well.

What went right

  1. I was able to finish the game with most of the features I wanted. I set a limited scope for the game and I stuck with it. It would just have one map, a few different newspaper types, a bunch of upgrades and lots of dinosaurs to “inform”.
  2. The art looks way better than I expected. Not amazing, but with my art skill level, I’m pretty happy with it.
  3. I was able to structure the code fairly well. Still room for improvement, but I think I did a decent job keeping classes from being too large and broke apart tasks well. I think the code self-documents pretty well. I used some of the programming patterns that I learned fairly well. Those patterns are Observer, Singleton, Factory and Object-Pooling.
  4. The game has a good charm and character to it.

What went wrong

  1. Though I am happy with my code structure, I was not able to easily convert all applicable code to use the Factory and Object-Pooling programming pattern like I had hoped. I used it for the newspapers, but changing the dinosaurs would have required too much work. I didn’t need to, but the learning experience would have been nice.
  2. I was not able to make as much art assets as I would have liked. It just took too much time and I was starting to get kinda pooped out on making them. If I could make more, I may have added more dinosaurs and nicer/varied terrain. I would have liked to have the terrain animate a little.
  3. I also wanted to have more newspaper front page headlines before each playthrough. I wanted to give the game more character with funny headlines to read.
  4. The post-jam version of the game was not played as much and I would have liked more feedback. Maybe I need to learn how to “market” myself more? Sounds terrible. Haha.

What did I learn

  1. How to organize a project using Trello.
  2. That I should put all global adjustable values in a single place and use Scriptable Objects.
  3. General game design.
  4. UI keyboard/gamepad navigation can be tricky.
  5. More experience with programming design patterns.
  6. Save and load system with a WebGL build.
  7. Using a Sprite Library and Sprite Resolver to do animations.
  8. How to select a position in a donut around a point.
  9. How to iterate through all the values in an enum.
  10. The work involved to polishing a game.

For the Future

  1. Structure the code slightly differently. Keep similar things together so that if I need to implement the object pooling, then it would be easier to do. Maybe if I know it would fit well and has good benefit, build the design pattern like the factory design pattern early?
  2. Use Trello more as a way of organizing tasks and doing some game design.
  3. Try a more challenging game for my next project, but not necessarily one that will take long to make. Maybe the same length as this one, about 1.5 to 2 months.

Leave a comment

Log in with itch.io to leave a comment.