diff --git a/LuaMenu/widgets/gui_modoptions_panel.lua b/LuaMenu/widgets/gui_modoptions_panel.lua index c28da8099..724535e8b 100644 --- a/LuaMenu/widgets/gui_modoptions_panel.lua +++ b/LuaMenu/widgets/gui_modoptions_panel.lua @@ -660,7 +660,20 @@ function ModoptionsPanel.LoadModoptions(gameName, newBattleLobby) return VFS.Include("modoptions.lua", nil, VFS.ZIP) end - modoptions = VFS.UseArchive(gameName, LoadModOptions) + do + local alreadyLoaded = false + for _, archive in pairs(VFS.GetLoadedArchives()) do + if archive == gameName then + alreadyLoaded = true + break + end + end + if alreadyLoaded then + modoptions = VFS.Include("modoptions.lua", nil, VFS.ZIP) + else + modoptions = VFS.UseArchive(gameName, LoadModOptions) + end + end modoptionDefaults = {} if not modoptions then