Triplex Invaders

An Alien Invaders style game with 3d graphics

Update: (11/27/2006) Apparently there were some bugs in the pref copying thing, and also the archive was empty. Oops. It should be fixed now. Thanks to Chozabu (again!) and all the people on the pygame site for telling me.

Update: (11/24/2006) 1.08 Finally. I've been pretty busy. Lots of new random stuff. Multi player (same computer) support. Prefs get copied to ~/.triplexinvaders. Ships change color based on damage. Probably lots more.

In Triplex Invaders, the player pilots a spaceship against a never ending horde of enemy ships. It has psychedelic 3d graphics (but 2d gameplay).

It is written in Python, and runs under Linux, Windows, and maybe OSX. pyOpenGL is used for hardware-accelerated OpenGL graphics. PyGame is used for getting input and stuff. Because Python is a little slow (and my code is relatively unoptimized), you might get low framerates on older computers. Nonetheless, my 1.8Ghz Pentium M laptop is more than fast enough. It doesn't tax the GPU much (but you do need hardware graphics acceleration). If you have psyco installed, Invaders will take advantage of it and run a little faster.

Triplex Invaders was originally written by three students for the Fall 2005 Foundations in Computer Science class at Johns Hopkins University. It was greatly extended and rewritten by one of those students (Arthur Danskin) after the class ended, and is still under development. Alex PB (Chozabu) contributed some models and code. I am heavily influenced by the excellent work at Aba Games.

Please feel free to contribute. Models are in wavefront .obj format. The code is object oriented and modular, so it should be very easy to add features. Here is a class diagram and a module diagram Any suggestions are welcome (just attach a comment or email me (arthurdanskin[at]gmail.com)

Download

Latest Version. old versions. Anonymous subversion access at svn://bloat.org/students/foundations/triplex/invaders/trunk.

Dependencies

You will need python>=2.4, pygame, and pyopengl. If the game runs too slowly, try installing psyco.

Windows: Download and install these packages in order: python, pygame, pyopengl, glut (required for pyopengl), psyco
copy glut32.dll from glut-3.7.6-bin.zip to C:\Python24\Lib\site-packages\OpenGL after you install pyopengl

Linux: If you use Arch Linux, just sudo pacman -Sy python-pygame python-opengl psyco. There is a package in the AUR . Other distributions should also have packages for the dependencies.

OSX: I don't have a mac, so you will have to figure out how to install these things on your own. I have heard that pyopengl for osx is sketchy.

Running/Installation

No installer yet, Just unzip and run invaders.py. Don't forget to install the dependencies first.

1

2

3

4

Comments