DB/GameObjectDisplayInfo: Difference between revisions

From wowdev
Jump to navigation Jump to search
No edit summary
No edit summary
 
(16 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[GameObjectCache.wdb]] reads this file to associate models with objects.  
[[GameObjectCache.wdb]] reads this file to associate models with objects.  
Actually this DBC is used for more than that it seems and also controls models used partially in some spells but not sure how at the moment. ''(Spell Focus objects like Anvils or Forges, maybe?)''
Actually this DBC is used for more than that it seems and also controls models used partially in some spells but not sure how at the moment. ''(Spell Focus objects like Anvils or Forges, maybe?)''.
Used in the <i>Create House (TEST)</i> spell. The <code>Spell_C_CastSpell</code> method uses the following, <code>Spell->EffectMiscValue[0] -> GameObjectCache.wdb -> GameObjectDisplayInfoRec</code>, to get the model which is spawned at the target position, collision is enabled.


This [[DBC]] holds information about every type of models ([[WMO]] too). Models ([[M2]]) are listed as .MDX as always.
This [[DBC]] holds information about every type of models ([[WMO]] too). Models ([[M2]]) are listed as .MDX as always.


==9183==
ID, int
Filename, string
Stand, iRefId: SoundEntries
Open, iRefId: SoundEntries
Loop, iRefId: SoundEntries
Close, iRefId: SoundEntries
Destroy, iRefId: SoundEntries
Opened, iRefId: SoundEntries
Custom0, iRefId: SoundEntries
Custom1, iRefId: SoundEntries
Custom2, iRefId: SoundEntries
Custom3, iRefId: SoundEntries
Vec3D[2], most likely bounding boxes or something similar.
'''New since WotLK:''' ObjectEffectPackage, iRefId: ObjectEffectPackage, only on those flying ships in Icecrown.


==m_Sound entries==
enum SoundSlot {
  stand,
  open,
  loop,
  close,
  destroy,
  opened,
  custom0,
  custom1,
  custom2,
  custom3,
  SOUND_SLOT_COUNT, // = 10
};
==0.5.3.3368, 1.12.1.5875==
struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  {{Type|stringref}} m_modelName;
  {{Type/foreign_key|table=SoundEntries}} m_Sound[SOUND_SLOT_COUNT];
};
==2.4.3.8606==
struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  {{Type|stringref}} m_modelName;
  {{Type/foreign_key|table=SoundEntries}} m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
};
==3.0.3.9183==
struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  {{Type|stringref}} m_modelName;
  {{Type/foreign_key|table=SoundEntries}} m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  {{Type/foreign_key|table=ObjectEffectPackage}} m_objectEffectPackageID;
};
==6.0.1.18179==
struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  {{Type/foreign_key|table=FileData}} m_fileDataID;
  {{Type/foreign_key|table=SoundEntries}} m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  {{Type/foreign_key|table=ObjectEffectPackage}} m_objectEffectPackageID;
  float m_overrideLootEffectScale;
  float m_overrideNameScale;
};
==8.0.1.25902==
struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  {{Type/foreign_key|table=FileData}} m_fileDataID;
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  float m_overrideLootEffectScale;
  float m_overrideNameScale;
  {{Type/foreign_key|table=ObjectEffectPackage|type=uint16_t}}m_objectEffectPackageID;
};
[[Category:DBC]]
[[Category:DBC]]
[[Category:DBC_Alpha]]
[[Category:DBC_Vanilla]]
[[Category:DBC_WotLK]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]

Latest revision as of 19:25, 5 April 2022

GameObjectCache.wdb reads this file to associate models with objects. Actually this DBC is used for more than that it seems and also controls models used partially in some spells but not sure how at the moment. (Spell Focus objects like Anvils or Forges, maybe?). Used in the Create House (TEST) spell. The Spell_C_CastSpell method uses the following, Spell->EffectMiscValue[0] -> GameObjectCache.wdb -> GameObjectDisplayInfoRec, to get the model which is spawned at the target position, collision is enabled.

This DBC holds information about every type of models (WMO too). Models (M2) are listed as .MDX as always.


m_Sound entries

enum SoundSlot {
  stand,
  open,
  loop,
  close,
  destroy,
  opened,
  custom0,
  custom1,
  custom2,
  custom3,
  SOUND_SLOT_COUNT, // = 10
};

0.5.3.3368, 1.12.1.5875

struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  stringref m_modelName;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_Sound[SOUND_SLOT_COUNT];
};

2.4.3.8606

struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  stringref m_modelName;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
};

3.0.3.9183

struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  stringref m_modelName;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  foreign_key<uint32_t, &ObjectEffectPackageRec::m_ID> m_objectEffectPackageID;
};

6.0.1.18179

struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  foreign_key<uint32_t, &FileDataRec::m_ID> m_fileDataID;
  foreign_key<uint32_t, &SoundEntriesRec::m_ID> m_Sound[SOUND_SLOT_COUNT];
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  foreign_key<uint32_t, &ObjectEffectPackageRec::m_ID> m_objectEffectPackageID;
  float m_overrideLootEffectScale;
  float m_overrideNameScale;
};

8.0.1.25902

struct GameObjectDisplayInfoRec {
  uint32_t m_ID;
  foreign_key<uint32_t, &FileDataRec::m_ID> m_fileDataID;
  float m_geoBoxMin[3];
  float m_geoBoxMax[3];
  float m_overrideLootEffectScale;
  float m_overrideNameScale;
  foreign_key<uint16_t, &ObjectEffectPackageRec::m_ID>m_objectEffectPackageID;
};