Jump to content
  • Advertisement
  • 02/06/14 12:58 PM
    Sign in to follow this  

    When a Game Teaches You

    Production and Management


    Press Command to Start

    Grab your beer, your cup of coffee, or whatever... The tale begins here. A year ago, we met some lovely people from a training center. They had this training course in programming and were looking for a game to help their participants learn programming more efficiently. They didn't have a ton of money but the idea of making a game about coding was enticing. There is no need to tell you how coding is important in video games development, and at Fishing Cactus, we really do love making games. After hours of reflection, we called those guys back. Challenge accepted! Then we thought about it. How are we going to teach programming without being dull and boring? That was our first challenge, and also the beginning of the A team. As part of this team, Laurent Grumiaux and Guillaume Bouckaert thought about the game's concept, and we can truly tell you that this game was mind-tingling before even being a real game. The first good idea that came out from this collaboration was to invite programmers to join the team, which allowed them to act early in the development process. It turned out that many of them used to play Logo and Robot Rally as kids. That point helped to redefine the concept.

    Step 1: Redefine the Concept

    Making a game about programming is not that easy, and we didn't want to create another "OkILearnedSomethingAndSoWhat?" game. Then we were reminded of a famous quote from Steve Jobs: "I think everyone should learn how to program a computer, because it teaches you how to think." The solution was so obvious that no one even noticed it until then: we wouldn't create a game that teaches you to code, but a game that teaches you how to improve the way you think. But how were we going to do that? With logic, of course! Nowadays, coding is one of the more desirable skills there is, and coding is nothing without logic. With this in mind, we set out to create a game that would help people grasp the essential skills of logic that the programming craft requires. Good! We have got a nice concept. The question now is how will we manage to do that? The first idea was to create a character that has a job to perform in a futuristic power plant full of leaking toxic containers, industrial crates, and stubborn little robots. By carrying around those toxic containers, sorting them out and re-arranging them, the player will need to be smart and use programming basics such as functions, variables, the set theory, conditions, and loops.
    The player won't control the character directly. He won't make him jump on mushrooms by pressing a single button either. Instead, he sets up a sequence of orders for him: go straight, turn left, go straight again, turn right, etc. When the player is done creating his little sequence, he passes it on to the character, who will follow the given orders to move around the power plants. In a nutshell, the player manipulates sequential commands to order the character around in an attempt to reach the given goal of the level.

    Step 2: Select Your team

    We had a concept and a gameplay. All we needed was love, time, and money. We had to make this concept into a game. Joined by Jef Stuyck, Silouane Jeanneteau, and Christophe Clementi, our team 1.1 was now made up of a project manager, a game designer and three programmers. The programmers would tell you that they are all you need to create a game, but they are wrong. We needed a complete world. More than anything, we needed a hero. Then, we needed artists. In game development, that is the moment when everything turns into chaos. Not because artists join the development, but because now you have a complete functional team with motivated people full of ideas. In that moment, nobody is a programmer, an artist, or a game designer, but everyone is the guy with an idea. And because it's a game about coding, guess who think he knows best? Well, it's like bombarding atoms with neutrons. It's up to the project manager to make good use of this energy.

    Step 3: Create a World

    Even if you want to, you definitely can't sell a game about coding starring a unicorn in a cotton candy world. Obviously, the robot was the perfect hero for our game. Inspired by Wall-E, Antoine Petit, our 2D artist, mixed futuristic shapes and retro styling into a robot with a real personality. Since there was no reason for Algo-Bot to be a 2D game, C?dric Stourme started to 3D model the robot and its world.
    Speaking about the world, we imagined it as a huge power plant with a level of toxicity so high that humans can't enter without dying instantly. The first mockups of this power plant were way too bright. You really don't need that much light in a place where humans can't stay. We had to stay realistic. Oh yeah, I hear you from here: "Realistic? With a robot in a futuristic toxic power plant, huh?" But yes, we had to stay as realistic as we could be within that setting. We now have a version of the power plant close to our idea: darker and more appropriate to the gameplay.

    Step 4: Make a Game

    "Make a game" sounds simple enough. Everyone can make a game, but we wanted to make a good game, and making a good game requires a lot of self-investment. First of all, a game needs time and includes hours of research and development. Focusing on this uncommon gameplay and writing this clean code that would bring the game to life became our daily routine. The deadline was approaching, and Algo-Bot seemed like nothing more than a seed, no matter how much time and love we gave it.
    In most developments, being too self-invested in your project happens to be a huge thorn in the team's foot. There is that moment you are truly living for your game, rejecting other ideas because you think that you are the only person who knows where this project is going. When you waste hours modifying the concept, trying to do the work of others... let me tell you this: you've never been so blind! So have a Kit-Kat and stop trying to be the man of the situation. Game development is a sports team for geeks. That's the lesson we learned from this development. If Algo-Bot was made to teach others programming, it taught us how to communicate within our team. And then we experienced the moment when you believe the game you dreamt of will never be developed for the simple reason that the client is out of money. Sure, the client can perfectly use this version. It's playable, the learning process is quite effective, and the graphics are not so bad. But for you, it would never be more than an alpha version of your dream. So, like any good parent, you open your wallet until you run out of money yourself and then you cry... AND you launch it on Kickstarter. Now you know the topic of my future article: How our Kickstarter failed :D Because obviously we won't meet our goal. One says that failure is the best lesson to learn :)

    Article Update Log

    27 Jan 2014: Initial release

      Report Article
    Sign in to follow this  

    User Feedback

    Also, it is developed with our own engine which is itself constantly in development, so, have to managed it to. I'll also add that it's a 3D game.

    If I may, what specific reason you had to choose and build an engine, instead of licensing one such as Unity or C4? Did the game have very specific needs that weren't met by any?

    Share this comment

    Link to comment
    Share on other sites

    That sounds insulting, along the innuendo that these professional game developers (and perhaps all) should work on unrelated full time jobs because they aren't fulfilling your expectations.

    I have no expectations of any developers; I am a developer myself and I reserve all my expectations for my projects. She typed $100.000 so I assumed she meant $100.00 and $60k for only putting a $100 into it is ridiculous. I said "so what" because even a developer like me who works on things in their free time while doing a 9-to-5 job to feed their family, pay bills, and has to pay other necessities still has to pay $100 for licenses to publish on most devices and platforms. I question everything, especially when information is left out and typos happen, but VirginRed straightened it out. I guess if you have nothing to offer to a discussion it is obvious when you resort to making posts solely to insult someone.


    How on earth you expect them to make a full 3D game for 10k is not only unrealistic, but absurd. The game showed polished visuals, which for a video game kickstarter is essential when you do not have a famous studio or name behind you.

    If this was the 90s, I'd be inclined to agree, but with the engines, libraries, and tools out there now, I feel that it isn't unrealistic nor absurd to be able to make a full 3D game for less than $10k if you wisely spend money and don't just buy tools because they are the norm in the industry. I bought several engines that I have source to that I can go and add features that I need as I make a 3D game. My problem is that I can't ever catch the artists, musicians, or programmers I get along with when they have free time at the same time to make a team to do games so I dabble with games that will entertain my son and do the other jobs myself.

    Share this comment

    Link to comment
    Share on other sites


    Also, it is developed with our own engine which is itself constantly in development, so, have to managed it to. I'll also add that it's a 3D game.

    If I may, what specific reason you had to choose and build an engine, instead of licensing one such as Unity or C4? Did the game have very specific needs that weren't met by any?



    The game has been built with our engine initially to support complex LMS systems and also to allow to be code friendly when it will come (one day) to support different language parsing (LUA, Java and so on)... Mojito, the engine we have developed since 4 years made more sense to keep control of things compared to Unity for example. However we can actually say that we would have quickier results (especially visually) if we had make this project through Unity.

    Share this comment

    Link to comment
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!