Isle-Slingers/js/levels/agents.md
Relay dff5dd5b30 Clean release scrub: remove internal fleet references
Removes internal process references so the repo is presentable to an
outside audience: dropped the internal build-retrospective doc
(process log with internal terms, not useful to an outside reader),
and reworded remaining internal references in code comments and
module docs (agents.md cards, architecture.md, MODULES.md,
index.html, package.json) to generic descriptions of what changed
and when, with no behavior change -- full 47/47 suite re-run green
after the scrub, every edit verified comment/doc-only via diff.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-29 14:36:52 +00:00

14 lines
878 B
Markdown

# js/levels/ — agents.md
Part of the modularization pass. Module map: `MODULES.md`; runtime model: `architecture.md`.
The levels **module** (aggregator). Shared scope `L`.
- `index.js` runs helpers first (constructors + SLING anchor), then one installer
per level, and exports `ISLE_LEVELS = { LEVELS, SLING }` — key-for-key stable.
- Level objects: `id, name, birds[], sling, stars[3] (ascending), decor, blocks[]
(centers! x,y = block CENTER), enemies[] (x,y = enemy center)`. The
level-integrity test enforces world bounds, support (ground or flat block top)
and non-decreasing enemy-HP difficulty — keep new levels honest.
- Adding level 6+ = add `data/level-6.js` + register it in index.html AND in the
aggregator's browser part-list expectation (order = difficulty order).
- Do not import from physics; levels are pure data plus the constructor helpers.