Use utf8mb4_general_ci for shared playerbot schema

utf8mb4_uca1400_ai_ci (MariaDB-only) breaks bootstrap on MySQL, where
CREATE DATABASE/CREATE TABLE fails outright. Switch the shared playerbot
schema and bootstrapped tables to utf8mb4_general_ci, matching the rest
of the playerbot_v2 migrations.
This commit is contained in:
devbox
2026-08-12 14:29:00 +10:00
parent 75090e50b4
commit b14ebad3fb
2 changed files with 12 additions and 12 deletions
+6 -6
View File
@@ -7,7 +7,7 @@
-- This file is NOT part of TrinityCore's auto-updater.
-- ============================================================================
CREATE DATABASE IF NOT EXISTS `playerbot` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci;
CREATE DATABASE IF NOT EXISTS `playerbot` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE `playerbot`;
@@ -29,7 +29,7 @@ CREATE TABLE IF NOT EXISTS `handcrafted_road` (
`verified` TINYINT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `idx_map` (`mapId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- ---------------------------------------------------------------------------
-- Bot name pool: pre-generated names for spawned bots.
@@ -43,7 +43,7 @@ CREATE TABLE IF NOT EXISTS `playerbots_names` (
`used_by_guid` BIGINT UNSIGNED DEFAULT NULL,
PRIMARY KEY (`name_id`),
UNIQUE KEY `uk_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- ---------------------------------------------------------------------------
-- Dungeon route waypoints: auto-generated navmesh corridor chains.
@@ -58,7 +58,7 @@ CREATE TABLE IF NOT EXISTS `playerbot_dungeon_routes` (
`position_z` FLOAT NOT NULL,
PRIMARY KEY (`map_id`, `difficulty`, `seq`),
KEY `map_idx` (`map_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- ---------------------------------------------------------------------------
-- Nav links: DB-authored traversal links (jumps, unmeshed walkable stretches).
@@ -81,7 +81,7 @@ CREATE TABLE IF NOT EXISTS `playerbot_nav_links` (
PRIMARY KEY (`id`),
KEY `idx_map` (`map_id`),
KEY `idx_verified` (`verified`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
-- ---------------------------------------------------------------------------
-- World metadata: operator-curated world knowledge (cities, roads, danger
@@ -107,4 +107,4 @@ CREATE TABLE IF NOT EXISTS `playerbot_v2_world_metadata` (
KEY `idx_map_xy` (map_id, pos_x, pos_y),
KEY `idx_zone` (zone_id),
KEY `idx_kind` (kind)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
@@ -9,7 +9,7 @@
-- Target: MySQL server (creates `playerbot` schema), not the characters DB.
CREATE DATABASE IF NOT EXISTS `playerbot`
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci;
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `playerbot`.`handcrafted_road` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
@@ -25,7 +25,7 @@ CREATE TABLE IF NOT EXISTS `playerbot`.`handcrafted_road` (
`verified` TINYINT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
KEY `idx_map` (`mapId`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `playerbot`.`playerbots_names` (
`name_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
@@ -35,7 +35,7 @@ CREATE TABLE IF NOT EXISTS `playerbot`.`playerbots_names` (
`used_by_guid` BIGINT UNSIGNED DEFAULT NULL,
PRIMARY KEY (`name_id`),
UNIQUE KEY `uk_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_dungeon_routes` (
`map_id` SMALLINT UNSIGNED NOT NULL,
@@ -46,7 +46,7 @@ CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_dungeon_routes` (
`position_z` FLOAT NOT NULL,
PRIMARY KEY (`map_id`, `difficulty`, `seq`),
KEY `map_idx` (`map_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_nav_links` (
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
@@ -65,7 +65,7 @@ CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_nav_links` (
PRIMARY KEY (`id`),
KEY `idx_map` (`map_id`),
KEY `idx_verified` (`verified`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_v2_world_metadata` (
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
@@ -86,4 +86,4 @@ CREATE TABLE IF NOT EXISTS `playerbot`.`playerbot_v2_world_metadata` (
KEY `idx_map_xy` (`map_id`, `pos_x`, `pos_y`),
KEY `idx_zone` (`zone_id`),
KEY `idx_kind` (`kind`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci;
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;