[Sync] does almost everything. Display names, player colors, the active preset on a character, the backdrop index, anim params, morphs, they're all just properties marked
[Sync]. The game fires a [
Change] handler on the other side, you reapply it locally. Owner-write by default, or
[Sync(SyncFlags.FromHost)] for stuff only the host should decide (like which map is loaded).
https://sbox.game/dev/doc/networking/sync-propertiesEvery networked object has one owner at a time, and whoever owns it is the one whose
Sync writes win. Click a character and you call
Network.TakeOwnership() on it. From then on your client is writing its pose, outfit, camera angle, and everyone else just reads from these sync properties because the editor is the owner.
https://sbox.game/dev/doc/networking/ownership