Bei so einem Projekt musst du die beide Größten Herausforderungen bedenken.
a) Cycles und Speicher sind Kostbar
b) Syncronisation zwischen deinen Servern muss nahezu Echtzeit sein, wenn du nicht in große Probleme rennen willst.
Übergibst du die IDs direkt beim Movepacket musst du nurnoch gegenchecken ob der jeweilige client diese ID bewegen darf, schickst du sie nicht mit musst du sie zuordnen und dafür Sorge tragen das diese Temoräre ID jedem deiner Server bekannt ist, die es dann wieder auf die jeweiligen Sockets matchen müssen, dort die Temporäre ID die sie zu anfang für das jeweilige Objekt angelegt haben und diese Wiederrum neu zuweise oder die alt übernehmen.
In jedem Fall wird es auf ne Menge "rumsuchen" rauslaufen und eine Suche ist etwas womit Computer einfach nicht gut fertig werden -> Perfomance ist mies dabei, deshalb möglichst andere Wege wählen.
So und nun der Gegenweg, für 4 Byte mehr in deinem Movepacket.
Client schickt den Move mit ID
Server prüft ob er das Recht dazu hat die ID zu bewegen.
Jeder Client der im Umkreis der ID ist bekommt das selbe Update, ID abc hat sich nach xy bewegt.