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: Chad M. <cmm...@us...> - 2005-06-21 18:41:38
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26968/src Modified Files: Tag: pre_5_0_beta zones.h Log Message: Forgot changelog entry for zones.h update and fixed zone id comment for apprentice. Index: zones.h =================================================================== RCS file: /cvsroot/seq/showeq/src/zones.h,v retrieving revision 1.7.16.7 retrieving revision 1.7.16.8 diff -u -d -r1.7.16.7 -r1.7.16.8 --- zones.h 21 Jun 2005 18:35:25 -0000 1.7.16.7 +++ zones.h 21 Jun 2005 18:41:29 -0000 1.7.16.8 @@ -1006,4 +1006,4 @@ { NULL, NULL }, // 996 { "arttest", "Art Testing Domain" }, // 997 { "fhalls", "The Forgotten Halls" }, // 998 -{ "apprentice", "Designer Apprentice" }, // 998 +{ "apprentice", "Designer Apprentice" }, // 999 |
From: Chad M. <cmm...@us...> - 2005-06-21 18:35:54
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23569/src Modified Files: Tag: pre_5_0_beta zones.h Log Message: Updates zones.h to reflect current .exe, including new zones presumably for next expansion and fixing the long names of LoY and some OoW zones. Index: zones.h =================================================================== RCS file: /cvsroot/seq/showeq/src/zones.h,v retrieving revision 1.7.16.6 retrieving revision 1.7.16.7 diff -u -d -r1.7.16.6 -r1.7.16.7 --- zones.h 18 Apr 2005 03:16:23 -0000 1.7.16.6 +++ zones.h 21 Jun 2005 18:35:25 -0000 1.7.16.7 @@ -197,7 +197,7 @@ { "shadowrest", "Shadowrest" }, // 187 { "tutoriala", "The Mines of Gloomingdeep" }, // 188 { "tutorialb", "The Mines of Gloomingdeep" }, // 189 -{ NULL, NULL }, // 190 +{ "clz", "Loading" }, // 190 { NULL, NULL }, // 191 { NULL, NULL }, // 192 { NULL, NULL }, // 193 @@ -231,11 +231,11 @@ { "nightmareb", "Lair of Terris Thule" }, // 221 { "poearthb", "Ragrax, Stronghold of the Twelve" }, // 222 { "potimeb", "Plane of Time" }, // 223 -{ "gunthak", "Gunthak" }, // 224 -{ "dulak", "Dulak" }, // 225 -{ "torgiran", "Torgiran" }, // 226 -{ "nadox", "Nadox" }, // 227 -{ "hatesfury", "Hatesfury" }, // 228 +{ "gunthak", "Gulf of Gunthak" }, // 224 +{ "dulak", "Dulak's Harbor" }, // 225 +{ "torgiran", "Torgiran Mines" }, // 226 +{ "nadox", "Crypt of Nadox" }, // 227 +{ "hatesfury", "Hate's Fury, The Scorned Maiden" }, // 228 { "guka", "The Cauldron of Lost Souls" }, // 229 { "ruja", "The Bloodied Quarries" }, // 230 { "taka", "The Sunken Library" }, // 231 @@ -311,19 +311,19 @@ { "bloodfields", "The Bloodfields" }, // 301 { "draniksscar", "Dranik's Scar" }, // 302 { "causeway", "Nobles' Causeway" }, // 303 -{ "chambersa", "Mata Muram's Labyrinth" }, // 304 -{ "chambersb", "Mata Muram's Labyrinth" }, // 305 -{ "chambersc", "Mata Muram's Labyrinth" }, // 306 -{ "chambersd", "Mata Muram's Labyrinth" }, // 307 -{ "chamberse", "Mata Muram's Labyrinth" }, // 308 -{ "chambersf", "Mata Muram's Labyrinth" }, // 309 +{ "chambersa", "Muramite Proving Grounds" }, // 304 +{ "chambersb", "Muramite Proving Grounds" }, // 305 +{ "chambersc", "Muramite Proving Grounds" }, // 306 +{ "chambersd", "Muramite Proving Grounds" }, // 307 +{ "chamberse", "Muramite Proving Grounds" }, // 308 +{ "chambersf", "Muramite Proving Grounds" }, // 309 { NULL, NULL }, // 310 { NULL, NULL }, // 311 { NULL, NULL }, // 312 { NULL, NULL }, // 313 { NULL, NULL }, // 314 { NULL, NULL }, // 315 -{ "provinggrounds", "Muramite Provinggrounds" }, // 316 +{ "provinggrounds", "Muramite Proving Grounds" }, // 316 { "anguish", "Asylum of Anguish" }, // 317 { "dranikhollowsa", "Dranik's Hollows" }, // 318 { "dranikhollowsb", "Dranik's Hollows" }, // 319 @@ -341,7 +341,7 @@ { "draniksewersa", "Sewers of Dranik" }, // 331 { "draniksewersb", "Sewers of Dranik" }, // 332 { "draniksewersc", "Sewers of Dranik" }, // 333 -{ "riftseekers", "Riftbreakers' Sanctum" }, // 334 +{ "riftseekers", "Riftseekers' Sanctum" }, // 334 { "harbingers", "Harbingers' Spire" }, // 335 { "dranik", "The Ruined City of Dranik" }, // 336 { "broodlands", "The Broodlands" }, // 337 @@ -354,28 +354,28 @@ { "guildlobby", "Guild Lobby" }, // 344 { "guildhall", "Guild Hall" }, // 345 { "barter", "Barter Hall" }, // 346 -{ NULL, NULL }, // 347 -{ NULL, NULL }, // 348 -{ NULL, NULL }, // 349 -{ NULL, NULL }, // 350 -{ NULL, NULL }, // 351 -{ NULL, NULL }, // 352 -{ NULL, NULL }, // 353 -{ NULL, NULL }, // 354 -{ NULL, NULL }, // 355 -{ NULL, NULL }, // 356 -{ NULL, NULL }, // 357 -{ NULL, NULL }, // 358 -{ NULL, NULL }, // 359 -{ NULL, NULL }, // 360 -{ NULL, NULL }, // 361 -{ NULL, NULL }, // 362 -{ NULL, NULL }, // 363 -{ NULL, NULL }, // 364 -{ NULL, NULL }, // 365 -{ NULL, NULL }, // 366 -{ NULL, NULL }, // 367 -{ NULL, NULL }, // 368 +{ "Illsalin", "The Ruins of Illsalin" }, // 347 +{ "IllsalinA", "Illsalin Marketplace" }, // 348 +{ "IllsalinB", "Temple of the Korlach" }, // 349 +{ "IllsalinC", "The Nargilor Pits" }, // 350 +{ "Dreadspire", "Dreadspire Keep" }, // 351 +{ "DreadspireA", "The Torture Chamber" }, // 352 +{ "DreadspireB", "The Artifact Room" }, // 353 +{ "DrachnidHive", "The Hive" }, // 354 +{ "DrachnidHiveA", "The Hatchery" }, // 355 +{ "DrachnidHiveB", "The Cocoons" }, // 356 +{ "DrachnidHiveC", "The Queen's Lair" }, // 357 +{ "WestKorlach", "Stoneroot Falls" }, // 358 +{ "WestKorlachA", "Prince's Manor" }, // 359 +{ "WestKorlachB", "Caverns of the Lost" }, // 360 +{ "WestKorlachC", "Lair of the Korlach" }, // 361 +{ "EastKorlach", "The Undershore" }, // 362 +{ "EastKorlachA", "Snarlstone Dens" }, // 363 +{ "EastKorlachB", "Shadowspine" }, // 364 +{ "Corathus", "Corathus Creep" }, // 365 +{ "CorathusA", "Sporali Caverns" }, // 366 +{ "CorathusB", "Corathus Lair" }, // 367 +{ "NektulosA", "Shadowed Grove" }, // 368 { NULL, NULL }, // 369 { NULL, NULL }, // 370 { NULL, NULL }, // 371 @@ -1004,5 +1004,6 @@ { NULL, NULL }, // 994 { NULL, NULL }, // 995 { NULL, NULL }, // 996 -{ NULL, NULL }, // 997 +{ "arttest", "Art Testing Domain" }, // 997 { "fhalls", "The Forgotten Halls" }, // 998 +{ "apprentice", "Designer Apprentice" }, // 998 |
From: Chad M. <cmm...@us...> - 2005-06-21 18:05:08
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4832/src Modified Files: Tag: pre_5_0_beta races.h Log Message: Some more new races. Index: races.h =================================================================== RCS file: /cvsroot/seq/showeq/src/races.h,v retrieving revision 1.9.8.6 retrieving revision 1.9.8.7 diff -u -d -r1.9.8.6 -r1.9.8.7 --- races.h 12 Jun 2005 14:33:37 -0000 1.9.8.6 +++ races.h 21 Jun 2005 18:00:12 -0000 1.9.8.7 @@ -431,8 +431,8 @@ NULL, // 422 NULL, // 423 NULL, // 424 - NULL, // 425 - NULL, // 426 + "Portal", // 425 + "Portal", // 426 NULL, // 427 "Nest", // 428 NULL, // 429 @@ -440,15 +440,15 @@ "Dervish", // 431 "Drake", // 432 "Goblin", // 433 - NULL, // 434 + "Kirin", // 434 NULL, // 435 "Basilisk", // 436 - NULL, // 437 + "Rikkukun", // 437 "Yar'Lir", // 438 - NULL, // 439 + "Puma", // 439 "Spider", // 440 "Spider", // 441 - NULL, // 442 + "Golem", // 442 NULL, // 443 NULL, // 444 NULL, // 445 |
From: Chad M. <cmm...@us...> - 2005-06-19 16:21:37
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20497/src Modified Files: Tag: pre_5_0_beta packetcapture.cpp packetstream.cpp Log Message: Added two known bugs to BUGS. Changed the Debug message about dropping packets to a Warning. Added some debugging code to packetcapture that is turned off, just so you can watch and monitor the race between the packet capture thread taking in packets and the main thread processing them and changing the pcap filter. Index: packetstream.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/packetstream.cpp,v retrieving revision 1.1.6.10 retrieving revision 1.1.6.11 diff -u -d -r1.1.6.10 -r1.1.6.11 --- packetstream.cpp 16 May 2005 23:04:16 -0000 1.1.6.10 +++ packetstream.cpp 19 Jun 2005 16:20:55 -0000 1.1.6.11 @@ -261,7 +261,7 @@ // one yet... while(it == m_cache.end()) { - seqDebug("SEQ: Giving up on finding arq %04x in stream %s cache, skipping!", + seqWarn("SEQ: Giving up on finding arq %04x in stream %s cache, skipping!", m_arqSeqExp, EQStreamStr[m_streamid]); // incremente the expected arq sequence number Index: packetcapture.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/packetcapture.cpp,v retrieving revision 1.2.4.4 retrieving revision 1.2.4.5 diff -u -d -r1.2.4.4 -r1.2.4.5 --- packetcapture.cpp 18 Apr 2005 03:16:23 -0000 1.2.4.4 +++ packetcapture.cpp 19 Jun 2005 16:20:55 -0000 1.2.4.5 @@ -12,9 +12,15 @@ #include <stdio.h> #include <stdlib.h> #include <unistd.h> +#include <netinet/ip.h> +#include <netinet/udp.h> +#include <netinet/if_ether.h> +#include <arpa/inet.h> #include "packetcapture.h" #include "diagnosticmessages.h" + +//#define PCAP_DEBUG 1 //---------------------------------------------------------------------- // PacketCaptureThread @@ -230,6 +236,45 @@ memcpy (pc->data, data, ph->len); pc->next = NULL; +#ifdef PCAP_DEBUG + struct ether_header* ethHeader = (struct ether_header*) data; + + if (ntohs(ethHeader->ether_type) == ETHERTYPE_IP) + { + struct ip* ipHeader = + (struct ip*) (data + sizeof(struct ether_header)); + + char src[128]; + strcpy(src, inet_ntoa(ipHeader->ip_src)); + char dst[128]; + strcpy(dst, inet_ntoa(ipHeader->ip_dst)); + + if (ipHeader->ip_p == IPPROTO_UDP) + { + struct udphdr* udpHeader = + (struct udphdr*) (data + sizeof(struct ip) + sizeof(struct ether_header)); + + printf("recv(%d): %s:%d -> %s:%d (size: %d)\n", + ipHeader->ip_p, + src, + ntohs(udpHeader->source), + dst, + ntohs(udpHeader->dest), + ph->len); + } + else + { + printf("Non-UDP traffic %s -> %s\n", + inet_ntoa(ipHeader->ip_src), + inet_ntoa(ipHeader->ip_dst)); + } + } + else + { + printf("Non-IP packet...\n"); + } +#endif + // Throttle offline playback properly if applicable. int speed = myThis->m_playbackSpeed; |
From: Chad M. <cmm...@us...> - 2005-06-19 16:21:31
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20497 Modified Files: Tag: pre_5_0_beta BUGS ChangeLog Log Message: Added two known bugs to BUGS. Changed the Debug message about dropping packets to a Warning. Added some debugging code to packetcapture that is turned off, just so you can watch and monitor the race between the packet capture thread taking in packets and the main thread processing them and changing the pcap filter. Index: BUGS =================================================================== RCS file: /cvsroot/seq/showeq/BUGS,v retrieving revision 1.1.1.1.16.2 retrieving revision 1.1.1.1.16.3 diff -u -d -r1.1.1.1.16.2 -r1.1.1.1.16.3 --- BUGS 16 May 2005 23:39:21 -0000 1.1.1.1.16.2 +++ BUGS 19 Jun 2005 16:20:55 -0000 1.1.1.1.16.3 @@ -1,3 +1,89 @@ Known bugs ---------- + +1) Multiple EQ Clients on the Same Box + +Running showeq to monitor an EQ client on a machine which has multiple EQ +clients running on it can result in crashes and mixed sessions. It is possible +that if both EQ clients zone at the same time, showeq can mix up the sessions +resulting in either showeq swapping which session it is watching or something +crashes resulting from processing both clients at the same time. Using session +tracking might help, but there is no workaround at this time to make showeq work +properly in this configuration. + + +2) !!!! EQPacketFragmentSequence::addFragment(): buffer overflow adding in +new fragment + +In order to run, showeq needs the entire packet stream between the EQ client and +the EQ servers. Packets are processed in order and if any packets are dropped, +there may be problems decoding the stream causing showeq to crash or lose sync +with the session. + +Usually this condition is signalled by console messages like: +Warning: SEQ: Giving up on finding arq 0085 in stream zone-client cache, skipping! +Warning: SEQ: Giving up on finding arq 0086 in stream zone-client cache, skipping! +Warning: SEQ: Giving up on finding arq 0087 in stream zone-client cache, skipping! +Warning: SEQ: Giving up on finding arq 0088 in stream zone-client cache, skipping! + +This signifies packets being dropped and being skipped in processing, which may +cause the session stream to corrupt if the skipped packets are important. Other +messages which may result when the stream is corrupted are: + +Warning: Oversized packet fragment requested buffer of size 0 on stream 3 OpCode +0000 seq 00a6 + +Warning: !!!! EQPacketFragmentSequence::addFragment(): buffer overflow adding in +new fragment to buffer with seq 00fb on stream 3, opcode 0000. Buffer is size 3 +8302 and has been filled up to 38302, but tried to add 505 more! + +Both these messages mean that packets are being dropped that are important to +the reconstruction of oversized payloads in the session stream. These messages +may appear like showeq is broken, but in reality, the problem is that packets +are not being provided to showeq because they are being dropped by the kernel +before being made available to the application layer. + +The kernel may drop packets when under heavy loads (either CPU loads or network +loads). + +When under high CPU utilization, the thread in showeq which reads from +the kernel's receive buffers may be starved and not get enough processor time to +empty the kernel receive buffers before those buffers run out of room and drop +packets. To help this, you can set the showeq network thread to run "realtime" +by turning on the Network->Real Time Thread option. + +When under high network traffic, the kernel's receive buffers may overflow +before showeq gets a chance to empty the buffers, causing packets to be missed. +This can happen when you have a lot of network traffic that is seen by the +machine running showeq. The EQ client bursts a lot of traffic during zoning as +well, so usually problems with high network traffic show themselves during +zoning. + +To help this problem, try to narrow down the traffic that showeq watches by +specifying the ip address of your EQ client on the commandline. Also, turn on +Session Tracking using Network->Session Tracking. If problems persist after +turning those options on, you may want to adjust kernel parameters to change how +the kernel manages its receive buffers. Some parameters that may help you are: + +net.core.rmem_default (defaults to 65535, or 64k receive buffers) +net.core.rmem_max (defaults to 131071, or 128k receive buffers) +net.core.netdev_max_backlog (defaults to 300, or 300 packets can be input but + unprocessed before packets start being dropped) + +These parameters should be set with care, and take into account what other +things the linux box you are running showeq on is used for. If it has a lot of +server duties, setting rmem_default will increase system memory usage +sigificantly. + +Suggested settings for a normally used machine are: +net.core.rmem_default=524288 (512k for default receive buffers) +net.core.rmem_max=2097152 (2M for max receive buffers) +net.core.netdev_max_backlog=3000 (allow 3000 packets to be queued before + processing before dropping packets) + +If you still see problems, you may want to set these higher. Setting these may +be distribution specific. Check to see if you have sysctl (man sysctl) or +/etc/sysctl.conf, or these can be put directly into /proc by looking +in /proc/sys/net/core. + Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.27 retrieving revision 1.1.2.28 diff -u -d -r1.1.2.27 -r1.1.2.28 --- ChangeLog 12 Jun 2005 14:33:36 -0000 1.1.2.27 +++ ChangeLog 19 Jun 2005 16:20:55 -0000 1.1.2.28 @@ -14,6 +14,7 @@ are propagated to the spawn list and the map + Filled in some missing races with artificial names not taken from the .exe (thanks uRit1u2CBBA=) ++ Added two known bugs to BUGS with descriptions and workarounds purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-06-19 11:55:46
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24225/src Modified Files: Tag: pre_5_0_beta everquest.h group.cpp group.h spawnshell.cpp typenames.h Log Message: Added OP_Logout, OP_Animation to zoneopcodes Updated spawnStruct a bit with some more known fields. Futzed with the group manager even though I got no idea if I did anything. Debugging why we get illusion messages that don't work a lot. Added Muramite to body types. Index: group.h =================================================================== RCS file: /cvsroot/seq/showeq/src/group.h,v retrieving revision 1.4.16.3 retrieving revision 1.4.16.4 diff -u -d -r1.4.16.3 -r1.4.16.4 --- group.h 21 Feb 2005 05:56:13 -0000 1.4.16.3 +++ group.h 19 Jun 2005 11:55:36 -0000 1.4.16.4 @@ -12,6 +12,7 @@ #include <qobject.h> #include <qstring.h> +#include "everquest.h" //---------------------------------------------------------------------- @@ -63,7 +64,7 @@ { QString m_name; const Spawn* m_spawn; - } * m_members; + }* m_members[MAX_GROUP_MEMBERS]; size_t m_memberCount; size_t m_membersInZoneCount; }; Index: typenames.h =================================================================== RCS file: /cvsroot/seq/showeq/src/typenames.h,v retrieving revision 1.4.6.1 retrieving revision 1.4.6.2 diff -u -d -r1.4.6.1 -r1.4.6.2 --- typenames.h 7 Nov 2004 23:10:26 -0000 1.4.6.1 +++ typenames.h 19 Jun 2005 11:55:36 -0000 1.4.6.2 @@ -26,7 +26,7 @@ NULL, // 17 NULL, // 18 "Zek", // 19 - NULL, // 20 + "Luggald", // 20 "Animal", // 21 "Insect", // 22 "ExtraPlanar", // 23 @@ -34,13 +34,13 @@ "Plant", // 25 "Dragonkin", // 26 "Elemental", // 27 - "Doppleganger", // 28 + "Summoned Creature", // 28 "Dragon", // 29 "BaneDragon", // 30 "Familiar", // 31 NULL, // 32 NULL, // 33 - NULL, // 34 + "Muramite", // 34 NULL, // 35 NULL, // 36 NULL, // 37 Index: spawnshell.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/spawnshell.cpp,v retrieving revision 1.42.6.9 retrieving revision 1.42.6.10 diff -u -d -r1.42.6.9 -r1.42.6.10 --- spawnshell.cpp 5 Jun 2005 01:01:15 -0000 1.42.6.9 +++ spawnshell.cpp 19 Jun 2005 11:55:36 -0000 1.42.6.10 @@ -696,8 +696,8 @@ illusion->spawnId, illusion->name, illusion->race); #endif - const Item* item = findID(tSpawn, illusion->spawnId); - + Item* item = m_spawns.find(illusion->spawnId); + if (item != NULL) { Spawn* spawn = (Spawn*) item; @@ -708,10 +708,17 @@ spawn->updateLastChanged(); emit changeItem(spawn, tSpawnChangedALL); +#ifdef SPAWNSHELL_DIAG + seqDebug("SpawnShell: Illusioned %s (id=%d) into race %d", + illusion->name, illusion->spawnId, illusion->race); +#endif } else { - seqWarn("SpawnShell: tried to illusion %s (id=%d) to race %d, but the mob didn't exist in the spawn list", illusion->name, illusion->spawnId, illusion->race); + // Someone with an illusion up zoning in will generate an + // OP_Illusion BEFORE the OP_NewSpawn, so they won't be + // in the spawn list. Their spawnStruct will have their + // illusioned race anyways. } } Index: group.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/group.cpp,v retrieving revision 1.6.16.4 retrieving revision 1.6.16.5 diff -u -d -r1.6.16.4 -r1.6.16.5 --- group.cpp 21 Feb 2005 05:56:13 -0000 1.6.16.4 +++ group.cpp 19 Jun 2005 11:55:36 -0000 1.6.16.5 @@ -12,10 +12,6 @@ #include "everquest.h" #include "diagnosticmessages.h" -// ZBTEMP: Will re-enable the group manager when someone figures out -// how to fix it's crashing bug. -//#define ENABLE_GROUPMGR 1 - GroupMgr::GroupMgr(SpawnShell* spawnShell, Player* player, QObject* parent, const char* name) @@ -25,20 +21,18 @@ m_memberCount(0), m_membersInZoneCount(0) { - // create the array of group members - m_members = new GroupMember[MAX_GROUP_MEMBERS]; + for (int i=0; i<MAX_GROUP_MEMBERS; i++) + { + m_members[i] = new GroupMember(); + } // clear the array of members for (int i = 0; i < MAX_GROUP_MEMBERS; i++) - m_members[i].m_spawn = 0; + m_members[i]->m_spawn = 0; } GroupMgr::~GroupMgr() { - if (m_members) - { - delete[] m_members; - } } void GroupMgr::player(const uint8_t* data) @@ -54,21 +48,21 @@ // 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]; + m_members[i]->m_name = player->groupMembers[i]; - if (!m_members[i].m_name.isEmpty()) + if (!m_members[i]->m_name.isEmpty()) m_memberCount++; - if (m_members[i].m_name != player->name) - m_members[i].m_spawn = 0; + if (m_members[i]->m_name != player->name) + m_members[i]->m_spawn = 0; else { - m_members[i].m_spawn = (const Spawn*)m_player; + m_members[i]->m_spawn = (const Spawn*)m_player; m_membersInZoneCount++; } - emit added(m_members[i].m_name, m_members[i].m_spawn); + emit added(m_members[i]->m_name, m_members[i]->m_spawn); } } @@ -95,21 +89,21 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // copy the member name - m_members[i].m_name = gfupdate->membernames[i]; + m_members[i]->m_name = gfupdate->membernames[i]; // if their is a member, increment the member count - if (!m_members[i].m_name.isEmpty()) + 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); + m_members[i]->m_spawn = + m_spawnShell->findSpawnByName(m_members[i]->m_name); // incremement the spawn count - if (m_members[i].m_spawn) + if (m_members[i]->m_spawn) m_membersInZoneCount++; - emit added(m_members[i].m_name, m_members[i].m_spawn); + emit added(m_members[i]->m_name, m_members[i]->m_spawn); } } } @@ -124,25 +118,25 @@ // iterate over all the slots until an empty one is found 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; + m_members[i]->m_name = gupdate->membername; // if their is a member, increment the member count - if (!m_members[i].m_name.isEmpty()) + 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); + m_members[i]->m_spawn = + m_spawnShell->findSpawnByName(m_members[i]->m_name); // incremement the spawn count - if (m_members[i].m_spawn) + if (m_members[i]->m_spawn) m_membersInZoneCount++; // signal the addition - emit added(m_members[i].m_name, m_members[i].m_spawn); + emit added(m_members[i]->m_name, m_members[i]->m_spawn); // added it, so break break; @@ -154,14 +148,14 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // is this the member? - if (m_members[i].m_name == gupdate->membername) + if (m_members[i]->m_name == gupdate->membername) { // yes, announce its removal - emit removed(m_members[i].m_name, m_members[i].m_spawn); + 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; + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; break; } } @@ -175,8 +169,8 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // clear the member - m_members[i].m_name = ""; - m_members[i].m_spawn = 0; + m_members[i]->m_name = ""; + m_members[i]->m_spawn = 0; } emit cleared(); @@ -201,10 +195,10 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // is this spawn a group member? - if (m_members[i].m_name == spawn->name()) + if (m_members[i]->m_name == spawn->name()) { // yes, so note its Spawn object - m_members[i].m_spawn = spawn; + m_members[i]->m_spawn = spawn; // decrement member in zone count m_membersInZoneCount++; @@ -229,10 +223,10 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // is this spawn a group member? - if (m_members[i].m_name == spawn->name()) + if (m_members[i]->m_name == spawn->name()) { // yes, so clear its Spawn object - m_members[i].m_spawn = 0; + m_members[i]->m_spawn = 0; // decrement member in zone count m_membersInZoneCount--; @@ -257,10 +251,10 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // is this spawn a group member? - if (m_members[i].m_name == spawn->name()) + if (m_members[i]->m_name == spawn->name()) { // yes, so clear its Spawn object - m_members[i].m_spawn = 0; + m_members[i]->m_spawn = 0; // decrement members in zone count m_membersInZoneCount--; @@ -288,15 +282,15 @@ // iterate over the group members for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { - if (m_members[i].m_name.isEmpty()) + if (m_members[i]->m_name.isEmpty()) continue; - out << "Member (" << i << "): " << m_members[i].m_name; + out << "Member (" << i << "): " << m_members[i]->m_name; - if (m_members[i].m_spawn) - out << " level " << m_members[i].m_spawn->level() - << " " << m_members[i].m_spawn->raceString() - << " " << m_members[i].m_spawn->classString(); + if (m_members[i]->m_spawn) + out << " level " << m_members[i]->m_spawn->level() + << " " << m_members[i]->m_spawn->raceString() + << " " << m_members[i]->m_spawn->classString(); out << endl; } @@ -327,8 +321,8 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // add up the group member levels - if (m_members[i].m_spawn) - total += m_members[i].m_spawn->level(); + if (m_members[i]->m_spawn) + total += m_members[i]->m_spawn->level(); } // shouldn't happen, but just in-case @@ -344,8 +338,8 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // if this member is in zone, and the spawnid matches, return it - if (m_members[i].m_spawn && (m_members[i].m_spawn->id() == id)) - return m_members[i].m_spawn; + if (m_members[i]->m_spawn && (m_members[i]->m_spawn->id() == id)) + return m_members[i]->m_spawn; } // not found @@ -358,8 +352,8 @@ for (int i = 0; i < MAX_GROUP_MEMBERS; i++) { // if this member has the name, return its spawn - if (m_members[i].m_name == name) - return m_members[i].m_spawn; + if (m_members[i]->m_name == name) + return m_members[i]->m_spawn; } // not found @@ -373,7 +367,7 @@ return 0; // return the spawn object associated with the group slot, if any - return m_members[slot].m_spawn; + return m_members[slot]->m_spawn; } #include "group.moc" Index: everquest.h =================================================================== RCS file: /cvsroot/seq/showeq/src/everquest.h,v retrieving revision 1.74.6.27 retrieving revision 1.74.6.28 diff -u -d -r1.74.6.27 -r1.74.6.28 --- everquest.h 5 Jun 2005 01:01:14 -0000 1.74.6.27 +++ everquest.h 19 Jun 2005 11:55:36 -0000 1.74.6.28 @@ -859,10 +859,15 @@ */ struct spawnStruct { -/*0000*/ uint8_t unknown0000[5]; // ***Placeholder +/*0000*/ uint8_t is_pet; // 0=no, 1=yes +/*0001*/ uint8_t face; // Face id for players +/*0002*/ uint8_t unknown0002; // ***Placeholder +/*0003*/ uint8_t is_npc; // 0=no, 1=yes +/*0004*/ uint8_t unknown0004; // ***Placeholder /*0005*/ int8_t aa_title; // 0=none, 1=general, 2=archtype, 3=class /*0006*/ uint8_t bodytype; // Bodytype -/*0007*/ uint8_t unknown0010[4]; // ***Placeholder +/*0007*/ uint8_t unknown0010[3]; // ***Placeholder +/*0010*/ uint8_t hairstyle; // Hair style /*0011*/ uint8_t NPC; // 0=player,1=npc,2=pc corpse,3=npc corpse,a /*0012*/ float size; // Model size /*0016*/ char title[32]; // Player's title @@ -888,7 +893,8 @@ /*0094*/ uint8_t unknown0094[4]; // ***Placeholder /*0098*/ char suffix[32]; // Player's suffix (of Veeshan, etc.) /*0130*/ uint8_t class_; // Player's class -/*0131*/ uint8_t unknown0131[6]; // ***Placeholder +/*0131*/ uint8_t eyecolor1; // Player's left eye color +/*0131*/ uint8_t unknown0131[5]; // ***Placeholder /*0137*/ uint8_t light; // Spawn's lightsource /*0138*/ float runspeed; // Speed when running /*0142*/ uint8_t unknown0142[6]; // ***Placeholder @@ -904,7 +910,8 @@ }; /*0175*/ uint8_t level; // Spawn Level /*0176*/ uint8_t anon; // 0=normal, 1=anon, 2=roleplay -/*0177*/ uint8_t unknown0177[2]; // ***Placeholder +/*0177*/ uint8_t beardcolor; // Beard color +/*0178*/ uint8_t unknown0178; // ***Placeholder /*0179*/ union { struct @@ -940,30 +947,23 @@ /*0251*/ char name[64]; // Player's Name /*0315*/ uint32_t petOwnerId; // If this is a pet, the spawn id of owner /*0319*/ uint8_t afk; // 0=no, 1=afk -/*0320*/ uint8_t unknown0320[2]; // ***Placeholder +/*0320*/ uint8_t haircolor; // Hair color +/*0321*/ uint8_t helm; // Helm texture /*0322*/ char lastName[32]; // Players last name /*0354*/ uint8_t gm; // 0=no, 1=gm -/*0355*/ uint8_t unknown0354[13]; //***Placeholder +/*0355*/ uint8_t unknown0354[12]; //***Placeholder +/*0367*/ uint8_t eyecolor2; // Player right eye color /*0368*/ uint8_t lfg; // 0=off, 1=lfg on /*0369*/ uint8_t unknown0369[8]; //***Placeholder -/*0378*/ uint32_t race; // Spawn race -/*0382*/ uint8_t unknown0381[2]; //***Placeholder +/*0378*/ uint32_t race; // Spawn race +/*0382*/ uint8_t unknown0381[2]; //***Placeholder /*0383*/ #if 0 // Need placed in spawn struct still... %%% -/*001*/ int8_t eyecolor1; // Player left eye color -/*002*/ int8_t eyecolor2; // Player right eye color - -/*118*/ uint8_t haircolor; // hair color /*121*/ int8_t maxHp; // max hp /*122*/ uint8_t pvp; // 0=Not pvp,1=pvp -/*141*/ int8_t beardcolor; -/*142*/ int8_t hairstyle; -/*143*/ int8_t face; - -/*155*/ uint8_t helm; #endif }; |
From: Chad M. <cmm...@us...> - 2005-06-19 11:55:44
|
Update of /cvsroot/seq/showeq/conf In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24225/conf Modified Files: Tag: pre_5_0_beta zoneopcodes.xml Log Message: Added OP_Logout, OP_Animation to zoneopcodes Updated spawnStruct a bit with some more known fields. Futzed with the group manager even though I got no idea if I did anything. Debugging why we get illusion messages that don't work a lot. Added Muramite to body types. Index: zoneopcodes.xml =================================================================== RCS file: /cvsroot/seq/showeq/conf/Attic/zoneopcodes.xml,v retrieving revision 1.1.4.23 retrieving revision 1.1.4.24 diff -u -d -r1.1.4.23 -r1.1.4.24 --- zoneopcodes.xml 12 Jun 2005 14:25:07 -0000 1.1.4.23 +++ zoneopcodes.xml 19 Jun 2005 11:55:36 -0000 1.1.4.24 @@ -89,9 +89,6 @@ <opcode id="013c" name="OP_GMEndTraining" updated="05/26/04"> <comment></comment> </opcode> - <opcode id="0140" name="OP_Animation" implicitlen="4" updated="05/26/04"> - <comment></comment> - </opcode> <opcode id="0152" name="OP_MoveCash" updated="05/26/04"> <comment></comment> </opcode> @@ -744,8 +741,11 @@ <comment>old LevelUpUpdateCode</comment> <payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/> </opcode> - <opcode id="016a" name="OP_Logout" updated="05/26/04"> + <opcode id="016a" name="OP_Logout" updated="05/11/05"> <comment></comment> <payload dir="server" typename="none" sizechecktype="match"/> </opcode> + <opcode id="5f54" name="OP_Animation" implicitlen="4" updated="05/11/05"> + <comment></comment> + </opcode> </seqopcodes> |
From: Chad M. <cmm...@us...> - 2005-06-12 14:33:46
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4297/src Modified Files: Tag: pre_5_0_beta races.h Log Message: Filled in some unknown races Index: races.h =================================================================== RCS file: /cvsroot/seq/showeq/src/races.h,v retrieving revision 1.9.8.5 retrieving revision 1.9.8.6 diff -u -d -r1.9.8.5 -r1.9.8.6 --- races.h 4 Jun 2005 17:30:03 -0000 1.9.8.5 +++ races.h 12 Jun 2005 14:33:37 -0000 1.9.8.6 @@ -421,10 +421,46 @@ "Chimera", // 412 "Dragorn", // 413 "Murkglider", // 414 - NULL, // 415 - NULL, // 416 + "Rat", // 415 + "Bat", // 416 "Gelidran", // 417 "Discordling", // 418 "Girplan", // 419 + NULL, // 420 + NULL, // 421 + NULL, // 422 + NULL, // 423 + NULL, // 424 + NULL, // 425 + NULL, // 426 + NULL, // 427 + "Nest", // 428 + NULL, // 429 + "Drake", // 430 + "Dervish", // 431 + "Drake", // 432 + "Goblin", // 433 + NULL, // 434 + NULL, // 435 + "Basilisk", // 436 + NULL, // 437 + "Yar'Lir", // 438 + NULL, // 439 + "Spider", // 440 + "Spider", // 441 + NULL, // 442 + NULL, // 443 + NULL, // 444 + NULL, // 445 + NULL, // 446 + NULL, // 447 + NULL, // 448 + "Cocoon", // 449 + "Spider", // 450 + NULL, // 451 + NULL, // 452 + NULL, // 453 + NULL, // 454 + "Kobold", // 455 #endif /* DOXYGEN_SHOULD_SKIP_THIS */ |
From: Chad M. <cmm...@us...> - 2005-06-12 14:33:45
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4297 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Filled in some unknown races Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.26 retrieving revision 1.1.2.27 diff -u -d -r1.1.2.26 -r1.1.2.27 --- ChangeLog 5 Jun 2005 01:01:01 -0000 1.1.2.26 +++ ChangeLog 12 Jun 2005 14:33:36 -0000 1.1.2.27 @@ -1,6 +1,6 @@ Version: $Id$ $Name$ -purple (06/04/05) +purple (06/12/05) --------------------- + Swapped heading and deltaHeading in spawnStruct (thanks Doodman) + Strip the # off names before matching to filters to aid in filter writing @@ -12,6 +12,8 @@ so they are correct now (thanks Doodman) + Added struct for OP_Illusion and a spawnshell handler so that illusions are propagated to the spawn list and the map ++ Filled in some missing races with artificial names not taken from the + .exe (thanks uRit1u2CBBA=) purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-06-12 14:25:19
|
Update of /cvsroot/seq/showeq/conf In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32232 Modified Files: Tag: pre_5_0_beta zoneopcodes.xml Log Message: Couple more opcodes Index: zoneopcodes.xml =================================================================== RCS file: /cvsroot/seq/showeq/conf/Attic/zoneopcodes.xml,v retrieving revision 1.1.4.22 retrieving revision 1.1.4.23 diff -u -d -r1.1.4.22 -r1.1.4.23 --- zoneopcodes.xml 5 Jun 2005 01:01:06 -0000 1.1.4.22 +++ zoneopcodes.xml 12 Jun 2005 14:25:07 -0000 1.1.4.23 @@ -5,14 +5,6 @@ handlers. These need to be refound again, but we'd see errors if they were commented out. If you're looking for opcodes, find these first if you're so inclined! --> - <opcode id="016a" name="OP_Logout" updated="05/26/04"> - <comment></comment> - <payload dir="server" typename="none" sizechecktype="match"/> - </opcode> - <opcode id="0078" name="OP_LevelUpdate" updated="05/26/04"> - <comment>old LevelUpUpdateCode</comment> - <payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/> - </opcode> <opcode id="003e" name="OP_MobUpdate" implicitlen="12" updated="05/26/04"> <comment>old MobUpdateCode</comment> <payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/> @@ -748,4 +740,12 @@ <comment>Spawns getting renamed after initial NewSpawn</comment> <payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/> </opcode> + <opcode id="0455" name="OP_LevelUpdate" updated="05/11/05"> + <comment>old LevelUpUpdateCode</comment> + <payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/> + </opcode> + <opcode id="016a" name="OP_Logout" updated="05/26/04"> + <comment></comment> + <payload dir="server" typename="none" sizechecktype="match"/> + </opcode> </seqopcodes> |
From: Chad M. <cmm...@us...> - 2005-06-05 01:02:02
|
Update of /cvsroot/seq/showeq/conf In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24281/conf Modified Files: Tag: pre_5_0_beta zoneopcodes.xml Log Message: Added struct for OP_Illusion and added a spawnshell handler for it which updates gender and race on the spawn. Index: zoneopcodes.xml =================================================================== RCS file: /cvsroot/seq/showeq/conf/Attic/zoneopcodes.xml,v retrieving revision 1.1.4.21 retrieving revision 1.1.4.22 diff -u -d -r1.1.4.21 -r1.1.4.22 --- zoneopcodes.xml 16 May 2005 23:04:15 -0000 1.1.4.21 +++ zoneopcodes.xml 5 Jun 2005 01:01:06 -0000 1.1.4.22 @@ -577,8 +577,8 @@ <comment></comment> </opcode> <opcode id="19d8" name="OP_Illusion" updated="05/11/05"> - <comment>old IllusionCode</comment> - <payload dir="both" typename="uint8_t" sizechecktype="none"/> + <comment>Spawn being illusioned (changing forms)</comment> + <payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/> </opcode> <opcode id="76b4" name="OP_AckPacket" updated="05/11/05"> <comment>Appears to be generic ack at the presentation level</comment> |
From: Chad M. <cmm...@us...> - 2005-06-05 01:02:01
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24281/src Modified Files: Tag: pre_5_0_beta everquest.h interface.cpp spawnshell.cpp spawnshell.h Log Message: Added struct for OP_Illusion and added a spawnshell handler for it which updates gender and race on the spawn. Index: interface.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/interface.cpp,v retrieving revision 1.67.6.16 retrieving revision 1.67.6.17 diff -u -d -r1.67.6.16 -r1.67.6.17 --- interface.cpp 29 May 2005 15:17:29 -0000 1.67.6.16 +++ interface.cpp 5 Jun 2005 01:01:14 -0000 1.67.6.17 @@ -2008,6 +2008,9 @@ m_packet->connect2("OP_SpawnRename", SP_Zone, DIR_Server, "spawnRenameStruct", SZC_Match, m_spawnShell, SLOT(renameSpawn(const uint8_t*))); + m_packet->connect2("OP_Illusion", SP_Zone, DIR_Server|DIR_Client, + "spawnIllusionStruct", SZC_Match, + m_spawnShell, SLOT(illusionSpawn(const uint8_t*))); m_packet->connect2("OP_SpawnAppearance", SP_Zone, DIR_Server|DIR_Client, "spawnAppearanceStruct", SZC_Match, m_spawnShell, SLOT(updateSpawnAppearance(const uint8_t*))); @@ -4320,7 +4323,6 @@ uint32_t minExpLevel, uint32_t maxExpLevel, uint32_t tickExpLevel) { - uint32_t intoExp = totalExp - minExpLevel; uint32_t leftExp = maxExpLevel - totalExp; if (newExp) Index: spawnshell.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/spawnshell.cpp,v retrieving revision 1.42.6.8 retrieving revision 1.42.6.9 diff -u -d -r1.42.6.8 -r1.42.6.9 --- spawnshell.cpp 15 May 2005 16:06:25 -0000 1.42.6.8 +++ spawnshell.cpp 5 Jun 2005 01:01:15 -0000 1.42.6.9 @@ -688,6 +688,33 @@ } } +void SpawnShell::illusionSpawn(const uint8_t* data) +{ + const spawnIllusionStruct* illusion = (const spawnIllusionStruct*)data; +#ifdef SPAWNSHELL_DIAG + seqDebug("SpawnShell::illusionSpawn(id=%d, name=%s, new race=%d)", + illusion->spawnId, illusion->name, illusion->race); +#endif + + const Item* item = findID(tSpawn, illusion->spawnId); + + if (item != NULL) + { + Spawn* spawn = (Spawn*) item; + + // Update what we can + spawn->setGender(illusion->gender); + spawn->setRace(illusion->race); + + spawn->updateLastChanged(); + emit changeItem(spawn, tSpawnChangedALL); + } + else + { + seqWarn("SpawnShell: tried to illusion %s (id=%d) to race %d, but the mob didn't exist in the spawn list", illusion->name, illusion->spawnId, illusion->race); + } +} + void SpawnShell::updateSpawnAppearance(const uint8_t* data) { const spawnAppearanceStruct* app = (const spawnAppearanceStruct*)data; @@ -701,6 +728,7 @@ if (item != NULL) { Spawn* spawn = (Spawn*)item; + switch(app->type) { case 1: // level update Index: spawnshell.h =================================================================== RCS file: /cvsroot/seq/showeq/src/spawnshell.h,v retrieving revision 1.21.12.3 retrieving revision 1.21.12.4 diff -u -d -r1.21.12.3 -r1.21.12.4 --- spawnshell.h 7 Apr 2005 03:19:37 -0000 1.21.12.3 +++ spawnshell.h 5 Jun 2005 01:01:15 -0000 1.21.12.4 @@ -114,6 +114,7 @@ void updateSpawns(const uint8_t* updates); void updateSpawnInfo(const uint8_t* spawnupdate); void renameSpawn(const uint8_t* renameupdate); + void illusionSpawn(const uint8_t* illusionupdate); void updateSpawnAppearance(const uint8_t* appearanceupdate); void updateNpcHP(const uint8_t* hpupdate); void spawnWearingUpdate(const uint8_t* wearing); Index: everquest.h =================================================================== RCS file: /cvsroot/seq/showeq/src/everquest.h,v retrieving revision 1.74.6.26 retrieving revision 1.74.6.27 diff -u -d -r1.74.6.26 -r1.74.6.27 --- everquest.h 4 Jun 2005 17:30:02 -0000 1.74.6.26 +++ everquest.h 5 Jun 2005 01:01:14 -0000 1.74.6.27 @@ -1146,6 +1146,24 @@ /*196*/ uint32_t unknown196; //set to 1 }; +/* +** Illusion a spawn +** Length: 168 Octets +** OpCode: Illusion +*/ +struct spawnIllusionStruct +{ +/*0000*/ uint32_t spawnId; // Spawn id of the target +/*0004*/ char name[64]; // Name of the target +/*0068*/ uint32_t race; // New race +/*0072*/ uint8_t gender; // New gender (0=male, 1=female) +/*0073*/ uint8_t texture; // ??? +/*0074*/ uint8_t helm; // ??? +/*0075*/ uint8_t unknown0077; // ***Placeholder +/*0076*/ uint32_t face; // New face +/*0080*/ uint8_t unknown0082[88]; // ***Placeholder +}; + /* ** ShowEQ Specific Structures |
From: Chad M. <cmm...@us...> - 2005-06-05 01:01:46
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24281 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Added struct for OP_Illusion and added a spawnshell handler for it which updates gender and race on the spawn. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.25 retrieving revision 1.1.2.26 diff -u -d -r1.1.2.25 -r1.1.2.26 --- ChangeLog 4 Jun 2005 17:30:02 -0000 1.1.2.25 +++ ChangeLog 5 Jun 2005 01:01:01 -0000 1.1.2.26 @@ -1,6 +1,6 @@ Version: $Id$ $Name$ -purple (05/27/05) +purple (06/04/05) --------------------- + Swapped heading and deltaHeading in spawnStruct (thanks Doodman) + Strip the # off names before matching to filters to aid in filter writing @@ -10,6 +10,8 @@ + Cleaned up the status bar exp/aa exp display + Fixed positioning in playerSpawnPosUpdate. Changed deltaZ and heading so they are correct now (thanks Doodman) ++ Added struct for OP_Illusion and a spawnshell handler so that illusions + are propagated to the spawn list and the map purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-05-29 15:17:56
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10850/src Modified Files: Tag: pre_5_0_beta interface.cpp player.cpp Log Message: Cleaned up the status bar AA exp and exp display by adding percent to exp and fixing a division weirdness in AA. Index: player.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/player.cpp,v retrieving revision 1.42.6.12 retrieving revision 1.42.6.13 diff -u -d -r1.42.6.12 -r1.42.6.13 --- player.cpp 15 May 2005 16:06:25 -0000 1.42.6.12 +++ player.cpp 29 May 2005 15:17:29 -0000 1.42.6.13 @@ -585,7 +585,7 @@ else expIncrement = 0; */ - uint32_t realExp = altexp->altexp * (15000000 / 33000); + uint32_t realExp = altexp->altexp * (15000000 / 330); uint32_t expIncrement; if (realExp > m_currentExp) Index: interface.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/interface.cpp,v retrieving revision 1.67.6.15 retrieving revision 1.67.6.16 diff -u -d -r1.67.6.15 -r1.67.6.16 --- interface.cpp 10 May 2005 16:11:55 -0000 1.67.6.15 +++ interface.cpp 29 May 2005 15:17:29 -0000 1.67.6.16 @@ -4306,10 +4306,13 @@ uint32_t tickExpLevel) { if (m_stsbarExp) - m_stsbarExp->setText(QString("Exp: %1; %2 (%3/330); 1/330 = %4") - .arg(Commanate(totalExp)) - .arg(Commanate(totalExp - minExpLevel)) - .arg(totalTick).arg(tickExpLevel)); + { + char expperc[5]; + sprintf(expperc, "%.2f", totalTick*100.0/330.0); + + m_stsbarExp->setText(QString("Exp: %1 (%2/330, %3%)") + .arg(Commanate(totalExp)).arg(totalTick).arg(expperc)); + } } void EQInterface::newExp(uint32_t newExp, uint32_t totalExp, @@ -4333,10 +4336,13 @@ .arg(needKills)); if (m_stsbarExp) - m_stsbarExp->setText(QString("Exp: %1; %2 (%3/330) [%4]") - .arg(Commanate(totalExp)) - .arg(Commanate(intoExp)) - .arg(totalTick).arg(needKills)); + { + char expperc[5]; + sprintf(expperc, "%.2f", totalTick*100.0/330.0); + + m_stsbarExp->setText(QString("Exp: %1 (%2/330, %3%)") + .arg(Commanate(totalExp)).arg(totalTick).arg(expperc)); + } } else { @@ -4347,10 +4353,13 @@ .arg(totalTick).arg(Commanate(leftExp))); if (m_stsbarExp) - m_stsbarExp->setText(QString("Exp: %1; %2 (%3/330)") - .arg(Commanate(totalExp)) - .arg(Commanate(intoExp)) - .arg(totalTick)); + { + char expperc[5]; + sprintf(expperc, "%.2f", totalTick*100.0/330.0); + + m_stsbarExp->setText(QString("Exp: %1 (%2/330, %3%)") + .arg(Commanate(totalExp)).arg(totalTick).arg(expperc)); + } } } @@ -4370,7 +4379,7 @@ if (m_stsbarExpAA) { char aaperc[5]; - sprintf(aaperc, "%.2f", totalExp*100.0/maxExp); + sprintf(aaperc, "%.2f", totalTick*100.0/330.0); m_stsbarExpAA->setText(QString("ExpAA: %1 (%2/330, %3%)") .arg(Commanate(totalExp)).arg(totalTick).arg(aaperc)); |
From: Chad M. <cmm...@us...> - 2005-05-29 15:17:43
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10850 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Cleaned up the status bar AA exp and exp display by adding percent to exp and fixing a division weirdness in AA. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.23 retrieving revision 1.1.2.24 diff -u -d -r1.1.2.23 -r1.1.2.24 --- ChangeLog 28 May 2005 16:12:44 -0000 1.1.2.23 +++ ChangeLog 29 May 2005 15:17:28 -0000 1.1.2.24 @@ -7,6 +7,7 @@ + Strip the # off the strong of filters as well just to make the # irrevelant to filters (thanks BlueAdept for both these) + Cleaned up the help spew for --help. There were some bogus things in there. ++ Cleaned up the status bar exp/aa exp display purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-05-28 16:12:53
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29917/src Modified Files: Tag: pre_5_0_beta main.cpp Log Message: Removed some fragments of old help from --help Index: main.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/main.cpp,v retrieving revision 1.33.6.7 retrieving revision 1.33.6.8 diff -u -d -r1.33.6.7 -r1.33.6.8 --- main.cpp 7 Apr 2005 03:19:36 -0000 1.33.6.7 +++ main.cpp 28 May 2005 16:12:44 -0000 1.33.6.8 @@ -789,12 +789,9 @@ printf (" -c, --use-retarded-coords Use \"retarded\" YXZ coordinates\n"); printf (" -F, --fast-machine Fast machine - perform more accurate vs. \n"); printf (" less accurate calculations.\n"); - printf (" spawn matching\n"); printf (" -K, --create-unknown-spawns create unknown spawns\n"); printf (" -S, --select-on-consider Select the spawn considered\n"); printf (" -e, --select-on-target Select the spawn targetted\n"); - printf (" mode (Don't process packets bound for\n"); - printf (" other machines).\n"); printf (" -N, --show-packet-numbers Show network info dialog\n"); printf (" -j, --playback-file=FILENAME Playback packets in FILENAME, previously\n"); printf (" recorded with -g option\n"); @@ -817,7 +814,7 @@ printf (" --zone-log-filename=FILE Use FILE for above packet logging\n"); printf (" --log-unknown-zone Log only unrecognized zone data\n"); printf (" --unknown-zone-log-filename=FILE Use FILE for above packet logging\n"); - printf (" --log-raw Log some unprocessed raw data\n"); + printf (" --log-raw Log some unprocessed raw data\n"); printf (" --spawnlog-filename=FILE Use FILE instead of spawnlog.txt\n"); printf (" --itemdb-data-filename=FILE Use FILE instead of itemdata\n"); printf (" --itemdb-raw-data-filename=FILE Use FILE instead of itemrawdata\n"); |
From: Chad M. <cmm...@us...> - 2005-05-28 16:12:53
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29917 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Removed some fragments of old help from --help Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.22 retrieving revision 1.1.2.23 diff -u -d -r1.1.2.22 -r1.1.2.23 --- ChangeLog 28 May 2005 03:55:20 -0000 1.1.2.22 +++ ChangeLog 28 May 2005 16:12:44 -0000 1.1.2.23 @@ -6,6 +6,7 @@ + Strip the # off names before matching to filters to aid in filter writing + Strip the # off the strong of filters as well just to make the # irrevelant to filters (thanks BlueAdept for both these) ++ Cleaned up the help spew for --help. There were some bogus things in there. purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-05-28 03:55:30
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17209/src Modified Files: Tag: pre_5_0_beta filter.cpp spawn.cpp Log Message: Made filters silently drop the # at the start of spawn names so that filters can be written without knowledge of whether there is a # in front of a name or not. Also made filters that have Name:# in them drop the # so that if old filters have the #name but the in game name has removed the #, the filters will still match. In short, filters ignore the # in front of names whether it comes from the filter file or from the spawn name. Index: spawn.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/spawn.cpp,v retrieving revision 1.31.6.4 retrieving revision 1.31.6.5 diff -u -d -r1.31.6.4 -r1.31.6.5 --- spawn.cpp 10 May 2005 17:01:33 -0000 1.31.6.4 +++ spawn.cpp 28 May 2005 03:55:21 -0000 1.31.6.5 @@ -860,10 +860,26 @@ QString Spawn::filterString() const { + QString name = transformedName(); + + // For the spawn name, remove the # off the front if it is there. This is + // because only some mobs have #, but there's no real rule to where it is + // there or not. To ease in filter writing, we just remove it before + // filtering, so you don't have to see the spawn in seq before writing a + // filter for it. + // + // If this turns out too slow, we could always cache the name without the # + // I guess, but transformedName already does string manipulation without + // caching, so what's another only if there's a # at the start *wink* + if (name.startsWith("#")) + { + name = name.mid(1); + } + QString buff; buff.sprintf("Name:%s:Level:%d:Race:%s:Class:%s:NPC:%d:X:%d:Y:%d:Z:%d:" "Light:%s:Deity:%s:RTeam:%d:DTeam:%d:Type:%s:LastName:%s:Guild:%s:", - (const char*)transformedName().utf8(), + (const char*)name.utf8(), level(), (const char*)raceString(), (const char*)classString(), Index: filter.cpp =================================================================== RCS file: /cvsroot/seq/showeq/src/filter.cpp,v retrieving revision 1.6.6.2 retrieving revision 1.6.6.3 diff -u -d -r1.6.6.2 -r1.6.6.3 --- filter.cpp 7 Nov 2004 23:10:03 -0000 1.6.6.2 +++ filter.cpp 28 May 2005 03:55:20 -0000 1.6.6.3 @@ -213,13 +213,13 @@ { if (m_maxLevel != m_minLevel) { - if ((level >= m_minLevel) && (level <= m_maxLevel)) - return true; // filter matched + if ((level >= m_minLevel) && (level <= m_maxLevel)) + return true; // filter matched } else { - if (level == m_minLevel) - return true; + if (level == m_minLevel) + return true; } } else @@ -331,17 +331,27 @@ { FilterItem* re; + // Take the # off the front of the filters. + // + // This is showeq specific, since EQ puts #'s in front of some + // special mobs, but without being in the zone, it's hard to tell what + // has a # and what doesn't. In order to ease in filter writing, just + // strip it off here, and we'll strip it off the spawn names before matching + // too. + QString fixedFilterPattern = filterPattern; + fixedFilterPattern.replace("Name:#", "Name:", false); + // no duplicates allowed - if (findFilter(filterPattern)) + if (findFilter(fixedFilterPattern)) return false; - re = new FilterItem(filterPattern, m_caseSensitive); + re = new FilterItem(fixedFilterPattern, m_caseSensitive); // append it to the end of the list m_filterItems.append(re); #ifdef DEBUG_FILTER - seqDebug("Added Filter '%s'", (const char*)filterPattern); + seqDebug("Added Filter '%s'", (const char*)fixedFilterPattern); #endif return re->valid(); @@ -352,18 +362,28 @@ { FilterItem* re; + // Take the # off the front of the filters for name. + // + // This is showeq specific, since EQ puts #'s in front of some + // special mobs, but without being in the zone, it's hard to tell what + // has a # and what doesn't. In order to ease in filter writing, just + // strip it off here, and we'll strip it off the spawn names before matching + // too. + QString fixedFilterPattern = filterPattern; + fixedFilterPattern.replace("Name:#", "Name:", false); + // no duplicates allowed - if (findFilter(filterPattern)) + if (findFilter(fixedFilterPattern)) return false; - re = new FilterItem(filterPattern, m_caseSensitive, minLevel, maxLevel); + re = new FilterItem(fixedFilterPattern, m_caseSensitive, minLevel, maxLevel); // append it to the end of the list m_filterItems.append(re); #ifdef DEBUG_FILTER seqDebug("Added Filter '%s' (%d, %d)", - (const char*)filterPattern, minLevel, maxLevel); + (const char*)fixedFilterPattern, minLevel, maxLevel); #endif return re->valid(); |
From: Chad M. <cmm...@us...> - 2005-05-28 03:55:29
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17209 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Made filters silently drop the # at the start of spawn names so that filters can be written without knowledge of whether there is a # in front of a name or not. Also made filters that have Name:# in them drop the # so that if old filters have the #name but the in game name has removed the #, the filters will still match. In short, filters ignore the # in front of names whether it comes from the filter file or from the spawn name. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.21 retrieving revision 1.1.2.22 diff -u -d -r1.1.2.21 -r1.1.2.22 --- ChangeLog 28 May 2005 01:02:18 -0000 1.1.2.21 +++ ChangeLog 28 May 2005 03:55:20 -0000 1.1.2.22 @@ -3,6 +3,9 @@ purple (05/27/05) --------------------- + Swapped heading and deltaHeading in spawnStruct (thanks Doodman) ++ Strip the # off names before matching to filters to aid in filter writing ++ Strip the # off the strong of filters as well just to make the # irrevelant + to filters (thanks BlueAdept for both these) purple (05/18/05) --------------------- |
From: Chad M. <cmm...@us...> - 2005-05-28 01:02:42
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31349 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Reversed heading and deltaHeading in spawnStruct. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.20 retrieving revision 1.1.2.21 diff -u -d -r1.1.2.20 -r1.1.2.21 --- ChangeLog 18 May 2005 23:00:27 -0000 1.1.2.20 +++ ChangeLog 28 May 2005 01:02:18 -0000 1.1.2.21 @@ -1,5 +1,9 @@ Version: $Id$ $Name$ +purple (05/27/05) +--------------------- ++ Swapped heading and deltaHeading in spawnStruct (thanks Doodman) + purple (05/18/05) --------------------- + Updated version to 5.0.0.22 |
From: Chad M. <cmm...@us...> - 2005-05-28 01:00:57
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv30466/showeq/src Modified Files: Tag: pre_5_0_beta everquest.h Log Message: Reversed heading and deltaHeading in spawnStruct. Index: everquest.h =================================================================== RCS file: /cvsroot/seq/showeq/src/everquest.h,v retrieving revision 1.74.6.24 retrieving revision 1.74.6.25 diff -u -d -r1.74.6.24 -r1.74.6.25 --- everquest.h 18 May 2005 23:00:28 -0000 1.74.6.24 +++ everquest.h 28 May 2005 01:00:46 -0000 1.74.6.25 @@ -539,7 +539,7 @@ /* ** Player Profile -** Length: 18496 Octets +** Length: 19560 Octets ** OpCode: CharProfileCode */ struct charProfileStruct @@ -880,8 +880,8 @@ signed y:19; // y coord /*0082*/ signed deltaY:13; // change in y signed z:19; // z coord -/*0086*/ signed deltaHeading:10;// change in heading - signed heading:12; // spawn heading +/*0086*/ signed heading:12; // spawn heading + signed deltaHeading:10;// change in heading signed animation:10; // animation id /*0090*/ signed x:19; // x coord signed deltaZ:13; // change in z @@ -1869,8 +1869,8 @@ /*0016*/ float deltaX; // Change in x /*0020*/ signed deltaHeading:10; // Change in heading unsigned padding0020:6; // ***Placeholder (speed?) - unsigned padding0022:6; // ***Placeholder -/*0022*/ unsigned animation:10; // %%% wrong +/*0022*/ unsigned padding0022:6; // ***Placeholder + unsigned animation:10; // %%% wrong /*0024*/ float z; // z coord /*0028*/ float y; // y coord /*0032*/ float deltaZ; // Change in z |
From: Chad M. <cmm...@us...> - 2005-05-18 23:00:53
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28471 Modified Files: Tag: pre_5_0_beta ChangeLog configure.in Log Message: MAX_AA from 120 to 240. Version bump to 5.0.0.22. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.19 retrieving revision 1.1.2.20 diff -u -d -r1.1.2.19 -r1.1.2.20 --- ChangeLog 16 May 2005 23:06:00 -0000 1.1.2.19 +++ ChangeLog 18 May 2005 23:00:27 -0000 1.1.2.20 @@ -1,10 +1,12 @@ Version: $Id$ $Name$ -purple (05/16/05) +purple (05/18/05) --------------------- ++ Updated version to 5.0.0.22 + Found OP_SpawnRename again. It's used to rename the Bristlebane jesters + Fixed problem in net layer where opcodes were showing up as 0000. Treat 0000 - as a special case where the app opcode is on the wire next. + as a special case where the app opcode is 00 + next byte on the wire ++ Fixed to work with patch on 05/18/2005 by bumping MAX_AA to 240 purple (05/11/05) ---------------------- Index: configure.in =================================================================== RCS file: /cvsroot/seq/showeq/configure.in,v retrieving revision 1.49.4.22 retrieving revision 1.49.4.23 diff -u -d -r1.49.4.22 -r1.49.4.23 --- configure.in 15 May 2005 16:06:24 -0000 1.49.4.22 +++ configure.in 18 May 2005 23:00:28 -0000 1.49.4.23 @@ -2,7 +2,7 @@ dnl $Id$ $Name$ AC_PREREQ(2.59) -AC_INIT(showeq, 5.0.0.21) +AC_INIT(showeq, 5.0.0.22) AC_CONFIG_SRCDIR(src/main.cpp) AC_CANONICAL_SYSTEM |
From: Chad M. <cmm...@us...> - 2005-05-18 23:00:40
|
Update of /cvsroot/seq/showeq/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28471/src Modified Files: Tag: pre_5_0_beta everquest.h Log Message: MAX_AA from 120 to 240. Version bump to 5.0.0.22. Index: everquest.h =================================================================== RCS file: /cvsroot/seq/showeq/src/everquest.h,v retrieving revision 1.74.6.23 retrieving revision 1.74.6.24 diff -u -d -r1.74.6.23 -r1.74.6.24 --- everquest.h 15 May 2005 16:06:25 -0000 1.74.6.23 +++ everquest.h 18 May 2005 23:00:28 -0000 1.74.6.24 @@ -108,7 +108,7 @@ #define MAX_GROUP_MEMBERS 6 #define MAX_BUFFS 25 #define MAX_GUILDS 1500 -#define MAX_AA 120 +#define MAX_AA 240 #define MAX_BANDOLIERS 4 #define MAX_POTIONS_IN_BELT 4 #define MAX_TRIBUTES 5 @@ -401,17 +401,16 @@ ** Used in: ** charProfileStruct(2d20) */ - struct spellBuff { -/*0000*/ uint8_t unknown0000; // -/*0001*/ int8_t level; // Level of person who cast buff -/*0002*/ uint8_t unknown0002; // -/*0003*/ uint8_t unknown0003; // -/*0004*/ int32_t spellid; // Spell -/*0008*/ int32_t duration; // Time remaining in ticks -/*0012*/ int32_t effect; // holds the dmg absorb amount on runes -/*0016*/ uint32_t playerId; // Global id of caster (for wear off) +/*0000*/ uint8_t unknown0000; // +/*0001*/ int8_t level; // Level of person who cast buff +/*0002*/ uint8_t unknown0002; // +/*0003*/ uint8_t unknown0003; // +/*0004*/ int32_t spellid; // Spell +/*0008*/ int32_t duration; // Time remaining in ticks +/*0012*/ int32_t effect; // holds the dmg absorb amount on runes +/*0016*/ uint32_t playerId; // Global id of caster (for wear off) /*0020*/ }; @@ -583,107 +582,107 @@ /*0348*/ uint8_t unknown0348[48]; // *** Placeholder /*0396*/ Color_Struct item_tint[9]; // RR GG BB 00 /*0432*/ AA_Array aa_array[MAX_AA]; // AAs -/*1392*/ char servername[32]; // server the char was created on -/*1424*/ char title[32]; // Current character title -/*1456*/ char suffix[32]; // Current character suffix -/*1488*/ uint8_t unknown1452[4]; // *** Placeholder -/*1492*/ uint32_t exp; // Current Experience -/*1496*/ uint32_t unknown1496; // *** Placeholder -/*1500*/ uint32_t points; // Unspent Practice points -/*1504*/ uint32_t MANA; // Current MANA -/*1508*/ uint32_t curHp; // Current HP without +HP equipment -/*1512*/ uint32_t unknown1512; // 0x05 -/*1516*/ uint32_t STR; // Strength -/*1520*/ uint32_t STA; // Stamina -/*1524*/ uint32_t CHA; // Charisma -/*1528*/ uint32_t DEX; // Dexterity -/*1532*/ uint32_t INT; // Intelligence -/*1536*/ uint32_t AGI; // Agility -/*1540*/ uint32_t WIS; // Wisdom -/*1544*/ uint8_t face; // Player face -/*1545*/ uint8_t unknown1545[47]; // *** Placeholder -/*1592*/ uint8_t languages[25]; // List of languages (MAX_KNOWN_LANGS) -/*1617*/ uint8_t unknown1617[7]; // All 0x00 (language buffer?) -/*1624*/ int32_t sSpellBook[400]; // List of the Spells in spellbook -/*3224*/ uint8_t unknown3224[448]; // all 0xff after last spell -/*3672*/ int32_t sMemSpells[MAX_SPELL_SLOTS]; // List of spells memorized -/*3708*/ uint8_t unknown3708[32]; // *** Placeholder -/*3740*/ float x; // Players x position -/*3744*/ float y; // Players y position -/*3748*/ float z; // Players z position -/*3752*/ float heading; // Players heading -/*3756*/ uint8_t unknown3756[4]; // *** Placeholder -/*3760*/ uint32_t platinum; // Platinum Pieces on player -/*3764*/ uint32_t gold; // Gold Pieces on player -/*3768*/ uint32_t silver; // Silver Pieces on player -/*3772*/ uint32_t copper; // Copper Pieces on player -/*3776*/ uint32_t platinum_bank; // Platinum Pieces in Bank -/*3780*/ uint32_t gold_bank; // Gold Pieces in Bank -/*3784*/ uint32_t silver_bank; // Silver Pieces in Bank -/*3788*/ uint32_t copper_bank; // Copper Pieces in Bank -/*3792*/ uint32_t platinum_cursor; // Platinum Pieces on cursor -/*3796*/ uint32_t gold_cursor; // Gold Pieces on cursor -/*3800*/ uint32_t silver_cursor; // Silver Pieces on cursor -/*3804*/ uint32_t copper_cursor; // Copper Pieces on cursor -/*3808*/ uint32_t platinum_shared; // Shared platinum pieces -/*3812*/ uint8_t unknown3812[24]; // Unknown - all zero -/*3836*/ uint32_t skills[75]; // List of skills (MAX_KNOWN_SKILLS) -/*4136*/ uint8_t unknown4136[312]; // *** Placeholder -/*4448*/ uint32_t autosplit; // 0 = off, 1 = on -/*4452*/ uint8_t unknown4452[8]; // *** Placeholder -/*4460*/ uint32_t zoneCounter; // No idea. Goes up by 2 each zone. -/*4464*/ uint8_t unknown4464[28]; // *** Placeholder -/*4492*/ uint32_t expansions; // Bitmask for expansions -/*4496*/ uint32_t toxicity; // Potion Toxicity (15=too toxic, each potion adds 3) -/*4500*/ uint8_t unknown4500[16]; // *** Placeholder -/*4516*/ uint32_t hunger; // Food (ticks till next eat) -/*4520*/ uint32_t thirst; // Drink (ticks till next drink) -/*4524*/ uint8_t unknown4524[20]; // *** Placeholder -/*4544*/ uint16_t zoneId; // see zones.h -/*4546*/ uint16_t zoneInstance; // Instance id -/*4548*/ spellBuff buffs[MAX_BUFFS]; // Buffs currently on the player -/*5048*/ char groupMembers[MAX_GROUP_MEMBERS][64];// all the members in group, including self -/*5332*/ uint8_t unknown5332[668]; // *** Placeholder -/*6100*/ uint32_t ldon_guk_points; // Earned GUK points -/*6104*/ uint32_t ldon_mir_points; // Earned MIR points -/*6108*/ uint32_t ldon_mmc_points; // Earned MMC points -/*6112*/ uint32_t ldon_ruj_points; // Earned RUJ points -/*6116*/ uint32_t ldon_tak_points; // Earned TAK points -/*6120*/ uint32_t ldon_avail_points; // Available LDON points -/*6124*/ uint8_t unknown6124[112]; // *** Placeholder -/*6236*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) -/*6240*/ uint32_t unknown6240; // *** Placeholder -/*6244*/ uint32_t careerTribute; // Total favor points for this char -/*6248*/ uint32_t unknown6248; // *** Placeholder -/*6252*/ uint32_t currentTribute; // Current tribute points -/*6256*/ uint32_t unknown6256; // *** Placeholder -/*6260*/ uint32_t tributeActive; // 0 = off, 1=on -/*6264*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout -/*6304*/ uint32_t disciplines[MAX_DISCIPLINES]; // Known disciplines -/*6504*/ uint8_t unknown6504[440]; // *** Placeholder -/*6944*/ uint32_t endurance; // Current endurance -/*6948*/ uint32_t expGroupLeadAA; // Current group lead AA exp (0-1000) -/*6952*/ uint32_t expRaidLeadAA; // Current raid lead AA exp (0-2000) -/*6954*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points -/*6960*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points -/*6964*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks -/*7092*/ uint8_t unknown7092[132]; // *** Placeholder -/*7224*/ uint32_t airRemaining; // Air supply (seconds) -/*7228*/ uint8_t unknown7228[4608]; // *** Placeholder -/*11836*/ uint32_t aa_spent; // Number of spent AA points -/*11840*/ uint32_t expAA; // Exp earned in current AA point -/*11844*/ uint32_t aa_unspent; // Unspent AA points -/*11848*/ uint8_t unknown11848[36]; // *** Placeholder -/*11884*/ BandolierStruct bandoliers[MAX_BANDOLIERS]; // bandolier contents -/*13164*/ uint8_t unknown13164[5120]; // *** Placeholder -/*18284*/ InlineItem potionBelt[MAX_POTIONS_IN_BELT]; // potion belt -/*18572*/ uint8_t unknown18572[8]; // *** Placeholder -/*18580*/ uint32_t currentRadCrystals; // Current count of radiant crystals -/*18684*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever -/*18588*/ uint32_t currentEbonCrystals;// Current count of ebon crystals -/*18592*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever -/*18596*/ uint32_t unknown18596; // *** Placeholder -}; /* 18600 */ +/*2352*/ char servername[32]; // server the char was created on +/*2384*/ char title[32]; // Current character title +/*2416*/ char suffix[32]; // Current character suffix +/*2448*/ uint8_t unknown2448[4]; // *** Placeholder +/*2452*/ uint32_t exp; // Current Experience +/*2456*/ uint32_t unknown2456; // *** Placeholder +/*2460*/ uint32_t points; // Unspent Practice points +/*2464*/ uint32_t MANA; // Current MANA +/*2468*/ uint32_t curHp; // Current HP without +HP equipment +/*2472*/ uint32_t unknown1512; // 0x05 +/*2476*/ uint32_t STR; // Strength +/*2480*/ uint32_t STA; // Stamina +/*2484*/ uint32_t CHA; // Charisma +/*2488*/ uint32_t DEX; // Dexterity +/*2492*/ uint32_t INT; // Intelligence +/*2496*/ uint32_t AGI; // Agility +/*2500*/ uint32_t WIS; // Wisdom +/*2504*/ uint8_t face; // Player face +/*2505*/ uint8_t unknown2505[47]; // *** Placeholder +/*2552*/ uint8_t languages[25]; // List of languages (MAX_KNOWN_LANGS) +/*2577*/ uint8_t unknown2577[7]; // All 0x00 (language buffer?) +/*2584*/ int32_t sSpellBook[400]; // List of the Spells in spellbook +/*4184*/ uint8_t unknown4184[448]; // all 0xff after last spell +/*4632*/ int32_t sMemSpells[MAX_SPELL_SLOTS]; // List of spells memorized +/*4668*/ uint8_t unknown4668[32]; // *** Placeholder +/*4700*/ float x; // Players x position +/*4704*/ float y; // Players y position +/*4708*/ float z; // Players z position +/*4712*/ float heading; // Players heading +/*4716*/ uint8_t unknown4716[4]; // *** Placeholder +/*4720*/ uint32_t platinum; // Platinum Pieces on player +/*4724*/ uint32_t gold; // Gold Pieces on player +/*4728*/ uint32_t silver; // Silver Pieces on player +/*4732*/ uint32_t copper; // Copper Pieces on player +/*4736*/ uint32_t platinum_bank; // Platinum Pieces in Bank +/*4740*/ uint32_t gold_bank; // Gold Pieces in Bank +/*4744*/ uint32_t silver_bank; // Silver Pieces in Bank +/*4748*/ uint32_t copper_bank; // Copper Pieces in Bank +/*4752*/ uint32_t platinum_cursor; // Platinum Pieces on cursor +/*4756*/ uint32_t gold_cursor; // Gold Pieces on cursor +/*4760*/ uint32_t silver_cursor; // Silver Pieces on cursor +/*4764*/ uint32_t copper_cursor; // Copper Pieces on cursor +/*4768*/ uint32_t platinum_shared; // Shared platinum pieces +/*4772*/ uint8_t unknown4772[24]; // Unknown - all zero +/*4796*/ uint32_t skills[75]; // List of skills (MAX_KNOWN_SKILLS) +/*5096*/ uint8_t unknown5096[312]; // *** Placeholder +/*5408*/ uint32_t autosplit; // 0 = off, 1 = on +/*5412*/ uint8_t unknown5412[8]; // *** Placeholder +/*5420*/ uint32_t saveCounter; // Number of times your char has saved +/*5424*/ uint8_t unknown5424[28]; // *** Placeholder +/*5452*/ uint32_t expansions; // Bitmask for expansions +/*5456*/ uint32_t toxicity; // Potion Toxicity (15=too toxic, each potion adds 3) +/*5460*/ uint8_t unknown5460[16]; // *** Placeholder +/*5476*/ uint32_t hunger; // Food (ticks till next eat) +/*5480*/ uint32_t thirst; // Drink (ticks till next drink) +/*5484*/ uint8_t unknown5484[20]; // *** Placeholder +/*5504*/ uint16_t zoneId; // see zones.h +/*5506*/ uint16_t zoneInstance; // Instance id +/*5508*/ spellBuff buffs[MAX_BUFFS]; // Buffs currently on the player +/*6008*/ char groupMembers[MAX_GROUP_MEMBERS][64];// all the members in group, including self +/*6392*/ uint8_t unknown6392[668]; // *** Placeholder +/*7060*/ uint32_t ldon_guk_points; // Earned GUK points +/*7064*/ uint32_t ldon_mir_points; // Earned MIR points +/*7068*/ uint32_t ldon_mmc_points; // Earned MMC points +/*7072*/ uint32_t ldon_ruj_points; // Earned RUJ points +/*7076*/ uint32_t ldon_tak_points; // Earned TAK points +/*7080*/ uint32_t ldon_avail_points; // Available LDON points +/*7084*/ uint8_t unknown6124[112]; // *** Placeholder +/*7196*/ uint32_t tributeTime; // Time remaining on tribute (millisecs) +/*7200*/ uint32_t unknown6240; // *** Placeholder +/*7204*/ uint32_t careerTribute; // Total favor points for this char +/*7208*/ uint32_t unknown6248; // *** Placeholder +/*7212*/ uint32_t currentTribute; // Current tribute points +/*7216*/ uint32_t unknown6256; // *** Placeholder +/*7220*/ uint32_t tributeActive; // 0 = off, 1=on +/*7224*/ TributeStruct tributes[MAX_TRIBUTES]; // Current tribute loadout +/*7264*/ uint32_t disciplines[MAX_DISCIPLINES]; // Known disciplines +/*7464*/ uint8_t unknown6504[440]; // *** Placeholder +/*7904*/ uint32_t endurance; // Current endurance +/*7908*/ uint32_t expGroupLeadAA; // Current group lead AA exp (0-1000) +/*7912*/ uint32_t expRaidLeadAA; // Current raid lead AA exp (0-2000) +/*7916*/ uint32_t groupLeadAAUnspent; // Unspent group lead AA points +/*7920*/ uint32_t raidLeadAAUnspent; // Unspent raid lead AA points +/*7924*/ uint32_t leadershipAAs[MAX_LEAD_AA]; // Leader AA ranks +/*8052*/ uint8_t unknown7092[132]; // *** Placeholder +/*8184*/ uint32_t airRemaining; // Air supply (seconds) +/*8188*/ uint8_t unknown7228[4608]; // *** Placeholder +/*12796*/ uint32_t aa_spent; // Number of spent AA points +/*12800*/ uint32_t expAA; // Exp earned in current AA point +/*12804*/ uint32_t aa_unspent; // Unspent AA points +/*12808*/ uint8_t unknown11848[36]; // *** Placeholder +/*12844*/ BandolierStruct bandoliers[MAX_BANDOLIERS]; // bandolier contents +/*14124*/ uint8_t unknown13164[5120]; // *** Placeholder +/*19244*/ InlineItem potionBelt[MAX_POTIONS_IN_BELT]; // potion belt +/*19532*/ uint8_t unknown18572[8]; // *** Placeholder +/*19540*/ uint32_t currentRadCrystals; // Current count of radiant crystals +/*19544*/ uint32_t careerRadCrystals; // Total count of radiant crystals ever +/*19548*/ uint32_t currentEbonCrystals;// Current count of ebon crystals +/*19552*/ uint32_t careerEbonCrystals; // Total count of ebon crystals ever +/*19556*/ uint32_t unknown18596; // *** Placeholder +}; /* 19560 */ #if 1 struct playerAAStruct { |
From: Chad M. <cmm...@us...> - 2005-05-17 02:07:57
|
Update of /cvsroot/seq/showeq In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21285 Modified Files: Tag: pre_5_0_beta ChangeLog Log Message: Fixed op_SpawnRename, which it turns out renames the Veteran AA jesters after they spawn from SoAndSo's Ward to a_jester_of_bristlebane. Index: ChangeLog =================================================================== RCS file: /cvsroot/seq/showeq/Attic/ChangeLog,v retrieving revision 1.1.2.17 retrieving revision 1.1.2.18 diff -u -d -r1.1.2.17 -r1.1.2.18 --- ChangeLog 15 May 2005 16:06:24 -0000 1.1.2.17 +++ ChangeLog 16 May 2005 01:55:59 -0000 1.1.2.18 @@ -1,5 +1,9 @@ Version: $Id$ $Name$ +purple (05/15/05) +--------------------- ++ Found OP_SpawnRename again. It's used to rename the Bristlebane jesters + purple (05/11/05) ---------------------- + Updated version to 5.0.0.21 |
From: Chad M. <cmm...@us...> - 2005-05-17 01:09:13
|
Update of /cvsroot/seq/showeq/conf In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21285/conf Modified Files: Tag: pre_5_0_beta zoneopcodes.xml Log Message: Fixed op_SpawnRename, which it turns out renames the Veteran AA jesters after they spawn from SoAndSo's Ward to a_jester_of_bristlebane. Index: zoneopcodes.xml =================================================================== RCS file: /cvsroot/seq/showeq/conf/Attic/zoneopcodes.xml,v retrieving revision 1.1.4.19 retrieving revision 1.1.4.20 diff -u -d -r1.1.4.19 -r1.1.4.20 --- zoneopcodes.xml 15 May 2005 16:06:25 -0000 1.1.4.19 +++ zoneopcodes.xml 16 May 2005 01:56:00 -0000 1.1.4.20 @@ -21,10 +21,6 @@ <comment>old CorpseLocCode:</comment> <payload dir="server" typename="corpseLocStruct" sizechecktype="match"/> </opcode> - <opcode id="0b8b" name="OP_SpawnRename" updated="02/15/05"> - <comment>Spawns getting renamed after initial NewSpawn</comment> - <payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/> - </opcode> <!-- OLD OPCODES. These haven't been mapped in a post 1/26/2005 world. If you @@ -748,4 +744,8 @@ <comment>old SkillIncCode</comment> <payload dir="server" typename="skillIncStruct" sizechecktype="match"/> </opcode> + <opcode id="5958" name="OP_SpawnRename" updated="05/11/05"> + <comment>Spawns getting renamed after initial NewSpawn</comment> + <payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/> + </opcode> </seqopcodes> |