// DO NOT EDIT: generated by whoa-autocode #ifndef DB_RECORDS_H #define DB_RECORDS_H #include "db/clientdb.h" DECLARE_STRUCT(AchievementRec); DECLARE_STRUCT(Achievement_CategoryRec); DECLARE_STRUCT(Achievement_CriteriaRec); DECLARE_STRUCT(AnimKitRec); DECLARE_STRUCT(AnimKitBoneSetRec); DECLARE_STRUCT(AnimKitBoneSetAliasRec); DECLARE_STRUCT(AnimKitConfigRec); DECLARE_STRUCT(AnimKitConfigBoneSetRec); DECLARE_STRUCT(AnimKitPriorityRec); DECLARE_STRUCT(AnimKitSegmentRec); DECLARE_STRUCT(AnimReplacementRec); DECLARE_STRUCT(AnimReplacementSetRec); DECLARE_STRUCT(AnimationDataRec); DECLARE_STRUCT(AreaAssignmentRec); DECLARE_STRUCT(AreaGroupRec); DECLARE_STRUCT(AreaPOIRec); DECLARE_STRUCT(AreaTableRec); DECLARE_STRUCT(AreaTriggerRec); DECLARE_STRUCT(ArmorLocationRec); DECLARE_STRUCT(AttackAnimKitsRec); DECLARE_STRUCT(AttackAnimTypesRec); DECLARE_STRUCT(AuctionHouseRec); DECLARE_STRUCT(BankBagSlotPricesRec); DECLARE_STRUCT(BannedAddonsRec); DECLARE_STRUCT(BarberShopStyleRec); DECLARE_STRUCT(BattlemasterListRec); DECLARE_STRUCT(CameraModeRec); DECLARE_STRUCT(CameraShakesRec); DECLARE_STRUCT(Cfg_CategoriesRec); DECLARE_STRUCT(Cfg_ConfigsRec); DECLARE_STRUCT(CharBaseInfoRec); DECLARE_STRUCT(CharHairGeosetsRec); DECLARE_STRUCT(CharHairTexturesRec); DECLARE_STRUCT(CharSectionsRec); DECLARE_STRUCT(CharStartOutfitRec); DECLARE_STRUCT(CharTitlesRec); DECLARE_STRUCT(CharVariationsRec); DECLARE_STRUCT(CharacterFacialHairStylesRec); DECLARE_STRUCT(ChatChannelsRec); DECLARE_STRUCT(ChatProfanityRec); DECLARE_STRUCT(ChrClassesRec); DECLARE_STRUCT(ChrRacesRec); DECLARE_STRUCT(CinematicCameraRec); DECLARE_STRUCT(CinematicSequencesRec); DECLARE_STRUCT(CreatureDisplayInfoRec); DECLARE_STRUCT(CreatureDisplayInfoExtraRec); DECLARE_STRUCT(CreatureFamilyRec); DECLARE_STRUCT(CreatureModelDataRec); DECLARE_STRUCT(CreatureMovementInfoRec); DECLARE_STRUCT(CreatureSoundDataRec); DECLARE_STRUCT(CreatureSpellDataRec); DECLARE_STRUCT(CreatureTypeRec); DECLARE_STRUCT(CurrencyCategoryRec); DECLARE_STRUCT(CurrencyTypesRec); DECLARE_STRUCT(DanceMovesRec); DECLARE_STRUCT(DeathThudLookupsRec); DECLARE_STRUCT(DeclinedWordRec); DECLARE_STRUCT(DeclinedWordCasesRec); DECLARE_STRUCT(DestructibleModelDataRec); DECLARE_STRUCT(DungeonEncounterRec); DECLARE_STRUCT(DungeonMapRec); DECLARE_STRUCT(DungeonMapChunkRec); DECLARE_STRUCT(DurabilityCostsRec); DECLARE_STRUCT(DurabilityQualityRec); DECLARE_STRUCT(EmotesRec); DECLARE_STRUCT(EmotesTextRec); DECLARE_STRUCT(EmotesTextDataRec); DECLARE_STRUCT(EmotesTextSoundRec); DECLARE_STRUCT(EnvironmentalDamageRec); DECLARE_STRUCT(ExhaustionRec); DECLARE_STRUCT(FactionRec); DECLARE_STRUCT(FactionGroupRec); DECLARE_STRUCT(FactionTemplateRec); DECLARE_STRUCT(FileDataRec); DECLARE_STRUCT(FootprintTexturesRec); DECLARE_STRUCT(FootstepTerrainLookupRec); DECLARE_STRUCT(GMSurveyAnswersRec); DECLARE_STRUCT(GMSurveyCurrentSurveyRec); DECLARE_STRUCT(GMSurveyQuestionsRec); DECLARE_STRUCT(GMSurveySurveysRec); DECLARE_STRUCT(GMTicketCategoryRec); DECLARE_STRUCT(GameObjectArtKitRec); DECLARE_STRUCT(GameObjectDisplayInfoRec); DECLARE_STRUCT(GameTablesRec); DECLARE_STRUCT(GameTipsRec); DECLARE_STRUCT(GemPropertiesRec); DECLARE_STRUCT(GlueScreenEmoteRec); DECLARE_STRUCT(GlyphPropertiesRec); DECLARE_STRUCT(GlyphSlotRec); DECLARE_STRUCT(GroundEffectDoodadRec); DECLARE_STRUCT(GroundEffectTextureRec); DECLARE_STRUCT(GuildPerkSpellsRec); DECLARE_STRUCT(HelmetGeosetVisDataRec); DECLARE_STRUCT(HolidayDescriptionsRec); DECLARE_STRUCT(HolidayNamesRec); DECLARE_STRUCT(HolidaysRec); DECLARE_STRUCT(ItemRec); DECLARE_STRUCT(ItemArmorQualityRec); DECLARE_STRUCT(ItemArmorShieldRec); DECLARE_STRUCT(ItemArmorTotalRec); DECLARE_STRUCT(ItemBagFamilyRec); DECLARE_STRUCT(ItemClassRec); DECLARE_STRUCT(ItemCondExtCostsRec); DECLARE_STRUCT(ItemDamageAmmoRec); DECLARE_STRUCT(ItemDamageOneHandRec); DECLARE_STRUCT(ItemDamageOneHandCasterRec); DECLARE_STRUCT(ItemDamageRangedRec); DECLARE_STRUCT(ItemDamageThrownRec); DECLARE_STRUCT(ItemDamageTwoHandRec); DECLARE_STRUCT(ItemDamageTwoHandCasterRec); DECLARE_STRUCT(ItemDamageWandRec); DECLARE_STRUCT(ItemDisplayInfoRec); DECLARE_STRUCT(ItemExtendedCostRec); DECLARE_STRUCT(ItemGroupSoundsRec); DECLARE_STRUCT(ItemLimitCategoryRec); DECLARE_STRUCT(ItemPetFoodRec); DECLARE_STRUCT(ItemPurchaseGroupRec); DECLARE_STRUCT(ItemRandomPropertiesRec); DECLARE_STRUCT(ItemRandomSuffixRec); DECLARE_STRUCT(ItemReforgeRec); DECLARE_STRUCT(ItemSetRec); DECLARE_STRUCT(ItemSubClassRec); DECLARE_STRUCT(ItemSubClassMaskRec); DECLARE_STRUCT(ItemVisualEffectsRec); DECLARE_STRUCT(ItemVisualsRec); DECLARE_STRUCT(LFGDungeonExpansionRec); DECLARE_STRUCT(LFGDungeonGroupRec); DECLARE_STRUCT(LFGDungeonsRec); DECLARE_STRUCT(LanguageWordsRec); DECLARE_STRUCT(LanguagesRec); DECLARE_STRUCT(LightRec); DECLARE_STRUCT(LightFloatBandRec); DECLARE_STRUCT(LightIntBandRec); DECLARE_STRUCT(LightParamsRec); DECLARE_STRUCT(LightSkyboxRec); DECLARE_STRUCT(LiquidMaterialRec); DECLARE_STRUCT(LiquidObjectRec); DECLARE_STRUCT(LiquidTypeRec); DECLARE_STRUCT(LoadingScreenTaxiSplinesRec); DECLARE_STRUCT(LoadingScreensRec); DECLARE_STRUCT(LockRec); DECLARE_STRUCT(LockTypeRec); DECLARE_STRUCT(MailTemplateRec); DECLARE_STRUCT(MapRec); DECLARE_STRUCT(MapDifficultyRec); DECLARE_STRUCT(MaterialRec); DECLARE_STRUCT(MountTypeRec); DECLARE_STRUCT(MovieRec); DECLARE_STRUCT(MovieFileDataRec); DECLARE_STRUCT(MovieVariationRec); DECLARE_STRUCT(NPCSoundsRec); DECLARE_STRUCT(NameGenRec); DECLARE_STRUCT(NamesProfanityRec); DECLARE_STRUCT(NamesReservedRec); DECLARE_STRUCT(ObjectEffectRec); DECLARE_STRUCT(ObjectEffectGroupRec); DECLARE_STRUCT(ObjectEffectModifierRec); DECLARE_STRUCT(ObjectEffectPackageRec); DECLARE_STRUCT(ObjectEffectPackageElemRec); DECLARE_STRUCT(OverrideSpellDataRec); DECLARE_STRUCT(PVPDifficultyRec); DECLARE_STRUCT(PackageRec); DECLARE_STRUCT(PageTextMaterialRec); DECLARE_STRUCT(PaperDollItemFrameRec); DECLARE_STRUCT(ParticleColorRec); DECLARE_STRUCT(PetPersonalityRec); DECLARE_STRUCT(PetitionTypeRec); DECLARE_STRUCT(PhaseRec); DECLARE_STRUCT(PhaseShiftZoneSoundsRec); DECLARE_STRUCT(PhaseXPhaseGroupRec); DECLARE_STRUCT(PowerDisplayRec); DECLARE_STRUCT(QuestFactionRewardRec); DECLARE_STRUCT(QuestInfoRec); DECLARE_STRUCT(QuestSortRec); DECLARE_STRUCT(QuestXPRec); DECLARE_STRUCT(RandPropPointsRec); DECLARE_STRUCT(ResearchBranchRec); DECLARE_STRUCT(ResistancesRec); DECLARE_STRUCT(ScalingStatDistributionRec); DECLARE_STRUCT(ScalingStatValuesRec); DECLARE_STRUCT(ScreenEffectRec); DECLARE_STRUCT(ServerMessagesRec); DECLARE_STRUCT(SheatheSoundLookupsRec); DECLARE_STRUCT(SkillCostsDataRec); DECLARE_STRUCT(SkillLineRec); DECLARE_STRUCT(SkillLineAbilityRec); DECLARE_STRUCT(SkillLineCategoryRec); DECLARE_STRUCT(SkillRaceClassInfoRec); DECLARE_STRUCT(SkillTiersRec); DECLARE_STRUCT(SoundAmbienceRec); DECLARE_STRUCT(SoundEmittersRec); DECLARE_STRUCT(SoundEntriesRec); DECLARE_STRUCT(SoundEntriesAdvancedRec); DECLARE_STRUCT(SoundFilterRec); DECLARE_STRUCT(SoundFilterElemRec); DECLARE_STRUCT(SoundProviderPreferencesRec); DECLARE_STRUCT(SoundSamplePreferencesRec); DECLARE_STRUCT(SoundWaterTypeRec); DECLARE_STRUCT(SpamMessagesRec); DECLARE_STRUCT(SpellRec); DECLARE_STRUCT(SpellAuraOptionsRec); DECLARE_STRUCT(SpellAuraRestrictionsRec); DECLARE_STRUCT(SpellCastTimesRec); DECLARE_STRUCT(SpellCastingRequirementsRec); DECLARE_STRUCT(SpellCategoriesRec); DECLARE_STRUCT(SpellCategoryRec); DECLARE_STRUCT(SpellChainEffectsRec); DECLARE_STRUCT(SpellClassOptionsRec); DECLARE_STRUCT(SpellCooldownsRec); DECLARE_STRUCT(SpellDescriptionVariablesRec); DECLARE_STRUCT(SpellDifficultyRec); DECLARE_STRUCT(SpellDispelTypeRec); DECLARE_STRUCT(SpellDurationRec); DECLARE_STRUCT(SpellEffectRec); DECLARE_STRUCT(SpellEffectCameraShakesRec); DECLARE_STRUCT(SpellEquippedItemsRec); DECLARE_STRUCT(SpellFocusObjectRec); DECLARE_STRUCT(SpellIconRec); DECLARE_STRUCT(SpellInterruptsRec); DECLARE_STRUCT(SpellItemEnchantmentRec); DECLARE_STRUCT(SpellItemEnchantmentConditionRec); DECLARE_STRUCT(SpellLevelsRec); DECLARE_STRUCT(SpellMechanicRec); DECLARE_STRUCT(SpellMissileRec); DECLARE_STRUCT(SpellMissileMotionRec); DECLARE_STRUCT(SpellPowerRec); DECLARE_STRUCT(SpellRadiusRec); DECLARE_STRUCT(SpellRangeRec); DECLARE_STRUCT(SpellReagentsRec); DECLARE_STRUCT(SpellRuneCostRec); DECLARE_STRUCT(SpellScalingRec); DECLARE_STRUCT(SpellShapeshiftRec); DECLARE_STRUCT(SpellShapeshiftFormRec); DECLARE_STRUCT(SpellTargetRestrictionsRec); DECLARE_STRUCT(SpellTotemsRec); DECLARE_STRUCT(SpellVisualRec); DECLARE_STRUCT(SpellVisualEffectNameRec); DECLARE_STRUCT(SpellVisualKitRec); DECLARE_STRUCT(SpellVisualKitAreaModelRec); DECLARE_STRUCT(SpellVisualKitModelAttachRec); DECLARE_STRUCT(SpellVisualPrecastTransitionsRec); DECLARE_STRUCT(StableSlotPricesRec); DECLARE_STRUCT(Startup_StringsRec); DECLARE_STRUCT(StationeryRec); DECLARE_STRUCT(StringLookupsRec); DECLARE_STRUCT(SummonPropertiesRec); DECLARE_STRUCT(TalentRec); DECLARE_STRUCT(TalentTabRec); DECLARE_STRUCT(TaxiNodesRec); DECLARE_STRUCT(TaxiPathRec); DECLARE_STRUCT(TaxiPathNodeRec); DECLARE_STRUCT(TeamContributionPointsRec); DECLARE_STRUCT(TerrainMaterialRec); DECLARE_STRUCT(TerrainTypeRec); DECLARE_STRUCT(TerrainTypeSoundsRec); DECLARE_STRUCT(TotemCategoryRec); DECLARE_STRUCT(TransportAnimationRec); DECLARE_STRUCT(TransportPhysicsRec); DECLARE_STRUCT(TransportRotationRec); DECLARE_STRUCT(UISoundLookupsRec); DECLARE_STRUCT(UnitBloodRec); DECLARE_STRUCT(UnitBloodLevelsRec); DECLARE_STRUCT(VehicleRec); DECLARE_STRUCT(VehicleSeatRec); DECLARE_STRUCT(VehicleUIIndSeatRec); DECLARE_STRUCT(VehicleUIIndicatorRec); DECLARE_STRUCT(VideoHardwareRec); DECLARE_STRUCT(VocalUISoundsRec); DECLARE_STRUCT(WMOAreaTableRec); DECLARE_STRUCT(WeaponImpactSoundsRec); DECLARE_STRUCT(WeaponSwingSounds2Rec); DECLARE_STRUCT(WeatherRec); DECLARE_STRUCT(WorldChunkSoundsRec); DECLARE_STRUCT(WorldMapAreaRec); DECLARE_STRUCT(WorldMapContinentRec); DECLARE_STRUCT(WorldMapOverlayRec); DECLARE_STRUCT(WorldMapTransformsRec); DECLARE_STRUCT(WorldSafeLocsRec); DECLARE_STRUCT(WorldStateUIRec); DECLARE_STRUCT(WorldStateZoneSoundsRec); DECLARE_STRUCT(WowError_StringsRec); DECLARE_STRUCT(ZoneIntroMusicTableRec); DECLARE_STRUCT(ZoneLightRec); DECLARE_STRUCT(ZoneLightPointRec); DECLARE_STRUCT(ZoneMusicRec); DECLARE_STRUCT(gtBarberShopCostBaseRec); DECLARE_STRUCT(gtChanceToMeleeCritRec); DECLARE_STRUCT(gtChanceToMeleeCritBaseRec); DECLARE_STRUCT(gtChanceToSpellCritRec); DECLARE_STRUCT(gtChanceToSpellCritBaseRec); DECLARE_STRUCT(gtCombatRatingsRec); DECLARE_STRUCT(gtNPCManaCostScalerRec); DECLARE_STRUCT(gtOCTClassCombatRatingScalarRec); DECLARE_STRUCT(gtOCTRegenHPRec); DECLARE_STRUCT(gtOCTRegenMPRec); DECLARE_STRUCT(gtRegenHPPerSptRec); DECLARE_STRUCT(gtRegenMPPerSptRec); DECLARE_STRUCT(gtSpellScalingRec); struct AchievementRec { int32_t m_ID; int32_t m_faction; int32_t m_instanceID; int32_t m_supercedes; const char* m_title; const char* m_description; int32_t m_category; int32_t m_points; int32_t m_uiOrder; int32_t m_flags; int32_t m_iconID; const char* m_reward; int32_t m_minimumCriteria; int32_t m_sharesCriteria; }; struct Achievement_CategoryRec { int32_t m_ID; int32_t m_parent; const char* m_name; int32_t m_uiOrder; }; struct Achievement_CriteriaRec { int32_t m_ID; int32_t m_achievementID; int32_t m_type; int32_t m_assetID; int32_t m_quantity; int32_t m_startEvent; int32_t m_startAsset; int32_t m_failEvent; int32_t m_failAsset; const char* m_description; int32_t m_flags; int32_t m_timerStartEvent; int32_t m_timerAssetID; int32_t m_timerTime; int32_t m_uiOrder; }; struct AnimKitRec { int32_t m_ID; int32_t m_oneShotDuration; int32_t m_oneShotStopAnimKitID; }; struct AnimKitBoneSetRec { int32_t m_ID; const char* m_name; int32_t m_boneDataID; int32_t m_parentAnimKitBoneSetID; int32_t m_extraBoneCount; int32_t m_altAnimKitBoneSetID; }; struct AnimKitBoneSetAliasRec { int32_t m_ID; int32_t m_boneDataID; int32_t m_animKitBoneSetID; }; struct AnimKitConfigRec { int32_t m_ID; int32_t m_configFlags; }; struct AnimKitConfigBoneSetRec { int32_t m_ID; int32_t m_parentAnimKitConfigID; int32_t m_animKitBoneSetID; int32_t m_animKitPriorityID; }; struct AnimKitPriorityRec { int32_t m_ID; int32_t m_priority; }; struct AnimKitSegmentRec { int32_t m_ID; int32_t m_parentAnimKitID; int32_t m_animID; int32_t m_animStartTime; int32_t m_animKitConfigID; int32_t m_startCondition; int32_t m_startConditionParam; int32_t m_startConditionDelay; int32_t m_endCondition; int32_t m_endConditionParam; int32_t m_endConditionDelay; float m_speed; int32_t m_segmentFlags; int32_t m_forcedVariation; int32_t m_overrideConfigFlags; int32_t m_loopToSegmentIndex; }; struct AnimReplacementRec { int32_t m_ID; int32_t m_srcAnimID; int32_t m_dstAnimID; int32_t m_parentAnimReplacementSetID; }; struct AnimReplacementSetRec { int32_t m_ID; int32_t m_execOrder; }; struct AnimationDataRec { int32_t m_ID; const char* m_name; int32_t m_weaponflags; int32_t m_bodyflags; int32_t m_flags; int32_t m_fallback; int32_t m_behaviorID; int32_t m_behaviorTier; }; struct AreaAssignmentRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; int32_t m_chunkX; int32_t m_chunkY; }; struct AreaGroupRec { int32_t m_ID; int32_t m_areaID[6]; int32_t m_nextAreaID; }; struct AreaPOIRec { int32_t m_ID; int32_t m_importance; int32_t m_icon[9]; int32_t m_factionID; float m_pos[3]; int32_t m_continentID; int32_t m_flags; int32_t m_areaID; const char* m_name; const char* m_description; int32_t m_worldStateID; int32_t m_worldMapLink; }; struct AreaTableRec { int32_t m_ID; int32_t m_continentID; int32_t m_parentAreaID; int32_t m_areaBit; int32_t m_flags; int32_t m_soundProviderPref; int32_t m_soundProviderPrefUnderwater; int32_t m_ambienceID; int32_t m_zoneMusic; int32_t m_introSound; int32_t m_explorationLevel; const char* m_areaName; int32_t m_factionGroupMask; int32_t m_liquidTypeID[4]; float m_minElevation; float m_ambientMultiplier; int32_t m_lightID; }; struct AreaTriggerRec { int32_t m_ID; int32_t m_continentID; float m_pos[3]; float m_radius; float m_boxLength; float m_boxWidth; float m_boxHeight; float m_boxYaw; }; struct ArmorLocationRec { int32_t m_ID; float m_clothmodifier; float m_leathermodifier; float m_chainmodifier; float m_platemodifier; float m_modifier; }; struct AttackAnimKitsRec { int32_t m_ID; int32_t m_itemSubclassID; int32_t m_animTypeID; int32_t m_animFrequency; int32_t m_whichHand; }; struct AttackAnimTypesRec { int32_t m_animID; const char* m_animName; int32_t m_generatedID; }; struct AuctionHouseRec { int32_t m_ID; int32_t m_factionID; int32_t m_depositRate; int32_t m_consignmentRate; const char* m_name; }; struct BankBagSlotPricesRec { int32_t m_ID; int32_t m_cost; }; struct BannedAddonsRec { int32_t m_ID; int32_t m_nameMd5[4]; int32_t m_versionMd5[4]; int32_t m_lastModified; int32_t m_flags; }; struct BarberShopStyleRec { int32_t m_ID; int32_t m_type; const char* m_displayName; const char* m_description; float m_costModifier; int32_t m_race; int32_t m_sex; int32_t m_data; }; struct BattlemasterListRec { int32_t m_ID; int32_t m_mapID[8]; int32_t m_instanceType; int32_t m_groupsAllowed; const char* m_name; int32_t m_maxGroupSize; int32_t m_holidayWorldState; int32_t m_minLevel; int32_t m_maxLevel; }; struct CameraModeRec { int32_t m_ID; const char* m_name; int32_t m_type; int32_t m_flags; float m_positionOffset[3]; float m_targetOffset[3]; float m_positionSmoothing; float m_rotationSmoothing; float m_fieldOfView; int32_t m_lockedPositionOffsetBase; int32_t m_lockedPositionOffsetDirection; int32_t m_lockedTargetOffsetBase; int32_t m_lockedTargetOffsetDirection; }; struct CameraShakesRec { int32_t m_ID; int32_t m_shakeType; int32_t m_direction; float m_amplitude; float m_frequency; float m_duration; float m_phase; float m_coefficient; }; struct Cfg_CategoriesRec { int32_t m_ID; int32_t m_localeMask; int32_t m_createCharsetMask; int32_t m_flags; const char* m_name; }; struct Cfg_ConfigsRec { int32_t m_ID; int32_t m_realmType; int32_t m_playerKillingAllowed; int32_t m_roleplaying; }; struct CharBaseInfoRec { int8_t m_raceID; int8_t m_classID; int32_t m_generatedID; }; struct CharHairGeosetsRec { int32_t m_ID; int32_t m_raceID; int32_t m_sexID; int32_t m_variationID; int32_t m_geosetID; int32_t m_showscalp; }; struct CharHairTexturesRec { int32_t m_ID; int32_t m_field_0_5_3_3368_001_race; // unconfirmed int32_t m_field_0_5_3_3368_002_gender; // unconfirmed int32_t m_field_0_5_3_3368_003; // unconfirmed int32_t m_field_0_5_3_3368_004_mayberacemask; // unconfirmed int32_t m_field_0_5_3_3368_005_the_x_in_hair_xy_blp; // unconfirmed int32_t m_field_0_5_3_3368_006; // unconfirmed int32_t m_field_0_5_3_3368_007; // unconfirmed }; struct CharSectionsRec { int32_t m_ID; int32_t m_raceID; int32_t m_sexID; int32_t m_baseSection; const char* m_textureName[3]; int32_t m_flags; int32_t m_variationIndex; int32_t m_colorIndex; }; struct CharStartOutfitRec { int32_t m_ID; int8_t m_raceID; int8_t m_classID; int8_t m_sexID; int8_t m_outfitID; int32_t m_itemID[24]; int32_t m_displayItemID[24]; int32_t m_inventoryType[24]; }; struct CharTitlesRec { int32_t m_ID; int32_t m_conditionID; const char* m_name; const char* m_name1; int32_t m_maskID; }; struct CharVariationsRec { int32_t m_raceID; int32_t m_sexID; int32_t m_textureHoldLayer[4]; int32_t m_generatedID; }; struct CharacterFacialHairStylesRec { int32_t m_raceID; int32_t m_sexID; int32_t m_variationID; int32_t m_geoset[5]; int32_t m_generatedID; }; struct ChatChannelsRec { int32_t m_ID; int32_t m_flags; int32_t m_factionGroup; const char* m_name; const char* m_shortcut; }; struct ChatProfanityRec { int32_t m_ID; const char* m_text; int32_t m_language; }; struct ChrClassesRec { int32_t m_ID; int32_t m_damageBonusStat; int32_t m_displayPower; const char* m_petNameToken; const char* m_name; const char* m_nameFemale; const char* m_nameMale; const char* m_filename; int32_t m_spellClassSet; int32_t m_flags; int32_t m_cinematicSequenceID; int32_t m_requiredExpansion; }; struct ChrRacesRec { int32_t m_ID; int32_t m_flags; int32_t m_factionID; int32_t m_explorationSoundID; int32_t m_maleDisplayID; int32_t m_femaleDisplayID; const char* m_clientPrefix; int32_t m_baseLanguage; int32_t m_creatureType; int32_t m_resSicknessSpellID; int32_t m_splashSoundID; const char* m_clientFileString; int32_t m_cinematicSequenceID; int32_t m_alliance; const char* m_name; const char* m_nameFemale; const char* m_nameMale; const char* m_facialHairCustomization[2]; const char* m_hairCustomization; int32_t m_requiredExpansion; }; struct CinematicCameraRec { int32_t m_ID; const char* m_model; int32_t m_soundID; float m_origin[3]; float m_originFacing; }; struct CinematicSequencesRec { int32_t m_ID; int32_t m_soundID; int32_t m_camera[8]; }; struct CreatureDisplayInfoRec { int32_t m_ID; int32_t m_modelID; int32_t m_soundID; int32_t m_extendedDisplayInfoID; float m_creatureModelScale; int32_t m_creatureModelAlpha; const char* m_textureVariation[3]; const char* m_portraitTextureName; int32_t m_sizeClass; int32_t m_bloodID; int32_t m_npcsoundID; int32_t m_particleColorID; int32_t m_creatureGeosetData; int32_t m_objectEffectPackageID; }; struct CreatureDisplayInfoExtraRec { int32_t m_ID; int32_t m_displayRaceID; int32_t m_displaySexID; int32_t m_skinID; int32_t m_faceID; int32_t m_hairStyleID; int32_t m_hairColorID; int32_t m_facialHairID; int32_t m_npcitemDisplay[11]; int32_t m_flags; const char* m_bakeName; }; struct CreatureFamilyRec { int32_t m_ID; float m_minScale; int32_t m_minScaleLevel; float m_maxScale; int32_t m_maxScaleLevel; int32_t m_skillLine[2]; int32_t m_petFoodMask; int32_t m_petTalentType; int32_t m_categoryEnumID; const char* m_name; const char* m_iconFile; }; struct CreatureModelDataRec { int32_t m_ID; int32_t m_flags; const char* m_modelName; int32_t m_sizeClass; float m_modelScale; int32_t m_bloodID; int32_t m_footprintTextureID; float m_footprintTextureLength; float m_footprintTextureWidth; float m_footprintParticleScale; int32_t m_foleyMaterialID; int32_t m_footstepShakeSize; int32_t m_deathThudShakeSize; int32_t m_soundID; float m_collisionWidth; float m_collisionHeight; float m_mountHeight; float m_geoBoxMinX; float m_geoBoxMinY; float m_geoBoxMinZ; float m_geoBoxMaxX; float m_geoBoxMaxY; float m_geoBoxMaxZ; float m_worldEffectScale; float m_attachedEffectScale; float m_missileCollisionRadius; float m_missileCollisionPush; float m_missileCollisionRaise; }; struct CreatureMovementInfoRec { int32_t m_ID; float m_smoothFacingChaseRate; }; struct CreatureSoundDataRec { int32_t m_ID; int32_t m_soundExertionID; int32_t m_soundExertionCriticalID; int32_t m_soundInjuryID; int32_t m_soundInjuryCriticalID; int32_t m_soundInjuryCrushingBlowID; int32_t m_soundDeathID; int32_t m_soundStunID; int32_t m_soundStandID; int32_t m_soundFootstepID; int32_t m_soundAggroID; int32_t m_soundWingFlapID; int32_t m_soundWingGlideID; int32_t m_soundAlertID; int32_t m_soundFidget[5]; int32_t m_customAttack[4]; int32_t m_npcsoundID; int32_t m_loopSoundID; int32_t m_creatureImpactType; int32_t m_soundJumpStartID; int32_t m_soundJumpEndID; int32_t m_soundPetAttackID; int32_t m_soundPetOrderID; int32_t m_soundPetDismissID; float m_fidgetDelaySecondsMin; float m_fidgetDelaySecondsMax; int32_t m_birthSoundID; int32_t m_spellCastDirectedSoundID; int32_t m_submergeSoundID; int32_t m_submergedSoundID; int32_t m_creatureSoundDataIdpet; }; struct CreatureSpellDataRec { int32_t m_ID; int32_t m_spells[4]; int32_t m_availability[4]; }; struct CreatureTypeRec { int32_t m_ID; const char* m_name; int32_t m_flags; }; struct CurrencyCategoryRec { int32_t m_ID; int32_t m_flags; const char* m_name; }; struct CurrencyTypesRec { int32_t m_ID; int32_t m_itemID; int32_t m_categoryID; int32_t m_bitIndex; }; struct DanceMovesRec { int32_t m_ID; int32_t m_type; int32_t m_param; int32_t m_fallback; int32_t m_racemask; const char* m_internalName; const char* m_name; int32_t m_lockID; }; struct DeathThudLookupsRec { int32_t m_ID; int32_t m_sizeClass; int32_t m_terrainTypeSoundID; int32_t m_soundEntryID; int32_t m_soundEntryIdwater; }; struct DeclinedWordRec { int32_t m_ID; const char* m_word; }; struct DeclinedWordCasesRec { int32_t m_ID; int32_t m_declinedWordID; int32_t m_caseIndex; const char* m_declinedWord; }; struct DestructibleModelDataRec { int32_t m_ID; int32_t m_state0ImpactEffectDoodadSet; int32_t m_state0AmbientDoodadSet; int32_t m_state1WMO; int32_t m_state1DestructionDoodadSet; int32_t m_state1ImpactEffectDoodadSet; int32_t m_state1AmbientDoodadSet; int32_t m_state2WMO; int32_t m_state2DestructionDoodadSet; int32_t m_state2ImpactEffectDoodadSet; int32_t m_state2AmbientDoodadSet; int32_t m_state3WMO; int32_t m_state3InitDoodadSet; int32_t m_state3AmbientDoodadSet; int32_t m_ejectDirection; int32_t m_repairGroundFx; int32_t m_doNotHighlight; int32_t m_healEffect; int32_t m_healEffectSpeed; }; struct DungeonEncounterRec { int32_t m_ID; int32_t m_mapID; int32_t m_difficulty; int32_t m_orderIndex; int32_t m_bit; const char* m_name; int32_t m_spellIconID; }; struct DungeonMapRec { int32_t m_ID; int32_t m_mapID; int32_t m_floorIndex; float m_minX; float m_maxX; float m_minY; float m_maxY; int32_t m_parentWorldMapID; }; struct DungeonMapChunkRec { int32_t m_ID; int32_t m_mapID; int32_t m_wmogroupID; int32_t m_dungeonMapID; float m_minZ; }; struct DurabilityCostsRec { int32_t m_ID; int32_t m_weaponSubClassCost[21]; int32_t m_armorSubClassCost[8]; }; struct DurabilityQualityRec { int32_t m_ID; float m_data; }; struct EmotesRec { int32_t m_ID; const char* m_emoteSlashCommand; int32_t m_animID; int32_t m_emoteFlags; int32_t m_emoteSpecProc; int32_t m_emoteSpecProcParam; int32_t m_eventSoundID; }; struct EmotesTextRec { int32_t m_ID; const char* m_name; int32_t m_emoteID; int32_t m_emoteText[16]; }; struct EmotesTextDataRec { int32_t m_ID; const char* m_text; }; struct EmotesTextSoundRec { int32_t m_ID; int32_t m_emotesTextID; int32_t m_raceID; int32_t m_sexID; int32_t m_soundID; }; struct EnvironmentalDamageRec { int32_t m_ID; int32_t m_enumID; int32_t m_visualkitID; }; struct ExhaustionRec { int32_t m_ID; int32_t m_xp; float m_factor; float m_outdoorHours; float m_innHours; const char* m_name; float m_threshold; }; struct FactionRec { int32_t m_ID; int32_t m_reputationIndex; int32_t m_reputationRaceMask[4]; int32_t m_reputationClassMask[4]; int32_t m_reputationBase[4]; int32_t m_reputationFlags[4]; int32_t m_parentFactionID; float m_parentFactionMod[2]; int32_t m_parentFactionCap[2]; const char* m_name; const char* m_description; }; struct FactionGroupRec { int32_t m_ID; int32_t m_maskID; const char* m_internalName; const char* m_name; }; struct FactionTemplateRec { int32_t m_ID; int32_t m_faction; int32_t m_flags; int32_t m_factionGroup; int32_t m_friendGroup; int32_t m_enemyGroup; int32_t m_enemies[4]; int32_t m_friend[4]; }; struct FileDataRec { int32_t m_ID; const char* m_filename; const char* m_filepath; }; struct FootprintTexturesRec { int32_t m_ID; const char* m_footstepFilename; }; struct FootstepTerrainLookupRec { int32_t m_ID; int32_t m_creatureFootstepID; int32_t m_terrainSoundID; int32_t m_soundID; int32_t m_soundIdsplash; }; struct GMSurveyAnswersRec { int32_t m_ID; int32_t m_sortIndex; int32_t m_gmsurveyQuestionID; const char* m_answer; }; struct GMSurveyCurrentSurveyRec { int32_t m_langid; int32_t m_gmsurveyID; int32_t m_generatedID; }; struct GMSurveyQuestionsRec { int32_t m_ID; const char* m_question; }; struct GMSurveySurveysRec { int32_t m_ID; int32_t m_[10]; }; struct GMTicketCategoryRec { int32_t m_ID; const char* m_category; }; struct GameObjectArtKitRec { int32_t m_ID; const char* m_textureVariation[3]; const char* m_attachModel[4]; }; struct GameObjectDisplayInfoRec { int32_t m_ID; const char* m_modelName; int32_t m_sound[10]; float m_geoBoxMin[3]; float m_geoBoxMax[3]; int32_t m_objectEffectPackageID; }; struct GameTablesRec { const char* m_name; int32_t m_numRows; int32_t m_numColumns; int32_t m_generatedID; }; struct GameTipsRec { int32_t m_ID; const char* m_text; }; struct GemPropertiesRec { int32_t m_ID; int32_t m_enchantID; int32_t m_maxcountInv; int32_t m_maxcountItem; int32_t m_type; }; struct GlueScreenEmoteRec { int32_t m_ID; int32_t m_classID; int32_t m_raceID; int32_t m_sexID; int32_t m_leftHandItemType; int32_t m_rightHandItemType; int32_t m_animKitID; int32_t m_spellVisualKitID; }; struct GlyphPropertiesRec { int32_t m_ID; int32_t m_spellID; int32_t m_glyphSlotFlags; int32_t m_spellIconID; }; struct GlyphSlotRec { int32_t m_ID; int32_t m_type; int32_t m_tooltip; }; struct GroundEffectDoodadRec { int32_t m_ID; const char* m_doodadpath; int32_t m_flags; }; struct GroundEffectTextureRec { int32_t m_ID; int32_t m_doodadID[4]; int32_t m_doodadWeight[4]; int32_t m_density; int32_t m_sound; }; struct GuildPerkSpellsRec { int32_t m_ID; int32_t m_guildLevel; int32_t m_spellID; }; struct HelmetGeosetVisDataRec { int32_t m_ID; int32_t m_hideGeoset[7]; }; struct HolidayDescriptionsRec { int32_t m_ID; const char* m_description; }; struct HolidayNamesRec { int32_t m_ID; const char* m_name; }; struct HolidaysRec { int32_t m_ID; int32_t m_duration[10]; int32_t m_date[26]; int32_t m_region; int32_t m_looping; int32_t m_calendarFlags[10]; int32_t m_holidayNameID; int32_t m_holidayDescriptionID; const char* m_textureFileName; int32_t m_priority; int32_t m_calendarFilterType; int32_t m_flags; }; struct ItemRec { int32_t m_ID; int32_t m_classID; int32_t m_subclassID; int32_t m_soundOverrideSubclassID; int32_t m_material; int32_t m_displayInfoID; int32_t m_inventoryType; int32_t m_sheatheType; }; struct ItemArmorQualityRec { int32_t m_ID; float m_qualitymod[7]; int32_t m_itemLevel; }; struct ItemArmorShieldRec { int32_t m_ID; int32_t m_itemLevel; float m_quality[7]; }; struct ItemArmorTotalRec { int32_t m_ID; int32_t m_itemLevel; float m_cloth; float m_leather; float m_mail; float m_plate; }; struct ItemBagFamilyRec { int32_t m_ID; const char* m_name; }; struct ItemClassRec { int32_t m_classID; int32_t m_subclassMapID; int32_t m_flags; const char* m_className; int32_t m_generatedID; }; struct ItemCondExtCostsRec { int32_t m_ID; int32_t m_condExtendedCost; // unconfirmed int32_t m_itemExtendedCostEntry; int32_t m_arenaSeason; // unconfirmed }; struct ItemDamageAmmoRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageOneHandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageOneHandCasterRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageRangedRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageThrownRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageTwoHandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageTwoHandCasterRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageWandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDisplayInfoRec { int32_t m_ID; const char* m_modelName[2]; const char* m_modelTexture[2]; const char* m_inventoryIcon[2]; int32_t m_geosetGroup[3]; int32_t m_flags; int32_t m_spellVisualID; int32_t m_groupSoundIndex; int32_t m_helmetGeosetVisID[2]; const char* m_texture[8]; int32_t m_itemVisual; int32_t m_particleColorID; }; struct ItemExtendedCostRec { int32_t m_ID; int32_t m_honorPoints; int32_t m_arenaPoints; int32_t m_arenaBracket; int32_t m_itemID[5]; int32_t m_itemCount[5]; int32_t m_requiredArenaRating; int32_t m_itemPurchaseGroup; }; struct ItemGroupSoundsRec { int32_t m_ID; int32_t m_sound[4]; }; struct ItemLimitCategoryRec { int32_t m_ID; const char* m_name; int32_t m_quantity; int32_t m_flags; }; struct ItemPetFoodRec { int32_t m_ID; const char* m_name; }; struct ItemPurchaseGroupRec { int32_t m_ID; int32_t m_itemID[8]; const char* m_name; }; struct ItemRandomPropertiesRec { int32_t m_ID; const char* m_name; int32_t m_enchantment[5]; const char* m_name; }; struct ItemRandomSuffixRec { int32_t m_ID; const char* m_name; const char* m_internalName; int32_t m_enchantment[5]; int32_t m_allocationPct[5]; }; struct ItemReforgeRec { int32_t m_ID; // unconfirmed int32_t m_sourceStat; // unconfirmed float m_sourceMultiplier; // unconfirmed int32_t m_targetStat; // unconfirmed float m_targetMultiplier; // unconfirmed }; struct ItemSetRec { int32_t m_ID; const char* m_name; int32_t m_itemID[17]; int32_t m_setSpellID[8]; int32_t m_setThreshold[8]; int32_t m_requiredSkill; int32_t m_requiredSkillRank; }; struct ItemSubClassRec { int32_t m_classID; int32_t m_subClassID; int32_t m_prerequisiteProficiency; int32_t m_postrequisiteProficiency; int32_t m_flags; int32_t m_displayFlags; int32_t m_weaponParrySeq; int32_t m_weaponReadySeq; int32_t m_weaponAttackSeq; int32_t m_weaponSwingSize; const char* m_displayName; const char* m_verboseName; int32_t m_generatedID; }; struct ItemSubClassMaskRec { int32_t m_classID; int32_t m_mask; const char* m_name; int32_t m_generatedID; }; struct ItemVisualEffectsRec { int32_t m_ID; const char* m_model; }; struct ItemVisualsRec { int32_t m_ID; int32_t m_slot[5]; }; struct LFGDungeonExpansionRec { int32_t m_ID; int32_t m_lfgID; int32_t m_expansionLevel; int32_t m_randomID; int32_t m_hardLevelMin; int32_t m_hardLevelMax; int32_t m_targetLevelMin; int32_t m_targetLevelMax; }; struct LFGDungeonGroupRec { int32_t m_ID; const char* m_name; int32_t m_orderIndex; int32_t m_parentGroupID; int32_t m_typeID; }; struct LFGDungeonsRec { int32_t m_ID; const char* m_name; int32_t m_minLevel; int32_t m_maxLevel; int32_t m_targetLevel; int32_t m_targetLevelMin; int32_t m_targetLevelMax; int32_t m_mapID; int32_t m_difficulty; int32_t m_flags; int32_t m_typeID; int32_t m_faction; const char* m_textureFilename; int32_t m_expansionLevel; int32_t m_orderIndex; int32_t m_groupID; const char* m_description; }; struct LanguageWordsRec { int32_t m_ID; int32_t m_languageID; const char* m_word; }; struct LanguagesRec { int32_t m_ID; const char* m_name; }; struct LightRec { int32_t m_ID; int32_t m_continentID; float m_gameCoords[3]; float m_gameFalloffStart; float m_gameFalloffEnd; int32_t m_lightParamsID[8]; }; struct LightFloatBandRec { int32_t m_ID; int32_t m_num; int32_t m_time[16]; float m_data[16]; }; struct LightIntBandRec { int32_t m_ID; int32_t m_num; int32_t m_time[16]; int32_t m_data[16]; }; struct LightParamsRec { int32_t m_ID; int32_t m_highlightSky; int32_t m_lightSkyboxID; float m_glow; float m_waterShallowAlpha; float m_waterDeepAlpha; float m_oceanShallowAlpha; float m_oceanDeepAlpha; int32_t m_flags; }; struct LightSkyboxRec { int32_t m_ID; const char* m_name; int32_t m_flags; }; struct LiquidMaterialRec { int32_t m_ID; int32_t m_lvf; int32_t m_flags; }; struct LiquidObjectRec { int32_t m_ID; float m_flowDirection; float m_flowSpeed; int32_t m_liquidTypeID; int32_t m_fishable; int32_t m_reflection; }; struct LiquidTypeRec { int32_t m_ID; const char* m_name; int32_t m_flags; int32_t m_soundBank; int32_t m_soundID; int32_t m_spellID; float m_maxDarkenDepth; float m_fogDarkenIntensity; float m_ambDarkenIntensity; float m_dirDarkenIntensity; int32_t m_lightID; float m_particleScale; int32_t m_particleMovement; int32_t m_particleTexSlots; int32_t m_materialID; const char* m_texture[6]; int32_t m_color[2]; float m_float[18]; int32_t m_int[4]; }; struct LoadingScreenTaxiSplinesRec { int32_t m_ID; int32_t m_pathID; float m_locx[8]; float m_locy[8]; int32_t m_legIndex; }; struct LoadingScreensRec { int32_t m_ID; const char* m_name; const char* m_fileName; int32_t m_hasWideScreen; }; struct LockRec { int32_t m_ID; int32_t m_type[8]; int32_t m_index[8]; int32_t m_skill[8]; int32_t m_action[8]; }; struct LockTypeRec { int32_t m_ID; const char* m_name; const char* m_resourceName; const char* m_verb; const char* m_cursorName; }; struct MailTemplateRec { int32_t m_ID; const char* m_subject; const char* m_body; }; struct MapRec { int32_t m_ID; const char* m_directory; int32_t m_instanceType; int32_t m_flags; // unconfirmed int32_t m_pvp; const char* m_mapName; int32_t m_areaTableID; const char* m_mapDescription0; const char* m_mapDescription1; int32_t m_loadingScreenID; float m_minimapIconScale; int32_t m_corpseMapID; float m_corpse[2]; int32_t m_timeOfDayOverride; int32_t m_expansionID; int32_t m_raidOffset; int32_t m_maxPlayers; }; struct MapDifficultyRec { int32_t m_ID; int32_t m_mapID; int32_t m_difficulty; const char* m_message; int32_t m_raidDuration; int32_t m_maxPlayers; const char* m_difficultystring; }; struct MaterialRec { int32_t m_ID; int32_t m_flags; int32_t m_foleySoundID; int32_t m_sheatheSoundID; int32_t m_unsheatheSoundID; }; struct MountTypeRec { int32_t m_ID; int32_t m_capability[8]; }; struct MovieRec { int32_t m_ID; const char* m_filename; int32_t m_volume; }; struct MovieFileDataRec { int32_t m_fileDataID; int32_t m_resolution; int32_t m_generatedID; }; struct MovieVariationRec { int32_t m_ID; int32_t m_movieID; int32_t m_fileDataID; }; struct NPCSoundsRec { int32_t m_ID; int32_t m_soundID[4]; }; struct NameGenRec { int32_t m_ID; const char* m_name; int32_t m_raceID; int32_t m_sex; }; struct NamesProfanityRec { int32_t m_ID; const char* m_name; int32_t m_language; }; struct NamesReservedRec { int32_t m_ID; const char* m_name; int32_t m_language; }; struct ObjectEffectRec { int32_t m_ID; const char* m_name; int32_t m_objectEffectGroupID; int32_t m_triggerType; int32_t m_eventType; int32_t m_effectRecType; int32_t m_effectRecID; int32_t m_attachment; float m_offset[3]; int32_t m_objectEffectModifierID; }; struct ObjectEffectGroupRec { int32_t m_ID; const char* m_name; }; struct ObjectEffectModifierRec { int32_t m_ID; int32_t m_inputType; int32_t m_mapType; int32_t m_outputType; float m_param[4]; }; struct ObjectEffectPackageRec { int32_t m_ID; const char* m_name; }; struct ObjectEffectPackageElemRec { int32_t m_ID; int32_t m_objectEffectPackageID; int32_t m_objectEffectGroupID; int32_t m_stateType; }; struct OverrideSpellDataRec { int32_t m_ID; int32_t m_spells[10]; int32_t m_flags; }; struct PVPDifficultyRec { int32_t m_ID; int32_t m_mapID; int32_t m_rangeIndex; int32_t m_minLevel; int32_t m_maxLevel; int32_t m_difficulty; }; struct PackageRec { int32_t m_ID; const char* m_icon; int32_t m_cost; const char* m_name; }; struct PageTextMaterialRec { int32_t m_ID; const char* m_name; }; struct PaperDollItemFrameRec { const char* m_itemButtonName; const char* m_slotIcon; int32_t m_slotNumber; int32_t m_generatedID; }; struct ParticleColorRec { int32_t m_ID; int32_t m_start[3]; int32_t m_mid[3]; int32_t m_end[3]; }; struct PetPersonalityRec { int32_t m_ID; const char* m_name; int32_t m_happinessThreshold[3]; float m_happinessDamage[3]; }; struct PetitionTypeRec { int32_t m_ID; // unconfirmed const char* m_name; // unconfirmed int32_t m_type; // unconfirmed }; struct PhaseRec { int32_t m_ID; int32_t m_mapID; int32_t m_parentMapID[2]; // unconfirmed const char* m_name; int32_t m_flags; }; struct PhaseShiftZoneSoundsRec { int32_t m_ID; int32_t m_areaID; int32_t m_wmoareaID; int32_t m_phaseID; int32_t m_phaseGroupID; int32_t m_phaseUseFlags; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; int32_t m_uwzoneIntroMusicID; int32_t m_uwzoneMusicID; int32_t m_uwsoundAmbienceID; int32_t m_uwsoundProviderPreferencesID; }; struct PhaseXPhaseGroupRec { int32_t m_ID; int32_t m_phaseID; int32_t m_phaseGroupID; }; struct PowerDisplayRec { int32_t m_ID; int32_t m_actualType; const char* m_globalStringBaseTag; int8_t m_red; int8_t m_green; int8_t m_blue; }; struct QuestFactionRewardRec { int32_t m_ID; int32_t m_difficulty[10]; }; struct QuestInfoRec { int32_t m_ID; const char* m_infoName; }; struct QuestSortRec { int32_t m_ID; const char* m_sortName; }; struct QuestXPRec { int32_t m_ID; int32_t m_difficulty[10]; }; struct RandPropPointsRec { int32_t m_ID; int32_t m_epic[5]; int32_t m_superior[5]; int32_t m_good[5]; }; struct ResearchBranchRec { int32_t m_ID; const char* m_name; int32_t m_researchFieldID; int32_t m_currencyID; const char* m_texture; int32_t m_itemID; }; struct ResistancesRec { int32_t m_ID; int32_t m_flags; int32_t m_fizzleSoundID; const char* m_name; }; struct ScalingStatDistributionRec { int32_t m_ID; int32_t m_statID[10]; int32_t m_bonus[10]; int32_t m_maxlevel; }; struct ScalingStatValuesRec { int32_t m_ID; int32_t m_charlevel; int32_t m_shoulderBudget; int32_t m_trinketBudget; int32_t m_weaponBudget1h; int32_t m_rangedBudget; int32_t m_clothShoulderArmor; int32_t m_leatherShoulderArmor; int32_t m_mailShoulderArmor; int32_t m_plateShoulderArmor; int32_t m_weaponDps1h; int32_t m_weaponDps2h; int32_t m_spellcasterDps1h; int32_t m_spellcasterDps2h; int32_t m_rangedDps; int32_t m_wandDps; int32_t m_spellPower; int32_t m_primaryBudget; int32_t m_tertiaryBudget; int32_t m_clothCloakArmor; int32_t m_clothChestArmor; int32_t m_leatherChestArmor; int32_t m_mailChestArmor; int32_t m_plateChestArmor; }; struct ScreenEffectRec { int32_t m_ID; const char* m_name; int32_t m_effect; int32_t m_param[4]; int32_t m_lightParamsID; int32_t m_soundAmbienceID; int32_t m_zoneMusicID; }; struct ServerMessagesRec { int32_t m_ID; const char* m_text; }; struct SheatheSoundLookupsRec { int32_t m_ID; int32_t m_classID; int32_t m_subclassID; int32_t m_material; int32_t m_checkMaterial; int32_t m_sheatheSound; int32_t m_unsheatheSound; }; struct SkillCostsDataRec { int32_t m_ID; int32_t m_skillCostsID; int32_t m_cost[3]; }; struct SkillLineRec { int32_t m_ID; int32_t m_categoryID; int32_t m_skillCostsID; const char* m_displayName; const char* m_description; int32_t m_spellIconID; const char* m_alternateVerb; int32_t m_canLink; }; struct SkillLineAbilityRec { int32_t m_ID; int32_t m_skillLine; int32_t m_spell; int32_t m_raceMask; int32_t m_classMask; int32_t m_excludeRace; int32_t m_excludeClass; int32_t m_minSkillLineRank; int32_t m_supercededBySpell; int32_t m_acquireMethod; int32_t m_trivialSkillLineRankHigh; int32_t m_trivialSkillLineRankLow; int32_t m_characterPoints[2]; }; struct SkillLineCategoryRec { int32_t m_ID; const char* m_name; int32_t m_sortIndex; }; struct SkillRaceClassInfoRec { int32_t m_ID; int32_t m_skillID; int32_t m_raceMask; int32_t m_classMask; int32_t m_flags; int32_t m_minLevel; int32_t m_skillTierID; int32_t m_skillCostIndex; }; struct SkillTiersRec { int32_t m_ID; int32_t m_cost[16]; int32_t m_value[16]; }; struct SoundAmbienceRec { int32_t m_ID; int32_t m_ambienceID[2]; }; struct SoundEmittersRec { int32_t m_ID; float m_position[3]; float m_direction[3]; int32_t m_soundEntryAdvancedID; int32_t m_mapID; const char* m_name; }; struct SoundEntriesRec { int32_t m_ID; int32_t m_soundType; const char* m_name; const char* m_file[10]; int32_t m_freq[10]; const char* m_directoryBase; float m_volumeFloat; int32_t m_flags; float m_minDistance; float m_distanceCutoff; int32_t m_eaxdef; int32_t m_soundEntriesAdvancedID; }; struct SoundEntriesAdvancedRec { int32_t m_ID; int32_t m_soundEntryID; float m_innerRadius2d; int32_t m_timeA; int32_t m_timeB; int32_t m_timeC; int32_t m_timeD; int32_t m_randomOffsetRange; int32_t m_usage; int32_t m_timeIntervalMin; int32_t m_timeIntervalMax; int32_t m_volumeSliderCategory; float m_duckToSfx; float m_duckToMusic; float m_duckToAmbience; float m_innerRadiusOfInfluence; float m_outerRadiusOfInfluence; int32_t m_timeToDuck; int32_t m_timeToUnduck; float m_insideAngle; float m_outsideAngle; float m_outsideVolume; float m_outerRadius2d; const char* m_name; }; struct SoundFilterRec { int32_t m_ID; const char* m_name; }; struct SoundFilterElemRec { int32_t m_ID; int32_t m_soundFilterID; int32_t m_orderIndex; int32_t m_filterType; float m_params[9]; }; struct SoundProviderPreferencesRec { int32_t m_ID; const char* m_description; int32_t m_flags; int32_t m_eaxenvironmentSelection; float m_eaxdecayTime; float m_eax2EnvironmentSize; float m_eax2EnvironmentDiffusion; int32_t m_eax2Room; int32_t m_eax2RoomHf; float m_eax2DecayHfratio; int32_t m_eax2Reflections; float m_eax2ReflectionsDelay; int32_t m_eax2Reverb; float m_eax2ReverbDelay; float m_eax2RoomRolloff; float m_eax2AirAbsorption; int32_t m_eax3RoomLf; float m_eax3DecayLfratio; float m_eax3EchoTime; float m_eax3EchoDepth; float m_eax3ModulationTime; float m_eax3ModulationDepth; float m_eax3Hfreference; float m_eax3Lfreference; }; struct SoundSamplePreferencesRec { int32_t m_ID; int32_t m_field_0_6_0_3592_001; // unconfirmed int32_t m_field_0_6_0_3592_002; // unconfirmed int32_t m_eax2SampleRoom; int32_t m_field_0_6_0_3592_004; // unconfirmed int32_t m_field_0_6_0_3592_005; // unconfirmed float m_field_0_6_0_3592_006; // unconfirmed int32_t m_field_0_6_0_3592_007; // unconfirmed float m_eax2SampleOcclusionLfratio; float m_eax2SampleOcclusionRoomRatio; int32_t m_field_0_6_0_3592_010; // unconfirmed float m_eax1EffectLevel; int32_t m_field_0_6_0_3592_012; // unconfirmed float m_field_0_6_0_3592_013; // unconfirmed float m_eax3SampleExclusion; float m_field_0_6_0_3592_015; // unconfirmed int32_t m_field_0_6_0_3592_016; // unconfirmed }; struct SoundWaterTypeRec { int32_t m_ID; int32_t m_soundType; int32_t m_soundSubtype; int32_t m_soundID; }; struct SpamMessagesRec { int32_t m_ID; const char* m_text; }; struct SpellRec { int32_t m_ID; int32_t m_category; int32_t m_dispelType; int32_t m_mechanic; int32_t m_attributes; int32_t m_attributesEx; int32_t m_attributesExB; int32_t m_attributesExC; int32_t m_attributesExD; int32_t m_attributesExE; int32_t m_attributesExF; int32_t m_attributesExG; int32_t m_shapeshiftMask[2]; int32_t m_shapeshiftExclude[2]; int32_t m_targets; int32_t m_targetCreatureType; int32_t m_requiresSpellFocus; int32_t m_facingCasterFlags; int32_t m_casterAuraState; int32_t m_targetAuraState; int32_t m_excludeCasterAuraState; int32_t m_excludeTargetAuraState; int32_t m_casterAuraSpell; int32_t m_targetAuraSpell; int32_t m_excludeCasterAuraSpell; int32_t m_excludeTargetAuraSpell; int32_t m_castingTimeIndex; int32_t m_recoveryTime; int32_t m_categoryRecoveryTime; int32_t m_interruptFlags; int32_t m_auraInterruptFlags; int32_t m_channelInterruptFlags; int32_t m_procTypeMask; int32_t m_procChance; int32_t m_procCharges; int32_t m_maxLevel; int32_t m_baseLevel; int32_t m_spellLevel; int32_t m_durationIndex; int32_t m_powerType; int32_t m_manaCost; int32_t m_manaCostPerLevel; int32_t m_manaPerSecond; int32_t m_manaPerSecondPerLevel; int32_t m_rangeIndex; float m_speed; int32_t m_modalNextSpell; int32_t m_cumulativeAura; int32_t m_totem[2]; int32_t m_reagent[8]; int32_t m_reagentCount[8]; int32_t m_equippedItemClass; int32_t m_equippedItemSubclass; int32_t m_equippedItemInvTypes; int32_t m_effect[3]; int32_t m_effectDieSides[3]; float m_effectRealPointsPerLevel[3]; int32_t m_effectBasePoints[3]; int32_t m_effectMechanic[3]; int32_t m_implicitTargetA[3]; int32_t m_implicitTargetB[3]; int32_t m_effectRadiusIndex[3]; int32_t m_effectAura[3]; int32_t m_effectAuraPeriod[3]; float m_effectAmplitude[3]; int32_t m_effectChainTargets[3]; int32_t m_effectItemType[3]; int32_t m_effectMiscValue[3]; int32_t m_effectMiscValueB[3]; int32_t m_effectTriggerSpell[3]; float m_effectPointsPerCombo[3]; int32_t m_effectSpellClassMaskA[3]; int32_t m_effectSpellClassMaskB[3]; int32_t m_effectSpellClassMaskC[3]; int32_t m_spellVisualID[2]; int32_t m_spellIconID; int32_t m_activeIconID; int32_t m_spellPriority; const char* m_name; const char* m_nameSubtext; const char* m_description; const char* m_auraDescription; int32_t m_manaCostPct; int32_t m_startRecoveryCategory; int32_t m_startRecoveryTime; int32_t m_maxTargetLevel; int32_t m_spellClassSet; int32_t m_spellClassMask[3]; int32_t m_maxTargets; int32_t m_defenseType; int32_t m_preventionType; int32_t m_stanceBarOrder; float m_effectChainAmplitude[3]; int32_t m_minFactionID; int32_t m_minReputation; int32_t m_requiredAuraVision; int32_t m_requiredTotemCategoryID[2]; int32_t m_requiredAreasID; int32_t m_schoolMask; int32_t m_runeCostID; int32_t m_spellMissileID; int32_t m_powerDisplayID; float m_effectBonusCoefficient[3]; int32_t m_descriptionVariablesID; int32_t m_difficulty; }; struct SpellAuraOptionsRec { int32_t m_ID; int32_t m_cumulativeAura; int32_t m_procChance; int32_t m_procCharges; int32_t m_procTypeMask; }; struct SpellAuraRestrictionsRec { int32_t m_ID; int32_t m_casterAuraState; int32_t m_targetAuraState; int32_t m_excludeCasterAuraState; int32_t m_excludeTargetAuraState; int32_t m_casterAuraSpell; int32_t m_targetAuraSpell; int32_t m_excludeCasterAuraSpell; int32_t m_excludeTargetAuraSpell; }; struct SpellCastTimesRec { int32_t m_ID; int32_t m_base; int32_t m_perLevel; int32_t m_minimum; }; struct SpellCastingRequirementsRec { int32_t m_ID; int32_t m_facingCasterFlags; int32_t m_minFactionID; int32_t m_minReputation; int32_t m_requiredAreasID; int32_t m_requiredAuraVision; int32_t m_requiresSpellFocus; }; struct SpellCategoriesRec { int32_t m_ID; int32_t m_category; int32_t m_defenseType; int32_t m_dispelType; int32_t m_mechanic; int32_t m_preventionType; int32_t m_startRecoveryCategory; }; struct SpellCategoryRec { int32_t m_ID; int32_t m_flags; }; struct SpellChainEffectsRec { int32_t m_ID; float m_avgSegLen; float m_width; float m_noiseScale; float m_texCoordScale; int32_t m_segDuration; int32_t m_segDelay; const char* m_texture; int32_t m_flags; int32_t m_jointCount; float m_jointOffsetRadius; int32_t m_jointsPerMinorJoint; int32_t m_minorJointsPerMajorJoint; float m_minorJointScale; float m_majorJointScale; float m_jointMoveSpeed; float m_jointSmoothness; float m_minDurationBetweenJointJumps; float m_maxDurationBetweenJointJumps; float m_waveHeight; float m_waveFreq; float m_waveSpeed; float m_minWaveAngle; float m_maxWaveAngle; float m_minWaveSpin; float m_maxWaveSpin; float m_arcHeight; float m_minArcAngle; float m_maxArcAngle; float m_minArcSpin; float m_maxArcSpin; float m_delayBetweenEffects; float m_minFlickerOnDuration; float m_maxFlickerOnDuration; float m_minFlickerOffDuration; float m_maxFlickerOffDuration; float m_pulseSpeed; float m_pulseOnLength; float m_pulseFadeLength; int8_t m_alpha; int8_t m_red; int8_t m_green; int8_t m_blue; int8_t m_blendMode; const char* m_combo; int32_t m_renderLayer; float m_textureLength; float m_wavePhase; }; struct SpellClassOptionsRec { int32_t m_ID; int32_t m_modalNextSpell; int32_t m_spellClassMask[3]; int32_t m_spellClassSet; }; struct SpellCooldownsRec { int32_t m_ID; int32_t m_categoryRecoveryTime; int32_t m_recoveryTime; int32_t m_startRecoveryTime; }; struct SpellDescriptionVariablesRec { int32_t m_ID; const char* m_variables; }; struct SpellDifficultyRec { int32_t m_ID; int32_t m_difficultySpellID[4]; }; struct SpellDispelTypeRec { int32_t m_ID; const char* m_name; int32_t m_mask; int32_t m_immunityPossible; const char* m_internalName; }; struct SpellDurationRec { int32_t m_ID; int32_t m_duration; int32_t m_durationPerLevel; int32_t m_maxDuration; }; struct SpellEffectRec { int32_t m_ID; int32_t m_effect; float m_effectAmplitude; int32_t m_effectAura; int32_t m_effectAuraPeriod; int32_t m_effectBasePoints; float m_effectBonusCoefficient; float m_effectChainAmplitude; int32_t m_effectChainTargets; int32_t m_effectDieSides; int32_t m_effectItemType; int32_t m_effectMechanic; int32_t m_effectMiscValue[2]; float m_effectPointsPerResource; int32_t m_effectRadiusIndex[2]; float m_effectRealPointsPerLevel; int32_t m_effectSpellClassMask[3]; int32_t m_effectTriggerSpell; int32_t m_implicitTarget[2]; int32_t m_spellID; int32_t m_effectIndex; }; struct SpellEffectCameraShakesRec { int32_t m_ID; int32_t m_cameraShake[3]; }; struct SpellEquippedItemsRec { int32_t m_ID; int32_t m_equippedItemClass; int32_t m_equippedItemInvTypes; int32_t m_equippedItemSubclass; }; struct SpellFocusObjectRec { int32_t m_ID; const char* m_name; }; struct SpellIconRec { int32_t m_ID; const char* m_textureFilename; }; struct SpellInterruptsRec { int32_t m_ID; int32_t m_auraInterruptFlags[2]; int32_t m_channelInterruptFlags[2]; int32_t m_interruptFlags; }; struct SpellItemEnchantmentRec { int32_t m_ID; int32_t m_charges; int32_t m_effect[3]; int32_t m_effectPointsMin[3]; int32_t m_effectPointsMax[3]; int32_t m_effectArg[3]; const char* m_name; int32_t m_itemVisual; int32_t m_flags; int32_t m_srcItemID; int32_t m_conditionID; int32_t m_requiredSkillID; int32_t m_requiredSkillRank; int32_t m_minLevel; }; struct SpellItemEnchantmentConditionRec { int32_t m_ID; int8_t m_ltOperandType[5]; int32_t m_ltOperand[5]; int8_t m_operator[5]; int8_t m_rtOperandType[5]; int32_t m_rtOperand[5]; int8_t m_logic[5]; }; struct SpellLevelsRec { int32_t m_ID; int32_t m_baseLevel; int32_t m_maxLevel; int32_t m_spellLevel; }; struct SpellMechanicRec { int32_t m_ID; const char* m_stateName; }; struct SpellMissileRec { int32_t m_ID; int32_t m_flags; float m_defaultPitchMin; float m_defaultPitchMax; float m_defaultSpeedMin; float m_defaultSpeedMax; float m_randomizeFacingMin; float m_randomizeFacingMax; float m_randomizePitchMin; float m_randomizePitchMax; float m_randomizeSpeedMin; float m_randomizeSpeedMax; float m_gravity; float m_maxDuration; float m_collisionRadius; }; struct SpellMissileMotionRec { int32_t m_ID; const char* m_name; const char* m_scriptBody; int32_t m_flags; int32_t m_missileCount; }; struct SpellPowerRec { int32_t m_ID; int32_t m_manaCost; int32_t m_manaCostPerLevel; int32_t m_powerCost; // unconfirmed int32_t m_manaPerSecond; int32_t m_powerDisplayID; }; struct SpellRadiusRec { int32_t m_ID; float m_radius; float m_radiusPerLevel; float m_radiusMax; }; struct SpellRangeRec { int32_t m_ID; float m_rangeMin[2]; float m_rangeMax[2]; int32_t m_flags; const char* m_displayName; const char* m_displayNameShort; }; struct SpellReagentsRec { int32_t m_ID; int32_t m_reagent[8]; int32_t m_reagentCount[8]; }; struct SpellRuneCostRec { int32_t m_ID; int32_t m_blood; int32_t m_unholy; int32_t m_frost; int32_t m_runicPower; }; struct SpellScalingRec { int32_t m_ID; int32_t m_castTimeMin; int32_t m_castTimeMax; int32_t m_castTimeMaxLevel; int32_t m_class; float m_coefficient[3]; float m_variance[3]; float m_comboPointsCoefficient[3]; float m_nerfFactor; int32_t m_nerfMaxLevel; }; struct SpellShapeshiftRec { int32_t m_ID; int32_t m_shapeshiftExclude[2]; int32_t m_shapeshiftMask[2]; int32_t m_stanceBarOrder; }; struct SpellShapeshiftFormRec { int32_t m_ID; int32_t m_bonusActionBar; const char* m_name; int32_t m_flags; int32_t m_creatureType; int32_t m_attackIconID; int32_t m_combatRoundTime; int32_t m_creatureDisplayID[4]; int32_t m_presetSpellID[8]; }; struct SpellTargetRestrictionsRec { int32_t m_ID; int32_t m_maxTargets; int32_t m_maxTargetLevel; int32_t m_targetCreatureType; int32_t m_targets; }; struct SpellTotemsRec { int32_t m_ID; int32_t m_requiredTotemCategoryID[2]; int32_t m_totem[2]; }; struct SpellVisualRec { int32_t m_ID; int32_t m_precastKit; int32_t m_castKit; int32_t m_impactKit; int32_t m_stateKit; int32_t m_stateDoneKit; int32_t m_channelKit; int32_t m_hasMissile; int32_t m_missileModel; int32_t m_missilePathType; int32_t m_missileDestinationAttachment; int32_t m_missileSound; int32_t m_animEventSoundID; int32_t m_flags; int32_t m_casterImpactKit; int32_t m_targetImpactKit; int32_t m_missileAttachment; int32_t m_missileFollowGroundHeight; int32_t m_missileFollowGroundDropSpeed; int32_t m_missileFollowGroundApproach; int32_t m_missileFollowGroundFlags; int32_t m_missileMotion; int32_t m_missileTargetingKit; int32_t m_instantAreaKit; int32_t m_impactAreaKit; int32_t m_persistentAreaKit; float m_missileCastOffset[3]; float m_missileImpactOffset[3]; }; struct SpellVisualEffectNameRec { int32_t m_ID; const char* m_name; const char* m_fileName; float m_areaEffectSize; float m_scale; float m_minAllowedScale; float m_maxAllowedScale; }; struct SpellVisualKitRec { int32_t m_ID; int32_t m_startAnimID; int32_t m_animID; int32_t m_headEffect; int32_t m_chestEffect; int32_t m_baseEffect; int32_t m_leftHandEffect; int32_t m_rightHandEffect; int32_t m_breathEffect; int32_t m_leftWeaponEffect; int32_t m_rightWeaponEffect; int32_t m_specialEffect[3]; int32_t m_worldEffect; int32_t m_soundID; int32_t m_shakeID; int32_t m_charProc[4]; float m_charParamZero[4]; float m_charParamOne[4]; float m_charParamTwo[4]; float m_charParamThree[4]; int32_t m_flags; }; struct SpellVisualKitAreaModelRec { int32_t m_ID; const char* m_name; int32_t m_enumID; }; struct SpellVisualKitModelAttachRec { int32_t m_ID; int32_t m_parentSpellVisualKitID; int32_t m_spellVisualEffectNameID; int32_t m_attachmentID; float m_offset[3]; float m_yaw; float m_pitch; float m_roll; }; struct SpellVisualPrecastTransitionsRec { int32_t m_ID; const char* m_precastLoadAnimName; const char* m_precastHoldAnimName; }; struct StableSlotPricesRec { int32_t m_ID; int32_t m_cost; }; struct Startup_StringsRec { int32_t m_ID; const char* m_name; const char* m_message; }; struct StationeryRec { int32_t m_ID; int32_t m_itemID; const char* m_texture; int32_t m_flags; }; struct StringLookupsRec { int32_t m_ID; const char* m_string; }; struct SummonPropertiesRec { int32_t m_ID; int32_t m_control; int32_t m_faction; int32_t m_title; int32_t m_slot; int32_t m_flags; }; struct TalentRec { int32_t m_ID; int32_t m_tabID; int32_t m_tierID; int32_t m_columnIndex; int32_t m_spellRank[9]; int32_t m_prereqTalent[3]; int32_t m_prereqRank[3]; int32_t m_flags; int32_t m_requiredSpellID; int32_t m_categoryMask[2]; }; struct TalentTabRec { int32_t m_ID; const char* m_name; int32_t m_spellIconID; int32_t m_raceMask; int32_t m_classMask; int32_t m_categoryEnumID; // unconfirmed int32_t m_orderIndex; const char* m_backgroundFile; }; struct TaxiNodesRec { int32_t m_ID; int32_t m_continentID; float m_pos[3]; const char* m_name; int32_t m_mountCreatureID[2]; }; struct TaxiPathRec { int32_t m_ID; int32_t m_fromTaxiNode; int32_t m_toTaxiNode; int32_t m_cost; }; struct TaxiPathNodeRec { int32_t m_ID; int32_t m_pathID; int32_t m_nodeIndex; int32_t m_continentID; float m_loc[3]; int32_t m_flags; int32_t m_delay; int32_t m_arrivalEventID; int32_t m_departureEventID; }; struct TeamContributionPointsRec { int32_t m_ID; float m_data; }; struct TerrainMaterialRec { int32_t m_ID; const char* m_name; int32_t m_shader; const char* m_envMapPath; }; struct TerrainTypeRec { int32_t m_terrainID; const char* m_terrainDesc; int32_t m_footstepSprayRun; int32_t m_footstepSprayWalk; int32_t m_soundID; int32_t m_flags; int32_t m_generatedID; }; struct TerrainTypeSoundsRec { int32_t m_ID; }; struct TotemCategoryRec { int32_t m_ID; const char* m_name; int32_t m_totemCategoryType; int32_t m_totemCategoryMask; }; struct TransportAnimationRec { int32_t m_ID; int32_t m_transportID; int32_t m_timeIndex; float m_pos[3]; int32_t m_sequenceID; }; struct TransportPhysicsRec { int32_t m_ID; float m_waveAmp; float m_waveTimeScale; float m_rollAmp; float m_rollTimeScale; float m_pitchAmp; float m_pitchTimeScale; float m_maxBank; float m_maxBankTurnSpeed; float m_speedDampThresh; float m_speedDamp; }; struct TransportRotationRec { int32_t m_ID; int32_t m_gameObjectsID; int32_t m_timeIndex; float m_rot[4]; }; struct UISoundLookupsRec { int32_t m_ID; int32_t m_soundID; const char* m_soundName; }; struct UnitBloodRec { int32_t m_ID; int32_t m_combatBloodSpurtFront[2]; int32_t m_combatBloodSpurtBack[2]; const char* m_groundBlood[5]; }; struct UnitBloodLevelsRec { int32_t m_ID; int32_t m_violencelevel[3]; }; struct VehicleRec { int32_t m_ID; int32_t m_flags; float m_turnSpeed; float m_pitchSpeed; float m_pitchMin; float m_pitchMax; int32_t m_seatID[8]; float m_mouseLookOffsetPitch; float m_cameraFadeDistScalarMin; float m_cameraFadeDistScalarMax; float m_cameraPitchOffset; float m_facingLimitRight; float m_facingLimitLeft; float m_msslTrgtTurnLingering; float m_msslTrgtPitchLingering; float m_msslTrgtMouseLingering; float m_msslTrgtEndOpacity; float m_msslTrgtArcSpeed; float m_msslTrgtArcRepeat; float m_msslTrgtArcWidth; float m_msslTrgtImpactRadius[2]; const char* m_msslTrgtArcTexture; const char* m_msslTrgtImpactTexture; const char* m_msslTrgtImpactModel[2]; float m_cameraYawOffset; int32_t m_uiLocomotionType; float m_msslTrgtImpactTexRadius; int32_t m_vehicleUiindicatorID; int32_t m_powerDisplayID[3]; }; struct VehicleSeatRec { int32_t m_ID; float m_field_3_3_5_12213_001; // unconfirmed int32_t m_attachmentID; float m_attachmentOffset[3]; float m_field_3_3_5_12213_004; // unconfirmed float m_enterSpeed; float m_enterGravity; float m_enterMinDuration; float m_enterMaxDuration; float m_enterMinArcHeight; float m_enterMaxArcHeight; int32_t m_enterAnimStart; int32_t m_enterAnimLoop; int32_t m_rideAnimStart; int32_t m_rideAnimLoop; int32_t m_rideUpperAnimStart; int32_t m_rideUpperAnimLoop; float m_field_3_3_5_12213_017; // unconfirmed float m_exitSpeed; float m_exitGravity; float m_exitMinDuration; float m_exitMaxDuration; float m_exitMinArcHeight; float m_exitMaxArcHeight; int32_t m_exitAnimStart; int32_t m_exitAnimLoop; int32_t m_exitAnimEnd; float m_field_3_3_5_12213_027; // unconfirmed float m_passengerPitch; float m_field_3_3_5_12213_029; // unconfirmed int32_t m_passengerAttachmentID; int32_t m_vehicleEnterAnim; int32_t m_vehicleExitAnim; int32_t m_vehicleRideAnimLoop; int32_t m_field_3_3_5_12213_034; // unconfirmed int32_t m_vehicleExitAnimBone; int32_t m_vehicleEnterAnimBone; float m_field_3_3_5_12213_037; // unconfirmed float m_field_3_3_5_12213_038; // unconfirmed int32_t m_vehicleAbilityDisplay; int32_t m_enterUisoundID; int32_t m_field_3_3_5_12213_041; // unconfirmed int32_t m_uiSkin; float m_field_3_3_5_12213_043; // unconfirmed float m_field_3_3_5_12213_044; // unconfirmed float m_field_3_3_5_12213_045; // unconfirmed int32_t m_field_3_3_5_12213_046; // unconfirmed float m_field_3_3_5_12213_047; // unconfirmed float m_field_3_3_5_12213_048; // unconfirmed float m_field_3_3_5_12213_049; // unconfirmed float m_field_3_3_5_12213_050; // unconfirmed float m_field_3_3_5_12213_051; // unconfirmed float m_field_3_3_5_12213_052; // unconfirmed float m_field_3_3_5_12213_053; // unconfirmed float m_field_3_3_5_12213_054; // unconfirmed float m_field_3_3_5_12213_055; // unconfirmed }; struct VehicleUIIndSeatRec { int32_t m_ID; int32_t m_vehicleUiindicatorID; int32_t m_virtualSeatIndex; float m_xpos; float m_ypos; }; struct VehicleUIIndicatorRec { int32_t m_ID; const char* m_backgroundTexture; }; struct VideoHardwareRec { int32_t m_ID; int32_t m_vendorID; int32_t m_deviceID; int32_t m_farclipIdx; int32_t m_terrainLoddistIdx; int32_t m_terrainShadowLod; int32_t m_detailDoodadDensityIdx; int32_t m_detailDoodadAlpha; int32_t m_animatingDoodadIdx; int32_t m_trilinear; int32_t m_numLights; int32_t m_specularity; int32_t m_waterLodidx; int32_t m_particleDensityIdx; int32_t m_unitDrawDistIdx; int32_t m_smallCullDistIdx; int32_t m_resolutionIdx; int32_t m_baseMipLevel; const char* m_oglOverrides; const char* m_d3DOverrides; int32_t m_fixLag; int32_t m_multisample; int32_t m_atlasdisable; }; struct VocalUISoundsRec { int32_t m_ID; int32_t m_vocalUienum; int32_t m_raceID; int32_t m_normalSoundID[2]; int32_t m_pissedSoundID[2]; }; struct WMOAreaTableRec { int32_t m_ID; int32_t m_wmoid; int32_t m_nameSetID; int32_t m_wmogroupID; int32_t m_soundProviderPref; int32_t m_soundProviderPrefUnderwater; int32_t m_ambienceID; int32_t m_zoneMusic; int32_t m_introSound; int32_t m_flags; int32_t m_areaTableID; const char* m_areaName; }; struct WeaponImpactSoundsRec { int32_t m_ID; int32_t m_weaponSubClassID; int32_t m_parrySoundType; int32_t m_impactSoundID[10]; int32_t m_critImpactSoundID[10]; }; struct WeaponSwingSounds2Rec { int32_t m_ID; int32_t m_swingType; int32_t m_crit; int32_t m_soundID; }; struct WeatherRec { int32_t m_ID; int32_t m_ambienceID; int32_t m_effectType; float m_transitionSkyBox; float m_effectColor[3]; const char* m_effectTexture; }; struct WorldChunkSoundsRec { int32_t m_ID; int32_t m_chunkX; int32_t m_chunkY; int32_t m_subchunkX; int32_t m_subchunkY; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; }; struct WorldMapAreaRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; const char* m_areaName; float m_locLeft; float m_locRight; float m_locTop; float m_locBottom; int32_t m_displayMapID; int32_t m_defaultDungeonFloor; int32_t m_parentWorldMapID; }; struct WorldMapContinentRec { int32_t m_ID; int32_t m_mapID; int32_t m_leftBoundary; int32_t m_rightBoundary; int32_t m_topBoundary; int32_t m_bottomBoundary; float m_continentOffset[2]; float m_scale; float m_taxiMin[2]; float m_taxiMax[2]; int32_t m_worldMapID; }; struct WorldMapOverlayRec { int32_t m_ID; int32_t m_mapAreaID; int32_t m_areaID[4]; int32_t m_mapPointX; int32_t m_mapPointY; const char* m_textureName; int32_t m_textureWidth; int32_t m_textureHeight; int32_t m_offsetX; int32_t m_offsetY; int32_t m_hitRectTop; int32_t m_hitRectLeft; int32_t m_hitRectBottom; int32_t m_hitRectRight; }; struct WorldMapTransformsRec { int32_t m_ID; int32_t m_mapID; float m_regionMin[2]; float m_regionMax[2]; int32_t m_newMapID; float m_regionOffset[2]; int32_t m_newDungeonMapID; }; struct WorldSafeLocsRec { int32_t m_ID; int32_t m_continent; float m_loc[3]; const char* m_areaName; }; struct WorldStateUIRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; int32_t m_phaseShift; const char* m_icon; const char* m_string; const char* m_tooltip; int32_t m_stateVariable; int32_t m_type; const char* m_dynamicIcon; const char* m_dynamicTooltip; const char* m_extendedUi; int32_t m_extendedUistateVariable[3]; }; struct WorldStateZoneSoundsRec { int32_t m_worldStateID; int32_t m_worldStateValue; int32_t m_areaID; int32_t m_wmoareaID; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; int32_t m_generatedID; }; struct WowError_StringsRec { int32_t m_ID; const char* m_name; // unconfirmed const char* m_description; }; struct ZoneIntroMusicTableRec { int32_t m_ID; const char* m_name; int32_t m_soundID; int32_t m_priority; int32_t m_minDelayMinutes; }; struct ZoneLightRec { int32_t m_ID; const char* m_name; int32_t m_mapID; int32_t m_lightID; }; struct ZoneLightPointRec { int32_t m_ID; int32_t m_zoneLightID; float m_pos[2]; int32_t m_pointOrder; }; struct ZoneMusicRec { int32_t m_ID; const char* m_setName; int32_t m_silenceIntervalMin[2]; int32_t m_silenceIntervalMax[2]; int32_t m_sounds[2]; }; struct gtBarberShopCostBaseRec { float m_data; int32_t m_generatedID; }; struct gtChanceToMeleeCritRec { float m_data; int32_t m_generatedID; }; struct gtChanceToMeleeCritBaseRec { float m_data; int32_t m_generatedID; }; struct gtChanceToSpellCritRec { float m_data; int32_t m_generatedID; }; struct gtChanceToSpellCritBaseRec { float m_data; int32_t m_generatedID; }; struct gtCombatRatingsRec { float m_data; int32_t m_generatedID; }; struct gtNPCManaCostScalerRec { float m_data; int32_t m_generatedID; }; struct gtOCTClassCombatRatingScalarRec { int32_t m_ID; float m_data; }; struct gtOCTRegenHPRec { float m_data; int32_t m_generatedID; }; struct gtOCTRegenMPRec { float m_data; int32_t m_generatedID; }; struct gtRegenHPPerSptRec { float m_data; int32_t m_generatedID; }; struct gtRegenMPPerSptRec { float m_data; int32_t m_generatedID; }; struct gtSpellScalingRec { int32_t m_ID; float m_data; }; struct AchievementRec { int32_t m_ID; int32_t m_faction; int32_t m_instanceID; int32_t m_supercedes; const char* m_title; const char* m_description; int32_t m_category; int32_t m_points; int32_t m_uiOrder; int32_t m_flags; int32_t m_iconID; const char* m_reward; int32_t m_minimumCriteria; int32_t m_sharesCriteria; }; struct Achievement_CategoryRec { int32_t m_ID; int32_t m_parent; const char* m_name; int32_t m_uiOrder; }; struct Achievement_CriteriaRec { int32_t m_ID; int32_t m_achievementID; int32_t m_type; int32_t m_assetID; int32_t m_quantity; int32_t m_startEvent; int32_t m_startAsset; int32_t m_failEvent; int32_t m_failAsset; const char* m_description; int32_t m_flags; int32_t m_timerStartEvent; int32_t m_timerAssetID; int32_t m_timerTime; int32_t m_uiOrder; }; struct AnimKitRec { int32_t m_ID; int32_t m_oneShotDuration; int32_t m_oneShotStopAnimKitID; }; struct AnimKitBoneSetRec { int32_t m_ID; const char* m_name; int32_t m_boneDataID; int32_t m_parentAnimKitBoneSetID; int32_t m_extraBoneCount; int32_t m_altAnimKitBoneSetID; }; struct AnimKitBoneSetAliasRec { int32_t m_ID; int32_t m_boneDataID; int32_t m_animKitBoneSetID; }; struct AnimKitConfigRec { int32_t m_ID; int32_t m_configFlags; }; struct AnimKitConfigBoneSetRec { int32_t m_ID; int32_t m_parentAnimKitConfigID; int32_t m_animKitBoneSetID; int32_t m_animKitPriorityID; }; struct AnimKitPriorityRec { int32_t m_ID; int32_t m_priority; }; struct AnimKitSegmentRec { int32_t m_ID; int32_t m_parentAnimKitID; int32_t m_animID; int32_t m_animStartTime; int32_t m_animKitConfigID; int32_t m_startCondition; int32_t m_startConditionParam; int32_t m_startConditionDelay; int32_t m_endCondition; int32_t m_endConditionParam; int32_t m_endConditionDelay; float m_speed; int32_t m_segmentFlags; int32_t m_forcedVariation; int32_t m_overrideConfigFlags; int32_t m_loopToSegmentIndex; }; struct AnimReplacementRec { int32_t m_ID; int32_t m_srcAnimID; int32_t m_dstAnimID; int32_t m_parentAnimReplacementSetID; }; struct AnimReplacementSetRec { int32_t m_ID; int32_t m_execOrder; }; struct AnimationDataRec { int32_t m_ID; const char* m_name; int32_t m_weaponflags; int32_t m_bodyflags; int32_t m_flags; int32_t m_fallback; int32_t m_behaviorID; int32_t m_behaviorTier; }; struct AreaAssignmentRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; int32_t m_chunkX; int32_t m_chunkY; }; struct AreaGroupRec { int32_t m_ID; int32_t m_areaID[6]; int32_t m_nextAreaID; }; struct AreaPOIRec { int32_t m_ID; int32_t m_importance; int32_t m_icon[9]; int32_t m_factionID; float m_pos[3]; int32_t m_continentID; int32_t m_flags; int32_t m_areaID; const char* m_name; const char* m_description; int32_t m_worldStateID; int32_t m_worldMapLink; }; struct AreaTableRec { int32_t m_ID; int32_t m_continentID; int32_t m_parentAreaID; int32_t m_areaBit; int32_t m_flags; int32_t m_soundProviderPref; int32_t m_soundProviderPrefUnderwater; int32_t m_ambienceID; int32_t m_zoneMusic; int32_t m_introSound; int32_t m_explorationLevel; const char* m_areaName; int32_t m_factionGroupMask; int32_t m_liquidTypeID[4]; float m_minElevation; float m_ambientMultiplier; int32_t m_lightID; }; struct AreaTriggerRec { int32_t m_ID; int32_t m_continentID; float m_pos[3]; float m_radius; float m_boxLength; float m_boxWidth; float m_boxHeight; float m_boxYaw; }; struct ArmorLocationRec { int32_t m_ID; float m_clothmodifier; float m_leathermodifier; float m_chainmodifier; float m_platemodifier; float m_modifier; }; struct AttackAnimKitsRec { int32_t m_ID; int32_t m_itemSubclassID; int32_t m_animTypeID; int32_t m_animFrequency; int32_t m_whichHand; }; struct AttackAnimTypesRec { int32_t m_animID; const char* m_animName; int32_t m_generatedID; }; struct AuctionHouseRec { int32_t m_ID; int32_t m_factionID; int32_t m_depositRate; int32_t m_consignmentRate; const char* m_name; }; struct BankBagSlotPricesRec { int32_t m_ID; int32_t m_cost; }; struct BannedAddonsRec { int32_t m_ID; int32_t m_nameMd5[4]; int32_t m_versionMd5[4]; int32_t m_lastModified; int32_t m_flags; }; struct BarberShopStyleRec { int32_t m_ID; int32_t m_type; const char* m_displayName; const char* m_description; float m_costModifier; int32_t m_race; int32_t m_sex; int32_t m_data; }; struct BattlemasterListRec { int32_t m_ID; int32_t m_mapID[8]; int32_t m_instanceType; int32_t m_groupsAllowed; const char* m_name; int32_t m_maxGroupSize; int32_t m_holidayWorldState; int32_t m_minLevel; int32_t m_maxLevel; }; struct CameraModeRec { int32_t m_ID; const char* m_name; int32_t m_type; int32_t m_flags; float m_positionOffset[3]; float m_targetOffset[3]; float m_positionSmoothing; float m_rotationSmoothing; float m_fieldOfView; int32_t m_lockedPositionOffsetBase; int32_t m_lockedPositionOffsetDirection; int32_t m_lockedTargetOffsetBase; int32_t m_lockedTargetOffsetDirection; }; struct CameraShakesRec { int32_t m_ID; int32_t m_shakeType; int32_t m_direction; float m_amplitude; float m_frequency; float m_duration; float m_phase; float m_coefficient; }; struct Cfg_CategoriesRec { int32_t m_ID; int32_t m_localeMask; int32_t m_createCharsetMask; int32_t m_flags; const char* m_name; }; struct Cfg_ConfigsRec { int32_t m_ID; int32_t m_realmType; int32_t m_playerKillingAllowed; int32_t m_roleplaying; }; struct CharBaseInfoRec { int8_t m_raceID; int8_t m_classID; int32_t m_generatedID; }; struct CharHairGeosetsRec { int32_t m_ID; int32_t m_raceID; int32_t m_sexID; int32_t m_variationID; int32_t m_geosetID; int32_t m_showscalp; }; struct CharHairTexturesRec { int32_t m_ID; int32_t m_field_0_5_3_3368_001_race; // unconfirmed int32_t m_field_0_5_3_3368_002_gender; // unconfirmed int32_t m_field_0_5_3_3368_003; // unconfirmed int32_t m_field_0_5_3_3368_004_mayberacemask; // unconfirmed int32_t m_field_0_5_3_3368_005_the_x_in_hair_xy_blp; // unconfirmed int32_t m_field_0_5_3_3368_006; // unconfirmed int32_t m_field_0_5_3_3368_007; // unconfirmed }; struct CharSectionsRec { int32_t m_ID; int32_t m_raceID; int32_t m_sexID; int32_t m_baseSection; const char* m_textureName[3]; int32_t m_flags; int32_t m_variationIndex; int32_t m_colorIndex; }; struct CharStartOutfitRec { int32_t m_ID; int8_t m_raceID; int8_t m_classID; int8_t m_sexID; int8_t m_outfitID; int32_t m_itemID[24]; int32_t m_displayItemID[24]; int32_t m_inventoryType[24]; }; struct CharTitlesRec { int32_t m_ID; int32_t m_conditionID; const char* m_name; const char* m_name1; int32_t m_maskID; }; struct CharVariationsRec { int32_t m_raceID; int32_t m_sexID; int32_t m_textureHoldLayer[4]; int32_t m_generatedID; }; struct CharacterFacialHairStylesRec { int32_t m_raceID; int32_t m_sexID; int32_t m_variationID; int32_t m_geoset[5]; int32_t m_generatedID; }; struct ChatChannelsRec { int32_t m_ID; int32_t m_flags; int32_t m_factionGroup; const char* m_name; const char* m_shortcut; }; struct ChatProfanityRec { int32_t m_ID; const char* m_text; int32_t m_language; }; struct ChrClassesRec { int32_t m_ID; int32_t m_damageBonusStat; int32_t m_displayPower; const char* m_petNameToken; const char* m_name; const char* m_nameFemale; const char* m_nameMale; const char* m_filename; int32_t m_spellClassSet; int32_t m_flags; int32_t m_cinematicSequenceID; int32_t m_requiredExpansion; }; struct ChrRacesRec { int32_t m_ID; int32_t m_flags; int32_t m_factionID; int32_t m_explorationSoundID; int32_t m_maleDisplayID; int32_t m_femaleDisplayID; const char* m_clientPrefix; int32_t m_baseLanguage; int32_t m_creatureType; int32_t m_resSicknessSpellID; int32_t m_splashSoundID; const char* m_clientFileString; int32_t m_cinematicSequenceID; int32_t m_alliance; const char* m_name; const char* m_nameFemale; const char* m_nameMale; const char* m_facialHairCustomization[2]; const char* m_hairCustomization; int32_t m_requiredExpansion; }; struct CinematicCameraRec { int32_t m_ID; const char* m_model; int32_t m_soundID; float m_origin[3]; float m_originFacing; }; struct CinematicSequencesRec { int32_t m_ID; int32_t m_soundID; int32_t m_camera[8]; }; struct CreatureDisplayInfoRec { int32_t m_ID; int32_t m_modelID; int32_t m_soundID; int32_t m_extendedDisplayInfoID; float m_creatureModelScale; int32_t m_creatureModelAlpha; const char* m_textureVariation[3]; const char* m_portraitTextureName; int32_t m_sizeClass; int32_t m_bloodID; int32_t m_npcsoundID; int32_t m_particleColorID; int32_t m_creatureGeosetData; int32_t m_objectEffectPackageID; }; struct CreatureDisplayInfoExtraRec { int32_t m_ID; int32_t m_displayRaceID; int32_t m_displaySexID; int32_t m_skinID; int32_t m_faceID; int32_t m_hairStyleID; int32_t m_hairColorID; int32_t m_facialHairID; int32_t m_npcitemDisplay[11]; int32_t m_flags; const char* m_bakeName; }; struct CreatureFamilyRec { int32_t m_ID; float m_minScale; int32_t m_minScaleLevel; float m_maxScale; int32_t m_maxScaleLevel; int32_t m_skillLine[2]; int32_t m_petFoodMask; int32_t m_petTalentType; int32_t m_categoryEnumID; const char* m_name; const char* m_iconFile; }; struct CreatureModelDataRec { int32_t m_ID; int32_t m_flags; const char* m_modelName; int32_t m_sizeClass; float m_modelScale; int32_t m_bloodID; int32_t m_footprintTextureID; float m_footprintTextureLength; float m_footprintTextureWidth; float m_footprintParticleScale; int32_t m_foleyMaterialID; int32_t m_footstepShakeSize; int32_t m_deathThudShakeSize; int32_t m_soundID; float m_collisionWidth; float m_collisionHeight; float m_mountHeight; float m_geoBoxMinX; float m_geoBoxMinY; float m_geoBoxMinZ; float m_geoBoxMaxX; float m_geoBoxMaxY; float m_geoBoxMaxZ; float m_worldEffectScale; float m_attachedEffectScale; float m_missileCollisionRadius; float m_missileCollisionPush; float m_missileCollisionRaise; }; struct CreatureMovementInfoRec { int32_t m_ID; float m_smoothFacingChaseRate; }; struct CreatureSoundDataRec { int32_t m_ID; int32_t m_soundExertionID; int32_t m_soundExertionCriticalID; int32_t m_soundInjuryID; int32_t m_soundInjuryCriticalID; int32_t m_soundInjuryCrushingBlowID; int32_t m_soundDeathID; int32_t m_soundStunID; int32_t m_soundStandID; int32_t m_soundFootstepID; int32_t m_soundAggroID; int32_t m_soundWingFlapID; int32_t m_soundWingGlideID; int32_t m_soundAlertID; int32_t m_soundFidget[5]; int32_t m_customAttack[4]; int32_t m_npcsoundID; int32_t m_loopSoundID; int32_t m_creatureImpactType; int32_t m_soundJumpStartID; int32_t m_soundJumpEndID; int32_t m_soundPetAttackID; int32_t m_soundPetOrderID; int32_t m_soundPetDismissID; float m_fidgetDelaySecondsMin; float m_fidgetDelaySecondsMax; int32_t m_birthSoundID; int32_t m_spellCastDirectedSoundID; int32_t m_submergeSoundID; int32_t m_submergedSoundID; int32_t m_creatureSoundDataIdpet; }; struct CreatureSpellDataRec { int32_t m_ID; int32_t m_spells[4]; int32_t m_availability[4]; }; struct CreatureTypeRec { int32_t m_ID; const char* m_name; int32_t m_flags; }; struct CurrencyCategoryRec { int32_t m_ID; int32_t m_flags; const char* m_name; }; struct CurrencyTypesRec { int32_t m_ID; int32_t m_itemID; int32_t m_categoryID; int32_t m_bitIndex; }; struct DanceMovesRec { int32_t m_ID; int32_t m_type; int32_t m_param; int32_t m_fallback; int32_t m_racemask; const char* m_internalName; const char* m_name; int32_t m_lockID; }; struct DeathThudLookupsRec { int32_t m_ID; int32_t m_sizeClass; int32_t m_terrainTypeSoundID; int32_t m_soundEntryID; int32_t m_soundEntryIdwater; }; struct DeclinedWordRec { int32_t m_ID; const char* m_word; }; struct DeclinedWordCasesRec { int32_t m_ID; int32_t m_declinedWordID; int32_t m_caseIndex; const char* m_declinedWord; }; struct DestructibleModelDataRec { int32_t m_ID; int32_t m_state0ImpactEffectDoodadSet; int32_t m_state0AmbientDoodadSet; int32_t m_state1WMO; int32_t m_state1DestructionDoodadSet; int32_t m_state1ImpactEffectDoodadSet; int32_t m_state1AmbientDoodadSet; int32_t m_state2WMO; int32_t m_state2DestructionDoodadSet; int32_t m_state2ImpactEffectDoodadSet; int32_t m_state2AmbientDoodadSet; int32_t m_state3WMO; int32_t m_state3InitDoodadSet; int32_t m_state3AmbientDoodadSet; int32_t m_ejectDirection; int32_t m_repairGroundFx; int32_t m_doNotHighlight; int32_t m_healEffect; int32_t m_healEffectSpeed; }; struct DungeonEncounterRec { int32_t m_ID; int32_t m_mapID; int32_t m_difficulty; int32_t m_orderIndex; int32_t m_bit; const char* m_name; int32_t m_spellIconID; }; struct DungeonMapRec { int32_t m_ID; int32_t m_mapID; int32_t m_floorIndex; float m_minX; float m_maxX; float m_minY; float m_maxY; int32_t m_parentWorldMapID; }; struct DungeonMapChunkRec { int32_t m_ID; int32_t m_mapID; int32_t m_wmogroupID; int32_t m_dungeonMapID; float m_minZ; }; struct DurabilityCostsRec { int32_t m_ID; int32_t m_weaponSubClassCost[21]; int32_t m_armorSubClassCost[8]; }; struct DurabilityQualityRec { int32_t m_ID; float m_data; }; struct EmotesRec { int32_t m_ID; const char* m_emoteSlashCommand; int32_t m_animID; int32_t m_emoteFlags; int32_t m_emoteSpecProc; int32_t m_emoteSpecProcParam; int32_t m_eventSoundID; }; struct EmotesTextRec { int32_t m_ID; const char* m_name; int32_t m_emoteID; int32_t m_emoteText[16]; }; struct EmotesTextDataRec { int32_t m_ID; const char* m_text; }; struct EmotesTextSoundRec { int32_t m_ID; int32_t m_emotesTextID; int32_t m_raceID; int32_t m_sexID; int32_t m_soundID; }; struct EnvironmentalDamageRec { int32_t m_ID; int32_t m_enumID; int32_t m_visualkitID; }; struct ExhaustionRec { int32_t m_ID; int32_t m_xp; float m_factor; float m_outdoorHours; float m_innHours; const char* m_name; float m_threshold; }; struct FactionRec { int32_t m_ID; int32_t m_reputationIndex; int32_t m_reputationRaceMask[4]; int32_t m_reputationClassMask[4]; int32_t m_reputationBase[4]; int32_t m_reputationFlags[4]; int32_t m_parentFactionID; float m_parentFactionMod[2]; int32_t m_parentFactionCap[2]; const char* m_name; const char* m_description; }; struct FactionGroupRec { int32_t m_ID; int32_t m_maskID; const char* m_internalName; const char* m_name; }; struct FactionTemplateRec { int32_t m_ID; int32_t m_faction; int32_t m_flags; int32_t m_factionGroup; int32_t m_friendGroup; int32_t m_enemyGroup; int32_t m_enemies[4]; int32_t m_friend[4]; }; struct FileDataRec { int32_t m_ID; const char* m_filename; const char* m_filepath; }; struct FootprintTexturesRec { int32_t m_ID; const char* m_footstepFilename; }; struct FootstepTerrainLookupRec { int32_t m_ID; int32_t m_creatureFootstepID; int32_t m_terrainSoundID; int32_t m_soundID; int32_t m_soundIdsplash; }; struct GMSurveyAnswersRec { int32_t m_ID; int32_t m_sortIndex; int32_t m_gmsurveyQuestionID; const char* m_answer; }; struct GMSurveyCurrentSurveyRec { int32_t m_langid; int32_t m_gmsurveyID; int32_t m_generatedID; }; struct GMSurveyQuestionsRec { int32_t m_ID; const char* m_question; }; struct GMSurveySurveysRec { int32_t m_ID; int32_t m_[10]; }; struct GMTicketCategoryRec { int32_t m_ID; const char* m_category; }; struct GameObjectArtKitRec { int32_t m_ID; const char* m_textureVariation[3]; const char* m_attachModel[4]; }; struct GameObjectDisplayInfoRec { int32_t m_ID; const char* m_modelName; int32_t m_sound[10]; float m_geoBoxMin[3]; float m_geoBoxMax[3]; int32_t m_objectEffectPackageID; }; struct GameTablesRec { const char* m_name; int32_t m_numRows; int32_t m_numColumns; int32_t m_generatedID; }; struct GameTipsRec { int32_t m_ID; const char* m_text; }; struct GemPropertiesRec { int32_t m_ID; int32_t m_enchantID; int32_t m_maxcountInv; int32_t m_maxcountItem; int32_t m_type; }; struct GlueScreenEmoteRec { int32_t m_ID; int32_t m_classID; int32_t m_raceID; int32_t m_sexID; int32_t m_leftHandItemType; int32_t m_rightHandItemType; int32_t m_animKitID; int32_t m_spellVisualKitID; }; struct GlyphPropertiesRec { int32_t m_ID; int32_t m_spellID; int32_t m_glyphSlotFlags; int32_t m_spellIconID; }; struct GlyphSlotRec { int32_t m_ID; int32_t m_type; int32_t m_tooltip; }; struct GroundEffectDoodadRec { int32_t m_ID; const char* m_doodadpath; int32_t m_flags; }; struct GroundEffectTextureRec { int32_t m_ID; int32_t m_doodadID[4]; int32_t m_doodadWeight[4]; int32_t m_density; int32_t m_sound; }; struct GuildPerkSpellsRec { int32_t m_ID; int32_t m_guildLevel; int32_t m_spellID; }; struct HelmetGeosetVisDataRec { int32_t m_ID; int32_t m_hideGeoset[7]; }; struct HolidayDescriptionsRec { int32_t m_ID; const char* m_description; }; struct HolidayNamesRec { int32_t m_ID; const char* m_name; }; struct HolidaysRec { int32_t m_ID; int32_t m_duration[10]; int32_t m_date[26]; int32_t m_region; int32_t m_looping; int32_t m_calendarFlags[10]; int32_t m_holidayNameID; int32_t m_holidayDescriptionID; const char* m_textureFileName; int32_t m_priority; int32_t m_calendarFilterType; int32_t m_flags; }; struct ItemRec { int32_t m_ID; int32_t m_classID; int32_t m_subclassID; int32_t m_soundOverrideSubclassID; int32_t m_material; int32_t m_displayInfoID; int32_t m_inventoryType; int32_t m_sheatheType; }; struct ItemArmorQualityRec { int32_t m_ID; float m_qualitymod[7]; int32_t m_itemLevel; }; struct ItemArmorShieldRec { int32_t m_ID; int32_t m_itemLevel; float m_quality[7]; }; struct ItemArmorTotalRec { int32_t m_ID; int32_t m_itemLevel; float m_cloth; float m_leather; float m_mail; float m_plate; }; struct ItemBagFamilyRec { int32_t m_ID; const char* m_name; }; struct ItemClassRec { int32_t m_classID; int32_t m_subclassMapID; int32_t m_flags; const char* m_className; int32_t m_generatedID; }; struct ItemCondExtCostsRec { int32_t m_ID; int32_t m_condExtendedCost; // unconfirmed int32_t m_itemExtendedCostEntry; int32_t m_arenaSeason; // unconfirmed }; struct ItemDamageAmmoRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageOneHandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageOneHandCasterRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageRangedRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageThrownRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageTwoHandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageTwoHandCasterRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDamageWandRec { int32_t m_ID; float m_quality[7]; int32_t m_itemLevel; }; struct ItemDisplayInfoRec { int32_t m_ID; const char* m_modelName[2]; const char* m_modelTexture[2]; const char* m_inventoryIcon[2]; int32_t m_geosetGroup[3]; int32_t m_flags; int32_t m_spellVisualID; int32_t m_groupSoundIndex; int32_t m_helmetGeosetVisID[2]; const char* m_texture[8]; int32_t m_itemVisual; int32_t m_particleColorID; }; struct ItemExtendedCostRec { int32_t m_ID; int32_t m_honorPoints; int32_t m_arenaPoints; int32_t m_arenaBracket; int32_t m_itemID[5]; int32_t m_itemCount[5]; int32_t m_requiredArenaRating; int32_t m_itemPurchaseGroup; }; struct ItemGroupSoundsRec { int32_t m_ID; int32_t m_sound[4]; }; struct ItemLimitCategoryRec { int32_t m_ID; const char* m_name; int32_t m_quantity; int32_t m_flags; }; struct ItemPetFoodRec { int32_t m_ID; const char* m_name; }; struct ItemPurchaseGroupRec { int32_t m_ID; int32_t m_itemID[8]; const char* m_name; }; struct ItemRandomPropertiesRec { int32_t m_ID; const char* m_name; int32_t m_enchantment[5]; const char* m_name; }; struct ItemRandomSuffixRec { int32_t m_ID; const char* m_name; const char* m_internalName; int32_t m_enchantment[5]; int32_t m_allocationPct[5]; }; struct ItemReforgeRec { int32_t m_ID; // unconfirmed int32_t m_sourceStat; // unconfirmed float m_sourceMultiplier; // unconfirmed int32_t m_targetStat; // unconfirmed float m_targetMultiplier; // unconfirmed }; struct ItemSetRec { int32_t m_ID; const char* m_name; int32_t m_itemID[17]; int32_t m_setSpellID[8]; int32_t m_setThreshold[8]; int32_t m_requiredSkill; int32_t m_requiredSkillRank; }; struct ItemSubClassRec { int32_t m_classID; int32_t m_subClassID; int32_t m_prerequisiteProficiency; int32_t m_postrequisiteProficiency; int32_t m_flags; int32_t m_displayFlags; int32_t m_weaponParrySeq; int32_t m_weaponReadySeq; int32_t m_weaponAttackSeq; int32_t m_weaponSwingSize; const char* m_displayName; const char* m_verboseName; int32_t m_generatedID; }; struct ItemSubClassMaskRec { int32_t m_classID; int32_t m_mask; const char* m_name; int32_t m_generatedID; }; struct ItemVisualEffectsRec { int32_t m_ID; const char* m_model; }; struct ItemVisualsRec { int32_t m_ID; int32_t m_slot[5]; }; struct LFGDungeonExpansionRec { int32_t m_ID; int32_t m_lfgID; int32_t m_expansionLevel; int32_t m_randomID; int32_t m_hardLevelMin; int32_t m_hardLevelMax; int32_t m_targetLevelMin; int32_t m_targetLevelMax; }; struct LFGDungeonGroupRec { int32_t m_ID; const char* m_name; int32_t m_orderIndex; int32_t m_parentGroupID; int32_t m_typeID; }; struct LFGDungeonsRec { int32_t m_ID; const char* m_name; int32_t m_minLevel; int32_t m_maxLevel; int32_t m_targetLevel; int32_t m_targetLevelMin; int32_t m_targetLevelMax; int32_t m_mapID; int32_t m_difficulty; int32_t m_flags; int32_t m_typeID; int32_t m_faction; const char* m_textureFilename; int32_t m_expansionLevel; int32_t m_orderIndex; int32_t m_groupID; const char* m_description; }; struct LanguageWordsRec { int32_t m_ID; int32_t m_languageID; const char* m_word; }; struct LanguagesRec { int32_t m_ID; const char* m_name; }; struct LightRec { int32_t m_ID; int32_t m_continentID; float m_gameCoords[3]; float m_gameFalloffStart; float m_gameFalloffEnd; int32_t m_lightParamsID[8]; }; struct LightFloatBandRec { int32_t m_ID; int32_t m_num; int32_t m_time[16]; float m_data[16]; }; struct LightIntBandRec { int32_t m_ID; int32_t m_num; int32_t m_time[16]; int32_t m_data[16]; }; struct LightParamsRec { int32_t m_ID; int32_t m_highlightSky; int32_t m_lightSkyboxID; float m_glow; float m_waterShallowAlpha; float m_waterDeepAlpha; float m_oceanShallowAlpha; float m_oceanDeepAlpha; int32_t m_flags; }; struct LightSkyboxRec { int32_t m_ID; const char* m_name; int32_t m_flags; }; struct LiquidMaterialRec { int32_t m_ID; int32_t m_lvf; int32_t m_flags; }; struct LiquidObjectRec { int32_t m_ID; float m_flowDirection; float m_flowSpeed; int32_t m_liquidTypeID; int32_t m_fishable; int32_t m_reflection; }; struct LiquidTypeRec { int32_t m_ID; const char* m_name; int32_t m_flags; int32_t m_soundBank; int32_t m_soundID; int32_t m_spellID; float m_maxDarkenDepth; float m_fogDarkenIntensity; float m_ambDarkenIntensity; float m_dirDarkenIntensity; int32_t m_lightID; float m_particleScale; int32_t m_particleMovement; int32_t m_particleTexSlots; int32_t m_materialID; const char* m_texture[6]; int32_t m_color[2]; float m_float[18]; int32_t m_int[4]; }; struct LoadingScreenTaxiSplinesRec { int32_t m_ID; int32_t m_pathID; float m_locx[8]; float m_locy[8]; int32_t m_legIndex; }; struct LoadingScreensRec { int32_t m_ID; const char* m_name; const char* m_fileName; int32_t m_hasWideScreen; }; struct LockRec { int32_t m_ID; int32_t m_type[8]; int32_t m_index[8]; int32_t m_skill[8]; int32_t m_action[8]; }; struct LockTypeRec { int32_t m_ID; const char* m_name; const char* m_resourceName; const char* m_verb; const char* m_cursorName; }; struct MailTemplateRec { int32_t m_ID; const char* m_subject; const char* m_body; }; struct MapRec { int32_t m_ID; const char* m_directory; int32_t m_instanceType; int32_t m_flags; // unconfirmed int32_t m_pvp; const char* m_mapName; int32_t m_areaTableID; const char* m_mapDescription0; const char* m_mapDescription1; int32_t m_loadingScreenID; float m_minimapIconScale; int32_t m_corpseMapID; float m_corpse[2]; int32_t m_timeOfDayOverride; int32_t m_expansionID; int32_t m_raidOffset; int32_t m_maxPlayers; }; struct MapDifficultyRec { int32_t m_ID; int32_t m_mapID; int32_t m_difficulty; const char* m_message; int32_t m_raidDuration; int32_t m_maxPlayers; const char* m_difficultystring; }; struct MaterialRec { int32_t m_ID; int32_t m_flags; int32_t m_foleySoundID; int32_t m_sheatheSoundID; int32_t m_unsheatheSoundID; }; struct MountTypeRec { int32_t m_ID; int32_t m_capability[8]; }; struct MovieRec { int32_t m_ID; const char* m_filename; int32_t m_volume; }; struct MovieFileDataRec { int32_t m_fileDataID; int32_t m_resolution; int32_t m_generatedID; }; struct MovieVariationRec { int32_t m_ID; int32_t m_movieID; int32_t m_fileDataID; }; struct NPCSoundsRec { int32_t m_ID; int32_t m_soundID[4]; }; struct NameGenRec { int32_t m_ID; const char* m_name; int32_t m_raceID; int32_t m_sex; }; struct NamesProfanityRec { int32_t m_ID; const char* m_name; int32_t m_language; }; struct NamesReservedRec { int32_t m_ID; const char* m_name; int32_t m_language; }; struct ObjectEffectRec { int32_t m_ID; const char* m_name; int32_t m_objectEffectGroupID; int32_t m_triggerType; int32_t m_eventType; int32_t m_effectRecType; int32_t m_effectRecID; int32_t m_attachment; float m_offset[3]; int32_t m_objectEffectModifierID; }; struct ObjectEffectGroupRec { int32_t m_ID; const char* m_name; }; struct ObjectEffectModifierRec { int32_t m_ID; int32_t m_inputType; int32_t m_mapType; int32_t m_outputType; float m_param[4]; }; struct ObjectEffectPackageRec { int32_t m_ID; const char* m_name; }; struct ObjectEffectPackageElemRec { int32_t m_ID; int32_t m_objectEffectPackageID; int32_t m_objectEffectGroupID; int32_t m_stateType; }; struct OverrideSpellDataRec { int32_t m_ID; int32_t m_spells[10]; int32_t m_flags; }; struct PVPDifficultyRec { int32_t m_ID; int32_t m_mapID; int32_t m_rangeIndex; int32_t m_minLevel; int32_t m_maxLevel; int32_t m_difficulty; }; struct PackageRec { int32_t m_ID; const char* m_icon; int32_t m_cost; const char* m_name; }; struct PageTextMaterialRec { int32_t m_ID; const char* m_name; }; struct PaperDollItemFrameRec { const char* m_itemButtonName; const char* m_slotIcon; int32_t m_slotNumber; int32_t m_generatedID; }; struct ParticleColorRec { int32_t m_ID; int32_t m_start[3]; int32_t m_mid[3]; int32_t m_end[3]; }; struct PetPersonalityRec { int32_t m_ID; const char* m_name; int32_t m_happinessThreshold[3]; float m_happinessDamage[3]; }; struct PetitionTypeRec { int32_t m_ID; // unconfirmed const char* m_name; // unconfirmed int32_t m_type; // unconfirmed }; struct PhaseRec { int32_t m_ID; int32_t m_mapID; int32_t m_parentMapID[2]; // unconfirmed const char* m_name; int32_t m_flags; }; struct PhaseShiftZoneSoundsRec { int32_t m_ID; int32_t m_areaID; int32_t m_wmoareaID; int32_t m_phaseID; int32_t m_phaseGroupID; int32_t m_phaseUseFlags; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; int32_t m_uwzoneIntroMusicID; int32_t m_uwzoneMusicID; int32_t m_uwsoundAmbienceID; int32_t m_uwsoundProviderPreferencesID; }; struct PhaseXPhaseGroupRec { int32_t m_ID; int32_t m_phaseID; int32_t m_phaseGroupID; }; struct PowerDisplayRec { int32_t m_ID; int32_t m_actualType; const char* m_globalStringBaseTag; int8_t m_red; int8_t m_green; int8_t m_blue; }; struct QuestFactionRewardRec { int32_t m_ID; int32_t m_difficulty[10]; }; struct QuestInfoRec { int32_t m_ID; const char* m_infoName; }; struct QuestSortRec { int32_t m_ID; const char* m_sortName; }; struct QuestXPRec { int32_t m_ID; int32_t m_difficulty[10]; }; struct RandPropPointsRec { int32_t m_ID; int32_t m_epic[5]; int32_t m_superior[5]; int32_t m_good[5]; }; struct ResearchBranchRec { int32_t m_ID; const char* m_name; int32_t m_researchFieldID; int32_t m_currencyID; const char* m_texture; int32_t m_itemID; }; struct ResistancesRec { int32_t m_ID; int32_t m_flags; int32_t m_fizzleSoundID; const char* m_name; }; struct ScalingStatDistributionRec { int32_t m_ID; int32_t m_statID[10]; int32_t m_bonus[10]; int32_t m_maxlevel; }; struct ScalingStatValuesRec { int32_t m_ID; int32_t m_charlevel; int32_t m_shoulderBudget; int32_t m_trinketBudget; int32_t m_weaponBudget1h; int32_t m_rangedBudget; int32_t m_clothShoulderArmor; int32_t m_leatherShoulderArmor; int32_t m_mailShoulderArmor; int32_t m_plateShoulderArmor; int32_t m_weaponDps1h; int32_t m_weaponDps2h; int32_t m_spellcasterDps1h; int32_t m_spellcasterDps2h; int32_t m_rangedDps; int32_t m_wandDps; int32_t m_spellPower; int32_t m_primaryBudget; int32_t m_tertiaryBudget; int32_t m_clothCloakArmor; int32_t m_clothChestArmor; int32_t m_leatherChestArmor; int32_t m_mailChestArmor; int32_t m_plateChestArmor; }; struct ScreenEffectRec { int32_t m_ID; const char* m_name; int32_t m_effect; int32_t m_param[4]; int32_t m_lightParamsID; int32_t m_soundAmbienceID; int32_t m_zoneMusicID; }; struct ServerMessagesRec { int32_t m_ID; const char* m_text; }; struct SheatheSoundLookupsRec { int32_t m_ID; int32_t m_classID; int32_t m_subclassID; int32_t m_material; int32_t m_checkMaterial; int32_t m_sheatheSound; int32_t m_unsheatheSound; }; struct SkillCostsDataRec { int32_t m_ID; int32_t m_skillCostsID; int32_t m_cost[3]; }; struct SkillLineRec { int32_t m_ID; int32_t m_categoryID; int32_t m_skillCostsID; const char* m_displayName; const char* m_description; int32_t m_spellIconID; const char* m_alternateVerb; int32_t m_canLink; }; struct SkillLineAbilityRec { int32_t m_ID; int32_t m_skillLine; int32_t m_spell; int32_t m_raceMask; int32_t m_classMask; int32_t m_excludeRace; int32_t m_excludeClass; int32_t m_minSkillLineRank; int32_t m_supercededBySpell; int32_t m_acquireMethod; int32_t m_trivialSkillLineRankHigh; int32_t m_trivialSkillLineRankLow; int32_t m_characterPoints[2]; }; struct SkillLineCategoryRec { int32_t m_ID; const char* m_name; int32_t m_sortIndex; }; struct SkillRaceClassInfoRec { int32_t m_ID; int32_t m_skillID; int32_t m_raceMask; int32_t m_classMask; int32_t m_flags; int32_t m_minLevel; int32_t m_skillTierID; int32_t m_skillCostIndex; }; struct SkillTiersRec { int32_t m_ID; int32_t m_cost[16]; int32_t m_value[16]; }; struct SoundAmbienceRec { int32_t m_ID; int32_t m_ambienceID[2]; }; struct SoundEmittersRec { int32_t m_ID; float m_position[3]; float m_direction[3]; int32_t m_soundEntryAdvancedID; int32_t m_mapID; const char* m_name; }; struct SoundEntriesRec { int32_t m_ID; int32_t m_soundType; const char* m_name; const char* m_file[10]; int32_t m_freq[10]; const char* m_directoryBase; float m_volumeFloat; int32_t m_flags; float m_minDistance; float m_distanceCutoff; int32_t m_eaxdef; int32_t m_soundEntriesAdvancedID; }; struct SoundEntriesAdvancedRec { int32_t m_ID; int32_t m_soundEntryID; float m_innerRadius2d; int32_t m_timeA; int32_t m_timeB; int32_t m_timeC; int32_t m_timeD; int32_t m_randomOffsetRange; int32_t m_usage; int32_t m_timeIntervalMin; int32_t m_timeIntervalMax; int32_t m_volumeSliderCategory; float m_duckToSfx; float m_duckToMusic; float m_duckToAmbience; float m_innerRadiusOfInfluence; float m_outerRadiusOfInfluence; int32_t m_timeToDuck; int32_t m_timeToUnduck; float m_insideAngle; float m_outsideAngle; float m_outsideVolume; float m_outerRadius2d; const char* m_name; }; struct SoundFilterRec { int32_t m_ID; const char* m_name; }; struct SoundFilterElemRec { int32_t m_ID; int32_t m_soundFilterID; int32_t m_orderIndex; int32_t m_filterType; float m_params[9]; }; struct SoundProviderPreferencesRec { int32_t m_ID; const char* m_description; int32_t m_flags; int32_t m_eaxenvironmentSelection; float m_eaxdecayTime; float m_eax2EnvironmentSize; float m_eax2EnvironmentDiffusion; int32_t m_eax2Room; int32_t m_eax2RoomHf; float m_eax2DecayHfratio; int32_t m_eax2Reflections; float m_eax2ReflectionsDelay; int32_t m_eax2Reverb; float m_eax2ReverbDelay; float m_eax2RoomRolloff; float m_eax2AirAbsorption; int32_t m_eax3RoomLf; float m_eax3DecayLfratio; float m_eax3EchoTime; float m_eax3EchoDepth; float m_eax3ModulationTime; float m_eax3ModulationDepth; float m_eax3Hfreference; float m_eax3Lfreference; }; struct SoundSamplePreferencesRec { int32_t m_ID; int32_t m_field_0_6_0_3592_001; // unconfirmed int32_t m_field_0_6_0_3592_002; // unconfirmed int32_t m_eax2SampleRoom; int32_t m_field_0_6_0_3592_004; // unconfirmed int32_t m_field_0_6_0_3592_005; // unconfirmed float m_field_0_6_0_3592_006; // unconfirmed int32_t m_field_0_6_0_3592_007; // unconfirmed float m_eax2SampleOcclusionLfratio; float m_eax2SampleOcclusionRoomRatio; int32_t m_field_0_6_0_3592_010; // unconfirmed float m_eax1EffectLevel; int32_t m_field_0_6_0_3592_012; // unconfirmed float m_field_0_6_0_3592_013; // unconfirmed float m_eax3SampleExclusion; float m_field_0_6_0_3592_015; // unconfirmed int32_t m_field_0_6_0_3592_016; // unconfirmed }; struct SoundWaterTypeRec { int32_t m_ID; int32_t m_soundType; int32_t m_soundSubtype; int32_t m_soundID; }; struct SpamMessagesRec { int32_t m_ID; const char* m_text; }; struct SpellRec { int32_t m_ID; int32_t m_category; int32_t m_dispelType; int32_t m_mechanic; int32_t m_attributes; int32_t m_attributesEx; int32_t m_attributesExB; int32_t m_attributesExC; int32_t m_attributesExD; int32_t m_attributesExE; int32_t m_attributesExF; int32_t m_attributesExG; int32_t m_shapeshiftMask[2]; int32_t m_shapeshiftExclude[2]; int32_t m_targets; int32_t m_targetCreatureType; int32_t m_requiresSpellFocus; int32_t m_facingCasterFlags; int32_t m_casterAuraState; int32_t m_targetAuraState; int32_t m_excludeCasterAuraState; int32_t m_excludeTargetAuraState; int32_t m_casterAuraSpell; int32_t m_targetAuraSpell; int32_t m_excludeCasterAuraSpell; int32_t m_excludeTargetAuraSpell; int32_t m_castingTimeIndex; int32_t m_recoveryTime; int32_t m_categoryRecoveryTime; int32_t m_interruptFlags; int32_t m_auraInterruptFlags; int32_t m_channelInterruptFlags; int32_t m_procTypeMask; int32_t m_procChance; int32_t m_procCharges; int32_t m_maxLevel; int32_t m_baseLevel; int32_t m_spellLevel; int32_t m_durationIndex; int32_t m_powerType; int32_t m_manaCost; int32_t m_manaCostPerLevel; int32_t m_manaPerSecond; int32_t m_manaPerSecondPerLevel; int32_t m_rangeIndex; float m_speed; int32_t m_modalNextSpell; int32_t m_cumulativeAura; int32_t m_totem[2]; int32_t m_reagent[8]; int32_t m_reagentCount[8]; int32_t m_equippedItemClass; int32_t m_equippedItemSubclass; int32_t m_equippedItemInvTypes; int32_t m_effect[3]; int32_t m_effectDieSides[3]; float m_effectRealPointsPerLevel[3]; int32_t m_effectBasePoints[3]; int32_t m_effectMechanic[3]; int32_t m_implicitTargetA[3]; int32_t m_implicitTargetB[3]; int32_t m_effectRadiusIndex[3]; int32_t m_effectAura[3]; int32_t m_effectAuraPeriod[3]; float m_effectAmplitude[3]; int32_t m_effectChainTargets[3]; int32_t m_effectItemType[3]; int32_t m_effectMiscValue[3]; int32_t m_effectMiscValueB[3]; int32_t m_effectTriggerSpell[3]; float m_effectPointsPerCombo[3]; int32_t m_effectSpellClassMaskA[3]; int32_t m_effectSpellClassMaskB[3]; int32_t m_effectSpellClassMaskC[3]; int32_t m_spellVisualID[2]; int32_t m_spellIconID; int32_t m_activeIconID; int32_t m_spellPriority; const char* m_name; const char* m_nameSubtext; const char* m_description; const char* m_auraDescription; int32_t m_manaCostPct; int32_t m_startRecoveryCategory; int32_t m_startRecoveryTime; int32_t m_maxTargetLevel; int32_t m_spellClassSet; int32_t m_spellClassMask[3]; int32_t m_maxTargets; int32_t m_defenseType; int32_t m_preventionType; int32_t m_stanceBarOrder; float m_effectChainAmplitude[3]; int32_t m_minFactionID; int32_t m_minReputation; int32_t m_requiredAuraVision; int32_t m_requiredTotemCategoryID[2]; int32_t m_requiredAreasID; int32_t m_schoolMask; int32_t m_runeCostID; int32_t m_spellMissileID; int32_t m_powerDisplayID; float m_effectBonusCoefficient[3]; int32_t m_descriptionVariablesID; int32_t m_difficulty; }; struct SpellAuraOptionsRec { int32_t m_ID; int32_t m_cumulativeAura; int32_t m_procChance; int32_t m_procCharges; int32_t m_procTypeMask; }; struct SpellAuraRestrictionsRec { int32_t m_ID; int32_t m_casterAuraState; int32_t m_targetAuraState; int32_t m_excludeCasterAuraState; int32_t m_excludeTargetAuraState; int32_t m_casterAuraSpell; int32_t m_targetAuraSpell; int32_t m_excludeCasterAuraSpell; int32_t m_excludeTargetAuraSpell; }; struct SpellCastTimesRec { int32_t m_ID; int32_t m_base; int32_t m_perLevel; int32_t m_minimum; }; struct SpellCastingRequirementsRec { int32_t m_ID; int32_t m_facingCasterFlags; int32_t m_minFactionID; int32_t m_minReputation; int32_t m_requiredAreasID; int32_t m_requiredAuraVision; int32_t m_requiresSpellFocus; }; struct SpellCategoriesRec { int32_t m_ID; int32_t m_category; int32_t m_defenseType; int32_t m_dispelType; int32_t m_mechanic; int32_t m_preventionType; int32_t m_startRecoveryCategory; }; struct SpellCategoryRec { int32_t m_ID; int32_t m_flags; }; struct SpellChainEffectsRec { int32_t m_ID; float m_avgSegLen; float m_width; float m_noiseScale; float m_texCoordScale; int32_t m_segDuration; int32_t m_segDelay; const char* m_texture; int32_t m_flags; int32_t m_jointCount; float m_jointOffsetRadius; int32_t m_jointsPerMinorJoint; int32_t m_minorJointsPerMajorJoint; float m_minorJointScale; float m_majorJointScale; float m_jointMoveSpeed; float m_jointSmoothness; float m_minDurationBetweenJointJumps; float m_maxDurationBetweenJointJumps; float m_waveHeight; float m_waveFreq; float m_waveSpeed; float m_minWaveAngle; float m_maxWaveAngle; float m_minWaveSpin; float m_maxWaveSpin; float m_arcHeight; float m_minArcAngle; float m_maxArcAngle; float m_minArcSpin; float m_maxArcSpin; float m_delayBetweenEffects; float m_minFlickerOnDuration; float m_maxFlickerOnDuration; float m_minFlickerOffDuration; float m_maxFlickerOffDuration; float m_pulseSpeed; float m_pulseOnLength; float m_pulseFadeLength; int8_t m_alpha; int8_t m_red; int8_t m_green; int8_t m_blue; int8_t m_blendMode; const char* m_combo; int32_t m_renderLayer; float m_textureLength; float m_wavePhase; }; struct SpellClassOptionsRec { int32_t m_ID; int32_t m_modalNextSpell; int32_t m_spellClassMask[3]; int32_t m_spellClassSet; }; struct SpellCooldownsRec { int32_t m_ID; int32_t m_categoryRecoveryTime; int32_t m_recoveryTime; int32_t m_startRecoveryTime; }; struct SpellDescriptionVariablesRec { int32_t m_ID; const char* m_variables; }; struct SpellDifficultyRec { int32_t m_ID; int32_t m_difficultySpellID[4]; }; struct SpellDispelTypeRec { int32_t m_ID; const char* m_name; int32_t m_mask; int32_t m_immunityPossible; const char* m_internalName; }; struct SpellDurationRec { int32_t m_ID; int32_t m_duration; int32_t m_durationPerLevel; int32_t m_maxDuration; }; struct SpellEffectRec { int32_t m_ID; int32_t m_effect; float m_effectAmplitude; int32_t m_effectAura; int32_t m_effectAuraPeriod; int32_t m_effectBasePoints; float m_effectBonusCoefficient; float m_effectChainAmplitude; int32_t m_effectChainTargets; int32_t m_effectDieSides; int32_t m_effectItemType; int32_t m_effectMechanic; int32_t m_effectMiscValue[2]; float m_effectPointsPerResource; int32_t m_effectRadiusIndex[2]; float m_effectRealPointsPerLevel; int32_t m_effectSpellClassMask[3]; int32_t m_effectTriggerSpell; int32_t m_implicitTarget[2]; int32_t m_spellID; int32_t m_effectIndex; }; struct SpellEffectCameraShakesRec { int32_t m_ID; int32_t m_cameraShake[3]; }; struct SpellEquippedItemsRec { int32_t m_ID; int32_t m_equippedItemClass; int32_t m_equippedItemInvTypes; int32_t m_equippedItemSubclass; }; struct SpellFocusObjectRec { int32_t m_ID; const char* m_name; }; struct SpellIconRec { int32_t m_ID; const char* m_textureFilename; }; struct SpellInterruptsRec { int32_t m_ID; int32_t m_auraInterruptFlags[2]; int32_t m_channelInterruptFlags[2]; int32_t m_interruptFlags; }; struct SpellItemEnchantmentRec { int32_t m_ID; int32_t m_charges; int32_t m_effect[3]; int32_t m_effectPointsMin[3]; int32_t m_effectPointsMax[3]; int32_t m_effectArg[3]; const char* m_name; int32_t m_itemVisual; int32_t m_flags; int32_t m_srcItemID; int32_t m_conditionID; int32_t m_requiredSkillID; int32_t m_requiredSkillRank; int32_t m_minLevel; }; struct SpellItemEnchantmentConditionRec { int32_t m_ID; int8_t m_ltOperandType[5]; int32_t m_ltOperand[5]; int8_t m_operator[5]; int8_t m_rtOperandType[5]; int32_t m_rtOperand[5]; int8_t m_logic[5]; }; struct SpellLevelsRec { int32_t m_ID; int32_t m_baseLevel; int32_t m_maxLevel; int32_t m_spellLevel; }; struct SpellMechanicRec { int32_t m_ID; const char* m_stateName; }; struct SpellMissileRec { int32_t m_ID; int32_t m_flags; float m_defaultPitchMin; float m_defaultPitchMax; float m_defaultSpeedMin; float m_defaultSpeedMax; float m_randomizeFacingMin; float m_randomizeFacingMax; float m_randomizePitchMin; float m_randomizePitchMax; float m_randomizeSpeedMin; float m_randomizeSpeedMax; float m_gravity; float m_maxDuration; float m_collisionRadius; }; struct SpellMissileMotionRec { int32_t m_ID; const char* m_name; const char* m_scriptBody; int32_t m_flags; int32_t m_missileCount; }; struct SpellPowerRec { int32_t m_ID; int32_t m_manaCost; int32_t m_manaCostPerLevel; int32_t m_powerCost; // unconfirmed int32_t m_manaPerSecond; int32_t m_powerDisplayID; }; struct SpellRadiusRec { int32_t m_ID; float m_radius; float m_radiusPerLevel; float m_radiusMax; }; struct SpellRangeRec { int32_t m_ID; float m_rangeMin[2]; float m_rangeMax[2]; int32_t m_flags; const char* m_displayName; const char* m_displayNameShort; }; struct SpellReagentsRec { int32_t m_ID; int32_t m_reagent[8]; int32_t m_reagentCount[8]; }; struct SpellRuneCostRec { int32_t m_ID; int32_t m_blood; int32_t m_unholy; int32_t m_frost; int32_t m_runicPower; }; struct SpellScalingRec { int32_t m_ID; int32_t m_castTimeMin; int32_t m_castTimeMax; int32_t m_castTimeMaxLevel; int32_t m_class; float m_coefficient[3]; float m_variance[3]; float m_comboPointsCoefficient[3]; float m_nerfFactor; int32_t m_nerfMaxLevel; }; struct SpellShapeshiftRec { int32_t m_ID; int32_t m_shapeshiftExclude[2]; int32_t m_shapeshiftMask[2]; int32_t m_stanceBarOrder; }; struct SpellShapeshiftFormRec { int32_t m_ID; int32_t m_bonusActionBar; const char* m_name; int32_t m_flags; int32_t m_creatureType; int32_t m_attackIconID; int32_t m_combatRoundTime; int32_t m_creatureDisplayID[4]; int32_t m_presetSpellID[8]; }; struct SpellTargetRestrictionsRec { int32_t m_ID; int32_t m_maxTargets; int32_t m_maxTargetLevel; int32_t m_targetCreatureType; int32_t m_targets; }; struct SpellTotemsRec { int32_t m_ID; int32_t m_requiredTotemCategoryID[2]; int32_t m_totem[2]; }; struct SpellVisualRec { int32_t m_ID; int32_t m_precastKit; int32_t m_castKit; int32_t m_impactKit; int32_t m_stateKit; int32_t m_stateDoneKit; int32_t m_channelKit; int32_t m_hasMissile; int32_t m_missileModel; int32_t m_missilePathType; int32_t m_missileDestinationAttachment; int32_t m_missileSound; int32_t m_animEventSoundID; int32_t m_flags; int32_t m_casterImpactKit; int32_t m_targetImpactKit; int32_t m_missileAttachment; int32_t m_missileFollowGroundHeight; int32_t m_missileFollowGroundDropSpeed; int32_t m_missileFollowGroundApproach; int32_t m_missileFollowGroundFlags; int32_t m_missileMotion; int32_t m_missileTargetingKit; int32_t m_instantAreaKit; int32_t m_impactAreaKit; int32_t m_persistentAreaKit; float m_missileCastOffset[3]; float m_missileImpactOffset[3]; }; struct SpellVisualEffectNameRec { int32_t m_ID; const char* m_name; const char* m_fileName; float m_areaEffectSize; float m_scale; float m_minAllowedScale; float m_maxAllowedScale; }; struct SpellVisualKitRec { int32_t m_ID; int32_t m_startAnimID; int32_t m_animID; int32_t m_headEffect; int32_t m_chestEffect; int32_t m_baseEffect; int32_t m_leftHandEffect; int32_t m_rightHandEffect; int32_t m_breathEffect; int32_t m_leftWeaponEffect; int32_t m_rightWeaponEffect; int32_t m_specialEffect[3]; int32_t m_worldEffect; int32_t m_soundID; int32_t m_shakeID; int32_t m_charProc[4]; float m_charParamZero[4]; float m_charParamOne[4]; float m_charParamTwo[4]; float m_charParamThree[4]; int32_t m_flags; }; struct SpellVisualKitAreaModelRec { int32_t m_ID; const char* m_name; int32_t m_enumID; }; struct SpellVisualKitModelAttachRec { int32_t m_ID; int32_t m_parentSpellVisualKitID; int32_t m_spellVisualEffectNameID; int32_t m_attachmentID; float m_offset[3]; float m_yaw; float m_pitch; float m_roll; }; struct SpellVisualPrecastTransitionsRec { int32_t m_ID; const char* m_precastLoadAnimName; const char* m_precastHoldAnimName; }; struct StableSlotPricesRec { int32_t m_ID; int32_t m_cost; }; struct Startup_StringsRec { int32_t m_ID; const char* m_name; const char* m_message; }; struct StationeryRec { int32_t m_ID; int32_t m_itemID; const char* m_texture; int32_t m_flags; }; struct StringLookupsRec { int32_t m_ID; const char* m_string; }; struct SummonPropertiesRec { int32_t m_ID; int32_t m_control; int32_t m_faction; int32_t m_title; int32_t m_slot; int32_t m_flags; }; struct TalentRec { int32_t m_ID; int32_t m_tabID; int32_t m_tierID; int32_t m_columnIndex; int32_t m_spellRank[9]; int32_t m_prereqTalent[3]; int32_t m_prereqRank[3]; int32_t m_flags; int32_t m_requiredSpellID; int32_t m_categoryMask[2]; }; struct TalentTabRec { int32_t m_ID; const char* m_name; int32_t m_spellIconID; int32_t m_raceMask; int32_t m_classMask; int32_t m_categoryEnumID; // unconfirmed int32_t m_orderIndex; const char* m_backgroundFile; }; struct TaxiNodesRec { int32_t m_ID; int32_t m_continentID; float m_pos[3]; const char* m_name; int32_t m_mountCreatureID[2]; }; struct TaxiPathRec { int32_t m_ID; int32_t m_fromTaxiNode; int32_t m_toTaxiNode; int32_t m_cost; }; struct TaxiPathNodeRec { int32_t m_ID; int32_t m_pathID; int32_t m_nodeIndex; int32_t m_continentID; float m_loc[3]; int32_t m_flags; int32_t m_delay; int32_t m_arrivalEventID; int32_t m_departureEventID; }; struct TeamContributionPointsRec { int32_t m_ID; float m_data; }; struct TerrainMaterialRec { int32_t m_ID; const char* m_name; int32_t m_shader; const char* m_envMapPath; }; struct TerrainTypeRec { int32_t m_terrainID; const char* m_terrainDesc; int32_t m_footstepSprayRun; int32_t m_footstepSprayWalk; int32_t m_soundID; int32_t m_flags; int32_t m_generatedID; }; struct TerrainTypeSoundsRec { int32_t m_ID; }; struct TotemCategoryRec { int32_t m_ID; const char* m_name; int32_t m_totemCategoryType; int32_t m_totemCategoryMask; }; struct TransportAnimationRec { int32_t m_ID; int32_t m_transportID; int32_t m_timeIndex; float m_pos[3]; int32_t m_sequenceID; }; struct TransportPhysicsRec { int32_t m_ID; float m_waveAmp; float m_waveTimeScale; float m_rollAmp; float m_rollTimeScale; float m_pitchAmp; float m_pitchTimeScale; float m_maxBank; float m_maxBankTurnSpeed; float m_speedDampThresh; float m_speedDamp; }; struct TransportRotationRec { int32_t m_ID; int32_t m_gameObjectsID; int32_t m_timeIndex; float m_rot[4]; }; struct UISoundLookupsRec { int32_t m_ID; int32_t m_soundID; const char* m_soundName; }; struct UnitBloodRec { int32_t m_ID; int32_t m_combatBloodSpurtFront[2]; int32_t m_combatBloodSpurtBack[2]; const char* m_groundBlood[5]; }; struct UnitBloodLevelsRec { int32_t m_ID; int32_t m_violencelevel[3]; }; struct VehicleRec { int32_t m_ID; int32_t m_flags; float m_turnSpeed; float m_pitchSpeed; float m_pitchMin; float m_pitchMax; int32_t m_seatID[8]; float m_mouseLookOffsetPitch; float m_cameraFadeDistScalarMin; float m_cameraFadeDistScalarMax; float m_cameraPitchOffset; float m_facingLimitRight; float m_facingLimitLeft; float m_msslTrgtTurnLingering; float m_msslTrgtPitchLingering; float m_msslTrgtMouseLingering; float m_msslTrgtEndOpacity; float m_msslTrgtArcSpeed; float m_msslTrgtArcRepeat; float m_msslTrgtArcWidth; float m_msslTrgtImpactRadius[2]; const char* m_msslTrgtArcTexture; const char* m_msslTrgtImpactTexture; const char* m_msslTrgtImpactModel[2]; float m_cameraYawOffset; int32_t m_uiLocomotionType; float m_msslTrgtImpactTexRadius; int32_t m_vehicleUiindicatorID; int32_t m_powerDisplayID[3]; }; struct VehicleSeatRec { int32_t m_ID; float m_field_3_3_5_12213_001; // unconfirmed int32_t m_attachmentID; float m_attachmentOffset[3]; float m_field_3_3_5_12213_004; // unconfirmed float m_enterSpeed; float m_enterGravity; float m_enterMinDuration; float m_enterMaxDuration; float m_enterMinArcHeight; float m_enterMaxArcHeight; int32_t m_enterAnimStart; int32_t m_enterAnimLoop; int32_t m_rideAnimStart; int32_t m_rideAnimLoop; int32_t m_rideUpperAnimStart; int32_t m_rideUpperAnimLoop; float m_field_3_3_5_12213_017; // unconfirmed float m_exitSpeed; float m_exitGravity; float m_exitMinDuration; float m_exitMaxDuration; float m_exitMinArcHeight; float m_exitMaxArcHeight; int32_t m_exitAnimStart; int32_t m_exitAnimLoop; int32_t m_exitAnimEnd; float m_field_3_3_5_12213_027; // unconfirmed float m_passengerPitch; float m_field_3_3_5_12213_029; // unconfirmed int32_t m_passengerAttachmentID; int32_t m_vehicleEnterAnim; int32_t m_vehicleExitAnim; int32_t m_vehicleRideAnimLoop; int32_t m_field_3_3_5_12213_034; // unconfirmed int32_t m_vehicleExitAnimBone; int32_t m_vehicleEnterAnimBone; float m_field_3_3_5_12213_037; // unconfirmed float m_field_3_3_5_12213_038; // unconfirmed int32_t m_vehicleAbilityDisplay; int32_t m_enterUisoundID; int32_t m_field_3_3_5_12213_041; // unconfirmed int32_t m_uiSkin; float m_field_3_3_5_12213_043; // unconfirmed float m_field_3_3_5_12213_044; // unconfirmed float m_field_3_3_5_12213_045; // unconfirmed int32_t m_field_3_3_5_12213_046; // unconfirmed float m_field_3_3_5_12213_047; // unconfirmed float m_field_3_3_5_12213_048; // unconfirmed float m_field_3_3_5_12213_049; // unconfirmed float m_field_3_3_5_12213_050; // unconfirmed float m_field_3_3_5_12213_051; // unconfirmed float m_field_3_3_5_12213_052; // unconfirmed float m_field_3_3_5_12213_053; // unconfirmed float m_field_3_3_5_12213_054; // unconfirmed float m_field_3_3_5_12213_055; // unconfirmed }; struct VehicleUIIndSeatRec { int32_t m_ID; int32_t m_vehicleUiindicatorID; int32_t m_virtualSeatIndex; float m_xpos; float m_ypos; }; struct VehicleUIIndicatorRec { int32_t m_ID; const char* m_backgroundTexture; }; struct VideoHardwareRec { int32_t m_ID; int32_t m_vendorID; int32_t m_deviceID; int32_t m_farclipIdx; int32_t m_terrainLoddistIdx; int32_t m_terrainShadowLod; int32_t m_detailDoodadDensityIdx; int32_t m_detailDoodadAlpha; int32_t m_animatingDoodadIdx; int32_t m_trilinear; int32_t m_numLights; int32_t m_specularity; int32_t m_waterLodidx; int32_t m_particleDensityIdx; int32_t m_unitDrawDistIdx; int32_t m_smallCullDistIdx; int32_t m_resolutionIdx; int32_t m_baseMipLevel; const char* m_oglOverrides; const char* m_d3DOverrides; int32_t m_fixLag; int32_t m_multisample; int32_t m_atlasdisable; }; struct VocalUISoundsRec { int32_t m_ID; int32_t m_vocalUienum; int32_t m_raceID; int32_t m_normalSoundID[2]; int32_t m_pissedSoundID[2]; }; struct WMOAreaTableRec { int32_t m_ID; int32_t m_wmoid; int32_t m_nameSetID; int32_t m_wmogroupID; int32_t m_soundProviderPref; int32_t m_soundProviderPrefUnderwater; int32_t m_ambienceID; int32_t m_zoneMusic; int32_t m_introSound; int32_t m_flags; int32_t m_areaTableID; const char* m_areaName; }; struct WeaponImpactSoundsRec { int32_t m_ID; int32_t m_weaponSubClassID; int32_t m_parrySoundType; int32_t m_impactSoundID[10]; int32_t m_critImpactSoundID[10]; }; struct WeaponSwingSounds2Rec { int32_t m_ID; int32_t m_swingType; int32_t m_crit; int32_t m_soundID; }; struct WeatherRec { int32_t m_ID; int32_t m_ambienceID; int32_t m_effectType; float m_transitionSkyBox; float m_effectColor[3]; const char* m_effectTexture; }; struct WorldChunkSoundsRec { int32_t m_ID; int32_t m_chunkX; int32_t m_chunkY; int32_t m_subchunkX; int32_t m_subchunkY; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; }; struct WorldMapAreaRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; const char* m_areaName; float m_locLeft; float m_locRight; float m_locTop; float m_locBottom; int32_t m_displayMapID; int32_t m_defaultDungeonFloor; int32_t m_parentWorldMapID; }; struct WorldMapContinentRec { int32_t m_ID; int32_t m_mapID; int32_t m_leftBoundary; int32_t m_rightBoundary; int32_t m_topBoundary; int32_t m_bottomBoundary; float m_continentOffset[2]; float m_scale; float m_taxiMin[2]; float m_taxiMax[2]; int32_t m_worldMapID; }; struct WorldMapOverlayRec { int32_t m_ID; int32_t m_mapAreaID; int32_t m_areaID[4]; int32_t m_mapPointX; int32_t m_mapPointY; const char* m_textureName; int32_t m_textureWidth; int32_t m_textureHeight; int32_t m_offsetX; int32_t m_offsetY; int32_t m_hitRectTop; int32_t m_hitRectLeft; int32_t m_hitRectBottom; int32_t m_hitRectRight; }; struct WorldMapTransformsRec { int32_t m_ID; int32_t m_mapID; float m_regionMin[2]; float m_regionMax[2]; int32_t m_newMapID; float m_regionOffset[2]; int32_t m_newDungeonMapID; }; struct WorldSafeLocsRec { int32_t m_ID; int32_t m_continent; float m_loc[3]; const char* m_areaName; }; struct WorldStateUIRec { int32_t m_ID; int32_t m_mapID; int32_t m_areaID; int32_t m_phaseShift; const char* m_icon; const char* m_string; const char* m_tooltip; int32_t m_stateVariable; int32_t m_type; const char* m_dynamicIcon; const char* m_dynamicTooltip; const char* m_extendedUi; int32_t m_extendedUistateVariable[3]; }; struct WorldStateZoneSoundsRec { int32_t m_worldStateID; int32_t m_worldStateValue; int32_t m_areaID; int32_t m_wmoareaID; int32_t m_zoneIntroMusicID; int32_t m_zoneMusicID; int32_t m_soundAmbienceID; int32_t m_soundProviderPreferencesID; int32_t m_generatedID; }; struct WowError_StringsRec { int32_t m_ID; const char* m_name; // unconfirmed const char* m_description; }; struct ZoneIntroMusicTableRec { int32_t m_ID; const char* m_name; int32_t m_soundID; int32_t m_priority; int32_t m_minDelayMinutes; }; struct ZoneLightRec { int32_t m_ID; const char* m_name; int32_t m_mapID; int32_t m_lightID; }; struct ZoneLightPointRec { int32_t m_ID; int32_t m_zoneLightID; float m_pos[2]; int32_t m_pointOrder; }; struct ZoneMusicRec { int32_t m_ID; const char* m_setName; int32_t m_silenceIntervalMin[2]; int32_t m_silenceIntervalMax[2]; int32_t m_sounds[2]; }; struct gtBarberShopCostBaseRec { float m_data; int32_t m_generatedID; }; struct gtChanceToMeleeCritRec { float m_data; int32_t m_generatedID; }; struct gtChanceToMeleeCritBaseRec { float m_data; int32_t m_generatedID; }; struct gtChanceToSpellCritRec { float m_data; int32_t m_generatedID; }; struct gtChanceToSpellCritBaseRec { float m_data; int32_t m_generatedID; }; struct gtCombatRatingsRec { float m_data; int32_t m_generatedID; }; struct gtNPCManaCostScalerRec { float m_data; int32_t m_generatedID; }; struct gtOCTClassCombatRatingScalarRec { int32_t m_ID; float m_data; }; struct gtOCTRegenHPRec { float m_data; int32_t m_generatedID; }; struct gtOCTRegenMPRec { float m_data; int32_t m_generatedID; }; struct gtRegenHPPerSptRec { float m_data; int32_t m_generatedID; }; struct gtRegenMPPerSptRec { float m_data; int32_t m_generatedID; }; struct gtSpellScalingRec { int32_t m_ID; float m_data; }; DB_CLIENT_DB(AchievementRec); DB_CLIENT_DB(Achievement_CategoryRec); DB_CLIENT_DB(Achievement_CriteriaRec); DB_CLIENT_DB(AnimKitRec); DB_CLIENT_DB(AnimKitBoneSetRec); DB_CLIENT_DB(AnimKitBoneSetAliasRec); DB_CLIENT_DB(AnimKitConfigRec); DB_CLIENT_DB(AnimKitConfigBoneSetRec); DB_CLIENT_DB(AnimKitPriorityRec); DB_CLIENT_DB(AnimKitSegmentRec); DB_CLIENT_DB(AnimReplacementRec); DB_CLIENT_DB(AnimReplacementSetRec); DB_CLIENT_DB(AnimationDataRec); DB_CLIENT_DB(AreaAssignmentRec); DB_CLIENT_DB(AreaGroupRec); DB_CLIENT_DB(AreaPOIRec); DB_CLIENT_DB(AreaTableRec); DB_CLIENT_DB(AreaTriggerRec); DB_CLIENT_DB(ArmorLocationRec); DB_CLIENT_DB(AttackAnimKitsRec); DB_CLIENT_DB(AttackAnimTypesRec); DB_CLIENT_DB(AuctionHouseRec); DB_CLIENT_DB(BankBagSlotPricesRec); DB_CLIENT_DB(BannedAddonsRec); DB_CLIENT_DB(BarberShopStyleRec); DB_CLIENT_DB(BattlemasterListRec); DB_CLIENT_DB(CameraModeRec); DB_CLIENT_DB(CameraShakesRec); DB_CLIENT_DB(Cfg_CategoriesRec); DB_CLIENT_DB(Cfg_ConfigsRec); DB_CLIENT_DB(CharBaseInfoRec); DB_CLIENT_DB(CharHairGeosetsRec); DB_CLIENT_DB(CharHairTexturesRec); DB_CLIENT_DB(CharSectionsRec); DB_CLIENT_DB(CharStartOutfitRec); DB_CLIENT_DB(CharTitlesRec); DB_CLIENT_DB(CharVariationsRec); DB_CLIENT_DB(CharacterFacialHairStylesRec); DB_CLIENT_DB(ChatChannelsRec); DB_CLIENT_DB(ChatProfanityRec); DB_CLIENT_DB(ChrClassesRec); DB_CLIENT_DB(ChrRacesRec); DB_CLIENT_DB(CinematicCameraRec); DB_CLIENT_DB(CinematicSequencesRec); DB_CLIENT_DB(CreatureDisplayInfoRec); DB_CLIENT_DB(CreatureDisplayInfoExtraRec); DB_CLIENT_DB(CreatureFamilyRec); DB_CLIENT_DB(CreatureModelDataRec); DB_CLIENT_DB(CreatureMovementInfoRec); DB_CLIENT_DB(CreatureSoundDataRec); DB_CLIENT_DB(CreatureSpellDataRec); DB_CLIENT_DB(CreatureTypeRec); DB_CLIENT_DB(CurrencyCategoryRec); DB_CLIENT_DB(CurrencyTypesRec); DB_CLIENT_DB(DanceMovesRec); DB_CLIENT_DB(DeathThudLookupsRec); DB_CLIENT_DB(DeclinedWordRec); DB_CLIENT_DB(DeclinedWordCasesRec); DB_CLIENT_DB(DestructibleModelDataRec); DB_CLIENT_DB(DungeonEncounterRec); DB_CLIENT_DB(DungeonMapRec); DB_CLIENT_DB(DungeonMapChunkRec); DB_CLIENT_DB(DurabilityCostsRec); DB_CLIENT_DB(DurabilityQualityRec); DB_CLIENT_DB(EmotesRec); DB_CLIENT_DB(EmotesTextRec); DB_CLIENT_DB(EmotesTextDataRec); DB_CLIENT_DB(EmotesTextSoundRec); DB_CLIENT_DB(EnvironmentalDamageRec); DB_CLIENT_DB(ExhaustionRec); DB_CLIENT_DB(FactionRec); DB_CLIENT_DB(FactionGroupRec); DB_CLIENT_DB(FactionTemplateRec); DB_CLIENT_DB(FileDataRec); DB_CLIENT_DB(FootprintTexturesRec); DB_CLIENT_DB(FootstepTerrainLookupRec); DB_CLIENT_DB(GMSurveyAnswersRec); DB_CLIENT_DB(GMSurveyCurrentSurveyRec); DB_CLIENT_DB(GMSurveyQuestionsRec); DB_CLIENT_DB(GMSurveySurveysRec); DB_CLIENT_DB(GMTicketCategoryRec); DB_CLIENT_DB(GameObjectArtKitRec); DB_CLIENT_DB(GameObjectDisplayInfoRec); DB_CLIENT_DB(GameTablesRec); DB_CLIENT_DB(GameTipsRec); DB_CLIENT_DB(GemPropertiesRec); DB_CLIENT_DB(GlueScreenEmoteRec); DB_CLIENT_DB(GlyphPropertiesRec); DB_CLIENT_DB(GlyphSlotRec); DB_CLIENT_DB(GroundEffectDoodadRec); DB_CLIENT_DB(GroundEffectTextureRec); DB_CLIENT_DB(GuildPerkSpellsRec); DB_CLIENT_DB(HelmetGeosetVisDataRec); DB_CLIENT_DB(HolidayDescriptionsRec); DB_CLIENT_DB(HolidayNamesRec); DB_CLIENT_DB(HolidaysRec); DB_CLIENT_DB(ItemRec); DB_CLIENT_DB(ItemArmorQualityRec); DB_CLIENT_DB(ItemArmorShieldRec); DB_CLIENT_DB(ItemArmorTotalRec); DB_CLIENT_DB(ItemBagFamilyRec); DB_CLIENT_DB(ItemClassRec); DB_CLIENT_DB(ItemCondExtCostsRec); DB_CLIENT_DB(ItemDamageAmmoRec); DB_CLIENT_DB(ItemDamageOneHandRec); DB_CLIENT_DB(ItemDamageOneHandCasterRec); DB_CLIENT_DB(ItemDamageRangedRec); DB_CLIENT_DB(ItemDamageThrownRec); DB_CLIENT_DB(ItemDamageTwoHandRec); DB_CLIENT_DB(ItemDamageTwoHandCasterRec); DB_CLIENT_DB(ItemDamageWandRec); DB_CLIENT_DB(ItemDisplayInfoRec); DB_CLIENT_DB(ItemExtendedCostRec); DB_CLIENT_DB(ItemGroupSoundsRec); DB_CLIENT_DB(ItemLimitCategoryRec); DB_CLIENT_DB(ItemPetFoodRec); DB_CLIENT_DB(ItemPurchaseGroupRec); DB_CLIENT_DB(ItemRandomPropertiesRec); DB_CLIENT_DB(ItemRandomSuffixRec); DB_CLIENT_DB(ItemReforgeRec); DB_CLIENT_DB(ItemSetRec); DB_CLIENT_DB(ItemSubClassRec); DB_CLIENT_DB(ItemSubClassMaskRec); DB_CLIENT_DB(ItemVisualEffectsRec); DB_CLIENT_DB(ItemVisualsRec); DB_CLIENT_DB(LFGDungeonExpansionRec); DB_CLIENT_DB(LFGDungeonGroupRec); DB_CLIENT_DB(LFGDungeonsRec); DB_CLIENT_DB(LanguageWordsRec); DB_CLIENT_DB(LanguagesRec); DB_CLIENT_DB(LightRec); DB_CLIENT_DB(LightFloatBandRec); DB_CLIENT_DB(LightIntBandRec); DB_CLIENT_DB(LightParamsRec); DB_CLIENT_DB(LightSkyboxRec); DB_CLIENT_DB(LiquidMaterialRec); DB_CLIENT_DB(LiquidObjectRec); DB_CLIENT_DB(LiquidTypeRec); DB_CLIENT_DB(LoadingScreenTaxiSplinesRec); DB_CLIENT_DB(LoadingScreensRec); DB_CLIENT_DB(LockRec); DB_CLIENT_DB(LockTypeRec); DB_CLIENT_DB(MailTemplateRec); DB_CLIENT_DB(MapRec); DB_CLIENT_DB(MapDifficultyRec); DB_CLIENT_DB(MaterialRec); DB_CLIENT_DB(MountTypeRec); DB_CLIENT_DB(MovieRec); DB_CLIENT_DB(MovieFileDataRec); DB_CLIENT_DB(MovieVariationRec); DB_CLIENT_DB(NPCSoundsRec); DB_CLIENT_DB(NameGenRec); DB_CLIENT_DB(NamesProfanityRec); DB_CLIENT_DB(NamesReservedRec); DB_CLIENT_DB(ObjectEffectRec); DB_CLIENT_DB(ObjectEffectGroupRec); DB_CLIENT_DB(ObjectEffectModifierRec); DB_CLIENT_DB(ObjectEffectPackageRec); DB_CLIENT_DB(ObjectEffectPackageElemRec); DB_CLIENT_DB(OverrideSpellDataRec); DB_CLIENT_DB(PVPDifficultyRec); DB_CLIENT_DB(PackageRec); DB_CLIENT_DB(PageTextMaterialRec); DB_CLIENT_DB(PaperDollItemFrameRec); DB_CLIENT_DB(ParticleColorRec); DB_CLIENT_DB(PetPersonalityRec); DB_CLIENT_DB(PetitionTypeRec); DB_CLIENT_DB(PhaseRec); DB_CLIENT_DB(PhaseShiftZoneSoundsRec); DB_CLIENT_DB(PhaseXPhaseGroupRec); DB_CLIENT_DB(PowerDisplayRec); DB_CLIENT_DB(QuestFactionRewardRec); DB_CLIENT_DB(QuestInfoRec); DB_CLIENT_DB(QuestSortRec); DB_CLIENT_DB(QuestXPRec); DB_CLIENT_DB(RandPropPointsRec); DB_CLIENT_DB(ResearchBranchRec); DB_CLIENT_DB(ResistancesRec); DB_CLIENT_DB(ScalingStatDistributionRec); DB_CLIENT_DB(ScalingStatValuesRec); DB_CLIENT_DB(ScreenEffectRec); DB_CLIENT_DB(ServerMessagesRec); DB_CLIENT_DB(SheatheSoundLookupsRec); DB_CLIENT_DB(SkillCostsDataRec); DB_CLIENT_DB(SkillLineRec); DB_CLIENT_DB(SkillLineAbilityRec); DB_CLIENT_DB(SkillLineCategoryRec); DB_CLIENT_DB(SkillRaceClassInfoRec); DB_CLIENT_DB(SkillTiersRec); DB_CLIENT_DB(SoundAmbienceRec); DB_CLIENT_DB(SoundEmittersRec); DB_CLIENT_DB(SoundEntriesRec); DB_CLIENT_DB(SoundEntriesAdvancedRec); DB_CLIENT_DB(SoundFilterRec); DB_CLIENT_DB(SoundFilterElemRec); DB_CLIENT_DB(SoundProviderPreferencesRec); DB_CLIENT_DB(SoundSamplePreferencesRec); DB_CLIENT_DB(SoundWaterTypeRec); DB_CLIENT_DB(SpamMessagesRec); DB_CLIENT_DB(SpellRec); DB_CLIENT_DB(SpellAuraOptionsRec); DB_CLIENT_DB(SpellAuraRestrictionsRec); DB_CLIENT_DB(SpellCastTimesRec); DB_CLIENT_DB(SpellCastingRequirementsRec); DB_CLIENT_DB(SpellCategoriesRec); DB_CLIENT_DB(SpellCategoryRec); DB_CLIENT_DB(SpellChainEffectsRec); DB_CLIENT_DB(SpellClassOptionsRec); DB_CLIENT_DB(SpellCooldownsRec); DB_CLIENT_DB(SpellDescriptionVariablesRec); DB_CLIENT_DB(SpellDifficultyRec); DB_CLIENT_DB(SpellDispelTypeRec); DB_CLIENT_DB(SpellDurationRec); DB_CLIENT_DB(SpellEffectRec); DB_CLIENT_DB(SpellEffectCameraShakesRec); DB_CLIENT_DB(SpellEquippedItemsRec); DB_CLIENT_DB(SpellFocusObjectRec); DB_CLIENT_DB(SpellIconRec); DB_CLIENT_DB(SpellInterruptsRec); DB_CLIENT_DB(SpellItemEnchantmentRec); DB_CLIENT_DB(SpellItemEnchantmentConditionRec); DB_CLIENT_DB(SpellLevelsRec); DB_CLIENT_DB(SpellMechanicRec); DB_CLIENT_DB(SpellMissileRec); DB_CLIENT_DB(SpellMissileMotionRec); DB_CLIENT_DB(SpellPowerRec); DB_CLIENT_DB(SpellRadiusRec); DB_CLIENT_DB(SpellRangeRec); DB_CLIENT_DB(SpellReagentsRec); DB_CLIENT_DB(SpellRuneCostRec); DB_CLIENT_DB(SpellScalingRec); DB_CLIENT_DB(SpellShapeshiftRec); DB_CLIENT_DB(SpellShapeshiftFormRec); DB_CLIENT_DB(SpellTargetRestrictionsRec); DB_CLIENT_DB(SpellTotemsRec); DB_CLIENT_DB(SpellVisualRec); DB_CLIENT_DB(SpellVisualEffectNameRec); DB_CLIENT_DB(SpellVisualKitRec); DB_CLIENT_DB(SpellVisualKitAreaModelRec); DB_CLIENT_DB(SpellVisualKitModelAttachRec); DB_CLIENT_DB(SpellVisualPrecastTransitionsRec); DB_CLIENT_DB(StableSlotPricesRec); DB_CLIENT_DB(Startup_StringsRec); DB_CLIENT_DB(StationeryRec); DB_CLIENT_DB(StringLookupsRec); DB_CLIENT_DB(SummonPropertiesRec); DB_CLIENT_DB(TalentRec); DB_CLIENT_DB(TalentTabRec); DB_CLIENT_DB(TaxiNodesRec); DB_CLIENT_DB(TaxiPathRec); DB_CLIENT_DB(TaxiPathNodeRec); DB_CLIENT_DB(TeamContributionPointsRec); DB_CLIENT_DB(TerrainMaterialRec); DB_CLIENT_DB(TerrainTypeRec); DB_CLIENT_DB(TerrainTypeSoundsRec); DB_CLIENT_DB(TotemCategoryRec); DB_CLIENT_DB(TransportAnimationRec); DB_CLIENT_DB(TransportPhysicsRec); DB_CLIENT_DB(TransportRotationRec); DB_CLIENT_DB(UISoundLookupsRec); DB_CLIENT_DB(UnitBloodRec); DB_CLIENT_DB(UnitBloodLevelsRec); DB_CLIENT_DB(VehicleRec); DB_CLIENT_DB(VehicleSeatRec); DB_CLIENT_DB(VehicleUIIndSeatRec); DB_CLIENT_DB(VehicleUIIndicatorRec); DB_CLIENT_DB(VideoHardwareRec); DB_CLIENT_DB(VocalUISoundsRec); DB_CLIENT_DB(WMOAreaTableRec); DB_CLIENT_DB(WeaponImpactSoundsRec); DB_CLIENT_DB(WeaponSwingSounds2Rec); DB_CLIENT_DB(WeatherRec); DB_CLIENT_DB(WorldChunkSoundsRec); DB_CLIENT_DB(WorldMapAreaRec); DB_CLIENT_DB(WorldMapContinentRec); DB_CLIENT_DB(WorldMapOverlayRec); DB_CLIENT_DB(WorldMapTransformsRec); DB_CLIENT_DB(WorldSafeLocsRec); DB_CLIENT_DB(WorldStateUIRec); DB_CLIENT_DB(WorldStateZoneSoundsRec); DB_CLIENT_DB(WowError_StringsRec); DB_CLIENT_DB(ZoneIntroMusicTableRec); DB_CLIENT_DB(ZoneLightRec); DB_CLIENT_DB(ZoneLightPointRec); DB_CLIENT_DB(ZoneMusicRec); DB_CLIENT_DB(gtBarberShopCostBaseRec); DB_CLIENT_DB(gtChanceToMeleeCritRec); DB_CLIENT_DB(gtChanceToMeleeCritBaseRec); DB_CLIENT_DB(gtChanceToSpellCritRec); DB_CLIENT_DB(gtChanceToSpellCritBaseRec); DB_CLIENT_DB(gtCombatRatingsRec); DB_CLIENT_DB(gtNPCManaCostScalerRec); DB_CLIENT_DB(gtOCTClassCombatRatingScalarRec); DB_CLIENT_DB(gtOCTRegenHPRec); DB_CLIENT_DB(gtOCTRegenMPRec); DB_CLIENT_DB(gtRegenHPPerSptRec); DB_CLIENT_DB(gtRegenMPPerSptRec); DB_CLIENT_DB(gtSpellScalingRec); #endif