Art Attack
Team Wasabi
Awards
Scores
Ratings (show detail)
Overall: 3.7
Fun: 3.4
Production: 3.8
Innovation: 4.0
Respondents: 21
Files
File | Uploader | Date |
---|---|---|
README.txt
Updated README - read this if you have any problems |
mauve | 2011/04/10 21:40 |
artattack-1.0.0.tar.gz
— final
Art Attack 1.0.0 |
mauve | 2011/04/10 00:04 |
screenshot_2011-04-09_03:20:35.png
visible paintbrush colour; PvP |
mauve | 2011/04/09 02:22 |
screenshot_2011-04-08_13:02:04.png
Victory conditions |
mauve | 2011/04/08 12:04 |
Diary Entries
Team Wasabi - Day 1
Yesterday was a mess. We hadn't decided on themes and several team members were AWOL most of the weekend. By about 2pm it looked unlikely that we would be able to come to a decision, with three ideas to choose from, each with some merit but no clear leader.
At this point we are therefore developing two games - call them spikes, perhaps. I'll write a diary for the branch I'm working on until such time as we get our act together.
Anyway, after all that faffing not much progress has been made. There's a little bit of concept art that has yet to be turned into something useful, and a tiny amount of code to implement a basic mechanism. I would have liked to have way more done, but I was pretty burned out and had to turn in early.
At this point we are therefore developing two games - call them spikes, perhaps. I'll write a diary for the branch I'm working on until such time as we get our act together.
Anyway, after all that faffing not much progress has been made. There's a little bit of concept art that has yet to be turned into something useful, and a tiny amount of code to implement a basic mechanism. I would have liked to have way more done, but I was pretty burned out and had to turn in early.
Team Wasabi - Day 2
At lunchtime I sketched a few graphics for Team Wasabi Group 1, then stopping work earlyish I continued hacking on the Group 2 project for the rest of the day.
In today's screenshot you can see the basic mechanics are pretty much complete (though there will be a couple more layers of gameplay on top of that). It looks a bit soulless but that's because the player characters are still on the drawing board:
Hacking music this evening has been Jeff Wayne's War of the Worlds. Fantastic stuff.
In today's screenshot you can see the basic mechanics are pretty much complete (though there will be a couple more layers of gameplay on top of that). It looks a bit soulless but that's because the player characters are still on the drawing board:
Hacking music this evening has been Jeff Wayne's War of the Worlds. Fantastic stuff.
Team Wasabi - Day 3
Hasn't felt like a very productive day from my side of the fence. I spent ages drawing walk cycles, including knocking up a small tool to preview the animations. Looks awkward but passable and I don't reckon I have the time to perfect it.
Later I worked through some minor coding tasks that I'd queued up, which is some velocity at least, but it's less rewarding when those are just refactorings you think will be prerequisites for later features rather than something that effects visible changes in the game.
Later I worked through some minor coding tasks that I'd queued up, which is some velocity at least, but it's less rewarding when those are just refactorings you think will be prerequisites for later features rather than something that effects visible changes in the game.
Team Wasabi - Day 5.5
Is it day 6 already? Blimey.
The slow and steady progress has been paying off, with almost all of the painting mechanics and other elements that are absolutely required for the game to be playable coming together. But we've still not tackled PvP, which is a fairly fundamental omission too, as without it you cannot defend your artwork.
Today's screenshot includes the scoring and victory/defeat banners:
The slow and steady progress has been paying off, with almost all of the painting mechanics and other elements that are absolutely required for the game to be playable coming together. But we've still not tackled PvP, which is a fairly fundamental omission too, as without it you cannot defend your artwork.
Today's screenshot includes the scoring and victory/defeat banners:
Team Wasabi - Day 6
Well, today was a long day; I ditched quite a bit of my working day to hack on the game. I did manage to get through some boring stuff like including visible paint colours on paint brushes (most but not all frames) but I've also delivered more fun things start game and end game banners, paint can powerups, PvP and sound effects.
The gameplay still needs a bit of work because the controls are a little iffy, and PvP isn't as balanced as I'd like. The animation is still very stilted and jumpy - the run animations haven't made it into the game yet and the attack animation is just this single frame:
So lots to get through tomorrow, and that's even before I try to implement networking. I do have some menus drawn, but I'm not sure I'll get to them.
The gameplay still needs a bit of work because the controls are a little iffy, and PvP isn't as balanced as I'd like. The animation is still very stilted and jumpy - the run animations haven't made it into the game yet and the attack animation is just this single frame:
So lots to get through tomorrow, and that's even before I try to implement networking. I do have some menus drawn, but I'm not sure I'll get to them.
Team Wasabi - Day 7
Today was an incredibly long day, but a rewarding one. The bulk of the day was spend doing networking, which is passable but is not quite 100%, and the balance got a lot better late on, though that's not perfect either.
I also knocked up the quickest menu system I've ever done. Instead of writing careful positioning code I just dumped the menu pages straight out of Inkscape and hard-coded the coordinates of the buttons.
All told, this was a blast. I love PyWeek. I just get so invested I don't know if I could handle doing it twice a year.
I also knocked up the quickest menu system I've ever done. Instead of writing careful positioning code I just dumped the menu pages straight out of Inkscape and hard-coded the coordinates of the buttons.
All told, this was a blast. I love PyWeek. I just get so invested I don't know if I could handle doing it twice a year.
Art Attack - last minute README.txt addendum
PLEASE do try to play multiplayer before judging. I added a network mode to make that more feasible.
Key bindings are in artattack/keybindings.py - you might need to change them.
The default server port is 9067. You may need to open a port in your firewall to host a game. There are command line options for starting a server on a different port.
I'm going to propose using the official #pyweek channel on Freenode for setting up games.
You can use any picture with an indexed palette, not just the pre-supplied ones. Just drop it into data/paintings/. Images with a 3:2 ratio whose dimensions are factors of 320 and 240, with ~4-8 colours work best (players can only hold 6 colours). In network games, the client doesn't need a copy of the image, because it is transferred from the host before the game starts.
Art Attack - Patch for crash on connection
A couple of people have reported crashes on connecting to a game.
File "artattack/game.py", line 213, in handle_tool_move
world.players[playerid].set_tool_position(pos)
AttributeError: 'NoneType' object has no attribute 'players'
This is caused by moving the cursor on the host before the client has fully initialised the session, and should be fixed by this patch:
diff -r 9609fce284e1 artattack/game.py
--- a/artattack/game.py Sun Apr 10 22:40:22 2011 +0100
+++ b/artattack/game.py Mon Apr 11 23:22:20 2011 +0100
@@ -259,8 +259,9 @@
pc.attack()
def on_key(self, event):
- for k in self.keycontrollers:
- k.on_key_down(event)
+ if self.started:
+ for k in self.keycontrollers:
+ k.on_key_down(event)
Exceptions reported as coming from "Thread-2" can be ignored, as can messages about unhandled opcodes.
File "artattack/game.py", line 213, in handle_tool_move
world.players[playerid].set_tool_position(pos)
AttributeError: 'NoneType' object has no attribute 'players'
This is caused by moving the cursor on the host before the client has fully initialised the session, and should be fixed by this patch:
diff -r 9609fce284e1 artattack/game.py
--- a/artattack/game.py Sun Apr 10 22:40:22 2011 +0100
+++ b/artattack/game.py Mon Apr 11 23:22:20 2011 +0100
@@ -259,8 +259,9 @@
pc.attack()
def on_key(self, event):
- for k in self.keycontrollers:
- k.on_key_down(event)
+ if self.started:
+ for k in self.keycontrollers:
+ k.on_key_down(event)
Exceptions reported as coming from "Thread-2" can be ignored, as can messages about unhandled opcodes.
Art Attack - Future plans
I'm very pleased with the comments Art Attack received in the judging. I knew about a lot of the issues of balance, though I only had limited time to do play testing during Pyweek.
Multiplayer games tend to evolve in response to users' feedback. I'd like Art Attack to really deliver on its promise, not just for the Pyggys, but because it's a game I enjoy playing. I wanted to have pushed the next version by now, but rating 56 games has consumed a lot of my time since the competition ended.
My target is to deliver one new version each week, so long as there are improvements that can be made and so long as there are people wanting to play. The tracker for the project is
http://code.google.com/p/pyweek-wasabi/issues/list
and I'm happy to accept any issues/feedback, or better yet Windows or Mac builds, or patches.
I don't know yet whether I'll be able to meet this target or how close I'll get, so if you want to offer encouragement or just play a game sometime, I'd appreciate that. I'll usually be found idling in the #pyweek IRC channel on Freenode.
Multiplayer games tend to evolve in response to users' feedback. I'd like Art Attack to really deliver on its promise, not just for the Pyggys, but because it's a game I enjoy playing. I wanted to have pushed the next version by now, but rating 56 games has consumed a lot of my time since the competition ended.
My target is to deliver one new version each week, so long as there are improvements that can be made and so long as there are people wanting to play. The tracker for the project is
http://code.google.com/p/pyweek-wasabi/issues/list
and I'm happy to accept any issues/feedback, or better yet Windows or Mac builds, or patches.
I don't know yet whether I'll be able to meet this target or how close I'll get, so if you want to offer encouragement or just play a game sometime, I'd appreciate that. I'll usually be found idling in the #pyweek IRC channel on Freenode.