process

Use when

You have a spine (or a genre/anchor) and need the creative bend that gives it a fresh face — or you're using a bend to discover a spine.

The Twist — “X but Y”

This is a sub-tool of process-the-spine. The twist gives a design its face — a memorable pitch and a fresh surface. It does not, on its own, give it a loop; a novel “X but Y” can still play like a corridor. Use the spine to find the tension first, then use the twist to give that tension a face — or bend a proven game here precisely to discover a new spine. Spine first, twist second.

What it is. Almost every good game is a known thing, bent. You don’t invent a genre from nothing; you take a proven core (the X — an anchor or a genre) and apply a twist vector (the Y) that changes what the game means. The twist is where your creativity goes. The core is borrowed on purpose — it arrives pre-solved, so your invention lands on the difference, not on re-deriving what a platformer’s coyote time should be.

Why it’s fun. Familiarity is a free tutorial; novelty is the reason to look. “X but Y” gives players an instant mental model and a surprise. Skip the anchor and players are lost. Skip the twist and there’s no reason to play yours over X.

The pitch test. If you can’t say your game as one “X but Y” sentence, the design isn’t focused yet. Unrailed = Overcooked but on a train you build ahead of yourself. Fertile Crescent = Age of Empires but bronze-age with hunger as the signature pressure. Shadow of War = Assassin’s Creed but every orc remembers you.

The six twist vectors

Pick one primary vector and commit; a second is a bonus, a third is usually noise. Each vector answers “but Y — bent how?”

VectorThe bendWorked “X but Y”
Theme / settingSame mechanics, a new fiction that recolours every systemDoom → Viking; AoE → bronze-age (Fertile Crescent)
Mechanic-swapReplace or add one load-bearing verb; the rest reorganises around itOvercooked → + track-laying (Unrailed); Slay the Spire → + poker-hand scoring (Balatro)
StructureChange the container: run-based, roguelite, open-world, endless, campaignMetroidvania → roguelite (Dead Cells); FTL → no map, one loop (Loop Hero)
Perspective / scaleZoom in or out; change who the player ISRTS commander → one hero in the battle; city → one citizen
ConstraintAdd a hard limitation that forces new playOne-button; permadeath; no combat; one screen; 60-second runs
TonalFlip the emotional registerHorror → cozy; war → comedy; hardcore → humane (Celeste’s assist mode)

The signature mechanic

The strongest twist crystallises into one signature mechanic — the thing the whole game is about, the sentence in the store description, the reason a screenshot is legible. Fertile Crescent has hunger. Shadow of War has the nemesis system. Into the Breach has the telegraphed grid. Balatro has jokers. Find yours, then make every other system serve it. A twist that stays a coat of paint (theme-only, no mechanical consequence) rarely carries a game; push the bend until it changes how you play, not just how it looks.

How to run it

  1. State the X. Name the anchor(s) from process-intent-to-brief. Pull their DNA from 10-anchors/ — the load-bearing structures, not the theme. This is your borrowed, pre-solved core.
  2. List candidate Ys. For each vector above, write the one bend that best serves the process-pillars and the player fantasy. Six candidates.
  3. Score against the pillars. Keep the Y that most sharpens a pillar. A twist that fights a pillar is a different game — note it and drop it.
  4. Name the signature mechanic the twist implies. If none emerges, the bend is cosmetic — pick a stronger vector.
  5. Trace the consequence. Walk the twist through every system: what does it change in the economy, combat, progression, level shape? The twist that ripples into 3+ systems is real; one that touches nothing is set-dressing.
  6. Re-pitch. Write the final “X but Y” sentence. It must survive as the store hook. If it’s boring to say, it’ll be boring to play.

Worked example

Intent: “a chill farming game that’s actually about something.”

Traps

Composes with

See also

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