View Single Post
11-13-12, 11:51 PM   #17
Doskious
A Deviate Faerie Dragon
AddOn Author - Click to view addons
Join Date: Mar 2009
Posts: 14
And I'm back.

Numbers have been crunched, sigmas have been limited, standard deviations have been determined. (Or I shot from the hip twice because the numbers were small enough; given the results, nobody but me can say for certain. ^_^)

So ... the first number in the Carbonite Zone Map data record, that I've been calling "scale" based on commented notations in the code, appears to be precisely derived from the zone map width in yards as taken from semlar's first batch of measurements in yards. (Rythal probably already knew this.) The exact formula is: Scale = ZoneMapWidthInYards/500

Cheered by this corroboration of a fairly simple relation between the Carbonite data and the yardage supplied by semlar, I proceeded to examine the various ways that the two sets could be juxtaposed. After some experimentation, I noted what appeared to be the indication of a ratio-relation between the "approximate" values supplied by Rythal (roughly derived, but good enough for most purposes) for Carbonite's X-axis measure and semlar's indicated x-value for each zone. On a hunch, based on old commented out code in the LUA file, I compared the yardage x-value divided by 5 to the listed Carbonite values. The relation was immediately more apparent, but there appeared to be a uniform offset, which I've determined to be approximately -46.25. The formula, then, to derive Carbonite X-axis measures is: Xmeasure = [(ZoneXcoordInYards)/5] - 46.25

To correct the Y-axis measure, I quickly determined that it was not an identical function. In order to get the Y-axis measure out of the Yardage values, I first obtained a yardage value for what I think of as the Zone Y-Coordinate Offset. This is the distance in yards from the listed Y-Coordinate for the Continent map. This value, divided by 5 again, yielded a similarly clear relation with a uniform offset. The Y-coordinate offset value seems to be approximately 151.2. The formula, then, to derive the Carbonite Y-axis measure is: ([(PandariaYcoordInYards) - (ZoneYcoordInYards)]/5) + 151.2

Note, my analysis ignored the other non-Pandaria numbers and derivations entirely, and I can make no representation or assurance that the methods described above will work as stated for other data sets. (Glancing at the zone data for other expansions, it seems to me that over time a number of different methods have been used to develop this data.) Further, I can offer no explanation as to the significance (if any) of the indicated offset values. I can confirm that, when implemented, the accuracy of the minimap overlay to the underlying detail layer is exceptionally high.

In the interests of providing an easy-to-implement result, I've pasted the full block of Pandaria zone data with the enhanced X,Y coordinates, suitable for copy/pasting into NxMapData.lua, lines 1658 to 1721 (inclusive):

Code:
	[6001] = {
		Name="Dread Wastes",
		10.704166015625,
		-1274.1666, 1203.698633,
		Overlay = "dreadwastes",
		Fish = 525,
	},
	[6002] = {
		Name="Krasarang Wilds",
		9.375001953125,
		-635.8334, 1509.115236,
		Overlay = "krasarang",
		Fish = 525,
	},
	[6003] = {
		Name="Kun-Lai Summit",
		12.516666015625,
		-1014.1666, 363.2820312,
		Overlay = "kunlaisummit",
		Fish = 525,
	},
	[6004] = {
		Name="Shrine of Seven Stars",
		0.1,
		0,0,
		City = True,
	},
	[6005] = {
		Name="Shrine of Two Moons",
		0.1,
		0,0,		
		City = True,
	},
    [6006] = {
		Name="The Jade Forest",
		13.966666015625,
		-336.6666,756.6154296,
		Overlay = "thejadeforest",
		Fish = 525,
	},
	[6007] = {
		Name="The Veiled Stair",
		3.5875,
		-208.75,1149.11543,
		Overlay = "thehiddenpass",
		Fish = 525,
	},
	[6008] = {
		Name="Townlong Steppes",
		11.487498046875,
		-1462.0832,575.3654296,
		Overlay = "townlongwastes",
		Fish = 525,
	},
	[6009] = {
		Name="Vale of Eternal Blossoms",
		5.06666796875,
		-542.5,1097.448633,
		Overlay = "valeofeternalblossoms",
		Fish = 525,
	},
	[6010] = {
		Name="Valley of the Four Winds",
		7.850001953125,
		-582.0834,1267.86543,
		Overlay = "valleyofthefourwinds",
		Fish = 525,
	},