diff --git a/OpenRA.Utility/Command.cs b/OpenRA.Utility/Command.cs index 3640efc210..3c9ae4dff5 100644 --- a/OpenRA.Utility/Command.cs +++ b/OpenRA.Utility/Command.cs @@ -74,7 +74,7 @@ namespace OpenRA.Utility return; } - Console.WriteLine("Mod:{0}", m); + Console.WriteLine("Mod: {0}", m); Console.WriteLine(" Title: {0}", mod.Title); Console.WriteLine(" Version: {0}", mod.Version); Console.WriteLine(" Author: {0}", mod.Author); @@ -226,8 +226,16 @@ namespace OpenRA.Utility string[] args = argValue.Split(','); if (args.Length < 2) { return; } - - string settingsFile = args[0] + Path.DirectorySeparatorChar + "settings.yaml"; + + string expandedPath = args[0].Replace("~", Environment.GetFolderPath(Environment.SpecialFolder.Personal)); + + string settingsFile = expandedPath + Path.DirectorySeparatorChar + "settings.yaml"; + if (!File.Exists(settingsFile)) + { + Console.WriteLine("Error: Could not locate settings file at {0}", settingsFile); + return; + } + List settingsYaml = MiniYaml.FromFile(settingsFile); Queue settingKey = new Queue(args[1].Split('.'));