292 std::string dbcPath = dataPath +
"dbc/";
295 uint32 availableDbcLocales = 0xFFFFFFFF;
297 #define LOAD_DBC(store, file) LoadDBC(availableDbcLocales, bad_dbc_files, store, dbcPath, file, defaultLocale)
388 sCharSectionMap.insert({ entry->GenType | (entry->Gender << 8) | (entry->Race << 16), entry });
396 "MAX_DIFFICULTY is not large enough to contain all difficulties! (current value %d, required %d)",
417 if (info->GeoBoxMax.X < info->GeoBoxMin.X)
418 std::swap(*(
float*)(&info->GeoBoxMax.X), *(
float*)(&info->GeoBoxMin.X));
419 if (info->GeoBoxMax.Y < info->GeoBoxMin.Y)
420 std::swap(*(
float*)(&info->GeoBoxMax.Y), *(
float*)(&info->GeoBoxMin.Y));
421 if (info->GeoBoxMax.Z < info->GeoBoxMin.Z)
422 std::swap(*(
float*)(&info->GeoBoxMax.Z), *(
float*)(&info->GeoBoxMin.Z));
438 ASSERT(
false &&
"Need update MAX_BATTLEGROUND_BRACKETS by DBC data");
448 if (!spellEffectScaling)
459 sTalentByPos[talentInfo->ClassID][talentInfo->TierID][talentInfo->ColumnIndex].push_back(talentInfo);
461 TC_LOG_ERROR(
"server.loading",
"Value of class (found: %u, max allowed %u) or (found: %u, max allowed %u) tier or column (found: %u, max allowed %u) is invalid.",
473 TC_LOG_ERROR(
"misc",
"Incorrect DataDir value in worldserver.conf or ALL required *.dbc files (%d) not found by path: %sdbc/%s/",
DBCFileCount, dataPath.c_str(),
localeNames[defaultLocale]);
476 else if (!bad_dbc_files.empty())
479 for (StoreProblemList::iterator i = bad_dbc_files.begin(); i != bad_dbc_files.end(); ++i)
482 TC_LOG_ERROR(
"misc",
"Some required *.dbc files (%u from %d) not found or not compatible:\n%s", (
uint32)bad_dbc_files.size(),
DBCFileCount, str.c_str());
493 TC_LOG_ERROR(
"misc",
"You have _outdated_ DBC files. Please extract correct versions from current using client.");
DBCStorage< EmotesTextSoundEntry > sEmotesTextSoundStore(EmotesTextSoundEntryfmt)
DBCStorage< GemPropertiesEntry > sGemPropertiesStore(GemPropertiesfmt)
DBCStorage< LiquidTypeEntry > sLiquidTypeStore(LiquidTypefmt)
static WMOAreaInfoByTripple sWMOAreaInfoByTripple
Definition: DBCStores.cpp:156
DBCStorage< QuestFactionRewEntry > sQuestFactionRewardStore(QuestFactionRewardfmt)
DBCStorage< SkillLineEntry > sSkillLineStore(SkillLinefmt)
Definition: DBCEnums.h:63
DBCStorage< WorldSafeLocsEntry > sWorldSafeLocsStore(WorldSafeLocsfmt)
DBCStorage< ChrRacesEntry > sChrRacesStore(ChrRacesfmt)
DBCStorage< DurabilityCostsEntry > sDurabilityCostsStore(DurabilityCostsfmt)
DBCStorage< ChrClassesEntry > sChrClassesStore(ChrClassesfmt)
DBCStorage< ItemSetEntry > sItemSetStore(ItemSetfmt)
Definition: DBCStructure.h:1030
DBCStorage< ItemDamageEntry > sItemDamageThrownStore(ItemDamagefmt)
DBCStorage< SpellCooldownsEntry > sSpellCooldownsStore(SpellCooldownsfmt)
uint32 ParentFactionID
Definition: DBCStructure.h:413
DBCStorage< SummonPropertiesEntry > sSummonPropertiesStore(SummonPropertiesfmt)
Definition: DBCStructure.h:396
MapDifficultyMap sMapDifficultyMap
Definition: DBCStores.cpp:115
DBCStorage< LockEntry > sLockStore(Lockfmt)
DBCStorage< ItemDamageEntry > sItemDamageOneHandCasterStore(ItemDamagefmt)
DBCStorage< AreaTriggerEntry > sAreaTriggerStore(AreaTriggerfmt)
DBCStorage< BattlemasterListEntry > sBattlemasterListStore(BattlemasterListfmt)
ItemSetSpellsStore sItemSetSpellsStore
Definition: DBCStores.cpp:106
DBCStorage< BankBagSlotPricesEntry > sBankBagSlotPricesStore(BankBagSlotPricesfmt)
DBCStorage< SpellScalingEntry > sSpellScalingStore(SpellScalingfmt)
uint32 getMSTime()
Definition: Timer.h:24
Definition: DBCEnums.h:426
DBCStorage< LFGDungeonEntry > sLFGDungeonStore(LFGDungeonfmt)
DBCStorage< ArmorLocationEntry > sArmorLocationStore(ArmorLocationfmt)
SpellEffectScallingByEffectId sSpellEffectScallingByEffectId
Definition: DBCStores.cpp:136
uint32 DBCFileCount
Definition: DBCStores.cpp:184
DBCStorage< MapDifficultyEntry > sMapDifficultyStore(MapDifficultyfmt)
DBCStorage< SpellLevelsEntry > sSpellLevelsStore(SpellLevelsfmt)
DBCStorage< ItemDamageEntry > sItemDamageOneHandStore(ItemDamagefmt)
#define LOAD_DBC(store, file)
DBCStorage< WorldMapTransformsEntry > sWorldMapTransformsStore(WorldMapTransformsfmt)
static std::map< EmotesTextSoundKey, EmotesTextSoundEntry const * > sEmotesTextSoundMap
Definition: DBCStores.cpp:79
DBCStorage< CharTitlesEntry > sCharTitlesStore(CharTitlesfmt)
CharSectionsMap sCharSectionMap
Definition: DBCStores.cpp:61
DBCStorage< EmotesEntry > sEmotesStore(Emotesfmt)
DBCStorage< SkillRaceClassInfoEntry > sSkillRaceClassInfoStore(SkillRaceClassInfofmt)
DBCStorage< AreaTableEntry > sAreaTableStore(AreaTablefmt)
DBCStorage< RandomPropertiesPointsEntry > sRandomPropertiesPointsStore(RandPropPointsfmt)
DBCStorage< PvPDifficultyEntry > sPvpDifficultyStore(PvpDifficultyfmt)
Definition: DBCStructure.h:1383
DBCStorage< MovieEntry > sMovieStore(Moviefmt)
DBCStorage< CreatureModelDataEntry > sCreatureModelDataStore(CreatureModelDatafmt)
DBCStorage< ItemArmorTotalEntry > sItemArmorTotalStore(ItemArmorTotalfmt)
Definition: DBCStructure.h:245
std::list< std::string > StoreProblemList
Definition: DBCStores.cpp:182
DBCStorage< GuildColorEmblemEntry > sGuildColorEmblemStore(GuildColorEmblemfmt)
DBCStorage< CreatureDisplayInfoExtraEntry > sCreatureDisplayInfoExtraStore(CreatureDisplayInfoExtrafmt)
DBCStorage< SpellCategoryEntry > sSpellCategoryStore(SpellCategoryfmt)
DBCStorage< SpellEntry > sSpellStore(Spellfmt)
TalentsByPosition sTalentByPos
Definition: DBCStores.cpp:150
DBCStorage< GuildColorBorderEntry > sGuildColorBorderStore(GuildColorBorderfmt)
DBCStorage< ItemBagFamilyEntry > sItemBagFamilyStore(ItemBagFamilyfmt)
DBCStorage< ItemArmorShieldEntry > sItemArmorShieldStore(ItemArmorShieldfmt)
DBCStorage< ItemArmorQualityEntry > sItemArmorQualityStore(ItemArmorQualityfmt)
DBCStorage< SpellFocusObjectEntry > sSpellFocusObjectStore(SpellFocusObjectfmt)
Definition: DBCStructure.h:487
DBCStorage< WorldMapAreaEntry > sWorldMapAreaStore(WorldMapAreafmt)
DBCStorage< CharSectionsEntry > sCharSectionsStore(CharSectionsfmt)
Definition: DBCStructure.h:733
DBCStorage< ItemSetSpellEntry > sItemSetSpellStore(ItemSetSpellfmt)
uint32_t uint32
Definition: Define.h:150
DBCStorage< SpellInterruptsEntry > sSpellInterruptsStore(SpellInterruptsfmt)
DBCStorage< SpellItemEnchantmentEntry > sSpellItemEnchantmentStore(SpellItemEnchantmentfmt)
DBCStorage< GlyphPropertiesEntry > sGlyphPropertiesStore(GlyphPropertiesfmt)
DBCStorage< PowerDisplayEntry > sPowerDisplayStore(PowerDisplayfmt)
DBCStorage< GuildColorBackgroundEntry > sGuildColorBackgroundStore(GuildColorBackgroundfmt)
DBCStorage< PhaseEntry > sPhaseStore(Phasefmt)
DBCStorage< VehicleSeatEntry > sVehicleSeatStore(VehicleSeatfmt)
Definition: DBCStructure.h:982
DBCStorage< CreatureFamilyEntry > sCreatureFamilyStore(CreatureFamilyfmt)
#define MAX_CLASSES
Definition: SharedDefines.h:181
DBCStorage< SpellEquippedItemsEntry > sSpellEquippedItemsStore(SpellEquippedItemsfmt)
DBCStorage< GameObjectDisplayInfoEntry > sGameObjectDisplayInfoStore(GameObjectDisplayInfofmt)
DBCStorage< SpellTargetRestrictionsEntry > sSpellTargetRestrictionsStore(SpellTargetRestrictionsfmt)
Definition: DBCStructure.h:405
DBCStorage< ItemDamageEntry > sItemDamageAmmoStore(ItemDamagefmt)
DBCStorage< TalentEntry > sTalentStore(Talentfmt)
DBCStorage< WMOAreaTableEntry > sWMOAreaTableStore(WMOAreaTablefmt)
DBCStorage< ChrSpecializationEntry > sChrSpecializationStore(ChrSpecializationfmt)
TC_COMMON_API char const * localeNames[TOTAL_LOCALES]
Definition: Common.cpp:21
DBCStorage< VehicleEntry > sVehicleStore(Vehiclefmt)
uint32 GetMSTimeDiffToNow(uint32 oldMSTime)
Definition: Timer.h:42
uint32 SpellEffectID
Definition: DBCStructure.h:1036
Definition: DBCStructure.h:885
DBCStorage< MapEntry > sMapStore(Mapfmt)
Definition: DBCStructure.h:926
DBCStorage< SpellEffectScalingEntry > sSpellEffectScalingStore(SpellEffectScalingfmt)
DBCStorage< ItemDamageEntry > sItemDamageWandStore(ItemDamagefmt)
DBCStorage< SpellEffectEntry > sSpellEffectStore(SpellEffectfmt)
DBCStorage< SpellAuraOptionsEntry > sSpellAuraOptionsStore(SpellAuraOptionsfmt)
#define RACEMASK_ALL_PLAYABLE
Definition: SharedDefines.h:133
DBCStorage< ItemDamageEntry > sItemDamageRangedStore(ItemDamagefmt)
DBCStorage< AnimKitEntry > sAnimKitStore(AnimKitfmt)
#define ASSERT
Definition: Errors.h:55
DBCStorage< SpellCategoriesEntry > sSpellCategoriesStore(SpellCategoriesfmt)
#define TC_LOG_INFO(filterType__,...)
Definition: Log.h:201
DBCStorage< EmotesTextEntry > sEmotesTextStore(EmotesTextfmt)
DBCStorage< ItemDamageEntry > sItemDamageTwoHandStore(ItemDamagefmt)
DBCStorage< FactionEntry > sFactionStore(Factionfmt)
#define TC_LOG_ERROR(filterType__,...)
Definition: Log.h:207
static FactionTeamMap sFactionTeamMap
Definition: DBCStores.cpp:83
DBCStorage< ItemDamageEntry > sItemDamageTwoHandCasterStore(ItemDamagefmt)
DBCStorage< LightEntry > sLightStore(Lightfmt)
DBCStorage< SpellShapeshiftFormEntry > sSpellShapeshiftFormStore(SpellShapeshiftFormfmt)
DBCStorage< BannedAddOnsEntry > sBannedAddOnsStore(BannedAddOnsfmt)
Definition: DBCStructure.h:1255
DBCStorage< ChatChannelsEntry > sChatChannelsStore(ChatChannelsfmt)
SkillRaceClassInfoMap SkillRaceClassInfoBySkill
Definition: DBCStores.cpp:129
#define MAX_TALENT_COLUMNS
Definition: DBCStructure.h:1253
DBCStorage< FactionTemplateEntry > sFactionTemplateStore(FactionTemplatefmt)
DBCStorage< DifficultyEntry > sDifficultyStore(DifficultyFmt)
std::tuple< uint32, uint32, uint32 > EmotesTextSoundKey
Definition: DBCStores.cpp:78
ChrSpecializationByIndexArray sChrSpecializationByIndexStore
Definition: DBCStores.cpp:67
DBCStorage< SpellShapeshiftEntry > sSpellShapeshiftStore(SpellShapeshiftfmt)
Definition: DBCStores.cpp:30
Definition: DBCStructure.h:149
#define MAX_TALENT_TIERS
Definition: DBCStructure.h:1252
DBCStorage< DungeonEncounterEntry > sDungeonEncounterStore(DungeonEncounterfmt)
DBCStorage< SkillLineAbilityEntry > sSkillLineAbilityStore(SkillLineAbilityfmt)