Four real run cycles, rolled one-call-one-row through a new _runroll.py
The old run frames were generated one at a time and it showed: 91/110/92/98 px of body-width drift, duplicated poses drawn differently, no racket. Each character (player m/f 6 frames, opponent m/f 8) now comes from ONE 4K call anchored on a composed identity reference of its settled frames — the broken run art stayed out of the reference on purpose. Stride-gated, cut with _fine, judged by eye per roll. drawChar probes run8/run6/run4/run2. Side effect: the male opponent's old run art faced LEFT against the art-faces-RIGHT convention — he had been moonwalking right since install. Fixed by drawing the new rows to the convention. Pipeline lessons recorded in PROJECT.md (the model negotiates the count; a back view has no direction; the racket clause goes early and loud). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
de77ccfea5
commit
99a87115b3
36 files changed
+242
-12
No files matched your search
+27
@@ -1805,6 +1805,33 @@ The gates, and the numbers they were calibrated on:
|
||||
**SUPERSEDED 2026-08-12 — see the next section.** Those 31 frames were not art: `--verify` found
|
||||
27 of them dead. The brute is now live (`ZFAMS` has `'br'`, the KEEPER wears it) off ONE sheet.
|
||||
|
||||
## THE RUN CYCLES — one call, one row, one character (2026-08-13)
|
||||
|
||||
The p_run/o_run frames were generated ONE AT A TIME in the pre-pipeline era and it showed: the male
|
||||
player's four frames measured 91/110/92/98 px wide, frames 1/3 and 2/4 were near-duplicates drawn
|
||||
differently, and the racket was missing outright. Oliver: *"really awkward... I think we need more
|
||||
frames to sell this as good running"* — the frame COUNT was never the fault, the drift was.
|
||||
|
||||
`assets/_runroll.py` re-rolled all four characters (player m/f, opponent m/f) on the family-pipeline
|
||||
discipline: identity from a composed reference of SETTLED frames (`_pose_ref_run_<k>.png`, tracked,
|
||||
no API — the broken run frames stay OUT of it), poses from skeleton language in the prompt, one 4K
|
||||
21:9 call per character, `_fine.py` cut, stride gate, judged by eye per roll. What it added to the
|
||||
pipeline's knowledge:
|
||||
|
||||
- **The model negotiates the COUNT.** Asked for 8 it returned 7, then 6, then 8 — and the row it
|
||||
draws at its own count is the coherent one. The cutter accepts 6..8 and `drawChar` probes
|
||||
run8/run6/run4/run2, so a good 6 beats a fought-for 8. State the count you can SEE with `--n`
|
||||
when the figures touch (a low racket bridges every blob gap).
|
||||
- **A run cycle is the one pose set whose generator cliché is RIGHT.** No pose reference needed —
|
||||
pin only the frame count, the facing, the racket ("a figure with an empty hand is WRONG", early
|
||||
and loud, after roll 1 dropped the racket from six figures of seven).
|
||||
- **A back view has no direction.** Roll 1's "seen from behind, sprinting right" came back running
|
||||
straight away up-court. The working language: back THREE-QUARTER view, body angled toward the
|
||||
right, "NOT a straight-away back view: he moves ACROSS the frame".
|
||||
- **The old male opponent art faced LEFT and had been MOONWALKING right since install** (char art
|
||||
faces RIGHT by convention — the gameplay.js note at the swing aim). The new rows are all drawn
|
||||
facing right, which quietly fixed it.
|
||||
|
||||
## THE ZOMBIE FAMILY PIPELINE — one sheet, one character, 31 sprites (2026-08-12)
|
||||
|
||||
**This replaces the nine-batch flow above for a whole opponent family.** `_regen.py` still exists and
|
||||
|
||||
Reference in new issue
Block a user