Can I trust "replicated" variables? And how quickly are they replicated?

Thank you for the quick response, that was helpful. I won’t be changing the variable value on the client. I just need to see what the server says it is, and quickly.

Question though. I found another post with some information regarding timing.

Replicated variables while are always reliable, aren’t replicated as fast as possible. They are queued, and replicated in batches at the end of tick.

RPC on the other hand are replicated to clients the moment they are called (doesn’t mean they will arrive faster than variable, though they usually are). You can send data with RPC (as value parameters), but as per usually it won’t work with UObjects only simple data with defined serialization/deserialization. Most native UE types will work out of box. If you have something special, you have to take care of it, yourself.

You should use RPC any time you want to get data to clients, as fast as possible and use replicated variables if you just want to synchronize values or state of object.

It sounds like I should be using RPC if I want the client to have the updated information asap. For instance, the player can “click-drag” multiple tiles to create a wall which I could see issues arising if the logic is not getting a guaranteed accurate current variable.

Thread here: