PDA

View Full Version : Random lockups



xerxes
11-18-2020, 08:32 PM
This has been happening for awhile. I thought it was related to the network port changes, but it happens with the live patch today. It will randomly stop updating in a zone I've been in for awhile and just shows this in the console:


Debug: PCAP Filter Set: udp[0:2] > 1024 and udp[2:2] > 1024 and ether proto 0x0800 and host 10.7.2.87 and not broadcast and not multicast
Info: EQPacket: SessionDisconnect detected, awaiting next zone session, pcap filter: EQ Client 10.7.2.87

Any ideas?

EDIT: Also see this when zoning into a zone with the update today:



Warning: OP_ZoneEntry (0xfa7) (dataLen: 92) doesn't match: sizeof(ClientZoneEntryStruct):88

cn187
11-18-2020, 08:44 PM
As far as I can tell, whenever this happens, it's due to random traffic on the local LAN confusing SEQ. I have some ideas on how to make this less of an issue, but it may be a while before I can get to them.

For now, I'd recommend turning on Session Tracking under the Network menu and see if that helps.

Also, the OP_ZoneEntry warning has been like that for a while IIRC. I don't think it's hurting much, but I'll try to take a look at it.

xerxes
11-18-2020, 08:49 PM
As far as I can tell, whenever this happens, it's due to random traffic on the local LAN confusing SEQ. I have some ideas on how to make this less of an issue, but it may be a while before I can get to them.

For now, I'd recommend turning on Session Tracking under the Network menu and see if that helps.

Also, the OP_ZoneEntry warning has been like that for a while IIRC. I don't think it's hurting much, but I'll try to take a look at it.

Thanks. I enabled the session tracking and will report back if that helps!

Appreciate all that you do!

fransick
11-19-2020, 08:44 AM
Warning: OP_ZoneEntry (0xfa7) (dataLen: 92) doesn't match: sizeof(ClientZoneEntryStruct):88


This is easily fixed by editing everquest.h ClientZoneEntryStruct to:



/*
** Client Zone Entry struct
** Length: 92 Octets
** OpCode: ZoneEntryCode (when direction == client)
*/
struct ClientZoneEntryStruct
{
/*0000*/ uint32_t unknown0000; // ***Placeholder
/*0004*/ char name[32]; // Player firstname
/*0036*/ uint8_t unknown0036[28]; // ***Placeholder
/*0064*/ uint32_t unknown0064[7]; // unknown
/*0092*/
};