Phase 9: crafted summons for the legendaries

Adrian, 2026-11-09: legendaries, mythicals, Ultra Beasts and Paradox Pokemon
come from crafted summons. 22 Sigils (Naganadel evolves from Poipole), one
item told apart by custom data, from world/summons.json through
tools/summons.py: late-game recipes in three tiers (Lv 70, 80, 90), each used
in a fitting zone. A summoned legend fights as a boss (area attacks by level
and type, arena 32, the Guardian's Ward) but can be caught; on capture it
loses every boss mark. One at a time within 96 blocks.

Quest book: a Legends chapter, one quest per Sigil (97 quests). JEI lists each
Sigil as its own item, and Island Drops says where a legend is summoned; drops
Cobblemon names but doesn't have (Ho-Oh's Sacred Ash) get no slot.

Self-tests every_implemented_pokemon_is_obtainable (spawn, fossil or Sigil for
every implemented species) and sigil_summons_a_catchable_legend. Self-tests
and the island check pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
claudeandClaude Opus 5.5 committed 2026-11-09 13:03:50 +01:00
1 parent e206664b3d
commit f7ea371862
92 files changed
+4081 -21

No files matched your search

@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "articuno",
"level": 70,
"zone": "frostpeak"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "eternatus",
"level": 90,
"zone": "the_end"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "hooh",
"level": 80,
"zone": "highlands"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "ironleaves",
"level": 70,
"zone": "jungle"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "latias",
"level": 70,
"zone": "highlands"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "latios",
"level": 70,
"zone": "highlands"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "lugia",
"level": 80,
"zone": "deep_sea"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "mew",
"level": 80,
"zone": "jungle"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "mewtwo",
"level": 90,
"zone": "deep_dark"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "moltres",
"level": 70,
"zone": "basalt"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "poipole",
"level": 70,
"zone": "the_end"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "rayquaza",
"level": 90,
"zone": "frostpeak"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "regice",
"level": 70,
"zone": "frostpeak"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "regidrago",
"level": 70,
"zone": "sunscorch"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "regieleki",
"level": 70,
"zone": "westmarch"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "regigigas",
"level": 80,
"zone": "deep_dark"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "regirock",
"level": 70,
"zone": "dripstone"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "registeel",
"level": 70,
"zone": "deep_dark"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "walkingwake",
"level": 70,
"zone": "mire"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "xerneas",
"level": 80,
"zone": "jungle"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "zapdos",
"level": 70,
"zone": "westmarch"
}
@@ -0,0 +1,6 @@
{
"_comment": "Generated by tools/summons.py from world/summons.json; do not edit by hand.",
"species": "zarude",
"level": 80,
"zone": "jungle"
}