Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

LiquidBounce Forum

  1. Home
  2. Kotlin/Java
  3. Fake FPS Module

Fake FPS Module

Scheduled Pinned Locked Moved Kotlin/Java
3 Posts 2 Posters 1.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • KoitoyuuK Offline
    KoitoyuuK Offline
    Koitoyuu
    wrote on last edited by
    #1

    中文: 首先在liquidbounce_at.cfg的第二行添加
    English: First add in the second line of liquidbounce_at.cfg

    public net.minecraft.client.Minecraft field_71470_ab # debugFPS
    

    中文: 然后复制下面的码字并注册
    English: Then copy the code word below and register

    package master.koitoyuu.modules.misc
    
    import master.koitoyuu.utils.MathUtils
    import net.ccbluex.liquidbounce.event.EventTarget
    import net.ccbluex.liquidbounce.event.UpdateEvent
    import net.ccbluex.liquidbounce.features.module.Module
    import net.ccbluex.liquidbounce.features.module.ModuleCategory
    import net.ccbluex.liquidbounce.features.module.ModuleInfo
    import net.ccbluex.liquidbounce.utils.misc.RandomUtils
    import net.ccbluex.liquidbounce.value.IntegerValue
    import net.minecraft.client.Minecraft
    
    @ModuleInfo(name = "FakeFPS", description = "", category = ModuleCategory.MISC)
    class FakeFPS : Module() {
        private val maxFps:IntegerValue = object : IntegerValue("MaxFPS",1000,30,3000) {
            override fun onChanged(oldValue: Int, newValue: Int) {
                if (minFps.get() > newValue) set(minFps.get())
            }
        }
    
        private val minFps:IntegerValue = object : IntegerValue("MinFPS",900,30,3000) {
            override fun onChanged(oldValue: Int, newValue: Int) {
                if (maxFps.get() < newValue) set(maxFps.get())
            }
        }
    
        private var minecraftFPS = 0
        private var fps = 0
    
        fun getFakeFPS(): Int {
            if (minecraftFPS != Minecraft.debugFPS) {
                fps = RandomUtils.nextInt(minFps.get(),maxFps.get())
                minecraftFPS = Minecraft.debugFPS
            }
            return fps
        }
    }
    

    中文:最后在MixinMinecraft中映射debugFps并重写getDebugFPS
    English: Finally map debugFps in MixinMinecraft and overwrite getDebugFPS

        @Shadow
        public static int debugFPS;
    
        /**
         * @author koitoyuu
         */
        @Overwrite
        public static int getDebugFPS() {
            FakeFPS fakeFPS = (FakeFPS) LiquidBounce.moduleManager.getModule(FakeFPS.class);
            if (fakeFPS.getState()) {
                return fakeFPS.getFakeFPS();
            }
            return debugFPS;
        }
    
    LarissaL 1 Reply Last reply
    1
    • KoitoyuuK Koitoyuu

      中文: 首先在liquidbounce_at.cfg的第二行添加
      English: First add in the second line of liquidbounce_at.cfg

      public net.minecraft.client.Minecraft field_71470_ab # debugFPS
      

      中文: 然后复制下面的码字并注册
      English: Then copy the code word below and register

      package master.koitoyuu.modules.misc
      
      import master.koitoyuu.utils.MathUtils
      import net.ccbluex.liquidbounce.event.EventTarget
      import net.ccbluex.liquidbounce.event.UpdateEvent
      import net.ccbluex.liquidbounce.features.module.Module
      import net.ccbluex.liquidbounce.features.module.ModuleCategory
      import net.ccbluex.liquidbounce.features.module.ModuleInfo
      import net.ccbluex.liquidbounce.utils.misc.RandomUtils
      import net.ccbluex.liquidbounce.value.IntegerValue
      import net.minecraft.client.Minecraft
      
      @ModuleInfo(name = "FakeFPS", description = "", category = ModuleCategory.MISC)
      class FakeFPS : Module() {
          private val maxFps:IntegerValue = object : IntegerValue("MaxFPS",1000,30,3000) {
              override fun onChanged(oldValue: Int, newValue: Int) {
                  if (minFps.get() > newValue) set(minFps.get())
              }
          }
      
          private val minFps:IntegerValue = object : IntegerValue("MinFPS",900,30,3000) {
              override fun onChanged(oldValue: Int, newValue: Int) {
                  if (maxFps.get() < newValue) set(maxFps.get())
              }
          }
      
          private var minecraftFPS = 0
          private var fps = 0
      
          fun getFakeFPS(): Int {
              if (minecraftFPS != Minecraft.debugFPS) {
                  fps = RandomUtils.nextInt(minFps.get(),maxFps.get())
                  minecraftFPS = Minecraft.debugFPS
              }
              return fps
          }
      }
      

      中文:最后在MixinMinecraft中映射debugFps并重写getDebugFPS
      English: Finally map debugFps in MixinMinecraft and overwrite getDebugFPS

          @Shadow
          public static int debugFPS;
      
          /**
           * @author koitoyuu
           */
          @Overwrite
          public static int getDebugFPS() {
              FakeFPS fakeFPS = (FakeFPS) LiquidBounce.moduleManager.getModule(FakeFPS.class);
              if (fakeFPS.getState()) {
                  return fakeFPS.getFakeFPS();
              }
              return debugFPS;
          }
      
      LarissaL Offline
      LarissaL Offline
      Larissa
      wrote on last edited by
      #2

      @koitoyuu so good i love u ❤️

      KoitoyuuK 1 Reply Last reply
      0
      • LarissaL Larissa

        @koitoyuu so good i love u ❤️

        KoitoyuuK Offline
        KoitoyuuK Offline
        Koitoyuu
        wrote on last edited by
        #3

        @larissa >3

        1 Reply Last reply
        0

        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

        With your input, this post could be even better 💗

        Register Login
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        About
        • Terms of Service
        • Privacy Policy
        • Status
        • Contact Us
        Downloads
        • Releases
        • Source code
        • License
        Docs
        • Tutorials
        • CustomHUD
        • AutoSettings
        • ScriptAPI
        Community
        • Forum
        • Guilded
        • YouTube
        • Twitter
        • D.Tube
        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups