Game Patcher 3DS: Difference between revisions

From GameBrew
(Created page with "{{Infobox-3DS-Homebrews | title = GamePatcher | image = https://dlhb.gamebrew.org/3dshomebrew/GamePatcher-3DS.jpg|250px | type = Hack Utilities | version = v1.1.3 | lastupdate...")
 
 
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Infobox-3DS-Homebrews
{{Infobox 3DS Homebrews
| title = GamePatcher
|title=GamePatcher
| image = https://dlhb.gamebrew.org/3dshomebrew/GamePatcher-3DS.jpg|250px
|image=Gamepatcher3ds4.png
| type = Hack Utilities
|description=A small program to automatically patch CIA and 3DS files.
| version = v1.1.3
|author=Ich73
| lastupdated = 2021/08/25
|lastupdated=2021/08/22
| licence = Mixed
|type=Hack Utilities
| author = Ich73
|version=1.1.3
| website = https://github.com/Ich73/GamePatcher
|license=Mixed
| download = https://dlhb.gamebrew.org/3dshomebrew/GamePatcher-3DS.rar
|download=https://dlhb.gamebrew.org/3dshomebrews/gamepatcher3ds.7z
| source = https://github.com/Ich73/GamePatcher
|website=https://github.com/Ich73/GamePatcher
|source=https://github.com/Ich73/GamePatcher
}}
}}
<youtube></youtube>
[![](https://img.shields.io/github/v/release/Ich73/GamePatcher?include_prereleases&label=Release)](https://github.com/Ich73/GamePatcher/releases/latest)
[![](https://img.shields.io/github/downloads/Ich73/GamePatcher/total?label=Downloads)](https://github.com/Ich73/GamePatcher/releases)
[![](https://img.shields.io/github/license/Ich73/GamePatcher?label=License)](/LICENSE)
# Game Patcher
Game Patcher is a small program to simplify the workflow of patching CIA and 3DS files.
Game Patcher is a small program to simplify the workflow of patching CIA and 3DS files.


It uses the following tools:
It uses the following tools:
* [xdelta](https://github.com/jmacd/xdelta-gpl) ([v3.1.0](https://github.com/jmacd/xdelta-gpl/releases/tag/v3.1.0))
* [[xdelta|xdelta]] ([https://github.com/jmacd/xdelta-gpl/releases/tag/v3.1.0 v3.1.0])
* [3dstool](https://github.com/dnasdw/3dstool) ([v1.1.0](https://github.com/dnasdw/3dstool/releases/tag/v1.1.0))
* [[3dstool_by_dnasdw_3DS|3dstool]] ([https://github.com/dnasdw/3dstool/releases/tag/v1.1.0 v1.1.0])
* [ctrtool](https://github.com/3DSGuy/Project_CTR) ([v0.7](https://github.com/3DSGuy/Project_CTR/releases/tag/ctrtool-v0.7))
* [[Project CTR 3DS|ctrtool]] ([https://github.com/3DSGuy/Project_CTR/releases/tag/ctrtool-v0.7 v0.7])
* [makerom](https://github.com/3DSGuy/Project_CTR) ([v0.17](https://github.com/3DSGuy/Project_CTR/releases/tag/makerom-v0.17))
* [[Project CTR 3DS|makerom]] ([https://github.com/3DSGuy/Project_CTR/releases/tag/makerom-v0.17 v0.17])
## Using Game Patcher
You can download the newest version as an executable from the [Release Page](https://github.com/Ich73/GamePatcher/releases/latest). Extract the archive and copy `GamePatcher.exe` to the directory containing the dumped CIA or 3DS file of your game and the patches as a zip archive and run it.


It supports regular CIAs, update CIAs and 3DS files and tries to automatically determine which `.zip` patches should be used to patch which `.cia` and `.3ds` games. The required tools are downloaded automatically.
==Installation==
Download contains the following prebuilt binaries:
* win_i686 - For 32-bit Windows.
* win_x86_64 - For 64-bit Windows.
* linux_x86_64 - For 64-bit Linux.
 
'''Note:''' The 32-bit version only works to patch small game files.
 
==User guide==
Extract the archive and copy <code>GamePatcher.exe</code> to the directory containing the dumped CIA or 3DS file of your game and the patches as a zip archive and run it.
 
It supports regular CIAs, update CIAs and 3DS files and tries to automatically determine which <code>.zip</code> patches should be used to patch which <code>.cia</code> and <code>.3ds</code> games. The required tools are downloaded automatically.


At the end of the script you are asked whether you want to start the clean up.
At the end of the script you are asked whether you want to start the clean up.
* Choosing `n` will preserve all folders and tools and therefore speed up the next execution.
* Choosing <code>n</code> will preserve all folders and tools and therefore speed up the next execution.
* Choosing `y` will delete all the folders created in the current execution.
* Choosing <code>y</code> will delete all the folders created in the current execution.
* Choosing `all` will delete all folders in the current directory as well as all the downloaded tools.
* Choosing <code>all</code> will delete all folders in the current directory as well as all the downloaded tools.


You can supply the following command line arguments:
You can supply the following command line arguments:
```
 
usage: GamePatcher [-h] [--mapping patch cia version] [--ignore-incompatible-patches] [--xdelta-url url]
<pre>usage: GamePatcher [-h] [--mapping patch cia version] [--ignore-incompatible-patches] [--xdelta-url url]
[--3dstool-url url] [--ctrtool-url url] [--makerom-url url] [--romfs file] [--manual file]
                  [--3dstool-url url] [--ctrtool-url url] [--makerom-url url] [--romfs file] [--manual file]
[--download-play file] [--banner file] [--code file] [--icon file] [--logo file] [--plain file]
                  [--download-play file] [--banner file] [--code file] [--icon file] [--logo file] [--plain file]
[--ex-header file] [--header0 file] [--header1 file] [--header2 file]
                  [--ex-header file] [--header0 file] [--header1 file] [--header2 file]
 
optional arguments:
optional arguments:
-h, --help show this help message and exit
  -h, --help           show this help message and exit
--mapping patch game version
  --mapping patch game version
Defines which patch file should be used to patch which game file. Can be used multiple times.
                        Defines which patch file should be used to patch which game file. Can be used multiple times.
When patching a CIA file specify the version as a string (v1.0.0) or integer (1024). When
                        When patching a CIA file specify the version as a string (v1.0.0) or integer (1024). When
patching a 3DS file the version will be ignored.
                        patching a 3DS file the version will be ignored.
--ignore-incompatible-patches
  --ignore-incompatible-patches
Continue patching when a patch cannot be applied instead of stopping the process.
                        Continue patching when a patch cannot be applied instead of stopping the process.
--xdelta-url url The direct download link to xdelta. Supported file types are zip and exe.
  --xdelta-url url     The direct download link to xdelta. Supported file types are zip and exe.
--3dstool-url url The direct download link to 3dstool. Supported file types are zip and exe.
  --3dstool-url url     The direct download link to 3dstool. Supported file types are zip and exe.
--ctrtool-url url The direct download link to ctrtool. Supported file types are zip and exe.
  --ctrtool-url url     The direct download link to ctrtool. Supported file types are zip and exe.
--makerom-url url The direct download link to makerom. Supported file types are zip and exe.
  --makerom-url url     The direct download link to makerom. Supported file types are zip and exe.
--romfs file The name of the patch file for DecryptedRomFS.bin
  --romfs file         The name of the patch file for DecryptedRomFS.bin
--manual file The name of the patch file for DecryptedManual.bin
  --manual file         The name of the patch file for DecryptedManual.bin
--download-play file The name of the patch file for DecryptedDownloadPlay.bin
  --download-play file The name of the patch file for DecryptedDownloadPlay.bin
--banner file The name of the patch file for banner.bin
  --banner file         The name of the patch file for banner.bin
--code file The name of the patch file for code.bin
  --code file           The name of the patch file for code.bin
--icon file The name of the patch file for icon.bin
  --icon file           The name of the patch file for icon.bin
--logo file The name of the patch file for LogoLZ.bin
  --logo file           The name of the patch file for LogoLZ.bin
--plain file The name of the patch file for LogoLZ.bin
  --plain file         The name of the patch file for LogoLZ.bin
--ex-header file The name of the patch file for DecryptedExHeader.bin
  --ex-header file     The name of the patch file for DecryptedExHeader.bin
--header0 file The name of the patch file for HeaderNCCH0.bin
  --header0 file       The name of the patch file for HeaderNCCH0.bin
--header1 file The name of the patch file for HeaderNCCH1.bin
  --header1 file       The name of the patch file for HeaderNCCH1.bin
--header2 file The name of the patch file for HeaderNCCH2.bin
  --header2 file       The name of the patch file for HeaderNCCH2.bin</pre>
```
 
## For Developers
For Developers:
### Setup
* Setup - This program is written using [https://www.python.org/downloads/release/python-383/ Python 3.8].
This program is written using [Python 3.8](https://www.python.org/downloads/release/python-383/).
* Running - You can run the program by using the command <code>python GamePatcher.py</code>.
### Running
* Distributing - To pack the program into a single executable file, [http://www.pyinstaller.org/ pyinstaller] is needed. Simply run the command <code>pyinstaller GamePatcher.spec --noconfirm</code> and the executable will be created in the <code>dist</code> folder.
You can run the program by using the command `python GamePatcher.py`.
 
### Distributing
==Screenshots==
To pack the program into a single executable file, [pyinstaller](http://www.pyinstaller.org/) is needed. Simply run the command `pyinstaller GamePatcher.spec --noconfirm` and the executable will be created in the `dist` folder.
https://dlhb.gamebrew.org/3dshomebrews/gamepatcher3ds3.png
 
==External links==
* GitHub - https://github.com/Ich73/GamePatcher


[[Category:3DS homebrew rom hacks]]
[[Category:3DS homebrew rom hacks]]
[[Category:Homebrew 3DS game hacks]]
[[Category:Homebrew hack utility for 3DS games]]

Latest revision as of 06:32, 3 April 2022

GamePatcher
Gamepatcher3ds4.png
General
AuthorIch73
TypeHack Utilities
Version1.1.3
LicenseMixed
Last Updated2021/08/22
Links
Download
Website
Source

Game Patcher is a small program to simplify the workflow of patching CIA and 3DS files.

It uses the following tools:

Installation

Download contains the following prebuilt binaries:

  • win_i686 - For 32-bit Windows.
  • win_x86_64 - For 64-bit Windows.
  • linux_x86_64 - For 64-bit Linux.

Note: The 32-bit version only works to patch small game files.

User guide

Extract the archive and copy GamePatcher.exe to the directory containing the dumped CIA or 3DS file of your game and the patches as a zip archive and run it.

It supports regular CIAs, update CIAs and 3DS files and tries to automatically determine which .zip patches should be used to patch which .cia and .3ds games. The required tools are downloaded automatically.

At the end of the script you are asked whether you want to start the clean up.

  • Choosing n will preserve all folders and tools and therefore speed up the next execution.
  • Choosing y will delete all the folders created in the current execution.
  • Choosing all will delete all folders in the current directory as well as all the downloaded tools.

You can supply the following command line arguments:

usage: GamePatcher [-h] [--mapping patch cia version] [--ignore-incompatible-patches] [--xdelta-url url]
                   [--3dstool-url url] [--ctrtool-url url] [--makerom-url url] [--romfs file] [--manual file]
                   [--download-play file] [--banner file] [--code file] [--icon file] [--logo file] [--plain file]
                   [--ex-header file] [--header0 file] [--header1 file] [--header2 file]

optional arguments:
  -h, --help            show this help message and exit
  --mapping patch game version
                        Defines which patch file should be used to patch which game file. Can be used multiple times.
                        When patching a CIA file specify the version as a string (v1.0.0) or integer (1024). When
                        patching a 3DS file the version will be ignored.
  --ignore-incompatible-patches
                        Continue patching when a patch cannot be applied instead of stopping the process.
  --xdelta-url url      The direct download link to xdelta. Supported file types are zip and exe.
  --3dstool-url url     The direct download link to 3dstool. Supported file types are zip and exe.
  --ctrtool-url url     The direct download link to ctrtool. Supported file types are zip and exe.
  --makerom-url url     The direct download link to makerom. Supported file types are zip and exe.
  --romfs file          The name of the patch file for DecryptedRomFS.bin
  --manual file         The name of the patch file for DecryptedManual.bin
  --download-play file  The name of the patch file for DecryptedDownloadPlay.bin
  --banner file         The name of the patch file for banner.bin
  --code file           The name of the patch file for code.bin
  --icon file           The name of the patch file for icon.bin
  --logo file           The name of the patch file for LogoLZ.bin
  --plain file          The name of the patch file for LogoLZ.bin
  --ex-header file      The name of the patch file for DecryptedExHeader.bin
  --header0 file        The name of the patch file for HeaderNCCH0.bin
  --header1 file        The name of the patch file for HeaderNCCH1.bin
  --header2 file        The name of the patch file for HeaderNCCH2.bin

For Developers:

  • Setup - This program is written using Python 3.8.
  • Running - You can run the program by using the command python GamePatcher.py.
  • Distributing - To pack the program into a single executable file, pyinstaller is needed. Simply run the command pyinstaller GamePatcher.spec --noconfirm and the executable will be created in the dist folder.

Screenshots

gamepatcher3ds3.png

External links

Advertising: