Since the implementation of the project would involve mapping sync "response" actions to player sources that need to be in the game at the time the response is received, and the responses will be injected as actions, it is necessary to make sure that any PlayerLeave packets will synchronise the sync.players map accordingly within the context of the dispatch_action_tick function, in particular:
- a player leaving action causes the
sync.players map to change
- a player leaving action will queue up a
PlayerLeave packet
- we need to make sure that the timing of the actual sending of the
PlayerLeave packet is in sync with the change of state: so we want the state change and the PlayerSync packet to both occur before we lock up the state in dispatch_action_tick (or at least that's what I @diewolke9 understood :D)
Anyways, Faro said he has a solution :D
Since the implementation of the project would involve mapping sync "response" actions to player sources that need to be in the game at the time the response is received, and the responses will be injected as actions, it is necessary to make sure that any
PlayerLeavepackets will synchronise thesync.playersmap accordingly within the context of thedispatch_action_tickfunction, in particular:sync.playersmap to changePlayerLeavepacketPlayerLeavepacket is in sync with the change of state: so we want the state change and thePlayerSyncpacket to both occur before we lock up the state indispatch_action_tick(or at least that's what I @diewolke9 understood :D)Anyways, Faro said he has a solution :D