Introduction
This plugin was inspired by a recent replaying of Phantasy Star IV. One of the unique features of that game is the ability to use the party menu to define macros - a list of actions each character will take in the order they'll take them. Then, you can use that in battle with a single button press.
I have tested the basic functionality, please let me know if you encounter any errors. I will consider making compatibility patches if the other plugin is free to use (or one I own, such as a Yanfly product) and unobfuscated. Otherwise, other authors are free to modify this code to make it compatible with theirs so long as I am still credited.
Spoiler: Features
Macros are a way for the player to set a series of actions ahead of time to be executed in battle. At its simplest, this can be a shortcut for starting the turn - for example, not having to select Attack with each actor.
However, the actions are also forced to resolve in the order they're programmed into the macro. This allows the player to ensure things happen in a specific order - an attack happens after that actor is buffed, or a heal is cast after the resurrection.
If an action's speed would be faster than its place in the macro lineup, that actor's turn will be delayed until the appropriate time.
The default functionality for anything requiring a target is that a random enemy and random party member are determined and all skills of that scope will use the same target. There is a plugin parameter to instead allow the player to select an enemy and/or player target after choosing the macro.
Actions programmed by macro follow all the regular restrictions; so an actor programmed to use a skill they don't have the resources for or an item the party doesn't have will lose their turn.
If the party contains actors who are not included in the selected macro, they will go at the end of the turn order with the Guard skill.
Spoiler: Plugin Commands
Code:
MacroMenu on
MacroMenu off
复制代码
Toggles whether the Macros command is shown in the menu and actor command list.
Code:
MaxMacros <number>
Example: MaxMacros 5
复制代码
This changes the maximum number of macros the player has access to.
Terms and Credits
Free for non-commercial and commercial use. Credit ATT_Turan.