Final submission of POWER CORE is in
We're all done (bar some shouting at Windows and/or OpenGL). Our final release is up for download.
See the README file in the source for a description of the game and how to play it. The basic description is:
- POWER CORE is an arcade game that's about you fighting off invading hordes of UFOs intent on blowing up your POWER COREs.
- YOUR SHIP
- Your ship is a SUPERAMAZINGSPECIAL ship that has two stores of power. The red SHIP POWER which you accumulate over levels based on the number of POWER COREs you save, and lose by being shot. If your SHIP POWER is empty, you're dead.
- BOOST POWER
- The yellow BOOST POWER temporarily adds to your ship's total power, possibly charging up new weapons. BOOST POWER is gained from shooting UFOs, or the destruction of POWER COREs. It fades over time, and is used up when you use BOOST THRUST.
- The weapons in your ship only come online when the ship has enough total power for them. This is represented by the bar and icons at the top of the screen.
- GAME PROGRESS
- The game progresses through levels, each level having a number of waves of UFOs. You are awarded SHIP POWER when you complete a level, based on the number of POWER COREs you save. Each new level has its own set of POWER COREs to save.
Things that went right:
- Working in a team meant that we had more people nutting over the game concept, more people to work on the nasty code and some nice 3d models. We ended up with a much better game because of it.
- The game's quite playable and fun.
- Music by someone else (in our case Cargo Cult) is cooler than anything I could do.
- Had some fun conversations in IRC :)
- Had a lot of fun during the challenge.
- Python worked beautifully, as did pygame (except mixer caused me pain, but that's SDL) and PyOpenGL (except see below ;).
Things that went wrong - lessons to be learnt from for next time:
- During planning, I decided that the game world should wrap. This complicated a lot of code, and was ultimately unnecessary and was removed to the benefit of the game. Ho hum
- We needed someone to take control of art direction. When you're a solo programmer, that's not really an issue. We changed the look of the game a couple of times, which is really not a good idea in a week-long challenge.
- We've tickled some sort of bug in pygame: setting the Clock.ticks() value to >41 results in 100% CPU utilisation on my computer. 41 is fine. 42 is evil. Go figure.
- Rather more seriously, we've tickled some sort of OpenGL compatibility thing, or maybe a PyOpenGL bug, we don't know. The game flat-out crashes on one test Windows machine, works fine on another. It may, randomly, crash between levels. We really have no idea why, and spent most of today trying to sort it out.
- David used Lightwave, which doesn't export colours with vertexes, meaning that Dave (using Maya) had to re-colour all the models David created.
So, sorry if you can't run our game. It's fun, believe me :) We will be trying to figure out the issue, but that'll be after the deadline.
-- RichardAdd comment