hi martino some thoughts about the synchronization:
Here you discribed the multiplayer things:
http://www.glest.org/glest_board/viewto ... 2&start=15if you did it like this there should be no problems with win / linux
The problem we had yesterday is probabaly not an out of sync error.
The commands are sent to the server and the server adds them to a list and let them execute in the next keyframe.
BUT:
this command can be based on the former keyframe, where a unit exists which is no longer there. This is not an out of sync error and can be ignored.
An example of what I think happens:
A keyframe(No30) is near and a unit(No5) gets a command. The command is send to the server, but the server already sent it's list to the clients for the next keyframe(No30). So this command from the client is added to the list for the new keyframe(No31).But with commands from keyframe(No30) the unit(No5) is killed/morphed or whatever.
There are two possible problems:
1- when adding the command to the list for keyframe(31) the commands from keyframe(30) had removed the unit.
2- when executing commands from the list of for keyframe(31) the unit is no longer there.
Whatever happens, if a unit doesn't exist anymore( no unit can be found in the world with this id) this does NOT mean the game is out of sync! There is only a command for a unit that no longer exists, which can safely be ignored. Only the commands are synchronized in the game, but I think not the reactions on commands.
Out of sync can usually only happen on a very slow client who cannot execute all commands until next keyframe! When he reaches the next keyframe and could not execute all commands, the game gets out of sync.
What do you think?