I'll step in for a moment to clarify some things to the userbase:
This is a bugfix, that was absolutely mandatory. In 2.50, somehow a set of bad maths slipped into the assembly code, which read the map offsets improperly. The result of this, is that SetComboSolid() was able to write to illegal map locations.
Because most locations were legal, many uses of this function 'worked', but the resulting values were such that some inputs to SetComboSolid() would crash ZC.
This change corrects the offsets, but as a result, scripts that use the old values will need to be adjusted under the following conditions:
- A quest using them, is recompiled, and saved in a new ZC version.
- You create a quest in a new ZC version, that uses old scripts using SetComboSolid().
Note that this is not a disaster, and the damage should be minimal:
- It does not affect any old quests in the database.
- it does not affect new quests made in a new version of ZC, if the user properly sets the values.
- It could affect headers, that call SetComboSolid(), or old scripts that you wish to compile in the new ZC versions. If any script calls SetComboSolid(), you will need to verify its values. Quests saved in 2.50.x will run properly, and new scripts should not have problems.
We plan to update the parser for future ZC versions to store information, including the ZScript version associated with scripts, so that it is easier to mend things like this in the future, with less potential damage.
Please note that this was not our first solution, but it was the inevitable solution, as all others had failing points, and the implications of these, were far worse than requiring the user to check script values when making a new quest with old scripts, or updating/recompiling in a new version.
We encourage anyone who has made a script, or a header, that depends on SetComboSolid() to update any public instance of that script, or header, when the next ZC version is available. You may check the results of the revised SetComboSolid() values in 2.50.3RC1, or [2.future] 2.54 (beta 40, or later).
Again, our apologies for this issue.
Edited by ZoriaRPG, 20 January 2017 - 12:56 PM.