pygame is
Simple DirectMedia Layer is
Site Swing
Ultra Tank-chan!

Ultra Tank-chan! - 1.1.1

Neil Tallim (flan)



Ultra Tank-chan! is a large-scale multiplayer space-combat-sim in the vein of Volition's FreeSpace series, with some influences from Bandai-Namco's Ace Combat games. It is notable for the number of players it supports (96 over 6 teams), its drop-in/drop-out multiplayer design, its low system requirements (it runs extremely well on an Asus eee 900, the baseline target, which is even more impressive when considering that the entire game was written in Python), and its quirky, likely unique, art style, which has been described as "an epic space battle in a lava lamp."


This is my first real game, created to satisfy an in-joke, and the first time I've ever worked with 3D in, well, any programming context, and I forced myself to go from concept to release in exactly two months, so please let me know if I overlooked something basic along the way.

Accessing stuff

The full source, divided into neat client and server archives, as well as guides for setting up, playing, and min/maxing the game, and even gameplay videos for anyone who's just casually curious, are available through the project homepage.


This game is fully playable, provided you have friends, slaves, or happen to be capable of using a keyboard or gamepad with your feet (or, if you're really keen on trying it, you can find me on synIRC as flan). It is also very stable, with no known issues at this time.

Supported platforms and interfaces

Works as described on Debian, Ubuntu, Mac OS X, Windows XP, and Windows Vista. Plays best with a gamepad or joystick, but a keyboard is fine, too.

Just make sure you have the pre-requisite packages before attempting to run the client. They're all pretty common, but not often pre-installed with distributions.


This update makes sounds optional and fixes a binding inversion in the standard keyboard layout: previously, - increased acceleration and + decreased it.


Home Page:


click to view original size


Ultra Tank-chan! - 1.1.1 - Jul 22, 2009
Ultra Tank-chan! - 1.1.0 - Jun 4, 2009
Ultra Tank-chan! - 1.0.2 - Apr 16, 2009
Ultra Tank-chan! - 1.0.1 - Apr 15, 2009
Ultra Tank-chan! - 1.0 - Apr 14, 2009 account Comments

If you wish to leave a comment with your account, please sign in first.

January 24, 2010 4:03pm - Neil Tallim - nickname: (flan)
I've rehomed the project's source and wiki at

Unfortunately, I couldn't find any way to update the project page to reflect that.
June 4, 2009 2:09pm - Neil Tallim - nickname: (flan)
If any bugs are discovered, please use the contact information for Red HamsterX in the project's wiki to let me know.
April 17, 2009 3:04pm - Neil Tallim - nickname: (flan)
I had a "durr" moment yesterday and accidentally inverted a value in the frame-synch algorithm. It's not significant, so I've silently updated both 1.0.2 archives.
April 15, 2009 1:19am - Neil Tallim - nickname: (flan)
I learned how to not fail at recording video, and have made available smaller, better, shinier files, all accessible through the project's wiki. These demonstrate shading and maintain a solid framerate, which actually does justice to the game's engine. They're also shorter, making them much more check-outable, so "check it out, yo."
April 14, 2009 3:56pm - nico - nickname: (stupidbot) - 5/5
Indeed you were right, I had the 2.6, I changed it and all go well.

Thanks for your help
great job:
April 14, 2009 3:05pm - Neil Tallim - nickname: (flan)
Hi, nico.

Can you let me know what version of wxPython you're using? My code assumes 2.8+, and I didn't think to add a check-for-version routine, though I'll add that now and update the 1.0 archives.
$ python
>>> import wx
>>> wx.VERSION
(2, 8, 7, 1, '')

SetItems is a function inherited from ItemContainer (, but it's possible that this inheritance structure didn't exist in the version you have. If that's the case, I can replace the calls with something that would be compatible with older versions of wxPython -- I'm just too new to wxWidgets to know what's new and what isn't. (I'm usually a PyGTK purist, and I would have done the GUI work in PyGame, but for an external technical requirement)

Regardless of the wxPython version, this is not a problem that you caused. It's clearly an issue related to API versions.
April 14, 2009 2:44pm - nico - nickname: (stupidbot)
a peace was missing (the error in fact)
AttributeError: 'ComboBox' object has no attribute 'SetItems'

sorry for the repeat
April 14, 2009 2:43pm - nico - nickname: (stupidbot) - 5/5
It seems quite a good game (I see the video).

But I did not manage to execute it.
I have this error (sorry for reporting a such long paragraph) :
Traceback (most recent call last):
File "/home/nicolas/UTC/UTc!/client/src/lobby/", line 111, in _clickConnectButton
_client_gui = client_gui.ClientGUI(None, -1, "")
File "/home/nicolas/UTC/UTc!/client/src/lobby/", line 432, in __init__
File "/home/nicolas/UTC/UTc!/client/src/lobby/", line 1218, in __load_variables

I did not undestand what I did wrong.

our projects welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not.
recent releases
Feb 21, 2017

Jan 31, 2017

Jan 24, 2017

Jan 18, 2017

Jan 7, 2017

Dec 30, 2016

Dec 8, 2016

Nov 28, 2016

Nov 27, 2016

... more!
for pygame related questions, comments, and suggestions, please see help (lists, irc)