September 2008 challenge: “The length of a piece of string”

P4 - Well, dang.

Posted by RB[0] on 2008/09/14 01:36

This has been both an incredibly awesome, and a really upsetting Pyweek.
We came up with an incredible idea the first day - and it sounded like it was doable.

The first few days it was just Markus and me doing anything, and it was pretty slow for some reason, but we usually start that way.

Late Tuesday and Wednesday we finally got a move on - you could draw new territories around islands, build units, and move them around the territory they were made in.
Pymike also contributed some code that day, and a bit of art.

Wednesday night/Thursday was *massive*. The UI was started and got almost to the finished state, battling was completed, different ship types were introduced.

On Friday the ai was started, the ui finished to the state of the current functionality, automated raiding by your ships enabled, battle engine was tweaked, and more gfx were done.

And now, what we did today.
I finished up the ai, and that took most of the day (and it is still rather buggy and slow - and you can see the printouts if you want to understand it's inner workings :P), and finished the hud, as well as other misc things.
Pymike added the territory names, which Ieuan made, into the main view, along with a lot of art and various other coding.
Markus patched up a number of serious bugs in the battle code/gui - and that took mos tof the day, he also added capitol attacking (though atm you will have to keep attacking forever!)
And Ieaun made some more art and did various coding.


On the whole, we are very disappointed not to have finished. But we should have seen that coming when 1 of our primary coders had a solo, another was unavailable for most of the competition due to a hurricane and work, another had two other had no time because of school.

So that left only Markus and I for the serious coding, and the rest mainly popping in for some art and a little code as they were able.


But, on the other hand, we did not torture the code into oblivion trying to finish, and this really is a unique idea on the whole - so we will be continuing it now - so that is the primary point of pyweek eh? And the game looks nice and runs acceptably (except for sometimes with the ai) on my old comp.


So, we also don't have any instructions or explanation of the story - so...
If you are interested in the basics outline see the this page: http://code.google.com/p/hiths-p4-pyweek6/wiki/Idea1
It is a little outdated, but you can get the basic gist of it there.

Now to play it is simple, hit the expand button (or the "r" key) to start drawing a new territory if it is your turn. The number under the mouse is how much it will cost to make - red and it is too much - right click to stop, or left click on the starting point to finish.
You must build territories around at least one island - and they cannot be too close to another, so if you "finish" it, and it disappears, it was not valid.

Once you have a territory, you can left click anywhere inside it to select it. Here you can build units by hitting the build button, or hitting the space bar (I think).
If a unit is too expensive you simply won't make it.
Also, you can only have a certain number of units in a territory - this number is not shown in the ui yet, but just keep trying until you see the console print "too many units" or something close to it.
To select a unit left click on it.
Around it you will see three thin lines, and one green area. The green area represents where you can move this turn - note you must have string on board to pass over territory lines (explained further in).
To add string, simply click the Add 50 string button.
The hud will display the vital stats of the unit as well.
Right click anywhere in the green to move your ship there.
The three other rings are your ranges. Any enemy within these you can attack - with different options at different ranges.
Right click on an enemy vessel within range to attack it.
A dialog will pop up, you choose your attacks, and hit Fire!
Also not the minimap on the bottom left, clicking or click-dragging on it will cause the map to zoom there.
Those are the basics - the rest is a bit iffy.

Now, here are some hints to make the game at least a little fun - and you can try everything.
Change to hotseat play.
In lib/game.py: Line 27 - you will see a line in main() like this:
state.add_player(AIController)
Change that to:
state.add_player()
And C&P for how many players you want.

Listen to the music.
Nihilocrat made some awesome music (yet again) for the game, which you can listen to in the data/music dir.
Also here is a 3 line update that allows you to add one of the tracks into the game:
import os
pygame.mixer.music.load(os.path.join('data', 'music', 'rio_grande.ogg'))
pygame.mixer.music.play(-1)
Add those lines at line 35 of main() in lib/game.py

And that is about it for now - please post here if you have any questions.

Vital stats, insane team members - at least two.
Average amount of sleep for me and Markus ~5-6 hours a night.
Lines of code: 3259
Time for some sleep ;)

Cheers all, and well done to everyone who actually submitted a working game - and I look forward to playing them :)

EDIT: Final Screenshot! All purty... And green is about to be slaughtered...

1 comment

Allefant 7 - playthrough video

Posted by allefant on 2008/09/14 01:21

Made one here.

2 comments

Monkey in a tangle - Monkey's out of the Bag

Posted by Alfred Rossi on 2008/09/14 01:14

This is my first time participating in pyweek and, wow, what an exhausting and rewarding experience. It's been an intense week and it'll be strange to see it go. I am very pleased with the progress we've made and surprised how quickly everything came together in the end.

Our team member James Sharpnack (jsharpna) took the time to play through the final version of our game so we're sure it's beatable. The later levels get difficult suddenly but it's not impossible. If you're frustrated you can use the bracket keys to move forward and backward.

The game mechanics work like this: You're a monkey with a tether. You'd like to box yourself some bananas but your hands are circular so what do you do? You tether them! (Why not?).

In the upper right hand corner you'll see the number of bananas you need to box and how many you've boxed so far. Once your box is full you will move to the next level. If you don't complete the level before time runs out you must restart the level.

z picks up your tether, x drops it
c attaches the held end of your tether to certain movable items in the game (and non-movable hooks on the ground). You have to be holding the tether and pressing against the item you'd like to rope.
v detaches the rope from an item, you need to be pressing against the connected item.
You can jump with space (or up) and you move the arrow keys.

We'd also like to thank pymike for his ezmenu. It's a great little piece of software that saved us time and effort.

It's been great chatting with you guys in the channel (i'm _ar). I am excited to see everyone's work and I look forward to participating in the future.

Great job guys,

Alfred

3 comments

Bell Runner - Release 0.5 - Final

Posted by gcewing on 2008/09/14 01:09

Looks like this is it. I've fixed another step-climbing bug and made a few more embellishments to the artwork. There seems to be one step-related bug remaining, but it doesn't adversely affect any of the levels, so I'm not too worried about it.

I didn't get around to providing any in-game help, but the controls are so simple that it's hardly necessary. The README says it all.

I'm pleased with what I've achieved this time round. This is the second PyWeek in which I feel I've managed to get a game to a reasonable state of completion. In contrast to the last one (555-BOOM!) this has been an exercise in minimality -- taking a very simple game mechanic and seeing how far I can get with it.

I've managed to get more variety out of it that I thought I would, but I think I've pretty much reached the limit now. At least, I don't have any further ideas for levels at the moment that wouldn't be repetitions of what's already there. So I'm calling it done.

I hope there's some fun in there somewhere, too.

8 comments

Monkey in a tangle - Got it all in

Posted by morgan.goose on 2008/09/14 00:57

That was one of the coolest things I've done in a while. We really got into a sweet rythm at the end, and were getting things DONE. I'm really happy with what we got done and I love the look. There are only a small number of things that I'd like to go back and do, mostly minor changes to the look. I am really proud of the whole team, and can't thank them enough for getting on board. I can't wait to do this again next pyWeek, heopfully with the same crew.

Add a comment

_Cecilia Music Game_ - Uploading

Posted by JuanjoConti on 2008/09/14 00:50

Well I am uploading my game now. I am happy because a finished it :) It's simple but nice (I think). I also think it can be funny.

Add a comment

The Space Adventures of Digby Marshmallow, Space Burglar ...In Space! - Finished, just

Posted by adam on 2008/09/14 00:24

Well, with the new uploading system we really did work right down to the wire: I had to hit the enter key halfway through typing my final commit message in order to get it in before the stroke of one. As ever, there's plenty we wish we'd had more time to fix, but as far as we can tell, we've managed to put together a playable, somewhat polished and hopefully even fairly fun game.

The Space Adventures of Digby Marshmallow, Space Burglar Extraordinaire ...In Space! is a puzzle action game chronicling the exploits of its eponymous hero across eighteen levels and six different worlds, as he struggles to fill his swag-bag with precious treasures while remaining tethered to his even more precious oxygen supply. It features some really rather nice SVG artwork and a lively ragtime soundtrack. Here's a preview:

Now it's time to get some sleep; we look forward to checking out everyone else's entries in the days to come!

Add a comment

People and Planes - After scrapping three different ideas...

Posted by Tee on 2008/09/14 00:20

So, earlier today I've scrapped my third idea, because it was getting very messy and the design wasn't good, but I've managed to make a simple, untested game without polish or sound or intro in eight hours. I'm happy that I managed to submit something, even though I wasted the entire week on ideas that didn't work. :) There's even a little story to my game on my entry page. Unfortunately, I didn't have time to properly test it, so sorry if it's unbalanced (too hard or too easy). Let me know if you manage to win and how hard it is. :)

It turned out fairly small. The zipped source file is 53kb for the pygletless version, it's even lighter than the screenshot. With pyglet that's 783kb. I hope you enjoy it. :)

Add a comment

Mutant Radioactive Kittens - Procrastination

Posted by aoeuhtns on 2008/09/14 00:13

Well I decided to go rock climbing today instead of working on my game. As a result, I only had about 2 hours to finish over 50% (that is, it didn't quite get finished). But it is somewhat playable! Just not in a very interesting way...

Though I must say, this was further than I've gotten on developing a game, and I'll probably keep working on it until it's a little more complete.

Add a comment

Elite Bungie Chopper Squad - Working on final upload

Posted by irskep on 2008/09/14 00:13

We are having some issues with py2app. Still tweaking setup.py. Final submission should be in in about 15 minutes. Update: We think everything is fixed, just double-checking.

Add a comment