Having trouble getting Qt3 installed/working in 12.10
I ended up installing 10.04 and got everything set up.
This diff contains the working changes from this thread and gives skittles. It's just a band aid for now as there are still things that needs to be fixed.
Code:Index: conf/zoneopcodes.xml =================================================================== --- conf/zoneopcodes.xml (revision 779) +++ conf/zoneopcodes.xml (working copy) @@ -11,16 +11,16 @@ <comment>Movement data... rewind info?</comment> <payload dir="client" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="50dc" name="OP_DeleteSpawn" updated="11/28/122"> + <opcode id="3c8e" name="OP_DeleteSpawn" updated="12/12/12"> <comment>DeleteSpawnCode</comment> <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> </opcode> - <opcode id="3b49" name="OP_ZoneEntry" updated="11/28/12"> + <opcode id="1665" name="OP_ZoneEntry" updated="12/12/12"> <comment>ZoneEntryCode</comment> <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/> - <payload dir="server" typename="uint8_t" sizechecktype="none"/> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="24cb" name="OP_GuildMOTD" updated="11/28/12"> + <opcode id="0561" name="OP_GuildMOTD" updated="12/12/12"> <comment>GuildMOTD</comment> <payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/> </opcode> @@ -28,7 +28,7 @@ <comment>InspectDataCode</comment> <payload dir="both" typename="inspectDataStruct" sizechecktype="match"/> </opcode> - <opcode id="1d80" name="OP_TargetMouse" updated="11/28/12"> + <opcode id="0e25" name="OP_TargetMouse" updated="12/12/12"> <comment>Targeting a person - old ClientTargetCode</comment> <payload dir="both" typename="clientTargetStruct" sizechecktype="match"/> </opcode> @@ -68,7 +68,7 @@ <payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/> <comment>Declining to join a group</comment> </opcode> - <opcode id="63db" name="OP_DzSwitchInfo" updated="11/28/12"> + <opcode id="0e01" name="OP_DzSwitchInfo" updated="12/12/12"> <comment>Expedition compass etc</comment> <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> </opcode> @@ -80,7 +80,7 @@ <comment>FormattedMessageCode i.e. pet dismissed etc</comment> <payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/> </opcode> - <opcode id="5557" name="OP_SpawnDoor" updated="11/28/12"> + <opcode id="7b6c" name="OP_SpawnDoor" updated="12/12/12"> <comment>DoorSpawnsCode</comment> <payload dir="server" typename="doorStruct" sizechecktype="modulus"/> </opcode> @@ -88,7 +88,7 @@ <comment>Receiving AA experience. Also when percent to AA changes.</comment> <payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="16ef" name="OP_HPUpdate" updated="11/28/12"> + <opcode id="07b8" name="OP_HPUpdate" updated="12/12/12"> <comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment> <payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/> </opcode> @@ -134,7 +134,7 @@ <payload dir="server" typename="uint8_t" sizechecktype="none"/> <comment>Bazaar search tool - struct changed and separated query from response with RoF launch. Needs work </comment> </opcode> - <opcode id="20fd" name="OP_SpawnUpdate" updated="11/28/12"> + <opcode id="1ad3" name="OP_SpawnUpdate" updated="12/12/12"> <comment>SpawnUpdateCode</comment> <payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/> </opcode> @@ -146,18 +146,18 @@ <comment>ConsiderCode</comment> <payload dir="both" typename="considerStruct" sizechecktype="match"/> </opcode> - <opcode id="4dae" name="OP_NewZone" updated="11/28/12"> + <opcode id="7fff" name="OP_NewZone" updated="12/12/12"> <comment>NewZoneCode</comment> <payload dir="server" typename="newZoneStruct" sizechecktype="match"/> </opcode> - <opcode id="769a" name="OP_GroundSpawn" updated="11/28/12"> + <opcode id="4286" name="OP_GroundSpawn" updated="12/12/12"> <comment>MakeDropCode</comment> <payload dir="server" typename="makeDropStruct" sizechecktype="none"/> <payload dir="client" typename="uint8_t" sizechecktype="none"/> </opcode> <opcode id="7cde" name="OP_RemoveSpawn" updated="11/28/12"> <comment>Remove spawn from zone</comment> - <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> + <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> </opcode> <opcode id="777f" name="OP_Death" updated="11/28/12"> <comment>old NewCorpseCode</comment> @@ -205,7 +205,7 @@ <comment>MoneyOnCorpseCode</comment> <payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/> </opcode> - <opcode id="1603" name="OP_PlayerProfile" updated="11/28/12"> + <opcode id="46bb" name="OP_PlayerProfile" updated="12/12/12"> <comment>CharProfileCode</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> @@ -213,8 +213,8 @@ <comment>TimeOfDayCode</comment> <payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/> </opcode> - <opcode id="44ef" name="OP_ClientUpdate" updated="11/28/12"> - <comment>Position updates</comment> + <opcode id="455d" name="OP_ClientUpdate" updated="12/12/12"> + <comment>Position updates - looks to be 455d and 42 bytes as of 12/12/12</comment> <payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/> <payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/> </opcode> @@ -230,7 +230,7 @@ <comment>Skill up code</comment> <payload dir="server" typename="skillIncStruct" sizechecktype="match"/> </opcode> - <opcode id="6128" name="OP_SpawnAppearance" updated="11/28/12"> + <opcode id="7360" name="OP_SpawnAppearance" updated="12/12/12"> <comment>SpawnAppearanceCode</comment> <payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/> </opcode> @@ -246,7 +246,7 @@ <comment>Leadership AA Exp Update</comment> <payload dir="server" typename="leadExpUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="4daf" name="OP_MobUpdate" updated="11/28/12"> + <opcode id="6b5a" name="OP_MobUpdate" updated="12/12/12"> <comment>MobUpdateCode</comment> <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/> </opcode> @@ -289,7 +289,7 @@ <comment>Group member names - Variable length</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="4281" name="OP_UIUpdate" updated="11/28/12"> + <opcode id="71f5" name="OP_UIUpdate" updated="12/12/12"> <comment>Seems to be sent to handle a variety of UI updates - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -297,16 +297,16 @@ <comment>List of group members - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4ea3" name="OP_GuildMemberList" updated="10/23/12"> + <opcode id="4053" name="OP_GuildMemberList" updated="12/12/12"> <comment>List of guild members - Variable length</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="1370" name="OP_ManaUpdate" updated="11/28/12"> - <comment>Mana Update opcode - 10 bytes</comment> + <opcode id="6675" name="OP_ManaUpdate" updated="12/12/12"> + <comment>Mana Update opcode - 10 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="1e36" name="OP_EndUpdate" updated="11/28/12"> - <comment>Endurance Update opcode - 10 bytes</comment> + <opcode id="71fb" name="OP_EndUpdate" updated="12/12/12"> + <comment>Endurance Update opcode - 10 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> <opcode id="3929" name="OP_Marketplace" updated="11/28/12"> @@ -333,19 +333,19 @@ <comment>Contents of claims window. /claim then refresh to capture packet - Guessing variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="7b6c" name="OP_VoiceChat" updated="11/28/12"> + <opcode id="3bcc" name="OP_VoiceChat" updated="12/12/12"> <comment>Voice chat server info - Variable length (Data sent when joining group,raid etc)</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="758a" name="OP_PollQuestions" updated="11/28/12"> + <opcode id="6e6c" name="OP_PollQuestions" updated="12/12/12"> <comment>SOE in-game player poll questions - Variable length</comment> <payload dir="both" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="5615" name="OP_PollResponses" updated="11/28/12"> + <opcode id="17ee" name="OP_PollResponses" updated="12/12/12"> <comment>Poll response choices - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0321" name="OP_ShroudProgression" updated="11/28/12"> + <opcode id="7251" name="OP_ShroudProgression" updated="12/12/12"> <comment>Unlocked shrouds - 244 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -353,15 +353,15 @@ <comment>Shroud templates to choose from on shroud NPC - 18983 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="23ad" name="OP_Fellowship" updated="11/28/12"> + <opcode id="40fd" name="OP_Fellowship" updated="12/12/12"> <comment>Fellowship information - 2564 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4234" name="OP_ExpandedGuildInfo" updated="11/28/12"> + <opcode id="7851" name="OP_ExpandedGuildInfo" updated="12/12/12"> <comment>Guild ranks and other misc guild data - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="18e7" name="OP_GuildBank" updated="11/28/12"> + <opcode id="1cbf" name="OP_GuildBank" updated="12/12/12"> <comment>Guild bank contents - Guessing variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -385,23 +385,23 @@ <comment>Tradeskill combine using old tradeskill window - 24 Bytes</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="0adc" name="OP_ItemPlayerPacket" updated="11/28/12"> + <opcode id="786e" name="OP_ItemPlayerPacket" updated="12/12/12"> <comment>Inventory/bank items coming over during zone - Variable length</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="19e1" name="OP_TaskDescription" updated="11/28/12"> + <opcode id="2294" name="OP_TaskDescription" updated="12/12/12"> <comment>Task descriptions coming down for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6c31" name="OP_TaskActivity" updated="11/28/12"> + <opcode id="7181" name="OP_TaskActivity" updated="12/12/12"> <comment>Task activity descriptions coming down for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0525" name="OP_CompletedTasks" updated="11/28/12"> + <opcode id="9495" name="OP_CompletedTasks" updated="12/12/12"> <comment>Task history for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6f1b" name="OP_CustomTitles" updated="11/28/12"> + <opcode id="471a" name="OP_CustomTitles" updated="12/12/12"> <comment>List of available titles - 1520 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -537,7 +537,7 @@ <comment>LFG/LFP server response - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6f15" name="OP_MercenaryList" updated="11/28/12"> + <opcode id="5a7c" name="OP_MercenaryList" updated="12/12/12"> <comment>Listing of hired mercenaries - 429 bytes <payload dir="server" typename="unknown" sizechecktype="none"/></comment> </opcode> @@ -557,7 +557,7 @@ <comment>Client clicks off buff - 8 bytes</comment> <payload dir="client" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0d4b" name="OP_HouseAddress" updated="11/28/12"> + <opcode id="6786" name="OP_HouseAddress" updated="12/12/12"> <comment>House and guildhall address information - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -577,11 +577,11 @@ <comment>Server sending pending rewards - variable length</comment> <payload dir="both" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="630b" name="OP_FTPNags" updated="11/28/12"> + <opcode id="63ae" name="OP_FTPNags" updated="12/12/12"> <comment>Free to play nags and other data - 1852 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="5d95" name="OP_Find" updated="11/28/12"> + <opcode id="34c3" name="OP_Find" updated="12/12/12"> <comment>Find window data - 112 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -596,15 +596,15 @@ <!-- Below are used to help make sense of the logs when searching for opcodes Using these marks unknown opcodes in logs for easier reading --> - <opcode id="496f" name="OP_Unknown1" updated="11/28/12"> + <opcode id="218d" name="OP_Unknown1" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="7d71" name="OP_Unknown2" updated="11/28/12"> + <opcode id="48b5" name="OP_Unknown2" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4a6e" name="OP_Unknown3" updated="11/28/12"> + <opcode id="7cb5" name="OP_Unknown3" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -635,10 +635,10 @@ <payload dir="server" typename="none" sizechecktype="match"/> </opcode> <opcode id="0000" name="OP_WelcomeScreenTitle" updated="05/16/11"> - <comment></comment> + <comment></comment> </opcode> <opcode id="0000" name="OP_VeteranRewards" update="04/18/11"> - <comment></comment> + <comment></comment> </opcode> <opcode id="0000" name="OP_SendAATable" updated="08/12/09"> <comment></comment> Index: src/everquest.h =================================================================== --- src/everquest.h (revision 779) +++ src/everquest.h (working copy) @@ -1075,18 +1075,19 @@ { struct { - signed padding0000:12; // ***Placeholder - signed deltaHeading:10; // change in heading - signed padding0005:10; // ***Placeholder - signed z:19; // z coord - signed deltaZ:13; // change in z - signed deltaY:13; // change in y - signed y:19; // y coord - signed x:19; // x coord - signed deltaX:13; // change in x - unsigned heading:12; // heading - signed animation:10; // animation - signed padding0006:10; // ***Placeholder + signed padding0004:13; + signed y:19; // y coord + signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; + signed deltaY:13; // change in y + signed z:19; // z coord + signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; + unsigned heading:12; // heading + signed deltaZ:13; // change in z + signed padding0020:7; }; int32_t posData[5]; }; @@ -2332,19 +2333,20 @@ struct playerSpawnPosStruct { /*0000*/ uint16_t spawnId; -/*0002*/ uint8_t unk[2]; // BSH 13 Apr 2011 -/*0004*/ signed padding0000:12; // ***Placeholder - signed deltaHeading:10; // change in heading - signed padding0005:10; // ***Placeholder -/*0008*/ signed z:19; // z coord - signed deltaZ:13; // change in z -/*0012*/ signed deltaY:13; // change in y - signed y:19; // y coord -/*0016*/ signed x:19; // x coord - signed deltaX:13; // change in x -/*0020*/ unsigned heading:12; // heading - signed animation:10; // animation - signed padding0006:10; // ***Placeholder +/*0002*/ uint16_t spawnId2; +/*0004*/ signed padding0004:13; + signed y:19; // y coord +/*0008*/ signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; +/*0012*/ signed deltaY:13; // change in y + signed z:19; // z coord +/*0016*/ signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; +/*0020*/ unsigned heading:12; // heading + signed deltaZ:13; // change in z + signed padding0020:7; /*0024*/ }; @@ -2356,18 +2358,22 @@ struct playerSelfPosStruct { -/*0000*/ uint8_t unknown0002[2]; // ***Placeholder (update time counter?) +/*0000*/ uint8_t unknown0000[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; - signed deltaHeading:10; // change in heading - unsigned heading:12; // Directional heading +/*0010*/ float deltaY; // Change in x +/*0014*/ float x; // x coord (1st loc value) +/*0018*/ float y; // y coord (2nd loc value) +/*0022*/ signed deltaHeading:10; // change in heading unsigned animation:10; // animation -/*0022*/ float deltaX; -/*0026*/ float deltaZ; -/*0030*/ float x; // x coord (2nd loc value) + unsigned padding0024:12; // ***Placeholder +/*0026*/ float deltaZ; // Change in z +/*0030*/ float deltaX; // Change in y /*0034*/ float z; // z coord (3rd loc value) +/*0038*/ unsigned heading:12; // Directional heading + unsigned padding0040:10; // ***Placeholder + unsigned padding0041:10; // ***Placeholder +/*0042*/ };
Thanks! I might be patching it wrong but I didn't get any errors. I think the PC's are way off in my compile, they're spawning way to the north. Is that to be expected at this point?
Edit: strike that, PCs are pretty close, it's those purple dots that are off. PCs are almost like they're mirrored off the horizontal axis, at least in the GL. Where normally they would show north, nearer the guild hall doors, showeq showed them south.
Really appreciate you helping out!
Last edited by rogues; 12-23-2012 at 07:20 PM.
Looks like QT3 was pulled totally out of Ubuntu 12. What a bummer.
Razzle
The dude doing the qt4 port put it on github I think if anyone wants to take up the torch. qt3 is very different than qt4.
I might need a new project soon. Hah! In all my spare time. A baby due in June. One in diapers. Another that just turned three. Ya. Gonna have to pass right now. I will keep myseq going for the time being.
Razzle
This fixes positioning -- there was a change to how the "y" coordinate is handled in the client.
This should work against the previous diff I posted:
And this is all the changes in one diff:Code:Index: src/spawnshell.cpp =================================================================== --- src/spawnshell.cpp (revision 779) +++ src/spawnshell.cpp (working copy) @@ -666,7 +666,7 @@ spawn->posData[2] = netStream.readUInt32NC(); spawn->posData[3] = netStream.readUInt32NC(); spawn->posData[4] = netStream.readUInt32NC(); - + if(spawn->otherData & 16) { name = netStream.readText(); @@ -852,7 +852,7 @@ if (dir != DIR_Client) { - int16_t y = pupdate->y >> 3; + int16_t y = (pupdate->y + pupdate->y) >> 3; int16_t x = pupdate->x >> 3; int16_t z = pupdate->z >> 3; @@ -866,20 +866,21 @@ struct pos { /*0000*/ uint16_t spawnId; -/*0002*/ signed padding0000:12; // ***Placeholder - signed deltaX:13; // change in x - signed padding0005:7; // ***Placeholder -/*0006*/ signed deltaHeading:10;// change in heading - signed deltaY:13; // change in y - signed padding0006:9; // ***Placeholder -/*0010*/ signed y:19; // y coord - signed animation:13; // animation -/*0014*/ unsigned heading:12; // heading - signed x:19; // x coord - signed padding0014:1; // ***Placeholder -/*0018*/ signed z:19; // z coord +/*0002*/ uint16_t spawnId2; +/*0004*/ signed padding0004:13; + signed y:19; // y coord +/*0008*/ signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; +/*0012*/ signed deltaY:13; // change in y + signed z:19; // z coord +/*0016*/ signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; +/*0020*/ unsigned heading:12; // heading signed deltaZ:13; // change in z -/*0022*/ + signed padding0020:7; +/*0024*/ }; #pragma pack(0) struct pos *p = (struct pos *)data; @@ -888,8 +889,8 @@ float(p->deltaX)/4.0, float(p->deltaY)/4.0, float(p->deltaZ)/4.0, float(p->heading), float(p->deltaHeading), - p->animation, p->padding0000, p->padding0005, - p->padding0006, p->padding0014); + p->animation, p->padding0004, p->padding0008, + p->padding0016, p->padding0020); #endif updateSpawn(pupdate->spawnId, x, y, z, dx, dy, dz, Index: src/spawn.cpp =================================================================== --- src/spawn.cpp (revision 779) +++ src/spawn.cpp (working copy) @@ -413,13 +413,12 @@ // clear out the spawn track list m_spawnTrackList.clear(); } - +#include "diagnosticmessages.h" void Spawn::update(const spawnStruct* s) { setName(s->name); setLastName(s->lastName); - - setPos(s->x >> 3, s->y >> 3, s->z >> 3); + setPos(s->x >> 3, (s->y + s->y) >> 3, s->z >> 3); setPetOwnerID(s->petOwnerId); setLight(s->light); setGender(s->gender);
Merry Christmas!Code:Index: conf/zoneopcodes.xml =================================================================== --- conf/zoneopcodes.xml (revision 779) +++ conf/zoneopcodes.xml (working copy) @@ -11,16 +11,16 @@ <comment>Movement data... rewind info?</comment> <payload dir="client" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="50dc" name="OP_DeleteSpawn" updated="11/28/122"> + <opcode id="3c8e" name="OP_DeleteSpawn" updated="12/12/12"> <comment>DeleteSpawnCode</comment> <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> </opcode> - <opcode id="3b49" name="OP_ZoneEntry" updated="11/28/12"> + <opcode id="1665" name="OP_ZoneEntry" updated="12/12/12"> <comment>ZoneEntryCode</comment> <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/> - <payload dir="server" typename="uint8_t" sizechecktype="none"/> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="24cb" name="OP_GuildMOTD" updated="11/28/12"> + <opcode id="0561" name="OP_GuildMOTD" updated="12/12/12"> <comment>GuildMOTD</comment> <payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/> </opcode> @@ -28,7 +28,7 @@ <comment>InspectDataCode</comment> <payload dir="both" typename="inspectDataStruct" sizechecktype="match"/> </opcode> - <opcode id="1d80" name="OP_TargetMouse" updated="11/28/12"> + <opcode id="0e25" name="OP_TargetMouse" updated="12/12/12"> <comment>Targeting a person - old ClientTargetCode</comment> <payload dir="both" typename="clientTargetStruct" sizechecktype="match"/> </opcode> @@ -68,7 +68,7 @@ <payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/> <comment>Declining to join a group</comment> </opcode> - <opcode id="63db" name="OP_DzSwitchInfo" updated="11/28/12"> + <opcode id="0e01" name="OP_DzSwitchInfo" updated="12/12/12"> <comment>Expedition compass etc</comment> <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> </opcode> @@ -80,7 +80,7 @@ <comment>FormattedMessageCode i.e. pet dismissed etc</comment> <payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/> </opcode> - <opcode id="5557" name="OP_SpawnDoor" updated="11/28/12"> + <opcode id="7b6c" name="OP_SpawnDoor" updated="12/12/12"> <comment>DoorSpawnsCode</comment> <payload dir="server" typename="doorStruct" sizechecktype="modulus"/> </opcode> @@ -88,7 +88,7 @@ <comment>Receiving AA experience. Also when percent to AA changes.</comment> <payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="16ef" name="OP_HPUpdate" updated="11/28/12"> + <opcode id="07b8" name="OP_HPUpdate" updated="12/12/12"> <comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment> <payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/> </opcode> @@ -134,7 +134,7 @@ <payload dir="server" typename="uint8_t" sizechecktype="none"/> <comment>Bazaar search tool - struct changed and separated query from response with RoF launch. Needs work </comment> </opcode> - <opcode id="20fd" name="OP_SpawnUpdate" updated="11/28/12"> + <opcode id="1ad3" name="OP_SpawnUpdate" updated="12/12/12"> <comment>SpawnUpdateCode</comment> <payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/> </opcode> @@ -146,18 +146,18 @@ <comment>ConsiderCode</comment> <payload dir="both" typename="considerStruct" sizechecktype="match"/> </opcode> - <opcode id="4dae" name="OP_NewZone" updated="11/28/12"> + <opcode id="7fff" name="OP_NewZone" updated="12/12/12"> <comment>NewZoneCode</comment> <payload dir="server" typename="newZoneStruct" sizechecktype="match"/> </opcode> - <opcode id="769a" name="OP_GroundSpawn" updated="11/28/12"> + <opcode id="4286" name="OP_GroundSpawn" updated="12/12/12"> <comment>MakeDropCode</comment> <payload dir="server" typename="makeDropStruct" sizechecktype="none"/> <payload dir="client" typename="uint8_t" sizechecktype="none"/> </opcode> <opcode id="7cde" name="OP_RemoveSpawn" updated="11/28/12"> <comment>Remove spawn from zone</comment> - <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> + <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> </opcode> <opcode id="777f" name="OP_Death" updated="11/28/12"> <comment>old NewCorpseCode</comment> @@ -205,7 +205,7 @@ <comment>MoneyOnCorpseCode</comment> <payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/> </opcode> - <opcode id="1603" name="OP_PlayerProfile" updated="11/28/12"> + <opcode id="46bb" name="OP_PlayerProfile" updated="12/12/12"> <comment>CharProfileCode</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> @@ -213,8 +213,8 @@ <comment>TimeOfDayCode</comment> <payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/> </opcode> - <opcode id="44ef" name="OP_ClientUpdate" updated="11/28/12"> - <comment>Position updates</comment> + <opcode id="455d" name="OP_ClientUpdate" updated="12/12/12"> + <comment>Position updates - looks to be 455d and 42 bytes as of 12/12/12</comment> <payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/> <payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/> </opcode> @@ -230,7 +230,7 @@ <comment>Skill up code</comment> <payload dir="server" typename="skillIncStruct" sizechecktype="match"/> </opcode> - <opcode id="6128" name="OP_SpawnAppearance" updated="11/28/12"> + <opcode id="7360" name="OP_SpawnAppearance" updated="12/12/12"> <comment>SpawnAppearanceCode</comment> <payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/> </opcode> @@ -246,7 +246,7 @@ <comment>Leadership AA Exp Update</comment> <payload dir="server" typename="leadExpUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="4daf" name="OP_MobUpdate" updated="11/28/12"> + <opcode id="6b5a" name="OP_MobUpdate" updated="12/12/12"> <comment>MobUpdateCode</comment> <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/> </opcode> @@ -289,7 +289,7 @@ <comment>Group member names - Variable length</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="4281" name="OP_UIUpdate" updated="11/28/12"> + <opcode id="71f5" name="OP_UIUpdate" updated="12/12/12"> <comment>Seems to be sent to handle a variety of UI updates - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -297,16 +297,16 @@ <comment>List of group members - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4ea3" name="OP_GuildMemberList" updated="10/23/12"> + <opcode id="4053" name="OP_GuildMemberList" updated="12/12/12"> <comment>List of guild members - Variable length</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="1370" name="OP_ManaUpdate" updated="11/28/12"> - <comment>Mana Update opcode - 10 bytes</comment> + <opcode id="6675" name="OP_ManaUpdate" updated="12/12/12"> + <comment>Mana Update opcode - 10 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="1e36" name="OP_EndUpdate" updated="11/28/12"> - <comment>Endurance Update opcode - 10 bytes</comment> + <opcode id="71fb" name="OP_EndUpdate" updated="12/12/12"> + <comment>Endurance Update opcode - 10 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> <opcode id="3929" name="OP_Marketplace" updated="11/28/12"> @@ -333,19 +333,19 @@ <comment>Contents of claims window. /claim then refresh to capture packet - Guessing variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="7b6c" name="OP_VoiceChat" updated="11/28/12"> + <opcode id="3bcc" name="OP_VoiceChat" updated="12/12/12"> <comment>Voice chat server info - Variable length (Data sent when joining group,raid etc)</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="758a" name="OP_PollQuestions" updated="11/28/12"> + <opcode id="6e6c" name="OP_PollQuestions" updated="12/12/12"> <comment>SOE in-game player poll questions - Variable length</comment> <payload dir="both" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="5615" name="OP_PollResponses" updated="11/28/12"> + <opcode id="17ee" name="OP_PollResponses" updated="12/12/12"> <comment>Poll response choices - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0321" name="OP_ShroudProgression" updated="11/28/12"> + <opcode id="7251" name="OP_ShroudProgression" updated="12/12/12"> <comment>Unlocked shrouds - 244 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -353,15 +353,15 @@ <comment>Shroud templates to choose from on shroud NPC - 18983 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="23ad" name="OP_Fellowship" updated="11/28/12"> + <opcode id="40fd" name="OP_Fellowship" updated="12/12/12"> <comment>Fellowship information - 2564 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4234" name="OP_ExpandedGuildInfo" updated="11/28/12"> + <opcode id="7851" name="OP_ExpandedGuildInfo" updated="12/12/12"> <comment>Guild ranks and other misc guild data - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="18e7" name="OP_GuildBank" updated="11/28/12"> + <opcode id="1cbf" name="OP_GuildBank" updated="12/12/12"> <comment>Guild bank contents - Guessing variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -385,23 +385,23 @@ <comment>Tradeskill combine using old tradeskill window - 24 Bytes</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="0adc" name="OP_ItemPlayerPacket" updated="11/28/12"> + <opcode id="786e" name="OP_ItemPlayerPacket" updated="12/12/12"> <comment>Inventory/bank items coming over during zone - Variable length</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="19e1" name="OP_TaskDescription" updated="11/28/12"> + <opcode id="2294" name="OP_TaskDescription" updated="12/12/12"> <comment>Task descriptions coming down for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6c31" name="OP_TaskActivity" updated="11/28/12"> + <opcode id="7181" name="OP_TaskActivity" updated="12/12/12"> <comment>Task activity descriptions coming down for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0525" name="OP_CompletedTasks" updated="11/28/12"> + <opcode id="9495" name="OP_CompletedTasks" updated="12/12/12"> <comment>Task history for task window - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6f1b" name="OP_CustomTitles" updated="11/28/12"> + <opcode id="471a" name="OP_CustomTitles" updated="12/12/12"> <comment>List of available titles - 1520 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -537,7 +537,7 @@ <comment>LFG/LFP server response - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="6f15" name="OP_MercenaryList" updated="11/28/12"> + <opcode id="5a7c" name="OP_MercenaryList" updated="12/12/12"> <comment>Listing of hired mercenaries - 429 bytes <payload dir="server" typename="unknown" sizechecktype="none"/></comment> </opcode> @@ -557,7 +557,7 @@ <comment>Client clicks off buff - 8 bytes</comment> <payload dir="client" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="0d4b" name="OP_HouseAddress" updated="11/28/12"> + <opcode id="6786" name="OP_HouseAddress" updated="12/12/12"> <comment>House and guildhall address information - Variable length</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -577,11 +577,11 @@ <comment>Server sending pending rewards - variable length</comment> <payload dir="both" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="630b" name="OP_FTPNags" updated="11/28/12"> + <opcode id="63ae" name="OP_FTPNags" updated="12/12/12"> <comment>Free to play nags and other data - 1852 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="5d95" name="OP_Find" updated="11/28/12"> + <opcode id="34c3" name="OP_Find" updated="12/12/12"> <comment>Find window data - 112 bytes</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -596,15 +596,15 @@ <!-- Below are used to help make sense of the logs when searching for opcodes Using these marks unknown opcodes in logs for easier reading --> - <opcode id="496f" name="OP_Unknown1" updated="11/28/12"> + <opcode id="218d" name="OP_Unknown1" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="7d71" name="OP_Unknown2" updated="11/28/12"> + <opcode id="48b5" name="OP_Unknown2" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> - <opcode id="4a6e" name="OP_Unknown3" updated="11/28/12"> + <opcode id="7cb5" name="OP_Unknown3" updated="12/12/12"> <comment>3 byte opcode that spam logs seemingly only when you have someone targeted. Marked here to make reading logs easier</comment> <payload dir="server" typename="unknown" sizechecktype="none"/> </opcode> @@ -635,10 +635,10 @@ <payload dir="server" typename="none" sizechecktype="match"/> </opcode> <opcode id="0000" name="OP_WelcomeScreenTitle" updated="05/16/11"> - <comment></comment> + <comment></comment> </opcode> <opcode id="0000" name="OP_VeteranRewards" update="04/18/11"> - <comment></comment> + <comment></comment> </opcode> <opcode id="0000" name="OP_SendAATable" updated="08/12/09"> <comment></comment> Index: src/everquest.h =================================================================== --- src/everquest.h (revision 779) +++ src/everquest.h (working copy) @@ -1075,18 +1075,19 @@ { struct { - signed padding0000:12; // ***Placeholder - signed deltaHeading:10; // change in heading - signed padding0005:10; // ***Placeholder - signed z:19; // z coord - signed deltaZ:13; // change in z - signed deltaY:13; // change in y - signed y:19; // y coord - signed x:19; // x coord - signed deltaX:13; // change in x - unsigned heading:12; // heading - signed animation:10; // animation - signed padding0006:10; // ***Placeholder + signed padding0004:13; + signed y:19; // y coord + signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; + signed deltaY:13; // change in y + signed z:19; // z coord + signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; + unsigned heading:12; // heading + signed deltaZ:13; // change in z + signed padding0020:7; }; int32_t posData[5]; }; @@ -2332,19 +2333,20 @@ struct playerSpawnPosStruct { /*0000*/ uint16_t spawnId; -/*0002*/ uint8_t unk[2]; // BSH 13 Apr 2011 -/*0004*/ signed padding0000:12; // ***Placeholder - signed deltaHeading:10; // change in heading - signed padding0005:10; // ***Placeholder -/*0008*/ signed z:19; // z coord - signed deltaZ:13; // change in z -/*0012*/ signed deltaY:13; // change in y - signed y:19; // y coord -/*0016*/ signed x:19; // x coord - signed deltaX:13; // change in x -/*0020*/ unsigned heading:12; // heading - signed animation:10; // animation - signed padding0006:10; // ***Placeholder +/*0002*/ uint16_t spawnId2; +/*0004*/ signed padding0004:13; + signed y:19; // y coord +/*0008*/ signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; +/*0012*/ signed deltaY:13; // change in y + signed z:19; // z coord +/*0016*/ signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; +/*0020*/ unsigned heading:12; // heading + signed deltaZ:13; // change in z + signed padding0020:7; /*0024*/ }; @@ -2356,18 +2358,22 @@ struct playerSelfPosStruct { -/*0000*/ uint8_t unknown0002[2]; // ***Placeholder (update time counter?) +/*0000*/ uint8_t unknown0000[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; - signed deltaHeading:10; // change in heading - unsigned heading:12; // Directional heading +/*0010*/ float deltaY; // Change in x +/*0014*/ float x; // x coord (1st loc value) +/*0018*/ float y; // y coord (2nd loc value) +/*0022*/ signed deltaHeading:10; // change in heading unsigned animation:10; // animation -/*0022*/ float deltaX; -/*0026*/ float deltaZ; -/*0030*/ float x; // x coord (2nd loc value) + unsigned padding0024:12; // ***Placeholder +/*0026*/ float deltaZ; // Change in z +/*0030*/ float deltaX; // Change in y /*0034*/ float z; // z coord (3rd loc value) +/*0038*/ unsigned heading:12; // Directional heading + unsigned padding0040:10; // ***Placeholder + unsigned padding0041:10; // ***Placeholder +/*0042*/ }; Index: src/spawnshell.cpp =================================================================== --- src/spawnshell.cpp (revision 779) +++ src/spawnshell.cpp (working copy) @@ -666,7 +666,7 @@ spawn->posData[2] = netStream.readUInt32NC(); spawn->posData[3] = netStream.readUInt32NC(); spawn->posData[4] = netStream.readUInt32NC(); - + if(spawn->otherData & 16) { name = netStream.readText(); @@ -852,7 +852,7 @@ if (dir != DIR_Client) { - int16_t y = pupdate->y >> 3; + int16_t y = (pupdate->y + pupdate->y) >> 3; int16_t x = pupdate->x >> 3; int16_t z = pupdate->z >> 3; @@ -866,20 +866,21 @@ struct pos { /*0000*/ uint16_t spawnId; -/*0002*/ signed padding0000:12; // ***Placeholder - signed deltaX:13; // change in x - signed padding0005:7; // ***Placeholder -/*0006*/ signed deltaHeading:10;// change in heading - signed deltaY:13; // change in y - signed padding0006:9; // ***Placeholder -/*0010*/ signed y:19; // y coord - signed animation:13; // animation -/*0014*/ unsigned heading:12; // heading - signed x:19; // x coord - signed padding0014:1; // ***Placeholder -/*0018*/ signed z:19; // z coord +/*0002*/ uint16_t spawnId2; +/*0004*/ signed padding0004:13; + signed y:19; // y coord +/*0008*/ signed deltaX:13; // change in x + signed deltaHeading:10;// change in heading + signed padding0008:9; +/*0012*/ signed deltaY:13; // change in y + signed z:19; // z coord +/*0016*/ signed x:19; // x coord + signed animation:10; // animation + signed padding0016:3; +/*0020*/ unsigned heading:12; // heading signed deltaZ:13; // change in z -/*0022*/ + signed padding0020:7; +/*0024*/ }; #pragma pack(0) struct pos *p = (struct pos *)data; @@ -888,8 +889,8 @@ float(p->deltaX)/4.0, float(p->deltaY)/4.0, float(p->deltaZ)/4.0, float(p->heading), float(p->deltaHeading), - p->animation, p->padding0000, p->padding0005, - p->padding0006, p->padding0014); + p->animation, p->padding0004, p->padding0008, + p->padding0016, p->padding0020); #endif updateSpawn(pupdate->spawnId, x, y, z, dx, dy, dz, Index: src/spawn.cpp =================================================================== --- src/spawn.cpp (revision 779) +++ src/spawn.cpp (working copy) @@ -413,13 +413,12 @@ // clear out the spawn track list m_spawnTrackList.clear(); } - +#include "diagnosticmessages.h" void Spawn::update(const spawnStruct* s) { setName(s->name); setLastName(s->lastName); - - setPos(s->x >> 3, s->y >> 3, s->z >> 3); + setPos(s->x >> 3, (s->y + s->y) >> 3, s->z >> 3); setPetOwnerID(s->petOwnerId); setLight(s->light); setGender(s->gender);
It's an early Christmas present... thanks acid! Your help is most appreciated. Clearly not something I would have ever figured out to be sure.
Last edited by fransick; 12-24-2012 at 08:29 PM.
Thanks! I applied the diffs, no errors and a cursory check seems to indicate that the diffs took, but skittles seem to be way off for the most part. It's likely I messed up on some step or missed one of the steps, so just to confirm, with what you posted above, things should be working pretty much correctly, is that right?
Merry Christmas! We need to set up some sort of Paypal or something to donate for all the great help you guys are providing for all of us that just can't let go.
Nevermind, I got it working I think. I had done some... I don't want to explain, the latest svn I was grabbing didn't have the right stuff to do a ./configure so I had put things together on my own and that didn't go so well (evidently you can't steal the missing makefiles from other versions of eq). I copied the changes to my 5.13.10.7 directory and reran make and there is much goodness! THANKS!!!!
Again, Merry Christmas. On behalf of everybody, we appreciate it. That was way beyond me. Hopefully Sony sticks to screwing with opcodes.
I saw some other stuff that was off or not right, that I'd like to work on, hopefully after the holidays.
There are currently 3 users browsing this thread. (0 members and 3 guests)