I have fixed a few regressions/bugs with running the engine with invalid paths when you switch between profiles. The profiles changed recently and I think it's good that I had outdated profiles to load up. It helped me identify holes when you have paths that are invalid or files that suddenly don't exist.
Anyways, I'm running into a problem where I can't run Sphere 1.5/1.6 games but both the engine path and arguments are correct.
Test game button, doesn't work for 1.5/1.6
string gamePath = Global.CurrentGame.Build();
string path = ((ToolStripItem)sender).Tag as string ?? EnginePath;
string args = string.Format("-game \"{0}\"", gamePath);
if (String.IsNullOrEmpty(path) || !File.Exists(path))
{
// show a message if you switch to a project with an invalid path.
MessageBox.Show("Error: Could not find engine in path specified.");
}
else
{
Process.Start(path, args);
}
But if you right-click the game in the Start Page and choose play, it works every time:
if (!File.Exists(Global.Settings.EnginePath)) return;
string args = string.Format("-game \"{0}\"", _proj.RootPath);
Process.Start(Global.Settings.EnginePath, args);
In the forner section I get:
It's so weird. The paths and args match completely.