When list of players and NPCs around you is created/modified, some values (ie. coordinates) get real values, while others (ie. hp, mp) are set to default value (in case of hp that default is 0). To put is simple, only data your client needs to properly display those entities is provided, rest of fields in struct contain default values.Quote:
why is the Target HP not there? Any way to fix? Need to get that normal attack first.
This is most likely done for optimization purposes, for you hardly need all information on all entities at any given time.
Lots of people writing bots have bypassed this by setting TargetID field to that of monster they wish to attack. But all that does it seems, is activate client UI to display target vitals, it does NOT however request additional info from server for that particular target.
Reason this works for them while using skills as first attack is in my opinion a bug. Since target UI is active client believes it has target lock and sends a command to server to attack that target. Here is the bug: server does not check if client sent lock target command (like it checks for normal attacks) and thus damage is done to target. Since target was hit, server now sends command to client that target has agroed you and as a result your client displays proper target lock.
In a way, those bots don't really lock target, but rather force server to lock it for them.
At least that's how I figured it out :)
Now to your question on how to solve it.
Option 1:
Use screen coordinates of target to click on target like human would.
Option 2:
vuduy was talking about triggers for different actions. If he still has them and is willing to share, that might work as well. I however have no offsets for these triggers and parameters you need to set before triggering them, since my interests do not lie in bot making and thus I have no need for them.
Option 3 (theoretical):
This one is based on theory that it's not server that prevents you from attacking a target with 0 hp, but rather your client because it thinks target you wish to attack is already dead.
To test this theory, set hp and max hp of target to some value other than 0, say 500. Then set that same target id to target offset (like most bots do). Client target UI that activates should show full hp of that target. Now attempt a normal attack.
It will either work or ... though luck, it's server that is checking.
Considering message delay (as well as stuff mentioned above), I think it's server that does the checking but I guess it won't hurt you to try and be sure.
This list contains some struct or just ID's one after another?Quote:
I haven't played PW for almost 2 years so I don't have the learned skills offset to share. However, I do have one for Zhu Xian if you are interested. The avatar's structure is different in ZX than PW; so this offset is guaranteed not to be the same as PW.
ZX learned-skill-list offset: base, avatar offset (in this case it's 0x28), 0x1064
Count is +4 from the list as usual.
BTW, if you aren't playing PW anymore, why the interest in skills list? Or any other list for that matter?