So two weeks ago, I joined the Global Game Jam at Globe Labs Makati together with my former colleagues in Anino Games. This is my third time to join the event and just like the first two that I participated, the games that were made by the end of the event never fail to impress. Now that I have a blog, I decided to make a dev diary of the 48-hour experience.
Together with my teammates, we went to the venue to find out this year’s theme and to have dinner. We were surprised when we found out what the theme is:“We don’t see things as they are, we see them as we are.”
Really? Two years ago, the theme was Ouroboros, then the following year it was the sound of a heartbeat. This time, it’s some sort of a profound quote. To be honest, I was somewhat clueless on how to create a game based on that sentence. It just seems so vague back then. After dinner, part of the program is for each team to brainstorm with other teams to share ideas. Probably, this is to seed more creativity for the participants. We came up with some ideas and I represented my team to pitch a top down action game where the character climbs consecutive ladders that always diverge into two paths wherein each path will give a different view of the player’s character. The path includes choices such as Good or Bad, Half-Empty or Half-Full etc.
After all the pitches, our team proceeded to finalize our actual game concept. The game will feature two characters. One is a blind man (Rufus) but possesses a third-eye to see ghosts; the other one is a woman (Rafina) can see. The objective is to guide the characters to their way back home. There will be two types of obstacles, the ghosts and the morphing pit which can only be seen by Rufus and Rafina respectively. This means that the player can only see one type of obstacle at any given time. It will be a top down action game and we decided to add another type of controller other than Unity’s default keyboard controls, so we will use this…
This is my first time to program a game with a controller peripheral, and I’m so excited to try it out. Good thing Unity already has support for the XBOX 360 controllers so it took me about 5 minutes to implement a test setup. Thank you Unity V(-_-).
Now that we have the game concept and mechanics all set, it’s time to proceed with a prototype. For my side, this is my checklist:
- Tile-based movement
- Shifting views and other control-scheme related features
- Integration of Final Assets
While I was doing the initial prototype, our designer looks for sample games with some similar gameplay to get some ideas and also helps our artist get some pegs for our game’s art style. It took me until lunch time to implement the tile-based movement and the basic control schemes. I was having some trouble with the stability of the controller-based inputs.
Next in line would be the obstacles. I started with ghosts which has a basic patroller-AI. It just moves back and for at a designated number of horizontal grids. When the characters enter the ghost’s detection range, the ghost will begin to chase the characters. At this point, the player can still escape the ghost due to its slow movement speed. And then, I implemented the morphing pit which is easier to program compared to the previous obstacle.
Meanwhile, our fellow colleagues from another team were not able to continue with their entry anymore due to some unexpected circumstance, so they decided to help us instead. Yay! More designers and programmers, more help, more fun! Next on the list was the tools. If you’re wondering why would I consume some time on tools if we only have 48 hours to implement the game, well actually it’s for a better investment. Our game’s challenge and fun factor greatly depends on the level design. With this, we need a way to rapidly create contents to produce more levels moving forward. It will take some hours to implement, but after that, our designers can apply their designed levels with minimum programming assistance.
It still took a couple of hours before finally finishing the tools for our game. Good thing our designers have already started designing the first couple of levels, so all they need to do is apply those in our actual game using the editor scripts that I’ve written. I’m so glad Unity has support extending the editor’s feature through scripting, so the designers don’t need to use additional software just to create their designed content.
Meanwhile, our artist had already created the initial assets for our game, including the sample sprite animations. Here are the concepts for our characters.
In the end, the art style evolved based on the game Don’t Starve. You’ll see the final product below. After using the tools to test the first design, we looked for some improvements and there were few including the change in the control scheme and camera view. I worked on the bugs and the team’s feedback until the end of the night so that tomorrow it will just be the sound and integration of final assets.
I was able to finish the proposed changes, so I went on with the sounds. Our sound designer managed to create a beautiful theme for our game. He also made some cool sound effects that greatly improved the gaming experience. Just in time, our artist prepared the final assets and animations. My fellow programmer was also able to create a cool shader which changes the hue of the images to apply day-to-night effect. After all the integration was done, our designer built the levels for the game. They were able to create four levels which I think is impressive, considering the time that we have. Tests here and there, some minor tweaks with control responses until we’re satisfied. We’re having one more problem… so what’s the title of our game? Well, thanks to our avid DotA players, we were able to come up with this…
Finally, all we need to do to wrap up our submission is to package our source, build, artworks, and press materials according to Global Game Jam’s instructions. Oh, we also need to make a sample gameplay video. Good thing there’s Screenr to do the job. After a minute of recording, here’s a preview of our game. ^_^
After uploading our submission, we went to Globe Labs for the presentation and awarding (for all the participants on the said site). In the end, our game was nominated for Best Art, Best Design, and Juror’s Choice. Another Game Jam has ended. Another achievement unlocked. To all my teammates, thank you very much for making this game possible. I’m really proud of our work. I hope I can work with you guys next year! For those who want try our game, here’s our game page. (~^_^)~