Locality in Multiplayer
Entities in OFP are handled, in multiplayer, by one computer alone, which sends updates about this entity to other computers connected to the MP game.
A unit is said "local" when it is handled by the local computer.
To know if a unit is local, use the local script command.
Basic Rules
The basic rules to determine locality are as follows:
server = The dedicated server or the client that is hosting the game
client = A game instance used by a player, normally each is on a separate computer
- The player's unit is always local to its client
- AI units are always local to the client of their leader
- AI leaders are always local to the server
- A vehicle is always local to the client of its driver
- Objects/vehicles created after mission start via scripting (via createVehicle for example) are local to the machine that issued the command
Effects of different localities
Knowing locality of a unit is very important as certain command only affect local units (see moveInDriver for example). Other commands have only local effect, nothing will be done outside of computer where the command was issued (see setFog for example).
A unit can change locality during its lifetime. Typical cases are a player dying (his squad AI units are passed to server), use of a join command, or units or players entering or exiting vehicles.