local location loc = GetUnitLoc(unit)
local real groundZ = GetLocationZ(loc)
local real maxZ = 300
call SetUnitFlyHeight(unit,maxZ-groundZ,0)
call RemoveLocation(loc)
set loc = null
It's not aviable in GUI, because it may cause desync. But if you use it just to set unit fly height, it won't necesarrily split the game.
// This function is asynchronous. The values it returns are not guaranteed synchronous between each player.
// If you attempt to use it in a synchronous manner, it may cause a desync.
native GetLocationZ takes location whichLocation returns real
Not throught, but they walk over it.... But I found the solution
@ Need_O2 and others,
GetLocationZ desyncs all players with low quality graphics settings, since terrain deformations are not displayed for them. So the terrain deformations when say, someone casts stomp, aren't the same for each player.