Files
UnrealEngineUWP/Engine/Source/Programs/AutomationTool/Scripts/RunProjectCommand.Automation.cs

1104 lines
34 KiB
C#
Raw Normal View History

// Copyright Epic Games, Inc. All Rights Reserved.
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
using System.Text.RegularExpressions;
using System.Threading;
using System.Reflection;
using System.Linq;
using System.Net.NetworkInformation;
using System.Collections;
using AutomationTool;
using UnrealBuildTool;
using EpicGames.Core;
using UnrealBuildBase;
namespace AutomationScripts
{
/// <summary>
/// Helper command to run a game.
/// </summary>
/// <remarks>
/// Uses the following command line params:
/// -cooked
/// -cookonthefly
/// -dedicatedserver
/// -win32
/// -noclient
/// -logwindow
/// </remarks>
public partial class Project : CommandUtils
{
/// <summary>
/// Thread used to read client log file.
/// </summary>
private static Thread ClientLogReaderThread = null;
/// <summary>
/// Process for the server, can be set by the cook command when a cook on the fly server is used
/// </summary>
public static IProcessResult ServerProcess;
// debug commands for the engine to crash
public static string[] CrashCommands =
{
"crash",
"CHECK",
"GPF",
"ASSERT",
"ENSURE",
"RENDERCRASH",
"RENDERCHECK",
"RENDERGPF",
"THREADCRASH",
"THREADCHECK",
"THREADGPF",
};
/// <summary>
/// For not-installed runs, returns a temp log folder to make sure it doesn't fall into sandbox paths
/// </summary>
/// <returns></returns>
private static string GetLogFolderOutsideOfSandbox()
{
return Unreal.IsEngineInstalled() ?
CmdEnv.LogFolder :
CombinePaths(Path.GetTempPath(), CommandUtils.EscapePath(CmdEnv.LocalRoot), "Logs");
}
/// <summary>
/// Fot not-installed runs, copies all logs from the temp log folder back to the UAT log folder.
/// </summary>
private static void CopyLogsBackToLogFolder()
{
if (!Unreal.IsEngineInstalled())
{
var LogFolderOutsideOfSandbox = GetLogFolderOutsideOfSandbox();
var TempLogFiles = FindFiles_NoExceptions("*", false, LogFolderOutsideOfSandbox);
foreach (var LogFilename in TempLogFiles)
{
var DestFilename = CombinePaths(CmdEnv.LogFolder, Path.GetFileName(LogFilename));
CopyFile_NoExceptions(LogFilename, DestFilename);
}
}
}
public static void Run(ProjectParams Params)
{
Params.ValidateAndLog();
if (!Params.Run)
{
return;
}
LogInformation("********** RUN COMMAND STARTED **********");
var LogFolderOutsideOfSandbox = GetLogFolderOutsideOfSandbox();
if (!Unreal.IsEngineInstalled() && ServerProcess == null)
{
// In the installed runs, this is the same folder as CmdEnv.LogFolder so delete only in not-installed
DeleteDirectory(LogFolderOutsideOfSandbox);
CreateDirectory(LogFolderOutsideOfSandbox);
}
var ServerLogFile = CombinePaths(LogFolderOutsideOfSandbox, "Server.log");
var ClientLogFile = CombinePaths(LogFolderOutsideOfSandbox, Params.EditorTest ? "Editor.log" : "Client.log");
try
{
RunInternal(Params, ServerLogFile, ClientLogFile);
}
catch
{
throw;
}
finally
{
CopyLogsBackToLogFolder();
}
LogInformation("********** RUN COMMAND COMPLETED **********");
}
private static void RunInternal(ProjectParams Params, string ServerLogFile, string ClientLogFile)
{
// Start the UnrealTrace
StartUnrealTrace();
// Setup server process if required.
if (Params.DedicatedServer && !Params.SkipServer)
{
if (Params.ServerTargetPlatforms.Count > 0)
{
TargetPlatformDescriptor ServerPlatformDesc = Params.ServerTargetPlatforms[0];
ServerProcess = RunDedicatedServer(Params, ServerLogFile, Params.RunCommandline);
// With dedicated server, the client connects to local host to load a map, unless client parameters are already specified
if (String.IsNullOrEmpty(Params.ClientCommandline))
{
if (!String.IsNullOrEmpty(Params.ServerDeviceAddress))
{
Params.ClientCommandline = Params.ServerDeviceAddress;
}
else
{
Params.ClientCommandline = "127.0.0.1";
}
}
}
else
{
throw new AutomationException("Failed to run, server target platform not specified");
}
}
if (ServerProcess != null)
{
LogInformation("Waiting a few seconds for the server to start...");
Thread.Sleep(5000);
}
if (!Params.NoClient)
{
LogInformation("Starting Client....");
var SC = CreateDeploymentContext(Params, false);
ERunOptions ClientRunFlags;
string ClientApp;
string ClientCmdLine;
SetupClientParams(SC, Params, ClientLogFile, out ClientRunFlags, out ClientApp, out ClientCmdLine);
// Run the client.
if (ServerProcess != null)
{
RunClientWithServer(SC, ServerLogFile, ServerProcess, ClientApp, ClientCmdLine, ClientRunFlags, ClientLogFile, Params);
}
else
{
RunStandaloneClient(SC, ClientLogFile, ClientRunFlags, ClientApp, ClientCmdLine, Params);
}
}
}
private static void RunStandaloneClient(List<DeploymentContext> DeployContextList, string ClientLogFile, ERunOptions ClientRunFlags, string ClientApp, string ClientCmdLine, ProjectParams Params)
{
if (Params.Unattended)
{
string LookFor = "Bringing up level for play took";
bool bCommandlet = false;
if (Params.RunAutomationTest != "" || Params.RunAutomationTests)
{
LookFor = "Automation Test Queue Empty";
}
else if (Params.EditorTest)
{
LookFor = "Asset discovery search completed in";
}
// If running a commandlet, just detect a normal exit
else if (ClientCmdLine.IndexOf("-run=", StringComparison.InvariantCultureIgnoreCase) >= 0)
{
LookFor = "Game engine shut down";
bCommandlet = true;
}
{
string AllClientOutput = "";
int LastAutoFailIndex = -1;
IProcessResult ClientProcess = null;
FileStream ClientProcessLog = null;
StreamReader ClientLogReader = null;
LogInformation("Starting Client for unattended test....");
ClientProcess = Run(ClientApp, ClientCmdLine + " -testexit=\"" + LookFor + "\"", null, ClientRunFlags | ERunOptions.NoWaitForExit);
while (!FileExists(ClientLogFile) && !ClientProcess.HasExited)
{
LogInformation("Waiting for client logging process to start...{0}", ClientLogFile);
Thread.Sleep(2000);
}
if (FileExists(ClientLogFile))
{
Thread.Sleep(2000);
LogInformation("Client logging process started...{0}", ClientLogFile);
ClientProcessLog = File.Open(ClientLogFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
ClientLogReader = new StreamReader(ClientProcessLog);
}
if (ClientLogReader == null)
{
throw new AutomationException("Client exited without creating a log file.");
}
bool bKeepReading = true;
bool WelcomedCorrectly = false;
bool bClientExited = false;
DateTime ExitTime = DateTime.UtcNow;
while (bKeepReading)
{
if (!bClientExited && ClientProcess.HasExited)
{
ExitTime = DateTime.UtcNow;
bClientExited = true;
}
string ClientOutput = ClientLogReader.ReadToEnd();
if (!String.IsNullOrEmpty(ClientOutput))
{
if (bClientExited)
{
ExitTime = DateTime.UtcNow; // as long as it is spewing, we reset the timer
}
AllClientOutput += ClientOutput;
Console.Write(ClientOutput);
if (AllClientOutput.LastIndexOf(LookFor) > AllClientOutput.IndexOf(LookFor))
{
WelcomedCorrectly = true;
LogInformation("Test complete...");
bKeepReading = false;
}
else if (Params.RunAutomationTests)
{
int FailIndex = AllClientOutput.LastIndexOf("Automation Test Failed");
int ParenIndex = AllClientOutput.LastIndexOf(")");
if (FailIndex >= 0 && ParenIndex > FailIndex && FailIndex > LastAutoFailIndex)
{
string Tail = AllClientOutput.Substring(FailIndex);
int CloseParenIndex = Tail.IndexOf(")");
int OpenParenIndex = Tail.IndexOf("(");
string Test = "";
if (OpenParenIndex >= 0 && CloseParenIndex > OpenParenIndex)
{
Test = Tail.Substring(OpenParenIndex + 1, CloseParenIndex - OpenParenIndex - 1);
LogError("Automated test failed ({0}).", Test);
LastAutoFailIndex = FailIndex;
}
}
}
// Detect commandlet failure
else if (bCommandlet)
{
const string ResultLog = "Commandlet->Main return this error code: ";
int ResultStart = AllClientOutput.LastIndexOf(ResultLog);
int ResultValIdx = ResultStart + ResultLog.Length;
if (ResultStart >= 0 && ResultValIdx < AllClientOutput.Length &&
AllClientOutput.Substring(ResultValIdx, 1) == "1")
{
// Parse the full commandlet warning/error summary
string FullSummary = "";
int SummaryStart = AllClientOutput.LastIndexOf("Warning/Error Summary");
if (SummaryStart >= 0 && SummaryStart < ResultStart)
{
FullSummary = AllClientOutput.Substring(SummaryStart, ResultStart - SummaryStart);
}
if (FullSummary.Length > 0)
{
LogError("Commandlet failed, summary:" + Environment.NewLine +
FullSummary);
}
else
{
LogError("Commandlet failed.");
}
}
}
}
else if (bClientExited && (DateTime.UtcNow - ExitTime).TotalSeconds > 30)
{
LogInformation("Client exited and has been quiet for 30 seconds...exiting");
bKeepReading = false;
}
}
if (ClientProcess != null && !ClientProcess.HasExited)
{
LogInformation("Client is supposed to exit, lets wait a while for it to exit naturally...");
for (int i = 0; i < 120 && !ClientProcess.HasExited; i++)
{
Thread.Sleep(1000);
}
}
if (ClientProcess != null && !ClientProcess.HasExited)
{
LogInformation("Stopping client...");
ClientProcess.StopProcess();
Thread.Sleep(10000);
}
while (!ClientLogReader.EndOfStream)
{
string ClientOutput = ClientLogReader.ReadToEnd();
if (!String.IsNullOrEmpty(ClientOutput))
{
Console.Write(ClientOutput);
}
}
if (!WelcomedCorrectly)
{
throw new AutomationException("Client exited before we asked it to.");
}
}
}
else
{
var SC = DeployContextList[0];
IProcessResult ClientProcess = SC.StageTargetPlatform.RunClient(ClientRunFlags, ClientApp, ClientCmdLine, Params);
if (ClientProcess != null)
{
// If the client runs without StdOut redirect we're going to read the log output directly from log file on
// a separate thread.
if ((ClientRunFlags & ERunOptions.NoStdOutRedirect) == ERunOptions.NoStdOutRedirect)
{
ClientLogReaderThread = new System.Threading.Thread(ClientLogReaderProc);
ClientLogReaderThread.Start(new object[] { ClientLogFile, ClientProcess });
}
do
{
Thread.Sleep(100);
}
while (ClientProcess.HasExited == false);
SC.StageTargetPlatform.PostRunClient(ClientProcess, Params);
// any non-zero exit code should propagate an exception. The Virtual function above may have
// already thrown a more specific exception or given a more specific ErrorCode, but this catches the rest.
if (ClientProcess.ExitCode != 0)
{
throw new AutomationException("Client exited with error code: " + ClientProcess.ExitCode);
}
}
}
}
private static void RunClientWithServer(List<DeploymentContext> DeployContextList, string ServerLogFile, IProcessResult ServerProcess, string ClientApp, string ClientCmdLine, ERunOptions ClientRunFlags, string ClientLogFile, ProjectParams Params)
{
IProcessResult ClientProcess = null;
var OtherClients = new List<IProcessResult>();
bool WelcomedCorrectly = false;
int NumClients = Params.NumClients;
string AllClientOutput = "";
int LastAutoFailIndex = -1;
if (Params.Unattended)
{
string LookFor = "Bringing up level for play took";
if (Params.DedicatedServer)
{
LookFor = "Welcomed by server";
}
else if (Params.RunAutomationTest != "" || Params.RunAutomationTests)
{
LookFor = "Automation Test Queue Empty";
}
{
while (!FileExists(ServerLogFile) && !ServerProcess.HasExited)
{
LogInformation("Waiting for logging process to start...");
Thread.Sleep(2000);
}
Thread.Sleep(1000);
string AllServerOutput = "";
using (FileStream ProcessLog = File.Open(ServerLogFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
{
StreamReader LogReader = new StreamReader(ProcessLog);
bool bKeepReading = true;
FileStream ClientProcessLog = null;
StreamReader ClientLogReader = null;
// Read until the process has exited.
while (!ServerProcess.HasExited && bKeepReading)
{
while (!LogReader.EndOfStream && bKeepReading && ClientProcess == null)
{
string Output = LogReader.ReadToEnd();
if (!String.IsNullOrEmpty(Output))
{
AllServerOutput += Output;
if (ClientProcess == null &&
(AllServerOutput.Contains("Game Engine Initialized") || AllServerOutput.Contains("Unreal Network File Server is ready")))
{
LogInformation("Starting Client for unattended test....");
ClientProcess = Run(ClientApp, ClientCmdLine + " -testexit=\"" + LookFor + "\"", null, ClientRunFlags | ERunOptions.NoWaitForExit);
//@todo no testing is done on these
if (NumClients > 1 && NumClients < 9)
{
for (int i = 1; i < NumClients; i++)
{
LogInformation("Starting Extra Client....");
OtherClients.Add(Run(ClientApp, ClientCmdLine, null, ClientRunFlags | ERunOptions.NoWaitForExit));
}
}
while (!FileExists(ClientLogFile) && !ClientProcess.HasExited)
{
LogInformation("Waiting for client logging process to start...{0}", ClientLogFile);
Thread.Sleep(2000);
}
if (!ClientProcess.HasExited)
{
Thread.Sleep(2000);
LogInformation("Client logging process started...{0}", ClientLogFile);
ClientProcessLog = File.Open(ClientLogFile, FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
ClientLogReader = new StreamReader(ClientProcessLog);
}
}
else if (ClientProcess == null && !ServerProcess.HasExited)
{
LogInformation("Waiting for server to start....");
Thread.Sleep(2000);
}
if (ClientProcess != null && ClientProcess.HasExited)
{
ServerProcess.StopProcess();
throw new AutomationException("Client exited before we asked it to.");
}
}
}
if (ClientLogReader != null)
{
if (ClientProcess.HasExited)
{
ServerProcess.StopProcess();
throw new AutomationException("Client exited or closed the log before we asked it to.");
}
while (!ClientProcess.HasExited && !ServerProcess.HasExited && bKeepReading)
{
while (!ClientLogReader.EndOfStream && bKeepReading && !ServerProcess.HasExited && !ClientProcess.HasExited)
{
string ClientOutput = ClientLogReader.ReadToEnd();
if (!String.IsNullOrEmpty(ClientOutput))
{
AllClientOutput += ClientOutput;
Console.Write(ClientOutput);
if (AllClientOutput.LastIndexOf(LookFor) > AllClientOutput.IndexOf(LookFor))
{
if (Params.FakeClient)
{
LogInformation("Welcomed by server or client loaded, lets wait ten minutes...");
Thread.Sleep(60000 * 10);
}
else
{
LogInformation("Welcomed by server or client loaded, lets wait 30 seconds...");
Thread.Sleep(30000);
}
WelcomedCorrectly = true;
bKeepReading = false;
}
else if (Params.RunAutomationTests)
{
int FailIndex = AllClientOutput.LastIndexOf("Automation Test Failed");
int ParenIndex = AllClientOutput.LastIndexOf(")");
if (FailIndex >= 0 && ParenIndex > FailIndex && FailIndex > LastAutoFailIndex)
{
string Tail = AllClientOutput.Substring(FailIndex);
int CloseParenIndex = Tail.IndexOf(")");
int OpenParenIndex = Tail.IndexOf("(");
string Test = "";
if (OpenParenIndex >= 0 && CloseParenIndex > OpenParenIndex)
{
Test = Tail.Substring(OpenParenIndex + 1, CloseParenIndex - OpenParenIndex - 1);
LogError("Automated test failed ({0}).", Test);
LastAutoFailIndex = FailIndex;
}
}
}
}
}
}
}
}
}
}
}
else
{
LogFileReaderProcess(ServerLogFile, ServerProcess, (string Output) =>
{
bool bKeepReading = true;
if (ClientProcess == null && !String.IsNullOrEmpty(Output))
{
AllClientOutput += Output;
if (AllClientOutput.Contains("Game Engine Initialized") || AllClientOutput.Contains("Unreal Network File Server is ready") || AllClientOutput.Contains("COTF server is ready"))
{
LogInformation("Starting Client....");
var SC = DeployContextList[0];
ClientProcess = SC.StageTargetPlatform.RunClient(ClientRunFlags | ERunOptions.NoWaitForExit, ClientApp, ClientCmdLine, Params);
// ClientProcess = Run(ClientApp, ClientCmdLine, null, ClientRunFlags | ERunOptions.NoWaitForExit);
if (NumClients > 1 && NumClients < 9)
{
for (int i = 1; i < NumClients; i++)
{
LogInformation("Starting Extra Client....");
IProcessResult NewClient = SC.StageTargetPlatform.RunClient(ClientRunFlags | ERunOptions.NoWaitForExit, ClientApp, ClientCmdLine, Params);
OtherClients.Add(NewClient);
}
}
}
}
else if (ClientProcess == null && !ServerProcess.HasExited)
{
LogInformation("Waiting for server to start....");
Thread.Sleep(2000);
}
if (String.IsNullOrEmpty(Output) == false)
{
Console.Write(Output);
}
if (ClientProcess != null && ClientProcess.HasExited)
{
LogInformation("Client exited, stopping server....");
if (!GlobalCommandLine.NoKill)
{
ServerProcess.StopProcess();
}
bKeepReading = false;
}
return bKeepReading; // Keep reading
});
}
LogInformation("Server exited....");
if (ClientProcess != null && !ClientProcess.HasExited)
{
ClientProcess.StopProcess();
}
foreach (var OtherClient in OtherClients)
{
if (OtherClient != null && !OtherClient.HasExited)
{
OtherClient.StopProcess();
}
}
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3316439) #lockdown Nick.Penwarden Change 3315047 on 2017/02/21 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion HTN code first check in #UE4 #rb none #test currently unused Change 3314042 on 2017/02/21 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - DAILY Main @ CL 3313484 #RB:none #Tests:none Change 3313355 on 2017/02/20 by Uriel.Doyon@uriel.doyon_PC2_Orion Changed the preliminary GPU benchmark workloads to take into account the target workload. This is to prevent running the last test with poor performance, risking a driver reset. #jira OR-29915 #rb marcus.wassmer #test Run the game triggering benchmarks Change 3312553 on 2017/02/20 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Implemented a simple AITask for running EQS queries #UE4 #rb Lukasz.Furman #test golden path Change 3311661 on 2017/02/20 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge MAIN @ CL 3311631 #RB:none #Tests:none Change 3310392 on 2017/02/17 by Daniel.Lamb@daniel.lamb_T3905_6612 Unreal pak now outputs to named log files instead of timestamps. #rb Trivial #test Cook deploy paragon #jira OR-36057 Change 3310196 on 2017/02/17 by Clayton.Langford@RDU-WD-8359_3635_Paragon_DevGen Created an event to be fired whenever a GameplayCue is routed that passes all relevant info about that GC. Added a listener in OrionPhasedFunctionalTest that parses that event into a string and stores it in an array to be accessed from a test phase later. #test PIE #rb Ben.Salem, Adric.Worley Change 3308437 on 2017/02/16 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge MAIN @ CL 3308413 (Prep for Merge up) #RB:none #Tests:none Change 3306497 on 2017/02/16 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for compilation issue with USE_MALLOC_STOMP #rb none #tests compiled with malloc_stomp Change 3306468 on 2017/02/16 by Cody.Haskell@OrionStream #Orion - Text popup work for Shield. If you click on an OrionEditableTextBox while running the game with -gfn, a special popup is called. Should do nothing normally. #rb none #tests PIE, golden path. Change 3305945 on 2017/02/16 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Remove unused/deprecated UGameplayEffectExtension class #rb #tests none Change 3304630 on 2017/02/15 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge Mieszko stuff from MAIN to DG #RB:none #TestS:none #!codereview: mieszko.zielinski Change 3303785 on 2017/02/15 by jason.bestimt@Jason.Bestimt_Dev-General #ORION_MAIN - Merge 38.3 @ CL 3303224 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3303718 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) #!ROBOMERGE-SAYS: Unresolved conflicts. jason.bestimt, please merge this change by hand. //Orion/Dev-General/OrionGame/Content/UI/DeckBuilder/DeckBuilderRoot.uasset - can't integrate exclusive file already opened //Orion/Dev-General/OrionGame/Content/UI/Master_Layouts/FrontEnd.uasset - can't integrate exclusive file already opened #!codereview: jason.bestimt Change 3302382 on 2017/02/14 by Alexis.Matte@amatte-orion-dev-general Fix import of morph target when there is no animation #jira UE-41383 #jira OR-35859 #rb none #test none Change 3301538 on 2017/02/14 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 38.3 @ CL 3301392 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3301481 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3299985 on 2017/02/13 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream added time limit to "get out of overlap" move for minons to avoid getting stuck in moving to inaccessbile spots #jira OR-35834 #rb Mieszko.Zielinski #tests PIE Change 3299732 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Tweaked the way EQS tests of negative score get normalized #UE4 #rb none #test golden path + math #!codereview Lukasz.Furman, John.Abercrombie Change 3299724 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Generic AI interface extensions #UE4 Mostly getters #rb none #test golden path Change 3299717 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion A little tweak to VisLog's point labels drawing - if there's only one point in a set it will no longer append '_0' to the label #UE4 #rb none #test PIE Change 3299527 on 2017/02/13 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Update libWebSockets binaries to fix Linux server web socket connections. #tests matchmaking, mms #rb none Change 3299278 on 2017/02/13 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Ability Task Pass: tasks should not broadcast out (back into ability graph) if the owning ability has completed EndAbility. #rb none #tests pie, golden path Change 3297884 on 2017/02/10 by Paul.Moore@OrionWorkspace_Dev-General #mms - Enable SSL module for PS4 (needed by OpenSSL when using WebSockets). - Turn on verbose logging for WebSockets module for initial MMS debugging. #tests PS4 #rb none Change 3296911 on 2017/02/10 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral Encode user search string so we support special characters #rb RyanG #tests Replays Change 3296746 on 2017/02/10 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 38.3 @ CL 3296659 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3296735 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3296705 on 2017/02/10 by Daniel.Lamb@daniel.lamb_T3905_6612 Added support to the cooker for iterating shared builds. #rb Not used yet #test Fast cook paragon Change 3295747 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Integrated WS upgrade header functionality with latest Fortnite libws changes. - Added "ws" and "wss" protocols to web socket manager context. #rb rob.cannaday #!codereview rob.cannaday, james.hopkin #tests win64, ps4 Change 3295579 on 2017/02/09 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral Fix for replay backward compatibility from John.Pollard #tests #rb na Merging using OrionScratchReleaseMapping Change 3295506 on 2017/02/09 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS O - Added option for force recompute tangents using skin cache #rb none #jira UE-41541 #tests Editor run, toggle, restart Change 3295461 on 2017/02/09 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream fixed huge interpolation times for linear network smoothing on stationary characters, fixed mismatch in movement Base between NavWalking server and Walking client, causing some stationary characters to float in midair copy of CL# 3295439 #jira OR-35664, OR-35572 #rb none #tests game Change 3294954 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Integrating Fortnite WebSocket changes into Orion that fixes some win10 issues. #!codereview rob.cannaday, james.hopkin #tests compile ps4, linux, win64 #rb none Change 3294947 on 2017/02/09 by Daniel.Lamb@daniel.lamb_T3905_6612 The generate stub return result is considered as success when saving cooked packages. Fixes bug with cooking blueprint nativized packages. #rb Trivial #test Cook paragon Change 3293307 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for issue in last checkin - need to clear activecontext regardless #rb none #tests solo smoke with nullrhi Change 3293284 on 2017/02/08 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion Allow setting the per-frame time limit for processing queued bunches separately for instant replays, since they may have more strict timing/framerate requirements. #rb john.pollard #tests golden path Change 3293148 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Fixed invalid memory access* with nullrhi and suppressed IME warning if no valid window handle exists (*Likely only an issue when running with memory validation) #rb none #tests verified invalid access exception no longer occurs with nullrhi #!review-3293149 @Matt.Khulenschmidt Change 3293103 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Fix build #jira OR-34918 #rb none #tests none Change 3292921 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Force local player to maintain x fov axis. #jira OR-34918 #rb david.ratti #tests Render/PIE a level sequence and test that the camera isn't zoomed in. Change 3292869 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Yet more logging for OR-35448 #rb #tests none Change 3292821 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: rob.cannaday PS4 libwebsockets build fix Update build cs files to point to PS4 file location Copy libwebsocket include directory from Fortnite to Orion #rb paul.moore #tests compile/link Win64 Development Editor, PS4 Debug, Linux Development Server #!ROBOMERGE-SOURCE: CL 3292820 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3292277 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DMM @ CL 3292219 #RB:none #Tests:none [CODEREVIEW] paul.moore, benjamin.crocker #QAReview #!ROBOMERGE-SOURCE: CL 3292276 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3292211 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Pulling new ags library from Release-4.15 and reverting hack that disabled feature for AMD users #rb Marcus.Wassmer #tests compiled Change 3292167 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Additional logging for OR-35448 #rb none #tests pie Change 3289462 on 2017/02/06 by Ben.Salem@ben.salem_OrionMain Adding priority filters to Automation tests, also commands to filter on priority levels. #rb adric worley #tests Compiled, ran a few commands to verify it works. Change 3288801 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 (38.3) @ CL 3288681 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3288800 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3288750 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed issue when cooking client and server platforms in single cook some packages would be marked incorrectly because they would be stripped when from client / server. #rb Andrew.Grant #test Cook paragon Change 3288624 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating Unlocked network version #rb #tests na OR-35603 Change 3288612 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612 Added more ini settings to the iterative ini blacklist. #rb Trivial #test Iterative Cook Paragon Change 3288184 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating Downgraded warning to display #!review-3288185 @David.Ratti #rb none #tests none Change 3287634 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ 3287498 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3287619 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3286668 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general Fix a crash when importing a LOD containing different material with less sections #rb none #test none Change 3286112 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general Fix the re-import skeletal mesh regression, where all material disapear. #jira UE-41294 #rb matt.kuhlenschmidt #test see the jira Change 3285859 on 2017/02/03 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed merge error from last checkin with the DDC commandlet #!codereview Matthew.Griffin #test DDC commandlet paragon #rb None Change 3285637 on 2017/02/03 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion Pass in the DemoNetDriver pointer to the ConcurrentWithSlateTickTask instead of accessing it from the world in the task itself. #rb john.pollard #tests golden path Change 3285479 on 2017/02/03 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Made bot communicate ults when they're up, not when they're using it #Orion CL also contains a bit of code shuffling around, preparing ground for HTN plug in #rb none #test golden path Change 3285125 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3285078 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3285124 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3283996 on 2017/02/02 by Michael.Trepka@Michael.Trepka_PC_Orion-Dev-General Added UGameUserSettings::GetRecommandedResolutionScale() to replace UOrionGameUserSettings::GetDefaultResolutionScale(). This makes things less confusing (UGameUserSettings::GetRecommandedResolutionScale() returns scale recommended based on results of the benchmark and UGameUserSettings::GetDefaultResolutionScale() returns scale based on user settings) and fixes a regression introduced in 3257936 (OR-35544) #rb Cody.Haskell #tests Tested on PC Change 3283951 on 2017/02/02 by Daniel.Lamb@daniel.lamb_T3905_6612 Ensure DDC commandlet calls begincacheforcookedplatformdata correctly. #rb None #!codereview Matthew.Griffin #test DDC commandlet paragon. Change 3283874 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion fix for invalid resource issue #rb: none #code review: Daniel.Wright #tests: compile and editor with wolf Change 3283621 on 2017/02/02 by Laurent.Delayen@laurent.delayen_Work2016_Orion Femme WIP whip aiming for Q ability. #rb none #tests Femme Change 3283216 on 2017/02/02 by jason.bestimt@Jason.Bestimt_Dev-General #ORION_MAIN - Merge 37.2 @ CL 3282900 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3283199 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3282954 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion It becomes invalid on the resource, so checking null, but still wip on verifying this with Daniel Wright. He's sick out. #rb:none #tests: compile #code review:Daniel.Wright #Jira: OR-35418 Change 3281993 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612 Removed default unattended flag. #rb Trivial #test PS4 cook run paragon. Change 3281990 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612 Potential fix for deterministic cooking issue with UMovieSceneSignedObjects. #rb Andrew.Grant #!codereview Max.Preussner #test Cook and run paragon ps4. Change 3281610 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion AimOffsetLookAt is now thread safe. #rb lina.halper #tests femme Change 3281609 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion Fixed 'Convert to AimOffset LookAt' option being broken in Persona. #rb lina.halper #tests works for Femme now. Change 3281019 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3280498 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3281018 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3280813 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: matthew.griffin Prevent inclusion of NotForLicensees files when staging CrashReportClient config files #rb none #tests none #!ROBOMERGE-SOURCE: CL 3280812 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3279921 on 2017/01/31 by Yanni.Tripolitis@yanni.tripolitis_Dev_General_Cary Fixed an error in the Round MF, that was somehow "leaked" into Paragon from Odin. #lockdown Billy.Rivers, Adam.Bellefeuil #!codereview Tim.Elek Change 3279178 on 2017/01/31 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed up diff files commandlet stack information #rb Joe.Conley #test Diff cooked packages Change 3279084 on 2017/01/31 by Andrew.Grant@andrew.grant.T6730.orion.floating Merging //UE4/Main at 3276432 through Orion-Staging #rb #tests na Change 3279078 on 2017/01/31 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3279032 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3279077 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277908 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_37 - Fix for "-game" crash with missing meta data #RB:none #Tests:none [CodeReviewed]: andrew.grant, jamie.dale, mieszko.zielinski #!ROBOMERGE-SOURCE: CL 3277901 in //Orion/Release-37/... via CL 3277902 via CL 3277904 via CL 3277905 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277520 on 2017/01/30 by Andrew.Grant@andrew.grant.T6730.orion.floating Workaround for OR-35418 #!ROBOMERGE: Main #rb none #tests verified ShortSoloGame test completes without a crash Change 3277357 on 2017/01/30 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed the rebuild lighting commandlet. #rb Trivial #test Rebuild lighting dev general Change 3277322 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3277275 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3277296 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277210 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: andrew.grant Non-shipping test changes: Fixed issue where with -stdout messages would be duplicated due to FeedbackContextAnsi echoing to stdout by default Changed stdout output to postfix instead of trail newlines Firstpass of finding and displaying crash callstacks in Orion Test Framework. #rb none #tests ran test framework with tests that purposefully crashed/checked #!ROBOMERGE-SOURCE: CL 3276889 in //Orion/Release-37/... via CL 3277207 via CL 3277208 via CL 3277209 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3276774 on 2017/01/29 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for non-unity issue. #tests compiled #rb none #!ROBOMERGE: Main, DUI Change 3276594 on 2017/01/28 by Lina.Halper@Lina.Halper_Orion Checked in potential fix for nonunity build issue #rb:none #tests:compile Change 3275806 on 2017/01/27 by Ben.Salem@ben.salem_OrionMain Adding in a checkpointing system for automated test passes where, if a client crashes while running a pass, on reboot and reissue of the automation command the test pass will start off where it left off, skipping the crashing test. #rb clayton.langford #tests Ran several dozen test passses. Seriously. #!codereview steve.white, bob.ferreira, clayton.langford, adric.worley Change 3275803 on 2017/01/27 by Shaun.Kime@shaun.kime_RDU-WD-9788_oriondevgen Paragon has retainer widgets with no World set. When encountered, they can cause the scene list to be desynchronized with the rendering thread. This logic resolves the issue by registering a null scene in this case, properly setting the slate scene index for subsequent slate draw calls. #rb nick.darnell #jira OR-34919 #TESTS na Change 3275533 on 2017/01/27 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Switch to static pointer to fix crash when tearing down curve editor. #jira UE-40796 #rb andrew.rodham #tests none Change 3275093 on 2017/01/27 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3273298 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3273417 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3274700 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion #Anim curve crash on cooking - fixed crash during cooking while accessing default value of material - this code doesn't have to run during cooking with inactive world, so I'm checking that #code review: Daniel.Wright, Chris.Bunner, Jurre.DeBaare #rb: none #tests: cooking Change 3274129 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion Fixed safer to get featurelevel #rb: Daniel.Wright #tests: compile/wolf Change 3274012 on 2017/01/26 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream fixed crash in navigation grids #jira OR-35356 #rb none #tests PIE Change 3273803 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion Fixed issue with animation curve getting reset to 0.f - the issue is that skeleton contains material flag types, so now it just keeps setting the value - even after I fix validation check, it still cleared it due to the material curve not found anymore, so added to support default value setting #jira: OR-34563 #rb: Martin.Wilson, Chris.Bunner, Benn.Gallagher #code review: Martin.Wilson, Daniel.Wright #tests: wolf, coil Change 3273257 on 2017/01/26 by Alexis.Matte@amatte-orion-dev-general Isolate by material slot instead of section index. Add UI to isolate and highlight material in the material panel #rb matt.kuhlenschmidt #jira UE-41131 #tests none Change 3272527 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: chris.bunner Ensure FSceneRenderTargets snapshot copies default clear colors. #tests Golden path on lowest and high settings #rb None #lockdown Jason.Bestimt #jira OR-34905 #!ROBOMERGE-SOURCE: CL 3272507 in //Orion/Release-37.1/... via CL 3272521 via CL 3272525 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3272244 on 2017/01/25 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS Show more info when a material instance failed to compile #jira OR-34626 #tests Forced crash in the debugger #rb Daniel.Wright Change 3272109 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: philip.buuck Fix bad merge from Main #rb Dan.Hertzka #tests PIE [CodeReviewed] Andrew.Grant #lockdown Andrew.Grant #!ROBOMERGE-SOURCE: CL 3272106 in //Orion/Release-37.1/... via CL 3272107 via CL 3272108 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3271721 on 2017/01/25 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream jungle minions will spawn navigation obstacles when they are stuck in static geometry, fixed issues with falling off cliffs #jira OR-35054 #rb Mieszko.Zielinski #tests PIE Change 3271432 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3271043 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3271429 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) [CL 3322856 by Andrew Grant in Main branch]
2017-02-25 19:37:22 -05:00
if (Params.Unattended)
{
if (!WelcomedCorrectly)
{
throw new AutomationException("Server or client exited before we asked it to.");
}
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3316439) #lockdown Nick.Penwarden Change 3315047 on 2017/02/21 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion HTN code first check in #UE4 #rb none #test currently unused Change 3314042 on 2017/02/21 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - DAILY Main @ CL 3313484 #RB:none #Tests:none Change 3313355 on 2017/02/20 by Uriel.Doyon@uriel.doyon_PC2_Orion Changed the preliminary GPU benchmark workloads to take into account the target workload. This is to prevent running the last test with poor performance, risking a driver reset. #jira OR-29915 #rb marcus.wassmer #test Run the game triggering benchmarks Change 3312553 on 2017/02/20 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Implemented a simple AITask for running EQS queries #UE4 #rb Lukasz.Furman #test golden path Change 3311661 on 2017/02/20 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge MAIN @ CL 3311631 #RB:none #Tests:none Change 3310392 on 2017/02/17 by Daniel.Lamb@daniel.lamb_T3905_6612 Unreal pak now outputs to named log files instead of timestamps. #rb Trivial #test Cook deploy paragon #jira OR-36057 Change 3310196 on 2017/02/17 by Clayton.Langford@RDU-WD-8359_3635_Paragon_DevGen Created an event to be fired whenever a GameplayCue is routed that passes all relevant info about that GC. Added a listener in OrionPhasedFunctionalTest that parses that event into a string and stores it in an array to be accessed from a test phase later. #test PIE #rb Ben.Salem, Adric.Worley Change 3308437 on 2017/02/16 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge MAIN @ CL 3308413 (Prep for Merge up) #RB:none #Tests:none Change 3306497 on 2017/02/16 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for compilation issue with USE_MALLOC_STOMP #rb none #tests compiled with malloc_stomp Change 3306468 on 2017/02/16 by Cody.Haskell@OrionStream #Orion - Text popup work for Shield. If you click on an OrionEditableTextBox while running the game with -gfn, a special popup is called. Should do nothing normally. #rb none #tests PIE, golden path. Change 3305945 on 2017/02/16 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Remove unused/deprecated UGameplayEffectExtension class #rb #tests none Change 3304630 on 2017/02/15 by Jason.Bestimt@Jason.Bestimt_Dev-General #ORION_DG - Merge Mieszko stuff from MAIN to DG #RB:none #TestS:none #!codereview: mieszko.zielinski Change 3303785 on 2017/02/15 by jason.bestimt@Jason.Bestimt_Dev-General #ORION_MAIN - Merge 38.3 @ CL 3303224 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3303718 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) #!ROBOMERGE-SAYS: Unresolved conflicts. jason.bestimt, please merge this change by hand. //Orion/Dev-General/OrionGame/Content/UI/DeckBuilder/DeckBuilderRoot.uasset - can't integrate exclusive file already opened //Orion/Dev-General/OrionGame/Content/UI/Master_Layouts/FrontEnd.uasset - can't integrate exclusive file already opened #!codereview: jason.bestimt Change 3302382 on 2017/02/14 by Alexis.Matte@amatte-orion-dev-general Fix import of morph target when there is no animation #jira UE-41383 #jira OR-35859 #rb none #test none Change 3301538 on 2017/02/14 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 38.3 @ CL 3301392 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3301481 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3299985 on 2017/02/13 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream added time limit to "get out of overlap" move for minons to avoid getting stuck in moving to inaccessbile spots #jira OR-35834 #rb Mieszko.Zielinski #tests PIE Change 3299732 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Tweaked the way EQS tests of negative score get normalized #UE4 #rb none #test golden path + math #!codereview Lukasz.Furman, John.Abercrombie Change 3299724 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Generic AI interface extensions #UE4 Mostly getters #rb none #test golden path Change 3299717 on 2017/02/13 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion A little tweak to VisLog's point labels drawing - if there's only one point in a set it will no longer append '_0' to the label #UE4 #rb none #test PIE Change 3299527 on 2017/02/13 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Update libWebSockets binaries to fix Linux server web socket connections. #tests matchmaking, mms #rb none Change 3299278 on 2017/02/13 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Ability Task Pass: tasks should not broadcast out (back into ability graph) if the owning ability has completed EndAbility. #rb none #tests pie, golden path Change 3297884 on 2017/02/10 by Paul.Moore@OrionWorkspace_Dev-General #mms - Enable SSL module for PS4 (needed by OpenSSL when using WebSockets). - Turn on verbose logging for WebSockets module for initial MMS debugging. #tests PS4 #rb none Change 3296911 on 2017/02/10 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral Encode user search string so we support special characters #rb RyanG #tests Replays Change 3296746 on 2017/02/10 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 38.3 @ CL 3296659 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3296735 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3296705 on 2017/02/10 by Daniel.Lamb@daniel.lamb_T3905_6612 Added support to the cooker for iterating shared builds. #rb Not used yet #test Fast cook paragon Change 3295747 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Integrated WS upgrade header functionality with latest Fortnite libws changes. - Added "ws" and "wss" protocols to web socket manager context. #rb rob.cannaday #!codereview rob.cannaday, james.hopkin #tests win64, ps4 Change 3295579 on 2017/02/09 by John.Pollard@John.Pollard_T2802_Orion_DevGeneral Fix for replay backward compatibility from John.Pollard #tests #rb na Merging using OrionScratchReleaseMapping Change 3295506 on 2017/02/09 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS O - Added option for force recompute tangents using skin cache #rb none #jira UE-41541 #tests Editor run, toggle, restart Change 3295461 on 2017/02/09 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream fixed huge interpolation times for linear network smoothing on stationary characters, fixed mismatch in movement Base between NavWalking server and Walking client, causing some stationary characters to float in midair copy of CL# 3295439 #jira OR-35664, OR-35572 #rb none #tests game Change 3294954 on 2017/02/09 by Paul.Moore@OrionWorkspace_Dev-General #orion #mms - Integrating Fortnite WebSocket changes into Orion that fixes some win10 issues. #!codereview rob.cannaday, james.hopkin #tests compile ps4, linux, win64 #rb none Change 3294947 on 2017/02/09 by Daniel.Lamb@daniel.lamb_T3905_6612 The generate stub return result is considered as success when saving cooked packages. Fixes bug with cooking blueprint nativized packages. #rb Trivial #test Cook paragon Change 3293307 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for issue in last checkin - need to clear activecontext regardless #rb none #tests solo smoke with nullrhi Change 3293284 on 2017/02/08 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion Allow setting the per-frame time limit for processing queued bunches separately for instant replays, since they may have more strict timing/framerate requirements. #rb john.pollard #tests golden path Change 3293148 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Fixed invalid memory access* with nullrhi and suppressed IME warning if no valid window handle exists (*Likely only an issue when running with memory validation) #rb none #tests verified invalid access exception no longer occurs with nullrhi #!review-3293149 @Matt.Khulenschmidt Change 3293103 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Fix build #jira OR-34918 #rb none #tests none Change 3292921 on 2017/02/08 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Force local player to maintain x fov axis. #jira OR-34918 #rb david.ratti #tests Render/PIE a level sequence and test that the camera isn't zoomed in. Change 3292869 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Yet more logging for OR-35448 #rb #tests none Change 3292821 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: rob.cannaday PS4 libwebsockets build fix Update build cs files to point to PS4 file location Copy libwebsocket include directory from Fortnite to Orion #rb paul.moore #tests compile/link Win64 Development Editor, PS4 Debug, Linux Development Server #!ROBOMERGE-SOURCE: CL 3292820 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3292277 on 2017/02/08 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge DMM @ CL 3292219 #RB:none #Tests:none [CODEREVIEW] paul.moore, benjamin.crocker #QAReview #!ROBOMERGE-SOURCE: CL 3292276 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3292211 on 2017/02/08 by Andrew.Grant@andrew.grant.T6730.orion.floating Pulling new ags library from Release-4.15 and reverting hack that disabled feature for AMD users #rb Marcus.Wassmer #tests compiled Change 3292167 on 2017/02/08 by David.Ratti@David.Ratti_G6218_Orion.Dev-General Additional logging for OR-35448 #rb none #tests pie Change 3289462 on 2017/02/06 by Ben.Salem@ben.salem_OrionMain Adding priority filters to Automation tests, also commands to filter on priority levels. #rb adric worley #tests Compiled, ran a few commands to verify it works. Change 3288801 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 (38.3) @ CL 3288681 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3288800 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3288750 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed issue when cooking client and server platforms in single cook some packages would be marked incorrectly because they would be stripped when from client / server. #rb Andrew.Grant #test Cook paragon Change 3288624 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating Unlocked network version #rb #tests na OR-35603 Change 3288612 on 2017/02/06 by Daniel.Lamb@daniel.lamb_T3905_6612 Added more ini settings to the iterative ini blacklist. #rb Trivial #test Iterative Cook Paragon Change 3288184 on 2017/02/06 by Andrew.Grant@andrew.grant.T6730.orion.floating Downgraded warning to display #!review-3288185 @David.Ratti #rb none #tests none Change 3287634 on 2017/02/06 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ 3287498 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3287619 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3286668 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general Fix a crash when importing a LOD containing different material with less sections #rb none #test none Change 3286112 on 2017/02/03 by Alexis.Matte@amatte-orion-dev-general Fix the re-import skeletal mesh regression, where all material disapear. #jira UE-41294 #rb matt.kuhlenschmidt #test see the jira Change 3285859 on 2017/02/03 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed merge error from last checkin with the DDC commandlet #!codereview Matthew.Griffin #test DDC commandlet paragon #rb None Change 3285637 on 2017/02/03 by Ryan.Gerleve@Ryan.Gerleve_T3703_Orion Pass in the DemoNetDriver pointer to the ConcurrentWithSlateTickTask instead of accessing it from the world in the task itself. #rb john.pollard #tests golden path Change 3285479 on 2017/02/03 by Mieszko.Zielinski@mieszko.zielinski_T4675_Orion Made bot communicate ults when they're up, not when they're using it #Orion CL also contains a bit of code shuffling around, preparing ground for HTN plug in #rb none #test golden path Change 3285125 on 2017/02/03 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3285078 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3285124 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3283996 on 2017/02/02 by Michael.Trepka@Michael.Trepka_PC_Orion-Dev-General Added UGameUserSettings::GetRecommandedResolutionScale() to replace UOrionGameUserSettings::GetDefaultResolutionScale(). This makes things less confusing (UGameUserSettings::GetRecommandedResolutionScale() returns scale recommended based on results of the benchmark and UGameUserSettings::GetDefaultResolutionScale() returns scale based on user settings) and fixes a regression introduced in 3257936 (OR-35544) #rb Cody.Haskell #tests Tested on PC Change 3283951 on 2017/02/02 by Daniel.Lamb@daniel.lamb_T3905_6612 Ensure DDC commandlet calls begincacheforcookedplatformdata correctly. #rb None #!codereview Matthew.Griffin #test DDC commandlet paragon. Change 3283874 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion fix for invalid resource issue #rb: none #code review: Daniel.Wright #tests: compile and editor with wolf Change 3283621 on 2017/02/02 by Laurent.Delayen@laurent.delayen_Work2016_Orion Femme WIP whip aiming for Q ability. #rb none #tests Femme Change 3283216 on 2017/02/02 by jason.bestimt@Jason.Bestimt_Dev-General #ORION_MAIN - Merge 37.2 @ CL 3282900 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3283199 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3282954 on 2017/02/02 by Lina.Halper@Lina.Halper_Orion It becomes invalid on the resource, so checking null, but still wip on verifying this with Daniel Wright. He's sick out. #rb:none #tests: compile #code review:Daniel.Wright #Jira: OR-35418 Change 3281993 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612 Removed default unattended flag. #rb Trivial #test PS4 cook run paragon. Change 3281990 on 2017/02/01 by Daniel.Lamb@daniel.lamb_T3905_6612 Potential fix for deterministic cooking issue with UMovieSceneSignedObjects. #rb Andrew.Grant #!codereview Max.Preussner #test Cook and run paragon ps4. Change 3281610 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion AimOffsetLookAt is now thread safe. #rb lina.halper #tests femme Change 3281609 on 2017/02/01 by Laurent.Delayen@laurent.delayen_Work2016_Orion Fixed 'Convert to AimOffset LookAt' option being broken in Persona. #rb lina.halper #tests works for Femme now. Change 3281019 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3280498 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3281018 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3280813 on 2017/02/01 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: matthew.griffin Prevent inclusion of NotForLicensees files when staging CrashReportClient config files #rb none #tests none #!ROBOMERGE-SOURCE: CL 3280812 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3279921 on 2017/01/31 by Yanni.Tripolitis@yanni.tripolitis_Dev_General_Cary Fixed an error in the Round MF, that was somehow "leaked" into Paragon from Odin. #lockdown Billy.Rivers, Adam.Bellefeuil #!codereview Tim.Elek Change 3279178 on 2017/01/31 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed up diff files commandlet stack information #rb Joe.Conley #test Diff cooked packages Change 3279084 on 2017/01/31 by Andrew.Grant@andrew.grant.T6730.orion.floating Merging //UE4/Main at 3276432 through Orion-Staging #rb #tests na Change 3279078 on 2017/01/31 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3279032 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3279077 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277908 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_37 - Fix for "-game" crash with missing meta data #RB:none #Tests:none [CodeReviewed]: andrew.grant, jamie.dale, mieszko.zielinski #!ROBOMERGE-SOURCE: CL 3277901 in //Orion/Release-37/... via CL 3277902 via CL 3277904 via CL 3277905 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277520 on 2017/01/30 by Andrew.Grant@andrew.grant.T6730.orion.floating Workaround for OR-35418 #!ROBOMERGE: Main #rb none #tests verified ShortSoloGame test completes without a crash Change 3277357 on 2017/01/30 by Daniel.Lamb@daniel.lamb_T3905_6612 Fixed the rebuild lighting commandlet. #rb Trivial #test Rebuild lighting dev general Change 3277322 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3277275 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3277296 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3277210 on 2017/01/30 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: andrew.grant Non-shipping test changes: Fixed issue where with -stdout messages would be duplicated due to FeedbackContextAnsi echoing to stdout by default Changed stdout output to postfix instead of trail newlines Firstpass of finding and displaying crash callstacks in Orion Test Framework. #rb none #tests ran test framework with tests that purposefully crashed/checked #!ROBOMERGE-SOURCE: CL 3276889 in //Orion/Release-37/... via CL 3277207 via CL 3277208 via CL 3277209 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3276774 on 2017/01/29 by Andrew.Grant@andrew.grant.T6730.orion.floating Fix for non-unity issue. #tests compiled #rb none #!ROBOMERGE: Main, DUI Change 3276594 on 2017/01/28 by Lina.Halper@Lina.Halper_Orion Checked in potential fix for nonunity build issue #rb:none #tests:compile Change 3275806 on 2017/01/27 by Ben.Salem@ben.salem_OrionMain Adding in a checkpointing system for automated test passes where, if a client crashes while running a pass, on reboot and reissue of the automation command the test pass will start off where it left off, skipping the crashing test. #rb clayton.langford #tests Ran several dozen test passses. Seriously. #!codereview steve.white, bob.ferreira, clayton.langford, adric.worley Change 3275803 on 2017/01/27 by Shaun.Kime@shaun.kime_RDU-WD-9788_oriondevgen Paragon has retainer widgets with no World set. When encountered, they can cause the scene list to be desynchronized with the rendering thread. This logic resolves the issue by registering a null scene in this case, properly setting the slate scene index for subsequent slate draw calls. #rb nick.darnell #jira OR-34919 #TESTS na Change 3275533 on 2017/01/27 by Max.Chen@Max.Chen_T4664_Orion_Main Sequencer: Switch to static pointer to fix crash when tearing down curve editor. #jira UE-40796 #rb andrew.rodham #tests none Change 3275093 on 2017/01/27 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3273298 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3273417 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3274700 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion #Anim curve crash on cooking - fixed crash during cooking while accessing default value of material - this code doesn't have to run during cooking with inactive world, so I'm checking that #code review: Daniel.Wright, Chris.Bunner, Jurre.DeBaare #rb: none #tests: cooking Change 3274129 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion Fixed safer to get featurelevel #rb: Daniel.Wright #tests: compile/wolf Change 3274012 on 2017/01/26 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream fixed crash in navigation grids #jira OR-35356 #rb none #tests PIE Change 3273803 on 2017/01/26 by Lina.Halper@Lina.Halper_Orion Fixed issue with animation curve getting reset to 0.f - the issue is that skeleton contains material flag types, so now it just keeps setting the value - even after I fix validation check, it still cleared it due to the material curve not found anymore, so added to support default value setting #jira: OR-34563 #rb: Martin.Wilson, Chris.Bunner, Benn.Gallagher #code review: Martin.Wilson, Daniel.Wright #tests: wolf, coil Change 3273257 on 2017/01/26 by Alexis.Matte@amatte-orion-dev-general Isolate by material slot instead of section index. Add UI to isolate and highlight material in the material panel #rb matt.kuhlenschmidt #jira UE-41131 #tests none Change 3272527 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: chris.bunner Ensure FSceneRenderTargets snapshot copies default clear colors. #tests Golden path on lowest and high settings #rb None #lockdown Jason.Bestimt #jira OR-34905 #!ROBOMERGE-SOURCE: CL 3272507 in //Orion/Release-37.1/... via CL 3272521 via CL 3272525 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3272244 on 2017/01/25 by Rolando.Caloca@rolando.caloca_T3903_OrionMainS Show more info when a material instance failed to compile #jira OR-34626 #tests Forced crash in the debugger #rb Daniel.Wright Change 3272109 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: philip.buuck Fix bad merge from Main #rb Dan.Hertzka #tests PIE [CodeReviewed] Andrew.Grant #lockdown Andrew.Grant #!ROBOMERGE-SOURCE: CL 3272106 in //Orion/Release-37.1/... via CL 3272107 via CL 3272108 #!ROBOMERGE-BOT: ORION (Main -> Dev-General) Change 3271721 on 2017/01/25 by Lukasz.Furman@Lukasz.Furman_T7320_OrionStream jungle minions will spawn navigation obstacles when they are stuck in static geometry, fixed issues with falling off cliffs #jira OR-35054 #rb Mieszko.Zielinski #tests PIE Change 3271432 on 2017/01/25 by Jason.Bestimt@ROBOMERGE_ORION_Dev_General #!ROBOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 37.2 @ CL 3271043 #RB:none #Tests:none #!ROBOMERGE-SOURCE: CL 3271429 in //Orion/Main/... #!ROBOMERGE-BOT: ORION (Main -> Dev-General) [CL 3322856 by Andrew Grant in Main branch]
2017-02-25 19:37:22 -05:00
}
}
private static void SetupClientParams(List<DeploymentContext> DeployContextList, ProjectParams Params, string ClientLogFile, out ERunOptions ClientRunFlags, out string ClientApp, out string ClientCmdLine)
{
if (Params.ClientTargetPlatforms.Count == 0)
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3106465) #lockdown Nick.Penwarden Change 3110660 on 2016/9/1 by Andrew.Grant Moved performance/quality warnings out of DrawStatsHUD into new function and now display them in everything other than shipping builds (unless disabled, or screenshot/movie dumping is in progress. HLOD warning is updated every 20 secs to deal with streaing levels. Moved debug warnings into a separate Draw function (still disabled in test, but would like to make this an option in Orion soon). #rb Michael.Noland #tests verified we see our unbuilt HLOD warning in v31 :( Change 3106649 on 2016/08/30 by Cody.Haskell #Orion - Input Axis Work #rb DanH #tests PIE Change 3106299 on 2016/08/30 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 31.2 @ CL 3105865 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3105969 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3106213 on 2016/08/30 by Ben.Marsh BuildGraph: Include UAT, UBT, and UHT binaries in precompiled binaries zip file. #rb none #tests preflight Change 3105994 on 2016/08/30 by Martin.Wilson Stop recompression happening when additive frame index is changed "interactively" (recompression will occur at end of interactive input) #jira UE-35289 #rb Thomas.Sarkanen #tests Tested UI in editor Change 3105331 on 2016/08/29 by Uriel.Doyon Allowed texture to ignore streaming MipBias with UTexture2D::bIgnoreStreamingMipBias Used this new flag when assigning texture to UImage::SetBrushFromTexture to prevent having low quality UI in low texture budget. #rb marcus.wassmer #tests launched editor and played game #jira OR-25814 Change 3105143 on 2016/08/29 by Josh.Markiewicz #UE4 - added assert when histogram input parameters don't match #rb none #tests launched/ran/won game golden path #codereview dmitry.rekman, michael.noland, bart.bressler Change 3104976 on 2016/08/29 by Jon.Lietz pickup refector - fixed a big that would allow mixed replication to call a gameplay cue's added twice. - All pickups now use the pick up manager, consolidated all pick up code into the manager. - added to the XP set so we can define the CXP bounty for targets. #RB Dave.Ratti #tests Bot match, test maps, spawning coins and pickups. Change 3103480 on 2016/08/26 by Josh.Markiewicz #UE4 - added GetSessionIdStr to FOnlineSessionSearchResult and FOnlineSession #rb none #tests golden path matchmaking #codereview paul.moore, eric.newman Change 3103410 on 2016/08/26 by Max.Chen Movie Capture: Fix commandline burnin option. #rb none #tests Render movie with commandline -UseBurnIn=yes option. Change 3102134 on 2016/08/25 by Brian.Karis Fix for HDR output exposure. Added 1000nit output option. #rb marcus #tests agora Change 3101276 on 2016/08/25 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_31 - Merging CL 3100347 (head revision of 2 files :o ) #RB:none #Tests:none [CodeReviewed]: matt.schembari, max.preussner #R@BOMERGE-SOURCE: CL 3101273 in //Orion/Release-31/... via CL 3101274 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3101267 on 2016/08/25 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_DUI - Integrating Media changes from 4.13 (head revision) #RB:none #Tests:none /Engine/Plugins/Media /Engine/Source/Runtime/Media /Engine/Source/Runtime/MediaAssets [CodeReviewed] matt.schembari, max.preussner #R@BOMERGE-SOURCE: CL 3099267 in //Orion/Dev-UI/... via CL 3101266 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3100378 on 2016/08/24 by John.Pollard Fix a crash that can occur when scrubbing in replays #codereview David.Ratti #tests Replays #rb DavidR This is the output: [2016.08.24-21.35.05:973][603]LogAbilitySystem:Warning: OnRep_ReplicatedAnimMontage: PlayMontageSimulated failed. Name: AbilitySystemComponent0, AnimMontage: LevelStart_Montage Change 3100375 on 2016/08/24 by Laurent.Delayen Added AimOffsetLookAt node. AimOffset node that drives its inputs automatically from a Target Location (and a Source Socket). #rb none #codereview lina.halper #tests Tacticia's RMB Targeting Change 3100278 on 2016/08/24 by Laurent.Delayen Fix for fast path struct copy being broken for FVectors. #rb lina.halper #codereview thomas.sarkanen #tests Chains' hook, Tacticia's LaserBeam and OrientationWarping Change 3100161 on 2016/08/24 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Fix issue with refresh viewer command failing due to backend congestion #rb RyanG #tests Replays Change 3100114 on 2016/08/24 by jason.bestimt #ORION_MAIN - Merge DUI @ CL 3098849 #RB:none #Tests:none #CodeReview: kerrington.smith, matt.schembari #R@BOMERGE-SOURCE: CL 3100078 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3100015 on 2016/08/24 by Michael.Noland Don't allow the consideration of nodes that won't be processed to affect the live aspect of the active sound containing a cross fade node #jira UE-34998 #rb Aaron.McLeran [re-implementing CL# 3098559 originaly by Marc.Audy in Release 4.13] #tests Compiled and ran a golden path match with headphones on Change 3100012 on 2016/08/24 by Michael.Noland UE-34951 - Zero-volume vorbis decoded sounds are too expensive -Adding an audio settings parameter to disable zero-volume playback globally -Adding a new bool on sound waves to allow opt-in to virtualize when at zero-volume #rb marc.audy [re-implementing CL# 3094893 from Dev-Framework, originally by Aaron McLeran] #tests Compiled and ran a golden path match with headphones on Change 3099889 on 2016/08/24 by Max.Chen Sequencer: Added command line option to enable burnin #rb none #tests Render movie from command line wtih -UseBurnIn=yes Change 3099801 on 2016/08/24 by Lina.Halper Removed unnecessary comment #rb: none #code review: Benn.Gallagher #tests: compile Change 3099787 on 2016/08/24 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani #http - fix for cancelled requests that have not been started never triggering a completion delegate - fixes soft lock when handling disconnects during login OR-26945 The client stays on the "downloading profile" screen when rejoining after disconnecting #rb josh.markiewicz, alex.fennell #tests none #R@BOMERGE-SOURCE: CL 3099782 in //Orion/Release-30.2/... via CL 3099784 via CL 3099785 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3099252 on 2016/08/24 by Lina.Halper Fixed menu text #rb: none #code review: Thomas.Sarkanen #tests: open editor and create child montage and replaced the animation Change 3099251 on 2016/08/24 by Lina.Halper Deterministic cooking of skeleton - abandon all guid from GuidMap. GuidMap is still important since we have to generate UID from it, but GuidMap only contains name once cooked #jira: UE-34834 #rb: Martin.Wilson #tests: cooking orion and make sure it works Change 3098504 on 2016/08/23 by Bart.Bressler Add server time between sending packets monitoring histogram #rb dmitry.rekman #tests ran server locally and made sure analytics events were sent Change 3098494 on 2016/08/23 by Michael.Noland Engine: Added UWorld::SetTimeUntilNextGarbageCollection to change the GC timer for use when doing automated performance capture measurements - Note: Things that force a GC will still force a GC after using this method (and they will also reset the timer) - Fixed a bug where UWorld::ForceGarbageCollection might not force a GC immediately if run on a server with no clients connected #tests Tested by calling while stat dumphitches was active and confirmed that the interval changed #codereview ben.salem, gil.gribb #rb none Change 3098491 on 2016/08/23 by Mieszko.Zielinski Expanded BTDecorator_IsAtLocation with an option to use AIDataProvider #UE4 #rb Lukasz.Furman #test golden path Change 3098070 on 2016/08/23 by Lina.Halper Fix crash with UI update reconstructing - will have to come up with a better solution than this. #rb: Martin.Wilson #tests: child anim montage Change 3097914 on 2016/08/23 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel Merging CL #3097879 from //WEX/Main/Engine/Source/Runtime/Online/NotForLicensees/OnlineSubsystemMcp/... to //Orion/Main/Engine/Plugins/Online/NotForLicensees/OnlineSubsystemMcp/Source/... #Analytics #OSS: Adjusted cohort selection algorithm and test cases [CodeReviewed]: Philip.Buuck #TESTS: unit tests #RB: none #R@BOMERGE-SOURCE: CL 3097911 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3097745 on 2016/08/23 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Megre 30.2/31 @ CL 3096895 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3097716 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3097722 on 2016/08/23 by Chris.Bunner Update texture expression properties before triggering parent material recompile. #rb John.Billon #tests Editor replace references, Golden path #jira OR-27531 Change 3097694 on 2016/08/23 by Lina.Halper #Child Anim Montage - Duplicate from parent of the information it cares to get - Currently it is selective on copying what data - Modified GetAllAnimationSequencesReferred to get a partial data - Added ParentAsset/AssetMappingTable in AnimationAsset - Sequence Browser opening would also add to history - AnimNotify - CanBeplaced virtual function lets you filter which asset it's placed on #code review: Benn.Gallagher, Thomas.Sarkanen, David.Ratti #rb:Martin.Wilson #tests: creating child montage, editing, lots of UI functionality, notifies placement Change 3097513 on 2016/08/23 by Thomas.Sarkanen Non-POD structs can now be copied using the fast path We now always use CPP struct ops to perform copies when dealing with struct properties. #jira UE-34571 - Support struct member access on AnimBP fast path #rb Laurent.Delayen #tests OrionEntry with Tacticia, confirming orientation warping works correctly and fast path is enabled. Agora_P with Tacticia & bots, played two games. Change 3096729 on 2016/08/22 by Mieszko.Zielinski Fixes to EQS scoring function preview #UE4 #rb Lukasz.Furman #test golden path Change 3096596 on 2016/08/22 by Jason.Bestimt #ORION_DG - Fixes from 4.13 to video playback (CL# 3075761 & 3083970) #RB:none #Tests:none #CodeReview: matt.schembari, max.preussner #R@BOMERGE: MAIN Change 3096550 on 2016/08/22 by Jurre.deBaare Fix for HLOD dirty clusters PIE warning message #tests Simulated Origin with built HLOD clusters, and with one dirty cluster #rb none Change 3096532 on 2016/08/22 by Mieszko.Zielinski Modified GameplayTask_WaitDelay to allow specifying task's priority #UE4 As part of the change introduced UGameplayTask::NewTaskUninitialized that's basically a redirect of NewObject, but clearly indicates that a task needs to be manually initialized #codereview Lukasz.Furman #rb none #test golden path Change 3096455 on 2016/08/22 by Jason.Bestimt #R@BOMERGE-AUTHOR: keli.hlodversson #CEF: Copy upgraded CEF binaries from //Portal/Main to fix crash issues with Sofort purchases #RB David.Nikdel #TESTS none #R@BOMERGE-SOURCE: CL 3096452 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3096316 on 2016/08/22 by Sammy.James Resave to fix log warnings. BPC changes to ensure type saves. #rb #tests editor Change 3096040 on 2016/08/22 by bruce.nesbit Revised fix for landscape crash #rb GarethM #tests Game #codereview Bart.Bressler Change 3096015 on 2016/08/22 by bruce.nesbit Fixed a crash in ALandscapeProxy::PostLoad when running an editor build with -server #rb none #tests game #codereview Bart.Bressler Change 3095578 on 2016/08/19 by Mieszko.Zielinski Made NavigationSystem call TickAsyncBuild on all navigation data instances is there was an ongoing navigation build in progress in the editor #UE4 This was causing Orion's flow field to not build if auto navmesh update was disabled in the editor #rb none #test golden path #codereview Lukasz.Furman Change 3095397 on 2016/08/19 by Lina.Halper Fix issue with crash when deleting all segment #rb: Laurent.Delayen #tests: delete segment and make sure it doesn't crash #jira: UE-34830 Change 3095060 on 2016/08/19 by Bart.Bressler Don't load ULandscapeComponent objects on dedicated servers to save memory. #tests cooked server data and played a Solo vs. AI game #rb gareth.martin #codereview james.golding Change 3095037 on 2016/08/19 by Lina.Halper Potential fix with montage trigger ensure on marker sync group #jira: OR-27685 #rb: Benn.Gallagher #code review: Martin.Wilson #tests: attack primhelilx with knock up Change 3094962 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #Merging #OSS - Added FUserOnlineAccountMcp::SelectCohort #RB: None #TESTS: test suite in source [CodeReviewed]: Philip.Buuck #R@BOMERGE-SOURCE: CL 3094961 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3094950 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #Merge #UE4 - Made FMD5 const-correct #RB: none #TEST: none #R@BOMERGE-SOURCE: CL 3094949 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3094619 on 2016/08/19 by Lina.Halper #DUPEFIX - ANIM: SmartNAME: the cooking doesn't guarantee the package is saved in the order, so we'll still have to regenerate list without GUID. - assumed the name is all set by now #rb: Benn.Gallagher #jira : UE-34886 #tests: cooking infiltrator that showed same issue and run game. Change 3094532 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3094498 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3094528 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3093260 on 2016/08/18 by Josh.Markiewicz #UE4 - changed how party reset occurs to skip relying on AGameState which could very rarely be null (during server travel) - removed unnecessary cast #rb bart.bressler #codereview bart.bressler, rob.cannaday #tests launched game, some basic party testing Change 3093224 on 2016/08/18 by Josh.Markiewicz #UE4 - added a chatroom class that does some basic chat room join/create/leave functionality to share between games #rb paul.moore #codereview anthony.carter #tests solo vs ai chat with 2 players, coop vs ai chat with 2 players, one leaving and rejoining Change 3092597 on 2016/08/17 by Daniel.Lamb Added Ben Crocker to the rebuild lighting emails. #rb Trivial #Test none Change 3092063 on 2016/08/17 by andrew.grant Merging using ROBO://Orion/Release-Candidate->//Orion/Main #rb #tests none Change 3091081 on 2016/08/16 by Jurre.deBaare Fixing non-Editor build errors #fix Wrapped parts in WITH_EDITOR and added IsBuilt to check if the LODActor has a valid static mesh (thus is not dirty) #tests Build Editor + Game #rb none Change 3091009 on 2016/08/16 by Mieszko.Zielinski Added a way to configure a map to not spawn AISystem instance at all #UE4 #rb none #test golden path Change 3090932 on 2016/08/16 by Michael.Noland Vixen: Added indication to the analytics and FPS charts #rb marcus.wassmer #tests Compiled for the platform Change 3090844 on 2016/08/16 by Laurent.Delayen Replicated CL 3090734 from Fortnite. --- Fix AbilitySystemComponent not ticking while playing a montage, and ticking when we're not playing a montage Here's the issue in the version of the code prior to this checkin: - UpdateShouldTick calls GetShouldTick, which checks the value of RepAnimMontageInfo.IsStopped - When we call UpdateShouldTick within AnimMontage_UpdateReplicatedData, we haven't set RepAnimMontageInfo.IsStopped yet to the correct value - So when we aren't playing any montages but are starting a new one, we were saying we shouldn't tick - It also means if we were playing a montage, and then stop, we'll start ticking - Ticking calls AnimMontage_UpdateReplicatedData, which should be called while we're playing #codereview john.abercrombie #rb none #tests golden path Change 3090832 on 2016/08/16 by Michael.Noland Windows: Fixed a whitespace issue #rb none #tests Compiled for windows Change 3090688 on 2016/08/16 by Jason.Bestimt #R@BOMERGE-AUTHOR: andrew.grant Merging using ROBO://Orion/Release-Candidate->//Orion/Main #rb none #tests built #R@BOMERGE-SOURCE: CL 3090687 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3090547 on 2016/08/16 by Jurre.deBaare Need a warning message similar to lighting unbuilt when HLOD cluster is not built #fix Added HLOD clusters need to be rebuilt message similar to the lighting one during PIE and game-time, and cleaned/changed "'DisableAllScreenMessages' to suppress" behaviour #jira UE-34335 #rb none #codereview Michael.Noland #tests pie Agora with and without dirty HLOD clusters Change 3090285 on 2016/08/16 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3090267 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3090282 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3089413 on 2016/08/15 by paul.mader Agora 2.0 assets Change 3089266 on 2016/08/15 by Max.Chen Sequencer: Add Convert to Possessable Copy from Dev-Sequencer #jira UE-32139 #rb none #tests Convert steel to possessable in Gameplay_PS4 map. Change 3089136 on 2016/08/15 by Mieszko.Zielinski Fixed AISense_Sight's time slicing unintentionally skipping queue aging if given time limit is reached #UE4 #rb Lukasz.Furman #codereview Dan.Youhon #test golden path Change 3089118 on 2016/08/15 by Mieszko.Zielinski Fixed a rare crash in UBlackboardData::GetKeyType resulting from a key selector referencing a type that has been removed from the project's source code #UE4 #rb none #test golden path Change 3088976 on 2016/08/15 by Andrew.Grant Fixed issue with PS4 toolchain ignoring ModuleRules.CodeOptimization.Never / ModuleRules.CodeOptimization.Always when determining optimization level of modules. Fixed issue with VC toolchain ignoring ModuleRules.CodeOptimization.Never setting. Removed superflous /Os from VC debugg settings #rb none #tests verified module built with 'Never' on PS4/Win is built without optimizations. #codereview Marcus.Wassmer, Ben.Marsh Change 3088830 on 2016/08/15 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3088807 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3088829 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3088597 on 2016/08/14 by Jason.Bestimt #ORION_DG - Trying to resolve R@BOMERGE collision (DUI to MAIN -> DG) #RB:none #Tests:none #CodeReview: andrew.grant, david.ratti, matt.schembari Change 3087827 on 2016/08/12 by Bart.Bressler Updates to skeletal mesh memory saving on dedicated server #rb lina.halper #tests Cooked server data, played a game for a while in Solo vs. AI Change 3087351 on 2016/08/12 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) #jira OR-27406 #rb RyanG #tests Replays Change 3087118 on 2016/08/12 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3086747 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3087117 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3086176 on 2016/08/11 by Marcus.Wassmer Fix PS4 ShaderPipelines not matching pixel/vertex shader properly. #rb Rolando.Caloca #tests Broken PS4 content before/after Change 3085992 on 2016/08/11 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Unclog R@BOMERGE #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3085987 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3085911 on 2016/08/11 by Laurent.Delayen Added FBoneContainer::BoneIsChildOf for FCompactPoseBoneIndex #rb none #tests Orientation Warping Change 3085614 on 2016/08/11 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3085547 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3085598 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3084507 on 2016/08/10 by Marcus.Wassmer Duplicate 3070376 and 3078879 to fix corrupted decals on Vixen. #rb none #tests paragon ps4/vixen #codereview Olaf.Piesche Change 3084136 on 2016/08/10 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3083799 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3083814 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3083424 on 2016/08/09 by Max.Chen Sequence Recorder: Fix crash when actor class to record is null. #tests Use sequence recorder to record a skeletal mesh actor #rb none Change 3083134 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani #online,store,ps4 - creating one offer entry per entitlement #rb david.nikdel, ian.fox #tests MTX purhcase on PS4 #lockdown: andrew.grant #R@BOMERGE-SOURCE: CL 3083127 in //Orion/Release-30.1/... via CL 3083128 via CL 3083131 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3083069 on 2016/08/09 by Marcus.Wassmer Vixen scalability changes #rb Michael.Noland #tests vixen/ps4 #codereview jordan.walker Change 3083063 on 2016/08/09 by Marcus.Wassmer Most games will probably run out of memory if setup to do auto-4k. Make this a setting that's off by default. #rb Michael.Noland #codereview Luke.Thatcher, Lee.Clark #tests vixen on 4k. Change 3082778 on 2016/08/09 by Marcus.Wassmer Duplicate fix for Vixen GPU page faults and rendertarget errors (3066087) #rb none #tests Agora on vixen. Change 3082772 on 2016/08/09 by Marcus.Wassmer Duplicate fix for detail mode reregistration (3065543) #rb none #tests Toggled detail mode, observe proper items spawning Change 3082765 on 2016/08/09 by Marcus.Wassmer Don't crash when trying to use windowed vsync on vixen #rb Michael.Noland #test ran paragon on vixen #codereview Luke.Thatcher,Lee.Clark Change 3082764 on 2016/08/09 by Marcus.Wassmer fix HLOD distance scale not working properly when components are re-registered. #rb michael.noland #codereview jurre.debarre #tests setting multiple times, setting on boot via deviceprofile Change 3082429 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani Merging //Orion/Release-30.1 to Main (//Orion/Main) Change: 3082419 #online,store,PS4 OR-25384 [PS4] "There is no content. It might not be for sale yet, or might no longer be for sale" at main menu and at post match screen - added config option for toggling store on PS4 [OnlineSubsystemPS4] bStoreEnabled=true - can also override via title specific json values in <titleid>\title.json allow_mtx=true [CodeReviewed]: andrew.grant, phillip.buck, ian.fox #lockdown: andrew.grant #rb none #tests ps4 run with titleid=CUSA3609_00 (which has mtx disabled for PS4 since that title has no store support) #R@BOMERGE-SOURCE: CL 3082428 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3082194 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3082105 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3082192 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3080984 on 2016/08/08 by Lina.Halper Issue with not being able to set static animation data via BP - artists were using SetAnimation/PlayAnimation, but they are not safe to be used in construction script, so made sure the other serializable properties are exposed via BP - also since they want it to work in level viewport, I have to tick/refresh whenever it's getting called. #rb: Martin.Wilson #tests: Sword Beauty map Change 3080665 on 2016/08/08 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3080081 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3080543 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3080565 on 2016/08/08 by Laurent.Delayen Fix for curve values during URO interpolation. Fixes flashing of materials and Twinblast's ult weapon. https://jira.ol.epicgames.net/browse/OR-27107 https://jira.ol.epicgames.net/browse/OR-24358 #rb lina.halper, martin.wilson #tests Twinblast's ult and Coil's primary. Change 3079832 on 2016/08/05 by Jason.Bestimt #R@BOMERGE-AUTHOR: marcus.wassmer Fix for PS4 crash reports not attaching the minidump when trying to force full crash dumps via commandline #rb none [CodeReviewed] Chris.Wood #tests checked crashcontext on PC/PS4 #lockdown Andrew.Grant #R@BOMERGE-SOURCE: CL 3078933 in //Orion/Release-30/... via CL 3078934 via CL 3078935 via CL 3079831 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3079045 on 2016/08/05 by Lina.Halper Adding more log to figure out why ActivePlayers.Count becomes inconsistent. #rb: Martin.Wilson #tests: PIE with bots Change 3078944 on 2016/08/05 by Rolando.Caloca O - Update blacklisted driver #jira OR-27051 #rb Marcus.Wassmer #tests Run with AMD card Change 3078735 on 2016/08/05 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3078670 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3078734 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3078122 on 2016/08/04 by Dmitry.Rekman Linux: treat abort() / SIGABRT as crash. - Rationale: certain code not under our control (most notably, stack smashing protector) may call abort(), which would previously terminate the engine without any chance to even enter the crash handler. - Rewrote RequestExit() because it used abort() itself. - Also removed -fstack-protector. The logic behind this is: stack protector calls abort() on detecting a smash (which is suspected to contribute to missing reports), but does it at an inappropriate place, that causes stack unwinding to crash later. As bad as it sounds, it may be better to allow stack to be corrupted and crash later - hopefully outside of libc code - to some other reason. #rb Mark.Satterthwaite #codereview Mark.Satterthwaite, Michael.Noland, Andrew.Grant #review-3078104 @Mark.Satterthwaite, @Michael.Noland, @Andrew.Grant #tests Ran Linux server, crashed using different methods. Change 3077887 on 2016/08/04 by Dmitry.Rekman Initialize StackCount to 0 (kills valgrind warning). #rb David.Ratti #codereview David.Ratti #tests Ran Linux server. Change 3077257 on 2016/08/04 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3077193 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3077256 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3077242 on 2016/08/04 by Dmitry.Rekman Linux: stop heartbeat thread before handling the crash. #rb Robert.Manuszewski #codereview Robert.Manuszewski, Andrew.Grant #tests Compiled and ran Linux server, crashed it. Change 3076676 on 2016/08/03 by Dmitry.Rekman Linux: print details about memory access (read or write). - Also print all the 16 digits of the pointer. - Read/write detection only implemented for x86_64. #rb Andrew.Grant #codereview Andrew.Grant #tests Compiled (natively) and ran Linux server. Change 3076675 on 2016/08/03 by Dmitry.Rekman Print a bit more info about the array in assert. #rb Andrew.Grant #codereview Andrew.Grant #test Compiled and ran Linux server. Change 3076010 on 2016/08/03 by Laurent.Delayen Moved OrionAnimNode_LegIK from Paragon to Engine. #codereview lina.halper #rb none #tests Grim.exe + Iggy & Scorch Change 3075512 on 2016/08/03 by Matt.Kuhlenschmidt Reimplemented 3070766 for Orion: Make sure richtooltips are not generated for hidden enum items so that there is not a mismatch between rich tooltips and enum items (causing a crash) #rb none #tests none Change 3075446 on 2016/08/03 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3075422 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3075445 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3075394 on 2016/08/03 by HaarmPieter.Duiker Adding a shadows max and highlights min parameters to allow the user to control when the 'shadows' controls fall off and when the 'highlights' controls ramp in. #rb marcus.wassmer #tests post process color correction Change 3074314 on 2016/08/02 by Dmitry.Rekman Linux: change optimization from -O2 to -O1 (temporarily?). - The purpose is to make callstacks easier to follow and possibly catch stack smashing (if it happens) earlier. - Also adds a line to UBT output during compilation to draw attention. #rb Michael.Noland #codereview Michael.Noland, Andrew.Grant, Bart.Bressler #tests Compiled and ran Linux server. Change 3073553 on 2016/08/02 by jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3073360 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3073481 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) #R@BOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/BP_Hero.uasset - can't integrate exclusive file already opened #CodeReview: jason.bestimt Change 3073505 on 2016/08/02 by Daniel.Lamb Added cook modification delegate stats to cooker stats. #rb Wes.Hunt #test cook paragon. Change 3072440 on 2016/08/01 by Aaron.Eady PlayerController Force Feedback (Debug only); Adding #if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) around the use of the debug only variable ForceFeedbackEffectHistoryEntries. #rb none #tests SHIPPING Change 3072259 on 2016/08/01 by Aaron.Eady PlayerController Force Feedback (Debug only); Added more information to the things displayed on the screen for force feedback when we do ShowDebug ForceFeedback. #rb Michael.Noland #tests PIE Change 3071908 on 2016/08/01 by John.Pollard Fix null reference crash #rb DavidR #tests Live game + replays Change 3071876 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Assertion failed: WriterState.Changed.Num() == 0 occurs when a Pitcher Husk hits the Player #rb none #tests FN + Paragon live game + replays #codereview Andrew.Grant Change 3071875 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Finalize replay version system * No longer use changelist to filter replays (so we will only filter by engine/game version now, which need to be hand cranked to invalidate old versions) * Submit actual changelist when uploading (rather than locking to previous versions). We can do this now since we don't filter by changelist anymore. * Removed unnecessary 'bShowAllVersions' property from replay browser code, using cvar instead (orion.ShowAllReplayVersions) #rb RyanG #tests Live game + replays #codereview Andrew.Grant Change 3071874 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Fix gameplay tags to work better with backwards compatibility in replays * We use the net field export group system in the package map to export tag names as a packed index * This will allow us to see the names of tags that no longer exists on the remote side #rb RyanG #tests Live game + replays #codereview Andrew.Grant Change 3071776 on 2016/08/01 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3071738 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3071775 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3071258 on 2016/07/30 by Aaron.McLeran OR-26580 CRASH: FXAudio2SoundSource::GetChannelVolumes - Silent Crash during gameplay - Removed voice operation set since it was causing crashes when stopping voices. Still a good idea, but need to make sure the async OnBufferEnd and stopping an FSoundSource can work together. - Added a proxy object that wraps the FAsyncTask used for async decoding. Calling IsDone() and EnsureCompletion() can't happen at the same time from different threads now. #rb none #tests ran paragon soaking for a long time with constant AI combat and observed no crashes or audio issues. Change 3071099 on 2016/07/30 by Aaron.McLeran OR-26580 CRASH: FXAudio2SoundSource::GetChannelVolumes - Silent Crash during gameplay - Temporary revert of a portion of CL 3067560 which exacerbates an issue with the async decoding tasks and calling IsDone and EnsureComplete on different threads. #rb none #tests ran paragon with change and noticed no change in audio quality Change 3070916 on 2016/07/29 by Andrew.Grant Missed file! #rb #tests na Change 3070915 on 2016/07/29 by Andrew.Grant Merging //UE4/Main @ 3070724 through //UE4/Orion-Staging #rb none #tests Engine QA, Orion QA smoke Change 3070576 on 2016/07/29 by Uriel.Doyon Fixed initialization of the defrag pool size. Now controlled by r.PS4DefragPoolSize. #review-3070386 @marcus.wassmer #jira OR-25941 #rb marcus.wassmer #tests Run Game on PS4, and in editor Change 3070086 on 2016/07/29 by Martin.Wilson Fixed ensure triggering during sequencer playback due to double update. #jira UE-33938 #rb Thomas.Sarkanen #tests opened affected asset and verified problem no longer occured Change 3070016 on 2016/07/29 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30 @ CL 3069935 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3069976 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3069435 on 2016/07/28 by Ian.Fox #Orion, #Mcp - Check if Price Engine is configured before attempting query #rb Sam.Zamani #tests none #codereview Sam.Zamani Change 3069381 on 2016/07/28 by Michael.Noland Animation: Demoted a check() in anim sync group code to an ensure() to unblock others #rb nick.penwarden #tests Loaded Paragon cine asset that was crashing #codereview lina.halper, martin.wilson Change 3069203 on 2016/07/28 by Dmitry.Rekman Headless client: do not draw windows. - Disables a bunch of code, including reaching into font cache to estimate width. - Should be probably disabled on a higher level, but cutting out the whole Slate application is infeasible (according to BradA/BenM, due to some logic requiring widgets). #rb Nick.Atamas #review-3068983 @Nick.Atamas, @Michael.Noland, @Brad.Angelcyk, @Ben.Salem #codereview Nick.Atamas, Michael.Noland, Brad.Angelcyk, Ben.Salem #tests Compiled and ran Orion Linux client. Change 3069181 on 2016/07/28 by Lina.Halper Fix struct redirector for Orion anim node moving to engine #rb: Maciej.Mroz #code review:Laurent.Delayen #tests: editor loading the anim BP that caused the name conversion Change 3069092 on 2016/07/28 by Aaron.McLeran OR-26161 Client hitches indefinitely when using Stat soundcues / soundwaves - Not all active sounds have sound classes, was causing a crash #codereview marc.audy #rb zabir.hoque #tests Run game with stat soundcues and not crash Change 3068969 on 2016/07/28 by David.Ratti Move test for invalid gameplaycue instance up, since calling IsPendingKill() on garbage can cause crash too. #rb none #tests compile Change 3068902 on 2016/07/28 by David.Ratti Code for tracking down UGameplayCueManager::GetInstancedCueActor crash. #rb none #tests compile Change 3068831 on 2016/07/28 by Aaron.McLeran OR-26417 Reverb is too loud in-game in Dev-General - Initializing prev reverb to 0s so that the first default reverb gets set when no audio volume is set. #rb Jeff.Campeau #tests run a map with no reverb audio volume and reverb is not super wet Change 3068529 on 2016/07/28 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #OSS #PurchaseMcp: Use GameService->CreateOnlineHttpRequest instead of McpSubsystem->CreateRequest to query receipts (uses subsystem config) #RB: none #TESTS: none #R@BOMERGE-SOURCE: CL 3068465 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3068399 on 2016/07/28 by Andrew.Rodham Sequencer: Changed animation tracks to allow more animation types (such as anim montages) - APIs now accept UAnimSequenceBases rather than UAnimSequences to afford more flexibility #jira OR-25769 #tests Tested all combinations of animation with sequencer (montage+sequence on asset/BP driven animation components) and matinee. Tested running a game and playing back the announce trailer. Rendered out some movies to ensure that trails work correctly. #rb Benn.Gallagher Change 3068138 on 2016/07/28 by Marcus.Wassmer Disable mallocleak testing by default #rb none #test none Change 3068121 on 2016/07/28 by Marcus.Wassmer Make sure we always do fast stack captures when USE_FAST_STACKTRACE is enabled. Fixes game becoming unresponsive on Windows after 'mallocleak' dumps data. Any other tool that uses stacktraces could become 700 - 1000x slower after any stack symbolication also. #rb Robert.Manuszewski #tests stack tracing / symbolication with mallocleak on windows. Change 3068119 on 2016/07/28 by Marcus.Wassmer Fix MallocLeakProxy deadlock #rb Robert.Manuszewski #tests mallocleak start/stop/dump on windows Change 3067752 on 2016/07/27 by Michael.Noland Engine: Refactored FPS chart creation to make it modular so many performance data consumers can be active at once, allowing greater flexibility and decoupling game analytics from FPS chart exec commands - IPerformanceDataConsumer is an interface for all consumers of per-frame performance tracking data, and instances can be registered/unregisted with the engine using AddPerformanceDataConsumer/RemovePerformanceDataConsumer - The implementation of the 'standard' frame time and hitch histogram tracking is FPerformanceTrackingChart, while the per-frame logging .csv is split into a separate FFineGrainedPerformanceTracker class. - The calculation of frame time breakdowns and hitch detection now occur as long as at least one IPerformanceDataConsumer is registered - Internally the code has been cleaned up a bit to use FHistogram for data storage instead of custom binning code Upgrade Notes: - DumpFPSChartAnalytics has been removed, games that used it should switch to creating their own instance of FPerformanceTrackingChart and call DumpChartToAnalyticsParams on it directly - In general games should have no reason to programmatically call GEngine->StartFPSChart anymore, instead creating their own instance (this prevents conflicts when using the engine console commands) - HTML output for stopfpschart is now generated to a single file rather than two duplicate files (using both map name and capture time as part of the file name) - Removed PauseFPSChart, IsFPSChartActive, and GetFPSChartBoundByFrameCounts to reflect that the GEngine instances aren't meant for external use (Start/Stop are left public for automated testing that wants to use them to do logging, but may also be moved private in the future) Paragon: - Updated to use a separate FPerformanceTrackingChart for gameplay versus in-game menus and removed the duplicated code and GameThreadHitchChart event - Removed partial USE_SERVER_PERF_COUNTERS code in ChartCreation.cpp, splitting it out into a separate observer, which currently lives in Paragon but will be moved to shared code in a separate checkin. The code was only useful in the first place along with other Paragon-side code that was consuming it. #rb dmitry.rekman #codereview bob.tellez, peter.knepley, andrew.grant, john.mauney #review-3067607 @Dmitry.Rekman, @Bob.Tellez #tests Tested manual startfpschart/stopfpschart as well as Paragon match analytics via golden path solo vs AI Change 3067654 on 2016/07/27 by Michael.Noland FString - Fix divide overload path concatenation for empty paths since there are several places in the engine that expect using that doing { path / "" } will append a / onto path. #rb steve.robb #jira UE-31959 [duplicating CL# 3039827] #tests Tried moving a folder in the editor Change 3067644 on 2016/07/27 by Aaron.McLeran OR-24537 Looping audio sometimes persists in Agora Adding stopping sounds if audio component is destroyed while playing a looping sound #rb jeff.campeau #tests audio component stops looping sound if audio component is destroyed prematurely Change 3067560 on 2016/07/27 by Aaron.McLeran OR-26322 Client Hang in FXAudio2EffectsManager::SetReverbEffectParameters - Only applying reverb parameters if they've changed from previous reverb params to avoid unnecessarily spamming the XAudio2 API call - using xaudio2 operation sets to ensure that voice and effect params are executing in sequence - only calling destroy voice after all voice and effect changes have been committed to avoid destroy voice interfering with those commands - Don't call EnsureCompletion on pending async tasks on teardown #rb Jeff.Campeau #tests play paragon with change, notice no changes to audio behavior, no crashes. Created testmap with several reverb zones and demonstrated reverb effect transitions Change 3067420 on 2016/07/27 by jason.bestimt #ORION_MAIN - Merge 29.2/30 @ CL 3067312 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3067400 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3067316 on 2016/07/27 by jason.bestimt #ORION_MAIN - Merge DUI @ CL 3065602 #RB:none #Tests:none [CodeReviewed]: matt.schembari #R@BOMERGE-SOURCE: CL 3067079 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3067025 on 2016/07/27 by Michael.Noland Core: Corrected the initial value of FLightweightTimeGuard::FrameTimeThresholdMS to be in MS rather than seconds and did a few coding standards fixes #rb none #tests Compiled Change 3067020 on 2016/07/27 by Michael.Noland Core: Various improvements to FHistogram and split it out into separate files - Added the ability to use a separate thresholding key than the actual measurement value being recorded (e.g., when accumulating frame time spent in a chart keyed on framerate) - Added O(1) getters for total sample counts and sum of all measurements - Removed encapsulation-breaking SetBinCountByIndex / SetBinSumByIndex - Added support for specifying explicit histogram bucket thresholds #rb dmitry.rekman #tests Tested with another pending changelist that moves FPS charts to use FHistogram for the underlying storage Change 3066681 on 2016/07/27 by Frank.Gigliotti Camera anim field of view fix; * The FOV is now reset on the PlayerCameraManager camera actor when it's initialized. This fixes cases of stale FOV values after playing camera anims that don't end with the FOV at it's base value. * Base FOV can now be edited in the CameraAnim properties. This allows you to specify what the FOV keys are relative to. Previously it was always using a base FOV of 90 degrees. #RB None #CodeReview Jeff.Farris #Tests Multiple camera animations in PIE Change 3066508 on 2016/07/27 by Lina.Halper Smartname guid will be discarded during cooking, and once it's cooked, it's trusted to have correct name. #code review:Martin.Wilson, Benn.Gallagher #rb: Martin.Wilson #tests: cooked test map, run test map, PIE, saving content, loading standalone game Change 3066246 on 2016/07/27 by Jason.Bestimt #R@BOMERGE-AUTHOR: andrew.grant Fix for non-unity error #rb none #tests compiled #R@BOMERGE-SOURCE: CL 3066245 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3066167 on 2016/07/27 by Benn.Gallagher Fixed clothing corruption seen on Twinblast after mesh updates. We were copying a u32 index buffer into a multisize container but CopyIndexBuffer doesn't change the data size when copying - only when rebuilding. #rb Ori.Cohen #tests Editor, PIE, Applying clothing to characters. Change 3065868 on 2016/07/27 by Michael.Noland Blueprints: Fixing non-editor build (missing WITH_EDITOR) #rb none #tests Compiled PS4 Change 3065749 on 2016/07/26 by Michael.Noland Blueprints: Prevent a crash on load in RemoveNodeAndPromoteChildren when removing a corrupted SCS node if it has no parent link (the children are moved to the root node instead) #codereview mike.beach, marc.audy #tests Loaded and recovered a corrupted Blueprint on Cameron's machine #rb Phillip.Kavan Change 3065706 on 2016/07/26 by Josh.Markiewicz #UE4 - changed default values for bLogoutOnSessionTimeout for reservation beacons - fixed non shipping cmd line override to be correct #rb none #codereview andrew.grant, paul.moore #tests none Change 3065359 on 2016/07/26 by Rob.Cannaday Limit external id querying to 100 ids per call. The backend currently enforces this and is returning an error when we exceed this limit. Break up calls in batches of 100 ids. #jira OR-20674 #rb ian.fox #tests login to front end with PC, PS4. forced tests to simulate > 100 requests. Change 3065197 on 2016/07/26 by Bart.Bressler Change how PS4 sessions work: - We now will only try to join somebody's PS4 session only if we accepted an invite from the PS4 system software. This means that an MCP party can have members in different PS4 sessions. - Refactored a lot of the delegates in UOrionParty to lambdas to try to make it more readable - Added comments, other misc. code cleanup. #rb josh.markiewicz, sam.zamani, rob.cannaday #tests created cross play parties with multiple pc + ps4 players #jira OR-20332 Change 3065158 on 2016/07/26 by Lina.Halper Fix the guid keep generated by adding to the database. - This caused worse problem with non-deterministic cooking - This doesn't fix UE-33454 for 100%, but this was the main reason why this was so visible #rb: Martin.Wilson #jira: UE-33772, UE-33454 #tests: cooked AI_Test map, editor rename curves Change 3064735 on 2016/07/26 by Dmitry.Rekman Linux: added WebRTC libs. - Compiled against glibc 2.12 / CentOS 6.x environment (see howto in a separate doc). #rb none #tests Tested OrionClient in Dev-General, and UE4Editor in Dev-Platform. (Edigrating 3063715 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064727 on 2016/07/26 by Dmitry.Rekman Fix crash on cooker exit (UE-33583). - Global/static tickable objects could outlive the collection and trigger asserts when removing themselves from it. #rb none #tests Compiled and ran Linux server and Linux client. (Edigrating 3058779 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064725 on 2016/07/26 by Dmitry.Rekman Linux: use libc++ instead of libstdc++. - Needed to solve problems with third-party C++ libraries (e.g. WebRTC). - Bundled libc++ 3.8.1 (TPS cleared). - Turned off ICU compilation (needs recompile against libc++). - Some libraries (e.g. FBX sdk) still need libstdc++, so in practice it is going to be a mix. #rb none #tests Built and ran a number of Linux targets. (Edigrating 3057152 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064572 on 2016/07/26 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 29.2 @ CL 3064545 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3064569 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3064523 on 2016/07/26 by Jon.Lietz Fixing it so gameplay effects with execution none will no longer keep the BP in a dirty state. Only call EmptyArray() on CalculationModifiersArrayPropHandle if it has any elements. #RB none #tests BP compiles and stays not dirty #codereview dave.ratti@epicgames.com [CL 3111290 by Andrew Grant in Main branch]
2016-09-01 21:20:38 -04:00
{
throw new AutomationException("No ClientTargetPlatform set for SetupClientParams.");
Copying //UE4/Orion-Staging to //UE4/Main (Source: //Orion/Dev-General @ 3106465) #lockdown Nick.Penwarden Change 3110660 on 2016/9/1 by Andrew.Grant Moved performance/quality warnings out of DrawStatsHUD into new function and now display them in everything other than shipping builds (unless disabled, or screenshot/movie dumping is in progress. HLOD warning is updated every 20 secs to deal with streaing levels. Moved debug warnings into a separate Draw function (still disabled in test, but would like to make this an option in Orion soon). #rb Michael.Noland #tests verified we see our unbuilt HLOD warning in v31 :( Change 3106649 on 2016/08/30 by Cody.Haskell #Orion - Input Axis Work #rb DanH #tests PIE Change 3106299 on 2016/08/30 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 31.2 @ CL 3105865 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3105969 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3106213 on 2016/08/30 by Ben.Marsh BuildGraph: Include UAT, UBT, and UHT binaries in precompiled binaries zip file. #rb none #tests preflight Change 3105994 on 2016/08/30 by Martin.Wilson Stop recompression happening when additive frame index is changed "interactively" (recompression will occur at end of interactive input) #jira UE-35289 #rb Thomas.Sarkanen #tests Tested UI in editor Change 3105331 on 2016/08/29 by Uriel.Doyon Allowed texture to ignore streaming MipBias with UTexture2D::bIgnoreStreamingMipBias Used this new flag when assigning texture to UImage::SetBrushFromTexture to prevent having low quality UI in low texture budget. #rb marcus.wassmer #tests launched editor and played game #jira OR-25814 Change 3105143 on 2016/08/29 by Josh.Markiewicz #UE4 - added assert when histogram input parameters don't match #rb none #tests launched/ran/won game golden path #codereview dmitry.rekman, michael.noland, bart.bressler Change 3104976 on 2016/08/29 by Jon.Lietz pickup refector - fixed a big that would allow mixed replication to call a gameplay cue's added twice. - All pickups now use the pick up manager, consolidated all pick up code into the manager. - added to the XP set so we can define the CXP bounty for targets. #RB Dave.Ratti #tests Bot match, test maps, spawning coins and pickups. Change 3103480 on 2016/08/26 by Josh.Markiewicz #UE4 - added GetSessionIdStr to FOnlineSessionSearchResult and FOnlineSession #rb none #tests golden path matchmaking #codereview paul.moore, eric.newman Change 3103410 on 2016/08/26 by Max.Chen Movie Capture: Fix commandline burnin option. #rb none #tests Render movie with commandline -UseBurnIn=yes option. Change 3102134 on 2016/08/25 by Brian.Karis Fix for HDR output exposure. Added 1000nit output option. #rb marcus #tests agora Change 3101276 on 2016/08/25 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_31 - Merging CL 3100347 (head revision of 2 files :o ) #RB:none #Tests:none [CodeReviewed]: matt.schembari, max.preussner #R@BOMERGE-SOURCE: CL 3101273 in //Orion/Release-31/... via CL 3101274 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3101267 on 2016/08/25 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_DUI - Integrating Media changes from 4.13 (head revision) #RB:none #Tests:none /Engine/Plugins/Media /Engine/Source/Runtime/Media /Engine/Source/Runtime/MediaAssets [CodeReviewed] matt.schembari, max.preussner #R@BOMERGE-SOURCE: CL 3099267 in //Orion/Dev-UI/... via CL 3101266 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3100378 on 2016/08/24 by John.Pollard Fix a crash that can occur when scrubbing in replays #codereview David.Ratti #tests Replays #rb DavidR This is the output: [2016.08.24-21.35.05:973][603]LogAbilitySystem:Warning: OnRep_ReplicatedAnimMontage: PlayMontageSimulated failed. Name: AbilitySystemComponent0, AnimMontage: LevelStart_Montage Change 3100375 on 2016/08/24 by Laurent.Delayen Added AimOffsetLookAt node. AimOffset node that drives its inputs automatically from a Target Location (and a Source Socket). #rb none #codereview lina.halper #tests Tacticia's RMB Targeting Change 3100278 on 2016/08/24 by Laurent.Delayen Fix for fast path struct copy being broken for FVectors. #rb lina.halper #codereview thomas.sarkanen #tests Chains' hook, Tacticia's LaserBeam and OrientationWarping Change 3100161 on 2016/08/24 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Fix issue with refresh viewer command failing due to backend congestion #rb RyanG #tests Replays Change 3100114 on 2016/08/24 by jason.bestimt #ORION_MAIN - Merge DUI @ CL 3098849 #RB:none #Tests:none #CodeReview: kerrington.smith, matt.schembari #R@BOMERGE-SOURCE: CL 3100078 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3100015 on 2016/08/24 by Michael.Noland Don't allow the consideration of nodes that won't be processed to affect the live aspect of the active sound containing a cross fade node #jira UE-34998 #rb Aaron.McLeran [re-implementing CL# 3098559 originaly by Marc.Audy in Release 4.13] #tests Compiled and ran a golden path match with headphones on Change 3100012 on 2016/08/24 by Michael.Noland UE-34951 - Zero-volume vorbis decoded sounds are too expensive -Adding an audio settings parameter to disable zero-volume playback globally -Adding a new bool on sound waves to allow opt-in to virtualize when at zero-volume #rb marc.audy [re-implementing CL# 3094893 from Dev-Framework, originally by Aaron McLeran] #tests Compiled and ran a golden path match with headphones on Change 3099889 on 2016/08/24 by Max.Chen Sequencer: Added command line option to enable burnin #rb none #tests Render movie from command line wtih -UseBurnIn=yes Change 3099801 on 2016/08/24 by Lina.Halper Removed unnecessary comment #rb: none #code review: Benn.Gallagher #tests: compile Change 3099787 on 2016/08/24 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani #http - fix for cancelled requests that have not been started never triggering a completion delegate - fixes soft lock when handling disconnects during login OR-26945 The client stays on the "downloading profile" screen when rejoining after disconnecting #rb josh.markiewicz, alex.fennell #tests none #R@BOMERGE-SOURCE: CL 3099782 in //Orion/Release-30.2/... via CL 3099784 via CL 3099785 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3099252 on 2016/08/24 by Lina.Halper Fixed menu text #rb: none #code review: Thomas.Sarkanen #tests: open editor and create child montage and replaced the animation Change 3099251 on 2016/08/24 by Lina.Halper Deterministic cooking of skeleton - abandon all guid from GuidMap. GuidMap is still important since we have to generate UID from it, but GuidMap only contains name once cooked #jira: UE-34834 #rb: Martin.Wilson #tests: cooking orion and make sure it works Change 3098504 on 2016/08/23 by Bart.Bressler Add server time between sending packets monitoring histogram #rb dmitry.rekman #tests ran server locally and made sure analytics events were sent Change 3098494 on 2016/08/23 by Michael.Noland Engine: Added UWorld::SetTimeUntilNextGarbageCollection to change the GC timer for use when doing automated performance capture measurements - Note: Things that force a GC will still force a GC after using this method (and they will also reset the timer) - Fixed a bug where UWorld::ForceGarbageCollection might not force a GC immediately if run on a server with no clients connected #tests Tested by calling while stat dumphitches was active and confirmed that the interval changed #codereview ben.salem, gil.gribb #rb none Change 3098491 on 2016/08/23 by Mieszko.Zielinski Expanded BTDecorator_IsAtLocation with an option to use AIDataProvider #UE4 #rb Lukasz.Furman #test golden path Change 3098070 on 2016/08/23 by Lina.Halper Fix crash with UI update reconstructing - will have to come up with a better solution than this. #rb: Martin.Wilson #tests: child anim montage Change 3097914 on 2016/08/23 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel Merging CL #3097879 from //WEX/Main/Engine/Source/Runtime/Online/NotForLicensees/OnlineSubsystemMcp/... to //Orion/Main/Engine/Plugins/Online/NotForLicensees/OnlineSubsystemMcp/Source/... #Analytics #OSS: Adjusted cohort selection algorithm and test cases [CodeReviewed]: Philip.Buuck #TESTS: unit tests #RB: none #R@BOMERGE-SOURCE: CL 3097911 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3097745 on 2016/08/23 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Megre 30.2/31 @ CL 3096895 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3097716 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3097722 on 2016/08/23 by Chris.Bunner Update texture expression properties before triggering parent material recompile. #rb John.Billon #tests Editor replace references, Golden path #jira OR-27531 Change 3097694 on 2016/08/23 by Lina.Halper #Child Anim Montage - Duplicate from parent of the information it cares to get - Currently it is selective on copying what data - Modified GetAllAnimationSequencesReferred to get a partial data - Added ParentAsset/AssetMappingTable in AnimationAsset - Sequence Browser opening would also add to history - AnimNotify - CanBeplaced virtual function lets you filter which asset it's placed on #code review: Benn.Gallagher, Thomas.Sarkanen, David.Ratti #rb:Martin.Wilson #tests: creating child montage, editing, lots of UI functionality, notifies placement Change 3097513 on 2016/08/23 by Thomas.Sarkanen Non-POD structs can now be copied using the fast path We now always use CPP struct ops to perform copies when dealing with struct properties. #jira UE-34571 - Support struct member access on AnimBP fast path #rb Laurent.Delayen #tests OrionEntry with Tacticia, confirming orientation warping works correctly and fast path is enabled. Agora_P with Tacticia & bots, played two games. Change 3096729 on 2016/08/22 by Mieszko.Zielinski Fixes to EQS scoring function preview #UE4 #rb Lukasz.Furman #test golden path Change 3096596 on 2016/08/22 by Jason.Bestimt #ORION_DG - Fixes from 4.13 to video playback (CL# 3075761 & 3083970) #RB:none #Tests:none #CodeReview: matt.schembari, max.preussner #R@BOMERGE: MAIN Change 3096550 on 2016/08/22 by Jurre.deBaare Fix for HLOD dirty clusters PIE warning message #tests Simulated Origin with built HLOD clusters, and with one dirty cluster #rb none Change 3096532 on 2016/08/22 by Mieszko.Zielinski Modified GameplayTask_WaitDelay to allow specifying task's priority #UE4 As part of the change introduced UGameplayTask::NewTaskUninitialized that's basically a redirect of NewObject, but clearly indicates that a task needs to be manually initialized #codereview Lukasz.Furman #rb none #test golden path Change 3096455 on 2016/08/22 by Jason.Bestimt #R@BOMERGE-AUTHOR: keli.hlodversson #CEF: Copy upgraded CEF binaries from //Portal/Main to fix crash issues with Sofort purchases #RB David.Nikdel #TESTS none #R@BOMERGE-SOURCE: CL 3096452 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3096316 on 2016/08/22 by Sammy.James Resave to fix log warnings. BPC changes to ensure type saves. #rb #tests editor Change 3096040 on 2016/08/22 by bruce.nesbit Revised fix for landscape crash #rb GarethM #tests Game #codereview Bart.Bressler Change 3096015 on 2016/08/22 by bruce.nesbit Fixed a crash in ALandscapeProxy::PostLoad when running an editor build with -server #rb none #tests game #codereview Bart.Bressler Change 3095578 on 2016/08/19 by Mieszko.Zielinski Made NavigationSystem call TickAsyncBuild on all navigation data instances is there was an ongoing navigation build in progress in the editor #UE4 This was causing Orion's flow field to not build if auto navmesh update was disabled in the editor #rb none #test golden path #codereview Lukasz.Furman Change 3095397 on 2016/08/19 by Lina.Halper Fix issue with crash when deleting all segment #rb: Laurent.Delayen #tests: delete segment and make sure it doesn't crash #jira: UE-34830 Change 3095060 on 2016/08/19 by Bart.Bressler Don't load ULandscapeComponent objects on dedicated servers to save memory. #tests cooked server data and played a Solo vs. AI game #rb gareth.martin #codereview james.golding Change 3095037 on 2016/08/19 by Lina.Halper Potential fix with montage trigger ensure on marker sync group #jira: OR-27685 #rb: Benn.Gallagher #code review: Martin.Wilson #tests: attack primhelilx with knock up Change 3094962 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #Merging #OSS - Added FUserOnlineAccountMcp::SelectCohort #RB: None #TESTS: test suite in source [CodeReviewed]: Philip.Buuck #R@BOMERGE-SOURCE: CL 3094961 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3094950 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #Merge #UE4 - Made FMD5 const-correct #RB: none #TEST: none #R@BOMERGE-SOURCE: CL 3094949 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3094619 on 2016/08/19 by Lina.Halper #DUPEFIX - ANIM: SmartNAME: the cooking doesn't guarantee the package is saved in the order, so we'll still have to regenerate list without GUID. - assumed the name is all set by now #rb: Benn.Gallagher #jira : UE-34886 #tests: cooking infiltrator that showed same issue and run game. Change 3094532 on 2016/08/19 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3094498 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3094528 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3093260 on 2016/08/18 by Josh.Markiewicz #UE4 - changed how party reset occurs to skip relying on AGameState which could very rarely be null (during server travel) - removed unnecessary cast #rb bart.bressler #codereview bart.bressler, rob.cannaday #tests launched game, some basic party testing Change 3093224 on 2016/08/18 by Josh.Markiewicz #UE4 - added a chatroom class that does some basic chat room join/create/leave functionality to share between games #rb paul.moore #codereview anthony.carter #tests solo vs ai chat with 2 players, coop vs ai chat with 2 players, one leaving and rejoining Change 3092597 on 2016/08/17 by Daniel.Lamb Added Ben Crocker to the rebuild lighting emails. #rb Trivial #Test none Change 3092063 on 2016/08/17 by andrew.grant Merging using ROBO://Orion/Release-Candidate->//Orion/Main #rb #tests none Change 3091081 on 2016/08/16 by Jurre.deBaare Fixing non-Editor build errors #fix Wrapped parts in WITH_EDITOR and added IsBuilt to check if the LODActor has a valid static mesh (thus is not dirty) #tests Build Editor + Game #rb none Change 3091009 on 2016/08/16 by Mieszko.Zielinski Added a way to configure a map to not spawn AISystem instance at all #UE4 #rb none #test golden path Change 3090932 on 2016/08/16 by Michael.Noland Vixen: Added indication to the analytics and FPS charts #rb marcus.wassmer #tests Compiled for the platform Change 3090844 on 2016/08/16 by Laurent.Delayen Replicated CL 3090734 from Fortnite. --- Fix AbilitySystemComponent not ticking while playing a montage, and ticking when we're not playing a montage Here's the issue in the version of the code prior to this checkin: - UpdateShouldTick calls GetShouldTick, which checks the value of RepAnimMontageInfo.IsStopped - When we call UpdateShouldTick within AnimMontage_UpdateReplicatedData, we haven't set RepAnimMontageInfo.IsStopped yet to the correct value - So when we aren't playing any montages but are starting a new one, we were saying we shouldn't tick - It also means if we were playing a montage, and then stop, we'll start ticking - Ticking calls AnimMontage_UpdateReplicatedData, which should be called while we're playing #codereview john.abercrombie #rb none #tests golden path Change 3090832 on 2016/08/16 by Michael.Noland Windows: Fixed a whitespace issue #rb none #tests Compiled for windows Change 3090688 on 2016/08/16 by Jason.Bestimt #R@BOMERGE-AUTHOR: andrew.grant Merging using ROBO://Orion/Release-Candidate->//Orion/Main #rb none #tests built #R@BOMERGE-SOURCE: CL 3090687 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3090547 on 2016/08/16 by Jurre.deBaare Need a warning message similar to lighting unbuilt when HLOD cluster is not built #fix Added HLOD clusters need to be rebuilt message similar to the lighting one during PIE and game-time, and cleaned/changed "'DisableAllScreenMessages' to suppress" behaviour #jira UE-34335 #rb none #codereview Michael.Noland #tests pie Agora with and without dirty HLOD clusters Change 3090285 on 2016/08/16 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3090267 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3090282 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3089413 on 2016/08/15 by paul.mader Agora 2.0 assets Change 3089266 on 2016/08/15 by Max.Chen Sequencer: Add Convert to Possessable Copy from Dev-Sequencer #jira UE-32139 #rb none #tests Convert steel to possessable in Gameplay_PS4 map. Change 3089136 on 2016/08/15 by Mieszko.Zielinski Fixed AISense_Sight's time slicing unintentionally skipping queue aging if given time limit is reached #UE4 #rb Lukasz.Furman #codereview Dan.Youhon #test golden path Change 3089118 on 2016/08/15 by Mieszko.Zielinski Fixed a rare crash in UBlackboardData::GetKeyType resulting from a key selector referencing a type that has been removed from the project's source code #UE4 #rb none #test golden path Change 3088976 on 2016/08/15 by Andrew.Grant Fixed issue with PS4 toolchain ignoring ModuleRules.CodeOptimization.Never / ModuleRules.CodeOptimization.Always when determining optimization level of modules. Fixed issue with VC toolchain ignoring ModuleRules.CodeOptimization.Never setting. Removed superflous /Os from VC debugg settings #rb none #tests verified module built with 'Never' on PS4/Win is built without optimizations. #codereview Marcus.Wassmer, Ben.Marsh Change 3088830 on 2016/08/15 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3088807 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3088829 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3088597 on 2016/08/14 by Jason.Bestimt #ORION_DG - Trying to resolve R@BOMERGE collision (DUI to MAIN -> DG) #RB:none #Tests:none #CodeReview: andrew.grant, david.ratti, matt.schembari Change 3087827 on 2016/08/12 by Bart.Bressler Updates to skeletal mesh memory saving on dedicated server #rb lina.halper #tests Cooked server data, played a game for a while in Solo vs. AI Change 3087351 on 2016/08/12 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) #jira OR-27406 #rb RyanG #tests Replays Change 3087118 on 2016/08/12 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3086747 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3087117 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3086176 on 2016/08/11 by Marcus.Wassmer Fix PS4 ShaderPipelines not matching pixel/vertex shader properly. #rb Rolando.Caloca #tests Broken PS4 content before/after Change 3085992 on 2016/08/11 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Unclog R@BOMERGE #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3085987 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3085911 on 2016/08/11 by Laurent.Delayen Added FBoneContainer::BoneIsChildOf for FCompactPoseBoneIndex #rb none #tests Orientation Warping Change 3085614 on 2016/08/11 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3085547 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3085598 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3084507 on 2016/08/10 by Marcus.Wassmer Duplicate 3070376 and 3078879 to fix corrupted decals on Vixen. #rb none #tests paragon ps4/vixen #codereview Olaf.Piesche Change 3084136 on 2016/08/10 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3083799 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3083814 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3083424 on 2016/08/09 by Max.Chen Sequence Recorder: Fix crash when actor class to record is null. #tests Use sequence recorder to record a skeletal mesh actor #rb none Change 3083134 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani #online,store,ps4 - creating one offer entry per entitlement #rb david.nikdel, ian.fox #tests MTX purhcase on PS4 #lockdown: andrew.grant #R@BOMERGE-SOURCE: CL 3083127 in //Orion/Release-30.1/... via CL 3083128 via CL 3083131 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3083069 on 2016/08/09 by Marcus.Wassmer Vixen scalability changes #rb Michael.Noland #tests vixen/ps4 #codereview jordan.walker Change 3083063 on 2016/08/09 by Marcus.Wassmer Most games will probably run out of memory if setup to do auto-4k. Make this a setting that's off by default. #rb Michael.Noland #codereview Luke.Thatcher, Lee.Clark #tests vixen on 4k. Change 3082778 on 2016/08/09 by Marcus.Wassmer Duplicate fix for Vixen GPU page faults and rendertarget errors (3066087) #rb none #tests Agora on vixen. Change 3082772 on 2016/08/09 by Marcus.Wassmer Duplicate fix for detail mode reregistration (3065543) #rb none #tests Toggled detail mode, observe proper items spawning Change 3082765 on 2016/08/09 by Marcus.Wassmer Don't crash when trying to use windowed vsync on vixen #rb Michael.Noland #test ran paragon on vixen #codereview Luke.Thatcher,Lee.Clark Change 3082764 on 2016/08/09 by Marcus.Wassmer fix HLOD distance scale not working properly when components are re-registered. #rb michael.noland #codereview jurre.debarre #tests setting multiple times, setting on boot via deviceprofile Change 3082429 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: sam.zamani Merging //Orion/Release-30.1 to Main (//Orion/Main) Change: 3082419 #online,store,PS4 OR-25384 [PS4] "There is no content. It might not be for sale yet, or might no longer be for sale" at main menu and at post match screen - added config option for toggling store on PS4 [OnlineSubsystemPS4] bStoreEnabled=true - can also override via title specific json values in <titleid>\title.json allow_mtx=true [CodeReviewed]: andrew.grant, phillip.buck, ian.fox #lockdown: andrew.grant #rb none #tests ps4 run with titleid=CUSA3609_00 (which has mtx disabled for PS4 since that title has no store support) #R@BOMERGE-SOURCE: CL 3082428 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3082194 on 2016/08/09 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3082105 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3082192 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3080984 on 2016/08/08 by Lina.Halper Issue with not being able to set static animation data via BP - artists were using SetAnimation/PlayAnimation, but they are not safe to be used in construction script, so made sure the other serializable properties are exposed via BP - also since they want it to work in level viewport, I have to tick/refresh whenever it's getting called. #rb: Martin.Wilson #tests: Sword Beauty map Change 3080665 on 2016/08/08 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3080081 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3080543 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3080565 on 2016/08/08 by Laurent.Delayen Fix for curve values during URO interpolation. Fixes flashing of materials and Twinblast's ult weapon. https://jira.ol.epicgames.net/browse/OR-27107 https://jira.ol.epicgames.net/browse/OR-24358 #rb lina.halper, martin.wilson #tests Twinblast's ult and Coil's primary. Change 3079832 on 2016/08/05 by Jason.Bestimt #R@BOMERGE-AUTHOR: marcus.wassmer Fix for PS4 crash reports not attaching the minidump when trying to force full crash dumps via commandline #rb none [CodeReviewed] Chris.Wood #tests checked crashcontext on PC/PS4 #lockdown Andrew.Grant #R@BOMERGE-SOURCE: CL 3078933 in //Orion/Release-30/... via CL 3078934 via CL 3078935 via CL 3079831 #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3079045 on 2016/08/05 by Lina.Halper Adding more log to figure out why ActivePlayers.Count becomes inconsistent. #rb: Martin.Wilson #tests: PIE with bots Change 3078944 on 2016/08/05 by Rolando.Caloca O - Update blacklisted driver #jira OR-27051 #rb Marcus.Wassmer #tests Run with AMD card Change 3078735 on 2016/08/05 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3078670 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3078734 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3078122 on 2016/08/04 by Dmitry.Rekman Linux: treat abort() / SIGABRT as crash. - Rationale: certain code not under our control (most notably, stack smashing protector) may call abort(), which would previously terminate the engine without any chance to even enter the crash handler. - Rewrote RequestExit() because it used abort() itself. - Also removed -fstack-protector. The logic behind this is: stack protector calls abort() on detecting a smash (which is suspected to contribute to missing reports), but does it at an inappropriate place, that causes stack unwinding to crash later. As bad as it sounds, it may be better to allow stack to be corrupted and crash later - hopefully outside of libc code - to some other reason. #rb Mark.Satterthwaite #codereview Mark.Satterthwaite, Michael.Noland, Andrew.Grant #review-3078104 @Mark.Satterthwaite, @Michael.Noland, @Andrew.Grant #tests Ran Linux server, crashed using different methods. Change 3077887 on 2016/08/04 by Dmitry.Rekman Initialize StackCount to 0 (kills valgrind warning). #rb David.Ratti #codereview David.Ratti #tests Ran Linux server. Change 3077257 on 2016/08/04 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3077193 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3077256 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3077242 on 2016/08/04 by Dmitry.Rekman Linux: stop heartbeat thread before handling the crash. #rb Robert.Manuszewski #codereview Robert.Manuszewski, Andrew.Grant #tests Compiled and ran Linux server, crashed it. Change 3076676 on 2016/08/03 by Dmitry.Rekman Linux: print details about memory access (read or write). - Also print all the 16 digits of the pointer. - Read/write detection only implemented for x86_64. #rb Andrew.Grant #codereview Andrew.Grant #tests Compiled (natively) and ran Linux server. Change 3076675 on 2016/08/03 by Dmitry.Rekman Print a bit more info about the array in assert. #rb Andrew.Grant #codereview Andrew.Grant #test Compiled and ran Linux server. Change 3076010 on 2016/08/03 by Laurent.Delayen Moved OrionAnimNode_LegIK from Paragon to Engine. #codereview lina.halper #rb none #tests Grim.exe + Iggy & Scorch Change 3075512 on 2016/08/03 by Matt.Kuhlenschmidt Reimplemented 3070766 for Orion: Make sure richtooltips are not generated for hidden enum items so that there is not a mismatch between rich tooltips and enum items (causing a crash) #rb none #tests none Change 3075446 on 2016/08/03 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3075422 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3075445 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3075394 on 2016/08/03 by HaarmPieter.Duiker Adding a shadows max and highlights min parameters to allow the user to control when the 'shadows' controls fall off and when the 'highlights' controls ramp in. #rb marcus.wassmer #tests post process color correction Change 3074314 on 2016/08/02 by Dmitry.Rekman Linux: change optimization from -O2 to -O1 (temporarily?). - The purpose is to make callstacks easier to follow and possibly catch stack smashing (if it happens) earlier. - Also adds a line to UBT output during compilation to draw attention. #rb Michael.Noland #codereview Michael.Noland, Andrew.Grant, Bart.Bressler #tests Compiled and ran Linux server. Change 3073553 on 2016/08/02 by jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3073360 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3073481 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) #R@BOMERGE-SAYS: Beep boop! I couldn't merge this change. Please do it yourself, human. //Orion/Dev-General/OrionGame/Content/Characters/Heroes/BP_Hero.uasset - can't integrate exclusive file already opened #CodeReview: jason.bestimt Change 3073505 on 2016/08/02 by Daniel.Lamb Added cook modification delegate stats to cooker stats. #rb Wes.Hunt #test cook paragon. Change 3072440 on 2016/08/01 by Aaron.Eady PlayerController Force Feedback (Debug only); Adding #if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) around the use of the debug only variable ForceFeedbackEffectHistoryEntries. #rb none #tests SHIPPING Change 3072259 on 2016/08/01 by Aaron.Eady PlayerController Force Feedback (Debug only); Added more information to the things displayed on the screen for force feedback when we do ShowDebug ForceFeedback. #rb Michael.Noland #tests PIE Change 3071908 on 2016/08/01 by John.Pollard Fix null reference crash #rb DavidR #tests Live game + replays Change 3071876 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Assertion failed: WriterState.Changed.Num() == 0 occurs when a Pitcher Husk hits the Player #rb none #tests FN + Paragon live game + replays #codereview Andrew.Grant Change 3071875 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Finalize replay version system * No longer use changelist to filter replays (so we will only filter by engine/game version now, which need to be hand cranked to invalidate old versions) * Submit actual changelist when uploading (rather than locking to previous versions). We can do this now since we don't filter by changelist anymore. * Removed unnecessary 'bShowAllVersions' property from replay browser code, using cvar instead (orion.ShowAllReplayVersions) #rb RyanG #tests Live game + replays #codereview Andrew.Grant Change 3071874 on 2016/08/01 by John.Pollard Merging using Dev-Networking_->_Dev-General_(Orion) Fix gameplay tags to work better with backwards compatibility in replays * We use the net field export group system in the package map to export tag names as a packed index * This will allow us to see the names of tags that no longer exists on the remote side #rb RyanG #tests Live game + replays #codereview Andrew.Grant Change 3071776 on 2016/08/01 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30.2 @ CL 3071738 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3071775 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3071258 on 2016/07/30 by Aaron.McLeran OR-26580 CRASH: FXAudio2SoundSource::GetChannelVolumes - Silent Crash during gameplay - Removed voice operation set since it was causing crashes when stopping voices. Still a good idea, but need to make sure the async OnBufferEnd and stopping an FSoundSource can work together. - Added a proxy object that wraps the FAsyncTask used for async decoding. Calling IsDone() and EnsureCompletion() can't happen at the same time from different threads now. #rb none #tests ran paragon soaking for a long time with constant AI combat and observed no crashes or audio issues. Change 3071099 on 2016/07/30 by Aaron.McLeran OR-26580 CRASH: FXAudio2SoundSource::GetChannelVolumes - Silent Crash during gameplay - Temporary revert of a portion of CL 3067560 which exacerbates an issue with the async decoding tasks and calling IsDone and EnsureComplete on different threads. #rb none #tests ran paragon with change and noticed no change in audio quality Change 3070916 on 2016/07/29 by Andrew.Grant Missed file! #rb #tests na Change 3070915 on 2016/07/29 by Andrew.Grant Merging //UE4/Main @ 3070724 through //UE4/Orion-Staging #rb none #tests Engine QA, Orion QA smoke Change 3070576 on 2016/07/29 by Uriel.Doyon Fixed initialization of the defrag pool size. Now controlled by r.PS4DefragPoolSize. #review-3070386 @marcus.wassmer #jira OR-25941 #rb marcus.wassmer #tests Run Game on PS4, and in editor Change 3070086 on 2016/07/29 by Martin.Wilson Fixed ensure triggering during sequencer playback due to double update. #jira UE-33938 #rb Thomas.Sarkanen #tests opened affected asset and verified problem no longer occured Change 3070016 on 2016/07/29 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 30 @ CL 3069935 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3069976 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3069435 on 2016/07/28 by Ian.Fox #Orion, #Mcp - Check if Price Engine is configured before attempting query #rb Sam.Zamani #tests none #codereview Sam.Zamani Change 3069381 on 2016/07/28 by Michael.Noland Animation: Demoted a check() in anim sync group code to an ensure() to unblock others #rb nick.penwarden #tests Loaded Paragon cine asset that was crashing #codereview lina.halper, martin.wilson Change 3069203 on 2016/07/28 by Dmitry.Rekman Headless client: do not draw windows. - Disables a bunch of code, including reaching into font cache to estimate width. - Should be probably disabled on a higher level, but cutting out the whole Slate application is infeasible (according to BradA/BenM, due to some logic requiring widgets). #rb Nick.Atamas #review-3068983 @Nick.Atamas, @Michael.Noland, @Brad.Angelcyk, @Ben.Salem #codereview Nick.Atamas, Michael.Noland, Brad.Angelcyk, Ben.Salem #tests Compiled and ran Orion Linux client. Change 3069181 on 2016/07/28 by Lina.Halper Fix struct redirector for Orion anim node moving to engine #rb: Maciej.Mroz #code review:Laurent.Delayen #tests: editor loading the anim BP that caused the name conversion Change 3069092 on 2016/07/28 by Aaron.McLeran OR-26161 Client hitches indefinitely when using Stat soundcues / soundwaves - Not all active sounds have sound classes, was causing a crash #codereview marc.audy #rb zabir.hoque #tests Run game with stat soundcues and not crash Change 3068969 on 2016/07/28 by David.Ratti Move test for invalid gameplaycue instance up, since calling IsPendingKill() on garbage can cause crash too. #rb none #tests compile Change 3068902 on 2016/07/28 by David.Ratti Code for tracking down UGameplayCueManager::GetInstancedCueActor crash. #rb none #tests compile Change 3068831 on 2016/07/28 by Aaron.McLeran OR-26417 Reverb is too loud in-game in Dev-General - Initializing prev reverb to 0s so that the first default reverb gets set when no audio volume is set. #rb Jeff.Campeau #tests run a map with no reverb audio volume and reverb is not super wet Change 3068529 on 2016/07/28 by Jason.Bestimt #R@BOMERGE-AUTHOR: david.nikdel #OSS #PurchaseMcp: Use GameService->CreateOnlineHttpRequest instead of McpSubsystem->CreateRequest to query receipts (uses subsystem config) #RB: none #TESTS: none #R@BOMERGE-SOURCE: CL 3068465 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3068399 on 2016/07/28 by Andrew.Rodham Sequencer: Changed animation tracks to allow more animation types (such as anim montages) - APIs now accept UAnimSequenceBases rather than UAnimSequences to afford more flexibility #jira OR-25769 #tests Tested all combinations of animation with sequencer (montage+sequence on asset/BP driven animation components) and matinee. Tested running a game and playing back the announce trailer. Rendered out some movies to ensure that trails work correctly. #rb Benn.Gallagher Change 3068138 on 2016/07/28 by Marcus.Wassmer Disable mallocleak testing by default #rb none #test none Change 3068121 on 2016/07/28 by Marcus.Wassmer Make sure we always do fast stack captures when USE_FAST_STACKTRACE is enabled. Fixes game becoming unresponsive on Windows after 'mallocleak' dumps data. Any other tool that uses stacktraces could become 700 - 1000x slower after any stack symbolication also. #rb Robert.Manuszewski #tests stack tracing / symbolication with mallocleak on windows. Change 3068119 on 2016/07/28 by Marcus.Wassmer Fix MallocLeakProxy deadlock #rb Robert.Manuszewski #tests mallocleak start/stop/dump on windows Change 3067752 on 2016/07/27 by Michael.Noland Engine: Refactored FPS chart creation to make it modular so many performance data consumers can be active at once, allowing greater flexibility and decoupling game analytics from FPS chart exec commands - IPerformanceDataConsumer is an interface for all consumers of per-frame performance tracking data, and instances can be registered/unregisted with the engine using AddPerformanceDataConsumer/RemovePerformanceDataConsumer - The implementation of the 'standard' frame time and hitch histogram tracking is FPerformanceTrackingChart, while the per-frame logging .csv is split into a separate FFineGrainedPerformanceTracker class. - The calculation of frame time breakdowns and hitch detection now occur as long as at least one IPerformanceDataConsumer is registered - Internally the code has been cleaned up a bit to use FHistogram for data storage instead of custom binning code Upgrade Notes: - DumpFPSChartAnalytics has been removed, games that used it should switch to creating their own instance of FPerformanceTrackingChart and call DumpChartToAnalyticsParams on it directly - In general games should have no reason to programmatically call GEngine->StartFPSChart anymore, instead creating their own instance (this prevents conflicts when using the engine console commands) - HTML output for stopfpschart is now generated to a single file rather than two duplicate files (using both map name and capture time as part of the file name) - Removed PauseFPSChart, IsFPSChartActive, and GetFPSChartBoundByFrameCounts to reflect that the GEngine instances aren't meant for external use (Start/Stop are left public for automated testing that wants to use them to do logging, but may also be moved private in the future) Paragon: - Updated to use a separate FPerformanceTrackingChart for gameplay versus in-game menus and removed the duplicated code and GameThreadHitchChart event - Removed partial USE_SERVER_PERF_COUNTERS code in ChartCreation.cpp, splitting it out into a separate observer, which currently lives in Paragon but will be moved to shared code in a separate checkin. The code was only useful in the first place along with other Paragon-side code that was consuming it. #rb dmitry.rekman #codereview bob.tellez, peter.knepley, andrew.grant, john.mauney #review-3067607 @Dmitry.Rekman, @Bob.Tellez #tests Tested manual startfpschart/stopfpschart as well as Paragon match analytics via golden path solo vs AI Change 3067654 on 2016/07/27 by Michael.Noland FString - Fix divide overload path concatenation for empty paths since there are several places in the engine that expect using that doing { path / "" } will append a / onto path. #rb steve.robb #jira UE-31959 [duplicating CL# 3039827] #tests Tried moving a folder in the editor Change 3067644 on 2016/07/27 by Aaron.McLeran OR-24537 Looping audio sometimes persists in Agora Adding stopping sounds if audio component is destroyed while playing a looping sound #rb jeff.campeau #tests audio component stops looping sound if audio component is destroyed prematurely Change 3067560 on 2016/07/27 by Aaron.McLeran OR-26322 Client Hang in FXAudio2EffectsManager::SetReverbEffectParameters - Only applying reverb parameters if they've changed from previous reverb params to avoid unnecessarily spamming the XAudio2 API call - using xaudio2 operation sets to ensure that voice and effect params are executing in sequence - only calling destroy voice after all voice and effect changes have been committed to avoid destroy voice interfering with those commands - Don't call EnsureCompletion on pending async tasks on teardown #rb Jeff.Campeau #tests play paragon with change, notice no changes to audio behavior, no crashes. Created testmap with several reverb zones and demonstrated reverb effect transitions Change 3067420 on 2016/07/27 by jason.bestimt #ORION_MAIN - Merge 29.2/30 @ CL 3067312 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3067400 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3067316 on 2016/07/27 by jason.bestimt #ORION_MAIN - Merge DUI @ CL 3065602 #RB:none #Tests:none [CodeReviewed]: matt.schembari #R@BOMERGE-SOURCE: CL 3067079 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3067025 on 2016/07/27 by Michael.Noland Core: Corrected the initial value of FLightweightTimeGuard::FrameTimeThresholdMS to be in MS rather than seconds and did a few coding standards fixes #rb none #tests Compiled Change 3067020 on 2016/07/27 by Michael.Noland Core: Various improvements to FHistogram and split it out into separate files - Added the ability to use a separate thresholding key than the actual measurement value being recorded (e.g., when accumulating frame time spent in a chart keyed on framerate) - Added O(1) getters for total sample counts and sum of all measurements - Removed encapsulation-breaking SetBinCountByIndex / SetBinSumByIndex - Added support for specifying explicit histogram bucket thresholds #rb dmitry.rekman #tests Tested with another pending changelist that moves FPS charts to use FHistogram for the underlying storage Change 3066681 on 2016/07/27 by Frank.Gigliotti Camera anim field of view fix; * The FOV is now reset on the PlayerCameraManager camera actor when it's initialized. This fixes cases of stale FOV values after playing camera anims that don't end with the FOV at it's base value. * Base FOV can now be edited in the CameraAnim properties. This allows you to specify what the FOV keys are relative to. Previously it was always using a base FOV of 90 degrees. #RB None #CodeReview Jeff.Farris #Tests Multiple camera animations in PIE Change 3066508 on 2016/07/27 by Lina.Halper Smartname guid will be discarded during cooking, and once it's cooked, it's trusted to have correct name. #code review:Martin.Wilson, Benn.Gallagher #rb: Martin.Wilson #tests: cooked test map, run test map, PIE, saving content, loading standalone game Change 3066246 on 2016/07/27 by Jason.Bestimt #R@BOMERGE-AUTHOR: andrew.grant Fix for non-unity error #rb none #tests compiled #R@BOMERGE-SOURCE: CL 3066245 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3066167 on 2016/07/27 by Benn.Gallagher Fixed clothing corruption seen on Twinblast after mesh updates. We were copying a u32 index buffer into a multisize container but CopyIndexBuffer doesn't change the data size when copying - only when rebuilding. #rb Ori.Cohen #tests Editor, PIE, Applying clothing to characters. Change 3065868 on 2016/07/27 by Michael.Noland Blueprints: Fixing non-editor build (missing WITH_EDITOR) #rb none #tests Compiled PS4 Change 3065749 on 2016/07/26 by Michael.Noland Blueprints: Prevent a crash on load in RemoveNodeAndPromoteChildren when removing a corrupted SCS node if it has no parent link (the children are moved to the root node instead) #codereview mike.beach, marc.audy #tests Loaded and recovered a corrupted Blueprint on Cameron's machine #rb Phillip.Kavan Change 3065706 on 2016/07/26 by Josh.Markiewicz #UE4 - changed default values for bLogoutOnSessionTimeout for reservation beacons - fixed non shipping cmd line override to be correct #rb none #codereview andrew.grant, paul.moore #tests none Change 3065359 on 2016/07/26 by Rob.Cannaday Limit external id querying to 100 ids per call. The backend currently enforces this and is returning an error when we exceed this limit. Break up calls in batches of 100 ids. #jira OR-20674 #rb ian.fox #tests login to front end with PC, PS4. forced tests to simulate > 100 requests. Change 3065197 on 2016/07/26 by Bart.Bressler Change how PS4 sessions work: - We now will only try to join somebody's PS4 session only if we accepted an invite from the PS4 system software. This means that an MCP party can have members in different PS4 sessions. - Refactored a lot of the delegates in UOrionParty to lambdas to try to make it more readable - Added comments, other misc. code cleanup. #rb josh.markiewicz, sam.zamani, rob.cannaday #tests created cross play parties with multiple pc + ps4 players #jira OR-20332 Change 3065158 on 2016/07/26 by Lina.Halper Fix the guid keep generated by adding to the database. - This caused worse problem with non-deterministic cooking - This doesn't fix UE-33454 for 100%, but this was the main reason why this was so visible #rb: Martin.Wilson #jira: UE-33772, UE-33454 #tests: cooked AI_Test map, editor rename curves Change 3064735 on 2016/07/26 by Dmitry.Rekman Linux: added WebRTC libs. - Compiled against glibc 2.12 / CentOS 6.x environment (see howto in a separate doc). #rb none #tests Tested OrionClient in Dev-General, and UE4Editor in Dev-Platform. (Edigrating 3063715 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064727 on 2016/07/26 by Dmitry.Rekman Fix crash on cooker exit (UE-33583). - Global/static tickable objects could outlive the collection and trigger asserts when removing themselves from it. #rb none #tests Compiled and ran Linux server and Linux client. (Edigrating 3058779 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064725 on 2016/07/26 by Dmitry.Rekman Linux: use libc++ instead of libstdc++. - Needed to solve problems with third-party C++ libraries (e.g. WebRTC). - Bundled libc++ 3.8.1 (TPS cleared). - Turned off ICU compilation (needs recompile against libc++). - Some libraries (e.g. FBX sdk) still need libstdc++, so in practice it is going to be a mix. #rb none #tests Built and ran a number of Linux targets. (Edigrating 3057152 from //UE4/Dev-Platform/... to //Orion/Dev-General/...) Change 3064572 on 2016/07/26 by Jason.Bestimt #R@BOMERGE-AUTHOR: jason.bestimt #ORION_MAIN - Merge 29.2 @ CL 3064545 #RB:none #Tests:none #R@BOMERGE-SOURCE: CL 3064569 in //Orion/Main/... #R@BOMERGE-BOT: ORION (Main -> Dev-General) Change 3064523 on 2016/07/26 by Jon.Lietz Fixing it so gameplay effects with execution none will no longer keep the BP in a dirty state. Only call EmptyArray() on CalculationModifiersArrayPropHandle if it has any elements. #RB none #tests BP compiles and stays not dirty #codereview dave.ratti@epicgames.com [CL 3111290 by Andrew Grant in Main branch]
2016-09-01 21:20:38 -04:00
}
// var DeployContextList = CreateDeploymentContext(Params, false);
if (DeployContextList.Count == 0)
{
throw new AutomationException("No DeployContextList for SetupClientParams.");
}
var SC = DeployContextList[0];
// Get client app name and command line.
ClientRunFlags = ERunOptions.AllowSpew | ERunOptions.AppMustExist;
ClientApp = "";
ClientCmdLine = "";
string TempCmdLine = SC.ProjectArgForCommandLines + " ";
var PlatformName = Params.ClientTargetPlatforms[0].ToString();
if (Params.Cook || Params.CookOnTheFly)
{
List<FileReference> Exes = SC.StageTargetPlatform.GetExecutableNames(SC);
ClientApp = Exes[0].FullName;
if (!String.IsNullOrEmpty(Params.ClientCommandline))
{
TempCmdLine += Params.ClientCommandline + " ";
}
else
{
TempCmdLine += Params.MapToRun + " ";
}
if (Params.CookOnTheFly || Params.FileServer)
{
string FileHostCommandline = GetFileHostCommandline(Params, SC);
TempCmdLine += FileHostCommandline + " ";
if (Params.CookOnTheFlyStreaming)
{
TempCmdLine += "-streaming ";
}
else if (!Params.ZenStore && SC.StageTargetPlatform.PlatformType != UnrealTargetPlatform.IOS)
{
// per josh, allowcaching is deprecated/doesn't make sense for iOS.
TempCmdLine += "-allowcaching ";
}
}
else if (Params.UsePak(SC.StageTargetPlatform))
{
if (Params.SignedPak)
{
TempCmdLine += "-signedpak ";
}
}
else if (!Params.Stage)
{
var SandboxPath = CombinePaths(SC.RuntimeProjectRootDir.FullName, "Saved", "Cooked", SC.CookPlatform);
if (!SC.StageTargetPlatform.LaunchViaUFE)
{
TempCmdLine += "-sandbox=" + CommandUtils.MakePathSafeToUseWithCommandLine(SandboxPath) + " ";
}
else
{
TempCmdLine += "-sandbox=\'" + SandboxPath + "\' ";
}
}
}
else
{
ClientApp = CombinePaths(CmdEnv.LocalRoot, "Engine/Binaries", PlatformName, "UnrealEditor.exe");
if (!Params.EditorTest)
{
TempCmdLine += "-game " + Params.MapToRun + " ";
}
else
{
TempCmdLine += Params.MapToRun + " ";
}
if (Params.HasDDCGraph)
{
TempCmdLine += "-ddc=" + Params.DDCGraph + " ";
}
}
if (Params.LogWindow)
{
// Without NoStdOutRedirect '-log' doesn't log anything to the window
ClientRunFlags |= ERunOptions.NoStdOutRedirect;
TempCmdLine += "-log ";
}
else
{
TempCmdLine += "-stdout ";
}
if (Params.Unattended)
{
TempCmdLine += "-unattended ";
}
if (IsBuildMachine || Params.Unattended)
{
TempCmdLine += "-buildmachine ";
}
if (Params.CrashIndex > 0)
{
int RealIndex = Params.CrashIndex - 1;
if (RealIndex >= CrashCommands.Count())
{
throw new AutomationException("CrashIndex {0} is out of range...max={1}", Params.CrashIndex, CrashCommands.Count());
}
TempCmdLine += String.Format("-execcmds=\"debug {0}\" ", CrashCommands[RealIndex]);
}
else if (Params.RunAutomationTest != "")
{
TempCmdLine += "-execcmds=\"automation list;runtests " + Params.RunAutomationTest + "\" ";
}
else if (Params.RunAutomationTests)
{
TempCmdLine += "-execcmds=\"automation list;runall\" ";
}
if (SC.StageTargetPlatform.UseAbsLog)
{
TempCmdLine += "-abslog=" + CommandUtils.MakePathSafeToUseWithCommandLine(ClientLogFile) + " ";
}
if (SC.StageTargetPlatform.PlatformType == UnrealTargetPlatform.Win64)
{
TempCmdLine += "-Messaging -Windowed ";
}
else
{
TempCmdLine += "-Messaging ";
}
if (Params.NullRHI && SC.StageTargetPlatform.PlatformType != UnrealTargetPlatform.Mac) // all macs have GPUs, and currently the mac dies with nullrhi
{
TempCmdLine += "-nullrhi ";
}
if (!String.IsNullOrEmpty(Params.Trace))
{
TempCmdLine += Params.Trace + " ";
}
if (!String.IsNullOrEmpty(Params.TraceHost))
{
TempCmdLine += Params.TraceHost + " ";
}
if (!String.IsNullOrEmpty(Params.TraceFile))
{
TempCmdLine += Params.TraceFile + " ";
}
TempCmdLine += SC.StageTargetPlatform.GetLaunchExtraCommandLine(Params);
TempCmdLine += "-CrashForUAT ";
TempCmdLine += Params.RunCommandline;
// todo: move this into the platform
if (SC.StageTargetPlatform.LaunchViaUFE)
{
ClientCmdLine = "-run=Launch ";
ClientCmdLine += "-Device=" + Params.Devices[0];
for (int DeviceIndex = 1; DeviceIndex < Params.Devices.Count; DeviceIndex++)
{
ClientCmdLine += "+" + Params.Devices[DeviceIndex];
}
ClientCmdLine += " ";
ClientCmdLine += "-Exe=\"" + ClientApp + "\" ";
ClientCmdLine += "-Targetplatform=" + Params.ClientTargetPlatforms[0].ToString() + " ";
ClientCmdLine += "-Params=\"" + TempCmdLine + "\"";
ClientApp = CombinePaths(CmdEnv.LocalRoot, "Engine/Binaries/Win64/UnrealFrontend.exe");
LogInformation("Launching via UFE:");
LogInformation("\tClientCmdLine: " + ClientCmdLine + "");
}
else
{
ClientCmdLine = TempCmdLine;
}
}
private static string GetFileHostCommandline(ProjectParams Params, DeploymentContext SC)
{
string FileHostParams = "";
if (Params.CookOnTheFly || Params.FileServer)
{
if (Params.ZenStore)
{
if (Params.CookOnTheFly)
{
FileHostParams += "-cookonthefly ";
}
FileHostParams += "-zenstoreproject=" + ProjectUtils.GetProjectPathId(SC.RawProjectPath) + " ";
FileHostParams += "-zenstorehost=";
}
else
{
FileHostParams += "-filehostip=";
}
// add localhost first for platforms using redirection
const string LocalHost = "127.0.0.1";
if (!IsNullOrEmpty(Params.Port))
{
bool FirstParam = true;
foreach (var Port in Params.Port)
{
if (!FirstParam)
{
FileHostParams += "+";
}
FirstParam = false;
string[] PortProtocol = Port.Split(new char[] { ':' });
if (PortProtocol.Length > 1)
{
FileHostParams += String.Format("{0}://{1}:{2}", PortProtocol[0], LocalHost, PortProtocol[1]);
}
else
{
FileHostParams += LocalHost;
FileHostParams += ":";
FileHostParams += Params.Port;
}
}
}
else
{
// use default port
FileHostParams += LocalHost;
}
if (UnrealBuildTool.BuildHostPlatform.Current.Platform == UnrealTargetPlatform.Mac)
{
NetworkInterface[] Interfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in Interfaces)
{
if (adapter.NetworkInterfaceType != NetworkInterfaceType.Loopback)
{
IPInterfaceProperties IP = adapter.GetIPProperties();
for (int Index = 0; Index < IP.UnicastAddresses.Count; ++Index)
{
if (InternalUtils.IsDnsEligible(IP.UnicastAddresses[Index]) && IP.UnicastAddresses[Index].Address.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork)
{
if (!IsNullOrEmpty(Params.Port))
{
foreach (var Port in Params.Port)
{
FileHostParams += "+";
string[] PortProtocol = Port.Split(new char[] { ':' });
if (PortProtocol.Length > 1)
{
FileHostParams += String.Format("{0}://{1}:{2}", PortProtocol[0], IP.UnicastAddresses[Index].Address.ToString(), PortProtocol[1]);
}
else
{
FileHostParams += IP.UnicastAddresses[Index].Address.ToString();
FileHostParams += ":";
FileHostParams += Params.Port;
}
}
}
else
{
FileHostParams += "+";
// use default port
FileHostParams += IP.UnicastAddresses[Index].Address.ToString();
}
}
}
}
}
}
else
{
NetworkInterface[] Interfaces = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface adapter in Interfaces)
{
if (adapter.OperationalStatus == OperationalStatus.Up)
{
IPInterfaceProperties IP = adapter.GetIPProperties();
for (int Index = 0; Index < IP.UnicastAddresses.Count; ++Index)
{
if (InternalUtils.IsDnsEligible(IP.UnicastAddresses[Index]))
{
if (!IsNullOrEmpty(Params.Port))
{
foreach (var Port in Params.Port)
{
FileHostParams += "+";
string[] PortProtocol = Port.Split(new char[] { ':' });
if (PortProtocol.Length > 1)
{
FileHostParams += String.Format("{0}://{1}:{2}", PortProtocol[0], IP.UnicastAddresses[Index].Address.ToString(), PortProtocol[1]);
}
else
{
FileHostParams += IP.UnicastAddresses[Index].Address.ToString();
FileHostParams += ":";
FileHostParams += Params.Port;
}
}
}
else
{
FileHostParams += "+";
// use default port
FileHostParams += IP.UnicastAddresses[Index].Address.ToString();
}
}
}
}
}
}
FileHostParams += " ";
}
return FileHostParams;
}
private static void ClientLogReaderProc(object ArgsContainer)
{
var Args = ArgsContainer as object[];
var ClientLogFile = (string)Args[0];
var ClientProcess = (IProcessResult)Args[1];
LogFileReaderProcess(ClientLogFile, ClientProcess, (string Output) =>
{
if (String.IsNullOrEmpty(Output) == false)
{
LogInformation(Output);
}
return true;
});
}
private static IProcessResult RunDedicatedServer(ProjectParams Params, string ServerLogFile, string AdditionalCommandLine)
{
ProjectParams ServerParams = new ProjectParams(Params);
ServerParams.Devices = new ParamList<string>(Params.ServerDevice);
if (ServerParams.ServerTargetPlatforms.Count == 0)
{
throw new AutomationException("No ServerTargetPlatform set for RunDedicatedServer.");
}
var DeployContextList = CreateDeploymentContext(ServerParams, true);
if (DeployContextList.Count == 0)
{
throw new AutomationException("No DeployContextList for RunDedicatedServer.");
}
var SC = DeployContextList[0];
var ServerApp = CombinePaths(CmdEnv.LocalRoot, "Engine/Binaries/Win64/UnrealEditor.exe");
if (ServerParams.Cook)
{
List<FileReference> Exes = SC.StageTargetPlatform.GetExecutableNames(SC);
ServerApp = Exes[0].FullName;
}
var Args = ServerParams.Cook ? "" : (SC.ProjectArgForCommandLines + " ");
Console.WriteLine(Params.ServerDeviceAddress);
TargetPlatformDescriptor ServerPlatformDesc = ServerParams.ServerTargetPlatforms[0];
if (ServerParams.Cook && ServerPlatformDesc.Type == UnrealTargetPlatform.Linux && !String.IsNullOrEmpty(ServerParams.ServerDeviceAddress))
{
ServerApp = @"C:\Windows\system32\cmd.exe";
string plinkPath = CombinePaths(Environment.GetEnvironmentVariable("LINUX_ROOT"), "bin/PLINK.exe ");
string exePath = CombinePaths(SC.ShortProjectName, "Binaries", ServerPlatformDesc.Type.ToString(), SC.ShortProjectName + "Server");
if (ServerParams.ServerConfigsToBuild[0] != UnrealTargetConfiguration.Development)
{
exePath += "-" + ServerPlatformDesc.Type.ToString() + "-" + ServerParams.ServerConfigsToBuild[0].ToString();
}
exePath = CombinePaths("LinuxServer", exePath.ToLower()).Replace("\\", "/");
Args = String.Format("/k {0} -batch -ssh -t -i {1} {2}@{3} {4} {5} {6} -server -Messaging", plinkPath, ServerParams.DevicePassword, ServerParams.DeviceUsername, ServerParams.ServerDeviceAddress, exePath, Args, ServerParams.MapToRun);
}
else
{
var Map = ServerParams.MapToRun;
if (!String.IsNullOrEmpty(ServerParams.AdditionalServerMapParams))
{
Map += ServerParams.AdditionalServerMapParams;
}
if (Params.FakeClient)
{
Map += "?fake";
}
Args += String.Format("{0} -server -abslog={1} -log -Messaging", Map, CommandUtils.MakePathSafeToUseWithCommandLine(ServerLogFile));
if (Params.Unattended)
{
Args += " -unattended";
}
if (Params.ServerCommandline.Length > 0)
{
Args += " " + Params.ServerCommandline;
}
}
if (ServerParams.UsePak(SC.StageTargetPlatform))
{
if (ServerParams.SignedPak)
{
Args += " -signedpak";
}
}
if (Params.HasDDCGraph)
{
Args += " -ddc=" + Params.DDCGraph;
}
if (IsBuildMachine || Params.Unattended)
{
Args += " -buildmachine";
}
if (!String.IsNullOrEmpty(Params.Trace))
{
Args += " " + Params.Trace;
}
if (!String.IsNullOrEmpty(Params.TraceHost))
{
Args += " " + Params.TraceHost;
}
if (!String.IsNullOrEmpty(Params.TraceFile))
{
Args += " " + Params.TraceFile;
}
Args += " -CrashForUAT";
Args += " " + AdditionalCommandLine;
if (ServerParams.Cook && ServerPlatformDesc.Type == UnrealTargetPlatform.Linux && !String.IsNullOrEmpty(ServerParams.ServerDeviceAddress))
{
Args += String.Format(" 2>&1 > {0}", ServerLogFile);
}
PushDir(Path.GetDirectoryName(ServerApp));
var Result = Run(ServerApp, Args, null, ERunOptions.AllowSpew | ERunOptions.NoWaitForExit | ERunOptions.AppMustExist | ERunOptions.NoStdOutRedirect);
PopDir();
return Result;
}
private static IProcessResult RunCookOnTheFlyServer(FileReference ProjectName, string ServerLogFile, string TargetPlatform, string AdditionalCommandLine)
{
var ServerApp = HostPlatform.Current.GetUnrealExePath("UnrealEditor.exe");
var Args = String.Format("{0} -run=cook -cookonthefly -unattended -CrashForUAT -log",
CommandUtils.MakePathSafeToUseWithCommandLine(ProjectName.FullName));
if (!String.IsNullOrEmpty(ServerLogFile))
{
// Issue with dotnet not allowing any files with an exclusive advisory lock to be opened for read-only or copied
// https://github.com/dotnet/runtime/issues/34126
if (TargetPlatform == "Linux")
{
Args += " -noexclusivelockonwrite";
}
Args += " -abslog=" + CommandUtils.MakePathSafeToUseWithCommandLine(ServerLogFile);
}
if (IsBuildMachine)
{
Args += " -buildmachine";
}
Args += " " + AdditionalCommandLine;
// Run the server (Without NoStdOutRedirect -log doesn't log anything to the window)
PushDir(Path.GetDirectoryName(ServerApp));
var Result = Run(ServerApp, Args, null, ERunOptions.AllowSpew | ERunOptions.NoWaitForExit | ERunOptions.AppMustExist | ERunOptions.NoStdOutRedirect);
PopDir();
return Result;
}
private static bool StartUnrealTrace()
{
// [TEMPORARY] - UnrealTrace server is currently only available on Windows
if (!RuntimePlatform.IsWindows)
{
return true;
}
// [/TEMPORARY]
LogInformation("UnrealTrace: Starting server");
// Locate the UnrealTrace binary
var UnrealTracePath = HostPlatform.Current.GetUnrealExePath("UnrealTraceServer.exe");
if (!File.Exists(UnrealTracePath))
{
LogWarning("UnrealTrace: Unable to locate binary at " + UnrealTracePath);
return false;
}
// Launch UnrealTrace and wait for it to fork and return
Process Proc = Process.Start(UnrealTracePath, " fork");
Proc.WaitForExit();
if (Proc.ExitCode != 0)
{
LogWarning("UnrealTrace: Failed to start server; ExitCode=" + Proc.ExitCode);
return false;
}
return true;
}
}
}