#
# ==== General info ====
#
# * You can add your own handlers in this file but don't forget to
# add they into 'handlers' list
#
# * After editing of this file you need to check server logs to be
# sure that no errors was appeared
#
#
# Show debug info. Possible values: true | false (default = false)
#
# If debug info is 'true' you will get the following information in
# server logs:
#
# Apply adaptive{$X=7.5, $MOB_KILLS=234, $DEATHS=20}
# Apply creeper{$X=11.55}
# CREEPER > PLAYER:Devil (ENTITY_EXPLOSION): 7.50 > 17.33
#
# Apply adaptive{$X=2.0, $MOB_KILLS=238, $DEATHS=25}
# ? > PLAYER:Devil (FALL): 2.00 > 3.0
#
# This option can affect the performance
#
debug: false
#
# List of handlers
# - <handler1>
# ...
# - <handlerN>
#
# All handlers will handle a damage in sequence in which they are
# described in this option
#
handlers:
- adaptive
- creeper
- long-term-fine
- long-term-bonus
#
# ==== Handlers definition ====
# Example:
#
# <handler>:
# sources: ### Possible entity types of damage source, see
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/EntityType.html
# ### By default a damage from all sources will be changed
# ###
# ### Type of source should not be a projectile, see
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/Projectile.html
# - <entity-type1>
# ...
# - <entity-typeN>
#
# excluded-sources: ### Excluded entity types of damage source
# - <excluded-entity-type1>
# ...
# - <excluded-entity-typeN>
#
# targets: ### Possible entity types of damage target, see
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/entity/EntityType.html
# ### By default a damage from all targets will be changed
# - <entity-type1>
# ...
# - <entity-typeN>
#
# excluded-targets: ### Excluded entity types of damage target
# - <excluded-entity-type1>
# ...
# - <excluded-entity-typeN>
#
# causes: ### Possible damage causes, see
#https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/event
# /entity/EntityDamageEvent.DamageCause.html
# ### By default a damage with any causes will be changed
# - <damage-cause1>
# ...
# - <damage-causeN>
#
# excluded-causes: ### Excluded damage causes, see
# - <excluded-damage-cause1>
# ...
# - <excluded-damage-causeN>
#
# formula: <expression> ### Formula of target damage modifiers calculation,
# ### see description below
#
# use-source-statistics: true | false ### Use statistics of damage source
# ### instead of damage target
# ### Default value is 'false'
#
# user-info: ### Format of user-visible information about damage modifiers
# ### Should have one token to handle float value of multiplier
#
# ==== Formula definition ====
#
# 1. You should use JavaScript syntax
# 2. You can use JavaScript Math module functions, see
# http://www.w3schools.com/js/js_math.asp
# 3. Previous damage value will be passed via $X variable
# 4. Additionally you can use Player statistics, but only if 'targets'
# equals to [PLAYER], see
# https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Statistic.html
# Type of statistics should be 'UNTYPED', see
# https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Statistic.Type.html
#
# Examples:
#
# 1. Set a damage to constant:
# formula: 10
#
# 2. Double a damage:
# formula: $X * 2
#
# 3. Increase a damage depending on count of killing mobs:
# formula: $X + $MOB_KILLS * 0.1
#
# Powerful creeper
creeper:
sources:
- CREEPER
targets:
- PLAYER
causes:
- ENTITY_EXPLOSION
formula: $X * 1.5
#
# $MOB_KILLS, $DEATHS > Damage bonus
# 10, 10 > -5.8%
# 10, 100 > -21%
# 10, 1000 > -37%
# 10, 10000 > -49%
# 10, 100000 > -60%
# 100, 10 > 0
# 100, 100 > -16%
# 100, 1000 > -32%
# 100, 10000 > -46%
# 100, 100000 > -57%
# 1000, 10 > +19%
# 1000, 100 > 0
# 1000, 1000 > -20%
# 1000, 10000 > -36%
# 1000, 100000 > -49%
# 10000, 10 > +48%
# 10000, 100 > +25%
# 10000, 1000 > 0
# 10000, 10000 > -20%
# 10000, 100000 > -37%
# 100000, 10 > +86%
# 100000, 100 > +57%
# 100000, 1000 > +26%
# 100000, 10000 > 0
# 100000, 100000 > -20%
#
adaptive:
excluded-sources:
- PLAYER
targets:
- PLAYER
formula: $X * Math.pow((100.0 + $MOB_KILLS) / (100.0 + 10.0 * $DEATHS), 0.1)
user-info: "Adaptive damage: %.3f"
#
# $DEATHS > Damage bonus
#
# 10 > +2.6%
# 100 > +20%
# 1000 > +85%
# 10000 > +323%
# 100000 > +573%
#
long-term-fine:
excluded-sources:
- PLAYER
targets:
- PLAYER
formula: $X * Math.sqrt(Math.sqrt((93.1 + $DEATHS) / 93.1))
user-info: "Long term fine: %.3f"
#
# $MOB_KILLS > Damage bonus
#
# 10 > +0.3%
# 100 > +2.6%
# 1000 > +20%
# 10000 > +85%
# 100000 > +323%
#
long-term-bonus:
sources:
- PLAYER
formula: $X * Math.sqrt(Math.sqrt((931.0 + $MOB_KILLS) / 931.0))
use-source-statistics: true
user-info: "Long term bonus: %.3f"
Comments