When an actor channel is cleaned up, the actor and its subobjects in the CreateSubObjects array are destroyed/marked as garbage in DestroyActorAndComponents. However, default subobjects are not adde ...
For projects relying on attachment to be performed on the client before the server, such as to prevent latency, this can result in attachments being overridden when USceneComponent::OnRep_AttachChil ...
UK2Node_VariableSet::ShouldFlushDormancyOnSet only returns true for classes that derive from AActor. This leads to inconsistent behavior, as the owning actor will not have FlushNetDormancy called on ...
This seems to happen because FObjectReplicator::ReadyForDormancy will continually return false while FObjectReplicator::CanSkipUpdate returns true. In ReadyForDormancy, the actor's SendingRepState h ...
In ReadyForDormancy, we check if the replicator has any change lists or property updates that haven't been acked. However, these checks are not made in CanSkipUpdate, which can result in the object ...
UHT will only emit the REPLICATED_BASE_CLASS macro and set the NeedsPushModelHeaders flag when the class has replicated properties. If a base class doesn't have any replicated properties, it will le ...
This seems to occur after receiving a Nak for certain actors. FObjectReplicator::ReceivedNak will decrement SendingRepState.CustomDeltaChangeIndex even if the object has no custom delta properties. ...
FRepLayout::DiffProperties doesn't check if the property's conditions is COND_Never or if the Parent Cmd's flags have the ERepParentFlags::IsLifetime flag (which FRepLayout::InitFromClass doesn't se ...
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) ...