Jump to content

Disco Elysium - 60hz/60fps Camera Stutter Fix


1 Screenshot

About This File

This patch fixes the camera stutter for Disco Elysium running at 60hz/60fps

Steam Version Instructions:
- Use DeltaPatcher (https://github.com/marco-calautti/DeltaPatcher/releases/tag/v3.1.5)
- For Original File select "GameAssembly.dll" file from ".\steamapps\common\Disco Elysium\"
- For XDelta Patch select "Disco Elysium 2024-06-24 Steam 60Hz.xdelta"
- Click Apply patch

GOG Instructions:
- Download Fix
- Use RomPatcher.js (https://www.marcrobledo.com/RomPatcher.js/) or use an IPS patching utility
- For ROM file select "Assembly-CSharp.dll" file from \Game Folder\Disco Elysium_Data\Managed\
- For Patch file select "Disco Elysium [GOG 406890b8]-60FPS_Fix.ips"  
- Click apply and save the "Assembly-CSharp (patched).dll" to \Game Folder\Disco Elysium_Data\Managed\
- Rename "Assembly-CSharp (patched).dll" to "Assembly-CSharp.dll" overwriting the original file


What's New in Version 1.0.3   See changelog

Released

Updated for 2024-06-24 Steam version of the game





User Feedback

Recommended Comments



27 minutes ago, Yutagos said:

That what i have done i was asking for 75 hz display since 75 is better than 60 . Not a big deal if you don't want to thanks anyway 

Use LS 🙂

Share this comment


Link to comment
Share on other sites

1 hour ago, SubSonix said:

Use LS 🙂

i don't know why but the game is like in slow motion with LS . And with the fix your monitor refresh rate must match the fps in game . When i limit the fps at 60 without changing the refeshrate of the monitor at 60  and stay at 75hz the jiggerness come back so LS is useless in my case  . 

Share this comment


Link to comment
Share on other sites

16 minutes ago, SubSonix said:

You might be using LS wrong, it has to be set up correctly.
And no, it doesn't have to match RR

I don't think so because i use a lot of games with it and it works perfectly only in this game it does that . It has to match or be a multiple for my case with the 60 hz patch it's eather 60 or 120 fps .sorry to repeat myself at 75hz the 60hz patch doesnt work even if i limit at 60 fps and do 1.25 with LS . I will stick to 60 hz and 60 fps it's smooth enough

Share this comment


Link to comment
Share on other sites

I mean, I wouldn't have mentioned it if it didn't work perfectly for me 🙂

Yeah the real fps have to be multiples, not the fake ones 😉

Share this comment


Link to comment
Share on other sites

To make your own version:

  1. Using a tool like ImHex (which I recommend), navigate to this address: 0x02463C50
    • If the game gets updated, this address will likely change. Use the current (27/11/24) patch's contents and try to find where in the new patch's contents similar hex codes are found.
  2. In the Data Inspector column, check the "float (32 bit)" value. It should be 0.02.
  3. The value at this address should be set to 1 / (your desired fps). Double click the value next to the float box and change it.
    • For example, for 75 fps, calculate 1 / 75 = 0.0133333333.
  4. Save GameAssembly.dll

This is for Steam version, but I imagine the process is similar for GOG.

Share this comment


Link to comment
Share on other sites

On 9/27/2025 at 11:42 AM, tomtee said:

To make your own version:

  1. Using a tool like ImHex (which I recommend), navigate to this address: 0x02463C50
    • If the game gets updated, this address will likely change. Use the current (27/11/24) patch's contents and try to find where in the new patch's contents similar hex codes are found.
  2. In the Data Inspector column, check the "float (32 bit)" value. It should be 0.02.
  3. The value at this address should be set to 1 / (your desired fps). Double click the value next to the float box and change it.
    • For example, for 75 fps, calculate 1 / 75 = 0.0133333333.
  4. Save GameAssembly.dll

This is for Steam version, but I imagine the process is similar for GOG.

Thank you very much for the tutorial you didn't have to ! 

Share this comment


Link to comment
Share on other sites

On 9/27/2025 at 11:42 AM, tomtee said:

To make your own version:

  1. Using a tool like ImHex (which I recommend), navigate to this address: 0x02463C50
    • If the game gets updated, this address will likely change. Use the current (27/11/24) patch's contents and try to find where in the new patch's contents similar hex codes are found.
  2. In the Data Inspector column, check the "float (32 bit)" value. It should be 0.02.
  3. The value at this address should be set to 1 / (your desired fps). Double click the value next to the float box and change it.
    • For example, for 75 fps, calculate 1 / 75 = 0.0133333333.
  4. Save GameAssembly.dll

This is for Steam version, but I imagine the process is similar for GOG.

I have a question im not familiar with that program how to navigate to that adress ? 

Share this comment


Link to comment
Share on other sites

1 hour ago, Yutagos said:

I have a question im not familiar with that program how to navigate to that adress ? 

Should be able to use CTRL+G

Share this comment


Link to comment
Share on other sites

On 9/27/2025 at 5:42 AM, tomtee said:

To make your own version:

  1. Using a tool like ImHex (which I recommend), navigate to this address: 0x02463C50
    • If the game gets updated, this address will likely change. Use the current (27/11/24) patch's contents and try to find where in the new patch's contents similar hex codes are found.
  2. In the Data Inspector column, check the "float (32 bit)" value. It should be 0.02.
  3. The value at this address should be set to 1 / (your desired fps). Double click the value next to the float box and change it.
    • For example, for 75 fps, calculate 1 / 75 = 0.0133333333.
  4. Save GameAssembly.dll

This is for Steam version, but I imagine the process is similar for GOG.

Thanks for the tutorial, would you mind explain how to you actually find those settings?

There have been a new update, but opening GameAssembly.dll in ImHex the data inspector column is empty

Share this comment


Link to comment
Share on other sites

1 hour ago, jensenhrx said:

Thanks for the tutorial, would you mind explain how to you actually find those settings?

There have been a new update, but opening GameAssembly.dll in ImHex the data inspector column is empty

You can rollback via 

download_depot 632470 632471 4013470289211380146

in Steam Console, update is useless anyway.

Share this comment


Link to comment
Share on other sites

15 hours ago, jensenhrx said:

Thanks for the tutorial, would you mind explain how to you actually find those settings?

There have been a new update, but opening GameAssembly.dll in ImHex the data inspector column is empty

If the data inspector is empty you probably haven't selected a piece of data or you've somehow hidden it in your settings.

Share this comment


Link to comment
Share on other sites

On 12/22/2025 at 8:13 AM, tomtee said:

If the data inspector is empty you probably haven't selected a piece of data or you've somehow hidden it in your settings.

This is what i have when i open the file

Captura de pantalla 2025-12-23 165010.png

Share this comment


Link to comment
Share on other sites

Hello everyone!

Today I bought the game and encountered the same issue. Searching for solutions, including disabling GSync, changing the monitor refresh rate, and toggling all other relevant settings in the game, in the Nvidia Control Panel, and in Windows yielded nothing. I can confirm that the only working solution is the one discussed in this thread. Since the patches are long outdated, I spent some time examining GameAssembly.dll and want to share a working method to manually fix the stuttering issue in the current and potentially any future version of the game. We already know that the issue arises from the static update timer setting of the Unity engine, and editing GameAssembly.dll is required to synchronize the engine timer (specifically, the fixedDeltaTime function) with the FPS you are playing at. I will try to describe everything as detailed as possible so it is helpful for players without any IT background.

I am almost certain that in-game graphics settings do not affect the problem, nor do the relevant parameters in the Nvidia Control Panel. I haven't tested all possible combinations, but in my case, it is set up and working as described below.

Game settings: Build 21464562 from 23 January 2026 (https://steamdb.info/patchnotes/21464562), Steam version, all settings on maximum, fullscreen mode.

Nvidia Control Panel settings (global for all games): VSync depends on the application (i.e., enabled since the game has no VSync setting and it's enabled by default), GSync is enabled in fullscreen and windowed modes, 118 FPS cap (for reliable GSync operation), Low Latency Mode is set to Ultra.

System: Win 11 Pro 25H2, RTX 5090, Nvidia Display Driver 591.86, 120Hz monitor.

 

Now let's edit GameAssembly.dll. I didn't arrive at this method immediately; at first, I tried to find the necessary offset using Il2CppDumper and analyzing Assembly-CSharp.dll via dnSpy, but came to the conclusion that the easiest way is to... test the 3 offsets in GameAssembly.dll one by one 🙂 Yes, it turned out to be that simple. The library contained exactly 3 occurrences of the value 0.02 (the fraction of a second that passes between two logical engine updates), which is the engine timer for 50 updates per second. So let's begin.

Method for build 21464562:

  1. Find a HEX editor of your choice. I use the classic HxD, but in this tutorial, we will use https://web.imhex.werwolv.net for simplicity.
  2. Locate the GameAssembly.dll file, it is in the game's root directory. Right-click the game in Steam -> Manage -> Browse local files. Make a backup of the file!
  3. Open the file in the HEX editor via File -> Open File or by dragging and dropping.
  4. Perform a search via View -> Find. In the Find panel that opens, select the Numeric Value mode, enter 0.02 in the Value field, select the float type from the dropdown list, and click the magnifying glass icon. It should find 3 offsets: 0x01F983D8, 0x022972B8, 0x0234A9B5, but there might be more, fewer, or different offset values depending on when you are reading this tutorial and how many updates have been released. If your offsets do not match the tutorial, proceed to the method of testing values one by one below.
  5. We need the second offset 0x022972B8. Double-click it in the search results panel, and in the editor panel, you will jump to this offset.
  6. Copy the required FLOAT (not HEX and not FPS) value (without spaces, just the value) from the list below corresponding to your configuration or target FPS.
  7. Return to the HEX editor. To the right of the editor panel is the Data Inspector panel; find the float field there, make sure it says 0.02. If it is not 0.02, start over, you are doing something wrong.
  8. Double-click the float field and paste the copied FLOAT value into it, then press Enter to save the changes.
  9. Save the file via File -> Save As... It will download as file.bin, rename it to GameAssembly.dll, and replace the original GameAssembly.dll in the game folder.
  10. Launch the game and test it. If something went wrong, restore the file from your backup or verify the game files in Steam and start over.

Method for any build:
If your build is not 21464562, if more or fewer than 3 offsets are found, or if the offsets do not match 0x01F983D8, 0x022972B8, 0x0234A9B5, then the easiest option is to test the offsets one by one, thankfully there are only 3 of them. You need to do the exact same things described above but with all found offsets in a row.

  • Follow steps 1-4, find a certain number of offsets.
  • If there are three offsets, the second one is most likely the correct one. Edit it as described in steps 5-9, and launch the game.
  • If it didn't work, restore the GameAssembly.dll file from the backup or by verifying files in Steam, try with another offset, and repeat until successful.
  • If none of the offsets worked, it means the developers changed the engine update timer and it is no longer equal to 0.02. Here you will need to find a new value, but that's a completely different story 🙂

 

List of values for different FPS with and without GSync:
These Float values are calculated with maximum machine precision (little-endian float), so the engine physics will work without losing synchronization, provided that your target FPS matches.

FPS - FLOAT - HEX
58 - 0.01724138 - CB 3D 8D 3C
60 - 0.01666667 - 89 88 88 3C
73 - 0.01369863 - 38 70 60 3C
75 - 0.01333333 - 0E 74 5A 3C
98 - 0.01020408 - 05 2F 27 3C
100 - 0.01000000 - 0A D7 23 3C
118 - 0.00847458 - F3 D8 0A 3C
120 - 0.00833333 - 89 88 08 3C
142 - 0.00704225 - B4 C2 E6 3B
144 - 0.00694444 - 39 8E E3 3B
163 - 0.00613497 - DA 07 C9 3B
165 - 0.00606061 - 0C 98 C6 3B

 

I hope I helped someone deal with this issue. I highly doubt I will return to this forum after beating the game, but I will monitor questions for a while if there are any left. Good luck with your playthrough everyone 🙂

Share this comment


Link to comment
Share on other sites


Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Add a comment...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Found PCGamingWiki useful? Please consider making a Donation or visiting our Patreon.
  • Who's Online   2 Members, 0 Anonymous, 1,350 Guests (See full list)

  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Member Statistics

    12,696
    Total Members
    3,870
    Most Online
    fourtytwo
    Newest Member
    fourtytwo
    Joined
×
×
  • Create New...