WoWInterface

WoWInterface (https://www.wowinterface.com/forums/index.php)
-   PTR API and Graphics Changes (https://www.wowinterface.com/forums/forumdisplay.php?f=175)
-   -   Missing Frames, Events and Functions in Battle For Azeroth (https://www.wowinterface.com/forums/showthread.php?t=56163)

Xrystal 04-20-18 08:01 AM

Missing Frames, Events and Functions in Battle For Azeroth
 
Granted this is from a quick nUI test, but I had got it working for Legion Beta, so assume these were changed in Battle For Azeroth. nUI on Login resulted in 33 unique error messages, some were these events, others what appeared to be Blizzard functions and the rest nUI functions.

Events:
>Attempt to register unknown event "PLAYER_AURAS_CHANGED"
>Attempt to register unknown event "UNIT_AURA_STATE"
>Attempt to register unknown event "UNIT_SPELLCAST_SPELLMISS"
>Attempt to register unknown event "PARTY_MEMBERS_CHANGED"
>Attempt to register unknown event "UNIT_COMBO_POINTS"
>Attempt to register unknown event "UNIT_PVP_UPDATE"
>Attempt to register unknown event "RUNE_TYPE_UPDATE"
>Attempt to register unknown event "UPDATE_WORLD_STATES"

Functions (assumed Blizzard Functions not nUI) :
>attempt to index global 'BattlefieldMinimap' (a nil value)
>attempt to call upvalue 'GetPlayerMapPosition' (a nil value)

Frames (assumed Blizzard Frames not nUI) :
>Couldn't find inherited node: SecureFrame


This is an event that flagged up as missing when testing my mage portals addon
>Attempt to register unknown event "PARTY_CONVERTED_TO_RAID"


These came up while logging in with Titan Panel ( and its built in modules activated ) so I could test my Alt ILevel Addon
>Attempt to register unknown event "MINIMAP_ZONE_CHANGED"
>Attempt to register unknown event "PARTY_MEMBERS_CHANGED" ---- Same as above
>attempt to index global 'WorldStateAlwaysUpFrame' (a nil value)

And my Alt ILevel addon came up with this one
>Attempt to register unknown event "PLAYER_AVG_ITEM_LEVEL_READY"

bsmorgan 04-20-18 08:54 AM

Add events that can't be registered for:
  • TRADE_SKILL_FILTER_UPDATE
  • SPELL_NAME_UPDATE (although this one never fired in a released version)

Fizzlemizz 04-20-18 03:48 PM

It looks like they've taken the rank returns out of functions like UnitBuff, UnitDebuff, UnitCastingInfo, UnitChannelInfo.

Aftermathhqt 04-20-18 04:57 PM

  • GetPetActionInfo -- 1 arg removed
  • KNOWN_CURRENCY_TYPES_UPDATE -- Removed?
  • PET_BAR_HIDE -- Removed?
  • UNIT_POWER > UNIT_POWER_UPDATE

Zensunim 04-20-18 08:15 PM

COMBAT_LOG_EVENT_UNFILTERED seems to be returning nothing back.

Looks like you have to use CombatLogGetCurrentEventInfo() instead.

Fizzlemizz 04-20-18 10:49 PM

More information

Voxxel 04-21-18 06:01 AM

Does anyone know what's the BfA replacement for "QuestLogQuests_GetTitleButton" function?

VincentSDSH 04-21-18 10:25 AM

Are the documentation .lua files up to date? I ask because they document several functions that, when called, don't seem to exist.

And anyone know of an up-to-date Removed/Name_Changed/Similar API comparison? The map/location related ones are killing me atm.

Xrystal 04-21-18 02:07 PM

Quote:

Originally Posted by VincentSDSH (Post 327632)
Are the documentation .lua files up to date? I ask because they document several functions that, when called, don't seem to exist.

And anyone know of an up-to-date Removed/Name_Changed/Similar API comparison? The map/location related ones are killing me atm.

I think Ellypse's wow-ui-source files on github have been updated 2 days ago, coinciding with the last update.

https://github.com/Ellypse/wow-ui-source/branches

And the link Fizzlemizz posted has some additional notes on what they have found to be changed.

Comparing the same files between versions will hopefully highlight event and function name changes.

Xrystal 04-21-18 02:27 PM

Quote:

Originally Posted by Voxxel (Post 327622)
Does anyone know what's the BfA replacement for "QuestLogQuests_GetTitleButton" function?

It appears they changed how the Quest Buttons are created. There is now the following function that looks to be the nearest to what the old one did and more.

Code:

function QuestLogQuests_AddQuestButton(prevButton, questLogIndex, poiTable, title, level, suggestedGroup, isHeader, isCollapsed, isComplete, frequency, questID, startEvent, displayQuestID, isOnMap, hasLocalPOI, isTask, isBounty, isStory, isHidden, isScaling, layoutIndex)
It takes up lines 488 to 660 and looks to be what you have to use now ..


Here is a portion of the Legion QuestMapFrame.lua file that has the function you are talking about.

Code:

        if (not headerCollapsed) then
                local totalHeight = 8;
                titleIndex = titleIndex + 1;
                button = QuestLogQuests_GetTitleButton(titleIndex);
                button.questID = questID;
                ....... A ton of lines setting the button up ....
                prevButton = button;
      end

And this is the same part in the BfA version of the same file.

Code:

if (not headerCollapsed or C_CampaignInfo.IsCampaignQuest(questID)) then
        local layoutKey = "Other";
        if (C_CampaignInfo.IsCampaignQuest(questID)) then
                layoutKey = "Campaign";
        end
        prevButton = QuestLogQuests_AddQuestButton(prevButton, questLogIndex, poiTable, title, level,
      suggestedGroup, isHeader, isCollapsed, isComplete, frequency, questID, startEvent, displayQuestID,
      isOnMap, hasLocalPOI, isTask, isBounty, isStory, isHidden, isScaling,
      QuestMapFrame:GetManagedLayoutIndex(layoutKey));
end


p3lim 04-22-18 11:54 AM

oUF will have a PR dedicated to the expansion, containing unitframe-related changes:
https://github.com/oUF-wow/oUF/pull/434

Voxxel 04-22-18 03:40 PM

Thank you, Xrystal!

Ellypse 04-24-18 04:05 AM

Thank you Fizzlemizz and Xrystal for linking to my observations and my GitHub :D

Please note that I have also started updating the API changes article on Wowpedia with the things I am able to test and confirm in-game. If you can, please consider participating in this article to gather all the changes.

thomasjohnshannon 04-24-18 02:12 PM

Blue post with changes went up today.

JDoubleU00 04-24-18 03:58 PM

Quote:

Originally Posted by thomasjohnshannon (Post 327686)
Blue post with changes went up today.

Wow (no pun intended), would it be easier to list what isn't changing?

Nevcairiel 04-24-18 05:03 PM

The changes are really not that bad. Most come down to removing the spell rank from all sorts of places and in some cases also going away from spell name in favor of spellID. All of those are relatively easy to fix.

The Map is the area which really breaks a lot, though.

Vrul 04-24-18 06:33 PM

Quote:

Originally Posted by Nevcairiel (Post 327688)
in some cases also going away from spell name in favor of spellID

Does anyone know if you can /cast a spell with a spellID instead of a spellName with Beta?

Also, could anyone tell me if IsHarmfulSpell and IsHelpfulSpell take spellID again or still just spellName?

Xrystal 04-24-18 08:58 PM

Quote:

Originally Posted by Vrul (Post 327691)
Does anyone know if you can /cast a spell with a spellID instead of a spellName with Beta?

Also, could anyone tell me if IsHarmfulSpell and IsHelpfulSpell take spellID again or still just spellName?

Looks like you still have to use SpellName to get access to that information at the moment. Just tested it.

What is interesting is that the following code block
Code:

    GameTooltip:AddLine(IsHarmfulSpell(spellName) or "Helpful",1.0,1.0,1.0)
    GameTooltip:AddLine(IsHelpfulSpell(spellName) or "Harmful",1.0,1.0,1.0)

Resulted in Helpful in all cases except for the spells I didn't know/have in my spellbook, or were party specific spells - AKA Portals. Those returned both settings.

sezz 04-25-18 08:33 AM

RegisterUnitEvent seems bugged, simple test code:

Lua Code:
  1. /run local f = CreateFrame("Frame");f:RegisterUnitEvent("UNIT_POWER_BAR_HIDE", "player");print(f:IsEventRegistered("UNIT_POWER_BAR_HIDE"));

IsEventRegistered return values on Live: true player
IsEventRegistered return values on Beta (26491): true

I don't know if it has been like this in the previous builds aswell, just stumbled upon it when updating some addons.

Rilgamon 04-25-18 09:25 AM

Is an invite required? I just installed beta and logged in.

Fizzlemizz 04-25-18 09:26 AM

In the latest export, Blizzard is still using:
Code:

elseif ( event == "UNIT_POWER_BAR_HIDE" ) then
        if ( arg1 == self.unit ) then
                UnitPowerBarAlt_UpdateAll(self);
        end


thomasjohnshannon 04-25-18 10:12 AM

Quote:

Originally Posted by Rilgamon (Post 327707)
Is an invite required? I just installed beta and logged in.

Yeah you only have the option of installing beta if your account has been flagged for it.

zork 04-27-18 06:01 AM

Got my invite yesterday too. Eager to test my addons against the beta. Hopefully not all of them are bricked?! >_<

zork 04-30-18 09:14 AM

My Vignette addon stopped working. The event VIGNETTE_ADDED is nowhere to be found. Is there a new system for rare mob icons on the minimap? If so how can it be accessed?

Lua Code:
  1. local function OnVignetteAdded(self,event,id)
  2.   if not id then return end
  3.   self.vignettes = self.vignettes or {}
  4.   if self.vignettes[id] then return end
  5.   local x, y, name, icon = C_Vignettes.GetVignetteInfoFromInstanceID(id)
  6.   local left, right, top, bottom = GetObjectIconTextureCoords(icon)
  7.   PlaySoundFile("Sound\\Interface\\RaidWarning.ogg")
  8.   local str = "|TInterface\\MINIMAP\\ObjectIconsAtlas:0:0:0:0:256:256:"..(left*256)..":"..(right*256)..":"..(top*256)..":"..(bottom*256).."|t"
  9.   RaidNotice_AddMessage(RaidWarningFrame, str..name.." spotted!", ChatTypeInfo["RAID_WARNING"])
  10.   print(str..name,"spotted!")
  11.   self.vignettes[id] = true
  12. end
  13.  
  14. --eventHandler
  15. local eventHandler = CreateFrame("Frame")
  16. eventHandler:RegisterEvent("VIGNETTE_ADDED")
  17. eventHandler:SetScript("OnEvent", OnVignetteAdded)

sezz 04-30-18 11:54 AM

Quote:

Originally Posted by zork (Post 327828)
My Vignette addon stopped working. The event VIGNETTE_ADDED is nowhere to be found. Is there a new system for rare mob icons on the minimap? If so how can it be accessed?

the new event is VIGNETTE_MINIMAP_UPDATED vignetteGUID, onMinimap
C_VignetteInfo.GetVignetteInfo(vignetteGUID) returns a table containing name and other stuff

zork 04-30-18 12:39 PM

Thanks that worked. I cannot find a replacement for the icon though. I had to disable the icon for now. The name is working fine but I seem to not find any information on the texture.

thomasjohnshannon 04-30-18 02:46 PM

Quote:

Originally Posted by zork (Post 327832)
Thanks that worked. I cannot find a replacement for the icon though. I had to disable the icon for now. The name is working fine but I seem to not find any information on the texture.

The api says this is the table structure.

Code:

Name = "VignetteInfo",
Type = "Structure",
Fields =
{
        { Name = "vignetteGUID", Type = "string", Nilable = false },
        { Name = "name", Type = "string", Nilable = false },
        { Name = "isDead", Type = "bool", Nilable = false },
        { Name = "onWorldMap", Type = "bool", Nilable = false },
        { Name = "onMinimap", Type = "bool", Nilable = false },
        { Name = "isUnique", Type = "bool", Nilable = false },
        { Name = "inFogOfWar", Type = "bool", Nilable = false },
        { Name = "atlasName", Type = "string", Nilable = false },
        { Name = "hasTooltip", Type = "bool", Nilable = false },
        { Name = "vignetteID", Type = "number", Nilable = false },
},

Can you use the atlasName to get the icon? I would check but I haven't gotten an invite yet.

zork 04-30-18 04:48 PM

Thanks. The missing link was GetAtlasInfo() which is not described anywhere.

It is working now.

Lua Code:
  1. local function OnVignetteAdded(self,event,id)
  2.   if not id then return end
  3.   self.vignettes = self.vignettes or {}
  4.   if self.vignettes[id] then return end
  5.   local vignetteInfo = C_VignetteInfo.GetVignetteInfo(id)
  6.   if not vignetteInfo then return end
  7.   local _, width, height, txLeft, txRight, txTop, txBottom = GetAtlasInfo(vignetteInfo.atlasName)
  8.   PlaySoundFile("Sound\\Interface\\RaidWarning.ogg")
  9.   local str = "|TInterface\\MINIMAP\\ObjectIconsAtlas:0:0:0:0:256:256:"..(txLeft*256)..":"..(txRight*256)..":"..(txTop*256)..":"..(txBottom*256).."|t"
  10.   RaidNotice_AddMessage(RaidWarningFrame, str.." "..vignetteInfo.name.." spotted!", ChatTypeInfo["RAID_WARNING"])
  11.   print(str.." "..vignetteInfo.name,"spotted!")
  12.   self.vignettes[id] = true
  13. end
  14.  
  15. -----------------------------
  16. -- Init
  17. -----------------------------
  18.  
  19. --eventHandler
  20. local eventHandler = CreateFrame("Frame")
  21. eventHandler:RegisterEvent("VIGNETTE_MINIMAP_UPDATED")
  22. eventHandler:SetScript("OnEvent", OnVignetteAdded)

Btw here is sth I found in the Blizzard_TutorialLogic.lua. It is a atlas to string texture converter if I see that right. It might be able to upgrade my current solution.

Lua Code:
  1. function TutorialHelper:FormatAtlasString(str)
  2.     return (string.gsub(str, "{Atlas|([%w_]+):?(%d*)}", function(atlasName, size)
  3.                 size = tonumber(size) or 0;
  4.  
  5.                 local filename, width, height, txLeft, txRight, txTop, txBottom = GetAtlasInfo(atlasName);
  6.  
  7.                 if (not filename) then return; end
  8.  
  9.                 local atlasWidth = width / (txRight - txLeft);
  10.                 local atlasHeight = height / (txBottom - txTop);
  11.  
  12.                 local pxLeft    = atlasWidth    * txLeft;
  13.                 local pxRight   = atlasWidth    * txRight;
  14.                 local pxTop     = atlasHeight   * txTop;
  15.                 local pxBottom  = atlasHeight   * txBottom;
  16.  
  17.                 return string.format("|T%s:%d:%d:0:0:%d:%d:%d:%d:%d:%d|t", filename, size, size, atlasWidth, atlasHeight, pxLeft, pxRight, pxTop, pxBottom);
  18.             end));
  19. end

Nice that actually was helpful. Instead of the texture path hard coded you can use the texture file id instead. Got it working now.

Xrystal 05-07-18 04:00 PM

C_Map api in BfA
 
Updated 2nd May

Code:

api C_Map list
MapUI

functions:
string name = C_Map.GetAreaInfo(areaID)
number uiMapID = C_Map.GetBestMapForUnit(unitToken)
number uiMapID = C_Map.GetCurrentMapID()
string atlasName = C_Map.GetMapArtBackgroundAtlas(uiMapID)
MapCanvasPosition position = C_Map.GetMapArtHelpTextPosition(uiMapID)
table textures { numbers values} = C_Map.GetMapArtLayerTextures(uiMapID, layerIndex)
table layerInfo { uiMapLayerInfo values } C_Map.GetMapArtLayers(uiMapID)
table info {uiMapDetails values } C_Map.GetMapChildrenInfo(uiMapID, opt mapType, opt allDescendants)
bool hideIcons = C_Map.GetMapDisplayInfo(uiMapID)
number uiMapGroupID = C_Map.GetMapGroupID(uiMapID)
table info {uiMapGroupMemberInfo values } = C_Map.GetMapGroupMembersInfo(uiMapGroupID)
fileDataID, texturePercentageX, texturePercentageY, textureX, textureY, scrollChildX, scrollChildY = C_Map.GetMapHighlightInfoAtPosition(uiMapID, x,y)
uiMapDetails info = C_Map.GetMapInfo(uiMapID)
uiMapDetails info = C_Map.GetMapInfoAtPosition(uiMapID,x,y)
playerMinLevel, playerMaxLevel, petMinLevel, petMaxLevel = C_Map.GetMapLevels(uiMapID)
minX, maxX, minY, maxY = C_Map.GetMapRectOnMap(uiMapID,topUIMapID)
C_Map.RequestPreloadMap(uiMapID)
C_Map.SetMap(uiMapID)

enumerations:
Enum.MapCanvasPosition { None, BottomLeft, BottomRight, TopLeft, TopRight }
Enum.UIMapType { Cosmic, World, Continent, Zone, Dungeon, Micro, Orphan }
Enum.UIMapSystem { World, Taxi, Adventure }

structures:
UIMapLayerInfo { layerWidth, layerHeight, tileWidth, tileHeight, minScale, maxScale, additionalZoomSteps }
UIMapDetails { mapID, name, mapType, parentMapID }
UIMapGroupMemberInfo { mapID, relativeHeightIndex, name }


Rainrider 05-20-18 08:09 PM

RegisterUnitEvent is still bugged.

Frame:RegisterUnitEvent(event, unit) behaves as if Frame:RegisterEvent(event) was called - it register the event for all units. Submitted this, but since it was reported a month ago, maybe this needs a push

Xrystal 05-21-18 12:16 PM

UNIT_SPELLCAST_SUCCEEDED changes
 
The UNIT_SPELLCAST_SUCCEEDED event now returns 3 values:

1. unit
2. code string - see below for an example
3. spell id

Teleport Dalaran (Northrend) resulted in the following

1. player
2. Cast-3-2084-571-11759-53140-000503097C
3. 53140

Portal Dalaran (Northrend) resulted in the following

1. player
2. Cast-3-2084-571-11759-53142-0000830AEF
3. 53142

After doing a few tests only the last two values changed, the spell ID depending on the spell cast and the last value intermittently and may be the same on different spells cast close together so could be a timestamp of sorts.

Edit: Correction, it appears that last value changes per cast, with multiples sometimes appearing on a single button click. Looks like validating argument 2 against the previous to confirm if it is a repeat or not may be required

Edit2: Correction again ... forgot that my code was doing the event test on several buttons with each checking its relevance rofl. Only 1 event per spell cast

aallkkaa 05-24-18 07:40 AM

Quote:

Originally Posted by Xrystal (Post 327692)
What is interesting is that the following code block
Code:

    GameTooltip:AddLine(IsHarmfulSpell(spellName) or "Helpful",1.0,1.0,1.0)
    GameTooltip:AddLine(IsHelpfulSpell(spellName) or "Harmful",1.0,1.0,1.0)

Resulted in Helpful in all cases except for the spells I didn't know/have in my spellbook, or were party specific spells - AKA Portals. Those returned both settings.

The logic in that block is literally reversed, but should not - i.e. "noharm" does not equate "help" nor vice versa.
Try this instead:
Code:

    GameTooltip:AddLine(IsHarmfulSpell(spellName) and "Harmful",1.0,1.0,1.0)
    GameTooltip:AddLine(IsHelpfulSpell(spellName) and "Helpful",1.0,1.0,1.0)


Xrystal 05-24-18 11:04 AM

You are right of course .. can't think what I was doing there... but seeing as it was more the case of testing the results of the function and avoiding a nil it might explain the results I mentioned rofl. Thanks for pointing it out, in case someone decided to use it :)

aallkkaa 05-24-18 11:01 PM

Yeah, I didn't think of it as a mere test for whether the function is present or not - though the thread title does imply that... lol

Still, getting "Helpful" as the result for a spell known as harmful being tested against IsHarmfulSpell might mean either that the function were present but bugged or that the function weren't there at all. Then again, the later case would also raise a Lua error, thus alerting you to the function being amiss, so...

Well, at least, like you said, it might prevent false results "in case someone decided to use" the code. :D

sezz 05-31-18 09:51 AM

RegisterUnitEvent is fixed :banana:
GetFramesRegisteredForEvent is completely broken and always returns nil :(

Edit: GetFramesRegisteredForEvent fixed aswell.

Voxxel 06-12-18 04:19 AM

Does anyone know how to get the Map IDs in BfA? The "/dump GetCurrentMapAreaID()" doesn't seem to work anymore.

Rilgamon 06-12-18 05:02 AM

Take a look a little up ...

Quote:

number uiMapID = C_Map.GetBestMapForUnit(unitToken)
number uiMapID = C_Map.GetCurrentMapID()

Voxxel 06-12-18 06:40 AM

I found that I'm just noob enough to convert it into a working script. :p Would you elaborate please?

Code:

/run print(C_Map.GetCurrentMapID())
doesn't return anything for me, no idea why.

I heard somewhere the map ID for Tiragarde Sound is supposed to be 895. And when doing
Code:

/run for k, v in pairs(C_Map.GetMapInfo(895)) do print(k, v) end
it returns
Code:

mapType 3
mapID 895
name Tiragarde Sound
parentMapID 876

My problem is it doesn't seem to do anything with mapIDs used by wowhead, wowdb and other dataminer sites. I'm looking for a way to print the current map ID (where my character is) used by dataminer sites. For example, Tiragarde Sound is 8567 (same as the zone ID). But what is it for Boralus map where there's no standalone zone?

Is there a way to get information about those map IDs?

Nimhfree 06-12-18 06:25 PM

The various sites do not use the new mapIds that the new Blizzard API returns. If you need to be able to use a value from in game and refer to values various sites use, you will have to come up with a mapping for them, and have your addon use that mapping.

Using the new Blizzard map API you can get access to every map in the system very easily. However, mapping those to external sites is not easy.

I would advise everyone to use the new Blizzard mapIDs for all maps.

Xrystal 06-12-18 06:46 PM

That number might be a reference to the map image they display on their website.

It may not have an in game api equivalent if it was retrieved via data mining. Maybe contact wowhead to see where they get their numbers from ( they may have generated their own set of numbers for their site after all).

Using the various available map functions I haven't seen any number remotely similar.


However, I can't remember what zone related functions are available pre BFA. Maybe the old zone IDs match the ones on the website but the new ones are just followed on to make the site consistent due to the big map api change.


Edit ... Or as Nimh says :)

Voxxel 06-13-18 01:35 PM

I found an old thread of mine asking the same question:

http://www.wowinterface.com/forums/s...ad.php?t=54172

... answered by many nice people. Semlar gave a working solution (4th post) to print out the map IDs used by wowdb/wowhead/others so the numbers I'm looking for were in the game once:

Code:

/script print(GetAreaMapInfo(GetCurrentMapAreaID()))
It's second return is / was the number that dataminer sites use. However, I can't get it to return anything in BfA beta. If this script could be "converted" to BfA-compatible maybe I can get the numbers?

Nimhfree 06-13-18 05:49 PM

There is a mapping from the old map/dungeon levels to the new mapIds, which can be found in a BfA system if you dump the Blizzard code at AddOns/Blizzard_Deprecated/UIMapIDToWorldMapAreaID.lua

If you determine the mapping from the map/dungeon levels to the values used on the sites in a live system, and then use this BfA information, you can then make your mapping from the new BfA mapIDs to the values used on the sites. Not fun, but I bet when you are done if you make it available others may appreciate the work you put into it.

Voxxel 06-14-18 12:56 AM

Since 67.66% of your post seems chinese to me, it won't be me who reaps vast rewards here. :D

Xrystal 06-14-18 07:27 AM

Quote:

Originally Posted by Voxxel (Post 328324)
Since 67.66% of your post seems chinese to me, it won't be me who reaps vast rewards here. :D

Is that worse than being all greek ? :)

Anyhow .. I'll try and break that post down to a chinglish level :P

This link explains how to export the blizzard art and code to your hard drive, in case you hadn't done this in a long while, it helped me.
https://wow.gamepedia.com/Viewing_Bl...interface_code

Once you have done that you should find the following file in your respective Wow folder, here's mine.
G:\Blizzard\World of Warcraft Beta\BlizzardInterfaceCode\Interface\AddOns\Blizzard_Deprecated

The file is very long which is why it wasn't posted in it's entirety but here are the first few lines to show you what was meant. However, a quick search does not reveal the number 8567 or any 4 digit number starting with 856x.

Code:

-- This is for the 8.x map transition.
-- Previously maps were represented by either by a pair of WorldMapAreaID and DungeonFloor, or a DungeonMapID.
-- In the new system all maps are represented by a UiMapID.
-- The CSV formatted comment below holds mapping between the two systems at the time of transition.
-- This file will be removed in a future patch.


--[[
UiMapID,WorldMapAreaID,DungeonMapID,DungeonFloor
1,4,,0
2,4,598,8
3,4,602,10
4,4,603,11
5,4,604,12
6,4,657,19
7,9,,0
8,9,570,6
9,9,575,7
10,11,,0
11,11,690,20
12,13,,0
13,14,,0
14,16,,0
15,17,,0
16,17,695,18
17,19,,0
18,20,,0
19,20,592,13
20,20,976,25

The next suggestion was for you to use this list to create a lookup function of the old id to the new id and vice versa so that you can use Blizzard functionality to reveal the old zone equivalents that the websites appear to still be using.

I hope that makes Nimh's posting a bit more clearer.

dssd 06-14-18 01:52 PM

There's some confusion between UI maps and maps. UI maps are what you view when you press M.

Maps (or sometimes seen in Blizzard's code as continentID) are the physical areas that we run around in. A UI map is a view onto one or more physical maps. It doesn't make sense to say that a creature spawns in a UI map.

The deprecated table is a mapping between the old UI map system and the new UI map system. It won't help much if you're looking for physical map data. There's the function C_Map.GetWorldPosFromMapPos(uiMapID, mapPosition) -> continentID, worldPosition which can help you convert between the two.

Nimhfree 06-14-18 06:48 PM

Here is an example that hopefully helps.

On a live server if you are in Stormwind and you do:

/dump GetCurrentMapAreaID()

you get:

[1]=301,
[2]=false

Blizzard indicates that the mapId is 301 for Stormwind City.

If you do:

/dump GetAreaMapInfo(301)

you get a bunch of stuff which includes:

[2]=1519

This 1519 is the zone value that is used on a site like wowhead for Stormwind City.

If you look in the UIMapIDToWorldMapAreaID.lua file dumped from a BfA beta system you will see a line:

84,301,,0

This means that BfA beta considers the mapID 84 to be the same that live called 301.

Now you have the three pieces of information you wanted:

Live mapID: 301
Live zoneID: 1519
BfA mapID: 84

You can create any mapping you want, e.g., you can say that BfA map 84 really is the same as zone 1519 on wowhead.

Now the BfA map transition is a bit of a pain since we tend to store map data using its old mapID or possibly a combination of mapID and dungeon level. So if we are to transition old map data to new we need to use that UIMapIDToWorldMapAreaID.lua to change values.

However, the new BfA map stuff is really useful for at least two reasons:

(1) There is no longer a dungeon level concept. Each map has its own ID. Therefore, if you have a dungeon with three levels, you have three unique map IDs.

(2) A character is in more than one map at the same time. For example, all at the same time a character can be in a dungeon, in a city, in a zone, in a continent, on a world. On each map the coordinates will be different. When one looks at a map at any level one can easily see where the character is (assuming the map shows the character).

arith 06-15-18 02:58 AM

The following event is also no longer valid:
  • TRADE_CLOSE

thomasjohnshannon 06-15-18 05:13 PM

Quote:

Originally Posted by arith (Post 328349)
The following event is also no longer valid:
  • TRADE_CLOSE

Just add a D to it. TRADE_CLOSED

kaytotes 06-16-18 06:21 PM

Code:

HasSoulstone()
Appears to be gone. Not sure of the work around yet.

Fizzlemizz 06-16-18 07:56 PM

From the 7.3.5 Deprecated.lua
Code:

-- Use C_DeathInfo.GetSelfResurrectOptions instead
function HasSoulstone()
        local options = GetSortedSelfResurrectOptions();
        return options and options[1] and options[1].name;
end


kaytotes 06-16-18 10:14 PM

Where is that deprecated.lua?

Fizzlemizz 06-16-18 10:27 PM

After you export the UI code files

[WoW]\BlizzardInterfaceCode\Interface\AddOns\Blizzard_Deprecated

See the notes in the .toc file.

AnrDaemon 09-19-18 02:46 PM

Is there a replacement for PARTY_CONVERTED_TO_RAID ?
My google-foo seems to be inadequate.

Thrumbar 09-21-18 10:08 PM

Only thing I could find is..

https://www.townlong-yak.com/framexm...umentation.lua

Name = "GroupRosterUpdate",
Type = "Event",
LiteralName = "GROUP_ROSTER_UPDATE"

Name = "InstanceGroupSizeChanged",
Type = "Event",
LiteralName = "INSTANCE_GROUP_SIZE_CHANGED",

Just to list 2...

AnrDaemon 09-22-18 04:04 PM

Thank you.
Seems like I'm in for a lot of wrapping.


All times are GMT -6. The time now is 12:12 AM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2004 - 2022 MMOUI