IE 11 is not supported. For an optimal experience visit our site on another browser.

Game programming made easy

Image: Kodu
Racing games, first-person shooters, adventure games, 2D side-scrollers. "Kodu" isn't exactly a game, it's more like a tool — one that lets you and your kids make almost any kind of Xbox 360 game from scratch, no programming experience required.Microsoft

Who says making a video game is hard? Pshaw. Even a 9-year-old can do it.

Even I can do it … and that’s saying something since I’m quite the dumb-dumb when it comes to the maths.

OK. Perhaps the 9-year-olds and I can’t make any old big-budget video game. But thanks to the newly launched “Kodu,” we can begin to master the magic that makes a video game tick and, in a matter of hours, we can even make an Xbox 360 game of our very own.

A team at Microsoft Research has just launched “Kodu Game Lab” on the Xbox Live Community Games channel. Originally created to make programming more accessible to kids, “Kodu” is not so much a game as it is a set of tools — tools that not only teach basic programming concepts but also make programming so easy and so much fun that almost anyone can dive into it.

( is a Microsoft-NBC Universal joint venture.)

More importantly, Matthew MacLaurin, “Kodu” lead designer, says he hopes it doesn’t just teach programming, but teaches us to appreciate programming as a modern art form.

“It’s almost selfish,” he says. “We want people to understand how fascinating what we do is. And part of the way we do that in ‘Kodu’ is we’re not trying to teach what’s scientific about programming, we’re trying to teach what’s creative about programming.”

Gaming’s dirty little secret
In my last column, I wrote about the growing in gaming. That is, games like “LittleBigPlanet” and “Spore: Galactic Adventures” are giving players the chance to create and share their own game characters, levels and even full-blown adventures.

Though “Kodu” has been dubbed a kiddie version of “LittleBigPlanet” — that’s not exactly accurate. Yes, like “LittleBigPlanet” and several other games that fly the user-generated flag, “Kodu” lets players create game levels to share with others.

But while most of those games focus on things like designing the way your character looks or the way the terrain is shaped — Kodu is less about how things look and all about how things behave. That is: It’s all about the programming behind the pretty surface of a game.

MacLaurin says that by making programming more accessible, he hopes to clear up a misconception: That all of the creativity in video games takes place in the graphics and art side of the gaming studios, while the programming gets done by a bunch of math guys toiling over dry code.

“Actually most of the programmers that are really good are really creative people and are super involved in the creative process,” he says. “It’s like programming is the dirty secret of gaming, and I think it should be the thing we’re most proud of.”

He explains the creative beauty that is game programming like this: “It’s kind of like what we always wanted playing with dolls to be like but it never was. When you’re playing with dolls or action figures, you can set up these little worlds and then you can tell a story about what happens next — but it doesn’t actually happen. But with ‘Kodu’ you set up a little world and things actually do happen, and there are often things that surprise you.”

No experience and no keyboard required
To jump game enthusiasts right into programming, “Kodu” provides an easy-to-use, image-based creation tool — that is, a set of menus filled with cartoonish icons that you navigate through using nothing more than an Xbox controller (no keyboard required). Using the controller’s stick, you sweep a cursor across your TV screen, painting a landscape into existence. You then populate the world with various characters (flying saucers, motorcycles, submarines, blimps, etc).

But the thing that makes “Kodu” unique is this: You can design the way each character behaves simply by navigating through the menus and placing colorful icons in a row.

For example, let’s say you want the motorcycle character to look for apples and to eat those apples when he finds them. You simply line up your icons to form a kind of visual sentence that says: “When the motorcycle Sees the Apple it moves toward it. When it Bumps into the Apple it Eats it.” (Check out the below screenshot to see how it works.)

This is just a small example of what’s possible in “Kodu.” There are almost 200 behavioral building blocks that can be combined in ways that will produce a vast array of behaviors in your game characters. It’ll only take you an hour or so to create a basic game, and perhaps a day or two of thinking and tinkering to make something more in-depth. And ultimately, there’s so much you can do here that you’ll be able to make almost any kind of game — a first-person shooter, a racing game, a 2-D side-scroller.

I should point out that, created by a team of only six, “Kodu” is not a product on the sprawling, high-budget scale of “Spore” or “LittleBigPlanet.” Priced at only $5, “Kodu’s” graphic style is polished but basic, and it limits players to creating only smallish-scale games. There are a few tutorials to get players started (tutorials that make a fun puzzle game out of learning how to program) but I would have liked to see more.

That said, “Kodu” comes with a nice variety of technique examples and sample games that you can open up and study. Dig through the guts of these and you’ll learn the nuts and bolts of how to make your own games. Some players will be disappointed by the limited ability to share the games they create (players can share only with friends). However, MacLaurin says they are looking into ways to bring a larger sharing system to “Kodu” in the future.

Broccoli or chocolate?
In the end, MacLaurin and his team deserve lots of praise for “Kodu.” They’ve done a beautiful job translating some very complex programming concepts into simple-to-comprehend ideas — simple enough for even this math-impaired writer with zero programming experience to grasp immediately. And "Kodu" — which is already being used in schools — is definitely an excellent way to jump-start the career of the future game design superstar in your household.

MacLaurin says they’ve found that "Kodu" is best suited for players 9-years-old and up. With its cartoon icons and kid-friendly approach, I had asked him if it was like putting chocolate on broccoli — a means of tricking kids into thinking the complex world of programming was actually fun.

But he insists that’s not the case at all.

“It’s teaching them that it was chocolate the whole time, it just looked like a piece of broccoli,” he explains. “We’re really saying that programming is the most fun part of creating games because of the way it surprises you. You do something really simple, and you get something really complex and cool coming back at you.”

And it’s true. Once you’ve put everything in place in your “Kodu”-spawned game, it’s a joy to hit play and watch how everything actually works — to see your game spring to life both in ways you expected it to and in ways you never could have expected. And this is the beauty of programming, says MacLaurin, who’s been programming games since he was 11.

“I had played games and they were fun. Butonce I started editing games there was something that just lit up inside me,” he says. “This is an experience that I can’t get anywhere else. I am actually creating things that then move around under their own volition. And that is just kind of fundamentally magic.”