Not submitting final entry, will post later. + Postmortem.


Congrats to everyone who took part, pyweek was really fun! I look forward to playing your games.

we're not going to post a final entry. Our game isn't really at the stage where we'd like it to be... There's still a number of core features required before it's a 'game'. At the moment, it's kind of a fun intro, and a demo of what the game could be.

So we'll make a release some time in the next few weeks. Because we want to show everyone... but not before the basic elements are in place.

Until then, if anyone is bored, you can look at our subversion repository. The intro is pretty cool at the moment :) I think we spent far too long on the intro... so maybe that's worth a little download.

things that went well

  • kick arse intro (goes for 60 seconds or so). I would be happy playing it at party.
  • played around with portaudio. Which seems like the best solution for portable audio. I think we might use it in pygame (with likely something like swmixer)
  • learned to use ocempgui (finally).
  • got pitch recognition working for guitar fairly well. Learned about how the algorithm works, and the various limitations.
  • with a little more work, the game could teach people about music. We hoped to make it a useful program, as well as fun. Nicholas has already taken the pitch recognition parts to allow it to talk to other ear training programs.
  • pygame.threads.tmap combined with pygame.fastevents turned out to be a really nice way to do multithreading.
  • authors of libraries we used were very helpful. Especially Nathan(swmixer), and Marcus(ocempgui).
  • cool samples, and music. moxi made some cool music and samples. We only managed to use some of them because of the rush. However we are going to use more later.
  • found 4 new pygame bugs, and about 8 bugs in other python libraries. Even though they wasted time, it was good to find them.

  • things that went badly

  • thinking pyweek ended on sunday 5pm, when it ended sunday 10am.
  • dissapearing gfx team member, so I had to work on gfx elements at the last moments, when we realised he wasn't going to contribute.
  • spent most of the time on the intro. Including spending six hours failing to get the video playing with, and instead writing a multithreaded motion jpeg video player.
  • game elements left to the end. We should have polished those parts first. (But had lots of fun with other stuff :)
  • python bloat, and py2exe. Python really has put on the megabytes since python2.3. Took a while getting the size down from an initial 26MB to 6MB.
  • had technical issues getting the pitch recognition stuff working. That took a while. Was kind of pythons fault really. Including issues with the GIL(pyaudio doesn't release the GIL). Also the non deterministic way in which python does stuff (dicts, garbage collection, finalisers). Calling processes in python is also hard to do multiplatform nicely(even, and especially between different versions of windows).
  • issues with pygame sound loops, and Sound object loading. This wasted a lot of time.

    --eye stabs.

    (log in to comment)


    Oh dear, it's never fun when a teammate just disappears! Seems like you got to know a lot of new stuff concerning libraries and I'm sure it'll pay off next pyweek (and especially elsewhere!) as long as you focus on the game next time. :)