Bots and Simulations > Bot Tavern
Community Bots
Gambit:
I'm working on a bunch of bots that will recognize each other AND recognize what species the other bot is.
they'll work togethor accordingly.
I'm using .myeye and outs and ins for the recognition.
theres one that stores massive large amounts of food and doesnt do much with it. but loves to share it with weaker bots.
1 that sends out a self destruct virus
1 that sends out a self replicating bleeder virus
and eventually some kind of multi bot that has a scout and a warrior attached to each other. or maybe a warrior that attaches itself to the sharer bot and will give up all its resources to protect it.
it would built up slime shell poison and venom and if the sharer was attacked it would give up all its resources in a flash via a tie to save the sharer.
why make all these speperate species work togethor? the answer is simple.
TO TAKE OVER THE WORLD!
p.s. has this ever been done before?
Moonfisher:
You should also make a strong veggy to cooperate with them... would help a lot if you're going to release them on IM.
Dunno if it's been done before... I know I thought about it... but I think I would probably just make a bot that mates with the veggies and just addapt it's behavior to the amount of energy and body it recieves per cycle.
In the end you can always put all the different behaviors into one bot, but if you want to run an evo sim it could be interesting with several small bots that work together. See if they can stay friendly long enough for some sort of balance to form, or atleast have a base that could lead to many different outcomes...
If you're going to run an evo sim you need a strong conspec, or they'll turn into canibals in no time...
Gambit:
I'm using in/out + myeye for the conspec. I'd like a third part to it. any ideas on how custom variables can be adapted for a conspec gene?
then it'd be fool proof.
here is the "Sharer" bot (Communitus_Friendlius). I need to chagne the reproduction conditions so that it will reproduce/self destruct to keep the ratio of its species to total bots at 1:5 -finished thanks to Moonfisher-
'virus nullifyer and conspec programmer
cond
*.robage 0 =
start
7 990 store
37 .out1 store
18 .myeye store
stop
'If there is no food then look for some randomly.
cond
*.eye5 0 =
*.refeye *.myeye = or
*.in1 37 = or
*.in1 38 = or
*.in1 39 = or
start
314 rnd .aimdx store
10 .up store
stop
'peripheral vision left
cond
*.eye1 0 >
*.in1 37 !=
*.in1 38 !=
*.in1 39 !=
*.refeye *.myeye !=
start
52 .aimsx store
stop
peripheral vision right
cond
*.eye9 0 >
*.in1 37 !=
*.in1 38 !=
*.in1 39 !=
*.refeye *.myeye !=
start
52 .aimdx store
stop
'if you find something chase it
cond
*.eye5 0 >
*.refnrg 3000 >
*.in1 37 !=
*.in1 38 !=
*.in1 39 !=
*.refeye *.myeye !=
start
*.refveldx .dx store
*.refvelup 30 add .up store
stop
'Attack the food if its strong enough but dont kill it. Let it live so you can feed on it
later. Though bigger bots may accidentally kill prey.
cond
*.eye5 50 >
*.refnrg 3000 >
*.in1 37 !=
*.in1 38 !=
*.in1 39 !=
*.refeye *.myeye !=
start
16 .shootval store
-1 .shoot store
*.refvelup .up store
stop
'poop
cond
*.waste 200 >
start
.backshot inc
-4 .shoot store
*.waste .shootval store
stop
'if you find something that isnt food (a relative) heal it if it needs
cond
*.eye5 50 >
*.refeye *.myeye !=
*.in1 37 = or
*.in1 38 = or
*.in1 39 = or
*.refnrg 5000 <
*.nrg 5000 >
start
-2 .shoot store
stop
'eat body
cond
*.nrg 3 div
*.body sub dup
start
.strbody store - .fdbody store
stop
'if you get huge and there arent enough of your species reproduce
cond
*.totalbots *.totalmyspecies 6 div >
*.nrg 9000 >
start
40 .repro store
stop
end
Gambit:
okay I just tested it and the gene moonfisher gave me is defective... and he didnt give me a warrenty
so I think I may have to have 2-3 different
if totalbots equals about this AND totalmyspecies is under this THEN you should reproduce
with each one getting higher
the totalbots I'm thinking
near 100
near 500
near 1000
so like
cond
*.totalbots 1 >
*.totalbots 100 <
*.totalmyspecies 15 <
start
40 .repro store
stop
cond
*.totalbots 100 >
*.totalbots 500 <
*.totalmyspecies 100 <
start
40 .repro store
stop
cond
*.totalbots 500 >
*.totalmyspecies 200 <
start
40 .repro store
stop
I'd still like to have a more adaptive solution but if I cant come up with one I guess I'll have to use those 3...
EricL:
start
*.totalmyspecies 100 mult *.totalbots div 10 <
40 .repro store
stop
Reproduces if the bot's population is below 10% of the total sim population.
Navigation
[0] Message Index
[#] Next page
Go to full version