Fun

How Not To Build A Video Game

It happened, like most seemingly good ideas gone awry, after a long night of camaraderie and too many tapas-sized beers to count. We decided to build a video game. One that would mash the mechanics of well-known games with a mundane office simulation. “Is this reasonable? Can we actually build a game in a week” a voice at the planning table questioned? “Yeah, I think we can do it!” responded another.

“How hard could it be.” A fatal follow-up.

Day 1: The Game Plan

It was early December, and Toggl’s marketing and front-end development teams had descended on Spain. Twice a year, our internal teams partner up, take to a foreign city to devote a week to a project of their choosing. This trip placed us in a 11 bedroom house in the center of Barcelona, where we sat around a long glass table in the foyer on a lazy Monday and strategized our plans the coming week.

Ideas were thrown out as Mart, our head of marketing started taking notes. A New Years resolution generator! A social media time tracker! Or maybe a team achievements section for the team dashboard page? No, we said. It would need product team approval.

How about a game where people have to split a check? Bonus points if the bill is in a different language. Apparently, by that point, we had forgotten that games are supposed to be fun.

As brainstorming continued, all the ideas began drifting towards games. What if we did a simple game with similar mechanics to Papers Please? The suggestion immediately perked up the development team.

If you’re not familiar with Paper’s Please, the basic premise this: you’re a border patrol agent in a cold war era eastern European country. It’s your job to examine papers and determine if people at the border are allowed into the country. However, as you do that the rules of who is and isn’t allowed continually change. Art mirrors life.

Making a game was a reasonable idea; there was a precedent. In a similar meetup the previous year, the marketing and frontend team built the Unicorn Startup Simulator in the Scottish highlands.

unicorn game

All we needed to do was figure out exactly what the game was. We knew it would be inspired by papers please but we weren’t sure exactly how it would work or what it would be about.

After a morning of brainstorming, we took a break to enjoy all the culinary options afforded to us within a two block radius of our Airbnb and quickly regrouped in the afternoon. We split into two teams for more brainstorming. My team, headed by Mart, discussed a number of ideas ranging from recreating Magic the Gathering (a cult classic game known for its plethora of rules) to just adding in-game purchases the Unicorn Simulator.

While both of those were categorically terrible ideas, it did open up a discussion of the characters in the Unicorn simulator. One that stuck out was Chad, the incompetent intern. “What if we had an office simulation where workers were trying to get things done, but Chad keeps wrecking their progress?”

It was dumb but funny, and it was starting to get late. With that suggestion, we had the basic idea for Paper Pushers. We regrouped and worked a little longer on the specific mechanics, but by that point, most of us were ready to call it.

We had the basic idea, now all we had to do was build it. Easy, right?

Day 2: So Far So Good

The next morning did not start smoothly.

Throughout the first day, we had been getting messages from Luiz, one of our frontend developers, who had been stranded on an island due to a volcano. He managed to get an alternative flight a few days after he was scheduled to leave but still hadn’t made it into the city. We were also having some serious wifi issues.

It turns our Airbnb’s wifi was not intended for software development. Unsurprisingly, once we got all 15 people on the network, it became clear if we wanted speeds past those offered by late 90s dial-up, we would have to figure out a plan-b. Still bright eyed and excited to work, we gathered SIM cards for the portable routers Andrin, the outgoing front-end team lead, had the foresight to bring.

It was time to split up tasks. The front end team would work on the development except for Merlyn who would both code and compose the music. Since Mart is a talented artist with experience doing pixel work, he would draw the graphics. I am not a talented artist, but I did have a drawing tablet, which under these circumstances made me equally qualified to work on the graphics. Andrea and Aleks would do the writing. With tasks assigned, we dove in.

My first task was to draw the floors. The game screen consisted of an office tower with different floors characters would move between. To start, the player would receive an email from their rich uncle:

game-screen-1

They would then be tasked with assigning contracts that came over email to the appropriate character. The player’s success would depend on skills of the character and the skills the job required. If you assigned the right job to the right person, then they would complete it quickly and you’d get paid. If you matched the wrong job to the wrong person, it would take longer and you couldn’t take on as many jobs. Chad, a person with no skills, would take forever.

We all took our parts of the game and got to work. Curled up on the floor, using a modular coffee table as my desk, I started drawing up the ugliest offices I could think of. Gaudy wallpaper? Check. Plants in various stages of decay? Check. Computers that looked like they’d burst into flames if you tried to download a file over 500mb? Check. It was terrible. It was perfect.

After hours of drawing and slipping into a nearly meditative state, my mind was wandering. I imagined myself working for an indie game development house. Maybe I made a mistake not going to art school. Totally engrossed by the drawing, I started creating new floors after I had finished the 6 the game required. What game wouldn’t benefit from a Soviet bunker?

Hours had come and gone, lunch had been eaten, and Luiz had finally made it into town. It was time to call it a day. Everyone had made good progress; there was cause to celebrate. With gusto, we took on the Barcelona night.

Day 3: Ok, What Can We Cut Out

I have never been bludgeoned by a metal pipe. That morning made me I think I might understand how it would feel. I was not the only one. A few of us were far fully functional. The house was silent barring the occasional keyboard taps of half-hearted code being written. I settled into my coffee table-cum-desk and started working.

Andrin had requested the home screen graphics so the development team could start working on the game’s front-end. Henrique was working on a nerf gun idea that wasn’t integral to gameplay but would add a fun element.

We had decided on the skill matching mechanic at the outset but quickly realized that without any additional obstacle the game would lose its appeal rapidly. That’s where Chad would come in again. Not only would he have no skills and take a long time to complete a project, but he would also be over eager to help and steal any projects that were left unattended. The nerf gun was a countermeasure. You could shoot at Chad to shoo him away from any project he was on his way to steal.

By this point, Andrea and Aleks had finished writing the content. I volunteered to work on the characters. Mart and Thiago, the incoming front-end lead, had worked out that they would bounce their heads up and down as they moved, like bobbleheads in straight jackets. This meant that every character would need two drawings to animate their movements. Mart sent over a sample sprite, and I got to work.

Progress was steady but slow. A few of us were starting to realize this was going to be more work than we initially thought. It was already Wednesday, and we had a food tour early Thursday evening. Getting everything up and working by Friday would be tight.

Day 4: The Flood

If any of us believed in cosmic signs, the events of Thursday morning should have been an indication it was time to pack it in and just enjoy what the city of Barcelona has to offer.

After a night of restless sleep, I tiredly made coffee and resumed my working position. Realizing I had left my tablet drawing tablet pen downstairs, I went down the four flights to retrieve it. Passing the open bedroom door next to mine, I heard the familiar sound of rushing water. ‘It’s a strange time for someone to be showering,’ I thought. “Didn’t I see Henrique and Aleks (the rooms residents) upstairs?’ My under-slept, headachy mind decided someone had left the shower on, a weird conclusion. I went upstairs and, with the grumpy tone of a tired mother, asked “did someone leave the shower running?” Everyone stared at me blankly. It was a weird question. Henrique volunteered a nope.

A pipe had burst. Going back downstairs, it was clear. A film of water covered the floor that had been dry a minute before. I rushed upstairs to let the team know. We immediately began the cleanup process. Every towel in the house was collected. Floodwalls were fashioned for the other downstairs bedrooms. Thiago organized the cleanup, getting the house owner and a plumber on the phone while coordinating moping and towel placement.

Eventually, the situation settled down. We all got back to work, having lost some time in the process.

I put the finishing touches on the characters and sent them over to the development team. On my way to the kitchen to make coffee, Henrique pulled me over. The characters had the wrong dimensions. In the file Mart had sent there was a 1 pixel of white space running the left and right side of the sprite. I had used the same file size when creating my characters but hadn’t kept the white space.

In regular graphics, adding in the space would be inconvenient but not crippling. However, pixel art is, unsurprisingly, all about the pixels. Just adding the white space would distort the characters faces and bodies. They would all need to be partially redrawn.

All my machinations of working at a game studio vanished at that moment. My inflated sense of artistic merit collapsed as looked in the pixelized eyes of my distorted creations. If someone held a microphone my thoughts, all they would hear would be the low, constant, monotoned sound of me going “aaaaaaaaahhhhhhh.” Mart snapped this photo of my defeated state.

game-give-up-emma

A growing sense of doom was lurking over the whole team. There was still a lot of development tasks that needed attention. Things we hadn’t previously considered we’re becoming important. Thiago pointed out that we had 8 desks in the office. This was a problem.

Gameplay occurred like this: You would start the game, get the introduction email and play through the tutorial. Because the skill matching, even with the addition of Chad, wasn’t enough to keep the game interesting, we had added more elements. The player would get emails with contracts that needed to assign to characters, but this now had to be done quickly. After a few minutes, the screen would go grey to symbolize a passing month. Any jobs you completed in that time would be paid out and you could hire more workers for the next month. The ultimate goal was to make as much money as possible over a year. We decided to complicate it even more. When you were going into your inbox to read the emails, you would also have junk in addition to the contracts.

game-screen-6
An example task

Every month you would get a set number of contracts. This is why having 8 desks was a problem. The player would start with 2 employees who needed a desk to complete a task, hire somebody every day and have 3 tasks/day per employee. That would be 225 tasks every time you play the game. It was far too many emails for the team to write and the player to receive.  This would have to be cut down.

Work continued, but it became clear finishing the game in the time allotted would be a gargantuan task. We had overcomplicated and under-planned. There had been jokes about scope creep on the first day, but that was a mistake other people made, inexperienced people. We weren’t those people, right up until the moment we were.

Everyone packed up early for the food tour and spent the evening out eating, drinking and not thinking about the game.

Day 5: Damn it, Chad!

Friday was all about picking up any victory we could get. There were small user interface issues, like text overlapping in places it shouldn’t have. Those would be simple enough to fix. But there were also big issues with the game engine itself, mainly Chad.

If someone was working on a task, Chad was supposed to leave it alone. But the game had a bug. Chad was stealing everything. Our desire to create a bumbling buffoon had instead birthed a full-fledged kleptomaniac. It was as if the personality we created for him expanded past his caricature, reaching into any part of the code he could get his hand on.

Everyone worked diligently on their piece. I finished the characters again and drew win/lose screens. Mart completed the rest of the graphics. The development team chipped away at the most important issues. As the day went on, people started calling it one by one. It was over and we had lost.

game-lost

While some of us were disappointed, most weren’t in bad spirits. The point of our meetups isn’t to transform ourselves into a game studio. It’s to spend time with our coworkers. Working remotely can feel alienating when you spend 365 days away from people. We hadn’t succeeded in building a video game but we had formed and strengthened friendships.

In our off time, we played Nintendo Switch. We ate pounds of potatoes brava and found the best chocolate covered almonds in Barcelona, maybe the world. We tried to create a playable version of doubles pool. We failed to create a playable version of doubles pool. There was bonding over the shared misery of a flood and slow wifi and an annoying guy named Chad. We hadn’t done a good job planning our project, but project management wasn’t our purpose.

pool-game
Doubles pool, a bad idea

After the meetup, there was still a commitment to work on the game. We have made some progress on it however it still needs a lot of love. Without a meetup, it can be hard to justify the time spent on non-essential work. But maybe one day we’ll finish it and you’ll be able to play.

Then you can meet this guy, Chad – we think you’ll really like him.

By On January 18, 2019