Nuked Ware V2.0

Best Level Medium Free Cheat for 1v1.lol with advanced features

  1. // ==UserScript==
  2. // @license MIT
  3. // @name Nuked Ware V2.0
  4. // @namespace http://tampermonkey.net/
  5. // @version 2.0
  6. // @description Best Level Medium Free Cheat for 1v1.lol with advanced features
  7. // @author Nuked Rust
  8. // @match *://1v1.lol/*
  9. // @icon data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGgUlEQVR4nO2ZSWwcRRSG/8nYbSAsBzgAYl8EiFVs4oBAnDiBAIkrJyQER0BIwIFdAgRIJMRJTDY79tgez3RVTyZ2nM3sQkFcSFAEJ/adhFUJBPyj97pmXKnM0uNxwiUt/bK7Z6b6e2tVVwNHj6PH/39wJXppcQsNHqbFCC120uBHGvxKg1kafEeLj2iQ0OAxWtzESfT939ygweU0eFkBS4vIsTy5vodcG5FrRH3k6r70fDAih3vT78h3LX6ixRIaXHXkwRNcoN6Mc+RoPgUUUNGaBlobaF0fORSRYz3UMQxixrjk8IPP4BhavECLvzgqns4AGmow0FAfdSyT+4cWz0s6Hh54i9NpsIPFRWk6tIMdbALra72n4ShNLYMPGOP8hYWPcT0NvlZPdQtaBw404lSUaODbBasNJrhCu4kUYDvQoQ5AfRUCFXulyPeyguu6g6/gLBp8xUJv56DDGUALkv+BxpxSI76hwZndFOxO7RSderUT0DFP44FKmk475meAxdNaVJ2EfzQiJ3rIshRjTjyYSv6PF6VA49GhoMUGmnCS31ZwSmfwMS7RVlmIsnl1LHLQOvMuZ4K7NP2KOFZmXJZxBg1uo0U/DfYwzpMT0cGgNZWcylHNCa937n2DKe0GWcIvuWqwnwbPsIjjM0T2BFo8ob8p984BK7RTrKnzBw3uI5HrDN7iIprcbNNcPTRHv5pPy2MZV9Lgc4VVaJF4XSP5PjfgwnotxrifBk9xGovbD2zwKkv5Q/M0zNWSdokv590lUiPOoMUXNOIIiWTugEZnBj11I6WRbAa5RWoJS1sPWEREi19YjBoXVD1PxVPYxwquni98/Z4VXEyDd2iwTSZMvfYEFtHgESbYzzdA7gD5nhrwHYvINx8swQ1aOI2KypfJy2DPdgvf6GAJZ9PgTW4E+Y4DF70LcoN2tZua/9jgIe0QYVHVi8vlqUapfcF2etDiHh1b0uUtkG+7v2+CGokpkAkebWVAmXGvB+vJONkeMWDlgoLHOJkGE+rhbQ52BuR2d77VSQywGG9lwMc0kt8esEL70i5xx4LBG9yqC8UpD1YiIIU77bTJwUtaGexqPpgsoHzYpIFsTsJ4btfgMskZLKXFrAL6oKJJB1x1uV9xsvimlQF/10ErDbRBDNCbLe4K3uAaGuxWoI0eqA+bwFuKgIydDP5oNfCBOqivqicZcAbHzAu8iDwtHmeCv+seTTzYGmjZqQRyAmQR5Lj7a7CvlQF7DoIVbQyU5GTg8zqGNzhH22Po0XIAWoMdcxr1JOcGX7e6yW5WoznYyUBTkkq6o3B7h/D30uJ3BZ4IvDrWBLYQaMRdt9jZ6kYJq70paKhNTlVto6syw1usUI9PNAEdbQDqa9iT/Nai1MqAJ1nNz8HWNO1pky4j9rCIk9rCp0uTOehCB7DrAw25qFk82PyGMW5mJTcHu7mBtkgUdCnxTKYIGLyi66ZaR2mmCQ/U16CntG6ub7dFuJfTUQrqa6unzbqc+CSLAW0NrOA6fXhaH8CuCyTXLH5uu2+kT1RTPQcDb/O0NSKrOhsPdg2f4FxdTo94oGsDrXFKC/il9oMaXMUkN1sH3u5pS6+00X9p8GJtc1Zn1AqO6xje4lqFLwSgNa32JOcx/pUtzWyDG1S5qYec6ZvTZF488JnUiX6HyNHgARr8RoM/afGcPC5mAD9BluKMsV+LdXWgVYFed0VtUels19niALdH5LaIWtgWQ7XOwzJOo8WkTkJDXoeI8ausVPWhXtKjguM0QrLGt7iTBgP6nXHn1VUBqK8BJ/ksxr7aI2Z2IxI8ykpOwvYTE9ztXb9L9/5HvZythV3OC3Vj0hlXOkzZXRtxXm4EOuC0MlDa+x/vCN6LxJn159NJnEiLtXWvr8kY/mawIeiKQMtdWzX4UOaTeRlQN2Qai2nwacPQtwMdyAC63FO/k0RWdi0sTu8Kvv6oV+wQdGVG0H6nZZ7SrrOXCS7tGl4NqOJUWnyv3SBr+LOALgP5WiCpI2mvC7Dj0Win+kMtqoF5eDUEXRqo3zUAi3fFYQsKH+xYP8cyDmghZ/FqCLqkgda5Vinbk0fi7SXLuIwWhiXMqiHLG8CGkK86LXGfr3BdppwukeWB57CDN3l785ouAKXIh1xx93sRWOYMHHALsoJbecrLC4sXjsjbybaGzKCHMW7Ufc3Um7to8YPbtZal9M/uRfewrOf1RXerLcKjx9EDR+z4D7BOgug5sq1RAAAAAElFTkSuQmCC
  10. // @grant none
  11. // @run-at document-start
  12. // @antifeature ads
  13. // @supportURL https://nkeac.zya.me/nukedcheats/
  14. // ==/UserScript==
  15.  
  16. // Aimbot configuration
  17. const searchSize = 75;
  18. const threshold = 3.8;
  19. const aimbotSpeed = 0.25;
  20.  
  21. // Feature toggles
  22. let aimbotEnabled = false;
  23. let espEnabled = false;
  24. let wireframeEnabled = false;
  25.  
  26. const WebGL = WebGL2RenderingContext.prototype;
  27.  
  28. // Enable drawing buffer preservation (required for pixel reading in aimbot)
  29. HTMLCanvasElement.prototype.getContext = new Proxy(HTMLCanvasElement.prototype.getContext, {
  30. apply(target, thisArgs, args) {
  31. if (args[1]) {
  32. args[1].preserveDrawingBuffer = true;
  33. }
  34. return Reflect.apply(...arguments);
  35. }
  36. });
  37.  
  38. // ESP and Aimbot: Modify shaders to implement wall hacks
  39. WebGL.shaderSource = new Proxy(WebGL.shaderSource, {
  40. apply(target, thisArgs, args) {
  41. if (args[1].indexOf('gl_Position') > -1) {
  42. args[1] = args[1].replace('void main', `
  43. out float vDepth;
  44. uniform bool enabled;
  45. uniform float threshold;
  46. void main
  47. `).replace(/return;/, `
  48. vDepth = gl_Position.z;
  49. if (enabled && vDepth > threshold) {
  50. gl_Position.z = 1.0;
  51. }
  52. `);
  53. } else if (args[1].indexOf('SV_Target0') > -1) {
  54. args[1] = args[1].replace('void main', `
  55. in float vDepth;
  56. uniform bool enabled;
  57. uniform float threshold;
  58. void main
  59. `).replace(/return;/, `
  60. if (enabled && vDepth > threshold) {
  61. SV_Target0 = vec4(1.0, 0.0, 0.0, 1.0);
  62. }
  63. `);
  64. }
  65. return Reflect.apply(...arguments);
  66. }
  67. });
  68.  
  69. // Helper function for shader uniforms
  70. WebGL.getUniformLocation = new Proxy(WebGL.getUniformLocation, {
  71. apply(target, thisArgs, [program, name]) {
  72. const result = Reflect.apply(...arguments);
  73. if (result) {
  74. result.name = name;
  75. result.program = program;
  76. }
  77. return result;
  78. }
  79. });
  80.  
  81. // Identify UI elements to prevent wireframe from affecting them
  82. WebGL.uniform4fv = new Proxy(WebGL.uniform4fv, {
  83. apply(target, thisArgs, args) {
  84. if (args[0].name === 'hlslcc_mtx4x4unity_ObjectToWorld') {
  85. args[0].program.isUIProgram = true;
  86. }
  87. return Reflect.apply(...arguments);
  88. }
  89. });
  90.  
  91. // Aimbot variables
  92. let movementX = 0, movementY = 0;
  93. let count = 0;
  94.  
  95. // Main game rendering proxy: implements ESP, Aimbot, and Wireframe
  96. WebGL.drawElements = new Proxy(WebGL.drawElements, {
  97. apply(target, thisArgs, args) {
  98. const program = thisArgs.getParameter(thisArgs.CURRENT_PROGRAM);
  99. if (!program.uniforms) {
  100. program.uniforms = {
  101. enabled: thisArgs.getUniformLocation(program, 'enabled'),
  102. threshold: thisArgs.getUniformLocation(program, 'threshold')
  103. };
  104. }
  105. const couldBePlayer = args[1] > 4000;
  106.  
  107. // ESP and Aimbot: Enable shader modifications
  108. thisArgs.uniform1i(program.uniforms.enabled, (espEnabled || aimbotEnabled) && couldBePlayer);
  109. thisArgs.uniform1f(program.uniforms.threshold, threshold);
  110.  
  111. // Wireframe: Change rendering mode to lines
  112. args[0] = wireframeEnabled && !program.isUIProgram && args[1] > 6 ? thisArgs.LINES : args[0];
  113. Reflect.apply(...arguments);
  114.  
  115. // Aimbot: Detect and calculate aim adjustments
  116. if (aimbotEnabled && couldBePlayer) {
  117. const width = Math.min(searchSize, thisArgs.canvas.width);
  118. const height = Math.min(searchSize, thisArgs.canvas.height);
  119. const pixels = new Uint8Array(width * height * 4);
  120. const centerX = thisArgs.canvas.width / 2;
  121. const centerY = thisArgs.canvas.height / 2;
  122. const x = Math.floor(centerX - width / 2);
  123. const y = Math.floor(centerY - height / 2);
  124. thisArgs.readPixels(x, y, width, height, thisArgs.RGBA, thisArgs.UNSIGNED_BYTE, pixels);
  125. for (let i = 0; i < pixels.length; i += 4) {
  126. if (pixels[i] === 255 && pixels[i + 1] === 0 && pixels[i + 2] === 0 && pixels[i + 3] === 255) {
  127. const idx = i / 4;
  128. const dx = idx % width;
  129. const dy = (idx - dx) / width;
  130. movementX += (x + dx - centerX);
  131. movementY += -(y + dy - centerY);
  132. count++;
  133. }
  134. }
  135. }
  136. }
  137. });
  138.  
  139. // Aimbot: Apply calculated aim adjustments
  140. window.requestAnimationFrame = new Proxy(window.requestAnimationFrame, {
  141. apply(target, thisArgs, args) {
  142. args[0] = new Proxy(args[0], {
  143. apply() {
  144. const isPlaying = document.querySelector('canvas').style.cursor === 'none';
  145. rangeEl.style.display = isPlaying && aimbotEnabled ? '' : 'none';
  146. if (count > 0 && isPlaying) {
  147. const f = aimbotSpeed / count;
  148. movementX *= f;
  149. movementY *= f;
  150. window.dispatchEvent(new MouseEvent('mousemove', { movementX, movementY }));
  151. rangeEl.classList.add('range-active');
  152. } else {
  153. rangeEl.classList.remove('range-active');
  154. }
  155. movementX = 0;
  156. movementY = 0;
  157. count = 0;
  158. return Reflect.apply(...arguments);
  159. }
  160. });
  161. return Reflect.apply(...arguments);
  162. }
  163. });
  164.  
  165. const styles = `
  166. :root { --radius: 0; }
  167. @font-face {
  168. font-family: 'Russo One';
  169. font-style: normal;
  170. font-weight: 400;
  171. src: url(https://fonts.gstatic.com/s/russoone/v14/Z9XUDmZRWg6M1LvRYsHOz8mJ.woff2) format('woff2');
  172. unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
  173. }
  174. .dialog {
  175. position: absolute;
  176. left: 50%;
  177. top: 50%;
  178. padding: 20px;
  179. background: rgba(131, 100, 226, 0.9);
  180. color: #fff;
  181. transform: translate(-50%, -50%);
  182. text-align: center;
  183. z-index: 999999;
  184. font-family: 'Russo One', sans-serif;
  185. border-radius: 10px;
  186. box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
  187. }
  188. .dialog-header {
  189. padding: 10px;
  190. cursor: move;
  191. background: rgba(0, 0, 0, 0.2);
  192. border-radius: 10px 10px 0 0;
  193. }
  194. .close {
  195. position: absolute;
  196. right: 5px;
  197. top: 5px;
  198. width: 20px;
  199. height: 20px;
  200. opacity: 0.5;
  201. cursor: pointer;
  202. }
  203. .close:before, .close:after {
  204. content: ' ';
  205. position: absolute;
  206. left: 50%;
  207. top: 50%;
  208. width: 100%;
  209. height: 20%;
  210. transform: translate(-50%, -50%) rotate(-45deg);
  211. background: #fff;
  212. }
  213. .close:after {
  214. transform: translate(-50%, -50%) rotate(45deg);
  215. }
  216. .close:hover {
  217. opacity: 1;
  218. }
  219. .btn {
  220. cursor: pointer;
  221. padding: 0.7em;
  222. background: rgba(255, 255, 255, 0.1);
  223. border: 2px solid rgba(255, 255, 255, 0.2);
  224. margin: 10px;
  225. text-align: center;
  226. border-radius: 5px;
  227. transition: all 0.3s ease;
  228. }
  229. .btn:hover {
  230. background: rgba(255, 255, 255, 0.2);
  231. transform: scale(1.05);
  232. }
  233. .btn:active {
  234. transform: scale(0.95);
  235. }
  236. .msg {
  237. position: absolute;
  238. left: 10px;
  239. bottom: 10px;
  240. background: rgba(30, 41, 74, 0.8);
  241. color: #fff;
  242. font-family: 'Russo One', sans-serif;
  243. font-weight: bolder;
  244. padding: 15px;
  245. animation: msg 0.5s forwards, msg 0.5s reverse forwards 3s;
  246. z-index: 999999;
  247. pointer-events: none;
  248. border-radius: 5px;
  249. }
  250. @keyframes msg {
  251. from { transform: translate(-120%, 0); }
  252. to { transform: none; }
  253. }
  254. .range {
  255. position: absolute;
  256. left: 50%;
  257. top: 50%;
  258. width: ${searchSize}px;
  259. height: ${searchSize}px;
  260. max-width: 100%;
  261. max-height: 100%;
  262. border-radius: 50%;
  263. border: 1px solid white;
  264. transform: translate(-50%, -50%);
  265. }
  266. .range-active {
  267. border: 2px solid #45ff99;
  268. box-shadow: 0 0 50px 15px rgba(69, 255, 153, 0.5);
  269. }
  270. .toggle-btn {
  271. display: inline-block;
  272. margin: 5px;
  273. padding: 5px 10px;
  274. background: rgba(255, 255, 255, 0.1);
  275. border-radius: 15px;
  276. cursor: pointer;
  277. }
  278. .toggle-btn.active {
  279. background: rgba(0, 255, 0, 0.3);
  280. }
  281. `;
  282.  
  283. const menuHTML = `
  284. <div class="dialog" id="cheatMenu">
  285. <div class="dialog-header">Nuked Ware 1v1.lol</div>
  286. <div class="close" onclick="this.parentNode.style.display='none';"></div>
  287. <div class="celemenu">
  288. <div class="toggle-btn" id="aimbotToggle">Aimbot: OFF</div>
  289. <div class="toggle-btn" id="espToggle">ESP: OFF</div>
  290. <div class="toggle-btn" id="wireframeToggle">Wireframe: ON</div>
  291. <br><br>
  292. <small>[H] to show/hide menu</small>
  293. <br><br>
  294. <div style="display: grid; grid-template-columns: 1fr 1fr; grid-gap: 5px;">
  295. <div class="btn" onclick="window.open('', '_blank')">Discord</div>
  296. <div class="btn" onclick="window.open('', '_blank')">Latest video</div>
  297. </div>
  298. </div>
  299. </div>
  300. <div class="msg" style="display: none;"></div>
  301. <div class="range" style="display: none;"></div>
  302. `;
  303.  
  304. let isDragging = false;
  305. let dragOffsetX, dragOffsetY;
  306.  
  307. function nukedDraggable(element) {
  308. const header = element.querySelector('.dialog-header');
  309.  
  310. header.addEventListener('mousedown', (e) => {
  311. isDragging = true;
  312. dragOffsetX = e.clientX - element.offsetLeft;
  313. dragOffsetY = e.clientY - element.offsetTop;
  314. });
  315.  
  316. document.addEventListener('mousemove', (e) => {
  317. if (isDragging) {
  318. element.style.left = (e.clientX - dragOffsetX) + 'px';
  319. element.style.top = (e.clientY - dragOffsetY) + 'px';
  320. }
  321. });
  322.  
  323. document.addEventListener('mouseup', () => {
  324. isDragging = false;
  325. });
  326. }
  327.  
  328. window.addEventListener('DOMContentLoaded', function () {
  329. document.body.insertAdjacentHTML('beforeend', menuHTML);
  330. const styleElement = document.createElement('style');
  331. styleElement.textContent = styles;
  332. document.head.appendChild(styleElement);
  333.  
  334. const cheatMenu = document.getElementById('cheatMenu');
  335. nukedDraggable(cheatMenu);
  336.  
  337. const msgEl = document.querySelector('.msg');
  338. const rangeEl = document.querySelector('.range');
  339. const aimbotToggle = document.getElementById('aimbotToggle');
  340. const espToggle = document.getElementById('espToggle');
  341. const wireframeToggle = document.getElementById('wireframeToggle');
  342.  
  343. aimbotToggle.addEventListener('click', () => nukedFeature('Aimbot', aimbotToggle));
  344. espToggle.addEventListener('click', () => nukedFeature('ESP', espToggle));
  345. wireframeToggle.addEventListener('click', () => nukedFeature('Wireframe', wireframeToggle));
  346.  
  347. // Initialize toggle states
  348. updateToggleState(wireframeToggle, wireframeEnabled);
  349. });
  350.  
  351. function nukedFeature(feature, element) {
  352. switch (feature) {
  353. case 'Aimbot':
  354. aimbotEnabled = !aimbotEnabled;
  355. break;
  356. case 'ESP':
  357. espEnabled = !espEnabled;
  358. break;
  359. case 'Wireframe':
  360. wireframeEnabled = !wireframeEnabled;
  361. break;
  362. }
  363. updateToggleState(element, feature === 'Aimbot' ? aimbotEnabled : (feature === 'ESP' ? espEnabled : wireframeEnabled));
  364. nukedsMsg(feature, feature === 'Aimbot' ? aimbotEnabled : (feature === 'ESP' ? espEnabled : wireframeEnabled));
  365. }
  366.  
  367. function updateToggleState(element, state) {
  368. element.textContent = `${element.textContent.split(':')[0]}: ${state ? 'ON' : 'OFF'}`;
  369. element.classList.toggle('active', state);
  370. }
  371.  
  372. function nukedsMsg(name, bool) {
  373. const msgEl = document.querySelector('.msg');
  374. msgEl.innerText = name + ': ' + (bool ? 'ON' : 'OFF');
  375. msgEl.style.display = 'none';
  376. void msgEl.offsetWidth;
  377. msgEl.style.display = '';
  378. }
  379.  
  380. window.addEventListener('keyup', function (event) {
  381. const key = event.key.toUpperCase();
  382. switch (key) {
  383. case 'M':
  384. nukedFeature('ESP', document.getElementById('espToggle'));
  385. break;
  386. case 'N':
  387. nukedFeature('Wireframe', document.getElementById('wireframeToggle'));
  388. break;
  389. case 'T':
  390. nukedFeature('Aimbot', document.getElementById('aimbotToggle'));
  391. break;
  392. case 'H':
  393. const cheatMenu = document.getElementById('cheatMenu');
  394. cheatMenu.style.display = cheatMenu.style.display === 'none' ? 'block' : 'none';
  395. break;
  396. }
  397. });

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址