Some bots use viruses as part of their code, for example Commander Keen's PV:
cond
start
*.thisgene .mkvirus store
.vshoot inc
300 .aimdx store
50 .repro store
0 .delgene store
1 .sharenrg store
.tie inc
stop
These viruses are efficient, as it covers a lot of vital functions, and the suicidal ones, like 50 .repro store, can be cancelled by a gene following it with 0 .repro store in it.
How do you stop bots like these infecting themselves after this inhibitor gene, cancelling it out, AND not destroy any vital genes in the process?
Edit => my first though was to the condition:
*42 0 =
and add this line to the gene:
42 inc
But that is fragile if the bot it infects stores over position 42.