Optimal Play in Caverna: A Formal Proof of Weak Dominance

7 Strategy Archetypes

We identify \(8\) canonical strategy archetypes that span the viable play space. These form the rows and columns of the payoff matrix analyzed in subsequent chapters.

7.1 Archetype definitions

Definition 7.1 Strategy archetypes

The \(8\) archetypes are:

  1. FurnRush (furnishing rush): maximize furnishing bonus points.

  2. WeapRush (weapon rush): forge early, exploit expeditions.

  3. PeaceFarm (peaceful farming): grain/vegetable engine.

  4. MineHeavy (mining heavy): ore and ruby mines.

  5. AnimHusb (animal husbandry): large pastures, breeding.

  6. RubyEcon (ruby economy): ruby mining and conversion.

  7. PeaceCave (peaceful cave engine): peaceful interior development.

  8. Balanced (balanced): diversified portfolio.

Theorem 7.2 Strategy count
#

\(\text{numStrategies} = 8\).

Proof

By enumeration of the inductive type.

7.2 Score estimates

Definition 7.3 Score estimate functions

For each archetype \(s\), we define:

  • \(\text{maxScoreEstimate}(s)\): the ceiling score achievable under favorable matchups.

  • \(\text{minScoreEstimate}(s)\): the floor score under unfavorable matchups.

These are derived from analysis of board access, contention, and tile synergies.

\begin{tikzpicture} [
  lbl/.style={font=\footnotesize, text=textDark, anchor=east},
  val/.style={font=\tiny, text=textDark},
  bar/.style={rounded corners=2pt},
]
% Helper: draw one interval bar.  Args: y-pos, color, label, lo, hi
\newcommand{\intervalbar}[5]{%
  \pgfmathsetmacro{\xlo}{(#4 - 40) * 0.08}%
  \pgfmathsetmacro{\xhi}{(#5 - 40) * 0.08}%
  \fill[#2, bar] (\xlo, #1 - 0.2) rectangle (\xhi, #1 + 0.2);%
  \draw[textDark, thin, bar] (\xlo, #1 - 0.2) rectangle (\xhi, #1 + 0.2);%
  \node[lbl] at (\xlo - 0.15, #1) {#3};%
  \node[val, anchor=east] at (\xlo - 0.02, #1 + 0.33) {#4};%
  \node[val, anchor=west] at (\xhi + 0.02, #1 + 0.33) {#5};%
}
% Bars (top to bottom, ranked by ceiling)
\intervalbar{0.0}{pastelMint}{FurnRush}{60}{140}
\intervalbar{-0.7}{pastelSky}{WeapRush}{60}{120}
\intervalbar{-1.4}{pastelLavender}{AnimHusb}{50}{115}
\intervalbar{-2.1}{pastelPeach}{MineHeavy}{55}{110}
\intervalbar{-2.8}{pastelLemon}{Balanced}{55}{105}
\intervalbar{-3.5}{pastelRose}{PeaceFarm}{45}{100}
\intervalbar{-4.2}{pastelSlate}{PeaceCave}{50}{100}
\intervalbar{-4.9}{pastelCoral}{RubyEcon}{45}{100}
% X axis
\draw[thick, textDark] (0, -5.6) -- (8.0, -5.6);
\foreach \v in {40, 60, 80, 100, 120, 140} {
  \pgfmathsetmacro{\xp}{(\v - 40) * 0.08}
  \draw[textDark] (\xp, -5.6) -- (\xp, -5.75);
  \node[font=\tiny, text=textDark, anchor=north] at (\xp, -5.8) {\v};
}
\node[font=\footnotesize, text=textDark] at (4.0, -6.3) {Score};
\end{tikzpicture}
Figure 7.1 Score estimate ranges for the \(8\) strategy archetypes. Each bar spans from the worst-case floor to the best-case ceiling. FurnRush has the highest ceiling (\(140\)) and ties for the highest floor (\(60\)).

7.3 Early game structure

Theorem 7.4 Round 3 harvest is certain
#

In the 2-player game, round 3 always triggers a normal harvest.

Proof

By the harvest schedule definition.

Theorem 7.5 Food crisis shapes all strategies

The feeding cost at the initial dwarf count exceeds the starting food for both players. This forces every archetype to allocate early actions to food acquisition.

Proof

Direct consequence of the universal food crisis (Theorem 3.12).

Theorem 7.6 Food spaces are scarce

\(\text{numGoodFoodSpaces} = 2\) and \(\text{initialDwarfCount} \ge \text{numGoodFoodSpaces}\). The first player to act claims the best food space, giving them a structural advantage.

Proof

By enumeration of round-1 food-producing action spaces.

7.4 Growth and tempo

Theorem 7.7 Family growth round 4

“Wish for Children” appears at round 4; “Family Life” at round 8. Early growth is available \(4\) rounds before the late option.

Proof

By the action space round assignments.

Theorem 7.8 Growth total placements

Without growth: \(44\) total dwarf placements. With one growth at round 4: \(47\) placements. With both growths: \(56\) placements.

Proof

By summing dwarf placements across 12 rounds.

7.5 Accumulation spaces

Theorem 7.9 Accumulation is linear
#

\(\text{accumulatedValue}(r, n) = r \cdot n\) for accumulation rate \(r\) and \(n\) rounds of waiting.

Proof

By induction on \(n\).

Theorem 7.10 Accumulation patience reward

Logging yields \(9\) wood after \(3\) rounds vs. \(3\) after \(1\) round: a \(3\times \) payoff for waiting.

Proof

\(\text{accumulatedValue}(3, 3) = 9\) and \(9 / 3 = 3\).

7.6 Branching factor

Theorem 7.11 Round 1 branching factor

Round 1 has \(13\) available action spaces with \(4\) dwarfs to place. Utilization is \(30\% \).

Proof

\(13\) preprinted spaces; \(4 \times 100 / 13 = 30\).

Theorem 7.12 Setup variability

The 2-player game has \(2880\) distinct initial setups: \(144\) card orderings times \(20\) harvest marker placements.

Proof

\(6 \times 2 \times 2 \times 6 = 144\) and \(\binom {6}{3} = 20\); \(144 \times 20 = 2880\).