Krea 2 design
64 grid, scene palette















His 15 pieces (stacked, they equal the design: 0 px different)

A one-round fight in the style of Mortal Kombat: side view, health bars, a round timer, call-outs, combos and knockdowns, on a temple court at dusk. The fighters are original: Riku, a quick monk who fights with kicks, against Grimhold, an armoured giant. Krea 2 drew their two designs and nothing else. Every animation frame, the stage, the HUD and the effects were drawn in code, pixel by pixel.

The full round at 4×. The GIF is 256 × 144 native, scaled up by your browser without smoothing.
0 – 2.9 sRound 1The camera settles on the temple court; ROUND 1, then FIGHT!
2.4 – 5 sThree hitsRiku walks in: jab, cross, then a roundhouse to the head. 3 HITS.
5 – 8.5 sThe chargeGrimhold's hook is blocked, then his shoulder charge flattens Riku.
9 – 11 sOver the waveThe ground slam sends a shockwave; Riku jumps it and lands a flying kick.
11.7 – 12.6 sSun PalmWhile Grimhold roars, Riku's fireball crosses the court and bursts.
13 – 17 sLaunchedGrimhold's uppercut throws Riku into the air; he hits the stones.
17.6 – 21 sSweepRiku sweeps the giant off his feet.
21 – 24 sThousand SunsA second charge whiffs. Riku lands four burning strikes...
24 – 25 sK.O....and a flaming uppercut: a hit-freeze, K.O.
25 – 28.8 sRiku winsThe giant lies still, the medallion lights, RIKU WINS, fade.
Krea 2 design
64 grid, scene palette
















Krea 2 design
64 grid, scene palette












Six parallax layers scroll at different speeds as the camera follows the fighters: the sky, far peaks, near peaks with snow lit pink, the temple with swaying lanterns and rippling banners, the courtyard, and plum branches in front. Petals drift across the court.
The six layers, each shown alone.
Health bars with a red ghost of lost health, the timer, names, round medallions, a hand-drawn 11 px call-out font, the combo counter.
The Sun Palm fireball, the ground slam's shockwave, dust, block and hit sparks, the flaming uppercut arc, speed lines.The goal: characters that never tear. Every frame passed these checks. The agent skill holds the same checks.
| Document | Canvas | Layers | Frames | Tags | Plugin render vs original |
|---|---|---|---|---|---|
| Riku.pas | 128 × 96 | 16 | 76 | 16 moves | identical |
| Grimhold.pas | 128 × 96 | 15 | 61 | 12 moves | identical |
| AshenPeak.pas | 400 × 144 | 6 | 8 | Ambient | identical |
The whole method, as an agent skill: skills/pixel-scene/ in this repository.
SKILL.md: the workflow from design to published page, and the rules.references/lessons.md: 28 lessons, each with its symptom, its cause and its fix.references/qa-checklist.md: the frame review.references/code-map.md: where everything lives.scripts/: the review tools.The fight is in this repository and rebuilds from the two designs with no GPU: about three minutes on a
laptop, with Python 3.10+ and Pillow, NumPy and SciPy (requirements.txt). Run from the repository root;
everything is written to out/scenes/ashen_peak/. The frames come out identical to the GIF above.
python scenes/ashen_peak/riku.py # 15 pieces; the stack equals the design (0 px) python scenes/ashen_peak/grimhold.py # 14 pieces python scenes/ashen_peak/riku_anim.py # 76 frames: "pinholes/specks: none" python scenes/ashen_peak/grimhold_anim.py # 61 frames python scenes/ashen_peak/fight.py # the 360-tick round: ashen_peak.gif python scenes/ashen_peak/fsheet.py riku stance,walk,jab 3 # a review sheet with the ground line and pinhole counts
The designs came from scenes/ashen_peak/designs.sh (Krea 2 through scripts/krea.py,
needs ComfyUI); the picked ones are in scenes/designs/. The three .pas files are in
scenes/pas/. To rebuild them, export.py drives a scratch Unity project
with unity/PasBuilder (see scenes/README.md).