Zones and coordinates --> World to Zone coordinates menu

User Tag List

Results 1 to 12 of 12
  1. #1
    radarlove's Avatar Contributor
    Reputation
    158
    Join Date
    Jun 2012
    Posts
    205
    Thanks G/R
    2/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Zones and coordinates --> World to Zone coordinates

    Hi,

    Lately I was looking for a list of all zones and their coordinates so I could calculate the ingame-coordinates of the player or the objects around the player.
    It resulted in a file I extracted from one of the MPQ's. I would like to share it with you guys, might come in handy for your WoW-programming.
    If this might help you in your programming, I can publish the new coordinates each release. Let me know if you want them.
    Column 1 => ZoneID
    Column 2 => Y1
    Column 3 => Y2
    Column 4 => X1
    Column 5 => X2

    How to calculate ingame offzet:
    Code:
    Your character/object has an X and Y location (and Z, but not needed). Abbreviated with CharacterX and CharacterY. Your character is also in a ZoneID. These values can be extracted from memory.
    
    Now;
    1) Get Y1, Y2, X1, X2 from the list for the ZoneID
    2) Calculate X2 - X1 --> Abbreviated with Xdifference
    3) Calculate Y2 - Y1 --> Abbreviated with Ydifference
    4) Calculate CharacterX - X1 --> Abbreviated with Xspace
    5) Calculate CharacterY - Y1 --> Abbreviated with Yspace
    6) Calculate Xspace / Xdifference and multiply the outcome by 100. 
    7) Calculate Yspace / Ydifference and multiply the outcome by 100. 
    8) Because the calculations of 6) and 7) can have a negative outcome, also make sure to use the ABS() function to make it positive
    9) Or put everything together: ABS(  (CharacterX-X1)/(X2-X1) * 100 )   and ABS(  (CharacterY-Y1)/(Y2-Y1) * 100 ) 
    
    Example(i removed decimals for clarity): Player in Elwynn Forrest (ZoneID = 12). Player position X = -9457, Y = -1360
    1) Y1 = 1535, Y2 = -1935, X1 = -7939, X2 = -10254
    2) 2315
    3) 3470
    4) -1518
    5) -2895
    6) -83,42939481
    7) -65,57235421
    8) X=65,57235421, Y=83,42939481
    9) Look at 8
    Code:
    1|2137,5|-2760,417|-3941,667|-7206,25
    3|-1902,083|-4972,917|-5854,167|-7900
    4|-1193,75|-4856,25|-10583,33|-13025
    8|-2081,25|-4589,583|-9535,416|-11208,33
    10|833,3333|-1866,667|-9716,666|-11516,67
    11|-389,5833|-4525|-2147,917|-4904,167
    12|1535,417|-1935,417|-7939,583|-10254,17
    14|-1962,5|-7250|1808,333|-1716,667
    15|-975|-6225|-2033,334|-5533,334
    15|-975|-6225|-2033,334|-5533,334
    16|-3372,917|-8887,5|5381,25|1704,167
    17|202,0833|-5543,75|1810,417|-2020,833
    28|416,6667|-3883,333|3366,667|500
    33|1743,75|-2356,25|-11016,67|-13750
    38|-1993,75|-4752,083|-4487,5|-6327,083
    40|3016,667|-483,3333|-9400|-11733,33
    41|-833,3333|-3333,333|-9866,666|-11533,33
    44|-1479,167|-4047,917|-8514,583|-10227,08
    45|-1127,083|-4604,167|-141,6667|-2460,417
    46|-464,5833|-3616,667|-6985,417|-9085,416
    47|-1575|-5425|1466,667|-1100
    51|-322,9167|-2554,167|-6100|-7587,5
    65|3627,083|-1981,25|5575|1835,417
    66|-600|-5593,75|7668,75|4339,583
    67|1841,667|-5270,833|10197,92|5456,25
    85|3033,333|-1485,417|3837,5|824,9999
    130|3450|-750|1666,667|-1133,333
    139|-2287,5|-6318,75|3704,167|1016,667
    141|4235,417|-1639,583|11847,92|7931,25
    148|3016,667|-3447,917|8222,916|3912,5
    209|4500|300|1133,333|-1666,667
    210|5443,75|-827,0833|9427,083|5245,833
    215|2204,167|-3245,833|-168,75|-3802,083
    267|1850|-3012,5|1481,25|-1760,417
    331|1700|-4066,667|4672,917|829,1666
    357|5441,667|-1508,333|-2366,667|-7000
    361|1797,917|-4264,583|7237,5|3195,833
    394|-1110,417|-6360,417|5516,667|2016,667
    400|-433,3333|-4833,333|-3966,667|-6900
    405|4233,333|-262,5|452,0833|-2545,833
    406|3902,083|-1997,917|3404,167|-529,1666
    440|-62,5|-7275|-5770,833|-10579,17
    490|533,3333|-3166,667|-5966,667|-8433,333
    491|2766,667|966,6666|2733,333|1533,333
    493|-1381,25|-3689,583|8491,666|6952,083
    495|-1397,917|-7443,75|3116,667|-914,5833
    616|-929,1666|-5175|6195,833|3364,583
    616|-929,1666|-5175|6195,833|3364,583
    618|-991,6666|-7141,667|8793,75|4693,75
    722|2766,667|-633,3333|3266,667|999,9999
    796|1508,333|-800|1918,75|379,166
    1176|1625|241,6667|2052,083|1129,167
    1196|3275|-3275|2166,667|-2200
    1377|2983,333|-1075|-5872,917|-8579,166
    1497|873,1926|-86,1824|1877,945|1237,841
    1519|1722,917|-14,58333|-7995,833|-9154,166
    1537|-713,5914|-1504,216|-4569,241|-5096,846
    1581|1966,667|-3033,333|1133,333|-2200
    1637|-3506,354|-5245,729|2486,667|1327,083
    1638|516,6666|-527,0833|-849,9999|-1545,833
    1657|3187,5|1647,917|10464,58|9437,5
    1977|-693,75|-2570,833|-11308,33|-12560,42
    1977|-612,5|-2733,333|-11225|-12639,58
    2017|-1766,667|-5166,667|4333,333|2066,667
    2057|633,3333|-1166,667|600|-600
    2366|7650|6562,5|-1500|-2225
    2367|1854,167|-477,0833|3127,083|1572,917
    2597|1781,25|-2456,25|1085,417|-1739,583
    2677|633,3333|-2766,667|-6333,333|-8600
    2817|1443,75|-1279,167|6502,083|4687,5
    3277|2041,667|895,8333|1627,083|862,4999
    3358|1858,333|102,0833|1508,333|337,5
    3428|3033,333|1233,333|-7933,333|-9133,333
    3429|3035,417|522,9166|-8233,333|-9908,333
    3430|-4487,5|-9412,5|11041,67|7758,333
    3433|-5283,333|-8583,333|8266,666|6066,667
    3456|-2520,833|-4377,083|3597,917|2360,417
    3457|-1191,667|-2950|-10389,58|-11562,5
    3483|5539,583|375|1481,25|-1962,5
    3487|-6400,75|-7612,208|10153,71|9346,938
    3518|10295,83|4770,833|41,66666|-3641,667
    3519|7083,333|1683,333|-999,9999|-4600
    3520|4225|-1275|-1947,917|-5614,583
    3521|9475|4447,917|1935,417|-1416,667
    3522|8845,833|3420,833|4408,333|791,6666
    3523|5483,333|-91,66666|5456,25|1739,583
    3524|-10500|-14570,83|-2793,75|-5508,333
    3525|-10075|-13337,5|-758,3333|-2933,333
    3537|8570,833|2806,25|4897,917|1054,167
    3557|-11066,37|-12123,14|-3609,683|-4314,371
    3562|1935,417|1277,083|-1041,667|-1479,167
    3606|-1525|-4025|6145,833|4479,167
    3703|6135,259|4829,009|-1473,954|-2344,788
    3711|6929,167|2572,917|7287,5|4383,333
    3805|1852,083|583,3333|568,75|-277,0833
    3820|2660,417|389,5833|2918,75|1404,167
    3959|1150|366,6667|949,9999|427,0833
    4075|1206,25|300|2012,5|1408,333
    4080|-5302,083|-8629,166|13568,75|11350
    4100|2152,083|327,0833|2297,917|1081,25
    4131|250|-297,9167|325|-39,58333
    4196|-377,0833|-1004,167|-168,75|-587,5
    4197|4329,167|1354,167|5716,667|3733,333
    4228|2337,5|-262,5|1956,25|222,9167
    4264|2766,667|-633,3333|2200|-66,66666
    4272|2500|-899,9999|2200|-66,66666
    4273|1583,333|-1704,167|1168,75|-1022,917
    4277|1020,833|-52,08333|872,9166|158,3333
    4298|-4047,917|-7210,417|3087,5|979,1666
    4384|787,5|-956,2499|1883,333|720,8333
    4415|983,3333|600|2006,25|1750
    4416|1310,417|166,6667|2122,917|1360,417
    4493|1133,333|-29,16667|3616,667|2841,667
    4494|-233,3333|-1206,25|849,9999|202,0833
    4500|2766,667|-633,3333|2200|-66,66666
    4603|1033,333|-1566,667|600|-1133,333
    4706|3439,583|293,75|-533,3333|-2631,25
    4709|1356,25|-6056,25|204,1667|-4737,5
    4710|525|-2125|1708,333|-58,33333
    4714|3439,583|293,75|-533,3333|-2631,25
    4714|3439,583|293,75|-533,3333|-2631,25
    4714|3439,583|293,75|-533,3333|-2631,25
    4714|3439,583|293,75|-533,3333|-2631,25
    4720|4383,333|-131,25|2881,25|-129,1667
    4720|4383,333|-131,25|2881,25|-129,1667
    4720|4383,333|-131,25|2881,25|-129,1667
    4722|2100|-500|2200|466,6667
    4723|2100|-500|2200|466,6667
    4737|2129,167|777,0833|-7731,25|-8631,25
    4742|2797,917|-879,1666|10781,25|8329,166
    4755|1933,333|1043,75|-1306,25|-1900
    4809|7033,333|-4366,667|6466,667|-1133,333
    4812|6366,667|-5833,333|5933,333|-2200
    4813|839,5833|-693,75|1256,25|233,3333
    4815|5070,833|2268,75|-4018,75|-5887,5
    4820|7033,333|-5966,667|6466,667|-2200
    4922|-2437,5|-7708,333|-2156,25|-5670,833
    4922|-2437,5|-7708,333|-2156,25|-5670,833
    4926|2100|-500|1133,333|-600
    4945|2366,667|-1833,333|600|-2200
    4950|1166,667|-2233,333|600|-1666,667
    4987|902,0833|150|3429,167|2927,083
    5004|2100|-500|600|-1133,333
    5031|931,2499|-283,3333|2266,667|1456,25
    5034|2441,667|-3752,083|-8029,167|-12158,33
    5034|2441,667|-3752,083|-8029,167|-12158,33
    5035|2366,667|-1833,333|600|-2200
    5042|3052,083|-2047,917|2795,833|-604,1666
    5088|2766,667|-633,3333|2200|-66,66666
    5094|1033,333|-1566,667|600|-1133,333
    5095|2010,417|-4,166667|-560,4166|-1904,167
    5108|1933,333|1043,75|-1306,25|-1900
    5144|6681,25|1831,25|-4756,25|-7989,583
    5145|8233,333|4158,333|-4906,25|-7622,917
    5146|8754,166|1808,333|-3720,833|-8352,083
    5287|2108,333|-1837,5|-12516,67|-15147,92
    5334|1166,667|-2233,333|600|-1666,667
    5339|2977,083|-3575|-10964,58|-15333,33
    5351|1933,333|1043,75|-1306,25|-1900
    5389|2412,5|575|377,0833|-847,9166
    5396|-1004,167|-1975|-10591,67|-11239,58
    5416|1556,25|6,25|1370,833|337,5
    5449|1745,833|443,75|1604,167|735,4166
    5600|2633,333|33,33333|1133,333|-600
    5638|2100|-500|600|-1133,333
    5695|3891,667|-158,3333|-8033,333|-10733,33
    5723|718,75|-868,7499|425|-633,3333
    5733|933,3333|-256,25|1702,083|908,3333
    5736|4979,166|2308,333|1785,417|6,25
    5785|1452,083|-5531,25|3652,083|-1002,084
    5788|-4650|-5902,083|3766,667|2933,333
    5789|2260,417|-1035,417|4697,917|2500
    5799|2660,417|389,5833|2918,75|1404,167
    5805|2679,167|-1245,834|1095,833|-1520,834
    5840|2481,25|-52,08398|1947,917|260,416
    5841|4839,583|-1418,75|5618,75|1445,833
    5842|7079,166|1335,417|4558,333|729,167
    5844|1791,667|-1252,083|5327,083|3297,917
    5861|7268,75|5410,417|-3322,917|-4562,5
    5892|-833,5928|-3940,301|-565,0928|-2628,158
    5918|3362,5|2300|4210,417|3502,083
    5956|-2154,166|-2918,75|1197,917|687,5
    5963|1664,583|814,583|-458,334|-1025
    5976|3133,333|1333,333|1666,667|466,666
    6006|812,5|-981,25|1689,583|493,75
    6040|-3979,166|-5037,5|-3468,75|-4175
    6051|1743,75|904,167|2083,333|1522,917
    6052|977,083|60,41602|1372,917|762,5
    6066|1597,917|-1708,334|1612,5|-591,666
    6067|-2497,916|-3200|-789,584|-1258,334
    6101|-875|-1343,75|2389,583|2077,083
    6109|2233,333|-1166,666|2200|-66,66602
    6125|2633,333|33,33398|4866,666|3133,333
    6126|1320,833|-929,166|1495,833|-4,166016
    6134|2947,917|-1739,584|-110,416|-3235,416
    6138|6139,583|787,5|1416,667|-2152,084
    6170|187,5|-781,25|-8570,832|-9216,666
    6176|979,167|14,58398|-5962,5|-6606,25
    6182|-700|-4100|-3133,334|-5400
    6208|3587,5|1175|1608,333|0
    6209|-1397,916|-2322,916|2372,917|1756,25
    6214|5762,5|4747,916|2029,167|1352,083
    6219|902,083|145,834|4008,333|3504,167
    6297|1279,167|-243,75|-1714,584|-2729,166
    6309|1220,833|314,584|-2564,584|-3168,75
    6328|5616,666|2933,333|-252,084|-2041,666
    6419|2102,083|1372,917|4168,75|3683,333
    6426|747,917|-222,916|2216,667|1568,75
    6449|1743,75|904,167|2083,333|1522,917
    6450|1491,667|41,66602|11033,33|10066,67
    6451|-3641,666|-4991,666|0|-900
    6452|233,334|-1533,334|-2577,084|-3754,166
    6453|-4491,666|-6297,916|-525|-1729,166
    6454|2147,917|1058,333|2270,833|1543,75
    6455|-5383,334|-6983,334|10833,33|9766,666
    6456|-12814,58|-14633,33|-3604,166|-4816,666
    6457|1206,25|-643,75|-4727,084|-5960,416
    6500|-3979,166|-5037,5|-3468,75|-4175

    These ads disappear when you log in.

  2. Thanks natt_, Glusk (2 members gave Thanks to radarlove for this useful post)
  3. #2
    Frosttall's Avatar Active Member
    Reputation
    63
    Join Date
    Feb 2011
    Posts
    261
    Thanks G/R
    16/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thank you very much, but have you already tried to read the DBC ingame? I think that this would be way faster, cheaper in regard of ressources and better to maintain.

  4. #3
    radarlove's Avatar Contributor
    Reputation
    158
    Join Date
    Jun 2012
    Posts
    205
    Thanks G/R
    2/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Frosttall View Post
    Thank you very much, but have you already tried to read the DBC ingame? I think that this would be way faster, cheaper in regard of ressources and better to maintain.
    I haven't done any reading of the DBC ingame. I havent found really good examples of how to do it. Is there some kind of example? I agree its easier to maintain the way you suggest.
    In my programme I load all coordinates into memory and upon changing zones, the programme just changes the border-coordinates. So when my programme finds X/Y of an NPC/Object, i can quickly calculate the ingame-coords. I don't think there's much difference in speed in this method.

  5. #4
    _Mike's Avatar Contributor
    Reputation
    310
    Join Date
    Apr 2008
    Posts
    531
    Thanks G/R
    0/2
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by radarlove View Post
    I haven't done any reading of the DBC ingame. I havent found really good examples of how to do it. Is there some kind of example? I agree its easier to maintain the way you suggest.
    In my programme I load all coordinates into memory and upon changing zones, the programme just changes the border-coordinates. So when my programme finds X/Y of an NPC/Object, i can quickly calculate the ingame-coords. I don't think there's much difference in speed in this method.
    See this post by Apoc and this post by TOM_RUS for help with DBC reading.

  6. #5
    kingkong69's Avatar Private
    Reputation
    1
    Join Date
    Dec 2012
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This information was really helpful, thanks for sharing.

    Do you know what the # after the ',' in some of the data is?

    12|1535,417|-1935,417|-7939,583|-10254,17

    Is there a way to determine which zone a specific set of in-game coordinates falls into? It looks like some of the coordinates fall into more than one zoneid. Is that just the relative nature of game coords?

  7. #6
    radarlove's Avatar Contributor
    Reputation
    158
    Join Date
    Jun 2012
    Posts
    205
    Thanks G/R
    2/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by kingkong69 View Post
    This information was really helpful, thanks for sharing.
    Do you know what the # after the ',' in some of the data is?
    12|1535,417|-1935,417|-7939,583|-10254,17
    Is there a way to determine which zone a specific set of in-game coordinates falls into? It looks like some of the coordinates fall into more than one zoneid. Is that just the relative nature of game coords?
    The numbers behind the commas you mean? They are just the decimals / rational numbers...

    It's not possible to determine the zone by the coordinates. Coordinates are set up for every area and can overlap each other.
    Simply read the CurrentZoneID from the WoW-memory; 0xCC9EF0 for version 5.1.0.16309. Just read it from the base-address, it's a global.
    Last edited by radarlove; 12-11-2012 at 02:33 AM.

  8. #7
    kingkong69's Avatar Private
    Reputation
    1
    Join Date
    Dec 2012
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    In this example:

    12|1535,417|-1935,417|-7939,583|-10254,17

    The 417, the second 417, the 583 and the 17, what are those? Any idea?

    I was able to "guess" the zone by taking the ingame x,y coordinates and seeing which zone coords were inside. There are multiple matches, of course, but if I narrow it down by continent I'll only get doubles when the coordinates are actually in both zones.

    There are a few zones that don't seem to make sense. Western Plaguelands is extremely large and the two STVs seemed to be messed up. Is the data you shared from before Cata or is it old in another way? Is there a way I can update it?

    Edit: I should mention that I'm not "in game." I'm doing a visualization of HonorBuddy profiles
    Last edited by kingkong69; 12-11-2012 at 11:05 PM.

  9. #8
    beanso's Avatar Active Member
    Reputation
    16
    Join Date
    Apr 2007
    Posts
    62
    Thanks G/R
    2/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by kingkong69 View Post
    In this example:

    12|1535,417|-1935,417|-7939,583|-10254,17

    The 417, the second 417, the 583 and the 17, what are those? Any idea?
    Answered by the reply above you. Alternate formatting for numbers.

  10. #9
    radarlove's Avatar Contributor
    Reputation
    158
    Join Date
    Jun 2012
    Posts
    205
    Thanks G/R
    2/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by kingkong69 View Post
    In this example:
    Is the data you shared from before Cata or is it old in another way? Is there a way I can update it?
    It's "new" data... retrieved from the wow-files with the new MoP patch, patch 5.0.5. if i remember correct.
    I extracted the data from the MPQ's in the gamedirectory, using MPQ Editor by Ladik. I specifically read WorldMapArea.dbc.
    Using DBC editor i exported the list as SQL, manipulated in Excel and posted it here.
    Doesnt seem to be up to date now, cause I just see that there are new entries (like brawlers arena, etc)

    If you want, I can do an updated release on every client-update.
    Just shout :-)

  11. #10
    abuckau907's Avatar Active Member
    Reputation
    49
    Join Date
    May 2009
    Posts
    225
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by kingkong69 View Post
    This information was really helpful, thanks for sharing.

    Do you know what the # after the ',' in some of the data is?

    12|1535,417|-1935,417|-7939,583|-10254,17
    It depends which country you are from --> some countries use a period (.) before decimal parts, some use a comma (,)

    the 12 in front is his 'counter' variable. ie he prints 1| point data .... 2| point data .... 3| point data .... N| point data
    Some things that can be counted, don't matter. And some things that matter, can't be counted.

  12. #11
    radarlove's Avatar Contributor
    Reputation
    158
    Join Date
    Jun 2012
    Posts
    205
    Thanks G/R
    2/11
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by abuckau907 View Post
    the 12 in front is his 'counter' variable. ie he prints 1| point data .... 2| point data .... 3| point data .... N| point data
    Not completely true... its the reference to the ZoneID... its not an autonumeric

  13. #12
    kingkong69's Avatar Private
    Reputation
    1
    Join Date
    Dec 2012
    Posts
    3
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by radarlove View Post
    If you want, I can do an updated release on every client-update.
    Just shout :-)
    I would really appreciate that. If you have a format that is more "raw" and less manipulated I'd be happy to work with that too. Right now I'm parsing exactly what you have with PHP and then using it to try to determine the zone the hotspot (X,Y,Z) is in. It seems very strange that the points aren't lining up in zones that were changed in Cata (WPL, NSTV) and I'd like to get to the bottom of it.

    I see what you guys mean about the comma instead of the period.

Similar Threads

  1. Come and join Youtube World of Warcraft Private server
    By TMK in forum WoW Emulator Server Listings
    Replies: 0
    Last Post: 01-31-2008, 06:35 AM
All times are GMT -5. The time now is 11:33 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2022 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2022 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search