Auto Passive States (YEP)

From Yanfly.moe Wiki
Jump to navigation Jump to search

<

Welcome to the wiki! This is where you can find resources from Yanfly.moe, Ækashics.moe,
VisuStella, Caz Wolf, Fallen Angel Olivia, Atelier Irina, and other affiliated content creators.



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.

Download

Extension Plugins

The following plugins are Extension Plugins that require this plugin as its Parent Plugin.

Place the following plugins below this plugin located in the Plugin Manager if you plan on using them.

Yanfly Engine Plugins

This plugin is a part of the Yanfly Engine Plugins library.


Introduction

Passive states are states that are automatically active. You can think of
them as an extension of traits but with more flexibility. They will always
be there as long as the actor or enemy has auto passive state notetags.

Notetags

NotetagsMV.png

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.

---

For those who would like to allocate passive states to your battlers, use
the notetags below:

Actor, Class, Skills, Weapon, Armor, Enemy Notetags:
  <Passive State: x>
  <Passive State: x, x, x>
  This will allow the actor or enemy to have state x as a passive state.
  If placed inside a weapon or armor notebox, the user will have that
  passive state.

  <Passive State: x to y>
  This will add the states x through y (in a sequence) for the actor or
  enemy to have as a passive state. If placed inside a weapon or armor
  notebox, the user will have that passive state.

For those who don't want their passive states to always be on, you can use
the following notetags to introduce conditions for your passive states. All
conditions must be fulfilled in order for the passive state to appear.

State Notetags:
  <Passive Condition: HP Above x%>
  <Passive Condition: HP Below x%>
  <Passive Condition: MP Above x%>
  <Passive Condition: MP Below x%>
  If the user's HP or MP is above/below x% of the MaxHP or MaxMP, this
  condition will be met for the passive state to appear.

  <Passive Condition: Stat Above x>
  <Passive Condition: Stat Below x>
  Replace 'stat' with 'HP', 'MP', 'TP', 'MAXHP', 'MAXMP', 'ATK', 'DEF',
  'MAT', 'MDF', 'AGI', 'LUK'. If the above stat is above/below x, then the
  condition is met for the passive state to appear.

  <Passive Condition: Switch x ON>
  <Passive Condition: Switch x OFF>
  If switch x is either ON/OFF, then the condition is met for the passive
  state to appear.

  <Passive Condition: Variable x Above y>
  <Passive Condition: Variable x Below y>
  Replace x with the variable you wish to check to see if it's above/below
  y, then the condition is met for the passive state to appear.

Lunatic Mode

JavaScript.png

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.

Conditional Passives
For those who understand a bit of JavaScript and would like for their
passive states to appear under specific conditions, you can use this notetag
to accomplish conditional factors.

State Notetags:
  <Custom Passive Condition>
  if (user.hp / user.mhp <= 0.25) {
    condition = true;
  } else {
    condition = false;
  }
  </Custom Passive Condition>
  This enables you to input conditions to be met in order for the passive
  state to appear. If the 'condition' variable returns true, the passive
  state will appear. If the 'condition' returns false, it won't appear. If
  condition is not defined, it will return true and the passive state will
  appear on the battler.
  * Note: All non-custom passive conditions must be met before this one can
  be fulfilled and allow the custom condition to appear.
  * Note: If you decide to use a condition that requires the actor to have a
  particular state, it cannot be a passive state to prevent infinite loops.

Tips & Tricks

The following Tips & Tricks effects use this plugin:

Changelog

Version 1.17:
- Optimization update. There should be less lag spikes if there are more
passive conditions present on a battler.

Version 1.16:
- 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.15:
- Bug fixed that made global passives not apply to actors.

Version 1.14:
- Updated for RPG Maker MV version 1.5.0.
- Added parameters: Actor Passives List, Enemy Passives List, and
  Global Passives List

Version 1.13:
- Lunatic Mode fail safes added.

Version 1.12:
- Implemented <Custom Passive Condition> to now affect passive state ID's
added by Equip Battle Skills.

Version 1.11:
- Added 'Global Passives' that encompass both actors and enemies.

Version 1.10:
- Added compatibility functionality for Equip Battle Skills to add the
equipped passive states during battle test.

Version 1.09:
- Added 'Actor Passives' and 'Enemy Passives' plugin parameters. This will
cause all actors and enemies respectively to be affected by the listed
states as passives.

Version 1.08:
- Fixed conditional checks to make sure all states are being checked
properly without conflict with other conditional states.

Version 1.07:
- Updated for RPG Maker MV version 1.1.0.

Version 1.06:
- Added a mass member refresh whenever $gamePlayer is refreshed.

Version 1.05a:
- Added Lunatic Mode - <Custom Passive Condition> notetag for states.
- Fixed a bug that would cause infinite loops.

Version 1.04:
- Added a lot of passive condition notetags for states.
--- <Passive Condition: HP/MP Above/Below x%>
--- <Passive Condition: Stat Above/Below x>
--- <Passive Condition: Switch x ON/OFF>
--- <Passive Condition: Variable x Above/Below y>

Version 1.03:
- Added refreshing whenever a new skill is learned to update passives.

Version 1.02:
- Optimized passive state calculations to reduce lag.

Version 1.01:
- Fixed a bug with having multiple passive states of the same ID.

Version 1.00:
- Finished plugin!