Strategy encyclopaedia
AI notice: This text is created with the support of AI systems; it is reviewed editorially and taken responsibility for before publication.
This page describes each strategy class in detail: how it is built, what it beats, what beats it — and which of that is measured rather than handed down.
A narrative introduction to the same classes is in the learning path under The strategy classes. This page goes into detail.
The matchups
The basis is the class matrix of the Koenigstuhl field: 349,866 pairings of 1000 rounds each between 837 warriors whose class could be determined reliably from their authors' own strategy notes.
Each cell is the mean score of the row class against the column class. Above 150 means an advantage, below 150 a disadvantage.
| against → | paper | stone | scanner | clear | oneshot | imp | vampire |
|---|---|---|---|---|---|---|---|
| paper | 117.7 | 152.6 | 142.6 | 154.5 | 114.9 | 138.4 | 173.7 |
| stone | 107.3 | 136.7 | 144.6 | 158.2 | 130.6 | 137.0 | 153.6 |
| scanner | 134.4 | 139.9 | 145.1 | 165.8 | 143.3 | 166.9 | 150.1 |
| clear | 118.9 | 123.9 | 123.5 | 144.1 | 122.8 | 145.8 | 133.3 |
| oneshot | 158.8 | 152.1 | 149.7 | 169.7 | 148.9 | 170.2 | 163.8 |
| imp | 102.4 | 127.4 | 112.6 | 130.0 | 108.5 | 125.6 | 135.4 |
| vampire | 98.8 | 124.5 | 134.9 | 150.0 | 124.6 | 138.0 | 139.7 |
Three things stand out immediately:
The oneshot row has no weakness at all. It sits above the mean against every class. That comes with a caveat — see oneshot.
The diagonal lies below 150 almost everywhere. A class against itself produces many ties. Most pronounced with paper against paper (117.7): two populations that cannot exterminate each other.
The classic rock-paper-scissors now holds on only one edge. Scanner beats paper is false today, stone beats scanner is nearly even. Why, see hybrids.
The classes
Stone
Principle: scatter bombs without searching.
A stone throws DAT instructions through the core at regular intervals. It does
not know where the opponent is and does not need to — it simply covers the whole
memory until the other one walks into it.
step EQU 2667
start ADD.AB #step, $bomb
MOV.I $bomb, @bomb
JMP.A $start
bomb DAT.F #0, #0
The step size is the real craft. It must satisfy two conditions: small enough not to skip over a warrior, and chosen so the pointer covers the core evenly instead of circling in a small region. Because everything is computed modulo the core size, this depends on the greatest common divisor of step size and core size.
The classic step size is 2667 — roughly a third of 8000, coprime to it, and thus a coverage that reaches widely separated regions quickly.
Strengths: at full effect immediately, tiny, ideal as the second component of a hybrid. Weaknesses: blind against replicators that create copies faster than it can hit them — only 107.3 against paper, the worst value in its row.
Beware of self-destruction: with an unfortunate step size the bomb pointer eventually hits the warrior's own code. A dwarf with step size 6 therefore loses 656 out of 2000 rounds against an opponent that cannot kill it at all. Details in the learning path under Your first warrior.
Paper
Principle: reproduce faster than the opponent can destroy.
A paper copies itself to new locations and starts further processes there. It does not attack. It becomes a population that can no longer be caught in full.
The most widespread construction is silk. Its trick: it starts the new process at the target address before the copy is even finished. Every process passing through then copies one more cell — reproduction runs in parallel rather than sequentially.
ORG boot
boot SPL 1, 0 ; 1 process -> 2
SPL 1, 0 ; 2 -> 4
silk1 SPL @0, }2143 ; child waits at the target address
MOV }-1, >-1 ; copies one cell towards the target
silk2 SPL @0, }5227 ; second stage, different distance
MOV }-1, >-1
MOV bomb, }2667 ; a bomb in passing
bomb DAT <5334, >667
Note the double duty: the fields of the SPL line are simultaneously the copy
pointers of the line below. Two stages with different distances spread the copies
across the whole core in a tree pattern.
This example is runnable and verified against the engine — it is the teaching warrior that takes first place in the tournament further down.
Strengths: the best value against vampires in the entire matrix (173.7) and a clear advantage over stone (152.6). Very robust — a hit removes a copy, not the warrior. Weaknesses: only 117.7 against other papers (a sea of ties) and inferior to oneshots (114.9).
Anti-imp capability is mandatory. A pure paper cannot kill an imp — it runs straight through the copies. Modern papers therefore carry a small countermeasure, usually a gate or a targeted bomb.
Scanner
Principle: find the opponent, then strike precisely.
A scanner compares two locations in the core. Because empty core looks identical everywhere, a difference means somebody is there.
; sketch — not runnable, ptr and found are undefined here
dist EQU 100
scan SEQ.I $ptr, $ptr+dist
JMP.A $found
ADD.AB #dist, $ptr
JMP.A $scan
A complete, runnable scanner is in the example corpus as lehrscanner.red.
Strengths: the best value against imps (166.9) and clears (165.8). Strikes precisely instead of scattering. Weaknesses: loses to paper (134.4) — contradicting the folklore, see hybrids. And it is slow: while it searches, it does nothing.
Two blindnesses worth knowing. A scanner comparing only B-fields overlooks opponents whose B-fields happen to match. And a scanner with a fixed grid is blind to anything between its probe points or anything moving faster than it probes — which is why imps do so well against some scanners.
A quickscanner is not a warrior of its own but an opening: a few widely
spaced probe points in the very first cycles. If it hits, the battle is decided
before the opponent runs. If it misses, the warrior switches to its actual
strategy. Hence the notation qscan -> something in many strategy notes.
Oneshot
Principle: search once thoroughly, then stake everything on one hit.
A oneshot does not scan continuously but once — and carefully. If it finds the opponent, a devastating attack follows. If not, it falls back on an evasive strategy, often a clear or an imp.
Strengths: the only row in the matrix without a weakness. 158.8 against paper, 169.7 against clear, 170.2 against imp.
And the necessary caveat: the oneshots in the Koenigstuhl field are also its elite — best average hill score, best median rank of all classes. So the matrix measures these oneshots, not the class as an idea. Oneshots leading does not mean a home-built oneshot will win. It means good authors chose this construction.
Imp
Principle: copy yourself forward and run after the copy.
MOV.I $0, $1
The imp cannot win — it writes only MOV instructions, and nobody dies on
those. It can only survive.
In pure form it is weak: the worst row in the matrix after clear, only 102.4 against paper. As a component it is valuable: almost every top warrior carries an imp as a fallback. If the main body dies, the imp keeps running and salvages the tie — and a tie is worth a third of a win.
An imp ring distributes several imps evenly across the core so they repair each other. That is considerably more robust than a single imp; in the controlled tournament below, the ring beats both bombers.
A gate is the countermeasure: a cell that catches the imp as it passes. Anyone hoping to survive imp rings needs one.
Vampire
Principle: capture enemy processes instead of killing them.
A vampire bombs with JMP instructions pointing into a pit inside its own code.
An enemy process running onto one is not terminated but redirected and works
uselessly in the pit from then on.
Strengths: elegant against warriors with few processes. Weaknesses: the sharpest edge in the whole matrix — only 98.8 against paper, that is −75 points. You cannot enslave faster than the opponent creates new processes.
That is why vampires are rare today: they are structurally hopeless against the most common class in the field.
Clear
Principle: overwrite everything without aiming.
A core clear runs systematically through memory and overwrites every cell.
Usually alternating SPL and DAT so that processes not currently standing
there also get caught.
; sketch — not runnable, bomb, ptr and count are missing
clear MOV.I $bomb, >ptr
DJN.F $clear, <count
Complete as lehrclear.red in the example corpus.
In pure form the weakest class — the worst row in the matrix. A clear takes a long time and tells the opponent where it is by its trail.
As an endgame it is standard. After a successful scan the warrior roughly knows where the opponent lies; area overwriting is then the surest way to be rid of it. Almost every scanner and every oneshot ends in a clear.
Hybrids
And here the most important insight on this page.
Pure forms are teaching models. What wins on hills are hybrids. The most common combination in the field is paper with stone — a replicator that bombs on the side. Compared against the pure forms, facing the same opponent classes:
| against | paper+stone | pure paper | pure stone |
|---|---|---|---|
| paper | 125.2 | 112.8 | 87.4 |
| stone | 166.6 | 148.4 | 122.1 |
| scanner | 161.9 | 133.4 | 132.6 |
| Overall | 149.4 | 130.6 | 114.1 |
The hybrid wins in every single column, not merely on average.
This also explains why the old rock-paper-scissors no longer holds: when the matrix says "paper beats scanner", "paper" overwhelmingly means hybrids. Their anti-scanner strength comes from the stone components. The folklore describes pure forms that barely exist in the field any more.
For your own construction that means: the question is not "which class" but "which two, and how do I combine them". Common combinations are paper+stone, stone+imp, scanner+clear — and practically always a quickscanner as an opening.
A controlled experiment
The matrix above measures the real field, with all the imbalances a grown field carries. As a complement, a clean counterpart: ten purpose-written teaching warriors, one per class, all in the same style and none tuned for strength. Each against each, 2000 rounds per pairing:
| Rank | Warrior | Score |
|---|---|---|
| 1 | Teaching paper | 231.5 |
| 2 | Mice (replicator archetype, 1986) | 208.8 |
| 3 | Teaching imp ring | 170.2 |
| 4 | Teaching clear | 148.3 |
| 5 | Teaching quickscanner | 118.7 |
| 6 | Teaching stone | 116.1 |
| 7 | Dwarf (bomber archetype, 1984) | 114.5 |
| 8 | Teaching vampire | 74.4 |
| 9 | Imp | 72.5 |
| 10 | Teaching scanner | 60.7 |
How reliable is this order? The gap between ranks 5, 6 and 7 is under three points — that is within measurement uncertainty, and those three are not distinguishable. The same tournament over only 200 rounds even had the teaching stone and the dwarf exactly level. The gaps at the top and bottom, by contrast, are unambiguous. Why that is, see Testing your own ideas.
Three observations from it:
The field is paper-heavy — deliberately. The hard anti-paper weapons (SPL
carpets, gates) are intentionally absent from these teaching warriors. That is
precisely why the tournament shows so clearly what replication achieves when
nobody fights it specifically.
Repair beats speed. The teaching stone loses to the imp ring even though it carries an anti-imp bomb: the ring repairs itself faster than the stone destroys.
A B-field scanner is imp-blind by construction. The teaching scanner comes last because its grid systematically overlooks imps — not an implementation flaw but a property of the approach.
Both of those last points are also noted in the teaching warriors' own source comments. They argue against our own examples and stay in anyway — measuring rather than glossing applies to us too.
Related pages
- The strategy classes — the narrative introduction
- Instruction set — all 16 opcodes
- Testing your own ideas — why measured differences deceive