DB/FactionTemplate: Difference between revisions

From wowdev
Jump to navigation Jump to search
Line 38: Line 38:
   uint32_t m_friend[4];
   uint32_t m_friend[4];
  };
  };
===Flags===
{| style="background:#FCFCFC; color:black"
|-
! width="80" | Value
! width="400" | Description
|-
| 0x0800 || eligible for pvp
|-
| 0x1000 || hostile to pvp flagged players i.e. contested guards
|-
| 0x2000 || initially <tt>AtWar</tt>, {{Unverified|hostility cannot be reduced}}
|}
[[Category:DBC]]
[[Category:DBC]]
[[Category:DBC_Alpha]]
[[Category:DBC_Alpha]]

Revision as of 12:36, 3 May 2019

Structure

Column 	Field 		Type 		Notes 
1 	ID 		Integer 	
2 	iRefID_Faction 	Integer 	
3 	Unknown 	BitMask* 	
4 	FightSupport 	BitMask 	LUA::GetFactionForRace shifts 1 by maskID in FactionGroup and & it with this column.
5 	Friendly 	BitMask* 	
6 	Hostile 	BitMask* 	 
7 	iRefID_Faction 	Integer 	Q: related factions of some kind? 
8 	iRefID_Faction 	Integer 	
9 	Unknown 	Integer 	
10 	Unknown 	Integer 	
11 	iRefID_Faction 	Integer 	
12 	iRefID_Faction 	Integer 	
13 	iRefID_Faction 	Integer 	
14 	iRefID_Faction 	Integer 	
   uint32      ID;                                         // 0        m_ID
   uint32      faction;                                    // 1        m_faction
   uint32      factionFlags;                               // 2        m_flags
   uint32      ourMask;                                    // 3        m_factionGroup
   uint32      friendlyMask;                               // 4        m_friendGroup
   uint32      hostileMask;                                // 5        m_enemyGroup
   uint32      enemyFaction[4];                            // 6        m_enemies[4]
   uint32      friendFaction[4];                           // 10       m_friend[4]

0.5.3.3368, 1.12.1.5875, 6.0.1.18179

struct FactionTemplateRec {
  uint32_t m_ID;
  uint32_t m_faction; 
#if ≥ Vanilla
  uint32_t m_flags;
#endif 
  uint32_t m_factionGroup;    // (m_factionGroup & 7) == 1 → neutral
  uint32_t m_friendGroup;
  uint32_t m_enemyGroup;
  uint32_t m_enemies[4];
  uint32_t m_friend[4];
};

Flags

Value Description
0x0800 eligible for pvp
0x1000 hostile to pvp flagged players i.e. contested guards
0x2000 initially AtWar, hostility cannot be reduced