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
(2) |
Sep
(11) |
Oct
(6) |
Nov
(9) |
Dec
(4) |
| 2026 |
Jan
(5) |
Feb
(6) |
Mar
(3) |
Apr
(7) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: <cn...@us...> - 2021-04-30 04:10:24
|
Revision: 1163
http://sourceforge.net/p/seq/svn/1163
Author: cn187
Date: 2021-04-30 04:10:23 +0000 (Fri, 30 Apr 2021)
Log Message:
-----------
[Qt5] Replace toAscii with toLatin1
Modified Paths:
--------------
showeq/branches/cn187_devel/src/bazaarlog.cpp
showeq/branches/cn187_devel/src/combatlog.cpp
showeq/branches/cn187_devel/src/datalocationmgr.cpp
showeq/branches/cn187_devel/src/db3conv.cpp
showeq/branches/cn187_devel/src/drawmap.cpp
showeq/branches/cn187_devel/src/editor.cpp
showeq/branches/cn187_devel/src/experiencelog.cpp
showeq/branches/cn187_devel/src/filter.cpp
showeq/branches/cn187_devel/src/filteredspawnlog.cpp
showeq/branches/cn187_devel/src/filtermgr.cpp
showeq/branches/cn187_devel/src/filternotifications.cpp
showeq/branches/cn187_devel/src/gdbmconv.cpp
showeq/branches/cn187_devel/src/group.cpp
showeq/branches/cn187_devel/src/guild.cpp
showeq/branches/cn187_devel/src/interface.cpp
showeq/branches/cn187_devel/src/logger.cpp
showeq/branches/cn187_devel/src/main.cpp
showeq/branches/cn187_devel/src/map.cpp
showeq/branches/cn187_devel/src/mapcore.cpp
showeq/branches/cn187_devel/src/mapicon.cpp
showeq/branches/cn187_devel/src/messageshell.cpp
showeq/branches/cn187_devel/src/messagewindow.cpp
showeq/branches/cn187_devel/src/packet.cpp
showeq/branches/cn187_devel/src/packetinfo.cpp
showeq/branches/cn187_devel/src/packetlog.cpp
showeq/branches/cn187_devel/src/packetstream.cpp
showeq/branches/cn187_devel/src/player.cpp
showeq/branches/cn187_devel/src/spawnlist.cpp
showeq/branches/cn187_devel/src/spawnlist2.cpp
showeq/branches/cn187_devel/src/spawnlistcommon.cpp
showeq/branches/cn187_devel/src/spawnlog.cpp
showeq/branches/cn187_devel/src/spawnmonitor.cpp
showeq/branches/cn187_devel/src/spawnpointlist.cpp
showeq/branches/cn187_devel/src/spawnshell.cpp
showeq/branches/cn187_devel/src/util.cpp
showeq/branches/cn187_devel/src/xmlconv.cpp
showeq/branches/cn187_devel/src/xmlpreferences.cpp
showeq/branches/cn187_devel/src/zonemgr.cpp
Modified: showeq/branches/cn187_devel/src/bazaarlog.cpp
===================================================================
--- showeq/branches/cn187_devel/src/bazaarlog.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/bazaarlog.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -67,7 +67,7 @@
Item *merchant = m_shell.spawns().value(resp.player_id, nullptr);
const char *merchant_name = "unknown";
if (merchant)
- merchant_name = merchant->name().toAscii().data();
+ merchant_name = merchant->name().toLatin1().data();
QString csv;
csv.sprintf("1^%d^%d^%d^%s^%s",
int(time(NULL)),resp.price,resp.count,
Modified: showeq/branches/cn187_devel/src/combatlog.cpp
===================================================================
--- showeq/branches/cn187_devel/src/combatlog.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/combatlog.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -631,12 +631,12 @@
case 52: // Tiger Claw
{
// this is a normal skill
- s_type.sprintf("%s(%d)", skill_name(iType).toAscii().data(), iType);
+ s_type.sprintf("%s(%d)", skill_name(iType).toLatin1().data(), iType);
break;
}
case 231: // Non Melee Damage
{
- s_type.sprintf("Spell: %s(%d)", spell_name(iSpell).toAscii().data(), iSpell);
+ s_type.sprintf("Spell: %s(%d)", spell_name(iSpell).toLatin1().data(), iSpell);
break;
}
default: // Damage Shield?
Modified: showeq/branches/cn187_devel/src/datalocationmgr.cpp
===================================================================
--- showeq/branches/cn187_devel/src/datalocationmgr.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/datalocationmgr.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -55,7 +55,7 @@
// no, then attempt to create it.
if (!userDataDir.mkdir(m_userData))
{
- seqWarn("Failed to create '%s'\n", userDataDir.absolutePath().toAscii().data());
+ seqWarn("Failed to create '%s'\n", userDataDir.absolutePath().toLatin1().data());
return false;
}
}
Modified: showeq/branches/cn187_devel/src/db3conv.cpp
===================================================================
--- showeq/branches/cn187_devel/src/db3conv.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/db3conv.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -94,7 +94,7 @@
if (!dirInfo.exists())
{
fprintf(stderr, "DB3Convenience: Data Directory '%s' doesn't exist.\n",
- dirInfo.absoluteFilePath().toAscii().data());
+ dirInfo.absoluteFilePath().toLatin1().data());
// nothing more to do, just return NULL
return (Db*)NULL;
@@ -104,7 +104,7 @@
if (!dirInfo.isDir())
{
fprintf(stderr, "DB3Convenience: Data Directory '%s isn't a directory.\n",
- dirInfo.absoluteFilePath().toAscii().data());
+ dirInfo.absoluteFilePath().toLatin1().data());
// nothing more to do, just return NULL
return (Db*)NULL;
@@ -119,7 +119,7 @@
{
// if the file isn't readable, no point in going on is there...
fprintf(stderr, "DB3Convenience: Data File '%s isn't readable.\n",
- dirInfo.absoluteFilePath().toAscii().data());
+ dirInfo.absoluteFilePath().toLatin1().data());
// nothing more to do, just return NULL
return (Db*)NULL;
@@ -156,7 +156,7 @@
// setup the common database environment for all databases opened
// using this object
- ret = m_dbEnv->open(dirInfo.absoluteFilePath().toAscii().data(), dbEnvFlags,
+ ret = m_dbEnv->open(dirInfo.absoluteFilePath().toLatin1().data(), dbEnvFlags,
0664);
if (ret != 0)
@@ -187,16 +187,16 @@
#if 1 // can't do verify with transactions, logging, or locking
// verify the database before we go any further
- ret = retdbp->verify(dbName.toAscii().data(), NULL, NULL, 0);
+ ret = retdbp->verify(dbName.toLatin1().data(), NULL, NULL, 0);
if (ret != 0)
{
// display a human readable error
fprintf(stderr, "DB3Convenience: Db::verify() failed on file '%s': %s\n",
- dbName.toAscii().data(), DbEnv::strerror(ret));
+ dbName.toLatin1().data(), DbEnv::strerror(ret));
if (ret == DB_RUNRECOVERY)
fprintf(stderr, "DB3Convenience: Please run db_recover on file '%s'\n",
- dbName.toAscii().data());
+ dbName.toLatin1().data());
// check if it's a file access problem
if (openForReadOnly)
@@ -221,7 +221,7 @@
// display a human readable error
fprintf(stderr,
"DB3Convenience: Db::set_flags(0) failed on file '%s': %s\n",
- dbName.toAscii().data(), DbEnv::strerror(ret));
+ dbName.toLatin1().data(), DbEnv::strerror(ret));
// delete the database handle since it's not usable
delete retdbp;
@@ -233,13 +233,13 @@
// open the database
// ret = retdbp->open((const char*)dbName, NULL, DB_HASH, dbOpenFlags, 0664);
- ret = retdbp->open(NULL, dbName.toAscii().data(), NULL, DB_BTREE, dbOpenFlags, 0664);
+ ret = retdbp->open(NULL, dbName.toLatin1().data(), NULL, DB_BTREE, dbOpenFlags, 0664);
if (ret != 0)
{
// display a human readable error
fprintf(stderr, "DB3Convenience: Db::open() failed on file '%s': %s\n",
- dbName.toAscii().data(), DbEnv::strerror(ret));
+ dbName.toLatin1().data(), DbEnv::strerror(ret));
// check if it's a file access problem
if (openForReadOnly)
@@ -283,7 +283,7 @@
success = true;
break;
default:
- displayDB3Error(ret, "Insert: put", dbName.toAscii().data());
+ displayDB3Error(ret, "Insert: put", dbName.toLatin1().data());
}
}
@@ -307,7 +307,7 @@
success = true;
break;
default:
- displayDB3Error(ret, "Delete: del", dbName.toAscii().data());
+ displayDB3Error(ret, "Delete: del", dbName.toLatin1().data());
}
}
@@ -335,7 +335,7 @@
success = false;
break;
default:
- displayDB3Error(ret, "IsEntryExist: get", dbName.toAscii().data());
+ displayDB3Error(ret, "IsEntryExist: get", dbName.toLatin1().data());
}
}
@@ -368,7 +368,7 @@
success = false;
break;
default:
- displayDB3Error(ret, "GetEntry: get", dbName.toAscii().data());
+ displayDB3Error(ret, "GetEntry: get", dbName.toLatin1().data());
}
}
@@ -404,7 +404,7 @@
int ret = db->close(0);
if (ret != 0)
- displayDB3Error(ret, "Close: close", dbName.toAscii().data());
+ displayDB3Error(ret, "Close: close", dbName.toLatin1().data());
// remove the db from the dictionary
m_dbDict.remove(dbName);
@@ -440,7 +440,7 @@
ret = db->close(0);
if (ret != 0)
- displayDB3Error(ret, "Shutdown: close", dbName.toAscii().data());
+ displayDB3Error(ret, "Shutdown: close", dbName.toLatin1().data());
// remove the db from the dictionary
m_dbDict.remove(dbName);
@@ -510,7 +510,7 @@
if (ret != 0)
{
- displayDB3Error(ret, "GetFirstKey: cursor", dbName.toAscii().data());
+ displayDB3Error(ret, "GetFirstKey: cursor", dbName.toLatin1().data());
return false;
}
@@ -528,7 +528,7 @@
// display an error on any other error returns
if (ret != 0)
{
- displayDB3Error(ret, "GetFirstKey: get", m_dbName.toAscii().data());
+ displayDB3Error(ret, "GetFirstKey: get", m_dbName.toLatin1().data());
return false;
}
@@ -579,7 +579,7 @@
// display an error on any other error returns
if (ret != 0)
{
- displayDB3Error(ret, "GetNextKey: get", m_dbName.toAscii().data());
+ displayDB3Error(ret, "GetNextKey: get", m_dbName.toLatin1().data());
return false;
}
@@ -642,7 +642,7 @@
int ret = m_db->close(0);
if (ret != 0)
- displayDB3Error(ret, "Done: close", m_dbName.toAscii().data());
+ displayDB3Error(ret, "Done: close", m_dbName.toLatin1().data());
}
// if there is any data left over that the user didn't get, then free it
Modified: showeq/branches/cn187_devel/src/drawmap.cpp
===================================================================
--- showeq/branches/cn187_devel/src/drawmap.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/drawmap.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -527,7 +527,7 @@
gdImageString (im, gdFontSmall,
calcXOffset (locationX[n]) - 2,
calcYOffset (locationY[n]) - 2,
- (unsigned char*)locationName[n].toAscii().data(), tmpcolor);
+ (unsigned char*)locationName[n].toLatin1().data(), tmpcolor);
}
/* Print the http header */
@@ -583,7 +583,7 @@
mapName.replace(slashExp, "_");
mapName.prepend(PKGDATADIR "maps/");
- loadFileMap (mapName.toAscii().data());
+ loadFileMap (mapName.toLatin1().data());
paintMap();
}
else
Modified: showeq/branches/cn187_devel/src/editor.cpp
===================================================================
--- showeq/branches/cn187_devel/src/editor.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/editor.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -136,7 +136,7 @@
{
QString fn = QFileDialog::getOpenFileName(this);
if ( !fn.isEmpty() )
- load(fn.toAscii().data());
+ load(fn.toLatin1().data());
else
statusBar()->showMessage( "File Open Cancelled", 2000 );
}
Modified: showeq/branches/cn187_devel/src/experiencelog.cpp
===================================================================
--- showeq/branches/cn187_devel/src/experiencelog.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/experiencelog.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -324,7 +324,7 @@
QFileInfo fileInfo = m_dataLocMgr->findWriteFile("logs", "exp.log");
- m_log = fopen(fileInfo.absoluteFilePath().toAscii().data(), "a");
+ m_log = fopen(fileInfo.absoluteFilePath().toLatin1().data(), "a");
if (m_log == 0)
{
m_log_exp = 0;
@@ -363,7 +363,7 @@
#ifdef DEBUGEXP
resize( sizeHint() );
qDebug("ExperienceWindow::addExpRecord() '%s', lvl %d, exp %d",
- mob_name.toAscii().data(), mob_level, xp_gained);
+ mob_name.toLatin1().data(), mob_level, xp_gained);
#endif
if (m_log_exp)
@@ -418,7 +418,7 @@
FILE* newlogfp = NULL;
// open the file for append
- newlogfp = fopen(m_newExpLogFile.toAscii().data(), "a");
+ newlogfp = fopen(m_newExpLogFile.toLatin1().data(), "a");
if (newlogfp != NULL)
{
@@ -426,11 +426,11 @@
fprintf(newlogfp,
"0\t%s\t%s\t%d\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%d\t%d\t%lu",
- s_time, s_mob_name.toAscii().data(), mob_level,
- s_xp_value.toAscii().data(), s_xp_valueZEM.toAscii().data(),
- s_xp_valuep.toAscii().data(), s_xp_valueg.toAscii().data(),
- s_xp_gained.toAscii().data(), m_player->name().toAscii().data(),
- m_player->lastName().toAscii().data(), m_player->level(),
+ s_time, s_mob_name.toLatin1().data(), mob_level,
+ s_xp_value.toLatin1().data(), s_xp_valueZEM.toLatin1().data(),
+ s_xp_valuep.toLatin1().data(), s_xp_valueg.toLatin1().data(),
+ s_xp_gained.toLatin1().data(), m_player->name().toLatin1().data(),
+ m_player->lastName().toLatin1().data(), m_player->level(),
m_player->classVal(), m_group->groupSize());
const Spawn* spawn;
Modified: showeq/branches/cn187_devel/src/filter.cpp
===================================================================
--- showeq/branches/cn187_devel/src/filter.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/filter.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -181,7 +181,7 @@
// For the pattern, save off the original. This is what will be saved
// during save operations. But the actual regexp we filter with will
// mark the # in spawn names as optional to aid in filter writing.
- m_regexpOriginalPattern = QString(regexString.toAscii().data());
+ m_regexpOriginalPattern = QString(regexString.toLatin1().data());
QString fixedFilterPattern = regexString;
fixedFilterPattern.replace("Name:", "Name:#?", Qt::CaseInsensitive);
@@ -190,8 +190,8 @@
if (!m_regexp.isValid())
{
seqWarn("Filter Error: '%s' - %s",
- m_regexp.pattern().toAscii().data(),
- m_regexp.errorString().toAscii().data());
+ m_regexp.pattern().toLatin1().data(),
+ m_regexp.errorString().toLatin1().data());
}
}
@@ -203,8 +203,8 @@
if (!m_regexp.isValid())
{
seqWarn("Filter Error: '%s' - %s",
- m_regexp.pattern().toAscii().data(),
- m_regexp.errorString().toAscii().data());
+ m_regexp.pattern().toLatin1().data(),
+ m_regexp.errorString().toLatin1().data());
}
}
@@ -604,13 +604,13 @@
FilterMap::const_iterator it;
seqInfo("Filters from file '%s':",
- m_file.toAscii().data());
+ m_file.toLatin1().data());
// iterate over the filters
for (it = m_filters.begin(); it != m_filters.end(); it++)
{
// print the header
seqInfo("Filter Type '%s':",
- m_types.name(it->first).toAscii().data());
+ m_types.name(it->first).toLatin1().data());
// list off the actual filters
it->second->listFilters();
Modified: showeq/branches/cn187_devel/src/filteredspawnlog.cpp
===================================================================
--- showeq/branches/cn187_devel/src/filteredspawnlog.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/filteredspawnlog.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -92,12 +92,12 @@
// log the information
outputf("%s %s %s LOC %dy, %dx, %dz at %s (%s)\n",
- m_filterMgr->filterString(flag).toAscii().data(),
+ m_filterMgr->filterString(flag).toLatin1().data(),
action,
- item->name().toAscii().data(),
+ item->name().toLatin1().data(),
item->y(), item->x(), item->z(),
- eqDate.isValid() ? eqDate.toString().toAscii().data() : "",
- item->spawnTimeStr().toAscii().data());
+ eqDate.isValid() ? eqDate.toString().toLatin1().data() : "",
+ item->spawnTimeStr().toLatin1().data());
flush();
}
Modified: showeq/branches/cn187_devel/src/filtermgr.cpp
===================================================================
--- showeq/branches/cn187_devel/src/filtermgr.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/filtermgr.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -138,7 +138,7 @@
m_filterFile = fileInfo.absoluteFilePath();
- seqInfo("Loading Filters from '%s'", m_filterFile.toAscii().data());
+ seqInfo("Loading Filters from '%s'", m_filterFile.toLatin1().data());
m_filters->load(m_filterFile);
@@ -152,7 +152,7 @@
m_filterFile = fileInfo.absoluteFilePath();
- seqInfo("Loading Filters from '%s'", m_filterFile.toAscii().data());
+ seqInfo("Loading Filters from '%s'", m_filterFile.toLatin1().data());
m_filters->load(m_filterFile);
@@ -168,7 +168,7 @@
m_filterFile = fileInfo.absoluteFilePath();
- seqInfo("Saving filters to %s", m_filterFile.toAscii().data());
+ seqInfo("Saving filters to %s", m_filterFile.toLatin1().data());
m_filters->save(m_filterFile);
}
@@ -243,7 +243,7 @@
m_zoneFilterFile = fileInfo.absoluteFilePath();
- seqInfo("Loading Zone Filter File: %s", m_zoneFilterFile.toAscii().data());
+ seqInfo("Loading Zone Filter File: %s", m_zoneFilterFile.toLatin1().data());
m_zoneFilters->load(m_zoneFilterFile);
@@ -259,7 +259,7 @@
m_zoneFilterFile = fileInfo.absoluteFilePath();
- seqInfo("Loading Zone Filter File: %s", m_zoneFilterFile.toAscii().data());
+ seqInfo("Loading Zone Filter File: %s", m_zoneFilterFile.toLatin1().data());
m_zoneFilters->load(m_zoneFilterFile);
@@ -281,7 +281,7 @@
m_zoneFilterFile = fileInfo.absoluteFilePath();
- seqInfo("Saving filters to %s", m_zoneFilterFile.toAscii().data());
+ seqInfo("Saving filters to %s", m_zoneFilterFile.toLatin1().data());
if (! m_zoneFilters->save(m_zoneFilterFile))
{
Modified: showeq/branches/cn187_devel/src/filternotifications.cpp
===================================================================
--- showeq/branches/cn187_devel/src/filternotifications.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/filternotifications.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -141,7 +141,7 @@
command.replace(cueExp, audioCue);
// fire off the command
- system (command.toAscii().data());
+ system (command.toLatin1().data());
}
#ifndef QMAKEBUILD
Modified: showeq/branches/cn187_devel/src/gdbmconv.cpp
===================================================================
--- showeq/branches/cn187_devel/src/gdbmconv.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/gdbmconv.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -75,7 +75,7 @@
dbName += ".dbm";
// attempt to open the database for write
- if ((dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_WRCREAT, 0644, 0))
+ if ((dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_WRCREAT, 0644, 0))
!= NULL)
{
// if successful, then attempt to insert or replace data under key
@@ -86,7 +86,7 @@
success = true;
break;
default:
- displayGDBMError("Insert: gdbm_store", dbName.toAscii().data());
+ displayGDBMError("Insert: gdbm_store", dbName.toLatin1().data());
}
// close the database
@@ -95,7 +95,7 @@
else
{
// display GDBM Error
- displayGDBMError("Insert: gdbm_open", dbName.toAscii().data());
+ displayGDBMError("Insert: gdbm_open", dbName.toLatin1().data());
// attempt to diagnose the open for write failure
diagFileWriteFail(dbName);
@@ -116,7 +116,7 @@
dbName += ".dbm";
// attempt to open the database for write
- if ((dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_WRITER, 0644, 0))
+ if ((dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_WRITER, 0644, 0))
!= NULL)
{
// if successful, then attempt to insert or replace data under key
@@ -123,7 +123,7 @@
if (gdbm_delete(dbf, key_) == 0)
success = true;
else
- displayGDBMError("Delete: gdbm_delete", dbName.toAscii().data());
+ displayGDBMError("Delete: gdbm_delete", dbName.toLatin1().data());
// close the database
gdbm_close(dbf);
@@ -131,7 +131,7 @@
else
{
// display GDBM Error
- displayGDBMError("Delete: gdbm_open", dbName.toAscii().data());
+ displayGDBMError("Delete: gdbm_open", dbName.toLatin1().data());
// attempt to diagnose the open for write failure
diagFileWriteFail(dbName);
@@ -153,7 +153,7 @@
dbName += ".dbm";
// attempt to open the database for read
- if ((dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_READER,
+ if ((dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_READER,
0644, 0)) != NULL)
{
// attempt to retrieve the entry from the database
@@ -188,7 +188,7 @@
dbName += ".dbm";
// attmpet to open the database for read
- if ((dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_READER,
+ if ((dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_READER,
0644, 0)) != NULL)
{
// attempt to retrieve the entry from the database
@@ -208,7 +208,7 @@
else
{
// display the notice (this isn't necessarily bad)
- displayGDBMError("GetEntry: gdbm_open", dbName.toAscii().data(), "Notice");
+ displayGDBMError("GetEntry: gdbm_open", dbName.toLatin1().data(), "Notice");
// attempt to diagnose the open for read failure
diagFileReadFail(dbName);
@@ -227,7 +227,7 @@
dbName += ".dbm";
// attempt to open the database for write
- if ((dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_WRITER, 0644, 0))
+ if ((dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_WRITER, 0644, 0))
!= NULL)
{
// if successful, then attempt to insert or replace data under key
@@ -234,7 +234,7 @@
if (gdbm_reorganize(dbf) == 0)
success = true;
else
- displayGDBMError("Reorganize: gdbm_reorganize", dbName.toAscii().data());
+ displayGDBMError("Reorganize: gdbm_reorganize", dbName.toLatin1().data());
// close the database
gdbm_close(dbf);
@@ -242,7 +242,7 @@
else
{
// display GDBM Error
- displayGDBMError("Reorganize: gdbm_open", dbName.toAscii().data());
+ displayGDBMError("Reorganize: gdbm_open", dbName.toLatin1().data());
// attempt to diagnose the open for write failure
diagFileWriteFail(dbName);
@@ -311,13 +311,13 @@
dbName += ".dbm";
// open the specified DB file for reading
- m_dbf = gdbm_open(dbName.toAscii().data(), 0, GDBM_READER,
+ m_dbf = gdbm_open(dbName.toLatin1().data(), 0, GDBM_READER,
0644, 0);
// if failed, then nothing to read
if (m_dbf == NULL)
{
- displayGDBMError("GetFirstKey: gdbm_open", dbName.toAscii().data());
+ displayGDBMError("GetFirstKey: gdbm_open", dbName.toLatin1().data());
// attempt to diagnose the open for read failure
diagFileReadFail(dbName);
Modified: showeq/branches/cn187_devel/src/group.cpp
===================================================================
--- showeq/branches/cn187_devel/src/group.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/group.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -198,7 +198,7 @@
const groupDisbandStruct* gmem = (const groupDisbandStruct*)data;
// If we're disbanding, reset counters and clear member slots
- if(!strcmp(gmem->membername, m_player->name().toAscii().data()))
+ if(!strcmp(gmem->membername, m_player->name().toLatin1().data()))
{
m_memberCount = 0;
m_membersInZoneCount = 0;
Modified: showeq/branches/cn187_devel/src/guild.cpp
===================================================================
--- showeq/branches/cn187_devel/src/guild.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/guild.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -197,7 +197,7 @@
seqInfo("GuildMgr: Guildsfile loaded");
}
else
- seqWarn("GuildMgr: Could not load guildsfile, %s", guildsFileName.toAscii().data());
+ seqWarn("GuildMgr: Could not load guildsfile, %s", guildsFileName.toLatin1().data());
}
void GuildMgr::guildList2text(QString fn)
@@ -237,7 +237,7 @@
for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
if (!itr->second.isNull())
- seqInfo("%d\t%s", itr->first, itr->second.toAscii().data());
+ seqInfo("%d\t%s", itr->first, itr->second.toLatin1().data());
}
}
Modified: showeq/branches/cn187_devel/src/interface.cpp
===================================================================
--- showeq/branches/cn187_devel/src/interface.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/interface.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -2493,7 +2493,7 @@
bool usePos = pSEQPrefs->getPrefBool("UseWindowPos", section, true);
if (usePos)
{
- if (!restoreGeometry(QByteArray::fromBase64(dockPrefsGeometry.toAscii())))
+ if (!restoreGeometry(QByteArray::fromBase64(dockPrefsGeometry.toLatin1())))
seqWarn("Could not restore dock/window geometry. Rearrange windows "
"as desired and then re-save preferences");
else
@@ -2501,7 +2501,7 @@
if (isMaximized())
setGeometry(QApplication::desktop()->availableGeometry(this));
- if (!restoreState(QByteArray::fromBase64(dockPrefsState.toAscii())))
+ if (!restoreState(QByteArray::fromBase64(dockPrefsState.toLatin1())))
seqWarn("Could not restore dock/window state. Rearrange windows as"
" desired and then re-save prefrences");
}
@@ -3491,7 +3491,7 @@
// dump the spawns
m_spawnShell->dumpSpawns(tSpawn, out);
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
void EQInterface::listDrops (void)
@@ -3507,7 +3507,7 @@
// dump the drops
m_spawnShell->dumpSpawns(tDrop, out);
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
void EQInterface::listMapInfo(void)
@@ -3531,7 +3531,7 @@
m_map[i]->dumpInfo(out);
}
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
void EQInterface::listInterfaceInfo(void)
@@ -3556,7 +3556,7 @@
out << "FIXME" << endl;
out << "-----------------------" << endl;
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
void EQInterface::listGroup(void)
@@ -3572,7 +3572,7 @@
// dump the drops
m_groupMgr->dumpInfo(out);
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
@@ -3589,7 +3589,7 @@
// dump the drops
m_guildShell->dumpMembers(out);
- seqInfo(outText.toAscii().data());
+ seqInfo(outText.toLatin1().data());
}
void EQInterface::dumpSpawns (void)
@@ -3772,7 +3772,7 @@
void
EQInterface::launch_editor_filters(void)
{
- EditorWindow * ew = new EditorWindow(m_filterMgr->filterFile().toAscii().data());
+ EditorWindow * ew = new EditorWindow(m_filterMgr->filterFile().toLatin1().data());
ew->setWindowTitle(m_filterMgr->filterFile());
ew->show();
}
@@ -3780,7 +3780,7 @@
void
EQInterface::launch_editor_zoneFilters(void)
{
- EditorWindow * ew = new EditorWindow(m_filterMgr->zoneFilterFile().toAscii().data());
+ EditorWindow * ew = new EditorWindow(m_filterMgr->zoneFilterFile().toLatin1().data());
ew->setWindowTitle(m_filterMgr->zoneFilterFile());
ew->show();
}
@@ -4397,7 +4397,7 @@
pSEQPrefs->setPrefString("OpCodeList", section, opCodeList);
- seqInfo("OpCode monitoring is now ENABLED...\nUsing list:\t%s", opCodeList.toAscii().data());
+ seqInfo("OpCode monitoring is now ENABLED...\nUsing list:\t%s", opCodeList.toLatin1().data());
}
}
else
@@ -4424,7 +4424,7 @@
m_opcodeMonitorLog->init(opCodeList);
seqInfo("The monitored OpCode list has been reloaded...\nUsing list:\t%s",
- opCodeList.toAscii().data());
+ opCodeList.toLatin1().data());
// set the list of monitored opcodes
pSEQPrefs->setPrefString("OpCodeList", section, opCodeList);
@@ -5013,7 +5013,7 @@
void EQInterface::saveSelectedSpawnPath(void)
{
QString fileName;
- fileName.sprintf("%s_mobpath.map", m_zoneMgr->shortZoneName().toAscii().data());
+ fileName.sprintf("%s_mobpath.map", m_zoneMgr->shortZoneName().toLatin1().data());
QFileInfo fileInfo = m_dataLocationMgr->findWriteFile("maps", fileName, false);
@@ -5024,7 +5024,7 @@
// append the selected spawns path to the end
saveSpawnPath(out, m_selectedSpawn);
- seqInfo("Finished appending '%s'!\n", fileName.toAscii().data());
+ seqInfo("Finished appending '%s'!\n", fileName.toLatin1().data());
}
}
@@ -5031,7 +5031,7 @@
void EQInterface::saveSpawnPaths(void)
{
QString fileName;
- fileName.sprintf("%s_mobpath.map", m_zoneMgr->shortZoneName().toAscii().data());
+ fileName.sprintf("%s_mobpath.map", m_zoneMgr->shortZoneName().toLatin1().data());
QFileInfo fileInfo = m_dataLocationMgr->findWriteFile("maps", fileName, false);
@@ -5059,7 +5059,7 @@
saveSpawnPath(out, it.value());
}
- seqInfo("Finished writing '%s'!\n", fileName.toAscii().data());
+ seqInfo("Finished writing '%s'!\n", fileName.toLatin1().data());
}
}
@@ -5150,7 +5150,7 @@
{
if (address.length() != 17)
{
- seqWarn("Invalid MAC Address (%s)! Ignoring!", address.toAscii().data());
+ seqWarn("Invalid MAC Address (%s)! Ignoring!", address.toLatin1().data());
return;
}
for (int i = 4; i > 0; i--)
@@ -5782,7 +5782,7 @@
m_spawnMonitor,
mapPrefName,
mapCaption,
- mapName.toAscii().data(),
+ mapName.toLatin1().data(),
0);
@@ -5837,7 +5837,7 @@
m_messageWindow[i] = new MessageWindow(m_messages, m_messageFilters,
prefName, caption,
- 0, name.toAscii().data());
+ 0, name.toLatin1().data());
setDockEnabled(m_messageWindow[i],
pSEQPrefs->getPrefBool(QString("Dockable") + prefName,
Modified: showeq/branches/cn187_devel/src/logger.cpp
===================================================================
--- showeq/branches/cn187_devel/src/logger.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/logger.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -52,7 +52,7 @@
if (m_fp)
return true;
- m_fp = fopen(m_filename.toAscii().data(),"a");
+ m_fp = fopen(m_filename.toLatin1().data(),"a");
if (!m_fp)
{
@@ -59,7 +59,7 @@
if (!m_errOpen)
{
::fprintf(stderr, "Error opening %s: %s (will keep trying)\n",
- m_filename.toAscii().data(), strerror(errno));
+ m_filename.toLatin1().data(), strerror(errno));
m_errOpen = true;
}
Modified: showeq/branches/cn187_devel/src/main.cpp
===================================================================
--- showeq/branches/cn187_devel/src/main.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/main.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -250,7 +250,7 @@
}
/* NOTE: See preferencefile.cpp for info on how to use prefrences class */
- printf("Using config file '%s'\n", configFile.toAscii().data());
+ printf("Using config file '%s'\n", configFile.toLatin1().data());
pSEQPrefs = new XMLPreferences(configFileDef, configFile);
showeq_params = new ShowEQParams;
Modified: showeq/branches/cn187_devel/src/map.cpp
===================================================================
--- showeq/branches/cn187_devel/src/map.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/map.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -350,7 +350,7 @@
{
#ifdef DEBUGMAP
qDebug ("zoneEnd(%s, %s)",
- longZoneName.toAscii().data(), shortZoneName.toAscii().data());
+ longZoneName.toLatin1().data(), shortZoneName.toLatin1().data());
#endif /* DEBUGMAP */
// atttempt to load the new map
@@ -381,14 +381,14 @@
}
else
{
- seqInfo("No Map found for zone '%s'!", shortZoneName.toAscii().data());
+ seqInfo("No Map found for zone '%s'!", shortZoneName.toLatin1().data());
seqInfo(" Checked for all variants of '%s.map', '%s.txt', and '%s_1.txt'",
- shortZoneName.toAscii().data(),
- shortZoneName.toAscii().data(),
- shortZoneName.toAscii().data());
+ shortZoneName.toLatin1().data(),
+ shortZoneName.toLatin1().data(),
+ shortZoneName.toLatin1().data());
seqInfo(" in directories '%s' and '%s'!",
- m_dataLocMgr->userDataDir("maps").absolutePath().toAscii().data(),
- m_dataLocMgr->pkgDataDir("maps").absolutePath().toAscii().data());
+ m_dataLocMgr->userDataDir("maps").absolutePath().toLatin1().data(),
+ m_dataLocMgr->pkgDataDir("maps").absolutePath().toLatin1().data());
}
}
@@ -410,7 +410,7 @@
if (fileName.isEmpty ())
return;
- seqInfo("Attempting to load map: %s", fileName.toAscii().data());
+ seqInfo("Attempting to load map: %s", fileName.toLatin1().data());
// load the map
loadFileMap(fileName, false, true);
@@ -434,7 +434,7 @@
if (fileName.isEmpty ())
return;
- seqInfo("Attempting to import map: %s", fileName.toAscii().data());
+ seqInfo("Attempting to import map: %s", fileName.toLatin1().data());
// load the map
loadFileMap(fileName, true, true);
@@ -3012,7 +3012,7 @@
// first create the dialog
m_mapIconDialog = new MapIconDialog(this);
m_mapIconDialog->setObjectName(
- QString(windowTitle() + " Icon Dialog").toAscii().data());
+ QString(windowTitle() + " Icon Dialog").toLatin1().data());
// then pass it this objects map icons object
m_mapIconDialog->setMapIcons(m_mapIcons);
@@ -4230,14 +4230,14 @@
"%.3s/Z: %5d/%5d/%5d\n"
"Last: %s\n"
"Spawned: %s\t Remaining: %s\t Count: %d",
- sp->name().toAscii().data(),
+ sp->name().toLatin1().data(),
showeq_params->retarded_coords ? "Y/X" : "X/Y",
showeq_params->retarded_coords ? sp->y() : sp->x(),
showeq_params->retarded_coords ? sp->x() : sp->y(),
sp->z(),
- sp->last().toAscii().data(),
- spawned.toAscii().data(),
- remaining.toAscii().data(),
+ sp->last().toLatin1().data(),
+ spawned.toLatin1().data(),
+ remaining.toLatin1().data(),
sp->count());
m_mapTip->setText( string );
@@ -4259,7 +4259,7 @@
{
QString guild;
if (!spawn->guildTag().isEmpty())
- guild.sprintf("<%s>", spawn->guildTag().toAscii().data());
+ guild.sprintf("<%s>", spawn->guildTag().toLatin1().data());
else if (spawn->guildID())
guild = QString::number(spawn->guildID());
else
@@ -4293,13 +4293,13 @@
spawn->transformedName().toUtf8().data(),
lastName.toUtf8().data(),
guild.toLatin1().data(),
- spawn->level(), hp.toAscii().data(),
+ spawn->level(), hp.toLatin1().data(),
showeq_params->retarded_coords ? "Y/X" : "X/Y",
showeq_params->retarded_coords ? spawn->y() : spawn->x(),
showeq_params->retarded_coords ? spawn->x() : spawn->y(),
item->z(),
- spawn->raceString().toAscii().data(),
- spawn->classString().toAscii().data());
+ spawn->raceString().toLatin1().data(),
+ spawn->classString().toLatin1().data());
if (m_deityPvP)
string += " Deity: " + spawn->deityName();
@@ -4320,8 +4320,8 @@
showeq_params->retarded_coords ? item->y() : item->x(),
showeq_params->retarded_coords ? item->x() : item->y(),
item->z(),
- item->raceString().toAscii().data(),
- item->classString().toAscii().data());
+ item->raceString().toLatin1().data(),
+ item->classString().toLatin1().data());
if ((door) && (door->zonePoint() != 0xFFFFFFFF))
{
@@ -4604,8 +4604,8 @@
filename = files[0];
if (!filename.isEmpty())
- m_offscreen.save(filename.toAscii().data(),
- filter.left(filter.indexOf(' ')).toAscii().data());
+ m_offscreen.save(filename.toLatin1().data(),
+ filter.left(filter.indexOf(' ')).toLatin1().data());
}
//----------------------------------------------------------------------
Modified: showeq/branches/cn187_devel/src/mapcore.cpp
===================================================================
--- showeq/branches/cn187_devel/src/mapcore.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/mapcore.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -508,7 +508,7 @@
return;
- const char* filename = fileName.toAscii().data();
+ const char* filename = fileName.toLatin1().data();
QFile mapFile(fileName);
@@ -607,7 +607,7 @@
bool ok;
- switch (entryType.toAscii())
+ switch (entryType.toLatin1())
{
case 'M':
{
@@ -918,7 +918,7 @@
if (m_image.load(imageFileName))
{
m_imageLoaded = true;
- seqInfo("Loaded map image: '%s'", imageFileName.toAscii().data());
+ seqInfo("Loaded map image: '%s'", imageFileName.toLatin1().data());
}
seqInfo("Loaded map: '%s'", filename);
@@ -952,7 +952,7 @@
if (fileName.contains("/.txt") != 0)
return;
- const char* filename = fileName.toAscii().data();
+ const char* filename = fileName.toLatin1().data();
QFile mapFile(fileName);
@@ -1027,7 +1027,7 @@
// get the field count
count = fields.count();
- switch (entryType.toAscii())
+ switch (entryType.toLatin1())
{
case 'L':
{
@@ -1148,7 +1148,7 @@
if (m_image.load(imageFileName))
{
m_imageLoaded = true;
- seqInfo("Loaded map image: '%s'", imageFileName.toAscii().data());
+ seqInfo("Loaded map image: '%s'", imageFileName.toLatin1().data());
}
seqInfo("Loaded SOE map: '%s'", filename);
@@ -1164,9 +1164,9 @@
const char* filename;
if (!fileName.isEmpty())
- filename = fileName.toAscii().data();
+ filename = fileName.toLatin1().data();
else
- filename = m_fileName.toAscii().data();
+ filename = m_fileName.toLatin1().data();
if ((fh = fopen(filename, "w")) == NULL)
{
@@ -1175,8 +1175,8 @@
}
// write out header info
- fprintf(fh, "%s,%s,%d,%d\n", m_zoneLongName.toAscii().data(),
- m_zoneShortName.toAscii().data(), m_size.width(), m_size.height());
+ fprintf(fh, "%s,%s,%d,%d\n", m_zoneLongName.toLatin1().data(),
+ m_zoneShortName.toLatin1().data(), m_size.width(), m_size.height());
// write out ZEM info if non-default
if (m_zoneZEM != 75)
@@ -1210,8 +1210,8 @@
// write out the start of the line info
fprintf (fh, "L,%s,%s,%d",
- currentLineL->name().toAscii().data(),
- currentLineL->colorName().toAscii().data(),
+ currentLineL->name().toLatin1().data(),
+ currentLineL->colorName().toLatin1().data(),
currentLineL->size());
// write out all the 2D points in the line
@@ -1235,8 +1235,8 @@
currentLineM = *mmit;
// write out the start of the line info
fprintf (fh, "M,%s,%s,%d",
- currentLineM->name().toAscii().data(),
- currentLineM->colorName().toAscii().data(),
+ currentLineM->name().toLatin1().data(),
+ currentLineM->colorName().toLatin1().data(),
currentLineM->size());
// write out all the 3D points in the line
@@ -1259,14 +1259,14 @@
if (!currentLoc->heightSet())
fprintf (fh, "P,%s,%s,%d,%d\n",
- currentLoc->name().toAscii().data(),
- currentLoc->colorName().toAscii().data(),
+ currentLoc->name().toLatin1().data(),
+ currentLoc->colorName().toLatin1().data(),
currentLoc->x(),
currentLoc->y());
else
fprintf (fh, "P,%s,%s,%d,%d,%d\n",
- currentLoc->name().toAscii().data(),
- currentLoc->colorName().toAscii().data(),
+ currentLoc->name().toLatin1().data(),
+ currentLoc->colorName().toLatin1().data(),
currentLoc->x(),
currentLoc->y(),
currentLoc->z());
@@ -1279,7 +1279,7 @@
MapAggro* currentAggro = *ait;
fprintf (fh, "A,%s,%d\n",
- currentAggro->name().toAscii().data(), currentAggro->range());
+ currentAggro->name().toLatin1().data(), currentAggro->range());
}
#ifdef DEBUGMAP
@@ -1302,9 +1302,9 @@
const char* filename;
if (!fileName.isEmpty())
- filename = fileName.toAscii().data();
+ filename = fileName.toLatin1().data();
else
- filename = m_fileName.toAscii().data();
+ filename = m_fileName.toLatin1().data();
if ((fh = fopen(filename, "w")) == NULL)
{
@@ -1392,7 +1392,7 @@
-float(currentLoc->x()), -float(currentLoc->y()),
float(currentLoc->z()),
color.red(), color.green(), color.blue(),
- name.toAscii().data());
+ name.toLatin1().data());
}
#ifdef DEBUGMAP
seqDebug("saveMap() - map '%s' saved with %d L lines, %d M lines, %d locations", filename,
Modified: showeq/branches/cn187_devel/src/mapicon.cpp
===================================================================
--- showeq/branches/cn187_devel/src/mapicon.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/mapicon.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -1103,7 +1103,7 @@
spawnNameText.sprintf("%2d: %s",
spawn->level(),
- spawn->name().toAscii().data());
+ spawn->name().toLatin1().data());
QFontMetrics fm(param.font());
int width = fm.width(spawnNameText);
@@ -1216,8 +1216,8 @@
QString spawnNameText;
spawnNameText.sprintf("sp:%s %s (%d)",
- sp->name().toAscii().data(),
- sp->last().toAscii().data(),
+ sp->name().toLatin1().data(),
+ sp->last().toLatin1().data(),
sp->count());
QFontMetrics fm(param.font());
Modified: showeq/branches/cn187_devel/src/messageshell.cpp
===================================================================
--- showeq/branches/cn187_devel/src/messageshell.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/messageshell.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -110,7 +110,7 @@
cmsg->sender,
cmsg->target,
cmsg->message,
- language_name(cmsg->language).toAscii().data()
+ language_name(cmsg->language).toLatin1().data()
);
}
else
@@ -118,7 +118,7 @@
tempStr.sprintf( "'%s' - %s {%s}",
cmsg->sender,
cmsg->message,
- language_name(cmsg->language).toAscii().data()
+ language_name(cmsg->language).toLatin1().data()
);
}
}
@@ -549,8 +549,8 @@
if (mem->param1 != 4)
tempStr.sprintf("%s%s', slot %d.",
- tempStr.toAscii().data(),
- spellName.toAscii().data(),
+ tempStr.toLatin1().data(),
+ spellName.toLatin1().data(),
mem->slotId);
else
@@ -598,8 +598,8 @@
spellName = spell_name(bcast->spellId);
tempStr.sprintf( "%s%s' - Casting time is %g Second%s",
- tempStr.toAscii().data(),
- spellName.toAscii().data(), casttime,
+ tempStr.toLatin1().data(),
+ spellName.toLatin1().data(), casttime,
casttime == 1 ? "" : "s");
m_messages->addMessage(MT_Spell, tempStr);
@@ -626,7 +626,7 @@
QString tempStr;
if (item != NULL)
tempStr.sprintf("%s(%d): %s",
- item->name().toAscii().data(), icast->spawnId, icast->message);
+ item->name().toLatin1().data(), icast->spawnId, icast->message);
else
tempStr.sprintf("spawn(%d): %s",
icast->spawnId, icast->message);
@@ -657,7 +657,7 @@
QString tempStr;
tempStr.sprintf("You begin casting %s. Current Target is %s(%d)",
- spellName.toAscii().data(), targetName.toAscii().data(),
+ spellName.toLatin1().data(), targetName.toLatin1().data(),
cast->targetId);
m_messages->addMessage(MT_Spell, tempStr);
@@ -742,7 +742,7 @@
const groupFollowStruct* gFollow = (const groupFollowStruct*)data;
QString tempStr;
- if(!strcmp(gFollow->invitee, m_player->name().toAscii().data()))
+ if(!strcmp(gFollow->invitee, m_player->name().toLatin1().data()))
tempStr = "Follow: You have joined the group";
else
tempStr.sprintf("Follow: %s has joined the group", gFollow->invitee);
@@ -872,7 +872,7 @@
const skillIncStruct* skilli = (const skillIncStruct*)data;
QString tempStr;
tempStr.sprintf("Skill: %s has increased (%d)",
- skill_name(skilli->skillId).toAscii().data(),
+ skill_name(skilli->skillId).toLatin1().data(),
skilli->value);
m_messages->addMessage(MT_Player, tempStr);
}
Modified: showeq/branches/cn187_devel/src/messagewindow.cpp
===================================================================
--- showeq/branches/cn187_devel/src/messagewindow.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/messagewindow.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -1151,8 +1151,8 @@
QString styleCaption = windowTitle() + " - " + typeName + " Style";
MessageTypeStyleDialog dialog(m_typeStyles[id],
m_defaultColor, m_defaultBGColor,
- styleCaption.toAscii().data(),
- this, styleCaption.toAscii().data());
+ styleCaption.toLatin1().data(),
+ this, styleCaption.toLatin1().data());
// popup the modal dialog
int result = dialog.exec();
Modified: showeq/branches/cn187_devel/src/packet.cpp
===================================================================
--- showeq/branches/cn187_devel/src/packet.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/packet.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -132,7 +132,7 @@
// load the world opcode db
if (!m_worldOPCodeDB->load(*m_packetTypeDB, worldopcodesxml))
- seqFatal("Error loading '%s'!", worldopcodesxml.toAscii().data());
+ seqFatal("Error loading '%s'!", worldopcodesxml.toLatin1().data());
#ifdef PACKET_OPCODEDB_DIAG
m_worldOPCodeDB->list();
@@ -145,7 +145,7 @@
// load the zone opcode db
if (!m_zoneOPCodeDB->load(*m_packetTypeDB, zoneopcodesxml))
- seqFatal("Error loading '%s'!", zoneopcodesxml.toAscii().data());
+ seqFatal("Error loading '%s'!", zoneopcodesxml.toLatin1().data());
#ifdef PACKET_OPCODEDB_DIAG
m_zoneOPCodeDB->list();
@@ -201,11 +201,11 @@
if (m_ip == "auto")
inet_aton (AUTOMATIC_CLIENT_IP, &ia);
- else if (inet_aton (m_ip.toAscii().data(), &ia) == 0)
+ else if (inet_aton (m_ip.toLatin1().data(), &ia) == 0)
{
- he = gethostbyname(m_ip.toAscii().data());
+ he = gethostbyname(m_ip.toLatin1().data());
if (!he)
- seqFatal("Invalid address; %s", m_ip.toAscii().data());
+ seqFatal("Invalid address; %s", m_ip.toLatin1().data());
memcpy (&ia, he->h_addr_list[0], he->h_length);
}
@@ -220,7 +220,7 @@
else
{
m_detectingClient = false;
- seqInfo("Listening for client: %s", m_ip.toAscii().data());
+ seqInfo("Listening for client: %s", m_ip.toLatin1().data());
}
}
@@ -229,12 +229,12 @@
// create the pcap object and initialize, either with MAC or IP
m_packetCapture = new PacketCaptureThread();
if (m_mac.length() == 17)
- m_packetCapture->start(m_device.toAscii().data(),
- m_mac.toAscii().data(),
+ m_packetCapture->start(m_device.toLatin1().data(),
+ m_mac.toLatin1().data(),
m_realtime, MAC_ADDRESS_TYPE );
else
- m_packetCapture->start(m_device.toAscii().data(),
- m_ip.toAscii().data(),
+ m_packetCapture->start(m_device.toLatin1().data(),
+ m_ip.toLatin1().data(),
m_realtime, IP_ADDRESS_TYPE );
emit filterChanged();
}
@@ -245,9 +245,9 @@
QString filename = pSEQPrefs->getPrefString("Filename", "VPacket");
- m_packetCapture->startOffline(filename.toAscii().data(), m_playbackSpeed);
+ m_packetCapture->startOffline(filename.toLatin1().data(), m_playbackSpeed);
seqInfo("Playing back packets from '%s' at speed '%d'",
- filename.toAscii().data(), m_playbackSpeed);
+ filename.toLatin1().data(), m_playbackSpeed);
}
// Flag session tracking properly on streams
@@ -285,9 +285,9 @@
if (m_recordPackets)
{
- m_vPacket = new VPacket(filename.toAscii().data(), 1, true);
+ m_vPacket = new VPacket(filename.toLatin1().data(), 1, true);
// Must appear befire next call to getPrefString, which uses a static string
- seqInfo("Recording packets to '%s' for future playback", filename.toAscii().data());
+ seqInfo("Recording packets to '%s' for future playback", filename.toLatin1().data());
if (!pSEQPrefs->getPrefString("FlushPackets", section).isNull())
m_vPacket->setFlushPacket(true);
@@ -294,11 +294,11 @@
}
else if (m_playbackPackets == PLAYBACK_FORMAT_SEQ)
{
- m_vPacket = new VPacket(filename.toAscii().data(), 1, false);
+ m_vPacket = new VPacket(filename.toLatin1().data(), 1, false);
m_vPacket->setCompressTime(pSEQPrefs->getPrefInt("CompressTime", section, 0));
m_vPacket->setPlaybackSpeed(m_playbackSpeed);
- seqInfo("Playing back packets from '%s' at speed '%d'", filename.toAscii().data(),
+ seqInfo("Playing back packets from '%s' at speed '%d'", filename.toLatin1().data(),
m_playbackSpeed);
}
@@ -611,7 +611,7 @@
m_client_addr = packet.getIPv4DestN();
m_detectingClient = false;
emit clientChanged(m_client_addr);
- seqInfo("Client Detected: %s", m_ip.toAscii().data());
+ seqInfo("Client Detected: %s", m_ip.toLatin1().data());
}
else if (m_detectingClient &&
(packet.getDestPort() >= WorldServerGeneralMinPort
@@ -621,7 +621,7 @@
m_client_addr = packet.getIPv4SourceN();
m_detectingClient = false;
emit clientChanged(m_client_addr);
- seqInfo("Client Detected: %s", m_ip.toAscii().data());
+ seqInfo("Client Detected: %s", m_ip.toLatin1().data());
}
// Dispatch based on known streams
@@ -690,7 +690,7 @@
(m_playbackPackets == PLAYBACK_OFF ||
m_playbackPackets == PLAYBACK_FORMAT_TCPDUMP))
{
- m_packetCapture->setFilter(m_device.toAscii().data(), m_ip.toAscii().data(),
+ m_packetCapture->setFilter(m_device.toLatin1().data(), m_ip.toLatin1().data(),
m_realtime, IP_ADDRESS_TYPE, 0, 0);
emit filterChanged();
}
@@ -710,7 +710,7 @@
emit clientPortLatched(m_clientPort);
seqInfo("EQPacket: SessionDisconnect detected, awaiting next zone session, pcap filter: EQ Client %s",
- m_ip.toAscii().data());
+ m_ip.toLatin1().data());
}
}
@@ -726,8 +726,8 @@
{
if (m_mac.length() == 17)
{
- m_packetCapture->setFilter(m_device.toAscii().data(),
- m_mac.toAscii().data(),
+ m_packetCapture->setFilter(m_device.toLatin1().data(),
+ m_mac.toLatin1().data(),
m_realtime,
MAC_ADDRESS_TYPE, 0,
m_clientPort);
@@ -735,8 +735,8 @@
}
else
{
- m_packetCapture->setFilter(m_device.toAscii().data(),
- m_ip.toAscii().data(),
+ m_packetCapture->setFilter(m_device.toLatin1().data(),
+ m_ip.toLatin1().data(),
m_realtime,
IP_ADDRESS_TYPE, 0,
m_clientPort);
@@ -748,12 +748,12 @@
if (m_mac.length() == 17)
{
seqInfo("EQPacket: SessionRequest detected, pcap filter: EQ Client %s, Client port %d. Server port %d",
- m_mac.toAscii().data(), m_clientPort, m_serverPort);
+ m_mac.toLatin1().data(), m_clientPort, m_serverPort);
}
else
{
seqInfo("EQPacket: SessionRequest detected, pcap filter: EQ Client %s, Client port %d. Server port %d",
- m_ip.toAscii().data(), m_clientPort, m_serverPort);
+ m_ip.toLatin1().data(), m_clientPort, m_serverPort);
}
emit clientPortLatched(m_clientPort);
@@ -917,18 +917,18 @@
{
m_ip = ip;
struct in_addr ia;
- inet_aton (m_ip.toAscii().data(), &ia);
+ inet_aton (m_ip.toLatin1().data(), &ia);
m_client_addr = ia.s_addr;
emit clientChanged(m_client_addr);
resetEQPacket();
- seqInfo("Listening for IP client: %s", m_ip.toAscii().data());
+ seqInfo("Listening for IP client: %s", m_ip.toLatin1().data());
if (m_playbackPackets == PLAYBACK_OFF ||
m_playbackPackets == PLAYBACK_FORMAT_TCPDUMP)
{
- m_packetCapture->setFilter(m_device.toAscii().data(),
- m_ip.toAscii().data(),
+ m_packetCapture->setFilter(m_device.toLatin1().data(),
+ m_ip.toLatin1().data(),
m_realtime,
IP_ADDRESS_TYPE, 0, 0);
emit filterChanged();
@@ -948,13 +948,13 @@
resetEQPacket();
- seqInfo("Listening for MAC client: %s", m_mac.toAscii().data());
+ seqInfo("Listening for MAC client: %s", m_mac.toLatin1().data());
if (m_playbackPackets == PLAYBACK_OFF ||
m_playbackPackets == PLAYBACK_FORMAT_TCPDUMP)
{
- m_packetCapture->setFilter(m_device.toAscii().data(),
- m_ip.toAscii().data(),
+ m_packetCapture->setFilter(m_device.toLatin1().data(),
+ m_ip.toLatin1().data(),
m_realtime,
IP_ADDRESS_TYPE, 0, 0);
emit filterChanged();
@@ -968,7 +968,7 @@
m_detectingClient = true;
m_ip = AUTOMATIC_CLIENT_IP;
struct in_addr ia;
- inet_aton (m_ip.toAscii().data(), &ia);
+ inet_aton (m_ip.toLatin1().data(), &ia);
m_client_addr = ia.s_addr;
emit clientChanged(m_client_addr);
@@ -979,7 +979,7 @@
if (m_playbackPackets == PLAYBACK_OFF ||
m_playbackPackets == PLAYBACK_FORMAT_TCPDUMP)
{
- m_packetCapture->setFilter(m_device.toAscii().data(), NULL,
+ m_packetCapture->setFilter(m_device.toLatin1().data(), NULL,
m_realtime,
DEFAULT_ADDRESS_TYPE, 0, 0);
emit filterChanged();
@@ -1011,11 +1011,11 @@
if (m_ip == "auto")
inet_aton (AUTOMATIC_CLIENT_IP, &ia);
- else if (inet_aton (m_ip.toAscii().data(), &ia) == 0)
+ else if (inet_aton (m_ip.toLatin1().data(), &ia) == 0)
{
- he = gethostbyname(m_ip.toAscii().data());
+ he = gethostbyname(m_ip.toLatin1().data());
if (!he)
- seqFatal("Invalid address; %s", m_ip.toAscii().data());
+ seqFatal("Invalid address; %s", m_ip.toLatin1().data());
memcpy (&ia, he->h_addr_list[0], he->h_length);
}
@@ -1030,7 +1030,7 @@
else
{
m_detectingClient = false;
- seqInfo("Listening for client: %s", m_ip.toAscii().data());
+ seqInfo("Listening for client: %s", m_ip.toLatin1().data());
}
}
@@ -1038,11 +1038,11 @@
// restart packet capture
if (m_mac.length() == 17)
- m_packetCapture->start(m_device.toAscii().data(),
- m_mac.toAscii().data(),
+ m_packetCapture->start(m_device.toLatin1().data(),
+ m_mac.toLatin1().data(),
m_realtime, MAC_ADDRESS_TYPE );
else
- m_packetCapture->start(m_device.toAscii().data(), m_ip.toAscii().data(),
+ m_packetCapture->start(m_device.toLatin1().data(), m_ip.toLatin1().data(),
m_realtime, IP_ADDRESS_TYPE );
emit filterChanged();
}
Modified: showeq/branches/cn187_devel/src/packetinfo.cpp
===================================================================
--- showeq/branches/cn187_devel/src/packetinfo.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/packetinfo.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -479,7 +479,7 @@
break;
seqInfo("\t\t\tdir=%d typename=%s size=%d sizechecktype=%d",
- currentPayload->dir(), currentPayload->typeName().toAscii().data(),
+ currentPayload->dir(), currentPayload->typeName().toLatin1().data(),
currentPayload->typeSize(), currentPayload->sizeCheckType());
}
}
@@ -691,7 +691,7 @@
if (!value.isEmpty())
{
- if (!m_currentPayload->setType(m_typeDB, value.toAscii().data()))
+ if (!m_currentPayload->setType(m_typeDB, value.toLatin1().data()))
seqWarn("Unknown payload typename '%s' for opcode '%04x'",
value.toLatin1().data(), m_currentOPCode->opcode());
}
Modified: showeq/branches/cn187_devel/src/packetlog.cpp
===================================================================
--- showeq/branches/cn187_devel/src/packetlog.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/packetlog.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -95,7 +95,7 @@
if (!open())
return;
- outputf ("%s\n", message.toAscii().data());
+ outputf ("%s\n", message.toLatin1().data());
flush();
}
@@ -300,13 +300,13 @@
uint16_t opcode, const QString& origPrefix)
{
if (!origPrefix.isEmpty())
- ::printf("%s ", origPrefix.toAscii().data());
+ ::printf("%s ", origPrefix.toLatin1().data());
else
::putchar('\n');
::printf("%s [Size: %lu]%s\n",
((dir == DIR_Server) ? "[Server->Client]" : "[Client->Server]"),
- len, opCodeToString(opcode).toAscii().data());
+ len, opCodeToString(opcode).toLatin1().data());
if (len)
{
@@ -415,7 +415,7 @@
}
seqInfo("OpCode monitoring ENABLED...");
- seqInfo("Using list:\t%s", monitoredOPCodes.toAscii().data());
+ seqInfo("Using list:\t%s", monitoredOPCodes.toLatin1().data());
QString qsCommaBuffer (""); /* Construct these outside the loop so we don't have to construct
@@ -483,7 +483,7 @@
#if 1 // ZBTEMP
seqDebug("opcode=%04x name='%s' dir=%d known=%d",
MonitoredOpCodeList [uiIndex] [0],
- MonitoredOpCodeAliasList [uiIndex].toAscii().data(),
+ MonitoredOpCodeAliasList [uiIndex].toLatin1().data(),
MonitoredOpCodeList [uiIndex] [1],
MonitoredOpCodeList [uiIndex] [2]);
#endif
Modified: showeq/branches/cn187_devel/src/packetstream.cpp
===================================================================
--- showeq/branches/cn187_devel/src/packetstream.cpp 2021-04-23 23:57:55 UTC (rev 1162)
+++ showeq/branches/cn187_devel/src/packetstream.cpp 2021-04-30 04:10:23 UTC (rev 1163)
@@ -118,9 +118,9 @@
if (!opcode)
{
seqDebug("connect2: Unknown opcode '%s' with payload type '%s'",
- opcodeName.toAscii().data(), payloadType);
+ opcodeName.toLatin1().data(), payloadType);
seqDebug("\tfor receiver '%s' of type '%s' to member '%s'",
- receiver->objectName().toAscii().data(),
+ receiver->objectName().toLatin1().data(),
receiver->metaObject()->className(), member);
return false;
}
@@ -145,11 +145,11 @@
if (!payload)
{
seqDebug("connect2: Warning! opcode '%s' has no matching payload.",
- opcodeName.toAscii().data());
+ opcodeName.toLatin1().data());
seqDebug("\tdir '%d' payload '%s' szt '%d'",
m_dir, payloadType, szt);
seqDebug("\tfor receiver '%s' of type '%s' to member '%s'",
- receiver->objectName().toAscii().data(),
+ receiver->objectName().toLatin1().data(),
receiver->metaObject()->className(), member);
return false;
@@ -164,12 +164,12 @@
// construct a name for the dispatch
QString dispatchName(256, '\0');
dispatchName.sprintf("PacketDispatch:%s:%s:%d:%s:%d",
- objectName().toAscii().data(), opcodeName.toAscii().data(),
- payload->dir(), payload->typeName().toAscii().data(),
+ objectName().toLatin1().data(), opcodeName.toLatin1().data(),
+ payload->dir(), payload->typeName().toLatin1().data(),
...
[truncated message content] |
|
From: <cn...@us...> - 2021-04-23 23:57:57
|
Revision: 1162
http://sourceforge.net/p/seq/svn/1162
Author: cn187
Date: 2021-04-23 23:57:55 +0000 (Fri, 23 Apr 2021)
Log Message:
-----------
Release 6.1.1
- Updated version to 6.1.1
- Support for EQ Patch 04/21/21
- Struct and opcode updates (Newby, cn187)
Modified Paths:
--------------
showeq/branches/cn187_devel/ChangeLog
showeq/branches/cn187_devel/conf/zoneopcodes.xml
showeq/branches/cn187_devel/configure.in
showeq/branches/cn187_devel/src/everquest.h
Modified: showeq/branches/cn187_devel/ChangeLog
===================================================================
--- showeq/branches/cn187_devel/ChangeLog 2021-04-22 14:45:46 UTC (rev 1161)
+++ showeq/branches/cn187_devel/ChangeLog 2021-04-23 23:57:55 UTC (rev 1162)
@@ -1,3 +1,9 @@
+cn187 (04/22/21)
+----------------
+- Updated version to 6.1.1
+- Support for EQ patch 04/21/21
+- Opcode and struct updates (Newby, cn187)
+
cn187 (03/10/21)
----------------
- Updated version to 6.1.0.0
Modified: showeq/branches/cn187_devel/conf/zoneopcodes.xml
===================================================================
--- showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-04-22 14:45:46 UTC (rev 1161)
+++ showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-04-23 23:57:55 UTC (rev 1162)
@@ -3,127 +3,127 @@
<seqopcodes>
<!-- Critical opcodes used directly by ShowEQ -->
- <opcode id="5983" name="OP_PlayerProfile" updated="03/10/21">
+ <opcode id="73c6" name="OP_PlayerProfile" updated="04/21/21">
<comment>CharProfileCode</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="0ed0" name="OP_ZoneEntry" updated="03/10/21">
+ <opcode id="5982" name="OP_ZoneEntry" updated="04/21/21">
<comment>ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="23bd" name="OP_TimeOfDay" updated="03/10/21">
+ <opcode id="5962" name="OP_TimeOfDay" updated="04/21/21">
<comment>TimeOfDayCode</comment>
<payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2d9e" name="OP_NewZone" updated="03/10/21">
+ <opcode id="476e" name="OP_NewZone" updated="04/21/21">
<comment>NewZoneCode</comment>
<payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7e49" name="OP_SpawnDoor" updated="03/10/21">
+ <opcode id="348a" name="OP_SpawnDoor" updated="04/21/21">
<comment>DoorSpawnsCode</comment>
<payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="4351" name="OP_GroundSpawn" updated="03/10/21">
+ <opcode id="6479" name="OP_GroundSpawn" updated="04/21/21">
<comment>MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1857" name="OP_SendZonePoints" updated="03/10/21">
+ <opcode id="600d" name="OP_SendZonePoints" updated="04/21/21">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
- <opcode id="01cf" name="OP_AAExpUpdate" updated="03/10/21">
+ <opcode id="38f8" name="OP_AAExpUpdate" updated="04/21/21">
<comment>Receiving AA experience. Also when percent to AA changes.</comment>
<payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6f2b" name="OP_ExpUpdate" updated="03/10/21">
+ <opcode id="44af" name="OP_ExpUpdate" updated="04/21/21">
<comment>ExpUpdateCode</comment>
<payload dir="server" typename="expUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6f37" name="OP_GuildMOTD" updated="03/10/21">
+ <opcode id="72c8" name="OP_GuildMOTD" updated="04/21/21">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
- <opcode id="2c42" name="OP_ClientUpdate" updated="03/10/21">
+ <opcode id="3f4f" name="OP_ClientUpdate" updated="04/21/21">
<comment>Position updates</comment>
<payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
<payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3b1b" name="OP_NpcMoveUpdate" updated="03/10/21">
+ <opcode id="19ad" name="OP_NpcMoveUpdate" updated="04/21/21">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="47e4" name="OP_MobUpdate" updated="03/10/21">
+ <opcode id="6284" name="OP_MobUpdate" updated="04/21/21">
<comment>MobUpdateCode</comment>
<payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="3180" name="OP_DeleteSpawn" updated="03/10/21">
+ <opcode id="6241" name="OP_DeleteSpawn" updated="04/21/21">
<comment>DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4513" name="OP_RemoveSpawn" updated="03/10/21">
+ <opcode id="4732" name="OP_RemoveSpawn" updated="04/21/21">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
- <opcode id="66d5" name="OP_Death" updated="03/10/21">
+ <opcode id="19a8" name="OP_Death" updated="04/21/21">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="01dd" name="OP_WearChange" updated="03/10/21">
+ <opcode id="7d1b" name="OP_WearChange" updated="04/21/21">
<comment>SpawnUpdateCode</comment>
<payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1360" name="OP_SpawnAppearance" updated="03/10/21">
+ <opcode id="26cb" name="OP_SpawnAppearance" updated="04/21/21">
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2ceb" name="OP_Stamina" updated="03/10/21">
+ <opcode id="1e83" name="OP_Stamina" updated="04/21/21">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0221" name="OP_HPUpdate" updated="03/10/21">
+ <opcode id="5a2a" name="OP_HPUpdate" updated="04/21/21">
<comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment>
<payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0a4a" name="OP_GuildMemberUpdate" updated="03/10/21">
+ <opcode id="6427" name="OP_GuildMemberUpdate" updated="04/21/21">
<comment>Info regarding guild members</comment>
<payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="3645" name="OP_ClickObject" updated="03/10/21">
+ <opcode id="51f2" name="OP_ClickObject" updated="04/21/21">
<comment>Items dropped on the ground</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
- <opcode id="269c" name="OP_Action" updated="03/10/21">
+ <opcode id="2c05" name="OP_Action" updated="04/21/21">
<comment>Spells cast etc</comment>
<payload dir="both" typename="actionStruct" sizechecktype="match"/>
<payload dir="both" typename="actionAltStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7880" name="OP_Action2" updated="03/10/21">
+ <opcode id="217b" name="OP_Action2" updated="04/21/21">
<comment>Combat actions i.e. bash, kick etc</comment>
<payload dir="both" typename="action2Struct" sizechecktype="match"/>
</opcode>
- <opcode id="35f7" name="OP_Consider" updated="03/10/21">
+ <opcode id="29ca" name="OP_Consider" updated="04/21/21">
<comment>ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
- <opcode id="77ea" name="OP_TargetMouse" updated="03/10/21">
+ <opcode id="0621" name="OP_TargetMouse" updated="04/21/21">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
- <opcode id="360a" name="OP_SpawnRename" updated="03/10/21">
+ <opcode id="6223" name="OP_SpawnRename" updated="04/21/21">
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3a49" name="OP_Illusion" updated="03/10/21">
+ <opcode id="50d9" name="OP_Illusion" updated="04/21/21">
<comment>Spawn being illusioned (changing forms)</comment>
<payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1886" name="OP_Shroud" updated="03/10/21">
+ <opcode id="4119" name="OP_Shroud" updated="04/21/21">
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
- <opcode id="21c7" name="OP_ZoneChange" updated="03/10/21">
+ <opcode id="35da" name="OP_ZoneChange" updated="04/21/21">
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
@@ -163,55 +163,55 @@
<comment>Group leader change</comment>
<payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3e30" name="OP_Buff" updated="03/10/21">
+ <opcode id="22bc" name="OP_Buff" updated="04/21/21">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
- <opcode id="52ee" name="OP_BeginCast" updated="03/10/21">
+ <opcode id="3dbe" name="OP_BeginCast" updated="04/21/21">
<comment>BeginCastCode</comment>
<payload dir="both" typename="beginCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4bb2" name="OP_CastSpell" updated="03/10/21">
+ <opcode id="5a44" name="OP_CastSpell" updated="04/21/21">
<comment>StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2e32" name="OP_SwapSpell" updated="03/10/21">
+ <opcode id="32ee" name="OP_SwapSpell" updated="04/21/21">
<comment>TradeSpellBookSlotsCode</comment>
<payload dir="both" typename="tradeSpellBookSlotsStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5336" name="OP_MemorizeSpell" updated="03/10/21">
+ <opcode id="5c57" name="OP_MemorizeSpell" updated="04/21/21">
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
- <opcode id="19be" name="OP_InspectAnswer" updated="03/10/21">
+ <opcode id="6db3" name="OP_InspectAnswer" updated="04/21/21">
<comment>InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
- <opcode id="01dc" name="OP_Emote" updated="03/10/21">
+ <opcode id="6265" name="OP_Emote" updated="04/21/21">
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
- <opcode id="56ec" name="OP_SimpleMessage" updated="03/10/21">
+ <opcode id="11e0" name="OP_SimpleMessage" updated="04/21/21">
<comment>SimpleMessageCode</comment>
<payload dir="server" typename="simpleMessageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5881" name="OP_FormattedMessage" updated="03/10/21">
+ <opcode id="4e52" name="OP_FormattedMessage" updated="04/21/21">
<comment>FormattedMessageCode i.e. pet dismissed etc</comment>
<payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="4e14" name="OP_CommonMessage" updated="03/10/21">
+ <opcode id="6f00" name="OP_CommonMessage" updated="04/21/21">
<comment>ChannelMessageCode i.e. /tell /ooc /shout etc</comment>
<payload dir="both" typename="channelMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="7a84" name="OP_SpecialMesg" updated="03/10/21">
+ <opcode id="165c" name="OP_SpecialMesg" updated="04/21/21">
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="5054" name="OP_RandomReq" updated="03/10/21">
+ <opcode id="260d" name="OP_RandomReq" updated="04/21/21">
<comment>RandomReqCode</comment>
<payload dir="client" typename="randomReqStruct" sizechecktype="match"/>
</opcode>
- <opcode id="686a" name="OP_RandomReply" updated="03/10/21">
+ <opcode id="5b74" name="OP_RandomReply" updated="04/21/21">
<comment>RandomCode</comment>
<payload dir="server" typename="randomStruct" sizechecktype="match"/>
</opcode>
@@ -223,16 +223,16 @@
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5f03" name="OP_ManaChange" updated="03/10/21">
+ <opcode id="7d0f" name="OP_ManaChange" updated="04/21/21">
<comment>Mana change. Bards send this up with no size. Casters receive this for mana updates.</comment>
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="0a42" name="OP_BazaarSearchRequest" updated="03/10/21">
+ <opcode id="03d6" name="OP_BazaarSearchRequest" updated="04/21/21">
<comment>Bazaar search request </comment>
<payload dir="client" typename="bazaarSearchQueryStruct" sizechecktype="none"/>
</opcode>
- <opcode id="521b" name="OP_BazaarSearchResponse" updated="03/10/21">
+ <opcode id="32e1" name="OP_BazaarSearchResponse" updated="04/21/21">
<comment>Bazaar search Response - Struct incorrect </comment>
<payload dir="server" typename="bazaarSearchResponseStruct" sizechecktype="modulus"/>
</opcode>
@@ -240,19 +240,19 @@
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1d16" name="OP_SkillUpdate" updated="03/10/21">
+ <opcode id="0eaa" name="OP_SkillUpdate" updated="04/21/21">
<comment>Skill up code</comment>
<payload dir="server" typename="skillIncStruct" sizechecktype="match"/>
</opcode>
- <opcode id="118a" name="OP_LevelUpdate" updated="03/10/21">
+ <opcode id="494d" name="OP_LevelUpdate" updated="04/21/21">
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6632" name="OP_DzSwitchInfo" updated="03/10/21">
+ <opcode id="3382" name="OP_DzSwitchInfo" updated="04/21/21">
<comment>Expedition compass etc</comment>
<payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/>
</opcode>
- <opcode id="3b9e" name="OP_DzInfo" updated="03/10/21">
+ <opcode id="784b" name="OP_DzInfo" updated="04/21/21">
<comment>Expedition Information</comment>
<payload dir="server" typename="dzInfo" sizechecktype="match"/>
</opcode>
@@ -260,7 +260,7 @@
<comment>Environmental Damage</comment>
<payload dir="client" typename="environmentDamageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5d70" name="OP_SetRunMode" updated="03/10/21">
+ <opcode id="358d" name="OP_SetRunMode" updated="04/21/21">
<comment>old cRunToggleCode</comment>
<payload dir="client" typename="cRunToggleStruct" sizechecktype="match"/>
</opcode>
@@ -307,15 +307,15 @@
<comment>List of group members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="3df2" name="OP_GuildMemberList" updated="03/10/21">
+ <opcode id="562f" name="OP_GuildMemberList" updated="04/21/21">
<comment>List of guild members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4f72" name="OP_ManaUpdate" updated="03/10/21">
+ <opcode id="3a2e" name="OP_ManaUpdate" updated="04/21/21">
<comment>Mana Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1137" name="OP_EndUpdate" updated="03/10/21">
+ <opcode id="3d4c" name="OP_EndUpdate" updated="04/21/21">
<comment>Endurance Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -367,7 +367,7 @@
<comment>Fellowship information - 2576 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4f4b" name="OP_ExpandedGuildInfo" updated="03/10/21">
+ <opcode id="5bbe" name="OP_ExpandedGuildInfo" updated="04/21/21">
<comment>Guild ranks and other misc guild data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -535,11 +535,11 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="616e" name="OP_GuildsInZoneList" updated="03/10/21">
+ <opcode id="4697" name="OP_GuildsInZoneList" updated="04/21/21">
<comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
<payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
</opcode>
- <opcode id="5b4e" name="OP_NewGuildInZone" updated="03/10/21">
+ <opcode id="2a7c" name="OP_NewGuildInZone" updated="04/21/21">
<comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
<payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
</opcode>
@@ -595,7 +595,7 @@
<comment>Free to play nags and other data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="10c6" name="OP_Find" updated="03/10/21">
+ <opcode id="6765" name="OP_Find" updated="04/21/21">
<comment>Find window data - 112 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Modified: showeq/branches/cn187_devel/configure.in
===================================================================
--- showeq/branches/cn187_devel/configure.in 2021-04-22 14:45:46 UTC (rev 1161)
+++ showeq/branches/cn187_devel/configure.in 2021-04-23 23:57:55 UTC (rev 1162)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.1.0.0)
+AC_INIT(showeq, 6.1.1)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
Modified: showeq/branches/cn187_devel/src/everquest.h
===================================================================
--- showeq/branches/cn187_devel/src/everquest.h 2021-04-22 14:45:46 UTC (rev 1161)
+++ showeq/branches/cn187_devel/src/everquest.h 2021-04-23 23:57:55 UTC (rev 1162)
@@ -1112,24 +1112,25 @@
{
struct
{
+ signed z:19; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned padding00:3;
- unsigned heading:12; // heading
- signed deltaX:13; // change in x
- unsigned padding00:7;
+ signed deltaZ:13; // change in z
+ signed deltaHeading:10; // change in heading
+ unsigned padding01:9;
signed deltaY:13; // change in y
signed y:19; // y coord (2nd loc value)
unsigned pitch:12; // pitch (up/down heading)
- signed animation:10; // current animation
- signed deltaHeading:10; // change in heading
+ signed x:19; // x coord (1st loc value)
+ unsigned padding03:1;
- signed z:19; // z coord (3rd loc value)
- unsigned padding03:13;
+ signed deltaX:13; // change in x
+ unsigned heading:12; // heading
+ unsigned padding04:7;
- signed x:19; // x coord (1st loc value)
- signed deltaZ:13; // change in z
-
};
int32_t posData[5];
};
@@ -2391,28 +2392,30 @@
/*0000*/ uint16_t spawnId;
/*0002*/ uint16_t spawnId2;
/*0004*/
- unsigned heading:12; // heading
- signed deltaX:13; // change in x
- unsigned padding00:7;
+ signed z:19; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned padding00:3;
/*0008*/
+ signed deltaZ:13; // change in z
+ signed deltaHeading:10; // change in heading
+ unsigned padding01:9;
+/*0012*/
signed deltaY:13; // change in y
signed y:19; // y coord (2nd loc value)
-/*0012*/
+/*0016*/
unsigned pitch:12; // pitch (up/down heading)
- signed animation:10; // current animation
- signed deltaHeading:10; // change in heading
-/*0016*/
- signed z:19; // z coord (3rd loc value)
- unsigned padding03:13;
+ signed x:19; // x coord (1st loc value)
+ unsigned padding03:1;
/*0020*/
- signed x:19; // x coord (1st loc value)
- signed deltaZ:13; // change in z
+ signed deltaX:13; // change in x
+ unsigned heading:12; // heading
+ unsigned padding04:7;
/*0024*/
};
/*
** Self Position Update
-** Length: 46 Octets
+** Length: 42 Octets
** OpCode: PlayerPosCode
*/
struct playerSelfPosStruct
@@ -2421,30 +2424,28 @@
/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint16_t unknown0004; // ***Placeholder
/*0006*/
- float z; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned heading:12; // heading
+ unsigned padding00:10;
/*0010*/
- float x; // x coord (1st loc value)
+ float y; // y coord (2nd loc value)
/*0014*/
+ float deltaY; // change in y
+/*0018*/
signed deltaHeading:10; // change in heading
- unsigned padding02:22;
-/*0018*/
+ unsigned padding03:22;
+/*0022*/
float deltaX; // change in x
-/*0022*/
+/*0026*/
unsigned pitch:12; // pitch (up/down heading)
- unsigned padding04:20;
-/*0026*/
- float y; // y coord (2nd loc value)
+ unsigned padding05:20;
/*0030*/
- float deltaY; // change in y
+ float deltaZ; // change in z
/*0034*/
- signed animation:10; // current animation
- unsigned padding07:22;
+ float x; // x coord (1st loc value)
/*0038*/
- float deltaZ; // change in z
+ float z; // z coord (3rd loc value)
/*0042*/
- unsigned heading:12; // heading
- unsigned padding09:20;
-/*0046*/
};
/*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-04-22 14:45:52
|
Revision: 1161
http://sourceforge.net/p/seq/svn/1161
Author: cn187
Date: 2021-04-22 14:45:46 +0000 (Thu, 22 Apr 2021)
Log Message:
-----------
Tag for release 6.1.1
Added Paths:
-----------
showeq/tags/v6_1_1/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-04-22 14:42:25
|
Revision: 1160
http://sourceforge.net/p/seq/svn/1160
Author: cn187
Date: 2021-04-22 14:42:23 +0000 (Thu, 22 Apr 2021)
Log Message:
-----------
Release 6.1.1
- Updated version to 6.1.1
- Support for EQ Patch 04/21/21
- Struct and opcode updates (Newby, cn187)
Modified Paths:
--------------
showeq/trunk/ChangeLog
showeq/trunk/conf/zoneopcodes.xml
showeq/trunk/configure.in
showeq/trunk/src/everquest.h
Modified: showeq/trunk/ChangeLog
===================================================================
--- showeq/trunk/ChangeLog 2021-03-13 01:10:42 UTC (rev 1159)
+++ showeq/trunk/ChangeLog 2021-04-22 14:42:23 UTC (rev 1160)
@@ -1,3 +1,9 @@
+cn187 (04/22/21)
+----------------
+- Updated version to 6.1.1
+- Support for EQ patch 04/21/21
+- Opcode and struct updates (Newby, cn187)
+
cn187 (03/10/21)
----------------
- Updated version to 6.1.0.0
Modified: showeq/trunk/conf/zoneopcodes.xml
===================================================================
--- showeq/trunk/conf/zoneopcodes.xml 2021-03-13 01:10:42 UTC (rev 1159)
+++ showeq/trunk/conf/zoneopcodes.xml 2021-04-22 14:42:23 UTC (rev 1160)
@@ -3,127 +3,127 @@
<seqopcodes>
<!-- Critical opcodes used directly by ShowEQ -->
- <opcode id="5983" name="OP_PlayerProfile" updated="03/10/21">
+ <opcode id="73c6" name="OP_PlayerProfile" updated="04/21/21">
<comment>CharProfileCode</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="0ed0" name="OP_ZoneEntry" updated="03/10/21">
+ <opcode id="5982" name="OP_ZoneEntry" updated="04/21/21">
<comment>ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="23bd" name="OP_TimeOfDay" updated="03/10/21">
+ <opcode id="5962" name="OP_TimeOfDay" updated="04/21/21">
<comment>TimeOfDayCode</comment>
<payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2d9e" name="OP_NewZone" updated="03/10/21">
+ <opcode id="476e" name="OP_NewZone" updated="04/21/21">
<comment>NewZoneCode</comment>
<payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7e49" name="OP_SpawnDoor" updated="03/10/21">
+ <opcode id="348a" name="OP_SpawnDoor" updated="04/21/21">
<comment>DoorSpawnsCode</comment>
<payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="4351" name="OP_GroundSpawn" updated="03/10/21">
+ <opcode id="6479" name="OP_GroundSpawn" updated="04/21/21">
<comment>MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1857" name="OP_SendZonePoints" updated="03/10/21">
+ <opcode id="600d" name="OP_SendZonePoints" updated="04/21/21">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
- <opcode id="01cf" name="OP_AAExpUpdate" updated="03/10/21">
+ <opcode id="38f8" name="OP_AAExpUpdate" updated="04/21/21">
<comment>Receiving AA experience. Also when percent to AA changes.</comment>
<payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6f2b" name="OP_ExpUpdate" updated="03/10/21">
+ <opcode id="44af" name="OP_ExpUpdate" updated="04/21/21">
<comment>ExpUpdateCode</comment>
<payload dir="server" typename="expUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6f37" name="OP_GuildMOTD" updated="03/10/21">
+ <opcode id="72c8" name="OP_GuildMOTD" updated="04/21/21">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
- <opcode id="2c42" name="OP_ClientUpdate" updated="03/10/21">
+ <opcode id="3f4f" name="OP_ClientUpdate" updated="04/21/21">
<comment>Position updates</comment>
<payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
<payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3b1b" name="OP_NpcMoveUpdate" updated="03/10/21">
+ <opcode id="19ad" name="OP_NpcMoveUpdate" updated="04/21/21">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="47e4" name="OP_MobUpdate" updated="03/10/21">
+ <opcode id="6284" name="OP_MobUpdate" updated="04/21/21">
<comment>MobUpdateCode</comment>
<payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="3180" name="OP_DeleteSpawn" updated="03/10/21">
+ <opcode id="6241" name="OP_DeleteSpawn" updated="04/21/21">
<comment>DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4513" name="OP_RemoveSpawn" updated="03/10/21">
+ <opcode id="4732" name="OP_RemoveSpawn" updated="04/21/21">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
- <opcode id="66d5" name="OP_Death" updated="03/10/21">
+ <opcode id="19a8" name="OP_Death" updated="04/21/21">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="01dd" name="OP_WearChange" updated="03/10/21">
+ <opcode id="7d1b" name="OP_WearChange" updated="04/21/21">
<comment>SpawnUpdateCode</comment>
<payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1360" name="OP_SpawnAppearance" updated="03/10/21">
+ <opcode id="26cb" name="OP_SpawnAppearance" updated="04/21/21">
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2ceb" name="OP_Stamina" updated="03/10/21">
+ <opcode id="1e83" name="OP_Stamina" updated="04/21/21">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0221" name="OP_HPUpdate" updated="03/10/21">
+ <opcode id="5a2a" name="OP_HPUpdate" updated="04/21/21">
<comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment>
<payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0a4a" name="OP_GuildMemberUpdate" updated="03/10/21">
+ <opcode id="6427" name="OP_GuildMemberUpdate" updated="04/21/21">
<comment>Info regarding guild members</comment>
<payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="3645" name="OP_ClickObject" updated="03/10/21">
+ <opcode id="51f2" name="OP_ClickObject" updated="04/21/21">
<comment>Items dropped on the ground</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
- <opcode id="269c" name="OP_Action" updated="03/10/21">
+ <opcode id="2c05" name="OP_Action" updated="04/21/21">
<comment>Spells cast etc</comment>
<payload dir="both" typename="actionStruct" sizechecktype="match"/>
<payload dir="both" typename="actionAltStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7880" name="OP_Action2" updated="03/10/21">
+ <opcode id="217b" name="OP_Action2" updated="04/21/21">
<comment>Combat actions i.e. bash, kick etc</comment>
<payload dir="both" typename="action2Struct" sizechecktype="match"/>
</opcode>
- <opcode id="35f7" name="OP_Consider" updated="03/10/21">
+ <opcode id="29ca" name="OP_Consider" updated="04/21/21">
<comment>ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
- <opcode id="77ea" name="OP_TargetMouse" updated="03/10/21">
+ <opcode id="0621" name="OP_TargetMouse" updated="04/21/21">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
- <opcode id="360a" name="OP_SpawnRename" updated="03/10/21">
+ <opcode id="6223" name="OP_SpawnRename" updated="04/21/21">
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3a49" name="OP_Illusion" updated="03/10/21">
+ <opcode id="50d9" name="OP_Illusion" updated="04/21/21">
<comment>Spawn being illusioned (changing forms)</comment>
<payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1886" name="OP_Shroud" updated="03/10/21">
+ <opcode id="4119" name="OP_Shroud" updated="04/21/21">
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
- <opcode id="21c7" name="OP_ZoneChange" updated="03/10/21">
+ <opcode id="35da" name="OP_ZoneChange" updated="04/21/21">
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
@@ -163,55 +163,55 @@
<comment>Group leader change</comment>
<payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3e30" name="OP_Buff" updated="03/10/21">
+ <opcode id="22bc" name="OP_Buff" updated="04/21/21">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
- <opcode id="52ee" name="OP_BeginCast" updated="03/10/21">
+ <opcode id="3dbe" name="OP_BeginCast" updated="04/21/21">
<comment>BeginCastCode</comment>
<payload dir="both" typename="beginCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4bb2" name="OP_CastSpell" updated="03/10/21">
+ <opcode id="5a44" name="OP_CastSpell" updated="04/21/21">
<comment>StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2e32" name="OP_SwapSpell" updated="03/10/21">
+ <opcode id="32ee" name="OP_SwapSpell" updated="04/21/21">
<comment>TradeSpellBookSlotsCode</comment>
<payload dir="both" typename="tradeSpellBookSlotsStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5336" name="OP_MemorizeSpell" updated="03/10/21">
+ <opcode id="5c57" name="OP_MemorizeSpell" updated="04/21/21">
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
- <opcode id="19be" name="OP_InspectAnswer" updated="03/10/21">
+ <opcode id="6db3" name="OP_InspectAnswer" updated="04/21/21">
<comment>InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
- <opcode id="01dc" name="OP_Emote" updated="03/10/21">
+ <opcode id="6265" name="OP_Emote" updated="04/21/21">
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
- <opcode id="56ec" name="OP_SimpleMessage" updated="03/10/21">
+ <opcode id="11e0" name="OP_SimpleMessage" updated="04/21/21">
<comment>SimpleMessageCode</comment>
<payload dir="server" typename="simpleMessageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5881" name="OP_FormattedMessage" updated="03/10/21">
+ <opcode id="4e52" name="OP_FormattedMessage" updated="04/21/21">
<comment>FormattedMessageCode i.e. pet dismissed etc</comment>
<payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="4e14" name="OP_CommonMessage" updated="03/10/21">
+ <opcode id="6f00" name="OP_CommonMessage" updated="04/21/21">
<comment>ChannelMessageCode i.e. /tell /ooc /shout etc</comment>
<payload dir="both" typename="channelMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="7a84" name="OP_SpecialMesg" updated="03/10/21">
+ <opcode id="165c" name="OP_SpecialMesg" updated="04/21/21">
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="5054" name="OP_RandomReq" updated="03/10/21">
+ <opcode id="260d" name="OP_RandomReq" updated="04/21/21">
<comment>RandomReqCode</comment>
<payload dir="client" typename="randomReqStruct" sizechecktype="match"/>
</opcode>
- <opcode id="686a" name="OP_RandomReply" updated="03/10/21">
+ <opcode id="5b74" name="OP_RandomReply" updated="04/21/21">
<comment>RandomCode</comment>
<payload dir="server" typename="randomStruct" sizechecktype="match"/>
</opcode>
@@ -223,16 +223,16 @@
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5f03" name="OP_ManaChange" updated="03/10/21">
+ <opcode id="7d0f" name="OP_ManaChange" updated="04/21/21">
<comment>Mana change. Bards send this up with no size. Casters receive this for mana updates.</comment>
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="0a42" name="OP_BazaarSearchRequest" updated="03/10/21">
+ <opcode id="03d6" name="OP_BazaarSearchRequest" updated="04/21/21">
<comment>Bazaar search request </comment>
<payload dir="client" typename="bazaarSearchQueryStruct" sizechecktype="none"/>
</opcode>
- <opcode id="521b" name="OP_BazaarSearchResponse" updated="03/10/21">
+ <opcode id="32e1" name="OP_BazaarSearchResponse" updated="04/21/21">
<comment>Bazaar search Response - Struct incorrect </comment>
<payload dir="server" typename="bazaarSearchResponseStruct" sizechecktype="modulus"/>
</opcode>
@@ -240,19 +240,19 @@
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1d16" name="OP_SkillUpdate" updated="03/10/21">
+ <opcode id="0eaa" name="OP_SkillUpdate" updated="04/21/21">
<comment>Skill up code</comment>
<payload dir="server" typename="skillIncStruct" sizechecktype="match"/>
</opcode>
- <opcode id="118a" name="OP_LevelUpdate" updated="03/10/21">
+ <opcode id="494d" name="OP_LevelUpdate" updated="04/21/21">
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6632" name="OP_DzSwitchInfo" updated="03/10/21">
+ <opcode id="3382" name="OP_DzSwitchInfo" updated="04/21/21">
<comment>Expedition compass etc</comment>
<payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/>
</opcode>
- <opcode id="3b9e" name="OP_DzInfo" updated="03/10/21">
+ <opcode id="784b" name="OP_DzInfo" updated="04/21/21">
<comment>Expedition Information</comment>
<payload dir="server" typename="dzInfo" sizechecktype="match"/>
</opcode>
@@ -260,7 +260,7 @@
<comment>Environmental Damage</comment>
<payload dir="client" typename="environmentDamageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5d70" name="OP_SetRunMode" updated="03/10/21">
+ <opcode id="358d" name="OP_SetRunMode" updated="04/21/21">
<comment>old cRunToggleCode</comment>
<payload dir="client" typename="cRunToggleStruct" sizechecktype="match"/>
</opcode>
@@ -307,15 +307,15 @@
<comment>List of group members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="3df2" name="OP_GuildMemberList" updated="03/10/21">
+ <opcode id="562f" name="OP_GuildMemberList" updated="04/21/21">
<comment>List of guild members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4f72" name="OP_ManaUpdate" updated="03/10/21">
+ <opcode id="3a2e" name="OP_ManaUpdate" updated="04/21/21">
<comment>Mana Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1137" name="OP_EndUpdate" updated="03/10/21">
+ <opcode id="3d4c" name="OP_EndUpdate" updated="04/21/21">
<comment>Endurance Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -367,7 +367,7 @@
<comment>Fellowship information - 2576 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4f4b" name="OP_ExpandedGuildInfo" updated="03/10/21">
+ <opcode id="5bbe" name="OP_ExpandedGuildInfo" updated="04/21/21">
<comment>Guild ranks and other misc guild data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -535,11 +535,11 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="616e" name="OP_GuildsInZoneList" updated="03/10/21">
+ <opcode id="4697" name="OP_GuildsInZoneList" updated="04/21/21">
<comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
<payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
</opcode>
- <opcode id="5b4e" name="OP_NewGuildInZone" updated="03/10/21">
+ <opcode id="2a7c" name="OP_NewGuildInZone" updated="04/21/21">
<comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
<payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
</opcode>
@@ -595,7 +595,7 @@
<comment>Free to play nags and other data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="10c6" name="OP_Find" updated="03/10/21">
+ <opcode id="6765" name="OP_Find" updated="04/21/21">
<comment>Find window data - 112 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Modified: showeq/trunk/configure.in
===================================================================
--- showeq/trunk/configure.in 2021-03-13 01:10:42 UTC (rev 1159)
+++ showeq/trunk/configure.in 2021-04-22 14:42:23 UTC (rev 1160)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.1.0.0)
+AC_INIT(showeq, 6.1.1)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
Modified: showeq/trunk/src/everquest.h
===================================================================
--- showeq/trunk/src/everquest.h 2021-03-13 01:10:42 UTC (rev 1159)
+++ showeq/trunk/src/everquest.h 2021-04-22 14:42:23 UTC (rev 1160)
@@ -1112,24 +1112,25 @@
{
struct
{
+ signed z:19; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned padding00:3;
- unsigned heading:12; // heading
- signed deltaX:13; // change in x
- unsigned padding00:7;
+ signed deltaZ:13; // change in z
+ signed deltaHeading:10; // change in heading
+ unsigned padding01:9;
signed deltaY:13; // change in y
signed y:19; // y coord (2nd loc value)
unsigned pitch:12; // pitch (up/down heading)
- signed animation:10; // current animation
- signed deltaHeading:10; // change in heading
+ signed x:19; // x coord (1st loc value)
+ unsigned padding03:1;
- signed z:19; // z coord (3rd loc value)
- unsigned padding03:13;
+ signed deltaX:13; // change in x
+ unsigned heading:12; // heading
+ unsigned padding04:7;
- signed x:19; // x coord (1st loc value)
- signed deltaZ:13; // change in z
-
};
int32_t posData[5];
};
@@ -2391,28 +2392,30 @@
/*0000*/ uint16_t spawnId;
/*0002*/ uint16_t spawnId2;
/*0004*/
- unsigned heading:12; // heading
- signed deltaX:13; // change in x
- unsigned padding00:7;
+ signed z:19; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned padding00:3;
/*0008*/
+ signed deltaZ:13; // change in z
+ signed deltaHeading:10; // change in heading
+ unsigned padding01:9;
+/*0012*/
signed deltaY:13; // change in y
signed y:19; // y coord (2nd loc value)
-/*0012*/
+/*0016*/
unsigned pitch:12; // pitch (up/down heading)
- signed animation:10; // current animation
- signed deltaHeading:10; // change in heading
-/*0016*/
- signed z:19; // z coord (3rd loc value)
- unsigned padding03:13;
+ signed x:19; // x coord (1st loc value)
+ unsigned padding03:1;
/*0020*/
- signed x:19; // x coord (1st loc value)
- signed deltaZ:13; // change in z
+ signed deltaX:13; // change in x
+ unsigned heading:12; // heading
+ unsigned padding04:7;
/*0024*/
};
/*
** Self Position Update
-** Length: 46 Octets
+** Length: 42 Octets
** OpCode: PlayerPosCode
*/
struct playerSelfPosStruct
@@ -2421,30 +2424,28 @@
/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint16_t unknown0004; // ***Placeholder
/*0006*/
- float z; // z coord (3rd loc value)
+ signed animation:10; // current animation
+ unsigned heading:12; // heading
+ unsigned padding00:10;
/*0010*/
- float x; // x coord (1st loc value)
+ float y; // y coord (2nd loc value)
/*0014*/
+ float deltaY; // change in y
+/*0018*/
signed deltaHeading:10; // change in heading
- unsigned padding02:22;
-/*0018*/
+ unsigned padding03:22;
+/*0022*/
float deltaX; // change in x
-/*0022*/
+/*0026*/
unsigned pitch:12; // pitch (up/down heading)
- unsigned padding04:20;
-/*0026*/
- float y; // y coord (2nd loc value)
+ unsigned padding05:20;
/*0030*/
- float deltaY; // change in y
+ float deltaZ; // change in z
/*0034*/
- signed animation:10; // current animation
- unsigned padding07:22;
+ float x; // x coord (1st loc value)
/*0038*/
- float deltaZ; // change in z
+ float z; // z coord (3rd loc value)
/*0042*/
- unsigned heading:12; // heading
- unsigned padding09:20;
-/*0046*/
};
/*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-13 01:10:50
|
Revision: 1159
http://sourceforge.net/p/seq/svn/1159
Author: cn187
Date: 2021-03-13 01:10:42 +0000 (Sat, 13 Mar 2021)
Log Message:
-----------
Add missed changelog entries
Modified Paths:
--------------
showeq/trunk/ChangeLog
Modified: showeq/trunk/ChangeLog
===================================================================
--- showeq/trunk/ChangeLog 2021-03-13 01:02:54 UTC (rev 1158)
+++ showeq/trunk/ChangeLog 2021-03-13 01:10:42 UTC (rev 1159)
@@ -6,6 +6,8 @@
- Message formatting fixes
- Struct and opcode fixes for spell list functionality (fransick)
- Opcode and struct updates (fransick)
+- Fix guild tag display
+- Fix display of held/worn equipment
cn187 (02/17/21)
----------------
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-13 01:03:02
|
Revision: 1158
http://sourceforge.net/p/seq/svn/1158
Author: cn187
Date: 2021-03-13 01:02:54 +0000 (Sat, 13 Mar 2021)
Log Message:
-----------
Update changelog with missed items
Modified Paths:
--------------
showeq/branches/cn187_devel/ChangeLog
Modified: showeq/branches/cn187_devel/ChangeLog
===================================================================
--- showeq/branches/cn187_devel/ChangeLog 2021-03-10 22:28:48 UTC (rev 1157)
+++ showeq/branches/cn187_devel/ChangeLog 2021-03-13 01:02:54 UTC (rev 1158)
@@ -6,6 +6,8 @@
- Message formatting fixes
- Struct and opcode fixes for spell list functionality (fransick)
- Opcode and struct updates (fransick)
+- Fix guild tag display
+- Fix display of held/worn equipment
cn187 (02/17/21)
----------------
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-10 22:28:51
|
Revision: 1157
http://sourceforge.net/p/seq/svn/1157
Author: cn187
Date: 2021-03-10 22:28:48 +0000 (Wed, 10 Mar 2021)
Log Message:
-----------
Release 6.1.0.0
- Updated version to 6.1.0.0
- Support for EQ patch 03/10/21
- Enumerate net devices and prompt for selection if needed
- Message formatting fixes
- Struct and opcode fixes for spell list functionality (fransick)
- Opcode and struct updates (fransick)
Modified Paths:
--------------
showeq/branches/cn187_devel/ChangeLog
showeq/branches/cn187_devel/conf/zoneopcodes.xml
showeq/branches/cn187_devel/configure.in
showeq/branches/cn187_devel/src/everquest.h
Modified: showeq/branches/cn187_devel/ChangeLog
===================================================================
--- showeq/branches/cn187_devel/ChangeLog 2021-03-10 22:28:43 UTC (rev 1156)
+++ showeq/branches/cn187_devel/ChangeLog 2021-03-10 22:28:48 UTC (rev 1157)
@@ -1,3 +1,12 @@
+cn187 (03/10/21)
+----------------
+- Updated version to 6.1.0.0
+- Support for EQ patch 03/10/21
+- Enumerate net devices and prompt for selection if needed
+- Message formatting fixes
+- Struct and opcode fixes for spell list functionality (fransick)
+- Opcode and struct updates (fransick)
+
cn187 (02/17/21)
----------------
- Updated version to 6.0.0.2
Modified: showeq/branches/cn187_devel/conf/zoneopcodes.xml
===================================================================
--- showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-03-10 22:28:43 UTC (rev 1156)
+++ showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-03-10 22:28:48 UTC (rev 1157)
@@ -3,147 +3,147 @@
<seqopcodes>
<!-- Critical opcodes used directly by ShowEQ -->
- <opcode id="6167" name="OP_PlayerProfile" updated="02/17/21">
+ <opcode id="5983" name="OP_PlayerProfile" updated="03/10/21">
<comment>CharProfileCode</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="2150" name="OP_ZoneEntry" updated="02/17/21">
+ <opcode id="0ed0" name="OP_ZoneEntry" updated="03/10/21">
<comment>ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4b1b" name="OP_TimeOfDay" updated="02/17/21">
+ <opcode id="23bd" name="OP_TimeOfDay" updated="03/10/21">
<comment>TimeOfDayCode</comment>
<payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
</opcode>
- <opcode id="26f2" name="OP_NewZone" updated="02/17/21">
+ <opcode id="2d9e" name="OP_NewZone" updated="03/10/21">
<comment>NewZoneCode</comment>
<payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5355" name="OP_SpawnDoor" updated="02/17/21">
+ <opcode id="7e49" name="OP_SpawnDoor" updated="03/10/21">
<comment>DoorSpawnsCode</comment>
<payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="7b4d" name="OP_GroundSpawn" updated="02/17/21">
+ <opcode id="4351" name="OP_GroundSpawn" updated="03/10/21">
<comment>MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="5dcd" name="OP_SendZonePoints" updated="02/17/21">
+ <opcode id="1857" name="OP_SendZonePoints" updated="03/10/21">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
- <opcode id="04c4" name="OP_AAExpUpdate" updated="02/17/21">
+ <opcode id="01cf" name="OP_AAExpUpdate" updated="03/10/21">
<comment>Receiving AA experience. Also when percent to AA changes.</comment>
<payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="00e5" name="OP_ExpUpdate" updated="02/17/21">
+ <opcode id="6f2b" name="OP_ExpUpdate" updated="03/10/21">
<comment>ExpUpdateCode</comment>
<payload dir="server" typename="expUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7e16" name="OP_GuildMOTD" updated="02/17/21">
+ <opcode id="6f37" name="OP_GuildMOTD" updated="03/10/21">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
- <opcode id="3838" name="OP_ClientUpdate" updated="02/17/21">
+ <opcode id="2c42" name="OP_ClientUpdate" updated="03/10/21">
<comment>Position updates</comment>
<payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
<payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4aad" name="OP_NpcMoveUpdate" updated="02/17/21">
+ <opcode id="3b1b" name="OP_NpcMoveUpdate" updated="03/10/21">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1aa9" name="OP_MobUpdate" updated="02/17/21">
+ <opcode id="47e4" name="OP_MobUpdate" updated="03/10/21">
<comment>MobUpdateCode</comment>
<payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="5ebd" name="OP_DeleteSpawn" updated="02/17/21">
+ <opcode id="3180" name="OP_DeleteSpawn" updated="03/10/21">
<comment>DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1d9b" name="OP_RemoveSpawn" updated="02/17/21">
+ <opcode id="4513" name="OP_RemoveSpawn" updated="03/10/21">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
- <opcode id="0be8" name="OP_Death" updated="02/17/21">
+ <opcode id="66d5" name="OP_Death" updated="03/10/21">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="523a" name="OP_WearChange" updated="02/17/21">
+ <opcode id="01dd" name="OP_WearChange" updated="03/10/21">
<comment>SpawnUpdateCode</comment>
<payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="25a3" name="OP_SpawnAppearance" updated="02/17/21">
+ <opcode id="1360" name="OP_SpawnAppearance" updated="03/10/21">
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5a12" name="OP_Stamina" updated="02/17/21">
+ <opcode id="2ceb" name="OP_Stamina" updated="03/10/21">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
- <opcode id="07f7" name="OP_HPUpdate" updated="02/17/21">
+ <opcode id="0221" name="OP_HPUpdate" updated="03/10/21">
<comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment>
<payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7317" name="OP_GuildMemberUpdate" updated="02/17/21">
+ <opcode id="0a4a" name="OP_GuildMemberUpdate" updated="03/10/21">
<comment>Info regarding guild members</comment>
<payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="5ae0" name="OP_ClickObject" updated="02/17/21">
+ <opcode id="3645" name="OP_ClickObject" updated="03/10/21">
<comment>Items dropped on the ground</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
- <opcode id="71e8" name="OP_Action" updated="02/17/21">
+ <opcode id="269c" name="OP_Action" updated="03/10/21">
<comment>Spells cast etc</comment>
<payload dir="both" typename="actionStruct" sizechecktype="match"/>
<payload dir="both" typename="actionAltStruct" sizechecktype="match"/>
</opcode>
- <opcode id="694f" name="OP_Action2" updated="02/17/21">
+ <opcode id="7880" name="OP_Action2" updated="03/10/21">
<comment>Combat actions i.e. bash, kick etc</comment>
<payload dir="both" typename="action2Struct" sizechecktype="match"/>
</opcode>
- <opcode id="3fec" name="OP_Consider" updated="02/17/21">
+ <opcode id="35f7" name="OP_Consider" updated="03/10/21">
<comment>ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4c33" name="OP_TargetMouse" updated="02/17/21">
+ <opcode id="77ea" name="OP_TargetMouse" updated="03/10/21">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1fbe" name="OP_SpawnRename" updated="02/17/21">
+ <opcode id="360a" name="OP_SpawnRename" updated="03/10/21">
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1bb2" name="OP_Illusion" updated="02/17/21">
+ <opcode id="3a49" name="OP_Illusion" updated="03/10/21">
<comment>Spawn being illusioned (changing forms)</comment>
<payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2d7f" name="OP_Shroud" updated="02/17/21">
+ <opcode id="1886" name="OP_Shroud" updated="03/10/21">
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
- <opcode id="5242" name="OP_ZoneChange" updated="02/17/21">
+ <opcode id="21c7" name="OP_ZoneChange" updated="03/10/21">
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="60e6" name="OP_GroupInvite" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupInvite" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You invite someone while ungrouped or get invited by someone ungrouped </comment>
</opcode>
- <opcode id="291c" name="OP_GroupInvite2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupInvite2" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You're inviting someone and you are grouped or get invited by a group</comment>
</opcode>
- <opcode id="64c1" name="OP_GroupCancelInvite" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupCancelInvite" updated="02/17/21">
<payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/>
<comment>Declining to join a group</comment>
</opcode>
- <opcode id="2040" name="OP_GroupFollow" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupFollow" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>You join a group or player joins group</comment>
</opcode>
- <opcode id="a699" name="OP_GroupFollow2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupFollow2" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>Player joins your group</comment>
</opcode>
@@ -151,120 +151,120 @@
<comment>Group updates</comment>
<payload dir="both" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="7ee5" name="OP_GroupDisband" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupDisband" updated="02/17/21">
<comment>You disband from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="64eb" name="OP_GroupDisband2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupDisband2" updated="02/17/21">
<comment>Other disbands from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7f60" name="OP_GroupLeader" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupLeader" updated="02/17/21">
<comment>Group leader change</comment>
<payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="11f1" name="OP_Buff" updated="02/17/21">
+ <opcode id="3e30" name="OP_Buff" updated="03/10/21">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
- <opcode id="49de" name="OP_BeginCast" updated="02/17/21">
+ <opcode id="52ee" name="OP_BeginCast" updated="03/10/21">
<comment>BeginCastCode</comment>
<payload dir="both" typename="beginCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="56a9" name="OP_CastSpell" updated="02/17/21">
+ <opcode id="4bb2" name="OP_CastSpell" updated="03/10/21">
<comment>StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4058" name="OP_SwapSpell" updated="02/17/21">
+ <opcode id="2e32" name="OP_SwapSpell" updated="03/10/21">
<comment>TradeSpellBookSlotsCode</comment>
<payload dir="both" typename="tradeSpellBookSlotsStruct" sizechecktype="match"/>
</opcode>
- <opcode id="292b" name="OP_MemorizeSpell" updated="02/17/21">
+ <opcode id="5336" name="OP_MemorizeSpell" updated="03/10/21">
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
- <opcode id="133b" name="OP_InspectAnswer" updated="02/17/21">
+ <opcode id="19be" name="OP_InspectAnswer" updated="03/10/21">
<comment>InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
- <opcode id="63e0" name="OP_Emote" updated="02/17/21">
+ <opcode id="01dc" name="OP_Emote" updated="03/10/21">
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
- <opcode id="678f" name="OP_SimpleMessage" updated="02/17/21">
+ <opcode id="56ec" name="OP_SimpleMessage" updated="03/10/21">
<comment>SimpleMessageCode</comment>
<payload dir="server" typename="simpleMessageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6586" name="OP_FormattedMessage" updated="02/17/21">
+ <opcode id="5881" name="OP_FormattedMessage" updated="03/10/21">
<comment>FormattedMessageCode i.e. pet dismissed etc</comment>
<payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="1c31" name="OP_CommonMessage" updated="02/17/21">
+ <opcode id="4e14" name="OP_CommonMessage" updated="03/10/21">
<comment>ChannelMessageCode i.e. /tell /ooc /shout etc</comment>
<payload dir="both" typename="channelMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="77b5" name="OP_SpecialMesg" updated="02/17/21">
+ <opcode id="7a84" name="OP_SpecialMesg" updated="03/10/21">
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="6732" name="OP_RandomReq" updated="02/17/21">
+ <opcode id="5054" name="OP_RandomReq" updated="03/10/21">
<comment>RandomReqCode</comment>
<payload dir="client" typename="randomReqStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4609" name="OP_RandomReply" updated="02/17/21">
+ <opcode id="686a" name="OP_RandomReply" updated="03/10/21">
<comment>RandomCode</comment>
<payload dir="server" typename="randomStruct" sizechecktype="match"/>
</opcode>
- <opcode id="31a0" name="OP_ConsentResponse" updated="02/17/21">
+ <opcode id="ffff" name="OP_ConsentResponse" updated="02/17/21">
<comment>Server replying with consent information after /consent</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4330" name="OP_DenyResponse" updated="02/17/21">
+ <opcode id="ffff" name="OP_DenyResponse" updated="02/17/21">
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6679" name="OP_ManaChange" updated="02/17/21">
+ <opcode id="5f03" name="OP_ManaChange" updated="03/10/21">
<comment>Mana change. Bards send this up with no size. Casters receive this for mana updates.</comment>
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1e02" name="OP_BazaarSearchRequest" updated="02/17/21">
+ <opcode id="0a42" name="OP_BazaarSearchRequest" updated="03/10/21">
<comment>Bazaar search request </comment>
<payload dir="client" typename="bazaarSearchQueryStruct" sizechecktype="none"/>
</opcode>
- <opcode id="2a82" name="OP_BazaarSearchResponse" updated="02/17/21">
+ <opcode id="521b" name="OP_BazaarSearchResponse" updated="03/10/21">
<comment>Bazaar search Response - Struct incorrect </comment>
<payload dir="server" typename="bazaarSearchResponseStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="4c14" name="OP_MoneyOnCorpse" updated="02/17/21">
+ <opcode id="ffff" name="OP_MoneyOnCorpse" updated="02/17/21">
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="012b" name="OP_SkillUpdate" updated="02/17/21">
+ <opcode id="1d16" name="OP_SkillUpdate" updated="03/10/21">
<comment>Skill up code</comment>
<payload dir="server" typename="skillIncStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2dad" name="OP_LevelUpdate" updated="02/17/21">
+ <opcode id="118a" name="OP_LevelUpdate" updated="03/10/21">
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2c1a" name="OP_DzSwitchInfo" updated="02/17/21">
+ <opcode id="6632" name="OP_DzSwitchInfo" updated="03/10/21">
<comment>Expedition compass etc</comment>
<payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/>
</opcode>
- <opcode id="550c" name="OP_DzInfo" updated="02/17/21">
+ <opcode id="3b9e" name="OP_DzInfo" updated="03/10/21">
<comment>Expedition Information</comment>
<payload dir="server" typename="dzInfo" sizechecktype="match"/>
</opcode>
- <opcode id="3164" name="OP_EnvDamage" updated="02/17/21">
+ <opcode id="ffff" name="OP_EnvDamage" updated="02/17/21">
<comment>Environmental Damage</comment>
<payload dir="client" typename="environmentDamageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="014c" name="OP_SetRunMode" updated="02/17/21">
+ <opcode id="5d70" name="OP_SetRunMode" updated="03/10/21">
<comment>old cRunToggleCode</comment>
<payload dir="client" typename="cRunToggleStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6e84" name="OP_Trader" updated="02/17/21">
+ <opcode id="ffff" name="OP_Trader" updated="02/17/21">
<comment>PC's turning trader on and off</comment>
<payload dir="server" typename="bazaarTraderRequest" sizechecktype="match"/>
</opcode>
@@ -307,15 +307,15 @@
<comment>List of group members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="35b8" name="OP_GuildMemberList" updated="02/17/21">
+ <opcode id="3df2" name="OP_GuildMemberList" updated="03/10/21">
<comment>List of guild members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="70f7" name="OP_ManaUpdate" updated="02/17/21">
+ <opcode id="4f72" name="OP_ManaUpdate" updated="03/10/21">
<comment>Mana Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="000e" name="OP_EndUpdate" updated="02/17/21">
+ <opcode id="1137" name="OP_EndUpdate" updated="03/10/21">
<comment>Endurance Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -367,7 +367,7 @@
<comment>Fellowship information - 2576 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6995" name="OP_ExpandedGuildInfo" updated="02/17/21">
+ <opcode id="4f4b" name="OP_ExpandedGuildInfo" updated="03/10/21">
<comment>Guild ranks and other misc guild data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -535,11 +535,11 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6ec0" name="OP_GuildsInZoneList" updated="02/17/21">
+ <opcode id="616e" name="OP_GuildsInZoneList" updated="03/10/21">
<comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
<payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
</opcode>
- <opcode id="33ba" name="OP_NewGuildInZone" updated="02/17/21">
+ <opcode id="5b4e" name="OP_NewGuildInZone" updated="03/10/21">
<comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
<payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
</opcode>
@@ -595,7 +595,7 @@
<comment>Free to play nags and other data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="5414" name="OP_Find" updated="02/17/21">
+ <opcode id="10c6" name="OP_Find" updated="03/10/21">
<comment>Find window data - 112 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Modified: showeq/branches/cn187_devel/configure.in
===================================================================
--- showeq/branches/cn187_devel/configure.in 2021-03-10 22:28:43 UTC (rev 1156)
+++ showeq/branches/cn187_devel/configure.in 2021-03-10 22:28:48 UTC (rev 1157)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.0.0.2)
+AC_INIT(showeq, 6.1.0.0)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
Modified: showeq/branches/cn187_devel/src/everquest.h
===================================================================
--- showeq/branches/cn187_devel/src/everquest.h 2021-03-10 22:28:43 UTC (rev 1156)
+++ showeq/branches/cn187_devel/src/everquest.h 2021-03-10 22:28:48 UTC (rev 1157)
@@ -1113,25 +1113,23 @@
struct
{
- signed deltaHeading:10; // change in heading
- unsigned pitch:12; // pitch (up/down heading)
- unsigned padding00:10;
+ unsigned heading:12; // heading
+ signed deltaX:13; // change in x
+ unsigned padding00:7;
- signed deltaZ:13; // change in z
signed deltaY:13; // change in y
- unsigned padding01:6;
+ signed y:19; // y coord (2nd loc value)
+ unsigned pitch:12; // pitch (up/down heading)
+ signed animation:10; // current animation
+ signed deltaHeading:10; // change in heading
+
signed z:19; // z coord (3rd loc value)
- signed deltaX:13; // change in x
+ unsigned padding03:13;
signed x:19; // x coord (1st loc value)
- unsigned heading:12; // heading
- unsigned padding03:1;
+ signed deltaZ:13; // change in z
- signed animation:10; // current animation
- signed y:19; // y coord (2nd loc value)
- unsigned padding04:3;
-
};
int32_t posData[5];
};
@@ -2393,30 +2391,28 @@
/*0000*/ uint16_t spawnId;
/*0002*/ uint16_t spawnId2;
/*0004*/
- signed deltaHeading:10; // change in heading
- unsigned pitch:12; // pitch (up/down heading)
- unsigned padding00:10;
+ unsigned heading:12; // heading
+ signed deltaX:13; // change in x
+ unsigned padding00:7;
/*0008*/
- signed deltaZ:13; // change in z
signed deltaY:13; // change in y
- unsigned padding01:6;
+ signed y:19; // y coord (2nd loc value)
/*0012*/
+ unsigned pitch:12; // pitch (up/down heading)
+ signed animation:10; // current animation
+ signed deltaHeading:10; // change in heading
+/*0016*/
signed z:19; // z coord (3rd loc value)
- signed deltaX:13; // change in x
-/*0016*/
+ unsigned padding03:13;
+/*0020*/
signed x:19; // x coord (1st loc value)
- unsigned heading:12; // heading
- unsigned padding03:1;
-/*0020*/
- signed animation:10; // current animation
- signed y:19; // y coord (2nd loc value)
- unsigned padding04:3;
+ signed deltaZ:13; // change in z
/*0024*/
};
/*
** Self Position Update
-** Length: 38 Octets
+** Length: 46 Octets
** OpCode: PlayerPosCode
*/
struct playerSelfPosStruct
@@ -2425,26 +2421,30 @@
/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint16_t unknown0004; // ***Placeholder
/*0006*/
- float deltaY; // change in y
+ float z; // z coord (3rd loc value)
/*0010*/
- unsigned pitch:12; // pitch (up/down heading)
- unsigned heading:12; // heading
- unsigned padding01:8;
+ float x; // x coord (1st loc value)
/*0014*/
signed deltaHeading:10; // change in heading
- signed animation:10; // current animation
- unsigned padding02:12;
+ unsigned padding02:22;
/*0018*/
- float x; // x coord (1st loc value)
+ float deltaX; // change in x
/*0022*/
- float deltaZ; // change in z
+ unsigned pitch:12; // pitch (up/down heading)
+ unsigned padding04:20;
/*0026*/
- float z; // z coord (3rd loc value)
+ float y; // y coord (2nd loc value)
/*0030*/
- float y; // y coord (2nd loc value)
+ float deltaY; // change in y
/*0034*/
- float deltaX; // change in x
+ signed animation:10; // current animation
+ unsigned padding07:22;
/*0038*/
+ float deltaZ; // change in z
+/*0042*/
+ unsigned heading:12; // heading
+ unsigned padding09:20;
+/*0046*/
};
/*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-10 22:28:44
|
Revision: 1156
http://sourceforge.net/p/seq/svn/1156
Author: cn187
Date: 2021-03-10 22:28:43 +0000 (Wed, 10 Mar 2021)
Log Message:
-----------
Add FAQ entry for MIT-SHM issues
Modified Paths:
--------------
showeq/branches/cn187_devel/FAQ
Modified: showeq/branches/cn187_devel/FAQ
===================================================================
--- showeq/branches/cn187_devel/FAQ 2021-03-10 21:25:00 UTC (rev 1155)
+++ showeq/branches/cn187_devel/FAQ 2021-03-10 22:28:43 UTC (rev 1156)
@@ -8,6 +8,8 @@
5) Seq keeps crashing with "!!!! EQPacketFragmentSequence::addFragment():
buffer overflow adding in new fragment". Why won't you fix this?
6) Why do I get extreme lag/slowness when using X11 forwarding?
+7) The Seq screen is blank and I'm seeing X errors reporting BadAccess,
+ BadShmSeg and BadDrawable. What do I do?
1) Hit points always say 65536, 0, 100, etc, what is wrong
@@ -143,3 +145,18 @@
QT_GRAPHICSSUBSYSTEM=native showeq
+
+7) The Seq screen is blank and I'm seeing X errors reporting BadAccess,
+ BadShmSeg and BadDrawable. What do I do?
+
+This can be worked around by setting the QT_X11_NO_MITSHM environment variable.
+
+You can either export the variable prior to running ShowEQ:
+
+ export QT_X11_NO_MITSHM=1
+ showeq
+
+or prepend it to the showeq command:
+
+ QT_X11_MIT_NO_MITSHM=1 showeq
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-10 21:25:01
|
Revision: 1155
http://sourceforge.net/p/seq/svn/1155
Author: cn187
Date: 2021-03-10 21:25:00 +0000 (Wed, 10 Mar 2021)
Log Message:
-----------
Tag for release 6.1.0.0
Added Paths:
-----------
showeq/tags/v6_1_0_0/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-10 21:19:33
|
Revision: 1154
http://sourceforge.net/p/seq/svn/1154
Author: cn187
Date: 2021-03-10 21:19:29 +0000 (Wed, 10 Mar 2021)
Log Message:
-----------
Release 6.1.0.0
- Updated version to 6.1.0.0
- Support for EQ patch 03/10/21
- Enumerate net devices and prompt for selection if needed
- Message formatting fixes
- Struct and opcode fixes for spell list functionality (fransick)
- Opcode and struct updates (fransick)
Modified Paths:
--------------
showeq/trunk/ChangeLog
showeq/trunk/conf/zoneopcodes.xml
showeq/trunk/configure.in
showeq/trunk/src/everquest.h
Modified: showeq/trunk/ChangeLog
===================================================================
--- showeq/trunk/ChangeLog 2021-03-10 21:19:21 UTC (rev 1153)
+++ showeq/trunk/ChangeLog 2021-03-10 21:19:29 UTC (rev 1154)
@@ -1,3 +1,12 @@
+cn187 (03/10/21)
+----------------
+- Updated version to 6.1.0.0
+- Support for EQ patch 03/10/21
+- Enumerate net devices and prompt for selection if needed
+- Message formatting fixes
+- Struct and opcode fixes for spell list functionality (fransick)
+- Opcode and struct updates (fransick)
+
cn187 (02/17/21)
----------------
- Updated version to 6.0.0.2
Modified: showeq/trunk/conf/zoneopcodes.xml
===================================================================
--- showeq/trunk/conf/zoneopcodes.xml 2021-03-10 21:19:21 UTC (rev 1153)
+++ showeq/trunk/conf/zoneopcodes.xml 2021-03-10 21:19:29 UTC (rev 1154)
@@ -3,147 +3,147 @@
<seqopcodes>
<!-- Critical opcodes used directly by ShowEQ -->
- <opcode id="6167" name="OP_PlayerProfile" updated="02/17/21">
+ <opcode id="5983" name="OP_PlayerProfile" updated="03/10/21">
<comment>CharProfileCode</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="2150" name="OP_ZoneEntry" updated="02/17/21">
+ <opcode id="0ed0" name="OP_ZoneEntry" updated="03/10/21">
<comment>ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="4b1b" name="OP_TimeOfDay" updated="02/17/21">
+ <opcode id="23bd" name="OP_TimeOfDay" updated="03/10/21">
<comment>TimeOfDayCode</comment>
<payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
</opcode>
- <opcode id="26f2" name="OP_NewZone" updated="02/17/21">
+ <opcode id="2d9e" name="OP_NewZone" updated="03/10/21">
<comment>NewZoneCode</comment>
<payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5355" name="OP_SpawnDoor" updated="02/17/21">
+ <opcode id="7e49" name="OP_SpawnDoor" updated="03/10/21">
<comment>DoorSpawnsCode</comment>
<payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="7b4d" name="OP_GroundSpawn" updated="02/17/21">
+ <opcode id="4351" name="OP_GroundSpawn" updated="03/10/21">
<comment>MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="5dcd" name="OP_SendZonePoints" updated="02/17/21">
+ <opcode id="1857" name="OP_SendZonePoints" updated="03/10/21">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
- <opcode id="04c4" name="OP_AAExpUpdate" updated="02/17/21">
+ <opcode id="01cf" name="OP_AAExpUpdate" updated="03/10/21">
<comment>Receiving AA experience. Also when percent to AA changes.</comment>
<payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="00e5" name="OP_ExpUpdate" updated="02/17/21">
+ <opcode id="6f2b" name="OP_ExpUpdate" updated="03/10/21">
<comment>ExpUpdateCode</comment>
<payload dir="server" typename="expUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7e16" name="OP_GuildMOTD" updated="02/17/21">
+ <opcode id="6f37" name="OP_GuildMOTD" updated="03/10/21">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
- <opcode id="3838" name="OP_ClientUpdate" updated="02/17/21">
+ <opcode id="2c42" name="OP_ClientUpdate" updated="03/10/21">
<comment>Position updates</comment>
<payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
<payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4aad" name="OP_NpcMoveUpdate" updated="02/17/21">
+ <opcode id="3b1b" name="OP_NpcMoveUpdate" updated="03/10/21">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1aa9" name="OP_MobUpdate" updated="02/17/21">
+ <opcode id="47e4" name="OP_MobUpdate" updated="03/10/21">
<comment>MobUpdateCode</comment>
<payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="5ebd" name="OP_DeleteSpawn" updated="02/17/21">
+ <opcode id="3180" name="OP_DeleteSpawn" updated="03/10/21">
<comment>DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1d9b" name="OP_RemoveSpawn" updated="02/17/21">
+ <opcode id="4513" name="OP_RemoveSpawn" updated="03/10/21">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
- <opcode id="0be8" name="OP_Death" updated="02/17/21">
+ <opcode id="66d5" name="OP_Death" updated="03/10/21">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="523a" name="OP_WearChange" updated="02/17/21">
+ <opcode id="01dd" name="OP_WearChange" updated="03/10/21">
<comment>SpawnUpdateCode</comment>
<payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="25a3" name="OP_SpawnAppearance" updated="02/17/21">
+ <opcode id="1360" name="OP_SpawnAppearance" updated="03/10/21">
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
- <opcode id="5a12" name="OP_Stamina" updated="02/17/21">
+ <opcode id="2ceb" name="OP_Stamina" updated="03/10/21">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
- <opcode id="07f7" name="OP_HPUpdate" updated="02/17/21">
+ <opcode id="0221" name="OP_HPUpdate" updated="03/10/21">
<comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment>
<payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7317" name="OP_GuildMemberUpdate" updated="02/17/21">
+ <opcode id="0a4a" name="OP_GuildMemberUpdate" updated="03/10/21">
<comment>Info regarding guild members</comment>
<payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="5ae0" name="OP_ClickObject" updated="02/17/21">
+ <opcode id="3645" name="OP_ClickObject" updated="03/10/21">
<comment>Items dropped on the ground</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
- <opcode id="71e8" name="OP_Action" updated="02/17/21">
+ <opcode id="269c" name="OP_Action" updated="03/10/21">
<comment>Spells cast etc</comment>
<payload dir="both" typename="actionStruct" sizechecktype="match"/>
<payload dir="both" typename="actionAltStruct" sizechecktype="match"/>
</opcode>
- <opcode id="694f" name="OP_Action2" updated="02/17/21">
+ <opcode id="7880" name="OP_Action2" updated="03/10/21">
<comment>Combat actions i.e. bash, kick etc</comment>
<payload dir="both" typename="action2Struct" sizechecktype="match"/>
</opcode>
- <opcode id="3fec" name="OP_Consider" updated="02/17/21">
+ <opcode id="35f7" name="OP_Consider" updated="03/10/21">
<comment>ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4c33" name="OP_TargetMouse" updated="02/17/21">
+ <opcode id="77ea" name="OP_TargetMouse" updated="03/10/21">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1fbe" name="OP_SpawnRename" updated="02/17/21">
+ <opcode id="360a" name="OP_SpawnRename" updated="03/10/21">
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1bb2" name="OP_Illusion" updated="02/17/21">
+ <opcode id="3a49" name="OP_Illusion" updated="03/10/21">
<comment>Spawn being illusioned (changing forms)</comment>
<payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2d7f" name="OP_Shroud" updated="02/17/21">
+ <opcode id="1886" name="OP_Shroud" updated="03/10/21">
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
- <opcode id="5242" name="OP_ZoneChange" updated="02/17/21">
+ <opcode id="21c7" name="OP_ZoneChange" updated="03/10/21">
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="60e6" name="OP_GroupInvite" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupInvite" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You invite someone while ungrouped or get invited by someone ungrouped </comment>
</opcode>
- <opcode id="291c" name="OP_GroupInvite2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupInvite2" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You're inviting someone and you are grouped or get invited by a group</comment>
</opcode>
- <opcode id="64c1" name="OP_GroupCancelInvite" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupCancelInvite" updated="02/17/21">
<payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/>
<comment>Declining to join a group</comment>
</opcode>
- <opcode id="2040" name="OP_GroupFollow" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupFollow" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>You join a group or player joins group</comment>
</opcode>
- <opcode id="a699" name="OP_GroupFollow2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupFollow2" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>Player joins your group</comment>
</opcode>
@@ -151,120 +151,120 @@
<comment>Group updates</comment>
<payload dir="both" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="7ee5" name="OP_GroupDisband" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupDisband" updated="02/17/21">
<comment>You disband from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="64eb" name="OP_GroupDisband2" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupDisband2" updated="02/17/21">
<comment>Other disbands from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="7f60" name="OP_GroupLeader" updated="02/17/21">
+ <opcode id="ffff" name="OP_GroupLeader" updated="02/17/21">
<comment>Group leader change</comment>
<payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="11f1" name="OP_Buff" updated="02/17/21">
+ <opcode id="3e30" name="OP_Buff" updated="03/10/21">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
- <opcode id="49de" name="OP_BeginCast" updated="02/17/21">
+ <opcode id="52ee" name="OP_BeginCast" updated="03/10/21">
<comment>BeginCastCode</comment>
<payload dir="both" typename="beginCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="56a9" name="OP_CastSpell" updated="02/17/21">
+ <opcode id="4bb2" name="OP_CastSpell" updated="03/10/21">
<comment>StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4058" name="OP_SwapSpell" updated="02/17/21">
+ <opcode id="2e32" name="OP_SwapSpell" updated="03/10/21">
<comment>TradeSpellBookSlotsCode</comment>
<payload dir="both" typename="tradeSpellBookSlotsStruct" sizechecktype="match"/>
</opcode>
- <opcode id="292b" name="OP_MemorizeSpell" updated="02/17/21">
+ <opcode id="5336" name="OP_MemorizeSpell" updated="03/10/21">
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
- <opcode id="133b" name="OP_InspectAnswer" updated="02/17/21">
+ <opcode id="19be" name="OP_InspectAnswer" updated="03/10/21">
<comment>InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
- <opcode id="63e0" name="OP_Emote" updated="02/17/21">
+ <opcode id="01dc" name="OP_Emote" updated="03/10/21">
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
- <opcode id="678f" name="OP_SimpleMessage" updated="02/17/21">
+ <opcode id="56ec" name="OP_SimpleMessage" updated="03/10/21">
<comment>SimpleMessageCode</comment>
<payload dir="server" typename="simpleMessageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6586" name="OP_FormattedMessage" updated="02/17/21">
+ <opcode id="5881" name="OP_FormattedMessage" updated="03/10/21">
<comment>FormattedMessageCode i.e. pet dismissed etc</comment>
<payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="1c31" name="OP_CommonMessage" updated="02/17/21">
+ <opcode id="4e14" name="OP_CommonMessage" updated="03/10/21">
<comment>ChannelMessageCode i.e. /tell /ooc /shout etc</comment>
<payload dir="both" typename="channelMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="77b5" name="OP_SpecialMesg" updated="02/17/21">
+ <opcode id="7a84" name="OP_SpecialMesg" updated="03/10/21">
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="6732" name="OP_RandomReq" updated="02/17/21">
+ <opcode id="5054" name="OP_RandomReq" updated="03/10/21">
<comment>RandomReqCode</comment>
<payload dir="client" typename="randomReqStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4609" name="OP_RandomReply" updated="02/17/21">
+ <opcode id="686a" name="OP_RandomReply" updated="03/10/21">
<comment>RandomCode</comment>
<payload dir="server" typename="randomStruct" sizechecktype="match"/>
</opcode>
- <opcode id="31a0" name="OP_ConsentResponse" updated="02/17/21">
+ <opcode id="ffff" name="OP_ConsentResponse" updated="02/17/21">
<comment>Server replying with consent information after /consent</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4330" name="OP_DenyResponse" updated="02/17/21">
+ <opcode id="ffff" name="OP_DenyResponse" updated="02/17/21">
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6679" name="OP_ManaChange" updated="02/17/21">
+ <opcode id="5f03" name="OP_ManaChange" updated="03/10/21">
<comment>Mana change. Bards send this up with no size. Casters receive this for mana updates.</comment>
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1e02" name="OP_BazaarSearchRequest" updated="02/17/21">
+ <opcode id="0a42" name="OP_BazaarSearchRequest" updated="03/10/21">
<comment>Bazaar search request </comment>
<payload dir="client" typename="bazaarSearchQueryStruct" sizechecktype="none"/>
</opcode>
- <opcode id="2a82" name="OP_BazaarSearchResponse" updated="02/17/21">
+ <opcode id="521b" name="OP_BazaarSearchResponse" updated="03/10/21">
<comment>Bazaar search Response - Struct incorrect </comment>
<payload dir="server" typename="bazaarSearchResponseStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="4c14" name="OP_MoneyOnCorpse" updated="02/17/21">
+ <opcode id="ffff" name="OP_MoneyOnCorpse" updated="02/17/21">
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="012b" name="OP_SkillUpdate" updated="02/17/21">
+ <opcode id="1d16" name="OP_SkillUpdate" updated="03/10/21">
<comment>Skill up code</comment>
<payload dir="server" typename="skillIncStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2dad" name="OP_LevelUpdate" updated="02/17/21">
+ <opcode id="118a" name="OP_LevelUpdate" updated="03/10/21">
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2c1a" name="OP_DzSwitchInfo" updated="02/17/21">
+ <opcode id="6632" name="OP_DzSwitchInfo" updated="03/10/21">
<comment>Expedition compass etc</comment>
<payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/>
</opcode>
- <opcode id="550c" name="OP_DzInfo" updated="02/17/21">
+ <opcode id="3b9e" name="OP_DzInfo" updated="03/10/21">
<comment>Expedition Information</comment>
<payload dir="server" typename="dzInfo" sizechecktype="match"/>
</opcode>
- <opcode id="3164" name="OP_EnvDamage" updated="02/17/21">
+ <opcode id="ffff" name="OP_EnvDamage" updated="02/17/21">
<comment>Environmental Damage</comment>
<payload dir="client" typename="environmentDamageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="014c" name="OP_SetRunMode" updated="02/17/21">
+ <opcode id="5d70" name="OP_SetRunMode" updated="03/10/21">
<comment>old cRunToggleCode</comment>
<payload dir="client" typename="cRunToggleStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6e84" name="OP_Trader" updated="02/17/21">
+ <opcode id="ffff" name="OP_Trader" updated="02/17/21">
<comment>PC's turning trader on and off</comment>
<payload dir="server" typename="bazaarTraderRequest" sizechecktype="match"/>
</opcode>
@@ -307,15 +307,15 @@
<comment>List of group members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="35b8" name="OP_GuildMemberList" updated="02/17/21">
+ <opcode id="3df2" name="OP_GuildMemberList" updated="03/10/21">
<comment>List of guild members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="70f7" name="OP_ManaUpdate" updated="02/17/21">
+ <opcode id="4f72" name="OP_ManaUpdate" updated="03/10/21">
<comment>Mana Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="000e" name="OP_EndUpdate" updated="02/17/21">
+ <opcode id="1137" name="OP_EndUpdate" updated="03/10/21">
<comment>Endurance Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -367,7 +367,7 @@
<comment>Fellowship information - 2576 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6995" name="OP_ExpandedGuildInfo" updated="02/17/21">
+ <opcode id="4f4b" name="OP_ExpandedGuildInfo" updated="03/10/21">
<comment>Guild ranks and other misc guild data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -535,11 +535,11 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6ec0" name="OP_GuildsInZoneList" updated="02/17/21">
+ <opcode id="616e" name="OP_GuildsInZoneList" updated="03/10/21">
<comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
<payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
</opcode>
- <opcode id="33ba" name="OP_NewGuildInZone" updated="02/17/21">
+ <opcode id="5b4e" name="OP_NewGuildInZone" updated="03/10/21">
<comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
<payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
</opcode>
@@ -595,7 +595,7 @@
<comment>Free to play nags and other data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="5414" name="OP_Find" updated="02/17/21">
+ <opcode id="10c6" name="OP_Find" updated="03/10/21">
<comment>Find window data - 112 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Modified: showeq/trunk/configure.in
===================================================================
--- showeq/trunk/configure.in 2021-03-10 21:19:21 UTC (rev 1153)
+++ showeq/trunk/configure.in 2021-03-10 21:19:29 UTC (rev 1154)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.0.0.2)
+AC_INIT(showeq, 6.1.0.0)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
Modified: showeq/trunk/src/everquest.h
===================================================================
--- showeq/trunk/src/everquest.h 2021-03-10 21:19:21 UTC (rev 1153)
+++ showeq/trunk/src/everquest.h 2021-03-10 21:19:29 UTC (rev 1154)
@@ -1113,25 +1113,23 @@
struct
{
- signed deltaHeading:10; // change in heading
- unsigned pitch:12; // pitch (up/down heading)
- unsigned padding00:10;
+ unsigned heading:12; // heading
+ signed deltaX:13; // change in x
+ unsigned padding00:7;
- signed deltaZ:13; // change in z
signed deltaY:13; // change in y
- unsigned padding01:6;
+ signed y:19; // y coord (2nd loc value)
+ unsigned pitch:12; // pitch (up/down heading)
+ signed animation:10; // current animation
+ signed deltaHeading:10; // change in heading
+
signed z:19; // z coord (3rd loc value)
- signed deltaX:13; // change in x
+ unsigned padding03:13;
signed x:19; // x coord (1st loc value)
- unsigned heading:12; // heading
- unsigned padding03:1;
+ signed deltaZ:13; // change in z
- signed animation:10; // current animation
- signed y:19; // y coord (2nd loc value)
- unsigned padding04:3;
-
};
int32_t posData[5];
};
@@ -2393,30 +2391,28 @@
/*0000*/ uint16_t spawnId;
/*0002*/ uint16_t spawnId2;
/*0004*/
- signed deltaHeading:10; // change in heading
- unsigned pitch:12; // pitch (up/down heading)
- unsigned padding00:10;
+ unsigned heading:12; // heading
+ signed deltaX:13; // change in x
+ unsigned padding00:7;
/*0008*/
- signed deltaZ:13; // change in z
signed deltaY:13; // change in y
- unsigned padding01:6;
+ signed y:19; // y coord (2nd loc value)
/*0012*/
+ unsigned pitch:12; // pitch (up/down heading)
+ signed animation:10; // current animation
+ signed deltaHeading:10; // change in heading
+/*0016*/
signed z:19; // z coord (3rd loc value)
- signed deltaX:13; // change in x
-/*0016*/
+ unsigned padding03:13;
+/*0020*/
signed x:19; // x coord (1st loc value)
- unsigned heading:12; // heading
- unsigned padding03:1;
-/*0020*/
- signed animation:10; // current animation
- signed y:19; // y coord (2nd loc value)
- unsigned padding04:3;
+ signed deltaZ:13; // change in z
/*0024*/
};
/*
** Self Position Update
-** Length: 38 Octets
+** Length: 46 Octets
** OpCode: PlayerPosCode
*/
struct playerSelfPosStruct
@@ -2425,26 +2421,30 @@
/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint16_t unknown0004; // ***Placeholder
/*0006*/
- float deltaY; // change in y
+ float z; // z coord (3rd loc value)
/*0010*/
- unsigned pitch:12; // pitch (up/down heading)
- unsigned heading:12; // heading
- unsigned padding01:8;
+ float x; // x coord (1st loc value)
/*0014*/
signed deltaHeading:10; // change in heading
- signed animation:10; // current animation
- unsigned padding02:12;
+ unsigned padding02:22;
/*0018*/
- float x; // x coord (1st loc value)
+ float deltaX; // change in x
/*0022*/
- float deltaZ; // change in z
+ unsigned pitch:12; // pitch (up/down heading)
+ unsigned padding04:20;
/*0026*/
- float z; // z coord (3rd loc value)
+ float y; // y coord (2nd loc value)
/*0030*/
- float y; // y coord (2nd loc value)
+ float deltaY; // change in y
/*0034*/
- float deltaX; // change in x
+ signed animation:10; // current animation
+ unsigned padding07:22;
/*0038*/
+ float deltaZ; // change in z
+/*0042*/
+ unsigned heading:12; // heading
+ unsigned padding09:20;
+/*0046*/
};
/*
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-03-10 21:19:24
|
Revision: 1153
http://sourceforge.net/p/seq/svn/1153
Author: cn187
Date: 2021-03-10 21:19:21 +0000 (Wed, 10 Mar 2021)
Log Message:
-----------
Merge branch 'cn187_devel'
Modified Paths:
--------------
showeq/trunk/conf/seqdef.xml
showeq/trunk/conf/zoneopcodes.xml
showeq/trunk/src/eqstr.cpp
showeq/trunk/src/everquest.h
showeq/trunk/src/guild.cpp
showeq/trunk/src/guild.h
showeq/trunk/src/interface.cpp
showeq/trunk/src/interface.h
showeq/trunk/src/map.cpp
showeq/trunk/src/messageshell.cpp
showeq/trunk/src/player.cpp
showeq/trunk/src/s_everquest.h
showeq/trunk/src/spawn.cpp
showeq/trunk/src/spawn.h
showeq/trunk/src/spawnlistcommon.cpp
showeq/trunk/src/spawnshell.cpp
showeq/trunk/src/spawnshell.h
showeq/trunk/src/zonemgr.cpp
Modified: showeq/trunk/conf/seqdef.xml
===================================================================
--- showeq/trunk/conf/seqdef.xml 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/conf/seqdef.xml 2021-03-10 21:19:21 UTC (rev 1153)
@@ -2500,7 +2500,7 @@
" />
</property>
<property name="GuildsFile" >
- <string value="guilds2.dat" />
+ <string value="guilds3.dat" />
<comment>Location of file containing guild strings</comment>
</property>
<property name="GuildsDumpFile" >
Modified: showeq/trunk/conf/zoneopcodes.xml
===================================================================
--- showeq/trunk/conf/zoneopcodes.xml 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/conf/zoneopcodes.xml 2021-03-10 21:19:21 UTC (rev 1153)
@@ -78,7 +78,7 @@
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Stamina" updated="06/19/19">
+ <opcode id="5a12" name="OP_Stamina" updated="02/17/21">
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
@@ -115,11 +115,11 @@
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Illusion" updated="06/19/19">
+ <opcode id="1bb2" name="OP_Illusion" updated="02/17/21">
<comment>Spawn being illusioned (changing forms)</comment>
<payload dir="both" typename="spawnIllusionStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Shroud" updated="06/19/19">
+ <opcode id="2d7f" name="OP_Shroud" updated="02/17/21">
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
@@ -127,23 +127,23 @@
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_GroupInvite" updated="06/19/19">
+ <opcode id="60e6" name="OP_GroupInvite" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You invite someone while ungrouped or get invited by someone ungrouped </comment>
</opcode>
- <opcode id="ffff" name="OP_GroupInvite2" updated="06/19/19">
+ <opcode id="291c" name="OP_GroupInvite2" updated="02/17/21">
<payload dir="both" typename="groupInviteStruct" sizechecktype="none"/>
<comment>You're inviting someone and you are grouped or get invited by a group</comment>
</opcode>
- <opcode id="ffff" name="OP_GroupCancelInvite" updated="06/19/19">
+ <opcode id="64c1" name="OP_GroupCancelInvite" updated="02/17/21">
<payload dir="both" typename="groupDeclineStruct" sizechecktype="match"/>
<comment>Declining to join a group</comment>
</opcode>
- <opcode id="ffff" name="OP_GroupFollow" updated="06/19/19">
+ <opcode id="2040" name="OP_GroupFollow" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>You join a group or player joins group</comment>
</opcode>
- <opcode id="ffff" name="OP_GroupFollow2" updated="06/19/19">
+ <opcode id="a699" name="OP_GroupFollow2" updated="02/17/21">
<payload dir="server" typename="groupFollowStruct" sizechecktype="match"/>
<comment>Player joins your group</comment>
</opcode>
@@ -151,19 +151,19 @@
<comment>Group updates</comment>
<payload dir="both" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="ffff" name="OP_GroupDisband" updated="06/19/19">
+ <opcode id="7ee5" name="OP_GroupDisband" updated="02/17/21">
<comment>You disband from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_GroupDisband2" updated="06/19/19">
+ <opcode id="64eb" name="OP_GroupDisband2" updated="02/17/21">
<comment>Other disbands from group</comment>
<payload dir="server" typename="groupDisbandStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_GroupLeader" updated="06/19/19">
+ <opcode id="7f60" name="OP_GroupLeader" updated="02/17/21">
<comment>Group leader change</comment>
<payload dir="server" typename="groupLeaderChangeStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Buff" updated="06/19/19">
+ <opcode id="11f1" name="OP_Buff" updated="02/17/21">
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
@@ -183,11 +183,11 @@
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_InspectAnswer" updated="06/19/19">
+ <opcode id="133b" name="OP_InspectAnswer" updated="02/17/21">
<comment>InspectDataCode</comment>
<payload dir="both" typename="inspectDataStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Emote" updated="06/19/19">
+ <opcode id="63e0" name="OP_Emote" updated="02/17/21">
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
@@ -207,19 +207,19 @@
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="ffff" name="OP_RandomReq" updated="06/19/19">
+ <opcode id="6732" name="OP_RandomReq" updated="02/17/21">
<comment>RandomReqCode</comment>
<payload dir="client" typename="randomReqStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_RandomReply" updated="06/19/19">
+ <opcode id="4609" name="OP_RandomReply" updated="02/17/21">
<comment>RandomCode</comment>
<payload dir="server" typename="randomStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_ConsentResponse" updated="06/19/19">
+ <opcode id="31a0" name="OP_ConsentResponse" updated="02/17/21">
<comment>Server replying with consent information after /consent</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_DenyResponse" updated="06/19/19">
+ <opcode id="4330" name="OP_DenyResponse" updated="02/17/21">
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
@@ -228,15 +228,15 @@
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="ffff" name="OP_BazaarSearchRequest" updated="06/19/19">
+ <opcode id="1e02" name="OP_BazaarSearchRequest" updated="02/17/21">
<comment>Bazaar search request </comment>
<payload dir="client" typename="bazaarSearchQueryStruct" sizechecktype="none"/>
</opcode>
- <opcode id="ffff" name="OP_BazaarSearchResponse" updated="06/19/19">
+ <opcode id="2a82" name="OP_BazaarSearchResponse" updated="02/17/21">
<comment>Bazaar search Response - Struct incorrect </comment>
<payload dir="server" typename="bazaarSearchResponseStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="ffff" name="OP_MoneyOnCorpse" updated="06/19/19">
+ <opcode id="4c14" name="OP_MoneyOnCorpse" updated="02/17/21">
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
@@ -248,23 +248,23 @@
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_DzSwitchInfo" updated="06/19/19">
+ <opcode id="2c1a" name="OP_DzSwitchInfo" updated="02/17/21">
<comment>Expedition compass etc</comment>
<payload dir="server" typename="dzSwitchInfo" sizechecktype="none"/>
</opcode>
- <opcode id="ffff" name="OP_DzInfo" updated="06/19/19">
+ <opcode id="550c" name="OP_DzInfo" updated="02/17/21">
<comment>Expedition Information</comment>
<payload dir="server" typename="dzInfo" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_EnvDamage" updated="06/19/19">
+ <opcode id="3164" name="OP_EnvDamage" updated="02/17/21">
<comment>Environmental Damage</comment>
<payload dir="client" typename="environmentDamageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_SetRunMode" updated="06/19/19">
+ <opcode id="014c" name="OP_SetRunMode" updated="02/17/21">
<comment>old cRunToggleCode</comment>
<payload dir="client" typename="cRunToggleStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_Trader" updated="06/19/19">
+ <opcode id="6e84" name="OP_Trader" updated="02/17/21">
<comment>PC's turning trader on and off</comment>
<payload dir="server" typename="bazaarTraderRequest" sizechecktype="match"/>
</opcode>
@@ -535,6 +535,14 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
+ <opcode id="6ec0" name="OP_GuildsInZoneList" updated="02/17/21">
+ <comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
+ <payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
+ </opcode>
+ <opcode id="33ba" name="OP_NewGuildInZone" updated="02/17/21">
+ <comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
+ <payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
+ </opcode>
<opcode id="ffff" name="OP_LFGGetMatchesRequest" updated="11/28/12">
<comment>LFG/LFP client request - 16 bytes</comment>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
Modified: showeq/trunk/src/eqstr.cpp
===================================================================
--- showeq/trunk/src/eqstr.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/eqstr.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -207,7 +207,7 @@
}
// replace template argument with subst string
- if (substFormatStringRes.isEmpty())
+ if (!substFormatStringRes.isEmpty())
formatString.replace(curPos, rxt.matchedLength(), substFormatStringRes);
else
curPos += rxt.matchedLength(); // if no replacement string, skip over
Modified: showeq/trunk/src/everquest.h
===================================================================
--- showeq/trunk/src/everquest.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/everquest.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -122,7 +122,7 @@
#define MAX_SPELLBOOK_SLOTS 800
#define MAX_GROUP_MEMBERS 6
#define MAX_BUFFS 42
-#define MAX_GUILDS 8192
+#define MAX_GUILDS 32768
#define MAX_AA 300
#define MAX_BANDOLIERS 20
#define MAX_POTIONS_IN_BELT 5
@@ -797,6 +797,7 @@
/*20210*/ uint8_t gm; // 0=no, 1=yes (guessing!)
/*20211*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader
/*20212*/ uint8_t unknown20212[16]; // *** Placeholder
+/*20224*/ uint32_t guildServerID;
/*20228*/ uint32_t exp; // Current Experience
/*20232*/ uint8_t unknown20232[12]; // *** Placeholder
/*20244*/ uint8_t languages[MAX_KNOWN_LANGS]; // List of languages
@@ -1100,6 +1101,7 @@
/*0000*/ uint8_t holding;
/*0000*/ uint32_t deity;
/*0000*/ uint32_t guildID;
+/*0000*/ uint32_t guildServerID;
/*0000*/ uint32_t guildstatus; // 0=member, 1=officer, 2=leader, -1=not guilded
/*0000*/ uint8_t class_;
/*0000*/ uint8_t state; // stand state
@@ -1991,18 +1993,18 @@
/*
** Money Loot
-** Length: 20 Octets
+** Length: 24 Octets
** OpCode: MoneyOnCorpseCode
*/
struct moneyOnCorpseStruct
{
-/*0000*/ uint8_t unknown0000[4]; // ***Placeholder
-/*0004*/ uint32_t platinum; // Platinum Pieces
-/*0008*/ uint32_t gold; // Gold Pieces
-/*0012*/ uint32_t silver; // Silver Pieces
-/*0016*/ uint32_t copper; // Copper Pieces
-/*0020*/
+/*0000*/ uint8_t unknown0000[8]; // ***Placeholder
+/*0008*/ uint32_t platinum; // Platinum Pieces
+/*0012*/ uint32_t gold; // Gold Pieces
+/*0016*/ uint32_t silver; // Silver Pieces
+/*0020*/ uint32_t copper; // Copper Pieces
+/*0024*/
};
/*
@@ -2506,11 +2508,22 @@
struct newGuildInZoneStruct
{
-/*0000*/ uint8_t unknown0000[8]; // ***Placeholder
-/*0008*/ char guildname[56]; // Guildname
-/*0064*/
+/*0000*/ uint32_t guildId; // Guild ID
+/*0004*/ uint32_t serverID; // ***Placeholder
+/*0008*/ char guildname[0]; // Guild name, null terminated
+/*xxxx*/
};
+struct guildsInZoneListStruct
+{
+/*0000*/ uint32_t name_len; // length of player name
+/*0004*/ char name[16]; // player name of length name_len,
+ // no null terminator, max 16
+/*xxxx*/ uint32_t num_guilds; // number of guild names in this struct
+/*xxxx*/ newGuildInZoneStruct guilds[0];
+/*xxxx*/
+};
+
struct moneyUpdateStruct
{
/*0000*/ uint32_t spawnid; // ***Placeholder
@@ -2615,14 +2628,14 @@
struct buffStruct
{
/*0000*/ uint32_t spawnid; //spawn id
-/*0004*/ uint8_t unknown0004[5];
-/*0009*/ int8_t level; // Level of person who cast buff
-/*0010*/ uint8_t unknown010[6];
-/*0016*/ uint32_t spellid; // spellid
-/*0020*/ uint32_t duration; // Time remaining in ticks
-/*0024*/ int32_t unknown0024; // Buff length in ticks
-/*0028*/ uint8_t unknown028[84];
-/*0112*/ uint32_t spellslot; // spellslot
+/*0004*/ uint8_t unknown0004[64];
+/*0068*/ uint32_t spellid; // spellid
+/*0072*/ uint32_t duration; // Time remaining in ticks
+/*0076*/ int32_t unknown0024; // Buff length in ticks
+/*0080*/ uint8_t unknown0080[25];
+/*0105*/ int8_t level; // Level of person who cast buff
+/*0106*/ uint8_t unknown0106[6];
+/*0112*/ uint32_t spellslot; // buff slot in buff window
/*0116*/ uint32_t changetype; // 1=buff fading,2=buff duration
/*0120*/
};
Modified: showeq/trunk/src/guild.cpp
===================================================================
--- showeq/trunk/src/guild.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/guild.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -47,21 +47,102 @@
{
}
-QString GuildMgr::guildIdToName(uint16_t guildID)
+QString GuildMgr::guildIdToName(uint16_t guildID, uint16_t guildServerID)
{
- if (guildID >= m_guildMap.size())
- return "";
- return m_guildMap[guildID];
+ uint32_t key = guildServerID << 16 | guildID;
+ //unguilded PCs have a guild ID of 0
+ if (!guildID || !guildServerID | !m_guildList.count(key))
+ return "";
+ return m_guildList[key];
}
-void GuildMgr::worldGuildList(const uint8_t* data, size_t len)
+
+void GuildMgr::newGuildInZone(const uint8_t* data, size_t len)
{
- writeGuildList(data, len);
- readGuildList();
+ NetStream netStream(data, len);
+ QString guildName;
+ uint32_t size = 0; // to keep track of how much we're reading from the packet
+ uint32_t guildId = 0;
+ uint32_t guildServerId = 0;
+
+ guildId = netStream.readUInt32NC();
+ size += 4;
+
+ guildServerId = netStream.readUInt32NC();
+ size += 4;
+
+ uint32_t key = guildServerId << 16 | guildId;
+
+ guildName = netStream.readText();
+ if (guildName.length() && !m_guildList.count(key))
+ {
+ m_guildList[key] = guildName;
+ writeGuildList();
+ emit guildTagUpdated(guildId);
+ }
+ size += guildName.length() + 1; // include null in count
+
+ if (size != len)
+ seqWarn("newGuildInZone packet is not the expected length: %u != %u", size, len);
}
-void GuildMgr::writeGuildList(const uint8_t* data, size_t len)
+void GuildMgr::guildsInZoneList(const uint8_t* data, size_t len)
{
+ NetStream netStream(data, len);
+ QString guildName;
+ QString emptyName = "";
+ uint32_t size = 0; // to keep track of how much we're reading from the packet
+ uint32_t guildId = 0;
+ uint32_t guildServerId = 0;
+ uint32_t numGuilds = 0;
+
+ uint32_t nameLen = netStream.readUInt32NC();
+ size += 4;
+
+ // skip the player name to get to the guilds
+ netStream.skipBytes(nameLen);
+ size += nameLen;
+
+ numGuilds = netStream.readUInt32NC();
+ size += 4;
+
+ bool need_save = false;
+
+ while(!netStream.end())
+ {
+ guildId = netStream.readUInt32NC();
+ size += 4;
+
+ guildServerId = netStream.readUInt32NC();
+ size += 4;
+
+ uint32_t key = guildServerId << 16 | guildId;
+
+ guildName = netStream.readText();
+ if (guildName.length() && !m_guildList.count(key))
+ {
+ m_guildList[key] = guildName;
+ need_save = true;
+ emit guildTagUpdated(guildId);
+ }
+
+ size += guildName.length() + 1; // include null in count
+
+ if (size >= len)
+ break;
+ }
+
+ if (size != len)
+ seqWarn("guildsInZoneList packet is not the expected length: %u != %u", size, len);
+
+ if (need_save)
+ writeGuildList();
+
+}
+
+
+void GuildMgr::writeGuildList()
+{
QFile guildsfile(guildsFileName);
if (guildsfile.exists()) {
@@ -76,58 +157,16 @@
seqWarn("GuildMgr: Could not open %s for writing, unable to replace with server data!",
guildsFileName.toLatin1().data());
- QDataStream guildDataStream(&guildsfile);
+ QTextStream guildDataStream(&guildsfile);
- NetStream netStream(data,len);
- QString guildName;
- QString emptyName = "";
- uint32_t size = 0; // to keep track of how much we're reading from the packet
- uint32_t guildId = 0;
-
- for (guildId = 0; guildId < 20000; guildId++)
- m_guildList[guildId] = emptyName;
- guildId = 0;
-
- /*
- 0x48 in the packet starts the serialized list. See guildListStruct
- and worldGuildListStruct in everquest.h
- */
-
- // skip to the first guild in the list
- netStream.skipBytes(0x44);
- size += 0x44;
-
- while(!netStream.end())
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- guildId = netStream.readUInt32NC();
- size += 4; // four bytes for the guild ID
- netStream.skipBytes(4);
- size += 4; // four bytes added 11/16/2016
- guildName = netStream.readText();
-
- if(guildName.length())
- {
- m_guildList[guildId] = guildName;
-
- // add guild name length, plus one for the null character
- size += guildName.length() + 1;
- }
-
- if(size + 1 == len)
- break; // the end
+ if (itr->first == 0)
+ continue;
+ QString line = QString::number(itr->first) + "|" + itr->second.toLatin1();
+ guildDataStream << line.trimmed() << "\n";
}
- std::map<uint32_t, QString>::iterator it;
-
- for(it = m_guildList.begin(); it != m_guildList.end(); it++)
- {
- char szGuildName[64] = {0};
-
- strcpy(szGuildName, it->second.toLatin1().data());
- //seqDebug("GuildMgr::writeGuildList - add guild '%s' (%d)", szGuildName, it->first);
- guildDataStream.writeRawData(szGuildName, sizeof(szGuildName));
- }
-
guildsfile.close();
seqInfo("GuildMgr: New guildsfile written");
}
@@ -135,17 +174,23 @@
void GuildMgr::readGuildList()
{
QFile guildsfile(guildsFileName);
+ m_guildList.clear();
- m_guildMap.clear();
if (guildsfile.open(QIODevice::ReadOnly))
{
while (!guildsfile.atEnd())
{
- char szGuildName[64] = {0};
-
- guildsfile.read(szGuildName, sizeof(szGuildName));
- //seqDebug("GuildMgr::readGuildList - read guild '%s'", szGuildName);
- m_guildMap.push_back(QString::fromUtf8(szGuildName));
+ QByteArray line = guildsfile.readLine();
+ QList<QByteArray> line_parts = line.split('|');
+ if (line_parts.size() != 2)
+ {
+ seqWarn("GuildMgr::readGuildList - skipping malformed line");
+ continue;
+ }
+ uint32_t key = line_parts.at(0).toULong();
+ QString guildName = line_parts.at(1).trimmed();
+ m_guildList[key] = guildName;
+ emit guildTagUpdated(key & 0x0000ffff);
}
guildsfile.close();
@@ -174,10 +219,11 @@
return;
}
- for (unsigned int i =0 ; i < m_guildMap.size(); i++)
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- if (!m_guildMap[i].isNull())
- guildtext << i << "\t" << m_guildMap[i] << endl;
+ if (itr->first == 0)
+ continue;
+ guildtext << itr->first << "\t" << itr->second << endl;
}
guildsfile.close();
@@ -188,10 +234,10 @@
void GuildMgr::listGuildInfo()
{
- for (unsigned int i = 0; i < m_guildMap.size(); i++)
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- if (!m_guildMap[i].isNull())
- seqInfo("%d\t%s", i, m_guildMap[i].toAscii().data());
+ if (!itr->second.isNull())
+ seqInfo("%d\t%s", itr->first, itr->second.toAscii().data());
}
}
Modified: showeq/trunk/src/guild.h
===================================================================
--- showeq/trunk/src/guild.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/guild.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -47,19 +47,21 @@
~GuildMgr();
- QString guildIdToName(uint16_t);
+ QString guildIdToName(uint16_t, uint16_t);
public slots:
- void worldGuildList(const uint8_t*, size_t);
+ void newGuildInZone(const uint8_t* data, size_t len);
+ void guildsInZoneList(const uint8_t * data, size_t len);
void readGuildList();
void guildList2text(QString);
void listGuildInfo();
+ void writeGuildList();
+ signals:
+ void guildTagUpdated(uint32_t);
+
private:
- std::vector<QString> m_guildMap;
std::map<uint32_t, QString> m_guildList;
-
- void writeGuildList(const uint8_t*, size_t);
QString guildsFileName;
Modified: showeq/trunk/src/interface.cpp
===================================================================
--- showeq/trunk/src/interface.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/interface.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -71,6 +71,7 @@
#include <unistd.h>
#include <cstdlib>
#include <cstdio>
+#include <ifaddrs.h>
#include <QFont>
#include <QApplication>
@@ -145,7 +146,8 @@
m_combatWindow(0),
m_netDiag(0),
m_messageFilterDialog(0),
- m_guildListWindow(0)
+ m_guildListWindow(0),
+ m_deviceList(enumerateDevices())
{
setObjectName(name);
setWindowFlags(Qt::Window);
@@ -221,10 +223,23 @@
fileInfo2 = m_dataLocationMgr->findExistingFile(".", fileName2);
+ QString net_device = pSEQPrefs->getPrefString("Device", section, "eth0");
+ if (!m_deviceList.contains(net_device))
+ {
+ QString selected = promptForNetDevice();
+
+ if (!selected.isEmpty())
+ {
+ // set it as the device to monitor next session
+ pSEQPrefs->setPrefString("Device", "Network", selected);
+ net_device = selected;
+ }
+ }
+
m_packet = new EQPacket(fileInfo.absoluteFilePath(),
fileInfo2.absoluteFilePath(),
pSEQPrefs->getPrefInt("ArqSeqGiveUp", section, 512),
- pSEQPrefs->getPrefString("Device", section, "eth0"),
+ net_device,
pSEQPrefs->getPrefString("IP", section,
AUTOMATIC_CLIENT_IP),
pSEQPrefs->getPrefString("MAC", section, "0"),
@@ -525,6 +540,7 @@
pFileMenu->addAction("Sa&ve Map", m_mapMgr, SLOT(saveMap()), Qt::Key_F2);
pFileMenu->addAction("Save SOE Map", m_mapMgr, SLOT(saveSOEMap()));
pFileMenu->addAction("Reload Guilds File", m_guildmgr, SLOT(readGuildList()));
+ pFileMenu->addAction("Save Guilds File", m_guildmgr, SLOT(writeGuildList()));
pFileMenu->addAction("Add Spawn Category", this, SLOT(addCategory()),
Qt::ALT+Qt::Key_C);
pFileMenu->addAction("Rebuild SpawnList", this, SLOT(rebuildSpawnList()),
@@ -2010,13 +2026,24 @@
if (m_guildmgr)
{
+ /*
m_packet->connect2("OP_GuildList", SP_World, DIR_Server,
"worldGuildListStruct", SZC_None,
m_guildmgr,
SLOT(worldGuildList(const uint8_t*, size_t)));
+ */
+ m_packet->connect2("OP_GuildsInZoneList", SP_Zone, DIR_Server,
+ "guildsInZoneListStruct", SZC_None, m_guildmgr,
+ SLOT(guildsInZoneList(const uint8_t*, size_t)));
+
+ m_packet->connect2("OP_NewGuildInZone", SP_Zone, DIR_Server,
+ "newGuildInZoneStruct", SZC_None, m_guildmgr,
+ SLOT(newGuildInZone(const uint8_t*, size_t)));
+
connect(this, SIGNAL(guildList2text(QString)),
m_guildmgr, SLOT(guildList2text(QString)));
+
}
if (m_guildShell)
@@ -2579,6 +2606,9 @@
if (m_guildShell != 0)
delete m_guildShell;
+ if (m_guildmgr != 0)
+ delete m_guildmgr;
+
if (m_zoneMgr != 0)
delete m_zoneMgr;
@@ -5134,23 +5164,68 @@
}
}
-void EQInterface::set_net_device()
+QStringList EQInterface::enumerateDevices()
{
- bool ok = false;
- QString dev =
- QInputDialog::getText(this, "ShowEQ - Device",
+ struct ifaddrs *ifaddr, *ifa;
+ int n;
+ QStringList devices;
+
+ if (getifaddrs(&ifaddr) == -1)
+ {
+ seqWarn("Could not enumerate network devices");
+ return QStringList();
+ }
+
+ for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa->ifa_next, n++)
+ {
+ if (ifa->ifa_addr == NULL)
+ continue;
+
+ if (ifa->ifa_addr->sa_family == AF_INET)
+ devices.append(ifa->ifa_name);
+ }
+
+ freeifaddrs(ifaddr);
+
+ return devices;
+}
+
+QString EQInterface::promptForNetDevice()
+{
+ m_deviceList = enumerateDevices();
+
+ int current = 0;
+ if (m_packet)
+ current = m_deviceList.indexOf(m_packet->device());
+
+ bool ok = false;
+ QString selected = QInputDialog::getItem(this, "ShowEQ - Device",
"Enter the device to sniff for EQ Packets:",
- QLineEdit::Normal, m_packet->device(),
- &ok);
+ m_deviceList, current, true, &ok);
- if (ok)
- {
- // start monitoring the device
- m_packet->monitorDevice(dev);
+ if (ok)
+ return selected;
+ else
+ return QString();
+}
- // set it as the device to monitor next session
- pSEQPrefs->setPrefString("Device", "Network", m_packet->device());
- }
+
+void EQInterface::set_net_device()
+{
+
+ QString selected = promptForNetDevice();
+
+ if (!selected.isEmpty())
+ {
+ if (m_packet)
+ {
+ // start monitoring the device
+ m_packet->monitorDevice(selected);
+ }
+
+ // set it as the device to monitor next session
+ pSEQPrefs->setPrefString("Device", "Network", selected);
+ }
}
void EQInterface::set_net_arq_giveup(int giveup)
Modified: showeq/trunk/src/interface.h
===================================================================
--- showeq/trunk/src/interface.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/interface.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -341,6 +341,8 @@
void insertWindowMenu(SEQWindow* window);
void removeWindowMenu(SEQWindow* window);
void setDockEnabled(QDockWidget* dw, bool enable);
+ QStringList enumerateDevices();
+ QString promptForNetDevice();
public:
Player* m_player;
@@ -415,6 +417,9 @@
MessageFilterDialog* m_messageFilterDialog;
GuildListWindow* m_guildListWindow;
+ QStringList m_deviceList;
+
+
QLabel* m_stsbarSpawns;
QLabel* m_stsbarStatus;
QLabel* m_stsbarZone;
Modified: showeq/trunk/src/map.cpp
===================================================================
--- showeq/trunk/src/map.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/map.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -4258,18 +4258,15 @@
if (spawn)
{
QString guild;
- if (spawn->guildID() < MAX_GUILDS)
- {
- if (!spawn->guildTag().isEmpty())
+ if (!spawn->guildTag().isEmpty())
guild.sprintf("<%s>", spawn->guildTag().toAscii().data());
- else
+ else if (spawn->guildID())
guild = QString::number(spawn->guildID());
- }
else
guild = " ";
QString hp;
-
+
if (spawn->HP() <= 0)
hp = "<= 0";
else
Modified: showeq/trunk/src/messageshell.cpp
===================================================================
--- showeq/trunk/src/messageshell.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/messageshell.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -253,20 +253,21 @@
target = m_spawnShell->findID(tSpawn, smsg->target);
// calculate the message position
- const char* message = smsg->source + strlen(smsg->source) + 1
- + sizeof(smsg->unknown0xxx);
-
- if (target)
- m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
- QString("Special: '%1' -> '%2' - %3")
- .arg(smsg->source)
- .arg(target->name())
- .arg(message));
- else
- m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
- QString("Special: '%1' - %2")
- .arg(smsg->source)
- .arg(message));
+ // const char* message = smsg->source + strlen(smsg->source) + 1
+ // + sizeof(smsg->unknown0xxx);
+ // NOTE: gcc 8 (and maybe others) over-optimizes the above strlen call on the
+ // variable-sized source array (possibly because it isn't the last member
+ // of the struct), and as a result, strlen always returns 0 unless compiler
+ // optimizations are disabled. So we work around this by creating a QString
+ // and using its size
+ const char* message = smsg->source + QString(smsg->source).length() + 1
+ + sizeof(smsg->unknown0xxx);
+
+ if (target) m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
+ QString("Special: '%1' -> '%2' - %3") .arg(smsg->source)
+ .arg(target->name()) .arg(message)); else
+ m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
+ QString("Special: '%1' - %2") .arg(smsg->source) .arg(message));
}
void MessageShell::guildMOTD(const uint8_t* data, size_t, uint8_t dir)
Modified: showeq/trunk/src/player.cpp
===================================================================
--- showeq/trunk/src/player.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/player.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -375,7 +375,8 @@
// Guild
setGuildID(player->guildID);
- setGuildTag(m_guildMgr->guildIdToName(guildID()));
+ setGuildServerID(player->guildServerID);
+ setGuildTag(m_guildMgr->guildIdToName(guildID(), guildServerID()));
emit guildChanged();
// Position
Modified: showeq/trunk/src/s_everquest.h
===================================================================
--- showeq/trunk/src/s_everquest.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/s_everquest.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -110,6 +110,7 @@
AddStruct(attack1Struct);
AddStruct(attack2Struct);
AddStruct(newGuildInZoneStruct);
+AddStruct(guildsInZoneListStruct);
AddStruct(moneyUpdateStruct);
AddStruct(memorizeSlotStruct);
AddStruct(cRunToggleStruct);
Modified: showeq/trunk/src/spawn.cpp
===================================================================
--- showeq/trunk/src/spawn.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/spawn.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -399,6 +399,7 @@
setHP(s->HP());
setMaxHP(s->maxHP());
setGuildID(s->guildID());
+ setGuildServerID(s->guildServerID());
setLevel(s->level());
for (int i = 0; i <= tLastCoreWearSlot; i++)
setEquipment(i, s->equipment(i));
@@ -433,6 +434,7 @@
setHP(s->curHp);
setMaxHP(100); //the client sets this to 100
setGuildID(s->guildID);
+ setGuildServerID(s->guildServerID);
setLevel(s->level);
for (int i = 0; i <= tLastCoreWearSlot; i++)
setEquipment(i, s->equipment[i]);
@@ -541,8 +543,11 @@
// set guildID
if (s->NPC == SPAWN_PLAYER || s->NPC == SPAWN_SELF)
+ {
setGuildID(s->guildID);
- else
+ setGuildServerID(s->guildServerID);
+ }
+ else
setGuildID(0xffff);
}
Modified: showeq/trunk/src/spawn.h
===================================================================
--- showeq/trunk/src/spawn.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/spawn.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -239,6 +239,7 @@
int32_t HP() const { return m_curHP; }
int32_t maxHP() const { return m_maxHP; }
uint16_t guildID() const { return m_guildID; }
+ uint16_t guildServerID() const { return m_guildServerID; }
QString guildTag() const { return m_guildTag; }
uint16_t petOwnerID() const { return m_petOwnerID; }
uint8_t light() const { return m_light; }
@@ -338,6 +339,7 @@
void setHP(int32_t HP) { m_curHP = HP; }
void setMaxHP(int32_t maxHP) { m_maxHP = maxHP; }
void setGuildID(uint16_t GuildID) { m_guildID = GuildID; }
+ void setGuildServerID(uint16_t GuildServerID) { m_guildServerID = GuildServerID; }
void setGuildTag(QString GuildTag) { m_guildTag = GuildTag; }
void setLevel(int level) { m_level = level; }
void setEquipment(uint8_t wearSlot, EquipStruct item)
@@ -378,6 +380,7 @@
int32_t m_curHP;
int32_t m_maxHP;
uint16_t m_guildID;
+ uint16_t m_guildServerID;
uint16_t m_deity;
int16_t m_deityTeam;
EquipStruct m_equipment[tNumWearSlots];
Modified: showeq/trunk/src/spawnlistcommon.cpp
===================================================================
--- showeq/trunk/src/spawnlistcommon.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/spawnlistcommon.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -209,13 +209,12 @@
{
setText(tSpawnColDeity, spawn->deityName());
setText(tSpawnColBodyType, spawn->typeString());
- if (spawn->guildID() < MAX_GUILDS)
- {
- if(!spawn->guildTag().isEmpty())
+ if (!spawn->guildTag().isEmpty())
setText(tSpawnColGuildID, spawn->guildTag());
- else
+ else if (spawn->guildID())
setText(tSpawnColGuildID, QString::number(spawn->guildID()));
- }
+ else
+ setText(tSpawnColGuildID, " ");
}
}
else if (changeType == tSpawnChangedALL)
Modified: showeq/trunk/src/spawnshell.cpp
===================================================================
--- showeq/trunk/src/spawnshell.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/spawnshell.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -142,6 +142,10 @@
connect(m_player, SIGNAL(changedID(uint16_t)),
this, SLOT(playerChangedID(uint16_t)));
+ // connect to guildmgr to receive notifications of guild tag updates
+ connect(m_guildMgr, SIGNAL(guildTagUpdated(uint32_t)),
+ this, SLOT(updateGuildTag(uint32_t)));
+
// restore the spawn list if necessary
if (showeq_params->restoreSpawns)
restoreSpawns();
@@ -248,6 +252,47 @@
return closest;
}
+void SpawnShell::updateGuildTag(uint32_t guildId)
+{
+ ItemIterator it(m_spawns);
+ Spawn* spawn;
+
+ while (it.hasNext())
+ {
+ it.next();
+
+ spawn = (Spawn*)it.value();
+ if (!spawn)
+ break;
+
+ if (guildId == spawn->guildID())
+ {
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+ spawn->updateLastChanged();
+ emit changeItem(spawn, tSpawnChangedALL);
+ }
+ }
+
+ ItemIterator pl(m_players);
+
+ while (pl.hasNext())
+ {
+ pl.next();
+
+ spawn = (Spawn*)pl.value();
+ if (!spawn)
+ break;
+
+ if (guildId == spawn->guildID())
+ {
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+ spawn->updateLastChanged();
+ emit changeItem(spawn, tSpawnChangedALL);
+ }
+ }
+}
+
+
Spawn* SpawnShell::findSpawnByName(const QString& name)
{
ItemIterator it(m_spawns);
@@ -686,7 +731,7 @@
spawn->holding = netStream.readUInt8();
spawn->deity = netStream.readUInt32NC();
spawn->guildID = netStream.readUInt32NC();
- netStream.skipBytes(4); /* new data in 11/16/2016 patch */
+ spawn->guildServerID = netStream.readUInt32NC();
/* spawn->guildstatus = netStream.readUInt32NC(); disappeared 11/14/2018 */
spawn->guildstatus = 0;
spawn->class_ = netStream.readUInt32NC();
@@ -732,20 +777,22 @@
netStream.skipBytes(36);
for(i = 0; i < 9; i++)
{
+ spawn->equipment[i].itemId = netStream.readUInt32NC();
spawn->equipment[i].equip3 = netStream.readUInt32NC();
- spawn->equipment[i].itemId = netStream.readUInt32NC();
spawn->equipment[i].equip2 = netStream.readUInt32NC();
spawn->equipment[i].equip1 = netStream.readUInt32NC();
spawn->equipment[i].equip0 = netStream.readUInt32NC();
}
} else {
- netStream.skipBytes(28);
+ netStream.skipBytes(20);
spawn->equipment[7].itemId = netStream.readUInt32NC();
+ spawn->equipment[7].equip3 = netStream.readUInt32NC();
spawn->equipment[7].equip2 = netStream.readUInt32NC();
spawn->equipment[7].equip1 = netStream.readUInt32NC();
spawn->equipment[7].equip0 = netStream.readUInt32NC();
// secondary
spawn->equipment[8].itemId = netStream.readUInt32NC();
+ spawn->equipment[8].equip3 = netStream.readUInt32NC();
spawn->equipment[8].equip2 = netStream.readUInt32NC();
spawn->equipment[8].equip1 = netStream.readUInt32NC();
spawn->equipment[8].equip0 = netStream.readUInt32NC();
@@ -879,10 +926,8 @@
updateRuntimeFilterFlags(spawn);
item->updateLastChanged();
- if (spawn->guildID() < MAX_GUILDS)
- spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID()));
- else
- spawn->setGuildTag("");
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+
if (!showeq_params->fast_machine)
item->setDistanceToPlayer(m_player->calcDist2DInt(*item));
else
@@ -898,10 +943,8 @@
updateRuntimeFilterFlags(spawn);
m_spawns.insert(s.spawnId, item);
- if (spawn->guildID() < MAX_GUILDS)
- spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID()));
- else
- spawn->setGuildTag("");
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+
if (!showeq_params->fast_machine)
item->setDistanceToPlayer(m_player->calcDist2DInt(*item));
else
@@ -1577,14 +1620,7 @@
updateRuntimeFilterFlags(corpse);
m_spawns.insert(corpse->id(), corpse);
- if (corpse->guildID() < MAX_GUILDS)
- {
- corpse->setGuildTag(m_guildMgr->guildIdToName(corpse->guildID()));
- }
- else
- {
- corpse->setGuildTag("");
- }
+ corpse->setGuildTag(m_guildMgr->guildIdToName(corpse->guildID(), corpse->guildServerID()));
emit addItem(corpse);
Modified: showeq/trunk/src/spawnshell.h
===================================================================
--- showeq/trunk/src/spawnshell.h 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/spawnshell.h 2021-03-10 21:19:21 UTC (rev 1153)
@@ -150,6 +150,8 @@
void saveSpawns(void);
void restoreSpawns(void);
+ void updateGuildTag(uint32_t guildId);
+
protected:
void refilterSpawns(spawnItemType type);
void refilterSpawnsRuntime(spawnItemType type);
Modified: showeq/trunk/src/zonemgr.cpp
===================================================================
--- showeq/trunk/src/zonemgr.cpp 2021-02-21 23:07:03 UTC (rev 1152)
+++ showeq/trunk/src/zonemgr.cpp 2021-03-10 21:19:21 UTC (rev 1153)
@@ -475,9 +475,10 @@
player->standState = netStream.readUInt16();
player->anon = netStream.readUInt16();
player->guildID = netStream.readUInt32NC();
+ player->guildServerID = netStream.readUInt32NC();
// Unknown
- netStream.skipBytes(14);
+ netStream.skipBytes(10);
player->platinum_bank = netStream.readUInt32NC();
player->gold_bank = netStream.readUInt32NC();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-21 23:07:05
|
Revision: 1152
http://sourceforge.net/p/seq/svn/1152
Author: cn187
Date: 2021-02-21 23:07:03 +0000 (Sun, 21 Feb 2021)
Log Message:
-----------
Add FAQ entry for MIT-SHM issues
Modified Paths:
--------------
showeq/trunk/FAQ
Modified: showeq/trunk/FAQ
===================================================================
--- showeq/trunk/FAQ 2021-02-21 04:14:29 UTC (rev 1151)
+++ showeq/trunk/FAQ 2021-02-21 23:07:03 UTC (rev 1152)
@@ -8,6 +8,8 @@
5) Seq keeps crashing with "!!!! EQPacketFragmentSequence::addFragment():
buffer overflow adding in new fragment". Why won't you fix this?
6) Why do I get extreme lag/slowness when using X11 forwarding?
+7) The Seq screen is blank and I'm seeing X errors reporting BadAccess,
+ BadShmSeg and BadDrawable. What do I do?
1) Hit points always say 65536, 0, 100, etc, what is wrong
@@ -143,3 +145,18 @@
QT_GRAPHICSSUBSYSTEM=native showeq
+
+7) The Seq screen is blank and I'm seeing X errors reporting BadAccess,
+ BadShmSeg and BadDrawable. What do I do?
+
+This can be worked around by setting the QT_X11_NO_MITSHM environment variable.
+
+You can either export the variable prior to running ShowEQ:
+
+ export QT_X11_NO_MITSHM=1
+ showeq
+
+or prepend it to the showeq command:
+
+ QT_X11_MIT_NO_MITSHM=1 showeq
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 22:46:19
|
Revision: 1149
http://sourceforge.net/p/seq/svn/1149
Author: cn187
Date: 2021-02-18 22:46:17 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Message formatting fixes
- Fix special messages not showing up correctly
- Fix typo introduced in Qt4 port that caused formatted messages not to
show correctly (oops).
Modified Paths:
--------------
showeq/branches/cn187_devel/src/eqstr.cpp
showeq/branches/cn187_devel/src/messageshell.cpp
Modified: showeq/branches/cn187_devel/src/eqstr.cpp
===================================================================
--- showeq/branches/cn187_devel/src/eqstr.cpp 2021-02-18 17:46:04 UTC (rev 1148)
+++ showeq/branches/cn187_devel/src/eqstr.cpp 2021-02-18 22:46:17 UTC (rev 1149)
@@ -207,7 +207,7 @@
}
// replace template argument with subst string
- if (substFormatStringRes.isEmpty())
+ if (!substFormatStringRes.isEmpty())
formatString.replace(curPos, rxt.matchedLength(), substFormatStringRes);
else
curPos += rxt.matchedLength(); // if no replacement string, skip over
Modified: showeq/branches/cn187_devel/src/messageshell.cpp
===================================================================
--- showeq/branches/cn187_devel/src/messageshell.cpp 2021-02-18 17:46:04 UTC (rev 1148)
+++ showeq/branches/cn187_devel/src/messageshell.cpp 2021-02-18 22:46:17 UTC (rev 1149)
@@ -253,20 +253,21 @@
target = m_spawnShell->findID(tSpawn, smsg->target);
// calculate the message position
- const char* message = smsg->source + strlen(smsg->source) + 1
- + sizeof(smsg->unknown0xxx);
-
- if (target)
- m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
- QString("Special: '%1' -> '%2' - %3")
- .arg(smsg->source)
- .arg(target->name())
- .arg(message));
- else
- m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
- QString("Special: '%1' - %2")
- .arg(smsg->source)
- .arg(message));
+ // const char* message = smsg->source + strlen(smsg->source) + 1
+ // + sizeof(smsg->unknown0xxx);
+ // NOTE: gcc 8 (and maybe others) over-optimizes the above strlen call on the
+ // variable-sized source array (possibly because it isn't the last member
+ // of the struct), and as a result, strlen always returns 0 unless compiler
+ // optimizations are disabled. So we work around this by creating a QString
+ // and using its size
+ const char* message = smsg->source + QString(smsg->source).length() + 1
+ + sizeof(smsg->unknown0xxx);
+
+ if (target) m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
+ QString("Special: '%1' -> '%2' - %3") .arg(smsg->source)
+ .arg(target->name()) .arg(message)); else
+ m_messages->addMessage(chatColor2MessageType(smsg->messageColor),
+ QString("Special: '%1' - %2") .arg(smsg->source) .arg(message));
}
void MessageShell::guildMOTD(const uint8_t* data, size_t, uint8_t dir)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 17:46:07
|
Revision: 1148
http://sourceforge.net/p/seq/svn/1148
Author: cn187
Date: 2021-02-18 17:46:04 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Enumerate net devices and prompt for selection if needed
Instead of failing to start if the default/saved net device isn't valid,
enumerate the available devices and present the user with a list of
devices to choose from.
Also update the Network->Select Device menu item to use the new
enumerated list/selector.
Modified Paths:
--------------
showeq/branches/cn187_devel/src/interface.cpp
showeq/branches/cn187_devel/src/interface.h
Modified: showeq/branches/cn187_devel/src/interface.cpp
===================================================================
--- showeq/branches/cn187_devel/src/interface.cpp 2021-02-18 17:45:52 UTC (rev 1147)
+++ showeq/branches/cn187_devel/src/interface.cpp 2021-02-18 17:46:04 UTC (rev 1148)
@@ -71,6 +71,7 @@
#include <unistd.h>
#include <cstdlib>
#include <cstdio>
+#include <ifaddrs.h>
#include <QFont>
#include <QApplication>
@@ -145,7 +146,8 @@
m_combatWindow(0),
m_netDiag(0),
m_messageFilterDialog(0),
- m_guildListWindow(0)
+ m_guildListWindow(0),
+ m_deviceList(enumerateDevices())
{
setObjectName(name);
setWindowFlags(Qt::Window);
@@ -221,10 +223,23 @@
fileInfo2 = m_dataLocationMgr->findExistingFile(".", fileName2);
+ QString net_device = pSEQPrefs->getPrefString("Device", section, "eth0");
+ if (!m_deviceList.contains(net_device))
+ {
+ QString selected = promptForNetDevice();
+
+ if (!selected.isEmpty())
+ {
+ // set it as the device to monitor next session
+ pSEQPrefs->setPrefString("Device", "Network", selected);
+ net_device = selected;
+ }
+ }
+
m_packet = new EQPacket(fileInfo.absoluteFilePath(),
fileInfo2.absoluteFilePath(),
pSEQPrefs->getPrefInt("ArqSeqGiveUp", section, 512),
- pSEQPrefs->getPrefString("Device", section, "eth0"),
+ net_device,
pSEQPrefs->getPrefString("IP", section,
AUTOMATIC_CLIENT_IP),
pSEQPrefs->getPrefString("MAC", section, "0"),
@@ -5149,23 +5164,68 @@
}
}
-void EQInterface::set_net_device()
+QStringList EQInterface::enumerateDevices()
{
- bool ok = false;
- QString dev =
- QInputDialog::getText(this, "ShowEQ - Device",
+ struct ifaddrs *ifaddr, *ifa;
+ int n;
+ QStringList devices;
+
+ if (getifaddrs(&ifaddr) == -1)
+ {
+ seqWarn("Could not enumerate network devices");
+ return QStringList();
+ }
+
+ for (ifa = ifaddr, n = 0; ifa != NULL; ifa = ifa->ifa_next, n++)
+ {
+ if (ifa->ifa_addr == NULL)
+ continue;
+
+ if (ifa->ifa_addr->sa_family == AF_INET)
+ devices.append(ifa->ifa_name);
+ }
+
+ freeifaddrs(ifaddr);
+
+ return devices;
+}
+
+QString EQInterface::promptForNetDevice()
+{
+ m_deviceList = enumerateDevices();
+
+ int current = 0;
+ if (m_packet)
+ current = m_deviceList.indexOf(m_packet->device());
+
+ bool ok = false;
+ QString selected = QInputDialog::getItem(this, "ShowEQ - Device",
"Enter the device to sniff for EQ Packets:",
- QLineEdit::Normal, m_packet->device(),
- &ok);
+ m_deviceList, current, true, &ok);
- if (ok)
- {
- // start monitoring the device
- m_packet->monitorDevice(dev);
+ if (ok)
+ return selected;
+ else
+ return QString();
+}
- // set it as the device to monitor next session
- pSEQPrefs->setPrefString("Device", "Network", m_packet->device());
- }
+
+void EQInterface::set_net_device()
+{
+
+ QString selected = promptForNetDevice();
+
+ if (!selected.isEmpty())
+ {
+ if (m_packet)
+ {
+ // start monitoring the device
+ m_packet->monitorDevice(selected);
+ }
+
+ // set it as the device to monitor next session
+ pSEQPrefs->setPrefString("Device", "Network", selected);
+ }
}
void EQInterface::set_net_arq_giveup(int giveup)
Modified: showeq/branches/cn187_devel/src/interface.h
===================================================================
--- showeq/branches/cn187_devel/src/interface.h 2021-02-18 17:45:52 UTC (rev 1147)
+++ showeq/branches/cn187_devel/src/interface.h 2021-02-18 17:46:04 UTC (rev 1148)
@@ -341,6 +341,8 @@
void insertWindowMenu(SEQWindow* window);
void removeWindowMenu(SEQWindow* window);
void setDockEnabled(QDockWidget* dw, bool enable);
+ QStringList enumerateDevices();
+ QString promptForNetDevice();
public:
Player* m_player;
@@ -415,6 +417,9 @@
MessageFilterDialog* m_messageFilterDialog;
GuildListWindow* m_guildListWindow;
+ QStringList m_deviceList;
+
+
QLabel* m_stsbarSpawns;
QLabel* m_stsbarStatus;
QLabel* m_stsbarZone;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 17:46:02
|
Revision: 1147
http://sourceforge.net/p/seq/svn/1147
Author: cn187
Date: 2021-02-18 17:45:52 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Show held/worn equipment
Fix the stream parsing to correctly align the ItemIDs so that the
held/worn equipment shows up in the Info field.
Note: the rest of the equipment field ordering may or may not be correct
as a whole, but that can be addressed in the future if needed.
Modified Paths:
--------------
showeq/branches/cn187_devel/src/spawnshell.cpp
Modified: showeq/branches/cn187_devel/src/spawnshell.cpp
===================================================================
--- showeq/branches/cn187_devel/src/spawnshell.cpp 2021-02-18 17:45:45 UTC (rev 1146)
+++ showeq/branches/cn187_devel/src/spawnshell.cpp 2021-02-18 17:45:52 UTC (rev 1147)
@@ -777,20 +777,22 @@
netStream.skipBytes(36);
for(i = 0; i < 9; i++)
{
+ spawn->equipment[i].itemId = netStream.readUInt32NC();
spawn->equipment[i].equip3 = netStream.readUInt32NC();
- spawn->equipment[i].itemId = netStream.readUInt32NC();
spawn->equipment[i].equip2 = netStream.readUInt32NC();
spawn->equipment[i].equip1 = netStream.readUInt32NC();
spawn->equipment[i].equip0 = netStream.readUInt32NC();
}
} else {
- netStream.skipBytes(28);
+ netStream.skipBytes(20);
spawn->equipment[7].itemId = netStream.readUInt32NC();
+ spawn->equipment[7].equip3 = netStream.readUInt32NC();
spawn->equipment[7].equip2 = netStream.readUInt32NC();
spawn->equipment[7].equip1 = netStream.readUInt32NC();
spawn->equipment[7].equip0 = netStream.readUInt32NC();
// secondary
spawn->equipment[8].itemId = netStream.readUInt32NC();
+ spawn->equipment[8].equip3 = netStream.readUInt32NC();
spawn->equipment[8].equip2 = netStream.readUInt32NC();
spawn->equipment[8].equip1 = netStream.readUInt32NC();
spawn->equipment[8].equip0 = netStream.readUInt32NC();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 17:45:48
|
Revision: 1146
http://sourceforge.net/p/seq/svn/1146
Author: cn187
Date: 2021-02-18 17:45:45 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Update guild tag opcodes for 02/17/21
Modified Paths:
--------------
showeq/branches/cn187_devel/conf/zoneopcodes.xml
Modified: showeq/branches/cn187_devel/conf/zoneopcodes.xml
===================================================================
--- showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-02-18 17:45:35 UTC (rev 1145)
+++ showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-02-18 17:45:45 UTC (rev 1146)
@@ -535,11 +535,11 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="248a" name="OP_GuildsInZoneList" updated="01/20/21">
+ <opcode id="6ec0" name="OP_GuildsInZoneList" updated="02/17/21">
<comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
<payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
</opcode>
- <opcode id="14a2" name="OP_NewGuildInZone" updated="01/20/21">
+ <opcode id="33ba" name="OP_NewGuildInZone" updated="02/17/21">
<comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
<payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
</opcode>
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 17:45:40
|
Revision: 1145
http://sourceforge.net/p/seq/svn/1145
Author: cn187
Date: 2021-02-18 17:45:35 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Fix guild tag display
* Adds OP_NewGuildInZone and OP_GuildsInZoneList opcodes.
* Persist guild tag info between sessions via guilds3.dat file
* Use previously-unknown guildServerID field in spawn and profile structs
to differentiate between the same guildID used on different servers.
Modified Paths:
--------------
showeq/branches/cn187_devel/conf/seqdef.xml
showeq/branches/cn187_devel/conf/zoneopcodes.xml
showeq/branches/cn187_devel/src/everquest.h
showeq/branches/cn187_devel/src/guild.cpp
showeq/branches/cn187_devel/src/guild.h
showeq/branches/cn187_devel/src/interface.cpp
showeq/branches/cn187_devel/src/map.cpp
showeq/branches/cn187_devel/src/player.cpp
showeq/branches/cn187_devel/src/s_everquest.h
showeq/branches/cn187_devel/src/spawn.cpp
showeq/branches/cn187_devel/src/spawn.h
showeq/branches/cn187_devel/src/spawnlistcommon.cpp
showeq/branches/cn187_devel/src/spawnshell.cpp
showeq/branches/cn187_devel/src/spawnshell.h
showeq/branches/cn187_devel/src/zonemgr.cpp
Modified: showeq/branches/cn187_devel/conf/seqdef.xml
===================================================================
--- showeq/branches/cn187_devel/conf/seqdef.xml 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/conf/seqdef.xml 2021-02-18 17:45:35 UTC (rev 1145)
@@ -2500,7 +2500,7 @@
" />
</property>
<property name="GuildsFile" >
- <string value="guilds2.dat" />
+ <string value="guilds3.dat" />
<comment>Location of file containing guild strings</comment>
</property>
<property name="GuildsDumpFile" >
Modified: showeq/branches/cn187_devel/conf/zoneopcodes.xml
===================================================================
--- showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/conf/zoneopcodes.xml 2021-02-18 17:45:35 UTC (rev 1145)
@@ -535,6 +535,14 @@
<comment>Listing of all guilds. Can be triggered by /lfg search?</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
+ <opcode id="248a" name="OP_GuildsInZoneList" updated="01/20/21">
+ <comment>Listing of guild names present in the current zone. Generally seen on zoning</comment>
+ <payload dir="server" typename="guildsInZoneListStruct" sizechecktype="none"/>
+ </opcode>
+ <opcode id="14a2" name="OP_NewGuildInZone" updated="01/20/21">
+ <comment>An additional guild name has appeared in the current zone. Seen when a guilded player enters the current zone</comment>
+ <payload dir="server" typename="newGuildInZoneStruct" sizechecktype="none"/>
+ </opcode>
<opcode id="ffff" name="OP_LFGGetMatchesRequest" updated="11/28/12">
<comment>LFG/LFP client request - 16 bytes</comment>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
Modified: showeq/branches/cn187_devel/src/everquest.h
===================================================================
--- showeq/branches/cn187_devel/src/everquest.h 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/everquest.h 2021-02-18 17:45:35 UTC (rev 1145)
@@ -122,7 +122,7 @@
#define MAX_SPELLBOOK_SLOTS 800
#define MAX_GROUP_MEMBERS 6
#define MAX_BUFFS 42
-#define MAX_GUILDS 8192
+#define MAX_GUILDS 32768
#define MAX_AA 300
#define MAX_BANDOLIERS 20
#define MAX_POTIONS_IN_BELT 5
@@ -797,6 +797,7 @@
/*20210*/ uint8_t gm; // 0=no, 1=yes (guessing!)
/*20211*/ int8_t guildstatus; // 0=member, 1=officer, 2=guildleader
/*20212*/ uint8_t unknown20212[16]; // *** Placeholder
+/*20224*/ uint32_t guildServerID;
/*20228*/ uint32_t exp; // Current Experience
/*20232*/ uint8_t unknown20232[12]; // *** Placeholder
/*20244*/ uint8_t languages[MAX_KNOWN_LANGS]; // List of languages
@@ -1100,6 +1101,7 @@
/*0000*/ uint8_t holding;
/*0000*/ uint32_t deity;
/*0000*/ uint32_t guildID;
+/*0000*/ uint32_t guildServerID;
/*0000*/ uint32_t guildstatus; // 0=member, 1=officer, 2=leader, -1=not guilded
/*0000*/ uint8_t class_;
/*0000*/ uint8_t state; // stand state
@@ -2506,11 +2508,22 @@
struct newGuildInZoneStruct
{
-/*0000*/ uint8_t unknown0000[8]; // ***Placeholder
-/*0008*/ char guildname[56]; // Guildname
-/*0064*/
+/*0000*/ uint32_t guildId; // Guild ID
+/*0004*/ uint32_t serverID; // ***Placeholder
+/*0008*/ char guildname[0]; // Guild name, null terminated
+/*xxxx*/
};
+struct guildsInZoneListStruct
+{
+/*0000*/ uint32_t name_len; // length of player name
+/*0004*/ char name[16]; // player name of length name_len,
+ // no null terminator, max 16
+/*xxxx*/ uint32_t num_guilds; // number of guild names in this struct
+/*xxxx*/ newGuildInZoneStruct guilds[0];
+/*xxxx*/
+};
+
struct moneyUpdateStruct
{
/*0000*/ uint32_t spawnid; // ***Placeholder
Modified: showeq/branches/cn187_devel/src/guild.cpp
===================================================================
--- showeq/branches/cn187_devel/src/guild.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/guild.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -47,21 +47,102 @@
{
}
-QString GuildMgr::guildIdToName(uint16_t guildID)
+QString GuildMgr::guildIdToName(uint16_t guildID, uint16_t guildServerID)
{
- if (guildID >= m_guildMap.size())
- return "";
- return m_guildMap[guildID];
+ uint32_t key = guildServerID << 16 | guildID;
+ //unguilded PCs have a guild ID of 0
+ if (!guildID || !guildServerID | !m_guildList.count(key))
+ return "";
+ return m_guildList[key];
}
-void GuildMgr::worldGuildList(const uint8_t* data, size_t len)
+
+void GuildMgr::newGuildInZone(const uint8_t* data, size_t len)
{
- writeGuildList(data, len);
- readGuildList();
+ NetStream netStream(data, len);
+ QString guildName;
+ uint32_t size = 0; // to keep track of how much we're reading from the packet
+ uint32_t guildId = 0;
+ uint32_t guildServerId = 0;
+
+ guildId = netStream.readUInt32NC();
+ size += 4;
+
+ guildServerId = netStream.readUInt32NC();
+ size += 4;
+
+ uint32_t key = guildServerId << 16 | guildId;
+
+ guildName = netStream.readText();
+ if (guildName.length() && !m_guildList.count(key))
+ {
+ m_guildList[key] = guildName;
+ writeGuildList();
+ emit guildTagUpdated(guildId);
+ }
+ size += guildName.length() + 1; // include null in count
+
+ if (size != len)
+ seqWarn("newGuildInZone packet is not the expected length: %u != %u", size, len);
}
-void GuildMgr::writeGuildList(const uint8_t* data, size_t len)
+void GuildMgr::guildsInZoneList(const uint8_t* data, size_t len)
{
+ NetStream netStream(data, len);
+ QString guildName;
+ QString emptyName = "";
+ uint32_t size = 0; // to keep track of how much we're reading from the packet
+ uint32_t guildId = 0;
+ uint32_t guildServerId = 0;
+ uint32_t numGuilds = 0;
+
+ uint32_t nameLen = netStream.readUInt32NC();
+ size += 4;
+
+ // skip the player name to get to the guilds
+ netStream.skipBytes(nameLen);
+ size += nameLen;
+
+ numGuilds = netStream.readUInt32NC();
+ size += 4;
+
+ bool need_save = false;
+
+ while(!netStream.end())
+ {
+ guildId = netStream.readUInt32NC();
+ size += 4;
+
+ guildServerId = netStream.readUInt32NC();
+ size += 4;
+
+ uint32_t key = guildServerId << 16 | guildId;
+
+ guildName = netStream.readText();
+ if (guildName.length() && !m_guildList.count(key))
+ {
+ m_guildList[key] = guildName;
+ need_save = true;
+ emit guildTagUpdated(guildId);
+ }
+
+ size += guildName.length() + 1; // include null in count
+
+ if (size >= len)
+ break;
+ }
+
+ if (size != len)
+ seqWarn("guildsInZoneList packet is not the expected length: %u != %u", size, len);
+
+ if (need_save)
+ writeGuildList();
+
+}
+
+
+void GuildMgr::writeGuildList()
+{
QFile guildsfile(guildsFileName);
if (guildsfile.exists()) {
@@ -76,58 +157,16 @@
seqWarn("GuildMgr: Could not open %s for writing, unable to replace with server data!",
guildsFileName.toLatin1().data());
- QDataStream guildDataStream(&guildsfile);
+ QTextStream guildDataStream(&guildsfile);
- NetStream netStream(data,len);
- QString guildName;
- QString emptyName = "";
- uint32_t size = 0; // to keep track of how much we're reading from the packet
- uint32_t guildId = 0;
-
- for (guildId = 0; guildId < 20000; guildId++)
- m_guildList[guildId] = emptyName;
- guildId = 0;
-
- /*
- 0x48 in the packet starts the serialized list. See guildListStruct
- and worldGuildListStruct in everquest.h
- */
-
- // skip to the first guild in the list
- netStream.skipBytes(0x44);
- size += 0x44;
-
- while(!netStream.end())
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- guildId = netStream.readUInt32NC();
- size += 4; // four bytes for the guild ID
- netStream.skipBytes(4);
- size += 4; // four bytes added 11/16/2016
- guildName = netStream.readText();
-
- if(guildName.length())
- {
- m_guildList[guildId] = guildName;
-
- // add guild name length, plus one for the null character
- size += guildName.length() + 1;
- }
-
- if(size + 1 == len)
- break; // the end
+ if (itr->first == 0)
+ continue;
+ QString line = QString::number(itr->first) + "|" + itr->second.toLatin1();
+ guildDataStream << line.trimmed() << "\n";
}
- std::map<uint32_t, QString>::iterator it;
-
- for(it = m_guildList.begin(); it != m_guildList.end(); it++)
- {
- char szGuildName[64] = {0};
-
- strcpy(szGuildName, it->second.toLatin1().data());
- //seqDebug("GuildMgr::writeGuildList - add guild '%s' (%d)", szGuildName, it->first);
- guildDataStream.writeRawData(szGuildName, sizeof(szGuildName));
- }
-
guildsfile.close();
seqInfo("GuildMgr: New guildsfile written");
}
@@ -135,17 +174,23 @@
void GuildMgr::readGuildList()
{
QFile guildsfile(guildsFileName);
+ m_guildList.clear();
- m_guildMap.clear();
if (guildsfile.open(QIODevice::ReadOnly))
{
while (!guildsfile.atEnd())
{
- char szGuildName[64] = {0};
-
- guildsfile.read(szGuildName, sizeof(szGuildName));
- //seqDebug("GuildMgr::readGuildList - read guild '%s'", szGuildName);
- m_guildMap.push_back(QString::fromUtf8(szGuildName));
+ QByteArray line = guildsfile.readLine();
+ QList<QByteArray> line_parts = line.split('|');
+ if (line_parts.size() != 2)
+ {
+ seqWarn("GuildMgr::readGuildList - skipping malformed line");
+ continue;
+ }
+ uint32_t key = line_parts.at(0).toULong();
+ QString guildName = line_parts.at(1).trimmed();
+ m_guildList[key] = guildName;
+ emit guildTagUpdated(key & 0x0000ffff);
}
guildsfile.close();
@@ -174,10 +219,11 @@
return;
}
- for (unsigned int i =0 ; i < m_guildMap.size(); i++)
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- if (!m_guildMap[i].isNull())
- guildtext << i << "\t" << m_guildMap[i] << endl;
+ if (itr->first == 0)
+ continue;
+ guildtext << itr->first << "\t" << itr->second << endl;
}
guildsfile.close();
@@ -188,10 +234,10 @@
void GuildMgr::listGuildInfo()
{
- for (unsigned int i = 0; i < m_guildMap.size(); i++)
+ for (auto itr = m_guildList.begin(); itr != m_guildList.end(); ++itr)
{
- if (!m_guildMap[i].isNull())
- seqInfo("%d\t%s", i, m_guildMap[i].toAscii().data());
+ if (!itr->second.isNull())
+ seqInfo("%d\t%s", itr->first, itr->second.toAscii().data());
}
}
Modified: showeq/branches/cn187_devel/src/guild.h
===================================================================
--- showeq/branches/cn187_devel/src/guild.h 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/guild.h 2021-02-18 17:45:35 UTC (rev 1145)
@@ -47,19 +47,21 @@
~GuildMgr();
- QString guildIdToName(uint16_t);
+ QString guildIdToName(uint16_t, uint16_t);
public slots:
- void worldGuildList(const uint8_t*, size_t);
+ void newGuildInZone(const uint8_t* data, size_t len);
+ void guildsInZoneList(const uint8_t * data, size_t len);
void readGuildList();
void guildList2text(QString);
void listGuildInfo();
+ void writeGuildList();
+ signals:
+ void guildTagUpdated(uint32_t);
+
private:
- std::vector<QString> m_guildMap;
std::map<uint32_t, QString> m_guildList;
-
- void writeGuildList(const uint8_t*, size_t);
QString guildsFileName;
Modified: showeq/branches/cn187_devel/src/interface.cpp
===================================================================
--- showeq/branches/cn187_devel/src/interface.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/interface.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -525,6 +525,7 @@
pFileMenu->addAction("Sa&ve Map", m_mapMgr, SLOT(saveMap()), Qt::Key_F2);
pFileMenu->addAction("Save SOE Map", m_mapMgr, SLOT(saveSOEMap()));
pFileMenu->addAction("Reload Guilds File", m_guildmgr, SLOT(readGuildList()));
+ pFileMenu->addAction("Save Guilds File", m_guildmgr, SLOT(writeGuildList()));
pFileMenu->addAction("Add Spawn Category", this, SLOT(addCategory()),
Qt::ALT+Qt::Key_C);
pFileMenu->addAction("Rebuild SpawnList", this, SLOT(rebuildSpawnList()),
@@ -2010,13 +2011,24 @@
if (m_guildmgr)
{
+ /*
m_packet->connect2("OP_GuildList", SP_World, DIR_Server,
"worldGuildListStruct", SZC_None,
m_guildmgr,
SLOT(worldGuildList(const uint8_t*, size_t)));
+ */
+ m_packet->connect2("OP_GuildsInZoneList", SP_Zone, DIR_Server,
+ "guildsInZoneListStruct", SZC_None, m_guildmgr,
+ SLOT(guildsInZoneList(const uint8_t*, size_t)));
+
+ m_packet->connect2("OP_NewGuildInZone", SP_Zone, DIR_Server,
+ "newGuildInZoneStruct", SZC_None, m_guildmgr,
+ SLOT(newGuildInZone(const uint8_t*, size_t)));
+
connect(this, SIGNAL(guildList2text(QString)),
m_guildmgr, SLOT(guildList2text(QString)));
+
}
if (m_guildShell)
@@ -2579,6 +2591,9 @@
if (m_guildShell != 0)
delete m_guildShell;
+ if (m_guildmgr != 0)
+ delete m_guildmgr;
+
if (m_zoneMgr != 0)
delete m_zoneMgr;
Modified: showeq/branches/cn187_devel/src/map.cpp
===================================================================
--- showeq/branches/cn187_devel/src/map.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/map.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -4258,18 +4258,15 @@
if (spawn)
{
QString guild;
- if (spawn->guildID() < MAX_GUILDS)
- {
- if (!spawn->guildTag().isEmpty())
+ if (!spawn->guildTag().isEmpty())
guild.sprintf("<%s>", spawn->guildTag().toAscii().data());
- else
+ else if (spawn->guildID())
guild = QString::number(spawn->guildID());
- }
else
guild = " ";
QString hp;
-
+
if (spawn->HP() <= 0)
hp = "<= 0";
else
Modified: showeq/branches/cn187_devel/src/player.cpp
===================================================================
--- showeq/branches/cn187_devel/src/player.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/player.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -375,7 +375,8 @@
// Guild
setGuildID(player->guildID);
- setGuildTag(m_guildMgr->guildIdToName(guildID()));
+ setGuildServerID(player->guildServerID);
+ setGuildTag(m_guildMgr->guildIdToName(guildID(), guildServerID()));
emit guildChanged();
// Position
Modified: showeq/branches/cn187_devel/src/s_everquest.h
===================================================================
--- showeq/branches/cn187_devel/src/s_everquest.h 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/s_everquest.h 2021-02-18 17:45:35 UTC (rev 1145)
@@ -110,6 +110,7 @@
AddStruct(attack1Struct);
AddStruct(attack2Struct);
AddStruct(newGuildInZoneStruct);
+AddStruct(guildsInZoneListStruct);
AddStruct(moneyUpdateStruct);
AddStruct(memorizeSlotStruct);
AddStruct(cRunToggleStruct);
Modified: showeq/branches/cn187_devel/src/spawn.cpp
===================================================================
--- showeq/branches/cn187_devel/src/spawn.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/spawn.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -399,6 +399,7 @@
setHP(s->HP());
setMaxHP(s->maxHP());
setGuildID(s->guildID());
+ setGuildServerID(s->guildServerID());
setLevel(s->level());
for (int i = 0; i <= tLastCoreWearSlot; i++)
setEquipment(i, s->equipment(i));
@@ -433,6 +434,7 @@
setHP(s->curHp);
setMaxHP(100); //the client sets this to 100
setGuildID(s->guildID);
+ setGuildServerID(s->guildServerID);
setLevel(s->level);
for (int i = 0; i <= tLastCoreWearSlot; i++)
setEquipment(i, s->equipment[i]);
@@ -541,8 +543,11 @@
// set guildID
if (s->NPC == SPAWN_PLAYER || s->NPC == SPAWN_SELF)
+ {
setGuildID(s->guildID);
- else
+ setGuildServerID(s->guildServerID);
+ }
+ else
setGuildID(0xffff);
}
Modified: showeq/branches/cn187_devel/src/spawn.h
===================================================================
--- showeq/branches/cn187_devel/src/spawn.h 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/spawn.h 2021-02-18 17:45:35 UTC (rev 1145)
@@ -239,6 +239,7 @@
int32_t HP() const { return m_curHP; }
int32_t maxHP() const { return m_maxHP; }
uint16_t guildID() const { return m_guildID; }
+ uint16_t guildServerID() const { return m_guildServerID; }
QString guildTag() const { return m_guildTag; }
uint16_t petOwnerID() const { return m_petOwnerID; }
uint8_t light() const { return m_light; }
@@ -338,6 +339,7 @@
void setHP(int32_t HP) { m_curHP = HP; }
void setMaxHP(int32_t maxHP) { m_maxHP = maxHP; }
void setGuildID(uint16_t GuildID) { m_guildID = GuildID; }
+ void setGuildServerID(uint16_t GuildServerID) { m_guildServerID = GuildServerID; }
void setGuildTag(QString GuildTag) { m_guildTag = GuildTag; }
void setLevel(int level) { m_level = level; }
void setEquipment(uint8_t wearSlot, EquipStruct item)
@@ -378,6 +380,7 @@
int32_t m_curHP;
int32_t m_maxHP;
uint16_t m_guildID;
+ uint16_t m_guildServerID;
uint16_t m_deity;
int16_t m_deityTeam;
EquipStruct m_equipment[tNumWearSlots];
Modified: showeq/branches/cn187_devel/src/spawnlistcommon.cpp
===================================================================
--- showeq/branches/cn187_devel/src/spawnlistcommon.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/spawnlistcommon.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -209,13 +209,12 @@
{
setText(tSpawnColDeity, spawn->deityName());
setText(tSpawnColBodyType, spawn->typeString());
- if (spawn->guildID() < MAX_GUILDS)
- {
- if(!spawn->guildTag().isEmpty())
+ if (!spawn->guildTag().isEmpty())
setText(tSpawnColGuildID, spawn->guildTag());
- else
+ else if (spawn->guildID())
setText(tSpawnColGuildID, QString::number(spawn->guildID()));
- }
+ else
+ setText(tSpawnColGuildID, " ");
}
}
else if (changeType == tSpawnChangedALL)
Modified: showeq/branches/cn187_devel/src/spawnshell.cpp
===================================================================
--- showeq/branches/cn187_devel/src/spawnshell.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/spawnshell.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -142,6 +142,10 @@
connect(m_player, SIGNAL(changedID(uint16_t)),
this, SLOT(playerChangedID(uint16_t)));
+ // connect to guildmgr to receive notifications of guild tag updates
+ connect(m_guildMgr, SIGNAL(guildTagUpdated(uint32_t)),
+ this, SLOT(updateGuildTag(uint32_t)));
+
// restore the spawn list if necessary
if (showeq_params->restoreSpawns)
restoreSpawns();
@@ -248,6 +252,47 @@
return closest;
}
+void SpawnShell::updateGuildTag(uint32_t guildId)
+{
+ ItemIterator it(m_spawns);
+ Spawn* spawn;
+
+ while (it.hasNext())
+ {
+ it.next();
+
+ spawn = (Spawn*)it.value();
+ if (!spawn)
+ break;
+
+ if (guildId == spawn->guildID())
+ {
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+ spawn->updateLastChanged();
+ emit changeItem(spawn, tSpawnChangedALL);
+ }
+ }
+
+ ItemIterator pl(m_players);
+
+ while (pl.hasNext())
+ {
+ pl.next();
+
+ spawn = (Spawn*)pl.value();
+ if (!spawn)
+ break;
+
+ if (guildId == spawn->guildID())
+ {
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+ spawn->updateLastChanged();
+ emit changeItem(spawn, tSpawnChangedALL);
+ }
+ }
+}
+
+
Spawn* SpawnShell::findSpawnByName(const QString& name)
{
ItemIterator it(m_spawns);
@@ -686,7 +731,7 @@
spawn->holding = netStream.readUInt8();
spawn->deity = netStream.readUInt32NC();
spawn->guildID = netStream.readUInt32NC();
- netStream.skipBytes(4); /* new data in 11/16/2016 patch */
+ spawn->guildServerID = netStream.readUInt32NC();
/* spawn->guildstatus = netStream.readUInt32NC(); disappeared 11/14/2018 */
spawn->guildstatus = 0;
spawn->class_ = netStream.readUInt32NC();
@@ -879,10 +924,8 @@
updateRuntimeFilterFlags(spawn);
item->updateLastChanged();
- if (spawn->guildID() < MAX_GUILDS)
- spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID()));
- else
- spawn->setGuildTag("");
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+
if (!showeq_params->fast_machine)
item->setDistanceToPlayer(m_player->calcDist2DInt(*item));
else
@@ -898,10 +941,8 @@
updateRuntimeFilterFlags(spawn);
m_spawns.insert(s.spawnId, item);
- if (spawn->guildID() < MAX_GUILDS)
- spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID()));
- else
- spawn->setGuildTag("");
+ spawn->setGuildTag(m_guildMgr->guildIdToName(spawn->guildID(), spawn->guildServerID()));
+
if (!showeq_params->fast_machine)
item->setDistanceToPlayer(m_player->calcDist2DInt(*item));
else
@@ -1577,14 +1618,7 @@
updateRuntimeFilterFlags(corpse);
m_spawns.insert(corpse->id(), corpse);
- if (corpse->guildID() < MAX_GUILDS)
- {
- corpse->setGuildTag(m_guildMgr->guildIdToName(corpse->guildID()));
- }
- else
- {
- corpse->setGuildTag("");
- }
+ corpse->setGuildTag(m_guildMgr->guildIdToName(corpse->guildID(), corpse->guildServerID()));
emit addItem(corpse);
Modified: showeq/branches/cn187_devel/src/spawnshell.h
===================================================================
--- showeq/branches/cn187_devel/src/spawnshell.h 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/spawnshell.h 2021-02-18 17:45:35 UTC (rev 1145)
@@ -150,6 +150,8 @@
void saveSpawns(void);
void restoreSpawns(void);
+ void updateGuildTag(uint32_t guildId);
+
protected:
void refilterSpawns(spawnItemType type);
void refilterSpawnsRuntime(spawnItemType type);
Modified: showeq/branches/cn187_devel/src/zonemgr.cpp
===================================================================
--- showeq/branches/cn187_devel/src/zonemgr.cpp 2021-02-18 17:28:56 UTC (rev 1144)
+++ showeq/branches/cn187_devel/src/zonemgr.cpp 2021-02-18 17:45:35 UTC (rev 1145)
@@ -475,9 +475,10 @@
player->standState = netStream.readUInt16();
player->anon = netStream.readUInt16();
player->guildID = netStream.readUInt32NC();
+ player->guildServerID = netStream.readUInt32NC();
// Unknown
- netStream.skipBytes(14);
+ netStream.skipBytes(10);
player->platinum_bank = netStream.readUInt32NC();
player->gold_bank = netStream.readUInt32NC();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 17:28:58
|
Revision: 1144
http://sourceforge.net/p/seq/svn/1144
Author: cn187
Date: 2021-02-18 17:28:56 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Create branch cn187_devel
Added Paths:
-----------
showeq/branches/cn187_devel/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 01:48:22
|
Revision: 1143
http://sourceforge.net/p/seq/svn/1143
Author: cn187
Date: 2021-02-18 01:48:16 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Tag for release 6.0.0.2
Added Paths:
-----------
showeq/tags/v6_0_0_2/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-02-18 01:38:14
|
Revision: 1142
http://sourceforge.net/p/seq/svn/1142
Author: cn187
Date: 2021-02-18 01:38:08 +0000 (Thu, 18 Feb 2021)
Log Message:
-----------
Release 6.0.0.2
- Update ClientZoneEntryStruct to eliminate warning (fransick)
- Update opcodes/structs for 2021-02-17 patch
- Version to 6.0.0.2
Modified Paths:
--------------
showeq/trunk/ChangeLog
showeq/trunk/conf/zoneopcodes.xml
showeq/trunk/configure.in
showeq/trunk/src/everquest.h
Modified: showeq/trunk/ChangeLog
===================================================================
--- showeq/trunk/ChangeLog 2021-01-31 19:18:37 UTC (rev 1141)
+++ showeq/trunk/ChangeLog 2021-02-18 01:38:08 UTC (rev 1142)
@@ -1,3 +1,9 @@
+cn187 (02/17/21)
+----------------
+- Updated version to 6.0.0.2
+- Support for EQ patch 02/17/21
+- Updated ClientZoneEntryStruct to eliminate warning (fransick)
+
cn187 (01/20/21)
----------------
- Updated version to 6.0.0.1
Modified: showeq/trunk/conf/zoneopcodes.xml
===================================================================
--- showeq/trunk/conf/zoneopcodes.xml 2021-01-31 19:18:37 UTC (rev 1141)
+++ showeq/trunk/conf/zoneopcodes.xml 2021-02-18 01:38:08 UTC (rev 1142)
@@ -3,78 +3,78 @@
<seqopcodes>
<!-- Critical opcodes used directly by ShowEQ -->
- <opcode id="1dda" name="OP_PlayerProfile" updated="01/20/21">
+ <opcode id="6167" name="OP_PlayerProfile" updated="02/17/21">
<comment>CharProfileCode</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="68f8" name="OP_ZoneEntry" updated="01/20/21">
+ <opcode id="2150" name="OP_ZoneEntry" updated="02/17/21">
<comment>ZoneEntryCode</comment>
<payload dir="client" typename="ClientZoneEntryStruct" sizechecktype="match"/>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="0559" name="OP_TimeOfDay" updated="01/20/21">
+ <opcode id="4b1b" name="OP_TimeOfDay" updated="02/17/21">
<comment>TimeOfDayCode</comment>
<payload dir="server" typename="timeOfDayStruct" sizechecktype="match"/>
</opcode>
- <opcode id="745c" name="OP_NewZone" updated="01/20/21">
+ <opcode id="26f2" name="OP_NewZone" updated="02/17/21">
<comment>NewZoneCode</comment>
<payload dir="server" typename="newZoneStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0779" name="OP_SpawnDoor" updated="01/20/21">
+ <opcode id="5355" name="OP_SpawnDoor" updated="02/17/21">
<comment>DoorSpawnsCode</comment>
<payload dir="server" typename="doorStruct" sizechecktype="modulus"/>
</opcode>
- <opcode id="42fe" name="OP_GroundSpawn" updated="01/20/21">
+ <opcode id="7b4d" name="OP_GroundSpawn" updated="02/17/21">
<comment>MakeDropCode</comment>
<payload dir="server" typename="makeDropStruct" sizechecktype="none"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="1ec0" name="OP_SendZonePoints" updated="01/20/21">
+ <opcode id="5dcd" name="OP_SendZonePoints" updated="02/17/21">
<comment>Coords in a zone that will port you to another zone</comment>
<payload dir="server" typename="zonePointsStruct" sizechecktype="none"/>
</opcode>
- <opcode id="0007" name="OP_AAExpUpdate" updated="01/20/21">
+ <opcode id="04c4" name="OP_AAExpUpdate" updated="02/17/21">
<comment>Receiving AA experience. Also when percent to AA changes.</comment>
<payload dir="server" typename="altExpUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="34c3" name="OP_ExpUpdate" updated="01/20/21">
+ <opcode id="00e5" name="OP_ExpUpdate" updated="02/17/21">
<comment>ExpUpdateCode</comment>
<payload dir="server" typename="expUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1c17" name="OP_GuildMOTD" updated="01/20/21">
+ <opcode id="7e16" name="OP_GuildMOTD" updated="02/17/21">
<comment>GuildMOTD</comment>
<payload dir="server" typename="guildMOTDStruct" sizechecktype="none"/>
</opcode>
- <opcode id="00f5" name="OP_ClientUpdate" updated="01/20/21">
+ <opcode id="3838" name="OP_ClientUpdate" updated="02/17/21">
<comment>Position updates</comment>
<payload dir="server" typename="playerSpawnPosStruct" sizechecktype="match"/>
<payload dir="both" typename="playerSelfPosStruct" sizechecktype="match"/>
</opcode>
- <opcode id="6aa6" name="OP_NpcMoveUpdate" updated="01/20/21">
+ <opcode id="4aad" name="OP_NpcMoveUpdate" updated="02/17/21">
<comment>Position updates</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="695d" name="OP_MobUpdate" updated="01/20/21">
+ <opcode id="1aa9" name="OP_MobUpdate" updated="02/17/21">
<comment>MobUpdateCode</comment>
<payload dir="both" typename="spawnPositionUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="1e4e" name="OP_DeleteSpawn" updated="01/20/21">
+ <opcode id="5ebd" name="OP_DeleteSpawn" updated="02/17/21">
<comment>DeleteSpawnCode</comment>
<payload dir="both" typename="deleteSpawnStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3671" name="OP_RemoveSpawn" updated="01/20/21">
+ <opcode id="1d9b" name="OP_RemoveSpawn" updated="02/17/21">
<comment>Remove spawn from zone</comment>
<payload dir="both" typename="removeSpawnStruct" sizechecktype="none"/>
</opcode>
- <opcode id="7209" name="OP_Death" updated="01/20/21">
+ <opcode id="0be8" name="OP_Death" updated="02/17/21">
<comment>old NewCorpseCode</comment>
<payload dir="server" typename="newCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="14f8" name="OP_WearChange" updated="01/20/21">
+ <opcode id="523a" name="OP_WearChange" updated="02/17/21">
<comment>SpawnUpdateCode</comment>
<payload dir="both" typename="SpawnUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="13dc" name="OP_SpawnAppearance" updated="01/20/21">
+ <opcode id="25a3" name="OP_SpawnAppearance" updated="02/17/21">
<comment>SpawnAppearanceCode</comment>
<payload dir="both" typename="spawnAppearanceStruct" sizechecktype="match"/>
</opcode>
@@ -82,36 +82,36 @@
<comment>Server updating on hunger/thirst</comment>
<payload dir="server" typename="staminaStruct" sizechecktype="match"/>
</opcode>
- <opcode id="233f" name="OP_HPUpdate" updated="01/20/21">
+ <opcode id="07f7" name="OP_HPUpdate" updated="02/17/21">
<comment>NpcHpUpdateCode Update HP % of a PC or NPC</comment>
<payload dir="both" typename="hpNpcUpdateStruct" sizechecktype="match"/>
</opcode>
- <opcode id="369e" name="OP_GuildMemberUpdate" updated="01/20/21">
+ <opcode id="7317" name="OP_GuildMemberUpdate" updated="02/17/21">
<comment>Info regarding guild members</comment>
<payload dir="server" typename="GuildMemberUpdate" sizechecktype="match"/>
</opcode>
- <opcode id="783f" name="OP_ClickObject" updated="01/20/21">
+ <opcode id="5ae0" name="OP_ClickObject" updated="02/17/21">
<comment>Items dropped on the ground</comment>
<payload dir="both" typename="remDropStruct" sizechecktype="match"/>
</opcode>
- <opcode id="3414" name="OP_Action" updated="01/20/21">
+ <opcode id="71e8" name="OP_Action" updated="02/17/21">
<comment>Spells cast etc</comment>
<payload dir="both" typename="actionStruct" sizechecktype="match"/>
<payload dir="both" typename="actionAltStruct" sizechecktype="match"/>
</opcode>
- <opcode id="109e" name="OP_Action2" updated="01/20/21">
+ <opcode id="694f" name="OP_Action2" updated="02/17/21">
<comment>Combat actions i.e. bash, kick etc</comment>
<payload dir="both" typename="action2Struct" sizechecktype="match"/>
</opcode>
- <opcode id="22c5" name="OP_Consider" updated="01/20/21">
+ <opcode id="3fec" name="OP_Consider" updated="02/17/21">
<comment>ConsiderCode</comment>
<payload dir="both" typename="considerStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1eaf" name="OP_TargetMouse" updated="01/20/21">
+ <opcode id="4c33" name="OP_TargetMouse" updated="02/17/21">
<comment>Targeting a person - old ClientTargetCode</comment>
<payload dir="both" typename="clientTargetStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2d2f" name="OP_SpawnRename" updated="01/20/21">
+ <opcode id="1fbe" name="OP_SpawnRename" updated="02/17/21">
<comment>Spawns getting renamed after initial NewSpawn</comment>
<payload dir="server" typename="spawnRenameStruct" sizechecktype="match"/>
</opcode>
@@ -123,7 +123,7 @@
<comment>Server putting players into shroud form</comment>
<payload dir="server" typename="spawnShroudSelf" sizechecktype="none"/>
</opcode>
- <opcode id="68d7" name="OP_ZoneChange" updated="01/20/21">
+ <opcode id="5242" name="OP_ZoneChange" updated="02/17/21">
<comment>old ZoneChangeCode</comment>
<payload dir="both" typename="zoneChangeStruct" sizechecktype="match"/>
</opcode>
@@ -167,19 +167,19 @@
<comment>old BuffDropCode</comment>
<payload dir="both" typename="buffStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_BeginCast" updated="06/19/19">
+ <opcode id="49de" name="OP_BeginCast" updated="02/17/21">
<comment>BeginCastCode</comment>
<payload dir="both" typename="beginCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="ffff" name="OP_CastSpell" updated="06/19/19">
+ <opcode id="56a9" name="OP_CastSpell" updated="02/17/21">
<comment>StartCastCode</comment>
<payload dir="both" typename="startCastStruct" sizechecktype="match"/>
</opcode>
- <opcode id="0d8c" name="OP_SwapSpell" updated="01/20/21">
+ <opcode id="4058" name="OP_SwapSpell" updated="02/17/21">
<comment>TradeSpellBookSlotsCode</comment>
<payload dir="both" typename="tradeSpellBookSlotsStruct" sizechecktype="match"/>
</opcode>
- <opcode id="102c" name="OP_MemorizeSpell" updated="01/20/21">
+ <opcode id="292b" name="OP_MemorizeSpell" updated="02/17/21">
<comment>MemSpellCode</comment>
<payload dir="both" typename="memSpellStruct" sizechecktype="match"/>
</opcode>
@@ -191,19 +191,19 @@
<comment>EmoteTextCode</comment>
<payload dir="both" typename="emoteTextStruct" sizechecktype="none"/>
</opcode>
- <opcode id="0606" name="OP_SimpleMessage" updated="01/20/21">
+ <opcode id="678f" name="OP_SimpleMessage" updated="02/17/21">
<comment>SimpleMessageCode</comment>
<payload dir="server" typename="simpleMessageStruct" sizechecktype="match"/>
</opcode>
- <opcode id="2427" name="OP_FormattedMessage" updated="01/20/21">
+ <opcode id="6586" name="OP_FormattedMessage" updated="02/17/21">
<comment>FormattedMessageCode i.e. pet dismissed etc</comment>
<payload dir="server" typename="formattedMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="68ea" name="OP_CommonMessage" updated="01/20/21">
+ <opcode id="1c31" name="OP_CommonMessage" updated="02/17/21">
<comment>ChannelMessageCode i.e. /tell /ooc /shout etc</comment>
<payload dir="both" typename="channelMessageStruct" sizechecktype="none"/>
</opcode>
- <opcode id="47fd" name="OP_SpecialMesg" updated="01/20/21">
+ <opcode id="77b5" name="OP_SpecialMesg" updated="02/17/21">
<comment>Communicate textual info to client including hail responses etc</comment>
<payload dir="server" typename="specialMessageStruct" sizechecktype="none"/>
</opcode>
@@ -223,7 +223,7 @@
<comment>Server replying with deny information after /deny</comment>
<payload dir="server" typename="consentResponseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="419d" name="OP_ManaChange" updated="01/20/21">
+ <opcode id="6679" name="OP_ManaChange" updated="02/17/21">
<comment>Mana change. Bards send this up with no size. Casters receive this for mana updates.</comment>
<payload dir="server" typename="manaDecrementStruct" sizechecktype="match"/>
<payload dir="client" typename="uint8_t" sizechecktype="none"/>
@@ -240,11 +240,11 @@
<comment>MoneyOnCorpseCode</comment>
<payload dir="server" typename="moneyOnCorpseStruct" sizechecktype="match"/>
</opcode>
- <opcode id="4d81" name="OP_SkillUpdate" updated="01/20/21">
+ <opcode id="012b" name="OP_SkillUpdate" updated="02/17/21">
<comment>Skill up code</comment>
<payload dir="server" typename="skillIncStruct" sizechecktype="match"/>
</opcode>
- <opcode id="1995" name="OP_LevelUpdate" updated="01/20/21">
+ <opcode id="2dad" name="OP_LevelUpdate" updated="02/17/21">
<comment>LevelUpUpdateCode</comment>
<payload dir="server" typename="levelUpUpdateStruct" sizechecktype="match"/>
</opcode>
@@ -307,15 +307,15 @@
<comment>List of group members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="5d7d" name="OP_GuildMemberList" updated="01/20/21">
+ <opcode id="35b8" name="OP_GuildMemberList" updated="02/17/21">
<comment>List of guild members - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6f8a" name="OP_ManaUpdate" updated="01/20/21">
+ <opcode id="70f7" name="OP_ManaUpdate" updated="02/17/21">
<comment>Mana Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="03cb" name="OP_EndUpdate" updated="01/20/21">
+ <opcode id="000e" name="OP_EndUpdate" updated="02/17/21">
<comment>Endurance Update opcode - 10 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -367,7 +367,7 @@
<comment>Fellowship information - 2576 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="327f" name="OP_ExpandedGuildInfo" updated="01/20/21">
+ <opcode id="6995" name="OP_ExpandedGuildInfo" updated="02/17/21">
<comment>Guild ranks and other misc guild data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
@@ -587,7 +587,7 @@
<comment>Free to play nags and other data - Variable length</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
- <opcode id="6dd9" name="OP_Find" updated="01/20/21">
+ <opcode id="5414" name="OP_Find" updated="02/17/21">
<comment>Find window data - 112 bytes</comment>
<payload dir="server" typename="uint8_t" sizechecktype="none"/>
</opcode>
Modified: showeq/trunk/configure.in
===================================================================
--- showeq/trunk/configure.in 2021-01-31 19:18:37 UTC (rev 1141)
+++ showeq/trunk/configure.in 2021-02-18 01:38:08 UTC (rev 1142)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.0.0.1)
+AC_INIT(showeq, 6.0.0.2)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
Modified: showeq/trunk/src/everquest.h
===================================================================
--- showeq/trunk/src/everquest.h 2021-01-31 19:18:37 UTC (rev 1141)
+++ showeq/trunk/src/everquest.h 2021-02-18 01:38:08 UTC (rev 1142)
@@ -1111,26 +1111,29 @@
struct
{
- signed y:19; // y coord (2nd loc value)
+ signed deltaHeading:10; // change in heading
+ unsigned pitch:12; // pitch (up/down heading)
+ unsigned padding00:10;
+
signed deltaZ:13; // change in z
+ signed deltaY:13; // change in y
+ unsigned padding01:6;
- signed x:19; // x coord (1st loc value)
+ signed z:19; // z coord (3rd loc value)
signed deltaX:13; // change in x
+ signed x:19; // x coord (1st loc value)
unsigned heading:12; // heading
- signed deltaHeading:10; // change in heading
- signed animation:10; // current animation
-
- unsigned pitch:12; // pitch (up/down heading)
- signed z:19; // z coord (3rd loc value)
unsigned padding03:1;
- signed deltaY:13; // change in y
- unsigned padding04:19;
+ signed animation:10; // current animation
+ signed y:19; // y coord (2nd loc value)
+ unsigned padding04:3;
};
int32_t posData[5];
};
+
/*0000*/ union
{
struct
@@ -2388,22 +2391,24 @@
/*0000*/ uint16_t spawnId;
/*0002*/ uint16_t spawnId2;
/*0004*/
- signed y:19; // y coord (2nd loc value)
+ signed deltaHeading:10; // change in heading
+ unsigned pitch:12; // pitch (up/down heading)
+ unsigned padding00:10;
+/*0008*/
signed deltaZ:13; // change in z
-/*0008*/
+ signed deltaY:13; // change in y
+ unsigned padding01:6;
+/*0012*/
+ signed z:19; // z coord (3rd loc value)
+ signed deltaX:13; // change in x
+/*0016*/
signed x:19; // x coord (1st loc value)
- signed deltaX:13; // change in x
-/*0012*/
unsigned heading:12; // heading
- signed deltaHeading:10; // change in heading
- signed animation:10; // current animation
-/*0016*/
- unsigned pitch:12; // pitch (up/down heading)
- signed z:19; // z coord (3rd loc value)
unsigned padding03:1;
/*0020*/
- signed deltaY:13; // change in y
- unsigned padding04:19;
+ signed animation:10; // current animation
+ signed y:19; // y coord (2nd loc value)
+ unsigned padding04:3;
/*0024*/
};
@@ -2418,24 +2423,25 @@
/*0002*/ uint16_t spawnId; // Player's spawn id
/*0004*/ uint16_t unknown0004; // ***Placeholder
/*0006*/
- float deltaX; // change in x
+ float deltaY; // change in y
/*0010*/
+ unsigned pitch:12; // pitch (up/down heading)
unsigned heading:12; // heading
- unsigned padding01:20;
+ unsigned padding01:8;
/*0014*/
- float deltaZ; // change in z
+ signed deltaHeading:10; // change in heading
+ signed animation:10; // current animation
+ unsigned padding02:12;
/*0018*/
float x; // x coord (1st loc value)
/*0022*/
+ float deltaZ; // change in z
+/*0026*/
float z; // z coord (3rd loc value)
-/*0026*/
- float deltaY; // change in y
/*0030*/
float y; // y coord (2nd loc value)
/*0034*/
- unsigned pitch:12; // pitch (up/down heading)
- signed animation:10; // current animation
- signed deltaHeading:10; // change in heading
+ float deltaX; // change in x
/*0038*/
};
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-01-21 05:05:12
|
Revision: 1140
http://sourceforge.net/p/seq/svn/1140
Author: cn187
Date: 2021-01-21 05:05:11 +0000 (Thu, 21 Jan 2021)
Log Message:
-----------
Tag release 6.0.0.1
Added Paths:
-----------
showeq/tags/v6_0_0_1/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-01-21 04:59:30
|
Revision: 1139
http://sourceforge.net/p/seq/svn/1139
Author: cn187
Date: 2021-01-21 04:59:21 +0000 (Thu, 21 Jan 2021)
Log Message:
-----------
Release 6.0.0.1 patch bugfix
Modified Paths:
--------------
showeq/trunk/ChangeLog
showeq/trunk/configure.in
Modified: showeq/trunk/ChangeLog
===================================================================
--- showeq/trunk/ChangeLog 2021-01-21 04:46:42 UTC (rev 1138)
+++ showeq/trunk/ChangeLog 2021-01-21 04:59:21 UTC (rev 1139)
@@ -1,5 +1,12 @@
cn187 (01/20/21)
----------------
+- Updated version to 6.0.0.1
+- Additional fixes for EQ patch 01/20/21
+ - Fix struct alignment issue causing crashes and invalid spawn data
+ - Fix map loading issue in some zones
+
+cn187 (01/20/21)
+----------------
- Updated version to 6.0.0.0
- Updated to QT4
- Various bug fixes
Modified: showeq/trunk/configure.in
===================================================================
--- showeq/trunk/configure.in 2021-01-21 04:46:42 UTC (rev 1138)
+++ showeq/trunk/configure.in 2021-01-21 04:59:21 UTC (rev 1139)
@@ -2,7 +2,7 @@
dnl $Id$ $Name$
AC_PREREQ(2.59)
-AC_INIT(showeq, 6.0.0.0)
+AC_INIT(showeq, 6.0.0.1)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_MACRO_DIR([m4])
AC_CANONICAL_SYSTEM
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-01-21 04:46:47
|
Revision: 1138
http://sourceforge.net/p/seq/svn/1138
Author: cn187
Date: 2021-01-21 04:46:42 +0000 (Thu, 21 Jan 2021)
Log Message:
-----------
Fix typo in previous commit
Modified Paths:
--------------
showeq/trunk/src/zonemgr.cpp
Modified: showeq/trunk/src/zonemgr.cpp
===================================================================
--- showeq/trunk/src/zonemgr.cpp 2021-01-21 04:45:13 UTC (rev 1137)
+++ showeq/trunk/src/zonemgr.cpp 2021-01-21 04:46:42 UTC (rev 1138)
@@ -642,7 +642,7 @@
// 2020-01-20 patch seems to have added _progress suffix to certain
// zone names, presumably for the progression servers. This happens in
// ToV DZs for sure, but there may be others.
- QRexExp rz("_progress$");
+ QRegExp rz("_progress$");
m_shortZoneName.replace(rz, "");
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-01-21 04:45:21
|
Revision: 1137
http://sourceforge.net/p/seq/svn/1137
Author: cn187
Date: 2021-01-21 04:45:13 +0000 (Thu, 21 Jan 2021)
Log Message:
-----------
Ignore _progress suffix on zone shortnames
Modified Paths:
--------------
showeq/trunk/src/zonemgr.cpp
Modified: showeq/trunk/src/zonemgr.cpp
===================================================================
--- showeq/trunk/src/zonemgr.cpp 2021-01-21 04:32:15 UTC (rev 1136)
+++ showeq/trunk/src/zonemgr.cpp 2021-01-21 04:45:13 UTC (rev 1137)
@@ -638,6 +638,12 @@
// LDoN likes to append a _262 to the zonename. Get rid of it.
QRegExp rx("_\\d+$");
m_shortZoneName.replace( rx, "");
+
+ // 2020-01-20 patch seems to have added _progress suffix to certain
+ // zone names, presumably for the progression servers. This happens in
+ // ToV DZs for sure, but there may be others.
+ QRexExp rz("_progress$");
+ m_shortZoneName.replace(rz, "");
}
m_longZoneName = zoneNew->longName;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <cn...@us...> - 2021-01-21 04:32:23
|
Revision: 1136
http://sourceforge.net/p/seq/svn/1136
Author: cn187
Date: 2021-01-21 04:32:15 +0000 (Thu, 21 Jan 2021)
Log Message:
-----------
Fix for struct alignment change in fillProfileStruct
Modified Paths:
--------------
showeq/trunk/src/zonemgr.cpp
Modified: showeq/trunk/src/zonemgr.cpp
===================================================================
--- showeq/trunk/src/zonemgr.cpp 2021-01-21 00:45:51 UTC (rev 1135)
+++ showeq/trunk/src/zonemgr.cpp 2021-01-21 04:32:15 UTC (rev 1136)
@@ -263,7 +263,7 @@
}
// Looks like face, haircolor, beardcolor, eyes, etc. Skipping over it.
- netStream.skipBytes(52);
+ netStream.skipBytes(51);
player->profile.points = netStream.readUInt32NC();
player->profile.MANA = netStream.readUInt32NC();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|