'released with 1st pond version of DB
'PY
'Devincio_Dominator9
'uses tie defence system
'***********************
'initialize
'*********
cond
*.robage 0 =
start
8 rnd 2 add 51 store
45 55 store
.tie inc
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
'turn towards food
'*************************
'avoid other conspecifics
'****************************
cond
start
mult 0
stop
cond
*.eye4 *.eye6 >
start
mult -15
stop
cond
*.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
' Avoid corpses
' ****************
cond
*.refnrg 1 <
start
mult 185
stop
' Turn away from the side of the screen
' ********************************************
cond
*.edge 1 =
start
mult 185
stop
'reproduce
'***********
cond
*.robage 50 <
*.eye5 50 <
*.nrg 6000 >
start
50 .repro store
mult 250
stop
cond
*.nrg 25000 >
*.eye5 50 <
start
40 .repro store
mult 250
stop
'Tie to an enemy
'********************
cond
*.eye5 30 >
*.eye5 *.eye4 =
*.eye5 *.eye6 =
*.refeye *55 !=
*.corpse 0 =
start
*51 .tie store
mult 0
65 inc
stop
' Actually rotate
' *****************
cond
start
.aimdx store
stop
' sever ties to conspecifics
' *****************************
cond
*.trefeye *55 =
start
*51 .deltie store
stop
'Feed
'******
cond
*65 0 >
start
*.tiepres .tienum store
-1000 .tieval store
-1 .tieloc store
*51 .readtie store
stop
cond
*.tiepres *51 =
start
*.tiepres .tienum store
-1000 .tieval store
-1 .tieloc store
*51 .readtie store
stop
cond
*.tiepres *51 !=
*.numties 0 >
start
*.tiepres .tienum store
1000 .tieval store
.tieval .tieloc store
stop
cond
*.numties 0 =
*65 0 !=
start
65 dec
stop
cond
*.nrg 1000 <
start
100 .mkslime store
stop
cond
*.refeye *55 !=
*.refeye 0 !=
*.eye5 0 >
start
.mkslime .shoot store
-100 .shootval store
stop
end