# Sour Apples — raster asset plan and delivered set

**Selected direction: A / Chalkboard Classic.** The reference sheet and four candidates were presented before production; the user chose A before runtime integration.

## Visual vocabulary

Original early-1990s school arcade, remastered in raster pixel art. Emerald blackboards, chalk cream, sour green apples, orange teacher tie and restrained teal accents. Upper-left light, deliberate pixel clusters, dark outlines and limited three-value shading. The teacher has glasses, rolled sleeves, tousled hair and a loose tie. Apples have expressive eyebrows, stems, leaves, little hands and shoes. Slate, wood, painted metal, cork and paper share one lighting treatment. Interface art uses worn blackboards, wood borders and orange action buttons.

## Review batch — retained unchanged

All paths below are relative to `public/assets/`.

| Filename | Dimensions | Appears in |
| --- | --- | --- |
| source/reference/style-sheet-v1.png | 1536 × 1024 | Gallery: palette, proportions, materials, lighting and UI |
| source/candidates/a-chalkboard-classic.png | 1536 × 1024 | Selected classic 16-bit scene/character direction |
| source/candidates/b-saturday-morning.png | 1536 × 1024 | Archived exaggerated cartoon alternative |
| source/candidates/c-after-school.png | 1536 × 1024 | Archived warm atmospheric alternative |
| source/candidates/d-pocket-arcade.png | 1536 × 1024 | Archived compact chunky-pixel alternative |

## Production set — integrated

Shared material/prop atlases replaced the initially proposed separate room sheets, keeping the three levels visually consistent. Pickups and effects share one sheet. Every production item retains its original PNG under `source/production/`; the manifest records generated source dimensions separately from prepared runtime dimensions.

| Runtime filename | Dimensions | Usage / slicing |
| --- | --- | --- |
| runtime/title-scene.webp | 1400 × 933 | Opening screen; optimized 162 KB hero; prepared PNG also retained |
| runtime/title-logo.png | 768 × 328 | Transparent SOUR APPLES title |
| runtime/teacher.png | 512 × 512 | 4 × 4 cells of 128 × 128; down/left/right/up rows; idle/walk A/walk B/throw columns |
| runtime/sour-apples.png | 512 × 640 | 4 × 5 cells of 128 × 128; five personality rows; idle/walk A/walk B/stunned columns |
| runtime/school-tiles.png | 512 × 512 | 4 × 4 cells of 128 × 128; classroom, hallway, library and brick material rows |
| runtime/school-props.png | 512 × 512 | 16 transparent props: desks, lockers, shelves, boards, bell, exits, station, cart, trash, chair and books |
| runtime/pickups-effects.png | 512 × 512 | 16 transparent frames: supplies, coffee, chalk, shield, gold apple, blue/mega chalk, dust, chunks, spark, heart and trophy |
| runtime/hud-panel.png | 768 × 256 | Raster cabinet/HUD panels, frame borders and reused maze-wall edge strips |
| runtime/button-orange.png | 512 × 160 | Raster primary action button with transparent gutter |
| runtime/apple-icon.png | 64 × 64 | Brand, enemy indicator and favicon; derived from apple sheet |
| runtime/chalk-icon.png | 64 × 64 | Chalk UI; derived from pickups sheet |
| runtime/heart-icon.png | 64 × 64 | Lives; derived from pickups sheet |
| runtime/trophy-icon.png | 64 × 64 | Score UI; derived from pickups sheet |
| runtime/bell-icon.png | 64 × 64 | Exit instruction; derived from props sheet |
| runtime/board-icon.png | 64 × 64 | Blackboard material guide; derived from props sheet |
| runtime/locker-icon.png | 64 × 64 | Metal material guide; derived from props sheet |
| runtime/brick-icon.png | 64 × 64 | Brick material guide; derived from tile sheet |
| runtime/bulletin-icon.png | 64 × 64 | Absorbing material guide; derived from props sheet |

## Incremental browser captures

| Source filename | Dimensions | Placement |
| --- | --- | --- |
| source/previews/title-2026-09-05.png | 1440 × 1000 | Gallery: finished opening screen |
| source/previews/classroom-2026-09-05.png | 1366 × 900 | Gallery: first level |
| source/previews/hallway-2026-09-05.png | 1366 × 900 | Gallery: second level |
| source/previews/library-2026-09-05.png | 1366 × 900 | Gallery: third level |
| source/previews/classroom-maze-v2.png | 1366 × 900 | Archived Classroom corridor maze before floor-lighting changes |
| source/previews/hallway-maze-v2.png | 1366 × 900 | Archived Hallway corridor maze before floor-lighting changes |
| source/previews/library-maze-v2.png | 1366 × 900 | Archived Library corridor maze before floor-lighting changes |
| source/previews/classroom-maze-v3.png | 1366 × 900 | Archived Classroom: light gray floors before supply-trail removal |
| source/previews/hallway-maze-v3.png | 1366 × 900 | Archived Hallway: light gray floors before supply-trail removal |
| source/previews/library-maze-v3.png | 1366 × 900 | Archived Library: light gray floors before supply-trail removal |
| source/previews/classroom-combat-v4.png | 1366 × 900 | Archived Classroom: combat-only revision |
| source/previews/hallway-combat-v4.png | 1366 × 900 | Archived Hallway: before moving reflectors to walkable corners |
| source/previews/library-combat-v4.png | 1366 × 900 | Archived Library: before moving reflectors to walkable corners |
| source/previews/classroom-corners-v5.png | 1366 × 900 | Current Classroom; held-stride animation refined |
| source/previews/hallway-corners-v5.png | 1366 × 900 | Current Hallway: three walkable corridor-turn boards |
| source/previews/library-corners-v5.png | 1366 × 900 | Current Library: four walkable corridor-turn boards |

## Preparation and checks

`scripts/prepare-assets.mjs` removes source mattes, slices explicit source bounds, normalizes frame sizes and exports RGBA PNGs. Generated sources remain unchanged. The manifest stores source prompts, provenance, dimensions, atlas coordinates, usage and SHA-256 checksums. Tests decode PNG alpha and verify visible content and transparent corners, as well as hashes and frame bounds.

Canvas displays the approved raster assets through image blits. Physics is numeric and independent of rendering. HTML provides accessible controls and text; raster panels provide interface artwork. Small functional close, sound, fullscreen and toolbar glyphs are the only SVGs.
