Information regarding Dustmod is available at
the developer's blog, and information regarding the TAS script format, specifically, is listed in
this post.
There are a few commands, such as LOAD, that were used during the development of the TAS but aren't necessary for a full game playback (and the use of which could be considered cheating, since they allow the user to forcibly set certain aspects of the game state such as character position). A full game playback currently only uses:
- input lines: which game inputs are being pressed for a given frame
- MOUSE commands: act as though a mouse click is happening at a specific point onscreen simultaneously with the next frame of keyboard/controller input, used 4 times during the run
- SYNCLOAD commands: wait for load time to complete and for the user to regain control of the character
Optionally, INCLUDE commands can be used to allow the script to be broken apart into several files, but the full run could be compiled into a single script file instead.
It's comparatively easy to get "frame count excluding loads" by just taking the number of input lines in the script or script files in question. On the other hand, the full length including loads will vary according to the computer it's being played back on.
The biggest potential issues I currently see are:
- "video-frame length" will vary by computer or potentially playback-to-playback because of variable load times.
- the format is currently "dumb" and doesn't include metadata, because it's designed to be human-readable and -editable.
But we're fairly certain any viewer with a copy of Dustforce who has installed Dustmod could reset their game save then play back the same input file and get the same result, though again load times may vary.
So, if this does not meet requirements, what can we do to correct these issues?