Bots and Simulations > Tips and Tricks

Control Genes

(1/2) > >>

Endy:
Figured out we can make fairly extensive ctrl genes now. We just store an activation number into a location then readback that location and mult appropiate portions of a condition with it.


--- Code: ---cond
*.eye5 0 =
*.nrg 100 <
start
0 50 store
stop

cond
*.eye5 0 >
*50 0 =
start
1 50 store
stop

cond
*.eye5 *50 mult 0 =
start
314 rnd .aimdx store
stop
--- End code ---

Advanced Conspec Recognition on the cheap :)
Checks: refup, refdn, refsx, refdx, refeye, refshoot, refaimdx, refaimsx
Only thing I couldn't use was refties/myties. The numbers just didn't work out right.


--- Code: ---cond
'Gene should allow bot to test amongst 8 different refs/myvars randomly
.refup 7 rnd add * .myup 7 rnd add * !=
*.eye5 37 >
start
-1 .shoot store
stop
--- End code ---

Light:
The only problem I see with this is that it is vunerable to viruses, but a neat idea  ;)

Numsgil:
Most techniques are vulnerable to viruses I think ;)

Looks pretty cool.  If you could find a way to combine 1 and 2nd gene into one, then it'd be even better.  (hint: use the new 'else' flow command.)

Endy:
Actually the second is a bit messed up...I forgot that x rnd wouldn't be necessarily the same. Maybe use the timer and a store/inc series to make it work. :redface:

We actually can do more with these ctrl genes than I originally thought. Instead of just setting a condition they can actually change the conditions themselves to varying degrees.

True Stemcell Bots
Situational Awareness

The Stemcell Bots would use epigenics to control phenotype expression. The epigenic loc would modify the conditions and activations by activating/de-activating or modifying whole genes.

For situational awareness the bots could modify the genes based on external situations. If it saw an enemy for instance it could activate it's own defensive genes. Or to behave like a spoor simply shut all the genes down, except for a random checker gene.

A few oddball things you can do with this is a version of Non-Deteministic gene flow and self modify a bot's behavior based on the mode it's in. A modification from F1 to F2, for example, would de-activate all the TF genes a bot has.

Small Example:

--- Code: ---cond
*.refeye *.myeye !=
*.eye5 0 >
*.refeye 0 !=
start
1 971 store
stop

cond
*.poison 100 *971 mult <
start
100 *.poison sub 2 div .strpoison *971 mult store
stop
--- End code ---

I feel like DB is definitly getting closer to the goal with impressive dna abilities like this. Programming is getting realistically complex, I think DB has actually surpassed VB in some ways.

I'll see about posting up a wiki, with all this explained and some more examples.

Endy:
For those of you designing spin-offs, I'd recommend keeping/adding the newer dna ctrls. Using math in conditions could always be done in essence by setting up your values in previous gene. The new * is extremly useful since it allows changable conditional values.

Navigation

[0] Message Index

[#] Next page

Go to full version