Custom Enchantments
Description
This plugin adds a whole bunch of awesome new Items and enchantments that are independent of the Minecraft Enchantment system.
This is my first plugin and at the same time my first Java Project.
For Suggestions/Commissions/Bugs/etc., leave a comment below.
Official Servers
If you want to see the plugin in action, check out the following servers!
Current official Servers:
- mc.canicraft.ca
- Draids.net
- p-n.ca
Videos of the Plugin
Please note that the following Videos were made using older versions of the plugin:
Commands
- /ce - The main command node for Custom Enchantments
Please note that for any command after the main node, you do not have to enter it's full name, the first letter is enough (Example: /ce list = /ce l).
Words in angle Brackets ( < > ) mean that the argument is required, while words written in square Brackets ( [ ] ) are optional.
- /ce runecrafting - Opens the runecrafting inventory.
- /ce menu - Opens an inventory menu for navigating and obtaining Custom Enchantments and Items.
- /ce reload - Reloads the CE config.
- /ce remove [Enchantment] - Removes an enchantment (or all of them) from an item.
- /ce list <Enchantment/Item> - Lists all Custom Enchantments or Items.
- /ce enchant [Required material] <Enchantment> [level] - Adds the specified Enchantment to the item in your hand. If a required material is given, the command will only work if the player holds that item. If an item already has the enchantment, the level will be increased.
- /ce item <Item> - Transforms the item in the player's hand into the specified Custom Item.
- /ce change <Name/Lore> <Color/Set/Add/Reset> [New Value] - Allows you to change the name/lore of the item in your hand
- /ce give <Player> <Material> <Item/Custom or Vanilla Enchantment:Level> [Custom or Vanilla Enchantment:Level] ... - Gives the target player an item with the set material containing the given Enchantments. Please note that the Material has to be either the Minecraft material ID or the Bukkit material ID. The same goes for the Vanilla enchantment names. You can add infinite vanilla and custom enchantments to the item using this command.
Content
Enchantments | Items
Admin Information
Config Explanation | All permissions
Enchantment Books
Version 2.4 added a feature called Runecrafting that allows enchantments to be put on books.
They can be created using /ce ench or /ce menu, given through /ce give and obtained by enchanting a book using the enchanting table.
If disenchanting is enabled, enchanted items can also be turned into enchantment books.
Using an enchantment book or an enchanted item on an Anvil will open the Runecrafting inventory, which can also be opened by using /ce menu or /ce runecrafting. The lower slot requires the enchanted item while the top slot requires the item to enchant.
Sign shops
If you are using version 2.2 or higher of the plugin, you can sell Enchantments by setting up a sign in the following format:
- "[CustomEnchant]" (Without the "s) as the first line.
- The Enchantment you want to sell as the second line.
- The cost of the enchantment as the fourth line. This requires Vault and a compatible economy plugin
Players that do not have the enchantment will have the enchantment applied to their current item, if they already have the enchantment they are trying to buy, the level of the enchantment will increase by 1, up to the specified maximum level of the Enchantment (Can be set in the config).
CE-Menu
If you have Vault installed, you can set a price for the Items/Enchantments through the config. The items and enchantments can then be bought in /ce menu.
CE's in Kits
To add Custom Enchantments and Items into kits, follow this guide:
- Check out if your kit plugin supports colored names and/or lores.
- Find example kits that add colored names and/or lores in your kit plugin
- For items, set "name: <Item>", for Enchantments, set "lore: <Enchantment>". You may have to find out how to add multiple lines of lore via your kit plugin
Notes:
The <Item> is structured like this: <Colorcode of the Item><The full Itemname>, the <Enchantment> is defined as: <Colorcode of the Enchantments><EnchantmentName> <Level in roman numerals>
The Colorcodes can be found on this site.
Examples:
Lifesteal would be "lore: &4&oLifesteal" (If you didn't change the standard color of the enchantments) &4 stands for the Color Dark Red, &o stands for the name being italic
In essentials, Lifesteal II and Poison III would be "lore: &4&oLifesteal II|&4&oPoison III" (Note: the '|' in the middle of the two enchantments seperates multiple lines in the lore of the kits made by essentials)
Flamethrower would then be "name: &4Flamethrower"
Bug reports
To make it faster and easier for me to help you with bugs and errors occuring, please send me a pm containing the following information:
- What version are you using? (See the Point Further Information to find out if a newer Version is avaivable)
- Does your console give you any errors? If yes, please send me a copy of them, this might make the further steps obsolete.
- What situation did the error occur in?
- Can you reproduce the error or does it happen randomly?
Donating
If you want to support development, you can donate by clicking here. It really helps me out a lot and I am thankful for every single donation, no matter how small :)
Github
If you want to contribute to Custom Enchantments or just want to take a look at the source code, you can check out the official repository of Custom Enchantments. Please note that the project was not originally designed for the public, so the project contains little to none documentation.
Current Version: 2.4c
Things that are planned for the future can be found here and you are also free to leave suggestions on there aswell
The main page for older versions can be found here.
Hey, If you are looking for a neat way to give these items to players I'm using shopkeeper for them on my server and it seems to work quite nicely. :) hope this helps some of you.
Having a lot of trouble with one of the latest bukkit server updates, 1.5.1 R2 , it seems to break timers, which are essential for some parts of the plugin. Update has been uploaded
@Davdinges
You are probably using the Version 1.0.3, there is no config file in this version. To use the staff, you have to enchant a stick, it's a bug in version 1.0.3 which allows you to apply it to everything
If this plugin allows colored names and colored lores for item spawns, it would work yes.
@Nova20012
I could add permissions to restrict the use of those enchantments, as in Version 1.0.4 there is a way to obtain them through the enchantment table via lvl 30 enchantments.
The staff is not working and there is no cofig??
@Taiterio
Thanks for the permissions, just what I needed just for certain players on my server! It AWESOME didn't even know it was possible to make custom enchantments! Thanks!
is it plausible to give items with this enchants by another plugin for item spawning?
Finishing update v 1.0.4 which includes tons of bugfixes, a config file and a few new enchantments. This update should be out in max 2 Days.
@Xikage
Alright, figured the problem out, sorry for that. It happens when your Bow has a Lore set, but not a Display Name. This is fixed in version 1.0.4. Atm I am noticing VERY severe issues with the latest testbuild of craftbukkit, as it is buggy as hell in my opinion.
Very neat addon, but while using it my console is occasionally spammed with the following error:
http://pastebin.com/8tDxmHP9
Not sure what the cause is.
@Teh1337Guy
Thank you :)
At the moment I'm working on fixing current bugs, it seems that the newer testbuilds of craftbukkit break some things that many plugins, including mine, need.
Dude You Are The First To Make A Awesome Plugin! You Are AWESOME. Also good luck on making the new stuff :D
@Nova20012
I added permissions for the commands, but not for the enchantments themselves. If you want those, please tell me if you'd prefer the permissions for each enchantment or a natural way of getting those.
@Taken4Goop
What does it say? I can run my plugin on any of the newer Bukkit versions
It won't work for me at all. I'm 1.5.1 and dragged the jar into the plugins folder. WHYYYYYY!?!?
Going to try it, need permissions though so I can only give it to my Diamond and Gold ranked players! Looks great by the way!
@Teh1337Guy
Thank you, now for the Lightning enchantment I wanted to add it for a longer time, next update will have it :) At the moment im playing arround with the hookshot and the beastmaster's bow. I'm planning really nice things for further enchantments, for some of the already existing ones and maybe even enchantment combos. I'm also working on a way to get the enchantments through enchantment tables, as that would make it very awesome for pvp servers. Another project I'm working on are the Block Enchantments, they are gonna be totally awesome!
Tested And I LOVE IT! Props To You Bro! I didnt know this was even possible!
Can you please add a lightning enchantment for bows?!?!??!
+1 For You If You Can Do This :D
@Kyletheninja1
When did that happen? I can only think of an incompatible version
11:53:22 [SEVERE] Could not load 'plugins/Custom_Enchantments.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.UnsupportedClassVersionError: com/github/taiter/Main : Unsupported major.minor version 51.0 at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_5_R2.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_5_R2.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_5_R2.DedicatedServer.init(DedicatedServer.java:105) at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java:379) at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.UnsupportedClassVersionError: com/github/taiter/Main : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631) at java.lang.ClassLoader.defineClass(ClassLoader.java:615) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) at java.net.URLClassLoader.defineClass(URLClassLoader.java:283) at java.net.URLClassLoader.access$000(URLClassLoader.java:58) at java.net.URLClassLoader$1.run(URLClassLoader.java:197) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:80) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:249) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173) ... 9 more 11:53:23 [SEVERE] Could not load 'plugins/DisguiseCraft.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R1/Packet at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:184) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.loadPlugins(CraftServer.java:239) at org.bukkit.craftbukkit.v1_5_R2.CraftServer.<init>(CraftServer.java:217) at net.minecraft.server.v1_5_R2.PlayerList.<init>(PlayerList.java:55) at net.minecraft.server.v1_5_R2.DedicatedPlayerList.<init>(SourceFile:11) at net.minecraft.server.v1_5_R2.DedicatedServer.init(DedicatedServer.java:105) at net.minecraft.server.v1_5_R2.MinecraftServer.run(MinecraftServer.java:379) at net.minecraft.server.v1_5_R2.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R1/Packet at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:249) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173) ... 9 more Caused by: java.lang.ClassNotFoundException: net.minecraft.server.v1_5_R1.Packet at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader.java:70) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:53) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) ... 12 more Why Won't it Produce a Folder I would Like to test this out:D
This is freaking amazing!!!!
Next update should be out tomorrow, uploaded it. Includes the first items with Modes and the enchant command has been renamed to /ench and /enchanting!