2019-12-14 23:25 CET

View Issue Details Jump to Notes ] Related Changesets ]
IDProjectCategoryView StatusLast Update
0004856Spring engineGeneralpublic2015-07-02 07:42
Assigned TojK 
Product Version99.0 
Target Version100.0Fixed in Version 
Summary0004856: desync when watching demo recorded on the server side
Descriptionyesterday 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
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files




jamerlan (reporter)

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)

I found my local replay. When I watch it - it shows me "desynced" world too

so both demos are broken: server and local


hokomoko (developer)

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)

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)

I don't think it's retestable.
I'll try to verify first if that's the issue indeed.


abma (administrator)

Last edited: 2015-06-29 23:43

View 3 revisions

tested with 99.0 + cherry-picked 12dfee96... got no failed assert.

(not sure what to do with the desync to demo)


hokomoko (developer)

indeed desync still happens, no luck yet.


abma (administrator)

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:

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)


just to be sure: no desync warnings / errors when you played this game?


jamerlan (reporter)

abma, yep, game was played without desyncs or errors


abma (administrator)

Last edited: 2015-06-30 02:06

View 3 revisions

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)

it was used often enough in spring 98


jK (developer)

Last edited: 2015-06-30 10:01

View 2 revisions

Only thing I know so far is:
(i) watching the demo at speed 1-20 desyncs
(ii) /skip 10000 does NOT desync


hokomoko (developer)

Traces are identical, are you sure sync checksum is checked when you /skip?


jamerlan (reporter)

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)

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)

Last edited: 2015-06-30 12:27

View 3 revisions

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)

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

+Related Changesets

-Issue History
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
+Issue History