DB/ChrRaces: Difference between revisions

From wowdev
Jump to navigation Jump to search
(24 intermediate revisions by 8 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 13: Line 61:
| 2  || Flags || Integer || See Below
| 2  || Flags || Integer || See Below
|- style="background:#F0F8FF;"
|- style="background:#F0F8FF;"
| 3  || [[FactionTemplate.dbc|FactionID]] || iRefID || 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;"
|- style="background:#F0F8FF;"
| 4  || [[SoundEntries.dbc|Exploration]] || iRefID || Played on exploring zones with SMSG_EXPLORATION_EXPERIENCE.
| 4  || [[SoundEntries.dbc|Exploration]] || iRefID || Played on exploring zones with SMSG_EXPLORATION_EXPERIENCE.
Line 52: Line 100:
|-
|-
| 69 || required_expansion || Integer || 0 for classic and non-playables, 1 for Burning Crusade
| 69 || required_expansion || Integer || 0 for classic and non-playables, 1 for Burning Crusade
|-
| cata  || unalteredVisualRaceID || Integer ||
|}
|}
==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===
===Flags===
Line 60: Line 189:
|-  
|-  
! width="80" | Flag  
! width="80" | Flag  
! width="400 " | Description
! width="600 " | Description
|-  
|-  
| 0x1  || Not Playable
| 0x1  || Not Playable
Line 69: Line 198:
|-
|-
| 0x8 || Playable Races(without NightElf) and Vrykul(?)
| 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 17: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