I workarounded that by recalling the same function 50ms later if GetMapFilterType() == 0 in two places but I don't really understand what is really going on:
Lua Code:
local function ZoneCheck()
if GetMapFilterType() == 0 then zo_callLater(ZoneCheck,50) return end
Lua Code:
function FyrMM.SetMapToPlayerLocation(stealth)
local changed = false
if not Stealth then
if Fyr_MM:IsHidden() then return end
end
if GetMapFilterType() == 0 and (FyrMM.SV.WorldMapRefresh or stealth) then zo_callLater(FyrMM.SetMapToPlayerLocation,50) return end
Something is apparently going on during loadscreens, some controls had SetHorizontalScroll() and SetVerticalScroll() to be set again at some point in the code in order to be displayed on screen after a loadscreen like if they were set to nil during the load screen.