Officers defend a fortress against a siege of soldiers. Asymmetric Victorian-era game where a small defending force (the Officers) holds off a larger attacking force (the Soldiers) on a fortress-and-plain board.
Every rule of Asalto below is frontmatter in the rules corpus, played by the hop plugin. The board beside each is the game itself, live.
Asymmetric siege game. Officers jump to capture (like draughts); Soldiers advance forward or sideways without jumping. Soldiers win by immobilizing; Officers win by reducing the Soldier force below the critical threshold.
engine:
topology:
type: graph
structure: grid-cross
params:
rows:
- [2, 3, 4]
- [2, 3, 4]
- [0, 1, 2, 3, 4, 5, 6]
- [0, 1, 2, 3, 4, 5, 6]
- [0, 1, 2, 3, 4, 5, 6]
- [2, 3, 4]
- [2, 3, 4]
fortressRows: 2
fortressExtraRow: 2
fortressCols: [2, 3, 4]
diagonals: true
players: [officers, soldiers]
plugin: hop
plugins:
asalto:
goals:
- []
- [n1, n2, n3, n4, n5, n6, n9, n10, n11]
fewerThan: [0, 9]
seats:
# …
Asalto (Standard)
Extended Asalto variant. Three Officers defend a larger fortress against 50 Soldiers. Mechanics identical to Standard Asalto; scale increases strategic complexity.
engine:
topology:
type: graph
structure: grid-cross
params:
rows:
- [2, 3, 4, 5, 6]
- [2, 3, 4, 5, 6]
- [0, 1, 2, 3, 4, 5, 6, 7, 8]
- [0, 1, 2, 3, 4, 5, 6, 7, 8]
- [0, 1, 2, 3, 4, 5, 6, 7, 8]
- [0, 1, 2, 3, 4, 5, 6, 7, 8]
- [0, 1, 2, 3, 4, 5, 6, 7, 8]
- [2, 3, 4, 5, 6]
- [2, 3, 4, 5, 6]
fortressRows: 2
fortressCols: [2, 3, 4, 5, 6]
fortressExtraRow: 2
extraNodes:
- row: 0
col: 1
fortress: true
connectsTo:
- [0, 2]
- [1, 2]
- row: 0
# …
Royal Garrison
Every Asalto variant is playable against the AI or another player.