A forum for feature requests/discussions and user submitted patches that improve MQ2
Moderator: MacroQuest Developers
-
morannon
- a lesser mummy

- Posts: 57
- Joined: Sun Nov 03, 2002 3:50 pm
Post
by morannon » Sun Sep 14, 2003 10:41 am
The problem is occuring in GetFullZone (in EQlib_utilities.cpp)
The ZoneID being passed in for LDoN zones is huge (over 1,000,000,000) this causes problems with lookups.
I changed the GetFullZone function to look like :
Code: Select all
PCHAR GetFullZone(DWORD ZoneID)
{
PZONELIST *pZone = NULL;
if (ZoneID > 10000) return NULL;
if (!EQADDR_ZONELIST) return NULL;
if (!*EQADDR_ZONELIST) return NULL;
pZone = (PZONELIST*) (((DWORD)*EQADDR_ZONELIST) + ZONELIST_STARTOFFSET);
return (*pZone[ZoneID]).LongName;
}
Not had a crash in LDoN yet with this change.
-
LamahHerder
- a hill giant

- Posts: 299
- Joined: Sat Jun 29, 2002 2:37 am
Post
by LamahHerder » Sun Sep 14, 2003 6:02 pm
fix'd /who
but if you do example: /who playername still crashs
-
kagonis
- a hill giant

- Posts: 228
- Joined: Sat May 24, 2003 8:48 pm
Post
by kagonis » Sun Sep 14, 2003 7:18 pm
Hmm, I did /whotarget yesterday with a build from the 13th. Worked fine in LDoN, it was when I did regular /who (with or without switches) it crashed.
-
Nanan
- orc pawn

- Posts: 29
- Joined: Wed Jun 25, 2003 6:21 pm
Post
by Nanan » Mon Sep 15, 2003 1:25 am
Cool this works. Thanks for the insight. To totally fix this the var pzone is going to have to be set to a higher aloud value. In its current condition it is to small to handle the new zones masive number handle.
-
Amadeus
- The Maestro

- Posts: 2036
- Joined: Sat Jun 29, 2002 3:51 pm
Post
by Amadeus » Mon Sep 15, 2003 3:12 am
This actually sounds like something is wrong with the struct. Or, perhaps zoneID is now actually a float value *shrug*. Either way, it sounds from what you wrote, like something is changed in a zone struct of some sort.
I havn't bought LDoN yet (going to around Oct. 1) which is why I havn't contributed very much lately. If no one has dealt with it before then, I'll fix all the structs (including all the new LDoN data) around that time. I'm sure the COMMON struct must have a ton of new things in it for the new data.
-
morannon
- a lesser mummy

- Posts: 57
- Joined: Sun Nov 03, 2002 3:50 pm
Post
by morannon » Mon Sep 15, 2003 6:46 am
If there was a problem with the struct, or the type had changed, then it wouldnt work for any zone would it ?
During several hours play yesterday, the number for a given zone (say taka) changed each time a new zone was summoned.
Given the way LDoN works, this makes sense - since the server needs to know which copy of a zone you have. I wouldnt be surprised to find that the zoneid is a value that corresponds to something server side.
ShowEQ has a similar problem - the zone was being reported as taka_NNN where NNN seemed to change from zone to zone.
-
MacroFiend
- a grimling bloodguard

- Posts: 662
- Joined: Mon Jul 28, 2003 2:47 am
Post
by MacroFiend » Mon Sep 15, 2003 11:34 am
where the LDoN zone info is normalized. Perhaps there is a new zoneid hiding in there someplace ... or maybe the very-large zone number can be broken down to make a standard zone id.
The reason I mention this is because even if you don't have LDoN, you would still see the long LDoN zone names on your guild info panel if a guildmate was in an adventure zone. So unless EQ is sending over the whole name, which would be a waste of bandwidth, there's some place that it is stored as a number.
Perhaps peeking around the memory area for the guild pane would be a place to start looking? Find a known zoneid for a guildmember and then track down an LDoN zoneid and see if it is the very-large number there?
-
Nanan
- orc pawn

- Posts: 29
- Joined: Wed Jun 25, 2003 6:21 pm
Post
by Nanan » Mon Sep 15, 2003 7:30 pm
Iv not tested it yet but im thinking the return for pzone in ldon zones is a composite number like... 123,456,789,012,345 where the initial 123456 is the zone ID and the 789012345 is the instance number.
-
vzmule
- Contributing Member

- Posts: 378
- Joined: Thu Mar 13, 2003 11:56 pm
Post
by vzmule » Mon Sep 22, 2003 4:14 pm
I don't personally use LDON, but was wondering if anyone came up with a fix for the superwho problem with the zone IDs in ldon zones.
-
ap50
- a snow griffon

- Posts: 425
- Joined: Sun Aug 18, 2002 2:29 pm
Post
by ap50 » Mon Sep 22, 2003 4:16 pm
Yes, it's fixed, /who works fine in LDoN now.
[color=yellow][size=92][b]Just because you're paranoid, it doesn't mean everyone isn't out to get you![/b][/size][/color]
-
pooz
- a lesser mummy

- Posts: 44
- Joined: Fri Jun 27, 2003 1:01 pm
Post
by pooz » Mon Sep 22, 2003 9:39 pm
You know... I only read posts by ap50... everyone else I just kind of gloss over.
-
insanitywiz
- a hill giant

- Posts: 250
- Joined: Mon Jul 08, 2002 7:50 am
Post
by insanitywiz » Tue Sep 23, 2003 2:11 am
His icon distracts me too much to actually read his posts.
-
vzmule
- Contributing Member

- Posts: 378
- Joined: Thu Mar 13, 2003 11:56 pm
Post
by vzmule » Wed Sep 24, 2003 7:36 am
hahaha