In the past, I've developed a lot of minigame plugins involving classes or kits. However, an API like this was nowhere to be seen. If there were such an API, it would've sped up the process of creating these plugins by quite a bit. Recently, I've been given the plugin of ZVH to develop, and it involved classes. Instead of creating a whole other class system, I've decided to make an API for it by the name of ClassAPI for other developers to use as well. It's purpose is simple, it is made to speed up the process of creating minigame plugins and to simplify the process if possible, as it does a very simple task. Features: Completely thread safe - Everything down to the singletons are thread safe, allowing multiple plugins to hook into the plugin safely if needed. Fully configurable classes. Fully serialized - Storing classes is as easy as FileConfiguration.set("Classes.className", class); But I have a method for it in the API that supports different files. Classes can be obtained from simply the name of the class, or can be obtained from a Player. (Their inventory. armour and active potion effects are used.) Supports a default value if some objects used to create a class is null. (NullPointerExceptions are a thing of the past.) There is more. Implementing: All you really need to do is check if the plugin exists in the plugins folder of the server, and create an instance of ClassAPI. I have more detailed instructions on the bukkitdev page.Interested? : Source code - https://bitbucket.org/sayaad/classapi/srcBukkit dev page - http://dev.bukkit.org/bukkit-plugins/classapi/ Reserved for updates and stuff. EDIT by Moderator: merged posts, please use the edit button instead of double posting.