Version 1.2.2 (14 May 2020) - Part 3 (last part)
Bug Fixes: (continued)
• Displacements: Fixing a rare issue with "abilities that displace a lot of people at once" sometimes leaving some of the targets "untargetable" until they moved again.
• Charge: Fixing an issue when using a charge ability from a water tile, where the attack wouldn't occur after the movement was done.
• Charge: When the player used a charge, the target would not get to counter it, even if they had a valid counter. Fixed.
• Leap: Leap will now correctly check for traps after the caster lands.
• One for All: One for All would ignore the target height and just check for distance. Fixed.
• Infused Edge: No exp would be granted to the caster if the spell part of the attack missed. Fixed.
• Doppelganger: Some bosses with multiple parts wouldn't have their parts correctly flagged as not being valid for Doppelganger and the player could attempt to copy some invalid ability sets. Fixed.
• Enemies: Fixing some issues in enemies generation tables that would prevent a few passives to be generated on enemies as optional passives.
• Zzakander Spires: When using "Elite enemies", the added enemy would spawn in an odd location. Fixed.
• Mind-Control: Mind-Controlled enemies with Smart Cast would apply Smart Cast incorrectly. Fixed.
• Pushing: Pushing someone out of a water tile with a push ability would result in visual issues and the target possibly surviving with 0Hp.
• NewGame Plus: Enemies would still be restricted by story progression in their choice of weapons and accessories, even when using the flag for enemies to have access to all the gear.
• Units in Water: Certain abilities that exchange position with a unit could have some inconsistent text positioning for caster drains if the caster started in water. Fixed.
• Fleeing Enemies: Fixing a rare case where strange AI behavior could occur when an enemy escaped battle and was under the effect of Protect.
• Double Cast: The AI could cast a spell using Blood Magic without enough HP if the first cast got countered and reduced their HP below what was needed for their 2nd spell. Fixed.
• Monsters: Some rare monsters had weaker stats in an upper Tier than a lower Tier. Fixed.
• Credits: Fixing an issue where some names in the credits didn't show up properly.
• Adaptive Evasion: Will now correctly be set to "Evade Regular Attacks" after being attacked by Infused Edge.
• Summons: Fixing an issue where mind-controlled summons would have no abilities other than attack for the player to use.
• Interstitch: Was ignoring the spell height restriction on the victims. Fixed.
• Stampede: Now calculating the amount of tiles walked more accurately (it used to calculate it from the distance between the 2 positions, rather than the steps taken to get there).
• AI: Will not attempt to cast Wild Cards on a target immune to all debuffs (or that has all debuffs already).
• Dispelling: Will now show 0% for the chance of the buff to be removed if the target has an Evade counter against the Dispel ability used.
• Scar Tissue: Will not trigger from fixed damage anymore (since those don't target def nor res).
• Bows: Under very specific circumstances, the optimize feature when changing classes could end up equipping a bow and a shield at the same time.
• Blazing Bolas: Under very specific circumstances, the target could be flagged as being underwater after the spell, even though they would not be. Fixed.
• Gadgeteer: Missing icon with first ability in skilltree. Fixed.
• Banyan Span: Fixing gathering point that wouldn't visually disappear after being picked.
• A certain Kawa: Could remain visible at the end of a cutscene where he shouldn't have been. Should be fixed.
• Cutscenes: A unit with float could have their shadow float with them during a few very specific cutscenes. Fixed.
• Flying: Some rare players have had issues with units taking flight under rare and specific circumstances. We added some code to report the issue better and to make sure the game doesn't stall if it happens (it'll resolve itself after a little delay).
Modding:
• List All Jobs: The optional GameOptions.txt option to always show all classes in the class wheel was cleaned up to not show classes from bosses and other special hidden classes.
• Abilities: Adding a new abilities.xml field so abilities can use the element of the weapon equipped rather than have a built-in element. Previously, skills with "treated as a regular attack" would automatically have this behavior, but now they will be able to decide with this new field.
• Monsters: The game started using Monsters.xml last patch, but the file wasn't generated in the customdata_examples folder. Fixed.
• Abilities: Abilities will now correctly use the minrange value when being casted. Before, it would only respect values of 0 or 1. Now any value <= maxrange will work correctly.
• Abilities: Adding a new field to abilities (PosStyle) that can be set to "kLine" to force the ability to target only in a line from the caster.
• Jobs: Adding "noVicarious" to the job fields. When it's set, a class doesn't gain vicarious AP. This used to be hardcoded.
• GameOptions.txt: Adding "Vicarious-extensions" table. You can make special mappings there to have vicarious AP work "cross class" (for example, you can make it so that a specific story class earns vicarious AP from another class).
• Encounters.txt: Makings more robust in general in terms of error handling.
• Encounters.txt: Adding command to grant spawned units bonus stats, speed, max hp or mp. Those are: stat-hp, stat-mp, stat-atk-, stat-mnd, stat-def, stat-res, stat-spd. Eg: stat-hp:100 will give the unit 100 more max HP.
• Charges: Will now use the size field to create a max charge range. Using a very large value for size will essentially behave like before (ie, no real max distance).
• Abilities: Adding a new counter called "kOffensiveCounterWithDebuff". It can act with any debuffs and will trigger with the standard "offensive action" conditions. It will use SpellHash for the visuals to use during the counter (and use a generic effect if none is provided).
• Abilities: Adding a new counter called "kOffensiveCounterWithBuff". It can act with any buffs and will trigger with the standard "offensive action" conditions. It will use SpellHash for the visuals to use during the counter (and use a generic effect if none is provided).
• Abilities: Adding a new counter called "kRandomDebuffPerPower2". It will trigger on standard offensive actions and apply "x" number of debuffs ("x" is the power2 field) to the target and use SpellHash for visuals.
• Abilities: Adding a new effect field (AddsNonRemovableEffects3) to abilities with fields called: kfEquipAxe (and one for each weapon name). Those can be used to allow a character to equip said weapon as a passive ability.
• customdata_examples: Files will now automatically be refreshed if they are out-of-date rather than needing to be deleted first. We were afraid of deleting changes the user might have made to those files, but I guess making changes to those files wouldn't do anything since they aren't used by the game anyways, so it should be pretty safe. Files in customdata will never be deleted by the game though, just to make sure we don't delete people's mods.
• Stores.xml: Adding an XML to control store contents.
• Encounters.txt: By default, overrides for Encounters.txt replace the section they are targetting. By using the new command "AdditionMode=true", custom data will "add to the section" rather than replace it. This is useful to make tiny modifications, rather than redo an encounter.
• Encounters.txt: Adding new commands for the creation of enemy monsters: portrait, sprite and spriteextra. They allow the unit's portrait and sprites to be changed. "spriteextra" is for added sprites, as some monsters have multiple parts (you can see examples in Monsters.xml).
• Encounters.txt: Fixing an issue that prevented the helmet and armor commands to be used for accessories.
• Encounters.txt: Adding "weighttarget" command for units generation. Format is: weighttarget:AbilityHash|IncreasedValue|Target (eg: weighttarget:HEAL-A1|50|monster0 which will make that action 50% more attractive than normal).
• Encounters.txt: Adding "isaleader" command for units generation. Format is: isaleader:number, where number is going to be the bonus EXP granted for killing the leader.
• Encounters.txt: Adding "objective" command for Patrol fields (like: [city01-patrol0]). Format is objective:defeatleader. Currently, that's the only value and it will "win the map" automatically if all leaders are defeated and set the map objective description accordingly.
• Encounters.txt: Adding "story-" new command. Format is: story-=x:0, y:0, dir:rd where name is the name of a story character (like kyrie, reiner, etc). This will spawn them on the map on your team.
• Encounters.txt: Adding "nozone" new command. Format is nozone=true. It can be used in place of zone0=1,1,1,1 command so there is no zone at all. This will only be useful when spawning story characters, otherwise you'll need a zone to have units in there.
• Encounters.txt: You can name specific multiple class or subclass at once for generating an enemy. The system will pick one at random from the list. The format is "class:Class0|Class1|Class2|etc."
Post edited May 15, 2020 by FlockeSchnee