Why and how we developed a game in only 5 days.
In this week's issue of?“Asking &why?- Rethinking benchmarks in design, branding & innovation” our Creative Technologist Darío Sánchez Salvador takes the writer seat to tell us more about something equally fun and challenging some of our folks have been working on during a recent 5 day sprint. Enjoy!
Some of you might be familiar with the concept of a Hackathon, but, for those of you who don’t: A Hackathon is a time limited event (usually 2 to 5 days) where participants, often in teams, work collaboratively to solve a problem, create a new product or develop solutions using technology. It’s a fun way to encourage rapid iteration of ideas, problem solving, collaboration and creativity. A Game Jam is like that, but for making games. A theme is announced on the first day of the event, and every group must make a game - often with some additional technological restrictions - about this theme. So this is what we did, a small cross-functional team of developers & designers from &why joined forces to participate in the Gamedev.js Jam 2023, where the main gist is that the games must run on a website without any downloads or add ons being necessary. Which is great for us, since we already build awesome 3D websites and browser games like #lastseen, B-Corp and KKL! Before we dive into the development process, let’s introduce a little context.?
I love games. And not just because they’re fun, but because they can be a very powerful medium to convey a multitude of messages in an interactive, engaging way (a great example of this is the aforementioned educational web game we developed for the #lastseen project). This has been a shared feeling among our team, especially our fellow designers? Franzi, Auxence and Lorenz. Having decided to snatch our chance at giving it a try, the Gamedev.js Jam presented a great opportunity: the perfect excuse to make a game, tinker with technologies we currently use in our commercial projects, and learn how to work better together in a rapid iterative way. However, to keep it interesting we decided to limit the time to 5 days instead of the 10 that the challenge allowed (someone had to pay for that time ??).
And so, our little adventure began.?
On the first day of the challenge, the theme was announced: TIME. We were ecstatic to have such a broad and underutilised subject (looking at you, Christopher Nolan). Consequently, our concept phase began on an empty canvas, suffering from a collective case of choice overload. When the anxiety of having spent too much time on jurassic-park-meets-western-time-travellers kicked in, we decided to do a simple exercise: Let’s take something that already works and reverse it. After all, wouldn’t it fit just right with the theme? So we took one of the most iconic time-based games: “Superhot” (where time only moves when you move), and we decided that, in our game, time will only move when you don’t. This crazy idea here was finally getting us somewhat excited, and it was time to come up with the mechanics, aesthetics, themes, and story. We wisely decided to keep it simple because it’s a Game Jam and time (wink) is of the essence.
Simple low-res slightly pixelated 3D graphics (if you’re at least my age you may recognize the look from PlayStation 1 games such as Tomb Raider or Resident Evil), platformer and puzzle mechanics and a sprinkling of Portal plagiaris... ehm, inspiration in the setting, and we got a loose idea of what we wanted to do.
Since it was just me in the development team, progress on the mechanics, physics and systems went slow and steady, while the design team worked on the level design, GUI and 3D models. When we finally put everything together 2 days before the deadline, we forced some friends and colleagues to go through all the bugs and test the game.
Only then we realised something important: People didn’t know what to do. It’s a common mistake in any kind of development; to lose perspective and forget that the people using your product are not as familiar with it as you are.
So, on to work on a rushed tutorial on the last day it was. We all came together in those last hours to fix the last bugs and 3D issues, while trying to make a tutorial that fit with the setting and theme. It was in this hurry when we came up with the idea of having an AI narrator explain the game to you. We are already using a lab setting so why not take a little bit more from Portal? So we quickly put together a dialogue system and gave life to a sassy, sarcastic AI that is reluctantly forced to guide the player through the level to help deactivate itself after going rogue. Funnily enough, we used ChatGPT to speed up our writing by making an outline of the dialogue. An AI writing an AI seemed appropriate enough. The humour is 100% human, though, we can assure you that ChatGPT has no chance - yet - of beating us at that. Add in some final adjustments to the website hosting and we had a game! (more or less).?
It was a very intense, very different kind of project than we usually do. But the benefits seem clear: we made a product we hadn’t done before (an actual game - you can play it here!), we forced ourselves to become faster and better with the technologies we’re using on the day-to-day, we discovered we can collaborate much faster, and we confirmed that we can solve complex problems with creative decisions when on a tight schedule (and budget). It was also an interesting test to see if we could handle such a project by ourselves (the leads are now worried ??). And lastly, but not less important, we managed to obtain an interesting output:?
As you can see, working in a tight-knit team in a sprint can unleash crazy potential and create entirely new ways to solve a problem. So next time you encounter a challenge, just dare to ask “what if” and try the impossible. Maybe even give us a call, we could help with that ;)
What are your thoughts on games and gamified, immersive experiences? Let us know in the comments or shoot us an email at?[email protected]. Happy to chat!
Stay tuned for the next episodes of “Asking &why?” by hitting the button subscribe????