[Scene Switch] FPSLocker v1.1.0 released

FPSLocker is a new tesla overlay developed by the developer masagrator for Switch and Switch Lite consoles which, if installed, will allow you to set a custom FPS through the detection of the graphics API.


We are aware of this, the Switch console does not have the processing power of other last generation consoles, many of the games run at a locked framerate at 30 FPS. Though for many, that’s all that really matters in the end.

However, there are some games that can reach 60 FPS on Switch consoles, albeit with significant drops in framerate, such as  The Legend of Zelda: Link’s Awakening .

Installing the FPSLocker overlay  requires the use of two other homebrew apps, NX-FPS (version 1.1) and SaltyNX (version 0.5.1). It is also recommended to overclock the system using the sysmodule sys-clk.

Also created a separate repository containing the YAML files used by FPSLocker which in addition to storing information about games at 30FPS, also includes a whole series of additional information on how to update patches for hacks over 30 fps.


Note: The maximum supported yaml size is 32kB, although it may be expanded in future updates.


The developer has added patches for 3 specific titles these are Xenoblade Chronicles 3 , The Witcher 3 and Monster Hunter Rise , but with community effort gamers can pick up patches for other games if they wish.



The overlay is done in two ways:

When the game is running

If the game is supported by SaltyNX and you have installed everything correctly, you will see the menu where the first line indicates that the NX-FPS plugin is running. Explanation of each line:

  • Interval Mode– It is used by the NVN API to set the limiter to 30 FPS (2) or 60 FPS (1 or 0 (0 means the game never bothered to set it, it can also be a sign that the game is not using NVN but EGL or Vulkan)).
  • Custom FPS Target– It is used to freeze the game on certain FPS. If the game is using the engine’s proprietary FPS locks, it may not be able to unlock more than 30 FPS without additional patches.
  • Big number on the right– Shows how many frames have passed in the last second for the currently running game. This is to confirm that the lock is working as expected.
  • Increase/Decrease FPS target– Change the FPS target by 5. The minimum is 15 FPS, the maximum is 60 FPS. If FPS is set above 30 FPS, set interval modeto 1. Otherwise set Interval to 2.
  • Disable custom FPS target– Removes the FPS target. Since we cannot predict what range mode is expected at this point, it is up to the user to manipulate the FPS to restore the correct range before disabling the FPS target.
  • Advanced settings – submenu consisting of:
    • Sync Wait– This is a dangerous setting that disabling it in most cases will cause the game to crash (e.g. Witcher 3 and Breath of The Wild ), but in some it can bring the benefit of disabling the double buffer at the cost of minor graphical glitches ( for example Xenoblade Chronicles 3 ). Use it with caution.
    • Convert config to patch file– If there is an appropriate configuration file for this game and this version, you will have an option to convert it into a patch file which will be loaded when you run this game next time. The patch is saved in SaltySD/plugins/FPSLocker/patches/*titleid_uppercase*/*buildid_uppercase*.bin.
    • Delete patch file– If there is an appropriate config file for this game and this version, you will have an option to delete the patch file so it won’t be loaded when you run this game next time.
  • Save settings– Save profile for currently running game which will be automatically loaded next time by plugin on startup. Don’t use it if you have disabled Sync Wait and haven’t tested it properly lest it cause crashes. The profile is saved in SaltySD/plugins/FPSLocker/*titleid_uppercase*.dat.

When the game is not running

It will list the installed games (maximum 32) and the “All” submenu is available as the first option. Inside each one you will find two options:

  • Delete settings– It will delete the file created by the “Save settings” option.
  • Delete patches– It will delete the file created by the “Convert config to patch file” option.


  • Added support for creating LOCK patches from yaml configurations.

Download: FPSLocker v1.1.0

Download: Sourcecode FPSLocker v1.1.0

Source: gbatemp.net