From 1d7dd064febd679f83745c3181de3175ad32a714 Mon Sep 17 00:00:00 2001 From: Raf Date: Thu, 29 May 2025 15:31:19 -0300 Subject: [PATCH 1/5] port-mp-setups: a bunch of bug fixes - only load the MP setup file when loading the agent, instead of when entering CS - "clear default" was cause the game setup to become invalid upon re-entering it - all challenges were showing the same text --- port/src/mpsetups.c | 2 +- src/game/filemgr.c | 5 +++++ src/game/mplayer/setup.c | 4 ---- src/include/types.h | 6 ++++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/port/src/mpsetups.c b/port/src/mpsetups.c index 2c308fb9c..4fb6dfe97 100644 --- a/port/src/mpsetups.c +++ b/port/src/mpsetups.c @@ -809,7 +809,7 @@ static MenuItemHandlerResult menuhandlerSetupSetDefault(s32 operation, struct me s32 selected = g_Menus[g_MpPlayerNum].mpsetup.slotindex; // clicked on "clear default" if (selected == g_MpSetupFile.defaultsetup - 1) { - g_MpSetupFile.defaultsetup = -1; + g_MpSetupFile.defaultsetup = 0; strcpy(g_LabelSetDefault, "Set Default\n"); } else { g_MpSetupFile.defaultsetup = selected + 1; diff --git a/src/game/filemgr.c b/src/game/filemgr.c index 45b85efae..3bd98b5b5 100644 --- a/src/game/filemgr.c +++ b/src/game/filemgr.c @@ -19,6 +19,7 @@ #include "lib/str.h" #include "data.h" #include "types.h" +#include "mpsetups.h" // bss struct fileguid g_FilemgrFileToCopy; @@ -2732,6 +2733,10 @@ MenuItemHandlerResult filemgrChooseAgentListMenuHandler(s32 operation, struct me g_GameFileGuid.fileid = file->fileid; g_GameFileGuid.deviceserial = file->deviceserial; filemgrSaveOrLoad(&g_GameFileGuid, FILEOP_LOAD_GAME, 0); + + // load the setup file when entering the Combat Simulator + mpsetupCopyAllFromPak(); + mpsetupLoadCurrentFile(); } } break; diff --git a/src/game/mplayer/setup.c b/src/game/mplayer/setup.c index 8e7eefe61..1a442c8de 100644 --- a/src/game/mplayer/setup.c +++ b/src/game/mplayer/setup.c @@ -5394,10 +5394,6 @@ MenuDialogHandlerResult menudialogCombatSimulator(s32 operation, struct menudial g_Vars.waitingtojoin[1] = false; g_Vars.waitingtojoin[2] = false; g_Vars.waitingtojoin[3] = false; - - // load the setup file when entering the Combat Simulator - mpsetupCopyAllFromPak(); - mpsetupLoadCurrentFile(); } if (g_Menus[g_MpPlayerNum].curdialog diff --git a/src/include/types.h b/src/include/types.h index 5f8791717..8ed1a2725 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3776,8 +3776,10 @@ struct menudata_main { struct menudata_mpsetup { u32 slotindex; u32 slotcount; - u8 showpresets; u32 unke24; + u32 unke28; + u32 unke2c; + u8 showpresets; }; struct menudata_mppause { @@ -3990,9 +3992,9 @@ struct menu { struct menudata_filemgr fm; struct menudata_main4mb main4mb; struct menudata_training training; + struct menudata_mpsetup mpsetup; }; - struct menudata_mpsetup mpsetup; }; struct gamefile { From 20bd9ddcbbb3d61368906b361a184338fae25875 Mon Sep 17 00:00:00 2001 From: Raf Date: Thu, 29 May 2025 15:31:19 -0300 Subject: [PATCH 2/5] port-mp-setups: a bunch of bug fixes - only load the MP setup file when loading the agent, instead of when entering CS - "clear default" was cause the game setup to become invalid upon re-entering it - all challenges were showing the same text --- port/src/mpsetups.c | 2 +- src/game/filemgr.c | 5 +++++ src/game/mplayer/setup.c | 4 ---- src/include/types.h | 6 ++++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/port/src/mpsetups.c b/port/src/mpsetups.c index 2c308fb9c..4fb6dfe97 100644 --- a/port/src/mpsetups.c +++ b/port/src/mpsetups.c @@ -809,7 +809,7 @@ static MenuItemHandlerResult menuhandlerSetupSetDefault(s32 operation, struct me s32 selected = g_Menus[g_MpPlayerNum].mpsetup.slotindex; // clicked on "clear default" if (selected == g_MpSetupFile.defaultsetup - 1) { - g_MpSetupFile.defaultsetup = -1; + g_MpSetupFile.defaultsetup = 0; strcpy(g_LabelSetDefault, "Set Default\n"); } else { g_MpSetupFile.defaultsetup = selected + 1; diff --git a/src/game/filemgr.c b/src/game/filemgr.c index 45b85efae..a817e7606 100644 --- a/src/game/filemgr.c +++ b/src/game/filemgr.c @@ -19,6 +19,7 @@ #include "lib/str.h" #include "data.h" #include "types.h" +#include "mpsetups.h" // bss struct fileguid g_FilemgrFileToCopy; @@ -2732,6 +2733,10 @@ MenuItemHandlerResult filemgrChooseAgentListMenuHandler(s32 operation, struct me g_GameFileGuid.fileid = file->fileid; g_GameFileGuid.deviceserial = file->deviceserial; filemgrSaveOrLoad(&g_GameFileGuid, FILEOP_LOAD_GAME, 0); + + // load the setup file when loading the agent + mpsetupCopyAllFromPak(); + mpsetupLoadCurrentFile(); } } break; diff --git a/src/game/mplayer/setup.c b/src/game/mplayer/setup.c index 8e7eefe61..1a442c8de 100644 --- a/src/game/mplayer/setup.c +++ b/src/game/mplayer/setup.c @@ -5394,10 +5394,6 @@ MenuDialogHandlerResult menudialogCombatSimulator(s32 operation, struct menudial g_Vars.waitingtojoin[1] = false; g_Vars.waitingtojoin[2] = false; g_Vars.waitingtojoin[3] = false; - - // load the setup file when entering the Combat Simulator - mpsetupCopyAllFromPak(); - mpsetupLoadCurrentFile(); } if (g_Menus[g_MpPlayerNum].curdialog diff --git a/src/include/types.h b/src/include/types.h index 5f8791717..8ed1a2725 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3776,8 +3776,10 @@ struct menudata_main { struct menudata_mpsetup { u32 slotindex; u32 slotcount; - u8 showpresets; u32 unke24; + u32 unke28; + u32 unke2c; + u8 showpresets; }; struct menudata_mppause { @@ -3990,9 +3992,9 @@ struct menu { struct menudata_filemgr fm; struct menudata_main4mb main4mb; struct menudata_training training; + struct menudata_mpsetup mpsetup; }; - struct menudata_mpsetup mpsetup; }; struct gamefile { From 8891bbf7ec59e1a64d73ff8767e88aee23d0fd0e Mon Sep 17 00:00:00 2001 From: Raf Date: Thu, 29 May 2025 16:05:25 -0300 Subject: [PATCH 3/5] port-mp-setups: spaces -> tabs --- src/include/types.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/include/types.h b/src/include/types.h index 8ed1a2725..5dbe003e5 100644 --- a/src/include/types.h +++ b/src/include/types.h @@ -3779,7 +3779,7 @@ struct menudata_mpsetup { u32 unke24; u32 unke28; u32 unke2c; - u8 showpresets; + u8 showpresets; }; struct menudata_mppause { @@ -3992,7 +3992,7 @@ struct menu { struct menudata_filemgr fm; struct menudata_main4mb main4mb; struct menudata_training training; - struct menudata_mpsetup mpsetup; + struct menudata_mpsetup mpsetup; }; }; From 5a90152991eb2a124d61cbf20b4b4ed6d53091cf Mon Sep 17 00:00:00 2001 From: Raf Date: Thu, 29 May 2025 16:08:09 -0300 Subject: [PATCH 4/5] port-mp-setups: spaces -> tabs (2) --- src/game/filemgr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/game/filemgr.c b/src/game/filemgr.c index a817e7606..5a4893c5f 100644 --- a/src/game/filemgr.c +++ b/src/game/filemgr.c @@ -2735,8 +2735,8 @@ MenuItemHandlerResult filemgrChooseAgentListMenuHandler(s32 operation, struct me filemgrSaveOrLoad(&g_GameFileGuid, FILEOP_LOAD_GAME, 0); // load the setup file when loading the agent - mpsetupCopyAllFromPak(); - mpsetupLoadCurrentFile(); + mpsetupCopyAllFromPak(); + mpsetupLoadCurrentFile(); } } break; From 5a3d45de6595b0abe0d37d0c2b48f9556962e446 Mon Sep 17 00:00:00 2001 From: Raf Date: Thu, 29 May 2025 16:08:41 -0300 Subject: [PATCH 5/5] port-mp-setups: spaces -> tabs (2) --- src/game/filemgr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/game/filemgr.c b/src/game/filemgr.c index 5a4893c5f..ef1592400 100644 --- a/src/game/filemgr.c +++ b/src/game/filemgr.c @@ -2734,7 +2734,7 @@ MenuItemHandlerResult filemgrChooseAgentListMenuHandler(s32 operation, struct me g_GameFileGuid.deviceserial = file->deviceserial; filemgrSaveOrLoad(&g_GameFileGuid, FILEOP_LOAD_GAME, 0); - // load the setup file when loading the agent + // load the setup file when loading the agent mpsetupCopyAllFromPak(); mpsetupLoadCurrentFile(); }