// ==UserScript== // @name Survivio | Enhanced | // @version 0.1.2.6 // @icon https://surviv.io/favicon.ico // @description Surviv.io Enhanced | UI-HUD | Menu Buttons | Streamer Mode | Adblocker | // @author Filip K Zhõng // @namespace SurvivEnhanced // Extra Info // Made by: Filip K. Zhõng // Version: 0.1.2.6 // For: Surviv.io // Support Server: https://discordapp.com/invite/AHZYHxV // - Note: // 3rd party extensions (or code changes) is not official or supported by the developers of the game, // they take no responsibility for 3rd party and doesn't recommend it neither, // all usage of it is on own risk and extensions THAT GIVES YOU A ADVANTAGE is not allowed! // - Disclaim: // This script doesn't contain any hackusations, or code that gives you a unfair advantage // The adblur in this script still supports the game, as the ads still appear (even if they are blured out) // This script is used through tampermonkey or resource override, if the game patches it, deal with it, it's not a vanilla! // - Creds: // HUD ; Tint Color to HEX color codes: https://convertingcolors.com/ // <========== MATCH ==========> \\ // @match http://surviv.io/* // @match https://surviv.io/* // @match http://surviv.io/?region=na&zone=sfo // @match http://surviv.io/?region=na&zone=mia // @match http://surviv.io/?region=na&zone=nyc // @match http://surviv.io/?region=na&zone=chi // @match http://surviv.io/?region=sa&zone=sao // @match http://surviv.io/?region=eu&zone=fra // @match http://surviv.io/?region=eu&zone=waw // @match http://surviv.io/?region=as&zone=sgp // @match http://surviv.io/?region=as&zone=nrt // @match http://surviv.io/?region=as&zone=hkg // @match http://surviv.io/?region=kr&zone=sel // @match https://surviv.io/?region=na&zone=sfo // @match https://surviv.io/?region=na&zone=mia // @match https://surviv.io/?region=na&zone=nyc // @match https://surviv.io/?region=na&zone=chi // @match https://surviv.io/?region=sa&zone=sao // @match https://surviv.io/?region=eu&zone=fra // @match https://surviv.io/?region=eu&zone=waw // @match https://surviv.io/?region=as&zone=sgp // @match https://surviv.io/?region=as&zone=nrt // @match https://surviv.io/?region=as&zone=hkg // @match https://surviv.io/?region=kr&zone=sel // @match http://surviv2.io* // @match https://surviv2.io* // @match http://2dbattleroyale.com* // @match https://2dbattleroyale.com* // @match http://2dbattleroyale.org* // @match https://2dbattleroyale.org* // @match http://piearesquared.info* // @match https://piearesquared.info* // @match http://thecircleisclosing.com* // @match https://thecircleisclosing.com* // @match http://archimedesofsyracuse.info* // @match https://archimedesofsyracuse.info* // @match http://secantsecant.com* // @match https://secantsecant.com* // @match http://parmainitiative.com* // @match https://parmainitiative.com* // @match http://nevelskoygroup.com* // @match https://nevelskoygroup.com* // @match http://kugahi.com* // @match https://kugahi.com* // @match http://chandlertallowmd.com* // @match https://chandlertallowmd.com* // @match http://ot38.club* // @match https://ot38.club* // @match http://kugaheavyindustry.com* // @match https://kugaheavyindustry.com* // @match http://rarepotato.com* // @match https://rarepotato.com* // @match http://twitch.tv/popout/survivio/extensions/c79geyxwmp1zpas3qxbddzrtytffta/panel* // @match https://twitch.tv/popout/survivio/extensions/c79geyxwmp1zpas3qxbddzrtytffta/panel* // @match http://c79geyxwmp1zpas3qxbddzrtytffta.ext-twitch.tv/c79geyxwmp1zpas3qxbddzrtytffta/1.0.2/ce940530af57d2615ac39c266fe9679d/index_twitch.html?anchor=panel&language=en&mode=viewer&state=released&platform=web&popout=true* // @match https://c79geyxwmp1zpas3qxbddzrtytffta.ext-twitch.tv/c79geyxwmp1zpas3qxbddzrtytffta/1.0.2/ce940530af57d2615ac39c266fe9679d/index_twitch.html?anchor=panel&language=en&mode=viewer&state=released&platform=web&popout=true* // @grant none // ==/UserScript== // <==========FailSafe==========> \\ // Not blocked in school: https://randomblock1.github.io/unblock-survivio/survivio.html (function() { 'use strict'; if (location.protocol !== "https:") {location.protocol = "https:";} })(); // <========== Menue Index ==========> \\ function setaps(eID){ if(document.getElementById(eID) && eID!="ad-block-left" && eID!="surviv-io_728x90") {document.getElementById(eID).insertAdjacentHTML('beforeend', '');} if(document.getElementById(eID) && eID=="surviv-io_728x90") {document.getElementById(eID).insertAdjacentHTML('beforeend', '');} if(document.getElementById(eID) && eID=="ad-block-left"){ var before,now,fps before=Date.now(); fps=0; requestAnimationFrame( function loop(){ now=Date.now(); fps=Math.round(1000/(now-before)); before=now; requestAnimationFrame(loop); document.getElementById(eID).innerHTML = ("<p><b><u>Surviv.io Enhanced</u></b> <i>by Filip K. Zhõng</i></p><p>Version 0.1.2.5 | FPS: "+fps+"</p><p>Download it on either <a href='http://149.202.98.191/servlet/redirect.srv/slxv/stbzrlgpuiy/p2/en/scripts/392896-survivio-enhanced'target='_blank'>Greasyfork</a> or on <a href='http://149.202.98.191/servlet/redirect.srv/sruj/skesfvu/p2/FilipKZhong/Surviv.io-Enhanced'target='_blank'>Github</a>.</p><p>For help about the extension you can join my <a href='http://149.202.98.191/servlet/redirect.srv/sruj/syzlpecrizv/p2/invite/AHZYHxV'target='_blank'>Discord Server</a></p><p>Click <a href='http://149.202.98.191/servlet/redirect.srv/sruj/swsmqggpf/p2/raw/ym55Q4Le'target='_blank'>HERE</a> for more info!</p><p><i><sup>If the links is unclickable, try Right-Click and then click 'open in new window'</sup></i></p>"); });}} var a = setInterval(function() { var setA=document.getElementsByClassName("ad-block-leaderboard-bottom")[0]; setaps("start-top-left"); setaps("leaderboard-front"); setaps("ad-block-left"); setaps("start-bottom-left"); setaps("adunit"); setaps("ui-stats-ad-container-desktop"); setaps("surviv-io_728x90") clearInterval(a); },1000); // <========== Menue Index END ==========> \\ // <========== GUN HUD ==========> \\ (function() { 'use strict'; var elems = document.getElementsByClassName('ui-weapon-name') console.log(elems); for (var ii = 0; ii < elems.length; ii++) { elems[ii].addEventListener('DOMSubtreeModified', function() { var weaponName = this.textContent; var border = 'solid'; switch (weaponName) { // <---------- Default ----------> \\ default: border = '#FFFFFF'; border = 'solid'; break; // <------------------------------MELEES------------------------------> \\ case "Fists": border += '#FFFFFF'; break; // <-----Karmabit-----> case "Karambit": border +='#76787A'; break; case "Karambit Rugged": border +='#16163B'; break; case "Karmabit Prismatic": border +='#34D682'; break; case "Karmabit Drowned": border +='#0CBCCC'; break; // <-----Bayonet-----> case "Bayonet": border +='#76787A'; break; case "Bayonet Rugged": border +='#76787A'; break; case "Bayonet Woodland": border +='#5AA415'; break; // <-----Huntsman-----> case "Huntsman": border +='#76787A'; break; case "Huntsman Rugged": border +='#A0441E'; break; case "Huntsman Burnished": border +='#DACF76'; break; // <-----Bowie-----> case "Bowie": border +='#76787A'; break; case "Bowie Vintage": border +='#B6B6B6'; break; case "Bowie Frontier": border +='#BA4B2E'; break; // <-----Axe-----> case "Wood Axe": border +='#95500E'; break; case "Blood Axe": border +='#568A09'; break; case "Fire Axe": border +='#B40000'; break; // <-----Katana-----> case "Katana": border +='#858585'; break; case "Katana Rusted": border +='#875F37'; break; case "Katana Orchid": border +='#C189CB'; break; // <-----Naginata-----> case 'Naginata': border += '#3C3C3C'; break; // <-----Machetes-----> case "Machete": //Machete Taiga border +='#685F40'; break; case "Kukri": //Tallow's Kukri border +='#685F40'; break; // <-----Hammers-----> case "Stone Hammer": border +='#585A5C'; break; case "Sledgehammer": border +='#585A5C'; break; // <-----Hook-----> case "Hook": border +='#888A8B'; break; // <-----Pan-----> case "Pan": border +='#484848'; break; // <-----Knuckles-----> case "Knuckles": border +='#63452D'; break; case "Knuckles Rusted": border +='#63452D'; break; case "Knuckles Heroic": border +='#90700D'; break; // <-----Saw-----> case "Bonesaw": //Bonesaw Rusted border += '#461904'; break; // <-----Cobalt-----> case "Spade": //Trench Spade border +='#DACF59'; break; case "Crowbar": //Scouting Crowbar border +='#ACD563'; break; case "Kukri": //Marksman's Recurve border +='#8DCEDB'; break; case "Bonesaw": //The Separator border +='#DC79DC'; break; case "Katana": //Hakai no Katana border +='#C76A67'; break; case "War Hammer": //Panzerhammer border +='#EAB963'; break; // <===GUNS===> // <---------- YELLOW: 9mm ----------> \\ case 'CZ-3A1': case 'G18C': case 'M9': case 'M93R': case 'MAC-10': case 'MP5': case 'P30L': case 'Dual P30L': case 'UMP9': case 'Vector': case 'VSS': border += '#FFAE00'; break; // <---------- RED: 12 Gauge ----------> \\ case 'M1100': case 'M870': case 'MP220': case 'Saiga-12': case 'SPAS-12': case 'Super 90': case 'USAS-12': border += '#FF0000'; break; // <---------- BLUE: 7.62 mm ----------> \\ case 'AK-47': case 'AN-94': case 'BAR M1918': case 'BLR 81': case 'DP-28': case 'Groza': case 'Groza-S': case 'M1 Garand': case 'M39 EMR': case 'Mosin-Nagant': case 'OT-38': case 'OTs-38': case 'PKP Pecheneg': case 'SCAR-H': case 'SV-98': case 'SVD-63': border += '#0066FF'; break; // <---------- GREEN: 5.56mm ----------> \\ case 'FAMAS': case 'L86A2': case 'M249': case 'M416': case 'M4A1-S': case 'Mk 12 SPR': case 'QBB-97': case 'Scout Elite': border += '#039E00'; break; // <---------- Purple: .45 ACP ----------> \\ case 'M1911': case 'M1A1': case 'Mk45G': case 'Model 94': case 'Peacemaker': case 'Vector 45': border += '#7900FF'; break; // <---------- FLARE ----------> \\ case 'Flare Gun': border += '#D44600'; break; // <---------- .50 AE ----------> \\ case 'DEagle 50': border += '#292929'; break; // <---------- .308 Subsonic ----------> \\ case 'AWM-S': case 'Mk 20 SSR': border += '#465000'; break; // <---------- Potato ----------> \\ case 'Potato Cannon': border += '#935924'; break; // <---------- CURSED: 9 mm ----------> \\ case 'M9 Cursed': border += '#323232'; break; // <---------- Trowables ----------> \\ case 'Frag': border += '#837516'; break; case 'MIRV': border += '#940000'; break; case 'Potato': border += '#958359'; break; case 'Smoke': border += '#DDDDDD'; break; case 'Snowball': border += '#74D4F8'; break; case 'Strobe': border += '#FFF205'; break; case 'Iron Bomb': // WorldImg: #FFF205 // LootImg: #00FF00 border += '#00FF00'; break; } // <---------- GUN END ----------> \\ console.log(border); this.parentNode.style.border = border; }, false); } })(); // <========== ARMOR HUD ==========> \\ (function() { 'use strict'; var elems = document.getElementsByClassName('ui-armor-level'); console.log(elems); for (var ii = 0; ii < elems.length; ii++) { elems[ii].addEventListener('DOMSubtreeModified', function() { var armorlv = this.textContent; var border = 'solid'; switch (armorlv) { default: border = '#000000'; border = 'solid'; break; case 'Lvl. 0': border += '#FFFFFF'; break; case 'Lvl. 1': border += '#FFFFFF'; break; case 'Lvl. 2': border += '#808080'; break; case 'Lvl. 3': border += '#0C0C0C'; break; case 'Lvl. 4': border += '#FFF00F'; break; } console.log(border); this.parentNode.style.border = border; }, false); } })(); // <========== ARMOR END ==========> \\ // <========== HUD END ==========> \\ // <========== Streamer Mode ==========> \\ (function() { 'use strict'; setInterval(function() { // <---------- Party Fix ----------> if(document.querySelector(`#btn-start-team`)) document.querySelector(`#btn-start-team`).style.display = "block"; // <---------- Surviv-Related Ads AdBlock ----------> let blurElements_ad = document.querySelectorAll (`#surviv-io_728x90, #surviv-io_300x600, #surviv-io_300x250, #ad-block-top, #surviv-io_300x250_2, #surviv-io_300x250_mobile_2`); for(let i = 0; i < blurElements_ad.length; i++) blurElements_ad[i].remove(); // <---------- Partys & Others ----------> document.querySelector(`#background, #modal-customize`).style.filter = ""; // <---------- Partys & Others ----------> let blurElements = document.querySelectorAll(`#team-url, #team-code`); //.account-player-name, .account-avatar, .featured-streamer > a, #featured-youtuber a`) for(let i = 0; i < blurElements.length; i++) blurElements[i].style.filter = "blur(10px)"; // <---------- Shadow optimizations ----------> let removeShadowElements = document.querySelectorAll(`#news-block, #social-share-block, #start-menu, #team-menu, #ad-block-left`); for(let i = 0; i < removeShadowElements.length; i++) removeShadowElements[i].style.boxShadow = ""; });})(); // <========== Streamer Mode End ==========> \\ // <========== Solo Buttons ==========> \\ // <---------- Function DUO ----------> (function () { 'use strict'; function DUO(){ document.getElementById("btn-create-team").click(); setTimeout(function(){ document.getElementById("btn-team-queue-mode-1").click(); document.getElementById("btn-team-fill-none").click(); document.getElementById("btn-start-team").click(); },750);} // <---------- DUO Button ----------> var SoloDuo = document.createElement("button"); SoloDuo.innerHTML = "Play Solo 'Duo'"; SoloDuo.setAttribute("id", "btn-start-solo btns-quick-start"); SoloDuo.setAttribute("class", "btn-darken menu-option btn-team-option menu-column menu-block"); SoloDuo;{ SoloDuo.style.align = "center"; SoloDuo.style.background = "#50AFAB"; SoloDuo.style.border = "#408E8B"; SoloDuo.style.color = "#E5F1F0"; SoloDuo.style.cursor = "pointer"; SoloDuo.style.width = "50%"; SoloDuo.style.radius = "15px"; SoloDuo.style.shadow = "0 5px #408E8B"; } // <---------- DUO Button Click ----------> window.myFunc = function () { DUO();}; SoloDuo.addEventListener('click', window.myFunc); document.getElementById("btns-quick-start").parentNode.appendChild(SoloDuo); var reference = document.getElementById('btn-help'); reference.parentNode.insertBefore(SoloDuo,reference); })(); // <---------- Function SQUAD ----------> (function () { 'use strict'; function SQUAD(){ document.getElementById("btn-create-team").click(); setTimeout(function(){ document.getElementById("btn-team-queue-mode-2").click(); document.getElementById("btn-team-fill-none").click(); document.getElementById("btn-start-team").click(); },750);} // <---------- SQUAD Button ----------> var SoloSquad = document.createElement("button"); SoloSquad.innerHTML = "Play Solo 'Squad'"; SoloSquad.setAttribute("id", "btn-start-solo btns-quick-start"); SoloSquad.setAttribute("class", "btn-darken menu-option btn-team-option menu-column menu-block"); SoloSquad;{ SoloSquad.style.align = "center"; SoloSquad.style.background = "#50AFAB"; SoloSquad.style.border = "#408E8B"; SoloSquad.style.color = "#E5F1F0"; SoloSquad.style.cursor = "pointer"; SoloSquad.style.width = "50%"; SoloSquad.style.radius = "15px"; SoloSquad.style.shadow = "0 5px #408E8B"; } // <---------- SQUAD Button Click ----------> window.myFunc = function () { SQUAD();}; SoloSquad.addEventListener('click', window.myFunc); document.getElementById("btns-quick-start").parentNode.appendChild(SoloSquad); var reference = document.getElementById('btn-help'); reference.parentNode.insertBefore(SoloSquad,reference); })(); // <========== Buttons END==========> \\ // ==============================NOTES==============================> \\ // <---mapId---> // 0 - Normal // 1 - Desert [desertMode] // 2 - Woods [woodsMode] // 3 - 50v50 [factionMode] // 4 - Potato [potatoMode] // 5 - Savannah [sniperMode] // 6 - Halloween [N/A] // 7 - Cobalt[perkMode] // // <---GameMode---> // [1] - solo // [2] - duo // [4] - squad // // <---Colors---> // // -> Code references: HEX UPPER CASE // -> Code references: "Tint || Hex" // // |---> groupColors // // [YELLOW] 16776960 || #FFFF00 // [PINK] 16711935 || #FF00FF // [CYAN] 65535 || #00FFFF // [ORANGE] 16733184 || #FF5400 // // |---> teamColors // // [RED] 13369344 || #CC0000 // [BLUE] 32511 || #007EFF // // |---> Cobalt Classes // Scout: 11326819 || #ACD563 || // Sniper: 9293531 || #8DCEDB || // Medic: 14449116 || #DC79DC || // Demo: 13068903 || #C76A67 || // Assault: 14339929 || #DACF59 || // Tank: 15382883 || #EAB963 || // // |---> TRACES // // [Yellow] "9mm" // regular: 16704198 || #FEE2C6 // saturated: 16767411 || #FFD9B3 // chambered: 16744192 || #FF7F00 // // [Overpressure 9mm] "9mm_suppressed_bonus" // regular: 16704198 || #FEE2C6 // saturated: 16767411 || #FFD9B3 // chambered: 16744192 || #FF7F00 // // [Cursed 9mm] "9mm_cursed" // regular: 1247488 || #130900 // saturated: 1247488 || #130900 // chambered: 1247488 || #130900 // // [Blue] "762mm" // regular: 12965630 || #C5D6FE // saturated: 11257087 || #ABC4FF // chambered: 19711 || #004CFF // // [Red] "12gauge" // regular: 16702684 || #FEDCDC // saturated: 16702684 || #FEDCDC // chambered: 16711680 || #FF0000 // // [Green] "556mm" // regular: 11141010 || #A9FF92 // saturated: 11141010 || #A9FF92 // chambered: 3604224 || #36FF00 // // [50.AE] "50AE" // regular: 16773256 || #FFF088 // saturated: 16773256 || #FFF088 // chambered: 16768768 || #FFDF00 // // [Subsonic] "308sub" // regular: 2435840 || #252B00 // saturated: 4608e3 || ? // chambered: 1250816 || #131600 // // [Flare] "flare" // regular: 14869218 || #E2E2E2 // saturated: 14869218 || #E2E2E2 // chambered: 12895428 || #C4C4C4 // // [Purple] "45acp" // regular: 15515391 || #ECBEFF // saturated: 15183103 || #E7ACFF // chambered: 11862271 || #B500FF // // [Sharpnel] "shrapnel" // regular: 3355443 || #333333 // saturated: 3355443 || #333333 // // [Frag] "frag" // regular: 13303808 || #CB0000 // saturated: 13303808 || #CB0000 // // [Potato] "potato" // regular: 0 || N/A // saturated: 0 || N/A // chambered: 0 || N/A // // <==============================NOTES-END==============================> \\ // <-########## SCRIPT END ##########-> \\