Character | Behavior |
+ | Turn right 45 degrees |
- | Turn left 45 degrees |
* | Turn right 90 degrees |
/ | Turn left 90 degrees |
. | Go straight |
! | Reverse |
= | Fork current ant, with the existing one continuing straight and the new one going in reverse |
< | Fork current ant, with the existing one turning left 45 degrees and the new one turning right 45 degrees |
> | Fork current ant, with the existing one turning left 135 degrees and the new one turning right 135 degrees |
@ | If there are multiple ants, kill the one that hits this command; if not, the ant goes straight |
~ | If there are multiple ants, kill all but the one that hits this command |
$ | Increments the current color |
^ | Decrements the current color |
0 | Sets the wrap mode to square (default) |
# | Sets the wrap mode to octagon |
m | Sets the wrap mode to reverse (ants reverse course when hitting a side) |
_ | Switches to cartesian mode (default) |
& | Switches to polar mode |
\ | Toggles between polar and cartesian modes |
? | Repeats the last command the ant used (if multiple repeats are hit in a row, they execute the same command) |
v | Toggles visibility of the ant |
p | Hits the 3 points mirrored around your current point (mirror x, y, x and y) |
f | Forks to the 3 points mirrored around your current point (mirror x, y, x and y) |
P | Hits the 7 points mirrored around your current point (45 degree equivalent of p) |
F | Forks to the 7 points mirrored around your current point (45 degree equivalent of f) |
i | Inverts the behavior of the ant -- rather than incrementing cells, it decrements them |
g | Executes the following command if the current cell's value is greater than the average of the neighborhood (the 9 cells around and including itself) |
l | Executes the following command if the current cell's value is less than the average of the neighborhood (the 9 cells around and including itself) |
e | Executes the following command if the current cell's value is equal to the average of the neighborhood (the 9 cells around and including itself) |
{.....} | Executes everything within the braces as a single command (thus it's assigned to one cell) |
w | Sets the background to white and turns off blending mode (only executed at initialization) |
W | Sets the background to white and turns on blending mode (only executed at initialization) |
b | Sets the background to black and turns off blending mode (only executed at initialization) |
B | Sets the background to black and turns on blending mode (only executed at initialization) |
dX | Changes the direction of the cell the ant is on, based on the value of X (+ - * / ! are all valid). This is cumulative and applied to ants that walk onto the cell |
n | Sets the current cell to 0 |
N | Sets the current cell to the max value |
a | Sets all cells occupied by ants to the value of the current cell |
o | Forks to all of the neighboring cells, setting their direction such that they're facing away from the current cell |
1 | Executes the following command only once. Future hits on this command do nothing |
r | Executes the following command only once per ant. Future hits on this command do nothing |
x | Executes the following command only if there is one ant active |
X | Executes the following command only if there are more than one ants active |
s | Suspends execution of ants other than the current ant until unsuspended by 'S' or 'u' |
S | Toggles suspension |
u | Disables suspension |
t | Sets the teleportation point for the current ant. Note: This is propagated to ants forked from this one |
T | Teleports to the teleportation point for the current ant, if it's set |
7 | Teleports to the teleportation point for the current ant, if it's set, and sets the teleportation point to the previous location of the ant |
z | Executes the following command if suspension is disabled |
Z | Executes the following command if suspension is enabled |