<!DOCTYPE HTML> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta name="description" content="Generates cheatfiles for Super Mario Sunshine speedrun practice."> <meta name="viewport" content="width=480px, initial-scale=1.0"> <link rel="stylesheet" href="style/style.css"> <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> <title>Super Mario Sunshine Practice Code Generator</title> </head> <body onload="updateChangelog()"> <div id="mainContainer"> <input type="checkbox" id="usefastcode" style="display:none" autocomplete="off" /> <div id="left" class="section"> <div id="generalsettings"> <table><tbody> <tr> <td nowrap> Game Version: </td> <td id="ph_gameversion" style="width:100%"> <select id="gameversion" onchange="updateCodelist()" autocomplete="off" style="visibility:hidden"> <option selected disabled>Choose Version</option> <option value="GMSE01">GMSE01 (NTSC-U)</option> <option value="GMSP01">GMSP01 (PAL)</option> <option value="GMSJ01">GMSJ01 (NTSC-J 1.0)</option> <option value="GMSJ0A">GMSJ01 (NTSC-J 1.1/A)</option> </select> </td> </tr> <tr class="initialhidden"> <td nowrap> Stage Loader: </td> <td style="width:100%"> <select id="stageloader" onmouseover="updateUIDescription(this)" onchange="document.getElementById('usefastcode').checked = (this.value === 'yes');" style="width:100%" autocomplete="off"> <option value="yes">Yes</option> <option selected value="no">No</option> </select> </td> </tr> <tr class="initialhidden"> <td nowrap> File Format: </td> <td style="width:100%"> <select id="downloadformat" onmouseover="updateUIDescription(this)" style="width:100%"> <option selected value="gct">GCT</option> <option value="ini">Dolphin INI</option> <option value="gcm">Cheat Manager TXT</option> </select> </td> </tr> <tr class="initialhidden"> <td></td> <td> <button onclick="downloadCodes()" id="downloadbutton">Download</button> </td> </tr> </tbody></table> </div> <div id="codes" class="framed initialhidden"> <ul id="checklist"></ul> </div> </div> <div id="center" class="section initialhidden"> <div class="framed"> <h2>Stage Loader</h2> <div> <table style="width:100%"><tbody> <tr> <td nowrap> <label for="route_notext">Remove Dialogue:</label> </td> <td style="width:100%"> <select id="route_notext" style="width:100%" onmouseover="updateUIDescription(this)"> <option value="yes">Always</option> <option selected value="pv5">Not in Pianta 5</option> <option value="no">Don't include</option> </select> </td> </tr> <tr> <td nowrap> <label for="route_nofmvs">Skippable Cutscenes:</label> </td> <td style="width:100%"> <select id="route_nofmvs" style="width:100%" onmouseover="updateUIDescription(this)"> <option value="yes">Always</option> <option selected value="pp1">Not in Pinna 1</option> <option value="no">Don't include</option> </select> </td> </tr> <tr> <td nowrap> <label for="route_order">Level Order:</label> </td> <td style="width:100%"> <select id="route_order" style="width:100%" onmouseover="updateUIDescription(this)"> <option selected value="list">As specified</option> <option value="shuffle">Random, no duplicates</option> <option value="random">Fully random</option> </select> </td> </tr> <tr> <td nowrap> <label for="route_ending">After the last level:</label> </td> <td style="width:100%"> <select id="route_ending" style="width:100%" onmouseover="updateUIDescription(this)"> <option selected value="0F00">Return to the title screen</option> <option value="3400">Load Corona Mountain</option> <option value="3C00">Load the Bowser fight</option> </select> </td> </tr> </tbody></table> </div> <div> <ul id="route_levels"> <li draggable="false"> <div class="route_drag">≡</div> <select> <option value="0F00" selected disabled>Select a level…</option> <optgroup label="Delfino Plaza"> <option value="1400">Airstrip (red coins)</option> <option value="1500">Slide</option> <option value="1600">Pachinko</option> <option value="1700">Grass pipe</option> <option value="1800">Lily Pad Ride</option> <option value="1D00">Jail secret</option> </optgroup> <optgroup label="Bianco Hills"> <option value="0200">Bianco 1</option> <option value="0201">Bianco 2</option> <option value="0202">Bianco 3</option> <option value="0203">Bianco 4</option> <option value="0204">Bianco 5</option> <option value="0205">Bianco 6</option> <option value="0206">Bianco 7</option> <option value="0207">Bianco 8</option> </optgroup> <optgroup label="Ricco Harbor"> <option value="0300">Ricco 1</option> <option value="0301">Ricco 2</option> <option value="0302">Ricco 3</option> <option value="0303">Ricco 4</option> <option value="0304">Ricco 5</option> <option value="0305">Ricco 6</option> <option value="0306">Ricco 7</option> <option value="0307">Ricco 8</option> </optgroup> <optgroup label="Gelato Beach"> <option value="0400">Gelato 1</option> <option value="0401">Gelato 2</option> <option value="0402">Gelato 3</option> <option value="0403">Gelato 4</option> <option value="0404">Gelato 5</option> <option value="0405">Gelato 6</option> <option value="0406">Gelato 7</option> <option value="0407">Gelato 8</option> </optgroup> <optgroup label="Pinna Park"> <option value="0500">Pinna 1</option> <option value="0501">Pinna 2</option> <option value="0502">Pinna 3</option> <option value="0503">Pinna 4</option> <option value="0504">Pinna 5</option> <option value="0505">Pinna 6</option> <option value="0506">Pinna 7</option> <option value="0507">Pinna 8</option> </optgroup> <optgroup label="Sirena Beach"> <option value="0600">Sirena 1</option> <option value="0601">Sirena 2</option> <option value="0602">Sirena 3</option> <option value="0603">Sirena 4</option> <option value="0604">Sirena 5</option> <option value="0605">Sirena 6</option> <option value="0606">Sirena 7</option> <option value="0607">Sirena 8</option> </optgroup> <optgroup label="Noki Bay"> <option value="0900">Noki 1</option> <option value="0901">Noki 2</option> <option value="0902">Noki 3</option> <option value="0903">Noki 4</option> <option value="0904">Noki 5</option> <option value="0905">Noki 6</option> <option value="0906">Noki 7</option> <option value="0907">Noki 8</option> </optgroup> <optgroup label="Pianta Village"> <option value="0800">Pianta 1</option> <option value="0801">Pianta 2</option> <option value="0802">Pianta 3</option> <option value="0803">Pianta 4</option> <option value="0804">Pianta 5</option> <option value="0805">Pianta 6</option> <option value="0806">Pianta 7</option> <option value="0807">Pianta 8</option> </optgroup> <optgroup label="Secret areas"> <option value="2F00">Bianco 3 secret</option> <option value="2E00">Bianco 6 secret</option> <option value="3000">Ricco 4 secret</option> <option value="2000">Gelato 1 secret</option> <option value="3200">Pinna 2 secret</option> <option value="2900">Pinna 6 secret</option> <option value="3300">Sirena 2 secret</option> <option value="2800">Sirena 4 secret</option> <option value="1F00">Noki 6 secret</option> <option value="2A00">Pianta 5 secret</option> </optgroup> <optgroup label="Sublevels"> <option value="3700">Petey Piranha fight (Bianco 2)</option> <option value="3B00">Gooper Blooper fight (Ricco 1)</option> <option value="1E00">Race course (Ricco 2)</option> <option value="2100">Sand bird (Gelato 4)</option> <option value="3A01">Mecha-Bowser fight (Pinna 1)</option> <option value="3A00">Rollercoaster (Pinna 8)</option> <option value="0E00">Casino Delfino (Sirena 4)</option> <option value="0E01">Casino Delfino (Sirena 5)</option> <option value="3800">King Boo fight (Sirena 5)</option> <option value="2C00">Bottle (Noki 3)</option> <option value="3900">Deep Sea of Mare (Noki 4)</option> <option value="1000">Deep Sea of Mare (Noki 8)</option> </optgroup> </select> <button type="button" class="route_remove">×</button> </li> </ul> </div> <div style="text-align:center"> <button id="route_clear" type="button">Clear list</button> <select id="route_presets"> <option value="" selected>Load a preset…</option> <option value="020002020203020404000406080008010802080308040805080605000501050205030502050603000301030203030304030503060205020606000601060206030604060506060900090109020903090409050906;3400">Any% usual route</option> <option value="020002020203020404000406080008010802080308040805080605000501050205030502050602050206060006010602060306040605060609000901090209030904090509060300030103020303030403050306;3400">Any% Ricco late</option> <option value="020002020203020404000401040204030404040504060500050105020503050405050506030003010302030303040305030602050206060006010602060306040605060609000901090209030904090509060800080108020803080408050806;3400">Any% No Major Skips</option> <option value="02000201020202030800080108020803080408050806080705000501050205030504050505060507030003010302030303040305030603070204020502060207060006010602060306040605060606070900090109020903090409050906090704000401040204030404040304050406;3400">All Episodes</option> <option value="02000201020202020800080108020803080408040804080508060807080705000501050105020503050405040505050505060507030003010301030203030303030403050305030603070203020402050205020502060207060006010601060206030603060306040605060606070900090109010901090209030904090509050906090704000400040004010402040304050404040304020406;3400">All Level Shines</option> <optgroup label="Individual Worlds"> <option value="020002020203020402050206">Bianco Hills</option> <option value="0300030103020303030403050306">Ricco Harbor</option> <option value="0400040104020403040404050406">Gelato Beach</option> <option value="050005010502050305020506">Pinna Park</option> <option value="0600060106020603060406050606">Sirena Beach</option> <option value="0900090109020903090409050906">Noki Bay</option> <option value="0800080108020803080408050806">Pianta Village</option> </optgroup> <optgroup label="All Shines IWs"> <option value="02000201020202020203020402050205020502060207">Bianco Hills</option> <option value="03000301030103020303030303040305030503060307">Ricco Harbor</option> <option value="04000406040404060401040504000400040204020403">Gelato Beach</option> <option value="05000501050105020503050405040505050505060507">Pinna Park</option> <option value="06000601060106020603060306030604060506060607">Sirena Beach</option> <option value="09000901090109020903090409050905090609060907">Noki Bay</option> <option value="08000801080208030804080408040805080608070807">Pianta Village</option> </optgroup> </select> </div> </div> </div> <div id="right" class="section"> <div id="descriptionbox" class="framed"> <h1>Super Mario Sunshine Practice Code Generator v2</h1> <p style="margin:0"><i id="lastupdate"></i></p> <br /> <p>This is a cheatfile generator for Super Mario Sunshine speedrun practice. A guide on how to use the generator and practice codes on your Wii can be found here: <a target="_blank" href="guide.html">Guide</a>. Visit the <a target="_blank" href="guide.html#3">troubleshooting section</a> if you encounter any issues.</p> <br /> <h4>Changelog:</h4> <div id="changelog"></div> <p style="margin:0;text-align:right"><i>Made by <a target="_blank" href="https://twitter.com/psychonauter">Psychonauter</a>, <a target="_blank" href="https://twitter.com/qbe_root">Noki Doki</a> & <a target="_blank" href="https://twitter.com/srlmilk">Milk</a></i></p> <hr /> <div id="smscommunity"> <a target="_blank" href="https://discord.gg/0SoktBcRDw8B1NJB" title="Sunshine Community Discord"><img src="img/discord_bubble.png" alt="Sunshine Community Discord" /></a> <a target="_blank" href="https://speedrun.com/sms" title="Sunshine Leaderboards"><img src="img/src_bubble.png" alt="Sunshine Leaderboards" /></a> <h4 style="display:inline;vertical-align:middle;margin:0px 10px">Sunshine Community</h4> <a target="_blank" href="https://twitter.com/SMSCommunity" title="Sunshine Community Twitter"><img src="img/twitter_bubble.png" alt="Sunshine Community Twitter" /></a> <a target="_blank" href="https://www.twitch.tv/SunshineCommunity" title="Sunshine Community Twitch"><img src="img/twitch_bubble.png" alt="Sunshine Community Twitch" /></a> </div> </div> </div> </div> <script language="javascript" src="gctGenerator.js"></script> </body> </html>