View Full Version : Opcodes
user387
05-19-2003, 04:50 PM
since the patch didn't change anything....
#define StartCastCode 0x00C6
quackrabbit
05-19-2003, 07:32 PM
#define RemDropCode 0x00fe
Wildcat
05-20-2003, 01:08 AM
#define BeginCastCode 0x0017
in everquest.h change uint32_t for spawnId/spellId to be uint16_t
in everquest.h change uint32_t for spawnId/spellId to be uint16_t
In all structs or specific ones?
Wildcat
05-20-2003, 10:39 AM
Sigh,
I had a longer post written up but the forums timed out on posting it and I lost it.
I'm not sure if it is all opcodes or not, it was the case for the opcode and structure that I modified, and before I did modify it, I noticed that it was split about 50/50 when I greped everquest.h to see the size of spawnId. Maybe that split is based on working OpCodes vs nonworking?
I was planning on spending some time later this week that I have off from work with adding some better logging functionality, but it turns out that the feature I was looking for is already present in SEQ just very well hidden. ;) So I can spend a bit more time decdoding opcodes/structures then assuming it hasn't already been done.
Quark
05-20-2003, 12:19 PM
Patch to fix guildlists:
#define GuildListCode 0x005c
diff -u -r1.51 packet.cpp
--- packet.cpp 19 Apr 2003 03:23:03 -0000 1.51
+++ packet.cpp 20 May 2003 18:16:17 -0000
@@ -1670,8 +1670,8 @@
emit toggle_log_WorldData(); //untoggle the GUI checkmark
- uint16_t opCode = eqntohuint16(data);
-
+ uint16_t opCode = *((uint16_t *)data);
+
bool unk = true;
switch (opCode)
diff -u -r1.3 guild.cpp
--- guild.cpp 18 Apr 2003 04:26:12 -0000 1.3
+++ guild.cpp 20 May 2003 19:01:03 -0000
@@ -80,6 +80,7 @@
{
QFile guildsfile(guildsFileName);
+ m_guildMap.clear();
if (guildsfile.open(IO_ReadOnly))
{
worldGuildListStruct tmp;
@@ -95,7 +96,6 @@
while (!guildsfile.atEnd())
{
guildsfile.readBlock(reinterpret_cast<char*>(&gl), sizeof(gl));
- if (strlen(gl.guildName) > 0)
m_guildMap.push_back(gl.guildName);
}
@@ -125,7 +125,7 @@
return;
}
- for (int i =0 ; i < MAXGUILDS; i++)
+ for (unsigned int i =0 ; i < m_guildMap.size(); i++)
{
if (m_guildMap[i])
guildtext << i << "\t" << m_guildMap[i] << "\n";
@@ -139,7 +139,7 @@
void GuildMgr::listGuildInfo()
{
- for (int i = 0; i < MAXGUILDS; i++)
+ for (unsigned int i = 0; i < m_guildMap.size(); i++)
{
if (m_guildMap[i])
printf("%d %s\n", i, (const char*)m_guildMap[i]);
Quark
05-21-2003, 06:39 AM
@@ -95,7 +96,6 @@
while (!guildsfile.atEnd())
{
guildsfile.readBlock(reinterpret_cast<char*>(&gl), sizeof(gl));
- if (strlen(gl.guildName) > 0)
m_guildMap.push_back(gl.guildName);
}
I see that part of the patch was commited, this portion also needs to be commited.
If there is a guildID that has no associated guildname, it wont get pushed into the list and all the following guilds will be off by one each time this happens.
Hope this makes sense, if it doesnt I will post some world.log examples to illustrate
user387
05-26-2003, 10:08 AM
#define GroupInfoCode 0x0263
Elyon
05-26-2003, 11:39 AM
Originally posted by user387
#define GroupInfoCode 0x0263
The above, 0x0263, is also shown as #define NpcHpUpdateCode in opcodes.h
:confused:
user387
05-26-2003, 03:41 PM
Originally posted by Elyon
The above, 0x0263, is also shown as #define NpcHpUpdateCode in opcodes.h
:confused:
which is wrong.
Quark
05-26-2003, 04:19 PM
#define GuildListCode 0x005c
still needs to be added to cvs
TrainSpotter
05-26-2003, 10:28 PM
Originally posted by user387
which is wrong.
If thats wrong, whats the right opcode?
spiceman
05-27-2003, 12:24 AM
I changed the #define GroupInfoCode 0x0263 to 0x2640 and it worked for me and i left the #define NpcHpUpdateCode as 0x0263.
However, with the latest DL from CVS the ground spawns still do not disapear for me when they are picked up
bonkersbobcat
05-27-2003, 01:27 AM
Ground spawns are disappearing for me.
user387
05-27-2003, 02:07 AM
Originally posted by spiceman
I changed the #define GroupInfoCode 0x0263 to 0x2640 and it worked for me and i left the #define NpcHpUpdateCode as 0x0263.
However, with the latest DL from CVS the ground spawns still do not disapear for me when they are picked up
which is the wrong way around!
as I said:
#define GroupInfoCode 0x0263
that one is right. and if there is another #define with that number, it MUST be wrong. change it to any other value which isn't used yet, or go find the correct opcode.
Elyon
05-27-2003, 12:01 PM
When someone other than yourself casts a spell and you are close enough to them to see it in your chat window, in the Terminal Window on SEQ you get:
WARNING: BeginCastCode (0017) (datalen:10 != sizeof(begincaststruct):14)!
In the Channel Messages window on SEQ you get:
SPELL: UNKNOWN (ID: 127075735) has begun casting '1770' - Casting time is 0 seconds
Wish I was a programmer, but I am obviously not. I also know this is not that important. I was just made aware of it because twice my Dire Charemed Pet lost it's Charmed effect, well after the mob was killed, so I wanted to see if someone had cast an AE Annul type spell, that uncharmed it.
user387
06-02-2003, 09:37 AM
#define FormattedMessageCode 0x0204
Shadow_Walker
06-04-2003, 11:33 AM
Originally posted by Elyon
When someone other than yourself casts a spell and you are close enough to them to see it in your chat window, in the Terminal Window on SEQ you get:
WARNING: BeginCastCode (0017) (datalen:10 != sizeof(begincaststruct):14)!
In the Channel Messages window on SEQ you get:
SPELL: UNKNOWN (ID: 127075735) has begun casting '1770' - Casting time is 0 seconds
Wish I was a programmer, but I am obviously not. I also know this is not that important. I was just made aware of it because twice my Dire Charemed Pet lost it's Charmed effect, well after the mob was killed, so I wanted to see if someone had cast an AE Annul type spell, that uncharmed it.
If you are still getting this.. Edit the everquest.h file under the secation beginCastStruct
uint16_t SpawnId;
uint16_t SpellId;
The uint32_t * is used in some other places.. For the Begain Cast it is not needed other location.. unless there is another Opcode that will define it in some other place.. But here is the solation..
Sorry for the delay in this.. Been away for a bit
Elyon
06-05-2003, 11:39 AM
Thanks Shadow_Walker, that did correct the problem. I saw that in an earlier post with Ratt asking if it was for all occurences, but thought it was corrected in the cvs.
user387
06-07-2003, 03:32 PM
#define InspectdataCode 0x0262
struct inspectDataStruct
{
/*0000*/ uint8_t opCode; // 0xb6
/*0001*/ uint8_t version; // 0x20
/*0002*/ uint8_t unknown0002[72]; // ***Placeholder
/*0074*/ char itemNames[21][64]; // 21 items with names
// 64 characters long.
/*1418*/ uint8_t unknown1344[46]; // ***placeholder
/*1464*/ int16_t icons[21]; // Icon Information
/*1506*/ char mytext[200]; // Player Defined Text Info
/*1662*/ uint8_t unknown0958[88]; // ***Placeholder
};
Powered by vBulletin® Version 4.1.11 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.