mirror of
https://gitlab.com/Nanolx/patchimage.git
synced 2024-12-28 18:11:50 +01:00
add batch mode for generating more than one mod at once
This commit is contained in:
parent
cfd9eb47d2
commit
560c457efc
@ -16,6 +16,7 @@ v7.0.0:
|
||||
- add --override-szs to override Wiims Mario Kart Fun wit and szs with
|
||||
the ones supplied by patchimage. Use this if building Wiims Mario Kart Fun
|
||||
fails due to incompatible library versions being installed.
|
||||
- add batch mode for generating more than one mod at once
|
||||
|
||||
::bug fixes
|
||||
- several minor bugfixes and improvements
|
||||
|
@ -1,6 +1,7 @@
|
||||
*** General parameters ***
|
||||
--help | show this message
|
||||
--game=<ID/Short Name> | specify game you want to create
|
||||
--game="<ID1/Short Name1> <ID2/Short Name2>" | specify multiple games you want to create
|
||||
--list-games | show possible options for --game
|
||||
|
||||
*** Wii game parameters ***
|
||||
|
547
patchimage.sh
547
patchimage.sh
@ -46,370 +46,373 @@ setup_tools
|
||||
|
||||
[[ ! ${GAME} ]] && ask_game
|
||||
|
||||
case ${GAME} in
|
||||
for game in ${GAME[@]}; do
|
||||
|
||||
NSMB1 | NewerSMB )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newersmb.sh"
|
||||
;;
|
||||
case ${game} in
|
||||
|
||||
NSMB2 | NewerSummerSun )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newersummersun.sh"
|
||||
;;
|
||||
NSMB1 | NewerSMB )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newersmb.sh"
|
||||
;;
|
||||
|
||||
NSMB3 | AnotherSMB )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/anothersmb.sh"
|
||||
;;
|
||||
NSMB2 | NewerSummerSun )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newersummersun.sh"
|
||||
;;
|
||||
|
||||
NSMB4 | HolidaySpecial )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerholiday.sh"
|
||||
;;
|
||||
NSMB3 | AnotherSMB )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/anothersmb.sh"
|
||||
;;
|
||||
|
||||
NSMB5 | Cannon )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/cannon.sh"
|
||||
;;
|
||||
NSMB4 | HolidaySpecial )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerholiday.sh"
|
||||
;;
|
||||
|
||||
NSMB6 | BowserWorld )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/epicbowserworld.sh"
|
||||
;;
|
||||
NSMB5 | Cannon )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/cannon.sh"
|
||||
;;
|
||||
|
||||
NSMB7 | KoopaCountry )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/koopacountry.sh"
|
||||
;;
|
||||
NSMB6 | BowserWorld )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/epicbowserworld.sh"
|
||||
;;
|
||||
|
||||
NSMB8 | NewSuperMarioBros4 )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw4.sh"
|
||||
;;
|
||||
NSMB7 | KoopaCountry )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/koopacountry.sh"
|
||||
;;
|
||||
|
||||
NSMB9 | RetroRemix )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/retroremix.sh"
|
||||
;;
|
||||
NSMB8 | NewSuperMarioBros4 )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw4.sh"
|
||||
;;
|
||||
|
||||
NSMB10 | WinterMoon )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/wintermoon.sh"
|
||||
;;
|
||||
NSMB9 | RetroRemix )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/retroremix.sh"
|
||||
;;
|
||||
|
||||
NSMB11 | NSMBW3 )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw3.sh"
|
||||
;;
|
||||
NSMB10 | WinterMoon )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/wintermoon.sh"
|
||||
;;
|
||||
|
||||
NSMB12 | Vacation )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/summervacation.sh"
|
||||
;;
|
||||
NSMB11 | NSMBW3 )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw3.sh"
|
||||
;;
|
||||
|
||||
NSMB13 | ASLM )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/awesomersuperluigi.sh"
|
||||
;;
|
||||
NSMB12 | Vacation )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/summervacation.sh"
|
||||
;;
|
||||
|
||||
NSMB14 | Sykland )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/skyland.sh"
|
||||
;;
|
||||
NSMB13 | ASLM )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/awesomersuperluigi.sh"
|
||||
;;
|
||||
|
||||
NSMB15 | RVLution )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/rvlution.sh"
|
||||
;;
|
||||
NSMB14 | Sykland )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/skyland.sh"
|
||||
;;
|
||||
|
||||
NSMB16 | Midi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/midissupermariowii.sh"
|
||||
;;
|
||||
NSMB15 | RVLution )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/rvlution.sh"
|
||||
;;
|
||||
|
||||
NSMB17 | DarkUmbra )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/darkumbrasmb.sh"
|
||||
;;
|
||||
NSMB16 | Midi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/midissupermariowii.sh"
|
||||
;;
|
||||
|
||||
NSMB18 | NewerApocalypse )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerapocalypse.sh"
|
||||
;;
|
||||
NSMB17 | DarkUmbra )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/darkumbrasmb.sh"
|
||||
;;
|
||||
|
||||
NSMB19 | LuigisSuperYoshiBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/luigissuperyoshibros.sh"
|
||||
;;
|
||||
NSMB18 | NewerApocalypse )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerapocalypse.sh"
|
||||
;;
|
||||
|
||||
NSMB20 | NewerFallingLeaf )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerfallingleaf.sh"
|
||||
;;
|
||||
NSMB19 | LuigisSuperYoshiBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/luigissuperyoshibros.sh"
|
||||
;;
|
||||
|
||||
NSMB21 | DevilMarioWinterSpecial )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/devilmariowinterspecial.sh"
|
||||
;;
|
||||
NSMB20 | NewerFallingLeaf )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newerfallingleaf.sh"
|
||||
;;
|
||||
|
||||
NSMB22 | NewSMBWOtherWorld )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newsmbwotherworld.sh"
|
||||
;;
|
||||
NSMB21 | DevilMarioWinterSpecial )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/devilmariowinterspecial.sh"
|
||||
;;
|
||||
|
||||
NSMB23 | TheLegendOfYoshi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/thelegendofyoshi.sh"
|
||||
;;
|
||||
NSMB22 | NewSMBWOtherWorld )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/newsmbwotherworld.sh"
|
||||
;;
|
||||
|
||||
NSMB24 | RemixedSuperMarioBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/remixedsupermariobroswii.sh"
|
||||
;;
|
||||
NSMB23 | TheLegendOfYoshi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/thelegendofyoshi.sh"
|
||||
;;
|
||||
|
||||
NSMB25 | GhostlySuperGhostBoos )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/ghostlysuperghostbooswii.sh"
|
||||
;;
|
||||
NSMB24 | RemixedSuperMarioBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/remixedsupermariobroswii.sh"
|
||||
;;
|
||||
|
||||
NSMB26 | RevisedSuperMarioBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/revisedsupermariobroswii.sh"
|
||||
;;
|
||||
NSMB25 | GhostlySuperGhostBoos )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/ghostlysuperghostbooswii.sh"
|
||||
;;
|
||||
|
||||
NSMB99 | NSMBWCharacters )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw_characters.sh"
|
||||
;;
|
||||
NSMB26 | RevisedSuperMarioBros )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/revisedsupermariobroswii.sh"
|
||||
;;
|
||||
|
||||
MKW1 | Wiimmfi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/wiimmfi.sh"
|
||||
;;
|
||||
NSMB99 | NSMBWCharacters )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/nsmbw/nsmbw_characters.sh"
|
||||
;;
|
||||
|
||||
MKW2 | Wiimmpatch )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/wiimmfi_generic.sh"
|
||||
;;
|
||||
MKW1 | Wiimmfi )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/wiimmfi.sh"
|
||||
;;
|
||||
|
||||
MKW3 | Mkwiimm )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm.sh"
|
||||
;;
|
||||
MKW2 | Wiimmpatch )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/wiimmfi_generic.sh"
|
||||
;;
|
||||
|
||||
MKW4 | MkwiimmItems )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_items.sh"
|
||||
;;
|
||||
MKW3 | Mkwiimm )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm.sh"
|
||||
;;
|
||||
|
||||
MKW5 | MkwiimmFonts )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_fonts.sh"
|
||||
;;
|
||||
MKW4 | MkwiimmItems )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_items.sh"
|
||||
;;
|
||||
|
||||
MKW6 | MkwiimmKarts )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_karts.sh"
|
||||
;;
|
||||
MKW5 | MkwiimmFonts )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_fonts.sh"
|
||||
;;
|
||||
|
||||
KAW1 | Kirby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/kirbywii.sh"
|
||||
;;
|
||||
MKW6 | MkwiimmKarts )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/mkwii/mkwiimm_karts.sh"
|
||||
;;
|
||||
|
||||
TMS1 | TokyoMirageSessions )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/tokyomiragesessionsfe.sh"
|
||||
;;
|
||||
KAW1 | Kirby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/kirbywii.sh"
|
||||
;;
|
||||
|
||||
PKMN1 | NeoX )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonneox.sh"
|
||||
;;
|
||||
TMS1 | TokyoMirageSessions )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/tokyomiragesessionsfe.sh"
|
||||
;;
|
||||
|
||||
PKMN2 | NeoY )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonneoy.sh"
|
||||
;;
|
||||
PKMN1 | NeoX )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonneox.sh"
|
||||
;;
|
||||
|
||||
PKMN3 | RutileRuby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonrutileruby.sh"
|
||||
;;
|
||||
PKMN2 | NeoY )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonneoy.sh"
|
||||
;;
|
||||
|
||||
PKMN4 | AlphaSapphire )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonstarsapphire.sh"
|
||||
;;
|
||||
PKMN3 | RutileRuby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonrutileruby.sh"
|
||||
;;
|
||||
|
||||
PKMN5 | EternalX )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemoneternalx.sh"
|
||||
;;
|
||||
PKMN4 | AlphaSapphire )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonstarsapphire.sh"
|
||||
;;
|
||||
|
||||
PKMN6 | WiltingY )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonwiltingy.sh"
|
||||
;;
|
||||
PKMN5 | EternalX )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemoneternalx.sh"
|
||||
;;
|
||||
|
||||
PKMN7 | RisingRuby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonrisingruby.sh"
|
||||
;;
|
||||
PKMN6 | WiltingY )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonwiltingy.sh"
|
||||
;;
|
||||
|
||||
PKMN8 | SinkingSapphire )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonsinkingsapphire.sh"
|
||||
;;
|
||||
PKMN7 | RisingRuby )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonrisingruby.sh"
|
||||
;;
|
||||
|
||||
BSECU | BravelySecondUncensored )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/bravelyseconduncensored.sh"
|
||||
;;
|
||||
PKMN8 | SinkingSapphire )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/pokemon/pokemonsinkingsapphire.sh"
|
||||
;;
|
||||
|
||||
ZEL1 | ParallelWorlds )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/parallelworlds.sh"
|
||||
;;
|
||||
BSECU | BravelySecondUncensored )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/bravelyseconduncensored.sh"
|
||||
;;
|
||||
|
||||
* )
|
||||
echo -e "specified Game ${GAME} not recognized"
|
||||
exit 9
|
||||
;;
|
||||
ZEL1 | ParallelWorlds )
|
||||
source "${PATCHIMAGE_SCRIPT_DIR}/parallelworlds.sh"
|
||||
;;
|
||||
|
||||
esac
|
||||
* )
|
||||
echo -e "specified Game ${game} not recognized"
|
||||
exit 9
|
||||
;;
|
||||
|
||||
patchimage_riivolution () {
|
||||
esac
|
||||
|
||||
show_notes
|
||||
rm -rf "${WORKDIR}"
|
||||
if [[ ${PATCHIMAGE_SOUNDTRACK_DOWNLOAD} == TRUE ]]; then
|
||||
echo -e "\n*** A) download_soundtrack"
|
||||
download_soundtrack
|
||||
if [[ ${ONLY_SOUNDTRACK} == TRUE ]]; then
|
||||
exit 0
|
||||
patchimage_riivolution () {
|
||||
|
||||
show_notes
|
||||
rm -rf "${WORKDIR}"
|
||||
if [[ ${PATCHIMAGE_SOUNDTRACK_DOWNLOAD} == TRUE ]]; then
|
||||
echo -e "\n*** A) download_soundtrack"
|
||||
download_soundtrack
|
||||
if [[ ${ONLY_SOUNDTRACK} == TRUE ]]; then
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image
|
||||
echo "*** 2) check_input_image_special"
|
||||
check_input_image_special
|
||||
echo "*** 3) check_riivolution_patch"
|
||||
check_riivolution_patch
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image
|
||||
echo "*** 2) check_input_image_special"
|
||||
check_input_image_special
|
||||
echo "*** 3) check_riivolution_patch"
|
||||
check_riivolution_patch
|
||||
|
||||
echo "*** 4) extract game"
|
||||
${WIT} extract "${IMAGE}" "${WORKDIR}" --psel=DATA -q || exit 51
|
||||
echo "*** 4) extract game"
|
||||
${WIT} extract "${IMAGE}" "${WORKDIR}" --psel=DATA -q || exit 51
|
||||
|
||||
echo "*** 5) detect_game_version"
|
||||
detect_game_version
|
||||
rm -f "${GAMEID}".wbfs "${CUSTOMID}".wbfs
|
||||
echo "*** 6) place_files"
|
||||
place_files || exit 45
|
||||
echo "*** 5) detect_game_version"
|
||||
detect_game_version
|
||||
rm -f "${GAMEID}".wbfs "${CUSTOMID}".wbfs
|
||||
echo "*** 6) place_files"
|
||||
place_files || exit 45
|
||||
|
||||
echo "*** 7) download_banner"
|
||||
download_banner
|
||||
echo "*** 8) apply_banner"
|
||||
apply_banner
|
||||
echo "*** 7) download_banner"
|
||||
download_banner
|
||||
echo "*** 8) apply_banner"
|
||||
apply_banner
|
||||
|
||||
echo "*** 9) dolpatch"
|
||||
dolpatch
|
||||
echo "*** 9) dolpatch"
|
||||
dolpatch
|
||||
|
||||
if [[ ${CUSTOMID} ]]; then
|
||||
GAMEID="${CUSTOMID}"
|
||||
fi
|
||||
if [[ ${CUSTOMID} ]]; then
|
||||
GAMEID="${CUSTOMID}"
|
||||
fi
|
||||
|
||||
if [[ ${PATCHIMAGE_SHARE_SAVE} == "TRUE" ]]; then
|
||||
TMD_OPTS=""
|
||||
else
|
||||
TMD_OPTS="--tt-id=K"
|
||||
fi
|
||||
if [[ ${PATCHIMAGE_SHARE_SAVE} == "TRUE" ]]; then
|
||||
TMD_OPTS=""
|
||||
else
|
||||
TMD_OPTS="--tt-id=K"
|
||||
fi
|
||||
|
||||
echo "*** 10) rebuild and store game"
|
||||
"${WIT}" cp -o -q --disc-id="${GAMEID}" "${TMD_OPTS}" --name "${GAMENAME}" \
|
||||
-B "${WORKDIR}" "${PATCHIMAGE_GAME_DIR}"/"${GAMEID}".wbfs || exit 51
|
||||
echo "*** 10) rebuild and store game"
|
||||
"${WIT}" cp -o -q --disc-id="${GAMEID}" "${TMD_OPTS}" --name "${GAMENAME}" \
|
||||
-B "${WORKDIR}" "${PATCHIMAGE_GAME_DIR}"/"${GAMEID}".wbfs || exit 51
|
||||
|
||||
echo "*** 12) remove workdir"
|
||||
rm -rf "${WORKDIR}"
|
||||
echo "*** 12) remove workdir"
|
||||
rm -rf "${WORKDIR}"
|
||||
|
||||
echo -e "\n >>> ${GAMENAME} saved as: ${PATCHIMAGE_GAME_DIR}/${GAMEID}.wbfs\n"
|
||||
echo -e "\n >>> ${GAMENAME} saved as: ${PATCHIMAGE_GAME_DIR}/${GAMEID}.wbfs\n"
|
||||
|
||||
if [[ ${PATCHIMAGE_COVER_DOWNLOAD} == TRUE ]]; then
|
||||
echo -e "*** Z) download_covers"
|
||||
download_covers "${GAMEID}"
|
||||
echo -e "\nCovers downloaded to ${PATCHIMAGE_COVER_DIR}"
|
||||
fi
|
||||
if [[ ${PATCHIMAGE_COVER_DOWNLOAD} == TRUE ]]; then
|
||||
echo -e "*** Z) download_covers"
|
||||
download_covers "${GAMEID}"
|
||||
echo -e "\nCovers downloaded to ${PATCHIMAGE_COVER_DIR}"
|
||||
fi
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
patchimage_mkwiimm () {
|
||||
patchimage_mkwiimm () {
|
||||
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image
|
||||
echo -e "\n*** 2) download_wiimm"
|
||||
download_wiimm
|
||||
echo -e "\n*** 3) patch_wiimm"
|
||||
patch_wiimm
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image
|
||||
echo -e "\n*** 2) download_wiimm"
|
||||
download_wiimm
|
||||
echo -e "\n*** 3) patch_wiimm"
|
||||
patch_wiimm
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
patchimage_generic () {
|
||||
patchimage_generic () {
|
||||
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image_special
|
||||
echo -e "\n*** 2) pi_action"
|
||||
pi_action
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_image"
|
||||
check_input_image_special
|
||||
echo -e "\n*** 2) pi_action"
|
||||
pi_action
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
patchimage_ips () {
|
||||
show_notes
|
||||
check_input_rom
|
||||
patchimage_ips () {
|
||||
show_notes
|
||||
check_input_rom
|
||||
|
||||
if [[ -f ${PATCH} ]]; then
|
||||
ext="${ROM/*.}"
|
||||
cp "${ROM}" "${GAMENAME}.${ext}"
|
||||
"${IPS}" a "${PATCH}" "${GAMENAME}.${ext}" || exit 51
|
||||
else
|
||||
echo -e "error: patch (${PATCH}) could not be found"
|
||||
exit 21
|
||||
fi
|
||||
}
|
||||
if [[ -f ${PATCH} ]]; then
|
||||
ext="${ROM/*.}"
|
||||
cp "${ROM}" "${GAMENAME}.${ext}"
|
||||
"${IPS}" a "${PATCH}" "${GAMENAME}.${ext}" || exit 51
|
||||
else
|
||||
echo -e "error: patch (${PATCH}) could not be found"
|
||||
exit 21
|
||||
fi
|
||||
}
|
||||
|
||||
patchimage_hans () {
|
||||
patchimage_hans () {
|
||||
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_rom"
|
||||
if [[ ${HANS_MULTI_SOURCE} ]]; then
|
||||
check_input_rom_special
|
||||
else check_input_rom
|
||||
fi
|
||||
show_notes
|
||||
echo -e "\n*** 1) check_input_rom"
|
||||
if [[ ${HANS_MULTI_SOURCE} ]]; then
|
||||
check_input_rom_special
|
||||
else check_input_rom
|
||||
fi
|
||||
|
||||
rm -rf romfs/ romfs.bin "${ROMFS}"
|
||||
rm -rf romfs/ romfs.bin "${ROMFS}"
|
||||
|
||||
echo -e "\n*** 2) check_hans_files"
|
||||
check_hans_files
|
||||
echo -e "\n*** 2) check_hans_files"
|
||||
check_hans_files
|
||||
|
||||
echo -e "\n*** 3) unpack_3dsrom"
|
||||
unpack_3dsrom "${ROM}" || exit 51
|
||||
echo -e "\n*** 3) unpack_3dsrom"
|
||||
unpack_3dsrom "${ROM}" || exit 51
|
||||
|
||||
echo -e "\n*** 4) unpack_3dsromfs"
|
||||
unpack_3dsromfs romfs.bin || exit 51
|
||||
echo -e "\n*** 4) unpack_3dsromfs"
|
||||
unpack_3dsromfs romfs.bin || exit 51
|
||||
|
||||
echo -e "\n*** 5) patch_romfs"
|
||||
patch_romfs
|
||||
echo -e "\n*** 5) patch_romfs"
|
||||
patch_romfs
|
||||
|
||||
echo -e "\n*** 6) repack_romfs"
|
||||
repack_3dsromfs romfs/ "${ROMFS}" || exit 51
|
||||
echo -e "\n*** 6) repack_romfs"
|
||||
repack_3dsromfs romfs/ "${ROMFS}" || exit 51
|
||||
|
||||
mv "${ROMFS}" "${PATCHIMAGE_ROM_DIR}"
|
||||
mv "${ROMFS}" "${PATCHIMAGE_ROM_DIR}"
|
||||
|
||||
echo "
|
||||
*** succesfully created new romfs as \"${PATCHIMAGE_ROM_DIR}/${ROMFS}\"
|
||||
"
|
||||
echo "
|
||||
*** succesfully created new romfs as \"${PATCHIMAGE_ROM_DIR}/${ROMFS}\"
|
||||
"
|
||||
|
||||
[[ ${DATA} ]] && echo \
|
||||
">> for Hans Banners / Launchers, place all files from
|
||||
[[ ${DATA} ]] && echo \
|
||||
">> for Hans Banners / Launchers, place all files from
|
||||
|
||||
$(readlink -m "${DATA}")
|
||||
$(readlink -m "${DATA}")
|
||||
|
||||
into the root of your sd card
|
||||
"
|
||||
into the root of your sd card
|
||||
"
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
patchimage_delta () {
|
||||
patchimage_delta () {
|
||||
|
||||
show_notes
|
||||
echo -e "\n*** 1) menu"
|
||||
menu || exit 9
|
||||
show_notes
|
||||
echo -e "\n*** 1) menu"
|
||||
menu || exit 9
|
||||
|
||||
echo -e "\n*** 2) patch"
|
||||
patch || exit 51
|
||||
echo -e "\n*** 2) patch"
|
||||
patch || exit 51
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
case ${GAME_TYPE} in
|
||||
"RIIVOLUTION" )
|
||||
patchimage_riivolution
|
||||
;;
|
||||
case ${GAME_TYPE} in
|
||||
"RIIVOLUTION" )
|
||||
patchimage_riivolution
|
||||
;;
|
||||
|
||||
"MKWIIMM")
|
||||
patchimage_mkwiimm
|
||||
;;
|
||||
"MKWIIMM")
|
||||
patchimage_mkwiimm
|
||||
;;
|
||||
|
||||
"GENERIC")
|
||||
patchimage_generic
|
||||
;;
|
||||
"GENERIC")
|
||||
patchimage_generic
|
||||
;;
|
||||
|
||||
"IPS" )
|
||||
patchimage_ips
|
||||
;;
|
||||
"IPS" )
|
||||
patchimage_ips
|
||||
;;
|
||||
|
||||
"HANS" )
|
||||
patchimage_hans
|
||||
;;
|
||||
"HANS" )
|
||||
patchimage_hans
|
||||
;;
|
||||
|
||||
"DELTA" )
|
||||
patchimage_delta
|
||||
;;
|
||||
"DELTA" )
|
||||
patchimage_delta
|
||||
;;
|
||||
|
||||
esac
|
||||
esac
|
||||
done
|
||||
|
@ -96,7 +96,7 @@ ask_game () {
|
||||
echo -e \
|
||||
"${SUPPORTED_GAMES}
|
||||
|
||||
Enter ID or Short Name for the Game you want to build:
|
||||
Enter ID or Short Name for the Game you want to build (multiple separated by space):
|
||||
"
|
||||
|
||||
read -r GAME
|
||||
@ -622,6 +622,7 @@ while [[ $xcount -lt $pcount ]]; do
|
||||
*** General parameters ***
|
||||
--help | show this message
|
||||
--game=<ID/Short Name> | specify game you want to create
|
||||
--game=\"<ID1/Short Name1> <ID2/Short Name2>\" | specify multiple games you want to create
|
||||
--list-games | show possible options for --game
|
||||
|
||||
*** Wii game parameters ***
|
||||
|
Loading…
Reference in New Issue
Block a user