Game guide · source of truth
Production

Art pipeline & requests

How 2D art is requested (Codex-ready briefs), delivered, optimised and tracked; how 2D becomes 3D; naming, provenance and budgets.

578 art requests
59P0 (needed first)
193P1
326P2

◆2D art: request → generate → sync

  1. Requests are generated from data. Every skill, weapon, item, consumable, material, mount, Atlas node or NPC without art has an iconRequest; windows, HUD, key art, maps and production sheets are listed in art-requests.manual.json. pnpm data:build runs gen-art-requests.mjs, which writes art-requests/*.md, the pending art-requests/queue.json and the CODEX_RUNBOOK.md master prompt. Each request has a prompt, an "avoid" list, acceptance checks, the exact saveAs path and the file paths of the accepted reference images (originals in art/originals/ when they exist).
  2. Generate: open Codex in zoen/ and paste the master prompt from art-requests/CODEX_RUNBOOK.md (also on the Missing art page). It walks the queue in priority order and saves each PNG to its saveAs path. Running it again skips everything already delivered.
  3. Sync: node tools/art-sync.mjs (or pnpm art:sync) publishes WebP copies with SHA-256 provenance, records the delivery in packages/game-data/data/art-delivered.json, writes the new path into the matching data field (icon, or portrait for NPCs; Atlas nodes through the generator) and regenerates the request files. --dry-run --json shows what would change.
  4. Review: pnpm data:test, then the Missing art page shows ✓ done with the delivered image next to its references.

Accepted art in zoen/art/originals/ is never overwritten. New versions get new file names.

◆2D → 3D

AssetRoute
Charactersturnaround sheet → MPFB2 base + sculpt (free) or image→3D (paid, after OPEN-2) → Blender cleanup (Characters)
Monstersturnaround → image→3D or Blender sculpt → family rig (NPCs & monsters)
Weaponsicon art doubles as the modelling reference → Blender hard-surface model (≤ 3k tris) → sockets
Environment kitsconcept sheet ART-ENV-054 → blockout → model → bake (Environment)
VFX texturesBlender procedural flipbooks (no image model)
HUDimage-model kit pieces, or Blender-rendered bevel pieces for perfect 9-slice

Current mode (ADR-033): Blender first, with the versioned mannequin for all skill work. "Image→3D" above means the owner makes the model by hand in the Tripo website from the Model requests page and drops the GLB into art/3d/inbox/; nothing is auto-rigged in Tripo. Bodies are made in a thin undersuit and armour is always a separate mesh per slot.

◆Naming and folders

art/source/<category>/<ID>.png for 2D. art/source/3d/<kind>/<id>/<id>.blend plus asset.json (budget, rig, LODs, source, licence). Built files go to art/build/** (generated, git-ignored when large).

◆Provenance and licences

Every external file (CC0 audio, fonts, Mixamo clips) is logged in docs/LICENSES.md with its source URL and licence. Never use ripped or datamined files from commercial games. AI-generated images keep their prompt (from the request) and the generation date in asset.json.

Source: zoen/docs/production/ART_PIPELINE.md · 479 words · edit the Markdown, not this page.