CobbleRegions
Server-side Cobblemon sidemod that adds region-based level caps with per-player progression.
📖About CobbleRegions
CobbleRegions
Server-side Cobblemon sidemod that adds region-based level caps with per-player progression.
Each Minecraft world/dimension is assigned to a Region. Every Region has its own ordered cap track
(for example: 14 -> 22 -> 28). Players can travel freely, but a Pokemon can never level past the
cap currently unlocked in its origin Region.
Core Behavior
- The player's current Region is based on their dimension/world.
- The active cap is the current unlocked cap of that Region.
- Each Pokemon has a persistent Origin Region (caught/hatched/received).
- EXP is blocked so Pokemon cannot exceed their Origin Region cap, even in higher-cap Regions.
Config
Config is stored at config/cobbleregions.json on the server.
Example:
{
"enableProgressCommands": false,
"regions": [
{
"id": "region_a",
"dimensions": ["minecraft:overworld"],
"caps": [14, 22, 28, 40],
"capMessages": {
"14": "Level cap reached for this region.",
"22": "Another cap reached."
}
},
{
"id": "region_b",
"prerequisite": "region_a",
"prerequisiteMessage": "Complete {prerequisite} before leveling in {region}.",
"dimensions": ["minecraft:the_nether"],
"caps": [14]
}
]
}
If a Region has no caps configured, it is treated as unlimited.
Commands
Command access uses permission node cobbleregions.command.regions (defaults to permission level 2).
Optional progress commands use permission node cobbleregions.command.regions.progress.
/regionsopens the admin UI for region management./regions progress get <player> <region>shows a player's cap for the region./regions progress set <player> <region> <cap>sets a player's cap value for the region./regions progress advance <player> <region>advances to the next cap./regions progress reset <player> <region>resets to the first cap./regions progress complete <player> <region>sets progress to the final cap.
API
The RegionProgressApi class provides programmatic progress control for other mods or integrations.
Notes:
- Caps must be strictly increasing.
- Origin Region is set automatically when a Pokemon is captured, hatched, or gained.
- Progress set requires a cap value that exists in the region's caps list.
- A region can define a prerequisite; players cannot gain XP in that region until the prerequisite region is completed.
- Messages support MiniMessage formatting and
{cap},{region},{prerequisite},{pokemon}placeholders. - The admin UI opens a region list; use Create to enter an id in chat, left-click to edit, right-click to delete.
- The region edit screen manages dimensions, caps, cap messages, and player progress.