Packet ID: 0x34 (Get Player Status)
BYTE[1] getType
� 0x04 - Basic Stats (Packet 0x11 Return)
There's no distance, concealed and possibly hidden(unchecked) checks for Basic Stats request.
People are using this with injection to detect when staff are online.
It's a really simple packethook fix I may upload if enough people request.
[Core POL097-2008-02-26 Coregina -- Nando]
[fixed] - Packet ID: 0x34 - Issue
Moderator: POL Developer
I didn't test this myself yet, but if what you said is valid, do you know if this is an old issue or introducted in the new releases (say, 096/097)? Not that it's too important, I'm just curious.
Concerning the fix, I'm looking forward to it's release. Since you are working on the distro (aren't you?), wouldn't the script suit well in it until the (presumed) core fix is introducted?
Concerning the fix, I'm looking forward to it's release. Since you are working on the distro (aren't you?), wouldn't the script suit well in it until the (presumed) core fix is introducted?
- MontuZ
- Forum Regular
- Posts: 338
- Joined: Fri Feb 10, 2006 8:08 am
- Location: Myrtle Beach, South Carolina
Fix found here;
http://forums.polserver.com/ftopic2128.php
I haven't touched the distro in a while, been busy with my own shard, lol.
http://forums.polserver.com/ftopic2128.php
I haven't touched the distro in a while, been busy with my own shard, lol.
- MontuZ
- Forum Regular
- Posts: 338
- Joined: Fri Feb 10, 2006 8:08 am
- Location: Myrtle Beach, South Carolina
Re: [POL097-2008-02-26 Coregina] - Packet ID: 0x34 - Issue
Very cool, maybe you could release the other packet?
Re: [POL097-2008-02-26 Coregina] - Packet ID: 0x34 - Issue
Code: Select all
use uo;
program sendtarget()
Print( "Hooking incoming 6C packet..." );
return 1;
endprogram
exported function Handle6CReceive( chr, byref packet )
var staffs := {0x1, 0x2, 0x3}; // staff chars serials here
var serstat := packet.GetInt32(7);
var staff;
if(chr.cmdlevel)
return 0;
endif
if(serstat in staffs)
staff := SystemFindObjectBySerial(serstat);
if(staff && !staff.concealed)
return 0;
endif
packet.SetInt32(7, chr.serial);
endif
return 0;
endfunction