Guarantee replication order

Hi,

Net priority does allow you to provide the replication system with an idea of which actors are more important than others, allowing these actors to be considered for replication first. Even so, this does not necessarily guarantee any particular replication order between actors for a number of reasons. Actors may have the same priority, or they may have different update frequencies that cause them to be considered for replication on different frames. An actor’s priority may also change based on its position relative to the connection’s view target, the time since the actor was last replicated, or whether or not the connection is saturated.

https://dev.epicgames.com/documentation/en\-us/unreal\-engine/actor\-priority\-in\-unreal\-engine

Iris provides more control over how prioritization is handled with prioritizers, but again, I don’t believe this guarantees any particular order:

https://dev.epicgames.com/documentation/en\-us/unreal\-engine/iris\-prioritization\-in\-unreal\-engine

Like the replication graph, Iris does include a concept of “dependent” actors, where dependent objects will be replicated on updates where their parent is replicated (see UObjectReplicationBridge::Add/RemoveDependentObject). Again, no guarantees are made as to the specific order the actors will be sent/received, but this should help ensure that certain actors are all replicated in the same update. (I believe bandwidth saturation can still prevent dependents from being replicated though.)

Thanks,

Alex