Input Combo Skills 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.

InstallPluginsMz.png

UpdatePlugins.png

Troubleshooting.jpg

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

Click here to learn how to update plugins.

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


Masterarbeit Writer


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

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

Introduction

InputComboSkills Preview.gif

When an Input Combo Skill is activated by an actor, a the potential input attacks appears on the screen. The player then presses the various buttons listed and attacks will occur in a combo fashion. If a particular attack combination is met, a special attack will occur.

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

  • Register up to 9 different input skills per skill, each bound to specific keyboard button inputs.
  • Touch screen users are able to activate input combo skills by simply tapping on the listed chain skill on the screen.
  • Tooltips will display the skill's help description when hovering over the on-screen buttons.
  • If a specific combination of button inputs are made, special combination skills will be added onto the combo queue.
  • Special combo skills are separated into three different types: available, learned, and forced.
  • Some skills can be set up to be input combo only, meaning they can only ever be accessed via Input Combo Skills.
  • Confirmation sound effects can be utilized to provide proper feedback to the player when chaining.
  • Switches can be used to determine if there are still skills left in the queue to combo with.
  • Custom images can be used to add more personal flare to the combo UI.

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 3

This plugin is a Tier 3 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

InputComboSkills Preview.gif

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

---

Forced Actions

Input Combo Skills rely on Forced Actions to queue their next attacks after the completion of their current skill in effect.

Therefore, if you make any effects through Custom Action Sequences of Common Events that run after a skill takes place to run a different Forced Action, then there will be conflict and the Input Combo Skills won't work properly.

Keep this in mind when using this plugin with Battle Systems like ATB, CTB, or OTB where forced actions have unique properties. Look at the "VisuStella MZ Compatibility" section below.

---

The skills that you can input have requirements in the form of skill costs. Other things like skill cooldowns also matter. However, upon selecting these skills, the cost is paid up front even before they take effect.

What this means is that if you combo into a skill that would somehow reduce the MP cost of all of the actor's skills, that wouldn't matter because the costs of these skills still have to be paid up front. Now, the MP cost reduction would take effect on a subsequent Input Combo Skill sequence, but it will not take effect during the current one.

Because it's paid up front, any input skills found in the queue no longer have to pay their costs when it becomes time to use that skill.

Special combinations are also exempt from costs as the cost is the input of the combination itself.

---

Input Needs Finishing

When the Input Combo Skill sequence starts up, it needs to finish before going forward. Unlike the Yanfly Engine Ace version where it occurs simultaneously, this version waits until the inputs are done to avoid any potential conflicts.

If there are no Input Combo Skills that can be used, then the input sequence will end prematurely.

---

Input Queue Switch

There is a switch that automatically turns ONE whenever there are at least one input combo skill in queue and OFF when there are none. This can be used for a variety of ways.

Read the "Plugin Parameters: General Settings" section for more information on this important feature.

---

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.

---

Message Core VisuStella MZ

If you are using the VisuStella MZ plugin library's Message Core plugin, the UI Tooltip Plugin Parameters will be enabled and tooltips can be used and will be visible when hovering the mouse cursor over the UI buttons. The tooltip window will display the skill's description.

---

Battle System - ATB VisuStella MZ

Battle System - CTB VisuStella MZ

Due to how TPB works, forced actions will return the target battler back to its current speed before usage. When used with Active Chain Skills, make sure you use the ATB plugin's <ATB After Gauge: x%> and CTB plugin's <CTB After Speed: x%> notetags to properly enforce TPB progress resets.

---

Battle System - BTB VisuStella MZ

Due to how BTB focuses on queuing actions, this plugin heavily conflicts with it and therefore, Input Combo Skills cannot be used with the BTB battle system.

We recommend that you use another battle system with VisuStella MZ's Boost Action plugin to produce similar results.

---

Battle System - OTB VisuStella MZ

OTB handles forced actions slightly differently. It adds additional actions towards the front of the action order list. Therefore, you'll see the additions made and added towards the front instead. The forced action will still take place and there are no additional measures needed to be done, but this is a visual effect that may be noticeable to some.

---

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.

---

Input Combo Origin-Related Notetags

InputComboSkills Preview.gif

---

<Combo Skill key: id>
<Combo Skill key: name>

- Used for: Skill Notetags
- Declares this skill as an Input Combo origin skill. This notetag sets
  an input skill to the specific 'key' when pressed.
  - The input skills do not need to be learned or available through traits
    in order to be used.
- Replace 'key' with a string representing the key trigger you wish to bind
  this chain skill with.
  - 'down', 'left', 'right', 'up'
  - You can substitute the above for the NumPad values: 'down' with '2',
    'left' with '4', 'right' with '6', and 'up' with '8'
  - 'ok', 'cancel', 'pageup', 'pagedown', 'shift'
  - You can substitute the above for the Keyboard inputs: 'ok' with 'z',
    'cancel' with 'x', 'pageup' with 'q', 'pagedown' with 'w', and
    'shift' for 's'
  - Do not include the quotes.
- For 'id' variant: replace 'id' with the ID of the skill to combo using
  the marked key.
- For 'name' variant: replace 'name' with the name of the skill to combo
  using the marked key.
- Insert multiple copies of this notetag to bind different keys.

Examples:

  <Combo Skill Down: Leg Sweep>
  <Combo Skill Left: 107>
  <Input Combo Skill Right: Hook Punch>
  <Input Combo Skill Up: 123>

---

<Combo Max: x>

<Input Combo Max: x>

- Used for: Skill Notetags
- Sets a maximum combo count that this Input Combo origin skill can have.
- There are no differences between the two <Combo Max: x> and
  <Input Combo Max: x> notetags, it's a matter of preference of which you
  want to use.
- Replace 'x' with a number representing the max combo inputs you want to
  allow the player to input.
- If this notetag is not used, the combo max will default to the value found
  in the Plugin Parameters.
- The max combo will NOT include any special skills added through a specific
  sequence string, meaning that a special skill from a combo sequence can
  go past the designated combo max.

---

<Combo Start Animation: x>

<Input Combo Start Animation: x>

- Used for: Skill Notetags
- Changes the animation played when initiating the Input Combo origin skill.
- Replace 'x' with a number representing the ID of the animation to play.
- If this notetag is not used, play the animation found in the
  Plugin Parameters instead.

---

<Combo Special sequence: id>
<Combo Special sequence: name>

<Available Combo Special sequence: id>
<Available Combo Special sequence: name>

- Used for: Skill Notetags
- If the player inputs a matching 'sequence', this Input Combo origin skill
  will add the target skill to the combo queue. This variant requires the
  actor to either have learned the target skill or have it temporarily
  accessible through traits.
- There are no differences between the <Combo Special sequence: id> and the
  <Available Combo Special sequence: id> notetags, it's a matter of
  preference of which you want to use.
- Replace 'sequence' with any of the below:
  - '2' for 'down'
  - '4' for 'left'
  - '6' for 'right'
  - '8' for 'up'
  - 'Z' for 'ok'
  - 'X' for 'cancel'
  - 'Q' for 'pageup'
  - 'W' for 'pagedown'
  - 'S' for 'shift'
- Insert multiple copies of this notetag to add more special combos.

Examples:

  <Combo Special 226Z: Hadoken>
  <Combo Special 4268: 360>
  <Available Combo Special QWQWQ: Dempsey Roll>
  <Available Combo Special ZXSQW: 123>

---

<Learned Combo Special sequence: id>
<Learned Combo Special sequence: name>

<Known Combo Special sequence: id>
<Known Combo Special sequence: name>

- Used for: Skill Notetags
- If the player inputs a matching 'sequence', this Input Combo origin skill
  will add the target skill to the combo queue. This variant requires the
  actor to have learned in order to special combo into it regardless of
  whether or not the actor has temporary trait access.
- There are no differences between the <Learned Combo Special sequence: id>
  and the <Known Combo Special sequence: id> notetags, it's a matter of
  preference of which you want to use.
- Replace 'sequence' with any of the below:
  - '2' for 'down'
  - '4' for 'left'
  - '6' for 'right'
  - '8' for 'up'
  - 'Z' for 'ok'
  - 'X' for 'cancel'
  - 'Q' for 'pageup'
  - 'W' for 'pagedown'
  - 'S' for 'shift'
- Insert multiple copies of this notetag to add more special combos.

Examples:

  <Learned Combo Special 226Z: Hadoken>
  <Learned Combo Special 4268: 360>
  <Known Combo Special QWQWQ: Dempsey Roll>
  <Known Combo Special ZXSQW: 123>

---

<Always Combo Special sequence: id>
<Always Combo Special sequence: name>

<Forced Combo Special sequence: id>
<Forced Combo Special sequence: name>

- Used for: Skill Notetags
- If the player inputs a matching 'sequence', this Input Combo origin skill
  will add the target skill to the combo queue. This variant will always
  allow the target skill to be used as a special combo skill.
- There are no differences between the <Always Combo Special sequence: id>
  and the <Forced Combo Special sequence: id> notetags, it's a matter of
  preference of which you want to use.
- Replace 'sequence' with any of the below:
  - '2' for 'down'
  - '4' for 'left'
  - '6' for 'right'
  - '8' for 'up'
  - 'Z' for 'ok'
  - 'X' for 'cancel'
  - 'Q' for 'pageup'
  - 'W' for 'pagedown'
  - 'S' for 'shift'
- Insert multiple copies of this notetag to add more special combos.

Examples:

  <Always Combo Special 226Z: Hadoken>
  <Always Combo Special 4268: 360>
  <Forced Combo Special QWQWQ: Dempsey Roll>
  <Forced Combo Special ZXSQW: 123>

---

Input Combo Special Skill-Related Notetags

InputComboSkills Preview.gif

---

<Combo Only>

<Input Combo Only>

- Used for: Skill Notetags
- Causes this skill to only become usable during an Input Combo sequence as
  a special combination skill.

---

Plugin Parameters

General Settings

InputComboSkills Preview.gif

InputComboSkills Params1.png

These are the general settings for this plugin.

---

General

 Default Max Combo:
 - What is the default max combo when the <Input Combo Max: x> notetag
   isn't used?
 Input Queue Switch:
 - What switch is turned on/off to detect if Input Combo Skills has a
   skill queued up?
 - Leave empty to not use.
 Reduce Back & Forth?:
 - Reduce unnecessary back and forth motions inbetween Input Combo Skills?
 - This is to prevent your actor from stepping forward, performing a skill,
   then stepping back, then stepping forward, perform a skill, etc.
 - This will nullify any command that uses the stepForward and stepBackward
   functions until cleared.

---

Uses for the Input Queue Switch

---

1. Speed Up Input Combos

If left to its own devices, the default Action Sequences for Input Combo Skill queues may be a bit slow for some. By having the switch determining if there is another skill queued afterwards, you can speed up the Action Sequence by removing some of the wait times.

---

2. Tracking Combo Length

Another thing that you can stuff into a Common Event and put right before the end of an Action Sequence involving Input Combo Skills is a variable tracking the number of times the player has combo'd in a row with this actor nonstop without breaking it.

  ◆If:Input Queue Switch is ON
    ◆Control Variables:#XXXX Chain Counter Variable += 1
    ◆
  :Else
    ◆Control Variables:#XXXX Chain Counter Variable = 0
    ◆
  :End

When the Input Queue Switch is set to be ON, then the variable's value will go up by one. Otherwise, it will reset to 0. Since this is done at the end of an Action Sequence, it will also properly reset when there is nothing left to chain.

---

Sound Settings

InputComboSkills Params2.png

These are the sound effects used for inputs and special combinations for this plugin.

---

Input Sound

 Filename:
 - Filename of the sound effect played.
 Volume:
 - Volume of the sound effect played.
 Pitch:
 - Pitch of the sound effect played.
 Pan:
 - Pan of the sound effect played.

---

Special Sound

 Filename:
 - Filename of the sound effect played.
 Volume:
 - Volume of the sound effect played.
 Pitch:
 - Pitch of the sound effect played.
 Pan:
 - Pan of the sound effect played.

---

On-Screen UI Visuals Settings

InputComboSkills Preview2.png

InputComboSkills Params3.png

Determine where and how the UI visuals look while performing Input Combo Skills.

---

General

 Custom BG Image:
 - Do you want to use a custom background image?
 - Located in /img/system/ folder.
 - Covers whole screen.
 Icon Smoothing?:
 - Smooth the display for icons?
 - Or pixelate them?
 Input Combo Text:
 - What text do you want displayed when starting an Input Combo sequence?
   Sequence Animation:
   - What animation should be played when starting the Input
     Combo sequence?
 Disabled Opacity:
 - What is the opacity level for disabled UI elements?
 Opacity Rate:
 - Fade in/out the background at what opacity rate?
 - Lower is slower. Higher is faster.
 Scale:
 - What is the scale of UI buttons?
 - 0.50 = 50%; 1.00 = 100%; 1.50 = 150%;
 JS: Draw Skill Data:
 - Code used to draw the skill data layer while Input Combo Skill inputs
   are active.
 JS: Draw Background:
 - Code used to draw the background layer while Input Combo Skill inputs
   are active.

---

Queue List UI

 Custom BG Image:
 - Use a custom background image for Queue UI?
 - Located in /img/system/ folder.
 Visibility Frames:
 - How long does the Queue List stay visible for after the player
   finishes input?
 - 60 frames = 1 second.
 JS: Draw Content:
 - Code used to draw the list data while inputting skills.
   Draw Back Rectangle?:
   - Draw a rectangle in the back to make the contents easier to read?
 JS: X, Y, W, H:
 - Code used to determine the dimensions for this list UI element.

---

Key Binds > Offsets

 Key Bind Offset X:
 - Offset the x coordinate all of key bind buttons.
 - Negative: left. Positive: right.
 Key Bind Offset Y:
 - Offset the y coordinate all of key bind buttons.
 - Negative: up. Positive: down.

---

Key Bind > Down, Left, Right, Up

Key Bind > Ok, Cancel, PageUp, PageDown, Shift

 Key Icon:
 - What is the icon used to mark this key bind?
 - Takes priority over Core Engine's Button Assist.
 Custom BG Image:
 - Do you want to use a custom background image?
 - Located in /img/system/ folder.
 - Ignores scaling.
 JS: X, Y, W, H:
 - Code used to determine the dimensions for this button.

---

UI Tooltip Settings

InputComboSkills Preview3.png

InputComboSkills Params4.png

Settings for the Input Combo Skills Tooltips Window. Requires VisuMZ_1_MessageCore!

---

Settings

 Enabled?:
 - Are tooltips enabled?
 - Requires VisuMZ_1_MessageCore!

---

Appearance

 Scale:
 - What scale size do you want for the tooltip?
 - Use 1.0 for normal size.
 Skin Filename:
 - What window skin do you want to use for the tooltip?
 Skin Opacity:
 - What opacity setting is used for the tooltip?
 - Use a number between 0 and 255.

---

Offset

 Offset X:
 - Offset the tooltip X position from the mouse?
 - Negative: left. Positive: right.
 Offset Y:
 - Offset the tooltip Y position from the mouse?
 - Negative: up. Positive: down.

---


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: July 13, 2023

  • Compatibility Update!
    • Added compatibility functionality for future plugins.


Version 1.03: June 15, 2023

  • Bug Fixes!
    • Fixed an incompatibility with the Options Core battle animation speeds causing input timing to also become faster. Fix made by Irina.


Version 1.02: March 16, 2023

  • Bug Fixes!
    • Input Queue Switch previously did not register usage with certain types of commands. It should now be working properly. Fix made by Irina.
  • Feature Update!
    • Default Plugin Parameters are changed to have the queue list window be larger and have a minimum width of 360. This is so that at default 816x624 resolution, there will be no icon cut offs. Update made by Irina.


Version 1.01: July 28, 2022

  • Bug Fixes!
    • Users without the VisuMZ Message Core will no longer get tooltip error messages when starting battle. Fix made by Irina.


Version 1.00 Official Release Date: September 7, 2022

  • Finished Plugin!

See Also


End of File