published on in New

Monkey Island 2: Special Edition How to Unlock the FPS

Your monkey wrench for unlocking the game’s framerate.

Introduction

You might have noticed that Monkey Island 2 has a performance problem: the game is rather stuttery / framey on modern screens. This issue is caused by the game’s internal fps lock, it’s just locking the game at weird values (usually in the 50 fps range) so let’s disable that and unlock the fps!

This can be done in two steps:

  • 1) Removing the basic SteamStub DRM with Steamless.
  • 2) Editing the “Monkey2.exe” file with a hex editor to remove the lock.

Dealing with the SteamStub DRM

Don’t forget to backup Monkey2.exe before doing any of this!

  • 1) Download Steamless from here (just get the latest version from under “Releases”).
  • 2) Unpack the archive (any directory will do).
  • 3) Open Steamless.exe —> Click on the browse icon under “1. Select file to unpack” and find Monkey2.exe in Steam\steamapps\common\Monkey2
  • 4) Click “Unpack File” (don’t change the default settings) and wait for the program to finish. The unpacked file will be at Steam\steamapps\common\Monkey2 as Monkey2.exe.unpacked.exe.
  • 5) Rename Monkey2.exe.unpacked.exe to Monkey2.exe and overwrite if asked to (you made a backup of the original, right?).

Removing the FPS lock

  • 1) You’ll need a hex editor, I recommend getting HxD from here.
  • 2) Open HxD, click File —> Open and find the Monkey2.exe file (that you unpacked with Steamless previously).
  • 3) Go to Search —> Replace
  • 4) Search for and replace these values:
76 05 0F 57 C0 EB 06 ---> 89 C0 0F 57 C0 EB 06 

This is how the Replace window should look like:

Click Ok after you’re done and the bytes should be replaced.

  • 5) Click File —> Save and exit HxD.
  • +1) Vsync is enabled by default so you shouldn’t need this point but DO NOT DISABLE VSYNC because the game will crash if it reaches 1000 fps.

Congrats, you just disabled the fps lock and can enjoy Monkey Island 2 in all its glory with silky smooth fps!

ncG1vNJzZmifkaKysbjAsmWtoaCofKjByJ2crGedpLussdhmoKykkaOxbn6MrKeem5mWuW6xw6KroqeeYrWww4ytpmatnqG8pLeMrZ%2BeZZalwG%2B006aj