Quote Originally Posted by DarkDragon View Post
I do not know the details about this issue. My preferences, in descending order, are (i) restore 2.50.2 behavior and drop whatever was incorrectly changed in 2.50.3 completely. If this breaks 2.50.3 quests in a non-moot way (somebody's work will actually be affected by the rollback), add compatibility logic to master so that 2.50.3 quests will play correctly on master. (ii) carefully add logic to both 2.50.x and master that preserves behavior of 2.50.3 quests while fixing the 2.50.2 compatibility bug.
In 2.50.1 and before, when switching drawing targets between the screen and an offscreen bitmap, the subscreen offset wouldn't always be set properly, so drawing would sometimes incorrectly be shifted by 56 pixels. 2.50.2 fixed that without keeping it for old quests; 2.50.3 does restore it in old quests.
That's currently handled by a bit set at the end of readrules() (in 2.50.x, it's set at qst.cpp:2549 and read at script_drawing.cpp:2159). It's based entirely on the version and build; there's no quest rule or anything else saved with the quest file. Quests made in 2.50.3 will function the same in 2.50.2 in this regard.