Skip to content

LayraAlixis/dimension-separator

Repository files navigation

Dimension Separator

A Minecraft Forge mod for modpack makers that lets you restrict which mods can interact with which dimensions.

Tested on Minecraft 1.20.1 with Forge 47.1.3+.


What does it do?

For each dimension, you can blacklist or whitelist mod namespaces to block:

  • World generation features (ores, plants, structures...)
  • Mob spawning
  • Loot tables (chests, mob drops...)
  • Item usage (right-click on blocks, in the air, or on entities)
  • Structure generation

Installation

  1. Download the mod from CurseForge or Modrinth
  2. Drop it into your mods/ folder
  3. Launch the game once to generate the default config file
  4. Edit config/dimensionseparator.json to your needs

Server-side only — clients do not need it installed.


Configuration

The config file is located at config/dimensionseparator.json.

{
    "dimensions": {
        "minecraft:overworld": {
            "mode": "blacklist",
            "bypassLevel": 2,
            "namespaces": ["ars_nouveau", "iceandfire"],
            "blacklistedIds": ["minecraft:zombie"],
            "whitelistedIds": ["ars_nouveau:bookwyrm_familiar"],
            "features": true,
            "mobs": true,
            "loot": true,
            "items": true,
            "structures": true
        },
        "yourid:yourdim": {
            "mode": "whitelist",
            "bypassLevel": -1,
            "namespaces": ["minecraft"],
            "blacklistedIds": ["minecraft:zombie_piglin"],
            "whitelistedIds": [],
            "features": true,
            "mobs": true,
            "loot": false,
            "items": false,
            "structures": false
        }
    }
}

Fields

Field Type Description
mode string "blacklist" to block listed mods, "whitelist" to allow only listed mods
bypassLevel int Minimum operator level allowed to /summon blocked entities (-1 or absent = no bypass)
namespaces string array Mod IDs to block or allow depending on mode
blacklistedIds string array Specific IDs always blocked, regardless of mode (e.g. "minecraft:zombie")
whitelistedIds string array Specific IDs always allowed, regardless of mode (e.g. "ars_nouveau:bookwyrm_familiar")
features boolean Block world generation features (ores, plants...) from listed mods
mobs boolean Block mob spawning from listed mods
loot boolean Block loot tables from listed mods (chests, mob drops...)
items boolean Block item usage (right-click) from listed mods
structures boolean Block structure generation from listed mods

Setting a category to false disables blocking for that category, even if the namespace is listed.

Priority rules

When multiple rules could apply, IDs always take priority over namespaces:

  1. blacklistedIds → always blocked, regardless of mode
  2. whitelistedIds → always allowed, regardless of mode
  3. mode: blacklist → blocked if namespace is in namespaces
  4. mode: whitelist → blocked if namespace is not in namespaces

Finding a mod's namespace

The namespace is the mod ID, visible in item tooltips when pressing F3+H. For example, for ars_nouveau:wilden_stalker, the namespace is ars_nouveau.


Commands

Command Permission Description
/dimensionseparator reload Operator (level 2) Reloads the config without restarting

The command response is displayed in the player's game language (English and French supported).


Known Limitations

  • /locate on a blocked structure will search indefinitely without result. This is vanilla Minecraft behavior when no matching structure exists in the dimension.
  • Client-side keybinds (e.g. opening a mod's GUI with a custom key) are not blocked — only right-click interactions are covered. In practice, opening an interface without being able to interact with the dimension is harmless.
  • Item usage via custom keybinds is client-side and cannot be intercepted server-side.

Compatibility

This mod uses Mixins and event handlers and should be compatible with most Forge mods. If you encounter a conflict, please open an issue.


License

MIT — see LICENSE

Issues & Contributions

Found a bug or have a suggestion? Open an issue on GitHub.

About

Minecraft Forge mod (1.20.1) for modpack makers — restrict which mods can interact with which dimensions. Block mob spawning, loot tables, world generation and item usage per dimension via a simple JSON config.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages