Daravae

The problems with Elden Ring's IGT

Mar 15th, 2022 (edited)
447
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.85 KB | None | 0 0
  1. Hey, I'm one of the mods for the Elden Ring speedrun leaderboard and for everyone that is confused about what's happening with the in-game time, why it is quite bad as a timing method for the speedrun and why there has been quite a bit of discussion about what the best timing method is for the game, let me first describe the problem. We were lucky to have a Souls modder work with us so I will just quote them instead:
  2.  
  3. The problem -
  4.  
  5. Like most previous games Elden Ring operates with an integer based timer that counts milliseconds. The timer is updated every frame and any fractional milliseconds of the current frame time are dropped. At 60 fps (16.67ms) this means 0.67ms are dropped every frame resulting in a timer that runs slower than real time. A slower timer wouldn't be an issue in and of itself but the behavior of dropping fractional milliseconds means the speed of the timer also depends on frame rate. The timer speed generally trends upwards as frame rates go down. At 60fps the timer runs ~4% slower than real time while at 30fps it only runs ~1% slower for example. Consequently using the in-game timer generally means that runners who can maintain higher frame rates throughout a run have a timing advantage. In my opinion igt should only be used if there is absolutely no other choice, for example if they remove the option to play without anti-cheat. Possible other options are RTA no load or a modified timer.
  6.  
  7. Why LRTA isn't the best solution -
  8.  
  9. RTA no-load can provide consistent timing independent of performance as long as the game doesn't drop below 20fps (at which point the game speed gets reduced) but as long as ER has significant stutter issues, this isn't ideal either. Especially if runners experience the stutters to differing extent.
  10.  
  11. The solution that seems most fitting right now -
  12.  
  13. Right now the moderator team is testing a LiveSplit solution that reads out the in-game time from the game and injects a fix that stops truncating milliseconds and makes it so the in-game time is no longer affected by performance loss due to dropped frame rate.
  14. Here is an example of the fix: https://youtu.be/g2syhhQ6HDU
  15.  
  16. This video displays a minute of running in real-time on several different frame rates (40/50/60) and showcases that the fixed timer runs consistently on different framerates.
  17.  
  18. We are still looking if its possible to make this fixed IGT solution mimic pure IGT in a better way. As pure IGT runs at 57s p/m and this fixed IGT solution runs at 60s p/m (it runs in sync with a real-time timer) which means when using this, there will always be quite the gap in the actual pure in-game time and the fixed time the LiveSplit timer displays. To potentially compensate for this, we are looking if its possible to make the modified IGT timer also tick at 57s p/m. We are not sure yet if that is actually possible or not.
  19.  
  20. Thank you for reading.
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
Add Comment
Please, Sign In to add comment