nanite_fight
Graphically program your nanite to fight other nanites in the nine by nine nanite arena.
Launch viruses at other nanites to turn them into copies of yourself.
Write an undefeatable nanite? Send you .sav file (renamed with your pyweek name) to rgbDreamer@gmail.com . They'll be uploaded in a script pack.
Rankings for received scripts will be posted each Saturday for the duration of the pyweek judging.
4 Scripts so far: download them at https://docs.google.com/leaf?id=0BybOXJ-to3WyMDg1Zjc3MmYtNDVjOS00OTg0LWI4OTAtMmY0MjBkMTFiNmVm&hl=en
Awards
Scores
Ratings (show detail)
Overall: 3.2
Fun: 2.8
Production: 3.2
Innovation: 3.5
Files
File | Uploader | Date |
---|---|---|
nanite_fight 1.0.zip
— final
|
rgbDreamer | 2011/04/09 23:15 |
nanite_fightSat.png
Maybe final layout |
rgbDreamer | 2011/04/09 07:45 |
nanite_fightFri.png
All the functions seem to work |
rgbDreamer | 2011/04/08 23:05 |
nanite_fightThurs.png
Now more functional! |
rgbDreamer | 2011/04/07 10:59 |
nanite_fightwed.png
early look at nanite_fight |
rgbDreamer | 2011/04/06 18:43 |
Diary Entries
Introducing nanite_fight
I'm trying some new things. I'm trying to get out of my object-oriented comfort zone. I'm trying to implement a kind of proto-language whose elements are all first-order functions. Learning new things is good.
I'm trying to constrain everything in nines: nine nanites, nine instructions per function, 9 * 4 instructions (9 function calls, 9 actions, 9 control structures, 9 sensor inputs). The game has three nine by nine grids, each kinda broken into nine three by three grids. The goal is to take over all nine nanites, at which point all your code will be running nine times. So I think I meet the theme. That's good.
I think that this can be fun with really simple graphics, which will save a lot of time, which is good.
I'm paying a lot of attention to the idea of "emergent complexity". 36 commands is a lot, but really all you can do is drag an instruction onto a square. If there are multiple nanites following the instructions, that's a lot of multiplication. So that's good.
I got a lot of the framework done pretty fast today, and have a pretty good idea of how to do everything, so it's feasible, and that's good.
I'm not sure how long the control side of the model-view-controller setup will take. In the past I've struggled slowly with building drag-and-drop interfaces, so I could fall behind there and not finish. That'd be bad.
I'm not really sure that nine nine-instruction functions will be enough to do anything interesting. If not, that's a clear way this game could suck.
-Shanti Pothapragada
I'm trying to constrain everything in nines: nine nanites, nine instructions per function, 9 * 4 instructions (9 function calls, 9 actions, 9 control structures, 9 sensor inputs). The game has three nine by nine grids, each kinda broken into nine three by three grids. The goal is to take over all nine nanites, at which point all your code will be running nine times. So I think I meet the theme. That's good.
I think that this can be fun with really simple graphics, which will save a lot of time, which is good.
I'm paying a lot of attention to the idea of "emergent complexity". 36 commands is a lot, but really all you can do is drag an instruction onto a square. If there are multiple nanites following the instructions, that's a lot of multiplication. So that's good.
I got a lot of the framework done pretty fast today, and have a pretty good idea of how to do everything, so it's feasible, and that's good.
I'm not sure how long the control side of the model-view-controller setup will take. In the past I've struggled slowly with building drag-and-drop interfaces, so I could fall behind there and not finish. That'd be bad.
I'm not really sure that nine nine-instruction functions will be enough to do anything interesting. If not, that's a clear way this game could suck.
-Shanti Pothapragada
predicates
Writing these predicates is awful.
Good morning pyweek
Yesterday I went to bed at 14:00 and woke at 17:30. Today somehow I wake up at 7:30 and birds are chirping and I have two donuts left and I am excited to pyweek!
nanite_fight
It'll work as a two player game; do I have time for a single-player campaign mode?
nanite_fight
Now with more colors! It saves! It loads! Working functions! Awesome Sounds! (at least for a little while before they get annoying, but... It mutes!). Now I have to decide between polish and a single player puzzle mode. Or both and my eyeballs fall out.
nanite_fight
God I love first-order functions. Almost this whole game is drawn using a dictionary of function:image. I wrote a primitive graphical programming language just by passing around first order functions. The tooltips are a dictionary of function:string. And I don't define a single class (non-oop was a learning goal).
nanite_fight
Prerelease:
http://pyweek.org/e/nanite_fight/
Working on more features, but I'd love feedback
http://pyweek.org/e/nanite_fight/
Working on more features, but I'd love feedback
nanite_fight competition
Program a nanite and email to me to pit it against others for weekly rankings. rgbDreamer@gmail.com