PyWeek - Woody Tigerbaum's Interplanetary Package Delivery (Big Dice Games - PW4)
AwardsRatings (show detail)Fun: 3.9 Production: 3.6 Innovation: 3.7 Respondents: 43 |
| Files: | Uploader | Date | |
|---|---|---|---|
| BDG_07_04.zip — final | 3.55 Mbytes | tsmaster | 2007/04/07 18:30 |
| RC3 Windows and Source | |||
| 07-04-06-10-05-18levels.png | 85.80 Kbytes | tsmaster | 2007/04/06 17:07 |
| I've got 3 tutorial levels and 18 normal levels. I need to tweak some of the level layouts, and calculate par for them. | |||
| WTIPD_070405b.exe | 2.40 Mbytes | tsmaster | 2007/04/05 16:29 |
| options screen working, play game options working | |||
| 07-04-05-09-19-optionsScreen.png | 29.16 Kbytes | tsmaster | 2007/04/05 16:22 |
| Options Menu is working | |||
| WTIPD_070405_SRC_B.zip | 156.34 Kbytes | tsmaster | 2007/04/05 07:43 |
| testing a source upload | |||
| WTIPD_070405a.exe | 2.42 Mbytes | tsmaster | 2007/04/05 07:07 |
| AI, and score screens | |||
| 07-04-04-23-32-levelScore.png | 14.29 Kbytes | tsmaster | 2007/04/05 06:34 |
| At the end of a level, there are scores | |||
| 07-04-04-09-56-MainMenu.png | 25.45 Kbytes | tsmaster | 2007/04/04 16:58 |
| Main Menu, partially functional | |||
| 07-04-04-09-56-PauseMenu.png | 19.14 Kbytes | tsmaster | 2007/04/04 16:57 |
| Pause menu, 100% functional | |||
| WTIPD_070404a.exe | 2.41 Mbytes | tsmaster | 2007/04/04 16:56 |
| main menu, pause menu | |||
| WTIPD_070403d.exe | 2.38 Mbytes | tsmaster | 2007/04/04 06:13 |
| opening 'cinematic' done | |||
| WTIPD_070403c.exe | 2.28 Mbytes | tsmaster | 2007/04/04 04:12 |
| title splash screen | |||
| 07-04-03-20-05-Menu.png | 23.01 Kbytes | tsmaster | 2007/04/04 03:06 |
| This is going to be the image behind my menu | |||
| 07-04-03-19-45-BDGSplash.png | 16.20 Kbytes | tsmaster | 2007/04/04 02:46 |
| Shameless plug in the splash screen | |||
| WTIPD_070403b.exe | 2.27 Mbytes | tsmaster | 2007/04/03 16:54 |
| more tutorial, hotseat | |||
| 07-04-03-09-28-gasGiantMemo.png | 23.97 Kbytes | tsmaster | 2007/04/03 16:30 |
| Memo from your boss. | |||
| WTIPD_070403a.exe | 2.26 Mbytes | tsmaster | 2007/04/03 07:58 |
| Dialog box, text support, the beginnings of a tutorial | |||
| 07-04-03-00-19-dlgBox.png | 23.03 Kbytes | tsmaster | 2007/04/03 07:21 |
| I was going to have a console system with lots of random messages - instead I think I prefer a dialog box approach. | |||
| 07-04-02-21-37-firstFont.png | 19.43 Kbytes | tsmaster | 2007/04/03 04:38 |
| testing my font system | |||
| 07-04-02-18-34-tiny.png | 10.33 Kbytes | tsmaster | 2007/04/03 01:50 |
| Hey, I can run in 256x192 - that's a popular resolution, isn't it? | |||
| WTIPD_070402e.exe | 2.29 Mbytes | tsmaster | 2007/04/03 01:48 |
| added command line args to drop resolution down | |||
| WTIPD_070402d.exe | 2.27 Mbytes | tsmaster | 2007/04/02 16:35 |
| SFX archive, with icon file | |||
| 07-04-02-06-09-mac.png | 21.07 Kbytes | tsmaster | 2007/04/02 13:10 |
| Testing on a mac | |||
| WTIPD_070402c.exe | 2.25 Mbytes | tsmaster | 2007/04/02 13:01 |
| SFX archive, perhaps fixing graphics issues, and with better docs | |||
| WTIPD_SFX070402b.exe | 2.10 Mbytes | tsmaster | 2007/04/02 12:46 |
| SFX archive, perhaps fixing graphics issues | |||
| WTIPD_SFX070402a.exe | 2.25 Mbytes | tsmaster | 2007/04/02 12:24 |
| SFX archive, maybe works better with some drivers | |||
| Source070401.zip | 10.91 Kbytes | tsmaster | 2007/04/02 02:48 |
| Source code 07-04-01 | |||
| wtipd_dos.exe | 7.22 Mbytes | tsmaster | 2007/04/02 01:46 |
| Py2EXE version of the game (so far) | |||
| 07-04-01-18-24-many-moons.png | 25.94 Kbytes | tsmaster | 2007/04/02 01:29 |
| Planets can have moons. Each of the moons here were painstakingly researched. I subsequently discarded all data except the names. Shout out to Phil Hassey who mentioned antialiased lines, which I had forgotten about. | |||
| 07-04-01-18-22-asteroid-path.png | 37.21 Kbytes | tsmaster | 2007/04/02 01:28 |
| Sequel to the asteroid power screenshot - this is where the "package" ended up, after journeying out of bounds for a bit | |||
| 07-04-01-18-20-asteroid-power.png | 33.67 Kbytes | tsmaster | 2007/04/02 01:27 |
| I've had the power mode working for a while - this is the first screenshot with it, though. | |||
| 07-04-01-12-55-comeBack.png | 9.59 Kbytes | tsmaster | 2007/04/01 19:57 |
| When the projectile leaves the default screen, now I zoom out | |||
| 07-04-01-12-05-gas-and-moon.png | 11.89 Kbytes | tsmaster | 2007/04/01 19:07 |
| I've added gaseous planets and moons - moons actually orbit around the planets (not using any physics, just on their own schedule). You can see a bend in the trajectory of the projectile where it encountered the moon before. | |||
| 07-04-01-10-41-slingshot-ontarget.png | 10.19 Kbytes | tsmaster | 2007/04/01 17:43 |
| Using the obstacle to my advantage! Hole in 1! | |||
| 07-04-01-10-40-slingshot-offtarget.png | 10.15 Kbytes | tsmaster | 2007/04/01 17:43 |
| Slingshot around an obstacle - looks like I'm off target. | |||
| 07-04-01-09-48-incoming.png | 9.71 Kbytes | tsmaster | 2007/04/01 16:51 |
| there's plenty of tuning remaining, but collision detection is working | |||
| 07-04-01-09-47-gonnaMiss.png | 9.81 Kbytes | tsmaster | 2007/04/01 16:50 |
| my physics code seems to be working | |||
| 07-04-01-01-19-PointAtPlus.png | 8.43 Kbytes | tsmaster | 2007/04/01 08:21 |
| I'm beginning to flesh in my FSM code - the state you see here is a crude first pass at pointing at the cursor (a gorgeous blue plus sign I modeled myself) | |||
| 07-03-31-20-34-TwoCircles.png | 8.22 Kbytes | tsmaster | 2007/04/01 03:35 |
| first pass at vector rendering of my first (tutorial?) level | |||
Saturday 07 April, 2007
[ tsmaster @ 18:45 ] Release Candidate 3 (RC3)
Whew.
In the last 24 hours, I was planning to do some minor touch-ups of the art, and let it go. But then, I decided that the AI needed a little help on some of the levels (a LOT of help on some of the levels), so I added a facility for the AI to record shots as I slept. I then processed that file into a python script (book.py, for those reading the code) which the AI was able to refer to when it wanted to play a little more deliberately.
And then it was a bunch of little bundling issues - the only major one was that I tried to get py2app working on my Mac at the last minute, and it didn't work - the installation was hard, and I couldn't run what it spit out. Maybe someone out there can give me some tips on what I should have done. Or maybe I'll play around with it later.
I've enjoyed chatting in #pyweek with everybody - nobody took offense at my snarky comments as far as I could tell. :)
Some folks have expressed interest in some of my techniques, particularly my crazy code-that-generates-code stuff (see edge*.py and book.py for sample output). I don't think there's much magic there, but still, I'll write up a discussion of the code and my development experiences and post it HERE, if you're at all interested.
Thanks to one and all - for the support and the competition. I'm proud of what I've done, and happy to be part of the competition this time around.
Friday 06 April, 2007
[ tsmaster @ 17:47 ] End of Friday Morning (home stretch)
I took it easy last night (only worked maybe 2 hours on the game), which meant I didn't do much - I collected a bunch of sounds, and did some light processing on them.
This morning, I incorporated the sounds. I tried making an in-flight sound feature, but it ended up sounding really really bad, so I took it out. Maybe I can revisit it after the competition is done and get a "beep beep beep" sound feature, kinda like George Jetson's car.
I spent the morning breaking the "main" levels apart from the "tutorial" levels. I decided I really ought to have 18 main levels (if you've played the game, you understand), so I cranked out 18 playable levels this morning.
None of them are stellar (Ha!), and right now some of them are way too easy - to the point of being pointless. A few easy ones are OK, I know. On the other hand, I think level 18 is brutal. I've done it in 3, but I've also done it in something like 12.
Oh, that reminds me - the AI is dreadful at gas giant levels. I have an idea of how to address that, and maybe I'll get a chance to implement it, but time is short.
[ tsmaster @ 07:01 ] End of Day 6
Well, I slacked off this evening - I had hoped to start cranking out a bunch of new levels, but instead, all I did was prepare a bunch of sounds. That's something, though.
You can't really make a screenshot of a sound.
Thursday 05 April, 2007
[ tsmaster @ 17:15 ] End of Thursday Morning
With the "New Game" and "Options" menu complete, I've knocked off the last of the features I really wanted to get in.
I have a handful of remaining features in my "if I have time" list, and I want to take some time to churn out a number of levels to make the tutorial experience distinct from the "real" course progression.
I'm pleased with where things are right now, and especially satisfied that people have had fun playing the "work in progress" versions I've posted so far. Thanks to everybody that's tried the game and provided feedback.
I just did a quick estimate of how many hours I've spent so far on this, and I think it's around 46, not counting brainstorming before the theme was announced. In one sense, that's a scary high number - it's almost exactly all my waking non-work time for this week. On the other hand, I'm pretty impressed that I can get something this complete that fast.
[ tsmaster @ 08:04 ] PyGame help
Maybe I'm overlooking the obvious, but if I get an ACTIVEEVENT event (indicating that the user clicked away, or clicked back) - I see a variety of different states coming in as integers 1, 2, 6... maybe more.
Are the meanings of these numbers documented anywhere? I hardcoded my game to respond to the specific numbers, but I imagine there are some PyGame variables that match them that I probably should be using.
Also, how uniform are those activation messages? Is the pattern of messages that I get on Windows similar to the Mac, and to Linux?
[ tsmaster @ 07:55 ] End of Day 5
- AI is minimally in
- score screens are in
I dropped my code into the Skellington framework for the first time, and with a little bit of hammering on run_game.py, everything runs fine.
The OGG playback on the Mac sounds really bad. I'm not sure what (if anything) to do about that.
Wednesday 04 April, 2007
[ tsmaster @ 23:42 ] Memories
After seeing my title screen working for a while, I was reminded of this title screen from my early RPG days.
[ tsmaster @ 06:32 ] End of Day 4
I've decided to go to bed before midnight tonight - crazy idea.
I got the opening splash screens and "cinematic" working. Something seems a little off with the timing of the cinematic, but I'm letting it go for now.
Still to do:
- score at the end of levels
- pause menu
- space station
- wormholes
- save/replay
- AI
- main menu
- options menu
Tuesday 03 April, 2007
[ tsmaster @ 16:34 ] End of Tuesday morning
I added player classes today, which will support hotseat multiplayer and play vs the AI.
AI is not yet implemented.
There's several tutorial screens in, and a flag that turns off the tutorial.
I track your running score, both within the level, and overall.
Next: a dialog at the end of the level to show players' scores, and a dialog at the end of the game to show the winner, and then I can focus on the main menu, the options screen, and other frippery.
Monday 02 April, 2007
[ tsmaster @ 16:47 ] Aardvark, Aardwolf, Aethernet...
It just now occurs to me that my entry may end up sorting alphabetically last of finished entries.
This might be to my advantage, if people judge alphabetically by game title (not team name, in which case, I'm near the top), and maybe they judge the last games the best.
If this was a real phenomenon, I'd expect XYZZY's Yak and Zebra Wonderland to show up.
[ tsmaster @ 13:37 ] Awake Early
I woke up earlier than I usually do, and got up to get a glass of water. I got sidetracked, though, and tried fixing some of my graphical issues. (Around 50% of people who tried the game just got a black screen. I think somebody actually got a stack dump, too.)
I may have fixed some of the graphics problems, and I've put a self-extracting EXE up (WinRAR, yay!) that contains the EXE, a README file, and a BAT file to help keep the error text on screen longer.
Next technical test: py2app to make a Mac binary
Next gameplay addition: perhaps scoring, perhaps support for hotseat
[ tsmaster @ 02:36 ] End? Of Day 2
Well, I spent a good chunk of time today on my entry, and it's a fun little toy - I'm enjoying playing with it. I'm not maintaining score yet, which is really all that I'll do to turn the toy into a game.
At the end, though, it'll still be something more to play around with than to "beat".
I went through the Py2EXE process and got an EXE that works on my local machines, and on "fydo"'s machine. It, however, does not work on "Cthulhu32"'s machine. I haven't begun to chase that down.
I uploaded it using the web page, which works fine. I also tried uploading it using the pyweek-upload script, and I got an odd error.
For good measure, I tried running on my mac, and it runs, but it looks really bad. Perhaps my antialiasing flags, perhaps something else, are causing what looks like z-fighting with the black background. Another thing to chase down when I get around to it.
I wrote an in-game editor mode to quickly crank out "asteroid belt" levels. I also made a tool to convert a drawing into a series of lines, which may turn out to be useful for my intro and level transitions.
Sunday 01 April, 2007
[ tsmaster @ 09:19 ] End of Day 1
I was half-hoping I'd get some minimal gameplay done by the end of the day, but no such luck. I did start to sketch in the beginnings of the different game states, and there's some crude interaction already.
There are 7 python files, 2 text files (not resource files, design/production documents), and 0 graphic files. So far. I'm working with line graphics to get to the gameplay ASAP. Deciding what the actual graphics should be will wait for later.
Everything's checked in to my local SVN server - a few competitions ago, as I was testing my packaging, I lost a lot of files. Ooops. Back up early, back up often.
The basic gameplay is deliberately simple, as I can't count on having a lot of time to work on it over the course of the week - maybe some polish here or there, but if I can at all get the game working and vaguely "fun" by this time tomorrow, I'll be in good shape.
[ tsmaster @ 00:05 ] And, as the webserver grinds to a halt...
Everybody refreshing so that they can get started on the announced theme the minute it's revealed. I've already got 4 ideas that sort of work with this theme. I'm stepping away from the computer to let my thoughts come together. My challenge for myself - come up with 3 workable game ideas (must fit the theme, must have some promise of being fun, must be possible within a week) before writing any code.
Tuesday 27 March, 2007
[ tsmaster @ 23:35 ] Preparing for PyWeek4
Well, I've blown off one set of obligations already - that's more time to spend brainstorming, perhaps even coding. Also, I've bookmarked this: Public Domain Images. Plenty of art there for the harvesting.
