From 60400d25f5fff2dabd4aa74bbdbc0d2370360a35 Mon Sep 17 00:00:00 2001 From: Shauren Date: Fri, 27 Jun 2025 15:29:30 +0200 Subject: Core/Players: Implemented PlayerDataElementAccount, PlayerDataElementCharacter, PlayerDataFlagAccount and PlayerDataFlagCharacter --- sql/base/auth_database.sql | 52 +++++++++++++++++++++- sql/base/characters_database.sql | 52 +++++++++++++++++++++- sql/updates/auth/master/2025_06_27_00_auth.sql | 22 +++++++++ .../characters/master/2025_06_27_00_characters.sql | 22 +++++++++ .../hotfixes/master/2025_06_27_00_hotfixes.sql | 47 +++++++++++++++++++ 5 files changed, 193 insertions(+), 2 deletions(-) create mode 100644 sql/updates/auth/master/2025_06_27_00_auth.sql create mode 100644 sql/updates/characters/master/2025_06_27_00_characters.sql create mode 100644 sql/updates/hotfixes/master/2025_06_27_00_hotfixes.sql (limited to 'sql') diff --git a/sql/base/auth_database.sql b/sql/base/auth_database.sql index 490fae0289d..5d596e3d8ca 100644 --- a/sql/base/auth_database.sql +++ b/sql/base/auth_database.sql @@ -360,6 +360,55 @@ LOCK TABLES `battlenet_account_mounts` WRITE; /*!40000 ALTER TABLE `battlenet_account_mounts` ENABLE KEYS */; UNLOCK TABLES; +-- +-- Table structure for table `battlenet_account_player_data_element` +-- + +DROP TABLE IF EXISTS `battlenet_account_player_data_element`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `battlenet_account_player_data_element` ( + `battlenetAccountId` int unsigned NOT NULL, + `playerDataElementCharacterId` int unsigned NOT NULL, + `floatValue` float DEFAULT NULL, + `int64Value` bigint DEFAULT NULL, + PRIMARY KEY (`battlenetAccountId`,`playerDataElementCharacterId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `battlenet_account_player_data_element` +-- + +LOCK TABLES `battlenet_account_player_data_element` WRITE; +/*!40000 ALTER TABLE `battlenet_account_player_data_element` DISABLE KEYS */; +/*!40000 ALTER TABLE `battlenet_account_player_data_element` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `battlenet_account_player_data_flag` +-- + +DROP TABLE IF EXISTS `battlenet_account_player_data_flag`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `battlenet_account_player_data_flag` ( + `battlenetAccountId` int unsigned NOT NULL, + `storageIndex` int unsigned NOT NULL, + `mask` bigint unsigned NOT NULL, + PRIMARY KEY (`battlenetAccountId`,`storageIndex`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `battlenet_account_player_data_flag` +-- + +LOCK TABLES `battlenet_account_player_data_flag` WRITE; +/*!40000 ALTER TABLE `battlenet_account_player_data_flag` DISABLE KEYS */; +/*!40000 ALTER TABLE `battlenet_account_player_data_flag` ENABLE KEYS */; +UNLOCK TABLES; + -- -- Table structure for table `battlenet_account_toys` -- @@ -3658,7 +3707,8 @@ INSERT INTO `updates` VALUES ('2025_06_05_02_auth.sql','C2B67F688AC54CF6994F4709D0ECE692C968F346','RELEASED','2025-06-05 16:22:53',0), ('2025_06_18_00_auth.sql','AB5F6069BD37C93050022700F1C4B814D9D139C1','RELEASED','2025-06-17 23:13:05',0), ('2025_06_19_00_auth.sql','1C0ACAEEFC934F91F44C113E6CD9D7A40ED1C979','RELEASED','2025-06-18 22:51:15',0), -('2025_06_25_00_auth.sql','27DC7FB423FFB3788082CCFC18D5432650B09FB3','RELEASED','2025-06-25 01:15:04',0); +('2025_06_25_00_auth.sql','27DC7FB423FFB3788082CCFC18D5432650B09FB3','RELEASED','2025-06-25 01:15:04',0), +('2025_06_27_00_auth.sql','243C89DFED0058323EF9690D124C1F20036D461B','RELEASED','2025-06-27 14:22:49',0); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; UNLOCK TABLES; diff --git a/sql/base/characters_database.sql b/sql/base/characters_database.sql index c847062f228..28b1021d2c2 100644 --- a/sql/base/characters_database.sql +++ b/sql/base/characters_database.sql @@ -1225,6 +1225,55 @@ LOCK TABLES `character_pet_declinedname` WRITE; /*!40000 ALTER TABLE `character_pet_declinedname` ENABLE KEYS */; UNLOCK TABLES; +-- +-- Table structure for table `character_player_data_element` +-- + +DROP TABLE IF EXISTS `character_player_data_element`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `character_player_data_element` ( + `characterGuid` bigint unsigned NOT NULL, + `playerDataElementCharacterId` int unsigned NOT NULL, + `floatValue` float DEFAULT NULL, + `int64Value` bigint DEFAULT NULL, + PRIMARY KEY (`characterGuid`,`playerDataElementCharacterId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `character_player_data_element` +-- + +LOCK TABLES `character_player_data_element` WRITE; +/*!40000 ALTER TABLE `character_player_data_element` DISABLE KEYS */; +/*!40000 ALTER TABLE `character_player_data_element` ENABLE KEYS */; +UNLOCK TABLES; + +-- +-- Table structure for table `character_player_data_flag` +-- + +DROP TABLE IF EXISTS `character_player_data_flag`; +/*!40101 SET @saved_cs_client = @@character_set_client */; +/*!50503 SET character_set_client = utf8mb4 */; +CREATE TABLE `character_player_data_flag` ( + `characterGuid` bigint unsigned NOT NULL, + `storageIndex` int unsigned NOT NULL, + `mask` bigint unsigned NOT NULL, + PRIMARY KEY (`characterGuid`,`storageIndex`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +/*!40101 SET character_set_client = @saved_cs_client */; + +-- +-- Dumping data for table `character_player_data_flag` +-- + +LOCK TABLES `character_player_data_flag` WRITE; +/*!40000 ALTER TABLE `character_player_data_flag` DISABLE KEYS */; +/*!40000 ALTER TABLE `character_player_data_flag` ENABLE KEYS */; +UNLOCK TABLES; + -- -- Table structure for table `character_pvp_talent` -- @@ -3781,7 +3830,8 @@ INSERT INTO `updates` VALUES ('2024_12_22_00_characters.sql','A2F24564430C5BCC96C279E843FA3548B1F831EE','ARCHIVED','2024-12-22 02:56:17',0), ('2025_01_04_00_characters.sql','403E8B642A67765A04A0A4D5BC0752288208079C','ARCHIVED','2025-01-04 16:31:39',0), ('2025_03_29_00_characters.sql','6A49C236D0B8CCD8A5B6B51F60E116B3380772D7','ARCHIVED','2025-03-29 01:12:13',0), -('2025_05_31_00_characters.sql','C240EB5C4008B6AA0514802A18D7DD875680DE82','ARCHIVED','2025-05-31 19:45:56',0); +('2025_05_31_00_characters.sql','C240EB5C4008B6AA0514802A18D7DD875680DE82','ARCHIVED','2025-05-31 19:45:56',0), +('2025_06_27_00_characters.sql','35088BA5BA4BD3B7FAAD6FD4FAE38E52A5B71CD8','RELEASED','2025-06-27 14:22:08',0); /*!40000 ALTER TABLE `updates` ENABLE KEYS */; UNLOCK TABLES; diff --git a/sql/updates/auth/master/2025_06_27_00_auth.sql b/sql/updates/auth/master/2025_06_27_00_auth.sql new file mode 100644 index 00000000000..d7ace8563f1 --- /dev/null +++ b/sql/updates/auth/master/2025_06_27_00_auth.sql @@ -0,0 +1,22 @@ +-- +-- Table structure for table `battlenet_account_player_data_element` +-- +DROP TABLE IF EXISTS `battlenet_account_player_data_element`; +CREATE TABLE `battlenet_account_player_data_element` ( + `battlenetAccountId` int unsigned NOT NULL, + `playerDataElementAccountId` int unsigned NOT NULL, + `floatValue` float DEFAULT NULL, + `int64Value` bigint DEFAULT NULL, + PRIMARY KEY (`battlenetAccountId`,`playerDataElementAccountId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +-- +-- Table structure for table `battlenet_account_player_data_flag` +-- +DROP TABLE IF EXISTS `battlenet_account_player_data_flag`; +CREATE TABLE `battlenet_account_player_data_flag` ( + `battlenetAccountId` int unsigned NOT NULL, + `storageIndex` int unsigned NOT NULL, + `mask` bigint unsigned NOT NULL, + PRIMARY KEY (`battlenetAccountId`,`storageIndex`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; diff --git a/sql/updates/characters/master/2025_06_27_00_characters.sql b/sql/updates/characters/master/2025_06_27_00_characters.sql new file mode 100644 index 00000000000..4cdc504d89c --- /dev/null +++ b/sql/updates/characters/master/2025_06_27_00_characters.sql @@ -0,0 +1,22 @@ +-- +-- Table structure for table `character_player_data_element` +-- +DROP TABLE IF EXISTS `character_player_data_element`; +CREATE TABLE `character_player_data_element` ( + `characterGuid` bigint unsigned NOT NULL, + `playerDataElementCharacterId` int unsigned NOT NULL, + `floatValue` float DEFAULT NULL, + `int64Value` bigint DEFAULT NULL, + PRIMARY KEY (`characterGuid`,`playerDataElementCharacterId`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +-- +-- Table structure for table `character_player_data_flag` +-- +DROP TABLE IF EXISTS `character_player_data_flag`; +CREATE TABLE `character_player_data_flag` ( + `characterGuid` bigint unsigned NOT NULL, + `storageIndex` int unsigned NOT NULL, + `mask` bigint unsigned NOT NULL, + PRIMARY KEY (`characterGuid`,`storageIndex`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; diff --git a/sql/updates/hotfixes/master/2025_06_27_00_hotfixes.sql b/sql/updates/hotfixes/master/2025_06_27_00_hotfixes.sql new file mode 100644 index 00000000000..debe7a8a4ea --- /dev/null +++ b/sql/updates/hotfixes/master/2025_06_27_00_hotfixes.sql @@ -0,0 +1,47 @@ +-- +-- Table structure for table `player_data_element_account` +-- +DROP TABLE IF EXISTS `player_data_element_account`; +CREATE TABLE `player_data_element_account` ( + `ID` int unsigned NOT NULL DEFAULT '0', + `StorageIndex` int NOT NULL DEFAULT '0', + `Type` int NOT NULL DEFAULT '0', + `VerifiedBuild` int NOT NULL DEFAULT '0', + PRIMARY KEY (`ID`,`VerifiedBuild`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +-- +-- Table structure for table `player_data_element_character` +-- +DROP TABLE IF EXISTS `player_data_element_character`; +CREATE TABLE `player_data_element_character` ( + `ID` int unsigned NOT NULL DEFAULT '0', + `StorageIndex` int NOT NULL DEFAULT '0', + `Type` int NOT NULL DEFAULT '0', + `VerifiedBuild` int NOT NULL DEFAULT '0', + PRIMARY KEY (`ID`,`VerifiedBuild`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +-- +-- Table structure for table `player_data_flag_account` +-- +DROP TABLE IF EXISTS `player_data_flag_account`; +CREATE TABLE `player_data_flag_account` ( + `ID` int unsigned NOT NULL DEFAULT '0', + `StorageIndex` int NOT NULL DEFAULT '0', + `Unknown1107` int NOT NULL DEFAULT '0', + `VerifiedBuild` int NOT NULL DEFAULT '0', + PRIMARY KEY (`ID`,`VerifiedBuild`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + +-- +-- Table structure for table `player_data_flag_character` +-- +DROP TABLE IF EXISTS `player_data_flag_character`; +CREATE TABLE `player_data_flag_character` ( + `ID` int unsigned NOT NULL DEFAULT '0', + `StorageIndex` int NOT NULL DEFAULT '0', + `Unknown1107` int NOT NULL DEFAULT '0', + `VerifiedBuild` int NOT NULL DEFAULT '0', + PRIMARY KEY (`ID`,`VerifiedBuild`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; -- cgit v1.2.3