public UEBuildEditor(
     string InGameName,
     UnrealTargetPlatform InPlatform,
     UnrealTargetConfiguration InConfiguration,
     TargetRules InRulesObject,
     List <string> InAdditionalDefinitions,
     string InRemoteRoot,
     List <OnlyModule> InOnlyModules,
     bool bInEditorRecompile)
 // NOTE: If we're building a monolithic binary, then the game and engine code are linked together into one
 //       program executable, so we want the application name to be the game name.  In the case of a modular
 //       binary, we use 'UnrealEngine' for our application name
     : base(
         InAppName: UEBuildTarget.GetBinaryBaseName(
             InGameName,
             InRulesObject,
             InPlatform,
             InConfiguration,
             (InRulesObject.Type == TargetRules.TargetType.Editor) ? "Editor" : ""
             ),
         InGameName: InGameName,
         InPlatform: InPlatform,
         InConfiguration: InConfiguration,
         InRulesObject: InRulesObject,
         InAdditionalDefinitions: InAdditionalDefinitions,
         InRemoteRoot: InRemoteRoot,
         InOnlyModules: InOnlyModules,
         bInEditorRecompile: bInEditorRecompile
         )
 {
 }
 public UEBuildGame(
     string InGameName,
     UnrealTargetPlatform InPlatform,
     UnrealTargetConfiguration InConfiguration,
     TargetRules InRulesObject,
     List <string> InAdditionalDefinitions,
     string InRemoteRoot,
     List <OnlyModule> InOnlyModules,
     bool bInEditorRecompile)
 // NOTE: If we're building a monolithic binary, then the game and engine code are linked together into one
 //       program executable, so we want the application name to be the game name.  In the case of a modular
 //       binary, we use 'UnrealEngine' for our application name
     : base(
         InAppName: UEBuildTarget.GetBinaryBaseName(InGameName, InRulesObject, InPlatform, InConfiguration, ""),
         InGameName: InGameName,
         InPlatform: InPlatform,
         InConfiguration: InConfiguration,
         InRulesObject: InRulesObject,
         InAdditionalDefinitions: InAdditionalDefinitions,
         InRemoteRoot: InRemoteRoot,
         InOnlyModules: InOnlyModules,
         bInEditorRecompile: bInEditorRecompile
         )
 {
     if (ShouldCompileMonolithic())
     {
         if ((UnrealBuildTool.IsDesktopPlatform(Platform) == false) ||
             (Platform == UnrealTargetPlatform.WinRT) ||
             (Platform == UnrealTargetPlatform.WinRT_ARM))
         {
             // We are compiling for a console...
             // We want the output to go into the <GAME>\Binaries folder
             if (InRulesObject.bOutputToEngineBinaries == false)
             {
                 for (int Index = 0; Index < OutputPaths.Length; Index++)
                 {
                     OutputPaths[Index] = OutputPaths[Index].Replace("Engine\\Binaries", InGameName + "\\Binaries");
                 }
             }
         }
     }
 }