Thread: WOD/Pre-patch
View Single Post
10-30-14, 09:11 AM   #136
Mordralis
An Aku'mai Servant
 
Mordralis's Avatar
Join Date: Sep 2012
Posts: 33
Just A Suggestion?

Originally Posted by Rythal View Post
I'll stick to this thread instead of making a new one...

A short explanation of what's being worked on currently:

The old Carbonite had 2 Zone tables. One followed blizzards zoneID's (4 = Durotar, 9 = Mulgore etc etc),
and One used it's own numbering system (1000 - 1999 was Eastern Kingdoms, 2000 - 2999 was Kalimdor, 3000-3999 was Outlands etc etc)

The entire mapping system relied on and was using the 1000,2000 system while guides locations quest tracking etc was using the zoneID system. The two were tied together strictly by the zone name. So during the table initialization, it looked at zone 1001 saw Durotar was it's name and created links between 1001 and 4 in various tables.

With the new continent coming, that entire system no longer works, as it can't tell Burning Crusade Shadowmoon Valley from WoD Shadowmoon Valley. So I am working on converting the 1000,2000 system over to zoneID's.

This is also leading to some problems on it's own, as things like Battlegrounds were placed in 9000-9999 and through out the entire mapping system it would check if you were in a battleground by seeing if carbonites internal ID was 9001 etc, so I need to find new ways to check for instances or battlegrounds.
I've done extensive programming over the last 30 years, but it has been in databases, like Access, Oracle, etc...really different from this type of programming. However, I've had scenarios where queries were based on a numbering system, similar to that you describe, and extensive links, joins and unions hat corresponded to that system.
Some would say that it would be easier (in database programming) to just scrap it and remap the entire numbering system. However, in doing that, you have to create a whole new set of rules in addition to a restructure that throws away the old system as being irrelevant - and in so doing you lose a mapping history trail, since in essence you are redesigning the entire database. To relate in WoW terms, although you remap to show the new areas, you lose the historical trail of some of the older points.
Would it not be possible in these instances to utilize an additional number set that would identify the new content, retaining the original number set relationships? If in the past the number sets were 1000-1999, 2000-2999, 3000-3999, etc, maybe use an additional number set of 0000-0999?
It would still be a lot of work, tying the relationships in, building the passthroughs, unions, etc...but much less work than revamping the entire system.
Anyway, again, just a suggestion from a database programmer.
I have been using Carbonite since 2009, before you acquired it from the original developers. It is by far and without exception the best module for what it does. I feel totally lost and can no longer get the value of mapping with Blizz's mapping system, or with any other addon I've been able to find to date. Your dedication and commitment to the continual development of Carbonite is appreciated!