Bots and Simulations > DNA - General
Hivebot communication
Elite:
This is the *official* thread of hivebot's .out/.in communication systems, the Keepers' information gathering and (x, y) location stuff.
All bots should 'report in' at the hive to see a Keeper/Queen periodically so information will get to all the bots via .in/.out eventually. That's partially the reason for the hive concept - somewhere lots of bots can congregate to swap info.
We need quite advanced communication methods for the bots to be able to relay coordinates and 'explainations' to each other.
I was thinking:
The bots could use a 'tree' method. How you interpret the next .in depends on the previous .in - anyone get that? So .in1 could tell the bots wether the message is about pray, threats, hive location etc. and they could interpret .in2-5 based on that.
... just an idea
Even if you don't understand a word I'm saying :D feel free to play around with ideas relating to those sections of the code here.
I bet lots of you that say you can't program bots very well have some good ideas anyway (If you think of something good, then we'll program it for you)
Old Henk:
I suggest that the 'normal' hibernating bots all tie together, so that a wake-up call can be distributed quickly through the hive via a chain reaction.
A suggestion:
Keepercode:
--- Code: ---cond[I]
I see something is wrong and
I see one of the hybernating bots[/I]
start
50 .shoot store
1 .shootval store
stop
etc.
--- End code ---
Normal bot code:
--- Code: ---cond
[I]I'm in hybernating mode[/I]
*50 1 =
start
*.robage 40 store
1 .tienum store (assuming that's the tie phase)
50 .tieloc store
1 .tieval store
stop
cond
*40 10 add *.robage =
start
1 .deltie store
[I]goto battle mode[/I]
stop
--- End code ---
What'ya think?
Elite:
Hey, brilliant idea :D
A bot going to hibernate could just tie on to the 'Hibernator blob' and fix. Then they can be woken up nearly instantaniously and can respond rapidly to a call to feed.
Also, If any one hibernating bot were attacked they could wake up the rest of the species.
And the bots could share nrg and even put one or two veggies in the 'Hibernator blob' to keep the hibernating bots from loosing too much nrg during hibernation and reduce the need for complex SG hibernation coding that avoids conditions.
Great! Thanks a lot for that!
Once we've got the hive location code sorted I'll try to code it.
Keep those ideas coming :D This is exactly what I got you all involved for.
Any progress with Pray Species Henk?
Old Henk:
Not yet, to busy with annoying my brother and his girlfirend and beating 'em at Age of Empires. I'll get to it soon :)
abyaly:
Since comminicating with a series of in's and out's will take a lot of time (I estimate 3+ cycles per conversation?) it might be better to assign each command a bot might need to deal with to a particular in/out slot and value. Since this will mean multiple commands will be assigned to the same communication frequency, there should be a heirarchy of command importance. That is, the higher number command will overwrite the lower number command, but the lower level command will not overwrite the higher command. In addition to this, we want every drone that recieves the order to relay it to other drones. This can be done by copying the recieved value into it's own .out.
So, for example, a drone sees a conspec with 10 stored in in/out1. Suppose this is the hibernation command. It then copies that value into its own out1 and starts a 'countdown' until it goes to hibernate. It stops eating food, but it wanders around until that countdown expires so that other drones can see the command displayed.
When the keeper sees a drone that has not recieved a necessary message (which it can tell, based on the value it displays), it will approach and fire an info shot forcing the drone to look at the keeper. The drone then put's the keeper's command on display so that other drones who happen to see it will do the same.
Since this system requires a heirarchal command system, one of the following should happen:
1. The commands continue to escalate until hibernation, during which time they are set to zero.
2. There is a command to change from using frequency 1 to frequency 2 or 5 or etc. These cycle around infrequently enough that there arent any 'loops' in communication.
3. Drones periodically return to the hive to have their frequency changed. The hive gives the wraith instructions on when to return again. This isnt good because it is slow.
I suppose there are other ways to make this work, but I haven't thought of them.
Navigation
[0] Message Index
[#] Next page
Go to full version