This update fixes the Smithing recipe type to be for Smithing Transform recipes, only. I'm currently researching the possibility of adding support for Smithing Trim recipes and Brewing Stand recipes, but for now the current implementation doesn't support these.
This is the first version of RecipeControl compiled against 1.20.5. Please report any bugs so we can get them fixed ASAP!
This version has been compiled against and tested on 1.20.
More updates coming soon
This version has been tested on version 1.19.
Confirmation messages weren't being sent when user created a recipe. Fixed that.
When you set custom name and lore for the result of a smithing recipe, it will now carry over into the result item when someone crafts it.
This update has been tested on Paper Spigot 1.17.1. Custom recipes, modifying vanilla recipes, permissions are all working in my tests.
I fixed an issue preventing the recipe result menu from accepting item, and I made the recipe permissions work with smithing recipes. Some other recipe types are difficult to implement permissions for due to the way they're designed, but I'm working on it.
Also added recipe permission to recipes in the list menu so you know what perm to add / remove to restrict access to that recipe.
The config options were not being honored every time, this should fix the inconsistency.
An update coming soon, possibly the next one, will include an advanced crafting table to fix recent incompatibilities with other plugins' items.
The plugin was attempting to register recipes too early in the startup process and causing errors in 1.15
I added the config option require-permission-custom. Setting this to true will make all custom recipes require their respective permission to use them. Normally, all recipes are given to the player by default, and you would have to add a false / negative value permission to remove the recipe from a rank or person. So this is just a way to make it the opposite if you need to make recipes for only certain privileged people. require-permission-vanilla will let you do the same for ALL recipes!
Also fixed some problems making the plugin not function properly in 1.15 and should fix an issue causing recipes not to be loaded sometimes.
Fix to the previous update allowing old configs to be used
I was working on a couple small fixes and someone who bought Recipe Control a while back sent me a message asking to be able to load old configs from the 1.14 version, so I worked that in.
I made Recipe Control backwards compatible with 1.15 for now. It had stopped working previously because of the Smithing Recipe feature, but now i have it set up to only add the Smithing Recipes button to the menu if you're in 1.16
In the previous update, I added recipe permissions. A user has since had a problem with the plugin crashing when two permissions have the same ID. This shouldn't be happening, so I will do more testing and find why, but for now, you have an update to keep the plugin from crashing when this happens.
There was a mistake in the loading code, so you may have had recipes not loading when you re-started after creating them. Recipe book should be fixed now, also.
All recipes will be given to players by default. Use your favorite permission plugin to give people a 'false' value for any recipe using the permission recipecontrol.recipes.RECIPE_ID
The RECIPE_ID can be seen in your /recipes menu when you are clicking through the list of recipes. Also, if you have a permissions plugin with proper command auto-complete, such as Luck Perms, you will have a list of all the recipe permissions you can scroll down through as you type.
Recipe Control is now compiled against 1.16 and includes a new feature:
Smithing Table recipes!
I also fixed an error that was happening with some non-rectangle shaped recipes when I tried to save them.
NOTICE: Make sure you are running the latest version of Spigot 1.16.1, as they did not properly add Smithing recipe class until later in a snapshot release.
This update fixes a ClassCastException error in 1.12 and an ArrayOutOfBoundsException which was occurring in multiple versions.
The next update of RecipeControl should contain the addition I'm working on - to support carrying over mob type from egg to spawner, and other similar attributes. Just working out some kinks.
Fixes an error reported for 1.12.2 on startup.
From my extensive testing after all the fixes and changes I've made, Input items with custom names seem to now be working fully with shapeless and shaped recipes in 1.8 through 1.14.
It also seems to be working with furnaces now, though I'm not 100% sure it will work all the time. Furnaces are a pain to work with and there are still little issues.
Most importantly though, there doesn't seem to be any kind of issues causing duplication. Just sometimes an item will be spit out when it would've been a valid input.
The recipe discovery shouldn't be spammy now, it will just show one notification for a few seconds.
Please feel free to PM me about any issues you run into. Thank you
Should now consistently leave the cursor item alone and make a ghost item in the edit menu.
Error in 1.8 and another in 1.14 due to Material name issues between versions, both should now be fixed.
Fixed a couple errors people were experiencing.
Also added an experimental stacked input feature. To enable the feature, allowing your recipes to require a certain amount of item, add this to your config
Code (YAML):
stackedInputs
: true
It's disabled by default because I had to hack in this feature and I can't guarantee it will work perfectly.
There shouldn't be any kindof dupe issues or anything like that, it just doesn't always update the recipe properly when you insert items. For best results, place the whole stack at once instead of trying to right click items in one at a time. This is a bug due to Minecraft not understanding that item amount matters. I'm still thinking about a fix for that.
Let me know if you run into any problems and I will fix them tomorrow morning!
Changes:
- New recipes will no longer have placeholder items in them
- Edit menu takes a ghost of the item in your cursor instead of acting like a regular inventory. Left click to place the item, right click to place one (note that inputs can only be one item, this is a minecraft restriction, so putting a stack in the input slots is pointless - sorry). Clicking an item in the menu will simply remove it.
Fixed:
- Shapeless recipe errors
- Occasional debug message
- Other misc. fixes I found while working
Message me if you have any suggestions for Recipe Control or find any problems! Thank you
For versions 1.13+ (older versions don't support exact matches) I have changed it to using a custom ingredient comparison instead of the Bukkit one and it seems to have fixed the problems with special item names not being matched.
Added Chinese translation for the edit menu responses and also updated Chinese translation to fix a typo.
- Added spanish translations to /recipes command responses as well as edit menu responses. Edit menu response translations are coming for the other languages as well.
- Removed /recipe alias. It was interfering with a default command.
Fixed:
- Recipe saving issues when closing edit menu
- Some new items like yellow dye not resolving properly
Crafting Table inputs were being cleared after crafting an item.
Edit menu was throwing an error when switching from furnace to blast furnace types.
Added:
- Language support: English, Itallian, French, and Chinese
- Recipes with milk buckets give back the buckets
Also fixed an error relating to tab completion.
An error was being thrown occasionally from an onPrepare event, this is now fixed.
- Updated vary and copy commands to consistent methods for copying the recipes over.
- Fixed earlier versions not loading newly created recipes
- Fixed shapeless recipe icon saying "Shaped" and a couple other typos
Additions:
- Added exact choice behavior for shapeless recipes, so items with specific data will be more accurately matched.
Fixes:
- Recipes with no inputs won't be registered in the server to prevent strange bugs.
- Fixed /recipes add setting default recipe output with the old format.
- Ran inspection to optimize code
I found some errors in earlier versions. Everything now seems to be working across all versions.
Added:
Complete Item Meta and NBT data serialization.
What does this mean?
It means spawners, books, skulls, everything should now be supported with recipe control! You can even use items made with custom item plugins!
Fixed:
- Some custom furnace inputs not updating properly when shift clicking
- XP not saving for some furnace recipes
- XP not being given for some furnace recipes
- Furnace not returning bucket for water and lava buckets
- Other various fixes
I did a lot of debugging and testing to iron out these bugs, but I'm not perfect! Let me know if you run into any problems with the update and I will fix them quickly in the morning
Thank you
I found the problem causing XP (and previously, cooktime) to not save. This is now fixed.
An update is coming soon to add proper NBT player skull support and some code improvements.
Each recipe can now have a new
announcement field which announces to all players when someone crafts it!
Also has support for placeholders.
{player}: Replaced with the player crafting it
{recipe}: Replaced with the id of the recipe
{result}: Replaced with the display name (or material name if it has no display name) of the result item
For example,
Code (YAML):
epicWeaponThing :
result
: diamond sword
announcement
:
"&6&l{player} crafted the {recipe}!"
somethingElse :
result
: gold ingot
announcement
:
-
"I don't know why this {result} is so special"
-
"But {player} crafted it so congrats"
The update which included automatic "discovering" (adding to the knowledge book of players) when recipes were reloaded had a problem sometimes causing errors due to an argument mismatch. This is now fixed.
The customModelData wasn't being set in the recipe item when the plugin builds them to place them in inventories, so the model data effectively wasn't being used. Problem is now fixed.
cookTime wasn't being loaded for Furnace recipes.
The custom recipes will now be automatically added to the knowledge book both for players joining and for all players online when a recipe is loaded from the reload command.
I just found out that the method of removing recipes was invalidated in 1.14 and had to change it. Recipes now load and reload properly across versions as far I've been able to tell.
Let me know immediately of any problems and I will fix asap
This update adds support for CustomModelData in 1.14+.
Just set "customModelData" for the item in the config to whatever integer number!
Added:
(1.13+) NBT modifiers
Code (YAML):
fastboots :
type
: shaped
input :
'3'
: diamond
'5'
: diamond
'6'
: nether star
'8'
: nether star
result :
material
: diamond boots
modifiers :
generic movement speed :
amount
: 0.1
operation
: add number
slot
: feet
Fixed:
- Item data not saving properly (affected 1.12.2 and below)
- When the reload command is run the entire bukkit recipe list is no longer reset, since I found a way to clear only my own recipes.
Added: Tab completion support in 1.8
Fixed:
- Edit command sometimes didn't recognize a newly created recipe. This is now fixed.
- Some small amount of item type version compatibility issues. I ended up re-doing some stuff in the library I'm using to fix the problems.
Making the plugin compatible with all versions was a daunting task and I missed a few little things before. Things now appear to be working 100% in all versions.
Please contact me if you run into any problems with your server version and any errors you are getting in console and I will fix immediately