Packets can be stopped?
Moderator: Moderators
Packets can be stopped?
In a plugin I'm creating, I'm realizing download the emblems of guilds of players who are near to the BOT.
The problem is that in most cases the emblems downloaded by OpenKore is incomplete. Ie not realize all data while conducting download.
I believe that this is caused by the high size of certain emblems that even compressed by zLib, still very heavy.
I believe that this is caused by a security measure OpenKore, which stops the packets that are too large.
If it does exist, where is the command that does this? For so I can make an exception
You may have other reasons for this problem. If you have any better ideas, please tell.
The problem is that in most cases the emblems downloaded by OpenKore is incomplete. Ie not realize all data while conducting download.
I believe that this is caused by the high size of certain emblems that even compressed by zLib, still very heavy.
I believe that this is caused by a security measure OpenKore, which stops the packets that are too large.
If it does exist, where is the command that does this? For so I can make an exception
You may have other reasons for this problem. If you have any better ideas, please tell.
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Re: Packets can be stopped?
Guild emblem packets are probably sent in several pieces, but that should be handled transparently by MessageTokenizer. There should be no truncating of "too large" packets.
Can you compare related data in openkore's debug mode and WPE/Wireshark?
Can you compare related data in openkore's debug mode and WPE/Wireshark?
Re: Packets can be stopped?
Thanks for the suggestion, really well.EternalHarvest wrote:Guild emblem packets are probably sent in several pieces, but that should be handled transparently by MessageTokenizer. There should be no truncating of "too large" packets.
Can you compare related data in openkore's debug mode and WPE/Wireshark?
I used the Microsoft Network Monitor 3.4 in bRO and I obtained the following results:
Packat main the guild_emblem: 52 01 A9 05 C2 3D 00 00 01 00 00 00
Continued: http://pastebin.com/tufJEBpa
I think not, but if you already have some in native OpenKore who perform the interpretation of packages that are partitioned, as emblems of this case? To serve as an example for my case.
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Re: Packets can be stopped?
KeplerBR wrote:I think not, but if you already have some in native OpenKore who perform the interpretation of packages that are partitioned, as emblems of this case? To serve as an example for my case.
The whole MessageTokenizer class does just that, and not much more. It's irrelevant whether a packet is an emblem packet or any other on that level. PacketParser, server types etc don't care about underlying byte stream details, they operate on discrete RO protocol messages.EternalHarvest wrote:that should be handled transparently by MessageTokenizer
Re: Packets can be stopped?
Since it the package is handled by MessageTokenizer, so no matter whether it is partitioned or not, because the emblem is partially saved by OpenKore?
Plugin: http://pastebin.com/ksTmkfcx
PS: The image obtained by OpenKore was still compressed by zLib and, if he tried to decompress it, would not succeed because it is incomplete.
Plugin: http://pastebin.com/ksTmkfcx
PS: The image obtained by OpenKore was still compressed by zLib and, if he tried to decompress it, would not succeed because it is incomplete.
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Re: Packets can be stopped?
"emblem" is unpacked as "Z*" in "guild_emblem" (in ServerType file). Try "a*" there instead.
Re: Packets can be stopped?
THANK YOU. This solved the problem the problem! Now, it is always successful in unpacking the emblems.
With some more details, I will publish the official SVN plugin in and fix this packet, oky?
With some more details, I will publish the official SVN plugin in and fix this packet, oky?
-
- Developers
- Posts: 1798
- Joined: 05 Dec 2008, 05:42
- Noob?: Yes
Re: Packets can be stopped?
Yes, do that. Don't forget to change guild_emblem in all servertypes, and this can be done in separate commit too.
Re: Packets can be stopped?
It was pretty tricky, but here's the plugin.
He downloads the emblems, decompresses the zLib, removes the color pink and saves.
http://pastebin.com/gND2zGKX
Honestly, I thought it was horrible to part of remove the color pink, but do not know how to improve. Somehow, it works, but in a few cases, resulting in error messages like the one below
He downloads the emblems, decompresses the zLib, removes the color pink and saves.
http://pastebin.com/gND2zGKX
Honestly, I thought it was horrible to part of remove the color pink, but do not know how to improve. Somehow, it works, but in a few cases, resulting in error messages like the one below