Speak and Shout

Thursday, July 19, 2007

kNose 1.0 released

kNose is a free Komodo IDE/Edit extension for Python unit testing; it uses the nose unit testing framework written by Jason Pellerin.

kNose is available for download here, along with documentation I've provided on how to install and use it.

Hope you enjoy it!

Labels: , , ,

Wednesday, July 04, 2007

A quick kNose update

Sorry, I promised to keep everyone updated, and I haven't been doing that.

I've finished working on expanding and collapsing the tree view and running tests in a background thread. I'm currently writing the code to display tooltips in the tree for any tests that had failures/errors. It's been hard to find out how to do this, because it's very hard to google for "tooltip treeview XUL" (and other combinations thereof) and get any meaningful results. However, I finally found some sample code to look at, and I'm hoping this doesn't take me very long.

I've noticed some small bugs in my parsing of nose's output results, and I also need to save some of the treeview settings inside of Komodo's preferences. Both of these "to do" items, however, are fairly insignificant.

My plan is to release it by the end of this week.

Labels: , , ,

Sunday, January 14, 2007

Asteroid Smash released!

Asteroid Smash is a version of the classic game Asteroids in Pygame. You can find it here. It's packaged in an installer for Windows. All the source code is included in a subdirectory.

Let me just say py2exe is incredibly underdocumented. But here are helpful links if you see "Zlib not available" or "Runtime error: default font not found" when packaging your own game.

Labels: , , ,

Monday, January 08, 2007

Asteroids, part 5

Clearly I missed my Christmas deadline. I shot past my revised estimate too, which was New Year's Day. Right now I'm shooting for the end of the week, if possible.

My list of priorities has changed. The game is essentially finished, without any additional features like power-ups or additional enemies. I completed the high-score screens and fixed a bunch of little bugs that kept showing up at odd times during the game. I also added scaling, so that the game would look correct at almost any (reasonable) resolution.

Currently I'm working on the game configuration dialog. This will allow the user to select a screen resolution and customize their key controls. I'm doing it in wxPython using the fantastic VisualWx GUI builder (and once again wishing it was combined with Komodo or Wing). I was going to try it in Tkinter until I remembered that it has no combo box controls without the Pmw add-on, and wxPython is probably simpler to deploy anyway.

My final task is to write an installer for the game. I've heard lots of good things about the freeware Inno Setup program and its related utilities, so I'm going to try that. My game setup is certainly not complicated, so it will mostly involve just deploying Python, and the wxPython and pygame libraries (and perhaps psyco, I haven't decided).

There's also code cleanup and comments to do still, but I may save that for later. I'm trying not to push the release back any further, plus it's not that important until I write my accompanying "game development" article.

Labels: , , , , , ,

Tuesday, November 28, 2006

Asteroids, part 4

I've been creating increasingly complicated code to handle timed game events and multiple event loops. This has prompted me to look at Pygame Extended, which has a few nice classes (Director, Reactor, Ticker, Scene) to handle these sorts of things. Unfortunately, the author has tied them in to the OpenGL portions of the library as well, making it hard to reuse. I think I'm going to extract the portions I need (or at least the ideas) for my own game.

Labels: , , ,