Greetings all, and the indie game train makes another stop for this week's Sunday Sidebar. This week I spoke to Alex Peake, who is the leader of Primer Labs, a company working on frankly fascinating piece of software that is part-game, part-teacher, and full of potential. Alex is a vibrant member of the ethical hacking community, and even works on the game at a well-known hackerspace in San Francisco. If you've ever wanted to be inspired by hacktivism, and the hacker community at large, this might be the place to begin. If you're particularly fortunate, you'll decide to try out Code Hero, and be the next person to hack the planet!
Who are you and what do you do?
I’m Alex Peake, and I’m known for my work on Code Hero, which is a game that teaches how to make games. When I was a child, I played Dungeons & Dragons and fell in love with the creativity of games. Then I played computerized and videogame versions of Dungeons & Dragons, and was instantly appalled at the uncreative state of those versions. When you play Dungeons & Dragons, you have the challenges of a writer, an improvisational actor, and a game designer all wrapped into one. When you become the Dungeon Master for a group, you want that creativity to, at will, create anything; to build a new system in your mind, just as soon as the player asks for something, to be able to give it to them. However, that’s not present in games, so I found myself trying to come up with a game that would allow you to redefine it. I also encountered school, where I was rather appalled at some of the aspects of school, despite having a really good educational path. It struck me that videogames were largely boring and uninteresting, and would be much better if you actually learned something from them – that games would be better if they were a school. Schools, on the other hand, were rather stodgy in their ways and would be much better if they were more like a game. I began to be obsessed with the freedom of DnD roleplaying with the power of computers and computer programming, with education as the purpose of it all. That idea evolved into Code Hero.
How many are on the Primer Labs team?
There are about ten people. Four programmers, with about three volunteer programmers who joined recently. People have been getting in touch with us through the game’s built-in IRC chat, which is really cool. One example, Aaron is one of the volunteers who joined us through the IRC chat, where he started talking to us, and immediately starting discussing the need to improve the IRC system to get it to work inside the game. Now, he has built out our IRC chat system, so that while people are playing, they can chat. So it’s this self-referential thing, whereby he met us through the IRC chat, and now he’s got the IRC chat working so that more people can contact us through the IRC chat. The team grows as people get excited about it: they don’t just want to make stuff with it, but they want to help build Code Hero itself.
That’s quite amazing! So, how did you wind up getting into game development? What is your personal story there?
Well, the moment you play DnD, you’re a game developer. I rather worry about a generation of game designers, in an age where games are so ubiquitous, how could you call yourself a game designer if you’ve never played DnD? It seems bizarre to me. I cannot imagine coming upon the craft any other way. Nowadays a lot of people are so familiar with MMO-type games that when they hear about DnD, they try to translate it into MMO terms. They’ve got it backwards – all games are pale approximations of what imaginative games can do. I began designing my own games when I started learning programming. I’ve never met a programmer who didn’t make a game first. So that was my original inspiration. There is no higher purpose than making games in programming. I started off with C. C makes you scale back your game ideas because everything is too hard. It’s like having someone who takes every idea that comes out of your mouth with a soul-crushing ‘No, we can’t do that’.
I found my way to HyperCard, and ProGraph, then I was able to really make games quickly. It wasn’t until I encountered Unity3D as a game engine that I found a tool I could really run with, and that I could see myself teaching people to use.
What is it about Unity that you find so appealing?
When you have a whole bunch of options to choose from, all of which have trade-offs, it’s hard to make the right choice. In a lot of consumer goods, that’s a positive because it encourages competition. In programming, it’s paralyzing because you don’t know where to start. Code Hero is based on Unity for the same reason that we encourage others to base their games on Unity, which is that Unity has essentially answered the question of ‘How should I make games?’ You could use other things, and there are special reasons for doing so, but its two most valuable characteristics are that a) it’s free, and b) it runs on everything.
So even if you were only going to program on one platform, you retain the freedom to make it for anything. It’s what they call ‘The best engine this side of a million dollars’, of course making a jab at Unreal and other big high-end engines. These high-end engines have had to compete with Unity’s pricing of zero dollars.
A third big reason, that started in 2009, is the Asset Store. It offers everything you might want to make with the engine, but already made for you. As a young game developer, you can basically plug Lego pieces together. You only have to do a bit of coding to get the various modules to work together, and you can get incredible effects.
You have a interesting history of entrepreneurship. Where do you get your drive from?
I don’t know what books other kids grow up reading, but every book I read was heroic fiction: ‘You are a hero, and you should save the world’, that sort of thing. I think the difference was that my parents imparted to me the impression that I should actually do that, because the world is utterly doomed. The environmental issues that my parents were concerned with, the global security issues of the Cold War, etc really gave me the impression that this was not a firedrill, that something had to do be done.
One particular genre above all else, called Cyberpunk, I could relate to more than any other. The heroes were hackers, they weren’t the chosen ones with magic powers, they were geeks and scientists. Cyberpunk really opened up to me that there could be a heroic geek who through technology could change the world. That really made me feel like the problem was that not everybody else was being exposed to these ideas. The problem was distribution, right? If there are all these inspiring things that people are not coming into contact with, how do you impart aspiration? How do you communicate ambition, self-belief and a belief in humanity?
That’s the kind of game I wanted to make. Not just educational, but aspirational. Curiously, the only people I could find who were making this sort of thing was the US Army. [Laughs] They are utterly brilliant at teaching you to shoot guns, perform medical operations, jump out of airplanes and then offering you a job at the end, saying ‘Join the army, and come do this for real.’ I thought, ‘Why don’t all games, that teach science and things like that, actually get people on a path to impacting the world?’
You exhibited Code Hero at PAX Prime’s Indie Megabooth. What did you gain from the experience? Do you intend to be a part of it in the future?
As a young game developer, I didn’t know any other game developers. Growing up and becoming a programmer, I wasn’t around other developers, so I didn’t have any role models, or people that I could talk to about how they pulled off their games. So when we got a bit of a fan base through our Kickstarter for Code Hero, everything changed. People started to invite us to participate in game industry events. One of those was the IGN Indie Open House, and that’s where I first heard about the Megabooth. I met some of the developers who had taken part in it, and I got Code Hero on the list of developers for the Megabooth at PAX Prime. It’s been tremendous, meeting other developers, learning the ropes. People like Alexander Bruce have mentored me, too.
It’s a series of opportunities, and just being part of the indie conversation. Being in PAX Prime, we got into talks with Valve, and I got to tour their offices, and talk to them about implementations for Code Hero in Steam, and for users to be able to submit the games they create in Code Hero to Steam, too. I would never have been able to talk to Valve if I hadn’t been part of the Megabooth.
I pretty much want to be a part of the Megabooth forever. If the big companies were smart, they would pretend to be indies, and try to get into the Megabooth. Fans already know that, at PAX, the Megabooth is now the thing to see. They flock to it. On the very first day of the show, there’s Jerry Holkins from Penny Arcade, playing our games. I’d like to see Megabooth expand. I think Kelly, Eitan, and everyone involved with it is doing an amazing job. As for its future, I think of the Megabooth is going to get more ‘mega’ every year.
Can you go into some detail about Code Hero, the ethos behind it, and the work of Primer Labs in a larger scope?
The original Code Hero prototype started with a very simple idea: shooting code like bullets. This was the headlining attention-grabber. Games about programming have never been too engaging. They are too tailored towards people who can already program, and don’t do enough to get gamers started into programming. Second Life, architecturally-speaking, was the first crack at building a Metaverse, a world where anyone could imagine something and then build it on the spot and share it with anyone else in the world. I was floored by it, but I wanted to build the Primer, which was inspired by The Young Lady’s Illustrated Primer in The Diamond Age by Neal Stephenson. If there was ever a book that will reach out from its pages, pat you on the back and make you feel proud for being a game designer, it is this book. I can’t recommend it enough for developers. The Diamond Age was not the source of my idea, but so many people pointed me towards it when I told them my idea that I read it.
In the story, the girl cannot tell when she is interacting with the AI, or a person. Imagine if you were playing a game, and you couldn’t figure out when the events were being triggered by a person, or the computer. Code Hero is a prequel to Primer. It is a game that teaches you the game programming system. All the games that need to be made to teach people can only be made when there are enough people capable of coding them. I built Code Hero as the tool to help people build the rest of Primer as a community, rather than just me. I want a whole industry of Primer game developers. I’d like Primer to be a genre, and not a company.
Code Hero is an exercise in being selectively-minded in what we make, and community-minded to what we can share with other, future developers.
"We are a school, these are our alumni, and we want to feature them."What are your plans once Code Hero is finished?
Code Hero begins as a single, very focused game that teaches you programming. So our role goes from being a game, to offering up a set of tools for people to make their own immediately. Once people are building worlds, we have a road map of what we need to deliver to allow them to make their worlds as meaningful and as awesome as possible –ways to expose them to everything that is possible. So if they want to learn about racing games, for example, there’ll be a car city, where you learn about car programming in a game that looks like a racing game. We put you into that content, and teach you to hack that content, so that you win the race by making your car move faster. That’s our support intentions for Code Hero.
After that point, people are on the threshold of Unity development and what we really want –a real dream of mine– is for some of our own players to be at the Megabooth with us, exhibiting the games that they created with the tools we gave them. The idea that we are a school, these are our alumni, and we want to feature them.
That's a great thing to think about. By the way, how do Unity feel about you using their engine so openly?
They give us big hugs. They really, really like us. [Laughs] They’ve pretty much sewn up the game industry at this point.
How fixed-in-place is the visual style? The in-game world looks like something out of Reboot.
I went to school in Vancouver, British Columbia. My mentor was actually one of the lead technical developers at Reboot, and as a kid, I grew up ‘on the set’, if you will, where they were rendering and animating that. Reboot is definitely a huge influence. Another is Summer Wars, a Japanese film that not nearly enough people have seen. The style is a conscious decision to leave Tron in its place of honor as an aesthetic, but not one that is going to appeal to everybody. It’s not an aesthetic that your parents might use for computing. The aesthetic right now is still placeholder. I’ve hired artists to do some art, but I haven’t had the budget to hire the artists to do all the work that I really want to do.
For instance, Gizmo has been a big influence on our art style. He’s a demoscene artist for Farbrausch. We haven’t been able to bring him on full time yet due to our limited resources. In most games, you make a decision, and all your art assets match one style. What do you do if you’re making a game about teaching different art styles?
In essence, Code Hero’s art style is a world that serves as the meeting place between these different styles. So for instance, we have the Code-foo Dojo. This is a place that looks like where Morpheus and Neo first fight in The Matrix, you know, the ‘Is that air you’re breathing?’ scene. So the Code-foo Dojo has that similar Eastern style. The rest of the world is a default canvas white, similar to Summer Wars.
As artists develop it, the overall look and feel will be representative of our world, a world which isn’t limited to one specific art style.
The game is currently in Alpha state. What are your plans going forward?
The beta will launch… when it’s ready! [Laughs] What will determine how quickly it gets ready is how quickly we can get the necessary funding and programmers to do it. We can deliver a bunch of levels that deliver on what we promised originally, but what we have in mind is ten times more ambitious. We’ve been talking to quite a few interested investors, philanthropists and foundations, and it looks like they’re going to be willing to help us finish the job.
The beta being on Steam is a much higher bar than an Alpha that teachers are testing out in classes. If something doesn’t work in a classroom setting, there’s a teacher there to pick up where it left off and continue the lesson. However, when a game is in front of a gamer, that person has 20 other games in their Steam library that they haven’t played yet. It’s not just competing with our things, but with unplayed games just sitting there, waiting to be played. The alpha must perfect the learning system. It must deliver great learning to people who want to learn, and teachers that want to teach. That’s the bar that the alpha has to reach. The beta needs to reach the bar of ‘Is this ridiculously fun and addictive?’.
I don’t think it will be longer than a year away. The next PAX is certainly a goal. Although one thing I learned from announcing the alpha during PAX Prime is that it’s really hard to engage with fans at the convention and release a game to customers at the same time. Customers deserve as much focus and attention as attendants at an expo. Therefore I think we would launch it before PAX, or just after, but not during. That would be the window we’re looking toward, anyhow.
What is the most difficult part about being an independent developer? And the most rewarding part?
I think the hardest part about being an independent developer is that the ecosystem that’s there to help entrepreneurs is largely non-existent for game developers. Most incubators take very few games. They look at you funny when you’re a game developer, and you have to really sell them on something. That’s usually not even an aspect that makes the game fun. There’s a different language between entrepreneurs, and creatives. To us, we know that if the game is fun, it will do well. Making a ten-slide presentation does not seem logical or rational compared to simply letting them play the game. I know someone who presented to a certain big console maker, and he brought a game he had written from scratch for their console. They wanted to see his market research and his financial projections and he said ‘I thought that’s what you guys do. I’m a game maker. I brought my game.’ [Laughs] I think the biggest thing we could work on, as indies, would be to make it easier to get to the point where you can get better access to funding. For instance, if you go through Kickstarter, you should ideally have been working on your game for at least a year before that. But how do you fund that first year? That’s the question. Had I gotten those sorts of opportunities earlier in the development process, Code Hero would be done by now.
When you watch someone playing your game, and you see their face light up with a smile, you’re reminded of the first times you played games. I think there are a lot of trades where people don’t get a tangible feedback, they don’t get to feel like they’ve built something with their own two hands. Making a game is the closest thing to constructing a building, and then watching people live in it. Like they say, there is no such thing as a successful artist. To be an artist is a success. There is no such thing as a successful game designer. From your very first game jam, or prototype, it is so rewarding just to be someone who makes people happy, let alone if you could see your games change the world.
So lastly, what’s your most prized gaming possession?
[Pause]… That’s a really interesting question. I’ve collected a lot of roleplaying game books over the years. The first books I bought when I was eight or nine years old were hugely influential on me. Shadowrun published a 4th Edition in full color that I had to buy, even though I haven’t played it in ages, because it was such a huge influence on me. But I think my most prized possession is one that I no longer possess…
I had a laptop when I was living in a part of San Francisco that’s not too safe, and when I was moving my stuff to and from the car, and my laptop was literally marked with ‘The Young Lady’s Illustrated Primer: Code Hero Edition’. Someone stole my laptop, and I was really devastated. Luckily, I had all the game’s source code on Dropbox.
To come back around to The Diamond Age, the storyline is of a theft. The creator of the Primer book is robbed by some hoodlums, and one of the hoodlums gives the book to his orphan sister, who becomes the smartest girl that ever lived. I hope that they gave it to their kid sister, or something, and that they learn programming from it.
Excellent! Thank you for your time.
You too, Christopher. It was a pleasure.
You can find out more information about Code Hero on the Primer Labs website.