[I posted this on another forum a few minutes ago]
I'm still new to clients, so excuse me if this is well known.
In private servers, packets are sent from the Client, and received by the Server. Each packet is sent if an event occurred to trigger it. [Clicking an object, Clicking an item, Pressing a button, etc.]
The logout packet [Number 202] is triggered after the client is idle for a certain time period.
The Integer that controls if the Client should or shouldn't send the packet can be located at [Applet_Sub1 : anInt18]
Whenever the player clicks on the screen, or presses any keys, this value is reset back to 0. If nothing is happening, this number will constantly increment by a value of 1.
Once this number reaches the limit, the packet is triggered, and the server disconnects the player.
Now, editing the timer is an extremely simple process and only requires you to edit a single value.
Open your Client class and search for
This simply states that when this line is read, the value of 'anInt18' is incremented by 1.
Below that, you should see an if statement.
Code:
if(super.anInt18 > 4500) {
anInt1011 = 250;
super.anInt18 -= 500;
aClass30_Sub2_Sub2_1192.method397((byte)6, 202);
}
I'm not sure what the integer in the first line is supposed to represent, but I'll explain the other two.
The second line simply creates a 'buffer-zone'' in a sense. It decreases the value of anInt18 by 500 so the Client has
time to process the packet, send it, and receive the response from the server.
The third line actually sends the information. The first variable is the size of the packet, while the second is the packet's ID. This is the information that's passed onto the server to process.
As it should be pretty obvious what you do to change how long it takes to send this packet by now, but I'll explain anyway.
The code will only be executed if the conditions (In this case: super.anInt18 having a value of over 4500) are met. We need to edit the value '4500' to a different value. I'm not sure if there's really an 'exact' time period that this value represents, because anInt18 increments using a loop, rather than a given time period.
I believe that the loop time is about one-hundredth of a second [0.01 seconds]. Put simply, change the value to the amount of seconds you wish to be idle before the packet sends, and place two 0's after it.