Opened 7 years ago
Closed 7 years ago
#4598 closed defect (fixed)
OOS on rejoin - Summary Sequences / Percent Map Explored
Reported by: | elexis | Owned by: | elexis |
---|---|---|---|
Priority: | Release Blocker | Milestone: | Alpha 22 |
Component: | UI & Simulation | Keywords: | |
Cc: | Imarok, bb, Vladislav, Itms | Patch: | Phab:D612 Phab:D630 |
Description (last modified by )
Reprodue:
- Start hosting a game on the random map anatolian plateau, tiny size, 1 player
- Rejoin as a late observer in a second window
- Wait at least 30 seconds
I could not reproduce this issue on any skirmish map (even the tiny polynesia) nor on a normal sized river archipelago map.
--- oos_dump.txt 2017-05-29 01:22:01.467302000 +0200 +++ oos_dump_1496013698_11248.txt 2017-05-29 01:22:01.475302000 +0200 @@ -15341,11 +15341,11 @@ "percentMapExplored": [ 23, 23, 23, 23, - 23 + 22 ], "teamPercentMapExplored": [ 22, 22, 22,
The teamscore differs too sometimes. These arrays are in the sequences object, so might or might not have something to do with Phab:D144. Couldn't find anything obvious in that commit though.
Someone could figure out which revision broke this with a quick git bisect (besides the compile times).
Change History (19)
comment:3 by , 7 years ago
with current svn I could.
Wait, I forgot to set the correct map >_< Edit: actually the map settings were right :D
and r19617 seem to work correctly too.
comment:5 by , 7 years ago
It's definitely r19517 as I can reproduce it with that revision but not the one before.
The important part is to wait until g_UpdateSequenceInterval
= 30 seconds gametime and having done the rejoin before.
comment:6 by , 7 years ago
Description: | modified (diff) |
---|
comment:7 by , 7 years ago
elexis thinks this is connected, so I just post this here to not forget about:
15:17 < elexis> also I got this one after being disconnected after finishing the loading screen before passing the "waiting for other clients to load" point
WARNING: JavaScript warning: gui/summary/counters.js line 47 reference to undefined property playerState.sequences.time ERROR: JavaScript error: gui/summary/counters.js line 47 TypeError: playerState.sequences.time is undefined updateCountersPlayer@gui/summary/counters.js:47:6 updatePanelData@gui/summary/summary.js:329:3 selectPanel@gui/summary/summary.js:131:3 init@gui/summary/summary.js:460:2 leaveGame@gui/session/session.js:682:1 __eventhandler181 (press)@disconnectedExitButton press:0:1 ERROR: GUI page 'page_summary.xml': Failed to call init() function
comment:8 by , 7 years ago
comment:9 by , 7 years ago
https://pastebin.com/zXKCpTVR fixes the OOS and the different team/player explored map
comment:11 by , 7 years ago
There is a bug in CCmpRangeManager: GetPercentMapExplored(1)
results in 2786 explored tiles, while
GetUnionPercentMapExplored([1])
results in 2696 explored tiles.
comment:12 by , 7 years ago
Quick fix will be the patch I proposed.
Deeper fix: fix the caching of m_ExploredVertices
. (introduced in r13576)
comment:13 by , 7 years ago
Cc: | added |
---|
comment:14 by , 7 years ago
Didn't OOSed before my summary graphs commit, because only the properties of a component are serialized and the StatisticsTracker doesn't store percentMapExplored
and teamPercentMapExplored
but calculates them on demand. With my commit, those values are stored every 30 s in sequences and then also become serialized.
comment:15 by , 7 years ago
Patch: | → Phab:D612 |
---|
comment:17 by , 7 years ago
I'd guess the caching is either broken since r16751 or since its implementation.
comment:18 by , 7 years ago
Patch: | Phab:D612 → Phab:D612 Phab:D630 |
---|
r19517 doesn't cause it