Difference between revisions of "BotTxt"

From WikiManual
Jump to: navigation, search
m
(The Bee Genes)
Line 641: Line 641:
  
  
===next===
+
'The Bee Gene:
<pre></pre>
+
'===================
 +
'These genes attempt to create a situation similair to a hive. It takes a while for them to get
 +
'collected and decide order of dominance, but that is because it is halfway unfinished. The
 +
'warriors, drones and secondary queens do not occur because their genes are giving me a
 +
'headache. They have a tendancy to reproduce less often the larger they get, leaving more food
 +
'for them to become fatter, and eventually a queen. They diet themselves according to rank.
 +
'Feel free to make any changes to these offline. I am open to ideas for handling the various
 +
'other ranks and their genes. All of the search genes are not original, that was not the goal.
 +
'phase 1 initialization
 +
 
 +
cond
 +
*.robage 0 =
 +
start
 +
8 rnd 2 add 51 store
 +
45 55 store
 +
*51 .tie store
 +
40 40 store
 +
stop
 +
 
 +
'pahse 2: collector, fighter or queen
 +
 
 +
cond
 +
*.nrg 12000 >
 +
*.numties 0 !=
 +
start
 +
40 .repro store
 +
31 .aimdx store
 +
21 .out2 store
 +
stop
 +
 
 +
cond
 +
*.eye2 *.eye8 !=
 +
start
 +
*.eye2 *.eye8 sub .aimsx store
 +
stop
 +
 
 +
cond
 +
*.eye4 *.eye6 !=
 +
start
 +
*.eye4 *.eye6 sub 2 div .aimsx
 +
store
 +
stop
 +
 
 +
cond
 +
*.vel 40 <
 +
start
 +
40 *.vel sub .up store
 +
stop
 +
 
 +
' Gene 7 wide search 1
 +
cond
 +
*.eye1 *.eye5 >
 +
*40 40 =
 +
*.nrg 9000 <
 +
start
 +
mult -100
 +
stop
 +
 
 +
' Gene 8 wide search 2
 +
cond
 +
*.eye9 *.eye5 >
 +
*40 40 =
 +
*.nrg 9000 <
 +
start
 +
mult 100
 +
stop
 +
 
 +
cond
 +
start
 +
.aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye4 *.eye6 >
 +
start
 +
90 .out2 store
 +
-20 .aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye6 *.eye4 >
 +
start
 +
-90 .out2 store
 +
20 .aimdx sore
 +
stop
 +
 
 +
cond
 +
*.eye3 *.eye5 >
 +
*.eye3 *.eye4 >
 +
*.eye3 *.eye6 >
 +
start
 +
80 .out2 store
 +
-40 .aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye7 *.eye5 >
 +
*.eye7 *.eye6 >
 +
*.eye7 *.eye4 >
 +
start
 +
-80 .out2 store
 +
40 .aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye1 *.eye5 >
 +
*.eye1 *.eye4 >
 +
*.eye1 *.eye6 >
 +
*.eye1 *.eye3 >
 +
*.eye1 *.eye7 >
 +
start
 +
70 .out2 store
 +
-60 .aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye9 *.eye5 >
 +
*.eye9 *.eye4 >
 +
*.eye9 *.eye6 >
 +
*.eye9 *.eye3 >
 +
*.eye9 *.eye7 >
 +
start
 +
-70 .out2 store
 +
60 .aimdx store
 +
stop
 +
 
 +
' Gene 3. Move forward
 +
cond
 +
  *.numties != 2
 +
  *.vel 20 <
 +
  *.refeye 9 !=
 +
start
 +
  30 *.vel sub 2 div .up store
 +
stop
 +
 
 +
cond
 +
*.robage 150 >
 +
start
 +
31 .out2 store
 +
stop
 +
 
 +
cond
 +
*.tielen 800 >
 +
*.numties 1 =
 +
start
 +
500 .fixlen store
 +
stop
 +
 
 +
'external communications
 +
 
 +
cond
 +
*.numties 2 <
 +
*.eye5 40 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *.myeye =
 +
start
 +
*51 .tie store
 +
stop
 +
 
 +
cond
 +
*.eye5 30 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *.myeye =
 +
*.in2 0 !=
 +
*.in2 21 !=
 +
start
 +
*.in2 .aimdx store
 +
stop
 +
 
 +
cond
 +
*.eye5 30 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *.myeye !=
 +
*.refties *.myties =
 +
start
 +
*40 .out1 store
 +
1 *40 add 40 store
 +
stop
 +
 
 +
'internal commands from the queen
 +
 
 +
cond
 +
*.out2 21 =
 +
*.numties 0 !=
 +
*.nrg 28000 <
 +
*.out1 50 !=
 +
start
 +
*51 .deltie store
 +
50 .out2 store
 +
stop
 +
 
 +
'attack other ties
 +
 
 +
cond
 +
*.numties 0 !=
 +
*.trefeye *.myeye !=
 +
*.trefvenom *.myvenom !=
 +
start
 +
*.tieangle .aim store
 +
*51 .deltie store
 +
-3 .shoot store
 +
stop
 +
 
 +
'collect food command
 +
 
 +
cond
 +
*.in2 50 =
 +
*.refeye *.myeye =
 +
start
 +
50 .out2 store
 +
40 *40 store
 +
0 *.out2 store
 +
stop
 +
 
 +
cond
 +
*.numties 3 <
 +
*.out2 50 =
 +
*.eye5 30 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *.myeye !=
 +
start
 +
*51 .tie store
 +
stop
 +
 
 +
cond
 +
*.numties 3 =
 +
*.out2 50 =
 +
*.in2 21 !=
 +
*.vel 20 <
 +
start
 +
20 .vel store
 +
stop
 +
 
 +
cond
 +
*.numties 0 !=
 +
*.trefeye *.myeye =
 +
*.trefvel *.vel !=
 +
*.trefangle *.myangle !=
 +
*40 100 !=
 +
start
 +
*.trefvel .vel store
 +
*trefangle .myangle store
 +
stop
 +
 
 +
cond
 +
*.numties 1 =
 +
*40 100 !=
 +
start
 +
100 40 store
 +
stop
 +
 
 +
cond
 +
*.numties 3 =
 +
*.out2 50 =
 +
*.in2 21 =
 +
*.eye 5 30 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *.myeye =
 +
start
 +
*51 .tie store
 +
76 .out2 store
 +
stop
 +
 
 +
'eatself when searching for food
 +
 
 +
cond
 +
*.out2 50 =
 +
*.trefeye *55 !=
 +
*.nrg 5000 <
 +
*.body 300 <
 +
start
 +
300 .fdbody store
 +
stop
 +
 
 +
cond
 +
*.out2 50 =
 +
*.trefeye *55 !=
 +
*.nrg 3000 <
 +
*.body 100 <
 +
*.numties 0 !=
 +
start
 +
*51 .tienum store
 +
-1000 .tieval store
 +
-1 .tieloc store
 +
stop
 +
 
 +
'feed eachother
 +
 
 +
cond
 +
*.numties = 2
 +
*.trefeye *.myeye =
 +
*.nrg *.trefnrg >
 +
start
 +
*51 .tienum store
 +
10 .sharenrg .multi store
 +
stop
 +
 
 +
cond
 +
*.numties = 2
 +
*.trefeye *.myeye =
 +
*.waste *.trefwaste >
 +
start
 +
*51 .tienum store
 +
10 .sharewaste store
 +
stop
 +
 
 +
cond
 +
*.numties 0 >
 +
*.numties 4 =
 +
*.in2 50 =
 +
*.nrg 1000 <
 +
*.trefeye *.myeye !=
 +
start
 +
*51 .tienum store
 +
-1000 .tieval store
 +
-1 .tieloc store
 +
*51 .readtie store
 +
stop
 +
 
 +
cond
 +
*.waste 100 >
 +
*.trefeye *.myeye !=
 +
*.numties 4 =
 +
*.in2 50 =
 +
*.nrg 1000 <
 +
start
 +
1000 .tieval store
 +
-4 .tieloc store
 +
stop
 +
 
 +
'store away food for when it gets bad
 +
 
 +
cond
 +
*.nrg 29000 >
 +
*.body 900 <
 +
start
 +
50 .strbody store
 +
stop
 +
 
 +
cond
 +
*.nrg 12000 <
 +
*.body 100 >
 +
start
 +
50 .fdbody store
 +
stop
 +
 
 +
cond
 +
*.refeye 0 !=
 +
*.refeye *.myeye !=
 +
*.eye5 50 >
 +
start
 +
50 .vloc store
 +
50 .venval store
 +
-3 .shoot store
 +
stop
 +
 
 +
cond
 +
*.refeye *.myeye !=
 +
*.eye5 50 >
 +
start
 +
-1 .shoot store
 +
stop
 +
 
 +
'create venom
 +
 
 +
cond
 +
*.numties 0 !=
 +
*.trefeye *.myeye =
 +
*.venom 100 <
 +
start
 +
50 .strvenom store
 +
stop
 +
 
 +
cond
 +
*.numties 0 !=
 +
*trefeye *.myeye =
 +
*.slime 200 <
 +
start
 +
300 .mkslime store
 +
50 .shareslime store
 +
stop
 +
 
 +
cond
 +
*.numties 0 !=
 +
*trefeye *.myeye =
 +
*.slime *.trefslime >
 +
start
 +
50 .shareslime store
 +
stop
 +
 
 +
cond
 +
*.numties 0 !=
 +
*.eye5 30 >
 +
*.eye5 *.eye4 =
 +
*.eye5 *.eye6 =
 +
*.refeye *55 !=
 +
start
 +
*51 .tie store
 +
stop
 +
 
 +
cond
 +
*.waste 800 <
 +
*.numties 0 >
 +
*.body 1000 <
 +
start
 +
*51 .tienum store
 +
-1000 .tieval store
 +
-1 .tieloc store
 +
*51 .readtie store
 +
*.waste .sharewaste store
 +
stop
 +
 
 +
cond
 +
*.numties 0 >
 +
*.waste 800 <
 +
*.body 1000 <
 +
*.trefeye *.myeye !=
 +
start
 +
-1000 .tieval store
 +
-4 .tieloc store
 +
stop
 +
 
 +
cond
 +
*.slime 90 <
 +
start
 +
50 .mkslime store
 +
stop
 +
 
 +
cond
 +
*.refeye *.myeye !=
 +
*.eye5 50 >
 +
start
 +
-1 .shoot store
 +
stop
 +
 
 +
cond
 +
*.numties 0 =
 +
*.nrg 25000 >
 +
start
 +
50 .repro store
 +
stop
 +
end
  
 
===next===
 
===next===
 
<pre></pre>
 
<pre></pre>

Revision as of 19:24, 31 December 2007

DB Bots

The idea here is to collect Bots and their text here ...
so people can go through and ask questions about how
various genes work.
Click on discussion and start one.


C_Circumgirans

' Comisia Circumgirans
'
' Robot NanniMorettiano
' (you'd need to know some italian politics
' to understand that... I hope you don't)
' Evolved 2002 from c. ancestralis
'
' A very efficient robot, it has the ability
' to move in swarms (swarms that become
' round when there is no food in sight,
' so the name). 

cond
  *.eye6
  0
  !=
start
  21
  40
  store
  17
  .aimdx
  store
stop

cond
start
  16
  .aimsx
  store
stop

cond
  *.eye8
 -1
  !=
start
 -4
  .dn
  store
  4
  .up
  store
stop

cond
  *.aimdx
  0
  >
start
 -1
  .shoot
  store
  6
  .nrg
  store
stop

cond
  *.refsx
  6181
  !%=
  *.nrg
  6181
  >
start
  430
  .aimdx
  store
  50
  .repro
  store
  42
  .out1
  store
  37
stop
end

Devincio_Dominator_Invincibalis

'Devincio_Dominator_Invincibalis
'uses tie defence system
'***********************

'initialize
'*********
cond
    *.robage 0 =
  start
    42 55 store
    .tie inc
stop

cond 
*.robage 1 =
start
.deltie inc
stop

cond 
*.robage 300 >
*.nrg 3000 >
*.body 5000 <
start
100 .strbody store
stop

cond
*.body 100 >
*.nrg 500 <
start
100 .fdbody store
stop

' move forward 
'****************
cond
    *.refeye *.myeye !=
    *.numties 0 =
  start
    *.maxvel *.vel sub .up store
 stop

'turn towards food
'*************************
'avoid other conspecifics
'****************************
cond
start
mult mult 0 0
stop

cond
*.eye4 *.eye6 >
start
mult mult -5 -25
stop

cond
*.eye6 *.eye4 >
start
mult mult 5 25
stop

cond
*.eye3 *.eye5 >
*.eye3 *.eye4 >
*.eye3 *.eye6 >
start
mult mult -8 -80 
stop

cond
*.eye7 *.eye5 >
*.eye7 *.eye6 >
*.eye7 *.eye4 >
start
mult mult 8 80
stop

cond
*.eye1 *.eye5 >
*.eye1 *.eye4 >
*.eye1 *.eye6 >
*.eye1 *.eye3 >
*.eye1 *.eye7 >
start
mult mult -14 -140 
stop

cond
*.eye9 *.eye5 >
*.eye9 *.eye4 >
*.eye9 *.eye6 >
*.eye9 *.eye3 >
*.eye9 *.eye7 >
start
mult mult 14 140 
stop

' Avoid conspecifics
' ***********************
cond
    *.refeye *.myeye =
  start
    mult mult 0 85 
stop

'reproduce 
'***********
cond 
*.robage 50 <
*.eye5 50 <
*.nrg 1500 >
start
50 .repro store
mult mult 0 250
stop

cond
    *.nrg 5000 > 
    *.eye5 50 <
  start
    40 .repro store
    mult mult 0 250 
stop

'Feed
'******
cond
*.tiepres *51 !=
*.numties 0 >
start
*.tiepres .tienum store
1000 .tieval store
.tieval .tieloc store
stop

cond
*.multi 1 =
start
*.tiepres .deltie store
99 .sharenrg store
stop

cond
*52 2 =
start
*51 .deltie store
0 52 store
stop

cond 
   *52 0 >
  start
    *51 .tienum store
    -1000 .tieval store
    -1 .tieloc store
52 inc
stop

' sever ties to conspecifics
' *****************************
cond
    *.trefeye *55 =
  start
    *.tiepres .deltie store
stop

' delete painful tie
' ******************
cond
*.numties 0 >
*.pain 500 >
start
*.tiepres .deltie store
stop

'Tie to an enemy
'********************
cond
    *.eye5 50 >
    *.eye6 *.eye4 %=
    *.refeye *.myeye !=
    *.robage 0 >
  start
    800 rnd 100 add 51 store
    *51 .tie store
    *51 .readtie store
    mult mult 0 0 
    52 inc
stop

' Actually rotate
' *****************
cond
start
    .aimdx store
    .dx store
stop

cond
*.refeye *.myeye !=
*.refeye 1 !=
*.eye5 50 >
start
-6 .shoot store
stop

cond
*.waste 100 >
start
1 .backshot store
-4 .shoot store
*.waste .shootval store
stop

cond
*.poison 1000 <
*.nrg 1000 >
start
10 .strpoison store
stop

end

Devincio_Eversor

'Devincio_Eversor
' *** Tie Destroyerr ***
'***********************

'initialize
'*********
cond
*.robage 0 =
start
8 rnd 2 add 51 store
45 55 store
*51 .tie store
stop

' move forward 
'****************
cond
*.refeye *55 !=
start
30 *.vel sub .up store
stop

cond
*.refeye *55 !=
*.refeye 0 !=
*.eye5 80 >
start
40 *.vel sub .up store
stop

cond
*.refeye *55 =
*.eye5 50 >
start
2 .dn store
stop

'turn towards food
'*************************
'avoid other conspecifics
'****************************
cond
start
mult 0
stop

cond
'*.eye4 *.eye5 >
*.eye4 *.eye6 >
start
mult -15
stop

cond
'*.eye6 *.eye5 >
*.eye6 *.eye4 >
start
mult 15
stop

cond
*.eye3 *.eye5 >
*.eye3 *.eye4 >
*.eye3 *.eye6 >
start
mult -50 
stop

cond
*.eye7 *.eye5 >
*.eye7 *.eye6 >
*.eye7 *.eye4 >
start
mult 50
stop

cond
*.eye1 *.eye5 >
*.eye1 *.eye4 >
*.eye1 *.eye6 >
*.eye1 *.eye3 >
*.eye1 *.eye7 >
start
mult -100 
stop

cond
*.eye9 *.eye5 >
*.eye9 *.eye4 >
*.eye9 *.eye6 >
*.eye9 *.eye3 >
*.eye9 *.eye7 >
start
mult 100 
stop

' Avoid conspecifics
' ***********************
cond
*.refeye *55 =
start
mult 85 
stop

'reproduce 
'***********
cond
*.nrg 4000 > 
*.eye5 0 =
start
25 .repro store
mult 250 
stop

'Tie to an enemy
'********************
cond
*.eye5 30 >
*.eye5 *.eye4 =
*.eye5 *.eye6 =
*.refeye *55 !=
start
*51 .tie store
mult 0 
stop

' Actually rotate
' *****************
cond
start
.aimdx store
stop

' sever ties to conspecifics
' *****************************
cond
*.trefeye *55 =
start
*51 .deltie store
stop

'Spin when attacked
'*************************
cond
*.shdn 0 <
*.pleas -10 <
start
620 .aimsx store
stop

cond
*.hitdn 0 !=
start
620 .aimsx store
stop

'Feed
'******
cond 
*.numties 0 >
start
*51 .tienum store
-1000 .tieval store
-1 .tieloc store
*51 .readtie store
stop

cond
*.numties 0 >
*.waste 100 >
*.trefeye 0 =
start
1000 .tieval store
-4 .tieloc store
stop

cond
*.slime 90 <
start
50 .mkslime store
stop

cond
*.refeye *55 !=
*.eye5 50 >
start
-1 .shoot store
stop

end

Hunter V2.13

 
'New generation Hunter bot with state of the art features
'***********************


'reproduce 
'*********
cond
*.nrg 4000 >
start
60 .repro store
628 .aimsx store
1 40 store
stop

cond
*.robage 0 =
start
1 .tie store
stop

cond
*.robage 1 =
start
314 .aimdx store
stop

cond 
*.robage 3 =
start
314 .aimsx store
stop

cond
*40 0 !=
start
40 inc
stop


cond
*.eye5 80 <
*.refeye 18 !=
start
30 *.vel sub 3 div .up store
stop



'turn towards enemies or food
'*************************

cond
*.eye1 *.eye5 >
*.eye1 *.eye9 >
start
100 .aimsx store
'5 .sx store
stop

cond
*.eye9 *.eye5 >
*.eye9 *.eye1 >
start
-100 .aimsx store
'5 .dx store
stop

cond
*.eye3 *.eye5 >
*.eye3 *.eye7 >
start
50 .aimsx store
'5 .sx store
stop

cond
*.eye7 *.eye5 >
*.eye7 *.eye3 >
start
-50 .aimsx store
'5 .dx store
stop

cond
*40 3 =
start
628 .aimdx store
0 40 store
stop

'avoid conspecifics
'****************************
cond
*.refeye 18 =
'*.eye5 30 >
start
120 .aimsx store
stop

'shoot at enemy
'******************

cond
*.eye5 50 >
*.refeye 18 !=
start
-1 .shoot store
stop

'delete ties
'*********
cond
*.numties 0 >
start
1 .deltie store
stop

cond
start
100 .mkslime store
stop

end


'The Bee Gene: '=================== 'These genes attempt to create a situation similair to a hive. It takes a while for them to get 'collected and decide order of dominance, but that is because it is halfway unfinished. The 'warriors, drones and secondary queens do not occur because their genes are giving me a 'headache. They have a tendancy to reproduce less often the larger they get, leaving more food 'for them to become fatter, and eventually a queen. They diet themselves according to rank. 'Feel free to make any changes to these offline. I am open to ideas for handling the various 'other ranks and their genes. All of the search genes are not original, that was not the goal. 'phase 1 initialization

cond

  • .robage 0 =

start 8 rnd 2 add 51 store 45 55 store

  • 51 .tie store

40 40 store stop

'pahse 2: collector, fighter or queen

cond

  • .nrg 12000 >
  • .numties 0 !=

start 40 .repro store 31 .aimdx store 21 .out2 store stop

cond

  • .eye2 *.eye8 !=

start

  • .eye2 *.eye8 sub .aimsx store

stop

cond

  • .eye4 *.eye6 !=

start

  • .eye4 *.eye6 sub 2 div .aimsx

store stop

cond

  • .vel 40 <

start 40 *.vel sub .up store stop

' Gene 7 wide search 1 cond

  • .eye1 *.eye5 >
  • 40 40 =
  • .nrg 9000 <

start mult -100 stop

' Gene 8 wide search 2 cond

  • .eye9 *.eye5 >
  • 40 40 =
  • .nrg 9000 <

start mult 100 stop

cond start .aimdx store stop

cond

  • .eye4 *.eye6 >

start 90 .out2 store -20 .aimdx store stop

cond

  • .eye6 *.eye4 >

start -90 .out2 store 20 .aimdx sore stop

cond

  • .eye3 *.eye5 >
  • .eye3 *.eye4 >
  • .eye3 *.eye6 >

start 80 .out2 store -40 .aimdx store stop

cond

  • .eye7 *.eye5 >
  • .eye7 *.eye6 >
  • .eye7 *.eye4 >

start -80 .out2 store 40 .aimdx store stop

cond

  • .eye1 *.eye5 >
  • .eye1 *.eye4 >
  • .eye1 *.eye6 >
  • .eye1 *.eye3 >
  • .eye1 *.eye7 >

start 70 .out2 store -60 .aimdx store stop

cond

  • .eye9 *.eye5 >
  • .eye9 *.eye4 >
  • .eye9 *.eye6 >
  • .eye9 *.eye3 >
  • .eye9 *.eye7 >

start -70 .out2 store 60 .aimdx store stop

' Gene 3. Move forward cond

 *.numties != 2
 *.vel 20 < 
 *.refeye 9 !=

start

 30 *.vel sub 2 div .up store

stop

cond

  • .robage 150 >

start 31 .out2 store stop

cond

  • .tielen 800 >
  • .numties 1 =

start 500 .fixlen store stop

'external communications

cond

  • .numties 2 <
  • .eye5 40 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *.myeye =

start

  • 51 .tie store

stop

cond

  • .eye5 30 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *.myeye =
  • .in2 0 !=
  • .in2 21 !=

start

  • .in2 .aimdx store

stop

cond

  • .eye5 30 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *.myeye !=
  • .refties *.myties =

start

  • 40 .out1 store

1 *40 add 40 store stop

'internal commands from the queen

cond

  • .out2 21 =
  • .numties 0 !=
  • .nrg 28000 <
  • .out1 50 !=

start

  • 51 .deltie store

50 .out2 store stop

'attack other ties

cond

  • .numties 0 !=
  • .trefeye *.myeye !=
  • .trefvenom *.myvenom !=

start

  • .tieangle .aim store
  • 51 .deltie store

-3 .shoot store stop

'collect food command

cond

  • .in2 50 =
  • .refeye *.myeye =

start 50 .out2 store 40 *40 store 0 *.out2 store stop

cond

  • .numties 3 <
  • .out2 50 =
  • .eye5 30 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *.myeye !=

start

  • 51 .tie store

stop

cond

  • .numties 3 =
  • .out2 50 =
  • .in2 21 !=
  • .vel 20 <

start 20 .vel store stop

cond

  • .numties 0 !=
  • .trefeye *.myeye =
  • .trefvel *.vel !=
  • .trefangle *.myangle !=
  • 40 100 !=

start

  • .trefvel .vel store
  • trefangle .myangle store

stop

cond

  • .numties 1 =
  • 40 100 !=

start 100 40 store stop

cond

  • .numties 3 =
  • .out2 50 =
  • .in2 21 =
  • .eye 5 30 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *.myeye =

start

  • 51 .tie store

76 .out2 store stop

'eatself when searching for food

cond

  • .out2 50 =
  • .trefeye *55 !=
  • .nrg 5000 <
  • .body 300 <

start 300 .fdbody store stop

cond

  • .out2 50 =
  • .trefeye *55 !=
  • .nrg 3000 <
  • .body 100 <
  • .numties 0 !=

start

  • 51 .tienum store

-1000 .tieval store -1 .tieloc store stop

'feed eachother

cond

  • .numties = 2
  • .trefeye *.myeye =
  • .nrg *.trefnrg >

start

  • 51 .tienum store

10 .sharenrg .multi store stop

cond

  • .numties = 2
  • .trefeye *.myeye =
  • .waste *.trefwaste >

start

  • 51 .tienum store

10 .sharewaste store stop

cond

  • .numties 0 >
  • .numties 4 =
  • .in2 50 =
  • .nrg 1000 <
  • .trefeye *.myeye !=

start

  • 51 .tienum store

-1000 .tieval store -1 .tieloc store

  • 51 .readtie store

stop

cond

  • .waste 100 >
  • .trefeye *.myeye !=
  • .numties 4 =
  • .in2 50 =
  • .nrg 1000 <

start 1000 .tieval store -4 .tieloc store stop

'store away food for when it gets bad

cond

  • .nrg 29000 >
  • .body 900 <

start 50 .strbody store stop

cond

  • .nrg 12000 <
  • .body 100 >

start 50 .fdbody store stop

cond

  • .refeye 0 !=
  • .refeye *.myeye !=
  • .eye5 50 >

start 50 .vloc store 50 .venval store -3 .shoot store stop

cond

  • .refeye *.myeye !=
  • .eye5 50 >

start -1 .shoot store stop

'create venom

cond

  • .numties 0 !=
  • .trefeye *.myeye =
  • .venom 100 <

start 50 .strvenom store stop

cond

  • .numties 0 !=
  • trefeye *.myeye =
  • .slime 200 <

start 300 .mkslime store 50 .shareslime store stop

cond

  • .numties 0 !=
  • trefeye *.myeye =
  • .slime *.trefslime >

start 50 .shareslime store stop

cond

  • .numties 0 !=
  • .eye5 30 >
  • .eye5 *.eye4 =
  • .eye5 *.eye6 =
  • .refeye *55 !=

start

  • 51 .tie store

stop

cond

  • .waste 800 <
  • .numties 0 >
  • .body 1000 <

start

  • 51 .tienum store

-1000 .tieval store -1 .tieloc store

  • 51 .readtie store
  • .waste .sharewaste store

stop

cond

  • .numties 0 >
  • .waste 800 <
  • .body 1000 <
  • .trefeye *.myeye !=

start -1000 .tieval store -4 .tieloc store stop

cond

  • .slime 90 <

start 50 .mkslime store stop

cond

  • .refeye *.myeye !=
  • .eye5 50 >

start -1 .shoot store stop

cond

  • .numties 0 =
  • .nrg 25000 >

start 50 .repro store stop end

next