As I understand it, SyncDictionaries (Mirror-only) are basically fancy SyncLists (present in UNET). So I hope this general forum can still provide an answer. In the Mirror documentation, it says: "SyncDictionaries work much like SyncLists: when you make a change on the server the change is propagated to all clients and the Callback is called." Under SyncLists, the documentation says, "You can also detect when a synclist changes in the client or server. This is useful for refreshing your character when you add equipment or determining when you need to update your database. Subscribe to the Callback event typically during Start, OnClientStart or OnServerStart for that. Note that by the time you subscribe, the list will already be initialized, so you will not get a call for the initial data, only updates." OK--the SyncList will sync for future updates, but for the initial data I'm on my own. Right? My question: What is the right way to initialize SyncList/SyncDictionary values for newly connecting clients? My situation: I have a SyncDictionary<int slot, GameObject player>. When the server starts, a game controller object builds 4 unassigned player objects and puts them into the dictionary. Players are assigned one of these objects. Your slot determines where your UI healthbar appears on screen. Anyway, when a new client connects, this SyncDictionary has 0 items in it. I want it to have the server's 4. I'm not sure how to force the server to update a new client with those initial values.