TT FPS Uncapper

Uncaps the default 60 FPS limit for smoother gameplay

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

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

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==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;');
})();