Bots and Simulations > DNA - General
Bot is unable to detect large veggies?
Borg:
Hello.
I've coded a little bottie for testing to see how things works.
Im using a bit modified game rule like veggies get 100 nrg per cycle.
So, when veggie is not attack it become big after some time (.body grows)
and then problem arais.. When veggie have 32000 nrg and body > 25000
my bot stops to detect it.
I dont know where could be the problem.
Anyone can help?
Ive done step by step execution
and when bot is close to to veggie, eye3 eye5 eye7 have just
0 value (via printmem .eye<n>) It looks like bug to me..
PS: I would be glad to get some docs about *ALL* DNA codes.
I see ppl using abs sgn etc command, but they are not documented.
Anyone could share me a doc please?
--- Code: ---' Borg v1
def mrnd 950
def mdaimdx 951
cond
start
1000 rnd .mrnd store
stop
cond
*.mdaimdx 0 >
start
*.mdaimdx .aimdx store
0 .mdaimdx store
stop
cond
*.eye3 *.eye7 >
start
35 .aimsx store
3 .up store
2 .sx store
stop
cond
*.eye7 *.eye3 >
start
35 .aimdx store
3 .up store
2 .dx store
stop
cond
*.eye5 10 >
*.eye5 25 <
*.refeye *.myeye !=
start
3 .up store
stop
cond
*.nrg 30000 <
*.eye5 30 >
*.refshoot 0 =
*.refnrg 3000 >
start
-8 .shootval store
-1 .shoot store
0 .up store
stop
cond
*.nrg 30000 <
*.eye5 30 >
*.refshoot 0 =
*.refbody 3000 >
start
-8 .shootval store
-6 .shoot store
0 .up store
stop
cond
*.eye5 30 >
*.refeye *.myeye !=
*.refshoot 0 >
start
-16 .shootval store
-6 .shoot store
0 .up store
stop
cond
*.eye5 30 >
*.refeye *.myeye =
start
1256 rnd .aimsx store
10 .up store
stop
cond
*.eye3 10 < *.eye5 10 < *.eye7 10 < and and
*.mrnd 0 > *.mrnd 101 < and
start
314 rnd 157 sub .aimsx store
5 .up store
stop
cond
*.eye3 10 < *.eye5 10 < *.eye7 10 < and and
*.mrnd 0 > *.mrnd 6 < and
*.vel 3 < or
start
1256 rnd .aimsx store
10 .up store
stop
cond
*.eye3 10 <
*.eye5 10 <
*.eye7 10 <
start
3 .up store
stop
cond
*.numties 0 >
start
0 .up store
0 .sx store
0 .dx store
stop
cond
*.nrg 10000 >
*.mrnd 0 > *.mrnd 34 < and
start
1256 rnd .mdaimdx store
*.mdaimdx .aimsx store
30 .repro store
stop
cond
*.nrg 15000 > *.body 30000 < and
*.nrg 10000 > *.body 1000 < and
or
start
*.nrg 100 div .strbody store
stop
cond
*.body 200 >
*.nrg 3000 <
start
100 .fdbody store
stop
end
--- End code ---
PurpleYouko:
Hi Borg. Welcome to the forum.
I suspect that you are running up against an inefficiency in the program code.
The eyes work on the distance between bots. This distance is measured center to center rather than perimeter to perimeter so when the bots get really fat it is possible that another bot cannot get physically close enough for the center to center distance between them to fall below the minimum threshold distance.
I can't say for sure what that distance actually is without going in to the code and searching it out.
Which version are you running?. This seems to be an issue that would be more likely to occur in 2.4 rather than 3.37.6 (the mainly used version)
If there isn't a document up on the wiki that covers these commands then nobody has ever written on.
The in-gam help menu covers a lot of stuff but it hasn't been updated in the last few releases. Even I am a bit out of touch with some of the math operators that Numsgil added.
Borg:
Hello and Thanks for reply.
Im using version 2.37.6 of DarwinBots.
Oh..too bad. the fat ones attacked via -6 makes a lot of food :)
Well, okey.. Ill make hack for veggie to use it body to not grow too fast.
Numsgil:
--- Quote ---Even I am a bit out of touch with some of the math operators that Numsgil added.
--- End quote ---
I don't know that you've been keeping up with most of my changes in general actually :D
PurpleYouko:
Yup I think you might be right there.
For some reason, over the last several months I have been so darn busy that I have barely had the chance to turn DB on except to run evo sims in the background while doing other work. :(
Navigation
[0] Message Index
[#] Next page
Go to full version