Split Timer Documentation
Introduction
this split timer is a web-based application that will track segment times of different length within a single run, tracking both the overall best set of segment times, as well as the best individual segment times. this use case is typical for video game speedruns and similar applications.
the basic concept of this timer is to allow users to handle everything on their end by creating and using files exclusively client-side.
Split File Format
you can manually edit a created split file with any text editor, for example to add options (which isn't currently supported by the create splits form). split files are in JSON format, and as such, they aren't very forgiving in terms of formatting errors, so please take care when composing your splits file.
splits are the set of segment times, which together make the best overall time. there are two different formats in which you can supply split times as timestamps.
golds are the best individual times for their respective segments. if you don't include them in your file, the split timer will assume the split times to also be your gold times.
names are the title displayed next to each segment.
options are additional nonrequired values that can be set for specific purposes. Currently supported options are:
- startoffset (time) defines a time at which the timer should start, instead of at 0:00 (can be negative if using milliseconds)
- showSplitIndex (boolean) displays split index before split name
- hideComparisons (boolean) hides the split comparisons and the remaining gold time
- hideGolds (boolean) hides only the remaining gold time
- displayBestPace (boolean) displays comparison with best pace
- fixedLayout (boolean) displays columns with a fixed width to enable cropping only certain elements
- whiteFont (boolean) draws all gray text as white
- splitSecondDecimals (integer) amount of split second digits to display (0 - 3)
- largeTimer (boolean) increases time column font size
- collapseSplits (array) hide all except the splits with an index included in this array
- hidePersonalBest (boolean) hides the personal best info underneath the timer
- hideSumOfBests (boolean) hides the sum of bests info underneath the timer
- hidePrediction (boolean) hides prediction info underneath the timer
- appendDateToSplitFile (boolean) whether to append the current date to the split file upon saving
Time Format
whereever you can supply a time, two different formats are supported. You can either supply an array in the format [hours, minutes, seconds, milliseconds], or as a total millisecond number.
Interface
the interface mostly consists of an output area, composed of a list of active or previously active splits (the numbers meaning current run's time, time comparison to best overall time, time comparison to best segment time), followed by a line displaying the personal best time as well as sum of individual best segments.
below the output area, there is an input area which features a list of context-sensitive buttons. hovering over those buttons will present you with a list of hotkeys you can press to activate the button in an alternative way. due to browser constraints, those hotkeys will only work when the browser window is focussed.
Hotkeys
- S: Start, Split
- U, Backspace: Unsplit
- P, Return, NumpadReturn: Pause, Unpause
- K: Skip
- R: Reset
- MiddleClick on a split will toggle whether that split will be considered as the gold time when starting a new run, or saving the splits
- G is identical to the above, but performs it for the most recent split
Planned Features
this software is in active-ish development and will be updated whenever I find time to do so. the following features are already on my to-do-list:
- add options to generation tool for split files
About
this software is provided as-is, and always will be free to use and free of any kind of requirement to register, advertisement, or user tracking. server-side logs and statistics are anonymous.
if you have suggestions or feature requests (note the planned features list above), bug reports, or general feedback, please let me know! you can get in touch via one of these options:
- via email - mike@blueshack.net
- on Twitch - twitch.tv/realcritical
- on Discord - RealCritical#2678