game-design
Design games that are fun on purpose
Engine-agnostic game design: mechanics, loops, progression, economy, balance, feel, and the discipline of prototyping and scope. No engine APIs live here — when the design is settled, the implementation belongs to godot, unity, or unreal.
Two premises govern everything below. Fun is discovered, not designed — you cannot reason your way to a fun game on paper, you find it by building the smallest playable version and playing it, so every hour spent planning a mechanic you have not prototyped is an hour spent guessing. And a game is the set of verbs it gives the player plus the loops those verbs live in — art, story, and levels dress that skeleton; if the skeleton is not fun in greybox, nothing dresses it into fun.
Route elsewhere when the ask is not design:
| The ask | Route to | Why not here |
|---|---|---|
| Write the movement/AI/shader/save code | godot / unity / unreal |
This skill decides what to build; the engine skill builds it. |
| Author the story, dialogue, characters, lore | game-storytelling |
Narrative design is its own craft; this skill owns systems and verbs. |
| Lay out a level, encounter, or world map | level-design |
Spatial/encounter design applies the mechanics this skill defines. |
| Netcode, prediction, lag compensation | gamedev-multiplayer |
A technical domain, not core design intent. |
| Ship / store page / build pipeline | gamedev-shipping |
Release logistics, not design. |
Loops: moment-to-moment → session → meta
A game is loops nested inside loops. Each layer must reward on its own and feed motivation to the layer above it.