Phase 3: strong flyers only spawn in high-level zones

- tools/zone_spawns.py: a species ridable through the air with top
  speed >= 60 or top stamina >= 85 never spawns in a zone whose band
  starts below Lv 30; lines that start as one are only placed in such
  zones, and the tool refuses to write pools that break the rule.
  Drampa moves to Sunscorch; Aerodactyl is fossil-only; Salamence never
  spawns wild (Bagon and Shelgon stay in the Dripstone caves).
- Ride stats stay Cobblemon's until play-tested (species_additions can
  override riding later).
- Phase 3 checklist: all steps in, approval checkpoint for Adrian.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
claudeandClaude Opus 5.5 committed 2026-10-30 02:01:44 +01:00
1 parent 173203eeb5
commit 55c336f89e
12 files changed
+2115 -576

No files matched your search

+2
View File
@@ -113,6 +113,8 @@ Order of play the bands suggest: Button Isle → Southwold → Westmarch or Jung
**Soft level pressure** (Phase 3, step 6; no hard level caps): a Pokémon more than 5 levels above the band of the zone its trainer is in gets 10 % less experience per extra level, down to 10 % (`zone/LevelPressure.kt`, values in `world/zones.json` → `level_pressure`). It counts battle experience and anything else except Exp. Candy and commands. The roadmap also offered a disobedience chance; experience alone is gentler and Cobblemon has nothing to build disobedience on. Tested: `level_pressure_cuts_xp`.
**Flyers** (Phase 3, step 7): strong flyers only spawn in high-level zones. A species you can ride through the air with a top flying speed of 60 or a top stamina of 85 (Cobblemon's ride stats) never spawns in a zone whose band starts below Lv 30; its weaker pre-evolutions still do, and a line that starts as a strong flyer is only placed in such zones (`tools/zone_spawns.py`, which refuses to write pools that break this). So Drampa lives in Sunscorch, Togekiss, Staraptor and Braviary in Frostpeak, Charizard in the Basalt Furnace; Salamence never spawns (Bagon and Shelgon stay in the Dripstone caves), and Aerodactyl only comes from fossils. Ride stats stay Cobblemon's for now: they can be overridden per species with a `species_additions` file replacing `riding`, best tuned after play-testing how far a flyer takes you on a 3 km island. Nothing blocks mounting.
**Alpha guardians** (Phase 3, step 4; Adrian, 2026-10-29: fixed spots, back 5 hours after being beaten):
- One per zone except the Shallows, Lush Caves and Dripstone; the Basalt Furnace gets its boss in Phase 7. Each stands at its zone's sample point (deep inside the zone; a cave floor for the Deep Dark) and only appears while a player is within 96 blocks; it wanders no further than 24 blocks.
- The guardian is the strongest Pokémon that spawns walking (or, at sea, swimming) in its zone, five levels above the band, half again as big, and uncatchable: Pachirisu (Button Isle), Sigilyph (Southwold), Carbink (Westmarch), Tangrowth (Jungle), Arcanine (Mire), Cinderace (Highlands), Delphox (Sunscorch), Tyranitar (Frostpeak), Kingdra (Deep Sea), Dusknoir (Deep Dark). `world/zones.json` → `guardian.species` overrides the pick.