Register
Hello There, Guest!


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
For tamper monkey SLIT.io
#1
// ==UserScript==
// @name         SLITio by szymy
// @namespace    slitio.szymy
// @version      0.1.16
// @description  slither.io MOD
// @author       szymy
// @match        http://slither.io/*
// @run-at       document-body
// @grant        none
// ==/UserScript==

// Source: http://slitio.ogario.ovh

(function(w) {
   var modVersion = "v0.1.16",
       renderMode = 2, // 3 - normal, 2 - optimized, 1 - simple (mobile)
       normalMode = false,
       gameFPS = null,
       positionHUD = null,
       ipHUD = null,
       fpsHUD = null,
       styleHUD = "color: #FFF; font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; font-size: 14px; position: fixed; opacity: 0.35; z-index: 7;",
       inpNick = null,
       currentIP = null,
       retry = 0,
       bgImage = null,
rotate = false;
   function init() {
       // Append DIVs
       appendDiv("position-hud", "nsi", styleHUD + "right: 30; bottom: 120px;");
       appendDiv("ip-hud", "nsi", styleHUD + "right: 30; bottom: 150px;");
       appendDiv("fps-hud", "nsi", styleHUD + "right: 30; bottom: 170px;");
       positionHUD = document.getElementById("position-hud");
       ipHUD = document.getElementById("ip-hud");
       fpsHUD = document.getElementById("fps-hud");
       // Add zoom
       if (/firefox/i.test(navigator.userAgent)) {
           document.addEventListener("DOMMouseScroll", zoom, false);
       } else {
           document.body.onmousewheel = zoom;
       }
       // Keys
       w.addEventListener("keydown", function(e) {
switch(e.keyCode) {
// ESC - quick resp
case 27: forceConnect();
break;
// A - Auto skin rotator
case 65: rotate = !rotate; rotateSkin();
break;
// Q - Quit to menu
case 81: quit();
break;
// S - Change skin
case 83: changeSkin();
break;
// Z - Reset zoom
case 90: resetZoom();
break;
}
       }, false);
       // Hijack console log
       /*
       if (w.console) {
           w.console.logOld = console.log;
           w.console.log = getConsoleLog;
       }
       */

       // Set menu
       setMenu();
       // Set leaderboard
       setLeaderboard();
       // Set graphics
       setGraphics();
       // Update loop
       updateLoop();
       // Show FPS
       showFPS();
   }
   // Append DIV
   function appendDiv(id, className, style) {
       var div = document.createElement("div");
       if (id) {
           div.id = id;
       }
       if (className) {
           div.className = className;
       }
       if (style) {
           div.style = style;
       }
       document.body.appendChild(div);
   }
   // Zoom
   function zoom(e) {
       if (!w.gsc || !w.playing) {
           return;
       }
       w.gsc *= Math.pow(0.9, e.wheelDelta / -120 || e.detail / 2 || 0);
   }
// Reset zoom
function resetZoom() {
w.gsc = 0.9;
}
   // Get console log
   function getConsoleLog(log) {
       //w.console.logOld(log);
       if (log.indexOf("FPS") != -1) {
           gameFPS = log;
       }
   }
   // Set menu
   function setMenu() {
       var login = document.getElementById("login");
       if (login) {
// Unblock skins
w.localStorage.setItem("edttsg", "1");
           // Load settings
           loadSettings();
           // Keys info
           var div = document.createElement("div");
           div.style.width = "300px";
           div.style.color = "#56ac81";
           div.style.fontFamily = "'Lucida Sans Unicode', 'Lucida Grande', sans-serif";
           div.style.fontSize = "12px";
           div.style.textAlign = "center";
           div.style.opacity = "0.5";
           div.style.margin = "0 auto";
           div.style.padding = "10px 0";
           div.innerHTML = "[ESC] - Quick resp | [Q] - Quit to menu<br/>[A] - Auto skin rotator | [S] - Change skin<br/>[Z] - Reset zoom | [Space] - Boost";
           login.appendChild(div);
           // Menu container
           var sltMenu = document.createElement("div");
           sltMenu.style.width = "260px";
           sltMenu.style.color = "#8058D0";
           sltMenu.style.backgroundColor = "#1e262e";
           sltMenu.style.borderRadius = "29px";
           sltMenu.style.fontFamily = "'Lucida Sans Unicode', 'Lucida Grande', sans-serif";
           sltMenu.style.fontSize = "14px";
           sltMenu.style.textAlign = "center";
           sltMenu.style.margin = "0 auto 100px auto";
           sltMenu.style.padding = "10px 14px";
           sltMenu.innerHTML = "MOD: <strong>SLITio by szymy</strong> | <strong>" + modVersion + "</strong>";
           login.appendChild(sltMenu);
           // IP input container
           var div = document.createElement("div");
           div.style.color = "#8058D0";
           div.style.backgroundColor = "#4C447C";
           div.style.borderRadius = "29px";
           div.style.margin = "10 auto";
           div.style.padding = "8px";
           sltMenu.appendChild(div);
           // IP input
           var input = document.createElement("input");
           input.id = "server-ip";
           input.type = "text";
           input.placeholder = "Server address (IP:port)";
           input.style.height = "24px";
           input.style.display = "inline-block";
           input.style.background = "none";
           input.style.color = "#e0e0ff";
           input.style.border = "none";
           input.style.outline = "none";
           div.appendChild(input);
           // Connect (play) button
           var button = document.createElement("input");
           button.id = "connect-btn";
           button.type = "button";
           button.value = "Play";
           button.style.height = "24px";
           button.style.display = "inline-block";
           button.style.borderRadius = "12px";
           button.style.color = "#FFF";
           button.style.backgroundColor = "#56ac81";
           button.style.border = "none";
           button.style.outline = "none";
           button.style.cursor = "pointer";
           button.style.padding = "0 20px";
           div.appendChild(button);
           // Select server container
           var div = document.createElement("div");
           div.style.backgroundColor = "#919191";
           div.style.borderRadius = "29px";
           div.style.margin = "10 auto";
           div.style.padding = "8px";
           sltMenu.appendChild(div);
           // Select server
           var select = document.createElement("select");
           select.id = "select-srv";
           select.style.background = "none";
           select.style.border = "none";
           select.style.outline = "none";
           var option = document.createElement("option");
           option.value = "";
           option.text = "-- Select a server --";
           select.appendChild(option);
           div.appendChild(select);
           // Select graph container
           var div = document.createElement("div");
           div.style.backgroundColor = "#A5A5A5";
           div.style.borderRadius = "29px";
           div.style.margin = "10 auto";
           div.style.padding = "8px";
           sltMenu.appendChild(div);
           // Select graph
           var select = document.createElement("select");
           select.id = "select-graph";
           select.style.background = "none";
           select.style.border = "none";
           select.style.outline = "none";
           div.appendChild(select);
           var option = document.createElement("option");
           option.value = "3";
           option.text = "Graphics: normal";
           select.appendChild(option);
           var option = document.createElement("option");
           option.value = "2";
           option.text = "Graphics: optimized";
           select.appendChild(option);
           var option = document.createElement("option");
           option.value = "1";
           option.text = "Graphics: low";
           select.appendChild(option);
           // Menu footer          
           sltMenu.innerHTML += '<a href="http://ogario.ovh" target="_blank" style="color: #56ac81;">Visit ogario.ovh</a> | ';
sltMenu.innerHTML += '<a href="https://www.youtube.com/channel/UCaWiPNJWnhzYDrBQoXokn6w" target="_blank" style="color: #56ac81;">YT Channel</a>';
           // Get IP input
           inpIP = document.getElementById("server-ip");
           // Get nick
           var nick = document.getElementById("nick");
           nick.addEventListener("input", getNick, false);
           // Force connect
           var connectBtn = document.getElementById("connect-btn");
           connectBtn.onclick = forceConnect;
           // Get servers list
           getServersList();
           // Set graphic mode
           var selectGraph = document.getElementById("select-graph");
           if (renderMode == 1) {
               selectGraph.selectedIndex = 2;
           } else if (renderMode == 2) {
               selectGraph.selectedIndex = 1;
           } else {
               selectGraph.selectedIndex = 0;
               normalMode = true;
           }
           selectGraph.onchange = function() {
               var mode = selectGraph.value;
               if (mode) {
                   renderMode = mode;
                   localStorage.setItem("rendermode", renderMode);
               }
           };
           resizeView();
       } else {
           setTimeout(setMenu, 100);
       }
   }
   // Load settings
   function loadSettings() {
       if (w.localStorage.getItem("nick") != null) {
           var nick = w.localStorage.getItem("nick");
           document.getElementById("nick").value = nick;
       }
       if (w.localStorage.getItem("rendermode") != null) {
           var mode = parseInt(w.localStorage.getItem("rendermode"));
           if (mode >= 1 && mode <= 3) {
               renderMode = mode;
           }
       }
   }
   // Get nick
   function getNick() {
       var nick = document.getElementById("nick").value;
       w.localStorage.setItem("nick", nick);
   }
   // Connection status
   function connectionStatus() {
       if (!w.connecting || retry == 10) {
           w.forcing = false;
           retry = 0;
           return;
       }
       retry++;
       setTimeout(connectionStatus, 1000);
   }
   // Force connect
   function forceConnect() {
       if (inpIP.value.length == 0 || !w.connect) {
           return;
       }
       w.forcing = true;
       if (!w.bso) {
           w.bso = {};
       }
       var srv = inpIP.value.trim().split(":");
       w.bso.ip = srv[0];
       w.bso.po = srv[1];
       w.connect();
       setTimeout(connectionStatus, 1000);
   }
   // Get servers list
   function getServersList() {
       if (w.sos && w.sos.length > 0) {
           var selectSrv = document.getElementById("select-srv");
           for (var i = 0; i < sos.length; i++) {
               var srv = sos[i];
               var option = document.createElement("option");
               option.value = srv.ip + ":" + srv.po;
               option.text = (i + 1) + ". " + option.value;
               selectSrv.appendChild(option);
           }
           selectSrv.onchange = function() {
               var srv = selectSrv.value;
               inpIP.value = srv;
           };
       } else {
           setTimeout(getServersList, 100);
       }
   }
   // Resize view
   function resizeView() {
       if (w.resize) {
           w.lww = 0; // Reset width (force resize)
           w.wsu = 0; // Clear ad space
           w.resize();
           var wh = Math.ceil(w.innerHeight);
           if (wh < 800) {
               var login = document.getElementById("login");
               w.lgbsc = wh / 800;
               login.style.top = - (Math.round(wh * (1 - w.lgbsc) * 1E5) / 1E5) + "px";
               if (w.trf) {
                   w.trf(login, "scale(" + w.lgbsc + "," + w.lgbsc + ")");
               }
           }
       } else {
           setTimeout(resizeView, 100);
       }
   }
   // Set leaderboard
   function setLeaderboard() {
       if (w.lbh) {
           w.lbh.textContent = "MOD: SLITio by szymy";
           w.lbh.style.fontSize = "20px";
       } else {
           setTimeout(setLeaderboard, 100);
       }
   }
   // Set normal mode
   function setNormalMode() {
       normalMode = true;
       w.ggbg = true;
       if (!w.bgp2 && bgImage) {
           w.bgp2 = bgImage;
       }
       w.render_mode = 2;
   }
   // Set graphics
   function setGraphics() {
       if (renderMode == 3) {
           if (!normalMode) {
               setNormalMode();
           }
           return;
       }
       if (normalMode) {
           normalMode = false;
       }
       if (w.want_quality && w.want_quality != 0) {
           w.want_quality = 0;
           w.localStorage.setItem("qual", "0");
           w.grqi.src = "/s/lowquality.png";
       }
       if (w.ggbg && w.gbgmc) {
           w.ggbg = false;
       }
       if (w.bgp2) {
           bgImage = w.bgp2;
           w.bgp2 = null;
       }
       if (w.high_quality) {
           w.high_quality = false;
       }
       if (w.gla && w.gla != 0) {
           w.gla = 0;
       }
       if (w.render_mode && w.render_mode != renderMode) {
           w.render_mode = renderMode;
       }
   }
   // Show FPS
   function showFPS() {
       if (w.playing && fpsHUD && w.fps && w.lrd_mtm) {
           if (Date.now() - w.lrd_mtm > 970) {
               fpsHUD.textContent = "FPS: " + w.fps;
           }
       }
       setTimeout(showFPS, 30);
   }
   // Update loop
   function updateLoop() {
       setGraphics();
       if (w.playing) {
           if (positionHUD) {
               positionHUD.textContent = "X: " + (~~w.view_xx || 0) + " Y: " + (~~w.view_yy || 0);
           }
           if (inpIP && w.bso && currentIP != w.bso.ip + ":" + w.bso.po) {
               currentIP = w.bso.ip + ":" + w.bso.po;
               inpIP.value = currentIP;
               if (ipHUD) {
                   ipHUD.textContent = "Server: " + currentIP;
               }
           }
       } else {
positionHUD.textContent = "";
fpsHUD.textContent = "";
}
       setTimeout(updateLoop, 1000);
   }
// Change skin
function changeSkin() {
if (w.playing && w.snake != null) {
var skin = w.snake.rcv;
skin++;
if (skin > w.max_skin_cv) {
skin = 0;
}
w.setSkin(w.snake, skin);
}
}
// Rotate skin
function rotateSkin() {
if (!rotate) {
return;
}
changeSkin();
setTimeout(rotateSkin, 1000);
}
// Quit to menu
function quit() {
       if (w.playing) {
           w.want_close_socket = true;
           w.dead_mtm = 1;
if (w.ws) {
w.ws.close();
w.ws = null;
}
           w.playing = w.connected = false;
           w.resetGame();
           w.play_btn.setEnabled(true);
       }
   }
   // Init
   init();
})(window);
[Image: BbGAc9G.png]
JOIN VOiD TODAY! (JOIN HERE!)
Reply
#2
(05-03-2016, 10:08 PM)Sacrifice Wrote: MEH

How did you get the syntax to automatically highlight?? I want to know!
But... you may not know that this mod was already posted here Big Grin
[Image: Voakie.png]
Reply
#3
(05-04-2016, 04:16 PM)Voakie Wrote:
(05-03-2016, 10:08 PM)Sacrifice Wrote: MEH

How did you get the syntax to automatically highlight?? I want to know!
But... you may not know that this mod was already posted here Big Grin

@Voakie you should be super moderator!!! You are genius...
[Image: Robin.png]
Reply
#4
(05-04-2016, 05:13 PM)Robin Wrote:
(05-04-2016, 04:16 PM)Voakie Wrote:
(05-03-2016, 10:08 PM)Sacrifice Wrote: MEH

How did you get the syntax to automatically highlight?? I want to know!
But... you may not know that this mod was already posted here Big Grin

@Voakie you should be super moderator!!! You are genius...

Thanks Heart
[Image: Voakie.png]
Reply
#5
Thank you for the code Big Grin
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)