In script_entity_387 (level 13, x16,y26): You've made a typo and attempted to call "spawnerICE5activate()" instead of "spawnerICE5:activate()" which of course causes a crash. This means the player cannot place items in the powergem alcove or use the pyre stones to "convert" the dragons.
Of course, it's impossible to get into that area in the first place without cheating, because of another major bug: the heartspark keystone door on level 13 cannot be opened, because the locks increment the counter when they should be decrementing it.
Walking into the electric traps in the northern area of level 15 still causes the same crash it did in older versions.
Casting Blazing Storm will cause a crash because you attempt to index "caster" instead of "champion".
The dragons in the southeast section of level 13 will never shoot fireballs even after you put pyre stones in place, because you forgot to add connectors to any of the corresponding timers (flameTimer1, flameTimer2, flameTimer3, flameTimer4). This makes at least one secret impossible to get, I think.
It is impossible to get a 10 minute stay in the Aetherlands. You have the line "if item ~= nil and item.name == "aetherwrought_cloak" and item.name == "aetherwrought_charm" and item.name == "aetherwrought_shield" and item.name == "aetherwrought_sabre" then". For this statement to be true, the item's name would need to have four different values at once, which is not possible. I recommend that you review the
Lua manual if you are unclear on the meaning of the "and" and "==" operators.
Edit: The Sheoldred and Malkior crash still occurs as well. However, now I know what causes this crash. You are attempting to destroy a pressure plate in code triggered by that pressure plate - this causes an internal error as (I think) the game still needs the pressure plate to exist after its connectors finish executing. The solution is to use PressurePlate:setTriggeredByParty(false) instead of PressurePlate:destroy(). If you still want the pressure plate to be garbage collected, you can spawn a timer that deletes it or something like that.