Battle System - OTB VisuStella MZ

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

Click here for help on how to install plugins and an explanation on the Tier Hierarchy System.


UpdatePlugins.png

Click here to learn how to update plugins.


Troubleshooting.jpg

Click here for how to troubleshoot plugins if you get an error.



BattleSysOTB Ani.gif

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.


VisuStella MZ

This plugin is a part of the VisuStella MZ Plugin Library.


Support VisuStella

Click here if you want to help support VisuStella on Patreon.


Introduction

BattleSysOTB Preview.png

This plugin changes the RPG Maker MZ battle system to "Order Turn Battle", a turn-based battle system where actions are executed immediately and the orders for both the current and next turn are not only visible, but also malleable. New mechanics are introduced where the player can manipulate the turn order of an action's user or action's target in various ways they want.

The two Turn Orders are displayed at the top of the top of the screen to give the player a clear understanding of who's turn it will be when it becomes time to act, making it easier and viable for the player to formulate strategies and adapt to the situation in battle.

  • NOTE* To use this battle system, you will need the updated version of

VisuStella's Core Engine. Go into its Plugin Parameters and change the "Battle System" plugin parameter to "otb".

Features include all (but not limited to) the following:

  • Utilizes the balanced AGI nature of the Default Turn Battle system.
  • Allows for actions to execute immediately upon selection.
  • Two Turn Order Displays appear at the top of the screen, giving the player an idea of who's turn it will be and when, for both the current turn and the next turn.
  • Skills and Items can have an "Instant Use" effect, which allows them to perform an action immediately without using up a turn.
  • Skills and Items can manipulate the turn order of the action's user or the action's target(s). This can apply to either the current turn or the next turn, depending on the notetags and/or action effects used.
  • The Turn Order Display will give a preview on how turn orders will change upon specific skills and/or items being used.

Requirements

This plugin is made for RPG Maker MZ. This will not work in other iterations of RPG Maker.

Required Plugin List

This plugin requires the above listed plugins to be installed inside your game's Plugin Manager list in order to work. You cannot start your game with this plugin enabled without the listed plugins.


Tier 2

This plugin is a Tier 2 plugin. Place it under other plugins of lower tier value on your Plugin Manager list (ie: 0, 1, 2, 3, 4, 5).

This is to ensure that your plugins will have the best compatibility with the rest of the VisuStella MZ Plugin library.


Major Changes

This plugin adds some new hard-coded features to RPG Maker MZ's functions. The following is a list of them.

---

BattleSysOTB TurnOrderDisplay.png

Turn Order Displays

The Two Turn Order Displays will capture the battle's current and next turn orders determined by the BattleManager. This feature does not overwrite any functions, but the Turn Order Displays may or may not conflict with any existing HUD elements that are already positioned on the screen. If so, you can choose to offset the Turn Order Display or move it to a different part of the screen through the plugin parameters.

---

Agility

Agility behaves slightly different from normal when it comes to the Order Turn Battle system. Aside from the first turn in battle, agility will always calculate the turn order for the "Next Turn" when conducted. This means that any changes to agility values will not have any effect on the next turn's already established turn order.

However, this can be remedied by utilizing the notetags provided by this plugin to alter the Next Turn orders for specific targets. In fact, for skill and item "effects" that add AGI Buffs and/or Debuffs, the target's turn position on the Turn Order Display will be manipulated in accordance. This auto-conversion feature can be disabled in the Plugin Parameters.

---

Action Speed

BattleSysOTB TurnOrderChange.png

Because the Order Turn Battle system already calculates agility speeds before selecting an action to perform, the effects of the action speed will not work the same way it did with the default battle system. Instead, the Action Speed will be sent through a formula to determine its effect on the following turn, either pushing the user ahead in next turn's turn order (with a positive speed value) or back (with a negative speed value).

This option can have its formula altered or straight up disabled in the Plugin Parameters.

Infinity Speed and Clamping

Since Action Speeds are decided in such a way, enemies that will survive a stun state past two turns will have "Infinity" speed on the recovery turn, allowing them to act first relative to the rest of the battle participants in order to balance out the turns they've lost.

Enemies with "Infinity" speed cannot be overtaken through turn order manipulation while they are on the "Next Turn" order. If anything, battlers who shift their turn order faster will be just trailing behind them, thus the "clamping" effect. However if this occurs during the "Current Turn" order, all is fair game and any battler can overtake them. Plan out your battle system effects carefully with these rules in mind.

If you do not like the idea of Infinity Speed and/or Clamping, you can turn them off in the Plugin Parameters.

This effect does not affect stun states that last only one turn. The effect will only occur with stun states that last 2 turns or more.

---

Instant Use

Skills and Items can have an "Instant Use" property which allows them to be used immediately without consuming a turn. This can be used for actions that otherwise do not warrant a whole turn. These can be used for minor buffs, debuffs, toggles, etc.

---

VisuStella MZ Compatibility

While this plugin is compatible with the majority of the VisuStella MZ plugin library, it is not compatible with specific plugins or specific features. This section will highlight the main plugins/features that will not be compatible with this plugin or put focus on how the make certain features compatible.

---

Party System VisuStella MZ

In battle, the player cannot change entire parties at once from the Party Command Window. The feature will be unaccessible while Order Turn Battle is in play. However, the player can still change party members through the Actor Command Window by having actors replace other actors. Party changing is also available through battle events, Common Events, and script calls.

---

Notetags

RPG Maker MZ'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 following are notetags that have been added through this plugin. These notetags will not work with your game if this plugin is OFF or not present.

---

General OTB-Related Notetags

These notetags are general purpose notetags that have became available through this plugin.

---

<OTB Help>
 description
 description
</OTB Help>

- Used for: Skill, Item Notetags
- If your game happens to support the ability to change battle systems, this
  notetag lets you change how the skill/item's help description text will
  look under OTB.
- This is primarily used if the skill behaves differently in OTB versus any
  other battle system.
- Replace 'description' with help text that's only displayed if the game's
  battle system is set to OTB.

---

OTB Turn Order Display-Related Notetags

BattleSysOTB TurnOrderDisplay.png

These notetags affect the OTB Turn Order Display

---

<OTB Turn Order Icon: x>

- Used for: Actor, Enemy Notetags
- Changes the slot graphic used for the battler to a specific icon.
- Replace 'x' with the icon index to be used.

---

<OTB Turn Order Face: filename, index>

- Used for: Actor, Enemy Notetags
- Changes the slot graphic used for the enemy to a specific face.
- Replace 'filename' with the filename of the image.
  - Do not include the file extension.
- Replace 'index' with the index of the face. Index values start at 0.
- Example: <OTB Turn Order Face: Monster, 1>

---

Instant Use-Related Notetags

BattleSysOTB Preview.png

---

<OTB Instant>
<OTB Instant Use>
<OTB Instant Cast>

- Used for: Skill, Item Notetags
- Allows the skill/item to be used immediately without consuming a turn.

---

Turn Order Manipulation-Related Notetags

BattleSysOTB TurnOrderChange.png

---

<OTB User Current Turn: +x>
<OTB User Next Turn: +x>
<OTB User Follow Turn: +x>

<OTB User Current Turn: -x>
<OTB User Next Turn: -x>
<OTB User Follow Turn: -x>

- Used for: Skill, Item Notetags
- Changes the user's position in the turn order for the current turn, next
  turn, or whichever turn is following.
- If using the "Follow" variant, if the user has actions left for the
  current turn, it will affect the current turn. If not, it affects the
  next turn instead.
- Replace 'x' with a number representing the number of slots to change.
  - Negative numbers move the user closer to the front.
  - Positive numbers move the user towards the back.
- This effect only occurs once per skill/item use and at the start of the
  action when initializing the skill/item.

---

<OTB Target Current Turn: +x>
<OTB Target Next Turn: +x>
<OTB Target Follow Turn: +x>

<OTB Target Current Turn: -x>
<OTB Target Next Turn: -x>
<OTB Target Follow Turn: -x>

- Used for: Skill, Item Notetags
- Changes the target's position in the turn order for the current turn, next
  turn, or whichever turn is following.
- If using the "Follow" variant, if the target has actions left for the
  current turn, it will affect the current turn. If not, it affects the
  next turn instead.
- Replace 'x' with a number representing the number of slots to change.
  - Negative numbers move the target closer to the front.
  - Positive numbers move the target towards the back.
- This effect will occur as many times as there are successfully connected
  hits for each target, meaning a target can have its turn order shifted
  multiple times.
- These are best used with single target skills/items as multi-target skills
  may shift multiple targets back and forth with each other if they are
  adjacent to one another.

---

Plugin Commands

Plugin Commands are event commands that are used to call upon functions added by a plugin that aren't inherently a part of RPG Maker MZ.

Here is a list of Plugin Command(s) that you may use:

---


The following are Plugin Commands that come with this plugin. They can be accessed through the Plugin Command event command.

---

Actor Plugin Commands

BattleSysOTB TurnOrderDisplay.png

---

BattleSysOTB Command1.png

Actor: Change OTB Turn Order Icon
- Changes the icons used for the specific actor(s) on the OTB Turn Order.

  Actor ID(s):
  - Select which Actor ID(s) to affect.

  Icon:
  - Changes the graphic to this icon.

---

BattleSysOTB Command2.png

Actor: Change OTB Turn Order Face
- Changes the faces used for the specific actor(s) on the OTB Turn Order.

  Actor ID(s):
  - Select which Actor ID(s) to affect.

  Face Name:
  - This is the filename for the target face graphic.

  Face Index:
  - This is the index for the target face graphic.

---

BattleSysOTB Command3.png

Actor: Clear OTB Turn Order Graphic
- Clears the OTB Turn Order graphics for the actor(s).
- The settings will revert to the Plugin Parameter settings.

  Actor ID(s):
  - Select which Actor ID(s) to affect.

---

Enemy Plugin Commands

BattleSysOTB TurnOrderDisplay.png

---

BattleSysOTB Command4.png

Enemy: Change OTB Turn Order Icon
- Changes the icons used for the specific enemy(ies) on the OTB Turn Order.

  Enemy Index(es):
  - Select which enemy index(es) to affect.

  Icon:
  - Changes the graphic to this icon.

---

BattleSysOTB Command5.png

Enemy: Change OTB Turn Order Face
- Changes the faces used for the specific enemy(ies) on the OTB Turn Order.

  Enemy Index(es):
  - Select which enemy index(es) to affect.

  Face Name:
  - This is the filename for the target face graphic.

  Face Index:
  - This is the index for the target face graphic.

---

BattleSysOTB Command6.png

Enemy: Clear OTB Turn Order Graphic
- Clears the OTB Turn Order graphics for the enemy(ies).
- The settings will revert to the Plugin Parameter settings.

  Enemy Index(es):
  - Select which enemy index(es) to affect.

---

System Plugin Commands

BattleSysOTB Preview.png

---

BattleSysOTB Command7.png

System: OTB Turn Order Visibility
- Determine the visibility of the OTB Turn Order Display.

  Visibility:
  - Changes the visibility of the OTB Turn Order Display.

---

Plugin Parameters

Conversion Settings

BattleSysOTB TurnOrderChange.png

BattleSysOTB Params1.png

Automatically converts specific mechanics to fit OTB.

---

Buffs

 AGI Buff => Current:
 - Auto-convert AGI Buff effects for Items/Skills to speed up target's
   current Turn Order?
 AGI Buff => Next:
 - Auto-convert AGI Buff effects for Items/Skills to speed up target's
   next Turn Order?

---

Debuffs

 AGI Debuff => Current:
 - Auto-convert AGI Debuff effects for Items/Skills to speed up target's
   current Turn Order?
 AGI Debuff => Next:
 - Auto-convert AGI Debuff effects for Items/Skills to speed up target's
   next Turn Order?

---

Mechanics Settings

BattleSysOTB Params2.png

Determines the mechanics of Battle System OTB. These range from how Action Times are handled to speed.

---

BattleSysOTB ActionTimes.png

Action Times+

 Enable Action Times?:
 - Enable Action Times+ to have an effect on OTB?
   Randomize Order?:
   - If enabled, randomize the action order for added actions?

---

BattleSysOTB TurnOrderDisplay.png

Speed

 Allow Random Speed?:
 - Allow speed to be randomized base off the user's AGI?
 Post-Stun Infinity?:
 - After a 2+ turn stun states, battlers have infinity speed for their
   recovery turn.
 - Once again, this only applies to stun states that last 2+ turns.
   Infinity Clamp?:
   - Prevents turn order manipulation from going faster than infinity
     speed battlers.
 JS: Initial Speed:
 - Code used to calculate initial speed at the start of battle.
 JS: Speed => Order:
 - Code used to calculate how action speeds alter next turn's order.

---

Turn Order Display

BattleSysOTB TurnOrderDisplay.png

BattleSysOTB Params3.png

Turn Order Display settings used for Battle System OTB. These adjust how the two visible turn orders appears in-game.

---

General

 Display Position:
 - Select where the Turn Order will appear on the screen.
   - Top
   - Bottom
   Offset X:
   - How much to offset the X coordinate by.
   - Negative: left. Positive: right.
   Offset Y:
   - How much to offset the Y coordinate by.
   - Negative: up. Positive: down.
 Reposition for Help?:
 - If the display position is at the top, reposition the display when the
   help window is open?
   Offset X:
   - Reposition the display's X coordinates by this much when the Help
     Window is visible.
   Offset Y:
   - Reposition the display's Y coordinates by this much when the Help
     Window is visible.
 Forward Direction:
 - Decide on the direction of the Turn Order.
   - Left to Right
   - Right to Left
 Subject Distance:
 - How far do you want the currently active battler to distance itself from
   the rest of the Turn Order?
 Screen Buffer:
 - What distance do you want the display to be away from the edge of the
   screen by?

---

UI Background

 Background Style:
 - Select the style you want for the background.
   - fill
   - gradient
   - image
   - transparent
 Image Filename:
 - When using the "image" style, select an image from /img/system/ as the
   background image.
   Offset X:
   - How much do you want to offset the Background Image's X position?
   Offset Y:
   - How much do you want to offset the Background Image's Y position?

---

UI Text

 Font Size:
 - The font size used for parameter values.
 Active Battler Text:
 - Text used to display the active battler.
 - This text will always be center aligned.
   Offset X:
   - How much do you want to offset the text's X position?
   Offset Y:
   - How much do you want to offset the text's Y position?
 Current Turn Text:
 - Text used to display the current turn.
   Offset X:
   - How much do you want to offset the text's X position?
   Offset Y:
   - How much do you want to offset the text's Y position?
 Next Turn Text:
 - Text used to display the next turn.
   Offset X:
   - How much do you want to offset the text's X position?
   Offset Y:
   - How much do you want to offset the text's Y position?
 Text Align:
 - Text alignment for the Current and Next Turn texts?
   - auto
   - left
   - center
   - right

---

Slots

 Width:
 - How many pixels wide should the slots be on the Turn Order display?
 Height:
 - How many pixels tall should the slots be on the Turn Order display?
 Preview Scale:
 - How much do you want to scale the preview sprites by?
 - Use a number between 0 and 1 for the best results.
   Offset X:
   - How much do you want to offset the Preview Sprites' X position?
   Offset Y:
   - How much do you want to offset the Preview Sprites' Y position?
 Update Frames:
 - How many frames should it take for the slots to update their
   positions by?

---

Slot Border

 Show Border?:
 - Show borders for the slot sprites?
 Border Thickness:
 - How many pixels thick should the colored portion of the border be?
 Actors
 Enemies
   Border Color:
   - Use #rrggbb for custom colors or regular numbers for text colors
     from the Window Skin.
     Preview Version:
     - A different setting is used for the preview version.
   Border Skin:
   - Optional. Place a skin on the actor/enemy borders instead of
     rendering them?
     Preview Version:
     - A different setting is used for the preview version.

---

Slot Sprites

 Actors
   Sprite Type:
   - Select the type of sprite used for the actor graphic.
   - Face Graphic - Show the actor's face.
   - Icon - Show a specified icon.
   - Sideview Actor - Show the actor's sideview battler.
   Default Icon:
   - Which icon do you want to use for actors by default?
 Enemies
   Sprite Type:
   - Select the type of sprite used for the enemy graphic.
   - Face Graphic - Show a specified face graphic.
   - Icon - Show a specified icon.
   - Enemy - Show the enemy's graphic or sideview battler.
   Default Face Name:
   - Use this default face graphic if there is no specified face.
   Default Face Index:
   - Use this default face index if there is no specified index.
   Default Icon:
   - Which icon do you want to use for enemies by default?
   Match Hue?:
   - Match the hue for enemy battlers?
   - Does not apply if there's a sideview battler.

---

Slot Letter

 Show Enemy Letter?:
 - Show the enemy's letter on the slot sprite?
 Font Name:
 - The font name used for the text of the Letter.
 - Leave empty to use the default game's font.
 Font Size:
 - The font size used for the text of the Letter.

---

Slot Background

 Show Background?:
 - Show the background on the slot sprite?
 Actors
 Enemies
   Background Color 1:
   Background Color 2:
   - Use #rrggbb for custom colors or regular numbers for text colors
     from the Window Skin.
     Preview Version:
     - A different setting is used for the preview version.
   Background Skin:
   - Optional. Use a skin for the actor background instead of
     rendering them?
     Preview Version:
     - A different setting is used for the preview version.

---


Terms of Use

1. These plugins may be used in free or commercial games provided that they have been acquired through legitimate means at VisuStella.com and/or any other official approved VisuStella sources. Exceptions and special circumstances that may prohibit usage will be listed on VisuStella.com.

2. All of the listed coders found in the Credits section of this plugin must be given credit in your games or credited as a collective under the name: "VisuStella".

3. You may edit the source code to suit your needs, so long as you do not claim the source code belongs to you. VisuStella also does not take responsibility for the plugin if any changes have been made to the plugin's code, nor does VisuStella take responsibility for user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow custom JavaScript code.

4. You may NOT redistribute these plugins nor take code from this plugin to use as your own. These plugins and their code are only to be downloaded from VisuStella.com and other official/approved VisuStella sources. A list of official/approved sources can also be found on VisuStella.com.

5. VisuStella is not responsible for problems found in your game due to unintended usage, incompatibility problems with plugins outside of the VisuStella MZ library, plugin versions that aren't up to date, nor responsible for the proper working of compatibility patches made by any third parties. VisuStella is not responsible for errors caused by any user-provided custom code used for custom control effects including advanced JavaScript notetags and/or plugin parameters that allow JavaScript code.

6. If a compatibility patch needs to be made through a third party that is unaffiliated with VisuStella that involves using code from the VisuStella MZ library, contact must be made with a member from VisuStella and have it approved. The patch would be placed on VisuStella.com as a free download to the public. Such patches cannot be sold for monetary gain, including commissions, crowdfunding, and/or donations.

7. If this VisuStella MZ plugin is a paid product, all project team members must purchase their own individual copies of the paid product if they are to use it. Usage includes working on related game mechanics, managing related code, and/or using related Plugin Commands and features. Redistribution of the plugin and/or its code to other members of the team is NOT allowed unless they own the plugin itself as that conflicts with Article 4.

8. Any extensions and/or addendums made to this plugin's Terms of Use can be found on VisuStella.com and must be followed.

Terms of Use: Japanese


『VisuStella MZ』利用規約

1. これらのプラグインは、VisuStella.comおよび/または公式に承認されたVisuStellaのソースから合法的な手段で入手したものである限り、フリーゲームや商用ゲームに使用することができます。例外的に使用が禁止される場合については、VisuStella.comの記載をご確認ください。

2. 本プラグインの「クレジット」部分に記載されているすべてのコーダーの名前は、ゲーム内にクレジット表記を行うか、もしくは「VisuStella」という名前の下にまとめて表記する必要があります。

3. ソースコードを自分のものだと主張しない限りは、必要に応じて編集することが可能です。ただしプラグインのコードに変更が加えられた場合、VisuStellaはそのプラグインに対して一切の責任を負いません。高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードについても、VisuStellaは一切の責任を負いません。

4. これらのプラグインやプラグイン内のコードを、「自分のもの」として再配布したり使用したりすることはできません。これらのプラグインとそのコードは、VisuStella.comおよび、その他の公式/承認済みVisuStellaソースからのみダウンロードすることができます。公式/承認済みのソースのリストは、VisuStella.comでご確認いただけます。

5. VisuStellaは、意図しない使用方法による問題、VisuStella MZライブラリ以外のプラグインとの非互換性の問題、プラグインのバージョンが最新でないことによる問題、第三者による互換性パッチが適切に動作していないことなどが原因でゲーム内で発生した問題については、一切の責任を負いません。VisuStellaは、高度なJavaScriptのノートタグやJavaScriptコードを許可するプラグインのパラメータを含む、カスタムコントロールエフェクトに使用される、ユーザー提供のカスタムコードに起因するエラーについても、一切の責任を負いません。

6. VisuStella MZライブラリのコードを使用した互換性パッチをVisuStellaとは関係のない第三者を通じて作成する必要がある場合は、まずVisuStellaのメンバーと連絡を取り、承認を得る必要があります。パッチはVisuStella.comに公開され、誰でも無料でダウンロードすることができるようになります。このようなパッチを、制作発注やクラウドファンディングの対象にしたり、寄付などの金銭的な利益を得るために販売することはできません。

7. このVisuStella MZプラグインが商用製品である場合、プロジェクトチームのすべてのメンバーは、それを使用するため、それぞれ製品を購入しなければなりません。使用方法には、関連するゲームメカニクスの作業、関連するコードの管理、および/または関連するプラグインコマンドや機能の使用、が含まれます。プラグインそのものやそのコードをチームの他のメンバーに再配布することは第4項に抵触するため、そのメンバーがプラグインそのものを所有していない限りは許可されません。

8. このプラグインの利用規約の追加項目や補足については、VisuStella.comに掲載されていますので、それを参照し従ってください。

Credits

If you are using this plugin, credit the following people in your game:

Team VisuStella

Changelog

Version 1.04: August 6, 2021

  • Bug Fixes!
    • Enemies with multiple actions will no longer step forward when it's not their turn. Fix made by Olivia.


Version 1.03: June 25, 2021

  • Optimization Update!
    • Plugin should run more optimized.


Version 1.02: April 16, 2021

  • Bug Fixes!
    • Post-stun infinity clamping should now be adjusted properly for previewing turn order changes.


Version 1.01: April 9, 2021

  • Bug Fixes!
    • Subsequent battles will properly reset the turn order. Fix by Olivia.


Version 1.00 Official Release Date: April 26, 2021

  • Finished Plugin!

End of File