Update (v1.2.3)
NOTE: This update heavily overhauls many of the previous systems used in this plugin. Even if you are well versed in how to use it, It's highly recommended that you go through the tutorial again to get a handle on what's been changed and/or added.
Midbattle Triggers
I've overhauled and renamed a ton of the existing midbattle triggers. I know this'll be annoying for those of you who have a lot of existing battles set up with the old trigger names, so I'm going to try not to go on a mass re-naming spree from here on out. But I wanted to redo all of the triggers so that all of the ones that are closely related to each other all start with the same word, to make them all easier to sort and remember. For example, all the triggers related to moves now start with the word "move", all of the triggers related to switching now start with the word "switch", etc. A lot of the triggers previously would just have no rhyme or reason for the way they were named, and in this update I tried to make everything much neater and organized.
In addition to this, I've also split a ton of existing triggers into two separate ones. Primarily, this has to do with the triggers related to the Attack Phase of battle. For example, previously there was only one trigger that checked if an attacking Pokemon dealt a critical hit, but no trigger that would activate on the defending side that would activate when a Pokemon took critical damage. To address this I've now split every trigger that deals with scenarios like this into "attacker" and "defender" triggers, so you can choose which side to trigger the effect from.
The following triggers have been removed, renamed or replaced, and are no longer used:
Here are all of the re-worked triggers. A few may still have the same name, but have been given additional functionality. Others simply are renamed versions of old triggers. And some are completely brand new:
General Fixes- Standardized the
"statusInflicted"
midbattle trigger throughout the plugin. Some places were using a differently named trigger by accident.
- Fixed an error that would occur when setting up midbattle messages in wild battles with some configurations.
- Fixed an error that would occur when using the Interactable Party w/ Bag plugin when the Terastal Phenomenon plugin is not present.
- Generalized how the Tera button is displayed in battle when the Terastal Phenomenon plugin is installed so that the button now appears correctly even if you've added or removed types from your game.
- Fixed a typo error with the
:teracharge
midbattle key.
- Fixed a bug when using the
:delay
and :ignore
keys in a midbattle hash that wouldn't reset their conditions after the battle concluded, keeping them stuck as if they have already activated if initiating the same battle again.
- Fixed a potential infinite loop that could occur when using midbattle triggers to force switching.
- Fixed a potential infinite loop that could occur when using midbattle triggers to force a Pokemon to faint.
- Opponent trainer sprites that slide in during speech will now appear in front of their Pokemon sprites if their active Pokemon in slot 1 is currently Dynamaxed. This both reflects how it works in SwSh (the Dynamax Pokemon is behind the trainer), as well as fixing awkward visual situations where the speaking trainer would be completely obscured by enlarged Dynamax sprites.
Midbattle Speech & Text- All custom messages entered in a midbattle hash have been updated to now accept
\\PN
to display the player's name.
- The name of a speaker that is displayed during midbattle speech will now be displayed in its own text box above the speaker's dialogue, instead of appearing in all caps as part of the speaker's speech. The windowskin for this name plate will default to one with a blue outline for male speakers and one with a red outline for female speakers. This windowskin may also be customized for each speaker as well.
- You may now display speech events for opponents during wild battles, not just trainer battles. Doing so will allow the wild Pokemon to "speak", complete with their own name plates.
- The name displayed for a speaker during midbattle speech may now be customized, allowing you to display a name or title that doesn't necessarily match the actual name of the speaker.
- You may now have any trainer or Pokemon sprite you want slide in and speak during battle, even if they aren't your current opponent. For example, if you are currently in a battle with your rival, you can have Prof. Oak slide in to speak, even though he isn't your opponent.
- New functionality with midbattle speech has been implemented to now allow you to set up choice boxes during dialogue, and set up different outcomes depending on the chosen option. Refer to the tutorial for an in-depth guide on how this can be accomplished.
Midbattle Rules- Added the
:compbattle
Deluxe battle rule. When set to true, the battle will function with the same rules as competitive PvP battles, or those found in the Battle Frontier. Specifically, no exp. or money is earned from this battle, and the player is unable to use any items from the bag. The player may also select "Run" to forfeit the match.
- Added the
:introtext
Deluxe battle rule. You may use this to override the default battle text that appears at the start of the battle, such as "A wild __ appeared!" in wild battles, or "You are challenged by ___!" in trainer battles.
- Added the
:losetext
Deluxe battle rule. You may use this to override the speech text that will display at the end of battle for opposing trainers when they are defeated.
- Added the
:wintext
Deluxe battle rule. You may use this to override the speech text that will display at the end of battle for opposing trainers when they defeat you. This text only appears when the :compbattle
rule is active, since trainers only show their win speech text in those types of battles (such as in the Battle Frontier). For all other battles, you can still use the "loss"
midbattle trigger to display trainer speech when you lose.
Midbattle Hashes
Other- Added a placeholder for the
NoDynamax
attribute for NPC trainer's Pokemon, to be used by the ZUD Plugin. This may be used to allow NPC trainers to use Dynamax and Terastallization in the same battle. More details found in the ZUD Plugin.
- Added the
:nodynamax
setting to be used in the Pokemon hash of a Deluxe wild battle. This flags the Pokemon as being unable to use Dynamax when the ZUD Plugin is present. This allows wild Pokemon to Terastallize even if you are on a map that would normally cause them to prioritize Dynamax instead.
Video Examples:
Below are example battles showcasing just a few up the new features in this update. Keep in mind that these videos were made prior to the new name plate additions, so they are mostly just to show off the dialogue choice features.
Battle vs Gym Leader Opal
Battle vs Quizmaster
Here is a GIF to showcase the new
:introtext
Deluxe battle rule, name plates, as well as the ability to set guest speakers during midbattle speech.
Please refer to the tutorial for more information about changes to specific mechanics.
Note: When updating, please make a copy of any custom work you've added to
Midbattle_Config
. Updating the plugin will overwrite any of your additions.