Difference between revisions of "Humilis"

From WikiManual
Jump to: navigation, search
Line 106: Line 106:
 
  .up store
 
  .up store
 
  stop
 
  stop
 +
 +
'junk DNA to allow conspec recognition to work (and they said junk DNA wasn't useful ;))
 +
*.up *.dn *.dx *.sx *.shoot *.eye5 *.aimdx *.aimdx *.aimsx *.aimsx
 +
 
  end 'end is superfluous in 2.4, but adding it or not doesn't hurt anything...
 
  end 'end is superfluous in 2.4, but adding it or not doesn't hurt anything...

Revision as of 14:24, 10 November 2005

Click the discussion tab above to discuss the code.
added user feedback there. ~griz~



use NewMove

'Humilis

'remove waste
cond
*.waste 100 >
start
'This shoots a particle of waste equal to a bot's current waste level
-4 .shoot store
*.waste .shootval store
stop

'manage body
'cond
'*.body 10 mult
'*.nrg !%=
'start
'*.body 10 mult *.nrg sub dup
' 'difference between energy stored in body and in nrg
'0 floor .fdbody store 
'-1 mult 0 floor .strbody store
' 'if you feed and str the same it'll zero both effects and waste nrg
' 'I'll check on fixing it up latter 
'stop

'redone body management into 2 genes:
cond
*.body 10 mult *.nrg sub 400 > 'we have lots of body and little nrg
*.nrg 50 < or
start
100 .fdbody store
stop

cond
*.nr *.body 10 mult sub 400 > 'we have lots of nrg and little body
*.nrg 31000 > or
start
100 .strbody store
stop
'end body management

cond
start
'Naval Cord Removal
.tie *.robage sgn 1 sub -1 mult mult
.deltie *.robage 1 sub sgn 1 sub -1 mult mult
add inc
'this should do the trick to allow both tie and deltie to use same inc
stop

cond
*.robage 20 mod 0 =
'Finally figured out how to use mod handily :)
start
7 rnd 50 store
stop

cond
'Gene should allow bot to test amongst 8 different refs randomly
.refup *50 add * .myup *50 add * !=
*.eye5 37 >
start
'Cheap shots :)
.shoot dec
stop

cond
*.nrg 10000 >
*.robage 1000 >
'let's let younger bots do other things with excess energy
start
628 .aimdx store
60 inc
'i had to put some iflamma consepts in there -bau
50 .repro store
stop

cond
*.eye5 0 >
*.refeye *.myeye = and
*.eye5 0 = or
start
314 rnd .aimdx store
stop

cond
*60 0 >
start
628 .aimdx store
stop

cond
*.eye5 0 >
*.velscalar 20 <
start
20 *.velscalar sub
2 div
*.body mult 1000 div
.up store
stop

'junk DNA to allow conspec recognition to work (and they said junk DNA wasn't useful ;))
*.up *.dn *.dx *.sx *.shoot *.eye5 *.aimdx *.aimdx *.aimsx *.aimsx

end 'end is superfluous in 2.4, but adding it or not doesn't hurt anything...