Code center > Darwinbots3
DB3 Questions
Numsgil:
Possibly. Can you think of a really compelling use case for something like that?
bacillus:
I was just thinking of most real-life organisms using a chemical gradient to differentiate cells. I also picture a multibot plant that when attacked produces a chemical that quickly transfers through the entire organism, instead of having to send a message one tie at a time.
Another way to solve this which would also help in many more situations would be to make .readtie a command rather than a variable - this way, multiple ties can be manipulated over one cycle. For a more complex organism, chemical gradient would still be the best way to go for reflex responses that have to act rapidly.
Houshalter:
Thats an awesome idea, making .readtie a command. That would solve alot of tie communication problems. May I suggest that it be easier to write and read on the tin/tout sysvars also. You could have a .tout command/sysvar that writes to the .toutx of the tie specified on the top of the stack. It would also be nice to have a .tin command to because you can write to the number specified on top of the stack but you can't exactly read from it, instead you have to have seprate "*" symbol for each sysvar you plan to read from. Maybe a read command would be a good idea because we already have a store command. Is this to radical for DB3?
Numsgil:
I was planning on something like that. I haven't worked through the details, but basically when you're connected to another bot (not using ties, but using "joints", for lack of a better word) you have access to their entire memory structure and can read and write to it. There's some special code right now that will queue any changes a bot wants to make to another's memory so that there aren't any issues with which bot was executed first.
We might also be able to do something like "port forwarding". Any memory values written to a specific location get broadcast to other connected bots in the same cycle. So there wouldn't be a cycle lag for each step in a multibot. I'd have to play with it a bit, though, to make sure impulses can't travel too quickly. And I'm not quite sure how it would get set by bots in their DNA. Maybe bots register codules for events like "something was written to location 459". I'm probably doing something similar for vision anyway.
Houshalter:
In real life cells first evolved chemical signals to communicate. Each cell waits till it recieves enough of a certain chemecal or combination of chemicals to reach a threshold then it sends out more chemicals and the proccess continues. This is like what we have now, each bot in a multibot has to communicate with the cells around it one cycle and then wait till the next cycle to communicate with more cells around it. Then evolved the ability to send electrical impulses and suddenly brains were possible. Immagine if you had to wait minutes, even seconds for information from your eyes to go through you brain and then go to your muscles. You wouldn't be able to react to anything! I like this idea of impulses because with well written code, the sky is the limit for what multibots can do.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version