We Simulated 100,500 Games of Viking Chess — Here's Who Actually Wins

July 4, 2026 · The Viking Chess team

Who wins Viking Chess? It isn’t close

Every asymmetric game invites the same argument. In Hnefatafl and its Tafl cousins, the attackers field twice as many pieces as the defenders — 24 against 12 in the 11×11 game — and they move first. Surely the bigger army has the edge? Players have debated this for as long as the modern reconstructions have existed, usually armed with nothing more than anecdotes.

We decided to stop speculating. We pointed our engine at the question and played 100,500 games.

The short answer: the defenders win. Overwhelmingly. Across all three variants we host — Brandubh, Tablut and Hnefatafl — and at both skill levels we tested, the side with half the material wins the large majority of games that reach a verdict. And on the flagship 11×11 board, most skilled games never reach a verdict at all — which turned out to be the most interesting finding in the whole dataset.

How we ran 100,500 games

Everything below comes from one reproducible run of our Rust engine’s simulation harness. The run is driven by a seeded xorshift random generator (seed 1365367418), so cargo run --release --bin simulate regenerates the exact same statistics file that the table on this page is rendered from. No cherry-picking is possible: the page reads the raw JSON output at build time.

For each of the three variants we played:

  • 33,000 random-vs-random games. Both sides pick uniformly among their legal moves. This measures the structure of the game — what the rules themselves favour, before any skill enters the picture.
  • 500 engine-vs-engine games. Our alpha-beta engine plays both sides, at search depth 4 for Brandubh, depth 3 for Tablut and depth 2 for Hnefatafl (deeper search on the big board is too slow to run in bulk). The first 6 plies of each game are randomized for variety, and after that 1 move in 10 is played as a random exploration move rather than the engine’s choice.

That last detail deserves an honest footnote, because it changed the experiment. The classic Tafl ruleset has no repetition rule, and a fully deterministic engine playing itself will happily build a fortress and shuffle the same pieces back and forth forever. In an earlier pure run — same engine, no exploration moves — all 500 Hnefatafl engine games were still undecided when they hit our 400-ply cap. Not most of them. All of them. Zero finished games. That is itself a data point about the ruleset, and we’ll come back to it below. The 1-in-10 exploration plies exist purely to jolt play out of these loops so that we could measure anything at all.

Two bookkeeping notes. Games that still ran into the 400-ply cap are recorded as “no result” and excluded from the win rates — they are shown in the table because they are part of the story, not a rounding error. And there are no draws otherwise: under the rules our engine plays, a side with no legal move on its turn loses, so every game that ends, ends with a winner.

The results

VariantPlay Defenders winAttackers win Decisive gamesNo resultAvg length
Brandubh Random 99.4% 0.6% 32,735 265 119 moves
Brandubh Skilled (AI) 98.2% 1.8% 500 0 30 moves
Tablut Random 97.9% 2.1% 24,757 8,243 220 moves
Tablut Skilled (AI) 98.8% 1.2% 500 0 26 moves
Hnefatafl Random 96.5% 3.5% 11,015 21,985 265 moves
Hnefatafl Skilled (AI) 72.3% 27.7% 184 316 301 moves

Game lengths are in plies — individual moves by one side, so a 30-ply game is about 15 turns each.

Reading the table, variant by variant

Brandubh (7×7) is a rout. Under random play the defenders win 99.4% of the 32,735 decided games; under engine play they still win 98.2% (491 of 500), and they do it fast — skilled games average just 30 plies, against 119 for random ones. The geometry explains it: 8 attackers must guard four corners on a tiny open board, and the moment the net has one hole, a competent king walks through it. Skill doesn’t rescue the attackers here; it just makes the execution quicker.

Tablut (9×9) tells the same story with a twist. Random play gives the defenders 97.9% of 24,757 decided games, and engine play actually nudges them up to 98.8% — the only variant where skill made the defenders stronger. Notice also the first appearance of the stalling problem: 8,243 random games — a quarter of the run — hit the 400-ply cap without a result, at an average of 220 plies for the games that did finish.

Hnefatafl (11×11) is where the dataset gets genuinely interesting. Under random play the defenders take 96.5% of decided games — but only 11,015 of 33,000 games decided anything. The other 21,985, two-thirds of the run, timed out. Under engine play, even with exploration moves stirring the pot, 316 of 500 games (63.2%) still ended with no result. Of the 184 games that finished, the defenders won 72.3% and the attackers 27.7% — 51 wins, by far the attackers’ best showing anywhere in the data. Skilled Hnefatafl games that did end averaged 301 plies, three-quarters of the way to the cap.

So the flagship board is simultaneously the attackers’ best variant and the one where the game most often refuses to finish.

The games that never end

Why do so many big-board games stall? Because the classic ruleset permits a fortress: the defenders ring their king in a stable shell, the attackers settle into a blockade, and — with no repetition rule and no draw mechanism — neither side has any obligation to break the symmetry. Random players stumble into these deadlocks by accident; a depth-limited engine, seeing no line that improves its position, maintains them on purpose. Recall the pure self-play run where literally every Hnefatafl game cycled forever.

This is not a quirk of our engine. It is the well-known historical problem with reconstructed Tafl rules, showing up on cue in the data: the larger the board, the more room there is for a stable siege, and 11×11 gives both sides enough space to dig in indefinitely. Modern Tafl communities typically patch this with repetition rules and encirclement wins — our implementation doesn’t have those yet, and we explain exactly what it does and doesn’t include in the rules behind our AI.

What it means when you sit down to play

Taken together, the data says the classic ruleset is heavily defender-favoured at every skill level we measured. The usual caveats apply: a depth-limited engine is not perfect play, the depths differ per variant, and the exploration moves add noise. A deeper attacker might find breakthroughs our depth-2 search on 11×11 cannot see. But the direction of the result is emphatic and consistent across 100,500 games, and it agrees with what the historical debate has long suspected.

Practically:

  • Want to win? Take the defenders. The escape geometry — one king, four corners, an army that can’t cover them all — is simply on your side.
  • Want a challenge? Take the attackers. Especially on the 11×11 board, where skilled attackers won 27.7% of decided games in our data. Every attacker win is earned.
  • Want short, decisive games? Play Brandubh. Skilled games averaged 30 plies and none of the 500 timed out.

If you’re taking the defenders’ side, our guide to opening moves that actually win games covers how to convert that structural edge.

Test it yourself

The numbers above are the average over thousands of games — your game is a sample size of one. Play Viking Chess in your browser and see whether you can beat the trend from the attackers’ chair, or read exactly which rules our engine plays and why before you sit down.

Play Viking Chess free →