garoxas / NX_Game_Info

Tool to read information from Nintendo Switch game files

Home Page:https://gbatemp.net/threads/nx-game-info-for-macos-and-windows.528419/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NX Game Info

Build status Build status
Nightly build (Windows) https://ci.appveyor.com/project/garoxas/nx-game-info/build/artifacts
Nightly build (Command Line Interface) https://ci.appveyor.com/project/garoxas/nx-game-info-cli/build/artifacts
Stable build https://github.com/garoxas/NX_Game_Info/releases

Features

  • Windows, macOS and Linux compatible (Command Line Interface)
  • NSP, XCI, NRO and installed titles on Switch SD card
  • Game files structure (Scene Release, CDN Rip, Authoring Tool, Converted from other formats)
  • NCA signature to verify official Nintendo titles. Unmodified titles should pass this verification, although titles converted from other formats will not
  • Filesystem services permissions. Game titles should not have excessive permissions, and only trust titles with Unsafe and Dangerous from reliable source

Information

  • Title ID
  • Base Title ID
  • Title Name
  • Display Version
    • Only available for Base and Update
  • Version
  • Latest Version
  • System Update
    • XCI: System version on Update Partition
    • NSP: RequiredSystemVersion from Metadata XML
  • System Version
    • Minimum system version from Metadata NCA. Only available for Base and Update
  • Application Version
    • Minimum application version from Metadata NCA. Only available for DLC
  • MasterKey
  • Title Key
  • Publisher
    • Only available for Base and Update
  • Languages
    • List of language codes as specified by RFC 5646. Only available for Base and Update
  • File Name
  • File Size
  • Type
    • Base
    • Update
    • DLC
  • Distribution
    • Digital: eShop titles (NSP)
    • Cartridge: Gamecard titles (XCI)
    • Homebrew: Homebrew titles (NRO)
    • Filesystem: Installed titles on Switch SD card (NAX0)
  • Structure
    • Scene (for XCI files): XCI files with Update Partition, Normal Partition and Secure Partition
    • Converted (for XCI files): XCI files with only Secure Partition. Commonly found in NSP converted to XCI files
    • Scene (for NSP files): NSP files with legalinfo.xml, nacp.xml, programinfo.xml, cardspec.xml. Commonly found in BBB Scene Release
    • Homebrew (for NSP files): NSP files with authoringtoolinfo.xml
    • CDN (for NSP files): NSP files with cert and tik. Commonly found in NSP files ripped from the eShop CDN server
    • Converted (for NSP files): NSP files without cert and tik. Commonly found in XCI converted to NSP files
    • Filesystem (for SD Card files): NAX0 files installed titles on Switch SD card
    • Not complete: XCI/NSP files with only NCA files
  • Signature
    • Passed: NCA signature valid. Only available for official titles
    • Not Passed: NCA signature invalid. Should only be for homebrew titles and not official titles
  • Permission

How to

NX Game Info uses prod.keys, title.keys and console.keys in the format as defined in https://github.com/garoxas/LibHac/blob/NX_Game_Info/KEYS.md and hac_versionlist.json from tagaya CDN server

  • prod.keys: Mandatory keys includes header_key, aes_kek_generation_source, aes_key_generation_source, key_area_key_application_source and master_key_00. Failing to provide these keys will make the application quit master_key_##, key_area_key_application_## and titlekek_## will also be necessary to decrypt titles with higher MasterKey requirement
  • title.keys: Optional, required for Permission check if .tik file not available
  • console.keys: Optional, sd_seed key required for Open SD Card feature
  • hac_versionlist.json: Optional, required for Latest Version feature

The application will look for these files at the following locations (other file locations will follow wherever prod.keys file was found)

  • Directory of the executable file (.exe) for Windows or (.app) for macOS
  • $HOME/.switch e.g. C:\Users\yourname\.switch for Windows, /Users/yourname/.switch for macOS or /home/yourname/.switch for Linux

Export menu supports exporting current list to either CSV or XLSX. For CSV file, default delimiter to use is comma ( , ) and user defined character can be set in user.settings by specifying the delimiter character in CsvSeparator field

Compressed NCA is not supported, but there is an option to make the application accept XCZ and NSZ file extension by setting NszExtension field in user.settings. Please note that issues related to these file extensions will not be supported

macOS

Open File/Directory

NX_Game_Info_macOS.png

Open SD Card

NX_Game_Info_macOS_SD_Card.png

Windows

Open File/Directory

NX_Game_Info_Windows.png

Open SD Card

NX_Game_Info_Windows_SD_Card.png

Command Line Interface (Windows, macOS, Linux)

Usage

Windows

nxgameinfo_cli.exe [-h|--help] [-d|--debug] [-c|--sdcard] [-s(titleid|titlename|filename)|--sort=(titleid|titlename|filename)] [-z|--nsz] paths...

macOS, Linux

mono nxgameinfo_cli.exe [-h|--help] [-d|--debug] [-c|--sdcard] [-s(titleid|titlename|filename)|--sort=(titleid|titlename|filename)] [-z|--nsz] paths...

Parameters

  • -h|--help
    • Show help message and immediately exit
  • -d|--debug
    • Print debug output to debug.log
  • -c|--sdcard
    • Treat arguments passed in paths parameters as installed titles on Switch SD card
  • -s|--sort
    • Sort output by one of the following options:
      • titleid
      • titlename
      • filename (default)
  • -z|--nsz
    • Enable XCZ and NSZ extension
  • paths
    • File or directory path, can pass multiple arguments

Windows

Install .NET Core Runtime from the following link
https://dotnet.microsoft.com/download?initial-os=windows

NX_Game_Info_Windows_cli.png

macOS

Install Mono (Visual Studio channel) from the following links
https://www.mono-project.com/download/stable/#download-mac

NX_Game_Info_macOS_cli.png

Linux (Ubuntu)

Install Mono from the following links
https://www.mono-project.com/download/stable/#download-lin-ubuntu

NX_Game_Info_Linux_cli.png

Credits

@Thealexbarney for the LibHac library.
@switchbrew for the documentation on the Nintendo Switch.
@gibaBR for the Switch-Backup-Manager project.

About

Tool to read information from Nintendo Switch game files

https://gbatemp.net/threads/nx-game-info-for-macos-and-windows.528419/

License:GNU General Public License v3.0


Languages

Language:C# 100.0%