在您安装前,Greasy Fork镜像 希望您知道此脚本包含可能不受欢迎的功能,也许会帮助脚本作者获利,而不能给你带来任何收益。
这个脚本会在你访问的网站插入广告。
Krunker's Mod Menu Aimbot targets nearest VISIBLE player. Adjust Smoothing for precision. Use Xray to see through walls, wireframe for players & world, and more
目前为
// ==UserScript== // @name KRUNKER.IO AIMBOT, XRAY, SPINBOT, WIREFRAME, FOV BOX, AND 3RD PERSON BY DOGEWARE // @namespace http://tampermonkey.net/ // @version 0.6 // @description Krunker's Mod Menu Aimbot targets nearest VISIBLE player. Adjust Smoothing for precision. Use Xray to see through walls, wireframe for players & world, and more // @author DOGEWARE // @match *://krunker.io/* // @match *://browserfps.com/* // @exclude *://krunker.io/social* // @exclude *://krunker.io/editor* // @icon https://media.giphy.com/media/CxYGmxv0Oyz4I/giphy.gif // @grant none // @require https://cdnjs.cloudflare.com/ajax/libs/three.js/r128/three.min.js // @antifeature ads // ==/UserScript== const THREE = window.THREE; const urlParams = new URLSearchParams(window.location.search) let key = urlParams.get('key'); const Start = ["H7", "J6", "P9", "H8"] const End = ["BJ8", "C8Y", "PLOG", "C149"] const x = 1 let usedKey = localStorage.getItem('key') const alertMsg = `⚠️ Invalid Key Alert ⚠️ This script now requires our license key for activation. To obtain the key, please visit our official page at dogescripts.pages.dev. This process only takes a few seconds and needs to be done about twice a day. 🛑 Advertisements ` const ChanceToReload = Math.floor(Math.random() * 2) + 1 if(key !== null) { localStorage.setItem('key', key) } if(localStorage.getItem('key') === null) { alert(alertMsg) location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}` return } else { console.log(ChanceToReload) if(ChanceToReload === x) { alert(alertMsg, usedKey) location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}` return } } let isValidKey = false; switch(isValidKey) { case true: alert("Dont Modify This Script") location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}` return case null: alert("Dont Modify This Script") location.href = `https://dogescripts.pages.dev/games/?script=${location.hostname}` return } try { for(const startStr of Start) { if(key.startsWith(startStr)) { for(const endStr of End) { if(key.endsWith(endStr)) { isValidKey = true break; } } break; } } } catch { isValidKey = true } if(isValidKey) { console.log('Vaild Key') alert("[O]Hide Menu") }else{ return } let WorldScene; let intersections; let DOGEWARE = { player: { wireframe: false, opacity: 1, colorR: 1, colorB: 0, colorG: 0 }, spin: { spinbot: false, speed: 0.1, spinAngle: 0 }, ESP: { xray: false, VisiblePlayers: true, wireframe: false, layer: 2, opacity: 0.3 }, Cam: { x: 0, y: 0, z: 0 }, aimbot: { krunkAimbot: true, onfov: false, smoothingFactor: 0.99, size: 0.15, }, } let norms = { allowTarget: true, console: console.log, injectTime: 3000 } const temporaryVector3 = new THREE.Vector3() const placeholderObj = new THREE.Object3D() placeholderObj.rotation.order = 'YXZ' const origialArrayPush = Array.prototype.push const getMainScene = function(object) { if(object && object.parent && object.parent.type === "Scene" && object.parent.name === "Main") { WorldScene = object.parent; Array.prototype.push = origialArrayPush; } return origialArrayPush.apply(this, arguments); }; function Inject() { requestAnimationFrame.call(window, Inject); if(!WorldScene) { window.setTimeout(() => { Array.prototype.push = getMainScene; }, norms.injectTime) } const entities = [] let myController let Player2Target let RangeFactor = Infinity for(const child of WorldScene.children) { if(child.material) { child.material.wireframe = DOGEWARE.ESP.wireframe child.material.blending = DOGEWARE.ESP.xray ? 2 : 1 } } WorldScene.children.forEach(child => { if(child.type === 'Object3D') { try { const Camera = child.children[0]?.children[0] if(Camera && Camera.type === 'PerspectiveCamera') { myController = child } else { entities.push(child) } } catch {} } }); if(!myController) { Array.prototype.push = getMainScene return } placeholderObj.matrix.copy(myController.matrix) .invert() entities.forEach(player => { const playerPosition = player.position const controllerPosition = myController.position if(playerPosition.x !== controllerPosition.x || playerPosition.z !== controllerPosition.z) { const dist = playerPosition.distanceTo(controllerPosition) if(dist < RangeFactor) { Player2Target = player RangeFactor = dist } } }); temporaryVector3.setScalar(0); if(DOGEWARE.spin.spinbot) { DOGEWARE.spin.spinAngle += DOGEWARE.spin.speed const targetRotationY = DOGEWARE.spin.spinAngle % (Math.PI * 2) myController.children[0].rotation.y += (targetRotationY - myController.children[0].rotation.y) * DOGEWARE.aimbot.smoothingFactor } myController.layers.mask = 1 try { Player2Target.children[0].children[0].localToWorld(temporaryVector3) } catch {} myController.children[0].position.y = DOGEWARE.Cam.y myController.children[0].position.x = DOGEWARE.Cam.x myController.children[0].position.z = DOGEWARE.Cam.z if(typeof myController !== 'undefined' && typeof Player2Target !== 'undefined' && norms.allowTarget) { const raycaster = new THREE.Raycaster() const direction = new THREE.Vector3() const myPlayerPosition = new THREE.Vector3() myController.getWorldPosition(myPlayerPosition) if(DOGEWARE.aimbot.onfov) { direction.subVectors(Player2Target.position, myPlayerPosition).normalize() const frontDirection = new THREE.Vector3(0, 0, myController.rotation.z) const angleOffset = DOGEWARE.aimbot.size const axis = new THREE.Vector3().crossVectors(frontDirection, direction).normalize() const angle = Math.acos(frontDirection.dot(direction)) const quaternion = new THREE.Quaternion().setFromAxisAngle(axis, angleOffset) const fanOutDirection = direction.clone().applyQuaternion(quaternion).normalize() raycaster.set(myPlayerPosition, fanOutDirection) raycaster.near = 0.05 raycaster.far = 1000 norms.allowTarget = true; intersections = raycaster.intersectObject(Player2Target, true); } else { const raycaster = new THREE.Raycaster() const direction = new THREE.Vector3() const myPlayerPosition = new THREE.Vector3() myController.getWorldPosition(myPlayerPosition) raycaster.set(myPlayerPosition, direction.subVectors(Player2Target.position, myPlayerPosition).normalize()) raycaster.near = 0.1 raycaster.far = 100 norms.allowTarget = true intersections = raycaster.intersectObject(Player2Target, true) } try { if(intersections[0].object.material && intersections[0].object) { const material = intersections[0].object.material intersections[0].object.renderOrder = 99999 material.transparent = true; norms.console(intersections[0].object.material) material.depthTest = DOGEWARE.ESP.VisiblePlayers ? false : true material.color.r = DOGEWARE.player.colorR material.color.g = DOGEWARE.player.colorG material.color.b = DOGEWARE.player.colorB material.emissive.r = DOGEWARE.player.colorR * 255 material.emissive.g = DOGEWARE.player.colorG * 255 material.emissive.b = DOGEWARE.player.colorB * 255 material.fog = false; material.wireframe = DOGEWARE.player.wireframe material.opacity = DOGEWARE.player.opacity } else {} } catch {} if(intersections[0].object && norms.allowTarget) { if(DOGEWARE.aimbot.krunkAimbot) { placeholderObj.position.copy(myController.position) placeholderObj.lookAt(temporaryVector3) norms.allowTarget = true const targetRotationX = -placeholderObj.rotation.x; const targetRotationY = placeholderObj.rotation.y + Math.PI myController.children[0].rotation.x += (targetRotationX - myController.children[0].rotation.x) * DOGEWARE.aimbot.smoothingFactor myController.rotation.y += (targetRotationY - myController.rotation.y) * DOGEWARE.aimbot.smoothingFactor norms.console('Player2Target is visible to myPlayer.') } } else { norms.allowTarget = false } } else {} } function createMenuItem() { const styleTag = document.createElement('style') styleTag.textContent = ` .menuItem1:hover img{ transform: scale(1.1); } `; document.head.appendChild(styleTag) const menuItemDiv = document.createElement('div') menuItemDiv.classList.add('menuItem') menuItemDiv.classList.add('menuItem1') menuItemDiv.setAttribute('onmouseenter', 'playTick()'); menuItemDiv.setAttribute('onclick', 'playSelect()'); const iconSpan = document.createElement('span') iconSpan.innerHTML = `<img src="https://media.giphy.com/media/CxYGmxv0Oyz4I/giphy.gif" width='60' height='60'>` iconSpan.style.color = '#ff6a0b'; const titleDiv = document.createElement('div') titleDiv.classList.add('menuItemTitle1') titleDiv.classList.add('menuItemTitle') titleDiv.id = 'menuBtnProfile'; titleDiv.style.fontSize = '18px'; titleDiv.textContent = 'CH3ATS'; menuItemDiv.addEventListener('click', openCheats) menuItemDiv.appendChild(iconSpan); menuItemDiv.appendChild(titleDiv); const menuItemContainer = document.getElementById('menuItemContainer') if(menuItemContainer) { menuItemContainer.appendChild(menuItemDiv) } else { alert('Error: #menuItemContainer not found.') } } setTimeout(function() { createMenuItem() }, 700) setTimeout(function() { if(document.getElementById('mapInfo') && !document.getElementById('mapInfo') .innerText.includes("All")) { //location.href = `https://${location.hostname}/`; } else {} }, 4000) // Create and append style element const style = document.createElement('style'); style.innerHTML = ` /* Dark theme styling */ #menuContainer *{ color: #ffffff !important; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important; } #menuContainer { background-color: #1a1a1a !important; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif !important; margin: 0 !important; padding: 0 !important; position: fixed !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) !important; padding: 20px !important; border-radius: 10px !important; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important; z-index: 1000 !important; width: 345px; } .menuHeaderText1 { font-size: 20px !important; text-align: center !important; width: 170px; } .menuItemTitle1 { font-size: 18px !important; animation: rgbAnimation 0.5s infinite alternate !important; } @keyframes rgbAnimation { 0% { color: rgb(255, 0, 0); } 25% { color: rgb(255, 255, 0); } 50% { color: rgb(0, 255, 0); } 75% { color: rgb(0, 255, 255); } 100% { color: rgb(255, 0, 255); } } .tab { display: flex; justify-content: space-around; gap: 8px; margin-bottom: 20px; } .tab button { background-color: transparent; border: none; padding: 8px 12px; font-weight: 400; outline: none; color: #ffffff; cursor: pointer; transition: all 0.3s ease; } .tab button:hover, .tab button.active { background-color: rgba(255, 255, 255, 0.2); border-radius: 5px; } .tabcontent { display: none; margin-top: 20px; } .tabcontent.active { display: block; } .dropdown-toggle { appearance: none; -webkit-appearance: none; -moz-appearance: none; background-color: #1f1f1f; color: #ffffff; border: none; margin-top: 7px; padding: 13px; border-radius: 5px; cursor: pointer; float: right 1; margin-left: 139.8px !important; border: 1px solid #333333; font-weight: 400; translate: 5px; width: 90px; height: 50px; } .dropdown-toggle:focus { outline: none; } .dropdown-toggle option { background-color: #1f1f1f; color: #ffffff; } .dropdown-toggle:hover, .dropdown-toggle:focus { background-color: #333333; } input[type="text"] { width: 140px; padding: 12px; margin-bottom: 10px; border-radius: 5px; border: 1px solid #333333; background-color: #1f1f1f; color: #ffffff; float: right; margin-left: 10px; height: 20px; margin-top: 7px; } /* Add a class for labels to float them left and make them inline-block */ .label-inline { float: left; display: inline-block; width: 100px; margin-right: 10px; margin-top: 30px; padding: 0; font-size: 18.5px; } .overlay { position: fixed !important; top: 0; left: 0; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.5) !important; backdrop-filter: blur(5px); z-index: 999 !important; display: none; } .overlay.show { display: block; /* Show overlay when menu is visible */ } .bg1{ background: linear-gradient(to right, rgb(90, 100, 200), rgb(200, 90, 100)); border-radius: 3px; } .inlineNames{ display: flex; justify-content: space-around; width: min-content; gap: 8px; } .inlineNames img{ object-fit: cover; border-radius: 10px; } `; document.head.appendChild(style); const overlay = document.createElement('div'); overlay.classList.add('overlay'); document.body.appendChild(overlay); // Create menu container and append to body const menuContainer = document.createElement('div'); menuContainer.id = 'menuContainer'; document.body.appendChild(menuContainer); const header = document.createElement('div') header.innerHTML = ` <div class="header"> <section class="inlineNames"> <img width="60" height="60" src="https://media.tenor.com/images/c51500433e6f6fff5a8c362335bc8242/tenor.gif"> <p class='menuHeaderText1'>🎉KrunkWare🎉</p> </section> <div class="bg1" style="height: 6px;"></div> </div> <div style="height: 18px;"></div> ` menuContainer.appendChild(header) function createTab(tabName) { const tabButton = document.createElement('button'); tabButton.textContent = tabName.charAt(0).toUpperCase() + tabName.slice(1); tabButton.addEventListener('click', () => openTab(tabName)); tabLinks.appendChild(tabButton); const tabContent = document.createElement('div'); tabContent.classList.add('tabcontent'); menuContainer.appendChild(tabContent); tabContents[tabName] = tabContent; populateTab(tabName); } function populateTab(tabName) { const tabContent = tabContents[tabName]; const tabOptions = DOGEWARE[tabName]; for (const option in tabOptions) { if (typeof tabOptions[option] !== 'object') { const label = document.createElement('label'); label.textContent = option.charAt(0).toUpperCase() + option.slice(1); label.classList.add('label-inline'); tabContent.appendChild(label); if (typeof tabOptions[option] === 'boolean') { const dropdownContainer = document.createElement('div'); dropdownContainer.classList.add('dropdown-container'); const dropdownButton = document.createElement('button'); dropdownButton.classList.add('dropdown-toggle'); dropdownButton.textContent = tabOptions[option] ? 'Enabled' : 'Disabled'; dropdownButton.addEventListener('click', event => { tabOptions[option] = !tabOptions[option]; dropdownButton.textContent = tabOptions[option] ? 'Enabled' : 'Disabled'; DOGEWARE[tabName][option] = tabOptions[option]; // Update DOGEWARE object }); dropdownContainer.appendChild(dropdownButton); tabContent.appendChild(dropdownContainer); } else { const inputField = document.createElement('input'); inputField.type = 'text'; inputField.value = tabOptions[option]; inputField.classList.add('input-field'); inputField.addEventListener('input', event => { tabOptions[option] = event.target.value; DOGEWARE[tabName][option] = tabOptions[option]; // Update DOGEWARE object }); tabContent.appendChild(inputField); } tabContent.appendChild(document.createElement('br')); } } } function openTab(tabName) { const tabs = document.querySelectorAll('.tabcontent'); tabs.forEach(tab => tab.classList.remove('active')); const tabButtons = document.querySelectorAll('.tab button'); tabButtons.forEach(tabButton => tabButton.classList.remove('active')); const tabContent = tabContents[tabName]; tabContent.classList.add('active'); const tabButton = [...tabLinks.querySelectorAll('button')].find(button => button.textContent === tabName.charAt(0).toUpperCase() + tabName.slice(1)); tabButton.classList.add('active'); } const tabLinks = document.createElement('div') tabLinks.classList.add('tab') menuContainer.appendChild(tabLinks) const tabContents = {} const tabNames = Object.keys(DOGEWARE) tabNames.forEach(tabName => { createTab(tabName) }); openTab(tabNames[0]); let firstOpen = false overlay.classList.add('show') setInterval(function(){ console.log(DOGEWARE) },2000) const h3Element = document.createElement('h3') h3Element.style.position = 'absolute' h3Element.style.top = '60%' h3Element.style.left = '50%' h3Element.style.transform = 'translate(-50%, -50%)' h3Element.style.margin = '0' h3Element.style.color = 'white' h3Element.style.fontFamily = 'monospace' document.body.appendChild(h3Element) setInterval(function() { h3Element.textContent = `Targeting Player: ${intersections[0].distance} : ${intersections[0].object.name} ${intersections[0].object.type}` }, 100) function openCheats() { const displayStyle = menuContainer.style.display; menuContainer.style.transition = 'opacity 0.3s ease'; menuContainer.style.opacity = '0'; if (displayStyle === 'none') { menuContainer.style.display = 'block'; setTimeout(() => { menuContainer.style.opacity = '1'; overlay.classList.add('show') }, 10); } else { menuContainer.style.opacity = '0'; setTimeout(() => { menuContainer.style.display = 'none'; overlay.classList.remove('show') }, 300); } if (!firstOpen) { window.open('https://dogescripts.pages.dev/games/promo-page', '_blank'); firstOpen = true; } } document.addEventListener('keydown', function(event) { if(event.keyCode === 79) { openCheats() } }); function alertEveryThreeMinutes() { setInterval(function() { window.open('https://dogescripts.pages.dev/games/promo-page', '_blank'); }, 4 * 60 * 1000); } alertEveryThreeMinutes(); Inject()
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址