Static, non-replicated actors have different role to dynamically spawned actors

UE - Networking - May 23, 2023

For a non-replicated actor, the expected values for its local and remote roles would be ROLE_Authority and ROLE_None respectively. However, in ULevel::InitializeNetworkActors, ExchangeNetRoles(true) ...

Destroying a beacon from a RPC no longer destroys the beacon actor

UE - Networking - May 16, 2023

This seems to be because of recent changes made for [Link Removed]. Now that UNetDriver::bInTick is being properly tracked for derived classes, AOnlineBeacon::CleanupNetDriver is now deferring destr ...

Replicated subobjects list crashes with unreachable yet valid objects when UE_NET_SUBOBJECTLIST_WEAKPTR=0

UE - Networking - May 8, 2023

This seems to occur when the subobject is considered unreachable but is not yet pending kill/marked as garbage. In this case, IsValid returns true while FWeakObjectPtr::Get returns nullptr for the o ...

Dropped encryption ack control message can result in connection failure

UE - Networking - Apr 28, 2023

When connecting a client using encryption, the server's NetConnection sends the encryption ack and then immediately enables encryption (UNetConnection::EnableEncryptionServer). In the case where the ...

RPCs can still be called on torn off actors

UE - Networking - Apr 25, 2023

Because UNetDriver::ProcessRemoteFunction does not check if the actor has been torn off, it's possible for the server to send a RPC for a torn off actor if it still exists on the server and client. ...

Old property values can be applied when updating an unmapped reference in custom NetSerialize struct

UE - Networking - Apr 13, 2023

This seems to be caused by the following:The struct, which has an actor reference property as well as some other properties, implements its own NetSerialize function.When the actor reference propert ...

ServerMapNameOverride applied to "Play Standalone" NetMode instances

UE - Networking - Mar 9, 2023

For testing connection flow, it can be really useful to have the ability to start standalone instances in one map while the server starts in another. However, since the server map name override is a ...

Actor scale can be different on client and server when spawning with scale of (1,1,1)

UE - Networking - Feb 28, 2023

When spawning an actor, we don't seem to replicate the scale if it's set to (1,1,1), even if the root component's default scale is different to this. This results in the client using the default sca ...

Can start PIE in New Editor Window during PIE instance's online login

UE - Networking - Feb 17, 2023

When starting a PIE instance using the "Selected Viewport" play mode, the ability to start another PIE session is blocked (handled in FInternalPlayWorldCommandCallbacks::PlayInViewport_CanExecute). ...

UWorld::GetNetMode returns incorrect value during UGameInstance::StartPlayInEditorGameInstance

UE - Networking - Jan 19, 2023

During PIE instance initialization, there seems to be a window during which UWorld::GetNetMode will not return the expected value: before the instance's NetDriver has been created but after UGameIns ...