Wednesday, January 27, 2010

Python and iPhone Game Development - The RocketHands Team

The chaps over at RocketHands recently released a unique physics/action/puzzle game called RocketFuse. I know that the RH crew are all keen Python coders, so I figured it would be great to get an insight into how Python factors in their game development processes.

Now that you is getting into iPhone development, is Python still important for RH? How does Python factor into RocketFuse development?
Python wasn't a huge factor in RocketFuse because the iPhone platform didn't support python. (This might have changed since then but apple have some strange rules to do with development on iPhone). We did however use python and pygame to knock out a very smart level editor in record time. Another strange connection is that the library we used on iPhone is cocos2d-iphone. A port of a python game library that RocketHands have used on other projects, notable PuzzlePeeps, a gamejam entry.

EC: download at - or puzzle_peeps_linux32.tar.bz2 (Linux).

What exactly is RocketFuse all about?
RocketFuse is an innovative physics action game. You need to draw thrusters with fuses onto a Rocketship which is otherwise immobilised and trapped at the bottom of a cave. The fuses will burn down and the thrusters will ignite causing the ship to move in quite realistic but obviously cartoony ways. You can attach heaps of rockets on the ship to have it blasting all around. The goal is to escape the ship from a series of levels. You need to pay close attention to the number of thrusters you use and the time you take in order to unlock achievement medals for each level to properly finish the game. The game has a distinctive cardboard look to it which gives it some character above the generic sci-fi look.

Why do you use pygame?
Choosing pygame for the level editor was mostly due to a case of familiarity and speed of implementation. Most RocketHands programmers are very familiar and proficient with python as well as pygame. We especially like it for gamejam project because of the quick turnaround that is possible. (Example games from RocketHands members written in pygame: Ladybug Garden, Troll, Lurching Urchins, Dodgy Game, Under One Roof.
EC: download at -,,, or see the Under One Roof GGJ web site.

What other libraries to do you rely on?
Other libs we've used include Hafs game engine, Box2d, Chipmunk, Cocos2d for python and iPhone, psycho, XNA. We spread ourselves around and try to use the right technology for the task at hand :)

How else do you, or would you like to use Python?
RH uses python a lot for our gamejam activities, also for prototypes etc. (see the list above). If we could use it more easily for XBLA or iPhone development we probably would ;)

The RH Team are keen participants and supporters of the local GameJam community in Perth. In fact, they're participating in the upcoming Global Game Jam. I can't wait to see what they come up with.


Vinícius Figueiredo said...

Nothing about Python AND iPhone game development.

PhoneFreelancer said...

Check out PhoneFreelancer if your looking for iPhone or even Python development jobs.

Anonymous said...

What's the optimal programming language for iPhone game development? I understand that these games are usually written in objective c, but i've also heard of c sharp. are there advantages to either?

iPhone Application Development said...

Great!!!!! Generally most of the iphone applications are written on objective C.

Anonymous said...

This is an interesting inside view of the physics action game RocketFuse. It seems to be a unique and exciting game with its combination of realistic action and cartoon graphics. In the interview, it is mentioned that the iPhone platform doesn’t support python coding; is this true of other smartphone systems? I always thought the iphone game development platforms were the most flexible.

iPhone app developer said...

There has to be something related with this field of development ?

Android Developer For Hire said...

objective c are commonly using for iPhone development, but mac environment is very necessary

Galen Nare said...

You don't need a Mac for app development, and objective C is a little bit too coarse. Try Java or Python.

Popular Posts