Difference between revisions of "Conspec recognition"

From WikiManual
Jump to: navigation, search
Line 16: Line 16:
 
'''Example:'''
 
'''Example:'''
 
'''Step 1'''-Initialize IO port
 
'''Step 1'''-Initialize IO port
''cond
+
cond
 
  *.robage 0 =
 
  *.robage 0 =
 
  start
 
  start
 
  100 .out1 store
 
  100 .out1 store
  stop''
+
  stop
 
'''Step 1'''-Check In against out. note that if nothing is visible, the in values default to 0, which might screw up bot behaviour. It's usually best to add '''*.eye5 0 !=''' to be sure.
 
'''Step 1'''-Check In against out. note that if nothing is visible, the in values default to 0, which might screw up bot behaviour. It's usually best to add '''*.eye5 0 !=''' to be sure.
  
''cond
+
cond
 
  *.in1 *.out1 !=
 
  *.in1 *.out1 !=
 
  start
 
  start
  ...''
+
  ...
  
 
== [[Memloc and Memval]] ==
 
== [[Memloc and Memval]] ==

Revision as of 22:24, 6 October 2008

Bots use various methods to identify others of their species.

In and Out

Bots can use the numbers stored in in/out to identify conspecs.

Advantages:

- Easy to implement

Disadvantages:

- Very, very easily fooled


Example: Step 1-Initialize IO port cond

*.robage 0 =
start
100 .out1 store
stop

Step 1-Check In against out. note that if nothing is visible, the in values default to 0, which might screw up bot behaviour. It's usually best to add *.eye5 0 != to be sure.

cond
*.in1 *.out1 !=
start
...

Memloc and Memval

Bots can use Memloc and Memval to read a location in another bot's memory. This can be used for conspec recognition.

Advantages:

- More secure than In and Out

Disdvantages:

- Can be fooled


Refeye and Myeye

By far the most popular form of conspec recognition.

Advantages:

- Can't be tricked passively

Disdvantages:

- Can be tricked if .myeye is altered by an info shot, venom or a virus


Other RefVars

Other RefVars such as .refshoot can be used to identify members of your species too.

Advantages:

- Can't be tricked passively

- Rarer than Refeye and Myeye and so less likely to be targeted

Disdvantages:

- Most bots may only have one instance of the command in their DNA


Other

Some other forms of conspec recognition have been thought up, but most are very impractical.