Tags
Creators
Details
21.1.10
Compatibility
Changes
21.1.10
- Added optional team and tag restrictions: set
useTeamAndTagRestrictionstotruein the common config to give different players different rules based on the vanilla scoreboard team they are on and the vanilla entity tags they carry teamRestrictionsmaps a scoreboard team name to its ownrestrictedSlots, andtagRestrictionsdoes the same for an entity tag, both written in the common config- Team and tag rules use the exact same entries a normal slot rule does, so item ids,
#tags, component filters, restriction groups and customdisplayitems all work inside them with no extra configuration - A player matched by a team or tag rule uses that set instead of
restrictedSlots; the global rules are a fallback for players that match nothing, not a layer merged underneath the targeted ones - A vanilla player is on at most one team, so at most one team rule applies, while every matching tag rule is combined
- Tag rules override team rules when both claim the same slot, and matching tag names are applied in alphabetical order so two tags claiming one slot always resolve the same way
- With
useClientRestrictionenabled, each player's own rules stay the most specific layer and are applied over the team and tag result - Tags a player carries that have no rule in
tagRestrictionsare ignored, so an unrelated tag from another mod never drops a player out of the global rules - Membership is managed entirely with vanilla
/teamand/tag; no new commands were added and the existing/restrictedinventory configstill edits the globalrestrictedSlots - Team and tag changes apply immediately without a relog or a config reload, and nothing is copied into the player's saved data, so leaving a team removes its rules with it
- Configured teams and tags do not have to exist yet; a rule for a team nobody has created is valid and starts applying once a player joins a team with that name
- A profile with an empty
restrictedSlotsstill counts as a match, which exempts that team or tag from the global rules entirely - The server decides which rules apply and sends the result to the client, so slot overlays, ghost previews and placement feedback keep matching what is actually enforced
- Fixed a crash on NeoForge when a
/reloadfired the datapack sync without a player
The feature is off by default. Existing configs, saved player restrictions, restriction entries and commands keep working unchanged; a config written before this build loads with the three new fields at their defaults and needs no migration.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ThJBmy1K:urqXlbeV"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ThJBmy1K:urqXlbeV"
}

