Action Sequence Pack 3 (YEP)

From Yanfly.moe Wiki
Jump to navigation Jump to search


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.

Download

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.

Extension Plugins

The following plugins are Extension Plugins that require this plugin as its Parent Plugin.

Place the following plugins below this plugin located in the Plugin Manager if you plan on using them.

Yanfly Engine Plugins

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

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

Introduction

The Action Sequence Pack 3 plugin is an extension plugin for Yanfly Engine
Plugins' Battle Engine Core. This extension plugin will not work without the
main plugin.

This extension plugin contains the more basic functions used for customized
action sequences on a visual scale. This plugin focuses on camera control
and screen zooming.

Action Sequences

These are action sequences that you can use with this plugin. Action Sequences will require Yanfly's Battle Engine Core to work.

Action Sequences - ala Melody

Battle Engine Core includes Yanfly Engine Melody's Battle Engine system, where each individual aspect of the skill and item effects can be controlled to a degree. These are called Action Sequences, where each command in the action sequence causes the game to perform a distinct individual action.

Each skill and item consists of five different action sequences. They are as follows:

1. Setup Actions
They prepare the active battler before carrying out the bulk of the action

and its individual effects. Usually what you see here are things such as the active battler moving forward a bit, unsheathing their weapon, etc. This step will occur before the active battler expends their skill or item costs.

2. Whole Actions
These actions will affect all of the targets simultaneously. Although this

section does not need to be used, most actions will use this for displaying animations upon all enemies. This step occurs after skill and item costs.

3. Target Actions
This section will affect all of the targets individually. Used primarily

for physical attacks that will deliver more personal forms of damage. Actions that occur here will not affect other targets unless specifically ordered to do so otherwise.

4. Follow Actions
This section will dedicate towards cleanup work after the individual

targeting actions. Here, it'll do things such as removing immortal flags, start up common events, and more.

5. Finish Actions
This section will have the active battler close up the action sequence.

Usually stuff like running waits and holds at the last minute for skills and items, moving back to place, and others.

Now that you know each of the five steps each action sequence goes through, here's the tags you can insert inside of skills and items. Pay attention to each tag name.

1. <setup action>
    action list
    action list
   </setup action>

2. <whole action>
    action list  
    action list  
   </whole action>

3. <target action>
    action list
    action list
   </target action>

4. <follow action>
    action list
    action list
   </follow action>

5. <finish action>
    action list
    action list
   </finish action>

They will do their own respective action sets. The methods to insert for the action list can be found below in the core of the Help Manual.

Furthermore, to prevent overflooding every single one of your database item's noteboxes with action sequence lists, there's a shortcut you can take to copy all of the setup actions, whole actions, target actions, follow actions, and finish actions with just one line.

<action copy: x:y>

Replace x with "item" or "skill" to set the type for the action list code to directly copy. The integer y is then the ID assigned for that particular object type. For example, to copy 45th skill's action sequences, the code would be <action copy: skill:45> for anything that will accept these action codes. If you do use this notetag, it will take priority over any custom that you've placed in the notebox.

Target Typing

You may notice that in some of the actions below will say "refer to target typing" which is this section right here. Here's a quick run down on the various targets you may select.

user This will select the active battler.
target, targets These will select the active targets in question.
actors, existing actors These will select all living actors.
all actors This will select all actors including dead ones.
dead actors This will select only dead actors.
actors not user This will select all living actors except for the user.
actor x This will select the actor in slot x.
character x This will select the specific character with actor ID x.
enemies, existing enemies This will select all living enemies.
all enemies This will select all enemies, even dead.
dead enemies This will select only dead enemies.
enemies not user This will select all enemies except for the user.
enemy x This will select the enemy in slot x.
friends This will select the battler's alive allies.
all friends This will select the all of battler's allies, even dead.
dead friends This will select the battler's dead allies.
friends not user This will select the battler's allies except itself.
friend x This will select the battler's ally in slot x.
opponents This will select the battler's alive opponents.
all opponents This will select the all of the battler's opponents.
dead opponents This will select the battler's dead opponents.
opponent x This will select the battler's opponent in slot x.
all alive Selects all living actors and enemies.
all members Selects all living and dead actors and enemies.
all dead Selects all dead actors and enemies.
all not user This will select all living battlers except user.
focus Selects the active battler and its targets.
not focus Selects everything but the active battler and its targets.
prev target Requires Action Sequence Impact.

During <Target Actions>, this will get the previous target in the targets list.

next target Requires Action Sequence Impact.

During <Target Actions>, this will get the next target in the targets list.

$UnisonMemberX Requires Unison Attack.

Replace X with the Unison Attack participant where X is slot used based on the <Unison Skill: x, y, z> notetag.

$UnisonMembers Requires Unison Attack.

Returns all of the participating Unison Skill members.

Action Sequence List

The following is a list of Action Sequences provided by this plugin.

The following contains a list of the actions you can use inside the five
action sequences. Each action has a unique function and requires certain
formats to operate properly.

=============================================================================
CAMERA CLAMP ON
CAMERA CLAMP OFF
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
By default, the camera clamp is on, which forces the camera to never pan
outside of the battlefield's boundaries. However, in the event you wish to
turn this off, use 'camera clamp off' to shut off the clamp. The clamp,
however, will be turned back on at the end of each 'perform finish' action.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: camera clamp on
               camera clamp off
=============================================================================

=============================================================================
CAMERA FOCUS: target, (location), (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CAMERA FOCUS: target, FRONT BASE, (frames)
CAMERA FOCUS: target, BASE, (frames)
CAMERA FOCUS: target, BACK BASE, (frames)
CAMERA FOCUS: target, FRONT CENTER, (frames)
CAMERA FOCUS: target, CENTER, (frames)
CAMERA FOCUS: target, BACK CENTER, (frames)
CAMERA FOCUS: target, FRONT HEAD, (frames)
CAMERA FOCUS: target, HEAD, (frames)
CAMERA FOCUS: target, BACK HEAD, (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
This will focus on a target(s) (refer to target typing) and a location. If
the location is omitted, the camera will focus on the target(s)'s center.
Note: The camera will not shift past screen boundaries.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: camera focus: user
               camera focus: target, front, 40
               camera focus: enemies, center, 30
=============================================================================

=============================================================================
CAMERA OFFSET: DIRECTION, DISTANCE
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CAMERA OFFSET: LEFT, distance
CAMERA OFFSET: RIGHT, distance
CAMERA OFFSET: UP, distance
CAMERA OFFSET: DOWN, distance
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Offsets the camera a direction by (distance) amount.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: camera offset: left, 200
               camera offset: right, Graphics.boxWidth / 4
               camera offset: up, 300
               camera offset: down, $gameVariables.value(3);
=============================================================================

=============================================================================
CAMERA PAN
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CAMERA PAN: LEFT, distance, (frames)
CAMERA PAN: RIGHT, distance, (frames)
CAMERA PAN: UP, distance, (frames)
CAMERA PAN: DOWN, distance, (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Pans the camera a direction a certain distance in pixels. You can use a
combination of left/right and up/down to perform a diagonal camera pan.
Using 'frames' will allow you to adjust the duration of the camera pan.
Omitting 'frames' will set the camera pan duration to 30 frames.
Note: The camera will not shift past screen boundaries.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: camera pan: left, 200
               camera pan: up, 250
               camera pan: right, 500, 60
               camera pan: down: 300, 60
=============================================================================

=============================================================================
CAMERA SCREEN
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
CAMERA SCREEN: TOP LEFT, (frames)
CAMERA SCREEN: FAR LEFT, (frames)
CAMERA SCREEN: BOTTOM LEFT, (frames)
CAMERA SCREEN: TOP CENTER, (frames)
CAMERA SCREEN: CENTER, (frames)
CAMERA SCREEN: BOTTOM CENTER, (frames)
CAMERA SCREEN: TOP RIGHT, (frames)
CAMERA SCREEN: FAR RIGHT, (frames)
CAMERA SCREEN: BOTTOM RIGHT, (frames)
CAMERA SCREEN: POINT, x, y, (frames)
CAMERA SCREEN: target, FRONT, (frames)
CAMERA SCREEN: target, BASE, (frames)
CAMERA SCREEN: target, BACK, (frames)
CAMERA SCREEN: target, FRONT CENTER, (frames)
CAMERA SCREEN: target, CENTER, (frames)
CAMERA SCREEN: target, BACK CENTER, (frames)
CAMERA SCREEN: target, FRONT TOP, (frames)
CAMERA SCREEN: target, TOP, (frames)
CAMERA SCREEN: target, BACK TOP, (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Moves the camera to a certain part of the screen. If you choose a target,
the camera will lock to that part of the target. Using (frames) will
determine the duration of the time the camera will move over to the target
location. Omitting (frames) will set the camera pan duration to 30 frames.
Note: The camera will not shift past screen boundaries.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: camera screen: top left
               camera screen: far right, 30
               camera screen: point, 400, 300, 60
               camera screen: user, base
               camera screen: targets, base, 60
=============================================================================

=============================================================================
RESET CAMERA: (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Resets the camera location back to default location, which is the center of
the battlefield. Using (frames) will allow you to adjust the duration in
which the camera resets. Omitting 'frames' will set the camera to reset in
30 frames.
Note: The camera will not shift past screen boundaries.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: reset camera
               reset camera: 30
=============================================================================

=============================================================================
RESET ZOOM: (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Resets the camera zoom back to default zoom, which is 100%. Using (frames)
will allow you to adjust the duration in which the zoom resets. Omitting
'frames' will set the zoom to reset in 30 frames.
Note: The camera will not shift past screen boundaries.
Note: Zooming only works with Sideview.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: reset zoom
               reset zoom: 30
=============================================================================

=============================================================================
WAIT FOR CAMERA
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Waits for the camera to finish panning before going on to the next action in
the action sequence.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: wait for camera
=============================================================================

=============================================================================
WAIT FOR ZOOM
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Waits for the zoom to finish changing before going on to the next action in
the action sequence.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: wait for zoom
=============================================================================

=============================================================================
ZOOM: x%, (frames)
ZOOM: x.y, (frames)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Zooms to x% or x.y rate. Using (frames) will allow you to adjust the
duration in which the zooming occurs. Omitting 'frames' will set the zoom
duration to 30 frames.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Usage Example: zoom: 200%
               zoom: 1.5, 45
=============================================================================

Options Core Integration

To integrate options from this plugin into Yanfly's Options Core, use the settings below:

If you are using YEP_OptionsCore.js, you can add a new Option using this
plugin. Here's the following code/parameter settings you can use with it.

---------
Settings:
---------

Name:
\i[302]Battle Camera

Help Description:
If ON, the camera in battle will move around.
If OFF, the camera in battle will be locked in place.

Symbol:
battleCamera

Show/Hide:
show = Imported.YEP_X_ActSeqPack3;

Enable:
enabled = true;

Ext:
ext = 0;

----------
Functions:
----------

Make Option Code:
this.addCommand(name, symbol, enabled, ext);

Draw Option Code:
var rect = this.itemRectForText(index);
var statusWidth = this.statusWidth();
var titleWidth = rect.width - statusWidth;
this.resetTextColor();
this.changePaintOpacity(this.isCommandEnabled(index));
this.drawOptionsName(index);
this.drawOptionsOnOff(index);

Process OK Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, !value);

Cursor Right Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, true);

Cursor Left Code:
var index = this.index();
var symbol = this.commandSymbol(index);
var value = this.getConfigValue(symbol);
this.changeValue(symbol, false);

Default Config Code:
// Empty. Provided by this plugin.

Save Config Code:
// Empty. Provided by this plugin.

Load Config Code:
// Empty. Provided by this plugin.

Tips & Tricks

The following Tips & Tricks effects use this plugin:

Changelog

Version 1.05:
- Compatibility update with YEP_OptionsCore.js.

Version 1.04:
- Updated for RPG Maker MV version 1.5.0.

Version 1.03:
- Restriction on Camera and Zoom action sequences lifted from being Sideview
only. Use them at your own caution.

Version 1.02a:
- Updated the Game_Screen.startZoom() function from beta to newest version.
- Decided to separate the methods as it breaks panning.
- Changed priority of IF action sequences to higher to no longer interfere
other action sequences.

Version 1.01:
- Updated help file to include Character X for target typing.

Version 1.00:
- Finished plugin!