Welcome on MasterOf13FPS! MasterOf13FPS

Register today or sign up if you are already a member and never miss any cool content again :)

What is timerrange

idkmanlol

New member
Joined
Sep 8, 2023
Messages
7
Reaction score
6
Points
0
Its in Augustus b2.6 (i decompiled it but couldn't find anything in "timerrange.class")
So what even is TimerRange???
 
  • Like
Reactions: one
easily said expoilts the timer balance, sets your timer to a very low value, then to a very big value, teleporting you a bit in result
 
  • Like
Reactions: one
Isnt timerrange just another word for tickbase?
No, timer range module sets your timer based on your distance to your target, tickbase is the general name of the exploit and is in some clients used the same as timer range, sometimes not
easily said expoilts the timer balance, sets your timer to a very low value, then to a very big value, teleporting you a bit in result
Incorrect, gramatically and factually o_O
 
  • Like
Reactions: one
No, timer range module sets your timer based on your distance to your target, tickbase is the general name of the exploit and is in some clients used the same as timer range, sometimes not

Incorrect, gramatically and factually o_O
Huh thanks! Can you explain what the "timer balance is?"

Also if it doesnt set timer and stuff, then what does it actually do?
 
Last edited:
  • Like
Reactions: one
Huh thanks! Can you explain what the "timer balance is?"
Timer Balance is the balance of how much packets you send, for example (dumbed down)
let's say normal packets are 30/s
that means that normally for 5 seconds you should send 150 packets.
however, if someone sets his game speed to 0.5 then he sends 15/s so in 5 seconds he only sends 75 packets instead of the 150
then he can set his game speed to whatever value above 1 to send the remaining amounts of packets so the amount of packets he sends in the end would be the same as of a legit player.
Also if it doesnt set timer and stuff, then what does it actually do?
You can achive this result like this, but what mr. Kassan overhere said is a description of the TickBase exploit, which is what setting your game speed low and then high is. I reccomend manipulating the ingame clock (field which is set to Minecraft.getSystemTime() in Timer.java) instead of setting the timerSpeed value as it more precise and works in edge cases where the game itself modifies that value, however if you do not know how this stuff works then setting the timer speed value should be good enough.
 
  • Like
Reactions: one
Timer Balance is the balance of how much packets you send, for example (dumbed down)
let's say normal packets are 30/s
that means that normally for 5 seconds you should send 150 packets.
however, if someone sets his game speed to 0.5 then he sends 15/s so in 5 seconds he only sends 75 packets instead of the 150
then he can set his game speed to whatever value above 1 to send the remaining amounts of packets so the amount of packets he sends in the end would be the same as of a legit player.

You can achive this result like this, but what mr. Kassan overhere said is a description of the TickBase exploit, which is what setting your game speed low and then high is. I reccomend manipulating the ingame clock (field which is set to Minecraft.getSystemTime() in Timer.java) instead of setting the timerSpeed value as it more precise and works in edge cases where the game itself modifies that value, however if you do not know how this stuff works then setting the timer speed value should be good enough.
All right thanks! I'll try to implement this. Thanks again :D

Also, I was watching this video
What does negative/positive balance mean? How many packets behind / ahead (respectively)?
And I'm guessing calculating balance is just calculating packets ahead / behind.


Also, on a side note, I've seen people send Vulcan's source code, so I was wondering if you had it. If you do could you send me it? Thanks :D
 
Last edited:
  • Like
Reactions: one
All right thanks! I'll try to implement this. Thanks again :D

Also, I was watching this video
What does negative/positive balance mean? How many packets behind / ahead (respectively)?
And I'm guessing calculating balance is just calculating packets ahead / behind.
You are correct, to know how specifically this is being calculated you can look at the code below which is from my own client and see the comments to know what specifically is being done
Java:
    long lastSendTime = 0, balance = 0;

    // Set the priority to lowest as this should be executed after all modules may have cancelled the event or changed the packets
    @Subscribe(priority = Priority.LOWEST)
    public void onPacket(PacketEvent packetEvent) {
        if(packetEvent.getType() == PacketEvent.Type.SEND) {
            if (packetEvent.getPacket() instanceof C03PacketPlayer) {
                // If last send time hasn't been set, set the value to current time as this is the first packet being sent
                if (lastSendTime == 0) lastSendTime = System.currentTimeMillis();
                // Delay between the last sent packet and current time
                long delay = System.currentTimeMillis() - lastSendTime;
                // Change balance depending on if the packet has been cancelled
                balance += packetEvent.cancelled ? -delay : 50 - delay;
                // Set last send time to current time
                lastSendTime = System.currentTimeMillis();
            }
        }
    }
Also, on a side note, I've seen people send Vulcan's source code, so I was wondering if you had it. If you do could you send me it? Thanks :D
I do remember there being a src leak of Vulcan, however I couldn't get my hands on it before it got taken down from most places and I couldn't find a working download since.
 
  • Like
Reactions: one
You are correct, to know how specifically this is being calculated you can look at the code below which is from my own client and see the comments to know what specifically is being done
Java:
    long lastSendTime = 0, balance = 0;

    // Set the priority to lowest as this should be executed after all modules may have cancelled the event or changed the packets
    @Subscribe(priority = Priority.LOWEST)
    public void onPacket(PacketEvent packetEvent) {
        if(packetEvent.getType() == PacketEvent.Type.SEND) {
            if (packetEvent.getPacket() instanceof C03PacketPlayer) {
                // If last send time hasn't been set, set the value to current time as this is the first packet being sent
                if (lastSendTime == 0) lastSendTime = System.currentTimeMillis();
                // Delay between the last sent packet and current time
                long delay = System.currentTimeMillis() - lastSendTime;
                // Change balance depending on if the packet has been cancelled
                balance += packetEvent.cancelled ? -delay : 50 - delay;
                // Set last send time to current time
                lastSendTime = System.currentTimeMillis();
            }
        }
    }

I do remember there being a src leak of Vulcan, however I couldn't get my hands on it before it got taken down from most places and I couldn't find a working download since.
Hi!

Could you tell me if my current implementation of TimerRange is correct?

Java:
// accessed by Minecraft#getSystemTime
public long modifiedTime;
public long beginTeleportingTime;
public double balance;
public final long maxTeleportingTime = 2000;
public Vec3 projectedLocation;
public boolean teleporting;

public void onRender2D(){
    if(!ModuleManager.killAura.enabled || !ModuleManager.killAura.target == null)
        return;
    EntityLivingBase target = ModuleManager.killAura.target;
    int xyDistanceToTarget = target.distanceSquaredXZto(mc.thePlayer.getPosition());
    if(!teleporting){
        if(xyDistanceToTarget > 4 && xyDistanceToTarget <= 49){
            this.teleporting = true;
            this.modifiedTime = System.currentTimeMillis();
            this.beginTeleportingTime = System.currentTimeMillis();
        }
    }
 
    if(teleporting){
        this.balance += System.currentTimeMillis() - this.modifiedTime;
        // some crazy calcs ill figre this later
        // this.modifiedTime = ???
        // same for this
        // this.projectedLocation = ?
        if(this.projectedLocation.distanceSquaredXZto(target) < 4){
            this.modifiedTime = System.currentTimeMillis() + this.balance;
            this.balance -= System.currentTimeMillis() - this.modifiedTime;
        }
    }
 
    if(this.modifiedTime + this.balance <= System.currentTimeMillis()){
        this.balance = 0;
        this.teleporting = false;
    } 
}

I haven't tested it, since I wrote it on a Chromebook, but is the general concept correct? I'll try to figure out the calculations when I can get on my computer.
 
Last edited:
  • Like
Reactions: one
Hi!

Could you tell me if my current implementation of TimerRange is correct?

Java:
// accessed by Minecraft#getSystemTime
public long modifiedTime;
public long beginTeleportingTime;
public double balance;
public final long maxTeleportingTime = 2000;
public Vec3 projectedLocation;
public boolean teleporting;

public void onRender2D(){
    if(!ModuleManager.killAura.enabled || !ModuleManager.killAura.target == null)
        return;
    EntityLivingBase target = ModuleManager.killAura.target;
    int xyDistanceToTarget = target.distanceSquaredXZto(mc.thePlayer.getPosition());
    if(!teleporting){
        if(xyDistanceToTarget > 4 && xyDistanceToTarget <= 49){
            this.teleporting = true;
            this.modifiedTime = System.currentTimeMillis();
            this.beginTeleportingTime = System.currentTimeMillis();
            this.balance += System.currentTimeMillis() - this.modifiedTime;
        }
    }
  
    this.balance += System.currentTimeMillis() - this.modifiedTime;
  
    // same for this
    // this.projectedLocation = ?
  
    if(teleporting){
        // some crazy calcs ill figre this later
        // this.modifiedTime = ???
        if(this.projectedLocation.distanceSquaredXZto(target) < 4){
            this.teleporting = false;
            this.modifiedTime = System.currentTimeMillis() + this.balance;
            this.balance -= System.currentTimeMillis() - this.modifiedTime;
        }
    }
  
    if(this.modifiedTime + this.balance <= System.currentTimeMillis()){
        this.balance = 0;
    }
}

I haven't tested it, since I wrote it on a Chromebook, but is the general concept correct? I'll try to figure out the calculations when I can get on my computer.
Your code is messy and I don't see your ever actually changing the timer speed variable, but if you're changing it outside of this method based on the balance variable, then yes it might work
 
  • Like
Reactions: one
Your code is messy and I don't see your ever actually changing the timer speed variable, but if you're changing it outside of this method based on the balance variable, then yes it might work
Alright, I just the code in Minecraft#getSystemTime to refer to the modified time if tickbase was enabled.
 
  • Like
Reactions: one
shape1
shape2
shape3
shape4
shape5
shape6
Back
Top