1 Game Model
This chapter establishes the formal model of 2-player Caverna as a finite extensive-form game. We define the core types (resources, animals, crops, weapons, dwarfs), the player state, the board geometry, and the game state machine.
1.1 Core types
The game has seven resource types (wood, stone, ore, gold, grain, vegetables, food), four animal types (dogs, sheep, wild boar, cattle, where dogs are non-farm animals), and two crop types (grain, vegetables).
A weapon has integer strength in \([1,14]\). A dwarf optionally carries a weapon. Each player begins with \(2\) dwarfs (Definition 1.4).
A player state tracks: the list of dwarfs, resource supplies (wood, stone, ore, gold, grain, vegetables, food, rubies), animal counts, board tile placements (mountain spaces, forest spaces, meadows, fields, pastures, mines), installed furnishing tiles, and accumulated begging markers.
Each player starts with \(2\) unarmed dwarfs. Player 1 receives \(1\) food; Player 2 receives \(2\) food. All other resources and animals start at zero. The initial dwarf count is \(\text{initialDwarfCount} = 2\).
1.2 Game structure
The game has \(24\) action spaces. Thirteen are available from round 1 (preprinted); the rest are revealed one per round. Each space can be occupied by at most one dwarf per round.
In the 2-player game, harvests occur on a fixed schedule across 12 rounds. Round 3 always triggers a normal harvest (Theorem 7.4). A normal harvest consists of three sub-phases in this order: the field phase (each sown field yields one of its crop), the feeding phase, and the breeding phase (each animal type with at least two members produces one offspring if the player has room).
In the feeding phase a player must pay the feeding cost (two food per adult dwarf, one per offspring). The rules let the player convert any subset of their grain, vegetables, sheep, donkeys, wild boars, cattle, rubies, and gold into food at the rates of Definition 3.1 and Definition 3.5. Conversion is optional: a player may decline to convert any goods and instead accept one begging marker per missing food, even when convertible goods are on hand. A feeding plan records the chosen conversions, and the labelled transition system quantifies over all valid plans (each conversion bounded by the goods owned).
\(\text{totalBoardSpaces} = 24\).
By computation.