Results 1 to 4 of 4

Thread: No skittles as of the 18 Sep patch

  1. #1
    Registered User
    Join Date
    Dec 2003
    Posts
    23

    No skittles as of the 18 Sep patch

    Is there anyone left who might be able to fix this, please?

    Thanks in advance

  2. #2
    Administrator
    Join Date
    Sep 2005
    Posts
    354

    Re: No skittles as of the 18 Sep patch

    I was working on opcodes but am stuck on the movement update packets as they are a little different. Trying to utilize the debug code in spawnshell.cpp to work it out but cannot get it to compile with the debug code. I travel a lot so only have a little time here and there to work on it these days unfortunately. Hoping someone can throw us a hand and get it back up soon.
    Last edited by fransick; 09-23-2013 at 11:45 AM. Reason: Spelling and grammar counts...

  3. #3
    Registered User
    Join Date
    Dec 2003
    Posts
    23

    Re: No skittles as of the 18 Sep patch

    Quote Originally Posted by fransick View Post
    I was working on opcodes but am stuck on the movement update packets as they are a little different. Trying to utilize the debug code in spawnshell.cpp to work it out but cannot get it to compile with the debug code. I travel a lot so only have a little time here and there to work on it these days unfortunately. Hoping someone can thow us a hand and get it back up soon.
    No worries and no rush. I realize that everyone is busy. I just wasn't sure if anyone knew that it was broken, since a lot of the SEQ gods no longer play.

    Thanks and I / We appreciate all of your efforts.

  4. #4
    Developer
    Join Date
    Oct 2010
    Posts
    215

    Re: No skittles as of the 18 Sep patch

    Here, just in time for the next expansion to invalidate the work. There's still some issues, like the deltas aren't correct and other player heading isn't right, but positions and such are working. In a few places, it looks like they've added a full 32-bit word to the position data.

    Diffed from what's in subversion.

    Code:
    Index: conf/zoneopcodes.xml
    ===================================================================
    --- conf/zoneopcodes.xml    (revision 794)
    +++ conf/zoneopcodes.xml    (working copy)
    @@ -3,11 +3,11 @@
     <seqopcodes>
     
         <!-- Critical opcodes used directly by ShowEQ -->
    -    <opcode id="59ab" name="OP_PlayerProfile" updated="08/21/13">
    +    <opcode id="7164" name="OP_PlayerProfile" updated="10/01/13">
             <comment>CharProfileCode</comment>
             <payload dir="server" typename="uint8_t" sizechecktype="none"/>
         </opcode>
    -    <opcode id="500c" name="OP_ZoneEntry" updated="08/21/13">
    +    <opcode id="4c44" name="OP_ZoneEntry" updated="10/01/13">
             <comment>ZoneEntryCode</comment>
             <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
         <payload dir="server" typename="uint8_t" sizechecktype="none"/>
    @@ -16,7 +16,7 @@
             <comment>TimeOfDayCode</comment>
             <payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
         </opcode>
    -    <opcode id="1af6" name="OP_NewZone" updated="08/21/13">
    +    <opcode id="3ca2" name="OP_NewZone" updated="10/01/13">
             <comment>NewZoneCode</comment>
             <payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
         </opcode>
    @@ -24,7 +24,7 @@
             <comment>DoorSpawnsCode</comment>
             <payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
         </opcode>
    -    <opcode id="22ea" name="OP_GroundSpawn" updated="08/21/13">
    +    <opcode id="5020" name="OP_GroundSpawn" updated="10/01/13">
             <comment>MakeDropCode</comment>
             <payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
             <payload dir="client" typename="uint8_t" sizechecktype="none"/>
    @@ -45,28 +45,28 @@
             <comment>GuildMOTD</comment>
             <payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
         </opcode>
    -    <opcode id="183d" name="OP_ClientUpdate" updated="08/21/13">
    +    <opcode id="2e95" name="OP_ClientUpdate" updated="10/01/13">
             <comment>Position updates</comment>
             <payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
             <payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
         </opcode>
    -    <opcode id="7417" name="OP_NpcMoveUpdate" updated="08/21/13">
    +    <opcode id="1602" name="OP_NpcMoveUpdate" updated="10/01/13">
             <comment>Position updates</comment>
             <payload dir="server" typename="uint8_t" sizechecktype="none"/>
         </opcode>
    -    <opcode id="7905" name="OP_MobUpdate" updated="08/21/13">
    +    <opcode id="6543" name="OP_MobUpdate" updated="10/01/13">
             <comment>MobUpdateCode</comment>
             <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
         </opcode>
    -    <opcode id="5d22" name="OP_DeleteSpawn" updated="08/21/13">
    +    <opcode id="568a" name="OP_DeleteSpawn" updated="10/01/13">
             <comment>DeleteSpawnCode</comment>
             <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
         </opcode>
    -    <opcode id="2616" name="OP_RemoveSpawn" updated="08/21/13">
    +    <opcode id="6d64" name="OP_RemoveSpawn" updated="10/01/13">
             <comment>Remove spawn from zone</comment>
         <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
         </opcode>
    -    <opcode id="0d78" name="OP_Death" updated="08/21/13">
    +    <opcode id="442d" name="OP_Death" updated="10/01/13">
             <comment>old NewCorpseCode</comment>
             <payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
         </opcode>
    @@ -90,7 +90,7 @@
             <comment>Info regarding guild members</comment>
             <payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
         </opcode>
    -    <opcode id="6714" name="OP_ClickObject" updated="07/16/13">
    +    <opcode id="615e" name="OP_ClickObject" updated="10/01/13">
             <comment>Items dropped on the ground</comment>
             <payload dir="both" typename="remDropStruct" sizechecktype="match"/>
         </opcode>
    @@ -103,7 +103,7 @@
             <comment>Combat actions i.e. bash, kick etc</comment>
             <payload dir="both" typename="action2Struct" sizechecktype="match"/>
         </opcode>
    -    <opcode id="004f" name="OP_Consider" updated="08/21/13">
    +    <opcode id="5557" name="OP_Consider" updated="10/01/13">
             <comment>ConsiderCode</comment>
             <payload dir="both" typename="considerStruct" sizechecktype="match"/>
         </opcode>
    @@ -1008,4 +1008,4 @@
             <comment></comment>
         </opcode>
     -->
    -</seqopcodes>
    \ No newline at end of file
    +</seqopcodes>
    Index: src/spawnshell.cpp
    ===================================================================
    --- src/spawnshell.cpp    (revision 794)
    +++ src/spawnshell.cpp    (working copy)
    @@ -716,6 +716,7 @@
        spawn->posData[2] = netStream.readUInt32NC();
        spawn->posData[3] = netStream.readUInt32NC();
        spawn->posData[4] = netStream.readUInt32NC();
    +   spawn->posData[5] = netStream.readUInt32NC();
        
        if(spawn->hasTitle)
        {
    Index: src/everquest.h
    ===================================================================
    --- src/everquest.h    (revision 794)
    +++ src/everquest.h    (working copy)
    @@ -1090,24 +1090,29 @@
              {
                struct
                {
    -             unsigned pitch:12;
    -             signed   z:19;           // z coord
    -             unsigned padding01:1;
    +
                  signed   animation:10;   // velocity
    -             unsigned padding04:3;
    +             unsigned padding01:3;
                  signed   deltaHeading:10; // change in heading
                  unsigned padding02:9;
    -             signed   x:19;           // x coord
    -             unsigned heading:12;     // heading
    -             unsigned padding03:01;
    +
                  signed   y:19;           // y coord
                  signed   deltaX:13;      // change in x
    +
    +             signed   x:19;           // x coord
                  signed   deltaY:13;      // change in y
    +
    +             unsigned heading:12;     // heading
                  signed   deltaZ:13;      // change in z
    -             unsigned padding05:2;
    -             unsigned padding06:4;
    +             unsigned padding03:7;
    +
    +             unsigned padding04:32;
    +
    +             signed   z:19;           // z coord
    +             unsigned pitch:12;
    +             unsigned padding05:1;
                };
    -           int32_t posData[5];
    +           int32_t posData[6];
              };
     /*0000*/ union
              {
    @@ -2353,23 +2358,35 @@
     {
     /*0000*/ uint16_t spawnId;
     /*0002*/ uint16_t spawnId2;
    -/*0004*/ unsigned pitch:12;
    -         signed   z:19;           // z coord
    -         unsigned padding01:1;
    -/*0008*/ signed   animation:10;   // velocity
    -         unsigned padding04:3;
    -         signed   deltaHeading:10; // change in heading
    -         unsigned padding02:9;
    -/*0012*/ signed   x:19;           // x coord
    -         unsigned heading:12;     // heading
    -         unsigned padding03:01;
    -/*0016*/ signed   y:19;           // y coord
    -         signed   deltaX:13;      // change in x
    -/*0020*/ signed   deltaY:13;      // change in y
    -         signed   deltaZ:13;      // change in z
    -         unsigned padding05:2;
    -         unsigned padding06:4;
    +
    +/*0004*/
    +     signed   animation:10;   // velocity
    +     unsigned padding01:3;
    +     signed   deltaHeading:10; // change in heading
    +     unsigned padding02:9;
    +
    +/*0008*/
    +         signed   y:19;           // y coord
    +     signed   deltaX:13;      // change in x
    +
    +/*0012*/
    +     signed   x:19;           // x coord
    +     signed   deltaY:13;      // change in y
    +
    +
    +/*0016*/
    +     unsigned heading:12;     // heading
    +     signed   deltaZ:13;      // change in z
    +     unsigned padding03:7;
    +
    +/*0020*/
    +     unsigned padding04:32;
    +
     /*0024*/
    +     signed   z:19;           // z coord
    +     unsigned pitch:12;
    +     unsigned padding05:1;
    +
     };
     
     /*
    @@ -2387,18 +2404,18 @@
              signed animation:10;                    // velocity
              unsigned padding1:10;
     /*0010*/ float deltaY;                           // Change in y
    -/*0014*/ float y;                                // y coord (2nd loc value)
    +/*0014*/ float deltaX;                           // Change in x
     /*0018*/ float deltaZ;                           // Change in z
    -/*0022*/ float z;                                // z coord (3rd loc value)
    -/*0026*/ float deltaX;                           // Change in x
    -/*0030*/ float x;                                // x coord (1st loc value)
    -/*0034*/ signed deltaHeading:10;                 // change in heading
    -         unsigned heading:12;                    // Directional heading
    +/*0022*/ float x;                                // x coord (1st loc value)
    +/*0026*/ float z;                                // z coord (3rd loc value)
    +/*0030*/ unsigned heading:12;                    // Directional heading
    +         signed deltaHeading:10;                 // change in heading
              unsigned padding2:10;                   // ***Placeholder
    -/*0038*/ 
    +/*0034*/ float y;                                // y coord (2nd loc value)
    +/*0038*/ uint32_t unknown0038;
    +/*0042*/
     };
     
    -
     /*
     ** Spawn Appearance
     ** Length: 8 Octets
    Index: src/player.cpp
    ===================================================================
    --- src/player.cpp    (revision 794)
    +++ src/player.cpp    (working copy)
    @@ -855,14 +855,14 @@
                    signed animation:10;                    // velocity
                    unsigned padding1:10;
           /*0010*/ float deltaY;                           // Change in y
    -      /*0014*/ float y;                                // y coord (2nd loc value)
    +      /*0014*/ float deltaX;                           // Change in x
           /*0018*/ float deltaZ;                           // Change in z
    -      /*0022*/ float z;                                // z coord (3rd loc value)
    -      /*0026*/ float deltaX;                           // Change in x
    -      /*0030*/ float x;                                // x coord (1st loc value)
    -      /*0034*/ signed deltaHeading:10;                 // change in heading
    -               unsigned heading:12;                    // Directional heading
    +      /*0022*/ float x;                                // x coord (1st loc value)
    +      /*0026*/ float z;                                // z coord (3rd loc value)
    +      /*0030*/ unsigned heading:12;                    // Directional heading
    +           signed deltaHeading:10;                 // change in heading
                    unsigned padding2:10;                   // ***Placeholder
    +      /*0034*/ float y;                                // y coord (2nd loc value)
           /*0038*/ 
     };
     #pragma pack(0)

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

You may post new threads
You may post replies
You may post attachments
You may edit your posts
HTML code is Off
vB code is On
Smilies are On
[IMG] code is On