PvPReward
Version 1.9.0
NOTE: This plugin requires you have Vault enabled on your server
This plugin adds to PvP, in addition to any items that may be dropped, players also steal money from the players they kill. The amount stolen is configurable.
Money can also be taken from a Player when they die.
Features:
- Supports all major Economies and Permission Plugins thanks to Vault
- You can change what command this plugin uses by editing the plugin.yml (found inside the plugin jar file)
- MultiWorld support (Disable rewards and/or death tolls in specific Worlds)
- Configurable properties
- Custom messages
- KDR Leaderboard
- Several methods of determining amount of money lost/stolen (percent, flat rate, etc...)
- Add Players to a specific Permission Group if they kill too many other Players
- Option of having tombstones to hold items instead of players dropping items (Beta feature)
- Configurable combat time
- Optional penalties for logging or teleporting while in combat
- Broadcast when a Player Combat Logs
Permission Nodes:
- pvpreward.getreward = Needed to steal money from another Player
- pvpreward.givereward = Needed to have money stolen from you
- pvpreward.ignoredeathtoll = Do not pay Death Toll when you die
- pvpreward.reset = Needed to reset any Player's Kills/Deaths/Karma
Commands:
User Commands:
() indicates a required field.
If Player is not specified, then the command sender is used
- /pvp outlaws - Lists current Outlaws
- /pvp karma (Player) - Lists the Karma level of the specified Player
- /pvp kdr (Player) - Lists the Kill/Death ratio of the specified Player
- /pvp rank (Player) - Lists the KDR rank of the specified Player
- /pvp top (Amount) - Lists the top ranked KDRs
Admin Commands:
[] indicates a required field.
- /pvp reset - Lists the Admin reset commands
- /pvp reset kdr - Sets your kills and deaths to 0
- /pvp reset kdr [Player] - Sets the specified Player's kills and deaths to 0
- /pvp reset kdr all- Sets everyone's kills and deaths to 0
- /pvp reset karma - Sets your Karma Level to 0
- /pvp reset karma [Player] - Sets the specified Player's Karma Level to 0
- /pvp reset karma all- Sets everyone's Karma Level to 0
Karma Description:
Most of these setting are configurable
Picture + Written Description by riuthamus
Scene01:
Bob and Jacob have done nothing, all stats are base:
- KARMA POINTS: 0
- DROP PERCENT: 10%
- 500 COINS IN ACCOUNT
Scene02: Bob attacks and kills Jacbob, this will do the following things:
- Bob will gain 2 karma points
- Jacob will lose 1 karma point ( if he is at 0, it will stay at 0 )
- Bob's chance for drop of gold will be increased by a 2% modifier if his karma is less than 50
- If the chance for drop of coins from Jacob ( the killed ) is a success, a random value ( default range of 0%-5% ) will be taken from Jacob's bank account
Scene03: Bob has been bad, and has killed lots of people and now has 48 karma. He kills Jacob again, the following things occur.
- Bob will gain 2 karma points putting him over the 50 karma making him an outlaw
- Jacob will lose 1 karma point ( cannot go below 0 )
- Bob's chance for drop of gold will be increased to 100% since he is considered an ( outlaw ) and still gains +2 karma
- If the chance for drop of coins from Jacob ( the killed ) is a success, a random value (default range of 0%-5% ) will be taken from Jacob's bank account
Scene04: Jacob kills bob after bob has 52 karma, the following occurs:
- Bob will lose 1 point of karma taking him down to 51
- Bob is still an outlaw so he has 100% chance of drop of gold/coins
- Jacob WILL NOT earn karma points because he killed an outlaw
If the modifier is set to 20, whenever an outlaw kills a non-outlaw, he gets 20% more coin on top of the rewards he already would have gotten (if he successfully gets the drops in the first place). Likewise, if the modifier was set to 150, he'd get 150% more coin.
Now, more in-depth and complex mode: The modifier increases after certain karma thresholds. For example: You have set your options in the config file as follow: karmaThreshold: 10, outlawModifier: 2, modifierMax: 50
With this, every 10 karma after 50 (60, 70, 80, etc.) will grant the outlaw a 2% bonus to all drops stolen. After it reaches 50% extra drops stolen, it stops increasing (as based on the modifierMax variable). It seems complex, and it's probably not for everyone, but it'd be cool in my opinion.
(All of that is amount of coin stolen, not the rate at which they drop them, to make it clear!)
Tutorials:
Setup (Config settings):
RewardType may be any of the following:
- Karma
- FlatRate
- Range
- Percent
- PercentRange
- PercentKDR
All other settings depend on what the reward type is set to.
Karma:
This type has the most features, It is explained at the bottom of this page, the settings are as follows:
- Percent - The base percentage for calculating whether there will be a drop
- Amount - The amount of Karma needed to be considered an Outlaw
- High - The maximum percentage that could be taken from a killed players account
- Low - The minimum percentage that could be taken from a killed players account
- OutlawModifier - Outlaws steal an additional x%
- KarmaThreshold - Increase OutlawModifier every x kills
- ModifierMax - OutlawModifier will not go beyond x
FlatRate:
The Killer will always steal a specific amount from the killed, the settings are as follows:
- Amount - The amount of money that will be stolen upon each murder
- All other settings don't matter
Range:
The Killer will steal an amount of money within a given range, the settings are as follows:
- High - The maximum amount that could be taken from a killed players account
- Low - The minimum amount that could be taken from a killed players account
- All other settings don't matter
Percent:
The Killer will steal a certain percent of the killed players total balance, the settings are as follows:
- Percent - The percent of money that will be taken from a killed player account
- All other settings don't matter
PercentRange:
The Killer will steal a percent of money within a given range, the settings are as follows:
- High - The maximum percent that could be taken from a killed players account
- Low - The minimum percent that could be taken from a killed players account
- All other settings don't matter
PercentKDR:
The Killer will steal an percent of money based on the two players KDRs. You receive a higher percent from players with a higher KDR (formula is killedKDR/killerKDR). This percent is taken from the killed players total balance. No settings are used.
Video:
Coming soon!
With PEX i have some problems with adding and removing Group while i'll become outlawer plugin add two group in the permission file under same user and dont remove it after finish outlawer like:
users:
darkwarriors
group:
- Normal
- Outlawer
so i remain always Outlawer even if i have 0 karma
and we need also a multiworld support or a permission to disable karma loss or gain in certain world, think about pvp event like PvParena.
@Milg8
why doesn't worldguard simply cancel the entity damage event?
@Codisimus
hey mate again great plugin :D
im curious if this is possible,
ive got a problem with players on my server going around and killing others in the spawn which is a "NoPVP" zone done with worldguard. the way they are killing people is i have the no teleporting in combat feature turned on and people are going around hitting people putting them in combat and when they try to TP away they eventually die D:
so i was wondering if there was a way you can hook into worldguard or something to check if the area is "nopvp" and if so it will still allow people to TP :D
Thanks again Codisimus i love this plugin.
its normal that when i become outlaws i wasnt sith to outlawsgroup that i set in config file?
i sue last version of pex and pvpreward
@WavyWonderz
Percent - use this setting set to 100%
@WavyWonderz
use this config file http://dl.dropbox.com/u/23866327/config.properties
modify the messages and such if you want to but this is setup to do exactly what you described. let me know if you are still having trouble.
Hey! I need a plugin that does this:
i think i have some problems configuring this plugin to do this, they don't lose money when they die, and in PvP they only lose about 1% of their total balance
Please Help!!!!!
@soccerkid1015
sorry, my mistake. I fixed the outlaw command in version 1.4.4 thank you for your patience
Leaderboards works now with the latest build, however /pvp outlaws still outputs no entries, even though there are people past the outlaw threshold.
@soccerkid1015
I tested it and the commands are working fine (except that I noticed the leaderboards are shown in reverse order) make sure you are using the latest version
Do the commands /pvp top and /pvp outlaws work for anyone? For some reason I cannot retrieve any leaderboard-like stats from PvPReward. You can individually check someones Karma and KDR though, so I think the problem is with those commands. No errors are returned or anything, the leaderboards are just blank/at 0.0kdr
@Codisimus
thanks works great :D
merry Christmas
@Codisimus
Updated to 1.4.2 and it's working, maybe I configured something wrong? Thanks anyway
@Milg8
Fixed in version 1.4.2
i keep getting this error when somebody dies, the error is different in different ways people die, money is given and or taken away as set with the penalties but it does not display the messages saying that you got X amount of money for killing that player.
Btw this plugin is fantastic and just the thing i have been looking for abit now and thank you :D
2011-12-23 07:36:00 [SEVERE] Could not pass event ENTITY_DEATH to PvPReward java.lang.IndexOutOfBoundsException: No group 5 at java.util.regex.Matcher.group(Matcher.java:470) at java.util.regex.Matcher.appendReplacement(Matcher.java:737) at java.util.regex.Matcher.replaceAll(Matcher.java:813) at java.lang.String.replaceAll(String.java:2189) at com.codisimus.plugins.pvpreward.listeners.EntityEventListener.getMsg(EntityEventListener.java:299) at com.codisimus.plugins.pvpreward.listeners.EntityEventListener.dropMoney(EntityEventListener.java:147) at com.codisimus.plugins.pvpreward.listeners.EntityEventListener.onEntityDeath(EntityEventListener.java:103) at org.bukkit.plugin.java.JavaPluginLoader$65.execute(JavaPluginLoader.java:718) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339) at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerDeathEvent(CraftEventFactory.java:320) at net.minecraft.server.EntityPlayer.die(EntityPlayer.java:168) at net.minecraft.server.EntityLiving.damageEntity(EntityLiving.java:502) at net.minecraft.server.EntityHuman.damageEntity(EntityHuman.java:609) at net.minecraft.server.EntityPlayer.damageEntity(EntityPlayer.java:210) at net.minecraft.server.EntityLiving.b(EntityLiving.java:657) at net.minecraft.server.EntityHuman.b(EntityHuman.java:1173) at net.minecraft.server.Entity.a(Entity.java:670) at net.minecraft.server.EntityPlayer.b(EntityPlayer.java:433) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:380) at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:679) at net.minecraft.server.Packet10Flying.a(SourceFile:126) at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:93) at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:550) at net.minecraft.server.NetworkListenThread.a(SourceFile:108) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425) at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)>>
@newbizzle
I fixed the issues with tags, also if you set the tag to nothing, it will now disable the feature
I am having an issue with the tag. The tag works when the player FIRST gets it. Then, when they leave and come back, it changes to just the name with no color or anything. Is it possible to disable it completely? Or a possible fix?
@Finlet
I mean which version of PvPReward
PermissionsEx v1.17 It may be that I configured it wrong, but I just can't think what else it could be
@Finlet
which version are you using?