Champions
Logo and buttons by TCuts
Champions aims to be a fully customizable and extensible RPG plugin. We want to bring a complete MMORPG experience to minecraft. The Champions plugin and API library helps you bring your RPG vision to life.
Champions Core Plugin
Races
Is your champion a dwarf, ogre, fairy, or even an alien? The races system lets you create your own races and set restrictions or bonuses for each. You could have a race that naturally has more mana, health, access to certain skills, or even restricted from using particular classes. The API for custom races allows for even more possibilities, letting you define your own behavior for leveling up, using a skill, hitting with a weapon, etc, etc. If you want to make a custom race that regains mana when attacking with a weapon, it's completely possible.
Classes
The classes system is one of the main features of Champions. There's very little you can't do here. We support multi-path class tiers, custom experience sources. You can restrict use of skills and weapons, modify mana costs, add bonus health, modify the stats (health and mana per level), set class mastery and level requirements, and just about anything else you can think of. Like the races system, the classes API is extremely flexible and allows developers fine control over all of their custom classes.
Skills
It's difficult to explain the full depth and flexibility of the skills system. If you can think of it, you can do it, and if you can't, then we'll modify the API to be sure you can. The basic skill configuration allows modification of mana, stamina, and health costs. Everything else can be done via the Champions API library.
Custom Weapon and Armor Types
We're currently in the process of completing implementation of custom weapon and armor types. Weapon types can be specified in the item's lore and classes can be configured to give bonuses to each weapon type. If you'd like an Assassin class that does more damage with Daggers, it's extremely simple to configure. We'll be putting some effort into making the lore formatting as configurable as possible but for the time being we're focusing mainly on the format used by the RPG Items plugin.
Experience Sources
You can specify custom experience sources for all of your classes. We currently support block break, block place, mob kill, player kill, furnace use, and skill use sources. You're able to specify the exact experience gain for each block, mob, player or skill. In your class configuration you're also able to set a modifier to adjust the experience gain from each source. There's also support for setting the experience gain for killing a specific player, either via the configuration or dynamically with the API. In the future we may add support for experience gain based on the level of the player that was killed.
Add-on Modules
We've designed the Champions Core plugin and API library to be as extensible as possible. We have several add-on modules planned to add even more features to Champions. This includes integration with existing plugins, support for weapon, armor and skill classes, a questing system and a whole lot more. After the core is finished, keep checking back for updates on these modules.
For developers: You can develop modules either: a) independant of Bukkit, or b) requiring Bukkit currently. For more information, look at the docs and tutorials sections on the wiki (coming soon).
Champions API Library
The API library is the primary focus of development for the time being. This library is completely independent from bukkit and can be used either to extend the Champions core plugin, or create your very own RPG plugin. It has everything you need for creating classes, skills races, experience sources, assigning restrictions, leveling, experience, events and just about everything else you can think of. This library is the root of the Champions core plugin. As the codebase becomes more stable, we'll be releasing a number of tutorials to help you learn how to use the API and explain what exactly can be done.
Notice: Currently looking for people willing to write docs and tutorials on various parts of Champions! PM YoshiGenius or add him on skype (yoshigenius) to apply.




-
View User Profile
-
Send Message
Posted May 19, 2013@C0nd3mn3d
Well, it can already be done pretty easily via the API by extending the behavior class and calling the setBehavior method on your object instance. I'd like to create a large set of these behaviors and be able to attach them to the objects via configuration.
Lets say for a weapon object, you might want a behavior that drains the users health when attacking, or absorbs mana. Maybe for a race, you might want to make them immune to certain skills, or an Elemental race that explodes when it dies, or something like that. The possibilities are pretty vast and if I end up implementing the way I'd like to, people can easily share their custom behaviors with others just by dropping them in the config folder and adding the behavior name to their configuration file.
Of course, this only adds a slightly more flexible way of handling things. You still have the option to use the API to extend the Race or CClass classes and register them with the appropriate handler for creating entirely custom races, classes, weapons, armor, etc, etc if you're developing a new plugin or extending Champions.
If you'd like to donate, it would be very much appreciated :) You can find our donation links at the bottom of the github page here: Donate
Unforunately it looks like yoshi's is broken (eek!) I'll be sure he updates it ASAP.
Thanks for the support and if you have any other questions don't hesitate to ask :)
-
View User Profile
-
Send Message
Posted May 19, 2013@B2OJustin
What are some examples of custom behaviors that could be configured, if you decided to implement this? Also, will you be making the ability to donate available? Would love to make your hard work worth it.
-
View User Profile
-
Send Message
Posted May 19, 2013@predawnia
That's an interesting idea, I hadn't thought of that. I'll take a look and see what I can do, shouldn't be very difficult. If it's added, it'll be in the form of a configuration setting under the "Weapons" section for both races and classes. It'll likely be named "durability-modifier" or something of the sort. I'll let you know if we decide to add it.
-
View User Profile
-
Send Message
Posted May 19, 2013Are you able to implement per class tool efficiency?
For example, dwarves can mine better than elves
dwarves for example can break more stone blocks per pickaxe than elves.
-
View User Profile
-
Send Message
Posted May 19, 2013@C0nd3mn3d
There will absolutely be per-class weapon damage and it's actually already implemented. Take a look here:
WeaponInfo class
CClass.getWeaponInfo
Mob HP will also be configurable, though we haven't yet implemented anything regarding entities other than the player.
Feel free to ask as many questions as you'd like :) We're also open to any constructive criticism regarding the API. We've tried to make it as flexible and extensible as possible but we are constantly finding areas in which it can be improved.
Recently, we've implemented swappable behaviors (read callbacks) and we might end up doing something fancy with, like making them configurable, then you can easily add multiple custom behaviors to your objects with very little effort (or less code). You can get a better idea of what I mean here:
Behavior package
-
View User Profile
-
Send Message
Posted May 19, 2013Will there be the ability to set mob HP? What about per-class weapon damage? Couldn't seem to find it in the source or javadocs, sorry for all the questions. :P
-
View User Profile
-
Send Message
Posted May 19, 2013Way to go Onion. :)
-
View User Profile
-
Send Message
Posted May 19, 2013Went ahead and uploaded the javadocs, you can find them here:
Champions API JavaDocs
-
View User Profile
-
Send Message
Posted May 18, 2013@C0nd3mn3d
Sure, you can find our development builds on our CI. The core isn't quite ready for testing but will be soon.
-
View User Profile
-
Send Message
Posted May 18, 2013@B2OJustin
Sweet. Let me know if you need any testing done, too.
-
View User Profile
-
Send Message
Posted May 18, 2013@C0nd3mn3d
Ah alrighty. I'm not sure how they handle things exactly or which plugins you've had issues with but we'll be sure we don't have the same issues with Champions.
-
View User Profile
-
Send Message
Posted May 18, 2013@B2OJustin
As far as I can remember, Heroes handles all mob health, player health, damage, etc internally and that causes issues with other plugins You might have to just look at their documentation to see what i'm speaking of as i'm currently at work on my phone. :P
-
View User Profile
-
Send Message
Posted May 18, 2013@C0nd3mn3d
Also, thanks for the reminder about the javadocs. We'll get those up somewhere ASAP, though actual API documentation is still a bit lacking to say the least. The codebase is relatively stable now though and we should be able to comfortably begin documentation.
-
View User Profile
-
Send Message
Posted May 18, 2013@C0nd3mn3d
Absolutely not. We wont be modifying player DAT files or otherwise affecting the health and damage system of bukkit. We've thought of several ways to implement this but you can rest assured knowing it will be as non-intrusive as humanly possible.
If you'd like to elaborate a bit then it may help us decide how exactly we'd like to implement this and I may be able to give you a few more details.
-
View User Profile
-
Send Message
Posted May 18, 2013@B2OJustin
Oh really? That sounds fantastic, then.
Just one question. I've faced numerous issues with Heroes because of the way it modifies how health and damage are handled. Will I face similar issues with Champions? Additionally, your javadocs link is down on the github.
-
View User Profile
-
Send Message
Posted May 18, 2013Looks interesting. Maybe will use this for my next minecraft server project, if it ever comes out :)
-
View User Profile
-
Send Message
Posted May 18, 2013@C0nd3mn3d
Thanks for the support. We have been developing Champions for about a month or so now, we've put far too much work into it to let the project die. What you see listed on this page is already done, plus a ton more. We aren't far off from beginning release of alpha versions, so keep checking back :)
-
View User Profile
-
Send Message
Posted May 18, 2013Looks like lots of fun ! =) Good luck with the API Library I hear those are tough !
-
View User Profile
-
Send Message
Posted May 18, 2013Really hope this doesn't become another ambitious RPG plugin that fails. It looks really interesting and new. Good luck. :)