EAC macOS - executable should be "GAME.app/Contents/MacOS/GAME" in Settings.json, not just "GAME.app"
Describe the bug In build for macOS EACUtility adds GAME.app as "executable" to EAC's Settings.json. The game will not start in such case. The "executable" field in Settings.json should be path to executalbe: "GAME.app/Contents/MacOS/GAME".
Desktop (please complete the following information):
- OS: macOS Intel, macOS ARM
- standalone build
- Unity Version 2021.3.40f1
- Plugin Version 3.2.0
Additional context For now we are using the following modification of EACUtility.cs to fix this issue:
diff --git a/Packages/com.playeveryware.eos/Editor/Utility/EACUtility.cs b/Packages/com.playeveryware.eos/Editor/Utility/EACUtility.cs
index 243a82d2210..455c6e92c59 100644
--- a/Packages/com.playeveryware.eos/Editor/Utility/EACUtility.cs
+++ b/Packages/com.playeveryware.eos/Editor/Utility/EACUtility.cs
@@ -324,7 +324,11 @@ namespace PlayEveryWare.EpicOnlineServices.Build
if (postBuildFilesWithVars.Contains(fileToInstall))
{
- ReplaceFileContentVars(destPathname, buildExeName);
+ string modifiedBuildExe = buildExeName;
+ if (report.summary.platform == BuildTarget.StandaloneOSX)
+ modifiedBuildExe = Path.Combine(modifiedBuildExe, "Contents", "MacOS",
+ Path.GetFileNameWithoutExtension(modifiedBuildExe));
+ ReplaceFileContentVars(destPathname, modifiedBuildExe);
}
}
else if (!postBuildFilesOptional.Contains(fileToInstall))
Ahoy @PetrBodnar ! I just ran the latest "stable" branch code on MacOS, and ran in to exactly what you encountered. I'm glad you have a work-around fix for now. Our team will work to push a similar fix as soon as reasonable.
Poking around, I found that @arthur740212 already has addressed this issue in a PR that has been merged into development. https://github.com/PlayEveryWare/eos_plugin_for_unity/pull/794
We'll figure out if a hotfix is possible soon!
@PetrBodnar This should be merged in and available to you now!