Author Topic: All For One  (Read 6350 times)

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
All For One
« on: January 07, 2015, 04:34:32 PM »
Has anyone ever made a bot in which it's entire population focuses only on a singular target? As in, the whole species attacking one target? I know Bubbles has a limited range, but I have never seen a bot that acts this way and I want to know if it could be possible.
Hubba Jubba Lollywash!

Offline Shadowgod2

  • Bot Destroyer
  • ***
  • Posts: 387
    • View Profile
Re: All For One
« Reply #1 on: January 07, 2015, 11:41:27 PM »
in theory it should be possible though difficult. maybe you could make a bot such as this.

i prefer evo and broad range bots. i had worked on a bot that had a bot learning type of system but found too many issues for me :wacko:

Offline spike43884

  • Bot Overlord
  • ****
  • Posts: 656
    • View Profile
Re: All For One
« Reply #2 on: January 08, 2015, 12:03:43 PM »
Well. Russian babies generally attacks 1 target, but only in its sub-pops though, they have infinite range.

What it does is the body can move as it wishes, but if the head decides to move somewhere it has to follow (head has movement priority then).

Thus, they all focus on one or two targets.


Also, it wouldn't be hard to get it going for bots joined up. Just have a head and bodies. Put the x-location and y-location into tout1 and tout2 put the orientation into tout3 (once the enemy is in eye5) then put dist into tout4. Force bodies to make tout1/2/3/4 to equal tin1/2/3/4 then force them to follow that.


The only problem is if a body got hit then it couldn't retaliate.
Autism can allow so much joy, and at the same time sadness to be seen. Our world is weird, and full of contradiction everywhere, yet somehow at moments seems to come together, and make near perfect sense.

Offline spike43884

  • Bot Overlord
  • ****
  • Posts: 656
    • View Profile
Re: All For One
« Reply #3 on: January 08, 2015, 03:23:03 PM »
Ok. I got a framework developed for it

I started a 'all for 1' bot derived from russian babies (mobilised I believe).
It removes the head priorities, also has a lovely horrible script to force their aiming to spin randomly (courtesy of me using advanced shot bot tutorial in an overcomplex manor).
The problem is, it'll need some form of weird algorithm with mults and such to combine the factors to travel to the signal. What it does is if *.dist is less than *.tout1 (which stores the lowest dist in the colony) then it will hopefully go to the location of the lowest dist from enemy. This system is ULTRA EFFICIENT in the means of even if the bot that set tout1 dies, unless another oponent gets closer. Then its not reset, meaning they know the location of oponents, they might not even be able to see. A reset would have to be added in 'IF WITHIN X OF LOCATION' but otherwise the framework is done.
The algorithms need to be added in of course. I hope shadowgod could do that, he's best when it comes to algorithms. Anyway, the code is below!
Code: [Select]
'-------------------------------All for 1 sequence-------------------------------'

'YPOSITION
cond
*.follow 1 =
start
stop

cond
*.follow 0 =
start
stop


'XPOSITION
cond
*.follow 1 =
start
stop

cond
*.follow 0 =
start
stop


'ORIENTATION
cond
*.follow 1 =
start
stop

cond
*.follow 0 =
start
stop


'DIST
cond
*.tin1 *.dist <
start
1 .follow store
stop

cond
*.tin1 *.dist =>
start
0 .follow store
*.dist .tout1 store
 *.aim .tout2 store
*.ypos .tout3 store
*.xpos .tout4 store
stop

'--------------------------------------------------------------------------------'
« Last Edit: January 08, 2015, 03:36:02 PM by spike43884 »
Autism can allow so much joy, and at the same time sadness to be seen. Our world is weird, and full of contradiction everywhere, yet somehow at moments seems to come together, and make near perfect sense.

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #4 on: January 08, 2015, 07:21:58 PM »
Nice. I'll try it.  I might try and use this code to make a Frankenstien bot (that's my name for a bot with DNA that's been stitched together), that is, if it doesn't work well enough already.
Hubba Jubba Lollywash!

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #5 on: January 08, 2015, 07:26:21 PM »
OH, was it meant to be put into a frankenstien bot? If so, that explains why they don't do much on their own.  What I would like is something like Bubbles, but with an unlimited range and only one target at a time. But who knows, maybe we'll get something even better.  ;)
« Last Edit: January 08, 2015, 07:36:39 PM by spork22 »
Hubba Jubba Lollywash!

Offline spike43884

  • Bot Overlord
  • ****
  • Posts: 656
    • View Profile
Re: All For One
« Reply #6 on: January 09, 2015, 12:18:39 PM »
OH, was it meant to be put into a frankenstien bot? If so, that explains why they don't do much on their own.  What I would like is something like Bubbles, but with an unlimited range and only one target at a time. But who knows, maybe we'll get something even better.  ;)

Well. Frankenstien bot is now the official term for that spork ;) (Also if you want to learn any DNA bits Im happy to try to help?) but this is just mildly incomplete dna, I need shadowgod or someone to make the algorithm for it. Apart from 1 freevariable it is complete (you need to put def follow [VALUE] at the start of the DNA). It does -pretty much- do the stuff you mentioned.
It has got unlimited range, to any bots tied to it (of its species). It also can't (easily) be hijacked by other species ties or .memloc because it uses multiple .touts and .tins (4 so far). It also targets only 1 target (to bots tied together) and if the one who sent the signal dies, they can avenge it. The only possible problem is if bots travelling to help are attacked. So if you want to actually make this successful, it needs a gene to say 'HAVE I BEEN SHOT? IF SO, IGNORE SIGNAL IN TINS!'

Autism can allow so much joy, and at the same time sadness to be seen. Our world is weird, and full of contradiction everywhere, yet somehow at moments seems to come together, and make near perfect sense.

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #7 on: January 09, 2015, 04:10:32 PM »
Ah. Ok :D
Hubba Jubba Lollywash!

Offline Shadowgod2

  • Bot Destroyer
  • ***
  • Posts: 387
    • View Profile
Re: All For One
« Reply #8 on: January 10, 2015, 01:03:20 PM »
ok so i found an issues

dist is not a sysvar but "*.refxpos *.refypos dist" will get what you need.

much of this is unnecessary i can do it in 3 outs

refxpos

refypos

attack id

no crazy algorithms necessary.

Offline Shadowgod2

  • Bot Destroyer
  • ***
  • Posts: 387
    • View Profile
Re: All For One
« Reply #9 on: January 10, 2015, 04:25:54 PM »
here is the system you need to have an all for one kind of bot

i just have the aiming to said enemy and the spread of the signal to other bots on where to go. now it's up to you to hunting and feeding as well as the sight configuration.

Code: [Select]
def attackid 50
def attack 51

cond
*.refeye *.myeye !=
start
1 .attack store
999 rnd 1 add .attackid *.attackid sgn 1 sub abs mult store
*.refxpos .out1 store
*.refypos .out2 store
*.attackid .out3 store
stop

cond
*.refeye *.myeye =
*.in3 0 !=
start
*.in1 .out1 store
*.in2 .out2 atore
*.in3 .out3 atore
*.in1 *.in2 angle .setaim store
stop

cond
*.refeye *.myeye =
*.in1 *.in2 dist 50 <=
*.in3 0 = or and
*.eye5 0 = or
start
0 .attack store
0 .out1 store
0 .out2 store
0 .out3 store
0 .attackid store
stop


Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #10 on: January 10, 2015, 05:10:47 PM »
Thanks, shadowgod. I'll start experimenting with it right away!
Hubba Jubba Lollywash!

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #11 on: January 10, 2015, 05:21:56 PM »
Am I supposed to put the One for All gene first or all the other genes first?
Hubba Jubba Lollywash!

Offline Shadowgod2

  • Bot Destroyer
  • ***
  • Posts: 387
    • View Profile
Re: All For One
« Reply #12 on: January 10, 2015, 05:53:55 PM »
mixed, i think preferably somewhere at the beginning but i'm not sure on that. the main thing you need to do with it is to put in the feeding using attack, hunting using attack, and the eye design in.
not much else

ultimately up to you.

Offline spork22

  • Bot Destroyer
  • ***
  • Posts: 328
    • View Profile
Re: All For One
« Reply #13 on: January 10, 2015, 06:31:03 PM »
I made a self-sufficient one and put it in the Starting Gate. ^^ I'm sure it can be improved upon though
Hubba Jubba Lollywash!

Offline spike43884

  • Bot Overlord
  • ****
  • Posts: 656
    • View Profile
Re: All For One
« Reply #14 on: January 11, 2015, 07:42:12 AM »
ok so i found an issues

dist is not a sysvar but "*.refxpos *.refypos dist" will get what you need.

much of this is unnecessary i can do it in 3 outs

refxpos

refypos

attack id

no crazy algorithms necessary.

Correction. Dist is included. Its in advanced commands (and not sysvar list?) http://wiki.darwinbots.com/index.php/Dist
Autism can allow so much joy, and at the same time sadness to be seen. Our world is weird, and full of contradiction everywhere, yet somehow at moments seems to come together, and make near perfect sense.