Bots and Simulations > Bot Tavern
Martian Tank
Martian:
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
Martian:
The new and improved Martian Tank 2. What do you think?
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
Peter:
--- Quote from: Martian ---cond
*.refeye *.myeye !=
*.eye1 *.eye2 >=
*.eye1 *.eye3 >=
*.eye1 *.eye4 >=
*.eye1 *.eye5 >=
*.eye1 *.eye6 >=
*.eye1 *.eye7 >=
*.eye1 *.eye8 >=
*.eye1 *.eye9 >=
start
mult -140
stop
--- End quote ---
What is that gene exactly doing, is it doing anything at all.
Martin Welgemoed klinkt als een nederlandse naam, ben jij ook nederlands.?
If you don't understand that line just say no.
Jez:
Martin Welgemoed is a Dutch name, are you from Holland?
If the conditions are met then it adds -140 to the top of the stack; later on there is a
cond
start
.aimdx store
stop
gene which takes the top number off the stack and uses that to set the .aimdx value.
It's a cost cutting method that avoids using store too often. (First used by PY).
(I should have this tested by the end of the week btw Martin, just have to test some other bots first!)
Martian:
--- Quote from: Peter ---Martin Welgemoed klinkt als een nederlandse naam, ben jij ook nederlands.?
--- End quote ---
No, I'm not Dutch. I'm Afrikaans which is close to Dutch, so I can understand a (very small) amount of Dutch.
"Hierdie sin is Afrikaans. Sien jy wat ek bedoel?" This is an Afrikaans sentence.
It seems to work very well when *.refxpos *.refypos angle .setaim store is added, otherwise there is a bit of trouble hitting small bots.
--- Quote ---I should have this tested by the end of the week btw Martin, just have to test some other bots first!
--- End quote ---
OK thanks.
Navigation
[0] Message Index
[#] Next page
Go to full version