Skip to content

Synchronization quality testing

Roman edited this page Jul 10, 2020 · 1 revision

Module for search abnormal desynchronization between two identical movement sequences.

There are three steps:

  • (1) record movements
  • (2) playback movements
  • (3) verify sync of movements

How it works:

  • load savefile in game
  • start server
  • open RGL Command line console
  • (1) type coop.record 1
  • do some movements on campaign map
  • type coop.stop
  • stop server
  • load the same savefile in game
  • start server
  • open rgl-debug-console
  • (2) type coop.play 1
  • setup normal speed (key 2)
  • main hero party will be moving exactly same as past
  • (3) wait while in log shown [REPLAY] Verifying has finished ...
  • view file \mb2\bin\Win64_Shipping_Client\logs\1-verified.html in browser or Excel

Column names used in report:

  • timeDiff(ms) - it is the in-game time interval in ms between related saved and replayed movement events
  • skipped - it is the number of saved movement which did not find a related movement while playback
  • newEvents - it is the number of new movement happend while playback which did not find a related in saved movements
  • cols - it is the statistical info about distribution of time intervals calculated as count(log2(time_diff), column)`

Constant shift in result data no matter. It is important that the spread of values is minimal.

In Excel you may create histogram looks like follow:

1-verifying.png