DB/SpellShapeshiftForm: Difference between revisions

From wowdev
Jump to navigation Jump to search
(Reformatted.)
Line 29: Line 29:
  28-35 [[Spell.dbc|presetSpellID]][8] Integer Used for "Zombie", "Ghul", "Test", "Tharon'ja", available spells
  28-35 [[Spell.dbc|presetSpellID]][8] Integer Used for "Zombie", "Ghul", "Test", "Tharon'ja", available spells


===Flags===
== ShapeShift Flags - Version 10.1.0+ (Master Branch 8/16/23) ({{Template:Sandbox/VersionRange|min_expansionlevel=10}})==
0x00001 = Stance // simulates not being shapeshifted to allow mounts/items/interactions i.e. warrior stances <code>CGUnit_C::IsShapeShifted</code>
{| class="wikitable sortable"
0x00002 = Not Toggleable       // prevents cancellation <code>Spell_C_CancelActiveSpell</code>
|-
0x00004 = Persist On Death       //
! Flag !! Flag Name !! Bitmask !! Comments
0x00008 = Can Interact NPC       // allows interaction <code>CGPlayer_C::HandleInteraction, CGGameObject_C_TypeBase::Use</code>
|-
0x00010 = Don't Use Weapon       //
| 1 || Stance || 0x00000001 || 0 - Simulates not being shapeshifted to allow mounts/items/interactions i.e. warrior stances CGUnit_C::IsShapeShifted.
0x00020 = Agility Attack Bonus       // enables agility AP bonuses e.g. cat form <code>CGPlayer_C::GetAttackPowerContributionFromStat</code>; {{Template:Unverified|{{Template:Sandbox/VersionRange|min_expansionlevel=6|exclusive=0}} obsolete}}
|-
0x00040 = Can Use Equipped Items       // can equip items <code>CGItem_C::Use</code>
| 2 || Not Toggleable || 0x00000002 || 1 - Prevents cancellation Spell_C_CancelActiveSpell.
0x00080 = Can Use Items       // can use items <code>CGItem_C::Use</code>
|-
0x00100 = Don't Auto-Unshift       // allows client to auto-unshift <code>CGUnit_C::CanAutoUnshift</code>
| 4 || Persist On Death || 0x00000004 || 2 - Self descriptive.
0x00200 = Considered Dead       // prevents LFG teleportation <code>Script_LFGTeleport</code>
|-
0x00400 = Can Only Cast Shapeshift Spells       // prevents the use of non-shapeshift form spells <code>CGUnit_C::CheckShapeshiftRules</code>
| 8 || Can Interact NPC || 0x00000008 || 3 - Allows interaction CGPlayer_C::HandleInteraction, CGGameObject_C_TypeBase::Use.
0x00800 = Stance Cancels At Flightmaster       // if <code>m_flags & 1 != 0</code>, cancels shapeshift when interacting with flight masters <code>CGUnit_C::IsCancelShapeshiftAtFlightMaster</code>
|-
0x01000 = No Emote Sounds       // prevents emote sounds <code>CGUnit_C::PlayTextEmoteSound</code>
| 16 || Don't Use Weapon || 0x00000010 || 4 - Self descriptive.
0x02000 = No Trigger Teleport
|-
0x04000 = Cannot change equipped items
| 32 || Agility Attack Bonus || 0x00000020 || 5 - Enables agility AP bonuses e.g. cat form CGPlayer_C::GetAttackPowerContributionFromStat; Obsolete if version is greater than 6.2.4.
0x08000 = Resummon Pets on Unshift
|-
0x10000 = Cannot Use Game Objects
| 64 || Can Use Equipped Items || 0x00000040 || 6 - Can equip items CGItem_C::Use.
|-
| 128 || Can Use Items || 0x00000080 || 7 - Can use items CGItem_C::Use.
|-
| 256 || Don't Auto-Unshift || 0x00000100 || 8 - Allows client to auto-unshift CGUnit_C::CanAutoUnshift.
|-
| 512 || Considered Dead || 0x00000200 || 9 - Prevents LFG teleportation Script_LFGTeleport.
|-
| 1,024 || Can Only Cast Shapeshift Spells || 0x00000400 || 10 - Prevents the use of non-shapeshift form spells CGUnit_C::CheckShapeshiftRules.
|-
| 2,048 || Stance Cancels At Flightmaster || 0x00000800 || 11 - If m_flags & 1 != 0, cancels shapeshift when interacting with flight masters CGUnit_C::IsCancelShapeshiftAtFlightMaster.
|-
| 4,096 || No Emote Sounds || 0x00001000 || 12 - Prevents emote sounds CGUnit_C::PlayTextEmoteSound.
|}


==6.0.1.18179==
==6.0.1.18179==

Revision as of 13:56, 20 August 2023

0.5.3.3368

struct SpellShapeshiftFormRec {
  uint32_t m_ID;
  uint32_t m_bonusActionBar;
  langstringref m_name_lang;
  uint32_t m_flags;      // &:1 only, see flags
};

1.12.1.5875

struct SpellShapeshiftFormRec {
  uint32_t m_ID;
  uint32_t m_bonusActionBar;
  langstringref m_name_lang;
  uint32_t m_flags; 
  uint32_t m_creatureType;
  uint32_t spell_icon;
};

Structure

Column 	Field 			Type 		Notes 
1 	ID 			Integer 	
2 	ActionBar 		Integer 	
3-19 	Name 			Loc	
20 	Flags 			BitMask		
21 	CreatureType 		Integer 	-1 or 0 for getting overwritten by race or server.
22 	SpellIcon 		Integer 	Instead of "Interface\\Buttons\\Spell-Reset"	
23 	combatRoundTime 	Integer 	Only druid stances have a value. {2500, 1000} Default: 2000, has something to do with spellmanacost; attack speed in ms? - Maybe GlobalCooldown?
24-25 	DisplayID[4] 		Integer 	{Alliance, Horde}
28-35 	presetSpellID[8]	Integer 	Used for "Zombie", "Ghul", "Test", "Tharon'ja", available spells

ShapeShift Flags - Version 10.1.0+ (Master Branch 8/16/23) (≥ DF)

Flag Flag Name Bitmask Comments
1 Stance 0x00000001 0 - Simulates not being shapeshifted to allow mounts/items/interactions i.e. warrior stances CGUnit_C::IsShapeShifted.
2 Not Toggleable 0x00000002 1 - Prevents cancellation Spell_C_CancelActiveSpell.
4 Persist On Death 0x00000004 2 - Self descriptive.
8 Can Interact NPC 0x00000008 3 - Allows interaction CGPlayer_C::HandleInteraction, CGGameObject_C_TypeBase::Use.
16 Don't Use Weapon 0x00000010 4 - Self descriptive.
32 Agility Attack Bonus 0x00000020 5 - Enables agility AP bonuses e.g. cat form CGPlayer_C::GetAttackPowerContributionFromStat; Obsolete if version is greater than 6.2.4.
64 Can Use Equipped Items 0x00000040 6 - Can equip items CGItem_C::Use.
128 Can Use Items 0x00000080 7 - Can use items CGItem_C::Use.
256 Don't Auto-Unshift 0x00000100 8 - Allows client to auto-unshift CGUnit_C::CanAutoUnshift.
512 Considered Dead 0x00000200 9 - Prevents LFG teleportation Script_LFGTeleport.
1,024 Can Only Cast Shapeshift Spells 0x00000400 10 - Prevents the use of non-shapeshift form spells CGUnit_C::CheckShapeshiftRules.
2,048 Stance Cancels At Flightmaster 0x00000800 11 - If m_flags & 1 != 0, cancels shapeshift when interacting with flight masters CGUnit_C::IsCancelShapeshiftAtFlightMaster.
4,096 No Emote Sounds 0x00001000 12 - Prevents emote sounds CGUnit_C::PlayTextEmoteSound.

6.0.1.18179

struct SpellShapeshiftFormRec {
  uint32_t m_ID;
  uint32_t m_bonusActionBar;
  langstringref m_name_lang;
  uint32_t m_flags;
  uint32_t m_creatureType;
  uint32_t m_attackIconID;
  uint32_t m_combatRoundTime;
  uint32_t m_creatureDisplayID[4];
  uint32_t m_presetSpellID[8];
  uint32_t m_mountTypeID;
  uint32_t m_exitSoundEntriesID;
};