Why are runs timed with RTA?
1 month ago
Lanzarote, Canary Islands

I feel like this rule pretty much makes everyone who has a slower pc completely unable to compete, considering how many instances you have to enter in the campaign. I have counted that most runs have around 25 load screens in act 1 ALONE (counting log outs).

If a player has a 2 sec load time and another has a 6 second load time, this is setting the second player 1:40m back only on act 1.

Now imagine THAT but on a full run, maybe with someone with an even worse pc getting 10 second load screens (which is just slightly below average), that also has to bear with the decrease in fps and general worse performance in areas. This can straight up set an act 10 run back 30-40 minutes!

In my opinion, changing this rule allowing for the runs to be timed with IGT would make the entire leaderboard more fair and way more accessible to the ones who may want to speedrun but can't on a high level due to their computer.

If this isn't possible, or has already been considered, i'd love to hear the reason. Maybe it's too hard to time the runs?

United States

Good question Lollipop. Using /played has been considered before or using an extension/app for LiveSplit which removes load screen times from the timer by reading the client.txt log file. The discussion on this was done quite a while ago (ie like 4 years ago) so my memory might not be the most up to date on discussion we had, but I'll try to provide some context at least. So there are two big issues/parts of 'loads' in PoE, the instance creation time and the load screen itself. Both portions can/have created issues for speed running in PoE.

The load screen portion, ie the grinding gear screen, is affected by a number of things including PC specs, whether you're running on HD vs SDD or trying to read from ramdisk (AFAIK only exile has tried this for some speedrun attempts at a sub 1h A5 any%), and the amount of MTX on your account. There are likely other factors, but these are the big three that get considered in terms of load screen time. The app/extension to livesplit can help equalize this as it can essentially remove the time from when the instance was loading to when you loaded in. The problem then comes down to something called instance creation time.

With instance creation time, its essentially the gap between when you click on the next zone and when you actually enter the load screen. From what we know essentially the further away from Texas you are the longer your ICT gets. There is no way currently for the app/extension to handle this issue and this time is included in /played. This amount can add up very significantly over the course of a run. For example, I believe Deadanddoom did a comparison between a run of his and exile and over the course of an A5 run lost something like 2minutes in ICT to exile as exile plays on DC/Texas and Deadanddoom is in EU.

Ultimately then, the app/extension can't cover the ICT issue and /played likewise only subtracts out of the actual grinding gear load screen portion. Using /played also does not align with how the practice of live races have been done in PoE since those are done essentially using real time to complete objective rather than lowest /played time. The fairest solution would be to manually account for ICT and manually account for load screens, but that would be an administrative nightmare as you would have to start being extrememly specific about frame timings and as you mention there are a lot of instances of loads you'd have to account for. Even if an app/extension or /played was used, you'd have to then remove the ICT manually. Additionally, another aspect to consider is that having a real timer going instead of /played can help admins detect splicing/clips/changes in a way a /played timer cannot. As an example, if a run is not done on a live streaming service/capacity an individual could use a load screen splice to get another character to put items in stash to reconcile if this actually happened on a /played you'd have to monitor every town interaction to see if some how player is using currency they don't have in inventory. /Played also does not account for muling which many players use and indeed the most popular meta racing build atm uses. While this is not the exhaustive list of reasons as to why we decided to use a real timer instead of IGT, quite a few of them are mentioned above. Hopefully this provides some context

Czech Republic

Also if you're running a game that heavily depends on servers (as in you can't play "offline"), those usually have issues with loadless timers. Most LiveSplit scripts directly access the game's memory to read whether the game is loading or not, therefore it's possible to be extremely accurate if someone finds the right things that qualify for load removal.

However, many games that rely on servers also have a protection against this and if the game finds out you're accessing its memory, it might get you banned in that game.

So in short, if the game is not playable offline, we have much less freedom with it and it's often the reason why such games use RTA.

Canada

I'm not going to speak towards the livesplit extension because I've never used it before and don't know if you could get banned for it like Wafu is saying. However, using /played specifically has two problems:

#1. Most runners thinks that PoE short categories are best run without breaks, in order to emulate the racing environment. This means no changing filters, checking poelab, pob'ing, or taking a breather on the character select or login screen.

#2. We have no way of knowing if /played is accurate (and according to JSTQ, who tested it a long time ago, it's actually inaccurate).

I could easily test #2 by doing my own framecounting in my spare time but #1 is hard to argue with so I've never bothered.

So, in my opinion, PoE could never use IGT, at best it would have to be RTA with load times removed via the livesplit extension. Of course, the livesplit extension doesn't solve the issue of ICT, which has historically always been bs, but that's not an argument to not implement it if it's actually effective at removing hardware-dependent loads and doesn't get you banned.

Canada

Additionally, another aspect to consider is that having a real timer going instead of /played can help admins detect splicing/clips/changes in a way a /played timer cannot.

I disagree with this, Balaar. I think you're overrating the importance of a timer - IMO, it's just a tool for the runner and doesn't assist with verification whatsoever. A bad actor could easily overlay a timer over a spliced run with editing if they wanted to.

The only effective method of catching splices is by looking at an audio spectrogram of a run, but I think that you'd agree that it would be an unnecessary verification step, even for top runs, since PoE is a smaller, tighter community where people actually trust each other.

Edited by the author 1 month ago