Chicken Chicken now has a proper little page on my site, and you can get the latest downloads and screenshots there. http://www.upperorbit.com/chicken/


Hi, guys i thought you might be interested in participating in an online game designing contest being conducted by IIIT-Hyderabad. Check out the technical events section in the website. http://felicity.iiit.ac.in/
Details about the prize money
1st prize $150
2nd prize $100
3rd prize $50
Here are the links for the previous years' prize winning entries

And here is the link to my pyweek entry :) just in case.. PowerDefender

[13:39 Ron] Bugifx

There was a bug present: If a button was released too fast, the button_pressed time could result to be zero, which lead to a zero division error.

Thanks Volker Grabsch for noticing!

Updated serial.py and serial.zip. New checksum is:
MD5(serial.zip)= ad7dbf2622bee4bac394637335bce2ae


We was in a hurry when we finaly made our submision, if you want to play the game now you really should try this (Python and Pygame included) instead.


Hi, i was wondering if somebody could tell me about how the game loop should be written. Coz i seem to have done something wrong with it. I used pygame and opengl so i hope richard could help me out here.


Any clue when the next PyWeek will be?

Plz tell us if you could not run our game...
and do mention your system details. 
once again the requirements of our game are
python 2.4
pil(python image library)
thank you :)

Thanks to everyone who played my game and made comments! I really enjoyed this contest. I like to polish my games up after these contests, so here's my "if only I had longer" deluxe edition of Dynamite. Some of the changes are from the comments I received.

Website | Source | Windows

The Deluxe Edition includes the following improvements:

  • improved graphics and engine
  • 2 new gigantic levels
  • per-level high scores
  • numerous interface improvements
  • minor bug fixes
  • see CHANGES.txt for full details

I hope you enjoy it! I've really enjoyed getting to play everyone's games!

p.s. if your game is pygame based, please add it to www.pygame.org!!

We'd be very interested if the people who can't run our game could please give us information about the system they're running on, and any error details they get. We're still trying to track down why it barfs out on some Windows machines. Please include O/S (including version and patching status), system graphics card, system memory, python, pygame and PyOpenGL versions, ... uh anything else you think might be pertinent :)

For what it's worth, I know POWER CORE works on my machine: AMD 2800+, 1.5GB RAM, GeForce 6800GT, Python2.4, PyOpenGL, PyGame 1.7.1 running either fully-patched-up Ubuntu Linux or fully-patched-up Windows XP. It also works on every Mac we've tried it on.

-- Richard

  • Quite a bit of fun. A little difficult to steer and lack of sounds hurt a little. Otherwise, very nice.
    • Yeah, the lack of sound is really irritating. I actually found some half decent sounds - explosions, electric hums, and so on - but never had time to put them in. I also found some perfect funky music I wanted to use. In reality I'd have been better off if I had given up on even trying to find any sounds and spent more time coding; the bullets might have sucked less.
  • Cool for a 1 week challenge, nice work.
    • Thanks. :)
  • How did you make this in one week?!?
    • Erm... quite badly, in my opinion; but everyone's been so nice about it, hehe :) It'll probably surprise you to know (unless you bothered reading my gigantic post-mortem posts) that on the morning of deadline day there wasn't actually a particle in sight.
  • Cool concept. Would love to see it evolved further!
    • So would I - I've got big plans for this one. Time will tell. ;)
  • sorry, didn't work.. i'm having trouble with a few of these games tho..
    • That's a shame :/ but.. erm.. telling me the error message(s) would be nice!
  • Wow, that was pretty cool.
    • Anyone noticed the running theme yet? ;) </modesty>
  • Looks pretty cool. Could be a fun game with sound and some slightly prettier graphics :) The charging stuff didn't work for me though (unless I was missing something)
    • Yeah, I didn't have time to texture the particles, let alone touch on what I wanted to do in terms of explosions and dynamic lighting. In the first "final" version, the mouse buttons didn't function after pause/unpause; this might be what caused the charging to fail (this got fixed at the same time as the nVidia bug). Just to clarify, when you hold down the right button, the blue bar (power) should decrease and the red/purple bar (shield) should increase. Dropping either to zero kills you - some of the particle types can regenerate your power, but the drain/charge mechanism is the only way to regenerate shield.
  • fast and scary
    • Fast? Yes. Scary? Chicken ;)
  • Worth the hassle to install PyODE!
    • Wow - thanks. I never expected to hear this; the way I'm actually making use of PyODE is apalling.
  • Looks very good and is fun to play, although the controls and bullets sometimes feel a bit unresponsive.
    • Yeah, the bullets are really, really crap. Sorry about that one. As for the controls - I sort of achieved what I was after, but had no time whatsoever for balancing. (Anyone actually tried playing with sensitivity set to 1.0? That'll show you how untweaked the controls are...)
  • Nice tunnel effect, and very nice orbity balls. They look cool!
    • Yeah, I like them. They were much more of a pain in the arse to get working than I thought they would be, too. :P
  • Good game. It has potential. Maybe the control could be improved and the world customized. Some racing stuff would be nice.
    • YES. Yes it would. Don't quite know how I'd do it though - trust me when I say the whole moving-along-a-tunnel thing is one big hack, it'd take some major reworking to actually be able to travel a curving path.
  • Nice work. I don't think I've survived past a minute!
    • Hehe :)
  • Fun game, a bit confusing sometimes but not much.
    • Confusing? Yeah... more visual and audio cues would be nice. Consider it a "known bug."
  • Nice game. Simple yet fun. Sometimes those electric fields get real thick, but its cool.
    • Not quite what I wanted, but mostly intentional. I originally wanted either single bolts, or "walls" of lightning with small holes you had to aim for. I didn't have the time though; nor was I really sure how it would have worked even if I did have time. In the end, things get created at distance-based intervals (with some randomness thrown in on the Z axis to disguise the fact), either singly or in "bursts," hence the occasional lightning storm or clump of phlogiston.

So... the future. I want to do a lot of things here. First off, add sound support, and some sort of fading/transitioning when you start the game or lose a life. Also some sort of lighting manager would be nice, allowing for dynamic lighting from bullets and explosions, but to be honest I don't have any experience with lights in OpenGL beyond enabling ambience, and maybe one or two static, unidirectional lights. I don't yet know how to cope gracefully with the fact that the number of lights you can have at once is limited to something ridiculously low like 7 (AFAIK - PLEASE correct me if I'm wrong!).

Support for different resolutions exists, and adding fullscreen support is trivial, but I didn't have time to integrate either with the menu system. Ideally, I want a system capable of querying available resolution/colour depth combinations, and allowing you to alter the two seperately without letting you choose invalid modes. For now, if you want a larger window, open up the game in a text editor and play with the dxres and dyres (NOT ixres and iyres) constants.

I also want to either make the tunnel much larger, or remove it completely in favour of a StarFox-style scrolling landscape. The controls need some work too - either just better balancing of the current system, or perhaps have the mouse influence turn rate instead of directly influencing direction, a la BZFlag.

Bullets need fixing; the particles need a bit more graphical polish; a third-person camera would be nice (although again, it's something I don't quite know how I'd go about implementing). If I go down the route of turning it into a more conventional shooter (I've always wanted a StarFox style game for the PC), then speed control will have to be brought in instead of uncontrollable acceleration - this depends: do people like the manic-uncontrollable-descent feel, or is it just too wild to give the game lasting appeal?

Also note that NONE of the above will happen for quite some time. I'm still settling into my new job, and only have weekends available as free time - during which I usually have other priorities.


With the best will in the world, I don't think I can get the dependencies installed for all of the games in time to rate them all.

I don't want the games I am unable to rate to get a zero from me - some of them look really cool.

Is the overall rank of a game based on the average of the ratings it gets rather than the sum of them?

Most of the comments say "too hard"... Well, duh, indeed. After I came back from my holidays I wasn't able to play my own game anymore! Too friggin' hard, indeed, probably too many things to control at the same time (the grabber, the rotation/control, speed)... Here's a list of what players offered me to add to make it a bit easier:

  • Levels of difficulty. Say in "Easy" you just grab the boxes by passing over them, this removes a fair deal of complication. In "Normal" you use the grabber.
  • Rotation speed limit -- other system for rotation. The main problem with the UFO is that it can rotate too fast, there is a need for an upper limit. Alternatively the rotation could be made non-perpetual, ie the ship would go back to a rotational stop after the thruster is turned off.
  • Launch the ship in the arena directly in orbit, instead of a fixed position. I think this is good advice.
  • Oh yeah, and removing the "power bar" of the cannon and having it fire at maximal power all the time.

I also remarked a few problems with the "multistar" mode, that have to be worked out somehow (the ship isn't powerful enough to perform when several stars are present on the screen).

Well, I guess it's far from finished yet... Thanks all for trying this out :).

Very nice little shooter, difficulty doesn't increase which is a bit of a let down.
Hi, First of all Im' happy that you liked it. We intentionally made it 
easy to play, Actually if you play long enough, you will see that
more enemies keep approaching you each second.

It sounds like a few people have had trouble getting 'Chicken Chicken' to run. It'd really help me to improve the game if a few people could let me know (just add a comment to this diary entry):

  • Did 'Chicken Chicken' run on your computer?
  • What version of Python do you have installed?
  • What version of Soya?
  • Are you using Linux, Windows or Mac?
  • Did you run the source version, or the executable?
  • Is there anything else notable about your system (graphics card, CPU, RAM)?
Thanks, everyone. I'll appreciate your feedback.

Week 2 of voting is now upon us. I have almost completed voting all the games so far, there are quite a few good ones. It's a very impressive showing! There are still a couple that I haven't tried, and a few that I have tried that I don't feel confident voting for yet. Good work everyone!

I suppose since everyone else is doing comment response, why don't I do one too? Might be cathartic. A few of the comments were - interesting.

  • Interesting concept and pretty fun, if somewhat repetitive. Only glaring issue might be the art. The little characters in the tutorial are so much better than the rest.
    • True, the art is a bit of a problem. You should have seen the early art though :) I don't see what you mean about the tutorial graphics, since the graphics are pretty much the same throughout, but if you are referring to the dialogue portraits, those have been downloaded from amature rpg forums. Also, about it being repetitive, yeah, it is a bit, mostly because the balance is off and there aren't enough units to play with. Ah, the limitations of time.
  • Didn't run. pygame.error: Mix_LoadWAV_RW with NULL src
    • You didn't download the final version, there wasn't room to upload it so the source release will not work. Check the links at the bottom of this post
  • ... what... was... that?
    • Yeah, very helpful comment here... You don't say if you liked it or not, and you don't say what you did or didn't like about it. So in response, "...what...kind...of...comment...was..that???"
  • Pretty complex!
    • Yeah, there is a lot of depth. We spent quite a bit of time balancing, and after we got the main thrust of the graphics and code, the rest of the time was spent balancing our complex system. But, we still didn't even have enough time to balance it. Writing and scripting the story took a little more time than I had planned.
  • Coool. Some of the dialog was funny too, though it would've been good to have more dialog visible at a time rather than the continual clicking. Nicer graphics would make this a great game :)
    • Thanks for the advice. I hijacked the menu system I wrote the first day for every text-based thing including the dialogue. I could have easily done several lines, but for some reason it didn't cross my mind. Doh! I'm happy with most of the graphics myself, they are way better than we thought they would be. There are a few glaring things that stand out, like the hastily drawn combat mechs, and a few of the bland tiles. But we never had time to do a detil pass to make stuff look nice. Oh well, gameplay is more important; especially in these sorts of games
  • I never did quite understand those advance wars kind of games. Anyway, I finished the grandale level, and it was quite good fun. You obviously intend for this to go further, which seems like a good idea to me. Any hints about combat? Sorry about the incoherence. It's midnight and I've already reviewed about 15 other entries.
    • Heh, no worries. You're not THAT incoherent. I posted some combat hints in an earlier post. I actually changed the combat on thursday of the contest, so it was a little rushed. Strong attacks usually do a lot of damage, but there is still a chance for any attack to do like, 1 damage. It can be off putting to see a wave of missiles go down and do 0 damage hehe. About going further, probably will, but we have other games we have already been working on, so we'll see how much effort we put into it now that the deadline is gone.
Well, thanks for the comments everyone!

If you still have not played my game, you can download the python version, or the windows exe version.
Python version, 8 megs md5=983ba79b8c3c1e4c39e0bd4d8d6e5b4a
Windows version, 11 megs md5=7eaef4e0d0364308e6c81ea4d80f44c6

We still could not create a windows binary for
our game :( using py2exe we get some error...
due to some overwriting problem with pyopengl.
And for running the game you have to run "pgame"
that file doesnt' have .py extension so if
you are in windows, plz rename it to "pgame.py"
and run it.

If you are facing some problem with the controls
plz try pressing only one key at a time, combination
of two or more keys seems to cause some problems on
some systems.

Just a quick note on the comments. We don't have much of a game here. We basically aimed really high on this project, and just ran out of time. We didn't manage to check in much of a game, so of course we're not going to win this contest. However, I think we do have some interesting technology here.

Here's what's going on:

  • 2d physics engine: pyODE is a 3d physics engine, so we had to trick it into handling our 2d room. We ended up building something like an ant farm: everything is happening inside a 640x480x32 unit space, with walls all around holding everything in place. When you press left or right, you're actually applying a force to the kiwi, and he stops because the atmosphere applies resistance. At one point he was able to kick around a soccer ball and it would bounce around realistically, but that didn't quite get integrated with the level editor.
  • angled platforms: the world consists of arbitrary rectangles loaded from an SVG file. We hit a big snag here dealing with svg's transformation matrices. I was up a whole night reading about linear algebra trying to get it working, but never quite nailed it, so we had to fall back to non-rotated platforms. Unfortunately, even these disappeared from the room in the release version.
  • metabolism: kiwi's can't fly. Since this kiwi can, thanks to his hyped up metabolism. The price is that he has to eat a tremendous amount of food for this power. Fat stores and glucose actually behave sensibly, and he can even eat food. We just didn't have time to get the speed right, or to get food into the level. I added a quick hack to force-feed him invisible food just to keep him from starving in the release version, which is why the glucose meter goes up on it's own. He still still starves if you fly too fast though. The original idea was to make him change shape as he got fatter and slimmer, and to incorporate weight changes into the gameplay, but we didn't get that far.
  • console state machine: the menus, dialogs, high score system, and the game it self are all modelled using the State design pattern, with separate objects for each. So one console is always running, and it just swaps out these state objects as things happen. This turned out to be a really clean way to model a game.
  • model-view-controller architecture: the model consists of geometry and bodies in the physics engine, whereas the view tracks these objects and moves the sprites around on screen accordingly. Eventnet and the event handlers in the individual state objects act as the controller.
  • nice sound/music system: illium did all this single handedly so I'm not 100% sure how it all works, but using it was very easy, and the code is worth investigating
  • inkscape scripting: inkscape is an open source svg drawing tool and part of our project was getting inkscape to break the levels down into foreground and background PNG fies, and extracting the geometry/object layer as a simplified svg. It looks like inkscape could be a great level editor once we get this working.

Much of the system is also written in a semi-literate style, with test cases and documentation interspersed throughout the code. That's part of what the trailblazer concept was about, though that part didn't quite go off the way I'd expected.

So anyway, we didn't finish and what we have doesn't look like much, but check under the hood and you might find that there's some interesting stuff going on. We're planning another week long sprint to happen in a few weeks. Meanwhile, I'm hoping to have time this week to at least get the levels loading so we can actually play!

Thanks to all whom thought it a humerous little jab :)

max out the accelleration of the ball. Might help keep it in control.
There is code in there already to do this - currently commented out. You are welcome to put it back in.

One of the most important things in a pinball game is physics, IMO, and yours seems a bit off. The bumpers seem to hit the ball far too hard, and the flippers feel all soft and mushy. Bonus points for letting us pound our leaders heads with pinball balls though.
This is pretty personal preference thing. In the readme, it explains how you can adjust the 'forcefactor' variable. This will modify the physics response forces. Also adjusting the TableAngle can help too. Essentially play with these until you find the combo you like. It is currently set for simple and quick gameplay.

Decent but bland pinball game, pretty good work though.
With a week, you dont get alot of time to put every effect in :) .. we had alot lined up :) And myself and paul actually only ended up with 4 days work on it, due to other commitments. Ideally a bigger team with more artists would have helped, but we did what we could in the 4 days we had - There are extra layers, and more effects that were going to be put in, but as with anything.. time constraints.

Shoulda made it easy to hit Johnny! :) A few Bush and Johnny quotes woulda made it a classic! ;)
You read our minds!! We actually had _alot_ of bush and johnny wavs for putting in the game. But ran out of time - I was making a cyclic wav playback scheduler so that we could have the comments come out a little random and such (like the ball launch comment, gets a little on yer nerves after the 50th ball.. :) ). I'll put it all in when I get some spare time.
And I apologise for hiding Johnny away :) I might fix that - remove the barrier in the middle :)

Thanks for all the comments, and I'll post an updated link to a new version once the competition is over - dont really wanna confuse people with different exe's.

Hello Chaps.

If you are interested, I've built a more graphics card friendly version of Quido. Please give it a shot, if you've been unable to run Quido previously.


Windows Binary (17MB)
Source (Includes Media) (17MB)
Source (Excludes Media) (95K)

Hum, i see some comments, so i guess i should try to answer them... :)
- Does not run on my Mac. Bombs out with the following: Traceback (most recent call last): File "nowhere.py", line 21, in ? from cgkit.cgtypes import * ImportError: No module named cgkit.cgtypes
- I installed cgkit and still got... Traceback (most recent call last): File "mojo_jojo_nowhere.py", line 21, in ? from cgkit.cgtypes import * ImportError: No module named cgkit.cgtypes
- I couldn't get it to run, dependencies not listed (where does cgkit.cgtypes come from?!?)
cgtypes.py shold be in the cgkit dir. My cgkitinfo.py says:
version = "2.0.0alpha4 (Jun 24 2005, 09:20)"
- ermm nothing happened, was there supposed to be more than one file?
Nope, nowhere.py is the one and only. Its very not-cpu-friendly, though. I have amd64 3000, 512MB ram and a radeon 9550; and it hardly works :)
- I tried to head for the edge of the board, to see if I could lose some of the little blighters over the edge, but then discovered there is no edge ;)
Could be a good addon. But then the name shold be changed :)
- umm, nice, uh, ode thingie?
Yes, as written in the code, its kind a pyODE/pyOpenGL/pyGame demo. (not a very optimized one, because it was all new material to me, but i think it could be helpful)

I didn't bother putting up the disqualification voting system for this challenge because I seriously don't believe anyone has broken any rules. If you believe otherwise, please go to the newly-added disqualification page.

Please do not use the ratings system as it stands (especially the "Overall" rating) to penalise people you think cheated. Rate the game as it stands, and we will deal with cheating through other means. Remember, if a game is disqualified, it still gets its full ratings but it doesn't appear in the final standings list (the "d'oh, if only I'd followed the rule" rule :)

-- Richard

(originally this post said to email me, but I realised how dumb that was, so I put up the dq page)


Yup, I made a title screen along w/ a bouncing ball for selecting things. I'm running into problems right now making the ball move smoothly, something to do w/ floats vs ints. But I'll get this thing working! Anyways, thought I'd show people my afternoon's work.

tdlib is just a package of python modules. Put the tdlib directory in one of the following places and it should work:

  • The site-packages directory of your Python install (Windows)
  • /usr/lib/python/site-packages
  • /usr/local/lib/pythonX.X/site-packages
  • Anywhere else on PYTHONPATH
  • Inside the Pawns directory itself, if you don't want to use tdlib for anything else (likely)

Those attempting to play this as a game will find version 0.12 at emhsoft.com/pyweek/index.html
0.12 fixes a few crashes, adds minimal saving/loading, and adds a few enhancements.

I'd like to encourage all participants to give me their feedback on the challenge. What worked, what didn't work. I'll happily accept emailed ideas at , or in the wiki (you need to log in to the PyWeek site to edit) I've set up. Please don't post them in diary entries though.

Is it just my imagination, or were there 25 people who finished by the deadline? It looks like there are 26 now.


Some users were having problems with the Soya window appearing off-screen, so I've made a version that starts in 800x600, which is probably a better size for most users anyway. It's also now got the proper GPL information included. Since I use Soya, I'm required to use that license, so please download this one from now on. (I haven't made any changes that would affect judging.):

And here's a Windows executable version, to make things easier:

Finally, here are a few screenshots. Enjoy!

There are a few mistakes I made in packaging that are easy to fix on my game. First, not being able to finish: Somewhere near the bottom of zombie.py there are 2 lines:
event_grid[27][114] = 2
event_grid[28][114] = 2

change the 114s to 113s. I forgot to account for the array starting at 0 :(. You will then be able to finish

Second, my engine supports sprite animation, but I messed up on the file format while rushing (I finished the game 16 minutes before deadline). open animations.pickle with any text editor, and after every # sign, add the number 300 on its own line. For example:


should be:

Here is the whole edited file for your convienience:
How this file works is # designates a new animation. The first number is how often in ms the animation updates. All the other numbers index an image in index.txt. So in the release I forgot to put in the framerate

Ok, I can give you some hints. In the beginning, build wind plants as fast as you can (once you're under $0 there is no possibility to build new plants) and connect them to blocks. You can't stay over zero, but if you've done everything right you will start to earn money when you reach $-5000 or something like that. After that you have to figure out a good strategy to earn as much money as possible.

To play this game you need Python 2.4 and PyGame 1.7.1, nothing else is needed. We've never seen the error about OrderedUpdates so it could be because your copy of PyGame is too old.

/ xevz

Just a quick note..

In order to hear the music in Overflow (our entry) you'll need either pyopenal or pysdl_mixer. We have two original tracks composed for the game, so it's worth installing. :-)

well I'm currently working on revamping my entire game, redid A LOT of the code, fixed some major and minor bugs, and I'm now currently working on getting hit detection going. So I thought I'd add some randomly generated fish every ten seconds to get an idea of the hit detection so far, I umm generated a bit too many. :)

(Clarification: This version is meant to be outside the judging process. The pylonoid_final.zip is the version done within the constraints of the time limit, and the version that scoring should be based on)

Now that the comments are visible, I noticed some of you have had trouble with the some of the game's dependencies. I managed to strip them down a bit for the 1.2 version, so if you still want to give the game a go, you can download the post-challenge version 1.2 source distribution (includes data files) from here (about 6,5MB).

The 1.2 version should run with just Pygame, PyOpenGL and Numeric and has been tested with both Python 2.3 and Python 2.4.

Our entry does have a music track - it's just not played on some systems because SDL_mixer on those systems doesn't have mp3 support. We auto-detect this and avoid playing music.

Also, I stuffed up the power level of the beam weapons somehow between the 3rd and 6th release. In the current release, they're about 1/4 as powerful as they were intended to be. They're still kinda fun, but ultimately more trouble than they're worth. You can usually just "get rid" of them by forcefully lowering your ship's power (either by BOOSTing or using the shields to absorb some UFO bullets). The railgun, on the other hand, is as deadly as it was intended to be.

p.s. if you want to try various weapons out, you can put the game into "dev" mode... see the README :)

-- Richard

Judging comments should now be displayed to all members of a team, not just the team leader (and in some cases, no-one at all). Sorry about that.

Wow, I'm really impressed by what people have pumped out in a week. My game was just a little ship demo, nothing impressive, but it has gotten me started on making an actual side-scrolling shooter. I've re-worked the sprites so it can now dynamically allocate anything and add it to a group with one for loop (thanks sabren for the help) Now that I have that, plus knowledge on how pygame's built in collision detection system works (although I'll give philhassey's PGU a try), I can definitely start on a real game w/ animated sprites, gigantic bosses, foregrounds you can hit, MUCH more detailed backgrounds, and all that goodness. I'm also now in the process of learning JAVA for my 3rd year coming in as a transfer student to a new school, and I gotta say learning python is just so much easier than any other language I've picked up. JAVA has so many subtle differences than C++, but it looks so similar, as where Python just looks simple to my eyes. - Good job everybody, glad to see such good games (Dynamite truly rules)

My question is what do we do if we're unable to play a game? I can not get certain modules (like pySonic) to build on my Mac, rendering me unable to play certain games. Thoughts?

[22:53 neowert] Linux

It has come to my attention my game does not work under linux. If you have the proper dependancies, the only problem I can think of is the wrong case in data/graphics/index.txt. If you can tell me the error perhaps I could post a fixed index.txt. I was worried about this, but I do not have any unix variants avalible.
The problem is that data/graphics/guns/M16.png and data/graphics/guns/M1a.png should be m16.png and m1a.png. Once those files are renamed, the game works. Thanks to evil

The final submission has been replaced with one containing a Windows-friendly readme file, and already patched with the fixes mentioned in my previous diary entry. Thanks Richard :)

Our game requires Python2.4, pygame, pyOpenGL, PIL ( python image library )
for running.. dont' forget to install these for running
it.. here is the url for pil download
PIL windows binary

I had trouble uploading the whole file here, so the source.zip is JUST the source - no data. You MUST download the file http://www.spinheaddev.com/downloads/mechrev.zip in order to play. It comes with the source and the data.

Been getting some good comments so far, thanks all! I guess richard turned on comments? Anyway, this is planned to be a first act in probably a 3 act story. There will be quite a twist in the second act, pay attention to the heros attitude during the tutorial for a clue :) I wish we could have done the 10 levels we planned in the begining but about halfway through, we realized that it would be impossible to balance 10 levels. I'm not even sure the 5 levels we included are very balanced.

One of the major problems currently is that the footman unit is a total wuss. The only useful thing about footmen is that you don't have to worry about power, so they can be useful. But they die pretty quick against mechs! It's probably easiest to win if you mostly purchase robots, with maybe a few health upgrades in there as well.

At the last minute when I knew we wouldn't have time to play through the entire set I ended up just increasing how much money you get. The first level is likely the most challenging level in the game because you will have more units later on :) But I still haven't played all the way through it.

One last tip: Try and limit the number of enemy units you fight - on most levels they only come after you if you come within a certain distance. You can use this to your advantage. When only fighting one or two units, you can often set it up to where you are firing and then running away and they can't get a hit in, at least with your main hero who is faster.

I am pretty proud of what we acomplished in just a week. Probably the most solid hours I've ever worked on a project ever. I am glad I didn't have a job or school or any other things to get in my way :) Hmm, but now that it's over I get to feel bad about my unemployment again. Yay!

Someone was wondering about how this game fit the "power" theme -- it does, from the dictionary:

Power: 3. Strength or force exerted or capable of being exerted; might.
Dynamite: 1. Any of a class of powerful explosives...

So I'm pretty sure dynamite fits the theme.

Someone had some difficulty completing level 1 -- a hint for them: you can hide right next to the pilars, and if you don't move, the guards won't see you (kind of like a spy movie). They can see movement if it is very close at hand though, so don't move until they go by.

i almost forgot.. there is a map editor provided along
with the game feel free to make your own maps... the only
constraint is that you have to put only one pplant on the 
map, and any number of other entities :). 
Note:pplant has to be the first element added to the map.
How To:
For running the map editor, you have to go to the directory
"mapeditor" in the game dir and type "python main.py"
the map editor uses pyqt so you need to have pyqt installed
on your sys to run it.
Once you see the editor, first select "pplant" in the options,
and put it in the center of the map, then you can add any number
of objects "trees", land enemies "land", air enemies "air". Just 
make sure that you dont' put too many objects..(cmon its' python
give it a break). once you are done with it just close the ui
and copy the "mission.map" file to "maps/mission1.map" ..
TadAAA!!! you have a new map.

It would seem that the manual says go to the west. Well, it is definatly east. Sorry about that. And when you start go fast, or a zombie will get you immediatly. The reason being the zombie placer in the editor has no delete command, so it is a bit of a pain to remove. And it may seem like you are not hitting the zombies, but you probably are. The thing is not all shots are head shots. It is hard to tell because we did not have time to put in a blood effect on hit. The pistol has a 1/3 chance of headshot, the other guns have a 1/2 chance.

Isnt it going to be in everyones best interest (competition wise) to vote as low as possible for the other teams :) .. It seems also that teams like Soya have a decided advantage, because they get to influence the result more than the single people teams.

Just wondering if this is an expected judging outcome. I, for one, will vote as unbiased as I can. Also should consideration of the gameplay, innovation, and production for only 7 days work be taken into account with the voting? Or should we be comparing to current games? Ie, does a 5 rate as perfect, cannot be better. Or 5 rates as amazing effort for the time available.

Im finding it hard to even decide on votes for some games, since you can sort of see what they were trying to do, and that it should get a good vote, but its incomplete so does it get scores deducted? To be honest I think the games are awesome, for a single week of work.. maybe I'll just give everyone 5 :)

Or is this like Big Brother.. and I wasnt allowed to say that? :)
We have not tested our game on
windows :( it should work fine
on windows too if you python, pygame
and pyopengl installed on your system.
sry for not providing the windows version
we will provide as soon as possible.
Wanted to mention some of the features
about our game.
1) completely 3D environment
2) Destructable surroundings.(we just have trees now :))
3) Two types of guns( flares(unlimited) and rockets(limited) )
4) Original 3D models. ( we could not do the textures
though.. we downloaded them and used them )
5) Random enemy generation( we generate enemies in the map 
randomly so you will always find the map different. )
OH i almost forgot.. there is a map editor provided along
with the game feel free to make your own maps... the only
constraint is that you have to put only one pplant on the 
map, and any number of other entities :). 
Note:pplant has to be the first element added to the map.

Well, I booted into windows to try and make a py2exe thing. Didn't have any luck at all (problems with pyopengl, then problems with libz.. gave up). But I did find an incredibly embarrasing issue when running at low framerates. By default my video card is set up to cap at 60fps on windows, but on linux the game chugs along at a healthy 200fps. At the low framerate the AI calls get completely missed due to a completely inappropriate "if" statement.

If you want to try out the game as it was meant to be (i.e., with zombies fighting back!), open gamescene.py and change line 135 from

    if self.gameTime % self.goalPeriod == 0:


    if self.gameTime > self.goalPeriod:
        self.gameTime = 0

Please deduct many marks for complete lack of intelligence..

The bugs left in the final entry were bothering me enough, that I just had to fix them yesterday. So, for a bit more pleasant game experience, you can download the unofficial, post-challenge patch here. Extract this zip over the Pylonoid final version and it will replace the game sources with the fixed ones. The win32 executable uses the source files, so it will be patched as well.


[04:18 Ron] Serial Final

The final version of 'Serial', which is a game that tests your dexterity features:
- Single-player 5-stages practice mode
- Single player random mode (always new challenge)
- Two player versus mode (the fun part)

Enjoy, if you can! (Don't forget to read the README, it includes some guide on playing)
! Note on sound issues (I receive comments on this): running the game 'python serial.py s' disables all sounds, while 'python serial.py m' disables mp3 music. So you can play the game even without sound support.

serial.zip (~6Mb)
MD5(serial.zip)= fcbc5b28a7facb3ca1fed86ca66280ff

[20:29 neowert] oops

If you do manage to make it to the raft, just consider yourself a winner. It seems I placed the win event tile in the wrong place.

Actually we put it as  Power Saver :)) in the game menu,
which we thought was not that good so we changed
the name to Power Defender. 
We forgot to remove the default message on the screen which
shows "OUT OF AMMO FLARE" that was for testing.. the flare 
ammo is unlimited. Where as when it shows "OUT OF AMMO ROCKETS" 
thats' true coz you only have limited rocket ammo and you can 
pick them up in the game.
About the screen shots.. all of them are full screen shots..
could not get single window screen shots.. :( hope you guys
dont' mind :)
Here are some of the screen shots of the game.
Start Screen
Flights Bombing  Power Plant
Looking At Enemy
Happy Gaming

Amazing what not enough sleep will do... Looks like our final submission had an incorrect value for the game state update time. If you want the Pencil Quest experience to be a little snappier, change line 159 of client/interface.py from:

if self.update_time > 200: # XXX At the moment, as fast as possible.

if self.update_time > 0: # XXX At the moment, as fast as possible.

Have fun! Just a reminder, you need to download the full package from here to play.

We didn't have time to post a screen shot before the challenge ended, so I've went ahead and put one up:

Have you tried running: 'python serial.py s'

The 's' switch disables all sounds. 'm' disables only music. (Maybe you don't have sdl_mixer with mp3 support). See Readme file :d

Thanks for feedback. If still doesn't work, tell me plese.

(I tried to post this as an answer of a previous comment, but I couldn't.. my browser sucks.)


If ACCELERATOR moans about a missing OpenGL extension, try this:

  • Comment out lines 16, 1304 and 1305 (anything related to GL_SGIS_texture_edge_clamp)
  • Change GL_CLAMP_TO_EDGE_SGIS to GL_CLAMP_TO_EDGE in lines 75 and 76 (setting of texture parameters). If this still fails, change it directly to the constant 0x812F.
I apologise for the cockup - for some reason, PyOpenGL doesn't seem to define GL_CLAMP_TO_EDGE, which led me to search out a supported extension to provide the same functionality. However, I didn't realise that it's not a widely supported extension, because GL_CLAMP_TO_EDGE really ought to be being defined as a core feature in OpenGL 1.2 and above.

I previously never caught this because ATI cards do support the extension (NVIDIA don't), and I'd only ever run the game on the development machine, with an ATI card. Anyone care to shed light on why PyOpenGL doesn't define GL_CLAMP_TO_EDGE directly for me?

Our 3d models hit a snag on the final day, apparently the cal3d exporter from blender doesn't translate coordinates for transforms (like scale) correctly so our beautiful animations were shot. *sigh*

We also lack full network support. Has code to connect to a metaserver but that's as far as we got. Next release...

Lastly, and most important to note, the credits left out one of our music composers, Tom Gersic, who remixed our title/menu music from the original C64 game "Overload". Much appologies to him and the author of the "His Spirit" SID who were left out.

Heres a piccy of a neat little hidden feature. Took me about 30 mins to manage to unlock it :)

I wasn't really clear on my earlier entry, but the full Pylonoids package (available from here) is multi-platform. On Windows machines, it can be run standalone using the pylonoid.exe in the root directory, but if you have all the dependecies, you can run the game directly from the source (pylonoid/app/main.py). The game requires Python 2.4 (might work with 2.3, untested), and the following extensions:

The game was packaged in a hurry, so hopefully everything works ok. I've heard from some people that the windows executable complains about a missing fmod.dll. You can try to fix this by moving the fmod.dll from the root directory to either the "extlib" or "app" subfolder. Sorry about the hassle. :/


Hi Chaps, if you need assistance building Quido on a Linux box, I will be happy to help. Email me at simonwittber@gmail.com, and I'll do my best to assist.

Also, you will need a fairly decent 3D card to run Quido. I've had reports of of the game barfing on some systems due to the large texture sizes we are using.

And finally, I should mention that all artwork, sprites, and music are 100% original works. (excluding the melody used in the intro track, its Beethoven, if you didnt guess :). Sounds effects were found using google (except for the squish sound, which is Trixta doing something gross with his mouth).

Adding a link to missing MSVCR71.dll file for people without python installed.

This is a redistributable dll part of the runtime library from MS.