# Super Kart — spritesheets needed Everything below renders procedurally (tinted silhouettes, painted horizons) until real art is dropped in, so none of this blocks the game working — but here's the full list of what to paint, sized and ordered exactly as the code expects. Drop-in paths are wired through `data/superkart-artwork.json` (set `path` there once a PNG exists — no code changes needed) except for the menu background, which is a single fixed file. All racer/theme/item art needs a **transparent background**. ## 1. Racer karts — one sheet per racer 9 sheets, one per entry in `data/superkart-racers.json`: | id | display name | |---|---| | `mario` | Mario | | `kona` | Kona | | `fireball` | Fireball | | `smasher` | The Smasher | | `croc` | Croc | | `gerome` | Gerome | | `blackwind` | Blackwind | | `dv-8-2303` | DV-8-2303 | | `zanthor` | Zanthor | - **Frame size:** 64×64 - **Layout:** 18 frames in a single row → **1152×64 px** - **File:** set `racerSheets..path` in `data/superkart-artwork.json` - **Frames 0–15** — the kart viewed from 16 angles, rotating **clockwise as seen from above**, in 22.5° steps: - frame 0 = dead-on from **behind** - frame 4 = kart's left side - frame 8 = head-on (facing the viewer) - frame 12 = kart's right side - **Frames 16–17** — optional player-view lean frames (16 = leaning left, 17 = leaning right), used only for the player's fixed on-screen kart while steering. If the sheet is only 16 frames wide, the game reuses frame 0 with a programmatic tilt instead — fine to skip. - Kart centered horizontally in each frame, wheels touching the bottom edge (world sprites are anchored a bit above the frame's bottom, not dead center, so keep the kart's visual weight low in the frame). ## 2. Theme decor — one sheet per track theme 6 sheets, one per theme in `data/superkart-rules.json`: | theme id | decor order (frame 0, 1, 2 — frames 3–7 spare) | |---|---| | `beach` | palm, umbrella, rock | | `volcano` | boulder, vent, spire | | `scrapyard` | tirepile, crane, wreck | | `swamp` | cypress, reeds, log | | `speedway` | grandstand, billboard, flagpole | | `nightcity` | tower, neon, lamppost | - **Frame size:** 64×64 - **Layout:** 8 frames in a single row → **512×64 px** (only the first 3 are currently used per theme; the rest are free for future decor) - **File:** set `themeSheets..path` in `data/superkart-artwork.json` - Drawn perspective-scaled beside the track, anchored near the bottom of the frame like the karts above. ## 3. Backdrops — one horizon strip per theme 6 images, same theme ids as above. - **Size:** 1024×300 px - **File:** set `backdrops..path` in `data/superkart-artwork.json` - Must **tile horizontally** — left and right edges need to match, since it's scrolled as the camera rotates through a full 360°. - Drawn above the horizon line; the bottom edge's color should blend toward that theme's `fog` color in `data/superkart-rules.json` so the seam into the 3D ground plane is invisible. ## 4. Item icons — one shared sheet - **Frame size:** 48×48 - **Layout:** 9 frames in a single row → **432×48 px** - **File:** set `itemSheet.path` in `data/superkart-artwork.json` - **Frame order** (matches `items` in `data/superkart-rules.json`, plus two extras): 0. bolt 1. seeker 2. oil 3. turbo 4. overdrive 5. emp 6. coins 7. item box (the question-mark-style box karts drive through) 8. single coin (the pickup, distinct from the "coins" item icon in frame 6) ## 5. Main menu background — single image - **File:** `assets/images/superkart-background.png` (already exists — registered directly in `src/data/assetManifest.js`, not through the drop-in artwork JSON) - **Size:** ~1920×1080 (16:9); current art is 1928×1088 and gets stretched to fill the canvas, so keep close to that aspect ratio for future updates or revisions - Shown behind the menu, class/racer select, cup/track select, results, and podium screens (anywhere that isn't an active race — the Mode 7 ground fully covers it during racing). The game draws a ~45%-alpha dark scrim over it for text contrast, so avoid relying on fine detail or very light colors in areas where UI text sits (title/top band, center column).