DeityAPI
This plugin is designed to make the tedious tasks such as chat/config/command handling simple and unified. Think of it like the borg for bukkit.
What does this plugin allow me to do?
For Server Admins: This plugin will not do anything for you, unless you are developer and using its API. Otherwise it will sit in the background. For Developers: Plugin contains multiple api functions available to the developer, dealing with MySQL interaction, Player handling, Inventory handling, Chat handling, Econ handling (provided vault is installed), WorldEdit, WorldGuard, Mob handling, File Management, String Management, Time Management, and various others.
Benefits:
- The simplicity. Even if you do not use the Plugin and Command framework we provide, you still have access to a persistant MySQL Connection instantly, without having the Server admin configure the database multiple times.
- Within the Plugin framework, if the admin decides to enable it, it will profile the load times of all the plugins registered.
- Getting sick of building help files/pages, to go along with the plugin? The Command framework will take care of all that including all sub-command handling out of the box.
- Annoying at having to check permissions/check if its a player running the command? The Command framework will also do all of this for you.
Configuration?
deityapi: should_profile: true # Whether or not you would like to see load times on plugins inform_on_plugin_update: true # Whether or not you would like plugins to notify you if they update mysql: server: address: localhost # Change me to the address of your database server port: 3306 # Change me to the port of your database server database: name: kingdoms # Change me to the name of your database username: root # Change me to the username for your database password: root # Change me to the password for your database
Commands?
- /Query [show/hide]: This command will show/hide console logging of all database queries. Can be used by anyone who is Op/players with the permission node "DeityAPI.query" or from console itself
Plugins that use this plugin
If your using the API for a plugin and it wont load or throw a ClassNotFoundException. Please message me with your plugin name and ill add it to the list
@vanZeben
Its a test server. Only have a few plugins on it =P
@selfservice0
Fixed in v12.07.30.1, It was cause by you using Vault, but not having an Economy source linked to Vault... Thanks for that one
Getting this error
@Jdon278
You can check out any of the sources in the "Plugins that use this system", for a full plugin example. However if you feel like reading some JavaDocs you can check the link above.
Hey is there a source and is there any example codes ?
@vanZeben Thanks, with the latest update Mail and HelpTicket are working. I think the problem was, that it did not create the necessary mysql config entries. I wrote that i am using CB++ but somehow the the pluses disappeared.
Btw, your plugin update check in the console log is not working good:
[Server] WARNING [DeityAPI] v12.07.22.1 was released! You should update at http://dev.bukkit.org/server-mods/deityapi
I am already using ver 12.07.25
@vanZeben Why are your last two updates taking so much time to get approved?
@deleted_6264528
What version of Bukkit are you running?
Hi there, I get this error when my server tries to enable DeityAPI. I am using CraftBukkit.
2012-07-25 01:35:41 [SEVERE] Error occurred while enabling DeityAPI v12.07.24 (Is it up to date?) java.lang.NullPointerException at com.imdeity.deityapi.DeityAPI$InternalAPI.<init>(DeityAPI.java:146) at com.imdeity.deityapi.DeityAPI.onEnable(DeityAPI.java:46) at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:337) at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:383) at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:378) at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:360) at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:298) at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:55) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:198) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:487) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
Well true but HelpTicket depends on DeityAPI so I find it to be the right place.
But yes I feel bad posting errors in comments, but i had very less time to use pastebin.
Sorry
@deleted_7554077
This error pertains to loading HelpTicket, please keep the error on that page and don't clutter up comments with the same post. Thank you
Error:
2012-07-23 07:24:31 [SEVERE] Could not load 'plugins\HelpTicket.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: com/imdeity/deityapi/api/DeityPlugin at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:151) at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:305) at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:230) at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:213) at org.bukkit.craftbukkit.CraftServer.<init>(CraftServer.java:189) at net.minecraft.server.ServerConfigurationManager.<init>(ServerConfigurationManager.java:53) at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:166) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:432) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NoClassDefFoundError: com/imdeity/deityapi/api/DeityPlugin at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.defineClass(Unknown Source) at java.net.URLClassLoader.access$100(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:41) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:140) ... 8 more Caused by: java.lang.ClassNotFoundException: com.imdeity.deityapi.api.DeityPlugin at java.net.URLClassLoader$1.run(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:41) at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:29) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) ... 24 more
How to fix?
Thanks
@louiskw
I love you as well <3 Hope you find some use for this ;)
I love you. period
@chasechocolate
No Problemo :)
Omgeeeeee van! Thx so much for releasing!!!!!!!!! <3 <3 <3 <3
@vanZeben
Awesome, thank you =) I will give it a shot.
@ryvix
It doesn't require anything. All of the API's available will disable themselves if there is a missing component, however the rest of the API's will still be available and active.
EDIT: Ahh there seems to be an error with the worldguard/worldedit one. Ill look into that. EDIT2: Got it, 12.07.18 will fix those errors
Is it possible to make it so it doesn't require WorldGuard?
@1Rogue
The API functions in Help-Ticket were all originally directly copied out of this API, however we weren't going to release this as it had a bunch of server specific functions inside it. However maintaining a separate DeityAPI for our server, makes the rest of life much easier.
Ill be re-writing all of our released plugins to abide by this API to make life easier, as well as it gives me a reason to re-write them, which is something i have intended to do for awhile. First on the list is Mail, then HelpTicket
Short answer yes and a lot more.