PDA

View Full Version : [account]: Received unknown EQApplicationPacket


Blingx
11-20-2011, 03:49 PM
On a fresh made server[Rev2065] and fresh DB[Rev2027].
Titanium client.
Whenever a player loots an item zone.exe crashes. Possible causes from logs...
1)
[11.20. - 14:22:59] Unable to convert EQ opcode 0x6d5d to an Application opcode.
[11.20. - 14:22:59] [CLIENT__NET_ERR] Cloe: Unhandled incoming opcode: [OpCode OP_Unknown (0x6d5d) Size=5]2)
[11.20. - 14:16:58] Loading perl commands...
[11.20. - 14:21:21] Unable to read perl file 'quests/tutorialb/player_v0.pl'3)
[11.20. - 13:46:47] [WORLD__CLIENT_ERR] [account_name]: Received unknown EQApplicationPacket
[11.20. - 13:46:47] [WORLD__CLIENT_ERR] [OpCode OP_FloatListThing (0x6a1b) Size=18]
[11.20. - 13:46:47] [WORLD__CLIENT_ERR] 0000: 53 a6 ba c3 fa e8 33 c3 - 2d 52 4b 40 02 d5 c3 3d | S.....3.-RK@...=
[11.20. - 13:46:47] [WORLD__CLIENT_ERR] 0016: 1a 53 Zone.exe also crashes when receiving items from npc(quest reward), but no error appears in the log when this occurs.

If a character has a gm flag(#gm on), zone.exe does NOT crash in the above scenarios.
This happens in all zones and with all types of items.


Edit-- When logging back in after the crash the item that was being looted/received is on the cursor.
Edit2-- Other errors

lerxst2112
11-20-2011, 08:57 PM
The easiest way to track down a 100% repeatable problem is to add debugging information to zone.exe, attach the debugger to the zone you are in, and cause a crash. From there you can look at the call stack and see exactly what is going on.

game
11-20-2011, 11:28 PM
Sounds like you need to source in some SQL updates, I bet if you turn on your debugger you will see it is having troubles with SELECT alt_currency or some other recently added field.

Make sure to source in all the sql updates from 2004 to 2062 up from /trunk/EqEmuServer/utils/sql/svn/

This can help resolve zone crash issues from items.

Blingx
11-21-2011, 12:57 AM
Thanks for the replies, all looks good now.
It appears to have been one of the updates from /trunk/EqEmuServer/utils/sql/svn/, probably 2024(req) or 2057(req). Most of the others, including alt_currency, failed due to duplicate entries.
My question from this is, how do you know which updates are not applied yet when starting a new database? My thought was that the newest db would have the newest updates.
Or is it that since my Db was Rev2027 and server was Rev2065 then I needed to apply any updates in /trunk/EqEmuServer/utils/sql/svn/ that were 2027+? (e.g., 2057, 2058, 2062...) [This actually makes sense and can't believe I didn't realize it until someone pointed it out.]

Also, thanks for that debugger tip. Will be useful in the future I'm sure, once I learn how to use it. )