Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Martian

Pages: [1]
1
Evolution and Internet Sharing Sims / RandomBot replicator in 7 min!
« on: August 18, 2007, 04:00:44 PM »
Using the randombot generator here several times I made a RandomBot with a DNA length of 3000.

I then started a sim with one RandomBot at 1000 for point mutations and delta mutations disabled. I gave it a starting energy of 32000. I made it a veg at 10 energy per cycle. I also set all costs to 0. 7 min later, at 400 cycles a second, a replicator.

The more bots, the better chance of a replicator evolving. But because the number of bots slow the sim exponentially, it takes a lot less time with just one bot for a replicator to evolve.

2
Interesting behaviour bots / RoboAnt (IB)(Martian)-15.08.07
« on: August 15, 2007, 11:30:56 AM »
' RoboAnt
' By Martian

def foodcounter 50

def foodx 51 'For the location of the last found food,
def foody 52 'or the new nest.

def state 53

def tieid 54

def numworkers 55

def royaljelly 971

def password 972

def queenx 973
def queeny 974

def birthtie -1
def goingfood -2
def hunting -3
def goingqueen -4
def feedqueen -5
def ruling -6
def newnest -7

def mapx 9237
def mapy 6928
def mapborder 250

def foodcycle 20 'The number of cycles the queen goes without food before she deciceds there aren't enough workers.

'The Queens Initialization
cond
 *.royaljelly 0 =
start
 31998 rnd 2 add .password store
 *.thisgene .delgene store
stop

'State switching

cond
 *.state 0 =
start
 -1 .state store
stop

cond
 *.state .birthtie =
 *.robage 6  >
start
 .deltie inc
 .goingfood .state store
stop

cond
 *.state .birthtie =
 *.robage 5 >
start
 .tie inc
stop

cond
 *.state .hunting =
 *.nrg 7500 >
start
  *.refxpos .foodx store
  *.refypos .foody store
  .goingqueen .state store
stop

cond
 *.eye1 *.eye2 >=
 *.eye1 *.eye3 >=
 *.eye1 *.eye4 >=
 *.eye1 *.eye5 >=
 *.eye1 *.eye6 >=
 *.eye1 *.eye7 >=
 *.eye1 *.eye8 >=
 *.eye1 *.eye9 >=
start
 mult -140
stop

cond
 *.eye9 *.eye2 >=
 *.eye9 *.eye3 >=
 *.eye9 *.eye4 >=
 *.eye9 *.eye5 >=
 *.eye9 *.eye6 >=
 *.eye9 *.eye7 >=
 *.eye9 *.eye8 >=
 *.eye9 *.eye1 >=
start
 mult 140
stop

cond
 *.eye2 *.eye9 >=
 *.eye2 *.eye3 >=
 *.eye2 *.eye4 >=
 *.eye2 *.eye5 >=
 *.eye2 *.eye6 >=
 *.eye2 *.eye7 >=
 *.eye2 *.eye8 >=
 *.eye2 *.eye1 >=
start
 mult -105
stop

cond
 *.eye8 *.eye9 >=
 *.eye8 *.eye3 >=
 *.eye8 *.eye4 >=
 *.eye8 *.eye5 >=
 *.eye8 *.eye6 >=
 *.eye8 *.eye7 >=
 *.eye8 *.eye2 >=
 *.eye8 *.eye1 >=
start
 mult 105
stop

cond
 *.eye3 *.eye9 >=
 *.eye3 *.eye8 >=
 *.eye3 *.eye4 >=
 *.eye3 *.eye5 >=
 *.eye3 *.eye6 >=
 *.eye3 *.eye7 >=
 *.eye3 *.eye2 >=
 *.eye3 *.eye1 >=
start
 mult -70
stop

cond
 *.eye7 *.eye9 >=
 *.eye7 *.eye8 >=
 *.eye7 *.eye4 >=
 *.eye7 *.eye5 >=
 *.eye7 *.eye6 >=
 *.eye7 *.eye3 >=
 *.eye7 *.eye2 >=
 *.eye7 *.eye1 >=
start
 mult 70
stop

cond
 *.eye4 *.eye9 >=
 *.eye4 *.eye8 >=
 *.eye4 *.eye7 >=
 *.eye4 *.eye5 >=
 *.eye4 *.eye6 >=
 *.eye4 *.eye3 >=
 *.eye4 *.eye2 >=
 *.eye4 *.eye1 >=
start
 mult -35
stop

cond
 *.eye6 *.eye9 >=
 *.eye6 *.eye8 >=
 *.eye6 *.eye7 >=
 *.eye6 *.eye5 >=
 *.eye6 *.eye4 >=
 *.eye6 *.eye3 >=
 *.eye6 *.eye2 >=
 *.eye6 *.eye1 >=
start
 mult 35
stop

cond
 *.eye5 *.eye9 >=
 *.eye5 *.eye8 >=
 *.eye5 *.eye7 >=
 *.eye5 *.eye6 >=
 *.eye5 *.eye4 >=
 *.eye5 *.eye3 >=
 *.eye5 *.eye2 >=
 *.eye5 *.eye1 >=
start
 mult
stop

cond
 *.eye5 0 >
 *.password *.memval =
start
 mult 628 rnd 314 add
stop

cond
 *.state .hunting =
start
 .aimdx store
stop

cond
 *.eye9 0 =
 *.eye8 0 =
 *.eye7 0 =
 *.eye6 0 =
 *.eye5 0 =
 *.eye4 0 =
 *.eye3 0 =
 *.eye2 0 =
 *.eye1 0 =
 *.state .hunting =
start
 20 .up store
stop

cond
 *.eye5 0 >
 *.password *.memval !=
 *.eye5 40 <
 *.refaimdx 0 !=
 *.state .hunting =
start
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

cond
 *.password *.memval !=
 *.eye5 40 >
 *.refaimdx 0 !=
 *.state .hunting =
 *.refvelup 0 =
start
 *.vel .dn store
stop

cond
 *.state .hunting =
 *.eye5 30 >=
 *.memval *.password !=
 *.refaimdx 0 !=
start
 *.refxpos *.refypos angle .setaim store
 -1 .shoot store
stop

cond
 *.state .goingqueen =
 *.eye5 35 >
 *.in1 1 =
 *.password *.memval =
start
 .feedqueen .state store
stop

cond
 *.state .goingqueen =
start
 *.queenx *.queeny angle .setaim store
 *.xpos *.queenx sub abs *.ypos *.queeny sub abs add 50 div 5 floor 30 ceil .up store
 *.veldx .sx store
stop

cond
 *.state .feedqueen =
 *.nrg 2500 <
start
 .goingfood .state store
 *.tieid .deltie store
stop

cond
 *.state .feedqueen =
 *.numties 0 =
start
 *.velup .dn store
 *.velsx .dx store
 *.refxpos *.refypos angle .setaim store
 *.tieid .tie store
stop

cond
 *.state .feedqueen =
 *.numties 1 =
start
 *.tieid .tienum store
 -1 .tieloc store
 *.nrg 2500 sub 1000 ceil 1 floor .tieval store
stop

'Fixes the Queen
cond
 *.fixed 0 =
 *.state .ruling =
start
 1 .fixpos store
stop

'Makes new workers
cond
 *.nrg 5000 >
 *.state .ruling =
 *.foodcounter 0 =
start
 10 .repro store
 90 314 rnd add .aimdx store
stop

cond
 *.royaljelly 0 =
 *.state .ruling =
start
 .royaljelly inc
stop

'Makes new queens
cond
 *.nrg 14000 >
 *.state .ruling =
 *.foodcounter 0 !=
 *.body 1450 >=
start
 50 .repro store
 0 .royaljelly store
 90 314 rnd add .aimdx store
stop

cond
 *.royaljelly 0 =
 *.state .ruling !=
start
 .newnest .state store
 .royaljelly inc
 1 .out1 store
 .mapx .mapborder 2 mult sub rnd .mapborder add .foodx store
 .mapy .mapborder 2 mult sub rnd .mapborder add .foody store
stop

cond
 *.state .newnest =
 *.xpos *.foodx sub abs 100 >
 *.ypos *.foody sub abs 100 > or
start
 *.foodx *.foody angle .setaim store
 *.xpos *.foodx sub abs *.ypos *.foody sub abs add 10 div 1 floor 30 ceil .up store
 *.veldx .sx store
stop

cond
 *.state .newnest =
 *.xpos *.foodx sub abs 100 <=
 *.ypos *.foody sub abs 100 <=
start
 .ruling .state store
 1 .fixpos store
 *.xpos .queenx store
 *.ypos .queeny store
stop


cond
 *.state .goingfood =
 *.xpos *.foodx sub abs 500 >
 *.ypos *.foody sub abs 500 > or
start
 *.foodx *.foody angle .setaim store
 *.xpos *.foodx sub abs *.ypos *.foody sub abs add 10 div 1 floor 30 ceil .up store
 *.veldx .sx store
stop

cond
 *.state .goingfood =
 *.foodx 0 =
 *.foody 0 =
start
 .hunting .state store
stop

cond
 *.state .goingfood =
 *.xpos *.foodx sub abs 500 <=
 *.ypos *.foody sub abs 500 <=
start
 .hunting .state store
stop

'Initialization

'Each queens workers have a different password
cond
 *.robage 0 =
start
 .password .memloc store
 31998 rnd 2 add .tieid store
stop

cond
 *.fixed 0 !=
 *.state .ruling !=
start
 0 .fixpos store
stop

'Body handling routines
cond
 *.body 1450 <
 *.pleas 0 >
 *.state .ruling =
start
 *.pleas 2 div 100 ceil 1450 *.body sub 10 mult ceil .strbody store
stop

cond
 *.body 1550 >
 *.nrg 5000 < or
 *.state .ruling =
start
 *.body 1550 sub 10 mult 100 ceil .fdbody store
stop

cond
 *.body 150 >
 *.nrg 1000 < or
 *.state .ruling !=
start
 *.body 150 sub 10 mult 100 ceil .fdbody store
stop

cond
 *.body 50 <
 *.pleas 0 >
 *.state .ruling !=
start
 *.pleas 2 div 100 ceil 50 *.body sub 10 mult ceil .strbody store
stop

cond
 *.state .ruling !=
 *.tiepres 0 >
 *.tiepres *.tieid !=
start
 *.tiepres .deltie store
stop

cond
 *.state .ruling =
 *.tiepres 0 >
start
  .foodcycle .foodcounter store
 stop

cond
 *.foodcounter 0 !=
start
 .foodcounter dec
stop

cond
 *.shflav 0 !=
 *.shflav -2 !=
start
 *.shang .aimshoot store
 64 .shootval store
 -1 .shoot store
 0 .shflav store
stop

3
DNA - General / Making another bot delete it's own genes
« on: July 06, 2007, 09:37:37 AM »
I modified Animal minimalis to force another bot to delete its genes with info shots, but it isn't working. Can someone please tell me why.  

cond
 *.eye5 0 >
 *.refeye *.myeye !=
start
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

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

cond
*.refeye 0 !=
*.eye5 50 >
*.refeye *.myeye !=
start
*.refvelup .up store
1 .shootval store
.delgene .shoot store
stop

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

cond
 *.nrg 5100 >
start
 50 .repro store
stop

end

4
F2 bots / Martian Tank 3 (F2)(Martian)-06.07.2007
« on: July 06, 2007, 08:10:35 AM »
Code: [Select]
'Martian Tank 3
'By Martin Welgemoed, Martian in the DB Forum
'
'Please comment on this bot.
'
'Thanks PY for simplebot tutorial
'Thanks to Elite for the counter attacking gene, the turning gene, the accuracy gene and the venom and poison tutorials
'Thanks to Abyaly for helping with the venom
'
'Designed for 2.43
'Designed for F2

'Leaching
cond
 *.tiepres 0 >
start
 *.tiepres .tienum store
 .tieval .tieloc store
 1000 .tieval store
stop

'Delete birthtie
cond
 *.robage 0 =
start
 .tie inc
 .shoot .memloc store
 .shoot .vloc store
 -2 .venval store
 .shoot .ploc store
stop

cond
 *.robage 1 =
start
 .deltie inc
stop

'Get rid of waste

cond
 *.waste 500 >
start
 *.waste .shootval store
 -4 .shoot store
 0 .shflav store
stop

'Search for a target

cond
 *.refeye *.myeye !=
 *.eye1 *.eye2 >=
 *.eye1 *.eye3 >=
 *.eye1 *.eye4 >=
 *.eye1 *.eye5 >=
 *.eye1 *.eye6 >=
 *.eye1 *.eye7 >=
 *.eye1 *.eye8 >=
 *.eye1 *.eye9 >=
start
 mult -140
stop

cond
 *.refeye *.myeye !=
 *.eye9 *.eye2 >=
 *.eye9 *.eye3 >=
 *.eye9 *.eye4 >=
 *.eye9 *.eye5 >=
 *.eye9 *.eye6 >=
 *.eye9 *.eye7 >=
 *.eye9 *.eye8 >=
 *.eye9 *.eye1 >=
start
 mult 140
stop

cond
 *.refeye *.myeye !=
 *.eye2 *.eye9 >=
 *.eye2 *.eye3 >=
 *.eye2 *.eye4 >=
 *.eye2 *.eye5 >=
 *.eye2 *.eye6 >=
 *.eye2 *.eye7 >=
 *.eye2 *.eye8 >=
 *.eye2 *.eye1 >=
start
 mult -105
stop

cond
 *.refeye *.myeye !=
 *.eye8 *.eye9 >=
 *.eye8 *.eye3 >=
 *.eye8 *.eye4 >=
 *.eye8 *.eye5 >=
 *.eye8 *.eye6 >=
 *.eye8 *.eye7 >=
 *.eye8 *.eye2 >=
 *.eye8 *.eye1 >=
start
 mult 105
stop

cond
 *.refeye *.myeye !=
 *.eye3 *.eye9 >=
 *.eye3 *.eye8 >=
 *.eye3 *.eye4 >=
 *.eye3 *.eye5 >=
 *.eye3 *.eye6 >=
 *.eye3 *.eye7 >=
 *.eye3 *.eye2 >=
 *.eye3 *.eye1 >=
start
 mult -70
stop

cond
 *.refeye *.myeye !=
 *.eye7 *.eye9 >=
 *.eye7 *.eye8 >=
 *.eye7 *.eye4 >=
 *.eye7 *.eye5 >=
 *.eye7 *.eye6 >=
 *.eye7 *.eye3 >=
 *.eye7 *.eye2 >=
 *.eye7 *.eye1 >=
start
 mult 70
stop

cond
 *.refeye *.myeye !=
 *.eye4 *.eye9 >=
 *.eye4 *.eye8 >=
 *.eye4 *.eye7 >=
 *.eye4 *.eye5 >=
 *.eye4 *.eye6 >=
 *.eye4 *.eye3 >=
 *.eye4 *.eye2 >=
 *.eye4 *.eye1 >=
start
 mult -35
stop

cond
 *.refeye *.myeye !=
 *.eye6 *.eye9 >=
 *.eye6 *.eye8 >=
 *.eye6 *.eye7 >=
 *.eye6 *.eye5 >=
 *.eye6 *.eye4 >=
 *.eye6 *.eye3 >=
 *.eye6 *.eye2 >=
 *.eye6 *.eye1 >=
start
 mult 35
stop

cond
 *.refeye *.myeye !=
 *.eye5 *.eye9 >=
 *.eye5 *.eye8 >=
 *.eye5 *.eye7 >=
 *.eye5 *.eye6 >=
 *.eye5 *.eye4 >=
 *.eye5 *.eye3 >=
 *.eye5 *.eye2 >=
 *.eye5 *.eye1 >=
start
 mult
stop

cond
 *.eye5 0 >
 *.refeye *.myeye =
start
 mult 900 rnd 100 add
 100 .up store
stop

cond
 *.eye1 = 0
 *.eye2 = 0
 *.eye3 = 0
 *.eye4 = 0
 *.eye5 = 0
 *.eye6 = 0
 *.eye7 = 0
 *.eye8 = 0
 *.eye9 = 0
 *.robage 50 mod = 0
start
 mult 900 rnd 100 add
stop

'If I'm forced by poison to shoot out energy
'make sure it doesn't hit an enemy

cond
 -2 *.shoot =
 0 *.eye5 !=
 *.refeye *.myeye !=
start
 mult
 500 .up store
 mult 900 rnd 100 add
stop

'reproduce

cond
 *.nrg 5100 >
start
 mult 628 50 inc
 50 .repro store
 100 .strbody store
stop

cond
 *50 0 >
start
 mult 628 50 dec
stop

'This does the amount of rotation placed on the stack
cond
start
 .aimdx store
stop

cond
 *.eye1 = 0
 *.eye2 = 0
 *.eye3 = 0
 *.eye4 = 0
 *.eye5 = 0
 *.eye6 = 0
 *.eye7 = 0
 *.eye8 = 0
 *.eye9 = 0
start
 100 .up store
stop

'Chase the target

cond
 *.eye5 0 >
 *.refeye *.myeye !=
start
 *.refxpos *.refypos angle .setaim store
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

'Shoot the target

cond
 *.eye5 25 >
 *.refeye *.myeye !=
 *.memval -2 !=
 *.refeye 0 !=
start
 50 .shootval store
 -3 .shoot store
stop

cond
 *.eye5 25 >
 *.refeye *.myeye !=
 *.memval -2 sub sgn abs 1 sub -1 mult *.refeye 0 sub sgn abs 1 sub -1 mult add sgn abs 1 =
 *.refpoison *.refshell =>
start
 16 .shootval store
 -6 .shoot store
stop

cond
 *.eye5 25 >
 *.refeye *.myeye !=
 *.memval -2 sub sgn abs 1 sub -1 mult *.refeye 0 sub sgn abs 1 sub -1 mult add sgn abs 1 =
 *.refpoison *.refshell <
start
 16 .shootval store
 -1 .shoot store
stop

'Return fire

cond
 *.shflav 0 !=
 *.refpoison *.refshell <
 *.memval -2 =
start
 *.shang .aimshoot store
 32 .shootval store
 -1 .shoot store
 0 .shflav store
stop

cond
 *.shflav 0 !=
 *.refpoison *.refshell >
 *.memval -2 =
start
 *.shang .aimshoot store
 32 .shootval store
 -6 .shoot store
 0 .shflav store
stop

cond
 *.shflav 0 !=
 *.memval -2 !=
start
 *.shang .aimshoot store
 25 .shootval store
 -3 .shoot store
 0 .shflav store
stop

'Defense

cond
 *.venom 250 <
 *.nrg 1000 >
start
 50 .strvenom store
stop

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

cond
 *.shell 300 <
 *.nrg 1000 >
start
 50 .mkshell store
stop

'Prevent fixing
cond
 *.fixed 1 =
start
.fixpos dec
stop
end

5
F2 bots / Martian Tank 2 (F2)(Martian)-04.07.2007
« on: July 04, 2007, 02:14:21 PM »
Please run Martian Tank 2 in the league and not Martian Tank 1

Code: [Select]
'Martian Tank 2
'By Martin Welgemoed, Martian in the DB Forum
'Now has a choice between a -1 or a -6 shot
'
'Please comment on this bot.
'Made the top ten on my computer
'
'Thanks PY for simplebot tutorial
'Thanks to Elite for the counter attacking gene, the turning gene, the accuracy gene and the venom and poison tutorials
'
'Designed for F2


cond
 *.robage 0 =
start
 .tie inc
stop

cond
*.robage 1 =
start
.deltie inc
stop

cond
*.refeye *.myeye !=
*.eye1 *.eye2 >=
*.eye1 *.eye3 >=
*.eye1 *.eye4 >=
*.eye1 *.eye5 >=
*.eye1 *.eye6 >=
*.eye1 *.eye7 >=
*.eye1 *.eye8 >=
*.eye1 *.eye9 >=
start
mult -140
stop

cond
*.refeye *.myeye !=
*.eye9 *.eye2 >=
*.eye9 *.eye3 >=
*.eye9 *.eye4 >=
*.eye9 *.eye5 >=
*.eye9 *.eye6 >=
*.eye9 *.eye7 >=
*.eye9 *.eye8 >=
*.eye9 *.eye1 >=
start
mult 140
stop

cond
*.refeye *.myeye !=
*.eye2 *.eye9 >=
*.eye2 *.eye3 >=
*.eye2 *.eye4 >=
*.eye2 *.eye5 >=
*.eye2 *.eye6 >=
*.eye2 *.eye7 >=
*.eye2 *.eye8 >=
*.eye2 *.eye1 >=
start
mult -105
stop

cond
*.refeye *.myeye !=
*.eye8 *.eye9 >=
*.eye8 *.eye3 >=
*.eye8 *.eye4 >=
*.eye8 *.eye5 >=
*.eye8 *.eye6 >=
*.eye8 *.eye7 >=
*.eye8 *.eye2 >=
*.eye8 *.eye1 >=
start
mult 105
stop

cond
*.refeye *.myeye !=
*.eye3 *.eye9 >=
*.eye3 *.eye8 >=
*.eye3 *.eye4 >=
*.eye3 *.eye5 >=
*.eye3 *.eye6 >=
*.eye3 *.eye7 >=
*.eye3 *.eye2 >=
*.eye3 *.eye1 >=
start
mult -70
stop

cond
*.refeye *.myeye !=
*.eye7 *.eye9 >=
*.eye7 *.eye8 >=
*.eye7 *.eye4 >=
*.eye7 *.eye5 >=
*.eye7 *.eye6 >=
*.eye7 *.eye3 >=
*.eye7 *.eye2 >=
*.eye7 *.eye1 >=
start
mult 70
stop

cond
*.refeye *.myeye !=
*.eye4 *.eye9 >=
*.eye4 *.eye8 >=
*.eye4 *.eye7 >=
*.eye4 *.eye5 >=
*.eye4 *.eye6 >=
*.eye4 *.eye3 >=
*.eye4 *.eye2 >=
*.eye4 *.eye1 >=
start
mult -35
stop

cond
*.refeye *.myeye !=
*.eye6 *.eye9 >=
*.eye6 *.eye8 >=
*.eye6 *.eye7 >=
*.eye6 *.eye5 >=
*.eye6 *.eye4 >=
*.eye6 *.eye3 >=
*.eye6 *.eye2 >=
*.eye6 *.eye1 >=
start
mult 35
stop

cond
*.refeye *.myeye !=
*.eye5 *.eye9 >=
*.eye5 *.eye8 >=
*.eye5 *.eye7 >=
*.eye5 *.eye6 >=
*.eye5 *.eye4 >=
*.eye5 *.eye3 >=
*.eye5 *.eye2 >=
*.eye5 *.eye1 >=
start
mult
stop

cond
 *.eye5 0 >
 *.refeye *.myeye !=
start
 *.refxpos *.refypos angle .setaim store
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

cond
 *.eye5 0 >
 *.refeye *.myeye =
start
rnd .amdx store
50 .up store
stop

cond
start
.aimdx store
stop

cond
 *.nrg 5100 >
start
 50 .repro store
 100 .strbody store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
*.robage 50 mod = 0
start
rnd .amdx store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
start
100 .up store
stop

cond
*.eye5 15 <
*.refeye *.myeye !=
*.refeye 0 >
start
-3 .shoot store
stop

cond
*.eye5 30 >
*.refeye *.myeye !=
*.refpoison *.refshell >
start
16 .shootval store
-6 .shoot store
stop

cond
*.eye5 30 >
*.refeye *.myeye !=
*.refpoison *.refshell <
start
16 .shootval store
-1 .shoot store
stop

cond
*.eye5 30 >
*.refeye *.myeye !=
*.shoot 0 =
start
16 .shootval store
-6 .shoot store
stop

cond
*.shflav 0 !=
*.shflav -2 !=
*.refeye *.myeye !=
*.refpoison *.refshell <
start
*.shang .aimshoot store
32 .shootval store
*.refshell
-1 .shoot store
0 .shflav store
stop

cond
*.shflav 0 !=
*.shflav -2 !=
*.refeye *.myeye !=
*.refpoison *.refshell >
start
*.shang .aimshoot store
32 .shootval store
*.refshell
-6 .shoot store
0 .shflav store
stop

cond
 *.venom 200 <
start
 100 .strvenom store
stop

cond
 *.robage 0 =
start
 .shoot .vloc store
 -2 .venval store
 .shoot .ploc store
stop

cond
 *.poison 500 <
start
 100 .strpoison store
stop

end

6
Bot Tavern / Martian Tank
« on: July 03, 2007, 05:10:51 PM »
This is my first bot.
I did post the bot in the Bestiary but I would like some comments on this.

'Martian Tank
'By Martin Welgemoed, Martian in the DB Forum
'
'Thanks PY for simplebot tutorial
'Thanks to Elite for the counter attacking gene, the turning gene, the accuracy gene and the venom and poison tutorials

cond
 *.robage 0 =
start
 .tie inc
stop

cond
*.robage 1 =
start
.deltie inc
stop

Cond
*.refeye *.myeye !=
*.eye1 *.eye2 >=
*.eye1 *.eye3 >=
*.eye1 *.eye4 >=
*.eye1 *.eye5 >=
*.eye1 *.eye6 >=
*.eye1 *.eye7 >=
*.eye1 *.eye8 >=
*.eye1 *.eye9 >=
start
mult -140
stop

cond
*.refeye *.myeye !=
*.eye9 *.eye2 >=
*.eye9 *.eye3 >=
*.eye9 *.eye4 >=
*.eye9 *.eye5 >=
*.eye9 *.eye6 >=
*.eye9 *.eye7 >=
*.eye9 *.eye8 >=
*.eye9 *.eye1 >=
start
mult 140
stop

cond
*.refeye *.myeye !=
*.eye2 *.eye9 >=
*.eye2 *.eye3 >=
*.eye2 *.eye4 >=
*.eye2 *.eye5 >=
*.eye2 *.eye6 >=
*.eye2 *.eye7 >=
*.eye2 *.eye8 >=
*.eye2 *.eye1 >=
start
mult -105
stop

cond
*.refeye *.myeye !=
*.eye8 *.eye9 >=
*.eye8 *.eye3 >=
*.eye8 *.eye4 >=
*.eye8 *.eye5 >=
*.eye8 *.eye6 >=
*.eye8 *.eye7 >=
*.eye8 *.eye2 >=
*.eye8 *.eye1 >=
start
mult 105
stop

cond
*.refeye *.myeye !=
*.eye3 *.eye9 >=
*.eye3 *.eye8 >=
*.eye3 *.eye4 >=
*.eye3 *.eye5 >=
*.eye3 *.eye6 >=
*.eye3 *.eye7 >=
*.eye3 *.eye2 >=
*.eye3 *.eye1 >=
start
mult -70
stop

cond
*.refeye *.myeye !=
*.eye7 *.eye9 >=
*.eye7 *.eye8 >=
*.eye7 *.eye4 >=
*.eye7 *.eye5 >=
*.eye7 *.eye6 >=
*.eye7 *.eye3 >=
*.eye7 *.eye2 >=
*.eye7 *.eye1 >=
start
mult 70
stop

cond
*.refeye *.myeye !=
*.eye4 *.eye9 >=
*.eye4 *.eye8 >=
*.eye4 *.eye7 >=
*.eye4 *.eye5 >=
*.eye4 *.eye6 >=
*.eye4 *.eye3 >=
*.eye4 *.eye2 >=
*.eye4 *.eye1 >=
start
mult -35
stop

cond
*.refeye *.myeye !=
*.eye6 *.eye9 >=
*.eye6 *.eye8 >=
*.eye6 *.eye7 >=
*.eye6 *.eye5 >=
*.eye6 *.eye4 >=
*.eye6 *.eye3 >=
*.eye6 *.eye2 >=
*.eye6 *.eye1 >=
start
mult 35
stop

cond
*.refeye *.myeye !=
*.eye5 *.eye9 >=
*.eye5 *.eye8 >=
*.eye5 *.eye7 >=
*.eye5 *.eye6 >=
*.eye5 *.eye4 >=
*.eye5 *.eye3 >=
*.eye5 *.eye2 >=
*.eye5 *.eye1 >=
start
mult
stop

cond
 *.eye5 0 >
 *.refeye *.myeye !=
start
 *.refxpos *.refypos angle .setaim store
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

cond
 *.eye5 0 >
 *.refeye *.myeye =
start
rnd .amdx store
50 .up store
stop

cond
start
.aimdx store
stop

cond
 *.nrg 5100 >
start
 50 .repro store
 100 .strbody store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
*.robage 50 mod = 0
start
rnd .amdx store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
start
100 .up store
stop

cond
*.shflav 0 !=
*.shflav -2 !=
start
*.shang .aimshoot store
32 .shootval store
-6 .shoot store
0 .shflav store
stop

cond
 *.venom 200 <
start
 100 .strvenom store
stop

cond
*.eye5 30 <
*.refeye *.myeye !=
*.refeye 0 >
start
-3 .shoot store
stop

cond
*.eye5 30 >
*.refeye *.myeye !=
start
16 .shootval store
-1 .shoot store
stop

cond
 *.robage 0 =
start
 .shoot .vloc store
 -2 .venval store
 .shoot .ploc store
stop

cond
 *.poison 500 <
start
 100 .strpoison store
stop

end

7
F2 bots / Martian Tank (F2)(Martian)-03.07.2007
« on: July 03, 2007, 04:55:45 PM »
My first bot
Designed for the F2 league
Does pretty well, it ends up in the top ten on my computer

'Martian Tank
'By Martin Welgemoed, Martian in the DB Forum
'
'Thanks PY for simplebot tutorial
'Thanks to Elite for the counter attacking gene, the turning gene, the accuracy gene and the venom and poison tutorials

Code: [Select]
cond
 *.robage 0 =
start
 .tie inc
stop

cond
*.robage 1 =
start
.deltie inc
stop

Cond
*.refeye *.myeye !=
*.eye1 *.eye2 >=
*.eye1 *.eye3 >=
*.eye1 *.eye4 >=
*.eye1 *.eye5 >=
*.eye1 *.eye6 >=
*.eye1 *.eye7 >=
*.eye1 *.eye8 >=
*.eye1 *.eye9 >=
start
mult -140
stop

cond
*.refeye *.myeye !=
*.eye9 *.eye2 >=
*.eye9 *.eye3 >=
*.eye9 *.eye4 >=
*.eye9 *.eye5 >=
*.eye9 *.eye6 >=
*.eye9 *.eye7 >=
*.eye9 *.eye8 >=
*.eye9 *.eye1 >=
start
mult 140
stop

cond
*.refeye *.myeye !=
*.eye2 *.eye9 >=
*.eye2 *.eye3 >=
*.eye2 *.eye4 >=
*.eye2 *.eye5 >=
*.eye2 *.eye6 >=
*.eye2 *.eye7 >=
*.eye2 *.eye8 >=
*.eye2 *.eye1 >=
start
mult -105
stop

cond
*.refeye *.myeye !=
*.eye8 *.eye9 >=
*.eye8 *.eye3 >=
*.eye8 *.eye4 >=
*.eye8 *.eye5 >=
*.eye8 *.eye6 >=
*.eye8 *.eye7 >=
*.eye8 *.eye2 >=
*.eye8 *.eye1 >=
start
mult 105
stop

cond
*.refeye *.myeye !=
*.eye3 *.eye9 >=
*.eye3 *.eye8 >=
*.eye3 *.eye4 >=
*.eye3 *.eye5 >=
*.eye3 *.eye6 >=
*.eye3 *.eye7 >=
*.eye3 *.eye2 >=
*.eye3 *.eye1 >=
start
mult -70
stop

cond
*.refeye *.myeye !=
*.eye7 *.eye9 >=
*.eye7 *.eye8 >=
*.eye7 *.eye4 >=
*.eye7 *.eye5 >=
*.eye7 *.eye6 >=
*.eye7 *.eye3 >=
*.eye7 *.eye2 >=
*.eye7 *.eye1 >=
start
mult 70
stop

cond
*.refeye *.myeye !=
*.eye4 *.eye9 >=
*.eye4 *.eye8 >=
*.eye4 *.eye7 >=
*.eye4 *.eye5 >=
*.eye4 *.eye6 >=
*.eye4 *.eye3 >=
*.eye4 *.eye2 >=
*.eye4 *.eye1 >=
start
mult -35
stop

cond
*.refeye *.myeye !=
*.eye6 *.eye9 >=
*.eye6 *.eye8 >=
*.eye6 *.eye7 >=
*.eye6 *.eye5 >=
*.eye6 *.eye4 >=
*.eye6 *.eye3 >=
*.eye6 *.eye2 >=
*.eye6 *.eye1 >=
start
mult 35
stop

cond
*.refeye *.myeye !=
*.eye5 *.eye9 >=
*.eye5 *.eye8 >=
*.eye5 *.eye7 >=
*.eye5 *.eye6 >=
*.eye5 *.eye4 >=
*.eye5 *.eye3 >=
*.eye5 *.eye2 >=
*.eye5 *.eye1 >=
start
mult
stop

cond
 *.eye5 0 >
 *.refeye *.myeye !=
start
 *.refxpos *.refypos angle .setaim store
 *.refveldx .dx store
 *.refvelup 30 add .up store
stop

cond
 *.eye5 0 >
 *.refeye *.myeye =
start
rnd .amdx store
50 .up store
stop

cond
start
.aimdx store
stop

cond
 *.nrg 5100 >
start
 50 .repro store
 100 .strbody store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
*.robage 50 mod = 0
start
rnd .amdx store
stop

cond
*.eye1 = 0
*.eye2 = 0
*.eye3 = 0
*.eye4 = 0
*.eye5 = 0
*.eye6 = 0
*.eye7 = 0
*.eye8 = 0
*.eye9 = 0
start
100 .up store
stop

cond
*.shflav 0 !=
*.shflav -2 !=
start
*.shang .aimshoot store
32 .shootval store
-6 .shoot store
0 .shflav store
stop

cond
 *.venom 200 <
start
 100 .strvenom store
stop

cond
*.eye5 30 <
*.refeye *.myeye !=
*.refeye 0 >
start
-3 .shoot store
stop

cond
*.eye5 30 >
*.refeye *.myeye !=
start
16 .shootval store
-1 .shoot store
stop

cond
 *.robage 0 =
start
 .shoot .vloc store
 -2 .venval store
 .shoot .ploc store
stop

cond
 *.poison 500 <
start
 100 .strpoison store
stop

end

8
Bug reports / Bots go off screen
« on: June 02, 2007, 01:00:38 PM »
The bots in my sim sink into the bottom of the screen. It is non toroidal with gravity. Attached is a sim (although it happens in every sim I run) and a screenshot. I'm running windows xp home with 1 gigabyte of ram and 3ghz cpu.

9
Bugs and fixes / Tie with nothing on the other end
« on: May 07, 2007, 01:01:03 PM »
I was evolving a Zerobot when I noticed that the robots form ties with nothing on the other end. Also their circle  with eyes in behaves weirdly.



I'm running windows XP home with service pack 2 and 1 gig RAM.

10
Newbie / Zero Bot
« on: May 03, 2007, 08:28:12 AM »
Hi! I'm rather new to darwinbots.

Can someone please tell me how to evolve a zerobot. What settings, how many bots, what veggies, physics and suchlike.

I have tried a few times but got nowhere.

Pages: [1]