Skip to content

So open the file you’ve created in the previous step with your preferred text editor and let’s start making a restriction.

Restriction Data example (a restriction’s required information)

{
"Restriction Data": {
"stage": "age_1",
"itemList": [
{
"item": "minecraft:chest",
"nbt": {
"display": {
"Name": "[{\"text\":\"Magic Chest\",\"italic\":false}]"
}
}
}
],
"modList": [
"minecraft"
],
"tagList": [
"minecraft:logs"
],
"exceptionList": [
{
"item": "minecraft:chest"
},
{
"item": "minecraft:iron_ingot",
"nbt": {
"display": {
"Name": "[{\"text\":\"Magic Iron\",\"italic\":false}]"
}
}
},
{
"tag": "minecraft:anvil"
},
{
"mod": "botania"
}
],
"containerList": [
"net.minecraft.inventory.container.WorkbenchContainer"
],
"dimensionList": [
{
"dimension": "minecraft:the_nether",
"message": "You're not allowed in this dimension!"
}
]
}
}

Ok soo, now what does everything mean???

  • "stage": <stage_name> - the stage that the restriction is linked to
    - requires a String
  • "itemList": <items> - the list of items/blocks that should be linked to the restriction
    - requires a list of Item Restrictions (see in the example)
  • "modList": <mods> - the list of mods that should be linked to the restriction
    - requires a list of Strings (mod ids)
  • "tagList": <tags> - the list of tags that should be linked to the restriction
    - requires a list of Resource Locations (tag ids)
  • "exceptionList": <item/mod/tag> - the list of items/tags/mods that are in the mods/tags previously stated that shouldn’t be linked to the restriction (useful if you want to hide items from the same mods/tags to multiple stages)

    - requires a list of Item Exclusions (see in the example)
  • "containerList": <container_classes_paths> - when the player is going to open a container from that list if he has items from that restriction they will be dropped from his inventory

    - requires a list of Container Classes paths (easiest way of getting the path of a container class is enabling the mod’s debug mode found in the “thitemstages-common.toml” config file, with that enabled when you’re going to open a container the path of that container’s class will be shown in chat)
  • "dimensionList": <dimensions> - the list of dimensions that should be linked to that restriction
    - requires a list of Resource Locations (dimension ids)