All right, everyone! I’ve got a handful of new fixes and improvements coming your way:
- to improve performance, the game now automatically removes all listeners from all characters and objects on the battlefield at the start of a CPU player’s turn. (It returns them to the battlefield whenever a human player’s turn arrives.) This should address the absurd amount of processor time AIR was devoting to “button hittesting” in my last performance test.
- fixed a bug in which the the game would freeze at the conclusion of Annel Stormhunter’s goodbye speech.
- suspicious that array entanglement may have been occurring during the game saving process (and thereby leading to inventory bugs), I created a new copyArray() function to automatically detect how many dimensions an array contains, break down the array down into its smallest component parts, and then push those parts to a new array with the same number of dimensions and return the new array. I then deployed this function as part of a new class that I’m using going forward for all array copying performed as part of game-saving and inventory-building functions.
- fixed a bug in which character portraits would sometimes get mixed up when swapping deployment tiles around a lot.
- fixed that annoying bug where you inexplicably couldn’t drag a character out of the Characters in Reserve window onto certain deployment tiles on the battlefield.
- fixed an issue where hit detection was slightly off for deployment tiles dragged out of the Characters in Reserve window and onto the battlefield.
- fixed a bug in which non-equippable “triggered” items with no use limit would visibly show their uses left degrading into the negatives instead of just remaining at 0 when used in a character’s inventory.
- fixed a bug in which a key with no use limit would visibly show uses left degrading into the negatives instead of just remaining at 0 after being used to unlock doors.
- fixed a bug in which the GiveItem script action would not “stick” if a character’s personal inventory screen was open at the time the script action was run.
I’ve been experimenting with switching over from .sol-based save games to a custom save format. I’ve made progress, but it isn’t working just yet. More to come in the next update!