Autosplitter: Done
8 years ago
Hungary

@qd, same problem here with livesplit, did a test run it worked fine saved the splits and then tried another test run again and every split was empty for "game time" when I splitted ;/

ps. just for clarification, we have a "load removal", we have to split manually every mission. It seems there is no way to edit the title of the topic?!

chimpa likes this
Germany

In my personal opinion, and from what I've seen on other speedrun games, runs done without an autosplitter for load removal have to stay solely evaluated with loads. I think, if people want to get on the board for runs without loads, they have to do these runs with the new tool so that the results are equal, precisely comparable and fair.

I insist on that because otherwise developing this tool would be totally futile too. This took a lot of work and it has to be used, it has to be tested, and it deserves to be the nr.1 tool for defining best runs. Just leaning back and having your old runs translated is the wrong spirit.

If we wanted to have our runs without loads, we always could have thought about manually timing out loads. This of course is, and imo again has to stay imprecise and for that matter without meaning.

Of course nobody can be forced to do new runs of this game.

@Metzix: If you want to be precise, this is a "load removal" program. Since it times out loads "automatically", I think to call it an autosplitter isn't too far from what it does. Topic name doesn't matter to me.

United States

In general, we're not going to manually time out loads from existing or new runs (EDIT: but see below, we probably will for the current top 2 runs). It's simply too much work.

If runners want load times removed for new runs, they should use the load remover tool and submit BOTH times (RTA time + time without loads). If the tool isn't used, only the RTA time will be accepted.

It is in everyone's best interest to only do runs with the tool going forward, because (1) it makes hardware differences largely irrelevant (yes, there will still be some delays with certain doors that are faster/slower depending on another portion of a mission being loaded), and (2) at some point in the future, the default leaderboard will be times without loads.

Germany

Of course waiting for somebody to beat top 3 runs by RTA limits the possible contenders to those already being top 3 right :) which is as unfair as it was before.

While, if top 3 are as good as they seem to be by RTA, they will easily be top 3 in Times without loads again, right?

Everybody wanted an autosplitter for so long. It's there!

United States

If the top 3 runners agree to have their runs obsoleted by such runs (with longer RTA times, but shorter times without loads), that is up to them.

The point of the WR is to show the fastest gameplay. If someone has a 3-5 minute advantage simply because they aren't counting load times, that isn't necessarily the fastest gameplay.

Hungary

We need somehow a fix first for the livesplit splitting issue running it via "game time" and empty splits :/

edit, nvm, it seems to work fine <

IMO the top X runs should be manually re-timed. Inaccuracy should negligible if done correctly. All of these runs will be obsoleted soon anyway. The same person should re-time each one, preferably someone that has done manual timing before by frame counting in video editor. This has been done in other games when a load remover was introduced and we had no problems. The re-timed runs should have a note attached saying they were manually re-timed.

chimpa likes this
Germany

I think the problem I had was just that I didn't run the game while using the game time splitter. I tried to run it again with former splits and it seemed like it was working. I will have to look at that again. It seems like because the timer is reading from the steam AI.exe, it won't work without it.

@Fatalis: For this kind of endeavour we need the files and from youtube and have them timed like the load removal would do. This would take some time.

Metzix likes this
United States

If we're going to manually re-time, it will probably only be the top 2 runs because of the time it will take to count out the exact frames from each mission load. Additionally, psycho's load icon is obstructed by his webcam.

For the sake of consistency with the tool, we would be adding 0.2 seconds of "load time" to the frame after the load icon disappears?

Hungary

Im still against manually timing out bc it will be unprecise compared how the load removal works and I dont think someone can do it 100% "properly".

The runs without loads will be sooner or later anyway primary. Thats fine for "me".

United States

It's not clear how imprecise it would be if we counted individual frames (although it is a giant amount of work).

Not sure what the solution is here. As QD said, it kind of defeats the purpose of having a load remover if we require a new WR to be one based on RTA timing.

Also any discrepancy would apply equally to both runs and be frame accurate, so regardless of whether it is as "perfect" as a program reading memory variable changes, it will be a heck of a lot closer to reality.

United States

For the sake of testing (M1-M2 only), I used Shotcut with single frame advance to determine the values below (from Metzix' WR), with screenshots for clarity. For a mission with only one transitional load, four screenshots are included, showing the exact frame that the load icon appeared and disappeared, as well as the frame immediately preceding both of those events. Let me know if you all think this is sufficient in terms of (1) precision and (2) proof of concept.

[Legend] VT = Video Time (hh:mm:ss:frame) LS = LiveSplit time LR = Load Remover time addon (additional 6 frames or 0.20 seconds timer remains paused after load icon is no longer visible)

Begin time is based on the first frame that the load icon is visible End time is based on the first frame after the load icon is no longer visible

[M1-M2] Begin VT: 00:03:52:15 LS: 3:30.03

End VT: 00:04:02:24 LS: 3:40.34

Duration VT: 10.30 seconds (9 frames at 30 frames per second = .30 seconds) LS: 10.31 seconds

LR: 10.50 (VT + .20 seconds) or 10.51 seconds (LS + .20 seconds)

Screenshots: http://imgur.com/a/37xAw

United States

Here is a spreadsheet of the mission by mission load breakdown of the top 2 runs.

https://docs.google.com/spreadsheets/d/15rj1pZy3QcVqHCGQe9I1TszpUwIwxOmZAreWd5VL3sQ/edit?usp=sharing

Both the video time (VODs were exported from youtube by videograbby) and livesplit time (as indicated on the runner's video) have been analyzed. Very little difference between the two time metrics exist - 1-2 hundreds of a second on certain loads (due to the fact that "30 fps" in video encoding is not exactly fixed - it can be 29.xx or 30.xx).

Both of the runs have been analyzed exactly the same. The exact frame that the load icon appears is considered the "start" of a load, and the exact frame after the load icon is no longer visible is considered the "end" of a load. Every mission and intramission load in the any% run has been captured.

For the sake of consistency with the tool, an additional column reflecting "load removal as analyzed by the load remover" (+.2s) has been added. Based on the description of the tool, it seems that the timer remains paused for an additional .2 seconds after the load icon disappears. (See below for clarification.)

Germany

So, if I understand this correctly, you aligned your timing on the loadcircle, which seems to be accurate first. The LS load remover is aligned to the fade in, which seems to be a different command from the load circle disappearing. But I didn't look into it as far as checking if game fade in and load circle fade out are like "the same".

So I suggest the last thing to be checked now is a mission load timed with livesplit and load remover to check where LS exactly pauses and starts the timer again from a VOD and compare it to your VOD work. If this is equal to your method of measurement, I guess then these numbers can be thought of as accurate and representing.

I hope i didn't get anything wrong here.

Thank you very much for your work! :)

Greetings qd

United States

@qckdth, this additional analysis has been added to the spreadsheet ( https://docs.google.com/spreadsheets/d/15rj1pZy3QcVqHCGQe9I1TszpUwIwxOmZAreWd5VL3sQ/edit?usp=sharing ), below the existing analysis.

The goal of this additional analysis was to determine how accurate "frame counting" is in comparison to the game time determined by livesplit with the load remover. Many thanks to Metzix for providing a VOD run with the load remover (for 29 of 32 loads, up to and including the M16-M17 load).

Based on this, it appears that for each load, the load remover keeps the timer paused for an average of .3 seconds after the load icon disappears, or approximately 10 seconds total over the course of a full, deathless run.

For certain missions, the game timer remains paused for up to 14 frames (~half a second) after the load icon disappears (usually 6-8 frames, or ~.23s) and it was clear from frame-by-frame analysis of the provided VOD that actual gameplay for the mission had begun while the game timer remained paused (i.e. the screen had already partially faded in and Amanda had moved from her initial load position by player input).

Based on this, I believe that manual frame-by-frame analysis of the presence of the load icon is technically more accurate than the load remover in terms of representing actual load times.

Thus, I would propose that the manual re-timing of Bobbe's run be 2:38:24.5 and the manual re-timing of Metzix' run be 2:39:01.5. (Apologies for initially omitting from both runs the intramission load for the M4 elevator to the Systech Lobby, they have been updated to include this.)

Since these runs have been manually re-timed, we might as well be as accurate as possible. For consistency with the tool, an additional 10 seconds could be removed from both of these re-times, if desired.

Going forward with the tool, having an additional 10 seconds of time removed (compared to a manual frame-by-frame analysis) from a deathless any% run as "load time" is fairly negligible and should be the same for every runner who uses the tool. The "time save" effect would compound with more loads (i.e. from deaths), but there is no additional benefit where, as here, the best runs will necessarily be deathless.

Manual frame-by-frame analysis is extremely burdensome (it took me at least 10 hours to do this for three runs) and it is unlikely we (or at least, I) will ever do it again for a PC run. The tool is accurate enough (and most importantly, should be fair to everyone).

Many, many thanks to Fatalis for taking the time to put this together - the playing field is much more level with this available.

Germany

Hey there,

so I think, it was clear the load remover and a frame perfect load removing would differ in their outcoming. It was good we had that analysis done. Thank you very much again infomastr.

We've been talking about this a little. I think, since the load removal tool should be standard, we should rely on its method of measurement, since it will be equal for every runner, even if it is not totally accurate in terms of load circle start or ending etc.

¤edit¤ I want to mention again, that this load removal tool by fatalis is not accurate in terms attuning to the code, because the code is just too complex. The target for the coding of the load removal tool was the "fade in" of a level, not the loadcircle, as I understand it. So if there are differences in certain loads in A:I, the timer will still work in the most equal way there is for every runner. This was the main goal of this tool, even if it is not totally accurate. ¤edit¤

Since metzix and bobbe are still running and even getting better times still it seems, they will probably beat their own times some time soon. Since this experiment was meant to find out about accuracy of the timer and the possible Game Times for our top 2 runs, we should leave it at that. The two manually timed runs should get Game Times for the board like infomastr timed them manually.

In my opinion, neither should there be removed the 0.2 seconds usually added to the pausing after fade in by the load removal tool, nor should there be any other additions or subtractions of the frame perfect Game Times done by infomastr. On one hand, these two Game Times for Bobbe and Metzix will be worse than they would have been with the load removal tool. On the other hand, since this was a very special effort we undertook to have the best 2 runs translated to Game Times, they wont have any advantage out of our different method of load removal. They are already very good. And I'm sure, Bobbe and Metzix can do even better, and then with the official tool to prove it.

If we agree on this, this means" quote infomastr "Thus, I would propose that the manual re-timing of Bobbe's run be 2:38:24.5 and the manual re-timing of Metzix' run be 2:39:01.5."

I hope, everybody is fine with that. :) So everybody have fun with the game and good luck with your runs.

Greetings qd

South Carolina, USA

i don't run the game, but i know some way you can configure an auto splitter if your running pc, that will split when the program detects the mission end, i know RE4 has one, idk about ALIENISO

Bouvet Island

I think everyone who's playing on PC should use the load remover moving forward. In a perfect world, everyone on the leaderboard would improve their PB's with it, but that's probably not going to happen.

We'll see how things are in a month or two, when there's more data. But for now, having the leaderboard sorted by "times without loads" doesn't give an accurate picture.

-d