[Freeciv-Dev] (PR#12223) city has changed multiple times (CMA detaches)
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
<URL: http://bugs.freeciv.org/Ticket/Display.html?id=12223 >
> [bhudson - Fri Apr 22 03:32:24 2005]:
>
> I made a patch for this a while back but something gobbled
> up my message it seems.
>
> I've been playing with this a while and I never see the "changed
> multiple times" error anymore. Pity it didn't make it in to 2.0.0
>
> The error, and how this fixes it:
> The GAME_STATE packet includes clearing the delta caches.
> Currently, the server sends that packet and immediately clears
> both send and receive caches.
>
> However, if it so happens that the GAME_STATE packet is in
> flight and the client sends a packet to the server, the client
> sends using its old delta cache, and the server receives using
> the new, cleared delta cache.
>
> Fix: the server sends GAME_STATE and clears its outgoing
> cache. Upon receipt, the client clears its caches and sends
> a GAME_STATE_ACK. Finally, when the server gets the ack,
> it clears its incoming cache.
But the situation when this error shows up is usually when a game is
just loaded. And in this case why would the client be doing any action
(particularly CM, but generally anything that would involve sending some
sort of change packet to the server) before it receives the game-state
packet from the server that tells it to start running?
-jason
|
|