PDA

View Full Version : New decode.cpp and opcodes for 7/10 patch



codepig666
07-10-2003, 11:43 PM
This patch is very very simple. There is an addition to the player packet that I don't have time to look at, but it is unlikely to cause much trouble (besides whining about bad size every time you zone). Plenty of folks out there can work it out I'm sure.

Here are the new opcodes (Note that basically everything over opcode 0x40ish or so is simply one digit lower than it used to be):
ZoneEntryCode 0x0253
CharProfileCode 0x006a
ConsiderCode 0x0174
ZoneSpawnsCode 0x0188
ClientTargetCode 0x018b
CPlayerItemsCode 0x01dc
NewSpawnCode 0x0228
NewZoneCode 0x00ef
DeleteSpawnCode 0x00f7
EmoteTextCode 0x00f6
MakeDropCode 0x00fe
DoorSpawnsCode 0x01dd
SpawnUpdateCode 0x0159
NewCorpseCode 0x0114
RemDropCode 0x00fd

There are probably bunches more, but these will get folks rollin.


Here is the new decode.cpp:
/*
* Decode.cpp
*
* ShowEQ Distributed under GPL
* http://www.hackersquest.gomp.ch/
*/

#include "main.h"
#include "decode.h"

uint16_t implicitlen (uint16_t opcode)
{
switch (opcode) {
case 0x0017: // 23
return 0x08; // 8
case 0x0022: // 34
return 0x12; // 18
case 0x0039: // 57
return 0x0c; // 12
case 0x00c6: // 198
return 0x08; // 8
case 0x00e6: // 230
return 0x17; // 23
case 0x00f7: // 247
return 0x04; // 4
case 0x010f: // 271
return 0x88; // 136
case 0x0110: // 272
return 0x1f; // 31
case 0x0144: // 324
return 0x09; // 9
case 0x0153: // 339
return 0x04; // 4
case 0x0159: // 345
return 0x08; // 8
case 0x0242: // 578
return 0x03; // 3
case 0x0243: // 579
return 0x03; // 3
case 0x025c: // 604
return 0x06; // 6
case 0x025d: // 605
return 0x06; // 6
default:
return 0;
}
}



My SO's father has just been diagnosed with brain cancer. They are cutting open his skull to try to carve it out on Tuesday, but he will most likely die. It appears that even if he survives the operation, the survival rate goes to zero in only 5 years.

As such, I will be out of town visiting him and not working on seq for a while. Please be kind to each other....you never know how long you've got.

--piggy

codepig666
07-10-2003, 11:54 PM
Zoolander posted the same decode.cpp and a (presumeably) better opcode list a few weeks back based on the Test server. I hadn't read the general discussion forum, so I missed it and ended up reinventing the wheel. <sigh>


-piggy

Catt
07-11-2003, 04:59 AM
Always good that 2 people come up with the same answers.

:)

permafrost
07-11-2003, 08:13 AM
I'll say a prayer for your SO's father and your SO. Maybe he can make it the 5 years ....

Thanks for your work!

S_B_R
07-11-2003, 08:40 AM
Good Luck to you and yours Codepig, I hope everything works out in the best way possible.

sea4th
07-11-2003, 11:26 AM
Piggy - Hoping for the best for a bad situation. Life is short and very fragile -- your comments hit home in many ways.

who_me_use_seq
07-11-2003, 11:37 AM
Thank you for the fix. And good luck to you and yours Codepig.

/em gropes vainly for something to say that does not trivialize the nature of the situation or sound like a Hallmark card.

/em gives up and shuffles off to meditate on the ephemeral nature of conciousness.

nycjpm
07-11-2003, 08:06 PM
Tried this patches but the compile fails when I run make with the following error. It seems to be related to the changes in the opcodes.h file. Anyone know how to correct this? Thanks.

Hope all goes well


g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/lib/qt3/include -I/usr/X11R6/include -DMAPDIR=\"/usr/local/share/showeq\" -DLOGDIR=\"/usr/local/share/showeq\" -I/usr/include/pcap -D_REENTRANT -O2 -Wall -g -ggdb -DDEBUG -finline-functions -DQT_THREAD_SUPPORT=1 -DDISPLAY_ICONS=false -DICON_DIR=\"/eq-icons/\" -c -o packet.o `test -f 'packet.cpp' || echo './'`packet.cpp
packet.cpp: In member function `void EQPacket::dispatchZoneData(unsigned int,
uint8_t*, unsigned char)':
packet.cpp:2936: duplicate case value
packet.cpp:2091: previously used here

fester
07-11-2003, 11:51 PM
Originally posted by nycjpm
Anyone know how to correct this? Thanks.
packet.cpp:2936: duplicate case value
packet.cpp:2091: previously used here

Didn't bother searching I see.

nycjpm
07-12-2003, 01:06 AM
Search for what? could you please help clarify what is meant by a "duplicate" in this case? I am still learning this stuff. I searched the through the sorce code referenced during make but after 3 hours of fiddling around looking for obvious errors I still can't make heads or tails of what this means - sorry


packet.cpp:2936: duplicate case value
packet.cpp:2091: previously used here

What might it be that I didn't bother searching for?

Regards
JM

Elyon
07-12-2003, 08:24 AM
Originally posted by nycjpm
Search for what?
Regards
JM

For this....

http://seq.sourceforge.net/forums/showthread.php?s=&threadid=3671


Look at the second message with a PATCH file attached to it. Replace the 2 files in your src directory that come in this patch and recompile.....

SeQ_N00b
07-14-2003, 08:44 AM
ive patched those files and recompiled. but i get lots of segementation faults and seq closes, any ideas?

Baklan
07-14-2003, 09:27 AM
Same here, sometimes it stays up for a while, sometimes closes after the zone or in the middle.
Gotta wait for the fix or fix it yourself if you are into it.

Elyon
07-14-2003, 09:50 AM
This works fine for me and I am sure a lot of others too. Try erasing your showeq source and redownloading it from the CVS and then copying the patch files. Then do the recompile process...

P.S. I use RH9.x

AlphaBeta
07-14-2003, 09:56 AM
Please see my post here (http://seq.sourceforge.net/forums/showthread.php?s=&threadid=3740&perpage=15&pagenumber=3) on how I made mine work. hope it helps.

Saint dVille
07-17-2003, 09:10 AM
I've done the patches in the dev forum before, and this one is failing.

Are there new offsets, or even a new decode.cpp that will fix the decryption as of 07/17/03?

Jel321
07-17-2003, 03:51 PM
Saint dVille

If you play on live and you still are having problems and nothing has changed on live since the last patch look at this thread for some cleared direction than this thread.

http://seq.sourceforge.net/forums/showthread.php?s=&threadid=3768

If you play on test (i do) and they patched today and SEQ stopped working you are probably out of look. I havent checked since Tuesday but it was fine then.

J

KaL
07-17-2003, 08:38 PM
My SEQ works great with the patches that everyone has posted, except when mobs and PC's stop moving, or corpses are dragged. Those items don't update properly.

Saint dVille
07-18-2003, 08:32 AM
I'll give this a shot, I guess I messed up somewhere thank you :)

Jel321
07-18-2003, 05:35 PM
They patched Test on 7-17 and its down. FYI.

Opcodes and structs judging by the messages. Test if fubar atm though so who knows what they hell they are doing :)

J