cross-posted from: https://teddit.net/r/u_ChucksFeedAndSeed/comments/14fe0ca/release_totk_dynamic_fps_v153_release_physics/
You know what really grinds my gears? Turakamik & Soryotanog at 60FPS 😢
But no more, v1.5.3 should now get the broken gears in those shrines moving again, along with helping fix some other physics issues too:
- issues with certain gears failing to rotate / open doors properly (eg. Turakamik & Soryotanog shrines) should now be fixed.
- cloth/hair physics speed should now be consistent across framerates, instead of speeding up at 60FPS etc.
- Havok can now adjust physics settings itself based on the framerate, fixing certain issues with vehicle suspension/dampening (possibly helps with other physics differences too)
Hadn’t seen any reports of major issues with these so far, many thanks to everyone that helped test the betas over at my user page!
In case you do notice any new issues compared to the previous 1.5.2 release please feel free to let me know here.
DynamicFPSv1.5.3.zip download: https://pixeldrain.com/u/HpvVWaNi (alt: https://gofile.io/d/eO8BqH)
Compatible with all game versions, to set it up just extract
DynamicFPSv1.5.3
folder into your games mod directory (in Yuzu: right click game in game list -> Open Mod Data Location), make sure to disable any older dynamic FPS mods.(if using with Yuzu, recommend keeping the
Sync to framerate of video playback
advanced graphics option disabled if you intend to use 60FPS cutscene mods)Note: dFPS won’t change the games framelimit by itself!
It’s best used with either Yuzu “Limit speed percent” increased in general Yuzu settings, or a static 60FPS+ mod enabled - alternately you can still use it with vanilla 30FPS too, should still help fix slowdown issues if you dip below it.If anyone would like to support my work I have a ko-fi page at https://ko-fi.com/ChucksFeedAndSeed :)
Changes in v1.5.3:
- allow Havok to automatically adjust physics parameters based on game speed by enabling
adjustSolverSettingsBasedOnTimestep
value, helping to fix several suspension/dampening issues- added hook to adjust hair/cloth animation rate, may help with certain texture animations too
- added hook to adjust rotation speed checks, helps fix Turakamik shrine & others having gears stuck/doors not move at more than 45FPS.
- added ModuleID checks to the game version checking code, to help make sure we’re only applying to TotK modules
(the camera-fix from the previous 1.5.3 beta version has been removed in this release, still seems to need more work/testing sadly, so didn’t feel it was worth holding up this release for)
Changes in v1.5.2:
- added hitch detection similar to FPS++ (thanks to SomeRandomPeople)
- added game-speed smoothing, helps with jittery gliding animations, likely other animations too
- added camera sensitivity fixes when in conversations, sensitivity should now remain the same as 30FPS across all framerates
- extended conversation fix to innkeeper conversations too (likely other kinds still need sensitivity fixes too, let me know if you find any)
- changed max framerate limit from 288FPS to 145FPS, appears to help with shrine out-of-bounds glitches when using limiter disabled
- minor fix to framelimiter code, might help make 30FPS video playback smoother
- code reorganization, very minor tweaks (will try and setup a repo for it soon)
Changes in v1.5:
(v1.5.1) Fixed the ultrahand patch below also affecting bow/camera aiming, will now patch the ultrahand-related code directly instead.
Ultrahand vertical rotation speed should now be consistent across framerates (many thanks to /u/igoticecream for finding the code related to it)
Cutscene speed should now be fixed, framerate will be limited to the video framerate during cutscenes, should work both with & without vsync enabled
Game-speed/delta-time code adjusted, using slightly different method to work it out, appears to have far less teleportation/microstuttering for me now.
Added 288FPS max-framerate-cap to game, should prevent game from needing to deal with extremely fast deltatimes, helping improve stability when running with Yuzu limiter disabled.
Added support for v1.1.2 update
Known issues:
(Physics) - the new Havok physics fix may cause objects resting on top of other objects to slightly shift/nudge over every few seconds, unsure what the cause of this is yet.
Seems vanilla/unmodded 30FPS game also has this issue as well, but it happens slower there because of the lower framerate I guess, with higher framerates making it become more noticeable.
Since unmodded game is also affected I guess this isn’t a huge problem, still felt it was worth mentioning though, would be nice to find a fix for this eventually.(Physics) - ropes/chains still act up at higher FPS, found a semi-fix for this by changing some havok settings, but that also seemed to break other things, so haven’t added that in here.
(Physics?) - when climbing, jump height will be reduced at higher FPS, seems this has been an issue with all FPS increase mods (the decrease isn’t massive but can still be noticeable compared to 30FPS)
(Interactables) - weighted buttons that need objects/player to step on them might act strange at higher FPS, requiring more weight to keep them pressed down.
Might have found code related to this, looks like maybe the speed of the button resetting itself might not be scaled at higher FPS, will look into it more soon.(Interactables) - ladder animation might become unaligned at higher FPS, causing Link not to hold onto it properly as he climbs, and fall when reaching the top - spam jump button as a workaround.
(Cloth) - cloth sails may act strange when being interacted with ultrahand, not completely sure what cause is, could be the cloth speed change, physics change, or just FPS itself being increased which is causing it, hopefully can look into it more soon.
(1.0.0) The non-updated 1.0.0 game version has an issue with game over screen preventing saves from being loaded when playing at higher than 30FPS, can be fixed by updating to 1.1.0 or newer.
External framelimiters such as Rivatuner (RTSS) can cause game speed to fluctuate a lot, recommend only using the built-in emu speed limiter (“Limit Speed Percent” in Yuzu settings)
Ryujinx will disable PPTC when using this mod, there’s a tracking issue about this at https://github.com/Ryujinx/Ryujinx/issues/5130 - AFAIK this should only really affect initial load/bootup time of the game.
The fix to limit framerate during the 30FPS cutscene videos isn’t compatible with the interpolated 60FPS cutscenes mod, and will make them run slow as they’re marked as 30FPS in the video metadata/headers, a tool to fix them can be found here: https://www.reddit.com/user/ChucksFeedAndSeed/comments/14fkvka
Known non-issues/fixed issues:
Not really dFPS related, but I still recommend using the “disable LOD quality reduction” / “disable quality reduction” patch, it helps fix a bug with textures sometimes having flickering lines/wireframes appear (no other mods currently help with this, only LOD quality reduction patch fixes it) - a port for 1.1.2 can be found in my patchset here: https://www.reddit.com/user/ChucksFeedAndSeed/comments/13sofgg/totk_v112_visual_patches_chuckpatch_fsr_disable/
(the “LOD improvement” mod is a separate mod that can help with more LOD issues, but doesn’t seem to make any difference with the flickering issue itself, you can use both mods together fine however)Timers/bloodmoon/etc should work at correct time even with changed/unlocked Yuzu speed limiter, timer issues were only a thing in the very first dynamic FPS pchtxt version.
(changing Yuzu limiter may have an effect on savegame timestamps though, but seems to be an emu issue with wrong time being provided to game, not anything dFPS could change afaik - for me timestamps have been fine with limiter unlocked, maybe off by a minute or two, but seems that happens even without dFPS)Thanks:
- SomeRandomPeople for the hitch detection method
- /u/igoticecream for finding ultrahand sensitivity code (which also helped locate conversation sensitivity code too)
- /u/PixelKiri for reporting the physics dampening/suspension issue and helping test the fix for it
- Everyone that helped test beta versions on my user page!