You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(18) |
Oct
(11) |
Nov
(9) |
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
|
Feb
(6) |
Mar
|
Apr
(10) |
May
(38) |
Jun
(15) |
Jul
(32) |
Aug
|
Sep
(17) |
Oct
(11) |
Nov
|
Dec
(14) |
2006 |
Jan
(2) |
Feb
(5) |
Mar
(3) |
Apr
(2) |
May
(3) |
Jun
(7) |
Jul
|
Aug
|
Sep
(3) |
Oct
(2) |
Nov
(6) |
Dec
(3) |
2007 |
Jan
|
Feb
(17) |
Mar
(5) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
(11) |
Feb
|
Mar
|
Apr
(4) |
May
|
Jun
(6) |
Jul
|
Aug
|
Sep
(6) |
Oct
(4) |
Nov
(1) |
Dec
|
2009 |
Jan
(3) |
Feb
(2) |
Mar
(4) |
Apr
|
May
(4) |
Jun
(3) |
Jul
|
Aug
(5) |
Sep
(3) |
Oct
(2) |
Nov
|
Dec
(6) |
2010 |
Jan
|
Feb
(6) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
(8) |
Aug
|
Sep
(2) |
Oct
(2) |
Nov
(4) |
Dec
(5) |
2013 |
Jan
(2) |
Feb
|
Mar
(2) |
Apr
(2) |
May
(1) |
Jun
(2) |
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(2) |
Nov
(2) |
Dec
(2) |
2014 |
Jan
(3) |
Feb
(2) |
Mar
(3) |
Apr
(4) |
May
(4) |
Jun
(3) |
Jul
(4) |
Aug
(5) |
Sep
|
Oct
(2) |
Nov
(5) |
Dec
(2) |
2015 |
Jan
|
Feb
(2) |
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(10) |
Dec
|
2016 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(4) |
Aug
(2) |
Sep
(2) |
Oct
(3) |
Nov
(4) |
Dec
(2) |
2017 |
Jan
(2) |
Feb
|
Mar
(2) |
Apr
(4) |
May
(2) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
2018 |
Jan
(4) |
Feb
(2) |
Mar
(2) |
Apr
(2) |
May
(2) |
Jun
(2) |
Jul
(8) |
Aug
(2) |
Sep
(2) |
Oct
(2) |
Nov
(4) |
Dec
(6) |
2019 |
Jan
(2) |
Feb
(2) |
Mar
(2) |
Apr
(4) |
May
(2) |
Jun
(3) |
Jul
(3) |
Aug
(2) |
Sep
(2) |
Oct
(13) |
Nov
(6) |
Dec
(4) |
2020 |
Jan
(7) |
Feb
(7) |
Mar
(7) |
Apr
(8) |
May
(5) |
Jun
(3) |
Jul
(10) |
Aug
(4) |
Sep
|
Oct
(37) |
Nov
(30) |
Dec
(8) |
2021 |
Jan
(14) |
Feb
(9) |
Mar
(7) |
Apr
(17) |
May
(3) |
Jun
(10) |
Jul
(7) |
Aug
(3) |
Sep
(3) |
Oct
(4) |
Nov
(15) |
Dec
(22) |
2022 |
Jan
(3) |
Feb
(3) |
Mar
(3) |
Apr
(3) |
May
(3) |
Jun
(3) |
Jul
(3) |
Aug
(5) |
Sep
(6) |
Oct
(4) |
Nov
(34) |
Dec
(17) |
2023 |
Jan
(3) |
Feb
(3) |
Mar
(29) |
Apr
(2) |
May
(18) |
Jun
(12) |
Jul
(12) |
Aug
(2) |
Sep
(7) |
Oct
(2) |
Nov
(2) |
Dec
(2) |
2024 |
Jan
(2) |
Feb
(10) |
Mar
(17) |
Apr
(6) |
May
(3) |
Jun
(9) |
Jul
(22) |
Aug
(48) |
Sep
(3) |
Oct
(2) |
Nov
(2) |
Dec
(8) |
2025 |
Jan
(3) |
Feb
(2) |
Mar
(9) |
Apr
(7) |
May
(3) |
Jun
(3) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <iea...@us...> - 2009-03-21 00:05:36
|
Revision: 726 http://seq.svn.sourceforge.net/seq/?rev=726&view=rev Author: ieatacid Date: 2009-03-21 00:05:33 +0000 (Sat, 21 Mar 2009) Log Message: ----------- Tag for release 5.13.3.0 Added Paths: ----------- showeq/tags/v5_13_3_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-03-21 00:04:02
|
Revision: 725 http://seq.svn.sourceforge.net/seq/?rev=725&view=rev Author: ieatacid Date: 2009-03-21 00:03:53 +0000 (Sat, 21 Mar 2009) Log Message: ----------- Updated opcodes + Version to 5.13.3 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2009-03-15 23:45:15 UTC (rev 724) +++ showeq/trunk/ChangeLog 2009-03-21 00:03:53 UTC (rev 725) @@ -1,3 +1,8 @@ +ieatacid (3/20/09) +----------------- +- Updated version to 5.13.3 +- Updated opcodes for 3/19 patch + ieatacid (3/15/09) ----------------- - Updated version to 5.13.2 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2009-03-15 23:45:15 UTC (rev 724) +++ showeq/trunk/conf/zoneopcodes.xml 2009-03-21 00:03:53 UTC (rev 725) @@ -5,47 +5,47 @@ <!-- Critical opcodes used directly by ShowEQ --> - <opcode id="032A" name="OP_NpcMoveUpdate" updated="02/11/09"> + <opcode id="7866" name="OP_NpcMoveUpdate" updated="03/197866/09"> <comment>Position updates</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="1842" name="OP_DeleteSpawn" updated="02/11/09"> + <opcode id="10C9" name="OP_DeleteSpawn" updated="03/19/09"> <comment>old DeleteSpawnCode</comment> <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> </opcode> - <opcode id="1D3F" name="OP_RespawnFromHover" updated="02/11/09"> + <opcode id="7530" name="OP_RespawnFromHover" updated="03/19/09"> <comment>Server telling client that it is coming back from hover death</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="189B" name="OP_Shroud" updated="02/11/09"> + <opcode id="14D3" name="OP_Shroud" updated="03/19/09"> <comment>Server putting players into shroud form</comment> <payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/> </opcode> - <opcode id="58E6" name="OP_GroupFollow" updated="02/11/09"> + <opcode id="63F8" name="OP_GroupFollow" updated="03/19/09"> <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> <comment>You join a group</comment> </opcode> - <opcode id="C56C" name="OP_GroupFollow2" updated="02/11/09"> + <opcode id="4481" name="OP_GroupFollow2" updated="03/19/09"> <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> <comment>Player joins your group</comment> </opcode> - <opcode id="2D08" name="OP_GroupUpdate" updated="02/11/09"> + <opcode id="1C50" name="OP_GroupUpdate" updated="03/19/09"> <payload dir="server" typename="uint8_t" sizechecktype="none"/> <comment>Variable length packet with group member names</comment> </opcode> - <opcode id="4481" name="OP_GroupDisband" updated="02/11/09"> + <opcode id="6B67" name="OP_GroupDisband" updated="03/19/09"> <comment>You disband from group</comment> <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> </opcode> - <opcode id="7545" name="OP_GroupDisband2" updated="02/11/09"> + <opcode id="6193" name="OP_GroupDisband2" updated="03/19/09"> <comment>Other disbands from group</comment> <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> </opcode> - <opcode id="6193" name="OP_GroupLeader" updated="02/11/09"> + <opcode id="4315" name="OP_GroupLeader" updated="03/19/09"> <comment>Group leader change</comment> <payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/> </opcode> - <opcode id="B72E" name="OP_DzSwitchInfo" updated="02/11/09"> + <opcode id="565D" name="OP_DzSwitchInfo" updated="03/19/09"> <comment></comment> <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> </opcode> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2009-03-15 23:45:15 UTC (rev 724) +++ showeq/trunk/configure.in 2009-03-21 00:03:53 UTC (rev 725) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.13.2.0) +AC_INIT(showeq, 5.13.3.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-03-15 23:45:29
|
Revision: 724 http://seq.svn.sourceforge.net/seq/?rev=724&view=rev Author: ieatacid Date: 2009-03-15 23:45:15 +0000 (Sun, 15 Mar 2009) Log Message: ----------- Tag for release 5.13.2.0 Added Paths: ----------- showeq/tags/v5_13_2_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-03-15 23:43:47
|
Revision: 723 http://seq.svn.sourceforge.net/seq/?rev=723&view=rev Author: ieatacid Date: 2009-03-15 23:43:24 +0000 (Sun, 15 Mar 2009) Log Message: ----------- Updated charProfile and playerProfile structs + version to 5.13.2 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/configure.in showeq/trunk/src/everquest.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2009-02-16 03:06:42 UTC (rev 722) +++ showeq/trunk/ChangeLog 2009-03-15 23:43:24 UTC (rev 723) @@ -1,3 +1,8 @@ +ieatacid (3/15/09) +----------------- +- Updated version to 5.13.2 +- Updated charProfile and playerFrofile structs for compatibility with live 3/12 + ieatacid (2/15/09) ----------------- - Updated version to 5.13.1 Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2009-02-16 03:06:42 UTC (rev 722) +++ showeq/trunk/configure.in 2009-03-15 23:43:24 UTC (rev 723) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.13.1.0) +AC_INIT(showeq, 5.13.2.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/everquest.h =================================================================== --- showeq/trunk/src/everquest.h 2009-02-16 03:06:42 UTC (rev 722) +++ showeq/trunk/src/everquest.h 2009-03-15 23:43:24 UTC (rev 723) @@ -667,143 +667,144 @@ /*00208*/ uint8_t unknown0208[4]; /*00212*/ uint8_t haircolor; // Player hair color /*00213*/ uint8_t beardcolor; // Player beard color -/*00214*/ uint8_t eyecolor1; // Player left eye color -/*00215*/ uint8_t eyecolor2; // Player right eye color -/*00216*/ uint8_t hairstyle; // Player hair style -/*00217*/ uint8_t beard; // Player beard type -/*00218*/ uint8_t unknown00218[10]; -/*00228*/ uint32_t item_material[9]; // Item texture/material of worn items -/*00264*/ uint8_t unknown00260[232]; -/*00496*/ Color_Struct item_tint[9]; // RR GG BB 00 -/*00532*/ AA_Array aa_array[MAX_AA]; // AAs -/*03404*/ uint8_t unknown03400[728]; // ***** this may be wrong or aa_array might be wrong (10/21/07) -/*04132*/ uint32_t points; // Unspent Practice points -/*04136*/ uint32_t MANA; // Current MANA -/*04140*/ uint32_t curHp; // Current HP without +HP equipment -/*04144*/ uint32_t STR; // Strength -/*04148*/ uint32_t STA; // Stamina -/*04152*/ uint32_t CHA; // Charisma -/*04156*/ uint32_t DEX; // Dexterity -/*04160*/ uint32_t INT; // Intelligence -/*04164*/ uint32_t AGI; // Agility -/*04168*/ uint32_t WIS; // Wisdom -/*04172*/ uint8_t face; // Player face -/*04173*/ uint8_t unknown04173[175]; -/*04348*/ int32_t sSpellBook[400]; // List of the Spells in spellbook -/*05948*/ uint8_t unknown5948[448]; // all 0xff after last spell -/*06396*/ int32_t sMemSpells[MAX_SPELL_SLOTS]; // List of spells memorized -/*06436*/ uint8_t unknown06436[28]; -/*06464*/ uint32_t platinum; // Platinum Pieces on player -/*06468*/ uint32_t gold; // Gold Pieces on player -/*06472*/ uint32_t silver; // Silver Pieces on player -/*06476*/ uint32_t copper; // Copper Pieces on player -/*06480*/ uint32_t platinum_cursor; // Platinum Pieces on cursor -/*06484*/ uint32_t gold_cursor; // Gold Pieces on cursor -/*06488*/ uint32_t silver_cursor; // Silver Pieces on cursor -/*06492*/ uint32_t copper_cursor; // Copper Pieces on cursor -/*06496*/ uint32_t skills[MAX_KNOWN_SKILLS]; // List of skills -/*06796*/ uint8_t unknown06796[236]; -/*07032*/ uint32_t toxicity; // Potion Toxicity (15=too toxic, each potion adds 3) -/*07036*/ uint32_t thirst; // Drink (ticks till next drink) -/*07040*/ uint32_t hunger; // Food (ticks till next eat) -/*07044*/ spellBuff buffs[MAX_BUFFS]; // Buffs currently on the player -/*07644*/ uint32_t disciplines[MAX_DISCIPLINES]; // Known disciplines -/*08044*/ uint8_t unknown08044[160]; -/*08204*/ uint32_t recastTimers[MAX_RECAST_TYPES]; // Timers (GMT of last use) -/*08284*/ uint32_t endurance; // Current endurance -/*08288*/ uint32_t aa_spent; // Number of spent AA points -/*08292*/ uint32_t aa_unspent; // Unspent AA points -/*08296*/ uint8_t unknown08296[4]; -/*08300*/ BandolierStruct bandoliers[MAX_BANDOLIERS]; // bandolier contents -/*14700*/ InlineItem potionBelt[MAX_POTIONS_IN_BELT]; // potion belt -/*15060*/ uint8_t unknown15060[92]; -/*15152*/ +/*00214*/ uint8_t unknown00214[6]; +/*00220*/ uint8_t eyecolor1; // Player left eye color +/*00221*/ uint8_t eyecolor2; // Player right eye color +/*00222*/ uint8_t hairstyle; // Player hair style +/*00223*/ uint8_t beard; // Player beard type +/*00224*/ uint8_t unknown00218[12]; +/*00236*/ uint32_t item_material[9]; // Item texture/material of worn items +/*00272*/ uint8_t unknown00272[232]; +/*00504*/ Color_Struct item_tint[9]; // RR GG BB 00 +/*00540*/ AA_Array aa_array[MAX_AA]; // AAs +/*03412*/ uint8_t unknown03400[728]; // ***** this may be wrong or aa_array might be wrong (10/21/07) +/*04140*/ uint32_t points; // Unspent Practice points +/*04144*/ uint32_t MANA; // Current MANA +/*04148*/ uint32_t curHp; // Current HP without +HP equipment +/*04152*/ uint32_t STR; // Strength +/*04156*/ uint32_t STA; // Stamina +/*04160*/ uint32_t CHA; // Charisma +/*04164*/ uint32_t DEX; // Dexterity +/*04168*/ uint32_t INT; // Intelligence +/*04172*/ uint32_t AGI; // Agility +/*04176*/ uint32_t WIS; // Wisdom +/*04180*/ uint8_t face; // Player face +/*04181*/ uint8_t unknown04181[175]; +/*04356*/ int32_t sSpellBook[400]; // List of the Spells in spellbook +/*05956*/ uint8_t unknown5956[448]; // all 0xff after last spell +/*06404*/ int32_t sMemSpells[MAX_SPELL_SLOTS]; // List of spells memorized +/*06444*/ uint8_t unknown06444[28]; +/*06472*/ uint32_t platinum; // Platinum Pieces on player +/*06476*/ uint32_t gold; // Gold Pieces on player +/*06480*/ uint32_t silver; // Silver Pieces on player +/*06484*/ uint32_t copper; // Copper Pieces on player +/*06488*/ uint32_t platinum_cursor; // Platinum Pieces on cursor +/*06492*/ uint32_t gold_cursor; // Gold Pieces on cursor +/*06496*/ uint32_t silver_cursor; // Silver Pieces on cursor +/*06500*/ uint32_t copper_cursor; // Copper Pieces on cursor +/*06504*/ uint32_t skills[MAX_KNOWN_SKILLS]; // List of skills +/*06804*/ uint8_t unknown06804[236]; +/*07040*/ uint32_t toxicity; // Potion Toxicity (15=too toxic, each potion adds 3) +/*07044*/ uint32_t thirst; // Drink (ticks till next drink) +/*07048*/ uint32_t hunger; // Food (ticks till next eat) +/*07052*/ spellBuff buffs[MAX_BUFFS]; // Buffs currently on the player +/*07652*/ uint32_t disciplines[MAX_DISCIPLINES]; // Known disciplines +/*08052*/ uint8_t unknown08052[160]; +/*08212*/ uint32_t recastTimers[MAX_RECAST_TYPES]; // Timers (GMT of last use) +/*08292*/ uint32_t endurance; // Current endurance +/*08296*/ uint32_t aa_spent; // Number of spent AA points +/*08300*/ uint32_t aa_unspent; // Unspent AA points +/*08304*/ uint8_t unknown08304[4]; +/*08308*/ BandolierStruct bandoliers[MAX_BANDOLIERS]; // bandolier contents +/*14708*/ InlineItem potionBelt[MAX_POTIONS_IN_BELT]; // potion belt +/*15068*/ uint8_t unknown15068[92]; +/*15160*/ }; /* ** Player Profile -** Length: 23488 Octets +** Length: 23496 Octets ** OpCode: CharProfileCode */ struct charProfileStruct { /*00000*/ uint32_t checksum; // /*00004*/ playerProfileStruct profile; // Profile -/*15152*/ char name[64]; // Name of player -/*15216*/ char lastName[32]; // Last name of player -/*15248*/ uint8_t unknown15248[12]; //***Placeholder (1/18/2006) -/*15260*/ int32_t guildID; // guildID -/*15264*/ uint32_t birthdayTime; // character birthday -/*15268*/ uint32_t lastSaveTime; // character last save time -/*15272*/ uint32_t timePlayedMin; // time character played -/*15276*/ uint8_t unknown15276[4]; -/*15280*/ uint8_t pvp; // 1=pvp, 0=not pvp -/*15281*/ uint8_t anon; // 2=roleplay, 1=anon, 0=not anon -/*15282*/ uint8_t gm; // 0=no, 1=yes (guessing!) -/*15283*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader -/*15284*/ uint8_t unknown15284[8]; -/*15292*/ uint32_t exp; // Current Experience -/*15296*/ uint8_t unknown15296[12]; -/*15308*/ uint8_t languages[MAX_KNOWN_LANGS]; // List of languages -/*15333*/ uint8_t unknown15333[7]; // All 0x00 (language buffer?) -/*15340*/ float y; // Players y position -/*15344*/ float x; // Players x position -/*15348*/ float z; // Players z position -/*15352*/ float heading; // Players heading -/*15356*/ uint32_t standState; // 0x64 = stand -/*15360*/ uint32_t platinum_bank; // Platinum Pieces in Bank -/*15364*/ uint32_t gold_bank; // Gold Pieces in Bank -/*15368*/ uint32_t silver_bank; // Silver Pieces in Bank -/*15372*/ uint32_t copper_bank; // Copper Pieces in Bank -/*15376*/ uint32_t platinum_shared; // Shared platinum pieces -/*15380*/ uint8_t unknown15380[1036]; -/*16416*/ uint32_t expansions; // Bitmask for expansions -/*16420*/ uint8_t unknown16420[12]; -/*16432*/ uint32_t autosplit; // 0 = off, 1 = on -/*16436*/ uint8_t unknown16436[16]; -/*16452*/ uint16_t zoneId; // see zones.h -/*16454*/ uint16_t zoneInstance; // Instance id -/*16456*/ uint8_t unknown16456[800]; -/*17256*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on -/*17260*/ uint8_t unknown17260[4]; -/*17264*/ uint32_t ldon_guk_points; // Earned GUK points -/*17268*/ uint32_t ldon_mir_points; // Earned MIR points -/*17272*/ uint32_t ldon_mmc_points; // Earned MMC points -/*17276*/ uint32_t ldon_ruj_points; // Earned RUJ points -/*17280*/ uint32_t ldon_tak_points; // Earned TAK points -/*17284*/ uint32_t ldon_avail_points; // Available LDON points -/*17288*/ uint8_t unknown17288[136]; -/*17424*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) -/*17428*/ uint32_t careerTribute; // Total favor points for this char -/*17432*/ uint32_t unknown17432; // *** Placeholder -/*17436*/ uint32_t currentTribute; // Current tribute points -/*17440*/ uint32_t unknown17440; // *** Placeholder -/*17444*/ uint32_t tributeActive; // 0 = off, 1=on -/*17448*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout -/*17488*/ uint8_t unknown17488[4]; -/*17492*/ float expGroupLeadAA; // Current group lead exp points -/*17496*/ uint32_t unknown17496; -/*17500*/ float expRaidLeadAA; // Current raid lead AA exp points +/*15160*/ char name[64]; // Name of player +/*15224*/ char lastName[32]; // Last name of player +/*15256*/ uint8_t unknown15256[12]; //***Placeholder (1/18/2006) +/*15268*/ int32_t guildID; // guildID +/*15272*/ uint32_t birthdayTime; // character birthday +/*15276*/ uint32_t lastSaveTime; // character last save time +/*15280*/ uint32_t timePlayedMin; // time character played +/*15284*/ uint8_t unknown15284[4]; +/*15288*/ uint8_t pvp; // 1=pvp, 0=not pvp +/*15289*/ uint8_t anon; // 2=roleplay, 1=anon, 0=not anon +/*15290*/ uint8_t gm; // 0=no, 1=yes (guessing!) +/*15291*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader +/*15292*/ uint8_t unknown15292[8]; +/*15300*/ uint32_t exp; // Current Experience +/*15304*/ uint8_t unknown15304[12]; +/*15316*/ uint8_t languages[MAX_KNOWN_LANGS]; // List of languages +/*15341*/ uint8_t unknown15341[7]; // All 0x00 (language buffer?) +/*15348*/ float y; // Players y position +/*15352*/ float x; // Players x position +/*15356*/ float z; // Players z position +/*15360*/ float heading; // Players heading +/*15364*/ uint32_t standState; // 0x64 = stand +/*15368*/ uint32_t platinum_bank; // Platinum Pieces in Bank +/*15372*/ uint32_t gold_bank; // Gold Pieces in Bank +/*15376*/ uint32_t silver_bank; // Silver Pieces in Bank +/*15380*/ uint32_t copper_bank; // Copper Pieces in Bank +/*15384*/ uint32_t platinum_shared; // Shared platinum pieces +/*15388*/ uint8_t unknown15388[1036]; +/*16424*/ uint32_t expansions; // Bitmask for expansions +/*16428*/ uint8_t unknown16428[12]; +/*16440*/ uint32_t autosplit; // 0 = off, 1 = on +/*16444*/ uint8_t unknown16444[16]; +/*16460*/ uint16_t zoneId; // see zones.h +/*16462*/ uint16_t zoneInstance; // Instance id +/*16464*/ uint8_t unknown16464[800]; +/*17264*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on +/*17268*/ uint8_t unknown17268[4]; +/*17272*/ uint32_t ldon_guk_points; // Earned GUK points +/*17276*/ uint32_t ldon_mir_points; // Earned MIR points +/*17280*/ uint32_t ldon_mmc_points; // Earned MMC points +/*17284*/ uint32_t ldon_ruj_points; // Earned RUJ points +/*17288*/ uint32_t ldon_tak_points; // Earned TAK points +/*17292*/ uint32_t ldon_avail_points; // Available LDON points +/*17296*/ uint8_t unknown17296[136]; +/*17432*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) +/*17436*/ uint32_t careerTribute; // Total favor points for this char +/*17440*/ uint32_t unknown17432; // *** Placeholder +/*17444*/ uint32_t currentTribute; // Current tribute points +/*17448*/ uint32_t unknown17440; // *** Placeholder +/*17452*/ uint32_t tributeActive; // 0 = off, 1=on +/*17456*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout +/*17496*/ uint8_t unknown17496[4]; +/*17500*/ float expGroupLeadAA; // Current group lead exp points /*17504*/ uint32_t unknown17504; -/*17508*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points -/*17512*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points -/*17516*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks -/*17644*/ uint8_t unknown17644[128]; -/*17772*/ uint32_t airRemaining; // Air supply (seconds) -/*17776*/ uint8_t unknown17776[4608]; -/*22384*/ uint32_t expAA; // Exp earned in current AA point -/*22388*/ uint8_t unknown22388[40]; -/*22428*/ uint32_t currentRadCrystals; // Current count of radiant crystals -/*22432*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever -/*22436*/ uint32_t currentEbonCrystals;// Current count of ebon crystals -/*22440*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever -/*22444*/ uint8_t groupAutoconsent; // 0=off, 1=on -/*22445*/ uint8_t raidAutoconsent; // 0=off, 1=on -/*22446*/ uint8_t guildAutoconsent; // 0=off, 1=on -/*22447*/ uint8_t unknown22447[5]; // ***Placeholder (6/29/2005) -/*22452*/ uint32_t showhelm; // 0=no, 1=yes -/*22456*/ uint8_t unknown22456[1032]; // ***Placeholder (2/13/2007) -/*23488*/ +/*17508*/ float expRaidLeadAA; // Current raid lead AA exp points +/*17512*/ uint32_t unknown17512; +/*17516*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points +/*17520*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points +/*17524*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks +/*17652*/ uint8_t unknown17644[128]; +/*17780*/ uint32_t airRemaining; // Air supply (seconds) +/*17784*/ uint8_t unknown17784[4608]; +/*22392*/ uint32_t expAA; // Exp earned in current AA point +/*22396*/ uint8_t unknown22396[40]; +/*22436*/ uint32_t currentRadCrystals; // Current count of radiant crystals +/*22440*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever +/*22444*/ uint32_t currentEbonCrystals;// Current count of ebon crystals +/*22448*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever +/*22452*/ uint8_t groupAutoconsent; // 0=off, 1=on +/*22453*/ uint8_t raidAutoconsent; // 0=off, 1=on +/*22454*/ uint8_t guildAutoconsent; // 0=off, 1=on +/*22455*/ uint8_t unknown22455[5]; // ***Placeholder (6/29/2005) +/*22460*/ uint32_t showhelm; // 0=no, 1=yes +/*22464*/ uint8_t unknown22464[1032]; // ***Placeholder (2/13/2007) +/*23496*/ }; #if 0 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-02-16 03:06:45
|
Revision: 722 http://seq.svn.sourceforge.net/seq/?rev=722&view=rev Author: ieatacid Date: 2009-02-16 03:06:42 +0000 (Mon, 16 Feb 2009) Log Message: ----------- Tag for release 5.13.1.0 Added Paths: ----------- showeq/tags/v5_13_1_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-02-16 03:06:00
|
Revision: 721 http://seq.svn.sourceforge.net/seq/?rev=721&view=rev Author: ieatacid Date: 2009-02-16 03:05:58 +0000 (Mon, 16 Feb 2009) Log Message: ----------- Updated opcodes Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2009-01-26 01:06:18 UTC (rev 720) +++ showeq/trunk/ChangeLog 2009-02-16 03:05:58 UTC (rev 721) @@ -1,3 +1,8 @@ +ieatacid (2/15/09) +----------------- +- Updated version to 5.13.1 +- Updated opcodes + purple (1/25/09) --------------- - Fixed some parameter naming things that cause problems with gcc 4.3 (thanks, Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2009-01-26 01:06:18 UTC (rev 720) +++ showeq/trunk/conf/zoneopcodes.xml 2009-02-16 03:05:58 UTC (rev 721) @@ -5,6 +5,54 @@ <!-- Critical opcodes used directly by ShowEQ --> + <opcode id="032A" name="OP_NpcMoveUpdate" updated="02/11/09"> + <comment>Position updates</comment> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> + </opcode> + <opcode id="1842" name="OP_DeleteSpawn" updated="02/11/09"> + <comment>old DeleteSpawnCode</comment> + <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> + </opcode> + <opcode id="1D3F" name="OP_RespawnFromHover" updated="02/11/09"> + <comment>Server telling client that it is coming back from hover death</comment> + <payload dir="both" typename="uint8_t" sizechecktype="none"/> + </opcode> + <opcode id="189B" name="OP_Shroud" updated="02/11/09"> + <comment>Server putting players into shroud form</comment> + <payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/> + </opcode> + <opcode id="58E6" name="OP_GroupFollow" updated="02/11/09"> + <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> + <comment>You join a group</comment> + </opcode> + <opcode id="C56C" name="OP_GroupFollow2" updated="02/11/09"> + <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> + <comment>Player joins your group</comment> + </opcode> + <opcode id="2D08" name="OP_GroupUpdate" updated="02/11/09"> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> + <comment>Variable length packet with group member names</comment> + </opcode> + <opcode id="4481" name="OP_GroupDisband" updated="02/11/09"> + <comment>You disband from group</comment> + <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> + </opcode> + <opcode id="7545" name="OP_GroupDisband2" updated="02/11/09"> + <comment>Other disbands from group</comment> + <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> + </opcode> + <opcode id="6193" name="OP_GroupLeader" updated="02/11/09"> + <comment>Group leader change</comment> + <payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/> + </opcode> + <opcode id="B72E" name="OP_DzSwitchInfo" updated="02/11/09"> + <comment></comment> + <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> + </opcode> + <opcode id="3657" name="OP_DzInfo" updated="02/11/09"> + <comment></comment> + <payload dir="server" typename="dzInfo" sizechecktype="match"/> + </opcode> <opcode id="6022" name="OP_PlayerProfile" updated="01/17/08"> <comment>old CharProfileCode</comment> <payload dir="server" typename="charProfileStruct" sizechecktype="match"/> @@ -56,23 +104,10 @@ <payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/> <payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/> </opcode> - <opcode id="22A7" name="OP_NpcMoveUpdate" updated="10/07/08"> - <comment>Position updates</comment> - <payload dir="server" typename="uint8_t" sizechecktype="none"/> - </opcode> <opcode id="4656" name="OP_MobUpdate" updated="01/17/08"> <comment>old MobUpdateCode</comment> <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/> </opcode> - <!-- Deprecated - <opcode id="5C29" name="OP_NewSpawn" updated="01/17/08"> - <comment>old NewSpawnCode</comment> - <payload dir="server" typename="spawnStruct" sizechecktype="match"/> - </opcode>--> - <opcode id="4292" name="OP_DeleteSpawn" updated="10/07/08"> - <comment>old DeleteSpawnCode</comment> - <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> - </opcode> <opcode id="3164" name="OP_RemoveSpawn" updated="04/17/08"> <comment>Remove spawn from zone</comment> <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> @@ -81,10 +116,6 @@ <comment>old NewCorpseCode</comment> <payload dir="server" typename="newCorpseStruct" sizechecktype="match"/> </opcode> - <opcode id="268C" name="OP_RespawnFromHover" updated="10/21/08"> - <comment>Server telling client that it is coming back from hover death</comment> - <payload dir="both" typename="uint8_t" sizechecktype="none"/> - </opcode> <opcode id="231F" name="OP_WearChange" updated="01/17/08"> <comment>old SpawnUpdateCode</comment> <payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/> @@ -134,10 +165,6 @@ <comment>Spawn being illusioned (changing forms)</comment> <payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/> </opcode> - <opcode id="6D1F" name="OP_Shroud" updated="10/07/08"> - <comment>Server putting players into shroud form</comment> - <payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/> - </opcode> <opcode id="051B" name="OP_ZoneChange" updated="01/17/08"> <comment>old ZoneChangeCode</comment> <payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/> @@ -155,30 +182,6 @@ <payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/> <comment>Declining to join a group</comment> </opcode> - <opcode id="21BE" name="OP_GroupFollow" updated="10/07/08"> - <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> - <comment>You join a group</comment> - </opcode> - <opcode id="3E22" name="OP_GroupFollow2" updated="10/07/08"> - <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> - <comment>Player joins your group</comment> - </opcode> - <opcode id="7351" name="OP_GroupUpdate" updated="10/07/08"> - <payload dir="server" typename="uint8_t" sizechecktype="none"/> - <comment>Variable length packet with group member names</comment> - </opcode> - <opcode id="C56C" name="OP_GroupDisband" updated="10/07/08"> - <comment>You disband from group</comment> - <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> - </opcode> - <opcode id="162D" name="OP_GroupDisband2" updated="10/07/08"> - <comment>Other disbands from group</comment> - <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> - </opcode> - <opcode id="7545" name="OP_GroupLeader" updated="10/07/08"> - <comment>Group leader change</comment> - <payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/> - </opcode> <opcode id="7EA8" name="OP_Buff" updated="01/17/08"> <comment>old BuffDropCode</comment> <payload dir="both" typename="buffStruct" sizechecktype="match"/> @@ -274,15 +277,11 @@ <comment></comment> <payload dir="server" typename="none" sizechecktype="match"/> </opcode> - <opcode id="35D3" name="OP_DzSwitchInfo" updated="12/23/08"> - <comment></comment> - <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> - </opcode> - <opcode id="128E" name="OP_DzInfo" updated="12/23/08"> - <comment></comment> - <payload dir="server" typename="dzInfo" sizechecktype="match"/> - </opcode> - + <!-- Deprecated + <opcode id="5C29" name="OP_NewSpawn" updated="01/17/08"> + <comment>old NewSpawnCode</comment> + <payload dir="server" typename="spawnStruct" sizechecktype="match"/> + </opcode>--> <!-- Not necessary for SEQ to run but here to name packets in logs. Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2009-01-26 01:06:18 UTC (rev 720) +++ showeq/trunk/configure.in 2009-02-16 03:05:58 UTC (rev 721) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.13.0.0) +AC_INIT(showeq, 5.13.1.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <cmm...@us...> - 2009-01-26 01:06:27
|
Revision: 720 http://seq.svn.sourceforge.net/seq/?rev=720&view=rev Author: cmmalone Date: 2009-01-26 01:06:18 +0000 (Mon, 26 Jan 2009) Log Message: ----------- Cleaned up dupe param names that were barfing in gcc 4.3 (and rightly so....) Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/src/mapicon.h showeq/trunk/src/messagefilter.h showeq/trunk/src/messagefilterdialog.h showeq/trunk/src/messages.h showeq/trunk/src/messagewindow.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/ChangeLog 2009-01-26 01:06:18 UTC (rev 720) @@ -1,3 +1,8 @@ +purple (1/25/09) +--------------- +- Fixed some parameter naming things that cause problems with gcc 4.3 (thanks, +Tanner) + ieatacid (1/20/09) ----------------- - Updated version to 5.13.0 Modified: showeq/trunk/src/mapicon.h =================================================================== --- showeq/trunk/src/mapicon.h 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/src/mapicon.h 2009-01-26 01:06:18 UTC (rev 720) @@ -211,7 +211,7 @@ protected: // static paint methods typedef void (*IconImageFunction)(QPainter&p, const QPoint& point, - int size, int size); + int size, int sizeWH); static void paintNone(QPainter&p, const QPoint& point, int size, int sizeWH); static void paintCircle(QPainter&p, const QPoint& point, Modified: showeq/trunk/src/messagefilter.h =================================================================== --- showeq/trunk/src/messagefilter.h 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/src/messagefilter.h 2009-01-26 01:06:18 UTC (rev 720) @@ -99,7 +99,7 @@ signals: void removed(uint32_t mask, uint8_t filter); - void added(uint32_t mask, uint8_t filter, const MessageFilter& filter); + void added(uint32_t mask, uint8_t filterid, const MessageFilter& filter); protected: MessageFilter* m_filters[maxMessageFilters]; Modified: showeq/trunk/src/messagefilterdialog.h =================================================================== --- showeq/trunk/src/messagefilterdialog.h 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/src/messagefilterdialog.h 2009-01-26 01:06:18 UTC (rev 720) @@ -46,7 +46,7 @@ void messageTypeSelectionChanged(); void existingFilterSelectionChanged(QListBoxItem * item); void removedFilter(uint32_t mask, uint8_t filter); - void addedFilter(uint32_t mask, uint8_t filter, const MessageFilter& filter); + void addedFilter(uint32_t mask, uint8_t filterid, const MessageFilter& filter); protected: void clearFilter(); Modified: showeq/trunk/src/messages.h =================================================================== --- showeq/trunk/src/messages.h 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/src/messages.h 2009-01-26 01:06:18 UTC (rev 720) @@ -49,7 +49,7 @@ protected slots: void removedFilter(uint32_t mask, uint8_t filter); - void addedFilter(uint32_t mask, uint8_t filter, const MessageFilter& filter); + void addedFilter(uint32_t mask, uint8_t filterid, const MessageFilter& filter); signals: void newMessage(const MessageEntry& message); Modified: showeq/trunk/src/messagewindow.h =================================================================== --- showeq/trunk/src/messagewindow.h 2009-01-20 17:43:59 UTC (rev 719) +++ showeq/trunk/src/messagewindow.h 2009-01-26 01:06:18 UTC (rev 720) @@ -180,7 +180,7 @@ void setCaption(); virtual void restoreFont(); void removedFilter(uint32_t mask, uint8_t filter); - void addedFilter(uint32_t mask, uint8_t filter, const MessageFilter& filter); + void addedFilter(uint32_t mask, uint8_t filterid, const MessageFilter& filter); protected: void addMessage(const MessageEntry& message); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-01-20 17:44:06
|
Revision: 719 http://seq.svn.sourceforge.net/seq/?rev=719&view=rev Author: ieatacid Date: 2009-01-20 17:43:59 +0000 (Tue, 20 Jan 2009) Log Message: ----------- Tag for release 5.13.0.0 Added Paths: ----------- showeq/tags/v5_13_0_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2009-01-20 17:41:17
|
Revision: 718 http://seq.svn.sourceforge.net/seq/?rev=718&view=rev Author: ieatacid Date: 2009-01-20 17:41:14 +0000 (Tue, 20 Jan 2009) Log Message: ----------- + Opcode updates from December + Added instance location marker + Added option to filter client/server zone logs + Version to 5.13.0 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/everquest.h showeq/trunk/src/interface.cpp showeq/trunk/src/interface.h showeq/trunk/src/main.cpp showeq/trunk/src/main.h showeq/trunk/src/map.cpp showeq/trunk/src/map.h showeq/trunk/src/mapicon.cpp showeq/trunk/src/mapicon.h showeq/trunk/src/packetlog.cpp showeq/trunk/src/packetlog.h showeq/trunk/src/s_everquest.h showeq/trunk/src/zonemgr.cpp showeq/trunk/src/zonemgr.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/ChangeLog 2009-01-20 17:41:14 UTC (rev 718) @@ -1,3 +1,10 @@ +ieatacid (1/20/09) +----------------- +- Updated version to 5.13.0 +- Opcode updates from December +- Added instance location marker. Right-click map -> Show -> Instance Location Marker +- Added option to filter client/server packets in the zone log file + purple (11/21/08) ----------------- - Fixed acincludes test for QT to use modern headers so we don't require Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/conf/zoneopcodes.xml 2009-01-20 17:41:14 UTC (rev 718) @@ -274,9 +274,16 @@ <comment></comment> <payload dir="server" typename="none" sizechecktype="match"/> </opcode> + <opcode id="35D3" name="OP_DzSwitchInfo" updated="12/23/08"> + <comment></comment> + <payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/> + </opcode> + <opcode id="128E" name="OP_DzInfo" updated="12/23/08"> + <comment></comment> + <payload dir="server" typename="dzInfo" sizechecktype="match"/> + </opcode> + - - <!-- Not necessary for SEQ to run but here to name packets in logs. Also unverified as of 12-1-2007. Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/configure.in 2009-01-20 17:41:14 UTC (rev 718) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.7.0) +AC_INIT(showeq, 5.13.0.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/everquest.h =================================================================== --- showeq/trunk/src/everquest.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/everquest.h 2009-01-20 17:41:14 UTC (rev 718) @@ -608,6 +608,42 @@ /*0932*/ }; +/* +** Dynamic Zone Switch Info Struct +** Length: 32 Octets +** OpCode: DzSwitchInfo +*/ +struct dzSwitchInfo +{ +/*0000*/ uint32_t unknown0000; +/*0004*/ uint32_t show; // Show compass line +/*0008*/ uint16_t zoneID; +/*0010*/ uint16_t instanceID; +/*0012*/ uint32_t type; // if(type != 1 && type > 2 && type <= 5) { color = green; } else { color = pink; } +/*0016*/ uint32_t unknown0016; +/*0020*/ float y; +/*0024*/ float x; +/*0028*/ float z; +/*0032*/ +}; + +/* +** Dynamic Zone Info Struct +** Length: 208 Octets +** OpCode: DzInfo +*/ +struct dzInfo +{ +/*0000*/ uint32_t unknown0000; +/*0004*/ uint32_t unknown0004; +/*0008*/ uint8_t newDZ; +/*0009*/ uint8_t padding0009[3]; +/*0012*/ uint32_t maxPlayers; +/*0016*/ char dzName[128]; // Instance name +/*0144*/ char name[64]; // Your player's name +/*0208*/ +}; + /** * Player Profile. Common part of charProfileStruct shared between * shrouding and zoning profiles. Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/interface.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -905,7 +905,7 @@ m_id_opt_KeepSelectedVisible = pOptMenu->insertItem("Keep Selected Visible?" , this, SLOT(toggle_opt_KeepSelectedVisible())); m_id_opt_LogSpawns = pOptMenu->insertItem("Log Spawns", this, SLOT(toggle_opt_LogSpawns())); - m_id_opt_BazaarData = pOptMenu->insertItem("Bazaar Searches", this, SLOT(toggle_opt_BazaarData()), Key_F11); + m_id_opt_BazaarData = pOptMenu->insertItem("Bazaar Searches", this, SLOT(toggle_opt_BazaarData())); menuBar()->setItemChecked (m_id_opt_BazaarData, (m_bazaarLog != 0)); m_id_opt_ResetMana = pOptMenu->insertItem("Reset Max Mana", this, SLOT(resetMaxMana())); m_id_opt_PvPTeams = pOptMenu->insertItem("PvP Teams", this, SLOT(toggle_opt_PvPTeams())); @@ -988,11 +988,10 @@ x = conColorBaseMenu->insertItem("Unknown Spawn..."); conColorBaseMenu->setItemParameter(x, tUnknownSpawn); connect(conColorBaseMenu, SIGNAL(activated(int)), - this, SLOT(select_opt_conColorBase(int))); + this, SLOT(select_opt_conColorBase(int))); pOptMenu->insertItem("Con &Colors", conColorBaseMenu); - - m_id_opt_useUpdateRadius = pOptMenu->insertItem("&Use EQ's Update Radius", - this, SLOT(toggle_opt_UseUpdateRadius())); + m_id_opt_useUpdateRadius = pOptMenu->insertItem("Use EQ's Update Radius", + this, SLOT(toggle_opt_UseUpdateRadius())); menuBar()->setItemChecked (m_id_opt_useUpdateRadius, showeq_params->useUpdateRadius); // Network Menu @@ -1021,6 +1020,14 @@ SLOT(toggle_view_UnknownData()) , Key_F9); m_id_log_RawData = pLogMenu->insertItem("Raw Data", this, SLOT(toggle_log_RawData()), Key_F10); + + m_filterZoneDataMenu = new QPopupMenu; + pLogMenu->insertItem("Filter Zone Data", m_filterZoneDataMenu); + m_id_log_Filter_ZoneData_Client = m_filterZoneDataMenu->insertItem("Client", this, + SLOT(toggle_log_Filter_ZoneData_Client())); + m_id_log_Filter_ZoneData_Server = m_filterZoneDataMenu->insertItem("Server", this, + SLOT(toggle_log_Filter_ZoneData_Server())); + menuBar()->setItemChecked (m_id_log_AllPackets, (m_globalLog != 0)); menuBar()->setItemChecked (m_id_log_WorldData, (m_worldLog != 0)); menuBar()->setItemChecked (m_id_log_ZoneData, (m_zoneLog != 0)); @@ -1648,6 +1655,12 @@ m_packet->connect2("OP_SendZonePoints", SP_Zone, DIR_Server, "zonePointsStruct", SZC_None, m_zoneMgr, SLOT(zonePoints(const uint8_t*, size_t, uint8_t))); + m_packet->connect2("OP_DzSwitchInfo", SP_Zone, DIR_Server, + "dzSwitchInfo", SZC_None, + m_zoneMgr, SLOT(dynamicZonePoints(const uint8_t*, size_t, uint8_t))); + m_packet->connect2("OP_DzInfo", SP_Zone, DIR_Server, + "dzInfo", SZC_Match, + m_zoneMgr, SLOT(dynamicZoneInfo(const uint8_t*, size_t, uint8_t))); } if (m_groupMgr != 0) @@ -3580,6 +3593,38 @@ pSEQPrefs->setPrefBool("LogZonePackets", "PacketLogging", state); } +void EQInterface::toggle_log_Filter_ZoneData_Client (void) +{ + bool state = true; + if(showeq_params->filterZoneDataLog == DIR_Client) + { + showeq_params->filterZoneDataLog = 0; + state = false; + } + else + { + showeq_params->filterZoneDataLog = DIR_Client; + } + m_filterZoneDataMenu->setItemChecked(m_id_log_Filter_ZoneData_Client, state); + m_filterZoneDataMenu->setItemChecked(m_id_log_Filter_ZoneData_Server, false); +} + +void EQInterface::toggle_log_Filter_ZoneData_Server (void) +{ + bool state = true; + if(showeq_params->filterZoneDataLog == DIR_Server) + { + showeq_params->filterZoneDataLog = 0; + state = false; + } + else + { + showeq_params->filterZoneDataLog = DIR_Server; + } + m_filterZoneDataMenu->setItemChecked(m_id_log_Filter_ZoneData_Server, state); + m_filterZoneDataMenu->setItemChecked(m_id_log_Filter_ZoneData_Client, false); +} + void EQInterface::toggle_opt_BazaarData (void) { if (m_bazaarLog) @@ -5950,6 +5995,8 @@ m_zoneLog->setRaw(pSEQPrefs->getPrefBool("LogRawPackets", "PacketLogging", false)); + + m_zoneLog->setDir(0); connect(m_packet, SIGNAL(rawZonePacket(const uint8_t*, size_t, uint8_t, uint16_t)), m_zoneLog, SLOT(rawStreamPacket(const uint8_t*, size_t, uint8_t, uint16_t))); Modified: showeq/trunk/src/interface.h =================================================================== --- showeq/trunk/src/interface.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/interface.h 2009-01-20 17:41:14 UTC (rev 718) @@ -199,6 +199,8 @@ void toggle_view_SpawnListCol( int id ); void toggle_view_DockedWin( int id ); void toggle_view_DockableWin( int id ); + void toggle_log_Filter_ZoneData_Client(); + void toggle_log_Filter_ZoneData_Server(); void selectTheme(int id); void toggle_opcode_monitoring (int id); @@ -391,6 +393,7 @@ QPopupMenu* m_terminalHideUserFilterMenu; QPopupMenu* m_windowMenu; QPtrDict<int> m_windowsMenus; + QPopupMenu* m_filterZoneDataMenu; CompassFrame* m_compass; MessageWindow* m_messageWindow[maxNumMessageWindows]; @@ -461,6 +464,8 @@ int m_packetStartTime; int m_initialcount; int m_id_opt_useUpdateRadius; + int m_id_log_Filter_ZoneData_Client; + int m_id_log_Filter_ZoneData_Server; MenuIDList IDList_StyleMenu; Modified: showeq/trunk/src/main.cpp =================================================================== --- showeq/trunk/src/main.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/main.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -235,7 +235,7 @@ showeq_params->pvp = pSEQPrefs->getPrefBool("PvPTeamColoring", section, false); showeq_params->deitypvp = pSEQPrefs->getPrefBool("DeityPvPTeamColoring", section, false); showeq_params->keep_selected_visible = pSEQPrefs->getPrefBool("KeepSelected", section, true); - showeq_params->useUpdateRadius = pSEQPrefs->getPrefBool("UseUpdateRadius", section, true); + showeq_params->useUpdateRadius = pSEQPrefs->getPrefBool("UseUpdateRadius", section, false); section = "Misc"; showeq_params->fast_machine = pSEQPrefs->getPrefBool("FastMachine", section, true); @@ -262,6 +262,7 @@ showeq_params->restoreZoneState = false; showeq_params->restoreSpawns = false; showeq_params->saveRestoreBaseFilename = dataLocMgr.findWriteFile("tmp", pSEQPrefs->getPrefString("BaseFilename", section, "last")).absFilePath(); + showeq_params->filterZoneDataLog = 0; /* Parse the commandline for commandline parameters */ while ((opt = getopt_long( argc, Modified: showeq/trunk/src/main.h =================================================================== --- showeq/trunk/src/main.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/main.h 2009-01-20 17:41:14 UTC (rev 718) @@ -45,6 +45,7 @@ bool restoreSpawns; QString saveRestoreBaseFilename; bool useUpdateRadius; + uint8_t filterZoneDataLog; }; extern struct ShowEQParams *showeq_params; Modified: showeq/trunk/src/map.cpp =================================================================== --- showeq/trunk/src/map.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/map.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -818,6 +818,8 @@ subMenu->insertItem("Race PvP", this, SLOT(toggle_racePvP(int))); m_id_zoneSafePoint = subMenu->insertItem("Zone Safe Point", this, SLOT(toggle_zoneSafePoint(int))); + m_id_instanceLocation = + subMenu->insertItem("Instance Location Marker", this, SLOT(toggle_instanceLocationMarker(int))); #ifdef DEBUG m_id_debugInfo = subMenu->insertItem("Debug Info", this, SLOT(toggle_debugInfo(int))); #endif @@ -985,6 +987,7 @@ setItemChecked(m_id_deityPvP, m_map->deityPvP()); setItemChecked(m_id_racePvP, m_map->racePvP()); setItemChecked(m_id_zoneSafePoint, m_map->showZoneSafePoint()); + setItemChecked(m_id_instanceLocation, m_map->showInstanceLocationMarker()); #ifdef DEBUG setItemChecked(m_id_debugInfo, m_map->showDebugInfo()); #endif @@ -1209,6 +1212,11 @@ m_map->setShowZoneSafePoint(!m_map->showZoneSafePoint()); } +void MapMenu::toggle_instanceLocationMarker(int itemId) +{ + m_map->setShowInstanceLocationMarker(!m_map->showInstanceLocationMarker()); +} + void MapMenu::select_mapOptimization(int itemId) { m_map->setMapOptimization((MapOptimizationMethod)itemParameter(itemId)); @@ -1504,6 +1512,9 @@ tmpPrefString = "ShowZoneSafePoint"; m_showZoneSafePoint = pSEQPrefs->getPrefBool(tmpPrefString, prefString, true); + tmpPrefString = "ShowInstanceLocationMarker"; + m_showInstanceLocationMarker = pSEQPrefs->getPrefBool(tmpPrefString, prefString, false); + // Accelerators QAccel *accel = new QAccel(this); int key; @@ -2655,6 +2666,17 @@ refreshMap (); } +void Map::setShowInstanceLocationMarker(bool val) +{ + m_showInstanceLocationMarker = val; + + QString tmpPrefString = "ShowInstanceLocationMarker"; + pSEQPrefs->setPrefBool(tmpPrefString, preferenceName(), m_showInstanceLocationMarker); + + if(!m_cacheChanges) + refreshMap (); +} + void Map::dumpInfo(QTextStream& out) { out << "[" << preferenceName() << "]" << endl; @@ -3071,6 +3093,14 @@ if (m_showSpawns) paintSpawns(m_param, tmp, drawTime); + if(m_showInstanceLocationMarker && m_zoneMgr->dzID()) + { + const Point3D<int16_t>& instancePoint = m_zoneMgr->dzPoint(); + m_mapIcons->paintIcon(m_param, tmp, m_mapIcons->icon(tIconTypeDynamicZoneLocation), + instancePoint, m_zoneMgr->dzLongName(), QPoint(m_param.calcXOffsetI(instancePoint.x()), + m_param.calcYOffsetI(instancePoint.y()))); + } + paintSelectedSpawnSpecials(m_param, tmp, drawTime); paintSelectedSpawnPointSpecials(m_param, tmp, drawTime); Modified: showeq/trunk/src/map.h =================================================================== --- showeq/trunk/src/map.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/map.h 2009-01-20 17:41:14 UTC (rev 718) @@ -249,6 +249,7 @@ void toggle_cacheAlwaysRepaint(); void toggle_cacheChanges(); void toggle_zoneSafePoint(int itemId); + void toggle_instanceLocationMarker(int itemId); void select_mapOptimization(int itemId); void select_gridTickColor(int itemId); void select_gridLineColor(int itemId); @@ -307,6 +308,7 @@ int m_id_pvp; int m_id_racePvP; int m_id_zoneSafePoint; + int m_id_instanceLocation; #ifdef DEBUG int m_id_debugInfo; #endif @@ -412,7 +414,8 @@ bool deityPvP() const { return m_deityPvP; } bool racePvP() const { return m_racePvP; } bool showZoneSafePoint() const { return m_showZoneSafePoint; } - + bool showInstanceLocationMarker() const { return m_showInstanceLocationMarker; } + MapLineStyle mapLineStyle() { return m_param.mapLineStyle(); } MapOptimizationMethod mapOptimization() { return m_param.mapOptimizationMethod(); } int zoom() const { return m_param.zoom(); } @@ -530,6 +533,7 @@ void setShowGridTicks(bool val); void setCacheAlwaysRepaint(bool val); void setShowZoneSafePoint(bool val); + void setShowInstanceLocationMarker(bool val); // dump debug info void dumpInfo(QTextStream& out); @@ -649,6 +653,7 @@ bool m_deityPvP; bool m_racePvP; bool m_showZoneSafePoint; + bool m_showInstanceLocationMarker; }; //---------------------------------------------------------------------- Modified: showeq/trunk/src/mapicon.cpp =================================================================== --- showeq/trunk/src/mapicon.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/mapicon.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -85,6 +85,7 @@ "ZoneSafePoint", "SpawnPlayerNoUpdate", "SpawnNPCNoUpdate", + "InstanceLocation", }; static const QString iconTypeNames[] = @@ -125,6 +126,7 @@ "Zone Safe Point", "Spawn Player No Update", "Spawn NPC No Update", + "Instance Location", }; //---------------------------------------------------------------------- @@ -693,8 +695,8 @@ true, false, false, true); m_mapIcons[tIconTypeFilterFlagFiltered] .setImage(QBrush(Dense2Pattern), QPen(gray, 0, SolidLine, cap, join), - tIconStyleCircle, tIconSizeSmall, - true, false, true, false); + tIconStyleCircle, tIconSizeSmall, + true, false, true, false); m_mapIcons[tIconTypeFilterFlagTracer] .setHighlight(QBrush(NoBrush), QPen(yellow, 1, SolidLine, cap, join), tIconStyleCircle, tIconSizeLarge, @@ -705,8 +707,8 @@ true, false, false, true); m_mapIcons[tIconTypeSpawnPoint] .setImage(QBrush(SolidPattern), QPen(darkGray, 1, SolidLine, cap, join), - tIconStylePlus, tIconSizeRegular, - true, true, false, false); + tIconStylePlus, tIconSizeRegular, + true, true, false, false); m_mapIcons[tIconTypeSpawnPointSelected] .setHighlight(QBrush(NoBrush), QPen(blue, 1, SolidLine, cap, join), tIconStyleCircle, tIconSizeTiny, @@ -715,17 +717,22 @@ .setLine0(true, QPen(blue)); m_mapIcons[tIconTypeZoneSafePoint] .setImage(QBrush(), QPen(green, 1, SolidLine, cap, join), - tIconStyleX, tIconSizeSmall, - true, false, false, false); + tIconStyleX, tIconSizeSmall, + true, false, false, false); m_mapIcons[tIconTypeZoneSafePoint].setShowName(true); m_mapIcons[tIconTypeSpawnPlayerNoUpdate] .setImage(QBrush(gray), QPen(darkGray, 1, SolidLine, cap, join), - tIconStyleSquare, tIconSizeRegular, - true, false, false, false); + tIconStyleSquare, tIconSizeRegular, + true, false, false, false); m_mapIcons[tIconTypeSpawnNPCNoUpdate] .setImage(QBrush(gray), QPen(NoPen, 1, SolidLine, cap, join), - tIconStyleCircle, tIconSizeRegular, - true, false, false, false); + tIconStyleCircle, tIconSizeRegular, + true, false, false, false); + m_mapIcons[tIconTypeDynamicZoneLocation] + .setImage(QBrush(magenta), QPen(magenta, 1, SolidLine, cap, join), + tIconStyleX, tIconSizeLarge, + true, false, false, false); + m_mapIcons[tIconTypeDynamicZoneLocation].setShowName(true); // setup icon size maps m_mapIconSizes[tIconSizeNone] = &m_markerNSize; // none should never be drawn Modified: showeq/trunk/src/mapicon.h =================================================================== --- showeq/trunk/src/mapicon.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/mapicon.h 2009-01-20 17:41:14 UTC (rev 718) @@ -109,7 +109,8 @@ tIconTypeZoneSafePoint, tIconTypeSpawnPlayerNoUpdate, tIconTypeSpawnNPCNoUpdate, - tIconTypeMax = tIconTypeSpawnNPCNoUpdate, + tIconTypeDynamicZoneLocation, + tIconTypeMax = tIconTypeDynamicZoneLocation, }; //---------------------------------------------------------------------- Modified: showeq/trunk/src/packetlog.cpp =================================================================== --- showeq/trunk/src/packetlog.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/packetlog.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -21,7 +21,8 @@ PacketLog::PacketLog(EQPacket& packet, const QString& fname, QObject* parent, const char* name) : SEQLogger(fname, parent, name), - m_packet(packet) + m_packet(packet), + m_dir(0) { m_timeDateFormat = "MMM dd yyyy hh:mm:ss:zzz"; } @@ -156,6 +157,9 @@ if (!open()) return; + if (showeq_params->filterZoneDataLog && showeq_params->filterZoneDataLog != dir) + return; + // timestamp m_out << QDateTime::currentDateTime().toString(m_timeDateFormat) << " "; Modified: showeq/trunk/src/packetlog.h =================================================================== --- showeq/trunk/src/packetlog.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/packetlog.h 2009-01-20 17:41:14 UTC (rev 718) @@ -55,6 +55,7 @@ protected: QString m_timeDateFormat; EQPacket& m_packet; + uint8_t m_dir; }; //---------------------------------------------------------------------- @@ -68,6 +69,8 @@ QObject* parent=0, const char* name = 0); bool raw(); void setRaw(bool val); + uint8_t getDir() { return m_dir; } + void setDir(uint8_t direction) { m_dir = direction; } public slots: void rawStreamPacket(const uint8_t* data, size_t len, uint8_t dir, Modified: showeq/trunk/src/s_everquest.h =================================================================== --- showeq/trunk/src/s_everquest.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/s_everquest.h 2009-01-20 17:41:14 UTC (rev 718) @@ -28,6 +28,8 @@ AddStruct(requestZoneChangeStruct); AddStruct(ClientZoneEntryStruct); AddStruct(newZoneStruct); +AddStruct(dzSwitchInfo); +AddStruct(dzInfo); AddStruct(playerProfileStruct); AddStruct(charProfileStruct); AddStruct(playerAAStruct); Modified: showeq/trunk/src/zonemgr.cpp =================================================================== --- showeq/trunk/src/zonemgr.cpp 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/zonemgr.cpp 2009-01-20 17:41:14 UTC (rev 718) @@ -56,6 +56,7 @@ m_shortZoneName = "unknown"; m_longZoneName = "unknown"; m_zoning = false; + m_dzID = 0; if (showeq_params->restoreZoneState) restoreZoneState(); @@ -273,6 +274,41 @@ sizeof(zonePointStruct) * m_zonePointCount); } +void ZoneMgr::dynamicZonePoints(const uint8_t *data, size_t len, uint8_t) +{ + const dzSwitchInfo *dz = (const dzSwitchInfo*)data; + + if(len == sizeof(dzSwitchInfo)) + { + m_dzPoint.setPoint(lrintf(dz->x), lrintf(dz->y), lrintf(dz->z)); + m_dzID = dz->zoneID; + m_dzLongName = zoneLongNameFromID(m_dzID); + if(dz->type != 1 && dz->type > 2 && dz->type <= 5) + m_dzType = 0; // green + else + m_dzType = 1; // pink + } + else if(len == 8) + { + // we quit the expedition + m_dzPoint.setPoint(0, 0, 0); + m_dzID = 0; + m_dzLongName = ""; + } +} + +void ZoneMgr::dynamicZoneInfo(const uint8_t* data, size_t len, uint8_t) +{ + const dzInfo *dz = (const dzInfo*)data; + + if(!dz->newDZ) + { + m_dzPoint.setPoint(0, 0, 0); + m_dzID = 0; + m_dzLongName = ""; + } +} + #ifndef QMAKEBUILD #include "zonemgr.moc" #endif Modified: showeq/trunk/src/zonemgr.h =================================================================== --- showeq/trunk/src/zonemgr.h 2008-11-21 15:30:09 UTC (rev 717) +++ showeq/trunk/src/zonemgr.h 2009-01-20 17:41:14 UTC (rev 718) @@ -29,6 +29,7 @@ struct newZoneStruct; struct zonePointsStruct; struct zonePointStruct; +struct dzSwitchInfo; class ZoneMgr : public QObject { @@ -46,6 +47,10 @@ const Point3D<int16_t>& safePoint() const { return m_safePoint; } float zoneExpMultiplier() { return m_zone_exp_multiplier; } const zonePointStruct* zonePoint(uint32_t zoneTrigger); + uint32_t dzID() { return m_dzID; } + const Point3D<int16_t>& dzPoint() const { return m_dzPoint; } + QString dzLongName() { return m_dzLongName; } + uint32_t dzType() { return m_dzType; } public slots: void saveZoneState(void); @@ -57,6 +62,8 @@ void zoneChange(const uint8_t* zoneChange, size_t, uint8_t); void zoneNew(const uint8_t* zoneNew, size_t, uint8_t); void zonePoints(const uint8_t* zp, size_t, uint8_t); + void dynamicZonePoints(const uint8_t *data, size_t len, uint8_t); + void dynamicZoneInfo(const uint8_t *data, size_t len, uint8_t); signals: void zoneBegin(); @@ -75,6 +82,10 @@ float m_zone_exp_multiplier; size_t m_zonePointCount; zonePointStruct* m_zonePoints; + Point3D<int16_t> m_dzPoint; + uint32_t m_dzID; + QString m_dzLongName; + uint32_t m_dzType; }; #endif // ZONEMGR This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <cmm...@us...> - 2008-11-21 15:30:19
|
Revision: 717 http://seq.svn.sourceforge.net/seq/?rev=717&view=rev Author: cmmalone Date: 2008-11-21 15:30:09 +0000 (Fri, 21 Nov 2008) Log Message: ----------- Updated acinclude to use better qt3 headers so we don't require the compat headers on some distributions. Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/acinclude.m4 Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-10-27 01:04:28 UTC (rev 716) +++ showeq/trunk/ChangeLog 2008-11-21 15:30:09 UTC (rev 717) @@ -1,3 +1,8 @@ +purple (11/21/08) +----------------- +- Fixed acincludes test for QT to use modern headers so we don't require + compat libs + ieatacid (10/23/08) ---------------- - Updated version to 5.12.7.0 Modified: showeq/trunk/acinclude.m4 =================================================================== --- showeq/trunk/acinclude.m4 2008-10-27 01:04:28 UTC (rev 716) +++ showeq/trunk/acinclude.m4 2008-11-21 15:30:09 UTC (rev 717) @@ -489,8 +489,6 @@ #include "confdefs.h" #include <qglobal.h> #include <qapplication.h> -#include <qapp.h> -#include <qobjcoll.h> #include <qstringlist.h> #include <qstyle.h> #include <qthread.h> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-10-27 01:04:31
|
Revision: 716 http://seq.svn.sourceforge.net/seq/?rev=716&view=rev Author: ieatacid Date: 2008-10-27 01:04:28 +0000 (Mon, 27 Oct 2008) Log Message: ----------- + Added item codes from uRit1u2CBBA= Modified Paths: -------------- showeq/trunk/src/weapons.h showeq/trunk/src/weapons1.h showeq/trunk/src/weapons27.h showeq/trunk/src/weapons29.h Modified: showeq/trunk/src/weapons.h =================================================================== --- showeq/trunk/src/weapons.h 2008-10-27 00:58:13 UTC (rev 715) +++ showeq/trunk/src/weapons.h 2008-10-27 01:04:28 UTC (rev 716) @@ -114,7 +114,7 @@ "Shan'Tok", // 0x69 NULL, // 0x6a - Unknown Weapon NULL, // 0x6b - Unknown Weapon - NULL, // 0x6c - Unknown Weapon + "Sword", // 0x6c NULL, // 0x6d - Unknown Weapon "LegChopper", // 0x6e NULL, // 0x6f - Unknown Weapon Modified: showeq/trunk/src/weapons1.h =================================================================== --- showeq/trunk/src/weapons1.h 2008-10-27 00:58:13 UTC (rev 715) +++ showeq/trunk/src/weapons1.h 2008-10-27 01:04:28 UTC (rev 716) @@ -50,7 +50,7 @@ NULL, // 0x29 NULL, // 0x2a NULL, // 0x2b - NULL, // 0x2c + "Axe", // 0x2c NULL, // 0x2d NULL, // 0x2e NULL, // 0x2f Modified: showeq/trunk/src/weapons27.h =================================================================== --- showeq/trunk/src/weapons27.h 2008-10-27 00:58:13 UTC (rev 715) +++ showeq/trunk/src/weapons27.h 2008-10-27 01:04:28 UTC (rev 716) @@ -223,7 +223,7 @@ NULL, // 0xd6 NULL, // 0xd7 "Luclin Staff", // 0xd8 - NULL, // 0xd9 + "Book", // 0xd9 NULL, // 0xda "Horned Staff", // 0xdb NULL, // 0xdc Modified: showeq/trunk/src/weapons29.h =================================================================== --- showeq/trunk/src/weapons29.h 2008-10-27 00:58:13 UTC (rev 715) +++ showeq/trunk/src/weapons29.h 2008-10-27 01:04:28 UTC (rev 716) @@ -175,7 +175,7 @@ NULL, // 0xa6 NULL, // 0xa7 NULL, // 0xa8 - NULL, // 0xa9 + "Shield", // 0xa9 NULL, // 0xaa NULL, // 0xab NULL, // 0xac @@ -217,7 +217,7 @@ "ShortSword", // 0xd0 NULL, // 0xd1 NULL, // 0xd2 - NULL, // 0xd3 + "SkullClub", // 0xd3 NULL, // 0xd4 NULL, // 0xd5 NULL, // 0xd6 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-10-27 00:58:17
|
Revision: 715 http://seq.svn.sourceforge.net/seq/?rev=715&view=rev Author: ieatacid Date: 2008-10-27 00:58:13 +0000 (Mon, 27 Oct 2008) Log Message: ----------- + Updated all critical opcodes + Version to 5.12.7.0 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/interface.cpp showeq/trunk/src/zonemgr.cpp showeq/trunk/src/zones.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/ChangeLog 2008-10-27 00:58:13 UTC (rev 715) @@ -1,3 +1,10 @@ +ieatacid (10/23/08) +---------------- +- Updated version to 5.12.7.0 +- Compatibility with live 10/21 +- Updated opcodes +- Went through all the critical opcodes and updated some older ones that weren't correct + ieatacid (10/12/08) ---------------- - Updated version to 5.12.6.0 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/conf/zoneopcodes.xml 2008-10-27 00:58:13 UTC (rev 715) @@ -2,6 +2,9 @@ <!DOCTYPE seqopcodes SYSTEM "seqopcodes.dtd"> <seqopcodes> + <!-- + Critical opcodes used directly by ShowEQ + --> <opcode id="6022" name="OP_PlayerProfile" updated="01/17/08"> <comment>old CharProfileCode</comment> <payload dir="server" typename="charProfileStruct" sizechecktype="match"/> @@ -11,10 +14,6 @@ <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <!--<opcode id="1900" name="OP_ZoneSpawns" updated="05/29/08"> - <comment>old ZoneSpawnsCode</comment> - <payload dir="server" typename="spawnStruct" sizechecktype="none"/> - </opcode>--> <opcode id="6015" name="OP_TimeOfDay" updated="01/17/08"> <comment>old TimeOfDayCode</comment> <payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/> @@ -23,7 +22,7 @@ <comment>old NewZoneCode</comment> <payload dir="server" typename="newZoneStruct" sizechecktype="match"/> </opcode> - <opcode id="1890" name="OP_SpawnDoor" updated="01/17/08"> + <opcode id="102F" name="OP_SpawnDoor" updated="10/21/08"> <comment>old DoorSpawnsCode</comment> <payload dir="server" typename="doorStruct" sizechecktype="modulus"/> </opcode> @@ -32,7 +31,7 @@ <payload dir="server" typename="makeDropStruct" sizechecktype="match"/> <payload dir="client" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="1932" name="OP_SendZonePoints" updated="01/17/08"> + <opcode id="5821" name="OP_SendZonePoints" updated="10/21/08"> <comment>Coords in a zone that will port you to another zone</comment> <payload dir="server" typename="zonePointsStruct" sizechecktype="none"/> </opcode> @@ -65,10 +64,11 @@ <comment>old MobUpdateCode</comment> <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/> </opcode> + <!-- Deprecated <opcode id="5C29" name="OP_NewSpawn" updated="01/17/08"> <comment>old NewSpawnCode</comment> <payload dir="server" typename="spawnStruct" sizechecktype="match"/> - </opcode> + </opcode>--> <opcode id="4292" name="OP_DeleteSpawn" updated="10/07/08"> <comment>old DeleteSpawnCode</comment> <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> @@ -81,7 +81,7 @@ <comment>old NewCorpseCode</comment> <payload dir="server" typename="newCorpseStruct" sizechecktype="match"/> </opcode> - <opcode id="72ad" name="OP_RespawnFromHover" updated="01/17/08"> + <opcode id="268C" name="OP_RespawnFromHover" updated="10/21/08"> <comment>Server telling client that it is coming back from hover death</comment> <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> @@ -93,15 +93,15 @@ <comment>old SpawnAppearanceCode</comment> <payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/> </opcode> - <opcode id="82D7" name="OP_Stamina" updated="01/17/08"> + <opcode id="3E50" name="OP_Stamina" updated="10/21/08"> <comment>Server updating on hunger/thirst</comment> <payload dir="server" typename="staminaStruct" sizechecktype="match"/> </opcode> - <opcode id="25F0" name="OP_HPUpdate" updated="01/17/08"> + <opcode id="538F" name="OP_HPUpdate" updated="10/21/08"> <comment>old NpcHpUpdateCode Update HP % of a PC or NPC</comment> <payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="099D" name="OP_GuildMemberUpdate" updated="01/17/08"> + <opcode id="41C0" name="OP_GuildMemberUpdate" updated="10/21/08"> <comment></comment> <payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/> </opcode> @@ -134,7 +134,7 @@ <comment>Spawn being illusioned (changing forms)</comment> <payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/> </opcode> - <opcode id="53D4" name="OP_Shroud" updated="01/17/08"> + <opcode id="6D1F" name="OP_Shroud" updated="10/07/08"> <comment>Server putting players into shroud form</comment> <payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/> </opcode> @@ -203,7 +203,7 @@ <comment>old MemSpellCode</comment> <payload dir="both" typename="memSpellStruct" sizechecktype="match"/> </opcode> - <opcode id="592D" name="OP_InspectAnswer" updated="01/17/08"> + <opcode id="4938" name="OP_InspectAnswer" updated="10/07/08"> <comment>old InspectDataCode</comment> <payload dir="both" typename="inspectDataStruct" sizechecktype="match"/> </opcode> @@ -235,11 +235,11 @@ <comment>old RandomCode</comment> <payload dir="server" typename="randomStruct" sizechecktype="match"/> </opcode> - <opcode id="4464" name="OP_ConsentResponse" updated="01/17/08"> + <opcode id="6E47" name="OP_ConsentResponse" updated="10/21/08"> <comment>Server replying with consent information after /consent</comment> <payload dir="server" typename="consentResponseStruct" sizechecktype="match"/> </opcode> - <opcode id="0DCD" name="OP_DenyResponse" updated="01/17/08"> + <opcode id="7CE7" name="OP_DenyResponse" updated="10/21/08"> <comment>Server replying with deny information after /deny</comment> <payload dir="server" typename="consentResponseStruct" sizechecktype="match"/> </opcode> @@ -270,8 +270,7 @@ <comment>old CorpseLocCode:</comment> <payload dir="server" typename="corpseLocStruct" sizechecktype="match"/> </opcode> - <!-- this might be wrong --> - <opcode id="07EE" name="OP_Logout" updated="01/17/08"> + <opcode id="30E2" name="OP_Logout" updated="10/21/08"> <comment></comment> <payload dir="server" typename="none" sizechecktype="match"/> </opcode> @@ -620,6 +619,10 @@ can find any of these in the current stream, please update them and let us know! + <opcode id="1900" name="OP_ZoneSpawns" updated="05/29/08"> + <comment>old ZoneSpawnsCode</comment> + <payload dir="server" typename="spawnStruct" sizechecktype="none"/> + </opcode> <opcode id="0020" name="OP_GMServers" updated="05/26/04"> <comment>GM /servers - ?</comment> </opcode> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/configure.in 2008-10-27 00:58:13 UTC (rev 715) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.6.0) +AC_INIT(showeq, 5.12.7.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/src/interface.cpp 2008-10-27 00:58:13 UTC (rev 715) @@ -1944,9 +1944,10 @@ m_packet->connect2("OP_SpawnDoor", SP_Zone, DIR_Server, "doorStruct", SZC_Modulus, m_spawnShell, SLOT(newDoorSpawns(const uint8_t*, size_t, uint8_t))); - m_packet->connect2("OP_NewSpawn", SP_Zone, DIR_Server, - "spawnStruct", SZC_Match, - m_spawnShell, SLOT(newSpawn(const uint8_t*))); +// OP_NewSpawn is deprecated in the client +// m_packet->connect2("OP_NewSpawn", SP_Zone, DIR_Server, +// "spawnStruct", SZC_Match, +// m_spawnShell, SLOT(newSpawn(const uint8_t*))); m_packet->connect2("OP_ZoneEntry", SP_Zone, DIR_Server, "uint8_t", SZC_None, m_spawnShell, SLOT(zoneEntry(const uint8_t*, size_t))); @@ -5877,9 +5878,10 @@ m_packet->connect2("OP_ZoneSpawns", SP_Zone, DIR_Server, "spawnStruct", SZC_Modulus, m_spawnLogger, SLOT(logZoneSpawns(const uint8_t*, size_t))); - m_packet->connect2("OP_NewSpawn", SP_Zone, DIR_Server, - "spawnStruct", SZC_Match, - m_spawnLogger, SLOT(logNewSpawn(const uint8_t*))); +// OP_NewSpawn is deprecated in the client +// m_packet->connect2("OP_NewSpawn", SP_Zone, DIR_Server, +// "spawnStruct", SZC_Match, +// m_spawnLogger, SLOT(logNewSpawn(const uint8_t*))); // Connect SpawnLog slots to SpawnShell signals connect(m_spawnShell, SIGNAL(delItem(const Item*)), Modified: showeq/trunk/src/zonemgr.cpp =================================================================== --- showeq/trunk/src/zonemgr.cpp 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/src/zonemgr.cpp 2008-10-27 00:58:13 UTC (rev 715) @@ -245,9 +245,9 @@ zoneNew->safe_x, zoneNew->safe_y, zoneNew->safe_z); #endif // ZBTEMP - // seqDebug("zoneNew: m_short(%s) m_long(%s)", - // (const char*)m_shortZoneName, - // (const char*)m_longZoneName); +// seqDebug("zoneNew: m_short(%s) m_long(%s)", +// (const char*)m_shortZoneName, +// (const char*)m_longZoneName); emit zoneEnd(m_shortZoneName, m_longZoneName); Modified: showeq/trunk/src/zones.h =================================================================== --- showeq/trunk/src/zones.h 2008-10-13 02:39:14 UTC (rev 714) +++ showeq/trunk/src/zones.h 2008-10-27 00:58:13 UTC (rev 715) @@ -457,34 +457,34 @@ { "guardian", "The Mechamatic Guardian" }, // 447 { "steamfontmts", "Steamfont Mountains" }, // 448 { "cryptofshade", "Crypt of Shade" }, // 449 -{ "Tinmizer's Wunderwerks", "dragonscalea" }, // 450 -{ "Deepscar's Den", "dragonscaleb" }, // 451 -{ "Field of Scale", "oldfieldofbone" }, // 452 -{ "Kaesora Library", "oldkaesoraa" }, // 453 -{ "Hatchery Wing", "oldkaesorab" }, // 454 -{ "Kurn's Tower", "oldkurn" }, // 455 -{ "Bloody Kithicor", "oldkithicor" }, // 456 -{ "Old Commonlands", "oldcommons" }, // 457 -{ "Highpass Hold", "oldhighpass" }, // 458 -{ "The Void", "thevoida" }, // 459 -{ "The Void", "thevoidb" }, // 460 -{ "The Void", "thevoidc" }, // 461 -{ "The Void", "thevoidd" }, // 462 -{ "The Void", "thevoide" }, // 463 -{ "The Void", "thevoidf" }, // 464 -{ "The Void", "thevoidg" }, // 465 -{ "Oceangreen Hills", "oceangreenhills" }, // 466 -{ "Oceangreen Village", "oceangreenvillage" }, // 467 -{ "Blackburrow", "oldblackburrow" }, // 468 -{ "Temple of Bertoxxulous", "bertoxtemple" }, // 469 -{ "Korafax, Home of the Riders", "discord" }, // 470 -{ "Citadel of the Worldslayer", "discordtower" }, // 471 -{ "Old Bloodfields", "oldbloodfield" }, // 472 -{ "The Precipice of War", "precipiceofwar" }, // 473 -{ "City of Dranik", "olddranik" }, // 474 -{ "Toskirakk", "toskirakk" }, // 475 -{ "Korascian Warrens", "korascian" }, // 476 -{ "Rathe Council Chambers", "rathechamber" }, // 477 +{ "dragonscalea", "Tinmizer's Wunderwerks" }, // 450 +{ "dragonscaleb", "Deepscar's Den" }, // 451 +{ "oldfieldofbone", "Field of Scale" }, // 452 +{ "oldkaesoraa", "Kaesora Library" }, // 453 +{ "oldkaesorab", "Hatchery Wing" }, // 454 +{ "oldkurn", "Kurn's Tower" }, // 455 +{ "oldkithicor", "Bloody Kithicor" }, // 456 +{ "oldcommons", "Old Commonlands" }, // 457 +{ "oldhighpass", "Highpass Hold" }, // 458 +{ "thevoida", "The Void" }, // 459 +{ "thevoidb", "The Void" }, // 460 +{ "thevoidc", "The Void" }, // 461 +{ "thevoidd", "The Void" }, // 462 +{ "thevoide", "The Void" }, // 463 +{ "thevoidf", "The Void" }, // 464 +{ "thevoidg", "The Void" }, // 465 +{ "oceangreenhills", "Oceangreen Hills" }, // 466 +{ "oceangreenvillage", "Oceangreen Village" }, // 467 +{ "oldblackburrow", "Blackburrow" }, // 468 +{ "bertoxtemple", "Temple of Bertoxxulous" }, // 469 +{ "discord", "Korafax, Home of the Riders" }, // 470 +{ "discordtower", "Citadel of the Worldslayer" }, // 471 +{ "oldbloodfield", "Old Bloodfields" }, // 472 +{ "precipiceofwar", "The Precipice of War" }, // 473 +{ "olddranik", "City of Dranik" }, // 474 +{ "toskirakk", "Toskirakk" }, // 475 +{ "korascian", "Korascian Warrens" }, // 476 +{ "rathechamber", "Rathe Council Chambers" }, // 477 { NULL, NULL }, // 478 { NULL, NULL }, // 479 { NULL, NULL }, // 480 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-10-13 02:39:24
|
Revision: 714 http://seq.svn.sourceforge.net/seq/?rev=714&view=rev Author: ieatacid Date: 2008-10-13 02:39:14 +0000 (Mon, 13 Oct 2008) Log Message: ----------- Tag for release 5.12.6.0 Added Paths: ----------- showeq/tags/v5_12_6_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-10-13 02:37:57
|
Revision: 713 http://seq.svn.sourceforge.net/seq/?rev=713&view=rev Author: ieatacid Date: 2008-10-13 02:37:44 +0000 (Mon, 13 Oct 2008) Log Message: ----------- + Compatibility with live 10/07 + Updated structs/opcodes + Version to 5.12.6.0 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/everquest.h showeq/trunk/src/group.cpp showeq/trunk/src/interface.cpp showeq/trunk/src/messageshell.cpp showeq/trunk/src/spawnshell.cpp Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/ChangeLog 2008-10-13 02:37:44 UTC (rev 713) @@ -1,3 +1,9 @@ +ieatacid (10/12/08) +---------------- +- Updated version to 5.12.6.0 +- Compatibility with live 10/07 +- Updated structs/opcodes + ieatacid (9/22/08) ---------------- - Updated version to 5.12.5.2 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/conf/zoneopcodes.xml 2008-10-13 02:37:44 UTC (rev 713) @@ -6,7 +6,7 @@ <comment>old CharProfileCode</comment> <payload dir="server" typename="charProfileStruct" sizechecktype="match"/> </opcode> - <opcode id="7901" name="OP_ZoneEntry" updated="01/17/08"> + <opcode id="5A6B" name="OP_ZoneEntry" updated="10/07/08"> <comment>old ZoneEntryCode</comment> <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/> <payload dir="server" typename="uint8_t" sizechecktype="none"/> @@ -57,7 +57,7 @@ <payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/> <payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/> </opcode> - <opcode id="664A" name="OP_NpcMoveUpdate" updated="01/17/08"> + <opcode id="22A7" name="OP_NpcMoveUpdate" updated="10/07/08"> <comment>Position updates</comment> <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> @@ -69,7 +69,7 @@ <comment>old NewSpawnCode</comment> <payload dir="server" typename="spawnStruct" sizechecktype="match"/> </opcode> - <opcode id="5aac" name="OP_DeleteSpawn" updated="04/17/08"> + <opcode id="4292" name="OP_DeleteSpawn" updated="10/07/08"> <comment>old DeleteSpawnCode</comment> <payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/> </opcode> @@ -142,7 +142,7 @@ <comment>old ZoneChangeCode</comment> <payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/> </opcode> - <opcode id="5f51" name="OP_GroupInvite" updated="09/03/08"> + <opcode id="5D32" name="OP_GroupInvite" updated="10/07/08"> <payload dir="client" typename="groupInviteStruct" sizechecktype="match"/> <payload dir="server" typename="groupAltInviteStruct" sizechecktype="match"/> <comment>You're inviting someone and you're not grouped</comment> @@ -155,27 +155,27 @@ <payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/> <comment>Declining to join a group</comment> </opcode> - <opcode id="1842" name="OP_GroupFollow" updated="09/03/08"> + <opcode id="21BE" name="OP_GroupFollow" updated="10/07/08"> <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> <comment>You join a group</comment> </opcode> - <!--<opcode id="1842" name="OP_GroupFollow2" updated="09/03/08"> - <payload dir="server" typename="groupAltFollowStruct" sizechecktype="match"/> + <opcode id="3E22" name="OP_GroupFollow2" updated="10/07/08"> + <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> <comment>Player joins your group</comment> - </opcode>--> - <opcode id="4036" name="OP_GroupUpdate" updated="09/03/08"> + </opcode> + <opcode id="7351" name="OP_GroupUpdate" updated="10/07/08"> <payload dir="server" typename="uint8_t" sizechecktype="none"/> <comment>Variable length packet with group member names</comment> </opcode> - <opcode id="7545" name="OP_GroupDisband" updated="09/03/08"> + <opcode id="C56C" name="OP_GroupDisband" updated="10/07/08"> <comment>You disband from group</comment> <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> </opcode> - <opcode id="16be" name="OP_GroupDisband2" updated="09/03/08"> + <opcode id="162D" name="OP_GroupDisband2" updated="10/07/08"> <comment>Other disbands from group</comment> <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> </opcode> - <opcode id="1560" name="OP_GroupLeader" updated="09/03/08"> + <opcode id="7545" name="OP_GroupLeader" updated="10/07/08"> <comment>Group leader change</comment> <payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/> </opcode> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/configure.in 2008-10-13 02:37:44 UTC (rev 713) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.5.2) +AC_INIT(showeq, 5.12.6.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/everquest.h =================================================================== --- showeq/trunk/src/everquest.h 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/src/everquest.h 2008-10-13 02:37:44 UTC (rev 713) @@ -604,7 +604,8 @@ /*0916*/ uint8_t unknown0916[4]; // *** Placeholder (11/24/2007) /*0920*/ uint8_t unknown0920[4]; // *** Placeholder (01/17/2008) /*0924*/ uint8_t unknown0924[4]; // *** Placeholder (09/03/2008) -/*0928*/ +/*0928*/ uint8_t unknown0928[4]; // *** Placeholder (10/07/2008) +/*0932*/ }; /** @@ -685,7 +686,7 @@ /* ** Player Profile -** Length: 23608 Octets +** Length: 23488 Octets ** OpCode: CharProfileCode */ struct charProfileStruct @@ -699,11 +700,12 @@ /*15264*/ uint32_t birthdayTime; // character birthday /*15268*/ uint32_t lastSaveTime; // character last save time /*15272*/ uint32_t timePlayedMin; // time character played -/*15276*/ uint8_t pvp; // 1=pvp, 0=not pvp -/*15277*/ uint8_t anon; // 2=roleplay, 1=anon, 0=not anon -/*15278*/ uint8_t gm; // 0=no, 1=yes (guessing!) -/*15279*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader -/*15280*/ uint8_t unknown15280[12]; +/*15276*/ uint8_t unknown15276[4]; +/*15280*/ uint8_t pvp; // 1=pvp, 0=not pvp +/*15281*/ uint8_t anon; // 2=roleplay, 1=anon, 0=not anon +/*15282*/ uint8_t gm; // 0=no, 1=yes (guessing!) +/*15283*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader +/*15284*/ uint8_t unknown15284[8]; /*15292*/ uint32_t exp; // Current Experience /*15296*/ uint8_t unknown15296[12]; /*15308*/ uint8_t languages[MAX_KNOWN_LANGS]; // List of languages @@ -712,61 +714,60 @@ /*15344*/ float x; // Players x position /*15348*/ float z; // Players z position /*15352*/ float heading; // Players heading -/*15356*/ uint8_t unknown15356[4]; // ***Placeholder +/*15356*/ uint32_t standState; // 0x64 = stand /*15360*/ uint32_t platinum_bank; // Platinum Pieces in Bank /*15364*/ uint32_t gold_bank; // Gold Pieces in Bank /*15368*/ uint32_t silver_bank; // Silver Pieces in Bank /*15372*/ uint32_t copper_bank; // Copper Pieces in Bank /*15376*/ uint32_t platinum_shared; // Shared platinum pieces -/*15380*/ uint8_t unknown15380[716]; -/*16096*/ uint32_t expansions; // Bitmask for expansions -/*16100*/ uint8_t unknown16100[12]; -/*16112*/ uint32_t autosplit; // 0 = off, 1 = on -/*16116*/ uint8_t unknown16116[16]; -/*16132*/ uint16_t zoneId; // see zones.h -/*16134*/ uint16_t zoneInstance; // Instance id -/*16136*/ //char groupMembers[MAX_GROUP_MEMBERS][64]; // removed 9/3/2008 -/*16520*/ //char groupLeader[64]; // removed 9/3/2008 -/*16136*/ uint8_t unknown16136[800]; -/*16936*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on -/*17380*/ uint8_t unknown17380[4]; -/*17384*/ uint32_t ldon_guk_points; // Earned GUK points -/*17388*/ uint32_t ldon_mir_points; // Earned MIR points -/*17392*/ uint32_t ldon_mmc_points; // Earned MMC points -/*17396*/ uint32_t ldon_ruj_points; // Earned RUJ points -/*17400*/ uint32_t ldon_tak_points; // Earned TAK points -/*17404*/ uint32_t ldon_avail_points; // Available LDON points -/*17408*/ uint8_t unknown17408[136]; -/*17544*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) -/*17548*/ uint32_t careerTribute; // Total favor points for this char -/*17552*/ uint32_t unknown17552; // *** Placeholder -/*17556*/ uint32_t currentTribute; // Current tribute points -/*17560*/ uint32_t unknown17560; // *** Placeholder -/*17564*/ uint32_t tributeActive; // 0 = off, 1=on -/*17568*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout -/*17608*/ uint8_t unknown17608[8]; -/*17616*/ float expGroupLeadAA; // Current group lead exp points -/*17620*/ uint32_t unknown17620; -/*17624*/ float expRaidLeadAA; // Current raid lead AA exp points -/*17628*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points -/*17632*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points -/*17636*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks -/*17764*/ uint8_t unknown17764[128]; -/*17892*/ uint32_t airRemaining; // Air supply (seconds) -/*17896*/ uint8_t unknown17896[4608]; -/*22504*/ uint32_t expAA; // Exp earned in current AA point -/*22508*/ uint8_t unknown22508[40]; -/*22548*/ uint32_t currentRadCrystals; // Current count of radiant crystals -/*22552*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever -/*22556*/ uint32_t currentEbonCrystals;// Current count of ebon crystals -/*22560*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever -/*22564*/ uint8_t groupAutoconsent; // 0=off, 1=on -/*22565*/ uint8_t raidAutoconsent; // 0=off, 1=on -/*22566*/ uint8_t guildAutoconsent; // 0=off, 1=on -/*22567*/ uint8_t unknown22567[5]; // ***Placeholder (6/29/2005) -/*22572*/ uint32_t showhelm; // 0=no, 1=yes -/*22576*/ uint8_t unknown22576[1032]; // ***Placeholder (2/13/2007) -/*23608*/ +/*15380*/ uint8_t unknown15380[1036]; +/*16416*/ uint32_t expansions; // Bitmask for expansions +/*16420*/ uint8_t unknown16420[12]; +/*16432*/ uint32_t autosplit; // 0 = off, 1 = on +/*16436*/ uint8_t unknown16436[16]; +/*16452*/ uint16_t zoneId; // see zones.h +/*16454*/ uint16_t zoneInstance; // Instance id +/*16456*/ uint8_t unknown16456[800]; +/*17256*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on +/*17260*/ uint8_t unknown17260[4]; +/*17264*/ uint32_t ldon_guk_points; // Earned GUK points +/*17268*/ uint32_t ldon_mir_points; // Earned MIR points +/*17272*/ uint32_t ldon_mmc_points; // Earned MMC points +/*17276*/ uint32_t ldon_ruj_points; // Earned RUJ points +/*17280*/ uint32_t ldon_tak_points; // Earned TAK points +/*17284*/ uint32_t ldon_avail_points; // Available LDON points +/*17288*/ uint8_t unknown17288[136]; +/*17424*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) +/*17428*/ uint32_t careerTribute; // Total favor points for this char +/*17432*/ uint32_t unknown17432; // *** Placeholder +/*17436*/ uint32_t currentTribute; // Current tribute points +/*17440*/ uint32_t unknown17440; // *** Placeholder +/*17444*/ uint32_t tributeActive; // 0 = off, 1=on +/*17448*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout +/*17488*/ uint8_t unknown17488[4]; +/*17492*/ float expGroupLeadAA; // Current group lead exp points +/*17496*/ uint32_t unknown17496; +/*17500*/ float expRaidLeadAA; // Current raid lead AA exp points +/*17504*/ uint32_t unknown17504; +/*17508*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points +/*17512*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points +/*17516*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks +/*17644*/ uint8_t unknown17644[128]; +/*17772*/ uint32_t airRemaining; // Air supply (seconds) +/*17776*/ uint8_t unknown17776[4608]; +/*22384*/ uint32_t expAA; // Exp earned in current AA point +/*22388*/ uint8_t unknown22388[40]; +/*22428*/ uint32_t currentRadCrystals; // Current count of radiant crystals +/*22432*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever +/*22436*/ uint32_t currentEbonCrystals;// Current count of ebon crystals +/*22440*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever +/*22444*/ uint8_t groupAutoconsent; // 0=off, 1=on +/*22445*/ uint8_t raidAutoconsent; // 0=off, 1=on +/*22446*/ uint8_t guildAutoconsent; // 0=off, 1=on +/*22447*/ uint8_t unknown22447[5]; // ***Placeholder (6/29/2005) +/*22452*/ uint32_t showhelm; // 0=no, 1=yes +/*22456*/ uint8_t unknown22456[1032]; // ***Placeholder (2/13/2007) +/*23488*/ }; #if 0 @@ -1662,7 +1663,7 @@ /* ** Grouping Invite -** Length 140 Octets (invite a player) or 144 (you get invited) +** Length 148 Octets (invite a player) or 152 (you get invited) ** Opcode OP_GroupInvite */ @@ -1670,21 +1671,21 @@ { /*0000*/ char invitee[64]; // Invitee's Name /*0064*/ char inviter[64]; // Inviter's Name -/*0128*/ uint8_t unknown0128[12]; // ***Placeholder -/*0140*/ +/*0128*/ uint8_t unknown0128[20]; // ***Placeholder +/*0148*/ }; struct groupAltInviteStruct { /*0000*/ char invitee[64]; // Invitee's Name /*0064*/ char inviter[64]; // Inviter's Name -/*0128*/ uint8_t unknown0132[16]; // ***Placeholder -/*0144*/ +/*0128*/ uint8_t unknown0128[24]; // ***Placeholder +/*0152*/ }; /* ** Grouping Invite Answer - Decline -** Length 144 Octets +** Length 152 Octets ** Opcode GroupDeclineCode */ @@ -1692,15 +1693,15 @@ { /*0000*/ char yourname[64]; // Player Name /*0064*/ char membername[64]; // Invited Member Name -/*0128*/ uint8_t unknown0128[12]; // ***Placeholder -/*0140*/ uint8_t reason; // Already in Group = 1, Declined Invite = 3 -/*0141*/ uint8_t unknown0141[3]; // ***Placeholder -/*0144*/ +/*0128*/ uint8_t unknown0128[20]; // ***Placeholder +/*0148*/ uint8_t reason; // Already in Group = 1, Declined Invite = 3 +/*0149*/ uint8_t unknown0141[3]; // ***Placeholder +/*0152*/ }; /* ** Grouping Invite Answer - Accept -** Length 140 Octets +** Length 148 Octets ** Opcode OP_GroupFollow */ @@ -1710,13 +1711,13 @@ /*0064*/ char invitee[64]; // Invitee's Member Name /*0128*/ uint8_t unknown0132[4]; // ***Placeholder /*0132*/ uint32_t level; // Invitee's level -/*0136*/ uint8_t unknown0136[4]; // ***Placeholder (zeros) -/*0140*/ +/*0136*/ uint8_t unknown0136[12]; // ***Placeholder (zeros) +/*0148*/ }; /* ** Group Disbanding -** Length 140 Octets +** Length 148 Octets ** Opcode */ @@ -1724,13 +1725,13 @@ { /*0000*/ char yourname[64]; // Player Name /*0064*/ char membername[64]; // Invited Member Name -/*0128*/ uint8_t unknown0128[12]; // ***Placeholder -/*0140*/ +/*0128*/ uint8_t unknown0128[20]; // ***Placeholder +/*0148*/ }; /* ** Group Leader Change -** Length 140 Octets +** Length 148 Octets ** Opcode OP_GroupLeader */ @@ -1738,8 +1739,8 @@ { /*0000*/ char unknown0000[64]; // ***Placeholder /*0064*/ char membername[64]; // Invited Member Name -/*0128*/ uint8_t unknown0128[12]; // ***Placeholder -/*0140*/ +/*0128*/ uint8_t unknown0128[20]; // ***Placeholder +/*0148*/ }; /* Modified: showeq/trunk/src/group.cpp =================================================================== --- showeq/trunk/src/group.cpp 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/src/group.cpp 2008-10-13 02:37:44 UTC (rev 713) @@ -125,6 +125,8 @@ m_membersInZoneCount++; emit added(m_members[i]->m_name, m_members[i]->m_spawn); + + netStream.skipBytes(7); } // clear the rest Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/src/interface.cpp 2008-10-13 02:37:44 UTC (rev 713) @@ -1854,6 +1854,9 @@ m_packet->connect2("OP_GroupFollow", SP_Zone, DIR_Server, "groupFollowStruct", SZC_Match, m_messageShell, SLOT(groupFollow(const uint8_t*))); + m_packet->connect2("OP_GroupFollow2", SP_Zone, DIR_Server, + "groupFollowStruct", SZC_Match, + m_messageShell, SLOT(groupFollow(const uint8_t*))); m_packet->connect2("OP_GroupDisband", SP_Zone, DIR_Server, "groupDisbandStruct", SZC_Match, m_messageShell, SLOT(groupDisband(const uint8_t*))); Modified: showeq/trunk/src/messageshell.cpp =================================================================== --- showeq/trunk/src/messageshell.cpp 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/src/messageshell.cpp 2008-10-13 02:37:44 UTC (rev 713) @@ -680,7 +680,10 @@ const groupFollowStruct* gFollow = (const groupFollowStruct*)data; QString tempStr; - tempStr.sprintf("Follow: %s has joined the group", gFollow->invitee); + if(!strcmp(gFollow->invitee, m_player->name())) + tempStr = "Follow: You have joined the group"; + else + tempStr.sprintf("Follow: %s has joined the group", gFollow->invitee); m_messages->addMessage(MT_Group, tempStr); } Modified: showeq/trunk/src/spawnshell.cpp =================================================================== --- showeq/trunk/src/spawnshell.cpp 2008-09-23 01:38:12 UTC (rev 712) +++ showeq/trunk/src/spawnshell.cpp 2008-10-13 02:37:44 UTC (rev 713) @@ -624,7 +624,7 @@ strcpy(spawn->suffix,name.latin1()); } - netStream.skipBytes(32); + netStream.skipBytes(33); // now we're at the end This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-23 02:20:44
|
Revision: 712 http://seq.svn.sourceforge.net/seq/?rev=712&view=rev Author: ieatacid Date: 2008-09-23 01:38:12 +0000 (Tue, 23 Sep 2008) Log Message: ----------- Tag for release 5.12.5.2 Added Paths: ----------- showeq/tags/v5_12_5_2/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-23 02:20:43
|
Revision: 711 http://seq.svn.sourceforge.net/seq/?rev=711&view=rev Author: ieatacid Date: 2008-09-23 01:37:37 +0000 (Tue, 23 Sep 2008) Log Message: ----------- + Fixed crash issue that happened if you left a group then zoned + Updated version to 5.12.5.2 Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/configure.in showeq/trunk/src/group.cpp showeq/trunk/src/group.h showeq/trunk/src/interface.cpp showeq/trunk/src/races.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/ChangeLog 2008-09-23 01:37:37 UTC (rev 711) @@ -1,3 +1,8 @@ +ieatacid (9/22/08) +---------------- +- Updated version to 5.12.5.2 +- Fixed crash issue that happened if you left a group then zoned + ieatacid (9/16/08) ---------------- - Updated version to 5.12.5.1 Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/configure.in 2008-09-23 01:37:37 UTC (rev 711) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.5.1) +AC_INIT(showeq, 5.12.5.2) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/group.cpp =================================================================== --- showeq/trunk/src/group.cpp 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/src/group.cpp 2008-09-23 01:37:37 UTC (rev 711) @@ -42,21 +42,28 @@ } } -// 9/3/2008 - Not used. Group data is no longer sent in charProfile -#if 0 void GroupMgr::player(const charProfileStruct* player) { - // reset counters + // We receive a groupUpdate packet after playerProfile so we'll clear the + // member list then repopulate it in case we lost someone during zoning m_memberCount = 0; m_membersInZoneCount = 0; + for(int i = 0; i < MAX_GROUP_MEMBERS; i++) + { + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; + } + emit cleared(); +// 9/3/2008 - Not used. Group data is no longer sent in charProfile. We still +// need to reset the data as done above. +#if 0 // initialize the array of members with information from the player profile for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { -// so it compiles -// m_members[i]->m_name = player->groupMembers[i]; + m_members[i]->m_name = player->groupMembers[i]; if (!m_members[i]->m_name.isEmpty()) m_memberCount++; @@ -72,8 +79,8 @@ emit added(m_members[i]->m_name, m_members[i]->m_spawn); } +#endif } -#endif void GroupMgr::groupUpdate(const uint8_t* data, size_t size) { @@ -110,7 +117,7 @@ // increment the member count m_memberCount++; - // attempt to retrieve the members spawn + // attempt to retrieve the member's spawn m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); // incremement the spawn count @@ -172,26 +179,43 @@ { const groupDisbandStruct* gmem = (const groupDisbandStruct*)data; - for (int i = 0; i < MAX_GROUP_MEMBERS; i++) + // If we're disbanding, reset counters and clear member slots + if(!strcmp(gmem->membername, m_player->name())) { - // is this the member? - if (m_members[i]->m_name == gmem->membername) + m_memberCount = 0; + m_membersInZoneCount = 0; + + for(int i = 0; i < MAX_GROUP_MEMBERS; i++) { - // yes, announce its removal - emit removed(m_members[i]->m_name, m_members[i]->m_spawn); + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; + } - // decrement member count - m_memberCount--; + emit cleared(); + } + else + { + for(int i = 0; i < MAX_GROUP_MEMBERS; i++) + { + // is this the member? + if(m_members[i]->m_name == gmem->membername) + { + // yes, announce its removal + emit removed(m_members[i]->m_name, m_members[i]->m_spawn); - // if the member is in zone decrement zone count - m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); - if(m_members[i]->m_spawn) - m_membersInZoneCount--; + // decrement member count + m_memberCount--; - // clear it - m_members[i]->m_name = ""; - m_members[i]->m_spawn = 0; - break; + // if the member is in zone decrement zone count + m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); + if(m_members[i]->m_spawn) + m_membersInZoneCount--; + + // clear it + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; + break; + } } } } Modified: showeq/trunk/src/group.h =================================================================== --- showeq/trunk/src/group.h 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/src/group.h 2008-09-23 01:37:37 UTC (rev 711) @@ -43,7 +43,7 @@ unsigned long totalLevels(); public slots: -// void player(const charProfileStruct* player); + void player(const charProfileStruct* player); void groupUpdate(const uint8_t* data, size_t size); void addGroupMember(const uint8_t* data); void removeGroupMember(const uint8_t* data); Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/src/interface.cpp 2008-09-23 01:37:37 UTC (rev 711) @@ -1652,13 +1652,8 @@ if (m_groupMgr != 0) { -// 9/3/2008 - Group data is no longer sent in charProfile -// connect(m_zoneMgr, SIGNAL(playerProfile(const charProfileStruct*)), -// m_groupMgr, SLOT(player(const charProfileStruct*))); - //remove this -// m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, -// "groupUpdateStruct", SZC_None, -// m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); + connect(m_zoneMgr, SIGNAL(playerProfile(const charProfileStruct*)), + m_groupMgr, SLOT(player(const charProfileStruct*))); m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, "uint8_t", SZC_None, m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); Modified: showeq/trunk/src/races.h =================================================================== --- showeq/trunk/src/races.h 2008-09-17 01:11:16 UTC (rev 710) +++ showeq/trunk/src/races.h 2008-09-23 01:37:37 UTC (rev 711) @@ -595,4 +595,42 @@ "Banner", // 586 "Elven Ghost", // 587 "Human Ghost", // 588 + "Chest", // 589 + "Chest", // 590 + "Crystal", // 591 + "Coffin", // 592 + "Guardian CPU", // 593 + "Worg", // 594 + "Mansion", // 595 + "Floating Island", // 596 + "Cragslither", // 597 + "Wrulon", // 598 + "UNKNOWN RACE", // 599 + "UNKNOWN RACE", // 600 + "UNKNOWN RACE", // 601 + "Burynai", // 602 + "Frog", // 603 + "Dracolich", // 604 + "Iksar Ghost", // 605 + "Iksar Skeleton", // 606 + "Mephit", // 607 + "Muddite", // 608 + "Raptor", // 609 + "Sarnak", // 610 + "Scorpion", // 611 + "Tsetsian", // 612 + "Wurm", // 613 + "Balrog", // 614 + "Hydra Crystal", // 615 + "Crystal Sphere", // 616 + "Gnoll", // 617 + "Sokokar", // 618 + "Stone Pylon", // 619 + "Demon Vulture", // 620 + "Wagon", // 621 + "God of Discord", // 622 + "Wrulon Mount", // 623 + "UNKNOWN RACE", // 624 + "Sokokar Mount", // 625 + "UNKNOWN RACE", // 626 #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-16 18:11:19
|
Revision: 710 http://seq.svn.sourceforge.net/seq/?rev=710&view=rev Author: ieatacid Date: 2008-09-17 01:11:16 +0000 (Wed, 17 Sep 2008) Log Message: ----------- Tag for release 5.12.5.1 Added Paths: ----------- showeq/tags/v5_12_5_1/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-16 18:09:59
|
Revision: 709 http://seq.svn.sourceforge.net/seq/?rev=709&view=rev Author: ieatacid Date: 2008-09-17 01:09:55 +0000 (Wed, 17 Sep 2008) Log Message: ----------- ieatacid (9/16/08) ---------------- - Updated version to 5.12.5.1 - Fixed problem with your player remaining a corpse after respawning in the same zone you died in - Added zones from the upcoming Seeds of Destruction expansion to zones.h - Fixed pcap_perror warnings in packetcapture.cpp Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/interface.cpp showeq/trunk/src/packetcapture.cpp showeq/trunk/src/player.cpp showeq/trunk/src/player.h showeq/trunk/src/spawnshell.cpp showeq/trunk/src/spawnshell.h showeq/trunk/src/zones.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/ChangeLog 2008-09-17 01:09:55 UTC (rev 709) @@ -1,6 +1,12 @@ -Version: $Id$ $Name$ +ieatacid (9/16/08) +---------------- +- Updated version to 5.12.5.1 +- Fixed problem with your player remaining a corpse after respawning in the same zone you died in +- Added zones from the upcoming Seeds of Destruction expansion to zones.h +- Fixed pcap_perror warnings in packetcapture.cpp ieatacid (9/8/08) +---------------- - Updated version to 5.12.5.0 - Updated/added opcodes where necessary - Updated/added/removed code to handle how group member data is sent now Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/conf/zoneopcodes.xml 2008-09-17 01:09:55 UTC (rev 709) @@ -83,7 +83,7 @@ </opcode> <opcode id="72ad" name="OP_RespawnFromHover" updated="01/17/08"> <comment>Server telling client that it is coming back from hover death</comment> - <payload dir="server" typename="uint8_t" sizechecktype="none"/> + <payload dir="both" typename="uint8_t" sizechecktype="none"/> </opcode> <opcode id="231F" name="OP_WearChange" updated="01/17/08"> <comment>old SpawnUpdateCode</comment> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/configure.in 2008-09-17 01:09:55 UTC (rev 709) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.5.0) +AC_INIT(showeq, 5.12.5.1) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/interface.cpp 2008-09-17 01:09:55 UTC (rev 709) @@ -1976,12 +1976,12 @@ m_packet->connect2("OP_Death", SP_Zone, DIR_Server, "newCorpseStruct", SZC_Match, m_spawnShell, SLOT(killSpawn(const uint8_t*))); - m_packet->connect2("OP_RespawnFromHover", SP_Zone, DIR_Server, + m_packet->connect2("OP_RespawnFromHover", SP_Zone, DIR_Server|DIR_Client, "uint8_t", SZC_None, - m_spawnShell, SLOT(respawnFromHover(const uint8_t*))); + m_spawnShell, SLOT(respawnFromHover(const uint8_t*, size_t, uint8_t))); m_packet->connect2("OP_Shroud", SP_Zone, DIR_Server, - "spawnShroudSelf", SZC_None, - m_spawnShell, SLOT(shroudSpawn(const uint8_t*, size_t, uint8_t))); + "spawnShroudSelf", SZC_None, + m_spawnShell, SLOT(shroudSpawn(const uint8_t*, size_t, uint8_t))); m_packet->connect2("OP_RemoveSpawn", SP_Zone, DIR_Server|DIR_Client, "removeSpawnStruct", SZC_None, m_spawnShell, SLOT(removeSpawn(const uint8_t*, size_t, uint8_t))); Modified: showeq/trunk/src/packetcapture.cpp =================================================================== --- showeq/trunk/src/packetcapture.cpp 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/packetcapture.cpp 2008-09-17 01:09:55 UTC (rev 709) @@ -173,13 +173,13 @@ if (pcap_compile(m_pcache_pcap, &bpp, filter_buf, 1, net) == -1) { - pcap_perror (m_pcache_pcap, "pcap_error:pcap_compile"); + pcap_perror (m_pcache_pcap, (char*)"pcap_error:pcap_compile"); exit(0); } if (pcap_setfilter (m_pcache_pcap, &bpp) == -1) { - pcap_perror (m_pcache_pcap, "pcap_error:pcap_setfilter"); + pcap_perror (m_pcache_pcap, (char*)"pcap_error:pcap_setfilter"); exit(0); } @@ -483,13 +483,13 @@ if (pcap_compile (m_pcache_pcap, &bpp, filter_buf, 1, net) == -1) { seqWarn("%s",filter_buf); - pcap_perror(m_pcache_pcap, "pcap_error:pcap_compile_error"); + pcap_perror(m_pcache_pcap, (char*)"pcap_error:pcap_compile_error"); exit(0); } if (pcap_setfilter (m_pcache_pcap, &bpp) == -1) { - pcap_perror(m_pcache_pcap, "pcap_error:pcap_setfilter_error"); + pcap_perror(m_pcache_pcap, (char*)"pcap_error:pcap_setfilter_error"); exit (0); } Modified: showeq/trunk/src/player.cpp =================================================================== --- showeq/trunk/src/player.cpp 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/player.cpp 2008-09-17 01:09:55 UTC (rev 709) @@ -23,7 +23,7 @@ #include <qdatastream.h> -#define DEBUG_PLAYER +// #define DEBUG_PLAYER //---------------------------------------------------------------------- // constants @@ -348,6 +348,7 @@ setTypeflag(1); Spawn::setName(player->name); + setRealName(player->name); // if it's got a last name add it setLastName(player->lastName); Modified: showeq/trunk/src/player.h =================================================================== --- showeq/trunk/src/player.h 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/player.h 2008-09-17 01:09:55 UTC (rev 709) @@ -95,6 +95,8 @@ uint16_t defaultDeity() const { return m_defaultDeity; } uint16_t defaultRace() const { return m_defaultRace; } uint8_t defaultClass() const { return m_defaultClass; } + QString realName() const { return m_realName; } + void setRealName(const QString& name) { m_realName = name; } virtual void killSpawn(); @@ -202,6 +204,7 @@ // We keep a second copy in case the player levels while playing. QString m_defaultName; QString m_defaultLastName; + QString m_realName; uint16_t m_mana; uint16_t m_defaultRace; uint16_t m_defaultDeity; Modified: showeq/trunk/src/spawnshell.cpp =================================================================== --- showeq/trunk/src/spawnshell.cpp 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/spawnshell.cpp 2008-09-17 01:09:55 UTC (rev 709) @@ -648,15 +648,15 @@ fillSpawnStruct(spawn,data,len,true); -#ifdef SPAWNSHELL_DIAG + #ifdef SPAWNSHELL_DIAG seqDebug("SpawnShell::zoneEntry(spawnStruct *(name='%s'))", spawn->name); -#endif + #endif Item *item; - if(!strcmp(spawn->name,m_player->name())) + if(!strcmp(spawn->name,m_player->realName())) { - // Multiple zoneEntry packets are received for your spawn after you zone. + // Multiple zoneEntry packets are received for your spawn after you zone m_player->update(spawn); emit changeItem(m_player, tSpawnChangedALL); } @@ -1382,10 +1382,12 @@ } } -void SpawnShell::respawnFromHover(const uint8_t* data) +void SpawnShell::respawnFromHover(const uint8_t* data, size_t len, uint8_t dir) { + if(dir != DIR_Client) + return; #ifdef SPAWNSHELL_DIAG - seqDebug("SpawnShell::respawnFromHover()"); + seqDebug("SpawnShell::respawnFromHover()"); #endif // Our old player is a corpse, but we're rising from the dead. So Modified: showeq/trunk/src/spawnshell.h =================================================================== --- showeq/trunk/src/spawnshell.h 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/spawnshell.h 2008-09-17 01:09:55 UTC (rev 709) @@ -125,7 +125,7 @@ void removeSpawn(const uint8_t* rmSpawn, size_t len, uint8_t dir); void deleteSpawn(const uint8_t* delSpawn); void killSpawn(const uint8_t* deadspawn); - void respawnFromHover(const uint8_t* respawn); + void respawnFromHover(const uint8_t* respawn, size_t len, uint8_t dir); void corpseLoc(const uint8_t* corpseLoc); void playerChangedID(uint16_t playerID); Modified: showeq/trunk/src/zones.h =================================================================== --- showeq/trunk/src/zones.h 2008-09-09 01:25:14 UTC (rev 708) +++ showeq/trunk/src/zones.h 2008-09-17 01:09:55 UTC (rev 709) @@ -457,34 +457,34 @@ { "guardian", "The Mechamatic Guardian" }, // 447 { "steamfontmts", "Steamfont Mountains" }, // 448 { "cryptofshade", "Crypt of Shade" }, // 449 -{ NULL, NULL }, // 450 -{ NULL, NULL }, // 451 -{ NULL, NULL }, // 452 -{ NULL, NULL }, // 453 -{ NULL, NULL }, // 454 -{ NULL, NULL }, // 455 -{ NULL, NULL }, // 456 -{ NULL, NULL }, // 457 -{ NULL, NULL }, // 458 -{ NULL, NULL }, // 459 -{ NULL, NULL }, // 460 -{ NULL, NULL }, // 461 -{ NULL, NULL }, // 462 -{ NULL, NULL }, // 463 -{ NULL, NULL }, // 464 -{ NULL, NULL }, // 465 -{ NULL, NULL }, // 466 -{ NULL, NULL }, // 467 -{ NULL, NULL }, // 468 -{ NULL, NULL }, // 469 -{ NULL, NULL }, // 470 -{ NULL, NULL }, // 471 -{ NULL, NULL }, // 472 -{ NULL, NULL }, // 473 -{ NULL, NULL }, // 474 -{ NULL, NULL }, // 475 -{ NULL, NULL }, // 476 -{ NULL, NULL }, // 477 +{ "Tinmizer's Wunderwerks", "dragonscalea" }, // 450 +{ "Deepscar's Den", "dragonscaleb" }, // 451 +{ "Field of Scale", "oldfieldofbone" }, // 452 +{ "Kaesora Library", "oldkaesoraa" }, // 453 +{ "Hatchery Wing", "oldkaesorab" }, // 454 +{ "Kurn's Tower", "oldkurn" }, // 455 +{ "Bloody Kithicor", "oldkithicor" }, // 456 +{ "Old Commonlands", "oldcommons" }, // 457 +{ "Highpass Hold", "oldhighpass" }, // 458 +{ "The Void", "thevoida" }, // 459 +{ "The Void", "thevoidb" }, // 460 +{ "The Void", "thevoidc" }, // 461 +{ "The Void", "thevoidd" }, // 462 +{ "The Void", "thevoide" }, // 463 +{ "The Void", "thevoidf" }, // 464 +{ "The Void", "thevoidg" }, // 465 +{ "Oceangreen Hills", "oceangreenhills" }, // 466 +{ "Oceangreen Village", "oceangreenvillage" }, // 467 +{ "Blackburrow", "oldblackburrow" }, // 468 +{ "Temple of Bertoxxulous", "bertoxtemple" }, // 469 +{ "Korafax, Home of the Riders", "discord" }, // 470 +{ "Citadel of the Worldslayer", "discordtower" }, // 471 +{ "Old Bloodfields", "oldbloodfield" }, // 472 +{ "The Precipice of War", "precipiceofwar" }, // 473 +{ "City of Dranik", "olddranik" }, // 474 +{ "Toskirakk", "toskirakk" }, // 475 +{ "Korascian Warrens", "korascian" }, // 476 +{ "Rathe Council Chambers", "rathechamber" }, // 477 { NULL, NULL }, // 478 { NULL, NULL }, // 479 { NULL, NULL }, // 480 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-09 01:25:20
|
Revision: 708 http://seq.svn.sourceforge.net/seq/?rev=708&view=rev Author: ieatacid Date: 2008-09-09 01:25:14 +0000 (Tue, 09 Sep 2008) Log Message: ----------- Tag for release 5.12.5.2 Added Paths: ----------- showeq/tags/v5_12_5_0/ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-09-09 01:23:27
|
Revision: 707 http://seq.svn.sourceforge.net/seq/?rev=707&view=rev Author: ieatacid Date: 2008-09-09 01:23:23 +0000 (Tue, 09 Sep 2008) Log Message: ----------- + Updated version to 5.12.5.0 + Updated/added opcodes where necessary + Updated/added/removed code to handle how group member data is sent now + Added more item codes from uRit1u2CBBA Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/showeq.kdevelop showeq/trunk/src/everquest.h showeq/trunk/src/group.cpp showeq/trunk/src/group.h showeq/trunk/src/interface.cpp showeq/trunk/src/messageshell.cpp showeq/trunk/src/messageshell.h showeq/trunk/src/player.cpp showeq/trunk/src/s_everquest.h showeq/trunk/src/spawnshell.cpp showeq/trunk/src/weapons2b.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/ChangeLog 2008-09-09 01:23:23 UTC (rev 707) @@ -1,5 +1,11 @@ Version: $Id$ $Name$ +ieatacid (9/8/08) +- Updated version to 5.12.5.0 +- Updated/added opcodes where necessary +- Updated/added/removed code to handle how group member data is sent now +- Added more item codes from uRit1u2CBBA + ieatacid (6/21/08) ---------------- + Updated version to 5.12.4.2 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/conf/zoneopcodes.xml 2008-09-09 01:23:23 UTC (rev 707) @@ -142,29 +142,43 @@ <comment>old ZoneChangeCode</comment> <payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/> </opcode> - <opcode id="5F51" name="OP_GroupInvite" updated="01/17/08"> - <payload dir="both" typename="groupInviteStruct" sizechecktype="match"/> - <payload dir="both" typename="groupAltInviteStruct" sizechecktype="match"/> - <comment></comment> + <opcode id="5f51" name="OP_GroupInvite" updated="09/03/08"> + <payload dir="client" typename="groupInviteStruct" sizechecktype="match"/> + <payload dir="server" typename="groupAltInviteStruct" sizechecktype="match"/> + <comment>You're inviting someone and you're not grouped</comment> </opcode> + <opcode id="548c" name="OP_GroupInvite2" updated="09/03/08"> + <payload dir="client" typename="groupInviteStruct" sizechecktype="match"/> + <comment>You're inviting someone and you are grouped</comment> + </opcode> <opcode id="5251" name="OP_GroupCancelInvite" updated="01/17/08"> <payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/> <comment>Declining to join a group</comment> </opcode> - <opcode id="2736" name="OP_GroupFollow" updated="01/17/08"> - <payload dir="both" typename="groupFollowStruct" sizechecktype="match"/> - <payload dir="both" typename="groupAltFollowStruct" sizechecktype="match"/> - <comment>Accepting to join a group</comment> + <opcode id="1842" name="OP_GroupFollow" updated="09/03/08"> + <payload dir="server" typename="groupFollowStruct" sizechecktype="match"/> + <comment>You join a group</comment> </opcode> - <opcode id="4B61" name="OP_GroupUpdate" updated="01/17/08"> - <payload dir="server" typename="groupFullUpdateStruct" sizechecktype="match"/> - <payload dir="server" typename="groupUpdateStruct" sizechecktype="match"/> - <comment></comment> + <!--<opcode id="1842" name="OP_GroupFollow2" updated="09/03/08"> + <payload dir="server" typename="groupAltFollowStruct" sizechecktype="match"/> + <comment>Player joins your group</comment> + </opcode>--> + <opcode id="4036" name="OP_GroupUpdate" updated="09/03/08"> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> + <comment>Variable length packet with group member names</comment> </opcode> - <opcode id="47E7" name="OP_GroupDisband" updated="01/17/08"> - <comment>Disband from group</comment> - <payload dir="both" typename="groupDisbandStruct" sizechecktype="match"/> + <opcode id="7545" name="OP_GroupDisband" updated="09/03/08"> + <comment>You disband from group</comment> + <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> </opcode> + <opcode id="16be" name="OP_GroupDisband2" updated="09/03/08"> + <comment>Other disbands from group</comment> + <payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/> + </opcode> + <opcode id="1560" name="OP_GroupLeader" updated="09/03/08"> + <comment>Group leader change</comment> + <payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/> + </opcode> <opcode id="7EA8" name="OP_Buff" updated="01/17/08"> <comment>old BuffDropCode</comment> <payload dir="both" typename="buffStruct" sizechecktype="match"/> @@ -796,4 +810,4 @@ <comment></comment> </opcode> --> -</seqopcodes> \ No newline at end of file +</seqopcodes> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/configure.in 2008-09-09 01:23:23 UTC (rev 707) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.4.2) +AC_INIT(showeq, 5.12.5.0) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/showeq.kdevelop =================================================================== --- showeq/trunk/showeq.kdevelop 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/showeq.kdevelop 2008-09-09 01:23:23 UTC (rev 707) @@ -192,10 +192,10 @@ <used>false</used> <version>3</version> <includestyle>3</includestyle> - <root>/usr/lib/qt-3.3</root> + <root>/usr/share/qt3</root> <designerintegration>EmbeddedKDevDesigner</designerintegration> - <qmake>/usr/lib/qt-3.3/bin/qmake</qmake> - <designer>/usr/lib/qt-3.3/bin/designer</designer> + <qmake>/usr/bin/qmake-qt3</qmake> + <designer></designer> <designerpluginpaths/> </qt> </kdevcppsupport> Modified: showeq/trunk/src/everquest.h =================================================================== --- showeq/trunk/src/everquest.h 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/everquest.h 2008-09-09 01:23:23 UTC (rev 707) @@ -603,7 +603,8 @@ /*0908*/ uint8_t unknown0904[8]; // *** Placeholder (02/13/2007) /*0916*/ uint8_t unknown0916[4]; // *** Placeholder (11/24/2007) /*0920*/ uint8_t unknown0920[4]; // *** Placeholder (01/17/2008) -/*0924*/ +/*0924*/ uint8_t unknown0924[4]; // *** Placeholder (09/03/2008) +/*0928*/ }; /** @@ -724,10 +725,10 @@ /*16116*/ uint8_t unknown16116[16]; /*16132*/ uint16_t zoneId; // see zones.h /*16134*/ uint16_t zoneInstance; // Instance id -/*16136*/ char groupMembers[MAX_GROUP_MEMBERS][64];// all the members in group, including self -/*16520*/ char groupLeader[64]; // Leader of the group ? -/*16584*/ uint8_t unknown16584[792]; -/*17376*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on +/*16136*/ //char groupMembers[MAX_GROUP_MEMBERS][64]; // removed 9/3/2008 +/*16520*/ //char groupLeader[64]; // removed 9/3/2008 +/*16136*/ uint8_t unknown16136[800]; +/*16936*/ uint32_t leadAAActive; // 0 = leader AA off, 1 = leader AA on /*17380*/ uint8_t unknown17380[4]; /*17384*/ uint32_t ldon_guk_points; // Earned GUK points /*17388*/ uint32_t ldon_mir_points; // Earned MIR points @@ -1638,12 +1639,13 @@ /*0000*/ int32_t action; // Group update action /*0004*/ char yourname[64]; // Group Member Names /*0068*/ char membername[64]; // Group leader name -/*0132*/ uint8_t unknown0132[320]; // ***Placeholder -/*452*/ +/*0132*/ uint8_t unknown0132[324]; // ***Placeholder +/*456*/ }; /* +** DEPRECATED ** Grouping Infromation ** Length: 768 Octets ** OpCode: OP_GroupUpdate @@ -1660,7 +1662,7 @@ /* ** Grouping Invite -** Length 128 Octets (or 132 sometimes) +** Length 140 Octets (invite a player) or 144 (you get invited) ** Opcode OP_GroupInvite */ @@ -1668,20 +1670,21 @@ { /*0000*/ char invitee[64]; // Invitee's Name /*0064*/ char inviter[64]; // Inviter's Name -/*0128*/ +/*0128*/ uint8_t unknown0128[12]; // ***Placeholder +/*0140*/ }; -// Sometimes there's an extra byte on the end... + struct groupAltInviteStruct { /*0000*/ char invitee[64]; // Invitee's Name /*0064*/ char inviter[64]; // Inviter's Name -/*0128*/ uint8_t unknown0132[4]; // ***Placeholder (not always there) -/*0132*/ +/*0128*/ uint8_t unknown0132[16]; // ***Placeholder +/*0144*/ }; /* ** Grouping Invite Answer - Decline -** Length 129 Octets +** Length 144 Octets ** Opcode GroupDeclineCode */ @@ -1689,34 +1692,31 @@ { /*0000*/ char yourname[64]; // Player Name /*0064*/ char membername[64]; // Invited Member Name -/*0128*/ uint8_t reason; // Already in Group = 1, Declined Invite = 3 -/*0129*/ +/*0128*/ uint8_t unknown0128[12]; // ***Placeholder +/*0140*/ uint8_t reason; // Already in Group = 1, Declined Invite = 3 +/*0141*/ uint8_t unknown0141[3]; // ***Placeholder +/*0144*/ }; /* ** Grouping Invite Answer - Accept -** Length 128 Octets (or sometimes 132) +** Length 140 Octets ** Opcode OP_GroupFollow */ struct groupFollowStruct { -/*0000*/ char inviter[64]; // Inviter's Name +/*0000*/ char unknown0000[64]; // ***Placeholder (zeros) /*0064*/ char invitee[64]; // Invitee's Member Name -/*0128*/ +/*0128*/ uint8_t unknown0132[4]; // ***Placeholder +/*0132*/ uint32_t level; // Invitee's level +/*0136*/ uint8_t unknown0136[4]; // ***Placeholder (zeros) +/*0140*/ }; -// Sometimes there's an extra 4 bytes on the end -struct groupAltFollowStruct -{ -/*0000*/ char inviter[64]; // Inviter's Name -/*0064*/ char invitee[64]; // Invitee's Member Name -/*0128*/ uint8_t unknown0132[4]; // ***Placeholder (not always there) -/*0132*/ -}; /* ** Group Disbanding -** Length 128 Octets +** Length 140 Octets ** Opcode */ @@ -1724,10 +1724,24 @@ { /*0000*/ char yourname[64]; // Player Name /*0064*/ char membername[64]; // Invited Member Name -/*0128*/ +/*0128*/ uint8_t unknown0128[12]; // ***Placeholder +/*0140*/ }; +/* +** Group Leader Change +** Length 140 Octets +** Opcode OP_GroupLeader +*/ +struct groupLeaderChangeStruct +{ +/*0000*/ char unknown0000[64]; // ***Placeholder +/*0064*/ char membername[64]; // Invited Member Name +/*0128*/ uint8_t unknown0128[12]; // ***Placeholder +/*0140*/ +}; + /* ** Delete Self ** Length: 4 Octets Modified: showeq/trunk/src/group.cpp =================================================================== --- showeq/trunk/src/group.cpp 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/group.cpp 2008-09-09 01:23:23 UTC (rev 707) @@ -13,6 +13,7 @@ #include "spawnshell.h" #include "everquest.h" #include "diagnosticmessages.h" +#include "netstream.h" GroupMgr::GroupMgr(SpawnShell* spawnShell, Player* player, @@ -41,6 +42,8 @@ } } +// 9/3/2008 - Not used. Group data is no longer sent in charProfile +#if 0 void GroupMgr::player(const charProfileStruct* player) { // reset counters @@ -52,7 +55,8 @@ // initialize the array of members with information from the player profile for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { - m_members[i]->m_name = player->groupMembers[i]; +// so it compiles +// m_members[i]->m_name = player->groupMembers[i]; if (!m_members[i]->m_name.isEmpty()) m_memberCount++; @@ -62,125 +66,134 @@ else { m_members[i]->m_spawn = (const Spawn*)m_player; - + m_membersInZoneCount++; } emit added(m_members[i]->m_name, m_members[i]->m_spawn); } } - +#endif + void GroupMgr::groupUpdate(const uint8_t* data, size_t size) { - const groupUpdateStruct* gupdate = 0; - const groupFullUpdateStruct* gfupdate = 0; + // it's a variable-length packet depending on number of group members and length of names + NetStream netStream(data, size); + uint32_t memCount, memNumber, level; + QString name; - if (size == sizeof(groupFullUpdateStruct)) - { - // got a full group update packet - gfupdate = (const groupFullUpdateStruct*)data; + netStream.skipBytes(4); - // what action is this? - if (gfupdate->action == GUA_FullGroupInfo) - { - // reset counters - m_memberCount = 0; - m_membersInZoneCount = 0; + // number of group members + memCount = netStream.readUInt32NC(); - emit cleared(); + // leader name + name = netStream.readText(); - // ok, this is a full update of all group member information - for (int i = 0; i < MAX_GROUP_MEMBERS; i++) - { - // copy the member name - m_members[i]->m_name = gfupdate->membernames[i]; + // reset counters + m_memberCount = 0; + m_membersInZoneCount = 0; - // if their is a member, increment the member count - if (!m_members[i]->m_name.isEmpty()) - m_memberCount++; + emit cleared(); - // attempt to retrieve the members spawn - m_members[i]->m_spawn = - m_spawnShell->findSpawnByName(m_members[i]->m_name); + // update group member information + for(uint32_t i = 0; i < memCount; i++) + { + memNumber = netStream.readUInt32NC(); + name = netStream.readText(); + netStream.skipBytes(3); + level = netStream.readUInt32NC(); - // incremement the spawn count - if (m_members[i]->m_spawn) - m_membersInZoneCount++; + // copy the member name + m_members[i]->m_name = name; - emit added(m_members[i]->m_name, m_members[i]->m_spawn); - } - } + // increment the member count + m_memberCount++; + + // attempt to retrieve the members spawn + m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); + + // incremement the spawn count + if (m_members[i]->m_spawn) + m_membersInZoneCount++; + + emit added(m_members[i]->m_name, m_members[i]->m_spawn); } - else + + // clear the rest + for(uint32_t i = memCount; i < MAX_GROUP_MEMBERS; i++) { - gupdate = (const groupUpdateStruct*)data; + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; + } - switch (gupdate->action) - { - case GUA_Started: - case GUA_Joined: - // iterate over all the slots until an empty one is found - for (int i = 0; i < MAX_GROUP_MEMBERS; i++) +// for debugging +#if 0 + for(uint32_t i = 0; i < MAX_GROUP_MEMBERS; i++) + { + if(!m_members[i]->m_name.isEmpty()) + seqDebug("GroupMgr::groupUpdate '%s'", m_members[i]->m_name.latin1()); + } +#endif +} + +void GroupMgr::addGroupMember(const uint8_t* data) +{ + const groupFollowStruct* gmem = (const groupFollowStruct*)data; + + for (int i = 0; i < MAX_GROUP_MEMBERS; i++) + { + if (m_members[i]->m_name.isEmpty()) { - if (m_members[i]->m_name.isEmpty()) - { - // copy the member name - m_members[i]->m_name = gupdate->membername; - - // if their is a member, increment the member count - if (!m_members[i]->m_name.isEmpty()) - m_memberCount++; - - // attempt to retrieve the members spawn - m_members[i]->m_spawn = - m_spawnShell->findSpawnByName(m_members[i]->m_name); - - // incremement the spawn count - if (m_members[i]->m_spawn) - m_membersInZoneCount++; + // copy the member name + m_members[i]->m_name = gmem->invitee; - // signal the addition - emit added(m_members[i]->m_name, m_members[i]->m_spawn); + // if there is a member, increment the member count + if (!m_members[i]->m_name.isEmpty()) + m_memberCount++; - // added it, so break - break; - } + // attempt to retrieve the member's spawn + m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); + + // incremement the spawn count + if (m_members[i]->m_spawn) + m_membersInZoneCount++; + + // signal the addition + emit added(m_members[i]->m_name, m_members[i]->m_spawn); + + // added it, so break + break; } - break; - case GUA_Left: - // iterate over all the slots until the member is found - for (int i = 0; i < MAX_GROUP_MEMBERS; i++) + } +} + +void GroupMgr::removeGroupMember(const uint8_t* data) +{ + const groupDisbandStruct* gmem = (const groupDisbandStruct*)data; + + for (int i = 0; i < MAX_GROUP_MEMBERS; i++) + { + // is this the member? + if (m_members[i]->m_name == gmem->membername) { - // is this the member? - if (m_members[i]->m_name == gupdate->membername) - { - // yes, announce its removal - emit removed(m_members[i]->m_name, m_members[i]->m_spawn); + // yes, announce its removal + emit removed(m_members[i]->m_name, m_members[i]->m_spawn); - // clear it - m_members[i]->m_name = ""; - m_members[i]->m_spawn = 0; - break; - } - } - break; - case GUA_LastLeft: - // reset counters - m_memberCount = 0; - m_membersInZoneCount = 0; + // decrement member count + m_memberCount--; - // iterate over all the member slots and clear them - for (int i = 0; i < MAX_GROUP_MEMBERS; i++) - { - // clear the member - m_members[i]->m_name = ""; - m_members[i]->m_spawn = 0; + // if the member is in zone decrement zone count + m_members[i]->m_spawn = m_spawnShell->findSpawnByName(m_members[i]->m_name); + if(m_members[i]->m_spawn) + m_membersInZoneCount--; + + // clear it + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; + break; } - - emit cleared(); - break; - } - } + } } void GroupMgr::addItem(const Item* item) Modified: showeq/trunk/src/group.h =================================================================== --- showeq/trunk/src/group.h 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/group.h 2008-09-09 01:23:23 UTC (rev 707) @@ -43,8 +43,10 @@ unsigned long totalLevels(); public slots: - void player(const charProfileStruct* player); +// void player(const charProfileStruct* player); void groupUpdate(const uint8_t* data, size_t size); + void addGroupMember(const uint8_t* data); + void removeGroupMember(const uint8_t* data); void addItem(const Item* item); void delItem(const Item* item); void killSpawn(const Item* item); Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/interface.cpp 2008-09-09 01:23:23 UTC (rev 707) @@ -1652,14 +1652,25 @@ if (m_groupMgr != 0) { - connect(m_zoneMgr, SIGNAL(playerProfile(const charProfileStruct*)), - m_groupMgr, SLOT(player(const charProfileStruct*))); +// 9/3/2008 - Group data is no longer sent in charProfile +// connect(m_zoneMgr, SIGNAL(playerProfile(const charProfileStruct*)), +// m_groupMgr, SLOT(player(const charProfileStruct*))); + //remove this +// m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, +// "groupUpdateStruct", SZC_None, +// m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, - "groupUpdateStruct", SZC_Match, - m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); - m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, - "groupFullUpdateStruct", SZC_Match, - m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); + "uint8_t", SZC_None, + m_groupMgr, SLOT(groupUpdate(const uint8_t*, size_t))); + m_packet->connect2("OP_GroupFollow", SP_Zone, DIR_Server, + "groupFollowStruct", SZC_Match, + m_groupMgr, SLOT(addGroupMember(const uint8_t*))); + m_packet->connect2("OP_GroupDisband", SP_Zone, DIR_Server, + "groupDisbandStruct", SZC_Match, + m_groupMgr, SLOT(removeGroupMember(const uint8_t*))); + m_packet->connect2("OP_GroupDisband2", SP_Zone, DIR_Server, + "groupDisbandStruct", SZC_Match, + m_groupMgr, SLOT(removeGroupMember(const uint8_t*))); // connect GroupMgr slots to SpawnShell signals connect(m_spawnShell, SIGNAL(addItem(const Item*)), m_groupMgr, SLOT(addItem(const Item*))); @@ -1832,25 +1843,34 @@ connect(m_dateTimeMgr, SIGNAL(syncDateTime(const QDateTime&)), m_messageShell, SLOT(syncDateTime(const QDateTime&))); - m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, - "groupUpdateStruct", SZC_Match, - m_messageShell, SLOT(groupUpdate(const uint8_t*, size_t, uint8_t))); - m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, - "groupFullUpdateStruct", SZC_Match, - m_messageShell, SLOT(groupUpdate(const uint8_t*, size_t, uint8_t))); - m_packet->connect2("OP_GroupInvite", SP_Zone, DIR_Server|DIR_Client, +// 9/3/2008 - Removed. Serialized packet now. +// m_packet->connect2("OP_GroupUpdate", SP_Zone, DIR_Server, +// "groupUpdateStruct", SZC_None, +// m_messageShell, SLOT(groupUpdate(const uint8_t*, size_t, uint8_t))); + m_packet->connect2("OP_GroupInvite", SP_Zone, DIR_Client, "groupInviteStruct", SZC_Match, m_messageShell, SLOT(groupInvite(const uint8_t*))); - m_packet->connect2("OP_GroupFollow", SP_Zone, DIR_Server|DIR_Client, + m_packet->connect2("OP_GroupInvite", SP_Zone, DIR_Server, + "groupAltInviteStruct", SZC_Match, + m_messageShell, SLOT(groupInvite(const uint8_t*))); + m_packet->connect2("OP_GroupInvite2", SP_Zone, DIR_Client, + "groupInviteStruct", SZC_Match, + m_messageShell, SLOT(groupInvite(const uint8_t*))); + m_packet->connect2("OP_GroupFollow", SP_Zone, DIR_Server, "groupFollowStruct", SZC_Match, - m_messageShell, SLOT(groupFollow(const uint8_t*))); + m_messageShell, SLOT(groupFollow(const uint8_t*))); m_packet->connect2("OP_GroupDisband", SP_Zone, DIR_Server, "groupDisbandStruct", SZC_Match, - m_messageShell, SLOT(groupDisband(const uint8_t*, size_t, uint8_t))); - + m_messageShell, SLOT(groupDisband(const uint8_t*))); + m_packet->connect2("OP_GroupDisband2", SP_Zone, DIR_Server, + "groupDisbandStruct", SZC_Match, + m_messageShell, SLOT(groupDisband(const uint8_t*))); m_packet->connect2("OP_GroupCancelInvite", SP_Zone, DIR_Server|DIR_Client, "groupDeclineStruct", SZC_Match, m_messageShell, SLOT(groupDecline(const uint8_t*))); + m_packet->connect2("OP_GroupLeader", SP_Zone, DIR_Server, + "groupLeaderChangeStruct", SZC_Match, + m_messageShell, SLOT(groupLeaderChange(const uint8_t*))); } if (m_filterNotifications) Modified: showeq/trunk/src/messageshell.cpp =================================================================== --- showeq/trunk/src/messageshell.cpp 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/messageshell.cpp 2008-09-09 01:23:23 UTC (rev 707) @@ -24,8 +24,8 @@ // MessageShell MessageShell::MessageShell(Messages* messages, EQStr* eqStrings, Spells* spells, ZoneMgr* zoneMgr, - SpawnShell* spawnShell, Player* player, - QObject* parent, const char* name) + SpawnShell* spawnShell, Player* player, + QObject* parent, const char* name) : QObject(parent, name), m_messages(messages), m_eqStrings(eqStrings), @@ -605,7 +605,7 @@ m_messages->addMessage(MT_Spell, tempStr); } - +// 9/30/2008 - no longer used. Group info is sent differently now void MessageShell::groupUpdate(const uint8_t* data, size_t size, uint8_t dir) { if (size != sizeof(groupUpdateStruct)) @@ -613,6 +613,7 @@ // Ignore groupFullUpdateStruct return; } + return; const groupUpdateStruct* gmem = (const groupUpdateStruct*)data; QString tempStr; @@ -656,28 +657,51 @@ { const groupDeclineStruct* gmem = (const groupDeclineStruct*)data; QString tempStr; - tempStr.sprintf("Invite: %s declines invite from %s (%i)", - gmem->membername, gmem->yourname, gmem->reason); + switch(gmem->reason) + { + case 1: + tempStr.sprintf("Invite: %s declines invite from %s (player is grouped)", + gmem->membername, gmem->yourname); + break; + case 3: + tempStr.sprintf("Invite: %s declines invite from %s", + gmem->membername, gmem->yourname); + break; + default: + tempStr.sprintf("Invite: %s declines invite from %s (unknown reason: %i)", + gmem->membername, gmem->yourname, gmem->reason); + break; + } m_messages->addMessage(MT_Group, tempStr); } void MessageShell::groupFollow(const uint8_t* data) { - const groupFollowStruct* gmem = (const groupFollowStruct*)data; + const groupFollowStruct* gFollow = (const groupFollowStruct*)data; QString tempStr; - tempStr.sprintf("Follow: %s accepts invite from %s", - gmem->invitee, gmem->inviter); + + tempStr.sprintf("Follow: %s has joined the group", gFollow->invitee); m_messages->addMessage(MT_Group, tempStr); } -void MessageShell::groupDisband(const uint8_t* data, size_t, uint8_t dir) +void MessageShell::groupDisband(const uint8_t* data) { const groupDisbandStruct* gmem = (const groupDisbandStruct*)data; QString tempStr; + tempStr.sprintf ("Disband: %s disbands from the group", gmem->membername); m_messages->addMessage(MT_Group, tempStr); } +void MessageShell::groupLeaderChange(const uint8_t* data) +{ + const groupLeaderChangeStruct *gmem = (const groupLeaderChangeStruct*)data; + QString tempStr; + tempStr.sprintf("Update: %s is now the leader of the group", + gmem->membername); + m_messages->addMessage(MT_Group, tempStr); +} + void MessageShell::player(const charProfileStruct* player) { QString message; @@ -731,13 +755,14 @@ m_messages->addMessage(MT_Player, message); #endif - message.sprintf("Group: %s %s %s %s %s %s", player->groupMembers[0], - player->groupMembers[1], - player->groupMembers[2], - player->groupMembers[3], - player->groupMembers[4], - player->groupMembers[5]); - m_messages->addMessage(MT_Player, message); +// 09/03/2008 patch - this is no longer sent in charProfile +// message.sprintf("Group: %s %s %s %s %s %s", player->groupMembers[0], +// player->groupMembers[1], +// player->groupMembers[2], +// player->groupMembers[3], +// player->groupMembers[4], +// player->groupMembers[5]); +// m_messages->addMessage(MT_Player, message); int buffnumber; for (buffnumber=0;buffnumber<MAX_BUFFS;buffnumber++) Modified: showeq/trunk/src/messageshell.h =================================================================== --- showeq/trunk/src/messageshell.h 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/messageshell.h 2008-09-09 01:23:23 UTC (rev 707) @@ -41,9 +41,8 @@ Q_OBJECT public: MessageShell(Messages* messages, EQStr* eqStrings, Spells* spells, - ZoneMgr* zoneMgr, - SpawnShell* spawnShell, Player* player, - QObject* parent = 0, const char* name = 0); + ZoneMgr* zoneMgr, SpawnShell* spawnShell, + Player* player, QObject* parent = 0, const char* name = 0); public slots: void channelMessage(const uint8_t* cmsg, size_t, uint8_t); @@ -80,7 +79,8 @@ void groupInvite(const uint8_t* gmem); void groupDecline(const uint8_t* gmem); void groupFollow(const uint8_t* gmem); - void groupDisband(const uint8_t* gmem, size_t, uint8_t); + void groupDisband(const uint8_t* gmem); + void groupLeaderChange(const uint8_t* gmem); void syncDateTime(const QDateTime&); Modified: showeq/trunk/src/player.cpp =================================================================== --- showeq/trunk/src/player.cpp 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/player.cpp 2008-09-09 01:23:23 UTC (rev 707) @@ -815,7 +815,7 @@ return; else if (dir == DIR_Client) setPlayerID(pupdate->spawnId); - + int16_t py = int16_t(pupdate->y); int16_t px = int16_t(pupdate->x); int16_t pz = int16_t(pupdate->z); Modified: showeq/trunk/src/s_everquest.h =================================================================== --- showeq/trunk/src/s_everquest.h 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/s_everquest.h 2008-09-09 01:23:23 UTC (rev 707) @@ -66,8 +66,8 @@ AddStruct(groupAltInviteStruct); AddStruct(groupDeclineStruct); AddStruct(groupFollowStruct); -AddStruct(groupAltFollowStruct); AddStruct(groupDisbandStruct); +AddStruct(groupLeaderChangeStruct); AddStruct(deleteSpawnStruct); AddStruct(removeSpawnStruct); AddStruct(remDropStruct); Modified: showeq/trunk/src/spawnshell.cpp =================================================================== --- showeq/trunk/src/spawnshell.cpp 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/spawnshell.cpp 2008-09-09 01:23:23 UTC (rev 707) @@ -482,6 +482,10 @@ int32_t SpawnShell::fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen) { + /* + This reads data from the variable-length spawn struct + */ + NetStream netStream(data,len); int32_t retVal; uint32_t race; Modified: showeq/trunk/src/weapons2b.h =================================================================== --- showeq/trunk/src/weapons2b.h 2008-06-24 22:56:19 UTC (rev 706) +++ showeq/trunk/src/weapons2b.h 2008-09-09 01:23:23 UTC (rev 707) @@ -52,7 +52,7 @@ NULL, // 0x2b NULL, // 0x2c NULL, // 0x2d - NULL, // 0x2e + "Box", // 0x2e NULL, // 0x2f "Plant", // 0x30 NULL, // 0x31 @@ -158,7 +158,7 @@ NULL, // 0x95 NULL, // 0x96 NULL, // 0x97 - NULL, // 0x98 + "Crystal", // 0x98 NULL, // 0x99 NULL, // 0x9a NULL, // 0x9b This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-06-24 22:56:21
|
Revision: 706 http://seq.svn.sourceforge.net/seq/?rev=706&view=rev Author: ieatacid Date: 2008-06-24 15:56:19 -0700 (Tue, 24 Jun 2008) Log Message: ----------- Tag for release 5.12.4.2 Added Paths: ----------- showeq/tags/v5_12_4_2/ Copied: showeq/tags/v5_12_4_2 (from rev 705, showeq/trunk) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-06-22 03:02:12
|
Revision: 705 http://seq.svn.sourceforge.net/seq/?rev=705&view=rev Author: ieatacid Date: 2008-06-21 15:54:52 -0700 (Sat, 21 Jun 2008) Log Message: ----------- + Updated version to 5.12.4.2 + Fixed some net opcode handling (thanks to purple for all the help) Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/interface.cpp showeq/trunk/src/packetformat.cpp showeq/trunk/src/packetformat.h showeq/trunk/src/packetstream.cpp showeq/trunk/src/spawnshell.cpp Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/ChangeLog 2008-06-21 22:54:52 UTC (rev 705) @@ -1,5 +1,10 @@ Version: $Id$ $Name$ +ieatacid (6/21/08) +---------------- ++ Updated version to 5.12.4.2 ++ Fixed some net opcode handling (thanks to purple for all the help) + ieatacid (6/11/08) ---------------- + Updated version to 5.12.4.1 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/conf/zoneopcodes.xml 2008-06-21 22:54:52 UTC (rev 705) @@ -9,12 +9,12 @@ <opcode id="7901" name="OP_ZoneEntry" updated="01/17/08"> <comment>old ZoneEntryCode</comment> <payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/> - <payload dir="server" typename="ServerZoneEntryStruct" sizechecktype="none"/> + <payload dir="server" typename="uint8_t" sizechecktype="none"/> </opcode> - <opcode id="1900" name="OP_ZoneSpawns" updated="05/29/08"> + <!--<opcode id="1900" name="OP_ZoneSpawns" updated="05/29/08"> <comment>old ZoneSpawnsCode</comment> <payload dir="server" typename="spawnStruct" sizechecktype="none"/> - </opcode> + </opcode>--> <opcode id="6015" name="OP_TimeOfDay" updated="01/17/08"> <comment>old TimeOfDayCode</comment> <payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/configure.in 2008-06-21 22:54:52 UTC (rev 705) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.4.1) +AC_INIT(showeq, 5.12.4.2) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/src/interface.cpp 2008-06-21 22:54:52 UTC (rev 705) @@ -250,7 +250,7 @@ m_spells = new Spells(fileInfo.absFilePath()); // Create the EQStr storage - m_eqStrings = new EQStr(8009); // increase if the number of stings exeeds + m_eqStrings = new EQStr(8009); // increase if the number of strings exeeds // Create the Zone Manager m_zoneMgr = new ZoneMgr(this, "zonemgr"); @@ -1930,7 +1930,7 @@ "spawnStruct", SZC_Match, m_spawnShell, SLOT(newSpawn(const uint8_t*))); m_packet->connect2("OP_ZoneEntry", SP_Zone, DIR_Server, - "ServerZoneEntryStruct", SZC_None, + "uint8_t", SZC_None, m_spawnShell, SLOT(zoneEntry(const uint8_t*, size_t))); m_packet->connect2("OP_MobUpdate", SP_Zone, DIR_Server|DIR_Client, "spawnPositionUpdate", SZC_Match, @@ -1981,10 +1981,12 @@ m_packet->connect2("OP_CorpseLocResponse", SP_Zone, DIR_Server, "corpseLocStruct", SZC_Match, m_spawnShell, SLOT(corpseLoc(const uint8_t*))); +#if 0 // No longer used as of 5-22-2008 m_packet->connect2("OP_ZoneSpawns", SP_Zone, DIR_Server, "spawnStruct", SZC_None, m_spawnShell, SLOT(zoneSpawns(const uint8_t*, size_t))); - +#endif + // connect the SpellShell slots to ZoneMgr signals connect(m_zoneMgr, SIGNAL(zoneChanged(const QString&)), m_spellShell, SLOT(zoneChanged())); Modified: showeq/trunk/src/packetformat.cpp =================================================================== --- showeq/trunk/src/packetformat.cpp 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/src/packetformat.cpp 2008-06-21 22:54:52 UTC (rev 705) @@ -93,7 +93,7 @@ return *this; } -void EQProtocolPacket::init(uint8_t* packet, uint16_t length, +void EQProtocolPacket::init(uint8_t* packet, uint32_t length, bool copy, bool subpacket) { m_subpacket = subpacket; Modified: showeq/trunk/src/packetformat.h =================================================================== --- showeq/trunk/src/packetformat.h 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/src/packetformat.h 2008-06-21 22:54:52 UTC (rev 705) @@ -96,7 +96,7 @@ m_subpacket(false) { } - EQProtocolPacket(uint8_t* packet, uint16_t length, + EQProtocolPacket(uint8_t* packet, uint32_t length, bool copy=false, bool subpacket=false) { init(packet, length, copy, subpacket); @@ -172,7 +172,7 @@ // Payload is uncompressed (after decode is called) and aligned to the // beginning of the payload (after net op, flags, seq if applicable) uint8_t* payload() const { return m_payload; } - uint16_t payloadLength() const { return m_payloadLength; } + uint32_t payloadLength() const { return m_payloadLength; } // Raw Packet is compressed and aligned to the start of the net op. Length // includes CRC if applicable. @@ -183,24 +183,24 @@ // the beginning of what was decompressed. This is what is alloced if // m_bAllocPayload is true. uint8_t* rawPayload() const { return m_rawPayload; } - uint16_t rawPayloadLength() const { return m_rawPayloadLength; } + uint32_t rawPayloadLength() const { return m_rawPayloadLength; } protected: void init(); - void init(uint8_t* packet, uint16_t length, + void init(uint8_t* packet, uint32_t length, bool copy=false, bool subpacket=false); private: uint8_t* m_packet; // raw packet, untouched starting at net opcode - uint16_t m_length; // raw packet length + uint32_t m_length; // raw packet length uint16_t m_netOp; // protocol opcode uint8_t m_flags; // protocol flags uint8_t* m_payload; // packet payload. Aligned and uncompressed if necessary. bool m_bAllocedPayload; // Whether payload was alloced or not bool m_bDecoded; // Whether this packet has been decoded - uint16_t m_payloadLength; // length of payload + uint32_t m_payloadLength; // length of payload uint8_t* m_rawPayload; // decompressed but not aligned payload - uint16_t m_rawPayloadLength; // length of raw payload + uint32_t m_rawPayloadLength; // length of raw payload uint16_t m_arqSeq; // local copy to speed up comparisons bool m_ownCopy; bool m_subpacket; Modified: showeq/trunk/src/packetstream.cpp =================================================================== --- showeq/trunk/src/packetstream.cpp 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/src/packetstream.cpp 2008-06-21 22:54:52 UTC (rev 705) @@ -21,19 +21,19 @@ // The following defines are used to diagnose packet handling behavior // this define is used to diagnose packet processing (in processPacket mostly) -//#define PACKET_PROCESS_DIAG 3 +// #define PACKET_PROCESS_DIAG 3 // this define is used to diagnose cache handling (in processPacket mostly) -//#define PACKET_CACHE_DIAG 3 +// #define PACKET_CACHE_DIAG 3 // this define is used to debug packet info (in dispatchPacket mostly) -//#define PACKET_INFO_DIAG 3 +// #define PACKET_INFO_DIAG 3 // this define is used to debug packet decode info (decompression) -//#define PACKET_DECODE_DIAG 3 +// #define PACKET_DECODE_DIAG 3 // this define is used to debug sessions (request, response, disconnect) -//#define PACKET_SESSION_DIAG 3 +// #define PACKET_SESSION_DIAG 3 // diagnose structure size changes #define PACKET_PAYLOAD_SIZE_DIAG 1 @@ -720,7 +720,7 @@ // If original length is 0xff, it means it is a long one. The length // is 2 bytes and next. uint16_t longOne = eqntohuint16(subpacket); - + // Move past the 2 byte length subpacket += 2; @@ -735,7 +735,7 @@ longOne--; subOpCode = *(uint16_t*)(subpacket); } - + #if defined(PACKET_PROCESS_DIAG) && (PACKET_PROCESS_DIAG > 2) seqDebug("EQPacket: unrolling length %d bytes from combined packet on stream %s (%d). Opcode %04x", longOne, EQStreamStr[m_streamid], m_streamid, subOpCode); @@ -877,12 +877,18 @@ dispatchPacket(&m_fragment.data()[3], m_fragment.size()-3, fragOpCode, m_opcodeDB.find(fragOpCode)); } + else if (IS_NET_OPCODE(fragOpCode)) + { +#if defined(PACKET_PROCESS_DIAG) && (PACKET_PROCESS_DIAG > 1) + seqDebug("EQPacket: IS_NET_OPCODE(%04x), size = %d",fragOpCode,m_fragment.size()); +#endif + EQProtocolPacket spacket(m_fragment.data(), m_fragment.size(), false, true); + processPacket(spacket, true); + } else { - dispatchPacket(&m_fragment.data()[2], m_fragment.size()-2, - fragOpCode, m_opcodeDB.find(fragOpCode)); + dispatchPacket(&m_fragment.data()[2], m_fragment.size()-2, fragOpCode, m_opcodeDB.find(fragOpCode)); } - m_fragment.reset(); } } Modified: showeq/trunk/src/spawnshell.cpp =================================================================== --- showeq/trunk/src/spawnshell.cpp 2008-06-11 21:31:38 UTC (rev 704) +++ showeq/trunk/src/spawnshell.cpp 2008-06-21 22:54:52 UTC (rev 705) @@ -421,26 +421,63 @@ void SpawnShell::zoneSpawns(const uint8_t* data, size_t len) { - NetStream netStream(data,len); - spawnStruct *spawn = new spawnStruct; - int32_t spawnStructSize; - uint16_t parm1; + int spawndatasize = len / sizeof(spawnStruct); - while(!netStream.end()) - { - memset(spawn,0,sizeof(spawnStruct)); - parm1=netStream.readUInt16NC(); - if(parm1==0x1ff) - parm1=netStream.readUInt16NC(); + const spawnStruct* zspawns = (const spawnStruct*)data; - // skip 0x79 before name - netStream.skipBytes(1); + for (int i = 0; i < spawndatasize; i++) + { +#if 0 + // Dump position updates for debugging spawn struct position changes + for (int j=54; j<70; i++) + { + printf("%.2x", zspawns[i][j]); - spawnStructSize=fillSpawnStruct(spawn,netStream.pos(),len,false); - newSpawn(*spawn); - if(spawnStructSize) - netStream.skipBytes(spawnStructSize); - } + if ((j+1) % 8 == 0) + { + printf(" "); + } + else + { + printf(" "); + } + } + printf("\n"); +#endif + +#if 0 + // Debug positioning without having to recompile everything... +#pragma pack(1) +struct pos +{ +/*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 + signed deltaZ:13; // change in z +/*0022*/ +}; +#pragma pack(0) + struct pos *p = (struct pos *)(data + i*sizeof(spawnStruct) + 151); + printf("[%.2x](%f, %f, %f), dx %f dy %f dz %f head %f dhead %f anim %d (%x, %x, %x, %x)\n", + zspawns[i].spawnId, + float(p->x)/8.0, float(p->y/8.0), float(p->z)/8.0, + 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); +#endif + newSpawn(zspawns[i]); + } } int32_t SpawnShell::fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen) @@ -454,30 +491,20 @@ if(name.length()) strcpy(spawn->name,name.latin1()); -// seqDebug("name=%s",spawn->name); spawn->spawnId=netStream.readUInt32NC(); -// seqDebug("id=%d (%x)",spawn->spawnId,spawn->spawnId); spawn->level=netStream.readUInt8(); -// seqDebug("level=%d",spawn->level); // skip the next 4 bytes netStream.skipBytes(4); spawn->NPC=netStream.readUInt8(); -// seqDebug("NPC=%d",spawn->NPC); spawn->miscData=netStream.readUInt32NC(); spawn->otherData=netStream.readUInt8(); -// seqDebug("miscData: %x otherData: %x",spawn->miscData,spawn->otherData); - -// seqDebug("buyer=%d trader=%d TC=%d T=%d BB=%d LD=%d gen=%d anon=%d gm=%d invis=%d LFG=%d sneak=%d AFK=%d", -// spawn->buyer,spawn->trader,spawn->targetcyclable,spawn->targetable,spawn->betabuffed, -// spawn->linkdead,spawn->gender,spawn->anon,spawn->gm,spawn->invis,spawn->LFG,spawn->sneak,spawn->AFK); - // skip unknown3, unknown4 netStream.skipBytes(8); @@ -514,15 +541,13 @@ netStream.skipBytes(13); spawn->race=netStream.readUInt32NC(); -// seqDebug("race=%d",spawn->race); spawn->charProperties=netStream.readUInt8(); -// seqDebug("charProperties=%d",spawn->charProperties); if(spawn->charProperties) { spawn->bodytype=netStream.readUInt32NC(); -// seqDebug("bodytype=%d",spawn->bodytype); + for(i=1; i < spawn->charProperties; i++) { // extra character properties @@ -531,7 +556,6 @@ } spawn->curHp=netStream.readUInt8(); -// seqDebug("curHp=%d",spawn->curHp); // skip hair and face stuff netStream.skipBytes(18); @@ -541,8 +565,6 @@ spawn->guildID=netStream.readUInt32NC(); spawn->guildstatus=netStream.readUInt32NC(); spawn->class_=netStream.readUInt8(); -// seqDebug("holding=%d deity=%d guildID=%d guildstatus=%d class_=%d",spawn->holding, -// spawn->deity,spawn->guildID,spawn->guildstatus,spawn->class_); netStream.skipBytes(1); @@ -556,13 +578,11 @@ if(name.length()) { strcpy(spawn->lastName,name.latin1()); -// seqDebug("surname=%s",spawn->lastName); } netStream.skipBytes(5); spawn->petOwnerId=netStream.readUInt32NC(); -// seqDebug("petOwnerId=%d",spawn->petOwnerId); netStream.skipBytes(25); @@ -572,11 +592,6 @@ spawn->posData[3]=netStream.readUInt32NC(); spawn->posData[4]=netStream.readUInt32NC(); -// seqDebug("%x %x %x %x %x",spawn->posData[0],spawn->posData[1],spawn->posData[2],spawn->posData[3],spawn->posData[4]); -// seqDebug("%d %d %d | %d %d %d | %d %d | %d",spawn->y>>3,spawn->x>>3,spawn->z>>3, -// spawn->deltaY>>2,spawn->deltaX>>2,spawn->deltaZ>>2, -// spawn->heading,spawn->deltaHeading,spawn->animation); - // skip color netStream.skipBytes(36); @@ -597,14 +612,12 @@ { name=netStream.readText(); strcpy(spawn->title,name.latin1()); -// seqDebug("title=%s",spawn->title); } if(spawn->otherData & 8) { name=netStream.readText(); strcpy(spawn->suffix,name.latin1()); -// seqDebug("suffix=%s",spawn->suffix); } netStream.skipBytes(32); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-06-11 21:31:39
|
Revision: 704 http://seq.svn.sourceforge.net/seq/?rev=704&view=rev Author: ieatacid Date: 2008-06-11 14:31:38 -0700 (Wed, 11 Jun 2008) Log Message: ----------- Tag for release 5.12.4.1 Added Paths: ----------- showeq/tags/v5_12_4_1/ Copied: showeq/tags/v5_12_4_1 (from rev 703, showeq/trunk) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-06-11 21:30:21
|
Revision: 703 http://seq.svn.sourceforge.net/seq/?rev=703&view=rev Author: ieatacid Date: 2008-06-11 14:30:19 -0700 (Wed, 11 Jun 2008) Log Message: ----------- + Updated version to 5.12.4.1 + The variable-length spawn data should be handled properly now Modified Paths: -------------- showeq/trunk/ChangeLog showeq/trunk/conf/zoneopcodes.xml showeq/trunk/configure.in showeq/trunk/src/everquest.h showeq/trunk/src/interface.cpp showeq/trunk/src/spawnshell.cpp showeq/trunk/src/spawnshell.h Modified: showeq/trunk/ChangeLog =================================================================== --- showeq/trunk/ChangeLog 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/ChangeLog 2008-06-11 21:30:19 UTC (rev 703) @@ -1,5 +1,10 @@ Version: $Id$ $Name$ +ieatacid (6/11/08) +---------------- ++ Updated version to 5.12.4.1 ++ The variable-length spawn data should be handled properly now + ieatacid (6/8/08) ---------------- + Updated version to 5.12.4 Modified: showeq/trunk/conf/zoneopcodes.xml =================================================================== --- showeq/trunk/conf/zoneopcodes.xml 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/conf/zoneopcodes.xml 2008-06-11 21:30:19 UTC (rev 703) @@ -75,7 +75,7 @@ </opcode> <opcode id="3164" name="OP_RemoveSpawn" updated="04/17/08"> <comment>Remove spawn from zone</comment> - <payload dir="server" typename="removeSpawnStruct" sizechecktype="none"/> + <payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/> </opcode> <opcode id="1B85" name="OP_Death" updated="01/17/08"> <comment>old NewCorpseCode</comment> Modified: showeq/trunk/configure.in =================================================================== --- showeq/trunk/configure.in 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/configure.in 2008-06-11 21:30:19 UTC (rev 703) @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.12.4.0) +AC_INIT(showeq, 5.12.4.1) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM Modified: showeq/trunk/src/everquest.h =================================================================== --- showeq/trunk/src/everquest.h 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/src/everquest.h 2008-06-11 21:30:19 UTC (rev 703) @@ -984,7 +984,7 @@ }; int32_t miscData; }; -/*0000*/ uint8_t hasTitleOrSuffix; +/*0000*/ uint8_t otherData; // & 4 - has title, & 8 - has suffix, & 1 - it's a chest or untargetable /*0000*/ uint32_t race; /*0000*/ uint8_t charProperties; /*0000*/ uint32_t bodytype; @@ -1085,7 +1085,7 @@ unsigned padding1:2; unsigned trader:1; unsigned buyer:1; -/*0000*/ uint8_t hasTitleOrSuffix; // & 4=title, & 8=suffix, & 1 - it's a chest +/*0000*/ uint8_t otherData; // & 4 - has title, & 8 - has suffix, & 1 - it's a chest or untargetable /*0000*/ uint32_t unknown3; /*0000*/ uint32_t unknown4; /*0000*/ uint32_t unknown5; Modified: showeq/trunk/src/interface.cpp =================================================================== --- showeq/trunk/src/interface.cpp 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/src/interface.cpp 2008-06-11 21:30:19 UTC (rev 703) @@ -1962,9 +1962,9 @@ m_packet->connect2("OP_Shroud", SP_Zone, DIR_Server, "spawnShroudSelf", SZC_None, m_spawnShell, SLOT(shroudSpawn(const uint8_t*, size_t, uint8_t))); - m_packet->connect2("OP_RemoveSpawn", SP_Zone, DIR_Server, + m_packet->connect2("OP_RemoveSpawn", SP_Zone, DIR_Server|DIR_Client, "removeSpawnStruct", SZC_None, - m_spawnShell, SLOT(removeSpawn(const uint8_t*, size_t))); + m_spawnShell, SLOT(removeSpawn(const uint8_t*, size_t, uint8_t))); #if 0 // ZBTEMP connect(m_packet, SIGNAL(spawnWearingUpdate(const uint8_t*, size_t, uint8_t)), m_spawnShell, SLOT(spawnWearingUpdate(const uint8_t*))); Modified: showeq/trunk/src/spawnshell.cpp =================================================================== --- showeq/trunk/src/spawnshell.cpp 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/src/spawnshell.cpp 2008-06-11 21:30:19 UTC (rev 703) @@ -423,7 +423,7 @@ { NetStream netStream(data,len); spawnStruct *spawn = new spawnStruct; - uint32_t spawnStructSize; + int32_t spawnStructSize; uint16_t parm1; while(!netStream.end()) @@ -433,16 +433,22 @@ if(parm1==0x1ff) parm1=netStream.readUInt16NC(); + // skip 0x79 before name netStream.skipBytes(1); + spawnStructSize=fillSpawnStruct(spawn,netStream.pos(),len,false); newSpawn(*spawn); - netStream.skipBytes(spawnStructSize); + if(spawnStructSize) + netStream.skipBytes(spawnStructSize); } } -uint32_t SpawnShell::fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen) +int32_t SpawnShell::fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen) { NetStream netStream(data,len); + int32_t retVal; + uint32_t race; + uint8_t i; QString name=netStream.readText(); @@ -464,25 +470,49 @@ spawn->miscData=netStream.readUInt32NC(); - spawn->hasTitleOrSuffix=netStream.readUInt8(); + spawn->otherData=netStream.readUInt8(); -// seqDebug("miscData: %x hasTitleOrSuffix: %x",spawn->miscData,spawn->hasTitleOrSuffix); +// seqDebug("miscData: %x otherData: %x",spawn->miscData,spawn->otherData); // seqDebug("buyer=%d trader=%d TC=%d T=%d BB=%d LD=%d gen=%d anon=%d gm=%d invis=%d LFG=%d sneak=%d AFK=%d", // spawn->buyer,spawn->trader,spawn->targetcyclable,spawn->targetable,spawn->betabuffed, // spawn->linkdead,spawn->gender,spawn->anon,spawn->gm,spawn->invis,spawn->LFG,spawn->sneak,spawn->AFK); - if(spawn->hasTitleOrSuffix & 1) + // skip unknown3, unknown4 + netStream.skipBytes(8); + + if(spawn->otherData & 1) { - // it's a chest. skip usual 21 plus extra 56 - netStream.skipBytes(77); + // it's a chest or untargetable + + do + i=netStream.readUInt8(); + while(i); + + do + i=netStream.readUInt8(); + while(i); + + do + i=netStream.readUInt8(); + while(i); + + // skip next 3 longs + netStream.skipBytes(12); + + // next it loops through 9 longs, but we can just skip them + netStream.skipBytes(36); + + // skip 1 byte + netStream.skipBytes(1); + + // skip the last long + netStream.skipBytes(4); } - else - { - // skip facestyle, walk/run speeds, unknowns - netStream.skipBytes(21); - } + // skip facestyle, walk/run speeds, unknown5 + netStream.skipBytes(13); + spawn->race=netStream.readUInt32NC(); // seqDebug("race=%d",spawn->race); @@ -493,11 +523,10 @@ { spawn->bodytype=netStream.readUInt32NC(); // seqDebug("bodytype=%d",spawn->bodytype); - for(int i=1; i < spawn->charProperties; i++) + for(i=1; i < spawn->charProperties; i++) { // extra character properties - int j=netStream.readUInt32NC(); -// netStream.skipBytes(4); + netStream.skipBytes(4); } } @@ -544,20 +573,19 @@ spawn->posData[4]=netStream.readUInt32NC(); // seqDebug("%x %x %x %x %x",spawn->posData[0],spawn->posData[1],spawn->posData[2],spawn->posData[3],spawn->posData[4]); - -// seqDebug("%d %d %d | %d %d %d | %d %d | %d",spawn->y>>3,spawn->x>>3,spawn->z>>3, +// seqDebug("%d %d %d | %d %d %d | %d %d | %d",spawn->y>>3,spawn->x>>3,spawn->z>>3, // spawn->deltaY>>2,spawn->deltaX>>2,spawn->deltaZ>>2, // spawn->heading,spawn->deltaHeading,spawn->animation); // skip color netStream.skipBytes(36); - uint32_t race=spawn->race; + race=spawn->race; // this is how the client checks if equipment should be read. if(spawn->NPC==0 || race <= 12 || race==128 || race==130 || race==330 || race==522) { - for(int i=0; i<9; i++) + for(i=0; i<9; i++) { spawn->equipment[i].itemId=netStream.readUInt32NC(); spawn->equipment[i].equip1=netStream.readUInt32NC(); @@ -565,14 +593,14 @@ } } - if(spawn->hasTitleOrSuffix & 4) + if(spawn->otherData & 4) { name=netStream.readText(); strcpy(spawn->title,name.latin1()); // seqDebug("title=%s",spawn->title); } - if(spawn->hasTitleOrSuffix & 8) + if(spawn->otherData & 8) { name=netStream.readText(); strcpy(spawn->suffix,name.latin1()); @@ -583,12 +611,13 @@ // now we're at the end - uint32_t retVal=netStream.pos()-netStream.data(); + retVal=netStream.pos()-netStream.data(); if(checkLen && (int32_t)len!=retVal) { seqDebug("SpawnShell::fillSpawnStruct - expected length: %d, read: %d",len,retVal); } + return retVal; } @@ -1241,13 +1270,17 @@ } // else not yourself } // end consMessage() -void SpawnShell::removeSpawn(const uint8_t* data, size_t len) +void SpawnShell::removeSpawn(const uint8_t* data, size_t len, uint8_t dir) { + if(dir==DIR_Client) + return; const removeSpawnStruct* rmSpawn = (const removeSpawnStruct*)data; #ifdef SPAWNSHELL_DIAG seqDebug("SpawnShell::removeSpawn(id=%d)", rmSpawn->spawnId); #endif + Item *item; + if(len==sizeof(removeSpawnStruct)) { if(!rmSpawn->removeSpawn) @@ -1268,10 +1301,6 @@ } } } - else - { - - } } else if((len+1)!=sizeof(removeSpawnStruct)) { Modified: showeq/trunk/src/spawnshell.h =================================================================== --- showeq/trunk/src/spawnshell.h 2008-06-09 00:54:25 UTC (rev 702) +++ showeq/trunk/src/spawnshell.h 2008-06-11 21:30:19 UTC (rev 703) @@ -122,7 +122,7 @@ void updateNpcHP(const uint8_t* hpupdate); void spawnWearingUpdate(const uint8_t* wearing); void consMessage(const uint8_t* con, size_t, uint8_t); - void removeSpawn(const uint8_t* rmSpawn, size_t len); + void removeSpawn(const uint8_t* rmSpawn, size_t len, uint8_t dir); void deleteSpawn(const uint8_t* delSpawn); void killSpawn(const uint8_t* deadspawn); void respawnFromHover(const uint8_t* respawn); @@ -140,7 +140,7 @@ void deleteItem(spawnItemType type, int id); bool updateFilterFlags(Item* item); bool updateRuntimeFilterFlags(Item* item); - uint32_t fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen); + int32_t fillSpawnStruct(spawnStruct *spawn, const uint8_t *data, size_t len, bool checkLen); ItemMap& getMap(spawnItemType type); This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <iea...@us...> - 2008-06-09 00:54:27
|
Revision: 702 http://seq.svn.sourceforge.net/seq/?rev=702&view=rev Author: ieatacid Date: 2008-06-08 17:54:25 -0700 (Sun, 08 Jun 2008) Log Message: ----------- Tag for release 5.12.4 Added Paths: ----------- showeq/tags/v5_12_4_0/ Copied: showeq/tags/v5_12_4_0 (from rev 701, showeq/trunk) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |