Autosplitter: Done
8 years ago
Germany

Hey there,

now finally... I have to apologize a bit. Packsciences mentioned two programers in our loadtimes-thread about three months ago. And somehow we didn't make it to just message them. Now I approached Fatalis and in just two days he got the impossible done:

a fully working Alien: Isolation autosplitter.

We've been going through this back and forth and solved different issues to get it aligned to the game as best as possible.

How to use the timer:

  • the timer has to be started manually similar to the standard Realtimer
  • the timer has to be ended manually similar to the standard Realtimer
  • the timer times out loadtimes from the very start of a load till about 0.2 seconds after the start of the fade in (this is due to a very complicated mixing of loading processes which were too hard to dissect perfectly. I very much think 0.2 seconds delay of timer start after a load is negligible. It's equal for every runner at least.)
  • the timer does not only time out usual loads of leveltransitions, but also manual loads via menu (this is important if you die. It's especially important for the 100% category. Safeskips and the time gain will be equal for every setup now considering loadtimes.)
  • the timer does not stop when being in the menu (this is fair because in the menu you have full control over whatever advantage you could gain there) ¤edit: timer does not time out skippable cutscenes anymore¤
  • the timer times out skippable cutscenes (in the beginning I was not sure if this was ok or not. I believe it's alright because I think the skip by pressing enter during skippable cutscenes also varies in speed depending on different setups. It really doesn't matter to me how fast you skip a cutscene or not. It's not a "skill" I think. WHAT DO YOU THINK?)

Activate autosplitter in Livesplit: The autosplitter already is uploaded and implemented in Livesplit. Since LS is permanently connected to the inet (if you're online), you can go into LS > right click on LS Window > Edit Splits... > Game Name: "Alien: Isolation" > in the fourth line from the top it says "Load Removal is available (By Fatalis)" > Activate For the autosplitter to go into effect in running the game, make sure to: LS > right click on LS window > Compare against > Game Time

The Autosplitter is aligned to the steam AI.exe. It reads code of the game for cues to work. This means it only works for the steam version.

!!! I think it makes sense to have both times (Real Time and Game Time) running as a comparison for all of us in the LS window. But as the autosplitter is finished now, I request that measurement for speedrun times have to prioritise Game Time instead of Real Time. This way, speedrunning this game will finally be fair. !!!

So I believe this was quite some work going through all the code. I really appreciate all the work Fatalis has put into this. I think we all do. Thank you very much again!!! Great work!

Here is Fatalis' page for you to check out and pay a visit: https://fatalis.pw/

I'm really happy this is done now. Now it's important to do extensive testing on the new autosplitter to make sure it's flawlessly working. This especially means doing full game runs. If you find anything, please post it here. Fatalis kindly agreed on taking care of any upcoming problems of this timer since it's his project. :)

Enjoy.

Greetings qd

Metzix and Infomastr like this
Estonia

This is the thing I have been waiting for! I am SO SO happy we finally have an autosplitter for this game.

Germany

Hey there,

I've just done a first test run with this autosplitter. Works fine most of the time.

Link:

Following issues / changes:

  • cutscenes are not timed out at all (which is fine for me)
  • (1:38:56 VOD-Time): the cutscene is not timed out by the autosplitter (as mentioned) / then the first phase of the load (when it's dark) is not timed out also - that's a real problem i guess
  • (3:38:00 VOD-Time): the dark screen is not timed out - question is: do the times differ from runner to runner for getting into the second part of m18, means: is this a real loadtime?

Didn't find anything elso so far. Might have to go through it again.

Greetings qd

United States

Awesome! We can now have a separate column for time with loads and time with loads removed.

EDIT: See posts below and on page 2.

Germany

I'm actually against timing out the loads for existing runs simply because it will be imprecise. I don't know how you want to get this exact. Of course I understand why you want to do that and I support it.

If you want to time out loads from existing runs you would have to take into consideration the 0.2 seconds delay till timer starts again after fade in. That you could only time by eyeside somehow because you got to know where the fade in starts exactly. For that you would need all the VOD-Files and an exact editing tool to slow down recording. This is pretty difficult.

But very nice you agree on prioritizing Times without loads, which of course was the goal for all this. :)

Btw: We were looking at the times for tha transition from m18 first to second part when youre hanging there and free yourself: it seems to be 23.3 seconds for every runner we've looked at so far. So it's not a load and will not be affected by different setups.

Greetings

United States

EDIT: we're going to maintain two sets of runs. See posts below and on page 2.

Bouvet Island

Isn't this all messed up now, the times for runs with loads are all in the wrong column?

United States

Also we'd need to figure out how to time out loads for console runners. Perhaps by considering IGT?

Bouvet Island

It looks promising, but it shouldn't pause the timer during cutscenes - remembering to skip those is part of the speedrun ;)

Some more testing is needed, need to make sure the loading circle (I take it that's what makes it tick) isn't present at other times that isn't a loading screen. I don't think it does, but I haven't really looked for it.

-d

Germany

Hey there,

because I've been asked how I configured my Livesplit for its setup in my last run, I will explain how to do this here.

Configuring Livesplit for comparison "Real time" vs "Game time". This setup is based on psychohypnotics Layout available in the resources:

  • Two main timers (Real vs Game Time): LS > Right click LS > Edit Layout > "+"-button > add a "timer" > (now you have two timers) Set the two timers right above each other > set one of the timer's "Timing method" to "Real time", the other one's "Timing method" to "Game Time"
  • Two Mission splits (Real vs Game Time Splits): LS > Right click LS > Edit Layout > double click splits > scroll down > in the category "columns" press "add column" (now you have at least two columns) > make sure both columns have their "Column Type" set to "Split Time" > Set the "Timing method" for the one column to "Game Time", the other one's timing method to "Real time"

I've also got a third column which is currently having "Column Type" set to "Delta" to show differences in the times to other runs.

If there are any problems, feel free to ask here.

Greetings qd

Hungary

nice one qd, and a big thx to Fatalis!

I hope some ppl which didnt run the game for a while (hey saturnine :P ) come back and get some testing done on this autosplitter ;) About the cutscenes I agree with dcruze, they should be untouched.

anyway, I think I can write more about this after some intensive testing <

Cutscenes are staying, sorry. It's not trivial and I don't want to spend a lot of time on it.

Bouvet Island

I just rewatched some parts of QD's run that had cutscenes (M1, M2, M8) and both timers kept going in them, which is good. In his run, he mentioned it being paused for the M1 cutscene (bridge), but it wasn't paused there either.

It works as far as I am concerned.

Hungary

Did some more tests, so far I found something on this missions:

mission 2 loading screen ( the beginning one) mission 9 loading screen (the last one to m10) mission 10 loading screen (the last one to m11)

the timer on this missions dont stops properly during the loading screen, it delays for around 2,5-3s

will do some more tests after sleep ;)

Germany

Hey dcruze,

you're right. I was mistaking there. I thought the autosplitter was still working as in the former version I tested and didn't pay attention to the first cutscene. Cutscenes in general are not paused by the autosplitter. I already mentioned this in my third post here and edited the according passage in the first post.

@Metzix Thank you very much. I didn't even notice that when I was running myself. But it's the same in my run. I thought this error might occur due to the cutscene before the level transition load. But this error doesn't happen after the last cutscene in the level transition from m18-m19. So will see what's gonna be the problem there.

Greetings

Germany

Hey there boys and girls,

Fatalis has finally finished for good the final version of our A:I Autosplitter. I say final because as Fatalis told me under great pain the code is just too complex to get the autosplitter perfect. I think, if he got through all of A:I's consciousness he would in the end probably be able to code it himself.

That's why the now (as of a few hours) published version brings the following news:

Issues solved:

  • the timer doesn't keep running at the end of m1, m9 and m10 anymore for a little over 3 seconds

New Issues:

  • if you have the beginnings of mission 2 or mission 10 already loaded one time after starting the game and have them as current safes, and you load them via "current safe" or with loading this mission via "mission load", they will be unpausing the game timer at the third loadphase (loads usually consist of three loadphases: black, pictures, black; all with a loadcircle)
  • (it seems like and has to be tested:) if you load a "current safe" the timer wont have it's usual 0.2 seconds delay after level load, but will load right at the fade in

These two issues I don't really consider a problem, since no runner for any category will usually choose to load to the beginning of m2 or m10. If you make a mistake at m2, you restart the game. At the beginning of m10 there is nothing to fear. The alien first appears at lorenz systech tower, and there is a new "current safe" in the tram you came there with.

As for the current-safe-loads not having a 0.2 seconds (really not too sure on that one: please test!), since it will be equal for all runners, this literally makes no difference.

Of course, since there hasn't been any full run with this timer yet again, please do some testing. But I think the autosplitter is good to go.

Greetings qd

revas01 likes this
Germany

Hey,

I tried to work with the Game Time splits I've done in my run yesterday. But the splits don't seem to be saved properly. There are best segments shown in the "Edit Splits" Menu, but no normal splits. If you chose for "Comparison" the method "Best segments" in the splits in "Edit layout", they will show up in the timer. The same goes for "Average segments". But for some reason, when I have set up my timer like I described above in this topic, the split doesnt capture the Game Time, but deletes it. This means: The Best or Average Times are shown as Game Time splits, but when I split, they are replaced by a line without splitting the time on the timer. The same goes for "Delta" for "Game Time". The Real Timer for the splits is working normally. This is especially awkward since I got splits now from my run yesterday. Of course, if I choose PB, it will take my Real Time of 2:44:56 which I didn't meet in my run yesterday where Real time was 2:45... where Game Time was on. Still it should split Game Time like it did yesterday.

Does somebody know something about this? Otherwise might have to go to Livesplit directly.

Greetings qd

¤edit: took me about 7 times to get this post right... :()¤ ¤edit2: had to reedit the edit: I mean edits when I say times¤

¤edit: example:¤

Bouvet Island

Once this has been tested properly and we get more players using it, we might change the default time to time without loads. I don't know what to do with the existing runs, there's no easy way to remove the load times from them. I thought about some automated system, but it could easily be foiled by Twitch starting to buffer a video for example.

-d

United States

For some of the existing runs (particularly those where the runner had a webcam active and covering the loading icon area), it will not be possible to accurately time out loads using any means.

For others, there would necessarily be substantial difficulty with manually timing out loads (because we would need to perform a frame-by-frame analysis of the duration each load icon of each mission of a particular run was present).

Going forward, we think the best solution is to maintain two sets of runs (those timed with loads, and those timed with the load remover). The reason for this is simple: it would be unfair to obsolete a better run (timed with loads), particularly the WR, with a run that is "shorter" merely by virtue of having its load times removed.

Anyone can "sort" the leaderboard as preferred. See: http://i.imgur.com/36MMzQ3.jpg

Runs timed with loads will be the default means of sorting the leaderboard until we're confident that the load remover is functioning correctly (it looks very promising so far, but we only have a couple runs that have actually used it) and there is a larger collection of runs timed with it.

Metzix and qckdth like this