I've submitted the final version of my game, I've squashed all the bugs I could find and added as many features as I could.
The game can be downloaded here.
So, what can my game do?
- You can build a network of steam pipes with various pipe sections using and easy point and click interface.
- The steam 'flows' through the system in a seemingly realistic fashion, although I did just make it up!
- You can guide the steam through additive squares that change the composition of the steam.
- You can monitor the stream through a series of easy to read gauges and dials.
- It has a menu system and pause functionality.
- While playing the game you can consult helpful tooltips for, um, help.
I'm pretty pleased with the way my code turned out. Towards the end it turn into a hack-and-slash affair with new features being bashed in with a big messy hammer, but at least at the start it was clean.
I've learnt quite a lot about how to structure a game. I really should have focused a bit more on getting a decent state machine for the menu system.
I had to cut back my grand initial vision to something a bit more manageable. Here are a few things that didn't make the cut...
- Penalties for over pressurising pipes and a visual indication of when you do so.
- Rather than gauges I had wanted to see the steam in the pipes and thus see what the pressure was. This went pretty early on...
- Levels. I initially wanted to do 50 or more, now there are only 20.
- High scores. If you want to know what your best score is, you'll need a pencil and paper!
PyWeek has been a lot of fun, although I don't think I could have kept going for more than a week! I don't what I'll be doing when the next one rolls around, but hopefully I'll give it a go again.
Thanks to Rich, Neil, Jack and Tom - I think I fixed all the bugs you found and added all the suggested features. Cheers for the help guys!