Replicating variables
Variable replication is probably the most important part of working in a network environment. From variables like an actor's Location
and Rotation
to the amount of ammo a weapon has, the server has a lot of variables to keep track of and keep the clients in sync with. Unlike functions, variables are always reliable and will always reach the clients regardless of bandwidth saturation or packet loss. It may just take a bit of time, as replicated function calls take priority.
When dealing with replication, it's important to realize that all types of variables can be replicated EXCEPT dynamic arrays. Static arrays work just fine, but if you need to replicate a dynamic array the only way you'll be able to do that is by passing the individual elements of the array through a replicated function one at a time, which can get messy. If possible it's best to avoid having dynamic arrays that the client needs to know about. For our game, if we wanted to replicate the GameInfo's array...