diff --git a/assets/js/selecting.js b/assets/js/selecting.js
index db6fc0fdb5..da992adc2f 100644
--- a/assets/js/selecting.js
+++ b/assets/js/selecting.js
@@ -1,3 +1,4 @@
+// CVer:NVer map for U/E/J regions
function sslothable(s, n) {
if
(
@@ -19,6 +20,8 @@ function sslothable(s, n) {
}
}
+// CVer:NVer map for KOR region
+// CHN/TWN isn't validated for now as those cannot exploit atm
function sslothablekor(s, n) {
if
(
@@ -39,6 +42,27 @@ function sslothablekor(s, n) {
}
}
+/*
+ Redirects page based on input from user.
+ Input:
+ - System version
+ - O3DS/N3DS
+
+ General exploits are as follows:
+ - 1.0 - 11.3
+ - Soundhax, compatible in all regions
+ - 11.4 - 11.13 with matching NVer for each version:
+ - SSLoth-Browser, doesn't work on cart-updated FW
+ - O3DS & 11.4 - 11.14 & any cart-updated FW between said version:
+ - safecerthax, compatible in all regions, O3DS only
+ - This way O3DS still gets an easy way to install something if browser isn't functional
+ - 11.15 - 11.16:
+ - Seedminer
+ - N3DS has a somewhat better page below
+ - N3DS & 11.16:
+ - super-skaterhax, compatible with 11.15 - 11.16 but browser itself doesn't work on 11.15
+ - This way N3DS users don't have to think too much about the slightly long Seedminer steps
+*/
function redirect() {
var major = document.getElementById("major");
var minor = document.getElementById("minor");
@@ -55,29 +79,38 @@ function redirect() {
else if (major.value == 0) {
document.getElementById("result_invalidVersion").style.display = "block";
}
- else { //only do things if major isnt 0, which would be invalid
- if (["U", "E", "J"].includes(region.value)) { // USA/EUR/JPN things
- if (major.value < 11 || minor.value < 4) { //soundhax works on all consoles for 1.0-11.3
+ // only do things if major isnt 0, which would be invalid
+ else {
+ // USA/EUR/JPN things
+ if (["U", "E", "J"].includes(region.value)) {
+ // soundhax works on all consoles for 1.0-11.3
+ if (major.value < 11 || minor.value < 4) {
window.location.href = "installing-boot9strap-(soundhax)";
}
- else if (sslothable(minor.value, nver.value)) { //check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ // check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ else if (sslothable(minor.value, nver.value)) {
window.location.href = "installing-boot9strap-(ssloth-browser)";
}
else if (minor.value < 15 && isO3DS) {
window.location.href = "installing-boot9strap-(safecerthax)";
}
+ // new browserhax for latest version
else if (isN3DS) {
- window.location.href = "homebrew-launcher-(super-skaterhax)"; //new browserhax for latest version
+ window.location.href = "homebrew-launcher-(super-skaterhax)";
}
- else { //seedminer does still work for the latest version on E/U/J/K/T/C, but can only be chained on E/U/J/K/T
+ // seedminer does still work for the latest version on E/U/J/K/T/C, but can only be chained on E/U/J/K/T
+ else {
window.location.href = "seedminer";
}
}
- else if (region.value === "K") { //korea stuff
- if (major.value < 11 || minor.value < 4) { //soundhax works on all consoles for 1.0-11.3
+ //korea stuff
+ else if (region.value === "K") {
+ // soundhax works on all consoles for 1.0-11.3
+ if (major.value < 11 || minor.value < 4) {
window.location.href = "installing-boot9strap-(soundhax)";
}
- else if (sslothablekor(minor.value, nver.value)) { //check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ // check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ else if (sslothablekor(minor.value, nver.value)) {
window.location.href = "installing-boot9strap-(ssloth-browser)";
}
else if (minor.value < 15 && isO3DS) {
@@ -86,17 +119,24 @@ function redirect() {
else if (isN3DS) {
window.location.href = "homebrew-launcher-(super-skaterhax)";
}
- else { //seedminer does still work for the latest version on E/U/J/K/T/C, but can only be chained on E/U/J/K/T
+ // seedminer does still work for the latest version on E/U/J/K/T/C, but can only be chained on E/U/J/K/T
+ else {
window.location.href = "seedminer";
}
}
- else if (region.value === "T") { //taiwan stuff
- if (major.value < 11 || minor.value < 4) { //soundhax works on all consoles for 1.0-11.3
+ //taiwan stuff
+ else if (region.value === "T") {
+ // soundhax works on all consoles for 1.0-11.3
+ if (major.value < 11 || minor.value < 4) {
window.location.href = "installing-boot9strap-(soundhax)";
}
- //else if (sslothable(minor.value, nver.value)) { //check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
- // window.location.href = "installing-boot9strap-(ssloth-browser)"; //OTHERAPP BROKEN FOR TWN/CHN 11.4+ ATM
- //}
+ // check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ // OTHERAPP BROKEN FOR TWN/CHN 11.4+ ATM
+ /*
+ else if (sslothable(minor.value, nver.value)) {
+ window.location.href = "installing-boot9strap-(ssloth-browser)";
+ }
+ */
else if (minor < 15 && isO3DS) {
window.location.href = "installing-boot9strap-(safecerthax)";
}
@@ -104,17 +144,25 @@ function redirect() {
window.location.href = "seedminer-(twn)";
}
}
- else if (region.value === "C") { //chn stuff
- if (major.value < 11 || minor.value < 4) { //soundhax works on all consoles for 1.0-11.3
+ // chn stuff
+ else if (region.value === "C") {
+ // soundhax works on all consoles for 1.0-11.3
+ if (major.value < 11 || minor.value < 4) {
window.location.href = "installing-boot9strap-(soundhax)";
}
- //else if (sslothable(minor.value, nver.value)) { //check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
- // window.location.href = "installing-boot9strap-(ssloth-browser)"; //OTHERAPP BROKEN FOR TWN/CHN 11.4+ ATM
- //}
+ // check for versions that are not cartupdated, cartupdated consoles cannot access the browser, see troubleshooting for solution
+ // OTHERAPP BROKEN FOR TWN/CHN 11.4+ ATM
+ /*
+ else if (sslothable(minor.value, nver.value)) {
+ window.location.href = "installing-boot9strap-(ssloth-browser)";
+ }
+ */
else if (minor < 15 && isO3DS) {
window.location.href = "installing-boot9strap-(safecerthax)";
}
- else { //seedminer does still work for the latest version on E/U/J/K/T/C, but can only be chained on E/U/J/K/T, so CHN cannot be modded atm without additional hardware
+ // seedminer itself works on CHN. But no exploit *chain* supports CHN
+ // so at this point there is no supported method
+ else {
document.getElementById("result_methodUnavailable").style.display = "block";
}
}
diff --git a/banner.js b/banner.js
deleted file mode 100644
index db3974c0c1..0000000000
--- a/banner.js
+++ /dev/null
@@ -1,19 +0,0 @@
-const fs = require("fs");
-const pkg = require("./package.json");
-const filename = "assets/js/main.min.js";
-const script = fs.readFileSync(filename);
-const padStart = str => ("0" + str).slice(-2);
-const dateObj = new Date();
-const date = `${dateObj.getFullYear()}-${padStart(
- dateObj.getMonth() + 1
-)}-${padStart(dateObj.getDate())}`;
-const banner = `/*!
- * Minimal Mistakes Jekyll Theme ${pkg.version} by ${pkg.author}
- * Copyright 2013-${dateObj.getFullYear()} Michael Rose - mademistakes.com | @mmistakes
- * Licensed under ${pkg.license}
- */
-`;
-
-if (script.slice(0, 3) != "/**") {
- fs.writeFileSync(filename, banner + script);
-}
diff --git a/feed.xml b/feed.xml
index 5c15ce6179..6ed2d5bd97 100644
--- a/feed.xml
+++ b/feed.xml
@@ -1 +1 @@
-Jekyll2023-04-11T17:11:07+00:00https://3ds.hacks.guide/feed.xml3DS Hacks GuideA complete guide to 3DS custom firmwareNintendo Homebrew
\ No newline at end of file
+Jekyll2023-04-12T23:39:37+00:00https://3ds.hacks.guide/feed.xml3DS Hacks GuideA complete guide to 3DS custom firmwareNintendo Homebrew
\ No newline at end of file