Any idea what a geek is most interested in at job fairs? Visiting booths and talking to guys from different companies….?  Gathering gadgets…?  Looking at hostesses…? Playing games ….. that’s it! “Hey, but you don’t mean we are going to play games there, do you?” someone asked grumpily at our FUTURE3 brainstorming meeting. Yeah, that was exactly what we meant!

Since at Goyello we mix work and fun in proper proportions we came to a conclusion we should invent something entertaining but requiring a certain amount of effort from our visitors. And that is how the #GoyelloGame idea was born. Are your curious how we managed to turn the idea into reality in only 8 weeks? There you go.

The objectives

When starting to invent the game we knew there were certain objectives we had to meet. First and foremost – the target group. We needed something entertaining for software developers. Since it was designed specifically for the Future 3 job fair we also wanted it to be attractive. It would be no fun if no one came to play it at the booth. And last but not least, we wanted this game to have a competitive aspect – not to make people compete – but to be able to give them rewards for their performance.

The game

#GoyelloGame is a puzzle game for software developers. Since we are a bike-loving company and software developer at the same time, the main hero is a developer riding a bike. He has to overcome numerous obstacles on his way to the finish line, where his dream girls is waiting. The core mechanism basically boils down to matching code fragments. There are two supported languages: C# and Java. Each language consists of 15 unorganised code samples. At the beginning of the game you choose a language and then you get 5 code samples with gaps. You have to fill the gaps by dragging and dropping the missing fragments of code. If you fail and lose all your lives, your dream girl leaves with another guy. 😉 The fastest player wins the game.

 

The challenges

We have encountered a number of challenges while working on #GoyelloGame. One of them were time constraints. We had only 8 weeks to invent the story, to prepare the tasks for the players and to develop the whole thing. And it was not the only task we worked on during that period of time. We still had to deal with our daily duties. The fact that we didn’t have much time put a limit on the scope of the project. We had to ask ourselves a question: “What can we guarantee to deliver in just a few weeks?” At the beginning we had a few ideas about the core mechanics and gameplay. At the production stage they evolved but we were still able to implement all of them. Using Scrum as our guiding methodology allowed us to manage that really well.

At Goyello we develop business applications, not games. So, we had to switch our minds to a completely different mode for a while. Fortunately a few members of the development team used to work for game developers so it gave us a good start. Good cooperation and team spirit also helped.

At the beginning everyone had their own idea of what #GoyelloGame should look like and function. And those were very different ideas. From a space shooter, through a multiplayer co-op to an interactive animation every idea was unique, but did not show our company’s spirit. We decided to keep it simple, consistent and funny. Combining those ideas and adding the company’s spirit and the BikeLike challenge to it gave us lots of satisfaction and enhanced the overall result of #GoyelloGame.

Designing the gameplay was also one of the main challenges. We decided to use the KISS principle not to overcomplicate things. Also many of our software developers and Team Leaders were involved in this process. And together we were able to create a concept of playable mechanics.

The game control also proved to be quite a challenge. We had to remake it a couple of times. Our assumptions evolved from using a stand with mouse and keyboard, to Xbox controller and AirMouse. Allowing multiple control methods was not easy, but greatly improved the gameplay experience.

And last but not least – user experience design. We had to answer several questions, such as: “How to lead the player through the entire game?” and ”How to show perfectly clear what is currently happening?” There were some setbacks (developing story for game mechanics, choosing wrong control method for the game, etc.) at first, but working in an iterative approach allowed us to react quickly to problems and come up with a solution in time.

The team

The team behind #GoyelloGame was cross disciplinary so as to reach all the above mentioned objectives and to be able to look at the project from different perspectives. So, two marketing experts, two software developers, two artists and an HR specialist were involved in this production. Most of the team members are geeks and consider themselves true gamers.

 

The development

When in doubt – go Agile! That is always our motto. And this works. Whenever you are faced with a high risk project that is not well defined at the start you need a methodology that will allow you to elastically adjust to changing demands. The solution is simple – it is called Scrum. 

We divided the entire process of creating #GoyelloGame to certain stages:

  1. Design – first, we needed to agree on the main idea that was going to guide us through the process. We also needed a rough concept of the gameplay to start working on it. At the end of this stage we created a paper prototype of #GoyelloGame and mock-ups and presented them to Kasia, Head of Marketing Department, who gave us the green light – we could start the development!
  2. Resources gathering – this a very important step, usually omitted in most projects. It is better to have most resources like graphics, designs and code samples upfront. And most of them were ready at the end of this milestone. Of course it is almost impossible to gather every resource 100% upfront so we expected to deliver some of them in the next milestones.
  3. Development – that’s the most obvious part in which we had to write code. It took us 3 one-week sprints to get it done. Doing it in iterative intervals allowed us to react quickly to changing demands and finish development of main functionalities. One of the greatest challenges was to add new control method to # GoyelloGame.
  4. Finishing touches – in game development when you think that you have just made the final version of a product it is always (literally always) the case that a person approaches you with an idea of how to improve the whole thing. It is a law and you have to predict it. We did.  We planned 2 one-week sprints to implement all minor changes, enchantments, and to fix all bugs. At this stage #GoyelloGame was presented to our software developers to get their feedback and their ideas into consideration. That’s what we always do at Goyello – we test our solutions with the target group representatives before the final release. Validation is an essential part of every project. You can check whether you made proper assumptions and if you correctly identified your end users’ needs. So we gathered our software developers in Social Room and asked them to play the game. We carefully listened to all their suggestions and opinions. We were pleased to see they really liked the game and the idea behind it.

And that’s the end of the story?

I don’t think so. Although we currently do not plan to release #GoyelloGame and launch it to the market but we do not rule out it completely. The game was made with Unity 3D Game Engine so it can be deployed to almost any environment. And we have a lot ideas that we would also like to put in this and future games made by Goyello.  So be prepared for #GoyelloGame invasion 😉

 

Coach, mentor and Team Leader. Certified .NET developer, Agile enthusiast and Machine Learning specialist. In his free time ̶ avid scuba diver and fantasy books reader.