From 385a53db559457fc795350851bd3a42b17364da5 Mon Sep 17 00:00:00 2001 From: vaisest <4550061+vaisest@users.noreply.github.com> Date: Thu, 18 Jun 2026 21:47:35 +0300 Subject: [PATCH 1/2] Add option to return to build selection when crashing --- src/Launch.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Launch.lua b/src/Launch.lua index 2d5305cd5c..6223952490 100644 --- a/src/Launch.lua +++ b/src/Launch.lua @@ -357,6 +357,9 @@ function launch:ShowPrompt(r, g, b, str, func) self.promptFunc = func or function(key) if key == "RETURN" or key == "ESCAPE" then return true + elseif key == "F4" then + self.main:SetMode("LIST") + return true elseif key == "c" and IsKeyDown("CTRL") then local cleanStr = str:gsub("%^%d", "") Copy(cleanStr) @@ -372,7 +375,7 @@ function launch:ShowErrMsg(fmt, ...) local version = self.versionNumber and "^8v"..self.versionNumber..(self.versionBranch and " "..self.versionBranch or "") or "" - self:ShowPrompt(1, 0, 0, "^1Error:\n\n^0"..string.format(fmt, ...).."\n"..version.."\n^0Press Enter/Escape to dismiss, or F5 to restart the application.\nPress CTRL + C to copy error text.") + self:ShowPrompt(1, 0, 0, "^1Error:\n\n^0"..string.format(fmt, ...).."\n"..version.."\n^0Press Enter/Escape to dismiss, F4 to return to build selection, or F5 to restart the application.\nPress CTRL + C to copy error text.") end end From 9821da48d89ab0e2b8c020f0b04a556c47e3aac8 Mon Sep 17 00:00:00 2001 From: LocalIdentity Date: Sat, 27 Jun 2026 00:49:35 +1000 Subject: [PATCH 2/2] Fix for when a crash occurs in a popup When a crash happened in a popup, it would not clear the popup on pressing f4 so would still be stuck in a crash loop e.g. Crash in the item set manager popup UI We now clear the popup events and input events just incase --- src/Launch.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/Launch.lua b/src/Launch.lua index 6223952490..a0f9d64761 100644 --- a/src/Launch.lua +++ b/src/Launch.lua @@ -358,7 +358,11 @@ function launch:ShowPrompt(r, g, b, str, func) if key == "RETURN" or key == "ESCAPE" then return true elseif key == "F4" then - self.main:SetMode("LIST") + if self.main then + self.main.popups = { } + self.main.inputEvents = { } + self.main:SetMode("LIST") + end return true elseif key == "c" and IsKeyDown("CTRL") then local cleanStr = str:gsub("%^%d", "")