DNA Edit

Overview Edit

DNA in Evolution is represented by numerical values which are assigned to various variables. The DNA can currently only be directly view and also directly modified in the Laboratory mode, by expanding the Creature Details panel (select Creature -> R key). Expanding the Creature Details panel a second time exposes the resulting charaistics and behavoral statements.

Example Edit

Sig A Val A Sig B Val B Comp Action Act V1 Act V2
Cell 0 0 20 1 10 2 4 210 255

Translates into behavioral statement: IF Health > 20 AND Energy > 10 THEN Move random

Editing DNA Edit

Signals - Sig A & Sig B columns Edit

Many of the functions of various signal coding are still unknown and being determined. The first 13 signal values (starting from 0) correspond to;

0 Health

1 Energy

2 Health

3 Any Cell

4 My Species

5 Attack

6 Defence

7 Storage

8 Speed

9 Sensor

10 Wall

11 Food

12 Food (any)

Values - Val A & Val B columns Edit

These value columns directly correspond to the values used in conjunction with a Signal value. I.E. 1=1, 255=255

Comp Edit

The composition value regulates how the Signal conditions are used. Either Signal condition A can be used by itself, Signal condition B by itself, or both conditions can be used with either AND or OR logic.

0 Signal condition A (only)

1 Signal condition B (only)


3 OR

This pattern then repeats for all Comp values up to 255

Action Edit

The Action value controls which action is taken if the conditions are met.

0 Move relative to target A x: Y:

1 Move relative to target B x: Y:

2 Move relative to Self x: Y:

3 Move relative to Cell_0 x: Y:

4 Move random

5 Extend joint

6 Set Signal

This pattern repeats for the remaining 255 values.

The x & y values for the relative movement actions are set by the Act V1 & Act V2 columns. The Set Signal action uses the value from Act V1 to work out which Signal to set (Conjecture: Act V2 sets the value that the Signal is set to?)

Act V1 & Act V2 Edit

These values are used in conjunction with some Actions.

When used with a relative move action, values between 0 and 200 provide between -0.5 and 0.5,

at increments of 0.005. Values 201 to 255 match specifically to 1, -1 and 0, in blocks (see legend below)

0 -0.5

1 -0.495


99 -0.005

100 0

101 0.005


199 0.0495

200 0.5

201 to 210 1

211 to 220 -1

221 to 255 0