Something I threw together really quick, using the uiMapID of the Oribos top floor (because I happened to be standing next to a portal when I logged on) and fps of 45 and 60 (because I cannot dream of 144fps).
A simpler solution probably would just ask IsInInstance() and slow things a bit in all dungeons? Or, for that matter, why not just toggle the instance graphics settings in the control panel?
Lua Code:
local zonesToSlowDown =
{
[1671] = true, -- Orbios: Ring of Transference
}
local f = CreateFrame("Frame")
f:RegisterEvent("ZONE_CHANGED")
f:RegisterEvent("ZONE_CHANGED_INDOORS")
f:RegisterEvent("PLAYER_ENTERING_WORLD")
f:SetScript("OnEvent", function()
if (zonesToSlowDown[C_Map.GetBestMapForUnit("player") or 0]) then
C_CVar.SetCVar("maxFPS", 45)
else
C_CVar.SetCVar("maxFPS", 60)
end
end)