Bots and Simulations > Bot Tavern

Bot Transition- 2.37.6 to 2.43

<< < (5/7) > >>

Jez:
Two reasons I can think it might be off the top of my head:

1. You deleted something else.
2. Somewhere you are resetting the stack and this is needed.

I'll see what happens when I try removing all the .counter lines.

EDIT
I see what you mean, it didn't even beat Lisa Vegetarius when I removed all the counter lines. I did find out why, none of my guesses were right though!

cond
*.numties 0 >
*.counter 19 ='need this line!!!! - this line means gene won't work? Otherwise couldn't tie feed...
start
*55 .deltie store
stop

*.tiepres *55 != and
*.tiepres .deltie
might work better.

Another change I would suggest is adding '*.veldx .sx store' or similar every time you use the .up instruction. (To stop the bot circling stuff)

Also I noticed the bot just seems to sit still when it can't see anything, you might want to add a gene so that it slowly spins round under that condition, (to help it search for a new target).
You might have thought of this idea and rejected it already, it's down to personal taste.

strangers:
Well I'm typing on my PSP, so I'll keep this short. I had already fixed most of those problems so I will post the new code when I get home.

strangers:
Here's the new code:

--- Code: ---'Test 1.1
'Tie Feeder/Hunter Prototype
'Strangers


'Initialize
'*************
cond
*.robage 0 =
start
200 rnd 55 store
.eye5 .ploc store
256 41 store
7 989 store
49 .memloc store
stop

'Spinning
'************
cond
*.eye5 0 =
start
mult 50
stop

'Wide search 1
'*******************
cond
*.refeye *.myeye !=
*.eye1 *.eye5 >
start
mult -140
stop

'Wide search 2
'*******************
cond
*.refeye *.myeye !=
*.eye9 *.eye5 >
start
mult 140
stop

' Simple search pattern
'***************************
cond
*.refeye *.myeye !=
*.eye3 *.eye5 >
start
mult -70
stop

'Simple search pattern part 2
'**********************************
cond
*.refeye *.myeye !=
*.eye7 *.eye5 >
start
mult 70
stop

' Moving
'**********
cond
*.eye5 0 >
start
*.refveldx .dx store
*.refvelup 30 add .up store
stop

' Obtaining Food and Shooting
'***********************************
cond
*.eye5 40 >
*.refeye 0 =
*.robage 0 !=
start
*.refxpos *.refypos angle .setaim store
-1 .shoot store
16 .shootval store
*.refvelup .up store
*.refveldx .dx store
stop

cond
*.eye5 40 >
*.refeye *.myeye !=
*.refeye 0 !=
*.refpoison 0 >
*.robage 0 !=
start
*.refxpos *.refypos angle .setaim store
-6 .shoot store
16 .shootval store
*.refvelup .up store
*.refveldx .dx store
stop

cond
*.eye5 40 >
*.refeye *.myeye !=
*.refeye 0 !=
*.refpoison 0 =
*.robage 0 !=
start
*.refxpos *.refypos angle .setaim store
-1 .shoot store
16 .shootval store
*.refvelup .up store
*.refveldx .dx store
stop

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

'Avoid conspecifics
'**********************
cond
*.refeye *.myeye =
start
*.maxvel *.vel add *.eye5 mult 50 div 15 ceil .dx store
mult 314 rnd
stop

‘Rotate back and continue feeding
'****************************************
cond
*50 0 >
start
50 dec
mult -628
stop

'Reproduction
'****************
cond
*.nrg 3000 >
*.body 300 >
start
mult 628
25 .repro store
0 .shoot store
50 inc
stop

‘Perform the rotation
'************************
cond
start
.aimdx store
stop

'Tie Feeding
'****************
cond
*.eye5 30 >
*.refeye *.myeye !=
start
*55 .tie store
*55 .readtie store
stop

cond
*.numties 0 >
start
-1 .tieloc store
-1000 .tieval store
*55 .tienum store
stop

Cond
*.trefeye *.myeye =
start
*55 .deltie store
stop

cond
*.tiepres *55 !=
start
*.tiepres .deltie store
stop

cond
*.multi 1 =
*.trefeye *.myeye !=
start
99 .sharenrg store
.sharewaste inc
stop

'Body Management
'***********************
cond
*.nrg 1000 >
*.body 5000 <
start
100 .strbody store
stop

cond
*.nrg 500 <
start
100 .fdbody store
stop

'Slime Management
'************************
cond
*.slime 300 <
*.nrg 3000 >
start
300 *.slime sub .mkslime store
stop

'Poison
'********
cond
*.poison 500 <
*.nrg 3000 >
start
500 *.poison sub .strpoison store
stop

'Waste Management
'*************************
cond
*.waste 100 >
start
1 .backshot store
-4 .shoot store
*.waste .shootval store
stop

'Anti Virus and Defense
'***************************
cond
*.mkvirus 0 >
start
*.mkvirus .delgene store
stop

cond
*.vtimer 0 >
start
0 .vshoot store
stop

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

cond
*.fixpos 0 >
start
0 .fixpos store
stop

'Chameleon Defense
'***********************
cond
start
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
*.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5 *.eye5
stop

cond
*.out1 0 =
*.out2 0 =
start
.out1 inc
.out2 inc
stop

cond
*.out1 1 =
*.out2 1 =
start
.out1 inc
.out2 inc
stop

cond
*.out1 2 >=
*.out2 2 >=
*.out1 6 <
*.out2 6 <
start
.out1 inc
.out2 inc
stop

cond
*.out1 6 =
*.out2 6 =
start
0 .out1 store
0 .out2 store
stop
end
--- End code ---

Well, if I ever make it to Blue on blue I don't think trick will work.

Jez:
Ok, I can see you want to get to the top of the list so, before you get that far, I’ll give you a little hint; Blue on Blue, (my bot) has the same amount of eyes as your bot! (Actually it has over 300 eyes but it will have the same amount of eyes as yours after a few rounds fighting your bot  ). You are going to need a better ID system, just ask if you need help with that.

I am not sure why your refveldx .dx store is working, that should add the amount your bot is drifting right to the amount your bot moves to the right, doubling the drift in other words, but it seems to do the job so I’m not complaining.  

The 2 .up when your bot can’t see anything probably doesn’t help, after all the trouble you went to to keep your bot as a low energy bot, (using mult and one turn instruction) that probably wastes loads of energy. (You forgot to do that for the ‘Avoid conspecifics’ bit btw) Plus it doesn’t seem to do anything, the bot seems happy to spin on the spot still.   I suggest making it a mult (turn) instruction and putting it before the bots search genes.

The random spinning is caused by the gene;

--- Code: ---cond
*.tiepres *55 !=
start
*.tiepres .deltie store
314 .aimdx store
stop
--- End code ---
*.tiepres won’t = *55 if there is no tie

On the plus side, that little change, just removing that aimdx instruction, seemed to put your bot in a much better postion versus T. Mosquito.
Having made all three of those changes (2 .up changed to 140 mult and moved to start of dna, gene shown above changed by removing the aimdx line completely and 'avoid conspecifics' changed from 314 rnd aimdx store to mult 314 rnd ) your bot starts looking quite cool; it’s still not trashing T. Mosquito though    (Another cool bot that may have been beaten by Blue on Blue because it uses refeye).

strangers:
Blue on blue can be tricked very easily, you just need more .eye statements than him. Sadly, overall, Blue on blue is just flat out better than mine. But it doesn't realy matter since I can't even beat T. Mosquito anyway.

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version