sammie
09-08-2010, 04:34 PM
Instead of posting SEQ changes for the Test server haphazardly on various threads, I decided to open this thread to help consolidate info in an easy to find place. My changes are by no means official, but are instead quick hacks to get the SEQ client functional on the Test server. If you have any input, changes or questions or comments about SEQ on Test Server, please feel free to use this thread.
Latest Test Server Patch: 10/15/2010
Use SEQ Client: 5.13.10.2
Known Issues: Several outstanding opcodes.
Make the following changes to a fresh copy of 5.13.10.2 and recompile:
src/spawnshell.cpp
// unknowns
netStream.skipBytes(8);
spawn->isMercenary = netStream.readUInt8();
// unknowns -- changed from 28 to 53 for HoT Beta
netStream.skipBytes(53);
// now we're at the end
src/everquest.h
/*
** Info sent when you start to cast a spell
** Length: 44 Octets
** OpCode: StartCastCode
*/
struct startCastStruct
{
/*0000*/ int32_t slot; // ***Placeholder
/*0004*/ uint32_t spellId; // Spell ID
/*0008*/ int32_t inventorySlot; // ***Placeholder
/*0012*/ uint8_t unknown0012[8]; // ***Placeholder (9/1/2010)
/*0020*/ uint32_t targetId; // The current selected target
/*0024*/ uint8_t unknown0024[4]; // ***Placeholder
/*0028*/ uint8_t unknown0028[16]; // ***Placeholder (4/7/2009)
/*0044*/
};
/*
** Type: Zone Change Request (before hand)
** Length: 92 Octets
** OpCode: ZoneChangeCode
*/
struct zoneChangeStruct
{
/*0000*/ char name[64]; // Character Name
/*0064*/ uint16_t zoneId; // zone Id
/*0066*/ uint16_t zoneInstance; // zone Instance
/*0068*/ uint8_t unknown0068[8]; // unknown
/*0076*/ uint8_t unknown0076[12]; // ***Placeholder (6/29/2005)
/*0088*/ uint8_t unknown0088[4]; // HoT Beta (9/7/2010)
/*0092*/
};
/*18316*/ uint32_t copper_bank; // Copper Pieces in Bank
/*18320*/ uint32_t platinum_shared; // Shared platinum pieces
/*18324*/ uint8_t unknown18324[2124]; // Added 1088 for HoT
/*19360*/ uint32_t expansions; // Bitmask for expansions
/*19364*/ uint8_t unknown19364[12];
/*20580*/ uint32_t tributeActive; // 0 = off, 1=on
/*20584*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout
/*20624*/ uint8_t unknown20624[92]; // Added 88 bytes for HoT
/*20628*/ float expGroupLeadAA; // Current group lead exp points
/*20632*/ uint32_t unknown20632;
conf/zoneopcodes.xml
<opcode id="38F9" name="OP_NpcMoveUpdate" updated="10/21/09">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="59A8" name="OP_DeleteSpawn" updated="10/21/09">
<comment>old DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
<opcode id="002B" name="OP_ZoneEntry" updated="09/07/10">
<comment>old ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="5F85" name="OP_GuildMOTD" updated="10/21/09">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
<opcode id="2370" name="OP_InspectAnswer" updated="10/21/09">
<comment>old InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
<opcode id="000F" name="OP_SendZonePoints" updated="10/21/09">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
<opcode id="2257" name="OP_TargetMouse" updated="10/21/09">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
<opcode id="27BF" name="OP_GroupFollow2" updated="10/21/09">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>Player joins your group</comment>
</opcode>
<opcode id="167B" name="OP_GroupDisband" updated="10/21/09">
<comment>You disband from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
<opcode id="72F8" name="OP_Stamina" updated="10/21/09">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
<opcode id="3E50" name="OP_Consider" updated="10/21/09">
<comment>old ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
<opcode id="2963" name="OP_Buff" updated="10/21/09">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
<opcode id="5F0D" name="OP_GroundSpawn" updated="06/12/09">
<comment>old MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="44AE" name="OP_Logout" updated="10/21/09">
<comment></comment>
<payload dir="server" typename="none" sizechecktype="match"/>
</opcode>
<opcode id="7434" name="OP_RemoveSpawn" updated="06/12/09">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
<opcode id="7F9E" name="OP_Death" updated="06/12/09">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
<opcode id="442A" name="OP_ClickObject" updated="06/12/09">
<comment>old RemDropCode</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
<opcode id="50C2" name="OP_BuffFadeMsg" updated="06/12/09">
<comment>old SpellFadeCode</comment>
<payload dir="both" typename="spellFadedStruct" sizechecktype="none"/>
</opcode>
<opcode id="7286" name="OP_CastSpell" updated="06/12/09">
<comment>old StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
<opcode id="00BC" name="OP_MoneyOnCorpse" updated="06/12/09">
<comment>old MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
<opcode id="5DBC" name="OP_ItemPlayerPacket" updated="09/07/10">
<comment>Inventory/bank items coming over during zone</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Latest Test Server Patch: 10/15/2010
Use SEQ Client: 5.13.10.2
Known Issues: Several outstanding opcodes.
Make the following changes to a fresh copy of 5.13.10.2 and recompile:
src/spawnshell.cpp
// unknowns
netStream.skipBytes(8);
spawn->isMercenary = netStream.readUInt8();
// unknowns -- changed from 28 to 53 for HoT Beta
netStream.skipBytes(53);
// now we're at the end
src/everquest.h
/*
** Info sent when you start to cast a spell
** Length: 44 Octets
** OpCode: StartCastCode
*/
struct startCastStruct
{
/*0000*/ int32_t slot; // ***Placeholder
/*0004*/ uint32_t spellId; // Spell ID
/*0008*/ int32_t inventorySlot; // ***Placeholder
/*0012*/ uint8_t unknown0012[8]; // ***Placeholder (9/1/2010)
/*0020*/ uint32_t targetId; // The current selected target
/*0024*/ uint8_t unknown0024[4]; // ***Placeholder
/*0028*/ uint8_t unknown0028[16]; // ***Placeholder (4/7/2009)
/*0044*/
};
/*
** Type: Zone Change Request (before hand)
** Length: 92 Octets
** OpCode: ZoneChangeCode
*/
struct zoneChangeStruct
{
/*0000*/ char name[64]; // Character Name
/*0064*/ uint16_t zoneId; // zone Id
/*0066*/ uint16_t zoneInstance; // zone Instance
/*0068*/ uint8_t unknown0068[8]; // unknown
/*0076*/ uint8_t unknown0076[12]; // ***Placeholder (6/29/2005)
/*0088*/ uint8_t unknown0088[4]; // HoT Beta (9/7/2010)
/*0092*/
};
/*18316*/ uint32_t copper_bank; // Copper Pieces in Bank
/*18320*/ uint32_t platinum_shared; // Shared platinum pieces
/*18324*/ uint8_t unknown18324[2124]; // Added 1088 for HoT
/*19360*/ uint32_t expansions; // Bitmask for expansions
/*19364*/ uint8_t unknown19364[12];
/*20580*/ uint32_t tributeActive; // 0 = off, 1=on
/*20584*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout
/*20624*/ uint8_t unknown20624[92]; // Added 88 bytes for HoT
/*20628*/ float expGroupLeadAA; // Current group lead exp points
/*20632*/ uint32_t unknown20632;
conf/zoneopcodes.xml
<opcode id="38F9" name="OP_NpcMoveUpdate" updated="10/21/09">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="59A8" name="OP_DeleteSpawn" updated="10/21/09">
<comment>old DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
<opcode id="002B" name="OP_ZoneEntry" updated="09/07/10">
<comment>old ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="5F85" name="OP_GuildMOTD" updated="10/21/09">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
<opcode id="2370" name="OP_InspectAnswer" updated="10/21/09">
<comment>old InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
<opcode id="000F" name="OP_SendZonePoints" updated="10/21/09">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
<opcode id="2257" name="OP_TargetMouse" updated="10/21/09">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
<opcode id="27BF" name="OP_GroupFollow2" updated="10/21/09">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>Player joins your group</comment>
</opcode>
<opcode id="167B" name="OP_GroupDisband" updated="10/21/09">
<comment>You disband from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
<opcode id="72F8" name="OP_Stamina" updated="10/21/09">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
<opcode id="3E50" name="OP_Consider" updated="10/21/09">
<comment>old ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
<opcode id="2963" name="OP_Buff" updated="10/21/09">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
<opcode id="5F0D" name="OP_GroundSpawn" updated="06/12/09">
<comment>old MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
<opcode id="44AE" name="OP_Logout" updated="10/21/09">
<comment></comment>
<payload dir="server" typename="none" sizechecktype="match"/>
</opcode>
<opcode id="7434" name="OP_RemoveSpawn" updated="06/12/09">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
<opcode id="7F9E" name="OP_Death" updated="06/12/09">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
<opcode id="442A" name="OP_ClickObject" updated="06/12/09">
<comment>old RemDropCode</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
<opcode id="50C2" name="OP_BuffFadeMsg" updated="06/12/09">
<comment>old SpellFadeCode</comment>
<payload dir="both" typename="spellFadedStruct" sizechecktype="none"/>
</opcode>
<opcode id="7286" name="OP_CastSpell" updated="06/12/09">
<comment>old StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
<opcode id="00BC" name="OP_MoneyOnCorpse" updated="06/12/09">
<comment>old MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
<opcode id="5DBC" name="OP_ItemPlayerPacket" updated="09/07/10">
<comment>Inventory/bank items coming over during zone</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>