Skill Cooldowns VisuStella MZ

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.



Download

System

This is a plugin created for RPG Maker MZ.

InstallPluginsMz.png

UpdatePlugins.png

Troubleshooting.jpg

Click here for help on how to install plugins and an explanation on the Tier Hierarchy System.

Click here to learn how to update plugins.

Click here for how to troubleshoot plugins if you get an error.


Masterarbeit Writer


SkillCooldownsCD.png

SkillCooldownsWU.png

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.


VisuStella MZ

This plugin is a part of the VisuStella MZ Plugin Library.

Click here if you want to help support VisuStella on Patreon.

Introduction

Skill Cooldowns are a mechanic added by the game to prevent repeated skill usage (or as some gamers call it, skill spamming). Upon usage in battle, a skill with a cooldown will become unselectable for a duration of time set by either notetags and/or Plugin Commands. This duration would have to pass in order for the skill to become usable once again.

Skill Warmups are another addition by this plugin. Skills with warmups will start the battle unusable until a certain duration has passed. This can help prevent strong skills from being used from the very start of battle.

Features include all (but not limited to) the following:

  • Add cooldowns and warmups to skills.
  • Control the way they're displayed in game through the Plugin Parameters.
  • Create trait object effects that alter the finalized values of cooldowns and warmups applied to skills.
  • Create action effects that alter the existing durations of cooldowns and warmups applied to skills.
  • Create cooldowns for skills that are linked to other skills, skill types, and/or affect all skills globally.
  • Plugin Commands that let you alter cooldowns and warmups as you like.

Requirements

This plugin is made for RPG Maker MZ. This will not work in other iterations of RPG Maker.

Required Plugin List

- Skills and States Core VisuStella MZ

This plugin requires the above listed plugins to be installed inside your game's Plugin Manager list in order to work. You cannot start your game with this plugin enabled without the listed plugins.


Tier 3

This plugin is a Tier 3 plugin. Place it under other plugins of lower tier value on your Plugin Manager list (ie: 0, 1, 2, 3, 4, 5).

This is to ensure that your plugins will have the best compatibility with the rest of the VisuStella MZ Plugin library.


New Mechanics: Cooldowns and Warmups

This section will explain the key points behind cooldowns and warmups.

---

Cooldowns

SkillCooldownsCD.png

  • At the start and end of battle, any and all cooldowns are cleared.
  • Cooldowns are applied upon usage only during battle.
  • Upon usage, skills can affect the cooldowns of an entire skill type or all of a unit's skills at once.

---

Warmups

SkillCooldownsWU.png

  • Upon the start of battle, Warmups will be applied to affected skills.
  • Upon the end of battle, any and all warmups are cleared.
  • If the unit in battle has an advantageous start (ie. preemptive strike), then the warmup duration can be reduced. This value can be changed in the plugin parameters.

---

Both Cooldowns and Warmups

  • While a skill is on CD/WU, it cannot be used.
  • CD/WU are updated once per turn for each unit.
  • CD/WU cannot be applied to Attack and Guard skills.
  • CD/WU cannot be applied to skills with the <Bypass CD/WU> notetag.
  • CD/WU can be affected by notetag traits found in various database objects.
  • CD/WU can be altered by skills and items with notetag effects.
  • CD/WU have a maximum duration that can be set in the Plugin Parameters.

---

Notetags

RPG Maker MZ'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.


The following are notetags that have been added through this plugin. These notetags will not work with your game if this plugin is OFF or not present.

Skill-Only Notetags

SkillCooldownsCD.png

The following notetags are used for skills and are related to setting the primary uses of Cooldowns and Warmups.

---

<Bypass Cooldowns>
<Bypass Warmups>

- Used for: Skill Notetags
- Lets the skill bypass cooldowns and/or warmups.

---

<Cooldown: x>

- Used for: Skill Notetags
- The skill will gain a cooldown upon usage.
- Replace 'x' with the number of turns to set the cooldown to.

---

<Skill id Cooldown: x>
<Skill name Cooldown: x>

- Used for: Skill Notetags
- The skill will cause listed skills to gain a cooldown upon usage.
- Replace 'x' with the number of turns to set the cooldown to.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Stype id Cooldown: x>
<Stype name Cooldown: x>

- Used for: Skill Notetags
- The skill will cause all skills with the skill type to gain a cooldown
  upon usage.
- Replace 'x' with the number of turns to set the cooldown to.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Global Cooldown: x>

- Used for: Skill Notetags
- The skill will cause all skills to gain a cooldown upon usage.
- Replace 'x' with the number of turns to set the cooldown to.

---

SkillCooldownsWU.png

<Warmup: x>

- Used for: Skill Notetags
- The skill will gain a warmup upon the start of battle.
- Replace 'x' with the number of turns to set the warmup to.

---

JavaScript Notetags: Skill-Only

The following are notetags made for users with JavaScript knowledge to give skills dynamic cooldown or warmup durations.

---

SkillCooldownsCD.png

<JS Cooldown>
 code
 code
 turns = code
</JS Cooldown>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code used to determine the base cooldown
  for this skill.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.
- The 'turns' variable refers to the finalized cooldown value.

---

<JS On Cooldown Update>
 code
 code
 code
</JS On Cooldown Update>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code to perform various actions whenever
  the skill's cooldown updates.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.
- The 'turns' variable refers to the finalized cooldown value.

---

<JS On Cooldown Ready>
 code
 code
 code
</JS On Cooldown Ready>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code to perform various actions whenever
  the skill's cooldown hits 0 and becomes ready.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.

---

SkillCooldownsWU.png

<JS Warmup>
 code
 code
 turns = code
</JS Warmup>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code used to determine the base warmup
  for this skill.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.
- The 'turns' variable refers to the finalized warmup value.

---

<JS On Warmup Update>
 code
 code
 code
</JS On Warmup Update>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code to perform various actions whenever
  the skill's warmup updates.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.
- The 'turns' variable refers to the finalized warmup value.

---

<JS On Warmup Ready>
 code
 code
 code
</JS On Warmup Ready>

- Used for: Skill Notetags
- Replace 'code' with JavaScript code to perform various actions whenever
  the skill's warmup hits 0 and becomes ready.
- The 'user' variable refers to the user about to perform the skill.
- The 'skill' variable refers to the skill being used.

---

Cooldown/Warmup Notetag Traits

These Notetag Traits help modify the finalized value of a cooldown/warmup. The final cooldown/warmup duration is calculated by the following formula:

(base + plus) * rate + flat

The base value is the amount calculated through the <Cooldown: x> and <Warmup: x> notetags found in the section above.

---

SkillCooldownsCD.png

<Skill id Cooldown Plus: +x>
<Skill id Cooldown Plus: -x>

<Skill name Cooldown Plus: +x>
<Skill name Cooldown Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards this specific skill.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Skill id Cooldown Rate: x%>
<Skill id Cooldown Rate: x.x>

<Skill name Cooldown Rate: x%>
<Skill name Cooldown Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards this specific skill.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Skill id Cooldown Flat: +x>
<Skill id Cooldown Flat: -x>

<Skill name Cooldown Flat: +x>
<Skill name Cooldown Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards this specific skill.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Stype id Cooldown Plus: +x>
<Stype id Cooldown Plus: -x>

<Stype name Cooldown Plus: +x>
<Stype name Cooldown Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards skills with this skill type.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Stype id Cooldown Rate: x%>
<Stype id Cooldown Rate: x.x>

<Stype name Cooldown Rate: x%>
<Stype name Cooldown Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards skills with this skill type.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Stype id Cooldown Flat: +x>
<Stype id Cooldown Flat: -x>

<Stype name Cooldown Flat: +x>
<Stype name Cooldown Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards skills with this skill type.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Global Cooldown Plus: +x>
<Global Cooldown Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards all skills.
- Replace 'x' with the numeric value to change duration by.

---

<Global Cooldown Rate: x%>
<Global Cooldown Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards all skills.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.

---

<Global Cooldown Flat: +x>
<Global Cooldown Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific cooldown changes towards all skills.
- Replace 'x' with the numeric value to change duration by.

---

SkillCooldownsWU.png

<Skill id Warmup Plus: +x>
<Skill id Warmup Plus: -x>

<Skill name Warmup Plus: +x>
<Skill name Warmup Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards this specific skill.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Skill id Warmup Rate: x%>
<Skill id Warmup Rate: x.x>

<Skill name Warmup Rate: x%>
<Skill name Warmup Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards this specific skill.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Skill id Warmup Flat: +x>
<Skill id Warmup Flat: -x>

<Skill name Warmup Flat: +x>
<Skill name Warmup Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards this specific skill.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<Stype id Warmup Plus: +x>
<Stype id Warmup Plus: -x>

<Stype name Warmup Plus: +x>
<Stype name Warmup Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards skills with this skill type.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Stype id Warmup Rate: x%>
<Stype id Warmup Rate: x.x>

<Stype name Warmup Rate: x%>
<Stype name Warmup Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards skills with this skill type.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Stype id Warmup Flat: +x>
<Stype id Warmup Flat: -x>

<Stype name Warmup Flat: +x>
<Stype name Warmup Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards skills with this skill type.
- Replace 'x' with the numeric value to change duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<Global Warmup Plus: +x>
<Global Warmup Plus: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards all skills.
- Replace 'x' with the numeric value to change duration by.

---

<Global Warmup Rate: x%>
<Global Warmup Rate: x.x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards all skills.
- Replace 'x' with the percentile value to change duration by.
- Replace 'x.x' with the float value to change duration by.

---

<Global Warmup Flat: +x>
<Global Warmup Flat: -x>

- Used for: Actor, Class, Item, Weapon, Armor, Enemy, State Notetags
- Affects specific warmup changes towards all skills.
- Replace 'x' with the numeric value to change duration by.

---

Cooldown/Warmup Notetag Actions

The following notetags are actively altering effects that target cooldowns and/or warmups. Cooldown effects may be applied at any moment through these while warmup effects will only affect skills on warmup currently.

---

SkillCooldownsCD.png

<Clear User Cooldowns>
<Clear Target Cooldowns>

- Used for: Skill, Item Notetags
- Clears all cooldowns for the user/target.

---

SkillCooldownsWU.png

<Clear User Warmups>
<Clear Target Warmups>

- Used for: Skill, Item Notetags
- Clears all warmups for the user/target.

---

SkillCooldownsCD.png

<User Skill id Cooldown: +x>
<User Skill id Cooldown: -x>

<User Skill name Cooldown: +x>
<User Skill name Cooldown: -x>

<Target Skill id Cooldown: +x>
<Target Skill id Cooldown: -x>

<Target Skill name Cooldown: +x>
<Target Skill name Cooldown: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's cooldown duration for this specific skill.
- Replace 'x' with the amount to change the duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.

---

<User Stype id Cooldown: +x>
<User Stype id Cooldown: -x>

<User Stype name Cooldown: +x>
<User Stype name Cooldown: -x>

<Target Stype id Cooldown: +x>
<Target Stype id Cooldown: -x>

<Target Stype name Cooldown: +x>
<Target Stype name Cooldown: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's cooldown duration for all skills with this type.
- Replace 'x' with the amount to change the duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.

---

<User Global Cooldown: +x>
<User Global Cooldown: -x>

<Target Global Cooldown: +x>
<Target Global Cooldown: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's cooldown duration for all skills.
- Replace 'x' with the amount to change the duration by.

---

SkillCooldownsWU.png

<User Skill id Warmup: +x>
<User Skill id Warmup: -x>

<User Skill name Warmup: +x>
<User Skill name Warmup: -x>

<Target Skill id Warmup: +x>
<Target Skill id Warmup: -x>

<Target Skill name Warmup: +x>
<Target Skill name Warmup: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's warmup duration for this specific skill.
- Replace 'x' with the amount to change the duration by.
- Replace 'id' with the ID of the skill found in Database => Skills.
- Replace 'name' with the name of the skill found in Database => Skills.
- NOTE: Warmup changes only apply to skills that are still in warmup.

---

<User Stype id Warmup: +x>
<User Stype id Warmup: -x>

<User Stype name Warmup: +x>
<User Stype name Warmup: -x>

<Target Stype id Warmup: +x>
<Target Stype id Warmup: -x>

<Target Stype name Warmup: +x>
<Target Stype name Warmup: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's warmup duration for all skills with this type.
- Replace 'x' with the amount to change the duration by.
- Replace 'id' with the ID of the skill type found in Database => Types.
- Replace 'name' with the name of the skill type found in Database => Types.
- NOTE: Warmup changes only apply to skills that are still in warmup.

---

<User Global Warmup: +x>
<User Global Warmup: -x>

<Target Global Warmup: +x>
<Target Global Warmup: -x>

- Used for: Skill, Item Notetags
- Alters the user/target's warmup duration for all skills.
- Replace 'x' with the amount to change the duration by.
- NOTE: Warmup changes only apply to skills that are still in warmup.

---


Script Calls

The following are Script Calls that can be used with this plugin. These are made for JavaScript proficient users. We are not responsible if you use them incorrectly or for unintended usage.

---

Actor-Related Script Calls

---

$actorGetSkillCooldown(actorID, skillID)

- Gets the target actor's cooldown turns for a specific skill.
- Replace 'actorID' with a number representing the ID of the target actor.
- Replace 'skillID' with a number representing the ID of the target skill.
- This will return a number value.

  Example:

  $actorGetSkillCooldown(1, 172)
  $actorGetSkillCooldown(7, 52)

---

$actorSetSkillCooldown(actorID, skillID, turns)

- Sets the target actor's cooldown turns for a specific skill to a value.
- Replace 'actorID' with a number representing the ID of the target actor.
- Replace 'skillID' with a number representing the ID of the target skill.
- Replace 'turns' with a number representing the number of turns to set the
  target skill's cooldown to.

  Example:

  $actorSetSkillCooldown(1, 172, 5)
  $actorSetSkillCooldown(7, 52, 10)

---

$actorGetSkillWarmup(actorID, skillID)

- Gets the target actor's warmup turns for a specific skill.
- Replace 'actorID' with a number representing the ID of the target actor.
- Replace 'skillID' with a number representing the ID of the target skill.
- This will return a number value.

  Example:

  $actorGetSkillWarmup(1, 172)
  $actorGetSkillWarmup(7, 52)

---

$actorSetSkillWarmup(actorID, skillID, turns)

- Sets the target actor's warmup turns for a specific skill to a value.
- Replace 'actorID' with a number representing the ID of the target actor.
- Replace 'skillID' with a number representing the ID of the target skill.
- Replace 'turns' warmup a number representing the number of turns to set
  the target skill's warmup to.

  Example:

  $actorSetSkillWarmup(1, 172, 5)
  $actorSetSkillWarmup(7, 52, 10)

---

Enemy-Related Script Calls

---

$enemyGetSkillCooldown(enemyIndex, skillID)

- Gets the target enemy's cooldown turns for a specific skill.
- Replace 'enemyIndex' with a number representing the index position of the
  target enemy within its troop. Index values start at 0 and go up to 7.
- Replace 'skillID' with a number representing the ID of the target skill.
- This will return a number value.

  Example:

  $enemyGetSkillCooldown(0, 172)
  $enemyGetSkillCooldown(7, 52)

---

$enemySetSkillCooldown(enemyIndex, skillID, turns)

- Sets the target enemy's cooldown turns for a specific skill to a value.
- Replace 'enemyIndex' with a number representing the index position of the
  target enemy within its troop. Index values start at 0 and go up to 7.
- Replace 'skillID' with a number representing the ID of the target skill.
- Replace 'turns' with a number representing the number of turns to set the
  target skill's cooldown to.

  Example:

  $enemySetSkillCooldown(0, 172, 5)
  $enemySetSkillCooldown(7, 52, 10)

---

$enemyGetSkillWarmup(enemyIndex, skillID)

- Gets the target enemy's warmup turns for a specific skill.
- Replace 'enemyIndex' with a number representing the index position of the
  target enemy within its troop. Index values start at 0 and go up to 7.
- Replace 'skillID' with a number representing the ID of the target skill.
- This will return a number value.

  Example:

  $enemyGetSkillWarmup(0, 172)
  $enemyGetSkillWarmup(7, 52)

---

$enemySetSkillWarmup(enemyIndex, skillID, turns)

- Sets the target enemy's warmup turns for a specific skill to a value.
- Replace 'enemyIndex' with a number representing the index position of the
  target enemy within its troop. Index values start at 0 and go up to 7.
- Replace 'skillID' with a number representing the ID of the target skill.
- Replace 'turns' warmup a number representing the number of turns to set
  the target skill's warmup to.

  Example:

  $enemySetSkillWarmup(0, 172, 5)
  $enemySetSkillWarmup(7, 52, 10)

---


Plugin Commands

PluginCommandsMZ.png

Plugin Commands are event commands that are used to call upon functions added by a plugin that aren't inherently a part of RPG Maker MZ.

Here is a list of Plugin Command(s) that you may use:

---


The following are Plugin Commands that come with this plugin. They can be accessed through the Plugin Command event command.

---

Actor Plugin Commands

---

SkillCooldownsCD.png

SkillCooldownsCommand1.png

Actor: Skill Cooldown
- Change cooldowns for a specific skill(s).

  Step 1: Actor ID(s):
  - Select which Actor Target ID(s) to affect.

  Step 2: Skill ID(s):
  - Select which Skill ID(s) to affect.

  Step 3: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 4: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

SkillCooldownsCommand2.png

Actor: SType Cooldown
- Change cooldowns for all skills of a skill type(s).

  Step 1: Actor ID(s):
  - Select which Actor Target ID(s) to affect.

  Step 2: Skill Type ID(s):
  - Select which Skill Type ID(s) to affect.

  Step 3: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 4: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

SkillCooldownsCommand3.png

Actor: Global Cooldown
- Change cooldowns for all skills for target(s).

  Step 1: Actor ID(s):
  - Select which Actor Target ID(s) to affect.

  Step 2: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 3: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

Enemy Plugin Commands

---

SkillCooldownsCommand4.png

Enemy: Skill Cooldown
- Change cooldowns for a specific skill(s).

  Step 1: Enemy Index(es):
  - Select which Enemy Index(es) to affect.

  Step 2: Skill ID(s):
  - Select which Skill ID(s) to affect.

  Step 3: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 4: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

SkillCooldownsCommand5.png

Enemy: SType Cooldown
- Change cooldowns for all skills of a skill type(s).

  Step 1: Enemy Index(es):
  - Select which Enemy Index(es) to affect.

  Step 2: Skill Type ID(s):
  - Select which Skill Type ID(s) to affect.

  Step 3: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 4: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

SkillCooldownsCommand6.png

Enemy: Global Cooldown
- Change cooldowns for all skills for target(s).

  Step 1: Enemy Index(es):
  - Select which Enemy Index(es) to affect.

  Step 2: Operation:
  - Set the operation used. =, +, -, *, /, %

  Step 3: Value
  - Select the modifying value.
  - You may use JavaScript code.

---

Plugin Parameters

Cooldown Settings

SkillCooldownsCD.png

SkillCooldownsParam1.png

These are the general settings pertaining to cooldowns in-game.

---

Settings

 Icon:
 - Icon used for Skill Cooldowns.
 - Use 0 for no icon.
 Font Color:
 - Text Color used to display Skill Cooldowns.
 - For a hex color, use #rrggbb with VisuMZ_1_MessageCore
 Font Size:
 - Font size used to display Skill Cooldowns.

---

Window Display

 Show Cooldowns?:
 - Display Skill Cooldowns?
 Text Format:
 - Text format for displaying Skill Cooldowns.
 - %1 - Turns, %2 - Icon

---

Mechanics

 Max Cooldown:
 - Maximum turns that cooldowns can be.
 JS: On Cooldown Update:
 - Code ran when a skill's cooldown updates.
 JS: On Cooldown Ready:
 - Code ran when a skill's cooldown reaches 0.

---

Warmup Settings

SkillCooldownsWU.png

SkillCooldownsParam2.png

These are the general settings pertaining to warmups in-game.

---

Settings

 Icon:
 - Icon used for Skill Warmups.
 - Use 0 for no icon.
 Font Color:
 - Text Color used to display Skill Warmups.
 - For a hex color, use #rrggbb with VisuMZ_1_MessageCore
 Font Size:
 - Font size used to display Skill Warmups.

---

Window Display

 Show Warmups?:
 - Display Skill Warmups?
 Text Format:
 - Text format for displaying Skill Warmups.
 - %1 - Turns, %2 - Icon

---

Mechanics

 Preemptive Bonus:
 - How many turns should be dropped off Warmups on a Preemptive attack?
 Max Warmup:
 - Maximum turns that warmups can be.
 JS: On Warmup Update:
 - Code ran when a skill's warmup updates.
 JS: On Warmup Ready:
 - Code ran when a skill's warmup reaches 0.

---


Terms of Use

1. These plugins may be used in free or commercial games provided that they have been acquired through legitimate means at VisuStella.com and/or any other official approved VisuStella sources. Exceptions and special circumstances that may prohibit usage will be listed on VisuStella.com.

2. All of the listed coders found in the Credits section of this plugin must be given credit in your games or credited as a collective under the name: "VisuStella".

3. You may edit the source code to suit your needs, so long as you do not claim the source code belongs to you. VisuStella also does not take responsibility for the plugin if any changes have been made to the plugin's code, nor does VisuStella take responsibility for user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow custom JavaScript code.

4. You may NOT redistribute these plugins nor take code from this plugin to use as your own. These plugins and their code are only to be downloaded from VisuStella.com and other official/approved VisuStella sources. A list of official/approved sources can also be found on VisuStella.com.

5. VisuStella is not responsible for problems found in your game due to unintended usage, incompatibility problems with plugins outside of the VisuStella MZ library, plugin versions that aren't up to date, nor responsible for the proper working of compatibility patches made by any third parties. VisuStella is not responsible for errors caused by any user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow JavaScript code.

6. If a compatibility patch needs to be made through a third party that is unaffiliated with VisuStella that involves using code from the VisuStella MZ library, contact must be made with a member from VisuStella and have it approved. The patch would be placed on VisuStella.com as a free download to the public. Such patches cannot be sold for monetary gain, including commissions, crowdfunding, and/or donations.

7. If this VisuStella MZ plugin is a paid product, all project team members must purchase their own individual copies of the paid product if they are to use it. Usage includes working on related game mechanics, managing related code, and/or using related Plugin Commands and features. Redistribution of the plugin and/or its code to other members of the team is NOT allowed unless they own the plugin itself as that conflicts with Article 4.

8. Any extensions and/or addendums made to this plugin's Terms of Use can be found on VisuStella.com and must be followed.

Terms of Use: Japanese


『VisuStella MZ』利用規約

1. これらのプラグインは、VisuStella.comおよび/または公式に承認されたVisuStellaのソースから合法的な手段で入手したものである限り、フリーゲームや商用ゲームに使用することができます。例外的に使用が禁止される場合については、VisuStella.comの記載をご確認ください。

2. 本プラグインの「クレジット」部分に記載されているすべてのコーダーの名前は、ゲーム内にクレジット表記を行うか、もしくは「VisuStella」という名前の下にまとめて表記する必要があります。

3. ソースコードを自分のものだと主張しない限りは、必要に応じて編集することが可能です。ただしプラグインのコードに変更が加えられた場合、VisuStellaはそのプラグインに対して一切の責任を負いません。高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードについても、VisuStellaは一切の責任を負いません。

4. これらのプラグインやプラグイン内のコードを、「自分のもの」として再配布したり使用したりすることはできません。これらのプラグインとそのコードは、VisuStella.comおよび、その他の公式/承認済みVisuStellaソースからのみダウンロードすることができます。公式/承認済みのソースのリストは、VisuStella.comでご確認いただけます。

5. VisuStellaは、意図しない使用方法による問題、VisuStella MZライブラリ以外のプラグインとの非互換性の問題、プラグインのバージョンが最新でないことによる問題、第三者による互換性パッチが適切に動作していないことなどが原因でゲーム内で発生した問題については、一切の責任を負いません。VisuStellaは、高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードに起因するエラーについても、一切の責任を負いません。

6. VisuStella MZライブラリのコードを使用した互換性パッチをVisuStellaとは関係のない第三者を通じて作成する必要がある場合は、まずVisuStellaのメンバーと連絡を取り、承認を得る必要があります。パッチはVisuStella.comに公開され、誰でも無料でダウンロードすることができるようになります。このようなパッチを、制作発注やクラウドファンディングの対象にしたり、寄付などの金銭的な利益を得るために販売することはできません。

7. このVisuStella MZプラグインが商用製品である場合、プロジェクトチームのすべてのメンバーは、それを使用するため、それぞれ製品を購入しなければなりません。使用方法には、関連するゲームメカニクスの作業、関連するコードの管理、および/または関連するプラグインコマンドや機能の使用、が含まれます。プラグインそのものやそのコードをチームの他のメンバーに再配布することは第4項に抵触するため、そのメンバーがプラグインそのものを所有していない限りは許可されません。

8. このプラグインの利用規約の追加項目や補足については、VisuStella.comに掲載されていますので、それを参照し従ってください。

Credits

If you are using this plugin, credit the following people in your game:

Team VisuStella

Changelog

Version 1.06: February 15, 2024

  • Bug Fixes!
    • Fixed a bug where Battle System - OTB causes consistency issues with warmup turns. Fixed by Olivia.


Version 1.05: December 14, 2023

  • Bug Fixes!
    • Fixed a bug where the warmup turns do not properly reflect for certain types of battle systems. Fixed by Arisu.
  • Documentation Update!
    • Help file updated for new features.
  • New Features!
    • New script calls added by Arisu:
      • $actorGetSkillCooldown
      • $actorSetSkillCooldown
      • $actorGetSkillWarmup
      • $actorSetSkillWarmup
      • $enemyGetSkillCooldown
      • $enemySetSkillCooldown
      • $enemyGetSkillWarmup
      • $enemySetSkillWarmup
        • Please refer to the help file on how to use these script calls.


Version 1.04: February 16, 2023

  • Compatibility Update!
    • Added compatibility functionality for future plugins.
    • Added compatibility for Chain Battles. Cooldowns will be carried across chained battles.


Version 1.03: June 4, 2021

  • Bug Fixes!
    • <JS Cooldowns> should now be working properly.


Version 1.02: November 8, 2020

  • Feature Update!
    • Cooldown updating has been changed from the start of an action to the start of a new turn processing for battlers to ensure accuracy. Update by Arisu.


Version 1.01: October 18, 2020

  • Bug Fixes!
    • Global and SType Cooldown modifiers should not cause crashes with specific numbers. Fix made by Yanfly.


Version 1.00: September 9, 2020

  • Finished Plugin!

See Also


End of File