[AP+BE+NG] A2: art-loadout slots for voxel building skins #980

Closed
opened 2026-08-06 16:12:03 +00:00 by spikerj · 1 comment
Owner

Part of the Game Unification lane: all games become one game — different modes over one shared persistent universe (space → scan → hex-TD conquest → voxel base → satellite logistics → dungeon portals). Clients = Angular web + Godot (iOS/Android embed Godot). Full plan: ~/.claude/plans/i-want-a-plan-breezy-eclipse.md on the 4090.

Part of EPIC #933.

Extend the generic /api/game/{gameId}/art-loadout slot registry so Art-Studio assets skin converted voxel buildings, consuming A1 output.

Part of the **Game Unification** lane: all games become one game — different modes over one shared persistent universe (space → scan → hex-TD conquest → voxel base → satellite logistics → dungeon portals). Clients = Angular web + Godot (iOS/Android embed Godot). Full plan: `~/.claude/plans/i-want-a-plan-breezy-eclipse.md` on the 4090. Part of EPIC #933. Extend the generic `/api/game/{gameId}/art-loadout` slot registry so Art-Studio assets skin converted voxel buildings, consuming A1 output.
spikerj added the enhancementagentic labels 2026-08-06 16:12:03 +00:00
Author
Owner

Migrated as part of the umbrella-tracker breakup.

This ticket needed changes in more than one repo, so it became one narrowly-scoped issue per repo,
each independently mergeable:

Verified 2026-08-07 against the synced default branches:

  • Backend code: spikersoft-backend@98102023 — GameArtSlotRegistry.cs:21 still registers only hex-tower-defence; there is no voxel game id and no voxel-building slot definitions.
  • ArtPipe code: spikersoft-artpipe@7082d260 — src/artpipe/batch/stages/ has no voxelize stage (_common, concept, modeling, texturing, rigging, animation, enrichment, export only) and rg -i voxelize src returns nothing, so the input A2 consumes does not exist yet.
  • Angular code: spikersoft-angular@8e5a4048 — art-loadout wiring exists only under _games/hex-tower-defence/ (hex-tower-defence-art-loadout.service.ts, art-asset-picker/, art-slot-list/, libraries/game/hex-tower-defence/src/three/hex-board-scene.ts). Nothing under _games/wasm-voxel-game/ or libraries/game/wasm-voxel/ references art loadouts.

Status: not started in every repo — the ticket text is carried over verbatim, scoped per repo.

Closing here. Work now lives in the repos that hold the fix, so fixes #N in a PR will auto-close each
child on merge. The umbrella tracker keeps cross-repo epics only (parent epic spikerj/spikersoft-issues#933 is untouched).

— Opus 5 Agent

Migrated as part of the umbrella-tracker breakup. This ticket needed changes in more than one repo, so it became one narrowly-scoped issue per repo, each independently mergeable: - Backend: spikerj/spikersoft-backend#569 - ArtPipe: spikerj/spikersoft-artpipe#55 - Angular: spikerj/spikersoft-angular#682 Verified 2026-08-07 against the synced default branches: - **Backend code:** `spikersoft-backend@98102023` — `GameArtSlotRegistry.cs:21` still registers only `hex-tower-defence`; there is no voxel game id and no voxel-building slot definitions. - **ArtPipe code:** `spikersoft-artpipe@7082d260` — `src/artpipe/batch/stages/` has no `voxelize` stage (`_common`, `concept`, `modeling`, `texturing`, `rigging`, `animation`, `enrichment`, `export` only) and `rg -i voxelize src` returns nothing, so the input A2 consumes does not exist yet. - **Angular code:** `spikersoft-angular@8e5a4048` — art-loadout wiring exists only under `_games/hex-tower-defence/` (`hex-tower-defence-art-loadout.service.ts`, `art-asset-picker/`, `art-slot-list/`, `libraries/game/hex-tower-defence/src/three/hex-board-scene.ts`). Nothing under `_games/wasm-voxel-game/` or `libraries/game/wasm-voxel/` references art loadouts. Status: **not started** in every repo — the ticket text is carried over verbatim, scoped per repo. Closing here. Work now lives in the repos that hold the fix, so `fixes #N` in a PR will auto-close each child on merge. The umbrella tracker keeps cross-repo epics only (parent epic spikerj/spikersoft-issues#933 is untouched). — Opus 5 Agent
Sign in to join this conversation.