OP_GarbagePacket

EQ2Emulator Development forum.

Moderator: Team Members

Post Reply
Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

OP_GarbagePacket

Post by Jabantiz » Sun Feb 22, 2015 8:57 pm

I got to thinking about this packet the other night and it turns out this is actually a picture being sent from the client->server

In a 1208 log the packet marked as OP_GarbagePacket results in this
Image

Log is 1208-RecipeListScribe.log and for those interested attached is a php script used to make the above picture.
You do not have the required permissions to view the files attached to this post.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: OP_GarbagePacket

Post by Jabantiz » Sun Feb 22, 2015 9:31 pm

So after posting this and seeing the large gap under the picture got me thinking some more, so I added the hex of the following 2 garbage packets (until I saw "IEND" at the end of one of the packets), turns out it is a full paperdoll picture split up over multiple packets, 3 in this case, being sent to the server upon login

Here is a result of my second test and the php is attached for this test as well
Image
You do not have the required permissions to view the files attached to this post.

User avatar
Zcoretri
Team Member
Posts: 1642
Joined: Fri Jul 27, 2007 12:55 pm
Location: SoCal

Re: OP_GarbagePacket

Post by Zcoretri » Mon Feb 23, 2015 8:19 am

So I take it this is not a garbage packet? :mrgreen:
Is this something we can even use?

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: OP_GarbagePacket

Post by Jabantiz » Mon Feb 23, 2015 3:45 pm

Only thing I can think of is if a server wants to make a "players" site. Not sure how to store the info, also haven't really figured out the packet info before the picture info to know if there is an easy way to assemble it automatically and if it is always 3 packets or more or less. So still dev work to be done before we could use these pictures.

Any one got any other ideas for this picture?

User avatar
alfa
Team Member
Posts: 550
Joined: Fri Jul 27, 2007 6:24 pm
Location: France
Contact:

Re: OP_GarbagePacket

Post by alfa » Tue Feb 24, 2015 5:30 pm

First part (your first pic) for Guild Recruting panel ? Maybe, cause it display small screnshot of recruter.
Capture.PNG
You do not have the required permissions to view the files attached to this post.
Fight with me... Or die, like the rest.
J.A. say: "I think Xinux tried to tell me this, but I ignore most things he suggests."

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: OP_GarbagePacket

Post by Jabantiz » Tue Feb 24, 2015 6:19 pm

First pic was me not realizing multiple packets are combined to get the full picture, honestly lucky it showed anything. However looking over the packets to determine the struct I noticed it took 3 packets to make the paper doll, but there were 4 packets, looking at the 4th packet it turns out to be a head shot image that could work in the guild recruit panel.

Image

I think the paper doll is for the players website and the headshot is for the character select on the launcher and/or the guild recruiter like you said.

Here is the struct for those interested.

Code: Select all

<Struct Name="WS_GarbagePacket" ClientVersion="1" OpcodeName="OP_GarbagePacket">
<Data ElementName="packetIndex" Type="int8" />		<!-- Current garbage packet (0 based index) -->
<Data ElementName="totalPackets" Type="int8" />		<!-- Number of garbage packets that should be sent -->
<Data ElementName="unknown" Type="int64" />			<!-- -->
<Data ElementName="type" Type="int8" />				<!-- 0 for paper doll, 1 for head shot -->
<Data ElementName="unknown2" Type="int32" />		<!-- usually "00 00 00 00" -->
<Data ElementName="dataSize" Type="int32" />		<!-- number of bytes left in this packet -->
<Data ElementName="pngDataArray" Type="Array" ArraySizeVariable="dataSize">
  <Data ElementName="pngData" Type="int8" />		<!-- Actual picture data -->
</Data>
</Struct>
FYI, the array is to large for packet analyzer in some of the packets so it will pop out an "Invalid array size" message but the rest will work fine.

Jabantiz
Lead Developer
Posts: 2912
Joined: Wed Jul 25, 2007 2:52 pm
Location: California

Re: OP_GarbagePacket

Post by Jabantiz » Wed Apr 22, 2015 4:11 pm

Thanks to smash for some code the server will now capture the pictures, I added some code to store it in the database as well as rules to disable saving if the server admin does not want to store the pictures.

There is also some code to send the head shot to the login server, IMPORTANT: Do not use this code with mini login yet, if you do when the server sends the packet to login the world will get booted as mini login does not have the code to handle it.

Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests