promotional bannermobile promotional banner

Legendary vault[cobblemon]

LegendaryVault expands Cobblemon with Legendary & Mythical adventures! Explore natural spawns, rituals, dungeons, dojos, bosses, PokéTab, Terralith biomes, Arceus Plate/Azure Flute progression, multiplayer support, and configurable encounters.
Back to Files

Legendary vault-2.0.5-1.21.1

File nameLegendaryVault-2.0.5-1.21.1.jar
Uploader
WafaabbasWafaabbas
Uploaded
Sep 15, 2026
Downloads
448
Size
2.5 MB
Mod Loaders
Fabric
File ID
8885156
Type
R
Release
Supported game versions
  • 1.21.1

Curse Maven Snippet

Fabric

modImplementation "curse.maven:legendary-vault-1656511:8885156"

Learn more about Curse Maven

What's new

# LegendaryVault — Changelog

**Minecraft 1.21.1 · Fabric · Cobblemon 1.8.0 Compatible**
**UB Natural Spawn Patch for Ultra Space Mod**

---

## v47 — UB Natural Spawn Patch (September 15, 2026)

### Overview

Added **natural Ultra Beast spawning** for all 11 Generation 7 Ultra Beasts to the LegendaryVault v47 natural-spawn system. Ultra Beasts spawn **only** in the `ultraspace:ultra_space` dimension using the existing LegendaryVault NATURAL spawn pipeline. Each UB is assigned to specific biomes and location types matching its lore and habitat.

### Ultra Beasts Added (11 total)

| # | UB | rarityWeight | Biomes | locationTypes | canFly | spawnMode |
|---|---|---|---|---|---|---|
| 1 | Nihilego | 0.35 | crystal_wastes | WATER | true | NATURAL |
| 2 | Buzzwole | 0.30 | ultra_forest, mega_void_forest | LAND, TREE_TOP | false | NATURAL |
| 3 | Pheromosa | 0.30 | ultra_desert | LAND | false | NATURAL |
| 4 | Xurkitree | 0.35 | obsidian_spires | LAND | false | NATURAL |
| 5 | Celesteela | 0.25 | ultra_forest, mega_void_forest | LAND | false | NATURAL |
| 6 | Kartana | 0.30 | ultra_forest | LAND | false | NATURAL |
| 7 | Guzzlord | 0.20 | ultra_desert | LAND | false | NATURAL |
| 8 | Stakataka | 0.20 | obsidian_spires | LAND | false | NATURAL |
| 9 | Blacephalon | 0.20 | ultra_forest, mega_void_forest | LAND | false | NATURAL |
| 10 | Poipole | 0.10 | ultra_desert | LAND | false | NATURAL |
| 11 | Naganadel | 0.10 | all 6 (wiki display only) | AIR, LAND | true | RITUAL |

### Common Spawn Settings (All UBs)

- **Dimension**: `ultraspace:ultra_space` only (enforced by `SpawnConditionChecker.checkDimension()`)
- **Rarity Tier**: `RARE_LEGENDARY` (not MYTHICAL — avoids `allowMythicals` gate)
- **Time**: `ANY` (any time of day)
- **Weather**: `ANY` (weight 1.0)
- **Y Range**: -64 to 320
- **Nearby Block**: `ANY`
- **Moon Phase**: `ANY`

### New Feature: TREE_TOP Spawn Location

This patch introduces `TREE_TOP` as a new `SpawnLocation` enum value, enabling Pokémon to spawn on top of tree canopies.

1. **Enum**: `SpawnLocation.TREE_TOP` added to the existing `SpawnLocation` enum (alongside `LAND`, `AIR`, `WATER`, `WATER_SURFACE`, `UNDERGROUND`, `INDOORS`, `MANMADE`).

2. **Detection** (`SpawnEnvironment.classify()`): A position is classified as TREE_TOP when:
   - The block at the position is air with clear collision space
   - The block below (the "floor") is a solid, non-empty collision block
   - That floor block is a tree block — identified by checking if the block's registry path contains `log`, `leaves`, `_stem`, `mushroom`, or equals `nether_warts`
   - There are 2 blocks of clear air above the position

3. **Resolution** (`SpawnPositionResolver.resolveTreeTop()`): Uses the `MOTION_BLOCKING` heightmap (which includes foliage) to find the highest non-air block at a candidate XZ, then verifies the block below that position is actually a tree block (log/leaves/stem/mushroom).

4. **Safety** (`SpawnPositionResolver.isTreeTopSafe()`): Validates that the position has 3 blocks of clear collision space above, no fluid at the position, and the floor block is a tree block with non-empty collision shape.

5. **Multi-location support**: `findSpawnPosition()` and `findPatrolPosition()` now iterate over ALL `entry.getLocationTypes()` per random position attempt. Previously, only the primary `location` was used. Now, entries like Buzzwole (LAND + TREE_TOP) will try both resolution strategies at each candidate position, increasing spawn success rate.

### Special Cases

  • **Nihilego**: Uses `location=WATER` and `locationTypes=[WATER]` — spawns in water bodies within crystal_wastes. `canFly=true` allows it to float above water.
    - **Buzzwole**: Uses `locationTypes=[LAND, TREE_TOP]` — will spawn on the ground or on top of tree canopies. The only UB with multi-location spawning.
    - **Naganadel**: `spawnMode=RITUAL` — excluded from `getNATURAL_SPAWN_POOL()`, so it will NOT spawn naturally. Retained in the registry for PokéTab wiki display and ritual/shrine spawning. All 6 biomes are listed for wiki display purposes only.