vEnchant
NEW UPDATE IS COMING SOON!
This this is the best enchant plugin for craftbukkit!
When I was looking for good enchant plugin, I have not found useful one, so I decided to write my own!
And now i present it for you!
Features
Enchanting and unenchanting items and blocks, configurability, great restrictions system through permissions, fastest performance and much more!
Tip of the version ;-)
If you want let players unenchant items, just add "- venchant.all.0" permission for default group!
if you want translate plugin to your language, install it, find messages.yml in VEnchant folder. Than copy EN section, change en to your lang (ex. de), translate messages and send new messages.yml to me through PM.
Advantages
Why VEnchant? | |
---|---|
1 | it's fully configurable |
2 | simple commands - not only /enchant, you can use /enc /ven and even /e!! |
2 | enchanting level limits through permissions |
3 | supports enchanting up to 32767lvl |
4 | looting, fortune and thorns are not enchanted by /enc all - looting 3000lvl of looting can cause lag |
5 | custom mapping for "natural enchants" |
6 | also custom mapping for default enchantment levels |
7 | multi-language |
8 | custom enchantments names and also enchantment lists!! |
9 | fast performance - it caused by mapping enchantments and levels in configs |
10 | removing enchantment by enchanting to zero level! |
Video review by MythicCynic!
Commands & Permissions
You can use "/enchant" "/ven" and even "/e" instead "/enc".
Command | Permission | Description |
---|---|---|
/enc | - venchant.natural | Enchants item in your hand with natural enchantmens, default level for each enchantment |
/enc all | - venchant.all | Enchants item in your hand with all enchantments, default leve for each enchantment |
/enc max | - venchant.natural.max | Enchants item in your hand with all enchantments, default level for each enchantment |
/enc [enchantment name] | - venchant.<enc ID!!!! not name!!!> | Enchants item in your hand with [enchantment] , default level |
/enc [level] | - venchant.natural.<level> | Enchants item in your hand with natural enchantments, level you provided |
/enc all max | - venchant.all.max | Enchants item in your hand with all enchantments except looting, fortune and thorns at 32767level |
/enc all [level] | - venchant.all.<level> | Enchants item in your hand with all enchantments except looting, fortune and thorns at level you provided |
/enc [enchantment] max | - venchant.<enc ID not NAME>.max | Enchants item in your hand with [enchantment] at 32767level |
/enc [enchantment] [level] | - venchant.<enc ID not NAME>.<level> | Enchants item in your hand with [enchantment] at level you provided |
Configuration
Basic configuration
1. Config.yml
Name | Default | Description |
---|---|---|
locale | en | Allows you change locale. Currently 'en' and 'ru'. |
pexcheck | configuration | This is advanced configuration value. |
enablemetrics | true | enable or disable plugin statistics on MCStats.org |
<enchantments section> | - | If you want add custom enchantments names, you shuold add line "<enchantment name you want>: <id>" |
2. messages.yml
Here stored messages. Just change you want.
Advanced configuration
TO-DO List
- rewrite natural enchantments checking system (i haven't starter yet)
removing echantments
enchantment lists
help command
added plugin metrics
add perms check for natural enchantments when enchanting by name
@xGh0sTkiLLeRx
yes it is, thank you. Vintar does all of the coding, I just wanted to know so if someone else reports the same problem I will know right away what their issue is because I know next to nothing about javascript
@MythicCynic
Easy answer for example: http://stackoverflow.com/questions/10382929/unsupported-major-minor-version-51-0
Technical information how the class files are structured: http://en.wikipedia.org/wiki/Java_class_file
I try to sum it up: the compiled java code (class files) have some sort of "information" about the version in it. Java 7 put 51 in there and because Java 6 is 50 and doesn't know how to handle 51 the error occurs!
I experienced this error in my first months, too and didn't know how to solve it, then I googled and found some explanations that it's because of the different Java version.
Hope this is easy enough to understand :)
@xGh0sTkiLLeRx
Cool, thanks lol. I just help look for bugs but the java versions are a bit too technical for me to understand. How did you figure that issue out? (for future reference, like what is the tip off?)
@MythicCynic
You compiled using Java 7 and he uses Java 6 ;)
Either upgrade to Java 7 @jeremy657
or compile with Java 6!
Cheers :)
@jeremy657
Are you using the latest plugin version? (VEncant v1.07.2)
Walk me through EXACTLY what you did to get this error. I have not seen this error on ANY of the builds yet so it is boggling me a bit.
@MythicCynic
I made sure i had the newewst craft bukkit, and i moved all my plugins to a different folder, and moved venchant to plugins and it still didnt work
REPLY IMMDEIATELY
@jeremy657
major.minor version 51.0 <- WTF
@jeremy657
What version of craftbukkit and the plugin are you using? Have you tried moving all other plugins to a separate folder to make sure it is not a plugin conflict?
After testing the latest version against a 1.4.7 build of bukkit I can not seem to replicate your issue. I believe a plugin conflict is likely the cause but double check and make sure your server jar is craftbukkit 1.4.7-R1.0 (or the latest build). I don't think this plugin is tested against modified jars such as libigot if that by chance is what you are using.
I get an error message when i start my server with it in my plugins folder ERROR:
01:23:42 [SEVERE] Could not load 'plugins/VEnchant.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException java.lang.UnsupportedClassVersionError ru/VintarZ/enchanter/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_4_R1.CraftServer.loadPlugins(CraftServer.java:239)
at org.bukkit.craftbukkit.v1_4_R1.CraftServer.<init>(CraftServer.java:217)
at net.minecraft.server.v1_4_R1.PlayerList.<init>(PlayerList.java:55)
at net.minecraft.server.v1_4_R1.DedicatedPlayerList.<init>(SourceFile:11)
at net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:104)
at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399)
at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
Caused by: java.lang.UnsupportedClassVersionError ru/VintarZ/enchanter/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:247)
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:173)
@VintarZ
Cool :D
@MythicCynic
Thx. In description.
http://www.youtube.com/watch?v=6ZS2DdVMAEI&feature=youtu.be made your new video
Also the new version fixed the internal error messages. Good work :D
Updated to v1.07.2. Two bugfixes.
@VintarZ
If someone tries to enchant a block it feeds you that error. The only problem i have with it is just that "internal error" sounds a lot worse than "This item has no natural enchantments." It is not a really big deal but I figured I should bring it to your attention.
@MythicCynic
I will check error as soon as possible. Can you tell me when this error appearing?
Made a video review
http://youtu.be/GRcW27FbXwo
So out of the blue I came across this. I'm not too sure what is causing it. I undid all recent changes but it still seems to spit errors when you attempt to enchant anything other than armor and weapons. I mean this personally does not bother me as the error only shows if they are trying to enchant something I don't want them to enchant anyway however it would be much nicer if it just spit the default message rather than "internal error."
ru.VintarZ.enchanter.EnchantListener.onCommand(EnchantListener.java:93) 13.02 21:00:11 [Server] INFO at ru.VintarZ.enchanter.Enchanter.enchant(Enchanter.java:17) 13.02 21:00:11 [Server] INFO Caused by: java.lang.NullPointerException 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:598) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:30) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.ServerConnection.b(SourceFile:39) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.PlayerConnection.d(PlayerConnection.java:113) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.NetworkManager.b(NetworkManager.java:290) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.Packet3Chat.handle(Packet3Chat.java:44) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.PlayerConnection.a(PlayerConnection.java:853) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.PlayerConnection.chat(PlayerConnection.java:898) 13.02 21:00:11 [Server] INFO at net.minecraft.server.v1_4_R1.PlayerConnection.handleCommand(PlayerConnection.java:980) 13.02 21:00:11 [Server] INFO at org.bukkit.craftbukkit.v1_4_R1.CraftServer.dispatchCommand(CraftServer.java:514) 13.02 21:00:11 [Server] INFO at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186) 13.02 21:00:11 [Server] INFO at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) 13.02 21:00:11 [Server] INFO org.bukkit.command.CommandException: Unhandled exception executing command 'e' in plugin VEnchant v1.07
@VintarZ
I was informing potential users on how to do it lol. It boggled me a bit at first because I kept approaching it the wrong way. As far as the default bypass goes, that is all fine. I was just curious because it would make things a little bit simpler but I can see how it would be very very difficult to accomplish it. The message would be nice but it certainly is not something to worry about. The features and customization behind this plugin makes it a FAR better choice than any other plugin out there because as far as I know, no other plugin allows me to restrict levels by group like you do so this is definitely one of my favorite plugins.
@MythicCynic
This is reply to another comment: i dont know what plugin u are using. It is not mine failure.
PEX works brilliant with this plugin. So go on wiki of your permissions plugin. (i am not checking in which world player is)
@MythicCynic Is it very difficult to enchant witn /enc 7 or /enc 3?
No i will NOT make you said beacuse default enchantments levels are different to different enchantments. I will NOT remove this feature. If your players are too lazy to type space and number - it's not mine troubles.
But i can make feature which informs you what you allowed to enchant. But i'm banned of computer, i can't make plugin on Android phone. So you should wait wait and wait. As i wait.