XCI Builder Switch

From GameBrew
XCI BUILDER
Xcibuildernx.png
General
AuthorJulesOnTheRoad
TypePC Utilities
Version0.7
LicenseMIT License
Last Updated2018/09/06
Links
Download
Website
Source

XCI Builder and it's brother NX-Trimmer are meant to highlight the excellent work by LucaFraga with hacbuild.

Its purpose is to convert Nintendo Switch nsp files (digital format) to xci files (cartridge format). This is a batch application which serves to automate the workflow between the following programs:

  • hacbuild - Program meant to create xci files from nca files, made by LucaFraga.
  • hactool - Program which function is give information, decrypt and extract a lot of different kind of files us by the NX System. Hactool was made by SciresM
  • nspBuild - Program meant to create nsp files from nca files. nspBuild was made by CVFireDragon.

Notes: For building xci files, trimmer and things without the need of a ticket use NSC Builder.

Features

  • Conversion from nsp files to xci files.
  • Creation of small nsp files (normally less than 1mb) to install game titlekey in the console.
  • "game_info" files extraction from xci files.
  • The xci files created incorporate a blank update and normal partition which makes them smaller than tipicall xci files.

User guide

Requirements

  • A computer with a Window's OS is needed.
  • You'll need to complete keys.txt in ztools with the keys needed by hactool.
  • Optionally complete header_key.txt with xci_header_key.
  • You'll need to have Python installed for nspbuild to work correctly.
  • You'll need to have at least .net frameworks 4.5.2 installed so hacbuild can work correctly.

How to use

  • First fill "keys.txt" in ztools folder so hactool can work properly. More info.
  • Optionally fill the file header_key.txt in ztools with xci_header_key value.
  • To convert a nsp to xci dragg the nsp file over "XCI_Builder_v0.6.x.bat" and wait for the system window to close
  • You'll get a folder with the name of the game in the output folder. Inside you'll find two files:
    • "game"[xcib].xci > Converted nsp.
    • "game"[lc].nsp > License file to get titlekey in the system.
  • For game_info.ini you can edit the preset or give it as it is..
  • Install file [lc].nsp with SX OS custom installer or older tinfoil versions.
  • Load the xci file and enjoy.

Limitations

  • xci files only work with SX OS
  • To load the xci files you'll need to get the titlekey from your NX console. It can be achieved in various ways.
    • a) Installing the original game previously via eshop.
    • b) Installing the original nsp previously via devmenu/SX OS/Tinfoil (It doesn't need to be installed in the current moment).
    • c) Installing the license file obtained with the programo "game_name[lc].nsp" This file needs to be installed with SX OS installer.
    • d) For nsp files with more than 5nca is needed to delete the nca manual.
    • e) Processing times for more than 4gb games is longer than it should be proportionally. Probably linked to hacbuild fix number 5 regarding the overflow error in this kind of files. (Could be interesting to investigate if a fastest processing approach is possible).
    • f) The symbol "!" gives error when passed to hacbuild. So rename snipperclips file.

Compatibility

With current changes and accepting the described limitations this method should be compatible with all current xci files.

Changelog

v0.7

  • Cleaned echos giving better input to the user about the process.
  • Added compatibility with XCI_BatchBuilder.
  • Erased auto-exit at the end of program so it can be used by command line if you want.

v0.6.5.2 REV 2

  • Changed ztools folder to erase sfk.exe as it wasn't needed.
  • Added Bigjokker build of hacbuild so it eliminate the warning about not having a header_key.txt in hacbuild as it wasn't needed.
  • Returned to previous build of hactool used since the prebuild one from SciresM seemed to give issues to some users with 32bit systems.

v0.6.5.2

  • Little fix. Line added to prevent [lc].nsp generation in ticketless nsp files (custom nsp files).

v0.6.5

  • Added compatibility with games with more than 5 nca. (Games that include an html manual) The manual was stripped from the game, this doesn't impede game execution. And game is fully functional. If you try to access the manual in these kind of games this action won't get any result and you will be able to keep playing. Games are fully funtional without manual nca and there are few games that includes it to begin with.
  • Output route was moved to "output_xcib" so everything is better organiced XCI_Builder can be in the same folder as NX-Trimmer, which now uses el usará "output_nxt" as output folder.
  • Reformed ztools folder, erasing not needed files.
  • Little mod to hacbuild.exe so it takes "xci_header_key" from ztools. "xci_header_key" it's actually not needed everything works without it but hacbuild gives a warning wich was ugly for the batch output.
  • Added template for keys.txt and header_key.txt in ztools.
  • Added tag system for the files output. It goes as follows: a) Se eliminan las tags [] de los ficheros. Para eliminar cosas como trimmed. b) Se eliminan los caracteres _ (más que nada porque no me gusta como quedan) c) Se añade las siguientes tags a la salida. [xcib] xci converted with XCI_Builder [nm] "no manual", manual was erased to get the resulting xci to work [lc] In output nsp refers to the small nsp needed to get the xci to work.
  • Added options in batch header. Edit with notepad++ to select them.
    • "preservemanual" By default 0. Set at 1 if you want the manual nca to not be deleted. If set at 1 the manual will be sent to output folder.
      • NOTE1: Is advised to ¡¡NOT INSTALLED the manual .nca!! as the game will give error if you try to access the game manual.
      • NOTE2: The xci without manual is completely functional and if manual is selected it won't happened anything.
      • NOTE3: This option is thought for a future xci to nsp converter that will revert the process.
    • "delete_brack_tags" Erase [] tags like [trimmed]- By default at 1.
    • "delete_pa_tags" Erase tags () like (USA) - By default at 0. If activated it could also erase [] tags.
  • NOTE: If upgrading from previous version replace ztools folder hactool version was upgraded and an small modification was made in hacbuild code.

v0.5.1 - v0.5.5.1

  • Little fixes.

v0.5.0

  • First launch in elotrolado.net.

Credits

Thanks to LucaFraga, SciresM and CVFireDragon Bigjokker from gbatemp for the advices about cleaning echos in Batch files. Also thanks to all members from gbatemp, elotrolado.net and my friends at discord.

External links

Advertising: