system

Use when

You have unit types, weapons, or tools that should beat each other, and you need the matchups to actually matter.

Counter Systems — the duel matrix

What it is. The matchup table: the rule that pikes beat cavalry, air beats ground, fire beats ice. A counter system makes the right tool a decision instead of the bigger stack — it’s what turns system-unit-rosters and system-faction-asymmetry into a game of composition rather than accumulation.

Player fantasy / why it’s fun. “I read your army and I built the answer.” A counter is a puzzle you solve with production, not reflexes — scouting, reacting, and the small triumph of the hard counter arriving just in time.

When to use / when NOT

Use counters when…Skip when…
Multiple unit/weapon types coexistThere’s one avatar and one attack
Composition should beat brute forceThe fun is execution, not selection
Factions/rosters need internal tensionYou have < 3 types (no matrix to speak of)

Variants

ShapeCounter strengthAnchorNote
Hard RPSA auto-beats Bfighting games, some RTSdecisive, can feel arbitrary
Near-hardA strongly favored vs Banchor-starcraft, anchor-age-of-empiresthe sweet spot — see below
Soft resistA takes ~15% less from Bmany RPGserased by scaling — avoid as the whole system
Tag / typefire > ice > … cyclicPokémonlegible, teachable
Positionalflank/backstab/heighttacticscounter is where, not what

The near-hard doctrine

FUN.md §8/§9 is blunt: soft resists get erased by count-scaling. A 15% resist vanishes the moment the player fields ten of the resisting unit — the matchup stops mattering, and the “counter” is decorative. Counters must be near-hard: strong enough that the right unit meaningfully wins the duel even before you out-mass.

The design target is a duel you can prove:

The counter unit wins its NvN duel at equal or lower cost; the countered unit, even with a bigger budget, loses it. (FUN.md §8: “mono build with a bigger budget fails; mixed build survives.”)

Near-hard, not hard, because a pure auto-win removes the micro/positioning layer — you want “strongly favored, still winnable with skill,” not “the fight is decided by the build screen.”

Tuning levers

LeverDoesHealthy range
Counter multiplierhow much the favored unit wins bynear-hard: the duel flips outcome, not just shaves HP
Matrix densityhow many pairs have a counterevery unit both counters and is countered — no pure winner
Reveal costhow hard to scout the enemy compinformation is the counter game; make scouting real
Reaction lead timebuild-time to answer a threatlong enough to punish greed, short enough to recover
CyclicityRPS loop closes (no dominant)assert no unit sits outside all counters

How it wires to Hayao

Fails when…

Verify

Composes with

See also

This module rendersthe repo's markdowndirectly — edit it there, it changes here.