Bots and Simulations > Bot Tavern

Rabidus v1.1 (F1)(Googlyeyesultra)-15.07.07

(1/3) > >>

googlyeyesultra:
In my own personal runs, this one was able to beat the entire F1 league EXCEPT for Etch. Curse you, Etch! Some of 'em take a little while, though.


--- Code: ---'Rabidus: A bot by googlyeyesultra.

cond
start
'Conspec, Self-Virus Protection, Set Eyewidth
*.myeye *.myshoot add 998 *.robage sgn 1 sub -1 mult mult store
65 999 *.robage sgn 1 sub -1 mult mult store
1221 .eye5width *.robage sgn 1 sub -1 mult mult store

'Targeting/Movement
*.refxpos *.refypos angle .setaim
*.eye5 sqr dup div
*997 *998 sub dup div mult mult store

*.refveldx *.veldx sub .dx
*.eye5 sqr dup div
*997 *998 sub dup div mult mult store

*.refxpos *.refypos dist 2 div *.refvelup add *.velup sub .up
*.eye5 sqr dup div
*997 *998 sub dup div mult mult store

'Sharefeed if multi
99 .sharenrg *.multi mult store
.sharewaste *.multi mult inc
stop

'Reproduce
cond
*.nrg 850 >
*.body 50 >=
start
100 .strbody store
49 .repro store
stop

'Conspec
cond
*.refeye *.refshoot add *997 !=
start
*.refeye *.refshoot add 997 store
stop

'Birthie cut
cond
*.robage 2 <
start
.tie *.robage -1 mult 1 add mult inc
.deltie inc
11 990 store
stop

'Spread out when born
cond
*.eye5 0 !=
*997 *998 =
*.robage 20 <
*.robage 2 >
start
*.refxpos *.refypos angle 628 add .setaim store
*.eye5 .up store
stop

'Shoot feed
cond
*.eye5 30 >
*997 *998 !=
*.refpoison *.refshell >=
start
-6 .shoot store
stop

cond
*.eye5 30 >
*997 *998 !=
*.refpoison *.refshell <
start
-1 .shoot store
stop

'Making venom
cond
*.nrg 300 >
*.body 40 >
*.nrg 2 div 100 75 *.venom sub >
start
75 *.venom sub .strvenom store
stop

'Firing venom
cond
*.eye5 30 >
*997 *998 !=
*997 0 !=
*.venom 25 >
*.robage 10 sub *990 >
start
.setaim .vloc store
*.aim .venval store
*.venom 25 sub rnd 25 add .shootval store
-3 .shoot store
*.robage 990 store
stop

'Deltie enemy ties/conspec ties
cond
*.numties 0 >
*.tiepres *996 !=
*.trefshoot *.trefeye add *998 = or
start
*.tiepres .deltie store
stop

'Tie
cond
*.eye5 30 >
*997 *998 !=
*.numties 0 =
start
999 rnd 996 store
*996 .tie store
stop

'Tiefeed/Counter leach
cond
*.numties 0 >
*.trefshoot *.trefeye add *998 !=
start
*996 .tienum store
*.tieval sgn .tieloc store
-1000 .tieval store
stop

'Body to Energy Conversion
cond
*.nrg 850 <
*.body 50 >
start
*.body 50 sub 100 ceil 10 mult .fdbody store
stop

'Energy to Body Conversion
cond
*.nrg 250 >
*.body 50 <
start
*.body 50 sub 100 ceil .strbody store
stop

'Waste Removal
cond
*.waste 100 >=
start
-4 .shoot store
*.waste .shootval store
stop

'Shoot Virii
cond
*.eye5 15 >
*.nrg 150 >
*.vtimer 1 =
start
50 .vshoot store
stop

'Make Virii
cond
*.vtimer 0 =
start
*.thisgene 1 add .mkvirus store
stop

'Virus
cond
65 *999 !=
start
*.thisgene .mkvirus store
*.myeye *.myshoot add 31999 mult 50 floor .vshoot store
.delgene dec
stop

'Chameleon genes
cond
*.in1 0 !=
*.in1 *.out1 !=
start
*.in1 .out1 store
stop

cond
*.in2 0 !=
*.in2 *.out2 !=
start
*.in2 .out2 store
stop

'Some various code defenses
cond
*.fixed 0 !=
start
0 .fixpos store
stop

cond
*.delgene 0 !=
start
0 .delgene store
stop

cond
*.shoot -2 =
start
0 .shoot store
stop

cond
*.mrepro 0 !=
start
0 .mrepro store
stop

cond
*.sexrepro 0 !=
start
0 .sexrepro store
stop

cond
*.repro 49 !=
*.repro 0 !=
start
0 .repro store
stop

'End of Program
end
--- End code ---

abyaly:
That is really impressive
I need to make a new F2 bot now that Aura will be less than second place. I don't think I can make an F2 bot that kills Etch, though.

* those matches against aura are really long.

googlyeyesultra:
I still can't figure out how to beat Etch. The only improvement I've been able to make involves them spreading out a little more, so they end up clumping a lot less... Aside from duo-geneing it (SG + virus), anybody got any suggestions on how to make an upcoming Rabidus 1.2 far better?

Numsgil:
You could try some cooperative behavior.  Maybe have them swarm together to kill a tougher foe.  There hasn't been much cooperation in the league bots, so I think it's an avenue to explore.

googlyeyesultra:
I tried some very simple code (just a little modification of the swarming code in the wiki), but they tend to get close enough together so that they block each other's vision. I'm thinking about transmitting coordinates of food and enemy bots through .out4 and .out5, so that anything without a target would look for coordinates in other nearby Rabiduses (Rabidii?). I still need to work out the specifics, though, and bugtest it.

Navigation

[0] Message Index

[#] Next page

Go to full version