Technical Design Document
Template note — Step 24, Gameplay Engineer. This page is the living document for that work: fill it in as the task runs and keep it current. Delete this note when the document is real.
C4 position: L1-L4 (holds the diagrams). The C4 source of truth: context, container and component diagrams, then code standards and schemas.
This document holds the project’s C4 diagrams. Every other document and every asset names its position in this model; when the architecture changes, it changes here first and the decision is recorded in the Decision Log.
Level 1 — System Context
[Diagram (text or image): the game as one box. Around it: Player, platform/store systems, backend services, community/social, the docs site. One line per relationship: who does what with the system.]
| Actor / external system | Relationship |
|---|---|
| Player | [plays, saves, purchases…] |
| Store/platform | [distribution, achievements, cloud saves] |
Level 2 — Containers
| Container | Responsibility | Technology |
|---|---|---|
| Game client | [the playable game] | [engine + version, from Step 3] |
| Save/profile data | [persistence] | [format/location] |
| Backend services (if any) | [accounts, multiplayer, telemetry] | [ ] |
| Content/asset pipeline | [how assets are built and imported] | [ ] |
| Docs site | [this documentation] | Hugo |
Level 3 — Components (per container)
One block per component of the game client (repeat per container as needed).
[Component name] — in [container]
Responsibility: [one job] Interfaces: [what it exposes, what it calls] Design source: [the L3 doc that specifies it — Systems / Narrative / Levels / UX] Owned by: [role/skill]
Level 4 — Code
- Code standards: [naming, structure, review rules]
- Data schemas: [save format, config formats, content data — the schemas themselves or links to them in the repo]
- Module map: [where the code for each L3 component lives in the repo]
Engine and plugin plan
[Engine version and render pipeline (Step 3), plugins and why each is allowed in, upgrade policy.]