- // ==UserScript==
- // @name Advanced Sploop.io Enhancements 2024!
- // @namespace http://tampermonkey.net/
- // @version 2.3
- // @description Very useful (Real-time, help anti-clown, smart messages, playtime tracking, smart anti-ban, music playlist, intelligent player aiming.more.more)
- // @author avoidFPS
- // @require https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.1/underscore-min.js
- // @match *://sploop.io/*
- // @grant none
- // ==/UserScript==
-
- (function() {
- 'use strict';
-
- function showSuccessMessage() {
- spawnSmartMessage('Script loaded successfully!');
- }
-
- showSuccessMessage();
-
- let gameStartTime = null;
- let gameEndTime = null;
- let gameInterval = null;
- let fpsInterval = null;
- let lastFrameTime = performance.now();
- let fpsDisplay = null;
- let timezoneDisplay = null;
- let selectedTimezone = 'Asia/Ho_Chi_Minh';
- let aimLockEnabled = false;
- let autoInstaEnabled = false;
- let aimSmartEnabled = false;
-
- const timezones = {
- 'Vietnam': 'Asia/Ho_Chi_Minh',
- 'USA': 'America/New_York',
- 'Australia': 'Australia/Sydney',
- 'Japan': 'Asia/Tokyo'
- };
-
- const controlPanel = document.createElement('div');
- controlPanel.style.position = 'fixed';
- controlPanel.style.top = '10px';
- controlPanel.style.left = '10px';
- controlPanel.style.color = 'white';
- controlPanel.style.background = 'linear-gradient(90deg, red, orange, yellow, green, blue, indigo, violet)';
- controlPanel.style.padding = '10px';
- controlPanel.style.borderRadius = '5px';
- controlPanel.style.fontFamily = 'Arial, sans-serif';
- controlPanel.style.zIndex = '1000';
- controlPanel.style.display = 'none';
- document.body.appendChild(controlPanel);
-
- const antiClownToggleLabel = document.createElement('label');
- antiClownToggleLabel.textContent = ' Anti-clown feature';
- const antiClownToggleCheckbox = document.createElement('input');
- antiClownToggleCheckbox.type = 'checkbox';
- antiClownToggleCheckbox.checked = true;
- antiClownToggleLabel.prepend(antiClownToggleCheckbox);
- controlPanel.appendChild(antiClownToggleLabel);
-
- const aimLockToggleLabel = document.createElement('label');
- aimLockToggleLabel.textContent = ' Aim Lock';
- const aimLockToggleCheckbox = document.createElement('input');
- aimLockToggleCheckbox.type = 'checkbox';
- aimLockToggleCheckbox.checked = false;
- aimLockToggleLabel.prepend(aimLockToggleCheckbox);
- controlPanel.appendChild(aimLockToggleLabel);
-
- const aimSmartToggleLabel = document.createElement('label');
- aimSmartToggleLabel.textContent = ' Smart Aim';
- const aimSmartToggleCheckbox = document.createElement('input');
- aimSmartToggleCheckbox.type = 'checkbox';
- aimSmartToggleCheckbox.checked = false;
- aimSmartToggleLabel.prepend(aimSmartToggleCheckbox);
- controlPanel.appendChild(aimSmartToggleLabel);
-
- const autoInstaToggleLabel = document.createElement('label');
- autoInstaToggleLabel.textContent = ' Auto Insta';
- const autoInstaToggleCheckbox = document.createElement('input');
- autoInstaToggleCheckbox.type = 'checkbox';
- autoInstaToggleCheckbox.checked = false;
- autoInstaToggleLabel.prepend(autoInstaToggleCheckbox);
- controlPanel.appendChild(autoInstaToggleLabel);
-
- aimLockToggleCheckbox.addEventListener('change', function() {
- aimLockEnabled = this.checked;
- });
-
- aimSmartToggleCheckbox.addEventListener('change', function() {
- aimSmartEnabled = this.checked;
- });
-
- autoInstaToggleCheckbox.addEventListener('change', function() {
- autoInstaEnabled = this.checked;
- });
-
- const timezoneSelectLabel = document.createElement('label');
- timezoneSelectLabel.textContent = ' Select Timezone:';
- controlPanel.appendChild(timezoneSelectLabel);
-
- const timezoneSelect = document.createElement('select');
- for (const [region, timezone] of Object.entries(timezones)) {
- const option = document.createElement('option');
- option.value = timezone;
- option.textContent = region;
- timezoneSelect.appendChild(option);
- }
- timezoneSelect.value = selectedTimezone;
- controlPanel.appendChild(timezoneSelect);
-
- timezoneSelect.addEventListener('change', function() {
- selectedTimezone = this.value;
- });
-
- const gameStartTimeDisplay = document.createElement('div');
- gameStartTimeDisplay.textContent = 'Start Time: Not started';
- gameStartTimeDisplay.style.color = 'white';
- gameStartTimeDisplay.style.fontFamily = 'Arial, sans-serif';
- controlPanel.appendChild(gameStartTimeDisplay);
-
- const startButton = document.createElement('button');
- startButton.textContent = 'Start';
- startButton.style.marginTop = '10px';
- controlPanel.appendChild(startButton);
-
- const stopButton = document.createElement('button');
- stopButton.textContent = 'Stop';
- stopButton.style.marginTop = '10px';
- stopButton.style.marginLeft = '5px';
- controlPanel.appendChild(stopButton);
-
- startButton.addEventListener('click', function() {
- startGameTime();
- });
-
- stopButton.addEventListener('click', function() {
- stopGameTime();
- });
-
- function startGameTime() {
- gameStartTime = new Date();
- if (gameInterval) clearInterval(gameInterval);
- gameInterval = setInterval(updateGameTimeDisplay, 1000);
- spawnSmartMessage('Started game time tracking.');
- }
-
- function stopGameTime() {
- if (!gameStartTime) return;
-
- gameEndTime = new Date();
- clearInterval(gameInterval);
- const elapsedTime = gameEndTime - gameStartTime;
- const formattedTime = formatTime(elapsedTime);
- gameStartTimeDisplay.textContent = `Played for: ${formattedTime}`;
- gameStartTime = null;
- }
-
- function updateGameTimeDisplay() {
- if (!gameStartTime) return;
-
- const elapsedTime = new Date() - gameStartTime;
- const formattedTime = formatTime(elapsedTime);
- gameStartTimeDisplay.textContent = `Start Time: ${formattedTime}`;
- }
-
- function formatTime(ms) {
- const seconds = Math.floor(ms / 1000);
- const hours = Math.floor(seconds / 3600);
- const minutes = Math.floor((seconds % 3600) / 60);
- const remainingSeconds = seconds % 60;
- return `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}:${remainingSeconds.toString().padStart(2, '0')}`;
- }
-
- const soundControlDiv = document.createElement('div');
- soundControlDiv.style.position = 'fixed';
- soundControlDiv.style.bottom = '10px';
- soundControlDiv.style.left = '10px';
- soundControlDiv.style.backgroundColor = 'rgba(0, 0, 0, 0.7)';
- soundControlDiv.style.color = 'white';
- soundControlDiv.style.padding = '10px';
- soundControlDiv.style.borderRadius = '5px';
- soundControlDiv.style.fontFamily = 'Arial, sans-serif';
- soundControlDiv.style.zIndex = '1000';
- soundControlDiv.style.display = 'none';
- document.body.appendChild(soundControlDiv);
-
- const soundUrlInput = document.createElement('input');
- soundUrlInput.type = 'text';
- soundUrlInput.placeholder = 'Enter sound URL';
- soundControlDiv.appendChild(soundUrlInput);
-
- const soundFileInput = document.createElement('input');
- soundFileInput.type = 'file';
- soundControlDiv.appendChild(soundFileInput);
-
- const playButton = document.createElement('button');
- playButton.textContent = 'Play';
- soundControlDiv.appendChild(playButton);
-
- const pauseButton = document.createElement('button');
- pauseButton.textContent = 'Pause';
- soundControlDiv.appendChild(pauseButton);
-
- const repeatButton = document.createElement('button');
- repeatButton.textContent = 'Repeat';
- soundControlDiv.appendChild(repeatButton);
-
- const playlist = document.createElement('div');
- playlist.style.marginTop = '10px';
- soundControlDiv.appendChild(playlist);
-
- let audio = new Audio();
- let repeat = false;
-
- playButton.addEventListener('click', function() {
- const url = soundUrlInput.value;
- const file = soundFileInput.files[0];
-
- if (file) {
- const reader = new FileReader();
- reader.onload = function(e) {
- audio.src = e.target.result;
- audio.play();
- };
- reader.readAsDataURL(file);
- } else if (url) {
- audio.src = url;
- audio.play();
- }
- });
-
- pauseButton.addEventListener('click', function() {
- audio.pause();
- });
-
- repeatButton.addEventListener('click', function() {
- repeat = !repeat;
- repeatButton.style.backgroundColor = repeat ? 'green' : '';
- });
-
- audio.addEventListener('ended', function() {
- if (repeat) {
- audio.currentTime = 0;
- audio.play();
- }
- });
-
- function checkForBan() {
- // Placeholder for ban detection logic
- console.log('Checking for ban...');
- }
-
- setInterval(checkForBan, 3000);
-
- const fpsElement = document.createElement('div');
- fpsElement.style.position = 'fixed';
- fpsElement.style.top = '10px';
- fpsElement.style.left = '50%';
- fpsElement.style.transform = 'translateX(-50%)';
- fpsElement.style.color = 'white';
- fpsElement.style.fontFamily = 'Arial, sans-serif';
- fpsElement.style.fontSize = '20px';
- fpsElement.style.zIndex = '1000';
- document.body.appendChild(fpsElement);
-
- const timezoneElement = document.createElement('div');
- timezoneElement.style.position = 'fixed';
- timezoneElement.style.top = '40px';
- timezoneElement.style.left = '50%';
- timezoneElement.style.transform = 'translateX(-50%)';
- timezoneElement.style.color = 'white';
- timezoneElement.style.fontFamily = 'Arial, sans-serif';
- timezoneElement.style.fontSize = '20px';
- timezoneElement.style.zIndex = '1000';
- document.body.appendChild(timezoneElement);
-
- function updateFPS() {
- const now = performance.now();
- const delta = now - lastFrameTime;
- const fps = 1000 / delta;
- lastFrameTime = now;
- fpsElement.textContent = `FPS: ${Math.round(fps)}`;
- requestAnimationFrame(updateFPS);
- }
-
- function updateTimezones() {
- const now = new Date();
- timezoneElement.textContent = `Time (${selectedTimezone}): ${now.toLocaleString('en-US', { timeZone: selectedTimezone })}`;
- }
-
- updateFPS();
- setInterval(updateTimezones, 1000);
-
- const fpsColorInput = document.createElement('input');
- fpsColorInput.type = 'color';
- fpsColorInput.value = '#FFFFFF';
- fpsColorInput.addEventListener('change', function() {
- fpsElement.style.color = this.value;
- });
- controlPanel.appendChild(fpsColorInput);
-
- const timezoneColorInput = document.createElement('input');
- timezoneColorInput.type = 'color';
- timezoneColorInput.value = '#FFFFFF';
- timezoneColorInput.addEventListener('change', function() {
- timezoneElement.style.color = this.value;
- });
- controlPanel.appendChild(timezoneColorInput);
-
- const fileManagementPanel = document.createElement('div');
- fileManagementPanel.style.marginTop = '10px';
- controlPanel.appendChild(fileManagementPanel);
-
- const jsonFileInput = document.createElement('input');
- jsonFileInput.type = 'file';
- jsonFileInput.accept = 'application/json';
- fileManagementPanel.appendChild(jsonFileInput);
-
- const loadButton = document.createElement('button');
- loadButton.textContent = 'Load JSON';
- fileManagementPanel.appendChild(loadButton);
-
- const saveButton = document.createElement('button');
- saveButton.textContent = 'Save JSON';
- fileManagementPanel.appendChild(saveButton);
-
- const deleteButton = document.createElement('button');
- deleteButton.textContent = 'Delete JSON';
- fileManagementPanel.appendChild(deleteButton);
-
- const runButton = document.createElement('button');
- runButton.textContent = 'Run JSON';
- fileManagementPanel.appendChild(runButton);
-
- loadButton.addEventListener('click', function() {
- const file = jsonFileInput.files[0];
- if (!file) {
- alert('No file selected');
- return;
- }
-
- const reader = new FileReader();
- reader.onload = function(e) {
- const json = JSON.parse(e.target.result);
-
- console.log('Loaded JSON:', json);
- };
- reader.readAsText(file);
- });
-
- saveButton.addEventListener('click', function() {
- const data = {
-
- };
-
- const json = JSON.stringify(data);
- const blob = new Blob([json], { type: 'application/json' });
- const url = URL.createObjectURL(blob);
- const a = document.createElement('a');
- a.href = url;
- a.download = 'data.json';
- a.click();
- });
-
- deleteButton.addEventListener('click', function() {
-
- console.log('Deleted JSON');
- });
-
- runButton.addEventListener('click', function() {
- const file = jsonFileInput.files[0];
- if (!file) {
- alert('No file selected');
- return;
- }
-
- const reader = new FileReader();
- reader.onload = function(e) {
- const json = JSON.parse(e.target.result);
-
- console.log('Running JSON:', json);
- executeJsonCommands(json);
- };
- reader.readAsText(file);
- });
-
- function executeJsonCommands(json) {
-
- console.log('Executing commands from JSON:', json);
- // Example: if json has commands like { "action": "move", "x": 10, "y": 20 }
- if (json.action === 'move') {
- moveCharacter(json.x, json.y);
- }
- }
-
- function moveCharacter(x, y) {
- // Implement the logic to move the character to x, y coordinates
- console.log(`Moving character to X: ${x}, Y: ${y}`);
- // Update coordinates display
- updateCoordinates(x, y);
- }
-
- const messagingPanel = document.createElement('div');
- messagingPanel.style.marginTop = '10px';
- controlPanel.appendChild(messagingPanel);
-
- const messageInput = document.createElement('input');
- messageInput.type = 'text';
- messageInput.placeholder = 'Enter message';
- messagingPanel.appendChild(messageInput);
-
- const messageFileInput = document.createElement('input');
- messageFileInput.type = 'file';
- messageFileInput.accept = 'text/plain';
- messagingPanel.appendChild(messageFileInput);
-
- const startMessagingButton = document.createElement('button');
- startMessagingButton.textContent = 'Start Messaging';
- messagingPanel.appendChild(startMessagingButton);
-
- const stopMessagingButton = document.createElement('button');
- stopMessagingButton.textContent = 'Stop Messaging';
- messagingPanel.appendChild(stopMessagingButton);
-
- let messagingInterval = null;
-
- startMessagingButton.addEventListener('click', function() {
- const message = messageInput.value;
- if (messageFileInput.files.length > 0) {
- const file = messageFileInput.files[0];
- const reader = new FileReader();
- reader.onload = function(e) {
- startMessaging(e.target.result);
- };
- reader.readAsText(file);
- } else if (message) {
- startMessaging(message);
- }
- });
-
- stopMessagingButton.addEventListener('click', function() {
- stopMessaging();
- });
-
- function startMessaging(message) {
- stopMessaging();
- messagingInterval = setInterval(function() {
- sendMessageToGame(message);
- }, 1000);
- }
-
- function stopMessaging() {
- clearInterval(messagingInterval);
- }
-
- function sendMessageToGame(message) {
-
- console.log(`Sending message: ${message}`);
- }
-
- function spawnSmartMessage(message) {
- const msgElement = document.createElement('div');
- msgElement.textContent = message;
- msgElement.style.position = 'fixed';
- msgElement.style.bottom = '50%';
- msgElement.style.left = '50%';
- msgElement.style.transform = 'translate(-50%, -50%)';
- msgElement.style.backgroundColor = 'rgba(0, 0, 0, 0.8)';
- msgElement.style.color = 'white';
- msgElement.style.padding = '10px';
- msgElement.style.borderRadius = '5px';
- msgElement.style.zIndex = '1000';
- document.body.appendChild(msgElement);
-
- setTimeout(function() {
- document.body.removeChild(msgElement);
- }, 3000);
- }
-
- const coordinatesDisplay = document.createElement('div');
- coordinatesDisplay.style.position = 'fixed';
- coordinatesDisplay.style.bottom = '10px';
- coordinatesDisplay.style.right = '10px';
- coordinatesDisplay.style.color = 'white';
- coordinatesDisplay.style.fontFamily = 'Arial, sans-serif';
- coordinatesDisplay.style.fontSize = '20px';
- coordinatesDisplay.style.zIndex = '1000';
- document.body.appendChild(coordinatesDisplay);
-
- function updateCoordinates(x, y) {
- coordinatesDisplay.textContent = `X: ${x}, Y: ${y}`;
- }
-
- document.addEventListener('keydown', function(e) {
- if (e.key === 'F1' || e.key === 'F2' || e.key === 'F5') {
- e.preventDefault();
- }
- });
-
- document.addEventListener('keydown', function(e) {
- if (e.key === 'F1') {
- controlPanel.style.display = controlPanel.style.display === 'none' ? 'block' : 'none';
- } else if (e.key === 'F5') {
- soundControlDiv.style.display = soundControlDiv.style.display === 'none' ? 'block' : 'none';
- } else if (e.key === 'B') {
- timezoneElement.style.display = timezoneElement.style.display === 'none' ? 'block' : 'none';
- }
- });
-
-
- setInterval(function() {
- const x = Math.floor(Math.random() * 100);
- const y = Math.floor(Math.random() * 100);
- updateCoordinates(x, y);
- }, 1000);
-
- document.addEventListener('DOMContentLoaded', function() {
- if (window.location.pathname === '/') {
- alert('Welcome to the Advanced Sploop.io Enhancements script!');
- }
- });
- })();
-