game physics games armadillo run simple wanted idea time
Peter Stock, the creator of Armadillo Run, took some time to answer a few questions about his game, which is his first finished project and has been nominated for the Seumas McNally Grand Prize as well as the Design Innovation Award.
Who are you and how were you involved in Armadillo Run?
I'd been a computer programmer for 5 years before I started on Armadillo Run, but I hadn't previously worked in the games industry. I made the game on my own over a period of 9 months.
What made you switch to the games industry? Or have you just always wanted to make a game?
I'd had a couple of game ideas I wanted to try out for a while before I actually started work on Armadillo Run. It was a combination of things that made it seem like the right time to go for it - I had some savings to fund full-time development and had just left my previous job to move to Canada with my wife.
This being your first game, how does it feel getting multiple nominations from the IGF? What made you enter the game in the first place?
Well, I think I've been pretty lucky getting this far in the IGF - and with the reception of the game in general. While I hoped for it to do well, it wasn't something I expected. I've followed the IGF for the last few years and I've been impressed with the quality and innovation of the games. I decided to enter because firstly it's nice to know how other developers viewed my game, but also because it's a good way to get publicity - something indie games often don't get a lot of.
Where did the idea for Armadillo Run come from?
One of my friends showed me a couple of physics-based games back in 2001 and I really liked the idea of using physics as part of a game's gameplay. It seemed pretty novel and it can make the gameplay less linear and more freeform. The first game we found was Stair Dismount, which is great fun - all from just pushing a rag-doll man down a flight of stairs. We later found Bridge Builder, which we also spent a lot of time playing. I'd say that these two games helped me come up with the idea - combining the 2D design-test concept of Bridge Builder with some dynamics.
Cool idea - was getting it to work the way you wanted harder than you anticipated?
It took quite a bit of work, but what I ended up with was pretty close to what I had imagined at the start. Most of the initial work was getting the physics engine working so that I could then start thinking about how to structure levels around it. I think it was about as difficult as I expected, but this is probably because I gave it a lot of thought and decided on a fairly simple design and implementation - 2D physics to make the interface simple and only simple shapes for the primitives (lines, circles) to make the implementation easier. If the game design was much more complicated, I can imagine not having finished it at all.
Did you roll your own physics or use some existing code such as commercial or open source?
I made my own physics engine from scratch. It wasn't too difficult because I was only using one type of simple object - springs. I decided to do this mostly because I only wanted it to support these simple objects and be quick, so it could handle a lot of them. I may have been able to achieve this by using an off-the-shelf engine, but I might have had to change parts of it to gain the optimizations possible for only using 2D springs. I found it quite fun doing it all myself and the physics was the most fun part of making the game!
Have you played the other finalist, RoboBlitz, which is also based around game play physics? What are your thoughts on that game?
I haven’t played it, but I’ve watched the videos. It looks pretty interesting, it’s certainly very well polished and it seems well suited to a console audience. I think the physics brings something special to it – Half Life 2 and particularly Garry’s Mod have shown how popular just playing about with physics can be.
Although Armadillo Run isn't complex enough to need a dedicated card like Ageia's PhysX, what are you thoughts on such technology?
I think it’s very interesting. Realistic physics is something that’s pretty processor-intensive, so removing this from the main CPU(s) is a sensible goal. Having said that, it seems to me that the card is caught in a catch-22 situation. Relatively few people have one, so games either have to severely restrict their market by making the card a requirement, or make it an optional enhancement – which seems to relegate the improved physics to be used for ‘eye candy’, unfortunately. The increase in processor power and the introduction of multiple cores/processors allows games to make pretty extensive use of physics without additional hardware.
Once the physics were in place, what was the hardest part about building the game around them?
Playing with physics is pretty entertaining by itself, so making a game based around the physics simulation was pretty much a case of giving it some purpose while not restricting player choices too much. I wanted a simple goal - the idea of moving something from one place to another seemed a good idea and a ball was the obvious shape, since it can roll. I’d say the most time consuming part was writing the code that dealt with the interface and menus – that’s something I totally underestimated and turned out to take quite a bit of time.
Is there anything you didn't implement in the game that you wished you could? Why?
Not really. I had some other ideas for things to model in the game, but they would have taken away from the purity of the idea, and would have complicated the implementation. I would like to explore simulating a slightly different type of primitive object and I’m interested in the behavior of liquids, but these ideas will have to be the basis of different games.
What was used to make the game (language, graphics, etc) and what tools aided in development?
I used Visual C++ for all the coding, and the OpenGL and FMOD libraries for graphics and sound. Since the game’s pretty small-scale with very limited art assets, little else was required except a simple paint program for the 2D graphics.
What were some of the motivational techniques you used to keep yourself on track and get the game done?
I think a lot of it was down to doing some sensible planning at the beginning and making sure I didn’t bite off more than I could chew. I think it can be pretty easy to get carried away with the game design at the start, which makes things much more difficult (and less fun) to finish. Apart from this, I made sure I didn’t work silly hours and periodically reviewed my own progress to ensure I was working on what I needed to do (not necessarily what I most wanted to), which sometimes meant forcing myself to confront the difficult problems rather than sweeping them under the carpet!
Is there anything else about Armadillo Run you would like to reveal to other developers?
I plan on writing an article describing the details of the physics simulation at some point in the future, although I’d like to have my next game released first (otherwise I’d be fanning the flames of my own competition a little too soon). The game doesn’t really do anything very clever – once people know my methods, they will think me a simpleton!
What's next for you?
I’m working on a new game that develops the physics a little bit more, to allow more complex objects to be created. This time, it’s going to focus on action a little more, and it will allow players to directly control the objects they create, in contrast to Armadillo Run, where players can only sit back and watch what happens.
Any advice to give to people looking to switch careers like you?
I’m not sure if I’m qualified to offer much advice, being new to it myself. I’d say to be realistic and research things before starting out, being careful not to take on too much. There’s more risk in indie development than a normal salaried job, but there’s definitely the potential for more reward too.