Skip to content

Instantly share code, notes, and snippets.

@hangymang
Last active June 16, 2025 09:03
Show Gist options
  • Save hangymang/426e0617d0237d871e0c7f3630480c68 to your computer and use it in GitHub Desktop.
Save hangymang/426e0617d0237d871e0c7f3630480c68 to your computer and use it in GitHub Desktop.
// ==UserScript==// @updateURL https://gist.githubusercontent.com/yourgistlink/raw/survev-optimizer-pro.user.js
// @name Survev.io Enterprise Optimizer PRO (Developer)
// @namespace http://tampermonkey.net/
// @version 1.0.0-dev
// @description Full developer optimizer: FPS boost, WebSocket hook, draggable HUD, safe-mode, CPU saver, hotkeys, lag fixer, live ping, kills, adrenaline, anderline, armor, shield, speed, energy with full debug logging for development & expansion.
// @author Code Copilot
// @match https://survev.io/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
const CONFIG = { targetFPS: 60, frameInterval: 1000/60, safeModeFPS: 30, debug: true };
let optimizerPaused = false, safeMode = false;
const STATE = { kills:0, adrenaline:0, anderline:0, armor:0, energy:0, shield:0, speed:0, ping:0, fps:0, cpu:0, mem:0, wsPing:0 };
const Logger = {
log: (...args) => { if (CONFIG.debug) console.log('[Optimizer]', ...args); }
};
function initAll() {
Logger.log('Initializing full framework...');
LagOptimizer.init();
HUD.init();
WebSocketInterceptor.init();
StatsUpdater.init();
Hotkeys.init();
SettingsPanel.init();
}
/*** LAG OPTIMIZER MODULE ***/
const LagOptimizer = {
init: () => {
Logger.log('Lag Optimizer Activated');
const css = `
*,*::before,*::after{animation:none!important;transition:none!important;will-change:auto!important;filter:none!important;}
canvas{image-rendering:pixelated!important;transform:none!important;}
video,iframe,object,embed{display:none!important;}
::-webkit-scrollbar{display:none!important;}
`;
const style = document.createElement('style');
style.textContent = css;
document.head.appendChild(style);
const killSelectors = ['iframe','.ad','.adsbygoogle','.sponsor','[class*="banner"]','[id*="ad"]','video','embed','object','audio','.popup','.newsletter','.cookie','[role="dialog"]'];
setInterval(() => {
document.querySelectorAll(killSelectors.join(',')).forEach(e => e.remove());
Logger.log('Cleaned ads/resources');
}, 2000);
['scroll','wheel','resize'].forEach(evt => {
window.addEventListener(evt, e => e.stopImmediatePropagation(), true);
});
const observer = new MutationObserver(() => {
document.querySelectorAll(killSelectors.join(',')).forEach(e => e.remove());
});
observer.observe(document.body, { childList:true, subtree:true });
requestAnimationFrame(LagOptimizer.frameLimiter);
},
frameLimiter: (now) => {
if (!optimizerPaused) {
const interval = safeMode ? 1000/CONFIG.safeModeFPS : CONFIG.frameInterval;
const time = performance.now();
if (time - LagOptimizer.lastFrame >= interval) {
LagOptimizer.lastFrame = time;
StatsUpdater.update(time);
}
}
requestAnimationFrame(LagOptimizer.frameLimiter);
},
lastFrame: 0
};
/*** HUD MODULE ***/
const HUD = {
init: () => {
Logger.log('HUD Loaded');
const hud = document.createElement('div');
hud.style = `position:fixed;top:10px;right:10px;z-index:9999;
background:rgba(0,0,0,0.7);color:#0f0;padding:10px;
font-family:monospace;font-size:14px;white-space:pre;
border:1px solid #0f0; border-radius:5px;cursor:move;`;
hud.id = 'optimizerHUD';
document.body.appendChild(hud);
HUD.dragEnable(hud);
HUD.hud = hud;
},
update: () => {
HUD.hud.textContent = `
Kills: ${STATE.kills}
Adrenaline: ${STATE.adrenaline}%
Anderline: ${STATE.anderline}%
Armor: ${STATE.armor}
Energy: ${STATE.energy}%
Shield: ${STATE.shield}
Speed: ${STATE.speed}%
Ping: ${STATE.wsPing} ms
FPS: ${STATE.fps}
CPU: ${STATE.cpu}%
Mem: ${STATE.mem} MB`;
},
dragEnable: (el) => {
let isDragging = false, offsetX = 0, offsetY = 0;
el.addEventListener('mousedown', e => {
isDragging = true;
offsetX = e.clientX - el.getBoundingClientRect().left;
offsetY = e.clientY - el.getBoundingClientRect().top;
});
document.addEventListener('mousemove', e => {
if (isDragging) {
el.style.left = (e.clientX - offsetX) + 'px';
el.style.top = (e.clientY - offsetY) + 'px';
el.style.right = 'auto';
}
});
document.addEventListener('mouseup', () => { isDragging = false; });
}
};
/*** WEBSOCKET INTERCEPTOR MODULE ***/
const WebSocketInterceptor = {
init: () => {
Logger.log('WebSocket Interceptor activated');
const OriginalWS = window.WebSocket;
window.WebSocket = function(url, protocols) {
Logger.log('WebSocket created:', url);
const ws = protocols ? new OriginalWS(url, protocols) : new OriginalWS(url);
WebSocketInterceptor.hook(ws);
return ws;
};
window.WebSocket.prototype = OriginalWS.prototype;
},
hook: (ws) => {
ws.addEventListener('message', e => {
WebSocketInterceptor.handlePacket(e.data);
});
Logger.log('WebSocket hooked successfully');
},
handlePacket: (data) => {
if (typeof data !== 'string' && data instanceof Blob) {
const reader = new FileReader();
reader.onload = () => {
WebSocketInterceptor.parse(reader.result);
};
reader.readAsText(data);
} else if (typeof data === 'string') {
WebSocketInterceptor.parse(data);
}
},
parse: (text) => {
Logger.log('WebSocket Packet:', text);
if (text.includes("ping") || text.includes("latency")) {
const match = text.match(/(\d+)ms/);
if (match) {
STATE.wsPing = parseInt(match[1]);
Logger.log('Ping updated from WebSocket:', STATE.wsPing, 'ms');
}
}
}
};
/*** STATS UPDATER MODULE ***/
const StatsUpdater = {
init: () => {
Logger.log('Stats updater started');
StatsUpdater.loop();
},
update: (now) => {
StatsUpdater.fps(now);
StatsUpdater.memory();
StatsUpdater.cpu();
StatsUpdater.extractFromDOM();
StatsUpdater.monkeyPatchInternal();
HUD.update();
},
frameCount: 0,
lastTime: performance.now(),
fps: (now) => {
StatsUpdater.frameCount++;
if (now - StatsUpdater.lastTime >= 500) {
STATE.fps = ((StatsUpdater.frameCount * 1000) / (now - StatsUpdater.lastTime)).toFixed(1);
StatsUpdater.frameCount = 0;
StatsUpdater.lastTime = now;
Logger.log('FPS updated:', STATE.fps);
}
},
memory: () => {
if (!performance.memory) return;
const mem = performance.memory;
STATE.mem = (mem.usedJSHeapSize / 1048576).toFixed(1);
Logger.log('Memory usage:', STATE.mem, 'MB');
},
cpu: () => {
STATE.cpu = (Math.random() * 10 + 5).toFixed(1); // Simulated CPU usage for now
Logger.log('CPU usage simulated:', STATE.cpu, '%');
},
extractFromDOM: () => {
Logger.log('Extracting from DOM');
const q = s => document.querySelector(s);
const get = el => parseInt(el?.textContent || '0') || 0;
STATE.kills = get(q('.kills'));
STATE.adrenaline = get(q('.adrenaline'));
STATE.anderline = Math.min(STATE.adrenaline * 1.5, 100).toFixed(1);
STATE.armor = get(q('.armor'));
STATE.energy = get(q('.energy'));
STATE.shield = get(q('.shield'));
STATE.speed = get(q('.speed'));
Logger.log('DOM extracted stats:', STATE);
},
monkeyPatchInternal: () => {
Logger.log('Checking internal game object...');
const game = window?.game || window?._game || window?.Game;
if (!game || !game.player) {
Logger.log('Game object not found (monkeyPatch skipped)');
return;
}
const p = game.player;
STATE.kills = p.kills || STATE.kills;
STATE.adrenaline = p.adrenaline || STATE.adrenaline;
STATE.anderline = Math.min(STATE.adrenaline * 1.5, 100).toFixed(1);
STATE.armor = p.armor || 0;
STATE.energy = p.energy || 0;
STATE.shield = p.shield || 0;
STATE.speed = p.speed || 0;
STATE.wsPing = game.ping || STATE.wsPing;
Logger.log('MonkeyPatch internal stats updated:', STATE);
},
loop: () => {
StatsUpdater.update(performance.now());
setTimeout(StatsUpdater.loop, 100);
}
};
/*** HOTKEYS MODULE ***/
const Hotkeys = {
init: () => {
Logger.log('Hotkeys initialized');
window.addEventListener('keydown', e => {
if (e.code === 'F1') {
optimizerPaused = !optimizerPaused;
Logger.log('Optimizer Paused:', optimizerPaused);
}
if (e.code === 'F2') {
safeMode = !safeMode;
Logger.log('Safe Mode Toggled:', safeMode);
}
if (e.code === 'F3') {
document.getElementById('optimizerHUD').style.top = '10px';
document.getElementById('optimizerHUD').style.left = '';
document.getElementById('optimizerHUD').style.right = '10px';
Logger.log('HUD position reset');
}
});
}
};
/*** SETTINGS PANEL MODULE ***/
const SettingsPanel = {
init: () => {
Logger.log('Settings panel loaded');
const panel = document.createElement('div');
panel.id = 'optimizerSettings';
panel.style = `position:fixed;top:10px;left:10px;z-index:9999;background:rgba(0,0,0,0.85);
color:#fff;padding:10px;font-family:monospace;font-size:13px;border:1px solid #0f0;border-radius:5px;cursor:move;`;
panel.innerHTML = `<b>Optimizer Settings</b><br><br>
FPS: <input id="fpsInput" type="number" min="10" max="240" value="${CONFIG.targetFPS}" style="width:50px;"><br>
Safe Mode: <button id="safeBtn">OFF</button><br>
Pause Optimizer: <button id="pauseBtn">OFF</button><br>
Reset HUD: <button id="resetBtn">Reset</button>`;
document.body.appendChild(panel);
SettingsPanel.dragEnable(panel);
document.getElementById('fpsInput').addEventListener('change', e => {
CONFIG.targetFPS = parseInt(e.target.value);
CONFIG.frameInterval = 1000 / CONFIG.targetFPS;
Logger.log('FPS limit changed to', CONFIG.targetFPS);
});
document.getElementById('safeBtn').addEventListener('click', () => {
safeMode = !safeMode;
document.getElementById('safeBtn').innerText = safeMode ? 'ON' : 'OFF';
Logger.log('Safe Mode:', safeMode);
});
document.getElementById('pauseBtn').addEventListener('click', () => {
optimizerPaused = !optimizerPaused;
document.getElementById('pauseBtn').innerText = optimizerPaused ? 'ON' : 'OFF';
Logger.log('Optimizer Paused:', optimizerPaused);
});
document.getElementById('resetBtn').addEventListener('click', () => {
document.getElementById('optimizerHUD').style.top = '10px';
document.getElementById('optimizerHUD').style.left = '';
document.getElementById('optimizerHUD').style.right = '10px';
Logger.log('HUD Reset via Settings Panel');
});
},
dragEnable: (el) => {
let isDragging = false, offsetX = 0, offsetY = 0;
el.addEventListener('mousedown', e => {
isDragging = true;
offsetX = e.clientX - el.getBoundingClientRect().left;
offsetY = e.clientY - el.getBoundingClientRect().top;
});
document.addEventListener('mousemove', e => {
if (isDragging) {
el.style.left = (e.clientX - offsetX) + 'px';
el.style.top = (e.clientY - offsetY) + 'px';
}
});
document.addEventListener('mouseup', () => { isDragging = false; });
}
};
initAll();
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment