Building a game one lego at a time


No matter how hard it looks to make an educational adventure game, it’s even harder than that. The last couple of weeks, I have been at the tiny detail level. You know those really cool things you see made of legos in Legoland?

Lego buildingsImagine if you were making one of those buildings, but first you had to make each of the lego bricks, one at a time. Well, making an educational adventure game is like that. Take the last couple of days, for example. I have been making a web page that will take 2-3 minutes for the students to read/ hear.

Because we are big advocates of universal design principles, we try to accommodate students who may have difficulty reading. We have seen students using our games sitting in the computer lab struggling to read the words on the screen. So … we are in the process of putting a “read it to me” link on instructional pages so that the student can choose to have the page read. For every page, someone needs to:

  • Write some text explaining fractions,
  • Read that text into a sound file stored on the computer,
  • Since the program we are using doesn’t have ogg as a choice for type of sound file, but that is the type expected by the Coherent UI we are using, convert every sound file to ogg,
  • Create a graphic file or two for the page to illustrate the concepts.

If there are 14 pages, that needs to be done 14 times. Actually, it only looks like 14 pages. It’s really one page with an array or a switch statement that looks like this:

switch(curScene){
case 1:
document.getElementById("scenetext").innerHTML = "Did you ever hear a kid say, 'I hate math'?<br/>" +
"Of course you did! Sometimes people hate math because they think of it as " +
"just the same boring problems over and over, like this";
document.getElementById("sceneimg").src= "scenephotos/boy1_head.png" ;
document.getElementById("audio1").src = "sounds/whichway14_2.ogg";
break ;

and a whole lot more. Every time you click the next button it changes the text, image and audio source. So, I need to write the javascript too. Fortunately, that only needs to be done once.

To recap – each time a student misses a problem we try to offer three choices for him or her to study. Just one of those choices, the web page, can require 28 (or more) files for sound + graphics. It requires using

  • Garageband
  • Audacity
  • Graphic Converter
  • Webstorms

After each problem, we also usually have a video as an option also. That needs a script written, animation and sound. The whole thing could be done in iMovie or Final Cut Pro, but we usually use a combination of Garageband, iMovie, Powerpoint and Photoshop or Graphic Converter. Then, we use Miro Video Converter to convert the movie to webm to be compatible with Coherent UI.

Even though all of this is a lot of work, the end result is much better than what we did previously, running the game in the user’s web browser, because we had to worry about being compatible with all of the different browsers, different user settings, etc.

Everything I just mentioned is in addition to coming up with the math problems in the first place and the 3-D and 2-D games that students play, which require a good bit of work for the animation, sound and graphics. For starters, we need to create a whole 3-D virtual world with terrain – trees, hills, rivers. Then, we need to add some animals appropriate to each scene. In Fish Lake, which is a third-person game, we need a 3-D model of a human and that needs to be animated. It goes on and on. We started out with only two of us doing all of the programming, along with a part-time artist and a part-time animator.

Every day, we are working on it to make it better, but given all of the moving pieces and that we are a small company, it takes us a while to make each level. Sometimes, it feels as if I’ve been working and working and all I’ve got is a pile of Legos.

Legos, me and daughtersOf course, if we had a bigger team, we’d have one person t make the legos, one person to do the design, a third person to make the buildings / dinosaurs/ whatever.

We’re heading in that direction. We have another developer joining us next week (yay, Sam!), a new intern who is a computer science major, and Eric the Intern (a.k.a. the sound guy) is now Eric the Employee and branching out. Justin Flores will be coming up next week for a design meeting to work on both enhancements in the artwork for our current games and concepts for the next game.

We’ll get to those skyscrapers eventually. Just as soon as I finish these bricks.

Building made of legos

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.