View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0004856 | Spring engine | General | public | 2015-06-28 20:14 | 2015-07-02 07:42 | ||||
Reporter | jamerlan | ||||||||
Assigned To | jK | ||||||||
Priority | normal | Severity | major | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 99.0 | ||||||||
Target Version | 100.0 | Fixed in Version | |||||||
Summary | 0004856: desync when watching demo recorded on the server side | ||||||||
Description | yesterday we tested 99 engine with test version of BA in real life I won.. on replay I lost com like a noob I have both replays: local and server 20150627_220440_DeltaSiegeDry_99.sdf - replay from server. I desync when watching it. To watch i use: "/setmaxspeed 20" and then I use that "20" speed. infolog.txt - is from watching the demo | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
jamerlan (reporter) 2015-06-28 20:26 |
Cannot upload replays to mantice. Here is dropbox links: server demo: https://www.dropbox.com/s/t8n1cyo8x6mp8i1/20150627_220440_DeltaSiegeDry_99.sdf?dl=0 Cant find local demo.. still searching.. but probably server demo is enough. Because in demo everyone looks desynced |
jamerlan (reporter) 2015-06-28 20:40 |
I found my local replay. When I watch it - it shows me "desynced" world too https://www.dropbox.com/s/7k71b2zdwi588h2/20150627_230445_DeltaSiegeDry_99.sdf?dl=0 so both demos are broken: server and local |
hokomoko (developer) 2015-06-29 13:48 |
I've hit same assert as here: https://springrts.com/mantis/view.php?id=4851#c14737 This should be fixed here: https://github.com/spring/spring/commit/12dfee96136e1f3834b5a53ceb0b2e1b23e8bdaf |
jamerlan (reporter) 2015-06-29 15:28 |
How should I re-test? cherry-pick commit to release branch and watch replay again? In "develop" branch it will desync anyway. And if I cherry-pick - compilation failed |
hokomoko (developer) 2015-06-29 15:30 |
I don't think it's retestable. I'll try to verify first if that's the issue indeed. |
abma (administrator) 2015-06-29 23:41 Last edited: 2015-06-29 23:43 |
tested with 99.0 + cherry-picked 12dfee96... got no failed assert. (not sure what to do with the desync to demo) |
hokomoko (developer) 2015-06-30 00:03 |
indeed desync still happens, no luck yet. |
abma (administrator) 2015-06-30 00:49 |
what confuses me is, that i get the same checksums which were recorded in infolog.txt: is sth. broken with the demo recorder broken? the message is only recorded locally: https://github.com/spring/spring/blob/develop/rts/Net/NetCommands.cpp#L558 my msg: [f=0010868] Error: [DESYNC_WARNING] checksum efaa9dc8 from player 1 (Subionic) does not match our checksum 25875931 for frame-number 10860 msg from jamerlan: [f=0010868] Error: [DESYNC_WARNING] checksum efaa9dc8 from player 1 (Subionic) does not match our checksum 25875931 for frame-number 10860 so jamerlan & i sync when watching the replay, but we both don't sync to the checksum stored in replay. |
abma (administrator) 2015-06-30 01:02 |
@jamerlan: just to be sure: no desync warnings / errors when you played this game? |
jamerlan (reporter) 2015-06-30 01:25 |
abma, yep, game was played without desyncs or errors |
abma (administrator) 2015-06-30 01:54 Last edited: 2015-06-30 02:06 |
ooh, i have a candidate: [f=0000457] [gluon (replay)] !joinas station lucido [f=0000457] > BlackHoleHost7 * Adding player lucido in ID 0 (by gluon) [f=0000457] [Game::ClientReadNet] added new player lucido with number 31 to team 0 joinas is pretty new and rarely used / badly tested! (imo + afaik) (but still a wild guess) |
jamerlan (reporter) 2015-06-30 01:57 |
it was used often enough in spring 98 |
jK (developer) 2015-06-30 09:51 Last edited: 2015-06-30 10:01 |
Only thing I know so far is: (i) watching the demo at speed 1-20 desyncs (ii) /skip 10000 does NOT desync |
hokomoko (developer) 2015-06-30 11:18 |
Traces are identical, are you sure sync checksum is checked when you /skip? |
jamerlan (reporter) 2015-06-30 11:27 |
with /skip 10000 it desyncs too in desynced replay I ([teh]decay) lost com like a noob and then did nothing in real life I killed whole south :-) |
jK (developer) 2015-06-30 11:38 |
Strange, when skipping close to the 11k frame (i.e /skip 400 or /skip 500) it desyncs (even before the skipping finished). Only skipping far behind that 11k frame prevents the desync. |
hokomoko (developer) 2015-06-30 12:01 Last edited: 2015-06-30 12:27 |
I believe abma is right. When watching the demo, you get the id 30, and then when lucido joins, he gets the id 31 instead of 30 (which he originally got). verified - if you run the demo and do /cheats /godmode, there is no desync until 0016506. (lucido's commands work even though they're from your playerID) |
jK (developer) 2015-07-02 07:42 |
Fix 7d0351a25ae41f73b260c4de6183c945012c0c5c committed to develop branch: fix 0004856: make player ids static in demos (for that the demo needs to save the amount of total players in the demo), repo: spring changeset id: 5285 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2015-06-28 20:14 | jamerlan | New Issue | |
2015-06-28 20:14 | jamerlan | File Added: infolog.txt | |
2015-06-28 20:26 | jamerlan | Note Added: 0014753 | |
2015-06-28 20:40 | jamerlan | Note Added: 0014754 | |
2015-06-29 11:28 | abma | Target Version | => 100.0 |
2015-06-29 13:42 | hokomoko | Changeset attached | => spring develop 12dfee96 |
2015-06-29 13:48 | hokomoko | Note Added: 0014767 | |
2015-06-29 13:48 | hokomoko | Assigned To | => hokomoko |
2015-06-29 13:48 | hokomoko | Status | new => feedback |
2015-06-29 15:28 | jamerlan | Note Added: 0014769 | |
2015-06-29 15:28 | jamerlan | Status | feedback => assigned |
2015-06-29 15:30 | hokomoko | Note Added: 0014770 | |
2015-06-29 20:20 | hokomoko | Status | assigned => new |
2015-06-29 23:41 | abma | Note Added: 0014787 | |
2015-06-29 23:41 | abma | Note Edited: 0014787 | View Revisions |
2015-06-29 23:43 | abma | Note Edited: 0014787 | View Revisions |
2015-06-30 00:03 | hokomoko | Note Added: 0014788 | |
2015-06-30 00:49 | abma | Note Added: 0014789 | |
2015-06-30 01:02 | abma | Note Added: 0014790 | |
2015-06-30 01:25 | jamerlan | Note Added: 0014791 | |
2015-06-30 01:54 | abma | Note Added: 0014792 | |
2015-06-30 01:56 | abma | Note Edited: 0014792 | View Revisions |
2015-06-30 01:57 | jamerlan | Note Added: 0014793 | |
2015-06-30 02:06 | abma | Note Edited: 0014792 | View Revisions |
2015-06-30 09:51 | jK | Note Added: 0014795 | |
2015-06-30 10:01 | jK | Note Edited: 0014795 | View Revisions |
2015-06-30 11:18 | hokomoko | Note Added: 0014796 | |
2015-06-30 11:27 | jamerlan | Note Added: 0014797 | |
2015-06-30 11:38 | jK | Note Added: 0014798 | |
2015-06-30 12:01 | hokomoko | Note Added: 0014799 | |
2015-06-30 12:08 | hokomoko | Assigned To | hokomoko => jK |
2015-06-30 12:08 | hokomoko | Status | new => assigned |
2015-06-30 12:26 | hokomoko | Note Edited: 0014799 | View Revisions |
2015-06-30 12:27 | hokomoko | Note Edited: 0014799 | View Revisions |
2015-07-02 07:42 | jK | Changeset attached | => spring develop 7d0351a2 |
2015-07-02 07:42 | jK | Note Added: 0014828 | |
2015-07-02 07:42 | jK | Status | assigned => resolved |
2015-07-02 07:42 | jK | Resolution | open => fixed |