SpeedRunners - Unfair% in

Описание к видео SpeedRunners - Unfair% in

Rules:

goal:
The goal of this category is to fully complete all 4 chapters of story mode in the unfair difficulty. All maps have to be played in order.
timer: The timer starts right after clicking the icon for the first map right on the first black frame of the loading screen. Timer stops right after the first frame of the last XP screen.

delta timing:
As the game's physics are not deterministic due to being delta timed, which means that between each frame the game measures the elapsed time for the next physics update, which can randomly fluctuate, I am allowed to modify the game in such a way that the measured delta time is fixed to a constant value to make the game's physics deterministic. The game only allows framerates between 30 and 300 fps, or more accurately, it only allows delta times between 33333 and 333333 ticks, where 1 tick equals 100 nanoseconds. Ticks are the smallest possible time unit and have to be represented as a whole number. Therefore the delta time has to be chosen accordingly. I am not allowed to change this value while the game is running, which also bans screen dragging / recall. I chose the value 33333, which corresponds to exactly 0.0033333 seconds and about 300 fps.

RNG:
The game uses many different instances of the C# Random class to generate pseudo random numbers. Each one gets seeded once with the current system time when being instantiated. Each player entity has its own RNG instance, which gets reinstantiated each time a new map gets loaded. Bots are player entities too, so in total there are 2 to 4 seperate player RNGs operating during each game. Regular players only use this RNG for items, while bots use this same RNG for their movement (these RNG calls don't seem to do much and their movement is pretty much deterministic) and item throws too, with a slight exception; for the first item countdown determining when to first check for an item throw after picking up an item, they create a new seperate Random instance each time (which is probably an oversight by the developers). Next, the camera also uses an RNG for its shake effect, which can influence when bots die near the border of a shaking screen. This one gets seeded too each time a new map is loaded. Lastly, there is another RNG, which gets seeded once when the game starts, determining which music to play (which determines the countdown length) and the initial spawn positions. I am allowed to manually set the initial seed for each RNG instance, as I could just as well have changed the system time, and it would be impossible to make the game deterministic otherwise. All other RNGs, like particle RNGs or sound effect RNGs can be ignored.

pausing:
Unlike solo runs, I am allowed to pause the game for time and camera manipulations. The timer has to keep running, even when the game is paused.

loading times:
Only the amount of frames determines the final time and loading times just increase the duration of certain frames but do not increase the amount of frames. Therefore by making each frame have the same duration in the final video (0.0033333 seconds), extra loading times do not count towards the final time. Even though it seems like the game takes much time to load each map, it's mostly just waiting time without doing much.

exiting the game:
I am allowed to exit the game to skip the XP screen, as long as the game saves my progress (marking the map as completed), which happens on the very first frame of the XP screen. While the game is not running, the timer stops (it can be assumed that the TAS instantly restarts the game after exiting, as in the video).

progress:
I am allowed to have max level and to have completed all chapters already, to make it easier for me to create the TAS and as RTA runners are allowed too. This doesn't make any difference on the time.



Individual map times in frames (measurement starts from first black frame of loading screens):
metro: 12663
ss royale: 12637
mansion: 12583
plaza: 12197
factory: 13730
theme park: 12078
powerplant: 12325
silo: 11129
library: 12805
nightclub: 12717
zoo: 12880
swift peaks: 11039
casino: 11767
festival: 12414
resort: 13976
airport: 12723

Including menuing, that gives a total of 204562 frames.

Комментарии

Информация по комментариям в разработке