DB/SkillLine

From wowdev
Jump to navigation Jump to search

0.5.3.3368

struct SkillLineRec {
  uint32_t m_ID;
  uint32_t m_raceMask;
  uint32_t m_classMask;
  uint32_t m_excludeRace;
  uint32_t m_excludeClass;
  uint32_t m_categoryID;
  uint32_t m_skillType;   // 0: Class, 1: Specialization, 2: Racial, 3: Primary Profession (Talent Tree), 4: Secondary Profession
  uint32_t m_minCharLevel;
  uint32_t m_maxRank;
  uint32_t m_abandonable;
  langstringref m_displayName_lang;
};

1.12.1.5875

struct SkillLineRec {
  uint32_t m_ID;
  uint32_t m_categoryID;
  uint32_t m_skillCostsID;
  langstringref m_displayName_lang;
  langstringref m_description_lang;
  uint32_t m_spellIconID;
};

Structure

Column	Field 				Type 
1 	ID 				Integer 	
2 	iRefID_SkillLineCategory 	Integer 	
3 	skillCostID 			Integer 	iRefID somewhere. spellcost? too lazy right now. 
4	sRefName 			String + Loc	
5 	description 			String + Loc 
6 	iRefID_SpellIcon	 	Integer 
7 	verb 				String + Loc 	
8 	canLink 			Integer 		prof. with recipes
struct SkillLineEntry // sizeof(0x20)
{
   m_ID; // +0x0, size 0x4, type 0
   m_categoryID; // +0x4, size 0x4, type 0
   m_skillCostsID; // +0x8, size 0x4, type 0
   langstringref m_displayName_lang; // +0xC, size 0x4, type 2
   langstringref m_description_lang; // +0x10, size 0x4, type 2
   m_spellIconID; // +0x14, size 0x4, type 0
   langstringref m_alternateVerb_lang; // +0x18, size 0x4, type 2
   m_canLink; // +0x1C, size 0x4, type 0
};

6.0.1.18179

struct SkillLineRec {
  uint32_t m_ID;
  uint32_t m_categoryID;
  langstringref m_displayName_lang;
  langstringref m_description_lang;
  uint32_t m_spellIconID;
  langstringref m_alternateVerb_lang;
  uint32_t m_canLink;
  uint32_t m_parentSkillLineID;
  uint32_t m_flags;
};

Categories

Note the alpha categories are not defined and therefore maybe incorrect. The others are records from in DB/SkillLineCategory

enum SkillCategory
{
   #if ≤ PreVanilla (0.5.5.3494) 
    SKILL_CATEGORY_PASSIVE            = 1,    // language and riding
    SKILL_CATEGORY_SECONDARY_SKILL    = 2,    // skills that increase on use i.e. axes, unarmed
    SKILL_CATEGORY_PRIMARY_SKILL      = 3,    // skills that are increased with skill points (skill points were awarded upon levelling along with talent points)
    SKILL_CATEGORY_CLASS              = 4,    // racials, pet talents
   #else
    SKILL_CATEGORY_ATTRIBUTES         = 5,
    SKILL_CATEGORY_WEAPON             = 6,
    SKILL_CATEGORY_CLASS              = 7,
    SKILL_CATEGORY_ARMOR              = 8,
    SKILL_CATEGORY_SECONDARY          = 9,    // secondary professions
    SKILL_CATEGORY_LANGUAGES          = 10,
    SKILL_CATEGORY_PROFESSION         = 11,   // primary professions
    SKILL_CATEGORY_GENERIC            = 12
   #end
};