add support for KoopaCountry

This commit is contained in:
Christopher Roy Bratusek 2013-07-03 17:19:23 +02:00
parent ddbe71d1f6
commit 71dc6ec665
4 changed files with 171 additions and 0 deletions

BIN
patches/01-03.arc Normal file

Binary file not shown.

BIN
patches/08-01.arc Normal file

Binary file not shown.

View File

@ -0,0 +1,30 @@
<memory offset="0x803482C0" value="480000F08015F870801AF710801CA7C0801CAAD0801CAC60801CAB40802B8E00802B90B080377F488042A72C802E1ACC455500008015F730801AF5D0801CA680801CA990801CAB20801CAA00802B8CC0802B8F7080377C488042A44C802E17DC555300008015F540801AF3E0801CA490801CA7A0801CA930801CA810802B8AD0802B8D80803779C88042A16C802E15EC4A5000002F4E657765725265732F53797374656D78785F782E62696E002F4E657765725265732F444C436F646578785F782E62696E002F4E657765725265732F444C52656C6F637378785F782E62696E000000000000000000000000000000009421FFA07C0802A69001006493E1005C93C1005893A1005438C000313CA0807660A58D50806500005463043E2C036DE14182003C2C036CA1418200402C036AB1418200442C0300144082032838C00032806500405463043E2C036DA1418200102C036C6141820014480003083FE0800063FF1804480000183FE0800063FF18344800000C3FE0800063FF18643C60800060631894388000104800036D3C608000606318AD480003613C608000606318C638800012480003513C60800060631D183C80800060841894819F00007D8903A64E8004213C60800060631894819F00087D8903A64E8004213880FFFF7C0320004182028438810008819F000C7D8903A64E800421388000017C032000408202A43C60800060631D348081003C819F00007D8903A64E8004218061003C3863001F546300343880002080BF002480A50000819F00187D8903A64E8004217C7E1B782C1E000041820268386100087FC4F37880A1003C38A5001F54A5003438C0000038E00002819F00107D8903A64E8004213C60800060631D67819F00007D8903A64E8004217FC3F378480004B93C60800060631D83819F00007D8903A64E8004217FC3F378809F002480840000819F001C7D8903A64E80042138610008819F00147D8903A64E8004213C60800060631D95819F00007D8903A64E8004213C608000606318AD819F00087D8903A64E80042138810008819F000C7D8903A64E8004218061003C3863001F546300343880002080BF002080A50000819F00187D8903A64E8004217C7D1B78386100087FA4EB7880A1003C38A5001F54A5003438C0000038E00002819F00107D8903A64E80042138610008819F00147D8903A64E8004213C60800060631DAD7FA4EB78819F00007D8903A64E8004213C608000606318C6819F00087D8903A64E80042138810008819F000C7D8903A64E8004218061003C3863001F546300343880002080BF002480A50000819F00187D8903A64E8004217C7E1B783C60800060631D95819F00007D8903A64E800421386100087FC4F37880A1003C38A5001F" />
<memory offset="0x803486A8" value="54A5003438C0000038E00002819F00107D8903A64E8004213C60800060631DCD819F00007D8903A64E8004217FA3EB787FC4F378480003CD7FC3F378809F002480840000819F001C7D8903A64E80042138610008819F00147D8903A64E8004213C60800060631DD9819F00007D8903A64E80042148000078480000003C60800060631EB63C80800060841DEB3CA0800060A518943CC0800088E6000388C60007819F00287D8903A64E8004213C60800060631EB6480000183C60800060631E5B4800000C3C60800060631E897C651B783C60800060631D103C80800060841D14819F00047D8903A64E8004213860000183E1005C83C1005883A10054800100647C0803A6382100604E8000207C63221488BF002C98A3000088BF002D98A3000198C300034E800020FFFFFFFF00000000313A204C6F6164696E672073797374656D2066696C653A2025730A00323A2046696C65207375636365737366756C6C79206F70656E65642E2025642062797465732E2052656164696E672E2E2E0A00333A2046696C6520726561642E204E6F77207061746368696E670A00343A205061746368206170706C6965640A00353A204C6F6164696E672064796C696E6B20636F64650A00444C436F646520402025700A00363A204C6F6164696E672072656C6F63730A00373A204C696E6B696E670A00383A204861636B73206C6F61646564210A00464154414C204552524F523A2053797374656D2066696C65206E6F7420666F756E64206F6E2074686520646973632E0A536F6D657468696E67277320676F6E652077726F6E672E0A4D697373696E673A2025730A446973632076657273696F6E3A2025640A526567696F6E3A20256300464154414C204552524F523A2053797374656D2066696C6520636F756C64206E6F74206265206F70656E65642E00464154414C204552524F523A204661696C656420746F20616C6C6F63617465206D656D6F727920282564292E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009421FFE07C0802A69001002493E1001C93C1001893A100143BE3FFFC3BA000003BBDFFFF87DF00047C1EE800418200583FA080007FBDF0394182002087BF000493BE000057C300347C00186C7C0004AC7C001FAC4800002C7FC903A687DF00043BDEFFFC87BF000497BE000457C300347C00186C7C0004AC7C001FAC4200FFE84BFFFF9C7C0004AC4C00012C83A10014" />
<memory offset="0x80348A90" value="83C1001883E1001C800100247C0803A6382100204E800020816400087D645A143884000C480000B080A4000080E400043884000854A611BA54A5463E7CCB302E54C80FFF408200087CC3321454E80FFF408200087CE33A142C050001418200282C050004418200282C050005418200282C0500064182002C2C05000A418200384800004890C7000048000040B0C700004800003854C6843EB0C700004800002C54C88FFE54C6843E7CC64214B0C70000480000187D273050552901BE810700007D084B78910700007C00386C7C0004AC7C003FAC7C0458004180FF507C0004AC4C00012C4E8000200000000000000000000000000000000000000000000000005465616D4441524B77757A486572652100000000000000000000000000000000" />
<memory offset="0x8034841F" value="3463FF82C4" />
<memory offset="0x8034842B" value="3463FF82F4" />
<memory offset="0x80348437" value="3463FF8324" />
<memory offset="0x8034843F" value="3460638354" />
<memory offset="0x8034844F" value="346063836D" />
<memory offset="0x8034845B" value="3460638386" />
<memory offset="0x8034846B" value="34606387D8" />
<memory offset="0x80348473" value="3460848354" />
<memory offset="0x80348487" value="3460638354" />
<memory offset="0x803484C3" value="34606387F4" />
<memory offset="0x80348533" value="3460638827" />
<memory offset="0x8034854F" value="3460638843" />
<memory offset="0x8034858B" value="3460638855" />
<memory offset="0x8034859F" value="346063836D" />
<memory offset="0x80348623" value="346063886D" />
<memory offset="0x8034863B" value="3460638386" />
<memory offset="0x80348687" value="3460638855" />
<memory offset="0x803486C3" value="346063888D" />
<memory offset="0x8034870B" value="3460638899" />
<memory offset="0x80348727" value="3460638976" />
<memory offset="0x8034872F" value="34608488AB" />
<memory offset="0x80348737" value="3460A58354" />
<memory offset="0x80348757" value="3460638976" />
<memory offset="0x80348763" value="346063891B" />
<memory offset="0x8034876F" value="3460638949" />
<memory offset="0x8034877B" value="34606387D0" />
<memory offset="0x80348783" value="34608487D4" />

141
script.d/koopacountry.sh Normal file
View File

@ -0,0 +1,141 @@
#!/bin/bash
WORKDIR=nsmb.d
DOL=${WORKDIR}/sys/main.dol
#DOWNLOAD_LINK="http://rvlution.net/forums/viewtopic.php?f=53&t=1352"
RIIVOLUTION_ZIP="Koopa country.rar"
RIIVOLUTION_DIR="."
GAMENAME="Koopa Country"
XML_SOURCE="${RIIVOLUTION_DIR}"/Koopa
XML_FILE="${RIIVOLUTION_DIR}"/riivolution/KoopaP.xml
GAME_TYPE=RIIVOLUTION
BANNER_LOCATION=${WORKDIR}/files/opening.bnr
show_notes () {
echo -e \
"************************************************
${GAMENAME}
Traverse through 13 new levels as you stop the evil king bowser
and his deadly invasion from taking over the mushroom kingdom,
sugar star forest and dear ol' Yoshi's island...
Take on the koopa kids and bowser himself in even more difficult
battles than before! And lastly, dont forget to save your power
ups because toad houses are something you wont see many of in
this adventure! oh...and wasn't there something on the top
floor of the castle?
Source: http://rvlution.net/forums/viewtopic.php?f=53&t=1352
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=<path>"
exit 1
fi
fi
}
detect_game_version () {
if [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232911 ]]; then
VERSION=EURv1
REG_LETTER=P
elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_152101 ]]; then
VERSION=EURv2
REG_LETTER=P
elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_232303 ]]; then
VERSION=USAv1
REG_LETTER=E
elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2010-01-05_143554 ]]; then
VERSION=USAv2
REG_LETTER=E
elif [[ -f ${WORKDIR}/files/COPYDATE_LAST_2009-10-03_231655 ]]; then
VERSION=JPNv1
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}09
}
place_files () {
NEW_DIRS=( ${WORKDIR}/files/NewerRes ${WORKDIR}/files/EU/NedEU )
for dir in ${NEW_DIRS[@]}; do
mkdir -p ${dir}
done
cp -r "${RIIVOLUTION_DIR}"/Koopa/EU/EngEU/{m,M}essage
case ${VERSION} in
EUR* )
LANGDIRS=( EngEU FraEU GerEU ItaEU SpaEU NedEU )
for dir in ${LANGDIRS[@]}; do
cp -r "${RIIVOLUTION_DIR}"/Koopa/EU/EngEU/Message/ ${WORKDIR}/files/EU/${dir}/
done
cp "${RIIVOLUTION_DIR}"/Koopa/OpeningP/* ${WORKDIR}/files/EU/Layout/openingTitle/
;;
USAv* )
LANGDIRS=( FraUS EngUS SpaUS )
for dir in ${LANGDIRS[@]}; do
cp -r "${RIIVOLUTION_DIR}"/Koopa/EU/EngEU/Message/ ${WORKDIR}/files/US/${dir}/
done
cp "${RIIVOLUTION_DIR}"/Koopa/OpeningE/* ${WORKDIR}/files/US/Layout/openingTitle/
;;
JPNv1 )
cp -r "${RIIVOLUTION_DIR}"/Koopa/EU/EngEU/Message/ ${WORKDIR}/files/JP/
cp "${RIIVOLUTION_DIR}"/Koopa/OpeningJ/* ${WORKDIR}/files/JP/Layout/openingTitle/
;;
esac
cp "${RIIVOLUTION_DIR}"/Koopa/Stage/Texture/* ${WORKDIR}/files/Stage/Texture/
cp "${RIIVOLUTION_DIR}"/Koopa/NewerRes/* ${WORKDIR}/files/NewerRes/
cp "${RIIVOLUTION_DIR}"/Koopa/Stage/*.arc ${WORKDIR}/files/Stage/
cp "${RIIVOLUTION_DIR}"/Koopa/Env/* ${WORKDIR}/files/Env/
cp "${RIIVOLUTION_DIR}"/Koopa/sound/stream/* ${WORKDIR}/files/Sound/stream/
cp "${RIIVOLUTION_DIR}"/Koopa/sound/*.brsar ${WORKDIR}/files/Sound/
cp "${RIIVOLUTION_DIR}"/Koopa/WorldMap/* ${WORKDIR}/files/WorldMap/
cp "${RIIVOLUTION_DIR}"/Koopa/Object/* ${WORKDIR}/files/Object/
cp -r "${RIIVOLUTION_DIR}"/Koopa/Layout/preGame.arc ${WORKDIR}/files/Layout/preGame/
# fixes
cp patches/01-03.arc ${WORKDIR}/files/Stage/
cp patches/08-01.arc ${WORKDIR}/files/Stage/
}
dolpatch() {
cp "${XML_FILE}" "${XML_FILE}".new
sed -e 's/80001800/803482C0/g' -i "${XML_FILE}".new
XML_FILE="${XML_FILE}".new
${WIT} dolpatch ${DOL} xml="${XML_FILE}" -s "${XML_SOURCE}" \
"802F148C=53756D6D53756E#7769696D6A3264" \
"802F118C=53756D6D53756E#7769696D6A3264" \
"802F0F8C=53756D6D53756E#7769696D6A3264" \
xml="patches/KoopaCountry-Loader.xml" -q
${WIT} dolpatch ${DOL} xml="patches/NSMBW_AP.xml" -q
}