DB/ChrRaces: Difference between revisions

From wowdev
Jump to navigation Jump to search
(32 intermediate revisions by 9 users not shown)
Line 1: Line 1:
__TOC__
Information about character creation and selection screens.  
Information about character creation and selection screens.  


==Structure==
==Classic==
===0.5.3.3368===
====Struct====
struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  uint32_t m_factionID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  {{Template:Type|stringref}} m_ClientPrefix;
  float m_MountScale;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_LoginEffectSpellID;
  uint32_t m_CombatStunSpellID;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  uint32_t m_startingTaxiNodes;
  {{Template:Type|stringref}} m_clientFileString;
  uint32_t m_cinematicSequenceID;
  {{Template:Type|langstringref}} m_name_lang;
};
===1.12.1.5875===
====Struct====
struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  uint32_t m_factionID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  {{Template:Type|stringref}} m_ClientPrefix;
  float m_MountScale;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_LoginEffectSpellID;
  uint32_t m_CombatStunSpellID;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  uint32_t m_startingTaxiNodes;
  {{Template:Type|stringref}} m_clientFileString;
  uint32_t m_cinematicSequenceID;
  {{Template:Type|langstringref}} m_name_lang;
  {{Template:Type|stringref}} m_facialHairCustomization[2];  // male, female
  {{Template:Type|stringref}} m_hairCustomization;
};
==Wrath==
===3.0.5.9294-3.3.5.12340===
====Table====
{| style="background:#FCFCFC; color:black"
{| style="background:#FCFCFC; color:black"
|-  
|-  
Line 11: Line 59:
| 1  || ID || Integer ||  
| 1  || ID || Integer ||  
|-  
|-  
| 2  || Flags || Integer || This can remove or show boots. Set to 12 to show them. Known to be checked: 4 together with CMD 0x80. (?)
| 2  || Flags || Integer || See Below
|- style="background:#F0F8FF;"
|- style="background:#F0F8FF;"
| 3  || [[FactionTemplate.dbc|FactionID]] || Integer || facton template id. The order in the creation screen depends on this.
| 3  || [[FactionTemplate.dbc|FactionID]] || iRefID || faction template id. The order in the creation screen depends on this.
|-  
|- style="background:#F0F8FF;"
| 4  || Flags || Integer || 0x0 for notplayable races.  
| 4  || [[SoundEntries.dbc|Exploration]] || iRefID || Played on exploring zones with SMSG_EXPLORATION_EXPERIENCE.
|- style="background:#F0F8FF;"
|- style="background:#F0F8FF;"
| 5 || [[CreatureDisplayInfo.dbc|MaleModel]] || iRefID || only used for the char creation/selection screen. Ingame the server sets the model.  
| 5 || [[CreatureDisplayInfo.dbc|MaleModel]] || iRefID || only used for the char creation/selection screen. Ingame the server sets the model.  
Line 21: Line 69:
| 6 || [[CreatureDisplayInfo.dbc|FemaleModel]] || iRefID || only used for the char creation/selection screen. Ingame the server sets the model.   
| 6 || [[CreatureDisplayInfo.dbc|FemaleModel]] || iRefID || only used for the char creation/selection screen. Ingame the server sets the model.   
|-
|-
| 7 || Abbrev || String || A short form of the name. Used for helmet models.
| 7 || ClientPrefix || String || A short form of the name. Used for helmet models.
|-  
|-  
| 8  || Unknown || Float || This is 1.0 for the most. Maybe some sort of size or speed.
| 8  || Unknown || Float || This is 1.0 for the most. Maybe some sort of size or speed. -- removed in cata?
|-  
|-  
| 9  || Faction || Integer || 1 = Horde, 7 = Alliance & not playable
| 9  || BaseLanguage || Integer || 1 = Horde, 7 = Alliance & not playable
|-  
|- style="background:#F0F8FF;"
| 10  || [[CreatureType.dbc|CreatureType]] || Integer || Always 7 (humanoid).
| 10  || [[CreatureType.dbc|creatureType]] || iRefID || Always 7 (humanoid).
|-  
|-  
| 11  || Unknown || Integer || Always 15007.
| 11  || ResSicknessSpellID || Integer || Always 15007.
|-
|-
| 12 || Unknown || Integer || 1090 for dwarfs, 1096 for the others. Getting stored in CGUnit at CGUnit::PostInit.
| 12 || SplashSoundID || Integer || 1090 for dwarfs, 1096 for the others. Getting stored in CGUnit at CGUnit::PostInit.
|-  
|-  
| 13  || InternalName || String || Same as the one used in model-filepathes.
| 13  || clientFileString || String || Same as the one used in model-filepathes.
|- style="background:#F0F8FF;"
|- style="background:#F0F8FF;"
| 14  || [[CinematicSequences.dbc|Camera]] || iRefID || Used for the opening cinematic.
| 14  || [[CinematicSequences.dbc|cinematicSequenceID]] || iRefID || Used for the opening cinematic.
|-  
|-  
| 15-31  || RaceNameMale || [[Loc]] || A name to display.
| cata  || alliance || Integer ||
|-
| 15-31  || RaceNameNeutral || [[Loc]] || A name to display.
|-  
|-  
| 32-48  || RaceNameFemale || [[Loc]] || always is NULL for zhCN.
| 32-48  || RaceNameFemale || [[Loc]] || always is NULL for zhCN.
|-  
|-  
| 49-65  || RaceNameNeutral || [[Loc]] || always is NULL for zhCN.
| 49-65  || RaceNameMale || [[Loc]] || always is NULL for zhCN.
|-  
|-  
| 66  || Feature1 || String || Internal names for the facial features.
| 66  || facialHairCustomization || String || Internal names for the facial features.
|-
| 67  || facialHairCustomization || String || The localized ones are in luas.
|-
| 68  || hairCustomization || String ||
|-
| 69 || required_expansion || Integer || 0 for classic and non-playables, 1 for Burning Crusade
|}
 
==Warlords==
===6.0.1.18179-6.0.3.19243===
====Struct====
struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  {{Template:Type/foreign_key|table=FactionTemplate}} m_factionID;
  uint32_t m_ExplorationSoundID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  {{Template:Type|stringref}} m_ClientPrefix;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  {{Template:Type|stringref}} m_clientFileString;
  uint32_t m_cinematicSequenceID;
  uint32_t m_alliance;
  {{Template:Type|langstringref}} m_name_lang;
  {{Template:Type|langstringref}} m_name_female_lang;
  {{Template:Type|langstringref}} m_name_male_lang;
  {{Template:Type|stringref}} m_facialHairCustomization[2];  // male, female
  {{Template:Type|stringref}} m_hairCustomization;
  uint32_t m_race_related;
  uint32_t m_unalteredVisualRaceID;
  uint32_t m_uaMaleCreatureSoundDataID;
  uint32_t m_uaFemaleCreatureSoundDataID;
  uint32_t m_charComponentTextureLayoutID;
  uint32_t m_defaultClassID;
  uint32_t m_createScreenFileDataID;
  uint32_t m_selectScreenFileDataID;
  float m_maleCustomizeOffset[3];
  float m_femaleCustomizeOffset[3];
  uint32_t m_neutralRaceID;
  uint32_t m_lowResScreenFileDataID;
  uint32_t m_HighResMaleDisplayId;
  uint32_t m_HighResFemaleDisplayId;
  uint32_t m_charComponentTexLayoutHiResID;
};
 
 
==8.0.1.25902==
struct ChrRacesRec {
  stringref m_ClientPrefix;
  stringref m_clientFileString;
  langstringref m_name_lang;
  langstringref m_name_female_lang;
  langstringref m_name_male_lang;
  stringref m_hairCustomization;
  int32_t m_flags;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  uint32_t m_createScreenFileDataID;
  uint32_t m_selectScreenFileDataID;
  float m_maleCustomizeOffset[3];
  float m_femaleCustomizeOffset[3];
  uint32_t m_lowResScreenFileDataID;
  int32_t {{Template:Unverified|m_startingLevel}}; // has value 20 for allied races and 1 for others, added in 7.3.5
  int32_t Unk2_735; // {{Template:Unverified|UIOrder? RaceID?}} has 9 for blood elf and 10 for goblin, rest are 0, added in 7.3.5
  uint16_t m_factionID;
  uint16_t m_ResSicknessSpellID;
  uint16_t m_SplashSoundID;
  uint16_t m_cinematicSequenceID;
  uint8_t m_BaseLanguage;
  uint8_t m_creatureType;
  uint8_t m_alliance;
  uint8_t m_race_related; // {{Template:Unverified|alternate race ID of opposing faction}}
  uint8_t m_unalteredVisualRaceID;
  uint8_t m_charComponentTextureLayoutID;
  uint8_t m_defaultClassID;
  uint8_t m_neutralRaceID;
  uint8_t m_itemAppearanceFrameRaceID;
  uint8_t m_charComponentTexLayoutHiResID;
  uint32_t m_ID;
  uint32_t m_HighResMaleDisplayId;
  uint32_t m_HighResFemaleDisplayId;
  int32_t {{Template:Unverified|m_heritageArmorUnlockAchievementID}}; // values 12291, 12413-12415 for allied races, rest are 0, added in 7.3.5
  int32_t {{Template:Unverified|m_maleDeathSkeletonModelFileDataID}}; // World\Generic\PassiveDoodads\DeathSkeletons\<Race><Gender>DeathSkeleton.m2, added in 7.3.5
  int32_t {{Template:Unverified|m_femaleDeathSkeletonModelFileDataID}};
  int32_t m_alteredFormTransitionSpellVisualID[3];
  int32_t m_alteredFormTransitionSpellVisualKitID[3];
};
 
===Flags===
{| style="background:#FCFCFC; color:black"
|-  
|-  
| 67  || Feature2 || String || The localized ones are in luas.
! width="80" | Flag
! width="600 " | Description
|-  
|-  
| 68 || Feature3 || String ||
| 0x1 || Not Playable
|-
| 0x2 || Bare Feet
|-
|-
| 69 || Expansion || Integer || 0 for classic and non-playables, 1 for Burning Crusade
| 0x4 || CGUnit_C::CanCurrentFormMount ( return ( flags ^ 4 ) & 4; ), also: [[CreatureModelData.dbc|CMD]].flags & 0x80.
|-
| 0x8 || Playable Races(without NightElf) and Vrykul(?)
|-
| 0x80 || (Legion(?)+) disallow low res model for demonhunter?
|-
| 0x100 || apply the goblin racial [Best Deals Anywhere] discount <code>CGUnit_C::GetPlayerDiscount</code>
|-
| 0x200 || <code>CCharacterCreation::Initialize</code>
|-
| 0x400 || <code>CCharacterSelection::MoveSelectionComponentToWorldFrame</code>
|-
| 0x10000 || skin variation is hair colour
|}
|}


[[Category:DBC]][[Category:3.0.5.9294]]
 
[[Category:DBC]]
[[Category:DBC_Alpha]]
[[Category:DBC_Vanilla]]
[[Category:DBC_WotLK]][[Category:3.0.5.9294]][[Category:3.3.5.12340]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]][[Category:6.0.3.19243]]

Revision as of 18:05, 15 April 2019

Information about character creation and selection screens.

Classic

0.5.3.3368

Struct

struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  uint32_t m_factionID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  stringref m_ClientPrefix;
  float m_MountScale;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_LoginEffectSpellID;
  uint32_t m_CombatStunSpellID;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  uint32_t m_startingTaxiNodes;
  stringref m_clientFileString;
  uint32_t m_cinematicSequenceID;
  langstringref m_name_lang;
};

1.12.1.5875

Struct

struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  uint32_t m_factionID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  stringref m_ClientPrefix;
  float m_MountScale;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_LoginEffectSpellID;
  uint32_t m_CombatStunSpellID;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  uint32_t m_startingTaxiNodes;
  stringref m_clientFileString;
  uint32_t m_cinematicSequenceID;
  langstringref m_name_lang;
  stringref m_facialHairCustomization[2];  // male, female
  stringref m_hairCustomization;
};

Wrath

3.0.5.9294-3.3.5.12340

Table

Column Field Type Notes
1 ID Integer
2 Flags Integer See Below
3 FactionID iRefID faction template id. The order in the creation screen depends on this.
4 Exploration iRefID Played on exploring zones with SMSG_EXPLORATION_EXPERIENCE.
5 MaleModel iRefID only used for the char creation/selection screen. Ingame the server sets the model.
6 FemaleModel iRefID only used for the char creation/selection screen. Ingame the server sets the model.
7 ClientPrefix String A short form of the name. Used for helmet models.
8 Unknown Float This is 1.0 for the most. Maybe some sort of size or speed. -- removed in cata?
9 BaseLanguage Integer 1 = Horde, 7 = Alliance & not playable
10 creatureType iRefID Always 7 (humanoid).
11 ResSicknessSpellID Integer Always 15007.
12 SplashSoundID Integer 1090 for dwarfs, 1096 for the others. Getting stored in CGUnit at CGUnit::PostInit.
13 clientFileString String Same as the one used in model-filepathes.
14 cinematicSequenceID iRefID Used for the opening cinematic.
cata alliance Integer
15-31 RaceNameNeutral Loc A name to display.
32-48 RaceNameFemale Loc always is NULL for zhCN.
49-65 RaceNameMale Loc always is NULL for zhCN.
66 facialHairCustomization String Internal names for the facial features.
67 facialHairCustomization String The localized ones are in luas.
68 hairCustomization String
69 required_expansion Integer 0 for classic and non-playables, 1 for Burning Crusade

Warlords

6.0.1.18179-6.0.3.19243

Struct

struct ChrRacesRec {
  uint32_t m_ID;
  uint32_t m_flags;
  foreign_key<uint32_t, &FactionTemplateRec::m_ID> m_factionID;
  uint32_t m_ExplorationSoundID;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  stringref m_ClientPrefix;
  uint32_t m_BaseLanguage;
  uint32_t m_creatureType;
  uint32_t m_ResSicknessSpellID;
  uint32_t m_SplashSoundID;
  stringref m_clientFileString;
  uint32_t m_cinematicSequenceID;
  uint32_t m_alliance;
  langstringref m_name_lang;
  langstringref m_name_female_lang;
  langstringref m_name_male_lang;
  stringref m_facialHairCustomization[2];  // male, female
  stringref m_hairCustomization;
  uint32_t m_race_related;
  uint32_t m_unalteredVisualRaceID;
  uint32_t m_uaMaleCreatureSoundDataID;
  uint32_t m_uaFemaleCreatureSoundDataID;
  uint32_t m_charComponentTextureLayoutID;
  uint32_t m_defaultClassID;
  uint32_t m_createScreenFileDataID;
  uint32_t m_selectScreenFileDataID;
  float m_maleCustomizeOffset[3];
  float m_femaleCustomizeOffset[3];
  uint32_t m_neutralRaceID;
  uint32_t m_lowResScreenFileDataID;
  uint32_t m_HighResMaleDisplayId;
  uint32_t m_HighResFemaleDisplayId;
  uint32_t m_charComponentTexLayoutHiResID;
};


8.0.1.25902

struct ChrRacesRec {
  stringref m_ClientPrefix;
  stringref m_clientFileString;
  langstringref m_name_lang;
  langstringref m_name_female_lang;
  langstringref m_name_male_lang;
  stringref m_hairCustomization;
  int32_t m_flags;
  uint32_t m_MaleDisplayId;
  uint32_t m_FemaleDisplayId;
  uint32_t m_createScreenFileDataID;
  uint32_t m_selectScreenFileDataID;
  float m_maleCustomizeOffset[3];
  float m_femaleCustomizeOffset[3];
  uint32_t m_lowResScreenFileDataID; 
  int32_t m_startingLevel; // has value 20 for allied races and 1 for others, added in 7.3.5
  int32_t Unk2_735; // UIOrder? RaceID? has 9 for blood elf and 10 for goblin, rest are 0, added in 7.3.5
  uint16_t m_factionID;
  uint16_t m_ResSicknessSpellID;
  uint16_t m_SplashSoundID;
  uint16_t m_cinematicSequenceID;
  uint8_t m_BaseLanguage;
  uint8_t m_creatureType;
  uint8_t m_alliance;
  uint8_t m_race_related; // alternate race ID of opposing faction
  uint8_t m_unalteredVisualRaceID;
  uint8_t m_charComponentTextureLayoutID;
  uint8_t m_defaultClassID;
  uint8_t m_neutralRaceID;
  uint8_t m_itemAppearanceFrameRaceID;
  uint8_t m_charComponentTexLayoutHiResID;
  uint32_t m_ID;
  uint32_t m_HighResMaleDisplayId;
  uint32_t m_HighResFemaleDisplayId;
  int32_t m_heritageArmorUnlockAchievementID; // values 12291, 12413-12415 for allied races, rest are 0, added in 7.3.5
  int32_t m_maleDeathSkeletonModelFileDataID; // World\Generic\PassiveDoodads\DeathSkeletons\<Race><Gender>DeathSkeleton.m2, added in 7.3.5
  int32_t m_femaleDeathSkeletonModelFileDataID;
  int32_t m_alteredFormTransitionSpellVisualID[3];
  int32_t m_alteredFormTransitionSpellVisualKitID[3];
};

Flags

Flag Description
0x1 Not Playable
0x2 Bare Feet
0x4 CGUnit_C::CanCurrentFormMount ( return ( flags ^ 4 ) & 4; ), also: CMD.flags & 0x80.
0x8 Playable Races(without NightElf) and Vrykul(?)
0x80 (Legion(?)+) disallow low res model for demonhunter?
0x100 apply the goblin racial [Best Deals Anywhere] discount CGUnit_C::GetPlayerDiscount
0x200 CCharacterCreation::Initialize
0x400 CCharacterSelection::MoveSelectionComponentToWorldFrame
0x10000 skin variation is hair colour