From fabd1a995f2607acf7a68286c46099d9368c7acf Mon Sep 17 00:00:00 2001 From: Christopher Roy Bratusek Date: Sat, 15 Jun 2013 19:33:43 +0200 Subject: [PATCH] patches + script.d --- patches/NewerSMB/EURv1.ppf | Bin 0 -> 2956 bytes patches/NewerSMB/EURv2.ppf | Bin 0 -> 2956 bytes patches/NewerSMB/JPNv1.ppf | Bin 0 -> 3043 bytes patches/NewerSMB/USAv1.ppf | Bin 0 -> 2935 bytes patches/NewerSMB/USAv2.ppf | Bin 0 -> 2935 bytes script.d/common.sh | 172 +++++++++++++++++++++++++++++++++++++ script.d/newersmb.sh | 141 ++++++++++++++++++++++++++++++ 7 files changed, 313 insertions(+) create mode 100644 patches/NewerSMB/EURv1.ppf create mode 100644 patches/NewerSMB/EURv2.ppf create mode 100644 patches/NewerSMB/JPNv1.ppf create mode 100644 patches/NewerSMB/USAv1.ppf create mode 100644 patches/NewerSMB/USAv2.ppf create mode 100644 script.d/common.sh create mode 100644 script.d/newersmb.sh diff --git a/patches/NewerSMB/EURv1.ppf b/patches/NewerSMB/EURv1.ppf new file mode 100644 index 0000000000000000000000000000000000000000..729ed0bb48d1e8c2366048f60494ba7dc91f566f GIT binary patch literal 2956 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 literal 0 HcmV?d00001 diff --git a/patches/NewerSMB/USAv2.ppf b/patches/NewerSMB/USAv2.ppf new file mode 100644 index 0000000000000000000000000000000000000000..c91497fc74ff08c9a102d7800d4b320745364f43 GIT binary patch literal 2935 zcmb7GeQXnD7=QW!)Dv-<5|`1)J2MordMl&4vs<8>+pKQPx^{sWjl12wvz4}2?poHF z;@+)`n?wWy3MM9OvJF4@17q|L6JZ8|82tlH{D>hkqA?_BVuD|Z#QI$CEsP09?~gto z@9+7(KJSIY?dyE@uE@rgO;7Yhnzz-HyGa)vpt`9cs+J&WIitkL!Uym|#KiA6kMq|3@|ZA*PgcKAnTXYco0XCZ)}+44V5arqTi^?L>L9GYdGH%~Lq;a=u>E68eJ z09L#E2x}M$v6e$#CRTmg)&szn|L$W|zanmiG0z*j5lhexvCq%4+FfbZkVpJfClhZw z(-SfAzXn;=#X07gLhPXlwDB>|>lLha$7xo(ld*=uQ>b#78g-FD zqp#JK4 z0q)?4!-qEYhz)YAiK#@ajMRhJtw>1-9Ig#>%&!zjPT(*qIsXgtOD(=o)6~oSy-Fb} zF{nU%lFLct<@LWvQA>f zV%|ZZdBi>{4TB5MmR>mn8=jruQSJ0Vc-|U@oJjTs&oeW_-lC%QE->_c39D*`cWmxohP7?7!z+p4sJG zuQ{u0^+b{nK48tNIB$N}&zt*rX?~7F2QTEz*@wWH#Tove`Ap9DgZ~-y0bs@0vBrA$ zpIe6iTYv9#A=)&{VEhMgjGu%hXt(<6S?^e5{{MJ>@0kBT&Y#QE6*-F^``Yq3b_VU8 zWqYX?Y=v{Lg{(e20*@7NX%uj2FkB*emt#h%hF)`b=aoC$a3#Mr#A4QPcb@8X1}-{l9R}w#09odpST>83NP?NP9d%iIG(lY8d_5L}HL= zX_}&{NLHz&Z!kj*k#y6NKT#9~SjSCt)QO}^8?Y`b3@3m;K*FV)OHQW~ajFV%&y{4< z!9+Z@g($dZ1+exl36fQ50q(sF+WDZ>f<~RNyIl1)>cY?Sr5Mp|?YTec}47leqGq`rr& zk`~9zi3~Jw(U;1Q0bMgyF>?a(l##&*h!KTojFNs0!wr}w{iS0g#tmaS-I|T-RP~a+ zY=$Uu>aL7gRlk-^sYFYW3|dE8@jypWCq0oCqU!N&G$2^_q4|-4vlrU&Fr#bPz63R5 znwBwR$>@S-B7epMI^$YO_>v3vV48YX$)L{g5`&^w^D8Bm$)p2ybt&^BCPU?K|OFOI{JV>@t-9TG>`&8ipIZ265pR{Dfe0TrzvzdF8{X`=P1CYzS+jo%h8nfQH2!MPCM0>$$k z#p0``eJ9wwxEbTLvd>II|{`VQ^>2!8;A zM=UBuPmZqVyf=Dk*I%ZbKiT5uy2|Z$`NBPGY)6Ne;OB&^BljZGJV@A=WgD$N)S3<2 sa5(SW49%<LKj)CmcA*$1AQ#b$l8" + exit 1 + fi + fi + +} + +check_riivolution_patch () { + + if [[ ! ${RIIVOLUTION}}; then + if [[ -e ./${RIIVOLUTION_ZIP} ]]; then + unzip ./${RIIVOLUTION_ZIP} >/dev/null + elif [[ ! -d ./${RIIVOLUTION_DIR} ]]; then + echo -e "please specify zip to use with --riivolution=" + exit 1 + fi + fi + +} + +optparse () { + +xcount=0 +pcount=$# + +while [[ $xcount -lt $pcount ]]; do + case $1 in + + --iso* ) + ISO_PATH=${1/*=} + ISO_EXT=${ISO_PATH//*./} + + if [[ -e "${ISO_PATH}" ]]; then + ln -sf "${ISO_PATH}" ./BASE.${ISO_EXT} + IMAGE=./BASE.${ISO_EXT} + else + echo -e "ISO not found" + exit1 + fi + ;; + + --patch* ) + RIIVOLUTION=${1/*=} + if [[ -e "${RIIVOLUTION}" ]]; then + unzip "${RIIVOLUTION}" >/dev/null + else + echo -e "Riivolution patch ${RIIVOLUTION} not found." + exit1 + fi + ;; + + --customid* ) + CUSTOMID=${1/*=} + if [[ ${#CUSTOMID} != 6 ]]; then + echo -e "CustomID ${CUSTOMID} needs to have 6 digits" + exit 1 + fi + ;; + + --version=* ) + VERSION=${1/*=} + case ${VERSION} in + EURv1 ) + PATCH=./patches/EURv1.ppf + REG_LETTER=P + ;; + + EURv2 ) + PATCH=./patches/EURv2.ppf + REG_LETTER=P + ;; + + USAv1 ) + PATCH=./patches/USAv1.ppf + REG_LETTER=E + ;; + + USAv2 ) + PATCH=./patches/USAv2.ppf + REG_LETTER=E + ;; + + JPNv1 ) + PATCH=./patches/JPNv1.ppf + REG_LETTER=J + ;; + + * ) + echo -e "unrecognized game version: ${VERSION}" + exit 1 + ;; + esac + ;; + + --sharesave ) + TMD_OPTS="" + ;; + + --game* ) + GAME=${1/*=} + ;; + + "" | --help ) + echo -e "create wbfs images from riivolution patches.\n +***** using this script is only allowed, if you own an original copy of the game. +***** if you don't, no one can be blamed but you. Shame on you.\n +--game={NewerSMB} | specify game you want to create +--iso=/home/test/.wbfs | specify which ISO to use for building +--riivolution=/home/test/.zip | specify path to Riivolution files +--version=EURv1,EURv2,USAv1,USAv2,JPNv1 | specify your game version +--customdid=SMNP02 | specify a custom ID to use for the game +--sharesave | let modified game share savegame with original game +--clean | cleanup the build-directory" + exit 0 + ;; + esac + shift + xcount=$(($xcount+1)) +done + +} diff --git a/script.d/newersmb.sh b/script.d/newersmb.sh new file mode 100644 index 0000000..22de437 --- /dev/null +++ b/script.d/newersmb.sh @@ -0,0 +1,141 @@ +#!/bin/bash + +WORKDIR=./nsmb.d +DOL=${WORKDIR}/sys/main.dol +RIIVOLUTION_ZIP=NewerSMB.zip +RIIVOLUTION_DIR=NewerFiles +GAMENAME="Newer SMB" + +show_notes () { + +echo -e +"************************************************ +NewerSMB + +Source: http://www.newerteam.com/ +Base Image: New Super Mario Bros. Wii (SMN?01) +Supported Versions: EURv1, EURv2, USAv1, USAv2, JPNv1 +************************************************" + +} + +check_input_image_special () { + + if [[ ! ${IMAGE} ]]; then + if test -f ./SMN?01.wbfs; then + IMAGE=./SMN?01.wbfs + elif test -f ./SMN?01.iso; then + IMAGE=./SMN?01.iso + else + echo -e "please specify image to use with --iso=" + exit 1 + fi + fi + +} + +detect_game_version () { + + if [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232911 ]]; then + VERSION=EURv1 + PATCH=./patches/NewerSMB/EURv1.ppf + REG_LETTER=P + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_152101 ]]; then + VERSION=EURv2 + PATCH=./patches/NewerSMB/EURv2.ppf + REG_LETTER=P + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232303 ]]; then + VERSION=USAv1 + PATCH=./patches/NewerSMB/USAv1.ppf + REG_LETTER=E + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_143554 ]]; then + VERSION=USAv2 + PATCH=./patches/NewerSMB/USAv2.ppf + REG_LETTER=E + elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_231655 ]]; then + VERSION=JPNv1 + PATCH=./patches/NewerSMB/JPNv1.ppf + REG_LETTER=J + elif [[ ! ${VERSION} ]]; then + echo -e "please specify your games version using --version={EURv1,EURv2,USAv1,USAv2,JPNv1}" + exit 1 + fi + + GAMEID=SMN${REG_LETTER}02 + +} + +place_files () { + + NEW_DIRS=( nsmb.d/files/LevelSamples nsmb.d/files/NewerRes nsmb.d/files/Sound/new/sfx nsmb.d/files/Maps ) + for dir in ${NEW_DIRS[@]}; do + mkdir -p ${dir} + done + + case ${VERSION} in + EUR* ) + LANGDIRS=( EngEU FraEU GerEU ItaEU SpaEU NedEU ) + for dir in ${LANGDIRS[@]}; do + cp -r ./NewerFiles/NewerSMBW/{Font,Message}/ ./nsmb.d/files/EU/${dir}/ + done + cp ./NewerFiles/NewerSMBW/OthersP/* ./nsmb.d/files/EU/Layout/openingTitle/ + ;; + + USAv* ) + LANGDIRS=( FraUS EngUS SpaUS ) + for dir in ${LANGDIRS[@]}; do + cp -r ./NewerFiles/NewerSMBW/{Font,Message}/ ./nsmb.d/files/US/${dir}/ + done + cp ./NewerFiles/NewerSMBW/OthersE/* ./nsmb.d/files/US/Layout/openingTitle/ + ;; + + JPNv1 ) + cp ./NewerFiles/NewerSMBW/Font/* ./nsmb.d/files/JP/Font/ + cp ./NewerFiles/NewerSMBW/Message/* ./nsmb.d/files/JP/Message/ + cp ./NewerFiles/NewerSMBW/OthersJ/* ./nsmb.d/files/JP/Layout/openingTitle/ + ;; + esac + + cp ./NewerFiles/NewerSMBW/Tilesets/* ./nsmb.d/files/Stage/Texture/ + cp ./NewerFiles/NewerSMBW/TitleReplay/* ./nsmb.d/files/Replay/title/ + cp ./NewerFiles/NewerSMBW/BGs/* ./nsmb.d/files/Object/ + cp ./NewerFiles/NewerSMBW/SpriteTex/* ./nsmb.d/files/Object/ + cp ./NewerFiles/NewerSMBW/Layouts/* ./nsmb.d/files/Layout/ + cp -r ./NewerFiles/NewerSMBW/Music/*.er ./nsmb.d/files/Sound/new/ + cp ./NewerFiles/NewerSMBW/Music/sfx/* ./nsmb.d/files/Sound/new/sfx/ + cp ./NewerFiles/NewerSMBW/Music/stream/* ./nsmb.d/files/Sound/stream/ + cp ./NewerFiles/NewerSMBW/Music/rsar/* ./nsmb.d/files/Sound/ + cp ./NewerFiles/NewerSMBW/NewerRes/* ./nsmb.d/files/NewerRes/ + cp ./NewerFiles/NewerSMBW/LevelSamples/* ./nsmb.d/files/LevelSamples/ + cp ./NewerFiles/NewerSMBW/Others/charaChangeSelectContents.arc ./nsmb.d/files/Layout/charaChangeSelectContents/charaChangeSelectContents.arc + cp ./NewerFiles/NewerSMBW/Others/characterChange.arc ./nsmb.d/files/Layout/characterChange/characterChange.arc + cp ./NewerFiles/NewerSMBW/Others/continue.arc ./nsmb.d/files/Layout/continue/continue.arc + cp ./NewerFiles/NewerSMBW/Others/controllerInformation.arc ./nsmb.d/files/Layout/controllerInformation/controllerInformation.arc + cp ./NewerFiles/NewerSMBW/Others/corseSelectMenu.arc ./nsmb.d/files/Layout/corseSelectMenu/corseSelectMenu.arc + cp ./NewerFiles/NewerSMBW/Others/corseSelectUIGuide.arc ./nsmb.d/files/Layout/corseSelectUIGuide/corseSelectUIGuide.arc + cp ./NewerFiles/NewerSMBW/Others/dateFile.arc ./nsmb.d/files/Layout/dateFile/dateFile.arc + cp ./NewerFiles/NewerSMBW/Others/dateFile_OLD.arc ./nsmb.d/files/Layout/dateFile/dateFile_OLD.arc + cp ./NewerFiles/NewerSMBW/Others/easyPairing.arc ./nsmb.d/files/Layout/easyPairing/easyPairing.arc + cp ./NewerFiles/NewerSMBW/Others/extensionControllerNunchuk.arc ./nsmb.d/files/Layout/extensionControllerNunchuk/extensionControllerNunchuk.arc + cp ./NewerFiles/NewerSMBW/Others/extensionControllerYokomochi.arc ./nsmb.d/files/Layout/extensionControllerYokomochi/extensionControllerYokomochi.arc + cp ./NewerFiles/NewerSMBW/Others/fileSelectBase.arc ./nsmb.d/files/Layout/fileSelectBase/fileSelectBase.arc + cp ./NewerFiles/NewerSMBW/Others/fileSelectBase_OLD.arc ./nsmb.d/files/Layout/fileSelectBase/fileSelectBase_OLD.arc + cp ./NewerFiles/NewerSMBW/Others/fileSelectPlayer.arc ./nsmb.d/files/Layout/fileSelectPlayer/fileSelectPlayer.arc + cp ./NewerFiles/NewerSMBW/Others/gameScene.arc ./nsmb.d/files/Layout/gameScene/gameScene.arc + cp ./NewerFiles/NewerSMBW/Others/infoWindow.arc ./nsmb.d/files/Layout/infoWindow/infoWindow.arc + cp ./NewerFiles/NewerSMBW/Others/miniGameCannon.arc ./nsmb.d/files/Layout/miniGameCannon/miniGameCannon.arc + cp ./NewerFiles/NewerSMBW/Others/miniGameWire.arc ./nsmb.d/files/Layout/miniGameWire/miniGameWire.arc + cp ./NewerFiles/NewerSMBW/Others/pauseMenu.arc ./nsmb.d/files/Layout/pauseMenu/pauseMenu.arc + cp ./NewerFiles/NewerSMBW/Others/pointResultDateFile.arc ./nsmb.d/files/Layout/pointResultDateFile/pointResultDateFile.arc + cp ./NewerFiles/NewerSMBW/Others/pointResultDateFileFree.arc ./nsmb.d/files/Layout/pointResultDateFileFree/pointResultDateFileFree.arc + cp ./NewerFiles/NewerSMBW/Others/preGame.arc ./nsmb.d/files/Layout/preGame/preGame.arc + cp ./NewerFiles/NewerSMBW/Others/select_cursor.arc ./nsmb.d/files/Layout/select_cursor/select_cursor.arc + cp ./NewerFiles/NewerSMBW/Others/sequenceBG.arc ./nsmb.d/files/Layout/sequenceBG/sequenceBG.arc + cp ./NewerFiles/NewerSMBW/Others/staffCredit.arc ./nsmb.d/files/Layout/staffCredit/staffCredit.arc + cp ./NewerFiles/NewerSMBW/Others/stockItem.arc ./nsmb.d/files/Layout/stockItem/stockItem.arc + cp ./NewerFiles/NewerSMBW/Others/stockItemShadow.arc ./nsmb.d/files/Layout/stockItemShadow/stockItemShadow.arc + cp ./NewerFiles/NewerSMBW/Others/yesnoWindow.arc ./nsmb.d/files/Layout/yesnoWindow/yesnoWindow.arc + cp -r ./NewerFiles/NewerSMBW/Maps/* ./nsmb.d/files/Maps/ + cp ./NewerFiles/NewerSMBW/Stages/* ./nsmb.d/files/Stage/ + +}