Commit Graph

156 Commits

Author SHA1 Message Date
James Knight
c5742903d4 Fix for previous submit
[CL 2567808 by James Knight in Main branch]
2015-05-27 21:09:20 -04:00
James Knight
789a0a27ef Moved enums that were only used for NetConnections from CoreNet.h to NetConnection.h. Allowed InitConnectiont to set the max packet size. Any specified max packet sizes greater than the specified MAX_PACKET_SIZE will default to MAX_PACKET_SIZE.
[CL 2567692 by James Knight in Main branch]
2015-05-27 19:30:49 -04:00
John Barrett
5d70d237c5 Merging from /usr/John_Barrett: Added UE4 UScript/Blueprint Virtual Machine reflection class, new stack tracing and log tracing code, fixed and verified fixes for many broken unit tests; full list of changes:
- Added class for allowing reflection of UObjects/UStructs/UProperties/etc., so that properties can be referenced dynamically by string, instead of statically
     - Allows game code to be referenced without direct linking
     - Allows unit tests to break without blocking compiles, allows easier backwards compatability, and easier archiving of old unit tests
     - Very useful for quick debug code; may tie it into the console with autocomplete at some stage
     - Example:
          FGuid* EntryItemGuidRef = (FGuid*)(void*)((FVMReflection(UnitPC.Get())->*"WorldInventory"->*"Inventory"->*ItemsPropName)["FFortItemEntry"][0]->*"ItemGuid")["FGuid"];

- Added a new stack tracing manager, which can be used by unit tests through GTraceManager, or through the whole engine with the StackTrace console command (see UnitTestManager.cpp for full command list)
     - Allows conditional/filtered stack traces to be inserted anywhere into the code (categorized by name), for debugging purposes
     - Once-off stack trace example:
          GEngine->Exec(NULL, TEXT("StackTrace TraceName"));
     - Multiple/accumulated stack trace examples:
          GEngine->Exec(NULL, TEXT("StackTrace TraceName Add -Log"));
          GEngine->Exec(NULL, TEXT("StackTrace TraceName Dump"));

- Added a log hook for the stack tracing manager, and a LogTrace command, which allows stack traces to be dumped whenever a specific log is encountered (see UnitTestManager.cpp for full command list)
     - Example, for debugging the cause of a disconnect:
          "LogTrace AddPartial UNetConnection::Close: Name: IpConnection_"

- Added -UnitTestCap=x commandline parameter, to limit the maximum number of unit tests that can run at once

- Added AllowedClientActors/AllowedClientRPCs to ClientUnitTest, to allow better whitelisting of accepted actors/RPC's

- Fixed many broken unit tests

- Adjusted actor replication blocking hook, to allow blocking of all instances of actor replication, instead of just actor channels

- Made console command results, auto-focus the Console tab, if the current tab won't display the results

- Fixed blocking automation testing, when the current game project doesn't support unit tests (doesn't have a unit test environment setup)

- Disable recursive killing of unit test child processes, while TerminateProc has a bug that kills all killable Windows processes

- Updated crash callstack detection

[CL 2565239 by John Barrett in Main branch]
2015-05-26 13:35:34 -04:00
James Knight
9ead53ef78 Added LogRep and LogRepTraffic for replication specific UE_LOG messages
UE-2098

#codereview ryan.gerleve, john.pollard

[CL 2553763 by James Knight in Main branch]
2015-05-15 18:08:17 -04:00
Josh Markiewicz
d59491e91b [AUTOMERGE]
#UE4 - const FUniqueNetId / FOnlinePartyId changes

--------
Integrated using branch Ue4-To-UE4-Fortnite-Simple (reversed) of change#2538253 by Josh.Markiewicz on 2015/05/05 17:39:19.

[CL 2540329 by Josh Markiewicz in Main branch]
2015-05-06 19:56:02 -04:00
Nick Whiting
4b655cb4fd #ue4 Fix for SimpleHMD build break. Updated to conform to new API
[CL 2537858 by Nick Whiting in Main branch]
2015-05-05 14:50:14 -04:00