Prior to June 2017, the timing method for individual missions, as well as the start and stop of the first and last missions for the campaigns, were the following:
• Timing starts on the frame the cursor is visible (battle control online).
• For Undead 4 and Night Elf 2, timing stop on the frame the character portraits on the bottom disappear at the end of the mission.
• For Undead 8, timing stops on the frame when the timer in the top right corner hits "00:00:00".
• For all other missions, timing stop on the frame the last "MAIN QUEST COMPLETE" appears on screen.
While this worked alright, the missions could be slightly manipulated based on when the intro cutscene was skipped, some missions didn't have a final "MAIN QUEST COMPLETE" appear on screen at the end, and the in-game timer was found to be tied to the entire mission up to the "Victory!" window which, on modern computers, is tied one-to-one with real time.
The new timing scheme reflects how in-game time works:
• Starts on the frame the loading screen disappears and the game is in view.
• For Prologue 2, Human 9, Undead 7, Undead 8, Orc 8, and Night Elf 7, stops on the first fully black frame after the mission is clearly completed (i.e. when the "Victory!" window should appear).
• For all other missions, stops on the frame the "Victory!" window appears on screen.
The timing was changed to reflect how the in-game timer worked, but since many runs didn't quickly skip the intro/outro or didn't record them at all, offsets were used to keep them on the leaderboards. These are offsets for each mission/campaign.
The numbers are, across all runs, the lesser of the median intro/outro time and fastest intro/outro time plus one second. This gives a fair offset to run that didn't skip the intro/outro, and gives a very slight advantage (no more than 2 seconds) to runs that did. The exception to this are missions done during campaign runs: Offsets were only enabled for the intro of the first mission and outro of the last mission, as all other times the runner should have been skipping the intro/outro as they were going for real time.
If you want specifics on each run: https://pastebin.com/Nq6X2Exr