From 8c19f107d22c77969b2b05b5a60cc3767c8a1094 Mon Sep 17 00:00:00 2001 From: rockerbacon Date: Sun, 12 May 2024 12:52:06 -0300 Subject: [PATCH 1/4] wait on input before closing redirector debug terminal --- steam-redirector/Makefile | 2 +- steam-redirector/main.c | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/steam-redirector/Makefile b/steam-redirector/Makefile index 54d8eb5..c0116b3 100644 --- a/steam-redirector/Makefile +++ b/steam-redirector/Makefile @@ -15,4 +15,4 @@ main.exe: $(WIN_SRC) $(WIN_C) $(WIN_FLAGS) -mwindows -o main.exe $^ main_debug.exe: $(WIN_SRC) - $(WIN_C) $(WIN_FLAGS) -o main_debug.exe $^ + $(WIN_C) $(WIN_FLAGS) -D DEBUG -o main_debug.exe $^ diff --git a/steam-redirector/main.c b/steam-redirector/main.c index 6d6d0e7..656055e 100644 --- a/steam-redirector/main.c +++ b/steam-redirector/main.c @@ -115,5 +115,10 @@ int main(int argc, char** argv) { exit_status = execute_from_path_file(MO2_PATH_FILE, arg); +#ifdef DEBUG + fprintf(stdout, "DEBUG: Process finished, press enter to exit\n"); + getchar(); +#endif + return exit_status; } From 2a412119b38c2fe3a2f65402f14b791ce723f44b Mon Sep 17 00:00:00 2001 From: rockerbacon Date: Sun, 12 May 2024 14:31:20 -0300 Subject: [PATCH 2/4] fix file path logging on windows --- steam-redirector/main.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/steam-redirector/main.c b/steam-redirector/main.c index 656055e..9367705 100644 --- a/steam-redirector/main.c +++ b/steam-redirector/main.c @@ -21,12 +21,22 @@ #endif +#ifdef REQUIRE_UNICODE_CONVERSION + +#define PATHSUBST "%ls" + +#else + +#define PATHSUBST "%s" + +#endif + char_t* read_path_from_file(const char* file_path) { errno = 0; FILE* file = fopen(file_path, "r"); if (errno != 0) { - fprintf(stderr, "ERROR: failed to open '%s' - %s\n", file_path, strerror(errno)); + fprintf(stderr, "ERROR: failed to open '"PATHSUBST"' - %s\n", file_path, strerror(errno)); return NULL; } @@ -34,7 +44,7 @@ char_t* read_path_from_file(const char* file_path) { size_t estimated_line_length = ftell(file); if (estimated_line_length == 0) { - fprintf(stderr, "ERROR: cannot read empty file '%s'\n", MO2_PATH_FILE); + fprintf(stderr, "ERROR: cannot read empty file '"PATHSUBST"'\n", MO2_PATH_FILE); return NULL; } @@ -81,15 +91,16 @@ int execute_from_path_file(const char* path_file_location, const char_t* arg) { goto exit_point; } - fprintf(stdout, "INFO: read executable location '%s'\n", executable_path); + fprintf(stdout, "INFO: read executable location '"PATHSUBST"'\n", executable_path); + int has_access = check_file_access(executable_path); if (has_access == 0) { - fprintf(stderr, "ERROR: cannot execute '%s' - %s\n", executable_path, strerror(errno)); + fprintf(stderr, "ERROR: cannot execute '"PATHSUBST"' - %s\n", executable_path, strerror(errno)); goto exit_point; } - fprintf(stdout, "Launching '%s'\n", executable_path); + fprintf(stdout, "Launching '"PATHSUBST"'\n", executable_path); execute(executable_path, arg); exit_status = 0; From ee95a8eaf70a090d7fc209668f89ff17334b5f9e Mon Sep 17 00:00:00 2001 From: rockerbacon Date: Sun, 12 May 2024 14:32:48 -0300 Subject: [PATCH 3/4] don't redirect to MO2 when the redirector launches itself --- steam-redirector/main.c | 94 ++++++++++++++++++---------------- steam-redirector/unix_utils.h | 6 +++ steam-redirector/win32_utils.c | 3 +- steam-redirector/win32_utils.h | 8 ++- 4 files changed, 64 insertions(+), 47 deletions(-) diff --git a/steam-redirector/main.c b/steam-redirector/main.c index 9367705..c7b192c 100644 --- a/steam-redirector/main.c +++ b/steam-redirector/main.c @@ -21,16 +21,6 @@ #endif -#ifdef REQUIRE_UNICODE_CONVERSION - -#define PATHSUBST "%ls" - -#else - -#define PATHSUBST "%s" - -#endif - char_t* read_path_from_file(const char* file_path) { errno = 0; FILE* file = fopen(file_path, "r"); @@ -62,15 +52,38 @@ char_t* read_path_from_file(const char* file_path) { fclose(file); -#ifdef REQUIRE_UNICODE_CONVERSION - char_t* converted_line = convert_from_unicode(line); +#ifdef _WIN32 + char_t* wline = convert_utf8_to_wchar(line); free(line); - return converted_line; + return wline; #else return line; #endif } +char_t* get_original_launcher(const char_t* redirector_path) { + const char_t* filename = 0; + size_t filename_len = 0; + for (size_t i = 0; redirector_path[i] != '\0'; i++) { + if (redirector_path[i] == PATH_SEPARATOR) { + filename = redirector_path+i+1; + filename_len = 0; + } else { + filename_len++; + } + } + + char_t* original_path = (char_t*)malloc(sizeof(char_t)*(filename_len+2)); + + original_path[0] = '_'; + for (size_t i = 0; i < filename_len; i++) { + original_path[i+1] = filename[i]; + } + original_path[filename_len+1] = '\0'; + + return original_path; +} + int check_file_access(const char_t* path) { errno = 0; check_can_execute(path); @@ -82,54 +95,47 @@ int check_file_access(const char_t* path) { } } -int execute_from_path_file(const char* path_file_location, const char_t* arg) { +int MAIN(argc, argv) { int exit_status = 1; - char_t* executable_path = read_path_from_file(path_file_location); - if (executable_path == NULL) { + char_t *arg = NULL; + if (argc > 1) { + arg = argv[1]; + } + + char_t *exe_path = NULL; + if (getenv("NO_REDIRECT") == NULL) { + putenv("NO_REDIRECT=1"); + exe_path = read_path_from_file(MO2_PATH_FILE); + } else { + exe_path = get_original_launcher(argv[0]); + } + + if (exe_path == NULL) { fprintf(stderr, "ERROR: could not find executable, aborting\n"); goto exit_point; } - fprintf(stdout, "INFO: read executable location '"PATHSUBST"'\n", executable_path); - - int has_access = check_file_access(executable_path); + int has_access = check_file_access(exe_path); if (has_access == 0) { - fprintf(stderr, "ERROR: cannot execute '"PATHSUBST"' - %s\n", executable_path, strerror(errno)); + fprintf(stderr, "ERROR: cannot execute '"PATHSUBST"' - %s\n", exe_path, strerror(errno)); goto exit_point; } - fprintf(stdout, "Launching '"PATHSUBST"'\n", executable_path); - execute(executable_path, arg); + fprintf(stdout, "Launching '"PATHSUBST"'\n", exe_path); + execute(exe_path, arg); exit_status = 0; -exit_point: - if (executable_path != NULL) { - free(executable_path); - } - - return exit_status; -} - -#ifdef REQUIRE_UNICODE_CONVERSION -int wmain(int argc, wchar_t** argv) { -#else -int main(int argc, char** argv) { -#endif - int exit_status = 1; - - char_t *arg = NULL; - if (argc > 1) { - arg = argv[1]; - } - - exit_status = execute_from_path_file(MO2_PATH_FILE, arg); - #ifdef DEBUG fprintf(stdout, "DEBUG: Process finished, press enter to exit\n"); getchar(); #endif +exit_point: + if (exe_path != NULL) { + free(exe_path); + } return exit_status; } + diff --git a/steam-redirector/unix_utils.h b/steam-redirector/unix_utils.h index ced319f..a105235 100644 --- a/steam-redirector/unix_utils.h +++ b/steam-redirector/unix_utils.h @@ -1,5 +1,11 @@ #pragma once +#define PATH_SEPARATOR '/' + +#define PATHSUBST "%s" + +#define MAIN(argc, argv) main(int argc, char** argv) + typedef char char_t; void execute(const char_t* path, const char_t* arg); diff --git a/steam-redirector/win32_utils.c b/steam-redirector/win32_utils.c index 73a3f22..c87f2a1 100644 --- a/steam-redirector/win32_utils.c +++ b/steam-redirector/win32_utils.c @@ -27,7 +27,7 @@ void log_conversion_error() { } } -char_t* convert_from_unicode(const char* str) { +char_t* convert_utf8_to_wchar(const char* str) { int character_count = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0); char_t* converted_str = (char_t*)malloc((character_count + 1) * sizeof(char_t)); int bytes_written = MultiByteToWideChar(CP_UTF8, 0, str, -1, converted_str, character_count); @@ -39,3 +39,4 @@ char_t* convert_from_unicode(const char* str) { return converted_str; } + diff --git a/steam-redirector/win32_utils.h b/steam-redirector/win32_utils.h index 784eab2..f77857e 100644 --- a/steam-redirector/win32_utils.h +++ b/steam-redirector/win32_utils.h @@ -2,7 +2,11 @@ #include -#define REQUIRE_UNICODE_CONVERSION +#define PATH_SEPARATOR '\\' + +#define PATHSUBST "%ls" + +#define MAIN(argc, argv) wmain(int argc, wchar_t** argv) typedef wchar_t char_t; @@ -12,5 +16,5 @@ void check_can_execute(const char_t* path); char_t read_character(FILE* file); -char_t* convert_from_unicode(const char* str); +char_t* convert_utf8_to_wchar(const char* str); From 31794ff6ed3e14ca41fc1789297a34325be9fa91 Mon Sep 17 00:00:00 2001 From: rockerbacon Date: Sun, 12 May 2024 15:22:49 -0300 Subject: [PATCH 4/4] remove post-install instructions on running the original game launcher --- post-install.md | 16 ---------------- .../executables_config_leftside_list.png | Bin 9991 -> 0 bytes screenshots/executables_dropdown.png | Bin 16439 -> 0 bytes screenshots/topbar_executables_config.png | Bin 22219 -> 0 bytes 4 files changed, 16 deletions(-) delete mode 100644 screenshots/executables_config_leftside_list.png delete mode 100644 screenshots/executables_dropdown.png delete mode 100644 screenshots/topbar_executables_config.png diff --git a/post-install.md b/post-install.md index a6730d5..f3c33f7 100644 --- a/post-install.md +++ b/post-install.md @@ -2,22 +2,6 @@ This document provides information on additional steps you may want to take after installing Mod Organizer 2. -## Running the original game launcher - -1. Open Mod Organizer 2; -2. Click on the cogwheel in the top bar to configure executables: - -![topbar executables config](screenshots/topbar_executables_config.png?raw=true "Executables Configuration") - -3. Click on the launcher in the list to the left; -4. In the "Binary" text box, add an underscore before the name of the .exe file: - -![executables list](screenshots/executables_config_leftside_list.png?raw=true "Executables List") - -5. Now you should be able to run the launcher by selecting it in the executables dropdown: - -![executables dropdown](screenshots/executables_dropdown.png?raw=true "Executables Dropdown") - ## Using alternative proton versions **IMPORTANT:** Proton 9.0 is the most extensively tested version. The author of this document provides no guarantees that alternative versions will work well. diff --git a/screenshots/executables_config_leftside_list.png b/screenshots/executables_config_leftside_list.png deleted file mode 100644 index 155a6cbf213dc428603078fe5cfd642ee06e498a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9991 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 WBAKXM;Qt8#^!|;qY^k(S!2bYB6Q4K$ diff --git a/screenshots/topbar_executables_config.png b/screenshots/topbar_executables_config.png deleted file mode 100644 index dfe15cbab980c5bc1dd57685cbbc39f82861ee5a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22219 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