I recently switched from 4.8.3 binary to a custom build of the engine (https://github.com/Oculus-VR/UnrealEngine/tree/4.8).
This is what I did:
- Built the engine (configuration ‘Development Editor’)
- Converted my project (runs fine in editor)
- Right-clicked on the *.uproject file, switched unreal engine version to the new build
- Generated Visual Studio project files
- Tried to package (shipping/build for distribution) which worked in the binary release
- After about 10 seconds, the packaging process aborts:
(…)
MainFrameActions: Packaging (Windows (64-bit)): BuildCommand.Execute: ERROR: BUILD FAILED
MainFrameActions: Packaging (Windows (64-bit)): Program.Main: ERROR: AutomationTool terminated with exception:
MainFrameActions: Packaging (Windows (64-bit)): Program.Main: ERROR: Exception in mscorlib: An item with the same key has already been added (translated from German)
MainFrameActions: Packaging (Windows (64-bit)): Stacktrace: bei System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add) MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectUtils.Compil MainFrameActions: Packaging (Windows (64-bit)): eAndLoadTargetsAssembly(ProjectProperties Properties, String TargetsDllFilename, Boolean DoNotCompile, List
1 TargetScripts) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectUtils.cs:Zeile 521.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectUtils.DetectTargetsForProject(ProjectProperties Properties, List1 ExtraSearchPaths) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectUtils.cs:Zeile 473. MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectUtils.DetectProjectProperties(String RawProjectPath, List
1 ClientTargetPlatforms) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectUtils.cs:Zeile 287.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectUtils.GetProjectProperties(String RawProjectPath, List1 ClientTargetPlatforms) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectUtils.cs:Zeile 127. MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectParams.AutodetectSettings(Boolean bReset) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectParams.cs:Zeile 1372. MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.ProjectParams..ctor(String RawProjectPath, CommandUtils Command, String Device, String MapToRun, String AdditionalServerMapParams, ParamList
1 Port, String RunCommandline, String StageCommandline, String BundleName, String StageDirectoryParam, Nullable1 StageNonMonolithic, String UE4Exe, String SignPak, List
1 ClientConfigsToBuild, List1 ServerConfigsToBuild, ParamList
1 MapsToCook, ParamList1 DirectoriesToCook, String InternationalizationPreset, ParamList
1 CulturesToCook, ParamList1 ClientCookedTargets, ParamList
1 EditorTargets, ParamList1 ServerCookedTargets, List
1 ClientTargetPlatforms, Dictionary2 ClientDependentPlatformMap, List
1 ServerTargetPlatforms, Dictionary2 ServerDependentPlatformMap, Nullable
1 Build, Nullable1 Cook, String CookFlavor, Nullable
1 Run, Nullable1 SkipServer, Nullable
1 Clean, Nullable1 Compressed, Nullable
1 UseDebugParamForEditorExe, Nullable1 IterativeCooking, Nullable
1 CookAll, Nullable1 CookMapsOnly, Nullable
1 CookOnTheFly, Nullable1 CookOnTheFlyStreaming, Nullable
1 UnversionedCookedContent, String AdditionalCookerOptions, String BasedOnReleaseVersion, String CreateReleaseVersion, Nullable1 GeneratePatch, String DLCName, Nullable
1 DLCIncludeEngineContent, Nullable1 NewCook, Nullable
1 OldCook, Nullable1 CrashReporter, Nullable
1 DedicatedServer, Nullable1 Client, Nullable
1 Deploy, Nullable1 FileServer, Nullable
1 Foreign, Nullable1 ForeignCode, Nullable
1 LogWindow, Nullable1 NoCleanStage, Nullable
1 NoClient, Nullable1 NoDebugInfo, Nullable
1 NoXGE, Nullable1 Package, Nullable
1 Pak, Nullable1 Prereqs, Nullable
1 NoBootstrapExe, Nullable1 SignedPak, Nullable
1 NullRHI, Nullable1 FakeClient, Nullable
1 EditorTest, Nullable1 RunAutomationTests, String RunAutomationTest, Nullable
1 CrashIndex, Nullable1 Rocket, Nullable
1 SkipCook, Nullable1 SkipCookOnTheFly, Nullable
1 SkipPak, Nullable1 SkipStage, Nullable
1 Stage, Nullable1 Manifests, Nullable
1 CreateChunkInstall, Nullable1 Unattended, Nullable
1 NumClients, Nullable1 Archive, String ArchiveDirectoryParam, Nullable
1 ArchiveMetaData, ParamList1 ProgramTargets, Nullable
1 Distribution, Nullable1 Prebuilt, Nullable
1 RunTimeoutSeconds, String SpecifiedArchitecture, Nullable1 IterativeDeploy) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\ProjectParams.cs:Zeile 680. MainFrameActions: Packaging (Windows (64-bit)): bei BuildCookRun.SetupParams() in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:Zeile 54. MainFrameActions: Packaging (Windows (64-bit)): bei BuildCookRun.ExecuteBuild() in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:Zeile 43. MainFrameActions: Packaging (Windows (64-bit)): bei BuildCommand.Execute() in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\BuildCommand.cs:Zeile 37. MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.Automation.Execute(List
1 CommandsToExecute, CaselessDictionary`1 Commands) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Automation.cs:Zeile 380.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.Automation.Process(String[] CommandLine) in d:\Documents\Unreal Projects\VRShowRoom\UE4_
MainFrameActions: Packaging (Windows (64-bit)): Oculus\Engine\Source\Programs\AutomationTool\Automation.cs:Zeile 352.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.Program.MainProc(Object Param) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Program.cs:Zeile 172.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.InternalUtils.RunSingleInstance(MainProc Main, Object Param) in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Utils.cs:Zeile 716.
MainFrameActions: Packaging (Windows (64-bit)): bei AutomationTool.Program.Main() in d:\Documents\Unreal Projects\VRShowRoom\UE4_Oculus\Engine\Source\Programs\AutomationTool\Program.cs:Zeile 119.
MainFrameActions: Packaging (Windows (64-bit)): Program.Main: ERROR: An item with the same key has already been added* (translated from German)
MainFrameActions: Packaging (Windows (64-bit)): ProcessManager.KillAll: Trying to kill 0 spawned processes.
MainFrameActions: Packaging (Windows (64-bit)): Program.Main: AutomationTool exiting with ExitCode=1
MainFrameActions: Packaging (Windows (64-bit)): Domain_ProcessExit
MainFrameActions: Packaging (Windows (64-bit)): ProcessManager.KillAll: Trying to kill 0 spawned processes.
MainFrameActions: Packaging (Windows (64-bit)): AutomationToolLauncher exiting with ExitCode=1
MainFrameActions: Packaging (Windows (64-bit)): copying UAT log files…
MainFrameActions: Packaging (Windows (64-bit)): RunUAT.bat ERROR: AutomationTool was unable to run successfully.
MainFrameActions: Packaging (Windows (64-bit)): BUILD FAILED*
And that’s it.
Out of pure desperation I tried to additionally build my game and the engine itself from VS again in ‘Shipping’ configuration, but that doesn’t change anything.Got still the same error.
It’s also not possible to cook the project (same error). How can I solve this? What is the ‘correct’ way to switch the engine build, which configuration should I choose (didn’t find anything about that in the documentation) for being able to package the project again?