CobbleRegions
ModMIT

CobbleRegions

Server-side Cobblemon sidemod that adds region-based level caps with per-player progression.

31
Downloads
1
Followers
2 months ago
Updated
📦
2
Versions

📖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.

  • /regions opens 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.