Wowpedia
Advertisement
Wowpedia
240,485
pages
Townlong-Yak Globe.png  Wowprogramming.png GetSpecializationInfo Shadowlands-Icon-Inline.png + 5.0.4
Townlong-Yak Globe.png  Wowprogramming.png GetSpecializationInfoByID Shadowlands-Icon-Inline.png + 5.0.4
Townlong-Yak Globe.png GetSpecializationInfoForClassID Shadowlands-Icon-Inline.png + 5.0.4
Townlong-Yak Globe.png GetSpecializationInfoForSpecID Shadowlands-Icon-Inline.png + 6.2.0

Returns information about the specified specialization.

id, name, description, icon, role, primaryStat              = GetSpecializationInfo(specIndex [, isInspect, isPet, inspectTarget, sex])
id, name, description, icon, role, classFile, className     = GetSpecializationInfoByID(specID)
id, name, description, icon, role, isRecommended, isAllowed = GetSpecializationInfoForClassID(classID, specIndex)
id, name, description, icon, role, isRecommended, isAllowed = GetSpecializationInfoForSpecID(specID [, sex])

Arguments

GetSpecializationInfo

specIndex 
number - Index of the specialization to query, ascending from 1 to GetNumSpecializations().
isInspect 
boolean? - Whether to query specialization information for the inspected unit. Does not actually seem to work, see #Details.
isPet 
boolean? - Whether to query specialization information for the player's pet.
inspectTarget 
unk? - Unknown, not used in FrameXML.
sex 
number? - Player's sex as returned by UnitSex()

GetSpecializationInfoByID

specID 
number : SpecializationID

GetSpecializationInfoForClassID

classID 
number : ClassId
specIndex 
number?

GetSpecializationInfoForSpecID

specID 
number : SpecializationID
sex 
number?

Returns

id 
number : SpecializationID
name 
string - Specialization name, e.g. "Balance".
description 
string - Description of the specialization, e.g. "Can take on the form of a powerful Moonkin, balancing the power of Arcane and Nature magic to destroy enemies at a distance."
icon 
number : FileID
role 
string - The intended role in a party: "DAMAGER", "TANK", "HEALER"

GetSpecializationInfo

primaryStat 
number- The primary stat as listed in SPEC_STAT_STRINGS[1]: 1=Strength, 2=Agility, 4=Intellect

GetSpecializationInfoByID

classFile 
string - Locale-independent class name, e.g. "PRIEST"
className 
string - Localized class name, e.g. "Priest"

GetSpecializationInfoForClassID/SpecID

isRecommended 
boolean - If this specialization is recommended for beginners to the class.
isAllowed
boolean - If the player is allowed to use this specialization.

Details

  • Despite the argument names, GetSpecializationInfo() does not appear to return valid information for inspected units. FrameXML uses GetInspectSpecialization() to retrieve a specialization ID instead.
    Warning: As of 2012/07/12, this seems to be quite often buggy: The return of GetInspectSpecialization() should be a number less than 500, but sometimes is far greater and not interpretable. FrameXML is therefore 'validating' the value by calling GetSpecializationRoleByID(), and only if that returns a non-nil value, it decodes the number with GetSpecializationInfoByID().

Values

Linked from: SpecializationID
Class Specialization 1 Specialization 2 Specialization 3 Specialization 4 Specialization 5
ID Name ID Name ID Name ID Name ID Name
Death Knight 250 Blood 251 Frost 252 Unholy   1455 Initial
Demon Hunter 577 Havoc 581 Vengeance       1456 Initial
Druid 102 Balance 103 Feral 104 Guardian 105 Restoration 1447 Initial
Hunter 253 Beast Mastery 254 Marksmanship 255 Survival   1448 Initial
Mage 62 Arcane 63 Fire 64 Frost   1449 Initial
Monk 268 Brewmaster 270 Mistweaver 269 Windwalker   1450 Initial
Paladin 65 Holy 66 Protection 70 Retribution   1451 Initial
Priest 256 Discipline 257 Holy 258 Shadow   1452 Initial
Rogue 259 Assassination 260 Outlaw 261 Subtlety   1453 Initial
Shaman 262 Elemental 263 Enhancement 264 Restoration   1444 Initial
Warlock 265 Affliction 266 Demonology 267 Destruction   1454 Initial
Warrior 71 Arms 72 Fury 73 Protection   1446 Initial

Example

GetSpecializationInfo(1)
> 256, "Discipline", "Uses magic to shield allies from taking damage as well as heal their wounds.\r\n\r\nPreferred Weapon: Staff, Wand, Dagger, Mace", 135940, "HEALER", 4

GetSpecializationInfoByID(256)
> 256, "Discipline", "Uses magic to shield allies from taking damage as well as heal their wounds.\r\n\r\nPreferred Weapon: Staff, Wand, Dagger, Mace", 135940, "HEALER", "PRIEST", "Priest"

GetSpecializationInfoForClassID(5, 1)
> 256, "Discipline", "Uses magic to shield allies from taking damage as well as heal their wounds.\r\n\r\nPreferred Weapon: Staff, Wand, Dagger, Mace", 135940, "HEALER", true, false

GetSpecializationInfoForSpecID(256)
> 256, "Discipline", "Uses magic to shield allies from taking damage as well as heal their wounds.\r\n\r\nPreferred Weapon: Staff, Wand, Dagger, Mace", 135940, "HEALER", true, false

Patch changes

  • Legion Patch 7.1.5 / API (2017-01-10): Removed background[†]background
    string - Background texture name; prepend "Interface\TALENTFRAME\" for a valid path
    return value.
  • Warlords of Draenor Patch 6.2.0 / API (2015-06-23): Added GetSpecializationInfoForSpecID()
  • Mists of Pandaria Patch 5.0.4 / API (2012-08-28): Added GetSpecializationInfo(), GetSpecializationInfoByID() and GetSpecializationInfoForClassID(). Replaces GetTalentTabInfo()

References

  1. ^ 2014-10-14, Blizzard_TalentUI.lua, version 6.0.2.19033, near line 220, archived at Townlong-Yak
Advertisement