[Suggestion] KubeJS support
sciguyryan opened this issue ยท 8 comments
IMPORTANT: Feature requests will only be added to the latest supported Minecraft version.
I would like to request a native way of interacting with Extended Crafting via KubeJS, similar to what is supported by CraftTweaker.
I am currently building a modpack which uses KubeJS to customize recipes and so on. It would be fantastic to be able to do this natively, without having to add CT to the pack just to facilitate this.
Thank you in advance for considering this request!
@aaronhowser1's suggestion works well for most things.. Except for singularities. Because of their dynamic nature, KubeJS can't override them. You could delete all singularities and make custom items for each one and make another recipe for the ultimate singularity, but it's a pain. Having official integration would be fantastic.
@Develon5543 you can edit each singularity ingredient/remove them from the ultimate singularity recipe in each singularity json, see https://blakesmods.com/docs/extendedcrafting/singularities
Yeah, it's pretty good. However it's missing the energy cost and you're unable to change the catalyst, compared to being able to make arbitrary compressor recipes with said features.
onEvent("recipes", (e) => {
e.custom({
type: "extendedcrafting:compressor",
powerCost: 500000,
inputCount: 2500,
ingredient: {
item: "infinity_nexus_mod:infinity_ingot",
},
catalyst: {
item: "extendedcrafting:the_ultimate_catalyst",
},
result: {
item: "infinity_nexus_mod:infinity_singularity",
}
});
you can use this as exemple, because it works, at least on minecraft 1.18.2
Such mods already exist: https://www.curseforge.com/minecraft/mc-mods/kubejs-extended-crafting
You can do stuff like this fine:
recipe.custom({
"type": "botania:runic_altar",
"output": {
"item": "botania:mana_tablet",
"nbt": {
"mana":500000,
"creative":1
}},
"mana": 1000000,
"ingredients": [
{
"item": "botania:creative_pool"
},
{
"item": "botania:creative_pool"
},
{
"item": "botania:creative_pool"
}
]
})
Literally just event.custom()
and you put the entire recipe inside, using json datapack format