-
Notifications
You must be signed in to change notification settings - Fork 4
Technical Details
Some aspects of this mod are configurable, to ensure that modpack makers and individual players can exercise some amount of control over the wacky little minutiae present within. The config can be accessed via the copperpot-common.toml file in the configs folder for your Minecraft instance. For now, we have:
- Lists of status effects that each seasonal agar will extend upon consumption
- A list of dimensions in which the mooncake will cause adverse reactions (likely dimensions without a moon)
- The horizontal radius within which copper pots will grant status effects when uninhibited
More configurable features are sure to arrive in the future!
A copper pot recipe has three ingredient slots, a container slot, and a single status effect instance attached.
Custom recipes can be implemented via datapacks. Let's look at an example from Copper Pot:
"type": "copperpot:cooking",
"ingredients": [
{
"item": "farmersdelight:wheat_dough"
},
{
"tag": "forge:milk"
},
{
"item": "savageandravage:creeper_spores"
}
],
"result": {
"item": "copperpot:sourdough"
},
"conditions": [
{
"type": "forge:mod_loaded",
"modid": "savageandravage"
}
],
"cookingtime": 200,
"effecttrue": true,
"effect": "minecraft:poison",
"effectamplifier": 1
}
In this case, the three ingredients are farmersdelight:wheat_dough, savageandravage:creeper_spores and any items that fall under the forge:milk tag. The result is a the Sourdough item, with item id copperpot:sourdough. The mod with modid savageandravage must exist for the recipe to load. The cookingtime means the recipe will take 200 ticks (or 10 seconds) to fully cook.
While cooking, it will grant all entities within its radius the effect minecraft:poison with level (1 + effectamplifier), in this case 1 + 1 = Poison II.
There are some additional modifiers like effectduration. Check here for alternative references!
cookingtime, effecttrue, effect, effectduration and effectamplifier are all optional additions to a recipe json. (Note that if you want effect, you must have effecttrue.) The "conditions" block is also optional (and likely unneeded in the case of a datapack).
Like any other conventional datapack-determined recipe type, you can also alter/replace pre-existing recipes in Copper Pot.