Thief's Revenge (MV Plugin Tips & Tricks)

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.


Thief’s Revenge is a skill from Final Fantasy Record Keeper. It’s a skill that scales the number of hits off its user’s speed and then absorbs a portion of the damage dealt as HP! Using a large combination of plugins, you can pull off this skill in RPG Maker MV, too!

Required Plugins

The following plugin(s) is required to create this Tips & Tricks effect:

For help on how to install plugins, click here.

For help on how to update plugins, click here.

About

This is a Tips & Tricks effect created for RPG Maker MV. Tips & Tricks are not to be confused with plugins. Instead, they are usually customized code created for the sake of producing unique features/effects that do not require an entire plugin to do.

Yanfly Engine Plugins

This Tips & Tricks effect is made possible due to the Yanfly Engine Plugins library.

Click here if you want to help support Team Yanfly on Patreon.

Instructions

Follow video instructions.

You can find the copy/paste code here! Copy and paste this into your Thief’s Revenge skill notebox!

MAKE SURE YOU HAVE VARIABLE 1 FREE FOR USAGE! IF NOT, CHANGE IT WITHIN THE CODE!
// Target Core
// Calculates the total hits when scaled off AGI.

<Custom Target Eval>
// Formula to calculate the number of hits achieved.
var hits = Math.floor(user.agi / 34);
// Set a minimum of 1 hit and a maximum of 5 hits.
hits = hits.clamp(1, 5);
// Create the variable needed to keep track of damage dealt.
this._totalThiefDamage = 0;
// Create the variable needed to keep track of current hits.
this._currentThiefHits = 0;
// Create the variable needed to keep track of total hits.
this._totalThiefHits = hits;
// Create a loop that adds the target for the skill.
while (hits--) {
  // Add the target into the valid targets pool.
  targets.push(target);
}
</Custom Target Eval>

// Selection Control
// If using Selection Control, this will make the skill a melee skill.

<Select Conditions>
Front Row Only
</Select Conditions>

// Skill Core

<After Eval>
// Get the hit results of the target.
var result = target.result();
// Check if the current hit has connected.
if (result.isHit()) {
  // Increase the total damage dealt.
  this._totalThiefDamage += result.hpDamage;
}
// Increase the current hit count.
this._currentThiefHits += 1;
// Check if the current hit count has reached the total hit count.
if (this._currentThiefHits >= this._totalThiefHits) {
  // The rate of how much damage will be healed for the user.
  var rate = 0.30;
  // Calculate the heal value.
  var heal = Math.ceil(this._totalThiefDamage * rate);
  // Set Variable 1 to contain the heal amount.
  $gameVariables.setValue(1, heal);
}
</After Eval>

// Action Sequences

// Moves user to the front of the enemy.
<Whole Action>
move user: targets, front, 20
</Whole Action>

// For each hit, the user will lunge at the enemy.
<Target Action>
action animation: target
move user: target, base, 10
motion attack: user
wait for movement
action effect
jump user: 100, 20
move user: target, front, 20
face user: forward
wait for movement
</Target Action>

// After all the hits are done, the user jumps backwards and then heals.
<Follow Action>
jump user: 300%, 60
move user: return, 60
wait for movement
animation 41: user
wait for animation
se: Play Recovery
hp +variable 1: user, show
</Follow Action>

Happy avenging!