Bots and Simulations > F2 bots
Brevis (SS) (F2) (Moonfisher) 22-03-08
abyaly:
--- Quote from: EricL ---I want to confirm you are using 2.43.1d, right?
--- End quote ---
Right.
Numsgil:
--- Quote from: bacillus ---Thanks Numsgil, all I needed to get me going.
--- End quote ---
My pleasure
I tried to make a SS animal minimalis using that method, actually. I got one condition working, but it's a huge pain to have multiple conditions working at once. Best of luck!
Moonfisher:
I guess I'll try IM now and then to see if I can catch others online... I thought there where some servers running it all the time...
Maybe try to make a good evo bot... something using .sexrepro... although I'm not even sure if it works, in the doc it doesn't say much except that theres problems with it and it's been disabled...
I also noticed a mem loc called .fertilized in an evo sim... but I can't find anny doc on it, I'm guessing maybe it's an old value related to .sexrepro that's no longer required ?
Also... I made some SS viruses
Not worth much in the SS legue.
Maybe if you added some reproduction to the last one ... its in memloc 300 so not too far away, could be combined with fdbody (313)... like randomly deduct up to 3 times 13 when body is big... or something like that... maybe a litle spread would also help... but the virus would get rather long that way... it would also need a key to make sure it kills newly infected bots after deleting it's gene. I guess it could work... but didn't want to make a long SS bot... the idea was to make them as short as possible...
Didn't realy feel they deserved a topic... but wanted to show 'em
[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
' Minimum SS virus
' Obviously not very effective
'20 rnd 335 3 rnd add store
' Bare minimum SS virus
' Doesn't try to harm the host
'1 99 *.vtimer mult add 335 *.vtimer 3 mult add store
' Short SS virus
' Bot dies if infected by own virus
'*.thisgene *.dnalen 21 sub abs *.nrg 30 div mult *.vtimer sgn mult add 335 *.vtimer sgn 3 mult add store
' Fairly short SS virus
' Only works on 1G bots
' Deletes the other gene and spreads
'1 *.nrg 5 div *.vtimer sgn mult add *.genes - 2 add mult *.genes ++ *.thisgene sub *.genes -- sgn mult add 340 *.genes - 2 add 2 mult sub *.vtimer -- - 0 floor *.genes -- sub 3 mult sub store
Numsgil:
Eric has just recently played around and got sexrepro sort of working again. Check out his change logs for the buddy drops, I think there should be a mention of it in there. Which makes the docs almost obsolete (a formal release would probably make it official). So feel free if you have the inclination to update the pages on sexrepro to reflect recent changes.
EricL:
.sexrepro works perfectly to my knowledge as of 2.43.1. The topic disucssing it is here. Be sure to read the whole topic or skip ahead to the bottom of the second page of posts where I summarize how it works.. The discussion in the first dozen posts changed the design.
I would be very grateful to anybody who spends time updating the wiki...
EDIT: Here is the meat of the post:
Bots can now shoot -8 sperm shots. There is no cost for this beyond the normal shot cost. The shooter's DNA is copied to the shot (like with viruses). .shootval operates the same way as for other shots.
If a sperm shot impacts a bot, it fertilizes it (shell, etc. has no effect on sperm shots). That is, the sperm DNA is copied to an internal buffer on the impacted bot. Note that the father need no longer be alive at impact time to father offspring. Once sperm is fired, the father is out of the loop.
Currently, bots remain fertilized for 10 cycles. We can change this easily down the road, but it's 10 for now. A new sysvar .fertilized (303) counts down the cycles remaining until the bot is no longer fertilized. If the bot gets shot with another sperm shot while fertilized, that DNA replaces the previous DNA and the .fertilization counter gets set to 10 again.
If a bot sets .sexrepro to a postive value not a multiple of 100 while fertilized, it will sexually reproduce (subject to the normal reproduction constraints w.r.t. body, space and vegginess) giving the offspring the specified percentage of it's resources.
For this version, the crossover variables mentioned in Num's algorithm are internal as follows. The minimum sequence length to match is fixed at 3 base pairs. The maximum number of crossover points is determined by taking the length of the shorter parent's DNA and dividing by 10.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version