Roomies - Programming behind the scenes
I'm dan, the third programmer on the Roomies 2019 Global Game Jam team. It was a great experience to work on a game with a talented group of people.
Friday: Brainstorming the topic
At around 7:30 pm, we got our topic of "What does home mean to you?". We spent the rest of the night brainstorming ideas for everything from mechanics to theme. Jon led the discussion and got us thinking about how we could get this working, and Kevin sketching out the outline of the game. By then end of the night, we had our main mechanic and theme.
Saturday morning: Task breakdown and Beginning
Meeting up at Ryan's house, we put a bunch of post it notes on the wall with various tasks, some in the high priority section, other in low. I would work on the input manager (keyboard and controller) and the game controller (The script that controls win/loss, pause, and in this case UI). I started working on the input controller, first making keyboard controls, then looking at controller support.
Saturday afternoon: Quick review and refocusing efforts
After a quick review of our project at lunch, we decided to ignore controller support, as it was not necessary for the game to work, and would be slowed by any changes to the tile system. I also worked with Kevin to get an outline of what the game would look like and the UI pages you might go to. So I hopped off that and started on the Game Controller. Ordinarily, I like to write efficient code, the kind that doesn't use a lot of CPU, Ram, etc. In this case though, I realized I couldn't code the way I wanted. There would be no time for eloquent, efficient code, no flexible systems that would easily adapt to changes we wanted or needed. This would be coded in a 'Make thing work now' style.
Saturday afternoon post review: Make Thing
I spent the rest of the day making the game controller. I started with an outline of sorts, to get everything into place as I got a more solid idea of what each part of the game would have. I also integrated the UI into the game controller. Ordinarily, you want to make a separate controller for the UI, but that takes time and would go against the 'make thing work now' style I needed to use. So UI was jammed into the controller, as well as some other bits like audio.
Saturday night: Combining and Finishing what you can
By this time, the tile manager and character were kinda done, so I began combining things via merging git branches, both to integrate our various scripts and check for initial bugs. I created a separate unity scene named Combo Scene (I'm super creative) to merge everything together. I was planning on using this as a sort of test scene, and then updating the main scene when things worked, though due to time constraints this ended up becoming the main scene. Towards the end (2am for me) I realized my mind was working reeaally slow and I decide to make sure the controller would be able to take in whatever assets would be done in the morning.
Sunday morning: Realizing my mistake
After breakfast Kevin and I worked on the UI some more. Here is where I realized my mistake on a large part of the UI, the character select screen. I had made a character select screen, but it did not function at all like it was envisioned. And since the code was hacked together, that meant back to the drawing board.
Rest of Sunday: Work Now
So I recreated a mostly working character select, with Ethan taking over merging. It was finished with a little time left. I made a few more UI updates, then sent what I had to be merged. Ryan helped with integrating the Tile manager, and Jon made sure we had a working build on time, as well as filling out most of the submission form. When we finally submitted our game, we basked in our success. True, it wasn't a completed game in any sense, but it was playable, it was fun, and we had made it.
So that was my jam experience. I ended up having a lot of fun. Going forward, there are a lot of changes I plan to make, from redoing the game controller to adding extra tile and obstacle types. I also learned I should ask more questions at the beginning to make sure I'm on the same page as everyone else. We had a lot of things we weren't able to get to, but now that the game jam is over we have a solid prototype to build upon. I'm excited to see how this thing grows.
Thanks for reading, and feel free to comment below
Leave a comment
Log in with itch.io to leave a comment.