TT FPS Uncapper

Uncaps the default 60 FPS limit for smoother gameplay

You will need to install an extension such as Tampermonkey, Greasemonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install a user script manager extension to install this script.

(У мене вже є менеджер скриптів, дайте мені встановити його!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

// ==UserScript==
// @name         TT FPS Uncapper
// @namespace    http://tampermonkey.net/
// @version      2.0.0
// @description  Uncaps the default 60 FPS limit for smoother gameplay
// @author       Aurelion-X9
// @match        https://tanktrouble.com/*
// @match        https://*.tanktrouble.com/*
// @run-at       document-start
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Safe FPS Uncapper - only modifies time settings, no prototype overrides

    // Patch Phaser time settings when game is ready
    const patchPhaserTime = () => {
        const check = setInterval(() => {
            const game = (typeof GameManager !== 'undefined' && GameManager.getGame) ? GameManager.getGame() : null;
            if (game && game.time) {
                clearInterval(check);

                // Enable advanced timing for accurate FPS display
                game.time.advancedTiming = true;

                // Set desired FPS higher (this affects physics interpolation)
                game.time.desiredFps = 120;

                // Don't modify slowMotion - keep it at 1.0
                if (game.time.slowMotion !== undefined) {
                    game.time.slowMotion = 1.0;
                }
            }
        }, 200);
        setTimeout(() => clearInterval(check), 5000);
    };

    // CSS for smoother rendering - minimal
    const injectCSS = () => {
        const style = document.createElement('style');
        style.id = 'tt-fps-uncapper-css';
        style.textContent = `
            /* Force GPU acceleration on canvas only */
            #game canvas, #gameCanvas {
                image-rendering: crisp-edges !important;
            }
        `;
        document.head.appendChild(style);
    };

    // Initialize
    injectCSS();

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', patchPhaserTime);
    } else {
        patchPhaserTime();
    }

    console.log('%c[TT FPS Uncapper] 60 FPS limit removed!', 'color: #00ff88; font-weight: bold;');
})();