-Added compatibility with 1.21.4.
-Addedcustom_model_component_data property to items (for 1.21.4+). Required items will also consider this new property.
-Added permission error actions on categories (To execute custom actions when the player clicks on a category when not having the necessary permissions)
-Addednew_crafting_default_save_mode_original option to the config. It defines whether all new crafting items should be saved as a copy of the original item. Equivalent of using /ecraft create <crafting> original
-Modified: Original parameter when creating craftings is now used by default.
IMPORTANT:Minecraft changed the way data is stored inside items on 1.20.5, removing NBT compounds data. So if you have custom items from other plugins stored inside your kits, then it is possible you'll need to save them again using the
/ecraft create <name> original command, so an exact copy of the item is saved into the config.
-Added the possibility to save
ORIGINAL/IDENTICAL ITEM as the crafting item, without losing any important properties. This can be achieved by using
/ecraft create <name> original. However, if you choose to save craftings this way, you'll have some limitations:
You'll not be able to modify the item manually in the config.
You'll not be able to use PlaceholderAPI variables in the item.
-Addedclick_actions property on
inventory.yml, to execute actions when clicking on items. In the future, this will replace
click_commands option.
-Removedopen_inventory: close property on inventory.yml file. Now you can use
click_actions.
-Added [count_as_item] optional prefix on crafting claim actions, to count empty slots when using commands instead of items.
-Added a validation to the
/ecraft verify command when category inventories are not found.
-Added: Big improvement made to the conditions on extra requirements for craftings (more info on the wiki).
-Added/ecraft reset command to tab completion.
-Addedhide_flags property to required items. When used, item flags will be hidden only for a particular required item (alternative to crafting
hide_required_items_flags option)
IMPORTANT UPDATE -Added <blocked> parameter to
/ecraft opencrafting command. You can now use /
ecraft opencrafting <player> <crafting> true, so the crafting is blocked and the player can't go back to the previous inventory. You might want to add the
not_show_on_blocked_inventories: true option to those items you don't want the player to use while in this mode.
-Modified:not_show_on_category_crafting_place option on inventory items was changed for
not_show_on_blocked_inventories (You must change this option manually in your inventory.yml file if you are using categorized crafting places)
-Added%epiccraftings_totalcrafted% PlaceholderAPI placeholder to show the total of craftings of the player.
Remember to check the WIKI! https://ajneb97.gitbook.io/epiccraftingsplus/
-Added/ecraft editall command. This command opens an inventory to choose a crafting to edit, in adition to modifying the priority of them in a very easy way.
-Fixed console error when clicking outside the editing inventory.
THE PLUGIN NOW REQUIRES NBT API TO WORK: https://www.spigotmc.org/resources/nbt-api.7939/ -Added new inventory to create and edit craftings (The previous way no longer exists). In future updates this inventory will grow and eventually you'll be able to edit a crafting from the game.
-Added: Now you can create different
crafting_menu inventories for each of your categories, by adding an inventory called
<category>_crafting_menu on the
inventory.yml file.
-Addedrequires_lore_custom_character option. You can add this option to craftings and choose an alternative character (like '-') to separate lore lines of required items in the file. This will help you if you are using the default separation lore character ('|') in the lore of a required item.
-Addedcraftings_default_values option to the config, where you can define default options for new craftings. The options you can add here are the same that every crafting can have.
-Fixed issues with saving and loading NBT data. If you already have created craftings that gives an item that doesn't work, try saving the original item again using
/ecraft create.
If you find that NBT is still not being saved/loaded correctly please tell me in the dicussion or via private message here on Spigot.
-Addedcheck_for_color_codes_in_required_items option in the config. When enabled, required items will be checked, verifying they real name/lore including color codes. This option is set to false by default.
-Addedhide_craftings_with_no_requirements option in the config. With this option enabled, players that don't have the required items to craft an item, won't see it on the crafting menu.
-Fixed issue with crafting inventory titles showing 0 pages.
-Added: Written book data is now stored correctly in crafting items. Hover and click events are stored as well but only on 1.12+.
-Added tab autocomplete for
/ecraft setplace command.
-Added compatibility with
DecentHolograms for Crafting Places holograms. (
https://www.spigotmc.org/resources/96927/)
-Added error verify for non existing inventories.
-Fixed missing argument in
/ecraft setplace command on the help command.
-Added PlaceholderAPI variables support in crafting items name and lore. (This will be a static variable)
-Added%random_<min>_<max>% variable in crafting items name and lore. This variable will be replaced with a random number and its only a visual detail.
-Added: You can now create subfolders on the
craftings folder to organize your craftings in a better way (per category for example). Useful when having a lot of craftings.
-Added: You can now create craftings without required items (you can use extra requirements instead). For this to work you just need to delete the
requires option from the crafting. An aditional custom item was added to the
inventory.yml file (
no_required_items item).
-Added/ecraft reset <player> (optional)<crafting> command to reset player data.
-Fixed issue with enchanted books (without enchantments) in required items.
-Addedmain_inventory_type option in the config. This allows to replace the main inventory with a category inventory instead, so you can use my plugin with only 1 category.
-Addedcustom_model_data verification when checking for required items.
-Fixed issue with
cooldown and
one_time options enable at the same time.
-Fixed books with enchantments in required items.
IMPORTANT: BEFORE UPDATING READ THIS: EpicCraftingsPlus was fully remade from scratch, it's like a completely new plugin with several improvements and fixes. If you want to continue using this plugin, before updating (if you have been using the plugin before) you need to
delete the whole EpicCraftingsPlus folder. You will lose your craftings, yes, but sadly this is the only way to update to the new version, because the amount of changes were so big that it was impossible for me to create a type of migration system.
I can't list all of the changes that I made in this new version (like I said its like a new plugin based on the previous versions). There is a new
WIKI where you can see for yourself how the plugin works now:
https://ajneb97.gitbook.io/epiccraftingsplus. It's similar than before, but now you have a completely configurable inventory and craftings are separated into their own file. Of course performance fixes were made too.
Creating the plugin again from scratch will allow me to implement new features in a more easier way than before, so I hope you understand this! Let me know in the discussion if you need any help and remember to check the wiki!
-Added player commands on
command option.
-Added op commands on
commands-when-crafted and
command options.
-Fixed some issues when teleporting the player when crafting something.
-Fixed issue with ignore options and hide-required-items-flags option in skull items.
-Fixed important issue when opening the craft inventory from an external menu plugin.
-Fixed multiple issues and bugs with plugins like MMOITEMS and verifying name and lore of required items.
Important changes were done for this so if you find bugs tell me as soon as possible!
-Addedcustom-craft-go-back-command option in categories. With this option you can change the behavior of the "Go Back" item from the crafting inventory and execute your own command when player clicks it. This allows you to open other inventories instead of EpicCraftingsPlus.
Example:
Code (Text):
others:
name: ' #2c4564Other Crafts'
lore:
- '&7A lot of stuff you can craft,'
- '&7like the &bVIP &6rank.'
slot: 14
permission: epiccraftingsplus.categories.others
id: LIME_DYE
custom-go-back-command: cp menu %player%
custom-craft-go-back-command: cp others_craft %player%
-Fixed issue when claiming craftings in cooldown and having no space on the inventory.
-Fixed bug and added error message when trying to open a crafting with no category.
-Addedmain-craft-item-slot and
craft-with-money-item-slot options that allows you to change some item slots on the inventory. This allows more customization.
-Modified: Now, when creating any crafting, the
ignore-required-items-nbt option will always be true by default. This was modified for fixing constant issues with required items.
-Added: You can now obtain the category on the API Events.
-Modifiedworkbench-attach option. Now it is called
block-attach and you can change the block to open the crafting menu.
-Modified craftItemInventoryName message. Now you can add the %category% variable.
-Fixed multiple issues with saving and loading nbt tags of craftings. If you had this kind of issues before and you want this to work, you need to save the main item again.
-Fixed: menuOpenedToPlayer message will not be sended anymore if it is set to empty text.
-Addedecraft.cooldown.<crafting>.<percentage_reduce> permission. An example: If player have the
ecraft.cooldown.sword1.50 permission it means he will complete the sword1 crafting in 50% less time than the original cooldown.
-Added Firework Stars/Charges compatibility for craftings.
-Fixed bug when having tipped arrows as required items.
-Fixed "Explosion" nbt tag causing multiple errors on the console.
-Added: New file
crafting_inventories.yml created which allows you to modify the crafting inventories as you want. For now you can edit just the decoration items (not interactable ones). It works the same as the Categories Inventory.
THIS TUTORIAL IS UNDER DEVELOPMENT
In newer versions of the plugin you can change the look of crafting inventories. This configuration is found in the crafting_inventories.yml file.
Be careful because each of the inventories have limitations and you can't place items in every slot.
#This is the Crafting Inventory where all craft will be displayed.
#This inventory has 45 slots.
#You can add an item to any slot of this inventory except:
#10-16, 19-25, 28-34, 37-43
crafting_inventory
#This is the Crafting Item Inventory where the required items will be displayed.
#This inventory has 45 slots.
#You can add an item to any slot of this inventory except:
#12-16, 21-25, 30-34, 19, 41
crafting_item_inventory
You can set the same option for every Item as in the Categories inventory, that includes: slot, name, lore, skull-texture, skull-id
-Removeddecorative-menu-item option from the config.
-Addedhide-one-time-craftings option. When enabled, players will not see already created craftings with one-time option enabled in the menu.
-AddedhasCrafted() method to the API.
-Fixed saving player data in craftings with cooldowns.
-Modified the open craft command. Now it is:
/ecraft opencraft <craft> <player> (optional, blocked) <true/false> An example of the command would be: /ecraft opencraft sword Ajneb true With this command the craft will be blocked, meaning you can't go back to the crafting menu.
-Added/ecraft opencraft <craft> <player> command. It allows you to open a craft. Player is optional as long as the command is executed from a player.
-Addedecraft.command.opencraft.self and
ecraft.command.opencraft.others permissions.
-Fixed ignore-required-item-name option bug.
-Addedignore-required-items-name option to ignore checking the name of required items when crafting.
-Fixed error with player heads in Category menu.
-Fixed error with player heads when using
/ecraft create command.
-Added: Now you can fully edit the Extra Requires message adding an extra-requires-message path to the craftings.
Code (Text):
extra-requires:
- level,15,take
- placeholder_api,%statistic_jump%,>=,1500,Player Jumps
extra-requires-message:
- "&6Extra Requirements:"
- "&7You need 15 levels and 1500 jumps to craft this."
- "&9Status:"
- "&a%current_1%&8/&a%required_1% &7Levels"
- "&a%current_2%&8/&a%required_2% &7Jumps"
Use %current_X% and %required_X% variables to show the status of the X condition (corresponding to that line). For example %current_2% means the second line, thus the placeholder_api condition.
-Removed numerical IDs (This will NOT affect 1.13 and 1.14 users. What this means: If you want to set a diamond for required item you need to use the material name, DIAMOND, instead of 264. You can still use DataValues.)
-Added CustomModelData property in both main item and required items. -Added Tipped Arrows compatibility. -Fixed bug getting item attributes in 1.14.
-Removed unused "Potion" NBT Tag.
-Fixed bug in craftings with permissions when hide-craftings-with-permissions is disabled and previous-next option is enabled.
-Fixed craft-with-money-item option for 1.13+ versions.
-Fixed: Crafting places will not open anymore when the event is cancelled.
-Fixed: Crafting places holograms are now not possible to destroy.
-Added new extra requirement: Crafting This will check if the player has already crafted an EpicCraftingsPlus item. It must be a valid name of item in the config. In this example the player will need to craft x5 command_1 before crafting this item.
extra-requires: - crafting,command_1,5 -Updated messages.yml file.
-Added support for NBT TAGS. When using
/ecraft create command, all of extra nbt tags of the crafting should be saved in the config. Tested with 2 plugins (AdvancedFood and RPGItem). If it is not working for you, tell me in the discussion of the plugin or by private message.
-Fixed bug that was regenerating all original paths.
-Added: Config.ymland Categories.yml files for 1.13 and 1.14 will be automatically detected when using the plugin for the first time (removing all kind of compatibility issues regarding minecraft IDs)
-AddedDONT_REMOVE flag in required items to allow the item not to be removed while crafting.
-Fixed bug with IDs and Material names when
block-player-crafting-inventory option is enabled
-Added: Now, players created craftings are stored in the players.yml file (For the API in the future and some other features I will implement soon)
-Fixed bug when crafting names contains symbols like '$'.
-Fixed /ecraft create command when saving items with data value.
-Fixed the removal of some empty paths on the players.yml file
-Added fully compatibility of Potions in required items.
-Updated: Armor Color property in required items is now saved as ARMOR_COLOR instead of COLOR (to fix bug with potion compatibility)
A lot of code was changed to made this update possible, so if you find any bugs please tell me as soon as possible. If the plugin is not working correctly for you, use the previous version.
-Added message when bypassing the cooldown because of the permission.
-Fixed error when clicking on items with incompleted cooldowns.
-Fixed multiple others errors related with cooldowns.
-Fixed compatibility in required items to allow more than 127 items in one slot.
A lot of code was changed to made this update possible, so if you find any bugs please tell me as soon as possible. If the plugin is not working correctly for you, use the previous version.
-Added option (
block-player-crafting-inventory) to block the use of the player crafting inventory (2x2 crafting)
-Added "craftedItem (ItemStack)" variable to the EpicCraftingsCraftEvent event from the API
-Removed unused code.
-Added previous-next Crafting System. If the option is enabled in the config, two items will appear in the crafting menu. When clicking these items you can go (move) to the next or previous crafting. previous-next-crafting: true
A lot of code was changed to made this update possible, so if you find any bugs please tell me as soon as possible. If the plugin is not working for you, use the previous version.
-Added ecraft.bypass.cooldowns permission for ignoring craftings with cooldowns.
-Fixed page system when there are 22 or more craftings in one category.
-Added size property to the categories inventory. Now you can change it as you like. Sorry for not adding this earlier I totally forgot.
Code (YAML):
size: 9
Categories:
weapons_armor:
id: '283'
name: '&eWeapons&f/&eArmor'
lore: - '&7Here you can find the &cbest'
- '&7equipment of the server.'
slot: 0
others:
id: '351:10'
name: '&dOther Crafts'
lore: - '&7A lot of stuff you can craft,'
- '&7like the &bVIP &6rank.'
slot: 1
permission: epiccraftingsplus.categories.others
Inventory:
-Fixed bug with "bypass crafting creation using money" option, not giving the item correctly.
-Fixed bug with "bypass cooldown using money" option, not giving the item correctly.
-Fixed crafting names when craft message is empty.
-Fixed Potion Compatibility
(Main item only. I am still working on required items). -Fixed cooldown notification message when using Material Names instead of numerical IDs.
-Fixed craftings with cooldown and no lore.
-35% OFF until 31st December (All my plugins have 35% discount, you can check them on my profile)
This new version is definitely going to make a change on the plugin. First, I made a full code cleaning, as well as better code implementation. These changes will help me to add more options and functionalities in the future. Also it will allow me to find bugs more easily.
Finally, you need to understand that all of this was a major change on the code of the plugin, so it is possible you may find bugs. If you do so, please tell me as soon as possible!! (don't leave a bad review before asking!)
-Fixed A LOT of bugs regarding Categories
-Fixed page System
-Fixed other minor bugs
-Fixed SEVERE bug when multiple users are using the EpicCraftings menu at the same time.
-Fixed bug when using categorized crafting places.
This version has a lot of changes on the code, so if you find a bug or something please tell me as soon as possible before leaving a bad review. If this version isn't working for you, just use the previous one (3.5.2) and you'll have no issues.
-Added Extra Requirement: PlaceholderAPI Variables With this new functionality, you can add conditions to create some craftings. For example, to craft a Super Sword you need some materials, be on a specific world and have more than 1500 Jumps. extra-requires: - placeholder_api,%statistic_jump%,>=,1500,Player Jumps - placeholder_api,%player_world%,equals,spawn,Current World
Format: - placeholder_api,%placeholder%,type,condition,name to show
For Numbers: == != >= <= > < For Text: equals !equals
-Added /ecraft edit <name> command. This command allows you to edit the required items of a created crafting (Using the same GUI as /ecraft create)
-Fixed some messages issues.
-Added custom-go-back-command option to Categories. With this option you can create a new "Go Back" item (For only that category) and execute your own command when players clicks it. This command MUST open another inventory, or close the current one.
Code (Text):
Categories:
'weapons_armor':
id: '283'
name: '&eWeapons&f/&eArmor'
lore:
- '&7Here you can find the &cbest'
- '&7equipment of the server.'
slot: 12
custom-go-back-command: chestcommands open main_menu %player%
-Fixed "craft" message. Now you can leave it empty correctly.
-20% OFF Until September 1st
-Addedone-cooldown-at-the-time option. If enabled, users can't craft an item if they are already creating another one with cooldown.
-Fixed Number format on money extra requires.
-Fixed 1.13 compatibility bug when using the block-use-in-crafting-tables option
-Added material name error message on messages.yml file
-Fixed messages bug on commands-when-crafted option
-Updated to 1.13 (This version still works with 1.8-1.12).
I tried to check almost all features of the plugin in 1.12 and 1.3 versions, so it is possible you can find some bugs. If you do so, tell me as soon as possible so I can fix them!
-Added Material error checks.
-Fixed small bugs regarding random craftings.
-Fixed bug with Potion craftings amount.
-Fixed Amount bug when giving Craftings using the /ecraft give command.
-Fixed other minor bugs regarding Potions.
-Fixed bug with "money" extra requires.
-Added flags to menu decorative items (To hide attributes) and unbreakable flag to show textures correctly in some cases.
-"slot" property now is optional on the categories.yml file. Now you can have as many categories as you want and you can open them using
/ecraft open <category> <player>. You can still let some categories on the Categories Menu adding the slot.
-Added the optional variable
%player% on the required items of a crafting. This variable will be replaced with the name of the player who is crafting the item.
-Modified"/ecraft open" command. Now you can use
"/ecraft open main <player>" to open the main menu to a player, instead of a category.
-Fixed messages bugs when opening categories to a player
For this to work you need to add my plugin to your plugin external jars dependencies and to set
softdepends: EpicCraftingsPlus on your plugin.yml file
Code (Java):
//Event called when player successfully craft an item and materials are removed from player inventory. @EventHandler
publicvoid testEvent
(EpicCraftingsCraftEvent event
){ Player jugador
= event.
getPlayer(); String craftName
= event.
getCraft(); }
-Fixed bug with ignore-required-items-lore and hide-required-items-flags options
-Modified command to open a category, now you need to use:
/ecraft open <category> (optional)<player> To open youself a category you need the permission: ecraft.command.open.self If you want to open a category to other players: ecraft.command.open.others
-Three messages were changed on the messages.yml file:
Code (Text):
errorOpen: '&cTo open a category menu use: &7/ecraft open <category> <player>'
menuOpenedToPlayer: '&cYou have opened the &e&l%category% &ccategory to &a%player%'
menuOpened: '&cYou have opened the &e&l%category% &ccategory'
-Now you can edit the Category Menu as you like. Items here support names, lore, and skull texture. These items will be just for decoration, and they don't interfere with the categories. Remember to put them under the "Inventory" section.
-Categories are now saved in their
own configuration file (categories.yml) to order and clean the main config.yml file.
The only thing you need to do is to copy all your categories (the entire categories section), currently in the
config.yml file and paste them on the new
categories.yml file. Simply as that.
A lot of code was changed, so it is possible that you could find bugs. If that happens inform me as soon as possible, thanks!
-Added new per command permissions
. -Fixed bug with
/ecraft open command. The main menu button was showing up when opening categories.
-Fixed lag and low performance issues. The plugin should be running better now.
-Added "one-time" option. This will allow players to craft a specific item just one time. It is very easy to setup, just add this to the crafting:
Code (Text):
one-time: true
-
Edited the player levels extra requirement. Now you can add the word "take" to take the levels from the player when crafting. If you want players
to conserve their levels, jus set "level,amount" and nothing else.
-Added Heads Textures compability with categories items.
It works the same as in Craftings. You need to put the correct texture and ID. You can get heads from here:
https://minecraft-heads.com/ (Remember, the ID must be 397:3)
-Fixed bug with
ignore-required-items-lore and other
ignore flags when having a required item on an armor slot or in the left hand. (The plugin wasn't removing the required items from the player inventory)
-Added "ignore-required-items-enchants" option. If you enable this option you can craft an item completely ignoring the enchants of the required items.
-Now fully fixed the hide-required-items-flags option, it was still throwing the NullPointerException error.
-Added "ignore-required-items-lore" option. For example, you can craft a magic sword by using some items with random lore properties. So, with this option on true, it will ignore the lore checking.
-Added success-rate-failed-commands property to execute commands from console when player fails crafting an item.
Code (Text):
'key_item':
id: '69'
name: "&2&lMagic &d&lKey"
lore:
- "&6With this item you can open one"
- "&6of the mystery vaults on the spawn"
category: others
requires:
- '266;30'
success-rate: 25
success-rate-failed-message: "&cThe creation of the &2Magic &dKey &cfailed! The Mystery Vaults can't be opened yet..."
success-rate-failed-commands:
- 'eco take %player% 100'
-Added compatibility for Boss Plugin (KaBoss tag):
https://www.spigotmc.org/resources/☛-boss-unbelievable-custom-monsters.46497/ -Fixed bug with the Hologram of Crafting Places. Players were able to use a nametag, but now they can't.
-Fixed armor place bug on /ecraft setplace command for 1.11, 1.10 and 1.9 versions.
-Added new options to block interaction and use in crafting tables of crafted items.
For example, if the custom item is an enderpearl and block-interaction is set to true, you can't throw or teleport with it. The same goes to block-use-in-crafting-tables. If this option is set to true, you can't use the item to craft other items on a workbench or in the player crafting inventory.
Code (Text):
block-interaction: true
block-interaction-message: "&cThis is a special item, you can''t interact with it"
block-use-in-crafting-tables: true
block-use-in-crafting-tables-message: "&cThis is a special item, you can''t craft with it"
-Random lore stats added Now you can define random stats in the lore of a crafting (just for numbers) using the variable $random-number1-number2$. When the user craft the item, that line will be replaced with a random number between number1 and number2.
-Fixed
Command on Click feature. Now, it will only check for item type id, datavalue, name and lore.
-Fixed armor stands spawned on
/ecraft setplace command. For some reason you were able to place armor on them, but now you can't.
-Added Custom Skull compatibility in required items. Strongly recommended using the
/ecraft create command to let the plugin save all the data automatically
-Added new feature to the config: commands-when-crafted This works to execute commands when crafting an item. You can add multiple commands.
Code (Text):
'super_sword':
id: '276'
name: "&4&lSuper Sword"
lore:
- "&6This is one of the best"
- "&6swords on the server!"
category: weapons_armor
enchants:
- 'DAMAGE_ALL;6'
- 'FIRE_ASPECT;3'
requires:
- '264;15;&bUnique Diamond;&7A legendary mineral;&7very hard to obtain..'
commands-when-crafted:
- "broadcast &2&l%player% crafted a &4&lSUPER SWORD&2&l!"
-Fixed bug with "craft with money" item dissapearing.
-Fixed hide-required-items-flags bugs I hope this option works fine now. It has been difficult to fix all bugs related with this feature. Most of these bugs allowed to keep the required items after creating a crafting.
If you want to let players avoid the craft of an item, and instead of that use money you can set the path craft-with-money: AMOUNT
This will create another item on the crafting inventory, which needs to be clicked to crraft the item with money.