diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/server/game/DataStores/DB2Stores.cpp | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/src/server/game/DataStores/DB2Stores.cpp b/src/server/game/DataStores/DB2Stores.cpp index 178ace62023..2de052fcb84 100644 --- a/src/server/game/DataStores/DB2Stores.cpp +++ b/src/server/game/DataStores/DB2Stores.cpp @@ -1031,6 +1031,12 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul LOAD_DB2(sWorldStateExpressionStore); // error checks + + // Check loaded DB2 files proper version + for (uint32 criticalItemId : { ITEM_ACCOUNT_BANK_TAB_BAG, ITEM_CHARACTER_BANK_TAB_BAG }) + if (!sItemSparseStore.LookupEntry(criticalItemId)) + loadErrors.emplace_back(Trinity::StringFormat("Missing required item {} from ItemSparse.db2 (or its hotfix table)", criticalItemId)); + if (!loadErrors.empty()) { sLog->SetSynchronous(); // server will shut down after this, so set sync logging to prevent messages from getting lost @@ -1041,22 +1047,6 @@ uint32 DB2Manager::LoadStores(std::string const& dataPath, LocaleConstant defaul return 0; } - // Check loaded DB2 files proper version - if (!sAreaTableStore.LookupEntry(16579) || // last area added in 11.2.0 (62213) - !sCharTitlesStore.LookupEntry(937) || // last char title added in 11.2.0 (62213) - !sFlightCapabilityStore.LookupEntry(1) || // default flight capability (required) - !sGemPropertiesStore.LookupEntry(4287) || // last gem property added in 11.2.0 (62213) - !sItemStore.LookupEntry(252009) || // last item added in 11.2.0 (62213) - !sItemSparseStore.LookupEntry(ITEM_ACCOUNT_BANK_TAB_BAG) || - !sItemSparseStore.LookupEntry(ITEM_CHARACTER_BANK_TAB_BAG) || - !sItemExtendedCostStore.LookupEntry(10637) || // last item extended cost added in 11.2.0 (62213) - !sMapStore.LookupEntry(2951) || // last map added in 11.2.0 (62213) - !sSpellNameStore.LookupEntry(1254022)) // last spell added in 11.2.0 (62213) - { - TC_LOG_FATAL("misc", "You have _outdated_ DB2 files. Please extract correct versions from current using client."); - return 0; - } - TC_LOG_INFO("server.loading", ">> Initialized {} DB2 data stores in {} ms", _stores.size(), GetMSTimeDiffToNow(oldMSTime)); return availableDb2Locales.to_ulong(); |
