Opened 9 years ago

Closed 8 years ago

Last modified 5 years ago

#3460 closed enhancement (duplicate)

New command line argument - ooslog and serializationtest only after a given turn

Reported by: elexis Owned by:
Priority: Must Have Milestone:
Component: Core engine Keywords:
Cc: Patch:

Description

If commands.txt files of actual games are reported, the error can often occur at a very late turn. It would be nice if you could give a turn number via commandline in order to start the serializationtest or oosdump after that. Thus you can fast forward some thousand turns and then do the slow checks. Computing a turn takes less than a second, but dumping the simulation state takes many seconds, so it would be a great performance advantage when debugging out-of-sync errors.

Refs #3339

Attachments (1)

t3460_preview_wip_v0.1.patch (1.4 KB ) - added by elexis 9 years ago.
Something like that. It has helped me a lot with #3271. Finishes the run in some seconds instead of hours.

Download all attachments as: .zip

Change History (6)

by elexis, 9 years ago

Something like that. It has helped me a lot with #3271. Finishes the run in some seconds instead of hours.

comment:1 by wraitii, 8 years ago

This patch does this, but it also makes it so the state is conserved over multiple turns. This actually has its uses, since you can see if the OOS comes from the deserialization or from something imperceptible going wrong earlier (in some cases).

comment:2 by elexis, 8 years ago

Keywords: simple added
Priority: Nice to HaveMust Have

It's frustrating having to modify the engine code again and again to skip the first N turns of this command line option.

comment:3 by elexis, 8 years ago

Keywords: simple removed
Milestone: Backlog
Resolution: duplicate
Status: newclosed

Duplicate of #4242

comment:4 by elexis, 7 years ago

In 18940:

An awesome Rejoin-test tool by wraitii and Itms, fixes #4242, refs #3460.

Contrary to the serializationtest, initializes the secondary simstate only once
before progressively applying updates.
Thus reproducing actual multiplayer rejoining, enabling developers to
analyze OOS reports solely from the replay file of the rejoined and a non-rejoined client.

comment:5 by elexis, 5 years ago

In 22998:

Support testing rejoins on turn 0, refs #3460, #4242, #5185, #5162, rP18940

Differential Revision: https://code.wildfiregames.com/D1522

Note: See TracTickets for help on using tickets.