-
-
Notifications
You must be signed in to change notification settings - Fork 74
Pre 1.16 How to Use: Users
Mods should be registering their own curio types, but sometimes you may want to register your own.
Go into the config folder and open the curios-common.toml
file. Edit the createCurios
value by adding unique identifiers for each curio type you want to create (e.g. "ring"). When Minecraft loads, the identifiers listed here will automatically generate curio types with default settings. At the moment, there is no way to adjust the default settings through this method.
The default Curio GUI has hovered tooltips that identify the slots using lang file entries. The key format is curios.identifier.<name>
. If you are not using one of the common curio identifiers included in Curios, you will likely want to make sure that you create a resource pack with the appropriate language key entry in order to format the tooltip correctly.
Curio item classification relies on the vanilla tag system, customizable by users with data packs. Read more about tags here and data packs here.
Make sure you are using item tags, and not block tags or any others. In addition, make sure you use the curios
namespace. So your file's path will look like data/curios/tags/items
. The tag itself must be the same as the identifier of the curio type you want to classify it to. For instance, ring.json
if the identifier is ring.
Let's go through the process step-by-step in order to understand how to make a new Curio slot and assign an item to that slot. For this walkthrough, we're going to make an "Eggs" slot and assign the egg item to that slot.
1. Open the config file
Go into the config
folder and open the curios-common.toml
file. If you do not have this file, you likely have not run Minecraft yet so just run it once so that the config can generate. The file should look like this:
[common]
#List of curio types to create
createCurios = []
#List of curio types to disable by default
disabledCurios = []
2. Add the identifier for the slot
Think of a unique identifier for your slot, which should represent the types of items that are expected to be in there. In this case, we'll use "eggs". Type this identifier into the createCurios
array, surrounded by quotes. And that's pretty much it for making slots, Curios will take care of the rest. The updated config file should look like this now:
[common]
#List of curio types to create
createCurios = ["eggs"]
#List of curio types to disable by default
disabledCurios = []
If you want to add multiple, remember to separate them by commas. Like so:
[common]
#List of curio types to create
createCurios = ["eggs", "someotherslot"]
#List of curio types to disable by default
disabledCurios = []
You can verify that you've successfully added the slot by going into the game and checking your curio slots.
3. Create a data pack
In order to actually use the new slot, we need to assign items to them. For that, since we're not modding anything directly, we'll need to create a data pack. Navigate to the world save in your Minecraft root folder, probably at .minecraft/saves/(world-name)
and then navigate to the datapacks
folder (or create one if it's not already there). If you're not using any data packs, this folder will be empty. Create a new folder for your data pack, call it anything you want. Then go into that folder, so you should be in .minecraft/saves/(world-name)/datapacks/(datapack-name)
.
Once you're inside, create a pack.mcmeta file, named exactly like that. Open the file and fill it with this:
{
"pack": {
"pack_format": 4,
"description": "put a description here, or not"
}
}
Once you're done, save it. You should be back at the data pack's root folder at .minecraft/saves/(world-name)/datapacks/(datapack-name)
. Now we're going to build out a few nested folders. Create a new folder in here named data
, then another folder in data
called curios
, then another folder in curios
called tags
, then another in tags
called items
.
By this point, you should be in the .minecraft/saves/(world-name)/datapacks/(datapack-name)/data/curios/tags/items
folder. That's it for the folder structure.
4. Create a tag file.
Now create a new file here called (your-slot-name-here).json
. In our eggs slot example, we would name it eggs.json
. It's very important that the name matches the name you chose in step 2.
In this file, type this:
{
"replace": "false",
"values": []
}
This is the basic structure for a tag file. replace
dictates whether or not you're just adding tags or completely overriding tags. I recommend leaving this at false unless you know what you're doing. values
is the property we're most interested in. This is where you list alllll of the items that you want to be able to accept into your curio slot. In our example, we'd like to put eggs in the slot. Therefore, we find the registry name of the item, which is minecraft:egg
for the egg item, and we type it into the values
array. Like so:
{
"replace": "false",
"values": ["minecraft:egg"]
}
Remember, like in step 2, we can put as many values as we want here but they must all be comma separated inside of the brackets. Like so:
{
"replace": "false",
"values": ["minecraft:egg", "minecraft:someotheritem"]
}
If you do not know the registry name of the item you want to add, you can see it in-game by using F3+H
to activate advanced tooltips and hovering over the item.
You can verify that you've added the item in properly by looking at the item's tooltip because all curio items will have a golden orange tooltip that states their curio type(s).
And that's it! If you've reached this point, you now have a new curio slot and a new item that can go into that slot. If you have any questions or need help troubleshooting, please feel free to contact the developer directly.