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. When later comparing the custom delta change indexes in CanSkipUpdate, RepChangelistState.CustomDeltaChangeIndex will be 0 as expected, but SendingRepState.CustomDeltaChangeIndex may be something like 4294967295 (due to decrementing an unsigned int with a value of 0).
Enable push model and net.PushModelSkipUndirtiedReplication. Using network emulation with bad conditions, replicate an actor without any custom delta properties using push-model.
This results in FObjectReplicator::CanSkipUpdate beginning to consistently return false due to RepChangelistState.CustomDeltaChangeIndex not being equal to SendingRepState.CustomDeltaChangeIndex.
How does TextureRenderTarget2D get TArray<uint8> type data?
Why does the REMOVE method of map container remove elements have memory leaks?
How do I set a material as a post-processing material?
What is the cause of the packaging error falling back to 'GameUserSettings' in ue5?
What is the difference between Camera and CineCamera?
How to delete some elements correctly when deleting an array loop?
How does TArray loop correctly remove elements in blueprints?
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-187795 in the post.
4 |
Component | UE - Networking |
---|---|
Affects Versions | 5.3 |
Target Fix | 5.6 |
Created | Jun 5, 2023 |
---|---|
Updated | Oct 25, 2024 |