IPS Patch Creator Switch

From GameBrew
IPS Patch Creator
Ipspatchcreatornx.png
General
Authormrdude
TypePC Utilities
Version1.5.6-6
LicenseMixed
Last Updated2023/10/25
Links
Download
Website
Source

PC Homebrew for making your own Switch IPS patches.

User guide

Run the program for the first time

At the first start of the program, you are welcomed with a few configurations. By now you can choose the defaults and press Save button.

This configurations are for future firmwares, more explanation on the post by MrDude.

After press Save you are asked to save the config, press yes to commit the config to disk.

Console encryption Keys

The program require you to provide the encryption set of keys for the console. There are several ways to get them:

  • Using Lockpick_RCM or this guide.
  • Inside the program on the Help > Online Information, there are a set of cypher URLs one of them is very useful.
  • Using web search.

When you run the program without the needed keys, you can choose to generate a KEYS.DAT template on the tools sub-folder and fill in the values (or use the KeyData tab to write the values of your PROD.KEYS file).

How to use

You can use the tabs Loader, ES, ES2, FS and NFIM to create the patches.

On each tab there is a button named Make Patch, you can use the button to browse for the needed files or folder, also you can drag and drop to that button the files or folder from an explorer window. On each you can generate a different set of patches.

Loader patch

On this tab you can generate the patches set for Atmosphère. Loader Patch are Required for:

  • Running NRO Forwarders and Installed homebrews.
  • Running Installed XCI games.

Loader patch not required to:

  • Run (some) previously installed NSP (if valid tickets exist).
  • Run non installed homebrew.
  • Install NSP/XCI - (but will not run these if a valid ticket does not exist).

In order to create the patches, you need to provide the path to fusee-secondary.bin or package3 file. Could be an official one or compiled by yourself.

Only Atmosphère 0.8.5 and newer are supported.

The generated patches are on the folder \atmosphere\kip_patches\loader_patches and the file \bootloader\patches.ini relative to the folder where IPS Patch Creator is run.

ES & ES2 patch

ES patches stand for Eticket Services. ES Patches are required to:

  • These are needed for run and install raw and untouched NSP files either dumped from Nintendo's CDN or someone's console.
  • ES patches are additionally needed to run pirated commercial NSPs.

ES Patches are not required to:

  • Run installed XCI.
  • Run installed NRO forwarders.
  • Run homebrew.
  • Install XCI files.

For creating the patches, you need to provide the path to the folder with the files of a firmware for console. Works only for firmware 9.0.1 and above.

Both tabs generate the same sigpatches, using different algorithms, ES uses an algorithm what patches only on a spot, is traditionally know as "Alternate".

ES2 uses the original algorithm which patches on three different spots. Both of them works the same and is up to you which one to use, is more a manner of preference because they are equivalent.

The sigpatches are generated on the sub-folder \atmosphere\exefs_patches\es_patches\ where the IPS Patch Creator is run.

FS patch

FS is short for fs_nosigchk. FS Patches required to:

  • Run installed XCI/NRO forwarders, and will give a corruption error when trying to run the installed XCI or NRO forwarder if no fs patches are applied or are wrong (you will also need to reinstall the game or nro forwarder if this happens).
  • The FS patches allow the usage of converted NSP files, such as homebrew on NSP files or converted XCI files.
  • FS patches are required to install/run NSP and XCI (without needing to convert the header) files.

Fs Patches not required to:

  • Run installed NSP files with valid tickets.
  • Run Homebrew.
  • Install NSP/XCI - (with a valid header).

Only firmware 9.0.1 and above is supported.

The generated IPS files are on the sub-folder \atmosphere\kip_patches\fs_patches and the file \bootloader\patches.ini.

NFIM patch

The NFIM patches, know as nfim_ctest, where ctest is short for Connection Test, are patches for skip the internet connection test, So you can play on a LAN without being online.

All current firmware versions are supported.

The patches are generated on the sub-folder \atmosphere\exefs_patches\nfim_ctest\.

How to add the patches

Once all the patches you want are generated, you can copy the folders atmosphere and bootloader to the root of your SD Card.

Check out the discussion threads to learn more about the process:

Screenshots

ipspatchcreatornx.png

Changelog

v1.5.6-6 2023/10/25

  • Updated for FW 17.0.0.

v1.5.6-5 2023/03/18

  • Skip exfat FS patch creation, clean up exctracted FS files if patch creation fails.

v1.5.6-4 2023/02/23

  • Updated for FW16.0.0.

v1.5.6-3 2022/10/30

  • Added wildcard search stuff, fixed broken stuff, changed wildcard patches.

v1.5.6-2 2022/10/18

  • Error checks added to warn the user if decryption fails, that the keys may need updated.

v1.5.6 2022/10/17

  • Added patch info to console screens.
  • Added a backup online information url to use if pastebin is not working.
  • Patches updated for firmware 15.
  • Wildcard database updated.
  • ES2 IPS Creation error checks added.
  • Don't append patches.ini if FS offset search failed.

v1.5.4 2022/08/30

  • Bug fixes + error checks added.
  • EDIT - Silent update, shows error if keys.dat has the wrong keys (can't decrypt the firmware).

v1.5.3-2 2022/08/28

  • SigPatch IPS Patch Creator for generating IPS patches for those that need them.
  • This is the first release, so ignore the version number. Thanks for all the testers on GBATemp, and a Big Fuck YOU! to Ninty. If you mess with people's repo's which contained stuff that didn't contain any Ninty code, expect people to push back.
  • EDIT: Re-uploaded to fix bug in WCO FS & NFIM patches. Added patches.ini creation and ftp append patches.ini file.

Credits

Thanks to the following (In no particular order):

  • Crckd - for hash and decryption information.
  • ShadowOne333 - for algo information.
  • DarkMatterCore - for technical NCA information.
  • Unknown hacker - for bitshifting information.
  • Impeeza - for testing.
  • LyuboA - for testing.

External links

Advertising: