Closed MrAkells closed 1 year ago
You shouldn't need to, there aren't any hard coded recipes. The default recipes are added in the config. You can remove them by going to Mods > Campfire Backport > Config and removing all the entries in "Custom Recipes (Regular)" and also turning "Auto Recipe Discovery" to "neither". If you want to delete Campfire Extinguishers / Ignitors, remove all the entries in "Custom Extinguishers (Regular)" and "Custom Ignitors (Regular)".
I have countered a issue I have to reload the world if I go in back into a world like if I remove cooked fish from the campfire I have to do is /campfire backport reload
@KibaTheBarbarian I can't seem to replicate what you're talking about. Can you explain the steps you do in order for this to happen? Do you have any other mods installed? Are you on a server or in singleplayer?
I disable the recipe with CT furnace recipe but I if I rejoin the word I have to reload the campfire https://youtu.be/ID-vO7Le2II
I think I got it fixed just takes a lot work want to close this
I believe I figured out the bug, Kiba. I've made it into a new issue. https://github.com/connor135246/Campfire-Backport/issues/20
What if other mods add recipes to the campfire? Furnaces and crafting tables get a remove option, what if a pack author wants to remove a specific recipe a mod adds or the auto discovery adds without turning it off?
What if other mods add recipes to the campfire?
Currently, other mods aren't supposed to add recipes to the campfire in their mod code. But I suppose they technically could since the method is public. The only ways recipes are supposed to be added is via the config or via CraftTweaker. I hadn't really considered that other mods might want to do this in first place. Recipe tweaking is usually done on a pack level, not a mod level.
remove a specific recipe the auto discovery adds without turning it off?
There's a config option called "Auto Recipe Discovery Blacklist" that lets you blacklist particular inputs. Note that it's for inputs, not outputs. For example, if you don't want people to be able to cook Bread into Toast, you would add Bread to the blacklist (not Toast).
I think that should cover everything a pack author might want to do.
If you know any reasons why a delete recipe function or something like that would be useful, feel free to comment. But for now I'm going to close this because I finally actually added an explanation of how this works to the wiki.
I guess you're right. Still though it seems a bit weird to use a config for removals instead of a CraftTweaker function; wouldn't anyone removing recipes using the config have CraftTweaker installed anyhow? It seems a little inconsistent to have one tweaking function somewhere else. At that point why wouldn't both adding and removing just be part of the config, or CraftTweaker functions?
It is bit weird, you're right. It's because of legacy, and also because of how many options I've added to campfire recipes.
When I first was adding custom recipes, for some reason instead of just adding CraftTweaker support, I decided to make it so you add recipes with the config instead. No recipes were hardcoded, everything is in the config.
This wasn't too bad at first because recipes were very simple. The recipes config option was just a list of strings that looked like this:
input/output/cookingtime
. For example: minecraft:porkchop/minecraft:cooked_porkchop/450
Pretty easy to understand.
Unfortunately as time went on and I added more and more options to recipes you could end up with monstrosities that look like this: minecraft:pumpkin@2&minecraft:sugar&minecraft:egg/minecraft:pumpkin_pie@2/250/signal/minecraft:pumpkin_seeds/0.5
Not easy to understand, or write.
So I added CraftTweaker support because it's a lot easier for users to work with and I should have done it in the first place anyway.
I left the legacy system in for a couple reasons. First is for the few people who might have made custom recipes with it already. Second is because of the weird options I added to campfire recipes. Did you know you can make a recipe that only needs a particular NBT on the input, and doesn't care at all what the item actually is? For example, one of the default ignitors in the config is left/[ench:20,1]/damageable
. This allows you to ignite a campfire by left clicking it with any item that is enchanted with Fire Aspect level 1 or higher (afterward, the item loses 1 durability). Options like this make it a pain to create a CraftTweaker delete function that is actually capable of deleting possible recipes. And if I did add such a function, wouldn't it only be used to delete the default config recipes anyway?
A better option might be to delete the legacy system and completely move everything related to recipes to CraftTweaker. That would mean:
That way everything related to recipes would be in one place.
The downside is that everyone updating to the next version would have to do a bunch of changes to their scripts.
There is no way to delete a recipe using CraftTweaker.