aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sql/base/auth_database.sql7
-rw-r--r--sql/updates/auth/master/2018_05_13_00_auth.sql1
-rw-r--r--sql/updates/hotfixes/master/2018_05_13_00_hotfixes.sql14
-rw-r--r--src/server/database/Database/Implementation/HotfixDatabase.cpp5
-rw-r--r--src/server/database/Database/Implementation/HotfixDatabase.h2
-rw-r--r--src/server/game/DataStores/DB2LoadInfo.h22
-rw-r--r--src/server/game/DataStores/DB2Stores.cpp2
-rw-r--r--src/server/game/DataStores/DB2Structure.h10
8 files changed, 57 insertions, 6 deletions
diff --git a/sql/base/auth_database.sql b/sql/base/auth_database.sql
index d935c3493ae..fb3792ddcf5 100644
--- a/sql/base/auth_database.sql
+++ b/sql/base/auth_database.sql
@@ -2077,7 +2077,7 @@ CREATE TABLE `realmlist` (
`allowedSecurityLevel` tinyint(3) unsigned NOT NULL DEFAULT '0',
`population` float unsigned NOT NULL DEFAULT '0',
`gamebuild` int(10) unsigned NOT NULL DEFAULT '26365',
- `Region` tinyint(3) unsigned NOT NULL DEFAULT '2',
+ `Region` tinyint(3) unsigned NOT NULL DEFAULT '1',
`Battlegroup` tinyint(3) unsigned NOT NULL DEFAULT '1',
PRIMARY KEY (`id`),
UNIQUE KEY `idx_name` (`name`)
@@ -2091,7 +2091,7 @@ CREATE TABLE `realmlist` (
LOCK TABLES `realmlist` WRITE;
/*!40000 ALTER TABLE `realmlist` DISABLE KEYS */;
INSERT INTO `realmlist` VALUES
-(1,'Trinity','127.0.0.1','127.0.0.1','255.255.255.0',8085,0,0,1,0,0,26365,2,1);
+(1,'Trinity','127.0.0.1','127.0.0.1','255.255.255.0',8085,0,0,1,0,0,26365,1,1);
/*!40000 ALTER TABLE `realmlist` ENABLE KEYS */;
UNLOCK TABLES;
@@ -2237,7 +2237,8 @@ INSERT INTO `updates` VALUES
('2018_02_19_00_auth.sql','07CE658C5EF88693D3C047EF8E724F94ADA74C15','RELEASED','2018-02-19 22:33:32',233),
('2018_02_28_00_auth.sql','E92EF4ABF7FA0C66649E1633DD0459F44C09EB83','RELEASED','2018-02-28 23:07:59',0),
('2018_03_14_00_auth.sql','2D71E93DF7419A30D0D21D8A80CF05698302575A','RELEASED','2018-03-14 23:07:59',0),
-('2018_04_06_00_auth.sql','D8416F0C4751763202B1997C81423F6EE2FCF9A6','RELEASED','2018-04-06 18:00:32',0);
+('2018_04_06_00_auth.sql','D8416F0C4751763202B1997C81423F6EE2FCF9A6','RELEASED','2018-04-06 18:00:32',0),
+('2018_05_13_00_auth.sql','A9E20F2EB1E2FDBB982DB6B00DB7301852B27CD4','RELEASED','2018-05-13 20:22:32',0);
/*!40000 ALTER TABLE `updates` ENABLE KEYS */;
UNLOCK TABLES;
diff --git a/sql/updates/auth/master/2018_05_13_00_auth.sql b/sql/updates/auth/master/2018_05_13_00_auth.sql
new file mode 100644
index 00000000000..7df67812d21
--- /dev/null
+++ b/sql/updates/auth/master/2018_05_13_00_auth.sql
@@ -0,0 +1 @@
+ALTER TABLE `realmlist` MODIFY `Region` tinyint(3) unsigned NOT NULL DEFAULT '1' AFTER `gamebuild`;
diff --git a/sql/updates/hotfixes/master/2018_05_13_00_hotfixes.sql b/sql/updates/hotfixes/master/2018_05_13_00_hotfixes.sql
new file mode 100644
index 00000000000..bc42dc94f37
--- /dev/null
+++ b/sql/updates/hotfixes/master/2018_05_13_00_hotfixes.sql
@@ -0,0 +1,14 @@
+--
+-- Table structure for table `cfg_regions`
+--
+DROP TABLE IF EXISTS `cfg_regions`;
+CREATE TABLE `cfg_regions` (
+ `ID` int(10) unsigned NOT NULL DEFAULT '0',
+ `Tag` text,
+ `Raidorigin` int(10) unsigned NOT NULL DEFAULT '0',
+ `ChallengeOrigin` int(10) unsigned NOT NULL DEFAULT '0',
+ `RegionID` smallint(5) unsigned NOT NULL DEFAULT '0',
+ `RegionGroupMask` tinyint(3) unsigned NOT NULL DEFAULT '0',
+ `VerifiedBuild` smallint(6) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`ID`)
+) ENGINE=MyISAM DEFAULT CHARSET=utf8;
diff --git a/src/server/database/Database/Implementation/HotfixDatabase.cpp b/src/server/database/Database/Implementation/HotfixDatabase.cpp
index 73f48f1285a..23772fa2e57 100644
--- a/src/server/database/Database/Implementation/HotfixDatabase.cpp
+++ b/src/server/database/Database/Implementation/HotfixDatabase.cpp
@@ -139,6 +139,9 @@ void HotfixDatabaseConnection::DoPrepareStatements()
"EmotesID, LanguageID, Flags, ConditionID, SoundEntriesID1, SoundEntriesID2 FROM broadcast_text ORDER BY ID DESC", CONNECTION_SYNCH);
PREPARE_LOCALE_STMT(HOTFIX_SEL_BROADCAST_TEXT, "SELECT ID, Text_lang, Text1_lang FROM broadcast_text_locale WHERE locale = ?", CONNECTION_SYNCH);
+ // CfgRegions.db2
+ PrepareStatement(HOTFIX_SEL_CFG_REGIONS, "SELECT ID, Tag, Raidorigin, ChallengeOrigin, RegionID, RegionGroupMask FROM cfg_regions ORDER BY ID DESC", CONNECTION_SYNCH);
+
// CharacterFacialHairStyles.db2
PrepareStatement(HOTFIX_SEL_CHARACTER_FACIAL_HAIR_STYLES, "SELECT ID, Geoset1, Geoset2, Geoset3, Geoset4, Geoset5, RaceID, SexID, VariationID"
" FROM character_facial_hair_styles ORDER BY ID DESC", CONNECTION_SYNCH);
@@ -514,7 +517,7 @@ void HotfixDatabaseConnection::DoPrepareStatements()
PREPARE_LOCALE_STMT(HOTFIX_SEL_ITEM_LIMIT_CATEGORY, "SELECT ID, Name_lang FROM item_limit_category_locale WHERE locale = ?", CONNECTION_SYNCH);
// ItemLimitCategoryCondition.db2
- PrepareStatement(HOTFIX_SEL_ITEM_LIMIT_CATEGORY_CONDITION, "SELECT ID, AddQuantity, PlayerConditionID, ParentItemLimitCategoryID "
+ PrepareStatement(HOTFIX_SEL_ITEM_LIMIT_CATEGORY_CONDITION, "SELECT ID, AddQuantity, PlayerConditionID, ParentItemLimitCategoryID"
" FROM item_limit_category_condition ORDER BY ID DESC", CONNECTION_SYNCH);
// ItemModifiedAppearance.db2
diff --git a/src/server/database/Database/Implementation/HotfixDatabase.h b/src/server/database/Database/Implementation/HotfixDatabase.h
index 42e65d96261..5f15a3adea1 100644
--- a/src/server/database/Database/Implementation/HotfixDatabase.h
+++ b/src/server/database/Database/Implementation/HotfixDatabase.h
@@ -91,6 +91,8 @@ enum HotfixDatabaseStatements : uint32
HOTFIX_SEL_BROADCAST_TEXT,
HOTFIX_SEL_BROADCAST_TEXT_LOCALE,
+ HOTFIX_SEL_CFG_REGIONS,
+
HOTFIX_SEL_CHARACTER_FACIAL_HAIR_STYLES,
HOTFIX_SEL_CHAR_BASE_SECTION,
diff --git a/src/server/game/DataStores/DB2LoadInfo.h b/src/server/game/DataStores/DB2LoadInfo.h
index c0f6a4a7452..5560141fd7b 100644
--- a/src/server/game/DataStores/DB2LoadInfo.h
+++ b/src/server/game/DataStores/DB2LoadInfo.h
@@ -554,6 +554,24 @@ struct BroadcastTextLoadInfo
}
};
+struct CfgRegionsLoadInfo
+{
+ static DB2LoadInfo const* Instance()
+ {
+ static DB2FieldMeta const fields[] =
+ {
+ { false, FT_INT, "ID" },
+ { false, FT_STRING_NOT_LOCALIZED, "Tag" },
+ { false, FT_INT, "Raidorigin" },
+ { false, FT_INT, "ChallengeOrigin" },
+ { false, FT_SHORT, "RegionID" },
+ { false, FT_BYTE, "RegionGroupMask" },
+ };
+ static DB2LoadInfo const loadInfo(&fields[0], std::extent<decltype(fields)>::value, Cfg_RegionsMeta::Instance(), HOTFIX_SEL_CFG_REGIONS);
+ return &loadInfo;
+ }
+};
+
struct CharacterFacialHairStylesLoadInfo
{
static DB2LoadInfo const* Instance()
@@ -2434,9 +2452,9 @@ struct ItemLimitCategoryConditionLoadInfo
static DB2FieldMeta const fields[] =
{
{ false, FT_INT, "ID" },
- { true, FT_BYTE, "AddQuantity" },
+ { true, FT_BYTE, "AddQuantity" },
{ false, FT_INT, "PlayerConditionID" },
- { true, FT_INT, "ParentItemLimitCategoryID" },
+ { true, FT_INT, "ParentItemLimitCategoryID" },
};
static DB2LoadInfo const loadInfo(&fields[0], std::extent<decltype(fields)>::value, ItemLimitCategoryConditionMeta::Instance(), HOTFIX_SEL_ITEM_LIMIT_CATEGORY_CONDITION);
return &loadInfo;
diff --git a/src/server/game/DataStores/DB2Stores.cpp b/src/server/game/DataStores/DB2Stores.cpp
index 3d5ec4531af..7faae631eb9 100644
--- a/src/server/game/DataStores/DB2Stores.cpp
+++ b/src/server/game/DataStores/DB2Stores.cpp
@@ -60,6 +60,7 @@ DB2Storage<BattlePetSpeciesEntry> sBattlePetSpeciesStore("BattlePe
DB2Storage<BattlePetSpeciesStateEntry> sBattlePetSpeciesStateStore("BattlePetSpeciesState.db2", BattlePetSpeciesStateLoadInfo::Instance());
DB2Storage<BattlemasterListEntry> sBattlemasterListStore("BattlemasterList.db2", BattlemasterListLoadInfo::Instance());
DB2Storage<BroadcastTextEntry> sBroadcastTextStore("BroadcastText.db2", BroadcastTextLoadInfo::Instance());
+DB2Storage<Cfg_RegionsEntry> sCfgRegionsStore("Cfg_Regions.db2", CfgRegionsLoadInfo::Instance());
DB2Storage<CharacterFacialHairStylesEntry> sCharacterFacialHairStylesStore("CharacterFacialHairStyles.db2", CharacterFacialHairStylesLoadInfo::Instance());
DB2Storage<CharBaseSectionEntry> sCharBaseSectionStore("CharBaseSection.db2", CharBaseSectionLoadInfo::Instance());
DB2Storage<CharSectionsEntry> sCharSectionsStore("CharSections.db2", CharSectionsLoadInfo::Instance());
@@ -497,6 +498,7 @@ void DB2Manager::LoadStores(std::string const& dataPath, uint32 defaultLocale)
LOAD_DB2(sBattlePetSpeciesStateStore);
LOAD_DB2(sBattlemasterListStore);
LOAD_DB2(sBroadcastTextStore);
+ LOAD_DB2(sCfgRegionsStore);
LOAD_DB2(sCharacterFacialHairStylesStore);
LOAD_DB2(sCharBaseSectionStore);
LOAD_DB2(sCharSectionsStore);
diff --git a/src/server/game/DataStores/DB2Structure.h b/src/server/game/DataStores/DB2Structure.h
index 915a88b9c4f..639c7b66877 100644
--- a/src/server/game/DataStores/DB2Structure.h
+++ b/src/server/game/DataStores/DB2Structure.h
@@ -330,6 +330,16 @@ struct BroadcastTextEntry
uint32 SoundEntriesID[2];
};
+struct Cfg_RegionsEntry
+{
+ uint32 ID;
+ char const* Tag;
+ uint32 Raidorigin; // Date of first raid reset, all other resets are calculated as this date plus interval
+ uint32 ChallengeOrigin;
+ uint16 RegionID;
+ uint8 RegionGroupMask;
+};
+
struct CharacterFacialHairStylesEntry
{
uint32 ID;