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:
1 parent
e206664b3d
commit
f7ea371862
92 files changed
+4081
-21
No files matched your search
@@ -54,6 +54,7 @@ Every tunable lives in a config file or in this table. **Placeholder** means gue
|
||||
| Regenerators breakable by players | no; explosions don't hurt veins | Fine for now (Adrian, 2026-10-30) | `tools/zone_ores.py` → `global.json` | Otherwise a player could remove a vein for good |
|
||||
| Respawn block (regenerator) | the player's aim passes through it unless sneaking, so ore behind it can be mined; no collision (the mod's own); glass about 9 % opaque with a 27 % edge (was stained glass, about 50 %) | Adrian, 2026-11-09 | `mod/src/main/java/.../RegeneratorBlockMixin.java`; `pack/kubejs/assets/regenerating_ore_veins/` | Sneak-use still shows its info |
|
||||
| Homeless lines | 31 lines with no matching biome on the island: rare bucket, weight 10, at the zone's levels, anywhere in the zone | Placeholder (Adrian, 2026-11-09: rare, in fitting zones) | `world/zones.json` → `homeless` → `tools/zone_spawns.py` | Which zone each lives in is listed there and in `docs/zone-species.md` |
|
||||
| Legend summons | 22 Sigils; tier 1 Lv 70: 4 zone material, 4 diamonds, netherite ingot; tier 2 Lv 80: 4 material, 4 diamonds, nether star; tier 3 Lv 90 (Rayquaza, Mewtwo, Eternatus): 4 material, 4 netherite ingots, nether star; one at a time within 96 blocks; fight as a boss with the Guardian's Ward, arena 32 | Placeholder (Adrian, 2026-11-09: crafted summons) | `world/summons.json` → `tools/summons.py`, `tools/zone_bosses.py` (`SUMMON_ARENA`) | Nether stars come from the Sacrifice Altar at Lv 100 |
|
||||
| Vein Locator | compass + copper ingot; 75 % chance to break per use (the mod's default) | Fine for now (Adrian, 2026-10-30) | `tools/zone_ores.py` → `vein_locator.json` | The mod's default recipe needs netherite |
|
||||
| Drops for mobs the island lacks | Blaze Rod: Carkol 10 %, Torkoal 25 % ×1–2; Ghast Tear: Drifloon 5 %, Dusclops 10 %; Breeze Rod: Whimsicott 10 %; Shulker Shell: Shuckle 10 %, Cloyster 10 %; Nether Star: Charizard 5 % | Fine for now (Adrian, 2026-10-30) | `datapacks/core/data/cobblesurvival/species_additions/` | Every drop and what consumes it: `docs/pokemon-drops.md` (`tools/drop_audit.py`) |
|
||||
| Cobblebase skill gates | start: gatherer, harvester, irrigator, producer, furnace fuel, water fill, extinguisher, scout, guard; Button Isle: fishing, forager, botanist, collector, snow fill, brewing fuel, craftsman; Southwold: pharmacist, scholar, mentor (passive XP), lava fill; Westmarch: mining, excavator, architect, armorer, diving; Verdant Jungle: alchemist, trainer, smith, prospector, growth aura; Highland Meadows: speed, jump, haste, night vision, water breathing, saturation buffs; Mangrove Mire: resistance, strength buffs; Sunscorch: friend recruiter, aura boost; Frostpeak: healer, lucky charm; Deep Dark: breeder, egg hatcher | Placeholder | `datapacks/core/data/cobblesurvival/progression_gates/base.json` → `cobblebase_skills` | A zone means its soft gate, checked on the pastured Pokémon (see "Soft gate levels and materials") |
|
||||
|
||||
@@ -8,12 +8,15 @@
|
||||
|
||||
- **Ore veins:** rarer nodes and wider vein spacing, one block larger in radius. Needs a new island: the save "Cobblemon Survival Island (new veins)" has it. Your other saves keep their old veins.
|
||||
- **Respawn block:** much fainter glass; you aim through it unless sneaking. Automated: `regenerator_lets_the_aim_through`.
|
||||
- **Legend summons:** 22 Sigils, crafted from late-game materials (search "Sigil" in JEI). Used in the zone written on one, it summons a catchable legend that fights like a boss. Automated: `every_implemented_pokemon_is_obtainable`, `sigil_summons_a_catchable_legend`. The Legends chapter in the quest book lists them.
|
||||
- **Left-out Pokémon:** 31 lines (67 species) spawn rarely in fitting zones (`docs/zone-species.md`). Automated: `spawn_pools_are_zoned`, `drop_sources_match_the_server`.
|
||||
|
||||
## In game (Prism instance)
|
||||
|
||||
- [ ] In the new save, mine into an ore node or vein: the mined blocks turn into faint glass, and you can keep aiming and mining the ore behind them. Sneak and use one: its info still shows.
|
||||
- [ ] Do nodes and veins feel right: fewer, bigger? The island has 1.5–3× the old ore; tell me if that's too much.
|
||||
- [ ] Give yourself a Sigil from JEI (creative) and use it outside its zone: it refuses and says where it works. Use it in its zone: the legend appears with a sound and particles. Fight it: area attacks, at most a quarter of its HP per attack. Weaken it and catch it; afterwards it's an ordinary Pokémon in your party (no quarter-HP limit in later battles).
|
||||
- [ ] Is a Sigil the right cost, and the fight the right difficulty?
|
||||
- [ ] Spend time in Frostpeak or the Deep Sea: now and then a Beartic, Mamoswine, Empoleon or Walrein turns up. JEI's Island Drops page names the zone.
|
||||
|
||||
## Ask Adrian
|
||||
|
||||
+5
-1
@@ -329,7 +329,11 @@ Adrian's choices: Pokémon with no biome on the island become rare spawns in fit
|
||||
**Every implemented Pokémon is obtainable** (roadmap). Of 905 implemented species, 95 were out of reach by wild spawn or by evolving a wild line (2026-11-09):
|
||||
- 5 fossils (Aerodactyl, Arctovish, Arctozolt, Dracovish, Dracozolt): already obtainable. The field guide lists their fossils as found on the island, and the fossil machines are craftable.
|
||||
- 67 species in 31 lines that spawn only in biomes the island lacks, or not at all (Rotom): each line gets a home in the closest-fitting zone (`world/zones.json` → `homeless`), as a rare spawn anywhere in that zone at its levels. Conditions tied to the missing biomes are dropped. Existing spawns and homes don't move. They show in `docs/zone-species.md` and in JEI.
|
||||
- 23 legendaries, mythicals, Ultra Beasts and Paradox Pokémon, with no spawn data: crafted summons (to do).
|
||||
- 23 legendaries, mythicals, Ultra Beasts and Paradox Pokémon, with no spawn data: crafted summons (below). Naganadel comes from evolving Poipole, so 22 Sigils.
|
||||
|
||||
**Crafted summons** (Adrian, 2026-11-09). Each legend has a Sigil (`cobblesurvival:summon_sigil`, one item told apart by its custom data), crafted from four of a zone material, four of a ring item and a core: tier 1 (Lv 70) diamond and netherite ingot, tier 2 (Lv 80) diamond and nether star, tier 3 (Lv 90: Rayquaza, Mewtwo, Eternatus) netherite ingots and nether star. Used in the zone written on it, it summons a wild one six blocks ahead, one at a time within 96 blocks. It fights like a boss (`bosses/summon_<species>.json`: area attacks by level and type, a 32-block arena, the Guardian's Ward, so at most a quarter of its HP per attack), except it can be caught: the pack's usual catching rules apply. On capture it loses every boss mark and is an ordinary Pokémon. If it's knocked out, the Sigil is spent; if the fight is lost it heals and stays. Which zone, tier and material: `world/summons.json` → `tools/summons.py` (recipes and data, with the name and "use in" text on the recipe's result so the client needs no server data). The quest book has a Legends chapter with a quest per Sigil; JEI lists each Sigil as its own item, and the Island Drops pages say where a legend is summoned. Moltres, Regigigas and Eternatus are guardians too: those stay uncatchable, the summoned ones are separate.
|
||||
|
||||
Self-tests: `every_implemented_pokemon_is_obtainable` (every implemented species' line spawns, comes from a fossil or has a Sigil; a new Cobblemon version adding species fails it until they have a home), `sigil_summons_a_catchable_legend`.
|
||||
|
||||
**Ore veins** (Adrian, 2026-11-09: more sporadic but bigger). Nodes are about 40 % rarer and veins about 30 % further apart, each one block larger in radius; the bigger size outweighs the spacing, so the island holds 1.5–3× the ore. Veins are laid down when chunks generate, so this needs a newly generated island.
|
||||
|
||||
|
||||
+20
-1
@@ -15,7 +15,8 @@
|
||||
# checkmark: true the player ticks it
|
||||
# A task may also have a title. A chapter with `zone: <id>` starts with the quests of `zone_chapter`, where
|
||||
# {zone}, {low}, {high}, {hazard_text}, {guardian}, {guardian_level}, {drops} and {ore_names} come from the
|
||||
# zone's data; a template quest with `when:` is left out of zones that lack the thing named.
|
||||
# zone's data; a template quest with `when:` is left out of zones that lack the thing named. A chapter with
|
||||
# `summons: true` adds a quest per Sigil (world/summons.json), `columns: <n>` lays those out in a grid.
|
||||
|
||||
book:
|
||||
title: Cobblemon Survival
|
||||
@@ -260,6 +261,24 @@ chapters:
|
||||
- event: end_boss
|
||||
title: Beat Eternatus
|
||||
|
||||
- id: legends
|
||||
title: Legends
|
||||
subtitle: What never spawns on its own
|
||||
icon: cobblesurvival:summon_sigil
|
||||
summons: true
|
||||
columns: 6
|
||||
quests:
|
||||
- id: about
|
||||
title: Calling a Legend
|
||||
icon: cobblesurvival:summon_sigil
|
||||
size: 1.5
|
||||
text: |
|
||||
Legendary Pokémon don't spawn on their own. Each has a Sigil you can craft from late-game materials: look "Sigil" up in JEI. Using one in the zone written on it summons the Pokémon.
|
||||
It fights like a guardian, area attacks and all, but this one can be caught. If it's knocked out, the Sigil is lost.
|
||||
tasks:
|
||||
- checkmark: true
|
||||
title: Read this
|
||||
|
||||
- id: machines
|
||||
title: Pokémon Machines
|
||||
subtitle: Five machines, each powered by a Pokémon inside it
|
||||
|
||||
Reference in new issue
Block a user