Misc Double Buffer to Triple Buffer patches collection thread

  • Thread starter Thread starter masagrator
  • Start date Start date
  • Views Views 7,356
  • Replies Replies 0
  • Likes Likes 9

masagrator

The patches guy
Developer
Joined
Oct 14, 2018
Messages
7,237
Solutions
1
Reaction score
7,436
Trophies
3
XP
14,625
Country
Poland
Here I want to provide info about game modifications that change double buffer to triple buffer I have worked recently.
This is mainly dedicated to people that want to play games originally locked to 30 FPS be playable at 60 FPS using Switch, but they don't like when game drops down to 30 anytime it struggles to maintain 60.

Also there is a pro of using triple buffer natively in emulators. Yuzu has its own implementation that emulates use of triple buffer in double buffer games, but its performance is worse than native triple buffer (tested on Tears of The Kingdom).

Whenever I could, I have implemented it into FPSLocker Warehouse with 60 FPS config. In other cases I have shared them as IPS patches. They cannot be used as cheat because they must be implemented as fast as possible when game starts, and cheat engine won't ensure that.

List of available patches changing double buffer to triple buffer + where you can find it:
Games that use Double Buffer that are not patched yet (+ tl;dr why it's hard to patch them):
[TABLE=full]
[TR]
[TD]Alan Wake Remastered 1.0.1[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving. Pointers are stored inside some class offsets that is not suited for more than 2 buffers.[/TD]
[/TR]
[TR]
[TD]CAPTAIN TSUBASA RISE OF NEW CHAMPIONS 1.46[/TD]
[TD]after enabling triple buffer framebuffer glitches[/TD]
[/TR]
[TR]
[TD]Cars 3: Driven to Win 1.0.2[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]Death end re;Quest 1.0.1[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]Death end re;Quest 2 1.0.0[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]Divinity Original Sin 2 1.0.10[/TD]
[TD]Reserving buffers is hardcoded line by line. Data are stored inside / read from hardcoded offsets in class.[/TD]
[/TR]
[TR]
[TD]DRAGON BALL XENOVERSE 2 1.21.01[/TD]
[TD]Game crashes after enabling triple buffer.[/TD]
[/TR]
[TR]
[TD]Neptunia x SENRAN KAGURA Ninja Wars 1.0.0[/TD]
[TD]after enabling triple buffer framebuffer glitches whenever it's between 30 and 60 FPS.[/TD]
[/TR]
[TR]
[TD]Pokemon Legends: Arceus 1.1.1[/TD]
[TD]stack corruption when triple buffer is enabled, probably the same issue as with Kirby games[/TD]
[/TR]
[TR]
[TD]Pokemon Scarlet/Violet 1.3.0[/TD]
[TD]stack corruption when triple buffer is enabled, probably the same issue as with Kirby games[/TD]
[/TR]
[TR]
[TD]Pokemon Sword/Shield 1.3.2[/TD]
[TD]stack corruption when triple buffer is enabled, probably the same issue as with Kirby games[/TD]
[/TR]
[TR]
[TD]Sniper Elite V2 Remastered 1.0.5[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]Sonic Frontiers 1.4.0[/TD]
[TD]Creation of nvnTextureViews is hardcoded line by line and pointers are passed to fixed offsets in class.[/TD]
[/TR]
[TR]
[TD]South Park: The Fractured But Whole 1.0.5[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]South Park: The Stick of Truth 1.01[/TD]
[TD]easy to patch, but because it doesn't have proper 60 FPS mod, I didn't publish it[/TD]
[/TR]
[TR]
[TD]SWORD ART ONLINE Alicization Lycoris 3.0.1[/TD]
[TD]Class corruption when set to triple buffer (it uses fixed pointer offsets in class to write/read).[/TD]
[/TR]
[TR]
[TD]SWORD ART ONLINE: Hollow Realization 1.0.2[/TD]
[TD]Class corruption when set to triple buffer (it uses fixed pointer offsets in class to write/read)[/TD]
[/TR]
[TR]
[TD]Tokyo Mirage Sessions™ #FE Encore 1.0.0[/TD]
[TD]easy to patch, but because it doesn't have proper 60 FPS mod, I didn't publish it[/TD]
[/TR]
[TR]
[TD]TY the Tasmanian Tiger 2 1.0.1[/TD]
[TD]n/d[/TD]
[/TR]
[TR]
[TD]Valkyria Chronicles 4 1.0.0[/TD]
[TD]n/d[/TD]
[/TR]
[TR]
[TD]Yo-Kai Watch 4++ 2.2.0[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving. Game is using hardcoded offsets in class to retrieve informations about them, so requires tons of work to apply triple buffer.[/TD]
[/TR]
[TR]
[TD]Xenoblade Chronicles Definitive Edition 1.1.2[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving. After successfully turning on triple buffer, it seems like game starts to have issues with synchronization. It's possible to see cutscenes and play Extra story at 30 FPS, trying other things or playing game at higher framerate results in crash.[/TD]
[/TR]
[TR]
[TD]Xenoblade Chronicles 2 2.1.0[/TD]
[TD]reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[TR]
[TD]Xenoblade Chronicles 3 2.1.1[/TD]
[TD]
reserving buffers is hardcoded line by line, it requires code caving[/TD]
[/TR]
[/TABLE]

Games that use Double Buffer, but their implementation relies on 2 front buffers / 1 back buffer solution:
  • The Witcher 3 4.04b
  • Metro Redux Collection 1.0.0
  • All Atelier games
  • The Settlers: New Allies 1.0.5
  • Song of Nunu: A League of Legends Story 1.0.2
  • All games using EGL
If there is any other double buffer game you know about and is not listed here, share title of it. You can check that by using FPSLocker.
 
Last edited by masagrator,

Site & Scene News

Popular threads in this forum