Forums  /  Kingdom Hearts III  /  Kingdom Hearts III IGT
  neraigo

Kingdom Hearts III In Game Time. (THIS IS A WORK IN PROGRESS AS MORE INFORMATION IS FOUND)

In this document we will explore how In Game Time(IGT) works in KH3. Rather than trying to advocate for use of this in speedrunning or not, I simply want to highlight the things we do know and how accurate or inaccurate IGT can be.

First I would like to cover where IGT starts and ends. This is not the same as traditional RTA timing because IGT does not start when you press “Yes” to the “Begin the Game” prompt. IGT actually starts after the first ‘Instagram Load’ is complete and there is the prompt to “Continue Game”. Loads are not counted toward IGT, but this would also eliminate the need to cache the first load of the game to not lose time in RTA. IGT will also continue all the way until the Final Results screen rather than ending on last input or landing the killing blow like KH1 or KH2 would(I am unsure of the other KH game ending times as I have not run them). This is significant because you would be required to skip the final cutscenes in order to have an accurate IGT for the speedrun.

IGT Start:
IGT Ending w/o Cutscenes:
IGT Ending w/ Cutscenes: (this video may be blocked because of the cutscenes but IGT is longer by about 43 minutes)

Unlike some previous KH games, KH3’s IGT does not account for certain things which makes it more viable as an accurate timing method across consoles. One of the biggest things KH3’s IGT does not count is ‘Instagram Load’ screens nor Room Transitions. This is significant because this will be majority of the loading discrepancies between different hardware setups (SSD/HDD, Pro/Slim).

Unfortunately there are still things that do not count towards IGT that would be convenient if they did. Two such situations are directly related to dying in the run. Idling on the Death Screen does not add to IGT. The other situation where IGT is not increased after a death is if the runner uses Continue instead of Retry. Continue works like KH2 and will reset the state of the game to the last time you had free control of Sora, which also resets the IGT. The biggest situation where “Continue” is likely to cause issues is when the player dies and runs out of items potentially needed to complete the fight, or dying to a random mob fight. Forced mob fights will still give a retry option like any boss, but if Sora somehow dies to an unforced fight you will be forced to use continue. Both of these issues may cause IGT to be invalid for speedruns, or a set of rules would need to be enforced to prevent the runners from abusing these.

Death Screen Idling/Retry:

Another situation we’ve noticed is that the act of opening or closing the menu pauses the IGT for a fraction of a second. The significance of the menu pausing IGT is debatable because if the pause in IGT is consistent across consoles, depending on loads, then it should make no difference. As you can see in this video, it takes 1:08 for the IGT to advance by 1:00.

Situations that should increase the IGT like normal include; Retry, Prepare and Retry, Gameplay, Menus, Pause Screens, Cutscenes, ‘Continue Game’ input after an ‘Instagram Load’. These are all acceptable places for IGT to increase as there is player interaction with the game and where we would want to measure speed. I have not made exact comparisons for these situations but they have individually been tested. I may work to have a more comprehensive set of comparisons but for now I want to get this information out before the embargo lifts.

IGT comparison between two consoles:

There is still much testing to be done but I think for now IGT is a good starting point. Running a RTA timer with the traditional start and end points would still be recommended, as we can always fall back to that if IGT is shown to be inaccurate.

Here a few RTA vs IGT comparisons. Most runners don’t traditionally skip the final cutscenes so it is hard to find accurate comparisons for now.

CrispyMe: 3:52:21 RTA, 3:27:36 IGT, 24:45 Difference
Ninten866: 3:51:14 RTA, 3:25:58 IGT, 25:16 Difference
Saiyanz: 4:33:42 RTA, 4:09:01 IGT, 24:41 Difference

All three of these runs are on PS4 Pro SSD and we see that there’s about a 25 minute difference between RTA and IGT. Once more runs are done on other setups those will be looked into but so far at least Pro SSD seems to be mostly consistent. For now I will try to track differences in the times on this spreadsheet. https://docs.google.com/spreadsheets/d/1yyiw9lIx-Fu8FjyAvjMbwa6KRWVgMHEcU3LBNGm0n40/edit?usp=sharing.

CrystalCrown13, DepCow and 3 others like this. 
  neraigo

Using IGT is not in universal agreement by the leaderboard mods yet as this is just meant to be a centralized location for information. My personal opinion is that KH3’s IGT is accurate enough to alleviate hardware load time differences while still allowing people to rank on the leaderboards accurately. Most of downsides to IGT are related to dying. As far as I know there are methods to allow RTA times on the leaderboards if a situation arises where “Continue” is necessary in the run and invalidates IGT. Some unique rules for the KH series may be needed since KH3 could be the first console game in the series to use IGT.

 
  Xelnas

For some Things you can see from other games.

About Retry menu counting - In celeste IGT pauses during the level select screens This is considered fine becuase losing time to the cutscene and the menuing should not factor in. in KH3 Dying is allready a huge punishment even though you can in theory walk away during the retry screen. You can either ban idling on that screen for more then X amount of time, or be fine with people doing that.

About Continue Reseting the time - The only way to do this is consider runs not valid for IGT runs if continue is used. Thankfully the ONLY instance where continue is forced is on dying to none forced encounters.

About Pausing when opening/closing the menu - To use celeste as another example since its the hot speedgame of 2018/19 Activivating dashes actually pauses the IGT for .03 seconds i dont remember why but thats a thing it does. .

Obviously there is the downside of not being able to watch final scenes and credits after a run but I think it is a fairly small negative to keep all Hard drive types alive

As a reminder Consoles should STILL be seperate since 60fps consoles (1x and pro) are actually quite different gameplay wise to Ps4fat/slim/xbone/S The 30fps consoles roll slower and preform less shotlocks per bar (cause somehow shotlock is tied to fps)

 
  neraigo

Do you have any proof of KH3 preforming like 0.2 on the slower hardware? As far as I know Original PS4 is not capped at 30 FPS like 0.2 unless you activate Stable Mode.

 
  Timmiluvs

Thanks for compiling all this information, I’ve wanted to see soemthing like this for a while with this game.

My biggest issue I still see is that IGT being “around 25 minutes” isn’t good enough imo. Ninten and Crispy differ by about 30 seconds in terms of their IGT vs RTA for whatever reason. That to me is a perfect reason not to allow this, because assuming that difference never changes, Crispy could have a worse run than Ninten and still end up beating his IGT just because Crispy seems to have gotten lucky and has IGT that’s closer to his RTA.

This problem has been seen before where communities that use IGT see worse runs beat better runs just because the IGT was weird for the better run. They’ve almost always rectified this by switching to using RTA. Granted for some of those games they don’t have to contend with multiple platforms, but my point still stands.

Another thing I’d be curious in data on is if Ninten always has a 25:16 difference in RTA and IGT. If he doesn’t, then that’s another reason not to allow it. Imagine how crappy it would be to beat the RTA WR only to still wind up second place because your IGT decided to differ by 27 minutes instead of 24 (as an example). If someone can show me some data that that scenario never happens and your RTA vs IGT difference is always within a few seconds, then this is a moot point. But I don’t think you can use a timing method that is essentially random about how much it differs against RTA.

Give all of these question points, I don’t belive IGT is a viable starting point at all. It may be viable right now because runs are so unoptimized that IGT oddities may not change things that much, but I don’t think it’s a good idea to set up the LB on a potentially flawed timing system because fixing it later on might be difficult if we transition to RTA. I’d say, the best option is have people submit both RTA and IGT but have RTA be the default sort. That way IGT is present if we ever figure out that it’s 100% accurate and switch to it.

In the meantime, I think a combination of sub categories and filters while using RTA is the best way to ensure a mostly level playing field. I would say having sub categories for PS4 and XBone and then filters for HDD type as well another for Pro or 1S (or whatever the XBox version of the Pro is called) can work because then you can filter down the LB to see the adjusted LB for your specific setup. And by including Pro/1S as a filter along with HDD type, it makes for a cleaner look since you have a ton of sub categories for platforms while still allowing people to adjust the LB for their setup so they can only look at the runs that are the same as theirs.

 
  Oh_Snap

Can you add my time to the spreadsheet just for more data, not sure if I just got a shit SSD (if someone can message me exact models of the other guys SSDs I can test, not necessarily all three but I can at least see if I get 25 difference from one of theirs). RTA 3:48:45 IGT 3:21:47 (only had like 15-20 seconds of cutscene watching at end).

If someone knows one of their SSD models you can put my data down as like SSD1 or something and I can get the same SSD as them and try SSD2. To me personally I just dont think I lose 2 minutes to loads on the other guys. I tweeted about this, I may be wrong but depending on the price of their models I may be willing to test.

Also this is for Pro SSD which would make mine inconsistent with the other people currently on the list.

 
  Xelnas

Tim I think you have a complete misunderstanding of what igt is. Igt difference to RTA will always drift due to different reasons loads are never consistent ever maybe in one run some of the kh3 data was cached while in others it wasn't.

In your examples of why you hate igt is actually reasons to hate rta. Man wouldn't it suck if you lose RTA because one of the larger loads was cached because of one reason or another? I'm not sure I understand that of course the RTA igt will differ purely due to loads the thing we want is that time spent in the actual game with areas of input are timed.

On the 0.2 pro vs standard sonicshadowsilver2 has a video on his YouTube that compares the at the time pro vs standard wr and right out the gate you can see aqua cartwheels faster on pro due to consistent 60fps I'd say that's the next thing to test might be worth having a pro user and a standard user roll in dive to the heart selection rooms and see if that holds true for this game

Shot locks do seem to still act weird on standard systems other runners myself included can't get 2 fullshots on toy King I need to get a run to not soft lock and I'll try the new toy gear shot lock Strat see if it's possible or not

 
  SPTspoon

I did my first run last night on my PS4 Pro with the stock HDD. RTA was 4:26:20, I skipped cutscenes at the end cause I knew we are thinking about using IGT. IGT was 3:52:04. Difference of 34:16

As for my personal take on the matter, I would love if IGT was viable so we can essentially eliminate the console and hard drive differences.

I think the best way to go about it for now is to have runners submit both RTA and IGT to the leaderboards once they open up. Instruct in the rules for players to skip the final cutscenes and check the IGT to be submitted. We can then gather data using the leaderboards to see how accurate IGT really is. This will be especially helpful when you get subsequent runs from the same runner to see if the difference between RTA and IGT are the same, or at least very similar, consistently.

 
  Tojimaru

Hey Timmi, you realize the difference between someone's RTA minus their IGT will never be exactly the same as someone else's because of the fact that every single loading screen is not going to load at the same exact time as someone else's? That's the whole point of using IGT.
@Xelnas, play the game on lower res to get higher fps, that should solve that problem

 
  Xelnas

@Tojimaru can that be set in the regular game aren't those settings exclusive to the pro?

 
  Samdaharu

Resolution can be set in the PS4 system settings. I changed mine (PS4 slim, HDD) to 720p and shotlocks seem to be working fine for me now

 
  TheOOT

For the sake of definitively concluding that IGT is 100% accurate, it would be nice for a run to be manually timed, loads removed, and the result compared to the IGT. If the results are the same, then it's fair to say that IGT is 100% accurate. It's hard to conclude that IGT is 100% accurate by the second since you can only see the seconds on the IGT on the final results screen.

Edit: Yidamoda just PB'd by 4 seconds RTA but PB'd 40 seconds on IGT. That doesn't make sense.

Timmiluvs likes this. 
  Timmiluvs

I asked this on twitter but I want to ask it here too to see if anyone has a video available - I’ve seen the term “load caching” thrown around which is essentially (from my understanding) that the game loads different all the time due to random caching. This is what I see as a pretty big reason people say RTA is inaccurate. However, I can’t seem to find a video/spreadsheet that showcases this.

Does anyone have a video that shows this? A video with something like 5 or more runs done by a single runner on the same setup that shows the same load screens varying by a significant amount of time would be great to see. There may be a video like this out there already, I just didn’t see it in this thread (and I ignored the forums and discord for a while to avoid spoilers so I also may have missed it when I caught up with it all).

So, if anyone has a video for this, please post it here, I’m interested in watching it and seeing how much the loads differ.

 
  CapitanBublo

On my stream yesterday, the very 1st loading screen, when I loaded a savefile before starting a run, it took around 20s, whereas when I didn't load any save and I directly started a new game, it took aroun 28s (playing on a PS4 w/ HDD). Maybe, depending on the world you load on that savefile, it could affect the loading times throughout the run.
EDIT:
-28s load: https://clips.twitch.tv/ChillyCrazySmoothieCorgiDerp

-20s load: https://clips.twitch.tv/EagerPopularSoybeanFeelsBadMan

 
  BlacKPhOeniX013nL

So my proud mode run gor rejected for the reason "there is no full video of the run"? Can someone tell me how i can het timers etc. In my stream AND uphold a stream solo for 14-15 hours straight without any help?

 
  Timmiluvs

@CapitanBublo that’s known, 0.2 behaves the same way. For some reason the first load screen takes really long unless you load something first, then start a new game. I’m more interested in seeing it happen for other loads throughout the run (like random load screens in worlds).

@BlacKPhOeniX013nL I’m not sure I fully understand your question. If you’re streaming directly from the PS4, you should be fine as long as your stream doesn’t constantly start and stop (hard wiring the PS4 instead of using wifi will help with that). If you’re using a capture card and broadcasting software, then the same thing applies - as long as your internet doesn’t drop, the stream will be fine. A timer isn’t required to be shown, you just need the RTA time at the end of the run. If you are having trouble keeping the stream up because your internet is lacking, I’d recommend investing in a capture card and local recording your run while streaming with soemthing like OBS. That way you can always have the video even if the stream didn’t hold up.

Additionally, this isn’t the thread to discuss this in (it’s way offtopic). I’d recommend staring a new thread or contact the LB mods via discord to discuss this more.

 
  gusxandi

@neraigo Both Ninten and Mist got 3:43:39 in rta, i think both of these runs are really good data to evaluate if IGT is 100% accurate or not.

 
  1TLAU

I agree for IGT and good job for your post Neraigo