Cover Targets

coverTargets

This script provides a “cover target” effect for your states. When a battler uses a skill that adds a state with a special “cover target effect” to a target, the user will receive the state instead. While this state is active, the user will cover the target if the cover conditions are met. By default, this means that the target has less than 25% of their max HP.

A single battler can cover multiple targets at a time, and can cover both actors and enemies at the same time. For example, if you have a scope that allows you to target all battlers, then your battler can cover for everyone.

When the state is removed, the targets will no longer be covered.

Download

Script: download here

To change the cover condition (ie: target has less than 25% of its max HP), use Cover Conditions

Installation

In the script editor, place this script below Materials and above Main

Usage

To give a state the “cover target” effect, note-tag the state with

<cover target>

A single state can cover multiple targets, and you can have multiple
states with the “cover target” effect to protect different battlers.

You may also like...

11 Responses

  1. waynee95 says:

    Hey!
    I wanna create a block skill in my game similar to the substitute mechanic but the user chooses his target he wants to cover. The only Plugin I found that can do something like this is your script. However, I use RM MV.
    Will you port this script to MV? And if not can I port the script to MV and use it for my game?

  2. rubydragon44 says:

    So… I'm confused on how to use this…
    If someone has the state with the Cover Target notetag, they will be the target for a cover, and someone without the state will not be covered?
    You see, I want to have it so that the user will cover someone and guard, but Cover, you guard for a turn and protect a specific person.
    So you apply the Cover Target skill to them, us a follow up skill to apply Cover to yourself, and then you'll only cover that person?

    Let's say I have Member 1 Member 2 and Member 3, and Member 4
    I want to have it so that Member 2 uses Cover on an ally (or uses the skill Cover Member 1, whatever method that works) and covers Member 1 (meaning slot id 1), and Member 4 does that same thing for Member 3 and guards.

    How would I go about doing this?

    {I would almost like to have it so that you can guard slot 1 even if the existing actor in that slot changes mid-battle, but idk how well that'd be}

    • Hime says:

      When you use a skill with cover target effect, it automatically adds a state to the user that knows who to cover (based on who you chose as the target).

      This script only supports covering specific targets; it doesn't cover by position.

  3. Azaka Cross says:

    I’m reading your script and trying to investigate interaction between user and target, since I discovered that if a user who applies cover targets to a target dies and is revived, they will always cover for the target(s) who they applied this particular state to, UNTIL it is re-applied and removed that way. However, it could just be me being an idiot with the state itself. Other than that, it’s cool

    • Hime says:

      I did not carefully look at what happens when the user dies. It looks like when a battler dies, its states are removed, but not the “usual” way, and so the logic that should run when the state is removed does not actually run. I have made it so that when a user dies, it no longer covers targets.

  4. KaizoVorna says:

    This script seems to give a fair bit of customization to the Cover-mechanic, but it also feels a bit redundant with how Cover works now… May I suggest that this script would allow for Cover-state that resembles Cecil’s Cover-command from FFIV? (IIRC he would take damage for the target regardless of how much HP target has left.) I can imagine this could possibly be used to make bosses that have “bodyguards” that take damage for the boss until defeated.

Leave a Reply to Hime Cancel reply

Your email address will not be published. Required fields are marked *