You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Moving a unit outside the map's bounds using SetUnitX/Y will STILL crash the game. But I did not want to use a wrapper for SetUnitX/Y that does the bounds checking, an extra function call seems like killing the whole purpose of using SetUnitX/Y... Adding this library to your map (just adding it) [...]
Post 5:
Really, been testing:
Left/Right/Top edges do not crash.
Bottom edge crashes: However it doesn't crash at the instant you call SetUnitY, it crashes when the frame is rendered (apparently, could be another thing besides rendering...) so, yep this library really prevents crashes.
There is another thing with edges, regardless of the crash we knew about for so long, if you issue an order to a unit too far from the edges, the game will freeze, yep BoundSentinel prevents that as well.
Under normal circumstances SetUnitX, IssuePointOrder will no longer crash. Units will be legit outside the map and not interact normally but it doesn't crash anymore. The below snippet is an extreme case and still does crash.
oob=CreateUnit(Player(0), FourCC("hfoo"), -30, 0, 90)
-- Either will crash the game within 1-2 seconds, 1.36.2.21230-- math.mininteger, math.maxintegerSetUnitX(oob, math.mininteger)
SetUnitY(oob, math.mininteger)
Idk how I would need to proceed. It'd be too much hassle to test all by hand so I'm short of writing like a fuzzer. Not exactly but even writing down all functions in a list by hand is tedious work. Then its either automation or nothing.
https://web.archive.org/web/20140213050502/http://www.wc3c.net/showthread.php?t=102576
Post 5:
Pages 2 and 3 were not archived.
Maybe no longer crashes on Reforged.
The text was updated successfully, but these errors were encountered: