With all of the parkour skill elements, complex routing and sequence breaking potential, different levels of completion, etc. this game has a lot of speedrunning potential, which is a good way to give players extra play potential after they've already completed the main game. Adding some basic speedrunning tooling to the game may help get players into it.
I would use Piranesi's as a model:
It tracks realtime, so time spent paused, in cinematics, etc. is counted. In-game timers that exclude these things used to be popular in the past, but modern speedrunning seem to be gravitating more toward realtime-based timers, since otherwise players tend to exploit exemptions like pausing to get extra time to think, buffer inputs, etc. Piranesi does this by looking at changes to minetest.get_us_time() instead of trusting globalstep dtime.
I also keep track of the number of play sessions (how many times the world is restarted). The exact number is not necessarily interesting itself, but it's just important that it be exactly 1 session (no quitting and reloading) for speedruns so that players can't exploit shutting down the world entirely to work around the pause time non-exemption.
I display the player's total time, total number of sessions (or at least some indication if it was more than 1) and the version of the game on the end credits screen. Versions are sometimes important to establish which bugs were exploitable at the time, without having to remember to put them in a video description or require viewers to analyze tricks to see which are used.
I also support an optional (via config setting) HUD timer that shows the running time, which can be useful to compare paces when reviewing video frames later.
The idea here is to:
Make it easier to measure the actual time, so people don't have to analyze video frames to retime.
Standardize the timing rules so there is no ambiguity about when timers start and stop.
Establish standards that suit the tastes of speedrunners to minimize the temptation for people to establish competing standards.
There are more advanced forms of tooling that serious speedrunners use, but they're probably not worth the effort and it's unlikely we'd be able to adequately anticipate needs ahead of time.
With all of the parkour skill elements, complex routing and sequence breaking potential, different levels of completion, etc. this game has a lot of speedrunning potential, which is a good way to give players extra play potential after they've already completed the main game. Adding some basic speedrunning tooling to the game may help get players into it.
I would use Piranesi's as a model:
It tracks realtime, so time spent paused, in cinematics, etc. is counted. In-game timers that exclude these things used to be popular in the past, but modern speedrunning seem to be gravitating more toward realtime-based timers, since otherwise players tend to exploit exemptions like pausing to get extra time to think, buffer inputs, etc. Piranesi does this by looking at changes to minetest.get_us_time() instead of trusting globalstep dtime.
I also keep track of the number of play sessions (how many times the world is restarted). The exact number is not necessarily interesting itself, but it's just important that it be exactly 1 session (no quitting and reloading) for speedruns so that players can't exploit shutting down the world entirely to work around the pause time non-exemption.
I display the player's total time, total number of sessions (or at least some indication if it was more than 1) and the version of the game on the end credits screen. Versions are sometimes important to establish which bugs were exploitable at the time, without having to remember to put them in a video description or require viewers to analyze tricks to see which are used.
I also support an optional (via config setting) HUD timer that shows the running time, which can be useful to compare paces when reviewing video frames later.
The idea here is to:
Make it easier to measure the actual time, so people don't have to analyze video frames to retime.
Standardize the timing rules so there is no ambiguity about when timers start and stop.
Establish standards that suit the tastes of speedrunners to minimize the temptation for people to establish competing standards.
There are more advanced forms of tooling that serious speedrunners use, but they're probably not worth the effort and it's unlikely we'd be able to adequately anticipate needs ahead of time.