Actor Auto Battle A.I. (YEP)

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.

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.

Yanfly Engine Plugins

This plugin is a part of the Yanfly Engine Plugins library.


Introduction

This plugin requires YEP_BattleAICore. Make sure this plugin is located
under YEP_BattleAICore in the plugin list.

By default, if an actor has the auto battle trait, it will cycle through
each one of its learned skills (whether or not it has access to the skill
type doesn't matter) and selects the hardest hitting skill of them all. This
setup may work for some auto-battlers but not all of them. What this plugin
does is it incorporates the A.I. Priority system from the YEP Library's
Battle A.I. Core for actor auto-battlers.

If you don't have YEP_BattleAICore yet, please download it from here:
http://yanfly.moe/2015/10/19/yep-16-battle-a-i-core/

Plugin Parameters

There are Plugin Parameters that you may configure for this plugin.

Default AI Level:
- See 'Actor AI Level' in the Notetags section below.

Bypass Requirement:
- This is a list of the skills that bypass that requirement to have learned
the skill in order to use it. This is namely for skills like 'Attack' and/or
'Guard' that aren't normally learned by actors, but are available to them
through the command window.

Curate Skill List:
- Skills used for Auto Battle can only be skills accessible through
available skill types. This is a selectable option because sometimes, skills
that are learned by actors can be used through auto battle despite not
having access to that skill type. An example of this would be an actor that
has learned skills in the Knight class, but upon switching to the Mage class
the actor loses the Knight skill type. Yet, despite that, auto battle would
let the Mage class use skills from the Knight skill type if it's a part of
the setup. Turning this on to curate the skill list will remove the ability
use skills outside of available skill types.

Undecided AI:
- If no skill is determined through the A.I. Priority list, the actor will
use the default Auto Battle AI to determine which skill to use. Otherwise,
the actor perform only a basic attack if the setting is false.

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.

---

The notetags to setup the auto battle A.I. will go into the class noteboxes.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Actor AI Level
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Actor AI levels do not determine how smart they are. Instead, they determine
how strictly they will follow the <AI Priority> lists. An AI Level of 80
means it has an 80% chance of following the prioritized action on the AI
Priority list before moving onto the next one where there will be another
80% chance and so on. If the AI level is lower, the chance is lower, making
the AI to be more random.

Class Notetag:

  <AI Level: x>
  Sets the actor's AI level to x. The lower x, the more random the actor.
  The higher for x, the more strict the actor is about following the AI
  Priority list found in its notebox, too.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Actor AI Priority
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

If a class has an AI Priority list, the actor will go down that list from
top to bottom (giving the actions at the top more priority than the ones at
the bottom) looking for any actions whose conditions are fulfilled. If that
condition is fulfilled, then that action will be the action the actor will
partake in.

To set up a Priority List for the actor, you must place inside the class's
notebox notetags that match the following format:

  <AI Priority>                      <AI Priority>
   condition: SKILL x, target   or    condition: skill name, target
   condition: SKILL x, target         condition: skill name, target
  </AI Priority>                     </AI Priority>

Any number of conditions and skills can be placed in between the two
<AI Priority> tags. You can choose to use skill ID's or the skill names.
However, if you use the skill names, keep in mind that it is not case
sensitive and if any skills in your database have matching names, the skill
with the larger skill ID will be the action used.

Conditions

The conditions to be used for the <AI Priority> notetag are the same as the
ones from the YEP_BattleAICore plugin. Please refer to the YEP_BattleAICore
help file for which conditions can be used with the A.I. setups.

Changelog

Version 1.01:
- Fixed a bug that made curated skill types not work.

Version 1.00:
- Finished Plugin!