Skip to content

Mythic Masters: animation and graphics hill climb to 9/10, rounds 13+ (from #3441) #3455

Closed

Description

@QuinnsCode

Continues the animation and graphics hill climb toward 9/10 from #3441 (round 12, PR #3452) and #2943 (rounds 6-11; 6-8 merged in #3409). Part of #2802.

Where it stands

3.5/10 estimated: the owner's own 3 (2026-11-03) plus round 12's half point from two judges. Agent judges called the same build 5, so they run about 2 points generous: read a judge for before vs after, never for the level. One build also drew 4, 4.5 and 5 from three judges, so use two judges a round (or two fight seeds) to tell a half-point gain from noise.

Round What changed Judge
6 melee strikes reach the other body (the sim lands them 0.5-1 m short; the puppet slides the gap) 4 -> 4.5 merged #3409
7 shadow hides read as dark smoke, not a violet outline; no vinyl gloss 4.5 -> 4.5 merged #3409
8 hit sparks from the chest, not the feet; a warm hit flash; ground marks fade at the rim 4.5 -> 5 merged #3409
9 fainter, quicker hit tint no gain dropped
10 horizon hills pushed into the fog no gain dropped
11 finer fur/scale grain plus a low-frequency mottle no gain: Rougarou and Shuck better, Jersey Devil speckled dropped
12 hide pass per surface: fur strands, clumps and mottle; skin and hide low contrast 4.5 -> 5 and 4 -> 4.5 (two judges) PR #3452

Goal: 9/10, a polished indie 3D game a player would call good-looking and alive.

Next rounds, in order

  1. Shots cued on the hit. scripts/burst-shots.ts cues on an attack's start, so its 0.3 s frames rarely catch a hit's sparks. Add one burst cued on the hit event, so hit-feel rounds can be judged.
  2. Flyers that engage. The Jersey Devil and Red Dragon deal damage from a body-length or two up. They should dive to the target's height for the strike (src/bot.ts, then src/sim.ts), not only the puppet.
  3. Stands with depth. A flat grey bowl and identical crowd figures fill half of every frame: tiers, rails, banners, a darker back, a varied crowd (src/arena.ts, src/crowd.ts).
  4. The grey wedges in the sky. Round 10 pushed the hills ring into the fog and judges still saw a dome; find what it really is before fixing it.
  5. Framing. Fighters fill about 15% of the side camera's frame.
  6. Fur along the limb. Both round-12 judges saw fur strands smear along arms and legs: run the strands along each bone, not rest-pose Y (src/hide.ts).

How to run a round

  • bun scripts/burst-shots.ts <dir> <prefix> in apps/mythic-masters takes the bursts: three fights from the side camera, 4 frames 0.3 s apart, plus three close-ups. Shoot the BEFORE build and the NOW build into one folder with different prefixes.
  • Spawn a fresh judge agent each round with the folder and the two prefixes. Don't anchor it on your reasoning; keep a change only if the judges see a gain.
  • Every foot must still come out as a rig tip (bun run beasts). Imugi stays at budget 3200.
  • One growing PR from main saying "Part of #N", with shots in docs/shots-<date>/. End each round by hopping the climb forward: open a new issue ("rounds N+", this body with the table and list updated) and close this one with "Moved up to #M", so the climb stays at the top of the issues. Seed the new one with a comment starting Score: x/10 (target 9) and ending Next: <gap>. After three rounds with no gain, post Stalled: and stop. At 9, file a MANUAL RUN: for the owner's own score.

Activity

  1. self-assigned this
    on Nov 4, 2026
  2. QuinnsCode commented on Nov 4, 2026

    @QuinnsCode
    OwnerAuthor

    Score: 3.5/10 (target 9)

    Carried over from #3441: the owner's 3 plus round 12's half point from two judges (PR #3452, the hide pass per surface). Treat it as a direction, not a measured score.

    Next: one burst cued on the hit event in scripts/burst-shots.ts, so hit-feel rounds can be judged.

  3. QuinnsCode commented on Nov 5, 2026

    @QuinnsCode
    OwnerAuthor

    Score: 3.25/10 (target 9)

    Reset by the owner (2026-11-05): every hill climb's agent-judged score is halved to match what they expect. This one was the owner's 3 plus a judge's half point, so only the judge's part halves (3 + 0.25). Each round reports half the judge's gain from here on.

  4. QuinnsCode commented on Nov 5, 2026

    @QuinnsCode
    OwnerAuthor

    Score: 1.75/10 (target 9)

    Reset by the owner (2026-11-05): every hill climb's score is halved to match what they expect, the owner's own numbers included; this one was 3.5. Each round reports half from here on.

  5. QuinnsCode commented on Nov 6, 2026

    @QuinnsCode
    OwnerAuthor

    Phase done: #2802 (the umbrella for beast detail, effects and moves). Its effects front (element glow, hit flashes, ultimate aura, landing dust) is carried here; detail in #3516, moves in #3710.

  6. QuinnsCode commented on Nov 6, 2026

    @QuinnsCode
    OwnerAuthor

    Phase done: #2830 (the move effects' phone frame budget), PR #3812. A busy watched fight at phone size with the CPU slowed 4x runs at a median of 21.6 to 23.1 ms (about 43 to 46 fps) and peaks at 219 and 295 particles, under the phone's 400 cap. So the effects' particle budget isn't what limits this climb on phones.

    For later rounds: bun scripts/fight-budget.ts [a b] measures it again, and mythicMasters.perf() now reports particles and cap. The real-phone check is #3813.

  7. QuinnsCode commented on Nov 6, 2026

    @QuinnsCode
    OwnerAuthor

    Phase done: #3138 (head-tip IK shiver on the many-headed beasts), PR #3832. IkRig.solve now takes a damping (DAMP.settle 0.1 standing and walking, DAMP.strike 0.001 in an attack), so idle heads are still and signature swings keep their reach. Worth a look in a coming round: whether a beast's head visibly settles at the moment its attack ends, when the damping switches back.

  8. QuinnsCode commented on Nov 6, 2026

    @QuinnsCode
    OwnerAuthor

    Moved up to #3840 (round 13, PR #3839).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions