not-tonight/docs/ASSETS.md
type-two 2e0b1917b8 Asset survey: RIGROOM library, modular kit, repose pipeline, procity notes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 13:36:50 +10:00

119 lines
7.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# NOT TONIGHT — Fleet Asset Notes
*What already exists on John's network that this game can reuse, borrow from, or
generate with. Sourced from the fleet-wide `ASSET_INVENTORY_2026-07-18.md` and
`GAME_ASSET_AUDIT_2026-07-18.md` (both on ultra `~/Documents/`). Compiled
2026-07-19.*
**Context for lanes:** v0.10.3 use PROCEDURAL placeholder art (coloured-pixel
paper-doll, synthesized audio) — nothing below is needed before the v0.4 art pass.
This doc exists so the art pass starts from the library, not from scratch. Nothing
here changes the `renderDoll` / layer contracts.
## Directly relevant (v0.4 art pass)
### 1. 90sDJsim paper-doll wardrobe — the big one
`ultra:~/Documents/90sDJsim/web/world/media/doll/` — **441 authored clothing
sprites** across tops/bottoms/shoes/hats/bags, brand-flavoured (coogi, dr_martens,
nike_air_max, moschino, quiksilver, kmart, disruptor_ii…), dynamically loaded by
`os.listdir` slot convention.
- **Reuse the taxonomy**: their slot/brand/type naming should inform
`data/outfits.ts` vocabulary (we already have shoes/legs/top/outer/hair/accessory
— cross-check their catalog for types we missed, e.g. bucket hats, bumbags).
- **Reuse the art via pixelation**: 90s wardrobe reads perfectly as 2026 Valley
fashion-in-quotes. A downscale/quantize pass (sprite → 32×48 palette-locked
pixel layer) could convert the catalog into real doll layers. Prototype on 10
sprites before committing — pixelated photo-sprites can look mushy; may need a
cleanup pass or MODELBEAST-assisted redraw per sprite.
### 2. RIGROOM — the character × animation factory (surveyed 2026-07-19)
**This supersedes the old "animation references" note. The fleet has a full
character/animation pipeline, live and organised:**
- **RIGROOM library** (`ultra:~/meshgod-backups/library`, 2.4 GB): **607
animation FBX** in themed packs + 59 character files. Web UI live at
`http://100.91.239.7:8010/rigroom` (characters × animations pairing, three.js
preview, instant Mixamo-ready FBX download). CLI:
`MESHGOD/scripts/rigroom.py classify|sort|scan`.
- Clips that read like THIS game's shot list: `Searching_Pockets` (pat-down),
`Standing_Arguing` + a full boxing/knockout pack (floor fights),
`Shaking_Head_No` (the deny), `Inspecting`/`Looking_Around` (ID check),
`Leaning_Idle02_Smoking` (smoking area), dozens of idles/sits, dance packs,
`Brutal To Happy Walking`, zombie stagger (maggot walk), 12 DJ motions.
Raw source: `m3ultra:~/Documents/Rokoko_Free_Mocap_FBX_263` (606 FBX).
- **Modular character kit** (`m3ultra:~/Documents/character_kit_modular`,
canonical `ultra:~/Documents/character_kit/modular/`): GODVERSE socket
standard — head/hands/feet/torso swap on one shared 65-bone `mixamorig:`
skeleton, 40 embedded actions, every library clip retargets for free.
- **repose** (`m3ultra:~/Documents/repose`): photo → T-pose views (SD1.5 +
ControlNet, all-local) → MeshGod multi-view → autorig. A face becomes a
rigged character without leaving the tailnet.
- **For NOT TONIGHT (v0.4 art pass), the pre-render path is now fully paved:**
modular kit character + RIGROOM clip → Blender orthographic top-down/front →
pixelate → sprite sheets behind the existing `renderDoll` poses. The outfit
variety could even come from kit part swaps. Same pipeline, one venue's
worth of NPC animation for free. Decide at v0.4; contracts don't move.
- Also present, unsurveyed depth: `MOCAPGOD` (empty queue — service scaffold),
`mixamo_upload` staging, `MOTIONLIB` (2,703 FBX, ultra) still the deep pool.
### 2b. procity (m3ultra) — the 90s-Aussie town sim
Walkable procedural shopping town (three.js, no build step), built by lanes
like ours. Pipeline: 186 GLB/FBX with fit/normalize/decimate tooling
(`procity_fit_*` props: arcade cabinet, clothes racks, shelving), 21 peds.
The **prop pipeline conventions** (batch manifests, decimation results JSON)
are the pattern to copy if NOT TONIGHT ever goes 3D-prop-assisted; the venue
furniture (bar, booths, stools) could come straight from its fit pipeline.
### 3. Venue / street reference art
- `ultra:~/Documents/90sDJsim/web/world/media/` named scene/venue art — 100 wired
widescreen club/venue images. Mood reference for our neon-dark interiors.
- `gdrive:ASSETS FROM AI` (2.47 GB, 3,239 files) + `gdrive:IMAGE-DATABASE`
(794 MB, 26,910 files) — prior AI-gen pools; sweep for club/street/neon/night
material before generating fresh.
- m4pro SPACEY `MRP PHOTOSHOP FILES` (4.4 GB PSDs) — design-language source
(posters/flyers could become in-game wall dressing). m4pro is HANDS-OFF; access
via the SMB mount on m3ultra if needed.
### 4. Generation pipeline (MODELBEAST)
m3ultra central queue :8777 (see fleet skill). For NOT TONIGHT this is an
**image generator, not a mesh generator** — we need no GLBs. Useful for: patron
face/outfit reference sheets to hand-pixel from, venue backdrop concepts, Dazza's
contact photo, joke ID photos. The thriftgod `gen_assets.py` + 640px `sips`
convention (m3ultra `~/Documents/thriftgod/`) is a proven prompt→asset-dir pattern
worth cloning for an `art_src/` pipeline here.
## Explicitly NOT for this game
- **All 3D mesh libraries** (`3D=models`, `3D-STORE`, FBX, femalemeshed,
NPCFACTORY, MODELBEAST GLB output) — no 3D in this game; only via the Option-B
prerender path above, never at runtime.
- **Audio archives** (bandcamp ~1 TB, YT-AUDIO, MONSTER MIXES). The design is
locked to a fully synthesized WebAudio techno engine (design §5 / LANE_JUICE) —
the low-pass location trick needs a synth we control, and shipping archive audio
is a licensing minefield. John's own MONSTER MIXES are legally his — park the
idea of a licensed-mix easter egg (jukebox in the kebab shop?) as a someday-note.
- **dealgod image pool** (2.4M product photos) + `recordgod_disc_images` — product
photography, wrong domain. (One cursed exception: pat-down contraband items
could be pixelated from real dealgod product shots. Someday-note.)
- **thriftgod 2D dressing** — authored 640px painterly JPGs, wrong style; its
*pipeline* is the reusable part (see §4).
## Ground rules for the eventual art pass
**Licensing: none needed.** This is a private tailnet sandbox game, never public —
John's call (2026-07-19). Anything on the fleet or gdrive is fair game, including
the audio archives and MONSTER MIXES. (If that ever changes and the game goes
public, this section is the checklist to revisit first.)
1. Everything funnels through the existing contracts (`renderDoll` poses, outfit
slots) — art swaps in behind interfaces, callers never change.
2. One palette, one pixel density (32×48 queue dolls at 640×360) decided ONCE
before any batch conversion; retrofitting mixed densities is the classic trap.
3. Log each imported batch (source → transform → dest) in this file — not for
licensing, just so we can regenerate/retrace later.
4. Check the MeshGod gallery + MODELBEAST `data/` (m3ultra) before generating
anything — the inventory's rule "catalog before regenerating" applies here too.
5. The synthesized techno engine stays the core soundtrack (the location-filter
trick needs a synth we control), but real archive audio is now allowed as
layers/easter eggs — e.g. MONSTER MIXES on a kebab-shop jukebox, real crowd
ambience beds under the synth.