MantisBT - Zandronum
View Issue Details
0000817Zandronum[All Projects] Bugpublic2012-04-26 18:082015-06-10 02:52
Tiger 
Torr Samaho 
highmajorsometimes
assignedopen 
98d 
 
0000817: Thing x/y/z position desync between client/server
Quote from Tiger
When playing STFBall_Beta2, the ball will sometimes desync from the clients.
The ball can easily desync when there is other actors on the map (like map04), and the ball can sometimes desync when pushing the ball and kicking it at the same time. If you don't really get rough with the ball, the ball wont really desync; however if you get rough with the ball or have 8+ player you will see the ball desync at times.

1. skulltag.exe -file thing_desync_01.wad -host +sv_cheats 1
2. Connect a client to the server and join the game.
3. "give all; god" in the console.
4. Attack the dummy player actor with the rocket launcher.
Actor DummyPlayer 32767
{
    Health 2147483647
    Radius 16
    Height 56
    Mass 100
    +SOLID
    +SHOOTABLE
    +DROPOFF
    +SLIDESONWALLS
    +CANPASS
    +FLOORCLIP
    +WINDTHRUST
    +TELESTOMP
    +NOBLOCKMONST
    States
    {
    Spawn:
        TNT1 A 0
        TNT1 A 0 A_SpawnItemEx ("ServerSideActor", 0, 0, 0, 0, 0, 0, 0, 0, 0)
        TNT1 A 0 A_SpawnItemEx ("ClientSideActor", 0, 0, 0, 0, 0, 0, 0, SXF_CLIENTSIDE, 0)
        TNT1 A 1
        Loop
    }
}

Actor ServerSideActor
{
    +NOBLOCKMAP
    +NOGRAVITY
    States
    {
    Spawn:
        PLAY A 2 Bright
        Stop
    }
}

Actor ClientSideActor
{
    Translation 2
    +NOBLOCKMAP
    +NOGRAVITY
    States
    {
    Spawn:
        PLAY A 2 Bright
        Stop
    }
}
No tags attached.
related to 0000130closed Torr Samaho client prediction is sometimes wrong 
parent of 0002301confirmed  Able to get inside actor mover and block client position while server position keeps moving 
related to 0001097feedback  View bobs if bumping into server-side thing 
Not all the children of this issue are yet resolved or closed.
? thing_desync_01.wad (1,694) 2012-04-26 18:08
/tracker/file_download.php?file_id=582&type=bug
png Screenshot_Doom_20120426_194947.png (32,984) 2012-04-26 18:08
/tracker/file_download.php?file_id=583&type=bug
png

? 2012.09.23_22.52.13_thing_desync_01.cld (84,630) 2012-09-23 20:54
/tracker/file_download.php?file_id=733&type=bug
? thing_desync_02.wad (1,914) 2012-10-01 06:35
/tracker/file_download.php?file_id=772&type=bug
? 2012.10.01_08.31.53_thing_desync_02.cld (50,945) 2012-10-01 06:35
/tracker/file_download.php?file_id=773&type=bug
png desync.png (83,752) 2013-04-05 17:24
/tracker/file_download.php?file_id=960&type=bug
png
Issue History
2012-04-26 18:08unknownnaNew Issue
2012-04-26 18:08unknownnaFile Added: thing_desync_01.wad
2012-04-26 18:08unknownnaFile Added: Screenshot_Doom_20120426_194947.png
2012-04-26 18:09unknownnaStatusnew => confirmed
2012-04-26 18:11unknownnaReporterunknownna => Tiger
2012-04-26 18:45unknownnaRelationship addedrelated to 0000130
2012-04-26 18:46unknownnaNote Added: 0003447
2012-04-26 18:51unknownnaNote Added: 0003448
2012-04-26 18:51unknownnaNote Edited: 0003448bug_revision_view_page.php?bugnote_id=3448#r1866
2012-04-26 18:52unknownnaAssigned To => Torr Samaho
2012-04-26 18:52unknownnaStatusconfirmed => assigned
2012-06-09 13:22Torr SamahoCategoryGeneral => Bug
2012-08-05 16:49Torr SamahoNote Added: 0004269
2012-08-05 16:49Torr SamahoStatusassigned => needs testing
2012-08-07 20:42QentNote Added: 0004313
2012-08-07 20:43QentNote Edited: 0004313bug_revision_view_page.php?bugnote_id=4313#r2362
2012-08-07 20:59Torr SamahoNote Added: 0004315
2012-08-07 21:04QentNote Added: 0004316
2012-09-23 20:54unknownnaNote Added: 0004784
2012-09-23 20:54unknownnaFile Added: 2012.09.23_22.52.13_thing_desync_01.cld
2012-10-01 06:34unknownnaNote Added: 0004891
2012-10-01 06:35unknownnaFile Added: thing_desync_02.wad
2012-10-01 06:35unknownnaFile Added: 2012.10.01_08.31.53_thing_desync_02.cld
2012-10-01 06:37unknownnaNote Edited: 0004891bug_revision_view_page.php?bugnote_id=4891#r2654
2012-10-01 06:37unknownnaPrioritynormal => high
2012-10-04 04:46unknownnaRelationship addedrelated to 0001097
2012-10-11 02:28WatermelonNote Added: 0005081
2013-01-12 21:26Torr SamahoNote Added: 0005743
2013-01-13 09:20Torr SamahoNote Added: 0005747
2013-01-13 09:20Torr SamahoTarget Version => 1.1
2013-03-04 23:11QentNote Added: 0006092
2013-04-05 17:24ArcoFile Added: desync.png
2013-04-05 17:27ArcoNote Added: 0006230
2013-04-05 19:34DuskStatusneeds testing => assigned
2013-04-07 21:42ArcoNote Edited: 0006230bug_revision_view_page.php?bugnote_id=6230#r3464
2013-04-08 22:29QentNote Added: 0006272
2013-06-11 04:08ArcoNote Added: 0006420
2013-06-23 20:11DuskTarget Version1.1 =>
2015-06-06 20:23unknownnaNote Added: 0012559
2015-06-10 02:52unknownnaRelationship addedparent of 0002301

Notes
(0003447)
unknownna   
2012-04-26 18:46   
Quote from kgsws
Zombie horde has barrels pushable by weapons and it can sometimes get out of sync.This happens anywhere, not only on 3D floors.
(0003448)
unknownna   
2012-04-26 18:51   
Quote from Torr Samaho
I remember working on this, but I'm not quite sure if I really fixed the problem.


(0004269)
Torr Samaho   
2012-08-05 16:49   
I improved the X/Y/Z positioning of non-player actors moved by explosions online. It's not perfect but should be considerably better now. Please confirm with the upcoming beta build.
(0004313)
Qent   
2012-08-07 20:42   
(edited on: 2012-08-07 20:43)
The test wad works much much better! STFBall Beta 2 works better too, although we got the ball to desync on all clients on two occasions. The first time we changed the map, but the second time the ball fixed itself in about a second.

'http://www.mediafire.com/file/wcq9pfrqhh7nhhf/stfball_testing.7z [^]' has demos.

(0004315)
Torr Samaho   
2012-08-07 20:59   
Can you also post a link to the wad?
(0004316)
Qent   
2012-08-07 21:04   
'http://www.mediafire.com/file/n60rowufi0ctt7r/stfball_beta2.zip [^]' is the WAD. The bug is visible in the first demo, 8 minutes into MAP03. demo_skiptics comes in handy! :)
(0004784)
unknownna   
2012-09-23 20:54   
I can still desync the dummy player pretty quickly with the chaingun in Zandronum 1.0 if I circle around it while bumping into it. I recorded a demo of it.
(0004891)
unknownna   
2012-10-01 06:34   
(edited on: 2012-10-01 06:37)
If you manage to get inside the client-side actor's radius and fire at the server-side actor, the server-side actor will move, but the client-side actor will stand still. It seems to be related to the old player issue where the player positions weren't sent at full precision.

I edited the example WAD and recorded a new demo. It's very easy to reproduce the desync. Simply hold +forward and +attack after joining the game. It will desync at one point no matter what. You don't even need any ping emulation to reproduce the desync.

(0005081)
Watermelon   
2012-10-11 02:28   
Is there a binary to test this with?
(0005743)
Torr Samaho   
2013-01-12 21:26   
You can test this with Zandronum 1.0.
(0005747)
Torr Samaho   
2013-01-13 09:20   
This should improve the sync in unknownna's thing_desync_02.wad example.
(0006092)
Qent   
2013-03-04 23:11   
I couldn't desync in thing_desync_02.wad anymore, with or without ping emulation.
(0006230)
Arco   
2013-04-05 17:27   
(edited on: 2013-04-07 21:42)
Tested this with the latest version and it still happens. I had to test this with different reproduction steps to get this right, and the desync was successful. There’s a picture that I uploaded to validate this.

Edit: Just to alleviate any confusion, I used the SSG with spread to cause the desync, and then I used the chaingun to snap them back into place. It appears that hitscan weapons have more of an effect than projectiles. This is qaint with Zombie Horde servers, as the main weapons in the mod are hitscan based.

(0006272)
Qent   
2013-04-08 22:29   
I think it's worth noting that even though I was able to desync after I tried adding packet loss, another hit would "resync."
(0006420)
Arco   
2013-06-11 04:08   
I managed to desync the actor on the latest version, but it seems to happen very rarly, even with induced packet loss.
(0012559)
unknownna   
2015-06-06 20:23   
Yes, it's still possible to desync the actor in 2.0, particularly when circlestrafing it while firing the plasmarifle and bumping into the actor at the same time.