• You've discovered RedGuides 📕 an EverQuest multi-boxing community 🛡️🧙🗡️. We want you to play several EQ characters at once, come join us and say hello! 👋
  • IS THIS SITE UGLY? Change the look. To dismiss this notice, click the X --->

PiggyZone and DoD+PoR zones? (1 Viewer)

EvenLessSpam

Active member
Joined
Oct 31, 2005
RedCents
81¢
I can't seem to get my copy of PiggyZone to work with these new zones.

When I f.ex. do a '/zone corathus', I just get a 'Bad Zone.ShortName. Suggest:' with no suggestions.

I've been looking around (although not too hard tbh) and couldn't find anything. Will keep looking though, I might find the answer before it comes here.. I think I remember something about having to change a max zone numer or something? Somewhere?


Below here is my source for PiggyZone and the INI for same:

MQ2PiggyZone.cpp
Rich (BB code):
// MQ2PiggyZone.cpp : Defines the entry point for the DLL application.
//
// updated to work with VC6 (previously only worked in VS.NET)
//
//
//
//
// /zone qeynos2 - takes you to North Qeynos if it knows a path
// /zone force qeynos - takes you directly to North Qeynos and crashes if you aren't adjacent
// /findpath qeynos2 - displays the path to North Qeynos
// /findpath North - displays all of the zonenames whose long name contains "North"
// /fade - zones you to the zone you are already in (even if its instanced)
// /gate - Returns you to your bind point
//

#include "../MQ2Plugin.h"

PreSetup("MQ2PiggyZone");

#undef ZoneToGoTo
#define LocalCEverQuest__DoTheZone 0x4C7330	// 2006-04-19
#define INFINITY ((int) pow(2, sizeof(int)*8-2)-1)

#ifdef PKT_UPDATE_POSITION
#undef PKT_UPDATE_POSITION
#endif
#define PKT_UPDATE_POSITION 0x3813 // 2006-04-19
#define PKT_CHANNEL_MESSAGE 0x2C2D // 2006-04-19

typedef struct
{
   int connections[100]; // An array of edges which has this as the starting node
   int numconnect;
} FWVertice;

typedef struct
{
   int Zone;
   char Name[50];
   char Phrase[20][50];
   int Destination[20];
   float X,Y,Z;
   int DestCnt;
} NPCTeleporter;

FWVertice *V=NULL;
NPCTeleporter NPCs[100];
int NPCCnt;
int* distances=NULL;
int* predecessor=NULL;

class LocalCEverQuest;
class LocalCEverQuest
{
public:
   __declspec(dllexport) char * LocalCEverQuest::DoTheZone(int,char *,int,int,float,float,float,int);
};

#ifdef LocalCEverQuest__DoTheZone
FUNCTION_AT_ADDRESS(char * LocalCEverQuest::DoTheZone(int,char *,int,int,float,float,float,int),LocalCEverQuest__DoTheZone);
#endif

LocalCEverQuest **ppLEQ;
#define pLEQ (*ppLEQ)

void Setup();
bool UseNPC(PSPAWNINFO pChar, int dest);
PLUGIN_API VOID OnZoned(PSPAWNINFO pChar, PCHAR szLine);
PLUGIN_API VOID OnPulse(VOID);
DWORD ListSimilarZones(PCHAR ZoneShortName);
VOID ChangeZones(PSPAWNINFO pChar, PCHAR szLine);
void FloydWarshall(FWVertice* vertices, int nodecount);
VOID FindPath(PSPAWNINFO pChar, PCHAR szLine);
VOID SimFade(PSPAWNINFO pChar, PCHAR szLine);
VOID SimGate(PSPAWNINFO pChar, PCHAR szLine);

bool ZoneChange=false; 
float X,Y,Z;
int Heading;
int DestZone;
int ChainZone[100];
int ChainZoneCnt=0;
int DestType; // 0=use supplied coords 1=succorpoint
int ChainZoneType; // 0=use supplied coords 1=succorpoint
int ZoneReason;

int LastKnownZone=-1; //don't fire MyOnZoned when you first log in

void MyOnZoned(PSPAWNINFO pChar)
{
   if (ChainZoneCnt>0)
   {
      if (pChar->Zone != ChainZone[ChainZoneCnt])
      {
         ChainZoneCnt=0;
         return;
      }
      ChainZoneCnt--;
      DestZone=ChainZone[ChainZoneCnt];
      if (ChainZoneCnt==0) DestType=ChainZoneType;
      WriteChatColor("Attempting ChainZone...", USERCOLOR_DEFAULT);
      if ( UseNPC(pChar,DestZone) == false)
      {
         ZoneChange=true;
      }
   }
   return;
}

PLUGIN_API VOID OnPulse(VOID)
{
   PSPAWNINFO pChar = NULL;
   if (ppCharSpawn && pCharSpawn) {
      pChar = (PSPAWNINFO)pCharSpawn;
      if ((pChar) && (!gZoning))
      {
         if (LastKnownZone == -1)   LastKnownZone=pChar->Zone;
         if (pChar->Zone != LastKnownZone)
         {
            LastKnownZone=pChar->Zone;
            MyOnZoned(pChar);
         }
      }
   }

   char aa[100]="test";
   if(ZoneChange)
   {
      ZoneChange=false;
      pLEQ->DoTheZone(DestZone,aa,DestType,ZoneReason,Y,X,Z,Heading);
   }
   return;
}

DWORD ListSimilarZones(PCHAR PartialName)
{
   CHAR szMsg[MAX_STRING] = "Bad Zone.ShortName. Suggest: ";
   CHAR szName[MAX_STRING] = {0};
   char *partial,*longname;

    PZONELIST pZone = NULL;

   partial=_strlwr(_strdup(PartialName));
    if (!ppWorldData | !pWorldData) return -1;
    for (int nIndex=0; nIndex < MAX_ZONES+1; nIndex++) {
      pZone = ((PWORLDDATA)pWorldData)->ZoneArray[nIndex];
        if(pZone )
      {
         longname=_strlwr(_strdup(pZone->LongName));
            if (strstr(longname,partial)) {
            sprintf(szName,"%s(%s) ",pZone->LongName,pZone->ShortName);
            if ((strlen(szMsg)+strlen(szName))>=300)
            {
               WriteChatColor(szMsg,USERCOLOR_DEFAULT);
               szMsg[0]=0;
            }
                strcat(szMsg,szName);
            }
         free(longname);
      }
    }
   WriteChatColor(szMsg,USERCOLOR_DEFAULT);
   free(partial);
    return -1;
}

VOID ChangeZones(PSPAWNINFO pChar, PCHAR szLine)
{
   CHAR szMsg[MAX_STRING] = {0};
   CHAR szParam[MAX_STRING] = {0};
   CHAR sZoneName[MAX_STRING] ={0};
   CHAR sWPName[MAX_STRING] ={0};
   CHAR sKeyData[MAX_STRING]={0};
   DWORD ZoneToGoTo;
   int rLen;
   int i,j,cnt=0;
   bool IgnoreChain=false;
   int Param=1;

   GetArg(szParam,szLine,Param);
   if (_stricmp(szParam,"setwp")==0)
   {
      Param++;
      GetArg(sWPName,szLine,Param);
      if (sWPName[0]==0)
      {
         WriteChatColor("Usage: /zone setwp <WayPointName>", CONCOLOR_RED);
         return;
      }
      sprintf(sKeyData,"%.2f %.2f %2.f %d",pChar->Y,pChar->X,pChar->Z,(int)pChar->Heading);
      WritePrivateProfileString(GetShortZone(pChar->Zone), sWPName, sKeyData, INIFileName);
      WriteChatColor("Waypoint recorded", USERCOLOR_DEFAULT);
      return;
   }
   if (_stricmp(szParam,"clearwp")==0)
   {
      Param++;
      GetArg(sWPName,szLine,Param);
      if (sWPName[0]==0)
      {
         WriteChatColor("Usage: /zone clearwp <WayPointName>", CONCOLOR_RED);
         return;
      }
      WritePrivateProfileString(GetShortZone(pChar->Zone), sWPName, NULL, INIFileName);
      WriteChatColor("Waypoint cleared", USERCOLOR_DEFAULT);
      return;
   }
   if (_stricmp(szParam,"force")==0)
   {
      IgnoreChain=true;
      Param++;
   }
   GetArg(sZoneName,szLine,Param++);

   ZoneToGoTo = GetZoneID(sZoneName);

   if (ZoneToGoTo == -1) {
      ListSimilarZones(sZoneName);
      return;
   }

   Setup();

   if (IgnoreChain==false)
   {
      i=pChar->Zone;
      j=ZoneToGoTo;

      if (distances[i*MAX_ZONES+j]==0)
      {
         WriteChatColor("Poof! You are already there.", CONCOLOR_RED);
         return;
      }

      if (distances[i*MAX_ZONES+j]==INFINITY)
      {
         WriteChatColor("I don't know a route to that zone.", CONCOLOR_RED);
         return;
      }
   }
   GetArg(sWPName,szLine,Param++);
   if (sWPName[0]!=0)
   {
      CHAR sDefault[MAX_STRING]="none";
      GetPrivateProfileString(sZoneName,sWPName, sDefault, sKeyData, MAX_STRING, INIFileName);
      if (_stricmp(sKeyData,"none")==0)
      {
         rLen=GetPrivateProfileString(sZoneName,NULL, sDefault, sKeyData, MAX_STRING, INIFileName);
         for (int i=0;i<rLen-1;i++) if (sKeyData==0) sKeyData=',';
         sprintf(szMsg,"Bad Waypoint. Suggest: %s",sKeyData);
         WriteChatColor(szMsg,USERCOLOR_DEFAULT);
         return;
      }
      sscanf(sKeyData,"%f %f %f %d",&Y,&X,&Z,&Heading);
      DestType=0;
   }
   else
   {
      sprintf(sWPName,"default");
      CHAR sDefault[MAX_STRING]="none";
      GetPrivateProfileString(sZoneName,sWPName, sDefault, sKeyData, MAX_STRING, INIFileName);
      if (_stricmp(sKeyData,"none")!=0)
      {
         sscanf(sKeyData,"%f %f %f %d",&Y,&X,&Z,&Heading);
         DestType=0;
      }
      else
      {
         Y=pChar->Y;
         X=pChar->X;
         Z=pChar->Z;
         Heading = (int)pChar->Heading;
         DestType=1;
      }
   }

   ChainZoneCnt=0;   //reset in case we failed to finish previous chain-zone attempt
   if (IgnoreChain==false)
   {
      while (i!=j)
      {
         ChainZone[ChainZoneCnt++]=j;
         j=predecessor[i*MAX_ZONES+j];
      }

      if (ChainZoneCnt>1)
      {
         ChainZoneType=DestType;
         DestType=1;
      }
      DestZone = ChainZone[--ChainZoneCnt];
   }
   else
   {
      DestZone=ZoneToGoTo;
   }

   sprintf(szMsg,"Zoneing...");
   WriteChatColor(szMsg,USERCOLOR_DEFAULT);
   ZoneReason=0;
   if (UseNPC(pChar,DestZone) == false) ZoneChange=true;
   return;
}

VOID FindPath(PSPAWNINFO pChar, PCHAR szLine)
{
   CHAR sDest[MAX_STRING]={0};
   int ZoneToGoTo;
   int i,j,cnt=0,stops[100];

   GetArg(sDest,szLine,1);
   if (sDest[0]==0)
   {
      WriteChatColor("Usage: /FindPath <ShortZoneName>", CONCOLOR_RED);
      return;
   }
   ZoneToGoTo = GetZoneID(sDest);

   if (ZoneToGoTo == -1) {
      ListSimilarZones(sDest);
      return;
   }

   Setup();

   i=pChar->Zone;
   j=ZoneToGoTo;

   if (distances[i*MAX_ZONES+j]==0)
   {
      WriteChatColor("Poof! You are already there.", CONCOLOR_RED);
      return;
   }
   if (distances[i*MAX_ZONES+j]==INFINITY)
   {
      WriteChatColor("I don't know a route to that zone.", CONCOLOR_RED);
      return;
   }

   WriteChatColor("My path:", CONCOLOR_RED);
   while (i!=j)
   {
      stops[cnt++]=j;
      j=predecessor[i*MAX_ZONES+j];
   }

   while (cnt>0)
   {
      cnt--;
      WriteChatColor(GetShortZone(stops[cnt]),USERCOLOR_DEFAULT);
   }

}

void Setup()
{
   char sKey[300];
   char sKeyData[300];
   char *p;
   int i;
   if (distances!=NULL) free(distances);
    if (predecessor!=NULL) free(predecessor);
   if (V!=NULL) free(V);
   V = (FWVertice *)malloc(MAX_ZONES*sizeof(FWVertice));
   int tmp[100],cnt;
   for (i=0;i<MAX_ZONES;i++)
   {
      sprintf(sKey,"%d",i);
      V.numconnect=0;
      GetPrivateProfileString("ZoneConnections",sKey,"none",sKeyData,300,INIFileName);
      if (_stricmp(sKeyData,"none")!=0)
      {
         strtok(sKeyData,"\"");
         strtok(NULL,"\"");
         cnt=0;
         while ( (p=strtok(NULL,",")) != NULL)
         {
            tmp[cnt++]=atoi(p);
         }
         V.numconnect=cnt+1;
         for (int j=0;j<cnt;j++) V.connections[j]=tmp[j];
      }
      V.connections[V.numconnect++]=GetCharInfo2()->ZoneBoundID; //always connected to my bind point
   }

   //NPCTeleporter support
   NPCCnt=0;
   for (i=0;i<100;i++)
   {
      sprintf(sKey,"%d",(i+1));
      GetPrivateProfileString("NPCTeleporters",sKey,"none",sKeyData,300,INIFileName);
      if (_stricmp(sKeyData,"none")==0) break;
      NPCCnt++;
      NPCs.Zone=atoi(strtok(sKeyData," \""));
      strcpy(NPCs.Name,strtok(NULL,"\""));
      NPCs.Y=(float)atof(strtok(NULL," "));
      NPCs.X=(float)atof(strtok(NULL," "));
      NPCs.Z=(float)atof(strtok(NULL," "));
      NPCs.DestCnt=0;
      p=strtok(NULL," \"");
      while (p!=NULL)
      {
         NPCs.Destination[NPCs.DestCnt]=atoi(p);
         strcpy(NPCs.Phrase[NPCs.DestCnt],strtok(NULL,"\""));
         V[NPCs.Zone].connections[V[NPCs.Zone].numconnect++]=NPCs.Destination[NPCs.DestCnt];
         NPCs.DestCnt++;
         p=strtok(NULL," \"");
      }
   }

   FloydWarshall(V,MAX_ZONES);
}

bool UseNPC(PSPAWNINFO pChar,int dest)
{
   for (int i=0;i<NPCCnt;i++)
   {
      if (NPCs.Zone != pChar->Zone) continue;
      for (int j=0;j<NPCs.DestCnt;j++)
      {
         if (NPCs.Destination[j]==dest)
         {
            //Code borrowed directly from MQ2CSum
            // setup move packet
            struct _MOVEPKT {
            /*0000*/ unsigned short SpawnID;
            /*0002*/ unsigned short TimeStamp;
            /*0004*/ float Y;
            /*0008*/ float DeltaZ;
            /*0012*/ float DeltaY;
            /*0016*/ float DeltaX;
            /*0020*/ int Animation:10;
            /*0020*/ int DeltaHeading:10;
            /*0020*/ int padding0020:12;
            /*0024*/ float X;
            /*0028*/ float Z;
            /*0032*/ int Heading:12;
            /*0032*/ int padding1_0032:10;
            /*0032*/ int padding2_0032:10;
            } P; // 36
            struct _MSGPACKET {
            /*0000*/ char target[64];
            /*0064*/ char sender[64];
            /*0128*/ unsigned int language;
            /*0132*/ unsigned int channel;
            /*0136*/ char padding136[8];
            /*0144*/ unsigned int languageskill;
            /*0148*/ char message[100];
            } M;

            // init packets
            ZeroMemory(&P, sizeof(P));
            ZeroMemory(&M, sizeof(M));
            P.SpawnID = (unsigned short)pChar->SpawnID;
            P.Heading = (unsigned int)(pChar->Heading * 4);

            PSPAWNINFO psTarget = NULL;
            Target(pChar,NPCs.Name);
            if (ppTarget && pTarget) {
               psTarget = (PSPAWNINFO)pTarget;
            }
            if (psTarget)
            {
               strcpy(M.target,psTarget->Name);
            }
            strcpy(M.sender,pChar->Name);
            M.channel=8;
            M.languageskill=100;

            // jump to
            P.Z = NPCs.Z;
            P.Y = NPCs.Y;
            P.X = NPCs.X;
            SendEQMessage(PKT_UPDATE_POSITION, &P, sizeof(P));

            sprintf(M.message,"%s",NPCs.Phrase[j]);
            SendEQMessage(PKT_CHANNEL_MESSAGE,&M,sizeof(M));
            return true;
         }
      }
   }
   return false;
}

void FloydWarshall(FWVertice* vertices, int nodecount) // Vertices numbered from 0 to nodecount-1
{
    distances = (int*) malloc(nodecount*nodecount*sizeof(int)*8);
    predecessor = (int*) malloc(nodecount*nodecount*sizeof(int)*8);
   int i,j,k;

    for(i = 0; i < nodecount; i++)
    {
        for(j = 0; j < nodecount; j++)
        {
            distances[i*nodecount+j] = 0;
            predecessor[i*nodecount+j] = i;
        }
    }
    for(i = 0; i < nodecount; i++)
    {
        for(j = 0; j < vertices.numconnect; j++)
        {
            distances[i*nodecount + vertices.connections[j]] =1;
//                            vertices.connections[j].weight;
        }
        for(j = 0; j < nodecount; j++)
        {
            if(!distances[i*nodecount+j] && (i^j))
                // i ^ j returns 0 if they are equal
            {
            distances[i*nodecount+j] = INFINITY;
            }
        }
    }
    for(k = 0; k < nodecount; k++)
    {
        for(i = 0; i < nodecount; i++)
        {
            for(j = 0; j < nodecount; j++)
            {
                if(distances[i*nodecount+j] > distances[i*nodecount+k] + distances[k*nodecount+j])
                {
                    distances[i*nodecount+j] = distances[i*nodecount+k] + distances[k*nodecount+j];
                    predecessor[i*nodecount+j] = predecessor[k*nodecount+j];
                }
            }
        }
    }
}

 VOID SimGate(PSPAWNINFO pChar, PCHAR szLine)
{
   CHAR szMsg[MAX_STRING] = {0};
   PCHARINFO2 pChar2 = GetCharInfo2();

   sprintf(szMsg,"Gating...");
   WriteChatColor(szMsg,USERCOLOR_DEFAULT);
   DestZone=pChar2->ZoneBoundID;
   DestType=0;
   ZoneReason=11;
   Y=pChar2->ZoneBoundY;
   X=pChar2->ZoneBoundX;
   Z=pChar2->ZoneBoundZ;
   Heading=0;
   ZoneChange=true;
   return;
}

VOID SimFade(PSPAWNINFO pChar, PCHAR szLine)
{
   CHAR szMsg[MAX_STRING] = {0};
   if (pChar->Instance != 0)
   {
      DestZone = *((int *)(&(pChar->Instance)-1));
   }
   else
   {
      DestZone = pChar->Zone;
   }
   sprintf(szMsg,"Fading...");
   WriteChatColor(szMsg,USERCOLOR_DEFAULT);
   DestType=0;
   ZoneReason=0;
   Y=pChar->Y;
   X=pChar->X;
   Z=pChar->Z;
   Heading =(int)pChar->Heading;
   ZoneChange=true;
   return;
}

// Called once, when the plugin is to initialize
PLUGIN_API VOID InitializePlugin(VOID)
{
   DebugSpewAlways("Initializing MQ2PiggyZone");

   ppLEQ=(LocalCEverQuest**)pinstCEverQuest;
   AddCommand("/zone",ChangeZones);
   AddCommand("/gate",SimGate);
   AddCommand("/fade",SimFade);
   AddCommand("/findpath",FindPath);
}

// Called once, when the plugin is to shutdown
PLUGIN_API VOID ShutdownPlugin(VOID)
{
   DebugSpewAlways("Shutting down MQ2PiggyZone");

   RemoveCommand("/zone");
   RemoveCommand("/gate");
   RemoveCommand("/fade");
   RemoveCommand("/findpath");
}

MQ2PiggyZone.ini
Rich (BB code):
[NPCTeleporters]
1=344 "Magus Alaria" 601 -7 2 68 "Butcherblock" 22 "East Commonlands" 30 "Everfrost" 34 "North Ro" 35 "South Ro" 182 "Nedaria"
2=182 "Magus Wenla" 1023 1525 82 68 "Butcherblock" 22 "East Commonlands" 30 "Everfrost" 34 "North Ro" 35 "South Ro" 280 "Natimbi" 279 "Abysmal Sea"
3=279 "Magus Pellen" -150 48 140 280 "Natimbi" 182 "Nedaria"
4=280 "Magus Releua" -693 -1585 246 182 "Nedaria" 279 "Abysmal Sea"
5=68 "Magus Tira" -1084 -2450 0  22 "East Commonlands" 30 "Everfrost" 34 "North Ro" 35 "South Ro" 182 "Nedaria"
6=30 "Magus Delin" 1802 -5041 -60 22 "East Commonlands" 68 "Butcherblock" 34 "North Ro" 35 "South Ro" 182 "Nedaria"
7=22 "Magus Zeir" -1626 -178 4 30 "Everfrost" 68 "Butcherblock" 34 "North Ro" 35 "South Ro" 182 "Nedaria"
8=34 "Magus Arindri" 2678 917 -25 30 "Everfrost" 68 "Butcherblock" 22 "East Commonlands" 35 "South Ro" 182 "Nedaria"
9=35 "Magus Jerira" -1468 1066 -23 30 "Everfrost" 68 "Butcherblock" 22 "East Commonlands" 34 "North Ro" 182 "Nedaria"
10=37 "Translocator Tradil" 881 -831 0 96 "Travel to Timorous Deep"
11=96 "Translocator Jorbin" 5862 3623 2 37 "travel to Oasis" 93 "travel to overthere"
12=93 "Translocator Breya" 3435 2747 -158 96 "Travel to Timorous Deep"
13=34 "Translocator Ionie" 781 -843 0 110 "travel to Iceclad"
14=110 "Translocator Kurione" 5341 360 -16 34 "travel to North Ro"
15=68 "Translocator Gethia" 854 3167 12 96 "Travel to Timorous Deep"
16=68 "Translocator Fithop" 1351 3253 12 69 "Travel to Ocean of Tears"
17=96 "Translocator Deela" -4545 -3253 19 68 "Travel to Butcherblock" 84 "Travel to Firiona Vie"
18=84 "Translocator Drabilt" -4388 1386 -103 96 "Travel to Timorous Deep"
19=69 "Translocator Narrik" 273 -9200 4  68 "Travel to Butcherblock" 10 "Travel to Freeport"
20=10 "Translocator Setikan" -20 -1020 -52 69 "Travel to Ocean of Tears"
21=1 "Translocator Sedina" 14 221 4 98 "Travel to Crossing"
22=98 "Translocator Jempar" -1768 670 4 1 "Travel to Qeynos" 24 "Travel to Erudin"
23=24 "Translocator Eniela" 96 -354 24 98 "Travel to Crossing"
24=202 "Priest of Discord" 49 577 4 302 "Wish to go"
25=344 "Sage Vonglor" 12 -1 -.12 202 "test subject"

[ZoneConnections]
1=qeynos "South Qeynos",2,45
2=qeynos2 "North Qeynos",45,4,1,202
3=qrg "Surefall Glade",4,181
4=qeytoqrg "Qeynos Hills",17,3,2,12
5=highpass "Highpass Hold",6,15,20
6=highkeep "HighKeep",5
8=freportn "North Freeport",9
9=freportw "West Freeport",8,10,22,202
10=freporte "East Freeport",9,69,34
11=runnyeye "Clan RunnyEye",33,16
12=qey2hh1 "West Karana",4,13
13=northkarana "North Karana",12,15,14
14=southkarana "South Karana",13,18,51
15=eastkarana "East Karana",13,5,16
16=beholder "Gorge of King Xorbb",15,11
17=blackburrow "BlackBurrow",4,30
18=paw "Infected Paw",14
19=rivervale "Rivervale",20,33,202
20=kithicor "Kithicor Forest",19,5,21
21=commons "West Commonlands",20,22,36
22=ecommons "East Commonlands",21,25,9,34
23=erudnint "Erudin Palace",24
24=erudnext "Erudin",23,38
25=nektulos "Nektulos Forest",27,40,22,202,365
26=cshome "Sunset Home"
27=lavastorm "Lavastorm Mountains",80,44,25,31,32,337,341
28=nektropos "Nektropos"
29=halas "Halas",30
30=everfrost "Everfrost Peaks",29,73,17,202
31=soldunga "Solusek's Eye",32,27,278
32=soldungb "Nagafen's Lair",31,27,278
33=misty "Misty Thicket",11,19,202
34=nro "North Ro",10,22,37
35=sro "South Ro",37,46
36=befallen "Befallen",21
37=oasis "Oasis of Marr",34,35
38=tox "Toxxulia Forest",24,75,74,202
39=hole "The Ruins of Old Paineel",75
40=neriaka "Neriak Foreign Quarter",25,41
41=neriakb "Neriak Commons",40,42
42=neriakc "Neriak Third Gate",41
43=neriakd "Neriak Palace"
44=najena "Najena",44
45=qcat "Qeynos Catacombs",1,2
46=innothule "Innothule Swamp",35,65,52,47,202
47=feerrott "The Feerrott",49,46,48,50,202
48=cazicthule "Cazic-Thule",47
49=oggok "Oggok",47
50=rathemtn "Mountains of Rathe",47,51
51=lakerathe "Lake Rathetear",14,50,77
52=grobb "Grobb",46
53=aviak "Aviak Village"
54=gfaydark "Greater Faydark",58,61,57,68,202
55=akanon "Ak'Anon",56
56=steamfont "Steamfont Mountains",55,57,202
57=lfaydark "Lesser Faydark",54,56,59
58=crushbone "Clan Crushbone",54
59=mistmoore "Castle Mistmoore",57
60=kaladima "Kaladim",67,68
61=felwithea "Felwithe",62,54
62=felwitheb "Felwithe",61
63=unrest "Estate of Unrest",70
64=kedge "Kedge Keep",70
65=guktop "Upper Guk",46,66
66=gukbottom "Lower Guk",66
67=kaladimb "Kaladim",60
68=butcher "Butcherblock Mountains",60,54,70,69,202
69=oot "Ocean of Tears",10,68
70=cauldron "Dagnor's Cauldron",68,63,64
71=airplane "Plane of Sky"
72=fearplane "Plane of Fear"
73=permafrost "Permafrost Keep",30
74=kerraridge "Kerra Isle",38
75=paineel "Paineel",38,39,101
76=hateplane "The Plane of Hate"
77=arena "The Arena",51
78=fieldofbone "The Field of Bone",97,94,88,83,106,79,202
79=warslikswood "Warsliks Wood",104,78,82,85,93
80=soltemple "Temple of Solusek Ro",27
81=droga "Temple of Droga",92,107
82=cabwest "West Cabilis",106,85,79
83=swampofnohope "Swamp of No Hope",78,95,84,106
84=firiona "Firiona Vie",83,86,85,202
85=lakeofillomen "Lake of Ill Omen",79,82,84,92,109
86=dreadlands "Dreadlands",92,84,102,87
87=burningwood "Burning Woods",91,103,92,86
88=kaesora "Kaesora",78
89=sebilis "Old Sebilis",95
90=citymist "City of Mist",94
91=skyfire "Skyfire Mountains",108,93,87
92=frontiermtns "Frontier Mountains",93,85,86,81,107,87
93=overthere "The Overthere",105,79,92,91,202
94=emeraldjungle "The Emerald Jungle",90,95,78
95=trakanon "Trakanon's Teeth",94,89,83
96=timorous "Timorous Deep"
97=kurn "Kurn's Tower",78
98=erudsxing "Erud's Crossing"
100=stonebrunt "Stonebrunt Mountains"
101=warrens "The Warrens"
102=karnor "Karnor's Castle",86
103=chardok "Chardok",87,277
104=dalnir "Dalnir",79
105=charasis "Howling Stones",93
106=cabeast "East Cabilis",78,83,82
107=nurga "Mines of Nurga",81,92
108=veeshan "Veeshan's Peak"
109=veksar "Veksar",85
110=iceclad "Iceclad Ocean",111,116
111=frozenshadow "Tower of Frozen Shadow",110
112=velketor "Velketor's Labyrinth",118
113=kael "Kael Drakkal",116,119
114=skyshrine "Skyshrine",117,119
115=thurgadina "Thurgadin",129,118
116=eastwastes "Eastern Wastes",110,121,118,113,128
117=cobaltscar "Cobalt Scar",125,114
118=greatdivide "Great Divide",116,115,112,202
119=wakening "The Wakening Land",113,127,114
120=westwastes "Western Wastes",124,125,123
121=crystal "Crystal Caverns",116
123=necropolis "Dragon Necropolis",120
124=templeveeshan "Temple of Veeshan",126,120
125=sirens "Siren's Grotto",117,120
126=mischiefplane "Plane of Mischief"
127=growthplane "Plane of Growth"
128=sleeper "Sleeper's Tomb"
129=thurgadinb "Icewell Keep",115,118
130=erudsxing2 "Marauder's Mire"
150=shadowhaven "Shadow Haven",151,156,153,152
151=bazaar "The Bazaar",150,152,202
152=nexus "The Nexus",161,150,151,202
153=echo "Echo Caverns",150,164,157
154=acrylia "Acrylia Caverns",167
155=sharvahl "Shar Vahl",166,165
156=paludal "Paludal Caverns",166,165,150
157=fungusgrove "Fungus Grove",170,153
158=vexthal "Vex Thal",176
159=sseru "Sanctus Seru",168,174
160=katta "Katta Castellum",172,170
161=netherbian "Netherbian Lair",152,174,168
162=ssratemple "Ssraeshza Temple",171,164
163=griegsend "Grieg's End",175,174
164=thedeep "The Deep",153,162
165=shadeweaver "Shadeweaver's Thicket",156,155,202
166=hollowshade "Hollowshade Moor",167,155
167=grimling "Grimling Forest",172,166,154
168=mseru "Marus Seru",169,161,159
169=letalis "Mons Letalis",171,168
170=twilight "The Twilight Sea",160,157,175
171=thegrey "The Grey",162,175,169
172=tenebrous "The Tenebrous Mountains",167,160
173=maiden "The Maiden's Eye",176,179,174
174=dawnshroud "Dawnshroud Peaks",161,173,163,159
175=scarlet "The Scarlet Desert",163,170,171
176=umbral "The Umbral Plains",158,173
179=akheva "Akheva Ruins",173
180=arena2 "The Arena"
181=jaggedpine "The Jaggedpine Forest",3,182
182=nedaria "Nedaria's Landing",181
183=tutorial "Tutorial Zone"
184=load "Loading"
185=load2 "Loading"
186=hateplaneb "The Plane of Hate"
187=shadowrest "Shadowrest"
188=tutoriala "The Mines of Gloomingdeep"
189=tutorialb "The Mines of Gloomingdeep"
190=clz "Loading"
200=codecay "Ruins of Lxanvom",203
201=pojustice "Plane of Justice",203
202=poknowledge "Plane of Knowledge",19,54,68,30,38,152,118,165,2,203,84,9,56,78,46,25    ,47,93,224,151,344,33
203=potranquility "Plane of Tranquility",202,200,201,204,205,206,207,208,209,210,211,212,2    13,214,215,216,217,218,219
204=ponightmare "Plane of Nightmare",203,221
205=podisease "Plane of Disease",203,200
206=poinnovation "Plane of Innovation",203
207=potorment "Plane of Torment",203
208=povalor "Plane of Valor",203,211
209=bothunder "Torden, The Bastion of Thunder",203
210=postorms "Plane of Storms",203,209
211=hohonora "Halls of Honor",203,220,
212=solrotower "Solusek Ro's Tower",203,217
213=powar "Plane of War",203
214=potactics "Drunder, Fortress of Zek",203
215=poair "Eryslai, the Kingdom of Wind",203
216=powater "Reef of Coirnav",203
217=pofire "Doomfire, The Burning Lands",203
218=poeartha "Vegarlson, The Earthen Badlands",203,222
219=potimea "Plane of Time",203
220=hohonorb "Temple of Marr",211
221=nightmareb "Lair of Terris Thule",204
222=poearthb "Stronghold of the Twelve",218
223=potimeb "Plane of Time",219
224=gunthak "Gulf of Gunthak",202,225,227
225=dulak "Dulak's Harbor",224,226
226=torgiran "Torgiran Mines",225
227=nadox "Crypt of Nadox",224,228
228=hatesfury "Hate's Fury, The Scorned Maiden",227
229=guka "The Cauldron of Lost Souls"
230=ruja "The Bloodied Quarries"
231=taka "The Sunken Library"
232=mira "The Silent Gallery"
233=mmca "The Forlorn Caverns"
234=gukb "The Drowning Crypt"
235=rujb "The Halls of War"
236=takb "The Shifting Tower"
237=mirb "The Maw of the Menagerie"
238=mmcb "The Dreary Grotto"
239=gukc "The Ancient Aqueducts"
240=rujc "The Wind Bridges"
241=takc "The Fading Temple"
242=mirc "The Spider Den"
243=mmcc "The Asylum of Invoked Stone"
244=gukd "The Mushroom Grove"
245=rujd "The Gladiator Pits"
246=takd "The Royal Observatory"
247=mird "The Hushed Banquet"
248=mmcd "The Chambers of Eternal Affliction"
249=guke "The Foreboding Prison"
250=ruje "The Drudge Hollows"
251=take "The River of Recollection"
252=mire "The Frosted Halls"
253=mmce "The Sepulcher of the Damned"
254=gukf "The Chapel of the Witnesses"
255=rujf "The Fortified Lair of the Taskmasters"
256=takf "The Sandfall Corridors"
257=mirf "The Forgotten Wastes"
258=mmcf "The Ritualistic Summoning Grounds"
259=gukg "The Root Garden"
260=rujg "The Hidden Vale"
261=takg "The Balancing Chamber"
262=mirg "The Heart of the Menagerie"
263=mmcg "The Cesspits of Putrescence"
264=gukh "The Accursed Sanctuary"
265=rujh "The Blazing Forge"
266=takh "The Sweeping Tides"
267=mirh "The Morbid Laboratory"
268=mmch "The Aisles of Blood"
269=ruji "The Arena of Chance"
270=taki "The Antiquated Palace"
271=miri "The Theater of Imprisoned Horrors"
272=mmci "The Halls of Sanguinary Rites"
273=rujj "The Barracks of War"
274=takj "The Prismatic Corridors"
275=mirj "The Grand Library"
276=mmcj "The Infernal Sanctuary"
277=chardokb "The Halls of Betrayal",103
278=soldungc "The Caverns of Exile",32
279=abysmal "Abysmal Sea"
280=natimbi "Natimbi, The Broken Shores",281,293
281=qinimi "Qinimi, Court of Nihilia",280,282,284,283
282=riwwi "Riwwi, Coliseum of Games",283,284,281
283=barindu "Barindu, Hanging Gardens",282,281,290,289,284,285,286,287,288
284=ferubi "Ferubi, Forgotten Temple of Taelosia",283,281,282
285=snpool "Sewers of Nihilia, Pool of Sludge",283
286=snlair "Sewers of Nihilia, Lair of Trapped Ones",283
287=snplant "Sewers of Nihilia, Purifying Plant",283
288=sncrematory "Sewers of Nihilia, the Crematory",283
289=tipt "Tipt, Treacherous Crags",283
290=vxed "Vxed, The Crumbling Caverns",283
291=yxtta "Yxtta, Pulpit of Exiles",294,292
292=uqua "Uqua, The Ocean God Chantry",291
293=kodtaz "Kod'Taz, Broken Trial Grounds",280,294,295,291
294=ikkinz "Ikkinz, Chambers of Destruction",293
295=qvic "Qvic, Prayer Grounds of Calling",293,297,295
296=inktuta "Inktu`Ta, The Unmasked Chapel",295
297=txevu "Txevu, Lair of the Elite",295,298
298=tacvi "Tacvi, Seat of the Slaver",295
299=qvicb "Qvic, the Hidden Vault"
300=wallofslaughter "Wall of Slaughter",303,316,317
301=bloodfields "The Bloodfields",302,336
302=draniksscar "Dranik's Scar",202,301,335,303
303=causeway "Nobles' Causeway",302,300
304=chambersa "Muramite Proving Grounds"
305=chambersb "Muramite Proving Grounds"
306=chambersc "Muramite Proving Grounds"
307=chambersd "Muramite Proving Grounds"
308=chamberse "Muramite Proving Grounds"
309=chambersf "Muramite Proving Grounds"
316=provinggrounds "Muramite Proving Grounds",300,334
317=anguish "Asylum of Anguish",300
318=dranikhollowsa "Dranik's Hollows"
319=dranikhollowsb "Dranik's Hollows"
320=dranikhollowsc "Dranik's Hollows"
321=dranikhollowsd "Dranik's Hollows"
322=dranikhollowse "Dranik's Hollows"
323=dranikhollowsf "Dranik's Hollows"
324=dranikhollowsg "Dranik's Hollows"
325=dranikhollowsh "Dranik's Hollows"
326=dranikhollowsi "Dranik's Hollows"
327=dranikhollowsj "Dranik's Hollows"
328=dranikcatacombsa "Catacombs of Dranik"
329=dranikcatacombsb "Catacombs of Dranik"
330=dranikcatacombsc "Catacombs of Dranik"
331=draniksewersa "Sewers of Dranik"
332=draniksewersb "Sewers of Dranik"
333=draniksewersc "Sewers of Dranik"
334=riftseekers "Riftseekers' Sanctum",316
335=harbingers "Harbingers' Spire",302
336=dranik "The Ruined City of Dranik",301
337=broodlands "The Broodlands",27,338,340,343   
338=stillmoona "Stillmoon Temple",337
339=stillmoonb "The Ascent",338
340=thundercrest "Thundercrest Isles",337
341=delvea "Lavaspinner's Lair",337,27,342
342=delveb "Tirranun's Delve",341
343=thenest "The Accursed Nest",337
344=guildlobby "The Guild Lobby"
345=guildhall "Guild Hall"
346=barter "The Barter Hall"
347=illsalin "Ruins of Illsalin",362
348=illsalina "Imperial Bazaar"
349=illsalinb "Temple of the Korlach"
350=illsalinc "The Nargilor Pits"
351=dreadspire "Dreadspire Keep",358
354=drachnidhive "The Hive",358
355=drachnidhivea "Living Larder"
356=drachnidhiveb "Coven of the Skinwalkers"
357=drachnidhivec "Queen Sendaii's Lair"
358=westkorlach "Stoneroot Falls",362,354,351
359=westkorlacha "Chambers of Xill"
360=westkorlachb "Caverns of the Lost"
361=westkorlachc "Lair of the Korlach"
362=eastkorlach "Undershore",365,347,358
363=eastkorlacha "Snarlstone Dens"
364=shadowspine "Shadowspine"
365=corathus "Corathus Creep",25,362
366=corathusa "Sporali Caverns"
367=corathusb "Corathus Lair"
368=nektulosa "Shadowed Grove"
369=arcstone "Arcstone",383,370,371
370=relic "Relic",369
371=skylance "Skylance"
372=devastation "The Devastation",382
373=devastationa "The Seething Wall",372
374=rage "Sverag, Stronghold of Rage",372
375=ragea "Razorthorn, Tower of Sullon Zek",374
376=takishruins "Ruins of Takish-Hiz",392,378
377=takishruinsa "The Root of Ro",376
378=elddar "The Elddar Forest",376,379
379=elddara "Tunare's Shrine",378
380=theater "Theater of Blood"
381=theatera "Deathknell, Tower of Dissonance"
382=freeporteast "Freeport East",383,393,384,372
383=freeportwest "Freeport West",202,384,22,382,369
384=freeportsewers "Freeport Sewers",393,382,383
385=freeportacademy "Academy of Arcane Sciences"
386=freeporttemple "Temple of Marr"
387=freeportmilitia "Freeport Militia House"
388=freeportarena "Arena"
389=freeportcityhall "City Hall"
390=freeporttheater "Theater"
391=freeporthall "Hall of Truth"
392=northro "North Ro",392,382,384,37
393=southro "South Ro",393,37,46,376

[beholder]
forkintheroad=875 -409.38 -4.65
goblintracking=875 -409.38 -5.74
lordofthecastle=1262 -545 4.73
miningoperation=1261.88 -544.88 5.13 90
mudcrossing=848.13 -550.88 -.88
nicebridge=1261.88 -544.88 5.13
outpostonelowerpatrolroute=878.88 -462.06 -3.79
raisedwolves=98 -906 -4.63 90
roadtorunnyeye=922.61 -310.11 10.53
stagingaraid=514 -589 -71

[blackburrow]
gnollandgo=109 -3 3.75

[burningwood]
chardok=7043.24 -4157.55 -233 107
highlow=3233.13 2270.07 -253.71 107
upwardmobility=1713.19 -1696.04 -652.46 107
stirring=-2530.26 2596.00 -67.24 107
learninghornet=-2530.26 2596.00 -67.24 107
rubble=-1398.47 2240.45 -379 507
breadinggrounds=2932.95 -1729.06 -256 19
mindbees=-2530.00 2596.00 -67.25 19
mouthofthedragon=1861.41 -1715.46 -651.24 90
bigholeseverywhere=-276.10 2239.56 -548 94
earthsky=-853 -1180 -638
breeding=2955 -725 -255
fortifying=1106.22 1136.64 -206.44
task22=29.80 140.96 2.19
meteor=-744.45 -1078.34 -601 280
carrymoon=-250.40 2172.70 -521 115
craterrun=1310.53 1087.34 -434 139
bigholes=-324.42 2201.61 -492.53 139

[butcher]
deldryn=1423.38 2735.24  0 506
trans_oot=1350.89 3253.26 11 130
trans_timorous=855.36 3170.46 11 146

[charasis]
overlook=173.09 -423.74 23 258

[chardok]
upwardmobility=-535.09 639.32 -137 88
stirring=-574.40 1313.50 -157.44 107
learninghornet=-788 984 -213.63 107
rubble=178.82 436.19 53 23
meteor=0.10 30.56  3 377
default=-520.16 702.98 -137 126

[citymist]
serenitynearlake=230.25 -390.76 253.78 90
lookingoveredge=105.25 193.68 271.78 90
jungletrek=-97.00 209.00  2 301
throughmist=206.69 -368.11 -15 376
Preparations=-230.48 -309.89 75 6
Entrancedisaster=-207.32 -27.62  3 80
bandits?=-71.20 -527.51  3 51
mistysights=224.30 -401.45 35 375

[dreadlands]
default=806.37 -2095.80 26 127
giantexp=-430 1970 325 377
lookout=3069 9659 1047
mystic=2480.67 7751.34 1049.22
scarycaves=-2514 3498 712
marana=802.25 -2070.96 26 122
rubble=1691.59 -4939.24 56 362
breadinggrounds=1691.59 -4939.24 56 362
mindbees=1787.70 987.94 89.04 107
klok=778.75 9123.05 1063 125
hoobert=263.97 -4945.62 -13 97
statuegarden=2200.5 4930 1037.13 90
dreadedgiants=1817.81 941.19 92.76 377
tothecastle=-454.49 3458.92 385.57 377
landsofdread=-1556.41 -4869.58 56.29 377
empire=392.82 -4383.29 44.17
fortifying=2274, 4859.75 , 1049.47
task22=837.47 9667.65 1109.39
craterrun=3069.31 9654.56 1049 134
gianttidings=-2137.54 -128.04 6.97
safespot=1869.85 9192.32 1648.09
stoneworks=2552.25 7728.81 1050.38



[droga]
edge=-471.87 2066.23 -349 408
fallinggoblinterr=242.57 154.10 -189 507
plunge=538.84 382.17 -205 219
templemines=-488.00 215.00 -173 302

[dulak]
timeforbed=295.03 -1795.42 -25 9
leavinghome=-1121.14 -144.06 -29 126
itstradition=553.81 -1748.16 -25 508
stormwave=-1137.65 -86.06 -29 402
scornbywind=628.17 -1783.47 -25 163
payinghomage=2356.28 -990.66 41 398

[eastkarana]
droppinginonbandits=1388.88 105.52 -0.51
forkintheroad=1388.88 428 1.13
goblintracking=-2701 -2011 4.34
journeytohighholdkeep=11.08 260.04 2.77
karanarun=-2278.80 -3747.04 98.61
mining=8.57 923.74 -35.15 90
mudcrossing=-1733 -5987 389.13
nicebridge=11.08 917.40 -33.59
outpostone=-930.86 -4560.94 183.01
outpostonelowerpatrolroute=-927.72 -4560.93 183.05
raisedwolves=1323.88 -2681.88 1.75 90
roadtorunnyeye=-2406.86 -3812.43 103.04
stagingaraid=-938.48 -4554.83 182.56
stonefaced=-2264.40 -3767.43 95.79
throughhighhold=-863.23 -65.77 9.96

[emeraldjungle]
serenitynearlake=3455.33 -874.08 -364.78 90
lookingoveredge=3469.12 -407.88 -342.59 90
jungletrek=4191.00 -1458.00 -342 501
throughmist=1931.79 2816.17 -221 376
Preparations=3367.74 -423.15 -339 58
Entrancedisaster=-3378.80 1626.39 -342 356
bandits?=4202.00 -1428.00 -342 94
waterways=3809.83 -2106.14 -342 89
mistysights=4213.00 -1450.00 -341 127

[everfrost]
gnollandgo=2600.97 -3456.03 -38.06

[fieldofbone]
whatliesbelow=205.43 2697.05 -46 129
Below=304.76 2746.55 -46 273

[firiona]
default=-4397.43 1379.95 -103 153
lizardtour=-580.40 2480.15 -24 243
marchfordrolvarg=649.33 -2068.98 168 136
stonefacedlizards=-580.38 2480.13 -25 243
drowning=-1765.47 2817.23 -136 187
delvingmines=650 -2060 165 282
watchfordrolvarg=1513.00 -1395.00 -2 153
dangersofdeep=-1791 2724 -101.34 90
Drabilt=-4398.77 1386.86 -147 421

[frontiermtns]
droptemple=3482.25 2875.75 352 253
badgeringgoblins=-1955.70 2086.03 -375 42
mountaineering=1334.73 2024.6 961 42
statuegarden=-1749.85 -2145.28 78.03
watchoutoverthere=4894.78 1444 366.32 90
earthsky=-2846 -642 -477.63 90
default=-3686.75 -1634.78 -335 258
spires=-2534 -1296 -475.74
lefttower=-3038.27 121 -533.34
mining=-375.95 -645.88 -124.56
holdingfort=-39 -1435.38 -114.38
digin=797.88 -2753.63 15.16
blasted=-3111.30 49.58 -529 58
trailblazing=4784, 1401, 354.20
badgeringkunark=-1899.13 2020.88 -377 84
whatdotheydointhere=796.64 -2768.32 18.10

[guildlobby]
default=588.00 0.00  2 0

[gunthak]
default=1217.46 -1066.37 30 29
cadale=1511.43 -237.31  4 420
timeforbed=1624.11 -172.74  3 161
leavinghome=-1190.84 2250.90 68 290
itstradition=-206.12 -678.62 -39 262
whereunderground=-2078.78 -89.03 43 27
taskmaster=1511.41 -240.58  4 458
doyoubelieve=-1628.00 -95.00 43 256
scornbywind=-3586.40 2628.28 557 251
makingstand=-2136.72 -87.75 43 109

[hatesfury]
treasureforeveryone=906.30 1270.03 -605 134

[highkeep]
basementsandplains=57.77 -134.10 -41.26
bringingbooks=-27.17 -99.24 2.19 90
downthepass=-11.37 34.26 -0.25
ridgerun=68.55 -329.47 3.75

[highpass]
basementsandplains=281.21 -119.62 2.71
bringingbooks=604.25 143.13 30.03 90
downthepass=-247.83 191.37 3.75
droppinginonbandits=-24 105.52 4.39
journeytohighholdkeep=-259.85 -60.08 2.29
outpostone=-314 -165 3.75
ridgerun=589.11 105.17 31.75
stonefaced=-70.25 393.38 8.03
throughhighhold=65.21 -7.18 3.75

[karnor]
giantexp=170.49 -261.95 46.00 377
lookout=119.52 -32.67 32.19 377
mystic=108.11 -446.86 2.75 377
scarycaves=-48.92 -277.16 2.19 377
dreadedgiants=190.34 -216.08 43.85 377
tothecastle=-148.00 -192.88 43.85 377
landsofdread=-75.20 -593.49 15.88 377
empire=162.13 -250.87 44.17
gianttidings=-150.08 -209.57 44.68
stoneworks=193.13 -220.38 45.09

[kithicor]
overthebridge=-570 1930 225.13

[lakeofillomen]
stonefacedlizards=3787.53 -3542.99 59 400
pillarsofciv=163.12 -488.20 66 295
everythingruins=5579.88 -5218.00 36 400
watchfordrolvarg=-2749.00 3388.00 342 153
checkingcabilis=6295.89 -6656.14 38 26
brokenstone=-475.66 -1566.12 100 371
dinnertime=-2504.35 4703.57 227 125
mountaineering=5417.87 -4277 78.31 125
watchoutoverthere=-1154.36 2292.91 305.14 90
poortree=-2547.02 5022.31 228.44 90
dangersofdeep=190.91 -2672.40 140.77 90
onedeadtree=-3419.66 592.44 109.26 90
delvingmines=3425.01 3063.47 164 8
where=1369.25 -4184.15 218 327
spires=4846.18 -2872.24 104.24
mining=3373.13 3059.91 162.91
holdingfort=-1384.29 -2057.68 100.37
ruinseverywhere=3308.81 -1766.17 76.00
whatplaceisthis=5526.5 -5285.08 33.19

[nadox]
whereunderground=-464.09 1802.27 -166 135
doyoubelieve=-971.20 160.94  7 258
makingstand=-461.32 1793.41 -166 142
treasureforeveryone=-553.21 -401.13  7 377

[nektulos]
default=682.76 -170.29 17 487

[northkarana]
karanarun=-578.56 -213.76 -7.50

[nurga]
fallinggoblinterr=-2118.50 -1679.03 -194 373
droptemple=-2124.81 -1679.02 -179 380
longwaydown=-1919.55 -1333.27 -173 132
badgeringgoblins=-1877.03 1394.76 -313 142
digin=-1952.24 -1007.61 -172.75
blasted=-1417.79 228.39 -189 114
edge=-1679.19 1607.01 -327 272
trailblazing=-1571 -589 -189.75
plunge=-2115.90 -1672.86 -204 116
templemines=-1694.00 1335.00 -274 380

[overthere]
default=-2924.80 3147.90 133 142
overlook=-1788.00 619.00 -50 385
badgeringkunark=-1052.15 3786.92 62.19 417
skizz=-2924.80 3147.90 133 142
jawsofdeath=-1788.00 619.00 -50 488
unhappy=59.00 1500.00 -715 153

[poknowledge]
lizardtour=-441.63 861.18 -126 9
marchfordrolvarg=23.21 930.14 -62 126
whatliesbelow=16.02 53.15 -125.50 456
TrepThilcan=-432.88 861.16 -141 43
scornbywind=-558.69 1210.91 -123 99
makingstand=-117.85 60.03 -125 275
Below=21.63 37.93 -126 80
default=-302.54 1358.91 -119 406

[qeytoqrg]
south=230.70 106.47 -3 505

[qeynos2]
default=203.61 484.94  4 257
alt2=306.74 533.17  4 484

[qvic]
default=-651.00 -124.00 -425 505

[riftseekers]
default=120.72 2.48 -238 508

[runnyeye]
lordofthecastle=165 -91 -128.90

[sebilis]
Crossbridge=-340.33 77.19 -33 276
coldblooded=-977.00 -386.00 -101 106
tomb=-1767.57 225.62 -123 503
spectersstone=-613.86 714.43 -69 463
bridgebeyond=-1465.25 170.50 -195 398
literacy=-1087.64 -401.62 -105 158
Anotherway=-676.25 63.73 -177 383
murkycells=-416.76 117.21 -213 111
dontdrinkthat=-725 660 -69 111
jailingthedead=-422.09 515.63 -49.78 111
murkyinthere=-283.57 -8.92 -32.25 111

[skyfire]
highandlow=2248.88 2946.96 -108.50 107
jawsofdeath=-156.64 4100 62.6 90
mouthofthedragon=-91.70 3956.33 24.90
carrymoon=-2189.94 -3577.40 -121 60
bigholes=2365.41 3735.16 -129.87 60
Atleastluclinsokay=-5522.34 1654.92 -159.94 107

[swampofnohope]
lizardtour=3858.99 1568.77 72 260
taskmaster=3792.59 1606.32 71 410
marchfordrolvarg=3817.37 1542.44 78 193
sses=3792.50 1606.25 71 410
default=3792.50 1606.25 71 410

[timorous]
default=5862.75 3621.14  1 198
drowning=-6444.15 3482.91 -1 165
delvingmines=-4535 -3254 17.50 68

[torgiran]
timeforbed=-65.54 24.55  5 327
itstradition=1157.01 -1073.95 -79 381
stormwave=1239.20 -1314.88 -145 257
payinghomage=1156.31 -1060.89 -78 385

[trakanon]
Crossbridge=-1756.05 3620.76 -313 130
coldblooded=-143.00 -4416.00 -366 289
tomb=-143.00 -4416.00 -366 289
spectersstone=-3269.00 2535.00 -311 0
waterways=-952.71 -618.35 -286 59
bridgebeyond=2023.82 4509.08 -327 284
Anotherway=-3129.35 2564.16 -310 266
murkycells=2018.00 4507.00 -327 0
dontdrinkthat=-1671 -4765 -474 0
jailingthedead=-1757 3653.95 -282.70 0
murkyinthere=2065.13 4418.97 -348.23 0

[veksar]
poortree=113.79 586.20 -26.25 135
onedeadtree=-340.70 44.00 -26.25 135
ruinseverywhere=-132.57 427.11 -7.25
whatplaceisthis=-137.96 -545.09 -27.81

[warslikswood]
whatliesbelow=3247.50 4018.45 -155 442
pillarsofciv=3271.82 3986.66 -150 428
everythingruins=-806.23 2586.06 263 122
checkingcabilis=-856.21 2612.07 263 490
brokenstone=-856.13 2612.00 263 490
dinnertime=-2503.23 1461.99 78 249
followingbandits=-2497.65 1468.32 78.89 90
Below=3259.22 3999.05 -154 464
where=3267.43 3991.37 -152 327
 
PiggyZone and DoD+PoR zones?

Users who are viewing this thread

Back
Top