Description
CobbleSpawnRegions
CobbleSpawnRegions is a Fabric mod for Cobblemon that gives server owners and map makers powerful region-based control over Pokémon spawning. Define custom areas, manage natural spawn restrictions, create custom regional Pokémon spawns, and tune each region through commands or in-game GUIs.
Dependencies
Features
- Region-Based Spawn Control: Create named regions and control how Cobblemon spawning behaves inside them.
- Coordinate & Chunk Claiming: Use claim sticks to select exact block positions or full chunk-based regions.
- Priority System for Overlapping Regions: Higher-priority regions control overlapping areas first, with smaller regions used as a tie-breaker.
- Natural Spawn Restrictions: Disable natural spawns entirely, block specific species, block Cobblemon labels, or exclude Pokémon by scanned condition strings.
- Owned Pokémon Bypass: Optionally allow player-owned Pokémon to ignore region restrictions.
- Custom Regional Spawns: Configure regions to spawn their own Pokémon automatically on timers.
- Spawn Amount Control: Set how many Pokémon a region attempts to spawn each timer cycle.
- Advanced Pokémon Customization: Configure species, forms, aspects, spawn chance, chance type, levels, IVs, EV rewards, size, held items, capture rules, moves, and per-entry spawn caps.
- Time, Weather & Block Conditions: Limit spawns by day/night, weather, and allowed spawn blocks such as
#solid,#water,#air, or specific block IDs. - Region and Entry Spawn Caps: Limit total live custom-spawned Pokémon per region and per Pokémon entry.
- Stay-In-Region Behavior: Spawned Pokémon can path back into their region using random, center, or closest return targeting.
- Capture Restrictions: Make region-spawned Pokémon uncatchable or restrict them to specific Poké Balls.
- Custom EV Rewards: Override EVs awarded when region-spawned Pokémon are defeated.
- Player Activation Range: Optionally pause custom spawning unless a player is near the region.
- Capped Force Chunk Loading: Optionally force-load region chunks up to a configurable safety cap.
- Persistent Spawn Tracking: Spawned Pokémon are tracked across chunk unloads so caps remain accurate.
- GUI Management: Manage regions, natural restrictions, custom spawns, Pokémon settings, labels, blocklists, and global options through in-game GUIs.
- Admin Utility Commands: Teleport to regions, inspect nearby Pokémon, force spawns, clone region settings, add/remove Pokémon entries, and clear spawned Pokémon.
- Particle Visualization: Toggle region visualization to see claimed areas in-game.
- Performance-Aware Spawn Scanning: Spawn points are scanned from loaded chunks over time instead of doing heavy searches every spawn attempt.
Commands
The primary command is /csr.
| Command | Access | Description |
|---|---|---|
/csr giveclaimstick coords |
OP / command access | Gives a coordinate claim stick for selecting exact block positions. |
/csr giveclaimstick chunk |
OP / command access | Gives a chunk claim stick for selecting chunk-based regions. |
/csr create <name> |
OP / command access | Creates a region from your current claim stick selection. |
/csr clone <sourceRegion> <newName> |
OP / command access | Copies a region's settings and Pokémon entries onto your current claim selection. |
/csr list |
OP / command access | Lists all configured regions. |
/csr info <regionId> |
OP / command access | Shows detailed information about a region. |
/csr delete <regionId> |
OP / command access | Deletes a region and clears its tracking data. |
/csr rename <regionId> <newName> |
OP / command access | Renames a region's display name. |
/csr visualize <regionId> |
OP / command access | Toggles particle visualization for a region. |
/csr edit <regionId> |
OP / command access | Opens the editor GUI for a specific region. |
/csr gui |
OP / command access | Opens the main region list GUI. |
/csr teleport <regionId> |
OP / command access | Teleports you to the center of a region. |
/csr tp <regionId> |
OP / command access | Alias for /csr teleport. |
/csr priority <regionId> <value> |
OP / command access | Sets region priority from -1000 to 1000. |
/csr addmon <region> <pokemon> [form] [aspects] |
OP / command access | Adds a default custom Pokémon entry to a region. |
/csr removemon <region> <pokemon> [form] [aspects] |
OP / command access | Removes a matching Pokémon entry from a region. |
/csr forcespawn <regionId> [amount] |
OP / command access | Immediately attempts custom spawns in a region. |
/csr killspawned <regionId> [loaded|tracked] |
OP / command access | Removes loaded spawned Pokémon, or clears tracked spawn records too. |
/csr setspawnamount <regionId> <amount> |
OP / command access | Sets how many Pokémon the region attempts per spawn cycle. |
/csr playeractivation <regionId> <true|false> [range] |
OP / command access | Toggles player-range activation and optionally sets the range. |
/csr forcechunks <regionId> <true|false> [maxChunks] |
OP / command access | Toggles capped force chunk loading for a region. |
/csr inspectnearest |
OP / command access | Prints details and condition strings for the nearest Pokémon. |
/csr check |
OP / command access | Shows which region controls your current position. |
/csr reload |
OP / command access | Reloads config files and rebuilds spawn scan data. |
Configuration
CobbleSpawnRegions uses a multi-file configuration system located in config/cobblespawnregions/.
config.jsonc: Global settings for the mod./regions/: Individual.jsoncfiles for each configured region.tracked_spawns.json: Persistent tracking data for region-spawned Pokémon.
Global Settings
| Setting | Description |
|---|---|
debugEnabled |
Enables detailed debug logging. |
showUnimplementedPokemonInGui |
Controls whether unimplemented species appear in selection GUIs. |
showFormsInGui |
Controls whether forms are shown in GUI selection menus. |
showAspectsInGui |
Controls whether aspects are shown in GUI selection menus. |
killTrackedPokemonOnServerStop |
Removes loaded tracked Pokémon when the server stops. |
Region Settings
| Setting | Description |
|---|---|
regionId |
Internal ID used by commands and config files. |
regionName |
Display name shown in GUIs and messages. |
pos1 / pos2 |
The two corners of the region. |
dimension |
The dimension the region belongs to. |
mode |
Creation mode: COORDS or CHUNK. |
priority |
Controls which region wins when regions overlap. |
spawnTimerTicks |
Delay between custom spawn attempts. |
spawnAmountPerSpawn |
Number of Pokémon attempted each spawn cycle. |
maxTotalSpawns |
Maximum live custom-spawned Pokémon from this region. 0 means unlimited. |
requirePlayerInRange |
If true, custom spawning only runs when a player is nearby. |
playerActivationRange |
Extra range around the region bounds checked for nearby players. |
forceChunkLoading |
If true, force-loads region chunks up to the configured cap. |
maxForceLoadedChunks |
Maximum number of chunks this region may force-load. |
selectedPokemon |
List of custom Pokémon entries this region can spawn. |
spawnRestrictions |
Natural spawn restriction settings. |
Natural Spawn Restrictions
| Setting | Description |
|---|---|
disableAll |
Blocks all natural Cobblemon spawns where this region controls the position. |
excludeOwnedPokemon |
Allows owned Pokémon to bypass restrictions. |
disallowedSpecies |
Species IDs blocked from naturally spawning. |
disallowedLabels |
Cobblemon labels to block. |
exclusionConditions |
Scanned Pokémon property strings used to block natural spawns. |
Pokémon Entry Options
| Setting | Description |
|---|---|
pokemonName |
Pokémon species to spawn. |
formName |
Optional form name. |
aspects |
Optional aspects such as shiny or form-related aspects. |
spawnChance |
Spawn chance or weight. |
spawnChanceType |
COMPETITIVE weighted selection or INDEPENDENT percentage roll. |
minLevel / maxLevel |
Level range for spawned Pokémon. |
maxSpawnCount |
Maximum live Pokémon for this entry. 0 means unlimited. |
spawnSettings |
Time, weather, and allowed spawn block settings. |
wanderingSettings |
Stay-in-region pathing behavior. |
captureSettings |
Catchability and required Poké Balls. |
ivSettings |
Optional custom IV ranges. |
evSettings |
Optional custom EV rewards when defeated. |
sizeSettings |
Optional min/max scale modifiers. |
heldItemsOnSpawn |
Optional held item chances. |
moves |
Optional custom initial moves, including forced moves. |


