Skip to content

Conditional Barriers

A Fabric mod for Minecraft that allows players to pass through barrier blocks based on configurable rules or external conditions via an API.

Fabric
Loaders
Fabric
Downloads on Modrinth
1.4K
Followers on Modrinth
0
versions
2
Updated
August 10, 2026Aug 10
Published
in 2026

At a glance

Runs on Fabric
For Minecraft 1.21.1
Needed in the game and on the server
Latest version — 2.0.0 from August 10, 2026
License MIT — free
Where it's needed
In gamerequiredOn serverrequired

Needed both in the game and on the server

Game versions1.21.1

ConditionalBarriers

ConditionalBarriers is a Fabric mod for Minecraft that allows players to pass through barrier blocks based on configurable rules or external conditions via an API.

By default, barrier blocks are impassable for everyone. This mod changes that by allowing fine-grained control over who can walk through them, making it ideal for map makers, server administrators, and developers.

Features

  • Configurable Pass Rules: Define who can pass through barriers using various criteria (Game Mode, Permission Level, Player Name, UUID, Scoreboard Tags).
  • Developer API: Easily register custom conditions to control barrier accessibility from other mods.
  • In-game Commands: Manage the mod's state and reload configuration without restarting the server.
  • No More Suffocation: Automatically prevents players from suffocating inside barriers if they are allowed to pass through them.
  • High Performance: Implemented using optimized Mixins to ensure minimal impact on server performance.

Commands

The mod provides the following commands (requires permission level 2 or higher):

  • /conditionalbarriers on: Enables rule evaluation.
  • /conditionalbarriers off: Disables the mod's logic (making all barriers passable for everyone).
  • /conditionalbarriers status: Displays whether the mod is currently active.
  • /conditionalbarriers reload: Reloads the configuration from the disk.
  • /cb: A shorter alias for /conditionalbarriers.

Configuration

The configuration file is located at config/conditionalbarriers.json. It allows you to define a list of rules that are evaluated in order.

Example Configuration

{
  "defaultPassable": false,
  "rules": [
    {
      "type": "SPECTATOR",
      "action": "ALLOW"
    },
    {
      "type": "CREATIVE",
      "action": "ALLOW"
    },
    {
      "type": "SCOREBOARD_TAG",
      "action": "ALLOW",
      "value": "can_pass_barriers"
    },
    {
      "type": "OPERATOR_LEVEL",
      "action": "ALLOW",
      "operatorLevel": 4
    }
  ]
}

Rule Types

  • CREATIVE: Matches players in Creative mode.
  • SPECTATOR: Matches players in Spectator mode.
  • OPERATOR_LEVEL: Matches players with a specific permission level.
  • PLAYER_NAME: Matches a specific player name (case-sensitive option available).
  • PLAYER_UUID: Matches a specific player UUID.
  • SCOREBOARD_TAG: Matches players with a specific scoreboard tag.

Installation & Requirements

ConditionalBarriers is required on both the client and the server to function correctly. This is because the client's physics engine needs to know when a barrier block should be non-solid to allow for smooth movement.

  1. Make sure you have the Fabric Loader installed on both sides.
  2. Drop the ConditionalBarriers JAR file into the mods folder of both your client and server.
  3. (Optional) Install Fabric API if not already present.

Developer API

If you are a mod developer, you can use the ConditionalBarriersApi to add your own logic.

Adding the API to your project

To use the ConditionalBarriers API in your own mod, you can add it as a dependency using Modrinth or your preferred Maven repository.

Gradle (Modrinth)
  1. Add the Modrinth repository to your build.gradle:
repositories {
    maven {
        name = "Modrinth"
        url = uri("https://api.modrinth.com/maven")
    }
}
  1. Add the dependency:
dependencies {
    modImplementation "maven.modrinth:conditional-barriers:<VERSION>"
}

*Note: Replace `` with the actual version you want to use.*

fabric.mod.json

Add the mod to your depends section to ensure it's present at runtime:

"depends": {
    "conditionalbarriers": ">=1.0.0"
}

Registering a Custom Condition

ConditionalBarriersApi.registerCondition(new Identifier("mymod", "special_access"), context -> {
    if (someCustomLogic(context.player())) {
        return BarrierDecision.ALLOW; // Let them pass
    }
    return BarrierDecision.PASS; // Let other rules decide
});

Manual Overrides

You can also force a specific player to be able to pass (or be blocked) regardless of other rules:

ConditionalBarriersApi.setPlayerOverride(player, PlayerBarrierOverride.ALLOW);

Installation & Requirements

  1. Make sure you have the Fabric Loader installed.
  2. Drop the ConditionalBarriers JAR file into your mods folder.
  3. (Optional) Install Fabric API if not already present.

License

This project is licensed under the terms specified in the LICENSE.txt file.

FAQ

How to install Conditional Barriers?

Install Fabric for your Minecraft version, download Conditional Barriers for the same version and loader, put the file into the mods folder and launch the game with the loader profile.

Which Minecraft versions does Conditional Barriers support?

Conditional Barriers has builds for Minecraft 1.21.1.

Is Conditional Barriers needed on the server?

Needed in the game and on the server

License and source
MIT Licensefree to use and share with credit to the author
Original — Modrinth↗Files unchanged, verified with SHA-512Is this your mod? For rights holders

The site uses cookies: the necessary ones for sign-in and the theme, plus the Yandex Metrica and LiveInternet visit counters — they show us how the site is used. We have no advertising cookies. More