YEP.74 – Target Core

Yanfly Engine Plugins is a plugin library made for RPG Maker MV, a wonderful piece of software to help you make that role playing game of your dreams. You can find out more about RPG Maker MV here.

You can grab the plugin here:
English Dropbox
English Mirror

The Target Core plugin is made to expand upon the existing target scopes provided by RPG Maker MV. This plugin enables you to use more target scopes, with a larger variety of ways to select actors and enemies with bonus ways to select targets combined with the Row Formation plugin.


Introduction


While this plugin works independent of YEP_BattleEngineCore.js, if you want to utilize extra effects, place this plugin beneath YEP_BattleEngineCore.js in the Plugin Manager list.

The Target Core plugin is made to expand upon the existing target scopes provided by RPG Maker MV. This plugin enables you to use more target scopes, with a larger variety of ways to select actors and enemies with bonus ways to select targets combined with the Row Formation plugin.


Notetags


If you would like to utilize custom target scopes for your skills and items, you can use these notetags:

Skill and Item Notetags:

<Repeat: x>
This determines the number of times an action is repeatedly used on each target. This can go beyond the default editor’s limit of 9.

<Target: Everybody>
This targets all alive opponent and friendly members with the user being the very last target.

<Target: x Random Any>
This adds x random alive opponents and/or allies.

<Target: Target All Foes>
This targets a single foe and then adds all alive opponent members.

<Target: Target x Random Foes>
This targets a single foe and then adds x random alive opponent members.

<Target: x Random Foes>
This adds x random alive opponent members. This can go beyond the editor’s default limit of 4 randomf oes.

<Target: All Allies But User>
This will target all friendly alive members except for the user.

<Target: Target All Allies>
This will target a single ally and then adds all alive friendly members.

<Target: Target x Random Allies>
This will target a single ally and then adds x random alive allies.

<Target: x Random Allies>
This adds x random alive allied members.

<Target: Everybody param Multiple Of x>
Replace ‘param’ with ‘level’, ‘maxhp’, ‘maxmp’, ‘atk’, ‘def’, ‘mat’, ‘mdf’, ‘agi’, ‘luk’, ‘hp’, ‘mp’, or ‘tp’. This will make the skill or item indiscriminately target any living battler on the battlefield whose parameter value is a multiple of x.
NOTE: If you are using ‘level’, make sure you have YEP_EnemyLevels.js.

<Target: Allies param Multiple Of x>
Replace ‘param’ with ‘level’, ‘maxhp’, ‘maxmp’, ‘atk’, ‘def’, ‘mat’, ‘mdf’, ‘agi’, ‘luk’, ‘hp’, ‘mp’, or ‘tp’. This will make the skill or item target any living allied party member on the battlefield whose parameter value is a multiple of x.
NOTE: If you are using ‘level’, make sure you have YEP_EnemyLevels.js.

<Target: Foes param Multiple Of x>
Replace ‘param’ with ‘level’, ‘maxhp’, ‘maxmp’, ‘atk’, ‘def’, ‘mat’, ‘mdf’, ‘agi’, ‘luk’, ‘hp’, ‘mp’, or ‘tp’. This will make the skill or item target any living enemy battler on the battlefield whose parameter value is a multiple of x.
NOTE: If you are using ‘level’, make sure you have YEP_EnemyLevels.js.

— YEP_RowFormation.js and YEP_BattleEngineCore.js Required —

<Target: Enemy Row>
This will target the enemy row equal to that of the currently selected target enemy. The entire row will be selected as a whole.

<Target: Enemy Row x>
This will target specifically the enemy row x for the enemy unit. The entire row will be selected as a whole.

<Target: Front Enemy Row>
This will target the front-most enemy row with alive members. If there is a row without any alive members, this will target the next row with an alive member.

<Target: Back Enemy Row>
This will target the back-most enemy row with alive members. If there is a row without any alive members, this will target the next row with an alive member.

<Target: Ally Row>
This will target the enemy row equal to that of the currently selected target enemy. The entire row will be selected as a whole.

<Target: Ally Row x>
This will target specifically the allied row x for the allied unit. The entire row will be selected as a whole.

<Target: Front Ally Row>
This will target the front-most ally row with alive members. If there is a row without any alive members, this will target the next row with an alive member.

<Target: Back Ally Row>
This will target the back-most ally row with alive members. If there is a row without any alive members, this will target the next row with an alive member.


Lunatic Mode – Custom Target Help Text


For users that are proficient with JavaScript, these notetags can be used to provide custom help window text if you are also the Battle Engine Core.

Skill and Item Notetags:

<Custom Target Text>
text = $gameActors.actor(1).name();
text += ‘ and ‘ + $gameActors.actor(2).name();
</Custom Target Text>
The ‘text’ variable is the text that will appear in the help window. Any changes made to it will be what is visibly displayed.


Lunatic Mode – Custom Target Eval


For users that are proficient with JavaScript, these notetags can be used to make custom target selections. For the targeting aspect, this will refer to the skill/item’s current scope and the targets made here will be made independent of the scope with the exception of the target, where if a target is selected, it will become the ‘target’ value.

<Custom Target Eval>
for (var i = 0; i < foes.aliveMembers().length; ++i) {
var member = foes.aliveMembers()[i];
if (member.level % 3 === 0) targets.push(member);
}
</Custom Target Eval>
The ‘targets’ variable is an array that determines which are the targets to be used during the selection process. Push the desired targets into the ‘targets’ array.


Happy RPG Making!


 

 

 

 

 

Happy RPG Making!


These plugins and Tips & Tricks ideas are made possible thanks to our creative patrons on Patreon! The majority of our Tips & Tricks ideas are placed within the Patreon-exclusive Sample Project for quick and easy access! If you'd like to make a Tips & Tricks suggestion, Yanfly's Patreon-based Suggestion Box a visit here:


If you have any bugs to report, visit the following link:


If you have any questions about Action Sequences, visit the following link:



Thank you!