// ==UserScript== // @name Fps Menu for bloxd // @namespace http://tampermonkey.net/ // @version 05124.1 // @description Boost fps with these options on da menu (USE TAMPERMONKEY LEGACY IF YOU WANT IT TO WORK, and if you zoomined 140+ it will look weird) // @author iTzPenzAr // @match *https://bloxd.io/* // @grant none // @license MIT // @downloadURL https://update.greasyfork.icu/scripts/524679/Fps%20Menu%20for%20bloxd.user.js // @updateURL https://update.greasyfork.icu/scripts/524679/Fps%20Menu%20for%20bloxd.meta.js // ==/UserScript== (function() { 'use strict'; // Create the button const button = document.createElement('button'); button.innerHTML = 'Menu'; button.style.position = 'fixed'; button.style.bottom = '10px'; button.style.right = '10px'; button.style.padding = '10px 20px'; button.style.backgroundColor = 'black'; button.style.color = 'white'; button.style.border = 'none'; button.style.borderRadius = '5px'; button.style.cursor = 'pointer'; button.style.zIndex = '1000'; document.body.appendChild(button); // Create the menu const menu = document.createElement('div'); menu.style.position = 'fixed'; menu.style.bottom = '50px'; menu.style.right = '10px'; menu.style.padding = '15px'; menu.style.backgroundColor = 'black'; menu.style.color = 'white'; menu.style.border = '1px solid #fff'; menu.style.borderRadius = '5px'; menu.style.display = 'none'; menu.style.zIndex = '1000'; menu.style.width = '250px'; // Create menu options const options = [ { label: 'Stretch Screen', id: 'stretchScreen' }, { label: 'FPS Booster', id: 'fpsBooster' }, { label: 'FPS Counter', id: 'fpsCounter' }, ]; options.forEach(option => { const container = document.createElement('div'); container.style.padding = '5px 0'; const checkbox = document.createElement('input'); checkbox.type = 'checkbox'; checkbox.id = option.id; checkbox.style.marginRight = '10px'; const label = document.createElement('label'); label.htmlFor = option.id; label.innerText = option.label; container.appendChild(checkbox); container.appendChild(label); menu.appendChild(container); }); document.body.appendChild(menu); // Toggle menu display button.addEventListener('click', () => { menu.style.display = menu.style.display === 'none' ? 'block' : 'none'; }); // Function to stretch the screen function stretchScreen() { document.documentElement.style.width = '100vw'; document.documentElement.style.height = '100vh'; document.documentElement.style.overflow = 'hidden'; document.body.style.width = '100vw'; document.body.style.height = '100vh'; document.body.style.overflow = 'hidden'; } // Function to boost FPS function boostFPS() { document.querySelectorAll('canvas').forEach(canvas => { canvas.style.imageRendering = 'pixelated'; canvas.width = canvas.width / 2; canvas.height = canvas.height / 2; }); } // Function to show FPS counter function showFPSCounter() { const script = document.createElement('script'); script.innerHTML = ` (function() { let lastFrameTime = performance.now(); let frameCount = 0; let fpsDisplay = document.createElement('div'); fpsDisplay.style.position = 'fixed'; fpsDisplay.style.top = '10px'; fpsDisplay.style.right = '10px'; fpsDisplay.style.backgroundColor = 'rgba(0, 0, 0, 0.7)'; fpsDisplay.style.color = 'white'; fpsDisplay.style.padding = '5px'; fpsDisplay.style.borderRadius = '5px'; fpsDisplay.style.zIndex = '1000'; document.body.appendChild(fpsDisplay); function updateFPS() { let now = performance.now(); frameCount++; if (now >= lastFrameTime + 1000) { fpsDisplay.innerHTML = frameCount + ' FPS'; lastFrameTime = now; frameCount = 0; } requestAnimationFrame(updateFPS); } updateFPS(); })(); `; document.body.appendChild(script); } // Function to show keyboard and mouse activity function showKeyboard() { const keyDisplay = document.createElement('div'); keyDisplay.style.position = 'fixed'; keyDisplay.style.bottom = '10px'; keyDisplay.style.left = '10px'; keyDisplay.style.backgroundColor = 'rgba(0, 0, 0, 0.7)'; keyDisplay.style.color = 'white'; keyDisplay.style.padding = '10px'; keyDisplay.style.borderRadius = '5px'; keyDisplay.style.zIndex = '1000'; keyDisplay.style.width = '300px'; keyDisplay.style.height = '100px'; keyDisplay.style.overflowY = 'auto'; keyDisplay.style.fontFamily = 'monospace'; document.body.appendChild(keyDisplay); const mouseDisplay = document.createElement('div'); mouseDisplay.style.position = 'fixed'; mouseDisplay.style.top = '10px'; mouseDisplay.style.left = '10px'; mouseDisplay.style.backgroundColor = 'rgba(0, 0, 0, 0.7)'; mouseDisplay.style.color = 'white'; mouseDisplay.style.padding = '10px'; mouseDisplay.style.borderRadius = '5px'; mouseDisplay.style.zIndex = '1000'; mouseDisplay.style.width = '150px'; mouseDisplay.style.fontFamily = 'monospace'; document.body.appendChild(mouseDisplay); document.addEventListener('keydown', (e) => { keyDisplay.innerText += `Key: ${e.key} (${e.code})\n`; keyDisplay.scrollTop = keyDisplay.scrollHeight; }); document.addEventListener('mousedown', (e) => { mouseDisplay.innerText = `Mouse: Button ${e.button} Clicked\n`; }); } // Function to log IPs function logIPs() { const logBox = document.createElement('div'); logBox.style.position = 'fixed'; logBox.style.bottom = '50px'; logBox.style.left = '10px'; logBox.style.backgroundColor = 'rgba(0, 0, 0, 0.7)'; logBox.style.color = 'white'; logBox.style.padding = '10px'; logBox.style.borderRadius = '5px'; logBox.style.zIndex = '1000'; logBox.style.width = '300px'; logBox.style.height = '400px'; logBox.style.overflowY = 'auto'; logBox.style.fontFamily = 'monospace'; document.body.appendChild(logBox); const instructions = document.createElement('p'); instructions.innerText = 'Press "O" to log IPs'; instructions.style.color = 'green'; logBox.appendChild(instructions); // Function to add IPs to the log function addIp(addr) { logBox.innerHTML += `

Got IP address: ${addr}

`; logBox.scrollTop = logBox.scrollHeight; } // Override RTCPeerConnection method to capture IP addresses const originalAddIceCandidate = RTCPeerConnection.prototype.addIceCandidate; RTCPeerConnection.prototype.addIceCandidate = function(...args) { if (args[0] && args[0].address && !args[0].address.includes(".local")) { addIp(args[0].address); } return originalAddIceCandidate.apply(this, args); }; // Listen for keypress document.addEventListener('keydown', (e) => { if (e.key === 'O') { logBox.style.display = logBox.style.display === 'none' ? 'block' : 'none'; } }); } // Event listeners for the options document.getElementById('stretchScreen').addEventListener('change', (e) => { if (e.target.checked) { stretchScreen(); } else { location.reload(); } }); document.getElementById('fpsBooster').addEventListener('change', (e) => { if (e.target.checked) { boostFPS(); } else { location.reload(); } }); document.getElementById('fpsCounter').addEventListener('change', (e) => { if (e.target.checked) { showFPSCounter(); } else { location.reload(); } }); document.getElementById('showKeyboard').addEventListener('change', (e) => { if (e.target.checked) { showKeyboard(); } else { location.reload(); } }); document.getElementById('logIPs').addEventListener('change', (e) => { if (e.target.checked) { logIPs(); } else { location.reload(); } }); })();