Lunatic Pack - Passive Condition Cases (YEP)
VisuStella, Caz Wolf, Fallen Angel Olivia, Atelier Irina, and other affiliated content creators.
Download
System
This is a plugin created for RPG Maker MV.
For help on how to install plugins, click here.
For help on how to update plugins, click here.
Got errors with your RPG Maker MV plugin? Click here.
Required Plugins
The following plugins are required in order to use this plugin.
Place the following plugins above this plugin located in the Plugin Manager.
Yanfly Engine Plugins
This plugin is a part of the Yanfly Engine Plugins library.
Introduction
This plugin requires the following plugins: - Auto Passive States Passive States can be a powerful addition to a game, but if they are always active throughout a battle, they can be a little too powerful. Sometimes, you will want to limit the extent at which your passive states will be active by imposing conditional cases upon them. If all of the passive's conditional cases have been met, then the passive will become active. This plugin adds a multitude of conditional cases for you to be able to use in your game and limit certain passive states from having their effects active at all times. *NOTE*: This plugin is best used with RPG Maker MV version 1.5.0+. You can still use this plugin with a lower version number, but you will have a much harder time altering the plugin parameters without it.
Notetags
RPG Maker MV's editor is unable to allow for custom traits/properties that a game dev may wish to associate with a database object, event, map, etc. Notetags are used to work around such limitations by allowing the game dev to tag certain traits/properties using specific Notetags declared by the related plugin.
Here is a list of Notetag(s) that you may use.
---
Insert the following notetags into a state's notebox to give it a passive condition case. State Notetags: <Passive Condition Cases> condition condition </Passive Condition Cases> - Use the above format for adding conditions to your passive states. Replace the 'condition' text in between the <Passive Condition Cases> and </Passive Condition Cases> notetags with any of the following conditions below to prompt a condition type. You can insert multiple conditions to make a passive state require more conditions to be met before they can be active. =-=-=-= Conditions List =-=-=-= --- Switch On/Off --- Switch x On Switch x Off - Replace 'x' with a number value. This will make a conditional check if an event switch x is on or off. If the conditional check is met, then the conditional passive will become active if other conditions are met. SUGGESTED BY: Yanfly --- Numerical Comparison Check --- x >= y x <= y x > y x < y x != y x = y - This will require the condition to make a simple comparison check between x and y. These number comparisons will be '>=', '<=', '>', '<', '!=', and '=' (aka greater than or equal to, less than or equal to, greater than, less than, not equal to, and equal to respectively). Replace 'x' and 'y' with a number, a percentage, 'HP', 'MP', 'TP', 'HP%', 'MP%', 'TP%', 'MAXHP', 'MAXMP', 'ATK', 'DEF', 'MAT', 'MDF', 'AGI', 'LUK', or 'VARIABLE X' for comparison purposes. If a percentage is being checked, it will be checked as if the % has been dropped off. For example, '50%' will be '50'. SUGGESTED BY: Yanfly --- Has/Not State --- Has State x - Replace 'x' with the ID of the state you wish to check. If the user is affected by that state, then this conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Goldschuss Not State x - Replace 'x' with the ID of the state you wish to check. If the user is not affected by that state, then this conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Goldschuss --- Has/Not Buff/Debuff--- Has x Buff - Replace 'x' with 'MAXHP', 'MAXMP', 'ATK', 'DEF', 'MAT', 'MDF', 'AGI', or 'LUK'. This will make a check to see if the user is currently buffed in that parameter. If the user is, the the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Has x Debuff - Replace 'x' with 'MAXHP', 'MAXMP', 'ATK', 'DEF', 'MAT', 'MDF', 'AGI', or 'LUK'. This will make a check to see if the user is currently debuffed in that parameter. If the user is, the the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Not x Buff - Replace 'x' with 'MAXHP', 'MAXMP', 'ATK', 'DEF', 'MAT', 'MDF', 'AGI', or 'LUK'. This will make a check to see if the user is currently not buffed in that parameter. If the user is, the the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Not x Debuff - Replace 'x' with 'MAXHP', 'MAXMP', 'ATK', 'DEF', 'MAT', 'MDF', 'AGI', or 'LUK'. This will make a check to see if the user is currently not debuffed in that parameter. If the user is, the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly --- Total Buffs/Debuffs --- Total Buffs >= x Total Buffs <= x Total Buffs > x Total Buffs < x Total Buffs != x Total Buffs = x - Replace 'x' with a number value you wish to check relative to the number of buffs the user is currently affected by. If the turn check passes, the conditional passive will become active if other conditions are met. SUGGESTED BY: Alejandro SQ Total Debuffs >= x Total Debuffs <= x Total Debuffs > x Total Debuffs < x Total Debuffs != x Total Debuffs = x - Replace 'x' with a number value you wish to check relative to the number of debuffs the user is currently affected by. If the turn check passes, the conditional passive will become active if other conditions are met. SUGGESTED BY: Alejandro SQ --- Alive/Dead --- Alive Actors/Enemies/Allies/Foes >= x Alive Actors/Enemies/Allies/Foes <= x Alive Actors/Enemies/Allies/Foes > x Alive Actors/Enemies/Allies/Foes < x Alive Actors/Enemies/Allies/Foes != x Alive Actors/Enemies/Allies/Foes = x - Replace 'x' with a number value you wish to check relative to the number of alive actors in the party, enemies in the troop, user's allies, or the user's foes. Use only one of the four above keywords ('actors', 'enemies', 'allies', or 'foes'). If the member count check passes, the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Dead Actors/Enemies/Allies/Foes >= x Dead Actors/Enemies/Allies/Foes <= x Dead Actors/Enemies/Allies/Foes > x Dead Actors/Enemies/Allies/Foes < x Dead Actors/Enemies/Allies/Foes != x Dead Actors/Enemies/Allies/Foes = x - Replace 'x' with a number value you wish to check relative to the number of dead actors in the party, enemies in the troop, user's allies, or the user's foes. Use only one of the four above keywords ('actors', 'enemies', 'allies', or 'foes'). If the member count check passes, the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly --- Turn Count --- Battle Turns >= x Battle Turns <= x Battle Turns > x Battle Turns < x Battle Turns != x Battle Turns = x - Replace 'x' with a number value you wish to check relative to the number of turns that passed in battle. If the turn check passes, the conditional passive will become active as long as all other conditions are met. SUGGESTED BY: Yanfly --- Has Weapon/Armor --- Has Weapon x - The user must be an actor or else this condition returns false. Replace 'x' with the weapon ID you wish to check if the user has. If the user has it equipped, the condition will pass and will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Not Weapon x - The user must be an actor or else this condition returns false. Replace 'x' with the weapon ID you wish to check if the user should not have. If the user doesn't have it equipped, the condition will pass and will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Has Armor x - The user must be an actor or else this condition returns false. Replace 'x' with the armor ID you wish to check if the user has. If the user has it equipped, the condition will pass and will become active as long as all other conditions are met. SUGGESTED BY: Yanfly Not Armor x - The user must be an actor or else this condition returns false. Replace 'x' with the armor ID you wish to check if the user should not have. If the user doesn't have it equipped, the condition will pass and will become active as long as all other conditions are met. SUGGESTED BY: Yanfly
Lunatic Mode
For advanced users who have an understanding of JavaScript, you can use the following features added by the plugin to further enhance what you can do with your game project.
For experienced users that know JavaScript and have RPG Maker MV 1.5.0+, you can add new notetag effects that can be used by the plugin or alter the effects of currently existing notetag effects from the plugin parameters entry: Effect Code. It should look something like this: --- // ------------- // Switch On/Off // ------------- if (data.match(/SWITCH[ ](\d+)[ ]ON/i)) { var switchId = parseInt(RegExp.$1); condition = $gameSwitches.value(switchId); } else if (data.match(/SWITCH[ ](\d+)[ ]OFF/i)) { var switchId = parseInt(RegExp.$1); condition = !$gameSwitches.value(switchId); ... // ------------------------------- // Add new effects above this line // ------------------------------- } else { skip = true; } --- Here's what each of the variables used in this code bit refer to: -------------------- --------------------------------------------------- Variable: Refers to: -------------------- --------------------------------------------------- condition Current condition setting. If it returns true, then the current condition case passes. Otherwise, no. The passive state needs all its condition cases to to become an active passive state. a Returns the action user user Returns the action user subject Returns the action user s[x] Return switch x (true/false) v[x] Return variable x's current value skip Default: false. If true, returns the previous rate --- If you need to revert the Effect Code back to its original state, delete the plugin from your plugin manager list and then add it again. The code will be back to default.
Changelog
Version 1.01: - Bypass the isDevToolsOpen() error when bad code is inserted into a script call or custom Lunatic Mode code segment due to updating to MV 1.6.1. Version 1.00: - Finished Plugin!