Hello
Does anyone know how to close Status Bar ?
For example:
I'm stealing from Person X with incognito (Altrevius Moresi). He take my Status Bar with changed name. When I walk away, Status Bar in his client change color into grey wright ? and that person dont turn it off. After for example 1 hour I return (without incognito) I have my real name (Scalaris) and that name apear on Status Bar which that person have still turn on.
I work on POL097
Any suggestion, please ?
PS. Sorry for my pure english.
how to close status bar ?
Re: how to close status bar ?
Thats odd. The gump disappears for me after the person has moved away 20 steps. How old are your scripts?
Re: how to close status bar ?
runtest: You talk about paperdoll ? Paperdoll is closeing after 20 steps but not status bar. I chceck this on Official Distro downloaded today and its the same problem. Status bar turn into grey but not disappear.
Which packet response for that in yours scripts ?
Which packet response for that in yours scripts ?
Re: how to close status bar ?
On a v5 or later client the status bar will not disappear, but simply grey out. The client keeps it onscreen but obviously can't pick up any changes when it's grey.
I wasn't aware that it would not pick up a name change when it turned blue again. Is this what you mean?
I wasn't aware that it would not pick up a name change when it turned blue again. Is this what you mean?
Re: how to close status bar ?
Imho there is no way to close the health bar on the client with a server command or packet.
Since ML they keep open until the e.g. npc dies or the player close it.
You could do a complicated packet hook for that case but i can think of an easier solution.
Did you try to shortly disconnect from the server, i think the health bar is closed in that
case. Never tested that, could be worth a try
Since ML they keep open until the e.g. npc dies or the player close it.
You could do a complicated packet hook for that case but i can think of an easier solution.
Did you try to shortly disconnect from the server, i think the health bar is closed in that
case. Never tested that, could be worth a try
Re: how to close status bar ?
I can't disconnect players every time they turn on somebodies status bar
They use this bug to recognize thiefs and person on incognito spell
They use this bug to recognize thiefs and person on incognito spell
Re: how to close status bar ?
Does it close when the NPC dies? if so, you could trigger it through a packet if you know what the server says to the client.
Re: how to close status bar ?
Close when NPC dies, but only when status bar is blue/red etc. never close if target go away more than 20 steps and status is grey. So if player return to me, I have got status bar of his ghost
Re: how to close status bar ?
This is not what i meant. I thought the thief should disconnect himself securely, so theI can't disconnect players every time they turn on somebodies status bar
health bar disappear. But i just tested that myself. The health bar stays open.
So you probably have only a chance to solve it by hooking packet 0x11 (status bar info)
and sending the guys with the open health bars a wrong player name, if that player is a thief
Re: how to close status bar ?
I've done some research on that.
The following packets are the result of killing a chicken with an open health bar
and standing nearby to the chicken, so health bar dissappear when it dies.
01 D2 B9 EF is the serial of the chicken.
6C 1B C1 79 is the serial of the corpse.
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 36, len: 0x09
0000: A1 01 D2 B9 EF 00 19 00 00 ->.........
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 37, len: 0x09
0000: A1 01 D2 B9 EF 03 E8 00 00 ->.........
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 38, len: 0x09
0000: A1 01 D2 B9 EF 00 19 00 00 ->.........
15:45:11.0 Server -> Client: 0xAF (Death), frequ: 3, len: 0x0D
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1A (SendItem), frequ: 3, len: 0x14
0000: 1A 14 00 EC 1B C1 79 20 06 00 D0 97 08 C0 9A 05 ->......y ........
0010: C4 83 F8 00 ->....
15:45:11.0 Server -> Client: 0x89 (Corpse), frequ: 3, len: 0x08
0000: 89 08 00 6C 1B C1 79 00 ->...l..y.
15:45:11.0 Server -> Client: 0x3C (AddMultipleObjectsToContainer), frequ: 4, len: 0x05
0000: 3C 05 00 00 00 -><....
15:45:11.0 Server -> Client: 0xBF (NewCommand::Unknown), frequ: 68, len: 0x0D
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 01 ->.....l..y....
If you are not standing nearby the result here is:
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1D (RemoveObject), frequ: 6, len: 0x05
0000: 1D 01 D2 B9 EF ->.....
Only sending this packet will remove the chicken from the
client, but not close the healthbar. The chicken is surely alive, if you relogin
it's still there. So only sending the remove object doesn't force the
client to close the status bar.
15:45:11.0 Server -> Client: 0x54 (SendSound), frequ: 6, len: 0x0C
0000: 54 01 00 72 00 00 17 08 00 9A 00 00 ->T..r........
15:45:11.31 Client -> Server: 0xBF (NewCommand::Unknown), frequ: 69, len: 0x09
0000: BF 09 00 00 10 6C 1B C1 79 ->.....l..y
15:45:11.31 Client -> Server: 0xBF (NewCommand::CloseStatusGump), frequ: 70, len: 0x09
0000: BF 09 00 00 0C 01 D2 B9 EF ->.........
The healthbar was closed by the client, but sadly this is a packet the client sents
15:45:11.78 Server -> Client: 0xD6 (AOSToolTip), frequ: 22, len: 0x43
0000: D6 43 00 00 01 6C 1B C1 79 00 00 00 00 00 01 00 ->.C...l..y.......
0010: 0F EA 1B 00 2A 41 00 20 00 63 00 6F 00 72 00 70 ->....*A. .c.o.r.p
0020: 00 73 00 65 00 20 00 6F 00 66 00 20 00 61 00 20 ->.s.e. .o.f. .a.
0030: 00 63 00 68 00 69 00 63 00 6B 00 65 00 6E 00 00 ->.c.h.i.c.k.e.n..
0040: 00 00 00 ->...
I'd tried sending different packets (single or combination from above) to the client
via a command, but the health bar never disappear. Perhaps someone else has
an idea
The following packets are the result of killing a chicken with an open health bar
and standing nearby to the chicken, so health bar dissappear when it dies.
01 D2 B9 EF is the serial of the chicken.
6C 1B C1 79 is the serial of the corpse.
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 36, len: 0x09
0000: A1 01 D2 B9 EF 00 19 00 00 ->.........
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 37, len: 0x09
0000: A1 01 D2 B9 EF 03 E8 00 00 ->.........
15:45:11.0 Server -> Client: 0xA1 (SendHealth), frequ: 38, len: 0x09
0000: A1 01 D2 B9 EF 00 19 00 00 ->.........
15:45:11.0 Server -> Client: 0xAF (Death), frequ: 3, len: 0x0D
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1A (SendItem), frequ: 3, len: 0x14
0000: 1A 14 00 EC 1B C1 79 20 06 00 D0 97 08 C0 9A 05 ->......y ........
0010: C4 83 F8 00 ->....
15:45:11.0 Server -> Client: 0x89 (Corpse), frequ: 3, len: 0x08
0000: 89 08 00 6C 1B C1 79 00 ->...l..y.
15:45:11.0 Server -> Client: 0x3C (AddMultipleObjectsToContainer), frequ: 4, len: 0x05
0000: 3C 05 00 00 00 -><....
15:45:11.0 Server -> Client: 0xBF (NewCommand::Unknown), frequ: 68, len: 0x0D
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 01 ->.....l..y....
If you are not standing nearby the result here is:
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1D (RemoveObject), frequ: 6, len: 0x05
0000: 1D 01 D2 B9 EF ->.....
Only sending this packet will remove the chicken from the
client, but not close the healthbar. The chicken is surely alive, if you relogin
it's still there. So only sending the remove object doesn't force the
client to close the status bar.
15:45:11.0 Server -> Client: 0x54 (SendSound), frequ: 6, len: 0x0C
0000: 54 01 00 72 00 00 17 08 00 9A 00 00 ->T..r........
15:45:11.31 Client -> Server: 0xBF (NewCommand::Unknown), frequ: 69, len: 0x09
0000: BF 09 00 00 10 6C 1B C1 79 ->.....l..y
15:45:11.31 Client -> Server: 0xBF (NewCommand::CloseStatusGump), frequ: 70, len: 0x09
0000: BF 09 00 00 0C 01 D2 B9 EF ->.........
The healthbar was closed by the client, but sadly this is a packet the client sents
15:45:11.78 Server -> Client: 0xD6 (AOSToolTip), frequ: 22, len: 0x43
0000: D6 43 00 00 01 6C 1B C1 79 00 00 00 00 00 01 00 ->.C...l..y.......
0010: 0F EA 1B 00 2A 41 00 20 00 63 00 6F 00 72 00 70 ->....*A. .c.o.r.p
0020: 00 73 00 65 00 20 00 6F 00 66 00 20 00 61 00 20 ->.s.e. .o.f. .a.
0030: 00 63 00 68 00 69 00 63 00 6B 00 65 00 6E 00 00 ->.c.h.i.c.k.e.n..
0040: 00 00 00 ->...
I'd tried sending different packets (single or combination from above) to the client
via a command, but the health bar never disappear. Perhaps someone else has
an idea
Re: how to close status bar ?
15:45:11.0 Server -> Client: 0xAF (Death), frequ: 3, len: 0x0D
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1A (SendItem), frequ: 3, len: 0x14
0000: 1A 14 00 EC 1B C1 79 20 06 00 D0 97 08 C0 9A 05 ->......y ........
0010: C4 83 F8 00 ->....
15:45:11.0 Server -> Client: 0x89 (Corpse), frequ: 3, len: 0x08
0000: 89 08 00 6C 1B C1 79 00 ->...l..y.
that doesn't close it?
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0x1A (SendItem), frequ: 3, len: 0x14
0000: 1A 14 00 EC 1B C1 79 20 06 00 D0 97 08 C0 9A 05 ->......y ........
0010: C4 83 F8 00 ->....
15:45:11.0 Server -> Client: 0x89 (Corpse), frequ: 3, len: 0x08
0000: 89 08 00 6C 1B C1 79 00 ->...l..y.
that doesn't close it?
Re: how to close status bar ?
I think i didn't test these ones, because i don't wanted to
send an extra item and corpse to the guys with the open health bar
What close the bar via SendPaket is:
15:45:11.0 Server -> Client: 0xAF (Death), frequ: 3, len: 0x0D
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0xBF (NewCommand::Unknown), frequ: 68, len: 0x0D
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 01 ->.....l..y....
But it also freezes the client. But it only works if the status bar is NOT greyed out.
I think that's bringing us back to my first statement/thought, that you can't close it
yet. So you can try to fool the guys with paket 0x11 after the name of the thief
falls back to the original name
send an extra item and corpse to the guys with the open health bar
What close the bar via SendPaket is:
15:45:11.0 Server -> Client: 0xAF (Death), frequ: 3, len: 0x0D
0000: AF 01 D2 B9 EF 6C 1B C1 79 00 00 00 00 ->.....l..y....
15:45:11.0 Server -> Client: 0xBF (NewCommand::Unknown), frequ: 68, len: 0x0D
0000: BF 0D 00 00 10 6C 1B C1 79 00 00 00 01 ->.....l..y....
But it also freezes the client. But it only works if the status bar is NOT greyed out.
I think that's bringing us back to my first statement/thought, that you can't close it
yet. So you can try to fool the guys with paket 0x11 after the name of the thief
falls back to the original name