npcs running away super fast
i just started a new server and was playing around with a few friends i have not changed nothing in the db about run speeds but when the npcs get low on like they run like they should but they run so freaking fast you cant even see where they go half the time.
i searched the forums but cant find anything on this so i figured i would post and see whats up is it something with my server or is it a known bug or anyone have this problem and fixed it? i checked the run speeds and in the zones i have seen it in all the npcs run speeds are set to like 1.25 and so on.. any help/info wold be helpful. |
I have this problem on my server as well, it seems like they take off ay lightning speed but it you hit them once they slow down to normal run speed. I have yet to fiddle with the run speed values to try and fix the problem but maybe its a fix that must be tampered with code side.
|
Make sure you added these into your rule_values table:
Code:
insert into rule_values values (0, Combat:EnableFearPathing, true); |
I'm at work, so can't test this, but the issue appears to be the logic in
fearpath.cpp Mob::GetFearSpeed(). There is a hardcoded constant in the source, FLEE_HP_MINSPEED, which is set to 10. The purpose of this is to put a lower limit on the mob's flee speed, i.e. once the Mobs HP gets down to 10%, it won't slow down any further. Assuming an unsnared mob with a default runspeed of 1.25 and rule FleeHPRatio set to 25, FearSpeed will return a flee speed of 0.25 at 25% health. Because of the logic, as the mobs HP decreases from 25% down to 10%, it will actually move faster, with a speed of 1.25 when it's HP is exactly 10%. Below 10% it will run at 0.25 (again, assuming unsnared). The following drop-in replacement will give you a linear speed decrease, starting at 0.25 at 25% health, down to 0.10 at 10% and below. Code:
float Mob::GetFearSpeed() { As I said, I can't test it in-game right now, but it works as I described 'in simulation'. :) |
Derision: Your code fix is working fine - Now they run away the way they should.
Here are some other "flee features" I remember from live; - if the players character was low on health ( I think was 25% or less?) then the NPC stayed and duked it out tell death. - if there were more than on NPC in the brawl, only the last one standing would flee (2 NPCs would stay and fight). |
Quote:
Regarding the second point, would it be a simple matter of checking if there was another mob who hated the player and not running if that was the case, or, does the the other mob need to be within aggro range. E.g. if I pull two mobs, fear one away, get the remaining one down to flee speed. Should the dying mob flee if the feared mob is 'out of range'. Also, do the mobs need to be on the same faction for this mechanic to kick in ? Does Con come into it ? A post over at PEQ suggests it does: http://www.projecteq.net/phpBB2/view...highlight=flee I'm willing to have a stab at this if no-one else is working on it, and if we can agree the exact mechanics (and it's not too intensive to calculate :) ). |
I really didn't notice more details - but from experience ( i usually camped in dungeons, so everyone was on the same faction) - I would say it would it be a simple matter of checking if there was another mob who hated the player and not running and, the other feared mob did not need to be within aggro range for the other to not flee; this would be a good starting point anyway ( can always tweak it later).
|
how do i insert the code? im using navicat console and it keeps telling me i have a syntax error im lost :/
|
If you are referring to the new rule_values, then you can just scroll down to the last line in your table in Navicat and hit the + sign to add a line, or the down arrow to start a new line. Then paste in the following using CTRL+V:
Code:
0 Combat:EnableFearPathing true |
ah ok, thanks trev doing that now
|
Also, Undead never flee when dieng
|
Not true about the undead part btw... ghouls are considered undead and they flee.
Now, as I remember it, if one of the two is feared, the mob will flee. The rule is: More than one currently in melee combat with you. Also, it does depend on the con for most mobs. Most mobs will run no matter how many there are if they're green to you. One of the exceptions to that rule that I remember from farming is rockhoppers. I'm don't think it matters if the mobs are different factions, but I can't say for sure on that one. |
the reason undead don't flee is cause they have a "f" in their special attacks column. You can manually add this to all the mobs you don't want to flee, like maybe bosses ect. Rather than doing that however, I just added in the two lines Trev supplied, at least until they get the running working perfectly
|
Quote:
When the mob is deciding whether to flee, it looks at the person at the top of it's hate list. If there are any mobs in that person's hate list which: Do not con green Are not feared or fleeing. Are within aggro range of the player (this is in lieu of checking if they are in melee combat with him, which I don't see can be easily done). Then the mob won't run. I think I need to add more checks, e.g. don't count mezzed mobs. As has been mentioned, there is already a check to see if the mob is totally immune to fleeing. I'll do some more tweaking/testing and add a rule to disable it and probably post it at the weekend. |
Quote:
|
All times are GMT -4. The time now is 01:11 AM. |
Powered by vBulletin®, Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.