McMmo Auto-Promote
McMmo Auto-Promote
About
This plugin allows for users to get promoted by getting mcMMO levels.
Once a certain skill level has been reached the plugin will automatically promote the user according to the permissions.
Uses vault for permissions. Vault
Features
- Auto-promotes when a skill level has been reached in mcMMO.
- Custom promotion message.
- Public or user-only promotion message.
- Debug tools for advanced servers admins.
- Multiple ladders.
- Auto-promotion depending on specific skills.
- Auto-promotion based on Vault permissions.
- Multiple skill requirements must be met before auto-promote.
- Requiring and rejecting groups a player has can prevent a player from auto-promoting.
Future Features
- Command to show statistics and next promotion requirements.
- Player name prefix for non-permission servers.
- Nested conditions. ( 'and' inside another 'and' )
- Commands to add, remove, modify promotion settings in-game or through console.
- If you have more ideas please post them below.
FAQ
- What is a ladder?
A ladder is similar to a leader-board for players, except a ladder tells the plugin what groups a player can be promoted to and in what order. Having multiple ladders means a player can be promoted in multiple groups at once.
- What is the group rank for?
The rank tells the plugin which group should be promoted to next. If a group has the highest rank then the plugin will try to promote to that group before any of the others.
- How do I stop staff from promoting?
A) Reject the group in the first group of the ladder.
B) Add the 'mcmmoap.disallow' permission to the staff group.
- How can I support this plugin?
Please visit this button below. I invest quite a bit of time on the plugins I make so any amount of donation helps a lot.
Config Glossary
- rank - Tells the plugin which group should be promoted to next.
- reject - Will prevent a player from being promoted to the next group if they have a rejected group.
- require - Will prevent a player from being promoted to the next group if they dont have the required group.
- Skills - power, acrobatics, archery, axes, excavation, fishing, herbalism, mining, repair, smelting, swords, taming, unarmed, woodcutting
- and { } - Only allows promotion if the player has every skill in the 'and' list.
- message - The allows a custom message for each group. It is displayed when the player is promoted to the group.
- Or { } - There is no 'or' list. If you want the player to only have to get 1 of the skills in the group to be promoted to the group then put the skills outside of any 'and' list. Like in the Basic Example below.
Config Examples
- Basic Example
ladders { default { # This is the default ladder. Normal { rank = '100' # Must be unique to the ladder. reject = 'Admin' .# If the player gets either of these skills, they will promote. power = '5' mining = '1' woodcutting = '1' excavation = '1' } Awesome { rank = '90' # Must be unique to the ladder. message = '&GREENYou are awesome.' .# Player will only promote if they have all these skills. and { power = '5' mining = '1' excavation = '1' woodcutting = '1' } } Epic { rank = '80' # Must be unique to the ladder. .# Will promote if the player has 20 power level. power = '20' .# Or if they have all of these skills. and { mining = '5' woodcutting = '5' excavation = '5' } } } }
Please report any errors you find!
Enjoy.
Need lots of groups? Try my javascript config generator.
http://www.mediafire.com/?t9cul3vvbynwamt
Current Bugs
- None yet. Report them! (Include Bukkit, mcMMO and McMmoAp versions)
I created a javascript web page that can generate large permissions and promotion configs. Link Removed: http://www.mediafire.com/?t9cul3vvbynwamt
@Tagette
Oh, right. Thank you.
@Tallcraft
1.0.4a does not work for the beta builds of mcmmo. You will need to download the beta version of mcmmoap 1.0.3g-beta.
Edit: Also, 1.0.3g-beta was made to work with beta3. No guarantees it will work with beta4.
@Aibakins
What version of mcmmo are you using?
Issues using 1.0.4a and mcMMO 1.4.00-beta4 : http://pastebin.com/CRPEpwdx
@Aibakins
same here, does it affect the functionallity?
I have recived an error every time a person joins... how do i fix?
@Tagette
Awesome. Thank you.
@Dagepaa
I was wondering if you could pastebin the entire output of your server. I need to see when permissionsBukkit is being enabled. I am afraid that my plugin is calling a function on PermissionsBukkit before it is enabled. Causing the error.
Edit: Nvm, I was right about PermissionsBukkit loading after my plugin so I changed a few things and now it works with permissionsBukkit.
New Update. Please wait until the download is approved.
1.0.4b
I am going to toy around with permissionsex. This is for a server addition so I dont have to worry about a large conversion or anything.
If you come up with anything let me know. I prefer Permissionsbukkit.
Thanks
@Dagepaa
Yes, if you need it to work now, you will need a new permissions. However I am talking with vault to see if there is a way around this.
I recommend PermissionsEx. Or visit the vault page to see some other plugins that may work.
If I changed permissions plugin you think it would work?
I have always used permissionsbukkit so I hate to try anything new.. Permissions plugins are soo... un-intuitive? (if that's a word) and difficult to learn.
@Dagepaa
Alright, something is wrong with Vault and PermissionsBukkit. I'll look into it.
Latest RB build for bukkit. Latest update for vault. Also using permissionsbukkit.
New Update. Please wait until the download is approved.
1.0.4
@Dagepaa
What version of vault and bukkit are you using? Also what permissions plugin are you using?
@SatoAV
Thats a good idea. I'll add that soon.
@Tagette
Thanks a lot, you rock! :3
P.S:
One suggestion: why don't you add customizable messages for each promotion? That would make the plugin totally awesome :3
For example:
blacksmith {
smith1 {
rank = '100' # Must be unique to the ladder.
}
smith2 {
rank = '90' # Must be unique to the ladder.
repair = '25'
message = 'Congrats! You are now Level II Blacksmith!'
}
smith3 {
rank = '80' # Must be unique to the ladder.
repair = '50'
message = 'Congrats! You are now Level III Blacksmith!'
}
Any help here?
ladders {
default { # This is the default ladder.
dirt {
rank = '100' # Must be unique to the ladder.
power = '1'
}
stone {
rank = '90' # Must be unique to the ladder.
power = '100'
}
iron {
rank = '80' # Must be unique to the ladder.
power = '250'
}
gold {
rank = '70' # Must be unique to the ladder.
power = '500'
}
diamond {
rank = '60' # Must be unique to the ladder.
power = '1000'
}
obsidian {
rank = '50' # Must be unique to the ladder.
power = '2000'
}
}
}
22:12:07 [INFO] [McMmoAp] Enabling McMmoAp v1.0.3g-beta
22:12:07 [INFO] [McMmoAp] Settings loaded.
22:12:07 [INFO] [McMmoAp] Language loaded.
22:12:07 [INFO] [McMmoAp] Vault permissions hook into.
22:12:07 [INFO] [McMmoAp] Could not load Promotion.properties file.
22:12:07 [SEVERE] java.lang.NullPointerException
22:12:07 [SEVERE] at com.platymuus.bukkit.permissions.PermissionsPlugin.ge
tNode(PermissionsPlugin.java:210
22:12:07 [SEVERE] at com.platymuus.bukkit.permissions.PermissionsPlugin.ge
tAllGroups(PermissionsPlugin.java:163
22:12:07 [SEVERE] at net.milkbowl.vault.permission.plugins.Permission_Perm
issionsBukkit.getGroups(Permission_PermissionsBukkit.java:224)
22:12:07 [SEVERE] at me.tagette.mcmmoap.APPromotion.LoadLadder(APPromotion
.java:145)
22:12:07 [SEVERE] at me.tagette.mcmmoap.APPromotion.setup(APPromotion.java
:125)
22:12:07 [SEVERE] at me.tagette.mcmmoap.APPromotion.load(APPromotion.java:
97)
22:12:07 [SEVERE] at me.tagette.mcmmoap.APPromotion.initialize(APPromotion
.java:56)
22:12:07 [SEVERE] at me.tagette.mcmmoap.McMmoAp.onEnable(McMmoAp.java:75)
22:12:07 [SEVERE] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlug
in.java:217
22:12:07 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(
JavaPluginLoader.java:457
22:12:07 [SEVERE] at org.bukkit.plugin.SimplePluginManager.enablePlugin(Si
mplePluginManager.java:381
22:12:07 [SEVERE] at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugin
(CraftServer.java:282
22:12:07 [SEVERE] at org.bukkit.craftbukkit.v1_4_R1.CraftServer.enablePlug
ins(CraftServer.java:264
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.j(Minecr
aftServer.java:321
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.e(Minecr
aftServer.java:300
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.a(Minecr
aftServer.java:259
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.DedicatedServer.init(Ded
icatedServer.java:149
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.run(Mine
craftServer.java:399
22:12:07 [SEVERE] at net.minecraft.server.v1_4_R1.ThreadServerApplication
run(SourceFile:849)
22:12:07 [INFO] [McMmoAp] McMmoAp version 1.0.3g-beta is enabled!
@SatoAV
As with any beta build, it has bugs. I cannot release a version using mcmmo beta yet because the API they have is not working correctly.
Edit: I have talked with the mcMMO team and found a way around the bug. They will fix it for future versions as well. So I have uploaded a beta build for mcMMO 1.4.0. Please wait for the download to be approved.
@SatoAV
You are using a Beta build of mcmmo. Those havn't been tested with my plugin. If you really need to use the beta build for mcmmo I will put out a beta build of my own for it.
Got this error on all recent McMMO AP versions. CB 1.4.7-1.0 (MCPC+) McMMO 1.4.00
2013-02-17 14:26:06 [SEVERE] Error occurred while enabling McMmoAp v1.0.3f (Is it up to date?)
java.lang.NoClassDefFoundError com/gmail/nossr50/datatypes/SkillType
at me.tagette.mcmmoap.APPromotion.LoadLadder(Unknown Source)
at me.tagette.mcmmoap.APPromotion.setup(Unknown Source)
at me.tagette.mcmmoap.APPromotion.load(Unknown Source)
at me.tagette.mcmmoap.APPromotion.initialize(Unknown Source)
at me.tagette.mcmmoap.McMmoAp.onEnable(Unknown Source)
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217)
at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:427)
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugin(CraftServer.java:289)
at org.bukkit.craftbukkit.v1_4_R1.CraftServer.enablePlugins(CraftServer.java:271)
at org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugin(CraftServer.java:289)
at org.bukkit.craftbukkit.v1_4_R1.CraftServer.enablePlugins(CraftServer.java:271)
at net.minecraft.server.MinecraftServer.j(MinecraftServer.java:602)
at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:568)
at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:447)
at ho.c(DedicatedServer.java:203
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:724)
at fy.run(ThreadMinecraftServer.java:16)
Any Ideas?