OUTDATED Starblast.io FPS Bypass read desc.

READ THIS: THIS MOD IS OUTDATED. USE MY 60FPS BUGFIX MOD INSTEAD. To use this mod with minimal lag, your computer must be able to maintain the fps that you input. Use multiples of 60 to ensure minimal lag. You can use any fps value you want, but 120 and 180 will have the least lag. Thank you to Taxin for forcing me to create this. Thank you to Ancient for inspiring me to make something that actually works, unlike his client's fps uncap.

安装此脚本
作者推荐脚本

您可能也喜欢60fps bugfix

安装此脚本
  1. // ==UserScript==
  2. // @name OUTDATED Starblast.io FPS Bypass read desc.
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.32
  5. // @description READ THIS: THIS MOD IS OUTDATED. USE MY 60FPS BUGFIX MOD INSTEAD. To use this mod with minimal lag, your computer must be able to maintain the fps that you input. Use multiples of 60 to ensure minimal lag. You can use any fps value you want, but 120 and 180 will have the least lag. Thank you to Taxin for forcing me to create this. Thank you to Ancient for inspiring me to make something that actually works, unlike his client's fps uncap.
  6. // @author ✨Stardust™
  7. // @match *://starblast.io/*
  8. // @grant none
  9. // @license MIT
  10. // ==/UserScript==
  11.  
  12. // CHANGE YOUR FPS HERE!!!@$$#@$#@$ FPS HERE &*^**^*^*&^% CHANGE FPS BELOW!!!!!
  13. const getDesiredFPS = () => 120;
  14. // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  15. // ^^^^^^^ CHANGE FPS ^^^^^^^^^^^^^^^^
  16. // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  17. // ^^^^^^^ 240 IS THE MAX ^^^^^^^^^^^^
  18. // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  19. // ^^^ 120 or 180 is recommended ^^^^^
  20. // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  21.  
  22. (function() {
  23. 'use strict';
  24.  
  25. const jjj = () => 15
  26. const jjjjjj = () => 4
  27.  
  28. const jjjj = () => {
  29. if (getDesiredFPS() > jjj() * jjjjjj() * jjjjjj()) {
  30. return jjjjjj() * jjj() * jjjjjj()}
  31. if (getDesiredFPS() < jjjjjj() * jjj()) {
  32. return jjj() * jjjjjj()}
  33. else {
  34. return getDesiredFPS()}
  35. }
  36.  
  37. const jjjjj = jjjj();
  38.  
  39. // Helper function to inject a script into the page context
  40. function injectScript(fn) {
  41. const script = document.createElement('script');
  42. script.textContent = `(${fn})();`;
  43. document.documentElement.appendChild(script);
  44. script.remove();
  45. }
  46.  
  47. // Function to override the game's requestAnimationFrame to achieve the desired FPS
  48. function j() {
  49. const originalRequestAnimationFrame = window.requestAnimationFrame;
  50. let lastTime = 0;
  51.  
  52. window.requestAnimationFrame = function(callback) {
  53. const currentTime = performance.now();
  54. const timeToCall = Math.max(0, (1000 / jjjjj) - (currentTime - lastTime));
  55. const id = setTimeout(function() {
  56. callback(currentTime + timeToCall);
  57. }, timeToCall);
  58. lastTime = currentTime + timeToCall;
  59. return id;
  60. };
  61.  
  62.  
  63. // Create FPS counter display
  64. const jj = document.createElement('div');
  65. jj.id = 'fps-counter';
  66. jj.style.position = 'fixed';
  67. jj.style.top = '10px';
  68. jj.style.left = '10px';
  69. jj.style.padding = '5px';
  70. jj.style.backgroundColor = 'rgba(0, 0, 0, 0.5)';
  71. jj.style.color = 'white';
  72. jj.style.fontSize = '14px';
  73. jj.style.zIndex = '10000';
  74. jj.textContent = `Target FPS: ${jjjjj}`;
  75. document.body.appendChild(jj);
  76. }
  77.  
  78. // Inject the FPS override and counter function into the page context
  79. injectScript(j.toString().replace(/jjjjj/g, jjjjj));
  80. })();