Maybe final layout

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


Gold Insanity
Presented by stycchio

Give this entry an award

Scores

Ratings (show detail)

Overall: 3.2
Fun: 2.8
Production: 3.2
Innovation: 3.5

Respondents: 22

Files

File Uploader Date
nanite_fight 1.0.zipfinal
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

Add a comment

predicates

Writing these predicates is awful.

Add a comment

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!

Add a comment

nanite_fight

It'll work as a two player game; do I have time for a single-player campaign mode?

1 comment

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.

Add a comment

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).

Add a comment

nanite_fight

Prerelease:
http://pyweek.org/e/nanite_fight/
Working on more features, but I'd love feedback

Add a comment

nanite_fight competition

Program a nanite and email to me to pit it against others for weekly rankings. rgbDreamer@gmail.com

Add a comment