ESCAPE FROM THE GIANT PIGEON — SCRATCH PRODUCTION PILOT

This directory is generated by tools/scratch/build-giant-pigeon.js.

Files
-----
- escape-from-the-giant-pigeon-starter.sb3: setup, media, variables, positions,
  and short in-editor instructions; students still build the game systems.
- escape-from-the-giant-pigeon-finished.sb3: complete playable reference.
- escape-from-the-giant-pigeon-assets.zip: readable original source media.
- assets/: the readable SVG and WAV source files used by the packages.
- project-sketch.svg: responsive system sketch used by the project page.

Sprite and costume mapping
--------------------------
Player: player.svg (normal), player-caught.svg (caught); centre 35, 45.
Giant Pigeon: giant-pigeon.svg (wings up), giant-pigeon-wings-down.svg
(wings down); centre 75, 55.
Safe Zone: safe-zone.svg (inactive), safe-zone-active.svg (active); centre 45,
52.5.
Stage: stage-backdrop.svg (Pigeon Chase Map); centre 240, 180.

Sound mapping
-------------
Stage: start.wav. Player: caught.wav. Safe Zone: safe.wav.

Students may redraw, repaint, rename, or replace every original asset. If a
sprite or costume name changes, update any matching Scratch dropdowns. Preserve
the suggested costume centres when swapping equivalent-size SVGs.

Regenerate and validate
-----------------------
cd tools/scratch
npm ci
npm run build
npm run validate

The builder reads the structured scripts in
sites/shkolakoda/scratch_projects/escape-from-the-giant-pigeon.json. It refuses
to build if the editable scratchblocks text disagrees with the shared block AST.
The validator checks archives, hashes, media, scripts, and loads both projects
through the pinned official Scratch VM.

Manual release gate
-------------------
After automated validation, open both SB3 files once in the graphical Scratch
editor. Confirm the starter opens as incomplete and the finished reference can
win, be caught, and restart with R. This graphical check remains required before
public deployment.
