ChangeDamage
ChangeDamage by FalseVacuum
NOTE: I don't play MineCraft anymore. Please don't ask for new features. They're not going to happen.
Sorry guys, updates are *very* slow! I don't play MineCraft, and I'm super busy with other things. I do enough coding every day.... I would be thrilled to have someone to which to pass on the torch!
Up for takeover! PM me for details.
Features
- Item/weapon damage
- Arrow damage
- Critical damage
- Strength effect
- Weakness effect
- Separate world configurations for damage output (all of the above features)
- Armor protection
- Fall damage (including armor protection during falling)
- Permission to decide if item/weapon damage changes based on the dealer. This also affects critical damage and the weakness and strength effects.
- Ability to configure item/weapon damage output for PvP only or for both PvP and PvE
- Default configuration so that you can avoid playing with things you don't understand yet.
- Responsive development team—I usually get back to you within 24 hours, and I get right on to bug reports.
- Open source
Overview
ChangeDamage is a plugin which allows you to change the damage an item does or the amount armor protects you. For example, you may want to make diamond swords more overpowered than they already are, increasing damage output to 20 (10 hearts). Or maybe you may want to nerf those OP diamond swords, so you decrease the damage output to 5 (2.5 hearts). Maybe, just for grins and giggles, you want the flower to do 200 damage. However you want it, that's how you can do it. You can also change the damage points of a piece of armor. You could buff the unobtainable chain armor, whilst nerfing the overpowered diamond armor!
So what ChangeDamage does is it allows you to change the damage output of any item. You can choose if this applies to PvP only or if this works for PvE. EvP will not be affected (for example, Zombie Pigmen's gold sword's damage output will be constant). It also changed the damage points of a piece of armor.
Commands
The current commands are:
- /changedamage reload - Reload the plugin
- /changedamage release - Disable the plugin (unload it, so you can remove it/replace it)
Future commands may include options to modify damage output of weapons from commands instead of from the text file
Config
- pvponly - true/false - If false, ChangeDamage will affect player versus entities (PvE) in addition to PvP. If true, ChangeDamge will only affect PvP
- verbose - true/false - If true, ChangeDamage will send you all sorts of useless spam messages that help me debug issues. Don't set this to true unless you know what you are doing.
- research - true/false - If true, ChangeDamage will occasionally print out some notes for me. Please report these notes if you get them. They will be marked "[ChangeDamage] [Research]" and will appear in the console. This is to investigate the possibility of adding critical hit support.
- damages - See "Damages", then see "Projectiles"
- armor - See "Armor Points"
- damages.expressions - Allows you to input an equation for how much damage a critical hit does. Variable 'n' is the amount of damage done by the player, rounded down to the nearest even number. Use the subnodes of "damages.expressions" "strength", "weakness", and "critical" to affect damage output for strength effect, weakness effect, and critical damage, respectively. See "Expressions"
- fall - Allows you to decide fall damage. Only activated when the player falls more than 3 blocks. Variable 'd' is the distance fallen, rounded down to the nearest integer. Variable 'a' is the total armor points of the player. Use node "fall.expression" to specify damage. See "Expressions"
Permissions
The permissions nodes for this plugin are:
- vacuum.changedamage - Gives access to /changedamage
- vacuum.changedamage.damage - Default enabled. Disable to make damage output changes not be affected for this player.
Upcoming features
Color scheme:
- In progress
- Suggested
- Completed
These are features I want to add but have not yet done so:
- Change durability
- Armor color
- Mob effects when wearing certain armors (maybe)
- Automatic updating
- Modify enchantment power
- Change potion power
- Potion effect when attacking
PLEASE make suggestions. If it's something easy, you can be sure to find it in the next update!
Bugs
Color scheme:
- Unresolved
- Resolved but not in the current version
- Resolved
Bugs:
- ClassCastException caused by killing Ender Crystals
- Cannot use non-armor pieces as armor (causes an error when falling)
- NPE in arrow calculation
- Arrow permissions weren't working
- Critical damage didn't work
- When performing a critical hit, damage output was reducing
- The fall damage expression was being read from the wrong node
Download
To download the Bukkit approved version, click the "Download" link on the top right hand side of the page.
To download stable versions click here.
-
View User Profile
-
Send Message
Posted Nov 12, 2012@Q2Lummox
You can use the default option do describe most of your items. You can also use IDs, too, instead of names. The application will accept either.
Unfortunately, I don't have range or wildcard support.
-
View User Profile
-
Send Message
Posted Nov 12, 2012@falsevacuum
But I have to add one by one, all the names of objects / blocks I do not want hurt?.
You can not make a list to disable / enable the damage id or group id?. For example:
# true: no damage ---- false: can damage
id_no_damage:
1: true
2-10: true
11 | 14 | 16: false
To make it easier to decide what ids can hurt, and what not. It would be crazy to add name by name, all objects that do not want to get hurt.
-
View User Profile
-
Send Message
Posted Nov 11, 2012@monkeyma7
Yes, but I'm not sure how to make it backwards compatible with the current stuff.
-
View User Profile
-
Send Message
Posted Nov 11, 2012Would it be possible to set different "groups" of damage values via permissions? I.e. group1 could have iron swords that deal 5 damage, whereas group2's iron sword damage is 1?
-
View User Profile
-
Send Message
Posted Nov 11, 2012@UnitedFactions
Maybe, I'm also not sure how I would do it. I could write my own enchantment calculation functions, but then you can't handle knockback.
Or I could try to override the EnchantmentManager class, but that would be difficult if not impossible.
-
View User Profile
-
Send Message
Posted Nov 11, 2012perhaps you can just add a config like, itemid:enchantname:level = x hearts?
so like 276:sharpness:4 = 2.5
is that a easy way to do it? I don't have that much programmer experience ;)
-
View User Profile
-
Send Message
Posted Nov 11, 2012@UnitedFactions
Not yet. I can't think of an easy way to have users control enchantments. It shouldn't be terribly difficult to modify the source code yourself, assuming you have prior programming experience.
-
View User Profile
-
Send Message
Posted Nov 11, 2012@falsevacuum
So is it possible to change damage done by enchanted diamond swords say, sharpness 4 to be reduced to the damage of sharpness 1 etc.?
Or not yet?
-
View User Profile
-
Send Message
Posted Nov 11, 2012@Q2Lummox
That's exactly what the "default" option is. Basically, the default is called when it's looked everywhere and can't find any other appropriate settings. A default of -1 says "just use the normal damage" a default of 0 says "don't do any damage"
No promises on compatibility with armor, though.
-
View User Profile
-
Send Message
Posted Nov 10, 2012It would be possible to add an option to disable the damage for all items / blocks unless you specify in the settings?.
So damage would only be possible with a sword, and not holding a bed.
I do not like you can do damage to any object, or should only be by hand or with an implement more specific (swords, axes .... what you set in the configuration file ...).
It would be possible?.
Thanks and regards.
-
View User Profile
-
Send Message
Posted Nov 10, 2012@UltrafaceGuy
1.8.1 Now has support for large fireballs! http://dev.bukkit.org/server-mods/changedamage/files/25-change-damage-1-8-1/ (not even sure if you can throw them, but it wasn't that hard to do)
-
View User Profile
-
Send Message
Posted Nov 9, 2012Let's find out then, shall we?
Testing Progress: 100%!
Well, I tested crits, various projectiles, and fall damage, and weapons and armor. Only error I could find was ChangeDamage: Unrecognized projectile: class org.bukkit.craftbukkit.entity.CraftLargeFireball When a target was struck with a fireball. This did not effect gameplay at all.
Will let you know if there are any other issues, but as of now, its fine :D
-
View User Profile
-
Send Message
Posted Nov 9, 2012Updated. It's under the SVN experimental and is pending bukkit approval. http://dev.bukkit.org/server-mods/changedamage/files/24-change-damage-1-8/
I have no clue if it works.
-
View User Profile
-
Send Message
Posted Nov 9, 2012@falsevacuum
thank you i really need this plugin for 1.4.2 >_>
-
View User Profile
-
Send Message
Posted Nov 6, 2012@Luxius96
I found someone who might be able to update it. Otherwise, I'll just do it myself.
-
View User Profile
-
Send Message
Posted Nov 6, 2012please update :(
-
View User Profile
-
Send Message
Posted Oct 31, 2012@falsevacuum
ChangeDamage breaked on bukkit 1.4? noooooooooooooooooo
-
View User Profile
-
Send Message
Posted Oct 30, 2012@UltrafaceGuy
That's a break caused by Bukkit 1.4
Who knows what's broken but doesn't appear broken... I would suggest not running it until I get the fix posted.
I'll try to fix the hooks when I don't have boatloads of work. Might be a week or so?
-
View User Profile
-
Send Message
Posted Oct 30, 2012Speaking of,
I know vacuum isn't maintaining this anymore, but I might as well post it here.
-
View User Profile
-
Send Message
Posted Oct 30, 2012@Luxius96
I agree, but I'm not exactly the best java coder. If I DO ever get good at it, sure, I'll pick it up, but don't get your hopes up D:
I'll continue to test anything asked however.