Locks aim to the nearest player in shellshock.io. Comes with an ESP too. Press B, V, N, L to toggle aimbot, esp, esp lines, aimbot on right mouse hold.
< 腳本Shellshock.IO Aimbot & ESP的回應
Ok, this new ad type definitely got some hate. I have reverted back to the usual ad the script had. Please be noted that I am currently testing so things are subject to change.
Change the review type to 'comment' cos this isn't a problem with the script. The script tells u before installing that there will be ads.
Don't worry bud, I'm workin' on something to stop those dumbass redirects.
Or your the adless scrip!!
// ==UserScript==
// @name Shellshock.IO Aimbot & ESP
// @namespace http://tampermonkey.net/
// @version 0.1.8
// @description Locks aim to the nearest player in shellshock.io. Comes with an ESP too. Press B, V, N, L to toggle aimbot, esp, esp lines, aimbot on right mouse hold.
// @author Zertalious (Zert)
// @match *://shellshock.io/*
// @match *://algebra.best/*
// @match *://algebra.vip/*
// @match *://biologyclass.club/*
// @match *://deadlyegg.com/*
// @match *://deathegg.world/*
// @match *://eggcombat.com/*
// @match *://egg.dance/*
// @match *://eggfacts.fun/*
// @match *://egghead.institute/*
// @match *://eggisthenewblack.com/*
// @match *://eggsarecool.com/*
// @match *://geometry.best/*
// @match *://geometry.monster/*
// @match *://geometry.pw/*
// @match *://geometry.report/*
// @match *://hardboiled.life/*
// @match *://hardshell.life/*
// @match *://humanorganising.org/*
// @match *://mathdrills.info/*
// @match *://mathfun.rocks/*
// @match *://mathgames.world/*
// @match *://math.international/*
// @match *://mathlete.fun/*
// @match *://mathlete.pro/*
// @match *://overeasy.club/*
// @match *://scrambled.best/*
// @match *://scrambled.tech/*
// @match *://scrambled.today/*
// @match *://scrambled.us/*
// @match *://scrambled.world/*
// @match *://shellshockers.club/*
// @match *://shellshockers.site/*
// @match *://shellshockers.us/*
// @match *://shellshockers.world/*
// @match *://softboiled.club/*
// @match *://violentegg.club/*
// @match *://violentegg.fun/*
// @match *://yolk.best/*
// @match *://yolk.life/*
// @match *://yolk.rocks/*
// @match *://yolk.tech/*
// @match *://zygote.cafe/*
// @icon https://www.google.com/s2/favicons?domain=shellshock.io
// @grant none
// @run-at document-start
// @antifeature ads
// ==/UserScript==
window.XMLHttpRequest = class extends window.XMLHttpRequest {
open( method, url ) {
if ( url.indexOf( 'shellshock.js' ) > - 1 ) {
this.isScript = true;
}
return super.open( ...arguments );
}
get response() {
if ( this.isScript ) {
const code = super.response;
const babylonVarName = /new ([a-zA-Z]+)\.Vector3/.exec( code )[ 1 ];
const playersVarName = /([^,]+)=\[\],{}/.exec( code )[ 1 ];
const myPlayerVarName = /"fire":document.pointerLockElement&&([^&]+)&&/.exec( code )[ 1 ];
const sceneVarName = /createMapCells\(([^,]+),/.exec( code )[ 1 ];
const cullFuncName = /=([a-zA-Z]+)\(this\.mesh,\.[0-9]+\)/.exec( code )[ 1 ];
console.log( '%cInjecting code...', 'color: red; background: black; font-size: 2em;', {
babylonVarName,
playersVarName,
myPlayerVarName,
playersVarName,
sceneVarName,
cullFuncName
} );
return code.replace( sceneVarName + '.render()', `
window[ '${onUpdateFuncName}' ](
${babylonVarName},
${playersVarName},
${myPlayerVarName}
);
${sceneVarName}.render()` )
.replace( `function ${cullFuncName}`, `
function ${cullFuncName}() {
return true;
}
function someFunctionWhichWillNeverBeUsedNow` );
}
return super.response;
}
};
let espEnabled = true;
let aimbotEnabled = true;
let showLines = true;
let aimbotOnRightMouse = false;
const value = parseInt( new URLSearchParams( window.location.search ).get( 'showAd' ), 16 );
const shouldShowAd = isNaN( value ) || Date.now() - value < 0 || Date.now() - value > 10 * 60 * 1000;
const temp = document.createElement( 'div' );
temp.innerHTML = `
` + '
';
const msgEl = temp.querySelector( '.msg' );
const infoEl = temp.querySelector( '.info' );
window.addEventListener( 'keyup', function ( event ) {
if ( document.activeElement && document.activeElement.tagName === 'INPUT' ) {
return;
}
switch ( event.code ) {
case 'KeyB' :
aimbotEnabled = ! aimbotEnabled;
showMsg( 'Aimbot', aimbotEnabled );
break;
case 'KeyV' :
espEnabled = ! espEnabled;
showMsg( 'ESP', espEnabled );
break;
case 'KeyN' :
showLines = ! showLines;
showMsg( 'ESP Lines', showLines );
break;
case 'KeyH' :
infoEl.style.display = infoEl.style.display === '' ? 'none' : '';
break;
case 'KeyL' :
aimbotOnRightMouse = ! aimbotOnRightMouse;
showMsg( 'Aimbot On Right Mouse Hold', aimbotOnRightMouse );
break;
}
} );
function showMsg( name, bool ) {
msgEl.innerText = name + ': ' + ( bool ? 'ON' : 'OFF' );
msgEl.style.display = 'none';
void msgEl.offsetWidth;
msgEl.style.display = '';
}
let lineOrigin, lines;
const onUpdateFuncName = btoa( Math.random().toString( 32 ) );
window[ onUpdateFuncName ] = function ( BABYLON, players, myPlayer ) {
if ( ! myPlayer ) {
return;
}
if ( ! lineOrigin ) {
lineOrigin = new BABYLON.Vector3();
linesArray = [];
}
lineOrigin.copyFrom( myPlayer.actor.mesh.position );
const yaw = myPlayer.actor.mesh.rotation.y;
lineOrigin.x += Math.sin( yaw );
lineOrigin.z += Math.cos( yaw );
lineOrigin.y += Math.sin( - myPlayer.pitch );
for ( let i = 0; i < linesArray.length; i ++ ) {
linesArray[ i ].playerExists = false;
}
for ( let i = 0; i < players.length; i ++ ) {
const player = players[ i ];
if ( ! player || player === myPlayer ) {
continue;
}
if ( player.sphere === undefined ) {
console.log( 'Adding sphere...' );
const material = new BABYLON.StandardMaterial( 'myMaterial', player.actor.scene );
material.emissiveColor = material.diffuseColor = new BABYLON.Color3( 1, 0, 0 );
material.wireframe = true;
const sphere = BABYLON.MeshBuilder.CreateBox( 'mySphere', { width: 0.5, height: 0.75, depth: 0.5 }, player.actor.scene );
sphere.material = material;
sphere.position.y = 0.3;
sphere.parent = player.actor.mesh;
player.sphere = sphere;
}
if ( player.lines === undefined ) {
const options = {
points: [ lineOrigin, player.actor.mesh.position ],
updatable: true
};
const lines = options.instance = BABYLON.MeshBuilder.CreateLines( 'lines', options, player.actor.scene );
lines.color = new BABYLON.Color3( 1, 0, 0 );
lines.alwaysSelectAsActiveMesh = true;
lines.renderingGroupId = 1;
player.lines = lines;
player.lineOptions = options;
linesArray.push( lines );
console.log( '%cAdding line...', 'color: green; background: black; font-size: 2em;' );
}
player.lines.playerExists = true;
player.lines = BABYLON.MeshBuilder.CreateLines( 'lines', player.lineOptions );
player.sphere.renderingGroupId = espEnabled ? 1 : 0;
player.sphere.visibility = ( aimbotEnabled || espEnabled ) && myPlayer !== player && ( myPlayer.team === 0 || myPlayer.team !== player.team );
player.lines.visibility = player.playing && player.sphere.visibility && showLines;
}
for ( let i = 0; i < linesArray.length; i ++ ) {
if ( ! linesArray[ i ].playerExists ) {
console.log( '%cRemoving line...', 'color: red; background: black; font-size: 2em;' );
linesArray[ i ].dispose();
linesArray.splice( i, 1 );
}
}
if ( aimbotEnabled && ( aimbotOnRightMouse ? rightMouseDown : true ) && myPlayer.playing ) {
let minDistance = Infinity;
let targetPlayer;
for ( let i = 0; i < players.length; i ++ ) {
const player = players[ i ];
if ( player && player !== myPlayer && player.playing && ( myPlayer.team === 0 || player.team !== myPlayer.team ) ) {
const distance = Math.hypot( player.x - myPlayer.x, player.y - myPlayer.y, player.z - myPlayer.z );
if ( distance < minDistance ) {
minDistance = distance;
targetPlayer = player;
}
}
}
if ( targetPlayer ) {
const x = targetPlayer.actor.mesh.position.x - myPlayer.actor.mesh.position.x;
const y = targetPlayer.actor.mesh.position.y - myPlayer.actor.mesh.position.y;
const z = targetPlayer.actor.mesh.position.z - myPlayer.actor.mesh.position.z;
myPlayer.yaw = Math.radAdd( Math.atan2( x, z ), 0 );
myPlayer.pitch = - Math.atan2( y, Math.hypot( x, z ) ) % 1.5;
}
}
}
delete localStorage[ 'lastVersionPlayed' ];
What is it?
The script without the ads!!
It doesnt work
Why dude, what's your problem? You made a good script, and then tossed it out the fucking window so that you could advertise for a shitty 3-d among us clone.
Bro, he needs to make money. Don't like it? Make your own script!!!
Don't worry bud, I'm workin' on something to stop those dumbass redirects.
The script without the ads!!
bruh, why! the guy needs to make cash. you think these scripts are easy?
"Make Your own script"
I'm actually developing a script with ESP, Aimbot, and Infinite Ammo. I'll let ya know when it releases.
;)
"Make Your own script"
I'm actually developing a script with ESP, Aimbot, and Infinite Ammo. I'll let ya know when it releases.
;)
You a dev? Inf ammo ain't possible...let me see the WIP...
XD LMFAO You don't even know me and you assume I 'cant be a dev'? First of all kid, I make mods for Switch games and 2nd of all what WIP? This isn't gonna be some GreasyFork script, it's gonna be a separate Extension made from a folder. If you would like to see it in action when done just say so.
XD LMFAO You don't even know me and you assume I 'cant be a dev'? First of all kid, I make mods for Switch games and 2nd of all what WIP? This isn't gonna be some GreasyFork script, it's gonna be a separate Extension made from a folder. If you would like to see it in action when done just say so.
Well, for one thing, removing the ads from the scripts from this one is easy. Also, isn't inf ammo changing what's beyond limits?
Might be wrong, but considering no imf ammo stuff exists yet...
What I mean by infinite ammo isn't like "you can shoot forever and never run out" I mean like for example you have limited reload packs where you need to collect more 'ammo' from around the map. What makes it something like 1/40 or something like that it will not reduce when you reload like 1/39 it will always be /40 or whatever amount is for that weapon. Also removing the ads from this script is very easy, BUT the script doesn't even work if you remove them.
What I mean by infinite ammo isn't like "you can shoot forever and never run out" I mean like for example you have limited reload packs where you need to collect more 'ammo' from around the map. What makes it something like 1/40 or something like that it will not reduce when you reload like 1/39 it will always be /40 or whatever amount is for that weapon. Also removing the ads from this script is very easy, BUT the script doesn't even work if you remove them.
I see about the ammo now, thanks for clarifying.
Also, the script does work fine if you remove them. My friend was able to remove the ads by changing 3 lines per my request.
Np.
It does? I removed some stuff and it didn't work after that. Also since this seems easier you should make a YT Video on how to fix it and get rid of these specific 3 lines.
Np.
It does? I removed some stuff and it didn't work after that. Also since this seems easier you should make a YT Video on how to fix it and get rid of these specific 3 lines.
I sent it to you in a message. Don't want everyone having access as I do respect that zert is a dev who does need the revenue from ads. Since you are a dev, I will allow you to have this.
(I don't have a YT)
Why dude, what's your problem? You made a good script, and then tossed it out the fucking window so that you could advertise for a shitty 3-d among us clone.