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 Battle Event EXMZ - NRP_BattleEventEXMZ.js

Plugin desc : v1.101 Extends the functionality of battle events.

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_BattleEventEXMZ.js

Desc page : http://newrpg.seesaa.net/article/477489099.html

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

File name : NRP_BattleEventEXMZ.js

Help of plugin :

The following enhancements have been made to the battle Event.
 * 1. In "Force Action", consider action abnormalities and MP depletion.
 * 2. The function to omit the staging of skill activation has been implemented.
 *    (Specify <NoStartAction> in note.)
 * 3. The plugin command to operate the subject and target is implemented.
 *
 * The purpose of this plugin is to bring out the true value of battle events.
 * The plugin itself doesn't have much in the way of features.
 * For more information on what you can do in a battle event specifically,
 * please see the details below.
 * http://newrpg.seesaa.net/article/477489099.html
 *
 * [Plugin command]
 * > forceSubject
 * Overrides the subject that does "Force Action".
 * This overrides the subject of the instruction on the editor.
 *
 * > forceTargetFilter
 * The filtered targets are overwritten as "Force Action" targets.
 * This overrides the target of the instruction on the editor.
 * 
 * > forceTargetMost
 * Overrides the targets that does "Force Action".
 * Find the objects with maximum and minimum values by comparison.
 * This overrides the target of the instruction on the editor.
 * 
 * > setConditionSwitch
 * It searches for targets that match the condition
 * and stores the results in a switch.
 * 
 * > superForce
 * true:  "Force Action" is performed regardless of the parameter setting.
 * false: Regardless of the setting of parameters,
 *        the action is judged on "Force Action".
 *
 * [Note Of Skills]
 * The following statements are valid.
 * 
 * <NoStartAction>
 * 
 * Omit the start performance when activating a skill.
 * Allows you to avoid showing the performance
 * when calling a common event with the effect of using a skill.
 * 
 * <NoCommonEventActionEnd:true or false>
 * 
 * Toggles whether or not to adjust the timing of the end-of-action process
 * when calling a common event with the use effect of a skill.
 * The default value can be set in the plugin parameter.
 * 
 * If set to true, it will cause the end of action process
 * to be executed only once at the termination of the common event.
 * This will address the problem that states
 * with a release timing of "at the end of the action"
 * will be released immediately after the common event is activated.
 * 
 * The target condition is when the damage type is "None"
 * and the only effect used is Common Event.
 * Please note that it will not work if any settings are made.
 * 
 * Note that this control is not necessary for CTB.
 * It is already taken into account
 * in the control in NRP_CountTimeBattle.js.
 * 
 * [Terms]
 * There are no restrictions.
 * Modification, redistribution freedom, commercial availability,
 * and rights indication are also optional.
 * The author is not responsible,
 * but will deal with defects to the extent possible.
 * 
 * @------------------------------------------------------------------
 * @ Plugin Commands
 * @------------------------------------------------------------------
 * 
 * @command forceSubject
 * @desc Overrides the subject that does "Force Action".
 * This overrides the subject of the instruction on the editor.
 * 
 * @arg subject
 * @desc Select the user of the skill to be overwritten.
 * @type combo
 * @default subject
 * @option
 * @option subject
 * 
 * @------------------------------------------------------------------
 * 
 * @command forceTargetFilter
 * @desc The filtered targets are overwritten as "Force Action" targets.
 * 
 * @arg targetCondition
 * @desc The conditions under which the skill is targeted.
 * Example1: b.hp < 100, Example2: b.actorId() == 1
 * @type combo
 * @option
 * @option b.hpRate() <= 0.5
 * @option b._actorId == 1
 * @option b._enemyId == 1
 * @option b.isStateAffected(1) #State no
 * @option b.isDead()
 * @option b.index() == targets.length - 1 #Last in line.
 * @option b.hp < a.hp #Lower HP than the subject.
 * 
 * @arg option
 * @type struct<Option>
 * 
 * @------------------------------------------------------------------
 * 
 * @command forceTargetMost
 * @desc Overrides the targets that does "Force Action".
 * Find the objects with maximum and minimum values by comparison.
 * 
 * @arg compareCondition
 * @desc Enter the comparison conditions you want to target.
 * Example: b1.hpRate() < b2.hpRate() #Most HP% loss.
 * @type combo
 * @option b1.hpRate() < b2.hpRate() #Most HP% loss.
 * @option b1.hpRate() > b2.hpRate() #Highest HP%.
 * 
 * @arg option
 * @type struct<Option>
 * 
 * @------------------------------------------------------------------
 * 
 * @command setConditionSwitch
 * @desc It searches for targets that match the condition and stores the results in a switch.
 * 
 * @arg switchNo
 * @desc This is a switch to store the search results.
 * If there is a matching battler, ON, else OFF.
 * @type switch
 * @default 1
 * 
 * @arg targetSide
 * @desc The side that is target to the condition.
 * "b" changes the battler referred to.
 * @type select
 * @default opponents
 * @option opponents
 * @option friends
 * @option all
 * 
 * @arg condition
 * @desc Enter the condition. You can refer to the target side's battler with b and the subject with a.
 * @type combo
 * @option
 * @option b.hpRate() <= 0.5
 * @option b._actorId == 1
 * @option b._enemyId == 1
 * @option b.isStateAffected(1) #State no
 * @option b.isDead()
 * @option b.hp < a.hp #Lower HP than the subject.
 * @option $gameTroop.turnCount() % 3 == 0
 * 
 * @arg includeDead
 * @desc Dead battlers are included in the search.
 * @type boolean
 * 
 * @------------------------------------------------------------------
 * 
 * @command superForce
 * @desc When you do "Force Action", it ignores MP and state.
 * In essence, revert to the original "Force Action" behavior.
 * 
 * @arg forceMode
 * @desc Change whether the action is enforced or not.
 * @type select
 * @default true
 * @option Clear @value
 * @option Force @value true
 * @option Don't Force @value false
 * 
 * @------------------------------------------------------------------
 * 
 * @command randomSkills
 * @desc Set the skill and run it at random.
 * 
 * @arg skills
 * @desc Set the skills to be executed at random.
 * @type skill[]
 * 
 * @------------------------------------------------------------------
 * @ Plugin Parameters
 * @------------------------------------------------------------------
 * 
 * @param forceValid
 * @type boolean
 * @default true
 * @desc "Force Action" will also determine if the MP is running out, etc.
 * The default value is true; the original behavior of MZ is false.
 * 
 * @param actionAtFailure
 * @parent forceValid
 * @type select
 * @option None @value 0
 * @option Normal Attack @value 1
 * @default 0
 * @desc This action is taken when force action fail due to silence or lack of MP.
 * 
 * @param forceValidFlexible
 * @parent forceValid
 * @type boolean
 * @default true
 * @desc Even if forceValid is on, it should have no effect except for execution by event commands.
 * 
 * @param aIsSubject
 * @text "a" to refer to subject.
 * @type boolean
 * @default true
 * @desc Always refer to the subject with "a" on the battle event.
 * This value can be referenced from the script.
 * 
 * @param adjustCommonEventActionEnd
 * @type boolean
 * @default true
 * @desc Adjusts the timing of the end process when a common event is invoked by the effect of a skill.
 * 
 * @param stopForceActionHp0
 * @type boolean
 * @default false
 * @desc If the player is an immortal state and has 0 HP, the force action will be stopped.
 * 
 * @param targetImmortalStates
 * @parent stopForceActionHp0
 * @type state[]
 * @desc Immortal states that stop force action when the battler's HP reaches 0.

スポンサードリンク

-MZ plugins

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