'Evolved seasnake in semi-unsupervised (survival evolution) mode
'The supervised stuff:
'transition from mutation rates 1/4x to 1x
'Still MB (was a logic test mostly)
'Original seasnake by EricL
'#generation: 24
'#mutations: 2
start
0 .fixpos store
0 .focuseye store
clearbool
*.robage 0 =
*971 0 =
and
-30000 32000 rnd 51 store
*.robage 0 =
*0 0 *.eye7dir and
*0 dec
.mypoison store
clearbool
300 .eye5width store
336 .memloc store
336 .tmemloc store
*51 .readtie store
*.readtie .tienum store
*51 0 store
*.out3 .tout1 store
*51 .tout2 store
*.out1 .tout3 store
*51 .out2 store
*.xpos *52 sub 54 store
*.ypos *53 sub 60 inc
453 .tieloc store
1000 .tieval store
clearbool
*.out1 0 =
*.out1 3 =
or
*51 .out3 store
*51 .tout1 store
0 .eye5dir store
*.out1 1 =
*.out1 2 =
or
*.tin1 .out3 store
*.tin1 .tout1 store
*.tin6 .tout6 store
*.tin7 .tout7 store
*.out1 1 =
*.out1 2 =
*.trefnrg *406 -4 sub .out2 store
*.rmchlr 1 *.tmemloc .tout2 store
clearbool
*.robage 1 =
*51 .tie store
clearbool
*.robage 2 =
*.tin1 *.out2 <=
and
.deltie inc
100 .up store
clearbool
*.edge *.tout4 add .up store
clearbool
*.eye5 *.shang >
*.memval *.dnalen !=
and
*.robage 2 >
and
*.refxpos *.refypos angle .setaim store
*.refveldx .dx store
*.refvelup 10 add .up store
35 .eye5width store
clearbool
*.rmchlr 3 =
*.out3 *.eye6 =
*.out3 *.in3 !=
*.in3 0 !=
and
*.in2 *51 <=
and
or
and
*50 0 =
and
*.setaim 314 1 *.myties mult 157 sub add .setaim store
0 .eye5width store
clearbool
*.body 100 *.light *.nrg 9 mult *.tout9 100 .strbody store
*.body 100 mult *.nrg 11 mult >
100 .fdbody store
clearbool
*.waste 100 >
*.waste .shootval store
314 .aimshoot store
-4 7 *.tie clearbool
*.myaimsx 5000 >
*.slime 100 <
and
10 .mkslime store
*.nrg 5000 >
*.shell 1000 <
*.trefshoot 10 .mkshell store
clearbool
*.thisgene 1 !=
1 .delgene store
*.thisgene 1 =
*.genes 1 >
and
2 .delgene store
clearbool
*.numties 0 =
0 .out1 store
*.numties 1 =
*.tmemval *.dnalen =
and
*.out1 2 =
*.out1 0 =
or
and
*.tiepres *51 =
and
1 .out1 store
*.numties 2 =
*50 0 =
and
*.tmemval *.dnalen =
and
*.out1 3 =
*.out1 1 =
or
and
2 .out1 store
*.numties 1 =
*.robage 2 >
and
*.out1 0 =
*.tiepres *51 !=
and
*.out1 2 =
*.trefxpos 0 =
and
or
and
3 .out1 store
clearbool
*.numties 2 >
*.out1 3 =
*.numties 1 >
and
or
*.refaimsx 1 =
*.numties 1 >
and
or
*.out1 0 =
*.numties 0 >
and
or
*.numties 1 =
*.out1 1 !=
*.out1 3 !=
and
and
or
*.numties 1 =
*.out1 1 =
*.tiepres *51 !=
and
and
or
*.refaimsx 1 =
*.eye6 2 =
and
or
*.numties 1 =
*.out1 3 =
and
*.tiepres *51 =
and
or
*.out1 3 =
*.tin3 3 =
and
or
*.tmemval 0 !=
*.tmemval *.dnalen !=
and
or
*.tiepres .deltie store
clearbool
*.out1 0 =
*.myup 3 =
or
*.eye5 0 >
and
*.memval *.dnalen =
and
*.in3 *.out2 >
and
*.in1 0 =
*.in1 1 =
*.refmulti 0 !=
and
or
and
*.in3 *.out3 !=
and
*51 .tie store
clearbool
*.out1 1 =
*.out1 2 =
or
*.tin1 *.out3 =
and
*.trefxpos *.trefypos angle .setaim store
*.trefup .up store
*.trefdn 2 *.vloc clearbool
*.tielen 100 >
*.out1 1 =
*.out1 2 =
or
and
*.up 10 add .up store
clearbool
*.out1 3 *.eye1width *.trefvelyoursx *.velsx sub abs 10 >
and
*.velsx -1 mult .sx store
clearbool
*.tielen -50 <
*.tielen 0 !=
and
*.out1 1 =
*.out1 2 =
or
and
*.dn 20 add .dn store
clearbool
*.multi 0 >
*.out1 1 =
*.out1 2 =
or
and
*51 .tienum store
-1 .fixang store
25 .fixlen store
100 .aimright store
clearbool
*.out1 1 =
628 .eye5dir store
628 .eye5width store
*.out1 2 =
*51 2 mod 628 mult -314 add 628 *.trefdn 2 mod mult add .eye5dir store
207 567 store
*.out1 3 =
*.out1 0 =
or
0 .eye5dir store
clearbool
0 .tout6 store
0 .tout7 store
*.eye5 0 =
*.tin6 *.tin7 dist 1000 <
and
*.tin6 .tout6 store
*.tin7 .dn store
*.eye5 0 >
*.memval *.dnalen !=
and
*.in3 *.out3 !=
and
*.reftype 415 *.refxpos and
=
0 store
*.refypos .tout7 store
clearbool
*.out1 3 =
100 .shoot store
clearbool
*.tout6 0 !=
*.out1 3 *.fixlen and
*.tout6 *54 2 1256 add 1256 angle *.tout7 *.tout6 store
416 sub mult 2 *55 *.tout7 *.totalbots 415 sub mult =
*.out1 0 =
*.out1 3 =
or
and
10 .up store
20 rnd 10 sub .aimright store
clearbool
*.eye5 0 >
*.memval *.dnalen =
and
*.out1 1 !=
and
*.out1 2 !=
and
*.in2 *.out2 >
and
*.in1 2 !=
and
*.in1 *.eye2width !=
and
*.in2 *.out3 !=
and
*.tin10 2 >
and
*50 0 =
and
*.refxpos *.refypos angle .setaim store
*.refveldx *.body mult 1000 div .dx store
*.eye8dir 11 add *.aim sub .eye5dir store
35 .eye5width store
clearbool
*.eye5 10 >
*.memval *.light !=
and
*.in2 *.out3 !=
and
*.eye5dir -1 mult .aimshoot store
-6 .shoot store
*.eye5 20 *.treffixed 1 .shootval store
*.eye5 20 >=
5 .shootval store
clearbool
*.eye5 0 =
*.refxpos 0 !=
and
*.memval *.dnalen !=
and
*.in2 *.out3 !=
and
*.refxpos *.refypos angle -1 mult .aimshoot store
-6 .shoot store
17 .shootval store
clearbool
*51 .tienum store
50 .sharenrg store
50 .shareshell store
50 .shareslime store
100 831 *.fixed clearbool
*50 5 =
*.setaim 628 add .setaim store
*50 0 >
50 dec
clearbool
*.nrg 5000 >=
*.body 500 >=
and
*.vloc 0 =
*.out1 1 =
or
and
50 .repro store
*.setaim 628 add .setaim store
5 50 store
*.tout10 *.tiepres *51 !=
*51 .tiepres store
*51 .tienum store
clearbool
*.xpos 52 store
*.ypos 53 store
stop
'''''''''''''''''''''''' Gene: 1 Ends at position 937 '''''''''''''''''''''''