From 232f73365c49d1fac4b9998fcbf73928e3fe8390 Mon Sep 17 00:00:00 2001 From: tomlube Date: Thu, 14 May 2026 10:31:37 -0400 Subject: [PATCH 01/19] rebrand fix (#1290) --- src/dusk/ui/settings.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dusk/ui/settings.cpp b/src/dusk/ui/settings.cpp index c54b3784be..abadb2ed67 100644 --- a/src/dusk/ui/settings.cpp +++ b/src/dusk/ui/settings.cpp @@ -1301,7 +1301,7 @@ SettingsWindow::SettingsWindow(bool prelaunch) : mPrelaunch(prelaunch) { config_bool_select(leftPane, rightPane, getSettings().game.enableDiscordPresence, { .key = "Enable Discord Rich Presence", - .helpText = "Enable Dusk to integrate with Discord Rich Presence. This allows Discord to show your status in-game.", + .helpText = "Enable Dusklight to integrate with Discord Rich Presence. This allows Discord to show your status in-game.", .onChange = [](bool enabled) { if (enabled) { dusk::discord::initialize(); From 2bdc7b6c095efab653884dd45ade91580e454493 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFs?= <49660929+SailorSnoW@users.noreply.github.com> Date: Thu, 14 May 2026 21:05:54 +0200 Subject: [PATCH 02/19] use bit-stable lerp form in frame_interpolation (#1326) --- src/dusk/frame_interpolation.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/dusk/frame_interpolation.cpp b/src/dusk/frame_interpolation.cpp index 941c9ed318..ff54e3b463 100644 --- a/src/dusk/frame_interpolation.cpp +++ b/src/dusk/frame_interpolation.cpp @@ -66,19 +66,18 @@ void copy_view_to_snap(CameraSnapshot* dst, const view_class& v) { } inline void lerp_matrix(Mtx out, const Mtx lhs, const Mtx rhs, float step) { - const float old_weight = 1.0f - step; for (size_t row = 0; row < 3; ++row) { for (size_t col = 0; col < 4; ++col) { - out[row][col] = lhs[row][col] * old_weight + rhs[row][col] * step; + const float l = lhs[row][col]; + out[row][col] = l + (rhs[row][col] - l) * step; } } } inline void lerp_xyz(cXyz* out, const cXyz& lhs, const cXyz& rhs, float step) { - const float old_weight = 1.0f - step; - out->x = lhs.x * old_weight + rhs.x * step; - out->y = lhs.y * old_weight + rhs.y * step; - out->z = lhs.z * old_weight + rhs.z * step; + out->x = lhs.x + (rhs.x - lhs.x) * step; + out->y = lhs.y + (rhs.y - lhs.y) * step; + out->z = lhs.z + (rhs.z - lhs.z) * step; } static s16 lerp_bank(s16 a, s16 b, f32 t) { From 7967ee1f66e39a029f17f3548a9144bd7c947f24 Mon Sep 17 00:00:00 2001 From: MelonSpeedruns Date: Thu, 14 May 2026 16:42:39 -0400 Subject: [PATCH 03/19] Fix Autosaves resetting memory card during minigames (#1318) * Fix autosaves resetting memory card during minigames * Update description * remove unused include --------- Co-authored-by: MelonSpeedruns --- include/dusk/autosave.h | 1 + src/d/d_save.cpp | 5 ----- src/dusk/autosave.cpp | 18 ++++++++++++++++-- src/dusk/ui/settings.cpp | 3 +-- 4 files changed, 18 insertions(+), 9 deletions(-) diff --git a/include/dusk/autosave.h b/include/dusk/autosave.h index 6670a66830..c32cd1e22b 100644 --- a/include/dusk/autosave.h +++ b/include/dusk/autosave.h @@ -5,6 +5,7 @@ #include #include +#include void noAutoSave(); void triggerAutoSave(); diff --git a/src/d/d_save.cpp b/src/d/d_save.cpp index 8e4af75322..1869f2ceab 100644 --- a/src/d/d_save.cpp +++ b/src/d/d_save.cpp @@ -30,7 +30,6 @@ #if TARGET_PC #include "dusk/settings.h" #include -#include #endif static u8 dSv_item_rename(u8 i_itemNo) { @@ -349,10 +348,6 @@ void dSv_player_item_c::setItem(int i_slotNo, u8 i_itemNo) { dComIfGp_setSelectItem(i); } } - - #if TARGET_PC - triggerAutoSave(); - #endif } u8 dSv_player_item_c::getItem(int i_slotNo, bool i_checkCombo) const { diff --git a/src/dusk/autosave.cpp b/src/dusk/autosave.cpp index 13fc2929eb..57488a27a1 100644 --- a/src/dusk/autosave.cpp +++ b/src/dusk/autosave.cpp @@ -14,9 +14,23 @@ static AutoSaveFuncs AutoSaveFuncsProc[] = { void noAutoSave() {} +bool canAutoSave() { + daAlink_c* player = (daAlink_c*)daAlink_getAlinkActorClass(); + if (player == nullptr) { + return false; + } + + if (player->checkCargoCarry() || player->checkCanoeRide()) { + return false; + } + + return dusk::getSettings().game.autoSave && shouldAutoSave && mAutoSaveProc == 0 && + strcmp(dComIfGp_getStartStageName(), "F_SP102") != 0 && + strcmp(dComIfGp_getStartStageName(), "F_SP112") != 0; +} + void triggerAutoSave() { - if (dusk::getSettings().game.autoSave && shouldAutoSave && mAutoSaveProc == 0 && - strcmp(dComIfGp_getStartStageName(), "F_SP102") != 0) + if (canAutoSave()) { mAutoSaveProc = 1; } diff --git a/src/dusk/ui/settings.cpp b/src/dusk/ui/settings.cpp index abadb2ed67..34b7496df0 100644 --- a/src/dusk/ui/settings.cpp +++ b/src/dusk/ui/settings.cpp @@ -1068,8 +1068,7 @@ SettingsWindow::SettingsWindow(bool prelaunch) : mPrelaunch(prelaunch) { addOption("Faster Tears of Light", getSettings().game.fastTears, "Tears of Light dropped by Shadow Insects pop out faster like the HD version."); addSpeedrunDisabledOption("Autosave", getSettings().game.autoSave, - "Autosaves the game when going to a new area, opening a dungeon door, " - "or getting a new item."); + "Autosaves the game when going to a new area or opening a dungeon door."); addOption("Instant Saves", getSettings().game.instantSaves, "Skips the delay when writing to the Memory Card."); addOption("Hold B for Instant Text", getSettings().game.instantText, From 9c4f61678e9293f4e4ed17ab6c4b93332beafc08 Mon Sep 17 00:00:00 2001 From: tomlube Date: Thu, 14 May 2026 16:43:46 -0400 Subject: [PATCH 04/19] update instructions (#1329) better OS interoperability with iloader and imo much easier to set up too --- docs/ios-install-altstore.md | 44 +++++++++++++++++++----------------- 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/docs/ios-install-altstore.md b/docs/ios-install-altstore.md index 1eece215c0..c82bfec5c3 100644 --- a/docs/ios-install-altstore.md +++ b/docs/ios-install-altstore.md @@ -1,33 +1,40 @@ -# Installing Dusklight on iOS via AltStore +# Installing Dusklight on iOS via iloader ## Prerequisites -- Mac with Homebrew installed -- iPhone connected via USB +- A Windows, Linux, or macOS device +- iOS device connected to computer via USB - Dusklight IPA file (download the latest `Dusklight-vX.X.X-ios-arm64.ipa` from the [releases page](https://github.com/TwilitRealm/dusk/releases)) - Game disc - `GZ2E01` (Gamecube USA) or `GZ2PE01` (Gamecube PAL) ## 1. Install AltServer -```sh -brew install altserver -open -a AltServer -``` - -AltServer will appear in your menu bar. +- Executable bundles can be installed from [iloader's main page](https://iloader.app/) or [their GitHub](https://github.com/nab138/iloader) for Windows, Linux, and macOS. +- Windows WILL require iTunes to be installed +- Linux WILL require usbmuxd to be installed, this is installed by default in most distros though ## 2. Enable Developer Mode (iOS 16+) - On your iPhone, go to **Settings > Privacy & Security > Developer Mode** - Toggle it on and restart when prompted -## 3. Install AltStore on Your iPhone +## 3. Install Dusklight on Your iPhone -- Click AltServer in the menu bar -- Click **Install AltStore > [Your iPhone]** -- Enter your Apple ID credentials when prompted -- On your iPhone, go to **Settings > General > VPN & Device Management** -- Tap your Apple ID under "Developer App" and tap **Trust** +1. Sign into your Apple ID (this is required for registering app IDs, it is sent securely and not stored by iloader) + * You may be prompted to put in a code from your iOS device, do so +2. Plug in your iOS device via USB into your PC. If you're missing a dependency, an error pop-up will tell you to install it + * You will need to hit `Refresh` after plugging it in at this stage so that it can be detected, it does not automatically refresh +3. Leave settings unchanged (the Anisette server should stay Sidestore (.io)) + 3.(a) Installing SideStore directly is not required, but provides you a way to install Dusklight on your phone without being plugged into a computer later +4. Press `Import IPA` and choose your downloaded `Dusk-v.X.X.X-ios-arm64.ipa`, it will begin installing on your device + +**NOTE:** *At various stages, you may be prompted to trust your device, do so* + +## 3. Getting Dusk trusted +When installing sideloaded iOS applications, at first you will need to manually trust the app due to Apple's security policies +* Go to **Settings > General > VPN & Device Management** +* Tap the Apple ID you signed into iloader with under "Developer App" and tap **Trust** +* Tap **Allow** on the pop-up ## 4. Copy Files to Your iPhone @@ -38,9 +45,4 @@ Transfer the IPA and game disc to your iPhone so they're accessible in the Files - **USB transfer** - Connect your iPhone and drag files via Finder's sidebar - **Cloud storage** - Upload to Google Drive, Dropbox, etc. and download on your iPhone -## 5. Install via AltStore - -- Open **AltStore** on your iPhone -- Go to the **My Apps** tab -- Tap the **+** button (top left) -- Open the **Files** app and select the `.ipa` file \ No newline at end of file +You may now use Dusklight on iOS, iPadOS! \ No newline at end of file From a923aa24e1775e3f6221448320a2ce56ae2e3ae4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFs?= <49660929+SailorSnoW@users.noreply.github.com> Date: Thu, 14 May 2026 22:45:27 +0200 Subject: [PATCH 05/19] Fix Rollgoal completion reward to scale with Bigger Wallets (#1296) --- src/d/actor/d_a_npc_henna.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/d/actor/d_a_npc_henna.cpp b/src/d/actor/d_a_npc_henna.cpp index 339d5ee82c..40dd9b3091 100644 --- a/src/d/actor/d_a_npc_henna.cpp +++ b/src/d/actor/d_a_npc_henna.cpp @@ -1967,7 +1967,11 @@ static void demo_camera_shop(npc_henna_class* i_this) { i_this->mMsgFlow.init(actor, 0x365, 0, NULL); /* dSv_event_flag_c::KORO2_ALLCLEAR - Fishing - After all stages (8-8) of roll goal game cleared */ dComIfGs_onEventBit(dSv_event_flag_c::saveBitLabels[0x335]); +#if TARGET_PC + dComIfGp_setItemRupeeCount(dComIfGs_getRupeeMax()); +#else dComIfGp_setItemRupeeCount(1000); +#endif } else if ((lbl_82_bss_91 & 0x38) == 0) { i_this->mMsgFlow.init(actor, 0x34f, 0, NULL); /* dSv_event_flag_c::F_0469 - Fishing Pond - Reserved for fishing */ From 1e10d9593645fbe18c721ed876c23dc00dd2b16f Mon Sep 17 00:00:00 2001 From: Irastris Date: Thu, 14 May 2026 16:53:34 -0400 Subject: [PATCH 06/19] Disable scrolling the name cursor (#1243) --- src/d/d_name.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/d/d_name.cpp b/src/d/d_name.cpp index 1f3ccbb1d7..e4b4b91b00 100644 --- a/src/d/d_name.cpp +++ b/src/d/d_name.cpp @@ -295,6 +295,7 @@ void dName_c::_move() { } } else { #endif +#if !TARGET_PC if (mDoCPd_c::getTrigRight(PAD_1)) { // BUG: this check only fails if the cursor is at exactly 7 // setMoji allows the cursor to reach 8, which is out of bounds here @@ -311,7 +312,9 @@ void dName_c::_move() { mCurPos--; nameCursorMove(); } - } else if (mDoCPd_c::getTrigB(PAD_1)) { + } else +#endif + if (mDoCPd_c::getTrigB(PAD_1)) { if (mCurPos == 0) { mDoAud_seStart(Z2SE_SY_MENU_BACK, 0, 0, 0); field_0x2ac = mSelProc; From 3520bb746cb62a8764d7be58c22cb679ce5e5e42 Mon Sep 17 00:00:00 2001 From: qwertyquerty Date: Thu, 14 May 2026 13:56:15 -0700 Subject: [PATCH 07/19] better completionist achievement requirements for skybook (#1258) --- src/dusk/achievements.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/dusk/achievements.cpp b/src/dusk/achievements.cpp index def7cd97ad..a8e4ff3916 100644 --- a/src/dusk/achievements.cpp +++ b/src/dusk/achievements.cpp @@ -191,13 +191,17 @@ std::vector AchievementSystem::makeEntries() { } bool hasJewelRod = false; - for (int slot = 0; slot < 24 && !hasJewelRod; ++slot) { + bool hasAncientDoc = false; + for (int slot = 0; slot < 24; ++slot) { const u8 item = dComIfGs_getItem(slot, false); if (item == dItemNo_JEWEL_ROD_e || item == dItemNo_JEWEL_BEE_ROD_e || item == dItemNo_JEWEL_WORM_ROD_e) { hasJewelRod = true; } + if (item == dItemNo_ANCIENT_DOCUMENT_e || item == dItemNo_ANCIENT_DOCUMENT2_e || item == dItemNo_AIR_LETTER_e) { + hasAncientDoc = true; + } } - if (!hasJewelRod) { + if (!hasJewelRod || !hasAncientDoc) { return; } @@ -212,7 +216,6 @@ std::vector AchievementSystem::makeEntries() { dItemNo_KANTERA_e, dItemNo_PACHINKO_e, dItemNo_HAWK_EYE_e, - dItemNo_ANCIENT_DOCUMENT_e, dItemNo_HORSE_FLUTE_e, }; for (u8 required : requiredWheelItems) { From e52d9e9b7156887ff8291805654a65231e85d6f9 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Thu, 14 May 2026 17:06:30 -0600 Subject: [PATCH 08/19] Fix mDoLib_project with safe area --- src/m_Do/m_Do_lib.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/m_Do/m_Do_lib.cpp b/src/m_Do/m_Do_lib.cpp index 921681d464..3a32c4c342 100644 --- a/src/m_Do/m_Do_lib.cpp +++ b/src/m_Do/m_Do_lib.cpp @@ -96,8 +96,8 @@ void mDoLib_project(Vec* src, Vec* dst) { xSize = FB_WIDTH; } else { #if TARGET_PC - xOffset = mDoGph_gInf_c::getSafeMinXF(); - xSize = viewPort->width * mDoGph_gInf_c::hudAspectScaleUp; + xOffset = mDoGph_gInf_c::getMinXF(); + xSize = mDoGph_gInf_c::getWidthF(); #else xOffset = viewPort->x_orig; xSize = viewPort->width; From 5064385c8c636e42a7650fdfebf186380e8a7caa Mon Sep 17 00:00:00 2001 From: Irastris Date: Thu, 14 May 2026 21:12:36 -0400 Subject: [PATCH 09/19] Add styling for tags (#1349) --- res/rml/window.rcss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/res/rml/window.rcss b/res/rml/window.rcss index 99b3753d68..ab338e97c7 100644 --- a/res/rml/window.rcss +++ b/res/rml/window.rcss @@ -14,6 +14,10 @@ body { color: #E0DBC8; } +b { + font-weight: bold; +} + window { display: flex; flex-flow: column; From 025a425884cb6e9ba8b3f2d85bb465c6973aad66 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Thu, 14 May 2026 22:54:55 -0600 Subject: [PATCH 10/19] Use -fsigned-char on ARM --- CMakeLists.txt | 6 ++++++ extern/aurora | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c6b4840a85..cf69a8e2ac 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -276,6 +276,12 @@ if (DUSK_ENABLE_SENTRY_NATIVE) endif () endif () +# Use signed char on ARM to match the original game (and x86) +string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" _arch) +if(_arch MATCHES "^(arm|aarch64)" AND CMAKE_CXX_COMPILER_FRONTEND_VARIANT STREQUAL "GNU") + add_compile_options(-fsigned-char) +endif() + if (CMAKE_SYSTEM_NAME STREQUAL Windows) set(PLATFORM_NAME win32) elseif (CMAKE_SYSTEM_NAME STREQUAL Darwin) diff --git a/extern/aurora b/extern/aurora index 3643a369ad..c50f5cda92 160000 --- a/extern/aurora +++ b/extern/aurora @@ -1 +1 @@ -Subproject commit 3643a369ad47d8acca8d73dba462eab2ee2bd150 +Subproject commit c50f5cda92b3db2a9260bfc3227fdb8cd21990f3 From 6a27fa23c88224ca7cef4b3d34abc1b84425ae86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFs?= <49660929+SailorSnoW@users.noreply.github.com> Date: Fri, 15 May 2026 06:56:28 +0200 Subject: [PATCH 11/19] Fix game mode on MacOS <26 (#1362) --- platforms/macos/Info.plist.in | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/platforms/macos/Info.plist.in b/platforms/macos/Info.plist.in index 46c9641c17..7f29358033 100644 --- a/platforms/macos/Info.plist.in +++ b/platforms/macos/Info.plist.in @@ -28,7 +28,9 @@ ${MACOSX_BUNDLE_SHORT_VERSION_STRING} NSHighResolutionCapable + LSApplicationCategoryType + public.app-category.adventure-games LSSupportsGameMode - + From 53abb8b96d34560774fcf40aa99d7c629a275443 Mon Sep 17 00:00:00 2001 From: Pieter-Jan Briers Date: Fri, 15 May 2026 07:03:42 +0200 Subject: [PATCH 12/19] Use safe string copies in d_save.cpp (#1232) * Use safe string copies in d_save.cpp Seeing sentry crashes here that I suspect involve buffer overflows here. --- src/d/d_save.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/d/d_save.cpp b/src/d/d_save.cpp index 1869f2ceab..fc1cbc4efe 100644 --- a/src/d/d_save.cpp +++ b/src/d/d_save.cpp @@ -30,6 +30,9 @@ #if TARGET_PC #include "dusk/settings.h" #include + +#include "dusk/string.hpp" +#define strcpy dusk::SafeStringCopy #endif static u8 dSv_item_rename(u8 i_itemNo) { From f02c7bd1accf4941f5e692d869fd12ec045820bc Mon Sep 17 00:00:00 2001 From: tomlube Date: Fri, 15 May 2026 01:04:13 -0400 Subject: [PATCH 13/19] modify gx init fail text (#1332) --- src/dusk/imgui/ImGuiConsole.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/dusk/imgui/ImGuiConsole.cpp b/src/dusk/imgui/ImGuiConsole.cpp index b1349ac385..31ac9ab40d 100644 --- a/src/dusk/imgui/ImGuiConsole.cpp +++ b/src/dusk/imgui/ImGuiConsole.cpp @@ -322,8 +322,8 @@ namespace dusk { } ImGui::PushFont(ImGuiEngine::fontLarge); ImGuiTextCenter("Failed to initialize any graphics backend."); - ImGuiTextCenter("\nYour system may be misconfigured, or your hardware may not support the required versions of any of the available backends."); - ImGuiTextCenter("\nA clean reinstall of Dusklight may help. For further assistance, please visit #tech-support on the Twilit Realm Discord server."); + ImGuiTextCenter("\nDusklight requires Vulkan 1.1+, or Direct X 12.0."); + ImGuiTextCenter("\nTry updating your Operating System and GPU drivers."); const auto& style = ImGui::GetStyle(); const auto retrySize = ImGui::CalcTextSize("Retry (Auto backend)"); const auto quitSize = ImGui::CalcTextSize("Quit"); From cf89da811a6ebeb697401098a97a2e23b2540c93 Mon Sep 17 00:00:00 2001 From: Pieter-Jan Briers Date: Fri, 15 May 2026 07:04:36 +0200 Subject: [PATCH 14/19] Fix fast tears going out of bounds (#1337) Incorrect decomp from TPHD making the tears think you're always in the Zora River ride Fixes https://github.com/TwilitRealm/dusklight/issues/1047 --- src/d/actor/d_a_obj_drop.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/d/actor/d_a_obj_drop.cpp b/src/d/actor/d_a_obj_drop.cpp index 18d27840f7..62f3bf9f17 100644 --- a/src/d/actor/d_a_obj_drop.cpp +++ b/src/d/actor/d_a_obj_drop.cpp @@ -299,7 +299,8 @@ int daObjDrop_c::modeParentWait() { #if TARGET_PC static inline BOOL checkGetCargoRide() { - if ((daPy_getPlayerActorClass()->checkCargoCarry() && strcmp(dComIfGp_getStartStageName(), "F_SP112") == 0) || + if (daPy_getPlayerActorClass()->checkCargoCarry() && + strcmp(dComIfGp_getStartStageName(), "F_SP112") == 0 && dComIfGs_isLightDropGetFlag(dComIfGp_getStartStageDarkArea())) { return true; From 26be454999e83d8876171efd6c61cd58de7b54b1 Mon Sep 17 00:00:00 2001 From: matthewdavidrichardanderson Date: Fri, 15 May 2026 07:05:08 +0200 Subject: [PATCH 15/19] soft reset hotkey on release (#1358) Co-authored-by: matthewdavidrichardanderson --- src/dusk/imgui/ImGuiConsole.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/dusk/imgui/ImGuiConsole.cpp b/src/dusk/imgui/ImGuiConsole.cpp index 31ac9ab40d..077b4c15bc 100644 --- a/src/dusk/imgui/ImGuiConsole.cpp +++ b/src/dusk/imgui/ImGuiConsole.cpp @@ -263,7 +263,7 @@ namespace dusk { } if (getSettings().game.enableResetKeybind && ImGui::GetIO().KeyCtrl && - ImGui::IsKeyPressed(ImGuiKey_R) && !fpcM_SearchByName(fpcNm_LOGO_SCENE_e)) + ImGui::IsKeyReleased(ImGuiKey_R) && !fpcM_SearchByName(fpcNm_LOGO_SCENE_e)) { JUTGamePad::C3ButtonReset::sResetSwitchPushing = true; } From 424d1d7b71a561cd044c1cd543a2687592e9e3e5 Mon Sep 17 00:00:00 2001 From: Miguel Date: Thu, 14 May 2026 22:10:09 -0700 Subject: [PATCH 16/19] Fixed Debug target not compiling (#1157) * Update f_op_actor_mng.h * Update f_op_actor_mng.h --- include/f_op/f_op_actor_mng.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/f_op/f_op_actor_mng.h b/include/f_op/f_op_actor_mng.h index 5b11f0e57a..76a9f8517c 100644 --- a/include/f_op/f_op_actor_mng.h +++ b/include/f_op/f_op_actor_mng.h @@ -108,7 +108,7 @@ struct fopAcM_search_prm { struct fOpAcm_HIO_entry_c : public mDoHIO_entry_c { virtual ~fOpAcm_HIO_entry_c() {} - #if DEBUG + #if DEBUG && !TARGET_PC void removeHIO(const fopAc_ac_c* i_this) { removeHIO(*i_this); } void removeHIO(const fopAc_ac_c& i_this) { removeHIO(i_this.base); } void removeHIO(const fopEn_enemy_c& i_this) { removeHIO(i_this.base); } From 10e218169237bfb1c3ed25feaeaf4e6370502881 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFs?= <49660929+SailorSnoW@users.noreply.github.com> Date: Fri, 15 May 2026 07:17:17 +0200 Subject: [PATCH 17/19] Fix file select softlock when resetting during save (#1293) --- src/d/d_com_inf_game.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/d/d_com_inf_game.cpp b/src/d/d_com_inf_game.cpp index aa5b5659e9..7e17cb501e 100644 --- a/src/d/d_com_inf_game.cpp +++ b/src/d/d_com_inf_game.cpp @@ -19,6 +19,7 @@ #include "d/d_timer.h" #include "f_op/f_op_msg_mng.h" #include "f_op/f_op_scene_mng.h" +#include "m_Do/m_Do_MemCard.h" #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" @@ -1238,6 +1239,13 @@ BOOL dComIfG_resetToOpening(scene_class* i_scene) { } #endif + #ifdef TARGET_PC + if (!mDoMemCd_isCardCommNone()) { + return 0; + } + g_mDoMemCd_control.SaveSync(); + #endif + dComIfG_changeOpeningScene(i_scene, fpcNm_OPENING_SCENE_e); mDoAud_bgmStop(30); mDoAud_resetProcess(); From 1ce1003e1a62a281185c16e7ee384a7ededb8889 Mon Sep 17 00:00:00 2001 From: SuperDude88 <82904174+SuperDude88@users.noreply.github.com> Date: Fri, 15 May 2026 01:21:01 -0400 Subject: [PATCH 18/19] Bold Back Button Name in Popup (#1376) * Bold Back Button Name Makes it stand out more, especially when the back button is called something else that's just a common word * Just b --------- Co-authored-by: Luke Street --- res/rml/overlay.rcss | 4 ++++ src/dusk/ui/overlay.cpp | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/res/rml/overlay.rcss b/res/rml/overlay.rcss index 20e084665b..8927e1a01c 100644 --- a/res/rml/overlay.rcss +++ b/res/rml/overlay.rcss @@ -58,6 +58,10 @@ toast:active { background-color: rgba(45, 43, 26, 80%); }*/ +b { + font-weight: bold; +} + toast heading { display: flex; gap: 18dp; diff --git a/src/dusk/ui/overlay.cpp b/src/dusk/ui/overlay.cpp index c9b2b8614d..2ec47e6215 100644 --- a/src/dusk/ui/overlay.cpp +++ b/src/dusk/ui/overlay.cpp @@ -147,7 +147,7 @@ Rml::String back_button_name() { #if defined(TARGET_ANDROID) || (defined(__APPLE__) && TARGET_OS_IOS && !TARGET_OS_MACCATALYST) constexpr auto kMenuNotificationPrefix = "3-finger tap or"; #else -constexpr auto kMenuNotificationPrefix = "Press F1 or"; +constexpr auto kMenuNotificationPrefix = "Press F1 or"; #endif Rml::Element* create_menu_notification(Rml::Element* parent) { @@ -169,7 +169,7 @@ Rml::Element* create_menu_notification(Rml::Element* parent) { append(row, "span")->SetInnerRML(kMenuNotificationPrefix); auto* icon = append(row, "icon"); icon->SetClass("controller", true); - append(row, "span")->SetInnerRML(escape(padButton)); + append(row, "span")->SetInnerRML("" + escape(padButton) + ""); append(row, "span")->SetInnerRML("to open menu"); return elem; From af8300a77c7aee7e9b433e92432938a6b1fc8a29 Mon Sep 17 00:00:00 2001 From: Luke Street Date: Thu, 14 May 2026 23:22:08 -0600 Subject: [PATCH 19/19] Update aurora --- extern/aurora | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/aurora b/extern/aurora index c50f5cda92..40913d532e 160000 --- a/extern/aurora +++ b/extern/aurora @@ -1 +1 @@ -Subproject commit c50f5cda92b3db2a9260bfc3227fdb8cd21990f3 +Subproject commit 40913d532e5859a68e56b88d8aaec6bff1b88a2e