Author Topic: Blind bot  (Read 334 times)

Offline Panda

  • Global Moderator
  • Bot Destroyer
  • *****
  • Posts: 311
    • View Profile
    • Whagat
Blind bot
« on: May 15, 2011, 12:28:05 PM »
I think this might have been used before... The challenge is to create a "fully functional bot" without using any of the eyes, any of the ins/outs or any of the refvars. I have no idea how possible this is to do and I haven't thought over it... but I think we should have a go...

Fully functional bot in this case(Stolen from PhiNotPi and modified) :
  • Feed off of prey.  This can be as inefficiant as needed, as long as the bot gains net energy from the attack.
  • Not attack conspecs.  It should not treat conspecs as enemies.
  • Reproduce.  This should be controlled with some sort of condition.
  • Populate the sim in F1 conditions.  It will be released into an environment of Alga_Minimalis.

I hope this will be harder than the last! :p It's fine to add or help with other bots too. I think this will work better as a community challenge!
"Traffic is very heavy at the moment, so if you are thinking of leaving now, you'd better set off a few minutes earlier."

Offline ashton1993

  • Bot Neophyte
  • *
  • Posts: 13
    • View Profile
Re: Blind bot
« Reply #1 on: May 15, 2011, 01:00:40 PM »
Well that's easy as done

Code: [Select]
start
*.maxvel 20 div *.vel sub - .up *.vel *.maxvel 22 div sub sgn 1 sub abs mult store 'travel at constant velocity
.tie *.hitup -- abs mult inc 'if hit by something in front of you tie to it
.hitup *.hitup mult dec 'reset value of hitup
50 .sharenrg *.multi mult *.timer 10 mod -- abs sgn -- abs mult store 'share energy with everything it's tied too - including veggies which will give it energy every 10 cycles
50 .repro *.nrg 2000 sub sgn ++ sgn mult store 'when bot has 2000 energy reproduce
stop

Just going to test it now

EDIT -> made a mistake in the reproduction part though I've now fixed it and the bot is doing well for itself
« Last Edit: May 15, 2011, 01:16:45 PM by ashton1993 »

Offline Panda

  • Global Moderator
  • Bot Destroyer
  • *****
  • Posts: 311
    • View Profile
    • Whagat
Re: Blind bot
« Reply #2 on: May 15, 2011, 01:10:18 PM »
It doesn't have to be short by the way. :p
"Traffic is very heavy at the moment, so if you are thinking of leaving now, you'd better set off a few minutes earlier."

Offline ashton1993

  • Bot Neophyte
  • *
  • Posts: 13
    • View Profile
Re: Blind bot
« Reply #3 on: May 15, 2011, 01:13:18 PM »
ah shucks it works anyway XD

Offline Panda

  • Global Moderator
  • Bot Destroyer
  • *****
  • Posts: 311
    • View Profile
    • Whagat
Re: Blind bot
« Reply #4 on: May 15, 2011, 01:20:31 PM »
Okay... then, if anybody else submits one, then it will go against that one. :p (Makes it a little harder. Hehe.)
"Traffic is very heavy at the moment, so if you are thinking of leaving now, you'd better set off a few minutes earlier."

Offline ashton1993

  • Bot Neophyte
  • *
  • Posts: 13
    • View Profile
Re: Blind bot
« Reply #5 on: May 15, 2011, 01:37:08 PM »
 anyway made it a bit more orderly and efficient =D
Code: [Select]
start
*.maxvel 2 div *.vel sub - .up *.vel *.maxvel 3 div sub sgn 1 sub abs mult *.robage 10 sub sgn - ++ sgn mult store 'travel at constant velocity
.tie *.hitup -- abs mult *.numties -- sgn - ++ sgn mult inc 'if hit by something in front of you tie to it
.hitup *.hitup mult dec 'reset value of hitup
50 .sharenrg *.multi mult *.timer 2 mod -- abs sgn -- abs mult store 'share energy with everything it's tied too - including veggies which will give it energy every

10 cycles
50 .repro *.nrg 2000 sub sgn ++ sgn mult store 'when bot has 2000 energy reproduce
stop



Offline Panda

  • Global Moderator
  • Bot Destroyer
  • *****
  • Posts: 311
    • View Profile
    • Whagat
Re: Blind bot
« Reply #6 on: May 15, 2011, 01:49:55 PM »
I forgot to say... you can also use "tin" and "tout"... because that's not using sight.
"Traffic is very heavy at the moment, so if you are thinking of leaving now, you'd better set off a few minutes earlier."

Offline PhiNotPi

  • Bot Neophyte
  • *
  • Posts: 18
    • View Profile
Re: Blind bot
« Reply #7 on: May 16, 2011, 08:17:12 AM »
This bot seems to do well, as in it destroys the previous entry.  It constantly fires ties, which allows it to capture food from a distance.  The gain of capturing more food most likely outweighs the cost of extra tie firing.  If the bot fires a tie at conspec, it is repelled and deletes the tie.  This has the benifit of sending offspring away to find more food.
Code: [Select]
start
5 .aimdx store
1259 .tout1 store
*.tiepres .tienum store
*.numties 0 =
.tie inc
*.tin1 1259 !=
.tieloc dec
-1000 .tieval store
not
-10 .up store
*.tiepres .deltie store
*.nrg 3000 >
10 .repro store
« Last Edit: May 16, 2011, 08:26:13 AM by PhiNotPi »
I am biased neither towards nor against any single mathematical constant.