An open library of RPG Maker MZ plugins, powered by the community.

PGMZ - The Community-Driven Plugin Library for RPG Maker MZ

MZ plugins

NRP Damage Effect - NRP_DamageEffect.js

Plugin desc : v1.061 Change the effect of damage handling.

License :
・Copyright: Retained
・Commercial Use: Allowed
・Modification: Allowed
・Redistribution: Allowed
・Details: See Download Page / In-plugin documentation

Author : Takeshi Sunagawa (http://newrpg.seesaa.net/)

Website : https://github.com/NewRPGProject/MZMV_Plugin/blob/main/NRP_DamageEffect.js

Desc page : https://newrpg.seesaa.net/article/475586753.html

Download Page : https://raw.githubusercontent.com/NewRPGProject/MZMV_Plugin/main/NRP_DamageEffect.js

File name : NRP_DamageEffect.js

Help of plugin :

Change the effect of damage handling.
 * 
 * -------------------------------------------------------------------
 * [What you can do]
 * -------------------------------------------------------------------
 * 1. enable/disable enemy & actor blinking effects.
 * 2. Play an animation during critical or weak.
 * 3. Change color and size of damage number during critical or weak.
 * 4. change the position of the damage popup.
 * 
 * Effective from ver1.02, a staging for resistance has been added.
 * Initially, "Resist1" is assumed to be halved
 * and "Resist2" is assumed to be disabled.
 * 
 * -------------------------------------------------------------------
 * [Additional Weak Conditions]
 * -------------------------------------------------------------------
 * In addition to the elements, it is possible to determine weaknesses.
 * 
 * ◆Note of Skill
 * Fill in the following in the note for the skill.
 * Weakness direction will be performed when the conditions are met.
 * 
 * <WeakCondition: [Condition]>
 * 
 * e.g.: if the state is number 100, it is judged as a weakness.
 * <WeakCondition:b.isStateAffected(100)>
 * 
 * However, it does not affect the damage formula of the skill.
 * 
 * ◆Damage Formula
 * When using <WeakCondition>,
 * the following functions can be incorporated into the formula.
 * 
 * $weakRate(a, b, [Rate])
 * 
 * e.g.: Damage doubled when <WeakCondition> conditions are met.
 * (a.atk * 4 - b.def * 2) * $weakRate(a, b, 2)
 * 
 * ◆Cooperation with NRP_TraitsEX.js
 * If you work with NRP_TraitsEX.js,
 * you can also set up weak effects for weapons and other items.
 * https://newrpg.seesaa.net/article/488957733.html
 * 
 * -------------------------------------------------------------------
 * [Terms]
 * -------------------------------------------------------------------
 * There are no restrictions.
 * Modification, redistribution freedom, commercial availability,
 * and rights indication are also optional.
 * The author is not responsible,
 * but we will respond to defects as far as possible.
 * 
 * @-----------------------------------------------------
 * @ Plugin Parameters
 * @-----------------------------------------------------
 * 
 * @param <Blink>
 * 
 * @param enemyBlink
 * @parent <Blink>
 * @type boolean
 * @default true
 * @desc Blink the enemy on damage.
 * The default value is true.
 * 
 * @param actorBlink
 * @parent <Blink>
 * @type boolean
 * @default false
 * @desc Blink the actor on damage.
 * The default value is false.
 * 
 * @param blinkDuration
 * @parent <Blink>
 * @type number
 * @default 20
 * @desc Blinking time. The default value is 20.
 * 
 * @param <Critical>
 * 
 * @param criticalAnimation
 * @parent <Critical>
 * @type animation
 * @desc When critical, this animation plays back to the target.
 * Formula is allowed (Text). (e.g.:target.isEnemy() ? 1 : 2)
 * 
 * @param criticalBlinkOff
 * @parent <Critical>
 * @type boolean
 * @default false
 * @desc When critical, the target will not blink.
 * If you want to leave the effect to animation only.
 * 
 * @param criticalDamageColor
 * @parent <Critical>
 * @type string
 * @desc The color of the damage value on a critical hit.
 * e.g.:[255,255,255,255] (Red, Green, Blue, Strength)
 * 
 * @param criticalDamageScale
 * @parent <Critical>
 * @type number @decimals 2
 * @desc The size of the damage value on a critical hit.
 * Please set it by a multiplier based on 1.00.
 * 
 * @param <Weak>
 * 
 * @param weakAnimation
 * @parent <Weak>
 * @type animation
 * @desc When weak, this animation plays back to the target.
 * Formula is allowed (Text). (e.g.:target.isEnemy() ? 1 : 2)
 * 
 * @param weakBlinkOff
 * @parent <Weak>
 * @type boolean
 * @default false
 * @desc When weak, the target will not blink.
 * If you want to leave the effect to animation only.
 * 
 * @param weakCondition
 * @parent <Weak>
 * @type string
 * @default 150 <= action.calcElementRate(target) * 100
 * @desc The condition for staging weaknesses.
 * The initial value must be 150% effective or higher.
 * 
 * @param weakDamageColor
 * @parent <Weak>
 * @type string
 * @desc The color of the damage value at the weak.
 * e.g.:[255,255,255,255] (Red, Green, Blue, Strength)
 * 
 * @param weakDamageScale
 * @parent <Weak>
 * @type number @decimals 2
 * @desc The size of the damage value at the weak.
 * Please set it by a multiplier based on 1.00.
 * 
 * @param <Resist1>
 * 
 * @param resistAnimation1
 * @parent <Resist1>
 * @type animation
 * @desc When resist, this animation plays back to the target.
 * Formula is allowed (Text). (e.g.:target.isEnemy() ? 1 : 2)
 * 
 * @param resistBlinkOff1
 * @parent <Resist1>
 * @type boolean
 * @default false
 * @desc When resist, the target will not blink.
 * If you want to leave the effect to animation only.
 * 
 * @param resistCondition1
 * @parent <Resist1>
 * @type string
 * @default 50 >= action.calcElementRate(target) * 100
 * @desc The condition for staging resistance.
 * The default value is less than 50% validity.
 * 
 * @param resistDamageColor1
 * @parent <Resist1>
 * @type string
 * @desc The color of the damage value at the time of resist.
 * e.g.:[255,255,255,255] (Red, Green, Blue, Strength)
 * 
 * @param resistDamageScale1
 * @parent <Resist1>
 * @type number @decimals 2
 * @desc The size of the damage value when resist.
 * Please set it by a multiplier based on 1.00.
 * 
 * @param <Resist2>
 * 
 * @param resistAnimation2
 * @parent <Resist2>
 * @type animation
 * @desc When resist, this animation plays back to the target.
 * Formula is allowed (Text). (e.g.:target.isEnemy() ? 1 : 2)
 * 
 * @param resistBlinkOff2
 * @parent <Resist2>
 * @type boolean
 * @default false
 * @desc When resist, the target will not blink.
 * If you want to leave the effect to animation only.
 * 
 * @param resistCondition2
 * @parent <Resist2>
 * @type string
 * @default 0 == action.calcElementRate(target) * 100
 * @desc The condition for staging resistance.
 * The initial value is conditional on 0% validity.
 * 
 * @param resistDamageColor2
 * @parent <Resist2>
 * @type string
 * @desc The color of the damage value at the time of resist.
 * e.g.:[255,255,255,255] (Red, Green, Blue, Strength)
 * 
 * @param resistDamageScale2
 * @parent <Resist2>
 * @type number @decimals 2
 * @desc The size of the damage value when resist.
 * Please set it by a multiplier based on 1.00.
 * 
 * @param <Critical & Weak>
 * 
 * @param effectPrioritity
 * @parent <Critical & Weak>
 * @type select
 * @option Critical Priority @value critical
 * @option Weak Priority @value weak
 * @option Both @value both
 * @default critical
 * @desc Priority for critical/weakness effects.
 * Which is the priority if it occurs at the same time?
 * 
 * @param <Damage Position>
 * 
 * @param enemyDamageOffsetX
 * @parent <Damage Position>
 * @type string
 * @desc Adjustment to the X for displaying enemy damage popups.
 * You can use a formula. The default value is 0.
 * 
 * @param enemyDamageOffsetY
 * @parent <Damage Position>
 * @type string
 * @desc Adjustment to the Y for displaying enemy damage popups.
 * You can use a formula. The default value is -8.
 * 
 * @param actorDamageOffsetX
 * @parent <Damage Position>
 * @type string
 * @desc Adjustment to the X for displaying actor damage popups.
 * You can use a formula. The default value is -32.
 * 
 * @param actorDamageOffsetY
 * @parent <Damage Position>
 * @type string
 * @desc Adjustment to the Y for displaying actor damage popups.
 * You can use a formula. The default value is 0.
 * 
 * @param damageDistanceX
 * @parent <Damage Position>
 * @type number @min -999 @max 999
 * @desc The distance between damages (X coordinate).
 * Default: 8
 * 
 * @param damageDistanceY
 * @parent <Damage Position>
 * @type number @min -999 @max 999
 * @desc The distance between damages (Y coordinate).
 * Default: 16

スポンサードリンク

-MZ plugins

Copyright© PGMZ - The Community-Driven Plugin Library for RPG Maker MZ , 2026 All Rights Reserved.