diff --git a/changelog.html b/changelog.html index 958b5d5..0347ed0 100644 --- a/changelog.html +++ b/changelog.html @@ -1,18 +1,16 @@ - - - - - - Changelog - - - -
-
-

Detailed Changelog

-

Main Page: https://bitpatty.github.io/gctGenerator/

+ + + + + Changelog + + +
+
+

Detailed Changelog

+

Main Page: https://bitpatty.github.io/gctGenerator/


Jan 8, 2018

Site changes

@@ -26,8 +24,8 @@

Dec 19, 2017

Updated 'Fast Any%'

Added FMV Skips except for Pinna 1.

-

Dec 05, 2017

-

Site Changes

+

Dec 05, 2017

+

Site Changes

Added option to download codes formatted for the Gecko Cheat Manager.

Nov 29, 2017

Updated 'Level Select' for PAL

@@ -48,45 +46,41 @@

Seperated these two codes again since they don't depend on each other.

Nov 06, 2017

Updated Ingame Timers and Level Select

-

The Original Ingame Timer has been marked as deprecated. You can still find it on the bottom of the codelist though if you still want to use it. Instead, there are now two other timers: -
-

    -
  • Shine Touch Timer: Starts on the last black frame of the loading screen and ends when you touch the shine.
  • -
  • Shine Get Timer: Starts on the last black frame of the loading screen and ends when the Shine Get animation starts (similiar to the x-cam timer of SM64).
  • -
-

+

The Original Ingame Timer has been marked as deprecated. You can still find it on the bottom of the codelist though if you still want to use it. Instead, there are now two other timers:

+
+
    +
  • Shine Touch Timer: Starts on the last black frame of the loading screen and ends when you touch the shine.
  • +
  • Shine Get Timer: Starts on the last black frame of the loading screen and ends when the Shine Get animation starts (similiar to the x-cam timer of SM64).
  • +

Since the Shine Get timer contained a way better Level Select, the Level Select code has been replaced with the one from the timer. It includes the most recent fixes and also has some maintenance advantages.


-

Level Select changes: -

    -
  • Mashing A during loading screens doesn't affect your level selection anymore.
  • -
  • Pinna game resets have been fixed.
  • -
  • Level Names in the intro have been fixed (shoutouts to Noki Doki).
  • -
  • Sirena 5 now loads the right casino.
  • -
  • Reloading Sirena does no longer respawn you in the Hotel. Reason: You can move earlier than usual if you do that, making it too inaccurate for practice.
  • -
-

-

Timer changes (compared to original timer): -

    -
  • Changed timing (see above).
  • -
  • Resets on death.
  • -
  • Resets when using Shine Select.
  • -
  • Only uses existing timers for Piantissimo, Sirena/Pianta 6 and Ricco 2 underground.
  • -
  • Fixed Pinna 8 HUD.
  • -
-

-

Known bugs: -

    -
  • Can't reset Pinna 8 properly after finishing the rollercoaster. Use the cannon to reenter or reset the game instead.
  • -
  • Box game timer doesn't work properly.
  • -
-

+

Level Select changes:

+
    +
  • Mashing A during loading screens doesn't affect your level selection anymore.
  • +
  • Pinna game resets have been fixed.
  • +
  • Level Names in the intro have been fixed (shoutouts to Noki Doki).
  • +
  • Sirena 5 now loads the right casino.
  • +
  • Reloading Sirena does no longer respawn you in the Hotel. Reason: You can move earlier than usual if you do that, making it too inaccurate for practice.
  • +
+

Timer changes (compared to original timer):

+
    +
  • Changed timing (see above).
  • +
  • Resets on death.
  • +
  • Resets when using Shine Select.
  • +
  • Only uses existing timers for Piantissimo, Sirena/Pianta 6 and Ricco 2 underground.
  • +
  • Fixed Pinna 8 HUD.
  • +
+

Known bugs:

+
    +
  • Can't reset Pinna 8 properly after finishing the rollercoaster. Use the cannon to reenter or reset the game instead.
  • +
  • Box game timer doesn't work properly.
  • +

Added 'Free Pause'

'Free Pause' replaces 'Enable Pause Mid-Air' and 'Enable Exit Area Everywhere'. It now also allows you to pause during cutscenes.

Site Changes

    -
  • Added detailed changelog.
  • -
  • Updated guide with more information about the maximum code size.
  • +
  • Added detailed changelog.
  • +
  • Updated guide with more information about the maximum code size.

Nov 04, 2017

Changed Shine Get Timer

@@ -100,22 +94,28 @@

Oct 28, 2017

Updated 'DPad Functions'

New functions have been added to the DPad Functions:

-

-

    -
  • X+D-Pad left: No FLUDD in secrets
  • -
  • X+D-Pad right: Always FLUDD in secrets
  • -
  • X+D-Pad up: Unlock Yoshi in stages
  • -
  • X+D-Pad down: Defauld FLUDD behaviour for secrets
  • -
-

+
    +
  • X+D-Pad left: No FLUDD in secrets
  • +
  • X+D-Pad right: Always FLUDD in secrets
  • +
  • X+D-Pad up: Unlock Yoshi in stages
  • +
  • X+D-Pad down: Defauld FLUDD behaviour for secrets
  • +

Oct 26, 2017

Added 'Enable Pause Mid-Air'

Allows you to pause mid-air.

Oct 24, 2017

-

Added 'Shine Outfit'

Always wear glasses and the shirt.

Oct 15, 2017

Site Changes

Fixed the download button not working for Firefox.

Oct 14, 2017

Added 'Fast Any%' for JP and PAL

-

Oct 11, 2017

Added 'Stage Randomizer' for NTSC-U

+

Added 'Shine Outfit'

+

Always wear glasses and the shirt.

+

Oct 15, 2017

+

Site Changes

+

Fixed the download button not working for Firefox.

+

Oct 14, 2017

+

Added 'Fast Any%' for JP and PAL

+

-

+

Oct 11, 2017

+

Added 'Stage Randomizer' for NTSC-U

Experimental! Loads a random stage after exiting of finishing a level.

-
-
- - - +
+
+ + \ No newline at end of file diff --git a/changelog.xml b/changelog.xml index 8438be6..5dff845 100644 --- a/changelog.xml +++ b/changelog.xml @@ -1,11 +1,11 @@ - Jan 8, 2018 + Jan 08, 2018 Added guide for installing IOS58. - Jan 1, 2018 + Jan 01, 2018 Fixed 'D-Pad Functions' not removing dialogue properly. @@ -29,23 +29,23 @@ Fixed 'Free Pause' compatibility with 'Shine Get Timer'. - Nov 9, 2017 + Nov 09, 2017 Added 'Download for Dolphin' button. - Nov 8, 2017 + Nov 08, 2017 Added 'Fast 79 Shines' for NTSC-U. - Nov 7, 2017 + Nov 07, 2017 Seperated 'Free Pause' and 'Exit Area everywhere'. - Nov 6, 2017 + Nov 06, 2017 Updated 'Level Select'. Added 'Shine Touch Timer'. Marked original IGT as deprecated. Replaced 'Exit Area Everywhere' and 'Pause Mid-Air' with 'Free Pause'. - Nov 4, 2017 + Nov 04, 2017 Fixed 'Shine Get Timer' stopping in wrong cutscenes. diff --git a/codes/GMSE01.xml b/codes/GMSE01.xml index 81f217f..efa249e 100644 --- a/codes/GMSE01.xml +++ b/codes/GMSE01.xml @@ -4,7 +4,7 @@ DPad Functions Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57 2.3 -
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
+
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
Jan 1, 2018 2440E10C 80000000 @@ -617,7 +617,8 @@ 60000000 00000000 - + Stage Randomizer (Experimental) Noki Doki diff --git a/codes/GMSJ01.xml b/codes/GMSJ01.xml index 0fc0d8b..7dbbc85 100644 --- a/codes/GMSJ01.xml +++ b/codes/GMSJ01.xml @@ -4,7 +4,7 @@ DPad Functions Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57 2.3 -
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
+
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
Jan 1, 2018 2440A39C 80000000 diff --git a/codes/GMSP01.xml b/codes/GMSP01.xml index 6e52d92..88138ae 100644 --- a/codes/GMSP01.xml +++ b/codes/GMSP01.xml @@ -4,7 +4,7 @@ DPad Functions Psychonauter, Noki Doki, Dan Salvato, Link Master, James0x57 2.3 -
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
+
CombinationResult
D-Pad leftSave Mario sposition
D-Pad rightLoad Marios Position
D-Pad upReplace all dialog with a single "!!!" line
D-Pad downRestore dialog boxes
B+D-Pad leftLock rocket nozzle
B+D-Pad rightLock turbo nozzle
B+D-Pad upLock hover nozzle
B+D-Pad downRelease nozzle lock
X+D-Pad leftNo FLUDD in secrets
X+D-Pad rightFLUDD in all secrets
X+D-Pad upUnlock Yoshi
X+D-Pad downFLUDD in completed secrets (default)
]]>
Jan 1, 2017 244057D4 80000000 diff --git a/gctGenerator.js b/gctGenerator.js index c142ff0..7c21d6b 100644 --- a/gctGenerator.js +++ b/gctGenerator.js @@ -1,210 +1,191 @@ if (navigator.userAgent.toLowerCase().indexOf("firefox") > -1) { - HTMLElement.prototype.click = function() { - var evt = this.ownerDocument.createEvent("MouseEvents"); - evt.initMouseEvent("click", true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null); - this.dispatchEvent(evt); - } + HTMLElement.prototype.click = function() { + var evt = this.ownerDocument.createEvent("MouseEvents"); + evt.initMouseEvent("click", true, true, this.ownerDocument.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null); + this.dispatchEvent(evt); + } } document.getElementById("checkList").addEventListener("click", function(ev) { - if (ev.target && ev.target.nodeName == "LI") { - ev.target.classList.toggle("checked"); - } + if (ev.target && ev.target.nodeName == "LI") { + ev.target.classList.toggle("checked"); + } }); function parseXML(name) { - var xml = new XMLHttpRequest(); - var file = "codes/" + name + ".xml"; - xml.onreadystatechange = function() { - if (this.status == 200 && this.readyState == 4) { - var xmlData = xml.responseXML; - xmlData = (new DOMParser()).parseFromString(xml.responseText, "text/xml"); - xmlData = xmlData.getElementsByTagName("code"); + var xml = new XMLHttpRequest(); + var file = "codes/" + name + ".xml"; + xml.onreadystatechange = function() { + if (this.status == 200 && this.readyState == 4) { + var xmlData = xml.responseXML; + xmlData = (new DOMParser()).parseFromString(xml.responseText, "text/xml"); + xmlData = xmlData.getElementsByTagName("code"); - var i = 0; - for (; i < xmlData.length; i++) { - var li = document.createElement("li"); - var desc = xmlData[i].getElementsByTagName("title")[0].textContent; - var t = document.createTextNode(desc); - li.appendChild(t); - li.setAttribute("data-codeName", xmlData[i].getElementsByTagName("title")[0].textContent); - li.setAttribute("data-codeAuthor", xmlData[i].getElementsByTagName("author")[0].textContent); - li.setAttribute("data-codeDesc", xmlData[i].getElementsByTagName("description")[0].textContent); - li.setAttribute("data-codeVersion", xmlData[i].getElementsByTagName("version")[0].textContent); - li.setAttribute("data-codeDate", xmlData[i].getElementsByTagName("date")[0].textContent); - li.setAttribute("data-codeSrc", xmlData[i].getElementsByTagName("source")[0].textContent.replace(/[\s\n\r\t]+/gm, "")); - li.setAttribute("onmouseover", "updateDescription(this)"); - document.getElementById("checkList").appendChild(li); - } + var i = 0; + for (; i < xmlData.length; i++) { + var li = document.createElement("li"); + var desc = xmlData[i].getElementsByTagName("title")[0].textContent; + var t = document.createTextNode(desc); + li.appendChild(t); + li.setAttribute("data-codename", xmlData[i].getElementsByTagName("title")[0].textContent); + li.setAttribute("data-codeauthor", xmlData[i].getElementsByTagName("author")[0].textContent); + li.setAttribute("data-codedesc", xmlData[i].getElementsByTagName("description")[0].textContent); + li.setAttribute("data-codeversion", xmlData[i].getElementsByTagName("version")[0].textContent); + li.setAttribute("data-codedate", xmlData[i].getElementsByTagName("date")[0].textContent); + li.setAttribute("data-codesrc", xmlData[i].getElementsByTagName("source")[0].textContent.replace(/[\s\n\r\t]+/gm, "")); + li.setAttribute("onmouseover", "updateDescription(this)"); + document.getElementById("checkList").appendChild(li); + } - button = document.getElementById("downloadButton"); - button.style.visibility = "visible"; - button.disabled = false; - button = document.getElementById("dolphinDownloadButton"); - button.style.visibility = "visible"; - button.disabled = false; - button = document.getElementById("gcmDownloadButton"); - button.style.visibility = "visible"; - button.disabled = false; - document.getElementById("gameID").disabled = false; - } - }; + button = document.getElementById("downloadButton"); + button.style.visibility = "visible"; + button.disabled = false; + button = document.getElementById("dolphinDownloadButton"); + button.style.visibility = "visible"; + button.disabled = false; + button = document.getElementById("gcmDownloadButton"); + button.style.visibility = "visible"; + button.disabled = false; + document.getElementById("gameID").disabled = false; + } + }; - xml.open("GET", file); - xml.send(); + xml.open("GET", file); + xml.send(); } -function downloadGCT(data, filename) { - var rawData = new Uint8Array(data.length / 2); +function downloadFile(data, filename) { - for (var x = 0; x < rawData.length; x++) { - rawData[x] = parseInt(data.substr(x * 2, 2), 16); - } + var file = new Blob([data], { + type: "application/octet-stream" + }); - var file = new Blob([rawData], { - type: "application/octet-stream" - }); - - if (window.navigator.msSaveOrOpenBlob) - window.navigator.msSaveOrOpenBlob(file, filename); - else { - var a = document.createElement("a"), - url = window.URL.createObjectURL(file); - a.href = url; - a.download = filename; - a.click(); - setTimeout(function() { - window.URL.revokeObjectURL(url); - }, 500); - } + if (window.navigator.msSaveOrOpenBlob) + window.navigator.msSaveOrOpenBlob(file, filename); + else { + var a = document.createElement("a"), + url = window.URL.createObjectURL(file); + a.href = url; + a.download = filename; + a.click(); + setTimeout(function() { + window.URL.revokeObjectURL(url); + }, 500); + } } function generateGCT() { - if (document.getElementById("gameID").value === "Choose Version") { - alert("Select the game version!"); - return; + if (document.getElementById("gameID").value === "Choose Version") { + alert("Select the game version!"); + return; + } + var data = "00D0C0DE00D0C0DE"; + var codeList = document.getElementById("checkList").getElementsByTagName("li"); + var valueSelected = false; + for (var i = 0; i < codeList.length; i++) { + if (codeList[i].className === "checked") { + data += codeList[i].getAttribute("data-codeSrc"); + valueSelected = true; } - var data = "00D0C0DE00D0C0DE"; - var codeList = document.getElementById("checkList").getElementsByTagName("li"); - var valueSelected = false; - for (var i = 0; i < codeList.length; i++) { - if (codeList[i].className === "checked") { - data += codeList[i].getAttribute("data-codeSrc"); - valueSelected = true; - } + } + + if (valueSelected) { + data += "FF00000000000000"; + var rawData = new Uint8Array(data.length / 2); + + for (var x = 0; x < rawData.length; x++) { + rawData[x] = parseInt(data.substr(x * 2, 2), 16); } - if (valueSelected) { - data += "FF00000000000000"; - - downloadGCT(data, document.getElementById("gameID").value + ".gct"); - } else { - alert("No cheat(s) selected!"); - } -} - -function downloadTXT(data, filename) { - var file = new Blob([data], { - type: "application/octet-stream" - }); - - if (window.navigator.msSaveOrOpenBlob) - window.navigator.msSaveOrOpenBlob(file, filename); - else { - var a = document.createElement("a"), - url = window.URL.createObjectURL(file); - a.href = url; - a.download = filename; - a.click(); - setTimeout(function() { - window.URL.revokeObjectURL(url); - }, 500); - } + downloadFile(rawData, document.getElementById("gameID").value + ".gct"); + } else { + alert("No cheat(s) selected!"); + } } function generateTXT(s) { - if (document.getElementById("gameID").value === "Choose Version") { - alert("Select the game version!"); - return; - } - if (s.id === "dolphinDownloadButton") var data = "Paste the following on top of your games .ini file:\r\n[Gecko]"; - else var data = document.getElementById("gameID").value + "\r\nSuper Mario Sunshine"; - var codeList = document.getElementById("checkList").getElementsByTagName("li"); - var valueSelected = false; - for (var i = 0; i < codeList.length; i++) { - if (codeList[i].className === "checked") { - data += "\r\n"; - if (s.id === "gcmDownloadButton") data += "\r\n"; - else data += "$"; - data += codeList[i].getAttribute("data-codeName") + " (" + codeList[i].getAttribute("data-codeDate") + ") [" + codeList[i].getAttribute("data-codeAuthor") + "]\r\n"; - data += (codeList[i].getAttribute("data-codeSrc").match(/.{8}/g).join(" ")).replace(/(.{17})./g, "$1\r\n"); - valueSelected = true; - } + if (document.getElementById("gameID").value === "Choose Version") { + alert("Select the game version!"); + return; + } + if (s.id === "dolphinDownloadButton") var data = "Paste the following on top of your games .ini file:\r\n[Gecko]"; + else var data = document.getElementById("gameID").value + "\r\nSuper Mario Sunshine"; + var codeList = document.getElementById("checkList").getElementsByTagName("li"); + var valueSelected = false; + for (var i = 0; i < codeList.length; i++) { + if (codeList[i].className === "checked") { + data += "\r\n"; + if (s.id === "gcmDownloadButton") data += "\r\n"; + else data += "$"; + data += codeList[i].getAttribute("data-codeName") + " (" + codeList[i].getAttribute("data-codeDate") + ") [" + codeList[i].getAttribute("data-codeAuthor") + "]\r\n"; + data += (codeList[i].getAttribute("data-codeSrc").match(/.{8}/g).join(" ")).replace(/(.{17})./g, "$1\r\n"); + valueSelected = true; } + } - if (valueSelected) { - downloadTXT(data, document.getElementById("gameID").value + ".txt"); - } else { - alert("No cheat(s) selected!"); - } + if (valueSelected) { + downloadFile(data, document.getElementById("gameID").value + ".txt"); + } else { + alert("No cheat(s) selected!"); + } } function updateCodelist() { - resetDescription(); - document.getElementById("gameID").disabled = true; - button = document.getElementById("downloadButton"); - button.style.visibility = "hidden"; - button.disabled = true; - button = document.getElementById("dolphinDownloadButton"); - button.style.visibility = "hidden"; - button.disabled = true; - button = document.getElementById("gcmDownloadButton"); - button.style.visibility = "hidden"; - button.disabled = true; - document.getElementById("checkList").innerHTML = ""; - var gameVersion = document.getElementById("gameID").value; - parseXML(gameVersion); + resetDescription(); + document.getElementById("gameID").disabled = true; + button = document.getElementById("downloadButton"); + button.style.visibility = "hidden"; + button.disabled = true; + button = document.getElementById("dolphinDownloadButton"); + button.style.visibility = "hidden"; + button.disabled = true; + button = document.getElementById("gcmDownloadButton"); + button.style.visibility = "hidden"; + button.disabled = true; + document.getElementById("checkList").innerHTML = ""; + var gameVersion = document.getElementById("gameID").value; + parseXML(gameVersion); } function updateDescription(s) { - document.getElementById("descriptionBox").innerHTML = "

" + - s.getAttribute("data-codeName") + "

Author(s): " + - s.getAttribute("data-codeAuthor") + "
Version: " + - s.getAttribute("data-codeVersion") + " (" + - s.getAttribute("data-codeDate") + ")

" + "

Description:
" + - s.getAttribute("data-codeDesc") + "

"; + document.getElementById("descriptionBox").innerHTML = "

" + + s.getAttribute("data-codeName") + "

Author(s): " + + s.getAttribute("data-codeAuthor") + "

Version: " + + s.getAttribute("data-codeVersion") + " (" + + s.getAttribute("data-codeDate") + ")

" + "

Description:

" + + s.getAttribute("data-codeDesc") + "

"; } function setButtonDescription(s) { - if (s.id === "downloadButton") - document.getElementById("descriptionBox").innerHTML = "

Download GCT

Download the cheats in the GCT format for use with Nintendont.

"; - else if (s.id === "dolphinDownloadButton") - document.getElementById("descriptionBox").innerHTML = "

Download for Dolphin

Download a textfile containing the formatted codes for use with Dolphin. Copy the contents of the file on top of your games .ini file.

"; - else - document.getElementById("descriptionBox").innerHTML = "

Download for Gecko Cheat Manager

Download the cheats in a textfile formatted for use with the Gecko Cheat Manager. Place the txt file in SD:/txtcodes/.

A zip archive containing pregenerated txt files with all available codes on this site can be downloaded here."; + if (s.id === "downloadButton") + document.getElementById("descriptionBox").innerHTML = "

Download GCT

Download the cheats in the GCT format for use with Nintendont.

"; + else if (s.id === "dolphinDownloadButton") + document.getElementById("descriptionBox").innerHTML = "

Download for Dolphin

Download a textfile containing the formatted codes for use with Dolphin. Copy the contents of the file on top of your games .ini file.

"; + else + document.getElementById("descriptionBox").innerHTML = "

Download for Gecko Cheat Manager

Download the cheats in a textfile formatted for use with the Gecko Cheat Manager. Place the txt file in SD:/txtcodes/.

A zip archive containing pregenerated txt files with all available codes on this site can be downloaded here."; } function resetDescription() { - document.getElementById("descriptionBox").innerHTML = "

Select your codes from the list...

"; + document.getElementById("descriptionBox").innerHTML = "

Select your codes from the list...

"; } function updateChangelog() { - var xml = new XMLHttpRequest(); - var file = "changelog.xml"; - xml.onload = function() { - if (this.status == 200 && this.responseXML != null) { - var changelogData = xml.responseXML; - changelogData = (new DOMParser()).parseFromString(xml.responseText, "text/xml"); - changelogData = changelogData.getElementsByTagName("update"); + var xml = new XMLHttpRequest(); + var file = "changelog.xml"; + xml.onload = function() { + if (this.status == 200 && this.responseXML != null) { + var changelogData = xml.responseXML; + changelogData = (new DOMParser()).parseFromString(xml.responseText, "text/xml"); + changelogData = changelogData.getElementsByTagName("update"); - for (var i = 0; i < changelogData.length && i < 5; i++) { - document.getElementById("changelog").innerHTML += "" + changelogData[i].getElementsByTagName("date")[0].textContent + ": " + changelogData[i].getElementsByTagName("change")[0].textContent + "
"; - } + for (var i = 0; i < changelogData.length && i < 5; i++) { + document.getElementById("changelog").innerHTML += "

" + changelogData[i].getElementsByTagName("date")[0].textContent + ": " + changelogData[i].getElementsByTagName("change")[0].textContent + "

"; + } - document.getElementById("changelog").innerHTML += "more ..."; - }; - } - xml.open("GET", file); - xml.send(); + document.getElementById("changelog").innerHTML += "more ..."; + }; + } + xml.open("GET", file); + xml.send(); } \ No newline at end of file diff --git a/guide.html b/guide.html index f88c74f..d9b309b 100644 --- a/guide.html +++ b/guide.html @@ -7,29 +7,29 @@ Guide -
+
-

How to install and use practice codes

-

This page is a simple guide to explain the recommended way to install practice codes on your Nintendo Wii.

+

How to install and use practice codes

+

This page is a simple guide to explain the recommended way to install practice codes on your Nintendo Wii.


1. Preparing your Wii

1.1 Install Homebrew

-

First of all you're gonna have to install Homebrew on your Wii. Click this link for a detailed guide on how to get Homebrew on your Wii. Make sure your SD card is formatted to FAT32!

+

First of all you're gonna have to install Homebrew on your Wii. Click this link for a detailed guide on how to get Homebrew on your Wii. Make sure your SD card is formatted to FAT32!


1.2 Install the necessary applications

-

Using Nintendont is the recommended way to use practice codes. Codes available on this site have been tested with Nintendont v4.434, which you can download directly from this site by clicking this link. To get the most recent build click this link.

-

Unpack the archive and place the Nintendont folder with all of its contents in the apps folder of your SD card. If there is no apps folder create one in the root of your SD card.

+

Using Nintendont is the recommended way to use practice codes. Codes available on this site have been tested with Nintendont v4.434, which you can download directly from this site by clicking this link. To get the most recent build click this link.

+

Unpack the archive and place the Nintendont folder with all of its contents in the "apps" folder of your SD card. If there is no "apps" folder create one in the root of your SD card.


2. Install and use the cheatfile

2.1 Generate the file

-

Visit the main site and select your game version from the dropdown menu. Then select all the cheats you want to have enabled from the list and click "Download". The name of the file you downloaded should be "GMSX01.gct" with X being E, P or J depending on the version you selected.

+

Visit the main site and select your game version from the dropdown menu. Then select all the cheats you want to have enabled from the list and click "Download". The name of the file you downloaded should be "GMSX01.gct" with X being E, P or J depending on the version you selected.


2.2 Copy the file onto your SD card

Create a codes folder in the root of your SD card if there is none. Then copy the GCT file you just downloaded into that folder.


2.3 Use the codes

-

Open your Homebrew channel and from there launch Nintendont. Select SD and then press B on your Gamecube controller to see the settings. In your settings, make sure that "Cheats" are "On". You can switch it on/off by pressing A on your controller. (See image below)

-

Nintendont

+

Open your Homebrew channel and from there launch Nintendont. Select SD and then press B on your Gamecube controller to see the settings. In your settings, make sure that "Cheats" are "On". You can switch it on/off by pressing A on your controller. (See image below)

+

Nintendont

Press B again to return to the game list and launch your game. And with that you're done already.


3. Troubleshooting

@@ -58,4 +58,4 @@
- + \ No newline at end of file diff --git a/img/discord.png b/img/discord.png deleted file mode 100644 index c6a9542..0000000 Binary files a/img/discord.png and /dev/null differ diff --git a/img/discord_bubble.png b/img/discord_bubble.png new file mode 100644 index 0000000..60cd9f0 Binary files /dev/null and b/img/discord_bubble.png differ diff --git a/img/gdq.png b/img/gdq.png index aa3dc77..b006b16 100644 Binary files a/img/gdq.png and b/img/gdq.png differ diff --git a/img/src_bubble.png b/img/src_bubble.png new file mode 100644 index 0000000..0e52c9e Binary files /dev/null and b/img/src_bubble.png differ diff --git a/img/twitch_bubble.png b/img/twitch_bubble.png new file mode 100644 index 0000000..188edca Binary files /dev/null and b/img/twitch_bubble.png differ diff --git a/img/twitter_bubble.png b/img/twitter_bubble.png new file mode 100644 index 0000000..8c9cc29 Binary files /dev/null and b/img/twitter_bubble.png differ diff --git a/index.html b/index.html index 647b9c6..d93c405 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ SMS GCT Generator -
+