|
From: <r6e...@us...> - 2012-11-09 16:31:28
|
Revision: 774
http://seq.svn.sourceforge.net/seq/?rev=774&view=rev
Author: r6express
Date: 2012-11-09 16:31:17 +0000 (Fri, 09 Nov 2012)
Log Message:
-----------
Resolved remaining known issues with 20121107 patch:
- SessionRequestStruct has a new "Everquest" tag
- playerSelfPosStruct spawnId and counter were swapped
- Updated more of the fillProfileStruct() method, still more to do so it's remaining mostly disabled.
Modified Paths:
--------------
showeq/trunk/src/everquest.h
showeq/trunk/src/packetstream.cpp
showeq/trunk/src/zonemgr.cpp
Modified: showeq/trunk/src/everquest.h
===================================================================
--- showeq/trunk/src/everquest.h 2012-11-08 22:50:15 UTC (rev 773)
+++ showeq/trunk/src/everquest.h 2012-11-09 16:31:17 UTC (rev 774)
@@ -374,7 +374,8 @@
/*0000*/ uint32_t unknown0000;
/*0004*/ uint32_t sessionId;
/*0008*/ uint32_t maxLength;
-/*0012*/
+/*0012*/ uint8_t tag[10]; // "Everquest\0"
+/*0022*/
};
/**
@@ -2353,8 +2354,8 @@
struct playerSelfPosStruct
{
-/*0000*/ uint16_t spawnId; // Player's spawn id
-/*0002*/ uint8_t unknown0002[2]; // ***Placeholder (update time counter?)
+/*0000*/ uint8_t unknown0002[2]; // ***Placeholder (update time counter?)
+/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint8_t unknown0004[6]; // ***Placeholder -- BSH 13 Apr 2011
/*0010*/ float y; // y coord (1st loc value)
/*0014*/ float deltaY;
Modified: showeq/trunk/src/packetstream.cpp
===================================================================
--- showeq/trunk/src/packetstream.cpp 2012-11-08 22:50:15 UTC (rev 773)
+++ showeq/trunk/src/packetstream.cpp 2012-11-09 16:31:17 UTC (rev 774)
@@ -536,11 +536,13 @@
if (calcedCRC != packet.crc())
{
- seqWarn("INVALID PACKET: Bad CRC [%s:%d -> %s:%d] netOp %04x seq %04x len %d crc (%04x != %04x)",
+#if (defined(PACKET_PROCESS_DIAG))
+ seqDebug("INVALID PACKET: Bad CRC [%s:%d -> %s:%d] netOp %04x seq %04x len %d crc (%04x != %04x)",
(const char*)packet.getIPv4SourceA(), packet.getSourcePort(),
(const char*)packet.getIPv4DestA(), packet.getDestPort(),
packet.getNetOpCode(), packet.arqSeq(), packet.getUDPPayloadLength(),
packet.crc(), calcedCRC);
+#endif
return;
}
}
Modified: showeq/trunk/src/zonemgr.cpp
===================================================================
--- showeq/trunk/src/zonemgr.cpp 2012-11-08 22:50:15 UTC (rev 773)
+++ showeq/trunk/src/zonemgr.cpp 2012-11-09 16:31:17 UTC (rev 774)
@@ -223,26 +223,18 @@
player->profile.spellSlotRefresh[i] = netStream.readUInt32NC();
}
- player->profile.haircolor = netStream.readUInt8();
- player->profile.beardcolor = netStream.readUInt8();
-
- // Unknown
- netStream.skipBytes(6);
-
- player->profile.eyecolor1 = netStream.readUInt8();
- player->profile.eyecolor2 = netStream.readUInt8();
- player->profile.hairstyle = netStream.readUInt8();
- player->profile.beard = netStream.readUInt8();
-
- // Unknown
- netStream.skipBytes(11);
-
// Equipment
int equipCount = netStream.readUInt32NC();
for (int i = 0; i < equipCount; i++) {
memcpy(&player->profile.equipment[i], netStream.pos(), sizeof(player->profile.equipment[i]));
netStream.skipBytes(sizeof(player->profile.equipment[i]));
}
+
+ // Something
+ int sCount = netStream.readUInt32NC();
+ for (int i = 0; i < sCount; i++) {
+ netStream.skipBytes(20);
+ }
// Visible equipment tints (dye color)
int tintCount = netStream.readUInt32NC();
@@ -250,14 +242,15 @@
player->profile.item_tint[i].color = netStream.readUInt32NC();
}
- // AAs
- int aaCount = netStream.readUInt32NC();
- for (int i = 0; i < aaCount; i++) {
- player->profile.aa_array[i].AA = netStream.readUInt32NC();
- player->profile.aa_array[i].value = netStream.readUInt32NC();
- player->profile.aa_array[i].unknown008 = netStream.readUInt32NC();
+ // Something
+ int sCount2 = netStream.readUInt32NC();
+ for (int i = 0; i < sCount; i++) {
+ netStream.skipBytes(4);
}
+ // Looks like face, haircolor, beardcolor, eyes, etc. Skipping over it.
+ netStream.skipBytes(52);
+
player->profile.points = netStream.readUInt32NC();
player->profile.MANA = netStream.readUInt32NC();
player->profile.curHp = netStream.readUInt32NC();
@@ -272,6 +265,16 @@
// Unknown
netStream.skipBytes(28);
+ // AAs
+ int aaCount = netStream.readUInt32NC();
+ for (int i = 0; i < aaCount; i++) {
+ player->profile.aa_array[i].AA = netStream.readUInt32NC();
+ player->profile.aa_array[i].value = netStream.readUInt32NC();
+ player->profile.aa_array[i].unknown008 = netStream.readUInt32NC();
+ }
+
+ // Everything after this has not yet been re-aligned for the 20121107 patch.
+
player->profile.face = netStream.readUInt32NC();
// Unknown
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|