From 42d9271cec5f38a9baffd11bc583bb3c830c9023 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 24 Nov 2025 07:38:01 +0000 Subject: [PATCH] Fix serveradmin.xml path - go up 2 levels to Saves folder GetSaveGameDir() returns the world folder (Saves/RWG/WorldName), but serveradmin.xml is in the Saves folder according to the game config: AdminFileName path is relative to UserDataFolder/Saves. Added path: Saves/../.. to reach the correct location. --- Harmony/CHRANIBotTNG.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Harmony/CHRANIBotTNG.cs b/Harmony/CHRANIBotTNG.cs index b7c4b37..ea650fc 100644 --- a/Harmony/CHRANIBotTNG.cs +++ b/Harmony/CHRANIBotTNG.cs @@ -175,11 +175,14 @@ public static class AdminManager try { // Try common locations + // GetSaveGameDir() returns the world folder (e.g., Saves/RWG/WorldName) + // serveradmin.xml is in the Saves folder, so we need to go up 2 levels string[] possiblePaths = new[] { - Path.Combine(GameIO.GetSaveGameDir(), "..", "serveradmin.xml"), - Path.Combine(GameIO.GetSaveGameDir(), "serveradmin.xml"), - "serveradmin.xml" + Path.Combine(GameIO.GetSaveGameDir(), "..", "..", "serveradmin.xml"), // Saves/serveradmin.xml (standard location) + Path.Combine(GameIO.GetSaveGameDir(), "..", "serveradmin.xml"), // Saves/RWG/serveradmin.xml + Path.Combine(GameIO.GetSaveGameDir(), "serveradmin.xml"), // Saves/RWG/WorldName/serveradmin.xml + "serveradmin.xml" // Working directory }; foreach (string path in possiblePaths)