No, I haven't yet read it.
But since you have, answer me this. Why do I get desyncs fighting a single boss in a large room, because I use the pillar to block LOS and force him to move instead of attack? Why can I have 50 guys in a room with no desyncs when I'm outside of it, but the minute I step in I desync like crazy? Why can I be standing still and then during a desync, the game actually moves my character somewhere else? If the data is getting that mangled, there is a systemic problem.
The truth is you are desync'ed all the time. The game client is not at the same game state as server. It is not apparent to you because that's exactly what client-side prediction aims to do - make game play look responsive and real time, even though data has not arrived from server yet. It's the same on server-side; the simulation continues to run with or without data from the client. Both client and server uses prediction to continue to simulation while waiting for data to arrive. When data arrives they make adjustments to the game state to keep it more or less synchronized.
If you are on a big, flat and empty grassland, it doesn't matter if you are at (213,445) in client and (223,435) on server. You keep moving in client and server, and eventually when you stop moving, your location will synchronize on both ends. The client during all that time will provide you instantaneous feedback, moving your character as your input.
But if there are lots of trees and you are trying to hide behind them, then the difference in game state will be more apparent. In client you are moving right between two trees, but on server your position is actually 5 units to the left and you got blocked by the tree. In client you keep inputting commands for more actions; eventually both client and server catch the fact the game states are unrecoverable. So the client or server requests a resynchronization, server sends the full game state to client. Once the client get that, it snaps you and everything back, and at this point you think "Desync!" but the client is actually at the most synchronized state.
Some games hide desync by taking shortcuts. e.g.
- Not having narrow terrain, so your chance of getting stuck on something is much lower.
- Turning off collision check for some objects.
- The calculation of whether an attack hit or not is performed at the time when the attack is initiated. i.e. Vaal's hammer raised when you are in range = you are dead versus having the ability to run away before it lands.
Back to your case: Your desync could've been built up for some time. Then you start the fight with the boss (I'm assuming Brutus or Kole). You attempt to hide behind a wall, but due to the desync build-up, in server game state you are actually in front of the wall. So Brutus/Kole drags you in, your position rapidly changed. In server game state you are right up in the face with the boss, in client game state you are standing behind wall. Resynchronization ordered, server sends full state to client. You teleported to boss, probably dead shortly after as the game goes on despite of the resync, you got hit a few times already. At this time you think "Desync!".
The client-prediction technique is first in use by Duke Nukem 3D in 1996, and have been used by real time online games ever since. So I can't really give you a live example of what would happen if you don't use it. But basically the client would freeze up if data from server is delayed. You would press a key to attack... then nothing. Your character won't execute it until your input reaches the server and the server can get a response back to you. Which would suck for any real time games. That's what I meant with online real time equals to living with desync.
If the issue is the time needed for the data to travel between server and client, then they need to optimize it further to send less data more often. At that cap? Then the data they're generating is too chunky. Again, my gut tells me its the pathfinding and LOS calcs serverside, based on where I've seen desyncs happen the most. Doesn't happen in the Dominus fight because the angles there are soft and there's lots of room to establish and keep LOS.
With the client-prediction model, they are already sending less data more often. The time required for data to reach server and back (e.g. 200ms + 200ms), a real time game don't stand still to wait.
Server calculates how the enemies act, which is based on server's copy of your position. When resynchronization happens you get corrected to server's game state, which makes you think it's pathfinding/LoS related.
If you dare, you can try to run around in Dominus fight. Quaff a quicksilver and keep running through packs of monsters. You will gradually go out of sync, and a resync will happen. You will notice you and/or the monsters snap to different locations. Or do a Merveil run in normal so you don't have to die. Instead of fighting, just keep running around, through passages and monsters with quicksilver on.
Whenever I die to a desync, it basically kills my motivation to play for the night. Especially at the higher levels when you can't just laugh off the penalty for dying, you have to plan around it if you want to get anywhere. And going three hours without dying only to have your legs cut out from under you by a desync is a massive FU, that they shouldn't be giving up on.
I have my fair share of deaths from desync myself, on level 70+ characters.
Do what I suggested - use the /oos command when you catch a hint of a out-sync build up.