About and methodology
The Game Mechanic Compendium is a research catalog. Its purpose is to describe game mechanics across media in a way that makes them comparable: the same closed vocabularies, the same fields, the same sourcing standard for every entry. It is not a design manual and does not rank mechanics.
What counts as an entry
Each entry describes one mechanic in its canonical form: the version most commonly recognised across media, usually the one in the provenance example. We code the mechanic, not any particular game that contains it. A game may add randomness, conflict, or hidden information that the mechanic itself does not require; those are noted under Variations, not in the structured properties. Narrow variants are folded into a parent entry's Variations section until they have enough independent literature and examples to stand alone.
Abilities
A separate abilities section catalogues ability archetypes: named effects that recur across games, such as a fireball, a blink, or a heal. Each is defined by its behaviour rather than its name and coded by function and delivery. Every example records what gates the ability in that game (a cooldown, mana, a spell slot, an ultimate meter, a consumable), because the same archetype is gated differently from game to game. Abilities link to the mechanics they exercise but carry no design properties or effect tags, and they are not part of the pattern figures. The vocabularies are in taxonomy.json.
Crafting
A third section, crafting, catalogues crafting archetypes: named operations on items that recur across games, such as assembling an item from a recipe, salvaging it for parts, rerolling its properties, or raising it a tier. Each is defined by its procedure rather than its name and coded by operation and outcome. Every example records what the operation requires in that game (materials, a station, a known recipe, a sacrificed item, a per-item budget), because the same operation has different requirements from game to game. Like the abilities, crafting archetypes link to the mechanics they run through, carry no design properties or effect tags, and are not part of the pattern figures.
Scaling
A fourth section, scaling, catalogues scaling archetypes: named ways in which capability grows, broadens, or is held level across play or across releases. Each is coded on one axis: vertical (capability grows in magnitude, as with per-level stat gains or rising item levels), horizontal (options grow while power stays roughly level, as with sidegrades or collected abilities), or normalizing (vertical differences are compressed or cancelled, as with level sync or enemies that scale to the player). Each also has one scope, the thing that scales: a character, an item, an ability, the world, or the game's content across releases. Every example records the basis the scaled value is keyed to in that game (character level, an attribute, item tier, a release, a zone's level), because the same archetype is keyed differently from game to game. Like the abilities and crafting, scaling archetypes link to the mechanics they run through, carry no design properties or effect tags, and are not part of the pattern figures.
Synergies
A fifth section, synergies, catalogues synergy archetypes: named ways in which two or more parts (items, abilities, cards, units, characters, or states) are worth more together than apart. Each is coded on one form, how the parts combine: threshold (a bonus switches on at a count of matching parts, as with set bonuses), cumulative (each matching part adds to the others' payoff, as with tribal lords),setup and payoff (one action leaves a state that a later one cashes in), combination (two specific parts yield a distinct effect, as with elemental reactions), conversion (one property is turned into another), or loop (parts trigger one another). Each also has one scope, where the parts sit: one build, a team, a board of cards or units, or the field. Every example records the links that connect the parts in that game (a shared tag, a set, a status, an element, a position, a trigger), because the same archetype is linked differently from game to game. Like the other archetype sections, synergies link to the mechanics they run through, carry no design properties or effect tags, and are not part of the pattern figures.
Weapons
A sixth section, weapons, catalogues weapon archetypes: named weapon behaviours, classes, rules, and properties that recur across games and belong to an item or an equipped attack rather than to a character's spell or skill. Each is coded on one delivery, how the weapon reaches its target: melee,thrown (the weapon itself travels, as with a returning axe), projectile (a missile with travel time),hitscan (resolved at once along a line), area (the effect is a radius, as with splash damage),placed (set down and set off later), or any delivery for rules and properties that apply to weapons of every kind. Each also has one kind: a behaviour found on many weapons, a class of weapon, arule governing all weapons, or a property printed on individual ones. Every example records what limits the weapon's use in that game (ammunition, a magazine, heat, charge time, durability, stamina, a cooldown, an action cost, or nothing), because the same archetype is limited differently from game to game. Like the other archetype sections, weapons link to the mechanics they run through, carry no design properties or effect tags, and are not part of the pattern figures.
Game systems
A seventh section, game systems, catalogues composite subsystems that recur across games, such as a day-night cycle, a nemesis system, or a wanted level. A system's identity is the interaction of three or more mechanics around state that persists, and no single one of those mechanics owns it; a system that one mechanic fully describes stays a mechanic. Each is coded on one domain, what the system simulates: the environment(time of day, weather, seasons, elements), inhabitants (non-player characters and creatures as agents),society (law, factions, territory), an economy (prices, production, demand), the avatar'sbody (needs, injury, exposure), or pacing (systems that meter encounters and intensity). Each also has one driver, what moves its state: a clock, player action, autonomous simulation, or anadaptive reading of the player's state. Every example records as its components the mechanics that game's version combines, because the same system is assembled differently from game to game; the mechanics every example names form the system's shared core. Because a system's defining part (the clock of hours, the escalating tiers of a pursuit, an enemy's memory of the player) is seldom a catalog mechanic, every example also records the system's own working parts there, from a vocabulary of twenty-nine, among them a world clock, a conditional spawn, escalation, a return to rest, a paid reset, drain, exposure, propagation, agent memory, a rank hierarchy, routines, agent needs, population change, demand, territory change, treatment, an intensity reading, and a forecast. Like the other archetype sections, game systems carry no design properties or effect tags and are not part of the pattern figures.
Categories
Every mechanic has exactly one primary category, chosen by asking which element, if removed, would make the mechanic cease to exist. Overlaps are recorded through parent, child, and related links and in the property notes field, so contested placements stay visible rather than being silently resolved. When two families both seem to apply, the questions below are asked in order and the first "yes" wins; the losing candidate is recorded in property notes. The order is a default, not a law: where an entry's category departs from it, the property notes say so and give the reason.
| Order | Family | Definition | Tie-break question | Entries |
|---|---|---|---|---|
| 1 | Action resolution | Adjudicating whether an attempted action succeeds and how the result is graded and interpreted, independent of which randomiser (if any) is used. | Is it about adjudicating success? | 19 |
| 2 | Chance & risk | A randomiser (dice, decks, tables, generators) or a deliberate wager against known odds is the identity of the mechanic. | Is the randomiser or wager the whole point? | 15 |
| 3 | Information & hidden state | Who knows what: concealment, revelation, and asymmetry of game state between players or between player and system. | Is it about who knows what? | 14 |
| 4 | Interaction & exchange | The core act is a transaction or contest between players over shared or transferable things: trading, bidding, drafting, voting. | Is it a transaction between players? | 30 |
| 5 | Progression & capability | What a player or avatar is able to do and how that capability set changes within or across sessions, including asymmetric starting capability. | Does it make future turns stronger or different? | 27 |
| 6 | Time & action structure | Partitioning play into units (turns, phases, real time) and rationing how many or which actions may be taken within them. | Is it rationing actions or structuring time? | 21 |
| 7 | Resource management | Acquiring, holding, converting, and spending finite quantities that constrain what a player can do. | Is it about allocating a scarce pool now? | 18 |
| 8 | Space & position | Position, adjacency, territory, or line of sight on a spatial representation is the operative state. | Is position the operative state? | 20 |
| 9 | Narrative & choice | Structuring authored or emergent story: branching, consequence, reputation, and persistence of decisions across sessions. | Is it structuring story or consequence? | 14 |
| 10 | Puzzle & pattern | The central challenge is recognising, assembling, or deducing patterns under constraints, where a solution is in principle determinable. | Is there a determinable pattern to find? | 13 |
Design properties
Properties use short closed vocabularies with written coding guidelines, applied to the mechanic's own rules in isolation. For mechanics that wrap a whole game, such as cooperative play, team play, or tournament formats, the host game's randomness, decisions, and rules weight are not counted. Three properties are ordinal (agency, complexity, decision density) and are exported with integer ranks; the others are nominal. Randomness distinguishes input (resolved before the player decides) from output (resolved after), following common usage in the design literature.
Player agency ordinal
How much the outcome of one invocation varies with the player’s choice at that moment.
Low: outcome mostly fixed by prior state or chance (loot tables, saving throws). Medium: one meaningful choice among a small constrained set (push your luck: stop or continue). High: an open choice space where selection dominates outcome (worker placement, drafting).
Randomness
Whether chance is resolved before the decision (input), after it (output), both, or not at all.
Input = randomness resolved before the player decides (a dealt hand, dice rolled then allocated, a generated map). Output = randomness resolved after the decision (an attack roll, a loot drop). Code "both" only when the canonical form has both stages.
Interaction
How the mechanic couples players to one another.
Solo: operates identically regardless of other players. Indirect: players affect each other only through shared state without targeting (blocking a worker space, depleting a market). Direct: targeted effects on a specific opponent. Cooperative: a shared goal is intrinsic to the mechanic (hidden roles is not cooperative, whatever its information coding; team-based is mixed). Mixed: canonical implementations routinely span two or more. Opponents controlled by the game system are not players: a mechanic whose canonical form pits one player against the system codes solo; code direct only when the canonical form targets another human player.
- solo
- Operates identically regardless of other players.
- indirect
- Players affect each other only through shared state, without targeting.
- direct
- Targeted effects on a specific opponent.
- cooperative
- A shared goal is intrinsic to the mechanic.
- mixed
- Canonical implementations routinely span two or more modes.
Complexity ordinal
Rules weight needed to teach the mechanic on its own, not its strategic depth.
Low: one or two sentences, no exceptions. Medium: a paragraph with one to three sub-rules or timing exceptions; a single lookup table on its own is medium. High: several interacting tables, prerequisite graphs, or multiple interacting sub-rules.
Pacing effect
Effect on the rate at which play approaches an end condition or climax, or on turn length.
Accelerates: snowballs or forces endings (clocks, end-game triggers a player can pull forward). Decelerates: lengthens turns or stalls progress (large-hand management, hit-point attrition). Variable: depends heavily on parameters (procedural generation, difficulty settings). Neutral: no systematic effect.
- accelerates
- Snowballs or forces endings.
- decelerates
- Lengthens turns or stalls progress.
- neutral
- No systematic effect on pace.
- variable
- Depends heavily on parameters.
Information
Visibility of the mechanic’s own state.
Scope is the mechanic’s own state. Perfect: all relevant state is public. Hidden: concealed from everyone (a shuffled draw order). Asymmetric: some players know what others do not (fog of war, a private hand). Mixed: both hidden and asymmetric components are intrinsic. State known only to the game system and to no player is hidden; state known to a human referee or game master but not to the other players is asymmetric.
- perfect
- All relevant state is public.
- hidden
- Concealed from everyone.
- asymmetric
- Some players know what others do not.
- mixed
- Both hidden and asymmetric components are intrinsic.
Feedback loop
Whether success makes further success more likely, less likely, neither, or is self-damped.
Positive: success compounds (engine building, experience levels). Negative: success is penalised or trailing players are compensated (catch-up bonuses, handicap stones given to the weaker player). None: no systematic coupling. Mixed: the canonical form contains a built-in damper (deck dilution in deck-building).
Decision density ordinal
Decision points one player faces in one turn’s use of the mechanic, counted without regard to how much each matters (that is agency).
Count within one turn of the player using the mechanic. Where the mechanic spans several players’ turns without resetting (an auction from lot to sale, a trick from lead to take), count that player’s decisions until it resets. Where play has no turns, count within one encounter in real-time play, or one move in a puzzle solved alone. A decision point is a moment where the rules give the player two or more legal options. Count decision points, not options: choosing among twenty spaces is one decision point. Count only choices the mechanic itself creates: choices made through other mechanics the game also has do not count, and a mechanic that is a constraint, a tally, or a frame with no choices of its own has zero. A referee’s or game master’s rulings on outcomes are adjudication, not decision points; where the mechanic is a menu of choices for the game master (GM moves), count those choices. Inputs that test execution (timing a jump, steadying an aim) are not decision points; count only choices between routes, targets, or tactics. Where the count varies, code the typical count in the canonical form. Code density without looking at agency; the two often disagree. Low: zero or one (victory points, initiative order, placing one stone in Hex, playing one card to a trick, the clue-giver’s turn in Codenames). Medium: two or three (set collection: which card to take and whether to cash in a set; cover systems: whether to move and to which cover). High: four or more (a deck-building turn of playing and buying cards, spending an action-point budget).
Reliability of the codings
Codings that were re-done blind, by two coders working from copies with the value and every sentence about it removed, have their agreement recorded below. Where the coders agreed, their value stands; where they split, the earlier value stands and the other is recorded in the entry's property notes. Raw codings are in the repository under research_notes/.
| Coding | Date | Entries | Agreed | Kappa | Note |
|---|---|---|---|---|---|
decision_density | 2026-10-20 | 144 | 136 (94%) | 0.91 | Re-code under the rewritten per-turn guideline; 44 values changed. |
tension | 2026-10-20 | 144 | 137 (95%) | 0.90 | Re-tag under the narrowed rule; the tag came off 32 entries and went on 9. |
decision_density | 2026-10-21 | 21 | 20 (95%) | 0.91 | The entries added after the first pass; two values changed. |
tension | 2026-10-21 | 21 | 21 (100%) | 1.00 | Two tags changed. |
betrayal | 2026-10-21 | 28 | 28 (100%) | 1.00 | Every entry then carrying a social tag plus the 21 later entries; no change. |
negotiation | 2026-10-21 | 28 | 28 (100%) | 1.00 | Three tags changed. |
social-deduction | 2026-10-21 | 28 | 27 (96%) | 0.90 | Two tags changed; one agreed addition blocked by the six-tag cap. |
agency | 2026-10-21 | 165 | 159 (96%) | 0.95 | Under disjoint guideline anchors (schema v6); 18 values changed, 6 splits kept the old value. |
pacing | 2026-10-21 | 165 | 149 (90%) | 0.84 | Under disjoint anchors; 24 values changed, 16 splits kept the old value. |
feedback_loop | 2026-10-21 | 165 | 158 (96%) | 0.91 | Under disjoint anchors; 11 values changed, 7 splits kept the old value. |
information | 2026-10-21 | 165 | 158 (96%) | 0.91 | Under disjoint anchors; 4 values changed, 7 splits kept the old value. |
catch-up | 2026-10-21 | 165 | 163 (99%) | 0.79 | The tag came off 8 entries and went on 3; now on 4. Kappa is modest because the tag is rare. |
agency | 2026-10-24 | 4 | 4 (100%) | 1.00 | The four wave-10 entries; no change. |
pacing | 2026-10-24 | 4 | 4 (100%) | 1.00 | No change. |
feedback_loop | 2026-10-24 | 4 | 4 (100%) | 1.00 | Three values changed from the authors’ codings. |
information | 2026-10-24 | 4 | 4 (100%) | 1.00 | No change. |
decision_density | 2026-10-24 | 4 | 3 (75%) | 0.60 | One split kept the author’s value; with four entries the kappa means little. |
tension | 2026-10-24 | 4 | 4 (100%) | 1.00 | The tag went on seasonal leagues. |
catch-up | 2026-10-24 | 4 | 4 (100%) | 1.00 | The tag came off seasonal leagues. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
agency | 2026-10-24 | 4 | 4 (100%) | 1.00 | The four wave-11 entries; one value changed from the author’s. |
pacing | 2026-10-24 | 4 | 3 (75%) | 0.60 | One value changed; one split kept the author’s value. |
feedback_loop | 2026-10-24 | 4 | 4 (100%) | 1.00 | No change. |
information | 2026-10-24 | 4 | 3 (75%) | 0.60 | One split kept the author’s value. |
decision_density | 2026-10-24 | 4 | 4 (100%) | 1.00 | One value changed from the author’s. |
tension | 2026-10-24 | 4 | 4 (100%) | 1.00 | The tag went on group finder and resource gathering. |
betrayal | 2026-10-24 | 4 | 4 (100%) | 1.00 | Kept on loot distribution and group finder. |
agency | 2026-10-25 | 4 | 4 (100%) | 1.00 | The four wave-12 entries; no change. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
pacing | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
feedback_loop | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
information | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
decision_density | 2026-10-25 | 4 | 4 (100%) | 1.00 | Two values changed from the authors’, each one step up. |
tension | 2026-10-25 | 4 | 4 (100%) | 1.00 | Kept on all four. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
catch-up | 2026-10-25 | 4 | 4 (100%) | 1.00 | Not carried by any of the four, the tag the wave was added to test. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
agency | 2026-10-25 | 4 | 4 (100%) | 1.00 | The four wave-13 entries; no change. |
pacing | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
feedback_loop | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
information | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
decision_density | 2026-10-25 | 4 | 4 (100%) | 1.00 | No change. |
tension | 2026-10-25 | 4 | 4 (100%) | 1.00 | The tag came off combat building. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
catch-up | 2026-10-25 | 4 | 4 (100%) | 1.00 | Not carried by any of the four. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
tension | 2026-10-26 | 2 | 2 (100%) | 1.00 | Three coders on random tables and rerolls, the two entries an earlier review flagged; all agreed, and the tag came off random tables. Kappa is Fleiss’ for three coders; with two entries it means little. |
established | 2026-10-27 | 181 | 170 (94%) | 0.94 | Two extractors named the establishing game from each entry’s own text (or none); 145 agreed values applied, 36 researched, 9 of them settled. |
provenance audit | 2026-10-27 | 63 | 59 (94%) | 0.87 | Two auditors judged whether each low-confidence provenance (all three collections) meets the displacement bar, from the entry’s text alone; agreement is on pass or fail. No title moved on the audit: researchers then looked for the missing primary sources, and 9 titles moved and 6 years changed. |
agency, pacing, feedback_loop, information, decision_density | 2026-10-27 | 1 | 1 (100%) | 1.00 | Subclasses, the one wave-14 entry; all five properties agreed with the author. With one entry kappa is undefined; 1.0 is entered as nominal agreement. |
tension, social tags, catch-up | 2026-10-27 | 1 | 1 (100%) | 1.00 | None carried by subclasses; no change. Kappa is nominal, as above. |
frustration-risk, sunk-cost | 2026-10-27 | 1 | 1 (100%) | 1.00 | Coded blind for the first time, because the wave tested them beside ownership; neither carried by subclasses. Kappa is nominal, as above. |
agency | 2026-10-28 | 4 | 4 (100%) | 1.00 | The four wave-15 entries; agreed values moved full-loot from medium to low and shared-holdings from medium to high. |
pacing | 2026-10-28 | 4 | 4 (100%) | 1.00 | No change. |
feedback_loop | 2026-10-28 | 4 | 4 (100%) | 1.00 | Vulnerability windows moved from none to negative. |
information | 2026-10-28 | 4 | 3 (75%) | 0.64 | Vulnerability windows moved from perfect to mixed; the split on full-loot kept the author’s asymmetric. |
decision_density | 2026-10-28 | 4 | 4 (100%) | 1.00 | Full-loot, security-zones and vulnerability-windows moved from low to medium. Kappa is undefined because both coders gave one value throughout; 1.0 is entered as nominal agreement. |
tension | 2026-10-28 | 4 | 3 (75%) | 0.50 | The split on full-loot kept the author’s tag. |
betrayal, negotiation, social-deduction | 2026-10-28 | 4 | 4 (100%) | 1.00 | Social deduction added to shared holdings; betrayal on shared holdings only; negotiation on none, for which kappa is nominal. |
catch-up | 2026-10-28 | 4 | 4 (100%) | 1.00 | Not carried by any of the four. Kappa is nominal, as above. |
ownership, consequence-weight | 2026-10-28 | 4 | 4 (100%) | 1.00 | Coded blind because the wave tested them: ownership on none of the four and consequence weight on all four, as the authors had it. Kappa is nominal, as above. |
agency | 2026-10-30 | 5 | 4 (80%) | 0.71 | The five wave-16 entries; agreed values moved hunt-games and crowd-blending from medium to high; the split on side-swapping kept the author’s low. |
pacing | 2026-10-30 | 5 | 5 (100%) | 1.00 | Hunt games moved from accelerates to neutral. |
feedback_loop | 2026-10-30 | 5 | 5 (100%) | 1.00 | No change. |
information | 2026-10-30 | 5 | 5 (100%) | 1.00 | No change. |
decision_density | 2026-10-30 | 5 | 3 (60%) | 0.33 | Hunt games moved from low to medium; the splits on crowd-blending and side-conversion kept the authors’ values. |
tension | 2026-10-30 | 5 | 4 (80%) | 0.00 | The split on hunt-games kept the author’s untagged value. Kappa is 0 although four of five agree, because one coder tagged every entry. |
betrayal, negotiation, social-deduction | 2026-10-30 | 5 | 5 (100%) | 1.00 | Social deduction added to crowd blending; betrayal and negotiation on none. |
catch-up | 2026-10-30 | 5 | 5 (100%) | 1.00 | Not carried by any of the five. Kappa is nominal. |
planning, contested-fairness, inference, frustration-risk, runaway-leader | 2026-10-30 | 5 | 3 (60%) | 0.82 | Coded blind because the wave tested them; 23 of 25 tag decisions agreed. Planning and contested fairness came off side-swapping and frustration risk off crowd-blending; splits on crowd-blending planning and hunt-games frustration risk kept the authors’ values. |
Player-experience effects
Each entry carries two to six effect tags describing tendencies the mechanic produces in its canonical form. They include negative and structural effects and are not endorsements. Where an effect depends on parameters (hand size, number of players), the entry's Analysis notes say so.
Cognitive
- Mastery
- Perceived growth of player skill through repeated use of the mechanic.
- Discovery
- Pleasure of uncovering previously unknown content, rules, or state.
- Planning
- Satisfaction from constructing multi-step plans and seeing them resolve.
- Inference
- Reasoning from partial evidence to a conclusion about hidden state.
- Engine satisfaction
- Gratification from a built system producing escalating output.
- Analysis paralysis
- Decision slowdown caused by many comparable options with calculable consequences.
- Spatial reasoning
- Reasoning about position, adjacency, paths, and lines on a represented space.
- Execution
- Outcome depends on the player’s timing or physical precision rather than on which option is chosen.
- Calculation
- Outcome rewards exact enumeration of moves, counts, or odds within a bounded, fully specified space.
- Recall
- Outcome depends on retaining and retrieving state or sequences seen earlier in play.
Emotional
- Tension
- An outcome that matters is held unresolved over a span of play the mechanic itself creates, while the player keeps acting or must wait.
- Flow
- Absorbed, continuous engagement produced by well-matched challenge and feedback.
- Ownership
- Sense that an artefact (character, deck, map, story) is distinctively the player’s own.
- Consequence weight
- Heightened awareness that decisions are irreversible or costly.
- Frustration risk
- Propensity to produce feelings of unfairness or helplessness, typically from low-agency loss.
- Sunk cost
- Reluctance to abandon invested positions even when suboptimal.
- Fear of missing out
- Anxiety over opportunities others may take or windows that are closing.
- Spectacle
- Rare, amplified, or staged outcomes produce memorable peaks distinct from sustained uncertainty.
- Compulsion
- Habit-forming pull to return or repeat, produced by scheduled rewards or escalating counters rather than by decision quality.
Social
- Bluffing
- Incentive to misrepresent one’s state or intentions.
- Negotiation
- Incentive to bargain, promise, or form deals with other players.
- Social deduction
- Reading other players’ behaviour to infer hidden roles or intent.
- Kingmaking
- A player who cannot win can decide which other player does.
- Teamwork
- Coordination and shared problem-solving among players with a common goal.
- Alpha player
- One player directs the decisions of others in a shared-goal structure, reducing their effective agency.
- Betrayal
- Incentive or opportunity to break an alliance or shared goal for individual gain.
- Contested fairness
- Players are prone to dispute an outcome’s legitimacy because a human judgement or a deliberate asymmetry intervened in it.
Structural
- Runaway leader
- A leading position becomes self-reinforcing and hard to overturn.
- Catch-up
- Trailing players gain compensatory advantage.
- Emergent narrative
- Memorable stories arise from system interaction rather than authored content.
- Replayability
- Variation across plays that sustains interest.
- Downtime
- Periods where a player waits while others act.
- Grind
- Repetition required to make progress, with low per-repetition novelty.
- Volatility
- Outcomes swing substantially on single events.
Media and examples
- Video
- Digital games on any platform.
- Tabletop RPG
- Role-playing games with a facilitator or shared fiction, including solo journaling games.
- Board & card
- Board games, card games, dice games, and wargames, including app-assisted ones.
- Physical
- Sports, playground games, LARP, escape rooms, and dexterity games. Secondary: used for provenance and cross-medium comparison, never as an entry’s only medium.
- Printed puzzles and gamebooks: pencil puzzles, newspaper and magazine puzzle columns, and choose-your-path books. Secondary: used for provenance and cross-medium comparison, never as an entry’s only medium.
An entry lists a medium only when it gives at least one example in that medium. Entries carry three or more examples in chronological order, chosen to cover each listed medium where possible: one early or influential instance, one canonical instance, one recent instance, and one from a different medium. Each example note states how the mechanic manifests in that game rather than describing the game. Years are the first release of the edition cited; approximate dates are flagged. One example per entry may carry a Latest marker: a widely played game from 2020 or later that shows the canonical form, chosen so that different entries point to different games where possible. Where no such game exists, the marker falls on the most widely played one from 2015 or later.
Provenance and sources
Provenance records the earliest documented use we can cite, with a stated confidence level. Where origins are unknown or disputed we say so rather than guess. Every provenance claim and every structural definition is tied to a listed source. Verified entries have at least two sources, one of them not a wiki, and URLs are given only when they have been checked.
- High
- Earliest use is documented in a primary source or uncontested in the design literature.
- Medium
- A widely cited earliest use exists but earlier instances are plausible or the dating is loose.
- Low
- The named earliest use is the earliest documented instance found, but earlier instances are plausible or the evidence is thin, so it is not defended as an origin.
- Unknown
- No defensible earliest use; only a populariser or a period can be named.
Canonical reference works cited by key across entries:
- Katie Salen and Eric Zimmerman (2004). Rules of Play: Game Design Fundamentals.
- Jesse Schell (2008). The Art of Game Design: A Book of Lenses.
- Geoffrey Engelstein and Isaac Shalev (2019). Building Blocks of Tabletop Game Design: An Encyclopedia of Mechanisms.
- Raph Koster (2004). A Theory of Fun for Game Design.
- Tynan Sylvester (2013). Designing Games: A Guide to Engineering Experiences.
- Ernest Adams and Joris Dormans (2012). Game Mechanics: Advanced Game Design.
- Staffan Björk and Jussi Holopainen (2005). Patterns in Game Design.
- George Skaff Elias, Richard Garfield, and K. Robert Gutschera (2012). Characteristics of Games.
- Greg Costikyan (2013). Uncertainty in Games.
- Jon Peterson (2012). Playing at the World.
- Jon Peterson (2020). The Elusive Shift: How Role-Playing Games Forged Their Identity.
- Shannon Appelcline (2014). Designers & Dragons: A History of the Roleplaying Game Industry.
- Steve Swink (2009). Game Feel: A Game Designer’s Guide to Virtual Sensation.
- Henry Jenkins (2004). Game Design as Narrative Architecture.
- Jesper Juul (2007). Swap Adjacent Gems to Make Sets of Three: A History of Matching Tile Games.
- David Parlett (1999). The Oxford History of Board Games.
- David Parlett (1990). The Oxford Guide to Card Games.
- H. J. R. Murray (1952). A History of Board-Games Other Than Chess.
- Jesper Juul (2013). The Art of Failure: An Essay on the Pain of Playing Video Games.
- Sultan A. Alharthi, Olaa Alsaedi, Zachary O. Toups, Theresa Jean Tanenbaum, and Jessica Hammer (2018). Playing to Wait: A Taxonomy of Idle Games.
- James F. Dunnigan (1980). The Complete Wargames Handbook.
- Scott Rogers (2014). Level Up! The Guide to Great Video Game Design.
- Robin Hunicke, Marc LeBlanc, and Robert Zubek (2004). MDA: A Formal Approach to Game Design and Game Research.
- Tracy Fullerton (2018). Game Design Workshop: A Playcentric Approach to Creating Innovative Games.
- Jesper Juul (2005). Half-Real: Video Games between Real Rules and Fictional Worlds.
- Stewart Woods (2012). Eurogames: The Design, Culture and Play of Modern European Board Games.
- Sid Meier (2012). Interesting Decisions.
- Mark Brown (Game Maker’s Toolkit) (2020). The Two Types of Random in Game Design.
- BoardGameGeek community (2024). Board Game Mechanics.
- Wikipedia contributors (2024). Wikipedia.
Entry status
- Draft
- Skeleton or incomplete entry. Rendered with a banner and excluded from search.
- Unverified
- Complete entry whose sources or provenance have not yet been checked against primary material.
- Verified
- Complete entry with three or more examples; two or more sources, at least one not a wiki, including a book, paper, or rulebook with a locator; and provenance at high or medium confidence.
Status is display metadata, not a filter: all entries appear in the browse table, the graph, the timeline, and the data exports, with their status recorded. Drafts are excluded from full-text search.
Disagreement
Codings are judgment calls. Contributors who disagree with a coding should add their reasoning to the entry's property notes rather than change the value silently, so the record shows what was contested and why.
Data exports
All exports are regenerated on every build (schema version 20). Field meanings and every vocabulary are in codebook.json; mechanics.jsonvalidates against mechanics.schema.json. Full-text search on the home page can be narrowed by kind of entry (mechanic, ability, crafting, scaling, synergy, weapon, or game system), category, medium, and effect.
- mechanics.json: canonical nested export, one object per mechanic with references flattened to ids, integer ranks for the three ordinal properties, and every source with its publisher, URL, and access date.
- mechanics.csv: wide table, one row per mechanic; list fields joined with
|. - examples.csv: tidy table, one row per (mechanic, example).
- edges.csv:
source,target,relationfor network analysis. - crosstabs.csv: every pairing of category and the eight properties, one row per cell, with expected count, Pearson residual, and bias-corrected Cramér's V for the pair.
- effect-pairs.csv: effect pairs carried by at least five of the same mechanics, with lift.
- property-effects.csv: property value and effect combinations carried by at least five mechanics, with shares and lift.
- sources.json: bibliography with cited-by lists.
- taxonomy.json: vocabularies with labels, descriptions, and value order.
- distances.csv: every pair of mechanics with its coding distance (properties differing, effect overlap).
- abilities.json, abilities.csv, and ability-examples.csv: the ability archetypes, one row per ability and one per (ability, example) with that game's gating.
- crafting.json, crafting.csv, and crafting-examples.csv: the crafting archetypes, one row per archetype and one per (archetype, example) with that game's requirements.
- scaling.json, scaling.csv, and scaling-examples.csv: the scaling archetypes, one row per archetype and one per (archetype, example) with that game's basis.
- synergies.json, synergies.csv, and synergy-examples.csv: the synergy archetypes, one row per archetype and one per (archetype, example) with that game's links.
- weapons.json, weapons.csv, and weapon-examples.csv: the weapon archetypes, one row per archetype and one per (archetype, example) with that game's limits.
- systems.json, systems.csv, and system-examples.csv: the game system archetypes, one row per archetype and one per (archetype, example) with the mechanics that game combines.
- citations.bib: one BibTeX record per entry; updates.xml: a feed of entries by last edit.
Licence and citation
The catalog's text, codings, and data exports are licensed underCreative Commons Attribution 4.0; the site's software is under the MIT licence. Cite the catalog as a whole from the repository's CITATION.cff, or an entry from the "Cite this entry" block on its page. Suggested attribution: Game Mechanic Compendium, James West Jr., CC BY 4.0.
Adding an entry
Copy docs/ENTRY_TEMPLATE.md to src/content/mechanics/<kebab-case-id>.md, fill the frontmatter against the vocabularies above, write the body under the standard headings, and runnpm run lint:content. The build rejects unknown vocabulary values, dangling references, and verified entries that fall short of the sourcing standard.