Temporary LDoN Fix

A forum for feature requests/discussions and user submitted patches that improve MQ2

Moderator: MacroQuest Developers

slimjim
a ghoul
a ghoul
Posts: 94
Joined: Thu Oct 17, 2002 4:05 pm

Temporary LDoN Fix

Post by slimjim » Tue Sep 16, 2003 6:18 pm

Heres a temporary /who fix for LDoN zone.

in EQLib_commands.cpp change:

Code: Select all

sprintf(szMsg,"There %s %d%s %s%s in %s.",(SpawnCount == 1)?"is":"are",SpawnCount,(SpawnCount<500)?"":" (cut short)", (pFilter->Type==SPAWN_ANY)?"spawn":szSpawnType[pFilter->Type], (SpawnCount==1)?"":"s", GetFullZone(pChar->Zone));

to:

Code: Select all

sprintf(szMsg,"There %s %d%s %s%s in %d.",(SpawnCount == 1)?"is":"are",SpawnCount,(SpawnCount<500)?"":" (cut short)", (pFilter->Type==SPAWN_ANY)?"spawn":szSpawnType[pFilter->Type], (SpawnCount==1)?"":"s",pChar->Zone);
This has stopped me from crashing and i can still /who npc blah blah. The only drawback is it no longer tells you what zone you're in, but tells you a zoneid instead. Im currently in an LDoN zone group and dont want to lose, so i cant really figure out what relationship the LDoN zoneId has to the REAL zone id. Hopefully people can post below and we can figure it out.

ZoneID: 1622802661-Cauldron of Lost Souls

I'll Edit my post soon as i figure out what Real ZoneID is

MacroFiend
a grimling bloodguard
a grimling bloodguard
Posts: 662
Joined: Mon Jul 28, 2003 2:47 am

This may have no basis in our reality ...

Post by MacroFiend » Tue Sep 16, 2003 7:04 pm

but ShowEQ enumerates the LDoN zones as follows ...

Code: Select all

"guka",                  //229 // LDoN
"ruja",                  //230
"taka",                  //231
"mira",                  //232
"mmca",                  //233
"gukb",                  //234
"rujb",                  //235
"takb",                  //236
"mirb",                  //237
"mmcb",                  //238
"gukc",                  //239
"rujc",                  //240
"takc",                  //241
"mirc",                  //242
"mmcc",                  //243
"gukd",                  //244
"rujd",                  //245
"takd",                  //246
"mird",                  //247
"mmcd",                  //248
"guke",                  //249
"ruje",                  //250
"take",                  //251
"mire",                  //252
"mmce",                  //253
"gukf",                  //254
"rujf",                  //255
"takf",                  //256
"mirf",                  //257
"mmcf",                  //258
"gukg",                  //259
"rujg",                  //260
"takg",                  //261
"mirg",                  //262
"mmcg",                  //263
"gukh",                  //264
"rujh",                  //265
"takh",                  //266
"mirh",                  //267
"mmch",                  //268
"ruji",                  //269
"taki",                  //270
"miri",                  //271
"mmci",                  //272
"rujj",                  //273
"takj",                  //274
"mirj",                  //275
"mmcj",                  //276
Slimjim, in case you didn't know yet, Cauldron of Lost Souls uses the guka zone files.

onetimehero
a ghoul
a ghoul
Posts: 105
Joined: Fri Sep 05, 2003 2:42 pm

Post by onetimehero » Tue Sep 16, 2003 7:15 pm

Tested code ahead, In a normal zone. No testing in LDON yet.

1622802661 = 0x60BA00E5 broken up into two words, 0x60BA and 0x00E5. Current MAX_ZONES = 0xE4.

MQ.h

Code: Select all

#define MAX_ZONES 0x114


typedef struct _ZONELIST {
/*0x000*/	DWORD	Header;
/*0x004*/	DWORD	Expansion;			// szZoneExpansionName[]
/*0x008*/   WORD    Id;
/*0x00a*/	WORD	Instance;
/*0x00c*/	CHAR	ShortName[129];
/*0x08d*/	CHAR	LongName[259];
Hmm. That's odd.

slimjim
a ghoul
a ghoul
Posts: 94
Joined: Thu Oct 17, 2002 4:05 pm

Post by slimjim » Tue Sep 16, 2003 7:35 pm

That looks about right onetime... but, i think the instance would come before ID. That would explain why looking for the zoneid in non LDoN zones still returns right values. Otherwise it would come up as 202000(dec). I'll try those changes and see what happens in my next LDoN group

onetimehero
a ghoul
a ghoul
Posts: 105
Joined: Fri Sep 05, 2003 2:42 pm

Post by onetimehero » Tue Sep 16, 2003 7:40 pm

It works fine in non-LDON zones, so i think i got it right...silly backwards-endian schtuff.
Hmm. That's odd.

slimjim
a ghoul
a ghoul
Posts: 94
Joined: Thu Oct 17, 2002 4:05 pm

Post by slimjim » Tue Sep 16, 2003 8:06 pm

/shrug, i dunno... looks like both of them worked outside LDoN... guess theres one way to find out, just need an LDoN group now

Mckorr
Developer
Developer
Posts: 2326
Joined: Fri Oct 18, 2002 1:16 pm
Location: Texas

Post by Mckorr » Wed Sep 17, 2003 10:22 pm

The struct change still causes a crash in LDoN. Ugly, computer locking crash. Will have to change the function till we figure it out.

Edit: DOH! Forgot to change MAX_ZONES. Will fix that and test again.
MQ2: Think of it as Evolution in action.

funmonkey
orc pawn
orc pawn
Posts: 16
Joined: Wed Mar 19, 2003 12:24 am

Post by funmonkey » Thu Sep 18, 2003 2:22 am

i have tried the two temp fixes that have been posted but i still crash when using who.

i edited the fix and recompiled (im not good with computers but i figured that was the logical way of doing it)

anybody else still crashing?

Plazmic
The One
The One
Posts: 800
Joined: Fri Jun 14, 2002 12:31 am
Contact:

Post by Plazmic » Thu Sep 18, 2003 2:24 am

Try my changes in another thread...
Both _SPAWNINFO and _CHARINFO should change also
DWORD zoneid -> WORD zoneid / WORD Instance
- Plazmic

Mckorr
Developer
Developer
Posts: 2326
Joined: Fri Oct 18, 2002 1:16 pm
Location: Texas

Post by Mckorr » Thu Sep 18, 2003 8:15 am

Thanks Plaz. Will make those adjustments, put the sprintf back to the original, and risk the crash (an mission failure... crash last night caused me to miss finishing by ONE freakin mob.)
MQ2: Think of it as Evolution in action.

FrankJScott
naggy
naggy
Posts: 2384
Joined: Sun Feb 19, 2023 7:11 am

Excellent Workspace Management And Moving Solutions Guide

Post by FrankJScott » Wed Aug 06, 2025 7:58 pm

In response to the lady inquiring about aeron chair size c used, sydney to perth removalists, removal company brisbane, record scanning services, house furniture removals, international movers dubai, digital document system, abw office design, electronic records management software, crown moving boxes, I highly recommend this excellent workspace management and moving solutions url or office furniture at work, office furniture vietnam, international removals, records management tips, second hand office furniture stores near me, moving company wellington to auckland, document management best practices pdf, purchase used office furniture, benefits of automated workflow, herman miller task chair, alongside all this helpful hints about workspace management and moving solutions details alongside all moving from perth to brisbane, office furniture showroom near me, office chair resale, crown relocations madrid, furniture in an office, international relocation dubai, office furniture clearance, record retention schedule, removal companies, packers and movers melbourne, which is worth considering with this more helpful hints for workspace management and moving solutions blog which is also great. Also, have a look at this cool workspace management and moving solutions link not forgetting sites such as international moving company near me, crown movers malaysia, crown relocations uk reviews, crown relocations hawaii, the office furniture store, new and used office furniture near me, office furniture leasing, office table chairs, removals to perth, moving abroad what to do with house, alongside all this my review here for workspace management and moving solutions advice not to mention records retention management, best workflow management, electronic data retention policy, removals sydney to brisbane, used commercial office furniture, more info on which is worth considering with herman miller aeron sale, office with furniture, interstate household movers, home removalists perth, buy office table and chair, for good measure. Check more @ Cool Kids Bed Guide 8ecbe2d