// ==UserScript==
// @name Melon Hub (bloxd.io)
// @namespace https://github.com/OfficiallyMelon/Melon-Hub
// @version 2025-01-23
// @description like steroids for bloxd.io (shit release, minimum features, no themes/settings yet.)
// @license MIT
// @author melon
// @match https://bloxd.io*
// @icon https://bloxd.io*
// @grant GM_getValue
// @grant GM_setValue
// @grant unsafeWindow
// @run-at document-start
// ==/UserScript==
(() => {
"use strict";
var e, t, n, o = {
coordinates: [null, null, null],
methods: {},
CurrentlyInjected: !1,
freecamPosition: [0, 0, 0]
};
t = function() {
for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
var n = !1;
try {
void 0 !== e[2].swingDuration && (n = !0)
} catch (e) {}
var i = !1;
try {
void 0 !== e[1].__id && (i = !0)
} catch (e) {}
n && i && 4 === e.length && 200 === e[2].swingDuration && 1 === e[1].__id && (o.hookedObject = e[0], console.log("Injection Completed"), setTimeout((function() {
o.babylonEngine = window.BABYLON, o.noaInstance = o.hookedObject.heldItem.noa, console.log("Hooked Noa: ", o.noaInstance), o.CurrentlyInjected = !0, console.log("Currently Injected: ", o.CurrentlyInjected), o.genericPlayerState = o.noaInstance.ents._storage.genericLifeForm.hash[o.noaInstance.playerEntity]
}), 1))
}, n = (e = Object)["assign"], e.assign = new Proxy(n, {
apply: function(e, n, o) {
return t.apply(void 0, o), Reflect.apply(e, n, o)
}
});
var i = new(function() {
function e() {}
return e.prototype.simulateLeftClick = function(e) {
var t = new MouseEvent("mousedown", {
button: 0,
bubbles: !0,
cancelable: !0
});
e.dispatchEvent(t);
var n = new MouseEvent("mouseup", {
button: 0,
bubbles: !0,
cancelable: !0
});
e.dispatchEvent(n)
}, e.prototype.ChangeCrouchSpeed = function(e) {
o.noaInstance.serverSettings.crouchingSpeed = e
}, e.prototype.ChangeWalkSpeed = function(e) {
o.noaInstance.serverSettings.walkingSpeed = e
}, e.prototype.InstantRespawn = function() {
var e;
o.noaInstance && (o.noaInstance.serverSettings.secsToRespawn = 0, null === (e = document.querySelector(".NewButton.BlueButton.RespawnButton")) || void 0 === e || e.click())
}, e.prototype.removeAllCookies = function() {
for (var e = document.cookie.split(";"), t = 0; t < e.length; t++) {
var n = e[t],
o = n.indexOf("="),
i = o > -1 ? n.substr(0, o) : n;
document.cookie = i + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT;path=/"
}
}, e
}()),
s = [{
type: "Combat",
title: "Kill Aura",
desc: "Detects and attacks nearby entities (BROKEN)",
pertick: function(e) {}
}, {
type: "Combat",
title: "Auto Clicker",
desc: "Automatically clicks for you",
pertick: function() {
if (o.CurrentlyInjected && o.noaInstance) {
var e = document.querySelector("#noa-canvas");
e && (e.dispatchEvent(new MouseEvent("mousedown", {
button: 0,
bubbles: !0,
cancelable: !0
})), e.dispatchEvent(new MouseEvent("mouseup", {
button: 0,
bubbles: !0,
cancelable: !0
})))
}
}
}, {
type: "Combat",
title: "Anti Shake",
desc: "Disables camera shake on hit",
pertick: function(e) {
e && o.CurrentlyInjected && o.noaInstance && (o.noaInstance.entities.getState(o.noaInstance.playerEntity, "cameraShake").shakePower = 0)
}
}, {
type: "Player",
title: "Scaffold",
desc: "Automatically places blocks under you. (BROKEN)",
pertick: function() {}
}, {
type: "Player",
title: "Instant Respawn",
desc: "Instantly respawns you when you die.",
pertick: function() {
o.CurrentlyInjected && o.noaInstance && i.InstantRespawn()
}
}, {
type: "Player",
title: "Account Gen",
desc: "Generates accounts for you to use. (Requires Refresh)",
pertick: function() {
i.removeAllCookies(), location.reload()
}
}, {
type: "Movement",
title: "Auto Sprint",
desc: "Automatically sprints when moving.",
pertick: function() {
o.CurrentlyInjected && o.noaInstance && i.ChangeWalkSpeed(o.noaInstance.serverSettings.runningSpeed)
}
}, {
type: "Movement",
title: "Fast Crouch",
desc: "Increase crouching speed.",
pertick: function(e) {
e ? o.CurrentlyInjected && o.noaInstance && i.ChangeCrouchSpeed(o.noaInstance.serverSettings.runningSpeed) : o.CurrentlyInjected && o.noaInstance && i.ChangeCrouchSpeed(2)
}
}, {
type: "Movement",
title: "Auto Speed",
desc: "Increase walking speed.",
pertick: function(e) {
e ? o.CurrentlyInjected && o.noaInstance && i.ChangeWalkSpeed(7.4) : o.CurrentlyInjected && o.noaInstance && i.ChangeWalkSpeed(4.5)
}
}, {
type: "Movement",
title: "Infinite Jump",
desc: "Jump infinitely. (only works going up blocks)",
pertick: function(e) {
e ? o.CurrentlyInjected && o.noaInstance && (o.noaInstance.serverSettings.airJumpCount = 1 / 0) : o.CurrentlyInjected && o.noaInstance && (o.noaInstance.serverSettings.airJumpCount = 0)
}
}, {
type: "Settings",
title: "Soon",
desc: "Coming soon",
pertick: function() {}
}, {
type: "Themes",
title: "Default Theme",
desc: "The default theme for Melon Hub",
pertick: function() {}
}],
l = document.createElement("link");
l.rel = "stylesheet", l.href = "https://fonts.googleapis.com/css2?family=Gabarito:wght@400;500&display=swap";
var r = document.createElement("div");
r.style.cssText = "position:fixed;top:10px;right:10px;width:697.5px;height:448.5px;background-color:transparent;border-radius:10px;overflow:hidden;z-index:2147483646";
var a = document.createElement("img");
a.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/RightAboveGradient.png?raw=true", a.style.cssText = "width:697.5px;height:448.5px;position:absolute;top:0;left:0;z-index:2147483650";
var c = document.createElement("img");
c.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/Right.png?raw=true", c.style.cssText = "width:697.5px;height:448.5px", c.style.position = "relative";
var p = document.createElement("img");
p.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/MelonBL.png?raw=true", p.style.cssText = "position:absolute;bottom:0;left:0;width:198px;height:148.5px;z-index:2147483649";
var u = document.createElement("img");
u.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/MelonTR.png?raw=true", u.style.cssText = "position:absolute;top:0;right:0;width:183px;height:150px;z-index:2147483648";
var d = document.createElement("img");
d.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/MelonBR.png?raw=true", d.style.cssText = "position:absolute;bottom:0;right:0;width:217.5px;height:217.5px;z-index:2147483648";
var h = document.createElement("img");
h.src = "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/Left.png?raw=true", h.style.cssText = "position:fixed;top:10px;right:495px;width:217.5px;height:448.5px;z-index:2147483646";
var f = document.createElement("div");
f.innerText = "Melon Hub", f.style.cssText = "position:absolute; top: 20px; left: 34px; font-family: Inter, sans-serif; font-size: 22px; font-weight: 500; color: white; z-index: 2147483647;";
var b = document.createElement("div");
b.innerText = "1.0", b.style.cssText = "position:absolute; top: 20px; left: 145px; font-family: Inter, sans-serif; font-size: 14px; font-weight: 300; color: white; z-index: 2147483647;";
var m = document.createElement("div");
m.style.cssText = "position:absolute;top:60px;left:-25px;width:217.5px;height:448.5px;z-index:2147483651;";
var g = document.createElement("div");
g.id = "rightButtonContainer", g.style.cssText = "position: absolute; top: 70px; right: 70px; width: 370px; height: 380px; z-index: 2147483649; overflow-y: auto; overflow-x: hidden; padding-right: 10px; box-sizing: border-box;", document.head.appendChild(l), r.appendChild(a), r.appendChild(c), r.appendChild(p), r.appendChild(u), r.appendChild(d), r.appendChild(h), r.appendChild(f), r.appendChild(b), r.appendChild(m), r.appendChild(g), document.body.appendChild(r), console.log(o);
var y = !1,
x = 0,
v = 0;
r.addEventListener("mousedown", (function(e) {
y = !0, x = e.clientX - r.getBoundingClientRect().left, v = e.clientY - r.getBoundingClientRect().top, r.style.cursor = "grabbing"
})), document.addEventListener("mousemove", (function(e) {
if (y) {
var t = "".concat(e.clientX - x, "px"),
n = "".concat(e.clientY - v, "px");
r.style.left = t, r.style.top = n, h.style.left = "".concat(e.clientX - x, "px"), h.style.top = "".concat(e.clientY - v, "px")
}
})), document.addEventListener("mouseup", (function() {
y = !1, r.style.cursor = "default"
}));
var C = {};
function w(e) {
void 0 === e && (e = ""), console.log("active" + e);
var t = document.getElementById("rightButtonContainer");
if (t) {
for (; t.firstChild;) t.removeChild(t.firstChild);
s.forEach((function(n) {
n.type !== e && "" !== e || t.appendChild(function(e, t, n, o) {
var i = document.createElement("div");
i.style.cssText = "\n position:relative;width:320px;height:75px;margin-bottom:10px;border-radius: 10px; right: -15px;\n transition:transform 0.2s;cursor:pointer;\n background:url('https://raw.githubusercontent.com/OfficiallyMelon/files-cdn/refs/heads/main/bloxd-ui/ButtonHolder.png') no-repeat center/cover;\n ", i.onmouseenter = function() {
return i.style.transform = "scale(1.05)"
}, i.onmouseleave = function() {
return i.style.transform = "scale(1)"
};
var s = document.createElement("div");
s.innerText = e, s.style.cssText = "position:absolute;top:5px;left:5px;font-family:Gabarito,sans-serif;font-size:14px;font-weight:500;color:white;", i.appendChild(s);
var l = document.createElement("div");
l.innerText = t, l.style.cssText = "position:absolute;top:6px;left:70px;font-family:Gabarito,sans-serif;font-size:16px;font-weight:400;color:rgba(255, 255, 255, 0.56);", i.appendChild(l);
var r = document.createElement("div");
r.innerText = n, r.style.cssText = "position:absolute;top:40px;left:5px;font-family:Gabarito,sans-serif;font-size:14px;font-weight:400;color:rgba(255, 255, 255, 0.71);", i.appendChild(r);
var a, c = document.createElement("div");
return c.style.cssText = "position:absolute;bottom:5px;right:5px;width:20px;height:20px;background:red;border-radius:50%;", i.appendChild(c), e in C || (C[e] = !1), c.style.backgroundColor = C[e] ? "green" : "red", i.onclick = function() {
C[e] = !C[e], c.style.backgroundColor = C[e] ? "green" : "red", void 0 === a ? a = window.setInterval((function() {
o(C[e])
}), 1) : (window.clearInterval(a), a = void 0)
}, i
}(n.title, "(".concat(n.type, ")"), n.desc, n.pertick))
}))
}
} [{
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/AllBTN.png?raw=true",
style: "top:15px;",
onClick: function() {
return w("")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/CombatBTN.png?raw=true",
style: "top:72px;",
onClick: function() {
return w("Combat")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/MovementBTN.png?raw=true",
style: "top:119px;",
onClick: function() {
return w("Movement")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/PlayerBTN.png?raw=true",
style: "top:166px;",
onClick: function() {
return w("Player")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/ExploitBTN.png?raw=true",
style: "top:213px;",
onClick: function() {
return w("Exploit")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/OtherBTN.png?raw=true",
style: "top:260px;",
onClick: function() {
return w("Other")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/SettingsBTN.png?raw=true",
style: "top:354px;",
onClick: function() {
return w("Settings")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/ThemesBTN.png?raw=true",
style: "top:401px;",
onClick: function() {
return w("Themes")
}
}, {
src: "https://github.com/OfficiallyMelon/Melon-Hub/blob/main/Assets/bloxd.io/DebugBTN.png?raw=true",
style: "top:401px;",
onClick: function() {
return w("Debug")
}
}].forEach((function(e, t) {
var n = document.createElement("img");
n.src = e.src, n.style.cssText = "position: absolute; width: 104px; height: 23.3px; left: 50%; transform: translateX(-50%); top: ".concat(15 + 35 * t, "px; z-index: 2147483652; transition: transform 0.2s, scale 0.2s; cursor: pointer;"), n.addEventListener("mouseenter", (function() {
return n.style.transform = "translateX(-50%) scale(1.05)"
})), n.addEventListener("mouseleave", (function() {
return n.style.transform = "translateX(-50%) scale(1)"
})), n.addEventListener("click", e.onClick), m.appendChild(n)
})), w(""), window.ondragstart = function() {
return !1
}
})();