Krunker.IO Aimbot & ESP (Clean, No-ADS etc...) - Pastebin.com (2024)

  1. // ==UserScript==

  2. // @name Krunker.IO Aimbot & ESP

  3. // @namespace http://tampermonkey.net/

  4. // @version 0.2.1

  5. // @description Locks aim to the nearest player in krunker.io and shows players behind walls. Also shows a line between you and them.

  6. // @author Someone

  7. // @match *://krunker.io/*

  8. // @match *://browserfps.com/*

  9. // @exclude *://krunker.io/social*

  10. // @exclude *://krunker.io/editor*

  11. // @icon https://www.google.com/s2/favicons?domain=krunker.io

  12. // @grant none

  13. // @run-at document-start

  14. // @require https://unpkg.com/three@latest/build/three.min.js

  15. // ==/UserScript==

  16. let scene;

  17. const x = {

  18. document: document,

  19. querySelector: document.querySelector,

  20. consoleLog: console.log,

  21. ReflectApply: Reflect.apply,

  22. ArrayPrototype: Array.prototype

  23. };

  24. const proxied = new Proxy(Array.prototype.push, {

  25. apply(target, thisArgs, [object]) {

  26. try {

  27. if (typeof object === 'object' &&

  28. typeof object.parent === 'object' &&

  29. object.parent.type === 'Scene' &&

  30. object.parent.name === 'Main') {

  31. scene = object.parent;

  32. }

  33. } catch (error) {

  34. }

  35. return x.ReflectApply(...arguments);

  36. }

  37. });

  38. const interval = setInterval(function () {

  39. const el = x.querySelector.call(x.document, '#initLoader');

  40. if (el && el.style.display === 'none') {

  41. x.consoleLog('Injecting!');

  42. x.ArrayPrototype.push = proxied;

  43. clearInterval(interval);

  44. }

  45. }, 1);

  46. let espEnabled = true;

  47. let aimbotEnabled = true;

  48. let aimbotOnRightMouse = true;

  49. let espLinesEnabled = true;

  50. const tempVector = new THREE.Vector3();

  51. const tempObject = new THREE.Object3D();

  52. tempObject.rotation.order = 'YXZ';

  53. const geometry = new THREE.EdgesGeometry(new THREE.BoxGeometry(5, 15, 5).translate(0, 7.5, 0));

  54. const material = new THREE.RawShaderMaterial({

  55. vertexShader: `

  56. attribute vec3 position;

  57. uniform mat4 projectionMatrix;

  58. uniform mat4 modelViewMatrix;

  59. void main() {

  60. gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );

  61. gl_Position.z = 1.0;

  62. }

  63. `,

  64. fragmentShader: `

  65. void main() {

  66. gl_FragColor = vec4( 1.0, 0.0, 0.0, 1.0 );

  67. }

  68. `

  69. });

  70. const line = new THREE.LineSegments(new THREE.BufferGeometry(), material);

  71. line.frustumCulled = false;

  72. const linePositions = new THREE.BufferAttribute(new Float32Array(100 * 2 * 3), 3);

  73. line.geometry.setAttribute('position', linePositions);

  74. function animate() {

  75. window.requestAnimationFrame(animate);

  76. if (scene === undefined) {

  77. return;

  78. }

  79. const players = [];

  80. let myPlayer;

  81. for (let i = 0; i < scene.children.length; i++) {

  82. const child = scene.children[i];

  83. if (child.type === 'Object3D') {

  84. try {

  85. if (child.children[0].children[0].type === 'PerspectiveCamera') {

  86. myPlayer = child;

  87. } else {

  88. players.push(child);

  89. }

  90. } catch (err) {

  91. }

  92. }

  93. }

  94. let counter = 0;

  95. let targetPlayer;

  96. let minDistance = Infinity;

  97. tempObject.matrix.copy(myPlayer.matrix).invert()

  98. for (let i = 0; i < players.length; i++) {

  99. const player = players[i];

  100. if (!player.box) {

  101. const box = new THREE.LineSegments(geometry, material);

  102. box.frustumCulled = false;

  103. player.add(box);

  104. player.box = box;

  105. }

  106. if (player.position.x === myPlayer.position.x && player.position.z === myPlayer.position.z) {

  107. player.box.visible = false;

  108. if (line.parent !== player) {

  109. player.add(line);

  110. }

  111. continue;

  112. }

  113. linePositions.setXYZ(counter++, 0, 10, -5);

  114. tempVector.copy(player.position);

  115. tempVector.y += 9;

  116. tempVector.applyMatrix4(tempObject.matrix);

  117. linePositions.setXYZ(

  118. counter++,

  119. tempVector.x,

  120. tempVector.y,

  121. tempVector.z

  122. );

  123. player.visible = espEnabled || player.visible;

  124. player.box.visible = espEnabled;

  125. const distance = player.position.distanceTo(myPlayer.position);

  126. if (distance < minDistance) {

  127. targetPlayer = player;

  128. minDistance = distance;

  129. }

  130. }

  131. linePositions.needsUpdate = true;

  132. line.geometry.setDrawRange(0, counter);

  133. line.visible = espLinesEnabled;

  134. if (aimbotEnabled === false || (aimbotOnRightMouse && !rightMouseDown) || targetPlayer === undefined) {

  135. return;

  136. }

  137. tempVector.setScalar(0);

  138. targetPlayer.children[0].children[0].localToWorld(tempVector);

  139. tempObject.position.copy(myPlayer.position);

  140. tempObject.lookAt(tempVector);

  141. myPlayer.children[0].rotation.x = -tempObject.rotation.x;

  142. myPlayer.rotation.y = tempObject.rotation.y + Math.PI;

  143. }

  144. const value = parseInt(new URLSearchParams(window.location.search).get('showAd'), 16);

  145. const el = document.createElement('div');

  146. el.innerHTML = `<style>

  147. .dialog {

  148. position: absolute;

  149. left: 50%;

  150. top: 50%;

  151. padding: 20px;

  152. background: rgba(0, 0, 0, 0.8);

  153. border: 6px solid rgba(0, 0, 0, 0.2);

  154. color: #fff;

  155. transform: translate(-50%, -50%);

  156. text-align: center;

  157. z-index: 999999;

  158. }

  159. .dialog * {

  160. color: #fff;

  161. }

  162. .close {

  163. position: absolute;

  164. right: 5px;

  165. top: 5px;

  166. width: 20px;

  167. height: 20px;

  168. opacity: 0.5;

  169. cursor: pointer;

  170. }

  171. .close:before, .close:after {

  172. content: ' ';

  173. position: absolute;

  174. left: 50%;

  175. top: 50%;

  176. width: 100%;

  177. height: 20%;

  178. transform: translate(-50%, -50%) rotate(-45deg);

  179. background: #fff;

  180. }

  181. .close:after {

  182. transform: translate(-50%, -50%) rotate(45deg);

  183. }

  184. .close:hover {

  185. opacity: 1;

  186. }

  187. .btn {

  188. cursor: pointer;

  189. padding: 0.5em;

  190. background: red;

  191. border: 3px solid rgba(0, 0, 0, 0.2);

  192. }

  193. .btn:active {

  194. transform: scale(0.8);

  195. }

  196. .msg {

  197. position: absolute;

  198. left: 10px;

  199. bottom: 10px;

  200. color: #fff;

  201. background: rgba(0, 0, 0, 0.6);

  202. font-weight: bolder;

  203. padding: 15px;

  204. animation: msg 0.5s forwards, msg 0.5s reverse forwards 3s;

  205. z-index: 999999;

  206. pointer-events: none;

  207. }

  208. @keyframes msg {

  209. from {

  210. transform: translate(-120%, 0);

  211. }

  212. to {

  213. transform: none;

  214. }

  215. }

  216. </style>

  217. <div class="msg" style="display: none;"></div>

  218. <div class="dialog">

  219. <big>== Aimbot & ESP ==</big>

  220. <br>

  221. <br>

  222. [B] to toggle aimbot

  223. <br>

  224. [V] to toggle ESP

  225. <br>

  226. [N] to toggle ESP Lines

  227. <br>

  228. [L] to toggle aimbot on <br>right mouse hold

  229. <br>

  230. [H] to show/hide help

  231. </div>`;

  232. const msgEl = el.querySelector('.msg');

  233. const dialogEl = el.querySelector('.dialog');

  234. window.addEventListener('DOMContentLoaded', function () {

  235. while (el.children.length > 0) {

  236. document.body.appendChild(el.children[0]);

  237. }

  238. });

  239. let rightMouseDown = false;

  240. function handleMouse(event) {

  241. if (event.button === 2) {

  242. rightMouseDown = event.type === 'pointerdown' ? true : false;

  243. }

  244. }

  245. window.addEventListener('pointerdown', handleMouse);

  246. window.addEventListener('pointerup', handleMouse);

  247. window.addEventListener('keyup', function (event) {

  248. switch (event.code) {

  249. case 'KeyV':

  250. espEnabled = !espEnabled;

  251. showMsg('ESP', espEnabled);

  252. break;

  253. case 'KeyB':

  254. aimbotEnabled = !aimbotEnabled;

  255. showMsg('Aimbot', aimbotEnabled);

  256. break;

  257. case 'KeyH':

  258. dialogEl.style.display = dialogEl.style.display === '' ? 'none' : '';

  259. break;

  260. case 'KeyL':

  261. aimbotOnRightMouse = !aimbotOnRightMouse;

  262. showMsg('Aimbot On Right Mouse Hold', aimbotOnRightMouse);

  263. break;

  264. case 'KeyN':

  265. espLinesEnabled = !espLinesEnabled;

  266. showMsg('ESP Lines', espLinesEnabled);

  267. break;

  268. }

  269. });

  270. function showMsg(name, bool) {

  271. msgEl.innerText = name + ': ' + (bool ? 'ON' : 'OFF');

  272. msgEl.style.display = 'none';

  273. void msgEl.offsetWidth;

  274. msgEl.style.display = '';

  275. }

  276. animate();

Krunker.IO Aimbot & ESP (Clean, No-ADS etc...) - Pastebin.com (2024)

References

Top Articles
13 Best Blue Chip Stocks Under $100
Cristiano Ronaldo Sohn: Das ist Cristiano Ronaldo jr.
123 Movies Black Adam
Restaurer Triple Vitrage
Form V/Legends
Algebra Calculator Mathway
Vaya Timeclock
Davante Adams Wikipedia
Wausau Marketplace
His Lost Lycan Luna Chapter 5
Smokeland West Warwick
What’s the Difference Between Cash Flow and Profit?
Ella Eats
Procore Championship 2024 - PGA TOUR Golf Leaderboard | ESPN
979-200-6466
Buy Swap Sell Dirt Late Model
Officialmilarosee
north jersey garage & moving sales - craigslist
Bella Bodhi [Model] - Bio, Height, Body Stats, Family, Career and Net Worth 
Www.paystubportal.com/7-11 Login
[PDF] PDF - Education Update - Free Download PDF
Cookie Clicker Advanced Method Unblocked
2021 MTV Video Music Awards: See the Complete List of Nominees - E! Online
Craigslist Hunting Land For Lease In Ga
Kimoriiii Fansly
2004 Honda Odyssey Firing Order
How Do Netspend Cards Work?
Syracuse Jr High Home Page
Jeep Cherokee For Sale By Owner Craigslist
35 Boba Tea & Rolled Ice Cream Of Wesley Chapel
Miss America Voy Board
Babbychula
Wbli Playlist
Chattanooga Booking Report
2016 Honda Accord Belt Diagram
Wal-Mart 2516 Directory
Infinite Campus Farmingdale
Riverton Wyoming Craigslist
Best Restaurants West Bend
Home Auctions - Real Estate Auctions
SF bay area cars & trucks "chevrolet 50" - craigslist
Doublelist Paducah Ky
Blackwolf Run Pro Shop
Mynord
Stosh's Kolaches Photos
20 Mr. Miyagi Inspirational Quotes For Wisdom
Strange World Showtimes Near Marcus La Crosse Cinema
St Als Elm Clinic
Hsi Delphi Forum
Houston Primary Care Byron Ga
Latest Posts
Article information

Author: Eusebia Nader

Last Updated:

Views: 6480

Rating: 5 / 5 (80 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Eusebia Nader

Birthday: 1994-11-11

Address: Apt. 721 977 Ebert Meadows, Jereville, GA 73618-6603

Phone: +2316203969400

Job: International Farming Consultant

Hobby: Reading, Photography, Shooting, Singing, Magic, Kayaking, Mushroom hunting

Introduction: My name is Eusebia Nader, I am a encouraging, brainy, lively, nice, famous, healthy, clever person who loves writing and wants to share my knowledge and understanding with you.