Aggro Management (Olivia)

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 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.


Masterarbeit Writer

Fallen Angel Olivia

FallenAngelOlivia.png

This is a plugin created by Fallen Angel Olivia.

You can also follow Fallen Angel Olivia on itch.io.

RPG Maker Version

This plugin is made for RPG Maker MV versions 1.6.1 and below. If you update RPG Maker MV past that and this plugin breaks, I am NOT responsible for it.

Terms of Use

You are only allowed to use the plugins made by Atelier Irina if you agree to all of the following:

  1. These plugins may be used in free or commercial games.
  2. 'Fallen Angel Olivia' must be given credit in your games.
  3. You are allowed to edit the code.
  4. Do NOT change the filename, parameters, and information of the plugin.
  5. You are NOT allowed to redistribute these Plugins.
  6. You may NOT take code for your own released Plugins.

Introduction

Aggro is a term used in games to describe the act of getting the attention of an enemy. In battle, this can be because a healer has recovered too much damage, the tank used a skill to generate aggro, or a warrior using their ultimate attack. If an actor's aggro is too high, the enemy will perceive that actor as a threat and must eliminate them quickly.

This plugin adds such a system into your game. You can determine how much aggro certain actions will generate through notetags. Aggro will reset at the start of each battle and gradually fill over time depending on your notetag settings. Notetags can increase the aggro of the action's user or the target.

Optionally, gauges can appear over an actor's head to indicate to the player their current aggro level. If it's a full gauge, they have the highest aggro in the party and are more likely to be attacked. If it's an empty gauge, they have the lowest aggro and are less likely to be attacked.

NOTE: If you are using Yanfly's Battle A.I. Core, Target Core, and/or Selection Control plugins, place this plugin underneath those for the best compatibility.

Example

Here is a scenario of how the Aggro system is used.

1. At the start of battle, everybody's Aggro values are reset and are the same. Enemies will attack all party members at an equal chance.

2. The warrior uses "Incite" which causes his to be targeted more often and drives his Aggro score upwards immensely. This causes him to be attacked more by enemies.

3. As battle progresses and the warrior takes damage, the cleric decides to heal the party and this action causes her Aggro to go up. The enemies see the healing is detrimental to their likelihood of their victory and has declared her to be a threat as much as the warrior.

Plugin Parameters

Target Highest Aggro:

- Always have enemies target highest aggro members?

- If disabled, members with higher aggro have a higher chance of being targeted instead of always being targeted.

Show Aggro Gauge:

- Shows the aggro gauge in battle.

- If on, it will appear over the actor's head.

Gauge Color 1: Gauge Color 2:

- These two plugin parameter settings determine the colors used by the aggro gauge in battle.

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.

---

Skill and Item Notetags:

<Aggro: +100>
<Aggro: -50>
Sets the amount of aggro gained or lost by using this skill/item.
Aggro is later increased by the actor's TGR rate.
Total aggro cannot go below 1 for calculation purposes.
<Target Aggro: +200>
<Target Aggro: -100>
Reduces the target's aggro amount per successful hit of this skill/item.
Aggro is later increased by the actor's TGR rate.
Total aggro cannot go below 1 for calculation purposes.

Actor, Class, Weapon, Armor, State Notetags:

<Aggro Multiplier: 200%>
Multiplies the affected actor's base aggro amount by this percentage.
Aggro is later increased by the actor's TGR rate.

Yanfly's Battle A.I. Core Additions

This plugin adds compatibility with Yanfly's Battle A.I. Core. You can now specify which skills in the AI Priority list to target the targets with the highest TGR or the targets with the lowest TGR by using these two targeting terms to indicate which:

Highest Aggro
- Targets the highest aggro member.
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.
Lowest Aggro
- Targets the lowest aggro member
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.
Aggro >= 500
- Targets members with 500 or more aggro.
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.
Aggro > 400
- Targets members with over 400 aggro.
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.
Aggro === 300
- Targets members with exactly 300 aggro.
- If no such condition is met, a random target is selected.
Aggro !== 350
- Targets members with anything except 350 aggro.
- If no such condition is met, a random target is selected.
Aggro < 200
- Targets members with under 200 aggro.
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.
Aggro <= 100
- Targets members with 100 or less aggro.
- If multiple members match this condition, select a random one.
- If no such condition is met, a random target is selected.

Changelog

  • None