publicVariable – Talk

From Bohemia Interactive Community
Revision as of 14:46, 1 September 2006 by Suma (talk | contribs)
Jump to navigation Jump to search

"No guarantee" isn't quite right. PV sends stuff out on via TCP, which uses a "guaranteed delivery" packets (as opposed to UDP, which is what most of the MP traffic uses).
The complaints that "it doesn't always work" in multiplayer usually arise from improper or abusive MP coding.
In OFP, mission start is the synchronisation point for MP games. So PVs before mission start are not guaranteed to reach all clients. After that, the clients try to stay synchronized, and that means they make sure they receive the TCP packets in order. Any flood of TCP packets (such as a flurry of PVs, or a bunch of createvehicles) will likely cause Desync (=Backlog of TCP) in an internet environment and hence trouble. Finally, someone with a crappy connection can also cause desynchronization and weird MP effects. But if PublicVariable isn't working in these cases, you have bigger problems than just the variable puking.Dinger 13:09, 1 September 2006 (CEST)

I agree "No guarantee" isn't right. The explanation is however not quite correct. No TCP protocol is used, "reliability" is implemented purelt in UDP using handshaking. Other than that, the explanation of what happens when publicVariable is abuse is roughly correct, just disregard the TCP and imagine "guranteed message send using UDP" instead. --Suma 14:46, 1 September 2006 (CEST)