Page 2 of 2

Re: [HELP] Mage character is freezing

Posted: Thu Sep 01, 2011 6:21 pm
by lion
you already have answer
UnAfraid wrote:packet executor

Re: [HELP] Mage character is freezing

Posted: Thu Sep 01, 2011 7:42 pm
by Origami
zatei wrote: I tcpdump'ed network packets and found that game client is only receiving and sending world update packets but not SENDING the packets when i trying to do any action.
Well, according to this..if you have really had analyzed the traffic I can assume that the shit is in your client because server cannot make client not to send packets...therefore I would try to use clean client with 'hosts' file tuned...just to get rid of doubts.

I agree with lion and UnAfraid that you have to play with General.properties, section Client packet queue tuning

Re: [HELP] Mage character is freezing

Posted: Thu Sep 01, 2011 9:59 pm
by zatei
Ok, i can tell you about my server:

Last half of year our team spent to make PvP server with x50 rates and tuned lot of config files, at this point we are not open for people cause we finalizing buffer ang shop. I mean we have maximum 5 players in-game at one time.

Now let's check our Client Packet Settings:
SleepTime = 13
MaxSendPerPass = 8
MaxReadPerPass = 8
HelperBufferCount = 30

ClientPacketQueueSize = 0
ClientPacketQueueMaxBurstSize = 0
ClientPacketQueueMaxPacketsPerSecond = 120
ClientPacketQueueMeasureInterval = 8
ClientPacketQueueMaxAveragePacketsPerSecond = 60
ClientPacketQueueMaxFloodsPerMin = 3
ClientPacketQueueMaxOverflowsPerMin = 2
ClientPacketQueueMaxUnderflowsPerMin = 2
ClientPacketQueueMaxUnknownPerMin = 8
I tuned them, what's wrong?

Re: [HELP] Mage character is freezing

Posted: Thu Sep 01, 2011 11:14 pm
by Origami
May be it is not enough. If your server can't be accessed outside try to increase the values
# Default values
SleepTime = 20
MaxSendPerPass = 12
MaxReadPerPass = 12
HelperBufferCount = 20

# Too high values, guess not for productive server. But who knows
ClientPacketQueueSize = 20
ClientPacketQueueMaxBurstSize = 15
ClientPacketQueueMaxPacketsPerSecond = 200
ClientPacketQueueMeasureInterval = 8
ClientPacketQueueMaxAveragePacketsPerSecond = 100
ClientPacketQueueMaxFloodsPerMin = 10
ClientPacketQueueMaxOverflowsPerMin = 10
ClientPacketQueueMaxUnderflowsPerMin = 10
ClientPacketQueueMaxUnknownPerMin = 10
If the "problem" is in the server then these values should help or change the behavior of your issue at least. But if it will happen it is not mean that the problem is in the server, it only means that the server blocks you because of flooding caused by your client.
If nothing changes then the problem is not in packet executor (and not in the server I guess) and you have to pay more attention to your client.

One more idea is... you may probably use kinda quite restrictive packet filter in the server and/or client and/or router (if any) which blocks your packets because you're sending too many packets in one time unit.
Sysadmins often uses such kind of rules in server-side packet filters (iptables, ipfw, pf) or routers for restricting network attacks.

BTW testing this issue with clean client is not kinda abstract test because I am quite sure your client was patched not once and you have patched not only data files, but binaries too (at least dsetup, engine, l2) and therefore your client can be stuck in some mutex inside for instance because somebody made something wrong with code and you don't even know about that (it is only an assumption).
Anyway it is actually up to you and everything is in your hands. We can only give an advice and it is you to decide what to do.

Re: [HELP] Mage character is freezing

Posted: Fri Sep 02, 2011 9:38 am
by zatei
Thank you Origami, i know that you only can give me advice and i just trying to fix the problem any way.

Changed the settings like you said, testing today, i will try to use clean client.

There is all ok with my iptables, i have an expirience of network administration and iptables and sysctl.conf was the first places that i checked but thank you for trying to help :)

Re: [HELP] Mage character is freezing

Posted: Fri Sep 02, 2011 3:01 pm
by zatei
Tested Origami's settings, fail...
Now creating clean client, return to you soon.

Re: [HELP] Mage character is freezing

Posted: Sat Sep 03, 2011 10:31 am
by Sylar88
I had the same problem in l2retro running the unstable (:( ) version of Hi5.

REMOVED is not affecting this issue, since i tried both ways ( with it and without it ).
Clean client also suffers from that issue.
If you set a skills reuse delay to pratcically zero ( very low ) and just press the shortcut with the skill you instantly get frozen in 3-4 seconds.

I couldnt find back then whats causing it, so i added flood protection on skill use. Helps a lot, although its not a solution but a hack.

Re: [HELP] Mage character is freezing

Posted: Sat Sep 03, 2011 11:15 am
by Starter
trycatch useMagic maybe?

Re: [HELP] Mage character is freezing

Posted: Sat Sep 03, 2011 11:19 am
by Sylar88
Starter wrote:trycatch useMagic maybe?
The only thing that this can catch, is a mosquito in a hot summer night :)

Re: [HELP] Mage character is freezing

Posted: Sat Sep 03, 2011 12:00 pm
by Starter
Sylar88 wrote:
Starter wrote:trycatch useMagic maybe?
The only thing that this can catch, is a mosquito in a hot summer night :)
Well at least we have a mosquito then. Helps to not starve while endlessly trying to find a solution. xD

Re: [HELP] Mage character is freezing

Posted: Sat Sep 03, 2011 5:24 pm
by zatei
Yesterday at night i implemented a logging functionality to network code of the server, this is a part of L2GameClient.java (1007 - 1013):

Code: Select all

                // TEST                count++;                if (getStats().countBurst(count))                {                    _log.info("BURST STOPPED!!! - more than " + count + " packets in burst");                    return;                }
So, today we tested Necromancer again and catched this in stdout.log:

Code: Select all

BURST STOPPED!!! - more than 15 packets in burst
And my ClientPacketQueueMaxBurstSize = 15

What you can say about this, maybe Starter or someone else who have this problem on his server can test this logic like me, or i mistaked somewhere?

Re: [HELP] Mage character is freezing

Posted: Mon Oct 10, 2011 1:02 pm
by zatei
Sorry for long waiting, we have found solution. I know that this is not good way to solve it and now we have a less defence from DOS attack, so, you have been warned.

The problem was gone when i removed burst counting code from previous post (L2GameClient.java (1007 - 1013)):

Code: Select all

 count++;if (getStats().countBurst(count))    return; 
You can do it another way with simply tuning network prefences:
ClientPacketQueueMaxBurstSize = 1000

I decided to remove the code only because of little improving of perfomance on heavy traffic, i mean both ways will solve the problem.

Anyway this is not an answer on a question: -"Why we are faced with this problem?". Because of old server settings that need to be updated to match the current server conditions or what?