Wii(mms) ISO Patcher for Windows, Linux and Mac
This is an offer for developers who want to distribute patches for original wii discs.
You (the developer) have patched a orginal game to change textures or gameplay and you want to distribute it. One way is to use Riivolution. An other way is this toolset. It enables all end users to built a new ISO image which includes your patch.
Features of the patching tool set:[*] The core of the patching system is hidden in the subdirectory bin.
.
[*] The host system (Windows, Linux/32, Linux/64, Mac) of the end user is detected automatically.
.
[*] The patching system uses unix tools and wit. For Linux and Mac the used unix tools are standard. For windows the subdirectory ./bin/cygwin contains all needed tools. Other unix systems are supported too if they have self compiled wit tools.
.
[*] There is no need that developers or end users install anything (this includes wit)!
.
[*] The developer must create one or more patch files. These patch files can be ZIP or TAR files. TAR files has the advantage of hardlink support that may reduce the download size. It is important, that the archive follow the directory structure of the image and that the base directory is: ./patch-dir/files/
.
[*] If the patch file contains the bash script ./patch-dir/post-patch.sh/ the script is executed with ./patch-dir/ as working directory after extracting the patch file. This Script must be a bash script without shebang to avoid cygwin problems and to support all host systems. It can modify any files before composing starts.
.
[*] The bash script job-helper.sh controls the conversion. (see below).
.
[*] There are additional scripts (batch files) for Windows and Unix users. These scripts allow a 1-Click-Conversion. The different scripts have different option setups (see next points) and can be edited.
.
[*] The user can use different options to controll the conversion. For example he can define the output file format (--iso, --ciso, --wdf, --wia, --wbfs, --split).
.
[*] Before converting the user must copy the original ISO image into the base directory. Alternatively he can use the option --extract to force direct extraction from a WBFS partition (admin rights needed).
.
[*] After the conversion the new images are stored in the subdirectory ./new-image. Alternatively the use can use the option --add to force direct creation to a WBFS partition (admin rights needed).
.
[*] With the selection of a conversions cript the user decides the destination file format (ISO or WBFS or WDF).
[*] In my example the new Mario Kart shares by default the savegame (the profiles) with the original games when calling a 'shared-savegame' script. But if calling a 'new-savegame' script the ID of boot.bin, ticket and tmd is changes so that the game uses a new savegame.
.
[*] For end user problems the tool set contains the diagnostic scripts 'view-iso.*' and 'verify-iso.*'. Both are availabe as Windows batch files (*.bat) and as bash scripts (*.sh). view-iso.* lists all detected ISO images in the current directory. verify-iso.* verifies the checksum of all detected ISO images (this takes time).
The core script named job-helper.sh must be edited by the developer. Here is an example:
This is an offer for developers who want to distribute patches for original wii discs.
You (the developer) have patched a orginal game to change textures or gameplay and you want to distribute it. One way is to use Riivolution. An other way is this toolset. It enables all end users to built a new ISO image which includes your patch.
Features of the patching tool set:[*] The core of the patching system is hidden in the subdirectory bin.
.
[*] The host system (Windows, Linux/32, Linux/64, Mac) of the end user is detected automatically.
.
[*] The patching system uses unix tools and wit. For Linux and Mac the used unix tools are standard. For windows the subdirectory ./bin/cygwin contains all needed tools. Other unix systems are supported too if they have self compiled wit tools.
.
[*] There is no need that developers or end users install anything (this includes wit)!
.
[*] The developer must create one or more patch files. These patch files can be ZIP or TAR files. TAR files has the advantage of hardlink support that may reduce the download size. It is important, that the archive follow the directory structure of the image and that the base directory is: ./patch-dir/files/
.
[*] If the patch file contains the bash script ./patch-dir/post-patch.sh/ the script is executed with ./patch-dir/ as working directory after extracting the patch file. This Script must be a bash script without shebang to avoid cygwin problems and to support all host systems. It can modify any files before composing starts.
.
[*] The bash script job-helper.sh controls the conversion. (see below).
.
[*] There are additional scripts (batch files) for Windows and Unix users. These scripts allow a 1-Click-Conversion. The different scripts have different option setups (see next points) and can be edited.
.
[*] The user can use different options to controll the conversion. For example he can define the output file format (--iso, --ciso, --wdf, --wia, --wbfs, --split).
.
[*] Before converting the user must copy the original ISO image into the base directory. Alternatively he can use the option --extract to force direct extraction from a WBFS partition (admin rights needed).
.
[*] After the conversion the new images are stored in the subdirectory ./new-image. Alternatively the use can use the option --add to force direct creation to a WBFS partition (admin rights needed).
.
[*] With the selection of a conversions cript the user decides the destination file format (ISO or WBFS or WDF).
[*] In my example the new Mario Kart shares by default the savegame (the profiles) with the original games when calling a 'shared-savegame' script. But if calling a 'new-savegame' script the ID of boot.bin, ticket and tmd is changes so that the game uses a new savegame.
.
[*] For end user problems the tool set contains the diagnostic scripts 'view-iso.*' and 'verify-iso.*'. Both are availabe as Windows batch files (*.bat) and as bash scripts (*.sh). view-iso.* lists all detected ISO images in the current directory. verify-iso.* verifies the checksum of all detected ISO images (this takes time).
The core script named job-helper.sh must be edited by the developer. Here is an example:
CODE#!/bin/bash
#----- setup
. ./bin/options.sh
workdir=./patch-dir
#----- patching jobs (developers: edit this part)
# job source_id dest_id "title" patch_file
job RMCP01 RMCPT1 "Wiimms Mario Kart Test.pal"ÂÂpatch.zip
job RMCE01 RMCET1 "Wiimms Mario Kart Test.ntsc" patch.zip
#----- termination status
printlog ">>>>>ÂÂ$done_count image(s) createdÂÂÂÂ$done_count Image(s) erstelltÂÂ
#----- setup
. ./bin/options.sh
workdir=./patch-dir
#----- patching jobs (developers: edit this part)
# job source_id dest_id "title" patch_file
job RMCP01 RMCPT1 "Wiimms Mario Kart Test.pal"ÂÂpatch.zip
job RMCE01 RMCET1 "Wiimms Mario Kart Test.ntsc" patch.zip
#----- termination status
printlog ">>>>>ÂÂ$done_count image(s) createdÂÂÂÂ$done_count Image(s) erstelltÂÂ