Two of the trickiest issues in the game.
By the way PY just want to ask something how to solve the over attack speed in mobs in game
The attack speed thing is a pain.
Basically what is happening is this.
1. You click on a mob to attack.
2. Server and client both independently calculate your distance to the mob and your move speed and attack speed (which they often get completely different)
3. Server and client both start moving towards the selected mob at their own speeds.
4. When they get in range they start the attack. Server sends the first damage packet. Client begins the attack animation regardless of whether it has yet received a damage packet. If the packet hasn't arrived yet it shows a miss
5. The fight continues with server generating damage packets and client displaying attack animations. By now they are usually completely out of sync but whatever.... If packets come in faster than animations then the damage just goes into a pool until it can be used. (This often results in double damage displayed sometimes) If packets come in too slow then it will miss every now and then as the damage pool is empty.
6. Fight ends
Your only options to fix this are
1. Use the project 137 files where I have already removed all the calculations from the client. Only the server calculations matter.
2. Painstakingly work your way through all the timing calculations for move speed and attack speed with every single weapon type (and even some skills). I did this for basic weapon types in KTRose. It takes ages and will most likely fail as soon as you apply it on a slightly different computer processor. I don't think it is solvable completely.
and any tips where can I edit quest
Well quests in general work fine in dev rev 4. The problem is with timed quests.
The quests (QSD files) contain values that are defined in seconds. In older rose versions this was a solved problem. They used the standard time format. Seconds since midnight on Jan 1st 1970 if i remember correctly.
In these newer ones they changed that date to (as far as i can tell) midnight on the 1st of Oct 2006 which is the day that NARose first opened their server. However there's something else going on in there that I never quite managed to figure out 100% I cam tantalizingly close with the date change but there seems to be a slight random element added to the number so that it never did quite work After wasting a couple of weeks on this and other problems we realized that there was no way we were ever going to be able to make DR4 keep up with the changes that they kept making in the client packet formats so we abandoned it.
And there you have it. The reasons why I started working on projects where I could actually control the client code so that it made some sort of sense.