-- MySQL dump 10.13 Distrib 8.0.23, for Linux (x86_64) -- -- Host: localhost Database: mbdb_108 -- ------------------------------------------------------ -- Server version 8.0.23 /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!50503 SET NAMES utf8mb4 */; /*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */; /*!40103 SET TIME_ZONE='+00:00' */; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; -- -- Table structure for table `_city_audit` -- DROP TABLE IF EXISTS `_city_audit`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_city_audit` ( `uid` int NOT NULL AUTO_INCREMENT, `zone_name` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `zoneID` int DEFAULT NULL, `guildUID` int NOT NULL DEFAULT '0', `basic_zone_template_id` int DEFAULT NULL, `city_prop_gm_guild` int DEFAULT NULL, `city_prop_gm_nation` int DEFAULT NULL, `city_prop_asset_rank` int DEFAULT NULL, PRIMARY KEY (`uid`) ) ENGINE=InnoDB AUTO_INCREMENT=25 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_contract_equipment` -- DROP TABLE IF EXISTS `_contract_equipment`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_contract_equipment` ( `contractID` int unsigned NOT NULL, `templateID` int DEFAULT NULL, `dropChance` float(10,2) DEFAULT '0.00' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_mobile_booties` -- DROP TABLE IF EXISTS `_mobile_booties`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_mobile_booties` ( `zoneID` int DEFAULT NULL, `parent` int DEFAULT NULL, `mob_index` int DEFAULT NULL, `mobile_type` varchar(255) DEFAULT NULL, `booty_type` varchar(255) DEFAULT NULL, `booty_item` int DEFAULT NULL, `booty_percent` float DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_mobile_data` -- DROP TABLE IF EXISTS `_mobile_data`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_mobile_data` ( `num_of_columns` int DEFAULT NULL, `zoneID` int DEFAULT NULL, `parent` int DEFAULT NULL, `mob_index` int DEFAULT NULL, `mobile_type` varchar(255) DEFAULT NULL, `mobile_number_in_group` int DEFAULT NULL, `mobile_change_to_find` int DEFAULT NULL, `mobile_level` int DEFAULT NULL, `mobile_behavior_file` varchar(255) DEFAULT NULL, `mobile_dialog_override` varchar(255) DEFAULT NULL, `mobile_base_exp_reward` int DEFAULT NULL, `mobile_tenacity` float(255,4) DEFAULT NULL, `mobile_courage` float(255,4) DEFAULT NULL, `mobile_has_role_set` varchar(255) DEFAULT NULL, `mobile_has_content` varchar(255) DEFAULT NULL, `mobile_use_prefered_hp` varchar(255) DEFAULT NULL, `mobile_root_fs_mid` varchar(255) DEFAULT NULL, `mobile_parley_name` varchar(255) DEFAULT NULL, `basic_zone_name_override` varchar(255) DEFAULT NULL, `basic_zone_time_to_respawn` float(255,4) DEFAULT NULL, `basic_zone_spawn_radius` float(255,4) DEFAULT NULL, `basic_zone_y_rot` float(255,4) DEFAULT NULL, `basic_zone_template_id` tinyint DEFAULT NULL, `basic_zone_unknown1` varchar(255) DEFAULT NULL, `basic_zone_level_number` int DEFAULT NULL, `basic_zone_room_number` int DEFAULT NULL, `basic_zone_unknown2` varchar(255) DEFAULT NULL, `basic_zone_dungeon_level` int DEFAULT NULL, `basic_zone_dungeon_row` int DEFAULT NULL, `basic_zone_dungeon_column` int DEFAULT NULL, `basic_zone_spawn_location_x` float(255,4) DEFAULT NULL, `basic_zone_spawn_location_y` float(255,4) DEFAULT NULL, `basic_zone_spawn_location_z` float(255,4) DEFAULT NULL, `basic_zone_sparse_data` varchar(255) DEFAULT NULL, `group_type` varchar(255) DEFAULT NULL, `group_is_faction` varchar(255) DEFAULT NULL, `group_is_guild` varchar(255) DEFAULT NULL, `mobile_has_home_goal` varchar(255) DEFAULT NULL, `mobile_home_goal` int DEFAULT NULL, `mobile_spawn_home_goal` varchar(255) DEFAULT NULL, `mobile_has_target_goal` varchar(255) DEFAULT NULL, `mobile_target_goal` int DEFAULT NULL, `mobile_spawn_target_goal` varchar(255) DEFAULT NULL, `trainer_std_profit_margin` float(255,4) DEFAULT NULL, `trainer_profit_margin` float(255,4) DEFAULT NULL, `mobile_has_group_tactics` varchar(255) DEFAULT NULL, `mobile_group_tactics` varchar(255) DEFAULT NULL, `notEnemy` bigint DEFAULT NULL, `enemy` bigint DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_mobile_equipment` -- DROP TABLE IF EXISTS `_mobile_equipment`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_mobile_equipment` ( `zoneID` varchar(255) DEFAULT NULL, `parent` varchar(255) DEFAULT NULL, `mob_index` varchar(255) DEFAULT NULL, `mobile_type` varchar(255) DEFAULT NULL, `templateID` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `item_float` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_mobile_runestones` -- DROP TABLE IF EXISTS `_mobile_runestones`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_mobile_runestones` ( `zoneID` int DEFAULT NULL, `parent` int DEFAULT NULL, `mob_index` int DEFAULT NULL, `mobile_type` varchar(255) DEFAULT NULL, `rune_id` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_prop_data` -- DROP TABLE IF EXISTS `_prop_data`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_prop_data` ( `prop_entry` int NOT NULL AUTO_INCREMENT, `num_of_columns` int DEFAULT NULL, `zoneID` int DEFAULT NULL, `parent` int DEFAULT NULL, `prop_index` int DEFAULT NULL, `prop_type` varchar(255) DEFAULT NULL, `prop_UUID` int DEFAULT NULL, `prop_has_platform` varchar(255) DEFAULT NULL, `prop_platform_height` float(255,4) DEFAULT NULL, `prop_is_light_data` varchar(255) DEFAULT NULL, `prop_has_zone_event` varchar(255) DEFAULT NULL, `basic_zone_name_override` varchar(255) DEFAULT NULL, `basic_zone_time_to_respawn` float(255,4) DEFAULT NULL, `basic_zone_spawn_radius` float(255,4) DEFAULT NULL, `basic_zone_y_rot` float(255,4) DEFAULT NULL, `basic_zone_template_id` int DEFAULT NULL, `basic_zone_unknown1` int DEFAULT NULL, `basic_zone_level_number` bigint DEFAULT NULL, `basic_zone_room_number` bigint DEFAULT NULL, `basic_zone_unknown2` int DEFAULT NULL, `basic_zone_dungeon_level` int DEFAULT NULL, `basic_zone_dungeon_row` int DEFAULT NULL, `basic_zone_dungeon_column` int DEFAULT NULL, `basic_zone_spawn_location_x` float(255,4) DEFAULT NULL, `basic_zone_spawn_location_y` float(255,4) DEFAULT NULL, `basic_zone_spawn_location_z` float(255,4) DEFAULT NULL, `basic_zone_sparse_data` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `city_prop_gm_guild` int DEFAULT NULL, `city_prop_gm_nation` int DEFAULT NULL, `city_prop_asset_rank` int DEFAULT NULL, `city_prop_asset_funds` int DEFAULT NULL, `prop_registry` varchar(255) DEFAULT NULL, `prop_registry_name` varchar(255) DEFAULT NULL, `prop_has_teleporter` varchar(255) DEFAULT NULL, `prop_teleporter` int DEFAULT NULL, PRIMARY KEY (`prop_entry`) ) ENGINE=InnoDB AUTO_INCREMENT=236575 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_rune_data` -- DROP TABLE IF EXISTS `_rune_data`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_rune_data` ( `runeID` int DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `type` varchar(255) DEFAULT NULL, `typeVal` varchar(255) DEFAULT NULL, `subType` varchar(255) DEFAULT NULL, `subTypeVal` varchar(255) DEFAULT NULL, `creationCost` varchar(255) DEFAULT NULL, `CreationRune` varchar(255) DEFAULT NULL, `health` varchar(255) DEFAULT NULL, `mana` varchar(255) DEFAULT NULL, `stamina` varchar(255) DEFAULT NULL, `minDam` varchar(255) DEFAULT NULL, `maxDam` varchar(255) DEFAULT NULL, `defense` varchar(255) DEFAULT NULL, `level` varchar(255) DEFAULT NULL, `fsm` varchar(255) DEFAULT NULL, `notEnemy` bigint DEFAULT NULL, `enemy` bigint DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_runebase_booty` -- DROP TABLE IF EXISTS `_runebase_booty`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_runebase_booty` ( `runeID` int DEFAULT NULL, `bootyType` varchar(255) DEFAULT NULL, `lowGold` int DEFAULT NULL, `highGold` int DEFAULT NULL, `lootTable` int DEFAULT NULL, `templateID` int DEFAULT NULL, `dropChance` float DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `_zone_tree` -- DROP TABLE IF EXISTS `_zone_tree`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `_zone_tree` ( `zone_uuid` int DEFAULT NULL, `parent` int DEFAULT NULL, `node_count` int DEFAULT NULL, `zone_name` varchar(255) DEFAULT NULL, `template` int DEFAULT NULL, `is_safe_zone` int DEFAULT NULL, `extentsx` int DEFAULT NULL, `extentsy` int DEFAULT NULL, `locationx` float DEFAULT NULL, `locationy` float DEFAULT NULL, `locationz` float DEFAULT NULL, `icon1` varchar(255) DEFAULT NULL, `icon2` varchar(255) DEFAULT NULL, `icon3` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `char_perAccount` -- DROP TABLE IF EXISTS `char_perAccount`; /*!50001 DROP VIEW IF EXISTS `char_perAccount`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `char_perAccount` AS SELECT 1 AS `acct_uname`, 1 AS `discordAccount`, 1 AS `CharacterUID`, 1 AS `CharacterName`, 1 AS `CharRace`, 1 AS `BaseClass`, 1 AS `PromotionClass`, 1 AS `char_experience`, 1 AS `char_level`, 1 AS `AccountStatus`*/; SET character_set_client = @saved_cs_client; -- -- Temporary view structure for view `class_metrics` -- DROP TABLE IF EXISTS `class_metrics`; /*!50001 DROP VIEW IF EXISTS `class_metrics`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `class_metrics` AS SELECT 1 AS `Class`, 1 AS `Count`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `dyn_admin_log` -- DROP TABLE IF EXISTS `dyn_admin_log`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_admin_log` ( `entry` bigint NOT NULL AUTO_INCREMENT, `dateTime` datetime NOT NULL, `charName` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `eventString` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `SentFlag` tinyint NOT NULL DEFAULT '0', PRIMARY KEY (`entry`) ) ENGINE=InnoDB AUTO_INCREMENT=1474 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_banes` -- DROP TABLE IF EXISTS `dyn_banes`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_banes` ( `cityUUID` bigint NOT NULL, `ownerUUID` bigint NOT NULL, `stoneUUID` bigint NOT NULL, `placementDate` datetime NOT NULL, `liveDate` datetime DEFAULT NULL, PRIMARY KEY (`cityUUID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_building_condemned` -- DROP TABLE IF EXISTS `dyn_building_condemned`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_building_condemned` ( `buildingUID` bigint unsigned NOT NULL, `playerUID` bigint unsigned NOT NULL, `guildUID` bigint unsigned NOT NULL, `friendType` int NOT NULL, `active` smallint NOT NULL DEFAULT '0', KEY `dyn_guild_condemn_ibfk_2` (`playerUID`) USING BTREE, KEY `dyn_guild_condemn_ibfk_4` (`guildUID`) USING BTREE, KEY `dyn_guild_condemn_ibfk_5` (`buildingUID`) USING BTREE, CONSTRAINT `dyn_building_condemned_ibfk_2` FOREIGN KEY (`buildingUID`) REFERENCES `obj_building` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_building_friends` -- DROP TABLE IF EXISTS `dyn_building_friends`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_building_friends` ( `buildingUID` bigint unsigned NOT NULL, `playerUID` bigint unsigned NOT NULL, `guildUID` bigint unsigned NOT NULL, `friendType` int NOT NULL, KEY `dyn_building_friends_ibfk_1` (`buildingUID`), KEY `dyn_building_friends_ibfk_2` (`playerUID`), KEY `dyn_building_friends_ibfk_4` (`guildUID`), CONSTRAINT `dyn_building_friends_ibfk_1` FOREIGN KEY (`buildingUID`) REFERENCES `obj_building` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `dyn_building_friends_ibfk_2` FOREIGN KEY (`playerUID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `dyn_building_friends_ibfk_3` FOREIGN KEY (`guildUID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_building_patrol_points` -- DROP TABLE IF EXISTS `dyn_building_patrol_points`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_building_patrol_points` ( `buildingUID` bigint unsigned NOT NULL, `patrolX` float(20,0) NOT NULL, `patrolY` float(20,0) NOT NULL, `patrolZ` float(20,0) NOT NULL, KEY `dyn_guild_condemn_ibfk_5` (`buildingUID`) USING BTREE, CONSTRAINT `dyn_building_patrol_points_ibfk_1` FOREIGN KEY (`buildingUID`) REFERENCES `obj_building` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_friends` -- DROP TABLE IF EXISTS `dyn_character_friends`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_friends` ( `playerUID` bigint unsigned NOT NULL, `friendUID` bigint unsigned NOT NULL, PRIMARY KEY (`playerUID`,`friendUID`), KEY `dyn_building_friends_ibfk_2` (`friendUID`) USING BTREE, KEY `dyn_building_friends_ibfk_4` (`friendUID`) USING BTREE, CONSTRAINT `dyn_building_friends_copy_ibfk_2` FOREIGN KEY (`playerUID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `dyn_building_friends_copy_ibfk_3` FOREIGN KEY (`friendUID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_guildhistory` -- DROP TABLE IF EXISTS `dyn_character_guildhistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_guildhistory` ( `GuildID` bigint unsigned NOT NULL, `CharacterID` bigint unsigned NOT NULL, `ID` bigint unsigned NOT NULL AUTO_INCREMENT, `historyDate` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP, `historyType` enum('LEAVE','JOIN','CREATE','DISBAND','BANISHED') DEFAULT 'LEAVE', PRIMARY KEY (`ID`), KEY `fk_guildhistory_guilds` (`GuildID`), KEY `fk_guildhistory_characters` (`CharacterID`), CONSTRAINT `dyn_character_guildhistory_ibfk_1` FOREIGN KEY (`CharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `dyn_character_guildhistory_ibfk_2` FOREIGN KEY (`GuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=58 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_heraldy` -- DROP TABLE IF EXISTS `dyn_character_heraldy`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_heraldy` ( `playerUID` bigint unsigned DEFAULT NULL, `characterUID` bigint unsigned DEFAULT NULL, `characterType` int DEFAULT NULL, KEY `heraldryIndex` (`playerUID`) USING BTREE, KEY `fkey_heraldry` (`characterUID`), CONSTRAINT `fkey_heraldry` FOREIGN KEY (`characterUID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_ignore` -- DROP TABLE IF EXISTS `dyn_character_ignore`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_ignore` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `accountUID` bigint unsigned NOT NULL, `ignoringUID` bigint unsigned NOT NULL, `characterName` varchar(50) NOT NULL DEFAULT '', UNIQUE KEY `UID` (`UID`), KEY `fk_characterignore_accountUID` (`accountUID`), KEY `fk_characterignore_ignoringUID` (`ignoringUID`), CONSTRAINT `fk_characterignore_accountUID` FOREIGN KEY (`accountUID`) REFERENCES `obj_account` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_killmap` -- DROP TABLE IF EXISTS `dyn_character_killmap`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_killmap` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `killerUID` bigint unsigned NOT NULL, `killedUID` bigint unsigned DEFAULT NULL, `timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`UID`), KEY `fk_killmap_killer_characters` (`killerUID`), KEY `fk_killmap_killed_characters` (`killedUID`), CONSTRAINT `fk_killmap_killedUID` FOREIGN KEY (`killedUID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_killmap_killerUID` FOREIGN KEY (`killerUID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_murdermap` -- DROP TABLE IF EXISTS `dyn_character_murdermap`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_murdermap` ( `murdererUID` bigint unsigned NOT NULL, `victimUID` bigint unsigned NOT NULL, `time` int unsigned NOT NULL, KEY `murdererUID` (`murdererUID`,`victimUID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_power` -- DROP TABLE IF EXISTS `dyn_character_power`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_power` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `CharacterID` bigint unsigned DEFAULT NULL, `PowersBaseToken` int DEFAULT NULL, `trains` tinyint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`UID`), KEY `fk_characterpowers_characters` (`CharacterID`), KEY `fk_characterpowers_powersbase` (`PowersBaseToken`), CONSTRAINT `fk_characterpower_characterID` FOREIGN KEY (`CharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=129 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_rune` -- DROP TABLE IF EXISTS `dyn_character_rune`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_rune` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `CharacterID` bigint unsigned DEFAULT NULL, `RuneBaseID` int unsigned DEFAULT NULL, PRIMARY KEY (`UID`), KEY `fk_characterrunes_characters` (`CharacterID`), KEY `fk_characterrunes_runebase` (`RuneBaseID`), CONSTRAINT `fk_characterrune_characterID` FOREIGN KEY (`CharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_character_skill` -- DROP TABLE IF EXISTS `dyn_character_skill`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_character_skill` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `CharacterID` bigint unsigned DEFAULT NULL, `SkillsBaseID` int unsigned DEFAULT NULL, `trains` tinyint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`UID`), KEY `fk_characterskills_characters` (`CharacterID`), KEY `fk_characterskills_skillsbase` (`SkillsBaseID`), CONSTRAINT `fk_characterskill_characterID` FOREIGN KEY (`CharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=205 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_guards` -- DROP TABLE IF EXISTS `dyn_guards`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_guards` ( `captainUID` bigint unsigned NOT NULL, `minionName` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, KEY `dyn_guards_ibfk_5` (`captainUID`) USING BTREE, CONSTRAINT `dyn_guards_ibfk_1` FOREIGN KEY (`captainUID`) REFERENCES `obj_mob` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_guild_allianceenemylist` -- DROP TABLE IF EXISTS `dyn_guild_allianceenemylist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_guild_allianceenemylist` ( `GuildID` bigint unsigned NOT NULL, `OtherGuildID` bigint unsigned NOT NULL, `isAlliance` tinyint unsigned NOT NULL DEFAULT '0', `isRecommended` smallint NOT NULL DEFAULT '0', `recommender` varchar(50) NOT NULL DEFAULT '', KEY `fk_guildallianceenemylist_guilds` (`GuildID`), KEY `fk_guildallianceenemylist_guilds2` (`OtherGuildID`), KEY `isAlliance` (`isAlliance`), CONSTRAINT `dyn_guild_allianceenemylist_ibfk_1` FOREIGN KEY (`GuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `dyn_guild_allianceenemylist_ibfk_2` FOREIGN KEY (`OtherGuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_guild_banishlist` -- DROP TABLE IF EXISTS `dyn_guild_banishlist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_guild_banishlist` ( `GuildID` bigint unsigned NOT NULL, `CharacterID` bigint unsigned NOT NULL, `ID` bigint unsigned NOT NULL AUTO_INCREMENT, UNIQUE KEY `id` (`ID`), KEY `fk_guildbanishlist_guilds` (`GuildID`), KEY `fk_guildbanishlist_characters` (`CharacterID`), CONSTRAINT `fk_banishlist_characterID` FOREIGN KEY (`CharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_banishlist_guildID` FOREIGN KEY (`GuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_guild_characterkoslist` -- DROP TABLE IF EXISTS `dyn_guild_characterkoslist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_guild_characterkoslist` ( `GuildID` bigint unsigned NOT NULL, `KOSCharacterID` bigint unsigned NOT NULL, `ID` bigint unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`KOSCharacterID`,`GuildID`), UNIQUE KEY `id` (`ID`), KEY `fk_guildcharacterkoslist_guilds` (`GuildID`), KEY `fk_guildcharacterkoslist_characters` (`KOSCharacterID`), CONSTRAINT `fk_characterkoslist_guildID` FOREIGN KEY (`GuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_characterkoslist_kosCharacterID` FOREIGN KEY (`KOSCharacterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_guild_guildkoslist` -- DROP TABLE IF EXISTS `dyn_guild_guildkoslist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_guild_guildkoslist` ( `GuildID` bigint unsigned NOT NULL, `KOSGuildID` bigint unsigned NOT NULL, `ID` bigint unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`KOSGuildID`,`GuildID`), UNIQUE KEY `id` (`ID`), KEY `fk_guildguildkoslist_guilds` (`GuildID`), KEY `fk_guildguildkoslist_guildskos` (`KOSGuildID`), CONSTRAINT `fk_guildkoslist_guildID` FOREIGN KEY (`GuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_guildkoslist_kosGuildID` FOREIGN KEY (`KOSGuildID`) REFERENCES `obj_guild` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_item_enchantment` -- DROP TABLE IF EXISTS `dyn_item_enchantment`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_item_enchantment` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `itemID` bigint unsigned NOT NULL, `powerAction` varchar(30) NOT NULL, `rank` smallint unsigned NOT NULL, PRIMARY KEY (`UID`), KEY `itemID` (`itemID`), CONSTRAINT `fk_itemenchantment_itemID` FOREIGN KEY (`itemID`) REFERENCES `obj_item` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_login_history` -- DROP TABLE IF EXISTS `dyn_login_history`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_login_history` ( `AccountID` bigint unsigned NOT NULL, `accountName` varchar(36) DEFAULT NULL, `characterName` varchar(36) DEFAULT NULL, `ip` varchar(36) DEFAULT NULL, `machineID` varchar(36) DEFAULT NULL, `timeStamp` timestamp NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_npc_profits` -- DROP TABLE IF EXISTS `dyn_npc_profits`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_npc_profits` ( `npcUID` bigint unsigned NOT NULL, `buy_normal` float DEFAULT '0.33', `buy_guild` float DEFAULT '0.33', `buy_nation` float DEFAULT '0.33', `sell_normal` float DEFAULT '1', `sell_guild` float DEFAULT '1', `sell_nation` float DEFAULT '1', PRIMARY KEY (`npcUID`), KEY `npc_prodID` (`npcUID`) USING BTREE, CONSTRAINT `dyn_npc_production_copy_ibfk_1` FOREIGN KEY (`npcUID`) REFERENCES `obj_npc` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_petition` -- DROP TABLE IF EXISTS `dyn_petition`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_petition` ( `petitionNumber` int NOT NULL AUTO_INCREMENT, `petitionTime` datetime DEFAULT NULL, `primaryType` varchar(50) DEFAULT NULL, `subType` varchar(50) DEFAULT NULL, `message` varchar(255) DEFAULT NULL, `accountID` int DEFAULT NULL, `accountName` varchar(255) DEFAULT NULL, `characterID` int DEFAULT NULL, `characterName` varchar(255) DEFAULT NULL, `location` varchar(255) DEFAULT NULL, PRIMARY KEY (`petitionNumber`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_session` -- DROP TABLE IF EXISTS `dyn_session`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_session` ( `secretKey` varchar(32) NOT NULL, `accountID` bigint unsigned NOT NULL, `discordAccount` varchar(60) DEFAULT NULL, `characterID` bigint unsigned DEFAULT NULL, `sessionIP` int unsigned NOT NULL, `machineID` varchar(32) DEFAULT NULL, PRIMARY KEY (`secretKey`), KEY `fk_sessions_accounts` (`accountID`), KEY `fk_sessions_characters` (`characterID`), CONSTRAINT `fk_session_accountID` FOREIGN KEY (`accountID`) REFERENCES `obj_account` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_session_characterID` FOREIGN KEY (`characterID`) REFERENCES `obj_character` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_trash` -- DROP TABLE IF EXISTS `dyn_trash`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_trash` ( `machineID` varchar(30) NOT NULL, `count` bigint NOT NULL, PRIMARY KEY (`machineID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `dyn_trash_detail` -- DROP TABLE IF EXISTS `dyn_trash_detail`; /*!50001 DROP VIEW IF EXISTS `dyn_trash_detail`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `dyn_trash_detail` AS SELECT 1 AS `accountName`, 1 AS `characterName`, 1 AS `BaseClass`, 1 AS `PromotionClass`, 1 AS `machineID`, 1 AS `ip`, 1 AS `count`, 1 AS `char_isActive`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `dyn_warehouse` -- DROP TABLE IF EXISTS `dyn_warehouse`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_warehouse` ( `cityUUID` int NOT NULL, `warehouse` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, PRIMARY KEY (`cityUUID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_warehouse_transactions` -- DROP TABLE IF EXISTS `dyn_warehouse_transactions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_warehouse_transactions` ( `ID` bigint unsigned NOT NULL AUTO_INCREMENT, `warehouseUID` bigint unsigned NOT NULL, `targetType` enum('Building','NPC','PlayerCharacter') NOT NULL, `targetUID` bigint unsigned NOT NULL, `type` enum('WITHDRAWL','DEPOSIT','MAINTENANCE','MINE') NOT NULL, `resource` enum('GOLD','ADAMANT','AGATE','ANTIMONY','AZOTH','BLOODSTONE','BRONZEWOOD','COAL','DIAMOND','GALVOR','IRON','LUMBER','MANDRAKE','MITHRIL','OAK','OBSIDIAN','ONYX','ORICHALK','QUICKSILVER','STONE','SULFUR','TRUESTEEL','WORMWOOD') NOT NULL, `amount` int unsigned NOT NULL, `date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`ID`), KEY `dyn_building_friends_ibfk_1` (`warehouseUID`), KEY `dyn_building_friends_ibfk_2` (`targetUID`), CONSTRAINT `dyn_warehouse_transactions_ibfk_1` FOREIGN KEY (`warehouseUID`) REFERENCES `obj_building` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `dyn_workorders` -- DROP TABLE IF EXISTS `dyn_workorders`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `dyn_workorders` ( `workorderID` int NOT NULL, `workorder` varchar(1024) DEFAULT NULL, PRIMARY KEY (`workorderID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `guild_Leaders` -- DROP TABLE IF EXISTS `guild_Leaders`; /*!50001 DROP VIEW IF EXISTS `guild_Leaders`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `guild_Leaders` AS SELECT 1 AS `acct_uname`, 1 AS `discordAccount`, 1 AS `AccountStatus`, 1 AS `CharacterUID`, 1 AS `CharacterName`, 1 AS `char_level`, 1 AS `GuildName`, 1 AS `ownedCity`, 1 AS `CityName`, 1 AS `mineTime`, 1 AS `motto`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `login_cachelist` -- DROP TABLE IF EXISTS `login_cachelist`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `login_cachelist` ( `UID` bigint NOT NULL, `type` varchar(20) NOT NULL DEFAULT 'account', PRIMARY KEY (`UID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `mob_Powers` -- DROP TABLE IF EXISTS `mob_Powers`; /*!50001 DROP VIEW IF EXISTS `mob_Powers`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `mob_Powers` AS SELECT 1 AS `mobbaseUUID`, 1 AS `mobName`, 1 AS `mobLevel`, 1 AS `powerToken`, 1 AS `powerString`, 1 AS `powerName`, 1 AS `powerRank`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `obj_account` -- DROP TABLE IF EXISTS `obj_account`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_account` ( `UID` bigint unsigned NOT NULL, `discordAccount` varchar(60) NOT NULL DEFAULT '', `acct_uname` varchar(60) NOT NULL, `acct_passwd` char(60) NOT NULL, `registrationDate` datetime DEFAULT NULL, `acct_salt` char(30) NOT NULL DEFAULT '', `acct_suspend` tinyint unsigned NOT NULL DEFAULT '0', `discordAdmin` tinyint NOT NULL DEFAULT '0', `acct_lastCharUID` bigint DEFAULT NULL, `lastUpdateRequest` datetime DEFAULT NULL, `status` enum('BANNED','ACTIVE','ADMIN','TRASH') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT 'ACTIVE', PRIMARY KEY (`UID`), UNIQUE KEY `uname` (`acct_uname`), KEY `discord` (`discordAccount`) USING BTREE, CONSTRAINT `ref_account` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_account_wipe` -- DROP TABLE IF EXISTS `obj_account_wipe`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_account_wipe` ( `UID` bigint unsigned NOT NULL, `discordAccount` varchar(60) NOT NULL, `acct_uname` varchar(60) NOT NULL, `acct_passwd` char(60) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL, `registrationDate` datetime DEFAULT NULL, `acct_salt` char(30) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL, `acct_suspend` tinyint unsigned NOT NULL DEFAULT '0', `discordAdmin` tinyint NOT NULL DEFAULT '0', `acct_lastCharUID` bigint DEFAULT NULL, `lastUpdateRequest` datetime DEFAULT NULL, `status` enum('BANNED','ACTIVE','ADMIN','TRASH') DEFAULT 'ACTIVE', PRIMARY KEY (`UID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_building` -- DROP TABLE IF EXISTS `obj_building`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_building` ( `UID` bigint unsigned NOT NULL, `ownerUUID` bigint unsigned DEFAULT NULL, `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '', `meshUUID` int unsigned NOT NULL, `locationX` float NOT NULL DEFAULT '0', `locationY` float NOT NULL DEFAULT '0', `locationZ` float NOT NULL DEFAULT '0', `scale` float NOT NULL DEFAULT '1', `doorState` int NOT NULL DEFAULT '0', `currentHP` int NOT NULL DEFAULT '1', `protectionState` enum('NONE','PROTECTED','UNDERSIEGE','CEASEFIRE','CONTRACT','DESTROYED','NPC','PENDING') NOT NULL DEFAULT 'NONE', `currentGold` int NOT NULL DEFAULT '0', `rank` int NOT NULL DEFAULT '0', `upgradeDate` datetime DEFAULT NULL, `blueprintUUID` int NOT NULL DEFAULT '0', `w` float NOT NULL, `rotY` float NOT NULL, `reverseKOS` tinyint(1) NOT NULL DEFAULT '0', `reserve` int NOT NULL DEFAULT '0', `taxType` enum('NONE','WEEKLY','PROFIT') NOT NULL DEFAULT 'NONE', `taxAmount` int NOT NULL DEFAULT '0', `taxDate` datetime DEFAULT NULL, `enforceKOS` smallint NOT NULL DEFAULT '0', `parentBuildingID` bigint unsigned DEFAULT '0', `floor` int DEFAULT '-1', `level` int DEFAULT '-1', `isFurniture` smallint DEFAULT '0', `maintDate` datetime DEFAULT NULL, `rotation` float(255,4) DEFAULT NULL, PRIMARY KEY (`UID`), KEY `ownerUID` (`ownerUUID`), CONSTRAINT `obj_building_ibfk_1` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_character` -- DROP TABLE IF EXISTS `obj_character`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_character` ( `UID` bigint unsigned NOT NULL, `char_firstname` varchar(15) NOT NULL, `char_lastname` varchar(50) NOT NULL DEFAULT '', `char_isActive` tinyint(1) NOT NULL DEFAULT '1', `char_raceID` int unsigned NOT NULL, `char_baseClassID` int unsigned NOT NULL, `char_promotionClassID` int DEFAULT NULL, `char_strMod` smallint NOT NULL DEFAULT '0', `char_dexMod` smallint NOT NULL DEFAULT '0', `char_conMod` smallint NOT NULL DEFAULT '0', `char_intMod` smallint NOT NULL DEFAULT '0', `char_spiMod` smallint NOT NULL DEFAULT '0', `char_experience` int unsigned NOT NULL DEFAULT '0', `char_skinColor` tinyint unsigned NOT NULL, `char_hairColor` tinyint unsigned NOT NULL, `char_hairStyle` tinyint NOT NULL, `char_beardColor` tinyint unsigned NOT NULL, `char_beardStyle` tinyint NOT NULL, `char_bindBuilding` bigint NOT NULL, `guildUID` bigint unsigned DEFAULT NULL, `guild_isInnerCouncil` tinyint unsigned NOT NULL DEFAULT '0', `guild_isRecruiter` tinyint unsigned NOT NULL DEFAULT '0', `guild_isTaxCollector` tinyint unsigned NOT NULL DEFAULT '0', `guild_isFullMember` tinyint unsigned NOT NULL DEFAULT '0', `guild_title` tinyint unsigned NOT NULL DEFAULT '0', `anniversery` tinyint NOT NULL DEFAULT '0', `hash` varchar(255) DEFAULT NULL, PRIMARY KEY (`UID`), KEY `ref_character_guildUID` (`guildUID`), CONSTRAINT `ref_character` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_city` -- DROP TABLE IF EXISTS `obj_city`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_city` ( `UID` bigint unsigned NOT NULL, `name` varchar(255) NOT NULL, `motto` varchar(255) DEFAULT ' ', `treeOfLifeUUID` bigint unsigned NOT NULL, `established` datetime NOT NULL, `realmTaxDate` datetime DEFAULT NULL, `population` int NOT NULL, `siegesWithstood` int NOT NULL, `isNpc` tinyint(1) NOT NULL, `isCapital` tinyint(1) NOT NULL, `isNoobIsle` tinyint(1) NOT NULL, `bindX` float DEFAULT NULL, `bindZ` float DEFAULT NULL, `bindRadius` float DEFAULT NULL, `radiusType` tinyint unsigned DEFAULT NULL, `forceRename` tinyint NOT NULL DEFAULT '1', `open` tinyint NOT NULL DEFAULT '0', `hash` varchar(255) DEFAULT NULL, PRIMARY KEY (`UID`), CONSTRAINT `ref_city` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_container` -- DROP TABLE IF EXISTS `obj_container`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_container` ( `UID` bigint unsigned NOT NULL, `container_type` enum('bank','inventory','vault') NOT NULL, PRIMARY KEY (`UID`), CONSTRAINT `ref_container` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_guild` -- DROP TABLE IF EXISTS `obj_guild`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_guild` ( `UID` bigint unsigned NOT NULL, `name` varchar(60) NOT NULL, `backgroundColor01` smallint unsigned NOT NULL DEFAULT '0', `backgroundColor02` smallint unsigned NOT NULL DEFAULT '0', `symbolColor` smallint unsigned NOT NULL DEFAULT '0', `backgroundDesign` smallint unsigned NOT NULL DEFAULT '0', `symbol` smallint unsigned NOT NULL DEFAULT '0', `charter` smallint unsigned NOT NULL DEFAULT '0', `leadershipType` varchar(45) NOT NULL DEFAULT 'Common Rule', `motd` varchar(255) NOT NULL DEFAULT '', `icMotd` varchar(255) NOT NULL DEFAULT '', `nationMotd` varchar(255) NOT NULL DEFAULT '', `leaderUID` bigint unsigned DEFAULT NULL, `ownedCity` bigint unsigned DEFAULT '0', `repledgeMin` int unsigned NOT NULL DEFAULT '1', `repledgeMax` int unsigned NOT NULL DEFAULT '100', `repledgekick` int unsigned NOT NULL DEFAULT '100', `teleportMin` int unsigned NOT NULL DEFAULT '1', `teleportMax` int unsigned NOT NULL DEFAULT '100', `mineTime` tinyint unsigned NOT NULL DEFAULT '0', `motto` varchar(40) NOT NULL DEFAULT '', `hash` varchar(255) DEFAULT NULL, PRIMARY KEY (`UID`), CONSTRAINT `ref_guild` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_item` -- DROP TABLE IF EXISTS `obj_item`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_item` ( `UID` bigint unsigned NOT NULL, `templateID` int unsigned NOT NULL, `container` enum('bank','equip','inventory','vault','forge','none') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `chargesRemaining` smallint unsigned NOT NULL, `combat_health_current` smallint unsigned NOT NULL, `equipSlot` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', `numberOfItems` int unsigned NOT NULL, `flags` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', `value` int NOT NULL DEFAULT '0', `dateToUpgrade` bigint NOT NULL DEFAULT '0', `name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT '', PRIMARY KEY (`UID`), CONSTRAINT `ref_item` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_mine` -- DROP TABLE IF EXISTS `obj_mine`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_mine` ( `UID` bigint unsigned NOT NULL, `mine_type` enum('ORE','LUMBER','GOLD','MAGIC') NOT NULL, `mine_resource` enum('GOLD','ADAMANT','AGATE','ANTIMONY','AZOTH','BLOODSTONE','BRONZEWOOD','COAL','DIAMOND','GALVOR','IRON','LUMBER','MANDRAKE','MITHRIL','OAK','OBSIDIAN','ONYX','ORICHALK','QUICKSILVER','STONE','SULFUR','TRUESTEEL','WORMWOOD') NOT NULL DEFAULT 'GOLD', `mine_ownerUID` bigint unsigned NOT NULL, `mine_buildingUID` bigint unsigned NOT NULL, `flags` int unsigned NOT NULL DEFAULT '1', PRIMARY KEY (`UID`), CONSTRAINT `obj_mine_ibfk_1` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_mob` -- DROP TABLE IF EXISTS `obj_mob`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_mob` ( `UID` bigint unsigned NOT NULL, `mob_mobbaseID` int unsigned DEFAULT NULL, `mob_guildUID` bigint unsigned DEFAULT NULL, `mob_spawnX` float NOT NULL DEFAULT '0', `mob_spawnY` float NOT NULL DEFAULT '0', `mob_spawnZ` float NOT NULL DEFAULT '0', `mob_spawnType` smallint unsigned DEFAULT NULL, `mob_spawnRadius` float NOT NULL DEFAULT '0', `mob_spawnTime` int unsigned DEFAULT NULL, `mob_buildingID` int NOT NULL DEFAULT '0', `mob_rotation` float NOT NULL DEFAULT '0', `mob_contractID` int unsigned DEFAULT '0', `upgradeDate` datetime DEFAULT NULL, `mob_level` int DEFAULT '0', `mob_buildingFloor` int DEFAULT '-1', `mob_buildingLevel` int DEFAULT '-1', `mob_respawnTime` float(10,0) DEFAULT NULL, `mob_name` varchar(255) DEFAULT '', `equipmentSet` int NOT NULL DEFAULT '0', `runeSet` int NOT NULL DEFAULT '0', `bootySet` int NOT NULL DEFAULT '0', `sparseData` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '', `notEnemy` bigint DEFAULT '0', `enemy` bigint DEFAULT '0', `fsm` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT 'None', `rotation` float(255,4) DEFAULT '0.0000', PRIMARY KEY (`UID`), KEY `fk_mobs_mobbase` (`mob_mobbaseID`), KEY `fk_mobs_guilds` (`mob_guildUID`), KEY `ref_mob` (`UID`), CONSTRAINT `ref_mob` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_npc` -- DROP TABLE IF EXISTS `obj_npc`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_npc` ( `UID` bigint unsigned NOT NULL, `npc_name` varchar(60) NOT NULL DEFAULT '', `npc_contractID` int unsigned DEFAULT NULL, `npc_guildID` int unsigned DEFAULT NULL, `npc_spawnX` float NOT NULL DEFAULT '0', `npc_spawnY` float NOT NULL DEFAULT '0', `npc_spawnZ` float NOT NULL DEFAULT '0', `npc_level` smallint unsigned NOT NULL DEFAULT '0', `npc_buyPercent` float unsigned NOT NULL DEFAULT '1', `npc_sellPercent` float unsigned NOT NULL DEFAULT '0.1', `npc_buildingID` int NOT NULL DEFAULT '0', `npc_pTable` int NOT NULL DEFAULT '0', `npc_sTable` int NOT NULL DEFAULT '0', `npc_rotation` float NOT NULL DEFAULT '0', `upgradeDate` datetime DEFAULT NULL, `npc_buildingFloor` int DEFAULT '-1', `npc_buildingLevel` int DEFAULT '-1', `npc_raceID` int DEFAULT '0', `equipmentSet` int NOT NULL DEFAULT '0', `runeSet` int NOT NULL DEFAULT '0', `rotation` float(255,4) DEFAULT '0.0000', PRIMARY KEY (`UID`), CONSTRAINT `ref_npc` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_realm` -- DROP TABLE IF EXISTS `obj_realm`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_realm` ( `realmID` smallint NOT NULL DEFAULT '0', `realmColor` varchar(255) DEFAULT NULL, `canBeClaimed` tinyint(1) NOT NULL, `canPlaceCities` tinyint(1) NOT NULL, `numCities` int unsigned NOT NULL, `realmName` varchar(45) NOT NULL, `rulingCityUID` bigint unsigned NOT NULL DEFAULT '0', `charterType` int NOT NULL DEFAULT '0', `ruledSince` datetime DEFAULT NULL, `mapY1` float NOT NULL DEFAULT '0', `mapX1` float NOT NULL DEFAULT '0', `mapY2` float NOT NULL DEFAULT '0', `mapX2` float NOT NULL DEFAULT '0', `stretchX` int NOT NULL, `stretchY` int NOT NULL, `locX` int NOT NULL, `locY` int NOT NULL, `hash` varchar(255) DEFAULT NULL, PRIMARY KEY (`realmID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_shrine` -- DROP TABLE IF EXISTS `obj_shrine`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_shrine` ( `UID` bigint unsigned NOT NULL, `shrine_type` enum('Aelfborn','Aracoix','Centaur','Dwarf','Elf','Human','Irekei','Minotaur','Nephilim','Shade','Assassin','Barbarian','Bard','Channeler','Confessor','Crusader','Doomsayer','Druid','Fury','Huntress','Prelate','Priest','Ranger','Scout','Sentinel','Templar','Thief','Warlock','Warrior','Wizard','Nightstalker','Necromancer','Vampire','HalfGiant') NOT NULL, `shrine_favors` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`UID`), CONSTRAINT `ref_shrine` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `obj_zone` -- DROP TABLE IF EXISTS `obj_zone`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `obj_zone` ( `UID` bigint unsigned NOT NULL, `template` int unsigned NOT NULL, `zone_name` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `peace_zone` tinyint NOT NULL DEFAULT '0', `xOffset` float NOT NULL, `yOffset` float NOT NULL, `zOffset` float NOT NULL, `playerCityUUID` int unsigned NOT NULL DEFAULT '0', `icon1` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `icon2` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `icon3` varchar(60) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `min_level` int NOT NULL DEFAULT '0', `max_level` int NOT NULL DEFAULT '0', `hash` varchar(255) DEFAULT NULL, PRIMARY KEY (`UID`), CONSTRAINT `ref_zone` FOREIGN KEY (`UID`) REFERENCES `object` (`UID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `object` -- DROP TABLE IF EXISTS `object`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `object` ( `UID` bigint unsigned NOT NULL AUTO_INCREMENT, `type` enum('account','building','character','city','container','guild','item','mine','mob','npc','magicbane','zone','shrine','warehouse') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `parent` bigint unsigned DEFAULT NULL, PRIMARY KEY (`UID`), KEY `parent` (`parent`), KEY `type` (`type`), CONSTRAINT `ref_parent` FOREIGN KEY (`parent`) REFERENCES `object` (`UID`) ON DELETE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=61200 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `orphaned_Mines` -- DROP TABLE IF EXISTS `orphaned_Mines`; /*!50001 DROP VIEW IF EXISTS `orphaned_Mines`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `orphaned_Mines` AS SELECT 1 AS `UID`, 1 AS `mine_buildingUID`, 1 AS `mine_type`, 1 AS `mine_resource`, 1 AS `ownerUUID`, 1 AS `CharacterName`*/; SET character_set_client = @saved_cs_client; -- -- Temporary view structure for view `runes_perCharacter` -- DROP TABLE IF EXISTS `runes_perCharacter`; /*!50001 DROP VIEW IF EXISTS `runes_perCharacter`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `runes_perCharacter` AS SELECT 1 AS `acct_uname`, 1 AS `discordAccount`, 1 AS `CharacterUID`, 1 AS `CharacterName`, 1 AS `AppliedRunes`, 1 AS `BaseClass`, 1 AS `PromotionClass`, 1 AS `GuildName`, 1 AS `char_experience`, 1 AS `AccountStatus`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `static_building_blueprint` -- DROP TABLE IF EXISTS `static_building_blueprint`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_building_blueprint` ( `Rank0UUID` bigint unsigned NOT NULL, `MeshName` varchar(100) NOT NULL, `BuildingGroup` enum('TOL','BARRACK','CHURCH','FORGE','SPIRE','GENERICNOUPGRADE','WALLSTRAIGHT','WALLSTAIRS','WALLCORNER','SMALLGATE','ARTYTOWER','SIEGETENT','BANESTONE','MINE','WAREHOUSE','SHRINE','RUNEGATE','AMAZONHALL','CATHEDRAL','GREATHALL','KEEP','THIEFHALL','TEMPLEHALL','WIZARDHALL','ELVENHALL','ELVENSANCTUM','IREKEIHALL','FORESTHALL','MAGICSHOP','BULWARK','SHACK','INN','TAILOR','VILLA','ESTATE','FORTRESS','WALLSTRAIGHTTOWER','CITADEL') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'GENERICNOUPGRADE', `Icon` int NOT NULL DEFAULT '6', `MaxRank` int NOT NULL DEFAULT '1', `MaxSlots` int NOT NULL DEFAULT '0', `Rank1UUID` bigint NOT NULL DEFAULT '0', `Rank3UUID` bigint NOT NULL DEFAULT '0', `Rank7UUID` bigint NOT NULL DEFAULT '0', `DestroyedUUID` bigint NOT NULL DEFAULT '0', PRIMARY KEY (`Rank0UUID`), KEY `fk_contractinventory_itembase` (`MeshName`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_building_colliders` -- DROP TABLE IF EXISTS `static_building_colliders`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_building_colliders` ( `ID` int NOT NULL AUTO_INCREMENT, `MeshID` int NOT NULL, `startX` int NOT NULL, `startY` int NOT NULL DEFAULT '0', `endX` int NOT NULL, `endY` int NOT NULL, `doorID` int NOT NULL DEFAULT '0', `link` smallint NOT NULL, `height` int NOT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=324 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_building_doors` -- DROP TABLE IF EXISTS `static_building_doors`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_building_doors` ( `doorMeshUUID` int NOT NULL DEFAULT '0', `doorNumber` int NOT NULL DEFAULT '0' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_building_location` -- DROP TABLE IF EXISTS `static_building_location`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_building_location` ( `ID` int NOT NULL AUTO_INCREMENT, `buildingID` int NOT NULL, `type` tinyint unsigned NOT NULL, `slot` tinyint unsigned NOT NULL DEFAULT '0', `unknown` tinyint unsigned NOT NULL DEFAULT '0', `locX` float NOT NULL DEFAULT '0', `locY` float NOT NULL DEFAULT '0', `locZ` float NOT NULL DEFAULT '0', `w` float NOT NULL DEFAULT '0', `rotX` float NOT NULL DEFAULT '0', `rotY` float NOT NULL DEFAULT '0', `rotZ` float NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `buildingID` (`buildingID`) ) ENGINE=InnoDB AUTO_INCREMENT=5703 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_building_regions` -- DROP TABLE IF EXISTS `static_building_regions`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_building_regions` ( `ID` int NOT NULL AUTO_INCREMENT, `buildingID` int NOT NULL, `level` tinyint NOT NULL, `room` tinyint NOT NULL, `numVertex` tinyint NOT NULL, `vertex1X` float NOT NULL, `vertex1Y` float NOT NULL, `vertex1Z` float NOT NULL, `vertex2X` float NOT NULL, `vertex2Y` float NOT NULL, `vertex2Z` float NOT NULL, `vertex3X` float NOT NULL, `vertex3Y` float NOT NULL, `vertex3Z` float NOT NULL, `vertex4X` float NOT NULL, `vertex4Y` float NOT NULL, `vertex4Z` float NOT NULL, `normalX` float NOT NULL, `normalY` float NOT NULL, `normalZ` float NOT NULL, `unknown_Order1` tinyint NOT NULL, `unknown_Order2` tinyint NOT NULL, `colOrder1` tinyint NOT NULL, `colOrder2` tinyint NOT NULL, `colOrder3` tinyint NOT NULL, `colOrder4` tinyint NOT NULL, `unknown_VectorX` float NOT NULL, `unknown_VectorY` float NOT NULL, `unknown_VectorZ` float NOT NULL, `colOrder2Unknown1` tinyint DEFAULT '0', `colOrder2Unknown2` tinyint DEFAULT '0', PRIMARY KEY (`ID`), KEY `buildingID` (`buildingID`) ) ENGINE=InnoDB AUTO_INCREMENT=45061 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_effect_costmaps` -- DROP TABLE IF EXISTS `static_effect_costmaps`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_effect_costmaps` ( `effectID` varchar(255) NOT NULL, `costmap` varchar(1024) DEFAULT NULL, PRIMARY KEY (`effectID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_heightmaps` -- DROP TABLE IF EXISTS `static_heightmaps`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_heightmaps` ( `heightMapID` int NOT NULL, `maxHeight` float(10,3) NOT NULL, `xRadius` float NOT NULL, `zRadius` float NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_item_templates` -- DROP TABLE IF EXISTS `static_item_templates`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_item_templates` ( `id` int NOT NULL, `template` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_loot_bootySet` -- DROP TABLE IF EXISTS `static_loot_bootySet`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_loot_bootySet` ( `bootySet` int DEFAULT NULL, `bootyType` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `lowGold` int DEFAULT NULL, `highGold` int DEFAULT NULL, `templateID` int DEFAULT NULL, `genTable` int DEFAULT NULL, `dropChance` float DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_loot_gen` -- DROP TABLE IF EXISTS `static_loot_gen`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_loot_gen` ( `genTable` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `minRoll` int NOT NULL, `maxRoll` int NOT NULL, `itemTableID` int NOT NULL, `itemTableName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `pMod` int NOT NULL, `pModTableID` int NOT NULL, `sMod` int NOT NULL, `sModTableID` int NOT NULL, KEY `GroupID` (`genTable`(191)) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_loot_item` -- DROP TABLE IF EXISTS `static_loot_item`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_loot_item` ( `itemTable` int NOT NULL, `tableName` varchar(255) NOT NULL, `itemName` varchar(255) NOT NULL, `minRoll` int NOT NULL, `maxRoll` int NOT NULL, `templateID` int NOT NULL, `minSpawn` int NOT NULL, `maxSpawn` int NOT NULL, KEY `lootTable` (`itemTable`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_loot_mod` -- DROP TABLE IF EXISTS `static_loot_mod`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_loot_mod` ( `modTable` int NOT NULL, `tableName` varchar(255) NOT NULL, `minRoll` float NOT NULL, `maxRoll` float NOT NULL, `action` varchar(255) NOT NULL, `level` int NOT NULL, `value` int NOT NULL, KEY `groupID` (`modTable`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_loot_modtype` -- DROP TABLE IF EXISTS `static_loot_modtype`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_loot_modtype` ( `modType` int NOT NULL, `groupName` varchar(255) NOT NULL, `minRoll` int NOT NULL, `maxRoll` int NOT NULL, `subTableID` int NOT NULL, `subTableName` varchar(255) NOT NULL, KEY `modTable` (`modType`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_mesh_bounds` -- DROP TABLE IF EXISTS `static_mesh_bounds`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_mesh_bounds` ( `meshID` int DEFAULT NULL, `minX` float DEFAULT NULL, `minY` float DEFAULT NULL, `minZ` float DEFAULT NULL, `maxX` float DEFAULT NULL, `maxY` float DEFAULT NULL, `maxZ` float DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_contract` -- DROP TABLE IF EXISTS `static_npc_contract`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_contract` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `contractID` int unsigned NOT NULL, `name` varchar(100) NOT NULL DEFAULT '', `mobbaseID` int unsigned NOT NULL, `classID` int unsigned NOT NULL, `extraRune` int unsigned NOT NULL DEFAULT '0', `dialogID` int unsigned NOT NULL, `menuoptions` varchar(20) NOT NULL DEFAULT '', `iconID` tinyint unsigned NOT NULL DEFAULT '0', `notes` varchar(50) NOT NULL DEFAULT '', `vendorID` int NOT NULL DEFAULT '0', `pTable` varchar(50) NOT NULL DEFAULT '0', `sTable` varchar(50) NOT NULL DEFAULT '0', `itemModTable` varchar(50) NOT NULL DEFAULT '', `subTypeID` int DEFAULT '0', `equipsetID` int NOT NULL DEFAULT '0', `inventorySet` int NOT NULL DEFAULT '0', `slotInBuildings` varchar(1024) NOT NULL DEFAULT '', PRIMARY KEY (`ID`), KEY `fk_contracts_mobbase` (`mobbaseID`) ) ENGINE=InnoDB AUTO_INCREMENT=1502027 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_contract_selltype` -- DROP TABLE IF EXISTS `static_npc_contract_selltype`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_contract_selltype` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `contractID` int unsigned NOT NULL, `type` tinyint unsigned NOT NULL, `value` int NOT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1750 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_inventoryset` -- DROP TABLE IF EXISTS `static_npc_inventoryset`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_inventoryset` ( `inventorySet` int DEFAULT NULL, `templateID` int unsigned NOT NULL, `prefix` varchar(30) DEFAULT NULL, `pRank` tinyint NOT NULL DEFAULT '0', `suffix` varchar(30) DEFAULT NULL, `sRank` tinyint NOT NULL DEFAULT '0', KEY `fk_contractinventory_itembase` (`templateID`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_menuoption` -- DROP TABLE IF EXISTS `static_npc_menuoption`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_menuoption` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `menuID` int NOT NULL, `message` varchar(100) NOT NULL, `optionID` int NOT NULL, `prereq` smallint NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=795 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mob_resists` -- DROP TABLE IF EXISTS `static_npc_mob_resists`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mob_resists` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', `slash` smallint NOT NULL DEFAULT '0', `crush` smallint NOT NULL DEFAULT '0', `pierce` smallint NOT NULL DEFAULT '0', `siege` smallint NOT NULL DEFAULT '0', `magic` smallint NOT NULL DEFAULT '0', `bleed` smallint NOT NULL DEFAULT '0', `poison` smallint NOT NULL DEFAULT '0', `mental` smallint NOT NULL DEFAULT '0', `holy` smallint NOT NULL DEFAULT '0', `unholy` smallint NOT NULL DEFAULT '0', `lightning` smallint NOT NULL DEFAULT '0', `fire` smallint NOT NULL DEFAULT '0', `cold` smallint NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mobbase` -- DROP TABLE IF EXISTS `static_npc_mobbase`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mobbase` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `loadID` int unsigned NOT NULL, `lootTableID` int unsigned NOT NULL, `name` varchar(60) DEFAULT NULL, `level` smallint unsigned NOT NULL DEFAULT '1', `health` float NOT NULL DEFAULT '100', `atr` int NOT NULL DEFAULT '100', `defense` int NOT NULL DEFAULT '100', `minDmg` float NOT NULL DEFAULT '10', `maxDmg` float NOT NULL DEFAULT '20', `goldMod` smallint unsigned NOT NULL DEFAULT '100', `seeInvis` tinyint unsigned NOT NULL DEFAULT '0', `flags` bigint unsigned NOT NULL DEFAULT '15', `noaggro` bigint unsigned NOT NULL DEFAULT '0', `spawnTime` int unsigned NOT NULL DEFAULT '0', `scale` float NOT NULL DEFAULT '1', `attackRange` float unsigned NOT NULL DEFAULT '6.5', `raceType` enum('Aelfborn','All','Animal','Aracoix','Celestial','Centaur','Construct','CSR','Dragon','Dwarf','Elf','Giant','Goblin','Grave','HalfGiant','Human','Infernal','Insect','Irekei','Minotaur','Monster','NecroPet','NPC','Pet','Plant','Rat','Reptile','Shade','Siege','SiegeEngineer','Summoned','Troll','Undead','Nephilim','Vampire') DEFAULT NULL, `fsm` varchar(255) DEFAULT '', `bootySet` int DEFAULT '0', `notEnemy` bigint DEFAULT NULL, `enemy` bigint DEFAULT '0', PRIMARY KEY (`ID`), KEY `loadID` (`loadID`) ) ENGINE=InnoDB AUTO_INCREMENT=17267 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mobbase_effects` -- DROP TABLE IF EXISTS `static_npc_mobbase_effects`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mobbase_effects` ( `mobbaseUUID` int NOT NULL DEFAULT '0', `token` int NOT NULL DEFAULT '0', `rank` int NOT NULL DEFAULT '0', `reqLvl` tinyint NOT NULL DEFAULT '0', PRIMARY KEY (`mobbaseUUID`,`token`,`rank`,`reqLvl`), KEY `mobbaseUUID` (`mobbaseUUID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mobbase_powers` -- DROP TABLE IF EXISTS `static_npc_mobbase_powers`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mobbase_powers` ( `id` int NOT NULL AUTO_INCREMENT, `mobbaseUUID` int NOT NULL, `token` int DEFAULT NULL, `rank` int DEFAULT NULL, PRIMARY KEY (`id`,`mobbaseUUID`) ) ENGINE=InnoDB AUTO_INCREMENT=5374 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='These are powers that each mobbase can cast. mmm COMMENTS!'; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mobbase_race` -- DROP TABLE IF EXISTS `static_npc_mobbase_race`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mobbase_race` ( `mobbaseID` int NOT NULL, `raceToken` int NOT NULL, `walkStandard` float(10,5) NOT NULL, `walkCombat` float(10,5) NOT NULL, `runStandard` float(10,5) NOT NULL, `runCombat` float(10,5) NOT NULL, `fly` float(10,5) NOT NULL, `swim` float(10,5) NOT NULL, PRIMARY KEY (`mobbaseID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_mobbase_stats` -- DROP TABLE IF EXISTS `static_npc_mobbase_stats`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_mobbase_stats` ( `mobbaseUUID` int NOT NULL, `Strength` int NOT NULL, `Spirit` int NOT NULL, `Constitution` int NOT NULL, `Dexterity` int NOT NULL, `Intelligence` int NOT NULL, `baseSkills` bigint NOT NULL DEFAULT '0', `skillAmount` int NOT NULL DEFAULT '0', `defense` int DEFAULT NULL, `atr` int DEFAULT NULL, `minDmg` int DEFAULT NULL, `maxDmg` int DEFAULT NULL, PRIMARY KEY (`mobbaseUUID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_runeSet` -- DROP TABLE IF EXISTS `static_npc_runeSet`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_runeSet` ( `runeSet` int DEFAULT NULL, `runeBase` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_npc_vendordialog` -- DROP TABLE IF EXISTS `static_npc_vendordialog`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_npc_vendordialog` ( `ID` int NOT NULL AUTO_INCREMENT, `dialogType` varchar(60) NOT NULL DEFAULT '', `intro` varchar(60) NOT NULL DEFAULT '', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=200296 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_piratenames` -- DROP TABLE IF EXISTS `static_piratenames`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_piratenames` ( `mobbase` int DEFAULT NULL, `first_name` varchar(255) CHARACTER SET latin1 COLLATE latin1_swedish_ci DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_action` -- DROP TABLE IF EXISTS `static_power_action`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_action` ( `ID` int NOT NULL AUTO_INCREMENT, `powerID` varchar(255) NOT NULL DEFAULT '', `effectID` varchar(255) NOT NULL DEFAULT '', `minTrains` int unsigned NOT NULL DEFAULT '0', `maxTrains` int unsigned NOT NULL DEFAULT '40', `duration` float unsigned NOT NULL DEFAULT '0', `ramp` float unsigned NOT NULL DEFAULT '0', `useAddFormula` tinyint unsigned NOT NULL DEFAULT '1', `stackType` varchar(255) NOT NULL DEFAULT '', `stackOrder` int unsigned NOT NULL DEFAULT '0', `stackPriority` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=2288 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_animation_override` -- DROP TABLE IF EXISTS `static_power_animation_override`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_animation_override` ( `IDString` varchar(255) DEFAULT NULL, `animation` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_effect_allowed_item` -- DROP TABLE IF EXISTS `static_power_effect_allowed_item`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_effect_allowed_item` ( `ID` int NOT NULL AUTO_INCREMENT, `IDString` varchar(20) NOT NULL, `flags` bigint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `IDString` (`IDString`) ) ENGINE=InnoDB AUTO_INCREMENT=647 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_effectbase` -- DROP TABLE IF EXISTS `static_power_effectbase`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_effectbase` ( `ID` int NOT NULL AUTO_INCREMENT, `IDString` varchar(255) NOT NULL DEFAULT '', `name` varchar(255) NOT NULL DEFAULT '', `Token` int NOT NULL DEFAULT '0', `flags` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=3663 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_effectmod` -- DROP TABLE IF EXISTS `static_power_effectmod`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_effectmod` ( `ID` int NOT NULL AUTO_INCREMENT, `IDString` varchar(24) NOT NULL DEFAULT '', `modType` varchar(30) NOT NULL DEFAULT '', `minMod` float NOT NULL DEFAULT '0', `maxMod` float NOT NULL DEFAULT '0', `percentMod` float NOT NULL DEFAULT '0', `ramp` float NOT NULL DEFAULT '0', `useRampAdd` tinyint(1) NOT NULL DEFAULT '1', `type` varchar(30) NOT NULL DEFAULT '', `string1` varchar(50) NOT NULL DEFAULT '', `string2` varchar(50) NOT NULL DEFAULT '', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=7115 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_effectprereqs` -- DROP TABLE IF EXISTS `static_power_effectprereqs`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_effectprereqs` ( `ID` int unsigned NOT NULL DEFAULT '0', `IDString` varchar(20) NOT NULL DEFAULT '', `Type` tinyint unsigned NOT NULL DEFAULT '1', `effect` varchar(20) NOT NULL DEFAULT '', `message` varchar(90) NOT NULL DEFAULT '', `boolean` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_failcondition` -- DROP TABLE IF EXISTS `static_power_failcondition`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_failcondition` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `IDString` varchar(20) NOT NULL DEFAULT '', `powerOrEffect` varchar(20) NOT NULL DEFAULT '', `type` varchar(30) NOT NULL DEFAULT '', `amount` float unsigned NOT NULL DEFAULT '0', `ramp` float unsigned NOT NULL DEFAULT '0', `useAddFormula` tinyint unsigned NOT NULL DEFAULT '1', `damageType1` varchar(20) NOT NULL DEFAULT '', `damageType2` varchar(20) NOT NULL DEFAULT '', `damageType3` varchar(20) NOT NULL DEFAULT '', PRIMARY KEY (`ID`), KEY `failconditions_powerOrEffect` (`powerOrEffect`) ) ENGINE=InnoDB AUTO_INCREMENT=1627 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_poweraction` -- DROP TABLE IF EXISTS `static_power_poweraction`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_poweraction` ( `ID` int NOT NULL AUTO_INCREMENT, `IDString` varchar(255) NOT NULL DEFAULT '', `type` varchar(255) NOT NULL DEFAULT '', `effectID` varchar(255) NOT NULL DEFAULT '', `effectID2` varchar(255) NOT NULL DEFAULT '', `deferredPowerID` varchar(255) NOT NULL DEFAULT '', `levelCap` float unsigned NOT NULL DEFAULT '0', `levelCapRamp` float unsigned zerofill NOT NULL DEFAULT '000000000000', `damageType` varchar(255) NOT NULL DEFAULT '', `numIterations` int NOT NULL DEFAULT '0', `effectSourceToRemove` varchar(255) NOT NULL DEFAULT '', `trackFilter` varchar(255) NOT NULL DEFAULT '', `maxTrack` int NOT NULL DEFAULT '0', `mobID` int NOT NULL DEFAULT '0', `mobLevel` int NOT NULL DEFAULT '0', `simpleDamage` int NOT NULL DEFAULT '0', `transferFromType` varchar(255) NOT NULL DEFAULT '', `transferToType` varchar(255) NOT NULL DEFAULT '', `transferAmount` float NOT NULL DEFAULT '0', `transferRamp` float unsigned NOT NULL DEFAULT '0', `transferEfficiency` float unsigned NOT NULL DEFAULT '0', `transferEfficiencyRamp` float unsigned NOT NULL DEFAULT '0', `flags` int NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=3051 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_powerbase` -- DROP TABLE IF EXISTS `static_power_powerbase`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_powerbase` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `token` int NOT NULL DEFAULT '0', `IDString` varchar(100) NOT NULL DEFAULT '', `name` varchar(100) NOT NULL DEFAULT '', `skillOrSpell` varchar(20) NOT NULL DEFAULT '', `skillID` int NOT NULL DEFAULT '0', `skillName` varchar(100) NOT NULL DEFAULT '', `targetType` varchar(100) NOT NULL DEFAULT '', `range` float NOT NULL DEFAULT '0', `radiusType` varchar(100) NOT NULL DEFAULT '', `radius` float NOT NULL DEFAULT '0', `groupReq` varchar(100) NOT NULL DEFAULT '', `costType` varchar(100) NOT NULL DEFAULT '', `cost` float NOT NULL DEFAULT '0', `unknown01` int NOT NULL DEFAULT '0', `unknown02` float NOT NULL DEFAULT '0', `castTime` float NOT NULL DEFAULT '0', `cooldown` float NOT NULL DEFAULT '0', `recycleTime` float NOT NULL DEFAULT '0', `combat` varchar(100) NOT NULL DEFAULT '', `unknown04` int NOT NULL DEFAULT '0', `unknown05` int NOT NULL DEFAULT '0', `unknown06` varchar(100) NOT NULL DEFAULT '', `maxTrains` int NOT NULL DEFAULT '0', `hateValue` float NOT NULL DEFAULT '0', `hateRamp` float NOT NULL DEFAULT '0', `grantOverideVar` varchar(100) NOT NULL DEFAULT '', `category` varchar(100) NOT NULL DEFAULT '', `description` varchar(255) NOT NULL DEFAULT '', `costRamp` float NOT NULL DEFAULT '0', `recycleRamp` float NOT NULL DEFAULT '0', `initRamp` float NOT NULL DEFAULT '0', `monsterTypePrereqs` varchar(100) NOT NULL DEFAULT '', `chantDuration` float NOT NULL DEFAULT '0', `chantIterations` int NOT NULL DEFAULT '0', `maxNumMobTargets` int NOT NULL DEFAULT '0', `maxNumPlayerTargets` int NOT NULL DEFAULT '0', `monsterTypeRestrict1` varchar(30) NOT NULL DEFAULT '', `monsterTypeRestrict2` varchar(30) NOT NULL DEFAULT '', `monsterTypeRestrict3` varchar(30) NOT NULL DEFAULT '', `flags` int NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `token` (`token`) ) ENGINE=InnoDB AUTO_INCREMENT=1466 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_powercastprereq` -- DROP TABLE IF EXISTS `static_power_powercastprereq`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_powercastprereq` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `IDString` varchar(255) DEFAULT NULL, `Type` tinyint unsigned NOT NULL DEFAULT '1', `messageone` varchar(255) DEFAULT NULL, `messagetwo` varchar(255) DEFAULT NULL, `required` tinyint(1) NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=721 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_powergrant` -- DROP TABLE IF EXISTS `static_power_powergrant`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_powergrant` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `runeID` int unsigned NOT NULL DEFAULT '0', `powerToken` int NOT NULL DEFAULT '0', `grantAmount` smallint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `powerreq_runeID` (`runeID`) ) ENGINE=InnoDB AUTO_INCREMENT=1784 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_powerrequirement` -- DROP TABLE IF EXISTS `static_power_powerrequirement`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_powerrequirement` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `powerToken` int NOT NULL DEFAULT '0', `runeID` int unsigned NOT NULL DEFAULT '0', `type` tinyint unsigned NOT NULL DEFAULT '0', `requiredToken` int NOT NULL DEFAULT '0', `requiredAmount` tinyint unsigned NOT NULL DEFAULT '0', `level` tinyint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `powerreq_runeID` (`runeID`) ) ENGINE=InnoDB AUTO_INCREMENT=1615 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_power_sourcetype` -- DROP TABLE IF EXISTS `static_power_sourcetype`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_power_sourcetype` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `IDString` varchar(255) NOT NULL DEFAULT '', `source` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1760 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_baseclass` -- DROP TABLE IF EXISTS `static_rune_baseclass`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_baseclass` ( `ID` int unsigned NOT NULL DEFAULT '0', `name` varchar(45) NOT NULL DEFAULT '', `description` varchar(200) NOT NULL DEFAULT '', `strMod` tinyint NOT NULL DEFAULT '0', `dexMod` tinyint NOT NULL DEFAULT '0', `conMod` tinyint NOT NULL DEFAULT '0', `intMod` tinyint NOT NULL DEFAULT '0', `spiMod` tinyint NOT NULL DEFAULT '0', `token` int NOT NULL DEFAULT '0', `healthMod` decimal(6,2) NOT NULL DEFAULT '0.00', `manaMod` decimal(6,2) NOT NULL DEFAULT '0.00', `staminaMod` decimal(6,2) NOT NULL DEFAULT '0.00', PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_baseclassrune` -- DROP TABLE IF EXISTS `static_rune_baseclassrune`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_baseclassrune` ( `RuneBaseID` int unsigned NOT NULL DEFAULT '0', `BaseClassesID` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`BaseClassesID`,`RuneBaseID`), KEY `fk_baseclassrunes_baseclasses` (`BaseClassesID`), KEY `fk_baseclassrunes_runebase` (`RuneBaseID`), CONSTRAINT `fk_baseclassrunes_baseclasses` FOREIGN KEY (`BaseClassesID`) REFERENCES `static_rune_baseclass` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_baseclassrunes_runebase` FOREIGN KEY (`RuneBaseID`) REFERENCES `static_rune_runebase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_baseeffect` -- DROP TABLE IF EXISTS `static_rune_baseeffect`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_baseeffect` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `runeID` int unsigned NOT NULL, `type` tinyint NOT NULL DEFAULT '0', `name` varchar(60) NOT NULL, `amount` smallint NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_runebaseeffects_runebase` (`runeID`) ) ENGINE=InnoDB AUTO_INCREMENT=187 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_maxskills` -- DROP TABLE IF EXISTS `static_rune_maxskills`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_maxskills` ( `runeID` int DEFAULT NULL, `skillToken` int DEFAULT NULL, `skillLevel` int DEFAULT NULL, `maxSkillPercent` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_powers` -- DROP TABLE IF EXISTS `static_rune_powers`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_powers` ( `rune_id` int DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `token` int DEFAULT NULL, `power_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `rank` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_promotion` -- DROP TABLE IF EXISTS `static_rune_promotion`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_promotion` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `description` varchar(50) DEFAULT NULL, `token` int NOT NULL DEFAULT '0', `healthMod` float unsigned NOT NULL DEFAULT '0', `manaMod` float unsigned NOT NULL DEFAULT '0', `staminaMod` float unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=2912 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_promotionrunereq` -- DROP TABLE IF EXISTS `static_rune_promotionrunereq`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_promotionrunereq` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `promoID` int unsigned NOT NULL DEFAULT '0', `runereqID` int NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=164 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_race` -- DROP TABLE IF EXISTS `static_rune_race`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_race` ( `ID` int unsigned NOT NULL DEFAULT '0', `name` varchar(45) NOT NULL DEFAULT '', `description` varchar(200) NOT NULL DEFAULT '', `strMin` smallint unsigned NOT NULL DEFAULT '0', `strStart` smallint unsigned NOT NULL DEFAULT '0', `strMax` smallint unsigned NOT NULL DEFAULT '0', `dexMin` smallint unsigned NOT NULL DEFAULT '0', `dexStart` smallint unsigned NOT NULL DEFAULT '0', `dexMax` smallint unsigned NOT NULL DEFAULT '0', `conMin` smallint unsigned NOT NULL DEFAULT '0', `conStart` smallint unsigned NOT NULL DEFAULT '0', `conMax` smallint unsigned NOT NULL DEFAULT '0', `intMin` smallint unsigned NOT NULL DEFAULT '0', `intStart` smallint unsigned NOT NULL DEFAULT '0', `intMax` smallint unsigned NOT NULL DEFAULT '0', `spiMin` smallint unsigned NOT NULL DEFAULT '0', `spiStart` smallint unsigned NOT NULL DEFAULT '0', `spiMax` smallint unsigned NOT NULL DEFAULT '0', `startingPoints` tinyint unsigned NOT NULL DEFAULT '0', `token` int NOT NULL DEFAULT '0', `healthBonus` smallint NOT NULL DEFAULT '0', `manaBonus` smallint NOT NULL DEFAULT '0', `staminaBonus` smallint NOT NULL DEFAULT '0', `minHeight` float unsigned NOT NULL DEFAULT '6', `strHeightMod` float unsigned NOT NULL DEFAULT '0.006', PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racebaseclass` -- DROP TABLE IF EXISTS `static_rune_racebaseclass`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racebaseclass` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL DEFAULT '0', `BaseClassID` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_racebaseclasses_races` (`RaceID`), KEY `fk_racebaseclasses_baseclasses` (`BaseClassID`), CONSTRAINT `fk_racebaseclasses_baseclasses` FOREIGN KEY (`BaseClassID`) REFERENCES `static_rune_baseclass` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_racebaseclasses_races` FOREIGN KEY (`RaceID`) REFERENCES `static_rune_race` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=70 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racebeardcolor` -- DROP TABLE IF EXISTS `static_rune_racebeardcolor`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racebeardcolor` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL, `color` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_racebeardcolor_races` (`RaceID`) ) ENGINE=InnoDB AUTO_INCREMENT=117 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racebeardstyle` -- DROP TABLE IF EXISTS `static_rune_racebeardstyle`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racebeardstyle` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL, `beardStyle` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_racebeardstyles` (`RaceID`) ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racehaircolor` -- DROP TABLE IF EXISTS `static_rune_racehaircolor`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racehaircolor` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL, `color` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_racehaircolor_races` (`RaceID`) ) ENGINE=InnoDB AUTO_INCREMENT=121 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racehairstyle` -- DROP TABLE IF EXISTS `static_rune_racehairstyle`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racehairstyle` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL, `hairStyle` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_racehairstyles_races` (`RaceID`) ) ENGINE=InnoDB AUTO_INCREMENT=148 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_racerune` -- DROP TABLE IF EXISTS `static_rune_racerune`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_racerune` ( `RuneBaseID` int unsigned NOT NULL DEFAULT '0', `RaceID` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`RuneBaseID`,`RaceID`), KEY `fk_racerunes_runebase` (`RuneBaseID`), KEY `fk_racerunes_races` (`RaceID`), CONSTRAINT `fk_racerunes_races` FOREIGN KEY (`RaceID`) REFERENCES `static_rune_race` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_racerunes_runebase` FOREIGN KEY (`RuneBaseID`) REFERENCES `static_rune_runebase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_raceskincolor` -- DROP TABLE IF EXISTS `static_rune_raceskincolor`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_raceskincolor` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RaceID` int unsigned NOT NULL, `color` int unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_raceskincolor_races` (`RaceID`) ) ENGINE=InnoDB AUTO_INCREMENT=85 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_runebase` -- DROP TABLE IF EXISTS `static_rune_runebase`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_runebase` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', `description` varchar(200) NOT NULL DEFAULT '', `type` int unsigned NOT NULL DEFAULT '0', `SubType` tinyint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=253003 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_runebaseattribute` -- DROP TABLE IF EXISTS `static_rune_runebaseattribute`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_runebaseattribute` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `RuneBaseID` int unsigned NOT NULL DEFAULT '0', `attributeID` smallint unsigned NOT NULL DEFAULT '0', `modValue` smallint NOT NULL DEFAULT '0', PRIMARY KEY (`ID`), KEY `fk_runebaseattributes_runebase` (`RuneBaseID`), CONSTRAINT `fk_runebaseattributes_runebase` FOREIGN KEY (`RuneBaseID`) REFERENCES `static_rune_runebase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=366 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_runereq` -- DROP TABLE IF EXISTS `static_rune_runereq`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_runereq` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `runeID` int unsigned NOT NULL, `type` tinyint unsigned NOT NULL DEFAULT '0', `requiredRuneID` int unsigned NOT NULL, `isAllowed` tinyint unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1369 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_skill_adjusts` -- DROP TABLE IF EXISTS `static_rune_skill_adjusts`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_skill_adjusts` ( `rune_id` int DEFAULT NULL, `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `token` int DEFAULT NULL, `skill_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `rank` int DEFAULT NULL, `level` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_rune_validkit` -- DROP TABLE IF EXISTS `static_rune_validkit`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_rune_validkit` ( `ID` int NOT NULL AUTO_INCREMENT, `RaceBaseClassesID` int unsigned NOT NULL, `kitNumber` tinyint unsigned NOT NULL DEFAULT '0', `legs` int unsigned NOT NULL DEFAULT '0', `chest` int unsigned NOT NULL DEFAULT '0', `feet` int unsigned NOT NULL DEFAULT '0', `offhand` int unsigned NOT NULL DEFAULT '0', `weapon` int unsigned NOT NULL DEFAULT '0', `reserve` varchar(50) DEFAULT NULL, PRIMARY KEY (`ID`), KEY `fk_validkits_racebaseclasses` (`RaceBaseClassesID`) ) ENGINE=InnoDB AUTO_INCREMENT=452 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_runegate_portals` -- DROP TABLE IF EXISTS `static_runegate_portals`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_runegate_portals` ( `gateName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `sourceBuilding` int DEFAULT NULL, `portalType` enum('FORBID','MERCHANT','OBLIV','CHAOS','SPIRIT','WATER','FIRE','AIR','EARTH') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `targetBuilding` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_skill_skillreq` -- DROP TABLE IF EXISTS `static_skill_skillreq`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_skill_skillreq` ( `skillID` int unsigned NOT NULL DEFAULT '0', `runeID` int unsigned NOT NULL DEFAULT '0', `level` tinyint unsigned NOT NULL DEFAULT '0', `skillreq1` int unsigned DEFAULT NULL, `skillreq2` int unsigned DEFAULT NULL, `skillreq3` int unsigned DEFAULT NULL, `id` int unsigned NOT NULL AUTO_INCREMENT, PRIMARY KEY (`runeID`,`skillID`), UNIQUE KEY `id` (`id`), KEY `fk_skillreq_skillsbase` (`skillID`), KEY `fk_skillreq_runebase` (`runeID`), KEY `fk_skillreq_skillsbase_req1` (`skillreq1`), KEY `fk_skillreq_skillsbase_req2` (`skillreq2`), KEY `fk_skillreq_skillsbase_req3` (`skillreq3`), CONSTRAINT `fk_skillreq_runebase` FOREIGN KEY (`runeID`) REFERENCES `static_rune_runebase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_skillreq_skillsbase` FOREIGN KEY (`skillID`) REFERENCES `static_skill_skillsbase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_skillreq_skillsbase_req1` FOREIGN KEY (`skillreq1`) REFERENCES `static_skill_skillsbase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_skillreq_skillsbase_req2` FOREIGN KEY (`skillreq2`) REFERENCES `static_skill_skillsbase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_skillreq_skillsbase_req3` FOREIGN KEY (`skillreq3`) REFERENCES `static_skill_skillsbase` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE ) ENGINE=InnoDB AUTO_INCREMENT=294 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_skill_skillsbase` -- DROP TABLE IF EXISTS `static_skill_skillsbase`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_skill_skillsbase` ( `ID` int unsigned NOT NULL AUTO_INCREMENT, `name` varchar(60) NOT NULL DEFAULT '', `description` varchar(90) NOT NULL DEFAULT '', `token` int NOT NULL DEFAULT '0', `strMod` int NOT NULL DEFAULT '0', `dexMod` int NOT NULL DEFAULT '0', `conMod` int NOT NULL DEFAULT '0', `intMod` int NOT NULL DEFAULT '0', `spiMod` int NOT NULL DEFAULT '0', PRIMARY KEY (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=64 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_skill_skillsgranted` -- DROP TABLE IF EXISTS `static_skill_skillsgranted`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_skill_skillsgranted` ( `runeID` int DEFAULT NULL, `token` int DEFAULT NULL, `amount` int DEFAULT NULL, `unknown1` int DEFAULT NULL, `unknown2` int DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_vendor_items` -- DROP TABLE IF EXISTS `static_vendor_items`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_vendor_items` ( `templateID` int unsigned NOT NULL DEFAULT '0', `name` varchar(60) DEFAULT NULL, `vendorType` int NOT NULL DEFAULT '0', `modTable` int NOT NULL DEFAULT '0' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `static_zone_templates` -- DROP TABLE IF EXISTS `static_zone_templates`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `static_zone_templates` ( `template` int DEFAULT NULL, `num_of_columns` varchar(255) DEFAULT NULL, `zone_type` varchar(255) DEFAULT NULL, `zone_name` varchar(255) DEFAULT NULL, `zone_custom_texture` varchar(255) DEFAULT NULL, `zone_width_threshold` varchar(255) DEFAULT NULL, `zone_material_threshold` varchar(255) DEFAULT NULL, `zone_max_width_index` varchar(255) DEFAULT NULL, `zone_max_material_index` varchar(255) DEFAULT NULL, `zone_custom_texture_wrap` varchar(255) DEFAULT NULL, `zone_peace_zone` varchar(255) DEFAULT NULL, `zone_guild_zone` varchar(255) DEFAULT NULL, `zone_minor_radius` float(255,0) DEFAULT NULL, `zone_major_radius` float(255,0) DEFAULT NULL, `zone_min_blend` float(255,0) DEFAULT NULL, `zone_max_blend` float(255,0) DEFAULT NULL, `zone_influence` varchar(255) DEFAULT NULL, `zone_unknown1` varchar(255) DEFAULT NULL, `zone_y_offset` varchar(255) DEFAULT NULL, `zone_global_height` varchar(255) DEFAULT NULL, `zone_transition_height` varchar(255) DEFAULT NULL, `zone_upper_transition_height` varchar(255) DEFAULT NULL, `zone_tile_cord_type` varchar(255) DEFAULT NULL, `zone_tile_pattern_prob` varchar(255) DEFAULT NULL, `zone_pattern_type` varchar(255) DEFAULT NULL, `zone_sea_level_index` varchar(255) DEFAULT NULL, `zone_sea_level` float(255,0) DEFAULT NULL, `zone_sea_level_type` varchar(255) DEFAULT NULL, `zone_grad` varchar(255) DEFAULT NULL, `zone_tile_set` varchar(255) DEFAULT NULL, `zone_song` varchar(255) DEFAULT NULL, `zone_has_water` varchar(255) DEFAULT NULL, `zone_has_terrain_gen` varchar(255) DEFAULT NULL, `terrain_type` varchar(255) DEFAULT NULL, `terrain_height` varchar(255) DEFAULT NULL, `terrain_max_x` varchar(255) DEFAULT NULL, `terrain_max_z` varchar(255) DEFAULT NULL, `terrain_x_size` varchar(255) DEFAULT NULL, `terrain_z_size` varchar(255) DEFAULT NULL, `terrain_min_y` varchar(255) DEFAULT NULL, `terrain_max_y` float(255,0) DEFAULT NULL, `terrain_image` int DEFAULT NULL, `zone_base_texture` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Temporary view structure for view `subguild_Leaders` -- DROP TABLE IF EXISTS `subguild_Leaders`; /*!50001 DROP VIEW IF EXISTS `subguild_Leaders`*/; SET @saved_cs_client = @@character_set_client; /*!50503 SET character_set_client = utf8mb4 */; /*!50001 CREATE VIEW `subguild_Leaders` AS SELECT 1 AS `GuildUID`, 1 AS `GuildName`, 1 AS `GuildLeader UID`, 1 AS `CharacterName`, 1 AS `CharacterLevel`, 1 AS `AccountName`*/; SET character_set_client = @saved_cs_client; -- -- Table structure for table `warehouse_banehistory` -- DROP TABLE IF EXISTS `warehouse_banehistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_banehistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `city_id` varchar(255) DEFAULT NULL, `city_name` varchar(255) DEFAULT NULL, `char_id` varchar(255) DEFAULT NULL, `offGuild_id` varchar(255) DEFAULT NULL, `offNat_id` varchar(255) DEFAULT NULL, `defGuild_id` varchar(255) DEFAULT NULL, `defNat_id` varchar(255) DEFAULT NULL, `dropDatetime` varchar(255) DEFAULT NULL, `liveDatetime` varchar(255) DEFAULT NULL, `endDatetime` varchar(255) DEFAULT NULL, `resolution` enum('CAPTURE','DESTROY','PENDING','DEFEND') DEFAULT NULL, `dirty` tinyint(1) unsigned zerofill DEFAULT '0', PRIMARY KEY (`event_number`), KEY `baneQuery` (`city_id`(191),`resolution`), KEY `dirtyQuery` (`dirty`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_characterhistory` -- DROP TABLE IF EXISTS `warehouse_characterhistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_characterhistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `char_id` varchar(255) NOT NULL, `char_fname` varchar(255) DEFAULT NULL, `char_lname` varchar(255) DEFAULT NULL, `baseClass` int NOT NULL DEFAULT '0', `promoteClass` int unsigned DEFAULT '0', `race` int NOT NULL DEFAULT '0', `kills` bigint NOT NULL DEFAULT '0', `deaths` bigint NOT NULL DEFAULT '0', `startingGuild` varchar(255) DEFAULT '0', `datetime` datetime DEFAULT NULL, `dirty` tinyint(1) DEFAULT '0', PRIMARY KEY (`event_number`), KEY `characterIndex` (`char_id`(191)) USING BTREE, KEY `dirtyQuery` (`dirty`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_cityhistory` -- DROP TABLE IF EXISTS `warehouse_cityhistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_cityhistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `city_id` varchar(255) NOT NULL, `city_name` varchar(255) DEFAULT NULL, `city_motto` varchar(255) DEFAULT NULL, `guild_id` varchar(255) DEFAULT NULL, `loc_x` float(255,0) DEFAULT NULL, `loc_y` float(255,0) DEFAULT NULL, `zone_id` varchar(255) DEFAULT NULL, `eventType` enum('CAPTURE','TRANSFER','DESTROY','CREATE') NOT NULL DEFAULT 'CREATE', `dateTime` datetime NOT NULL, PRIMARY KEY (`event_number`), KEY `cityid` (`city_id`(191)) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=47 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_guildhistory` -- DROP TABLE IF EXISTS `warehouse_guildhistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_guildhistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `guild_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `guild_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `guild_motto` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `charter` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `guild_founder` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL, `bgicon` smallint DEFAULT NULL, `bgcoloura` smallint DEFAULT NULL, `bgcolourb` smallint DEFAULT NULL, `fgicon` smallint DEFAULT NULL, `fgcolour` smallint DEFAULT NULL, `eventType` enum('CREATE','DISBAND') CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'CREATE', `datetime` datetime NOT NULL, PRIMARY KEY (`event_number`), KEY `guildid` (`guild_id`(191)) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_index` -- DROP TABLE IF EXISTS `warehouse_index`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_index` ( `charIndex` bigint NOT NULL, `cityIndex` bigint NOT NULL, `guildIndex` bigint NOT NULL, `realmIndex` bigint NOT NULL, `baneIndex` bigint NOT NULL, `pvpIndex` bigint NOT NULL, `mineIndex` bigint NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_minehistory` -- DROP TABLE IF EXISTS `warehouse_minehistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_minehistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `zone_id` varchar(255) DEFAULT NULL, `mine_type` varchar(255) DEFAULT NULL, `char_id` varchar(255) DEFAULT NULL, `mine_guildID` varchar(255) DEFAULT NULL, `mine_nationID` varchar(255) DEFAULT NULL, `loc_x` float(6,0) DEFAULT NULL, `loc_y` float(6,0) DEFAULT NULL, `eventType` varchar(255) DEFAULT NULL, `datetime` datetime DEFAULT NULL, PRIMARY KEY (`event_number`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=COMPACT; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_pvphistory` -- DROP TABLE IF EXISTS `warehouse_pvphistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_pvphistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `char_id` varchar(255) NOT NULL, `char_guild_id` varchar(255) DEFAULT NULL, `char_nation_id` varchar(255) DEFAULT NULL, `char_level` smallint DEFAULT NULL, `victim_id` varchar(255) NOT NULL, `victim_guild_id` varchar(255) DEFAULT NULL, `victim_nation_id` varchar(255) DEFAULT NULL, `victim_level` smallint DEFAULT NULL, `zone_id` varchar(255) DEFAULT NULL, `zone_name` varchar(255) DEFAULT NULL, `loc_x` float(255,0) DEFAULT NULL, `loc_y` float(255,0) DEFAULT NULL, `gave_exp` tinyint DEFAULT NULL, `datetime` datetime DEFAULT NULL, PRIMARY KEY (`event_number`), KEY `CharacterIndex` (`char_id`(191),`victim_id`(191),`datetime`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Table structure for table `warehouse_realmhistory` -- DROP TABLE IF EXISTS `warehouse_realmhistory`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!50503 SET character_set_client = utf8mb4 */; CREATE TABLE `warehouse_realmhistory` ( `event_number` bigint unsigned NOT NULL AUTO_INCREMENT, `realm_id` varchar(255) NOT NULL, `realm_name` varchar(255) DEFAULT NULL, `charter` varchar(255) DEFAULT NULL, `city_id` varchar(255) DEFAULT NULL, `guild_id` varchar(255) DEFAULT NULL, `eventType` enum('LOST','CAPTURE') DEFAULT NULL, `datetime` datetime DEFAULT NULL, PRIMARY KEY (`event_number`), KEY `realmcity` (`realm_id`(191),`city_id`(191)) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; /*!40101 SET character_set_client = @saved_cs_client */; -- -- Dumping routines for database 'mbdb_108' -- /*!50003 DROP FUNCTION IF EXISTS `BigToInt` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` FUNCTION `BigToInt`(n BIGINT) RETURNS int RETURN n ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP FUNCTION IF EXISTS `function_isNumeric` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` FUNCTION `function_isNumeric`(`in_num` VARCHAR(50)) RETURNS tinyint BEGIN RETURN in_num REGEXP '^-?[0-9]+$'; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP FUNCTION IF EXISTS `function_stringCount` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` FUNCTION `function_stringCount`(`in_Str` TEXT, `del` VARCHAR(3)) RETURNS int BEGIN IF (CHAR_LENGTH(in_Str) = 0) THEN return 0; END IF; return LENGTH(in_Str) - LENGTH(REPLACE(in_Str, del, '')) + 1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP FUNCTION IF EXISTS `function_strSplit` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` FUNCTION `function_strSplit`(`x` text, `delim` varchar(3), `pos` INT UNSIGNED) RETURNS bigint unsigned return replace(substring(substring_index(x, delim, pos),length(substring_index(x, delim, pos - 1)) + 1), delim, '') ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GET` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GET`(IN `in_uname` VARCHAR(255), IN `in_passworld` VARCHAR(255)) MODIFIES SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_account` WHERE `acct_uname` = in_uname AND `acct_passwd` = MD5(CONCAT(MD5(in_passworld), `acct_salt`)) LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GETBYID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GETBYID`(IN `n` BIGINT UNSIGNED) READS SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM obj_account WHERE obj_account.UID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GETBYNAME` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GETBYNAME`(IN `n` VARCHAR(255)) READS SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM obj_account WHERE obj_account.acct_uname = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GETBYUID`(IN `n` BIGINT UNSIGNED) READS SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM obj_account WHERE obj_account.UID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GETSESSIONKEY` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GETSESSIONKEY`(IN `n` BIGINT UNSIGNED) READS SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT acct_lastKey FROM obj_account WHERE obj_account.UID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_account` SET ',in_name,' = ? WHERE `obj_account`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_account` WHERE `obj_account`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_SETIP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_SETIP`(IN `n` BIGINT UNSIGNED, IN `sip` VARCHAR(16)) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; INSERT INTO dyn_ip_account VALUES (n, INET_ATON(sip), UNIX_TIMESTAMP(NOW())); END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_account` SET ',in_name,' = ? WHERE `obj_account`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_account` WHERE `obj_account`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_SETSESSIONKEY` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_SETSESSIONKEY`(IN `n` BIGINT UNSIGNED, IN `lkey` TINYBLOB) MODIFIES SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; UPDATE obj_account SET obj_account.acct_lastKey = lkey WHERE obj_account.UID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `account_transfers_wipe` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `account_transfers_wipe`() MAIN: BEGIN DECLARE ID INT UNSIGNED; DECLARE done INT DEFAULT 0; DECLARE UIDC BIGINT UNSIGNED; DECLARE UID BIGINT UNSIGNED; DECLARE in_discordAccount VARCHAR(60); DECLARE in_uname VARCHAR(60); DECLARE in_passwd CHAR(60); DECLARE in_regDate DATETIME; DECLARE in_salt CHAR(30); DECLARE in_suspend TINYINT UNSIGNED; DECLARE in_discordAdmin TINYINT; DECLARE in_lastCharUID BIGINT; DECLARE in_lastUpdateRequest DATETIME; DECLARE in_status enum('BANNED','ACTIVE','ADMIN','TRASH'); DECLARE ACCTUID BIGINT(10); DECLARE cur1 CURSOR FOR SELECT UID, discordAccount, acct_uname, acct_passwd, registrationDate, acct_salt, acct_suspend, discordAdmin, acct_lastCharUID, lastUpdateRequest, status FROM obj_account_wipe; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; OPEN cur1; START TRANSACTION; read_loop: LOOP FETCH cur1 INTO ID, in_discordAccount, in_uname, in_passwd, in_regDate, in_salt, in_suspend, in_discordAdmin, in_lastCharUID, in_lastUpdateRequest, in_status; IF done THEN LEAVE read_loop; END IF; IF NOT EXISTS(SELECT NULL FROM `obj_account` WHERE `acct_uname`= in_uname) THEN INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'account', NULL); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_account` (`UID`, `discordAccount`, `acct_uname`, `acct_passwd`, `registrationDate`, `acct_salt`, `acct_suspend`, `discordAdmin`, `acct_lastCharUID`, `lastUpdateRequest`, `status`) VALUES (UID, in_discordAccount, in_uname, in_passwd, in_regDate, in_salt, in_suspend, in_discordAdmin, NULL, in_lastUpdateRequest, in_status); END IF; END LOOP; COMMIT; CLOSE cur1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `baneHistory` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `baneHistory`() BEGIN DECLARE TOTAL INT(10); DECLARE PENDING INT(10); DECLARE DESTROY INT(10); DECLARE CAPTURE INT(10); DECLARE DEFEND INT(10); SET TOTAL = (SELECT COUNT(*) FROM `warehouse_banehistory`); SET PENDING = (SELECT COUNT(*) FROM `warehouse_banehistory` WHERE `resolution` = 'PENDING'); SET DESTROY = (SELECT COUNT(*) FROM `warehouse_banehistory` WHERE `resolution` = 'DESTROY'); SET CAPTURE = (SELECT COUNT(*) FROM `warehouse_banehistory` WHERE `resolution` = 'CAPTURE'); SET DEFEND = (SELECT COUNT(*) FROM `warehouse_banehistory` WHERE `resolution` = 'DEFEND'); SELECT TOTAL, PENDING, DESTROY, CAPTURE, DEFEND; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `Blueprint_GETBYMESH` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `Blueprint_GETBYMESH`(IN `UID` BIGINT) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1; END; SELECT * FROM `static_building_blueprint` WHERE `Rank0UUID` = UID LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `Blueprint_GETMAINTFORBLUEPRINT` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `Blueprint_GETMAINTFORBLUEPRINT`(IN `UUID` BIGINT) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1; END; SELECT MaintGroup FROM `static_building_blueprint` WHERE `Rank0UUID` = UID LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_CREATE`(IN `zoneUID` BIGINT UNSIGNED, IN `oUID` BIGINT UNSIGNED, IN `n` VARCHAR(255), IN `loadNum` INT, IN `locX` FLOAT, IN `locY` FLOAT, IN `locZ` FLOAT, IN `strX` FLOAT, IN `cHP` INT UNSIGNED, IN `invuln` VARCHAR(64), IN `strongbox` INT, IN `rank` INT, IN `upgradedate` DATETIME, IN `baseID` INT, IN `lac` FLOAT, IN `rotY` FLOAT) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(zoneUID) THEN SELECT -2 AS `errorno`, "Parent (zone) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_zone` WHERE `obj_zone`.`UID`= zoneUID) THEN SELECT -3 AS `errorno`, "Parent (zone) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'building', zoneUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_building (`UID`, `ownerUUID`, `name`, `meshUUID`, `locationX`, `locationY`, `locationZ`, `scale`, `doorState`, `currentHP`, `protectionState`, `currentGold`, `rank`,`upgradeDate`, `blueprintUUID`,`w`, `rotY`) VALUES (UID, oUID, n, loadNum, locX, locY, locZ, strX, 0, cHP, invuln, strongbox, `rank`, upgradedate, baseID, lac, rotY); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_GETBYMESH` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_GETBYMESH`(IN `n` bigint) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT obj_building.*, object.parent FROM object INNER JOIN obj_building ON obj_building.UID = object.UID WHERE obj_building.meshUUID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM obj_building WHERE obj_building.UID = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_building` SET ',in_name,' = ? WHERE `obj_building`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_building` WHERE `obj_building`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_MOVE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_MOVE`(IN `UID` BIGINT, IN `parentUID` BIGINT, IN `locX` FLOAT, IN `locY` FLOAT, IN `locZ` FLOAT) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; UPDATE `object` SET `parent` = parentUID WHERE `UID` = UID; UPDATE `obj_building` SET `building_locationX` = locX, `building_locationY` = locY, `building_locationZ` = locZ WHERE `UID` = UID; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_building` SET ',in_name,' = ? WHERE `obj_building`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_building` WHERE `obj_building`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS `result`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `building_UPDATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `building_UPDATE`(IN worldServerID INT, IN zoneUUID INT, IN ownerUUID INT, IN `name` VARCHAR(64), IN meshUUID INT, IN locX FLOAT, IN locY FLOAT, IN locZ FLOAT, IN scale FLOAT, IN doorState INT, IN currentHP INT, IN protectionState VARCHAR(64), IN currentGold INT, IN `rank` INT, IN upgradeDate DATETIME, IN blueprintUUID INT, IN lacunarity INT, IN rotY INT) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; UPDATE `obj_building` SET `worldServerID` = worldServerID, `ownerUUID` = ownerUUID, `name` = name, `meshUUID` = meshUUID, `locationX` = locX, `locationY` = locX, `locationX` = locZ, `scale` = scale, `doorState` = doorState, `currentHP` = currentHP, `protectionState` = protectionState, `currentGold` = currentGold, `rank` = `rank`, `upgradeDate` = upgradeDate, `blueprintUUID` = blueprintUUID, `lacunarity` = lacunarity, `rotY` = rotY WHERE `UID` = UID; SELECT UID AS `UID`; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `character_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `character_CREATE`(IN `acctUID` BIGINT UNSIGNED, IN `fname` VARCHAR(15), IN `lname` VARCHAR(15) CHARSET 'utf8', IN `rID` INT UNSIGNED, IN `bCID` INT UNSIGNED, IN `strM` SMALLINT, IN `dexM` SMALLINT, IN `conM` SMALLINT, IN `intM` SMALLINT, IN `spiM` SMALLINT, IN `exp` TINYINT UNSIGNED, IN `skinC` TINYINT UNSIGNED, IN `hairC` TINYINT UNSIGNED, IN `hairS` TINYINT, IN `beardC` TINYINT UNSIGNED, IN `beardS` TINYINT) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE UIDC BIGINT UNSIGNED; DECLARE UIDD BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, CONCAT ('UID: ', UID, ', char_firstname: ', fname, ', char_lastname: ', lname, ', char_raceID: ', rID, ', char_baseClassID: ', bCID, ', char_strMod: ', strM, ', char_dexMod: ', dexM, ', char_conMod: ', conM, ', char_intMod: ', intM, ', char_spiMod: ', spiM, ', char_experience: ', exp, ', char_skinColor: ', skinC, ', char_hairColor: ', hairC, ', char_hairStyle: ', hairS, ', char_beardColor: ', beardS, ', char_beardStyle: ', beardS, ', char_bindBuilding: ', '-1', ', acctUID: ', acctUID) as `errormsg`; END; IF ISNULL(acctUID) THEN SELECT -2 AS `errorno`, "Parent (account) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_account` WHERE `obj_account`.`UID`= acctUID) THEN SELECT -3 AS `errorno`, "Parent (account) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'character', acctUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_character` (`UID`, `char_firstname`, `char_lastname`, `char_raceID`, `char_baseClassID`, `char_strMod`, `char_dexMod`, `char_conMod`, `char_intMod`, `char_spiMod`, `char_experience`, `char_skinColor`, `char_hairColor`, `char_hairStyle`, `char_beardColor`, `char_beardStyle`, `char_bindBuilding`, `char_isActive`) VALUES (UID, fname, convert(lname using utf8), rID, bCID, strM, dexM, conM, intM, spiM, exp, skinC, hairC, hairS, beardC, beardS, -1, 1); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `character_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `character_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_character` WHERE `obj_character`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `character_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `character_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_character` SET ',in_name,' = ? WHERE `obj_character`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_character` WHERE `obj_character`.`UID` = ? LIMIT 1;'), @uid = uid; PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `character_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `character_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_character` SET ',in_name,' = ? WHERE `obj_character`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_character` WHERE `obj_character`.`UID` = ? LIMIT 1;'), @id = uid; PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @id; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `city_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `city_CREATE`(IN `ownerID` BIGINT UNSIGNED, IN `parentZoneID` BIGINT UNSIGNED, IN `xCoord` FLOAT, IN `yCoord` FLOAT, IN `zCoord` FLOAT , IN `cityName` VARCHAR(255), IN `established` DATETIME, IN `rotY` FLOAT, IN `lac` FLOAT, IN `upgradeDate` DATETIME) MAIN: BEGIN DECLARE zoneUID BIGINT UNSIGNED; DECLARE tolUID BIGINT UNSIGNED; DECLARE cityUID BIGINT UNSIGNED; DECLARE in_guildUID BIGINT UNSIGNED DEFAULT 0; DECLARE maint_date DATETIME; DECLARE gUID CURSOR FOR SELECT `guildUID` FROM `obj_character` WHERE `UID`=ownerID; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN GET DIAGNOSTICS CONDITION 1 @ERRNO = MYSQL_ERRNO, @MESSAGE_TEXT = MESSAGE_TEXT; SELECT @ERRNO, @MESSAGE_TEXT; ROLLBACK; END; Open gUID; FETCH gUID INTO in_guildUID; close gUID; IF NOT EXISTS(SELECT NULL FROM `obj_guild` WHERE `obj_guild`.`UID`= in_guildUID) THEN SELECT -3 AS `errorno`, "owner must have guild" AS `errormsg`, in_guildUID AS `guildUID`, ownerID AS `ownerUID`; LEAVE MAIN; END IF; SET maint_date = DATE_ADD(established, INTERVAL 7 DAY); START TRANSACTION; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'zone', parentZoneID); SET zoneUID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_zone` (`UID`, `xOffset`, `yOffset`, `zOffset`, `template`, `zone_name`, `peace_zone`, `Icon1`, `Icon2`, `Icon3`, `playerCityUUID`) VALUES (zoneUID, xCoord, yCoord, zCoord, 0, cityName, 0, "", "", "", 0); INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'building', zoneUID); SET tolUID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_building` (`UID`, `ownerUUID`, `name`, `meshUUID`, `blueprintUUID`, `locationX`, `locationY`, `locationZ`, `currentHP`, `protectionState`, `currentGold`, `rank`, `upgradeDate`, `scale`, `rotY`, `w`, `maintDate`) VALUES (tolUID, ownerID, "Tree of Life", 24200, 24200, 0, 0, 0, 40000,"PROTECTED", 0, 0, upgradeDate, 1, rotY, lac, maint_date); INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'city', zoneUID); SET cityUID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_city` (`UID`, `name`, `motto`, `treeOfLifeUUID`, `established`, `population`, `siegesWithstood`, `isNpc`, `isCapital`, `isNoobIsle`, `bindX`, `bindZ`, `bindRadius`, `radiusType`) VALUES (cityUID, cityName, '', tolUID, established, 1, 0, 0, 0, 0, 0, 0, 32, 1); SET @dyn_sql = CONCAT('UPDATE `obj_zone` SET `playerCityUUID` = ? WHERE `UID` = ? LIMIT 1;'), @city = cityUID, @uid = zoneUID; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @city, @uid; SET @dyn_sql2 = CONCAT('UPDATE `obj_guild` SET `ownedCity` = ? WHERE `UID` = ? LIMIT 1;'), @city = cityUID, @uid = in_guildUID; PREPARE stmt2 FROM @dyn_sql2; EXECUTE stmt2 USING @city, @uid; SELECT `obj_zone`.*, `object`.`parent`, `object`.`type` FROM `object` LEFT JOIN `obj_zone` ON `object`.`UID` = `obj_zone`.`UID` WHERE `object`.`UID` = zoneUID; SELECT `obj_building`.*, `object`.`parent`, `object`.`type` FROM `object` LEFT JOIN `obj_building` ON `object`.`UID` = `obj_building`.`UID` WHERE `object`.`UID` = tolUID; SELECT `obj_city`.*, `object`.`parent`, `object`.`type` FROM `object` LEFT JOIN `obj_city` ON `object`.`UID` = `obj_city`.`UID` WHERE `object`.`UID` = cityUID; COMMIT; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `city_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `city_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_city` WHERE `obj_city`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `city_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `city_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_city` SET ',in_name,' = ? WHERE `obj_city`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_city` WHERE `obj_city`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `city_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `city_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_city` SET ',in_name,' = ? WHERE `obj_city`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_city` WHERE `obj_city`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `container_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `container_CREATE`(IN `oUID` BIGINT UNSIGNED, IN `type` ENUM('bank','inventory','vault')) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(oUID) THEN SELECT -2 AS `errorno`, "Parent (object) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `object` WHERE `object`.`UID`= oUID AND `object`.`type` IN ('account', 'character') ) THEN SELECT -3 AS `errorno`, "Parent (object) UID must exist, and must be an account or character" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'container', oUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_container (`UID`, `container_type`) VALUES (UID, type); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `container_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `container_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_container` WHERE `obj_container`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `container_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `container_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_container` SET ',in_name,' = ? WHERE `obj_container`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_container` WHERE `obj_container`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `container_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `container_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_container` SET ',in_name,' = ? WHERE `obj_container`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_container` WHERE `obj_container`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `debug_msg` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `debug_msg`(msg VARCHAR(255)) BEGIN select concat("** ", msg) AS '** DEBUG:'; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `discordAccountCharacters` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `discordAccountCharacters`(IN `uname` VARCHAR(60)) MAIN: BEGIN DECLARE CHAR_COUNT int; SET CHAR_COUNT = (select COUNT(acct_uname) from char_perAccount Where acct_uname like CONCAT(uname,'%')); If CHAR_COUNT > 0 THEN SELECT acct_uname, CharacterName, BaseClass, PromotionClass, char_level FROM char_perAccount Where acct_uname like CONCAT(uname,'%'); Else Select acct_uname as 'Account Name','No Characters On This Account' as 'Characters' from obj_account where acct_uname like CONCAT(uname,'%'); End If; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `discordAccountCreate` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `discordAccountCreate`(IN `discordID` VARCHAR(60), IN `uname` VARCHAR(60), IN `passwd` CHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE SALTSTRING VARCHAR(8); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'account', NULL); SET UID = LAST_INSERT_ID(); SET SALTSTRING = (SELECT SUBSTRING(MD5(RAND()) FROM 1 FOR 8) AS SALT); INSERT HIGH_PRIORITY INTO `obj_account` (`UID`, `acct_uname`, `acct_passwd`, `acct_salt`, `discordAccount`, `registrationDate`) VALUES (UID, uname,MD5(CONCAT(MD5(passwd), SALTSTRING)), SALTSTRING, discordID, CURRENT_TIMESTAMP()); INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'container', UID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_container (`UID`, `container_type`) VALUES (UID, 'vault'); COMMIT; SELECT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `discordAccountExistsCheck` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `discordAccountExistsCheck`(IN `email` VARCHAR(60),IN `uname` VARCHAR(60),IN `passwd` CHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE ACCT_COUNT int; SET ACCT_COUNT = (select COUNT(acct_uname) from obj_account Where acct_uname like CONCAT('%',uname,'%')); If ACCT_COUNT > 0 THEN Select 'Username already in use, please choose a different name' as 'Failed'; Else CALL discordAccountRegister(email,uname,passwd); End IF; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `discordAccountRegister` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `discordAccountRegister`(IN `discordAccount` VARCHAR(60), IN `discordName` VARCHAR(60), IN `passwd` CHAR(60)) MODIFIES SQL DATA MAIN: BEGIN CALL discordAccountCreate(discordAccount, CONCAT(discordName, "#1"), passwd); CALL discordAccountCreate(discordAccount, CONCAT(discordName, "#2"), passwd); CALL discordAccountCreate(discordAccount, CONCAT(discordName, "#3"), passwd); CALL discordAccountCreate(discordAccount, CONCAT(discordName, "#4"), passwd); END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `discordUpdatePassword` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `discordUpdatePassword`(IN `uname` VARCHAR(60), IN `passwd` VARCHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE SALTSTRING VARCHAR(60); DECLARE NEWPASS VARCHAR(60); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; SET SALTSTRING = (SELECT SUBSTRING(MD5(RAND()) FROM 1 FOR 8) AS SALT); SET NEWPASS = (MD5(CONCAT(MD5(passwd), SALTSTRING))); UPDATE `obj_account` SET `acct_passwd` = NEWPASS, `acct_salt` = SALTSTRING, `lastUpdateRequest` = CURRENT_TIMESTAMP() WHERE `discordAccount` = uname; INSERT IGNORE INTO login_cachelist (`UID`) (SELECT `UID` from `obj_account` where `discordAccount` = uname); SELECT 1; COMMIT; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `forum_link` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `forum_link`(IN `uname` VARCHAR(60), IN `passwd` CHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE OUTID BIGINT UNSIGNED; DECLARE SALTSTRING VARCHAR(8); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF EXISTS(SELECT NULL FROM `obj_account` WHERE `acct_uname`= uname) THEN START TRANSACTION; UPDATE `obj_account` SET `status`= "ACTIVE" WHERE `acct_uname`= uname and `status` != "ACTIVE" LIMIT 1; COMMIT; SELECT 1; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'account', NULL); SET UID = LAST_INSERT_ID(); SET OUTID = UID; SET SALTSTRING = (SELECT SUBSTRING(MD5(RAND()) FROM 1 FOR 8) AS SALT); INSERT HIGH_PRIORITY INTO `obj_account` (`UID`, `acct_uname`, `acct_passwd`, `acct_salt`, `status`) VALUES (UID, uname,MD5(CONCAT(MD5(passwd), SALTSTRING)), SALTSTRING, "ACTIVE"); INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'container', UID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_container (`UID`, `container_type`) VALUES (UID, 'vault'); COMMIT; SELECT 2; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `forum_link_pass` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `forum_link_pass`(IN `uname` VARCHAR(60), IN `passwd` VARCHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE SALTSTRING VARCHAR(60); DECLARE NEWPASS VARCHAR(60); DECLARE ACCTUID BIGINT(10); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; SET ACCTUID = (SELECT `UID` FROM `obj_account` WHERE `acct_uname`= uname); IF ACCTUID IS NULL THEN LEAVE MAIN; END IF; SET SALTSTRING = (SELECT SUBSTRING(MD5(RAND()) FROM 1 FOR 8) AS SALT); SET NEWPASS = (MD5(CONCAT(MD5(passwd), SALTSTRING))); UPDATE `obj_account` SET `acct_passwd` = NEWPASS, `acct_salt` = SALTSTRING WHERE `acct_uname`= uname and acct_accessLevel not in(3) LIMIT 1; INSERT IGNORE INTO login_cachelist (`UID`) VALUES(ACCTUID); SELECT 1; COMMIT; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `GET_POPULATION_STRING` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `GET_POPULATION_STRING`() BEGIN DECLARE POPSTRING varchar(50); DECLARE CHARCOUNT INT(10); DECLARE GUILDCOUNT INT(10); DECLARE CITYCOUNT INT(10); DECLARE REALMCOUNT INT(10); SET CHARCOUNT = (SELECT COUNT(*) FROM `obj_character`); SET GUILDCOUNT = (SELECT COUNT(*) FROM `obj_guild`); SET CITYCOUNT = (SELECT COUNT(*) FROM `obj_city` WHERE isNpc = 0); SET REALMCOUNT = (SELECT COUNT(*) FROM `obj_realm` WHERE rulingCityUID != 0); SET POPSTRING = (SELECT CONCAT("Chars:", CHARCOUNT, " Guilds:", GUILDCOUNT, " Cities:", CITYCOUNT, " Rulers:", REALMCOUNT)); SELECT POPSTRING; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `guild_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `guild_CREATE`(IN `wsUID` BIGINT UNSIGNED, IN `lUID` BIGINT UNSIGNED, IN `n` VARCHAR(60), IN `bgC1` SMALLINT UNSIGNED, IN `bgC2` SMALLINT UNSIGNED, IN `sC` SMALLINT UNSIGNED, IN `bgD` SMALLINT UNSIGNED, IN `sym` SMALLINT UNSIGNED, IN `chart` SMALLINT UNSIGNED, IN `LType` VARCHAR(40), IN `motto` VARCHAR(120)) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN GET DIAGNOSTICS CONDITION 1 @ERRNO = MYSQL_ERRNO, @MESSAGE_TEXT = MESSAGE_TEXT; SELECT @ERRNO, @MESSAGE_TEXT; ROLLBACK; END; IF ISNULL(lUID) THEN SELECT -2 AS `errorno`, "Leader (character) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_character` WHERE `obj_character`.`UID`= lUID) THEN SELECT -3 AS `errorno`, "Leader (character) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; IF ISNULL(wsUID) THEN SELECT -2 AS `errorno`, "Server UID CANNOT be null" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'guild', wsUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_guild (`UID`, `name`, `backgroundColor01`, `backgroundColor02`, `symbolColor`, `backgroundDesign`, `symbol`, `charter`, `leadershipType`, `leaderUID`, `motto`) VALUES (UID, n, bgC1, bgC2, sC, bgD, sym, chart, LType, lUID, motto); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `guild_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `guild_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_guild` WHERE `obj_guild`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `guild_GETLIST` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `guild_GETLIST`(IN `n` BIGINT UNSIGNED) SELECT obj_guild.uid, obj_guild.`name`, leaderUID, obj_city.treeOfLifeUUID FROM obj_guild JOIN obj_city ON obj_guild.ownedCity = obj_city.uid WHERE obj_city.isNpc = `n` ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `guild_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `guild_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_guild` SET ',in_name,' = ? WHERE `obj_guild`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_guild` WHERE `obj_guild`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `guild_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `guild_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_guild` SET ',in_name,' = ? WHERE `obj_guild`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_guild` WHERE `obj_guild`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_CREATE`(IN `pUID` BIGINT UNSIGNED, IN `templateID` INT UNSIGNED, IN `chargeR` SMALLINT UNSIGNED, IN `duraC` SMALLINT UNSIGNED, IN `numOf` MEDIUMINT UNSIGNED, IN `cont` ENUM('bank','equip','inventory','vault', 'forge'), IN `eSlot` VARCHAR(255), IN `flags` VARCHAR(255), IN `customName` VARCHAR(100)) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(pUID) THEN SELECT -2 AS `errorno`, "Parent (object) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'item', pUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_item (`UID`, `templateID`, `chargesRemaining`, `combat_health_current`, `numberOfItems`, `equipSlot`, `container`,`flags`,`name`) VALUES (UID, templateID, chargeR, duraC, numOf, eSlot, cont, flags, customName); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_item` WHERE `obj_item`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_item` SET ',in_name,' = ? WHERE `obj_item`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_item` WHERE `obj_item`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_item` SET ',in_name,' = ? WHERE `obj_item`.`UID` = ?; LIMIT 1'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_item` WHERE `obj_item`.`UID` = ?; LIMIT 1'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_TRADE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_TRADE`(IN `in_ItemsA` TEXT, IN `in_PlayerA_UID` BIGINT UNSIGNED, IN `in_ItemsB` TEXT, IN `in_PlayerB_UID` BIGINT UNSIGNED, IN `in_GoldA_Amount` INT, IN `in_GoldA_UID` BIGINT, IN `in_GoldB_Amount` INT, IN `in_GoldB_UID` BIGINT) Main: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE cnt INT UNSIGNED DEFAULT 1; DECLARE totA INT UNSIGNED DEFAULT 0; DECLARE totB INT UNSIGNED DEFAULT 0; DECLARE in_parent BIGINT UNSIGNED; DECLARE in_container ENUM('bank','equip','inventory','vault','none'); DECLARE in_curGoldA INT UNSIGNED DEFAULT 0; DECLARE in_curGoldB INT UNSIGNED DEFAULT 0; DECLARE cur1 CURSOR FOR SELECT `object`.`parent`, `obj_item`.`container` FROM `obj_item` LEFT JOIN `object` ON `obj_item`.`UID` = `object`.`UID` WHERE `object`.`UID` = UID FOR UPDATE; DECLARE cur2 CURSOR FOR SELECT `object`.`parent`, `obj_item`.`container`, `obj_item`.`numberOfItems` FROM `obj_item` LEFT JOIN `object` ON `obj_item`.`UID` = `object`.`UID` WHERE `object`.`UID` = UID FOR UPDATE; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; IF NOT EXISTS(SELECT NULL FROM `obj_character` WHERE `obj_character`.`UID`= in_PlayerA_UID) OR NOT EXISTS(SELECT NULL FROM `obj_character` WHERE `obj_character`.`UID`= in_PlayerB_UID) THEN SELECT -5 AS `errorno`, "Player Not found." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; SET totA = `function_stringCount`(in_ItemsA, ','); SET totB = `function_stringCount`(in_ItemsB, ','); IF (totA > 256 OR totB > 256) THEN SELECT -2 AS `errorno`, "Max 256 objects can be handled trading." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; WHILE (cnt <= totA) DO SET UID = `function_strSplit`(in_ItemsA, ',', cnt); IF (`function_isNumeric`(UID) != 1 OR UID = 0) THEN SELECT -3 AS `errorno`, "Non-Numeric Number passed." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; open cur1; FETCH cur1 INTO in_parent, in_container; close cur1; IF (in_parent != in_PlayerA_UID OR in_container != 'inventory') THEN SELECT -4 AS `errorno`, "Invalid parent or item not in inventory." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; SET cnt = cnt + 1; END WHILE; SET cnt = 1; WHILE (cnt <= totB) DO SET UID = `function_strSplit`(in_ItemsB, ',', cnt); IF (`function_isNumeric`(UID) != 1 OR UID = 0) THEN SELECT -3 AS `errorno`, "Non-Numeric Number passed." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; open cur1; FETCH cur1 INTO in_parent, in_container; close cur1; IF (in_parent != in_PlayerB_UID OR in_container != 'inventory') THEN SELECT -4 AS `errorno`, "Invalid parent or item not in inventory." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; SET cnt = cnt + 1; END WHILE; IF (in_GoldA_UID > 0) THEN SET UID = in_GoldA_UID; open cur2; FETCH cur2 INTO in_parent, in_container, in_curGoldA; close cur2; IF (in_parent != in_PlayerA_UID OR in_container != 'inventory') THEN SELECT -4 AS `errorno`, "Invalid parent or gold not in inventory." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; IF (in_GoldA_Amount > in_curGoldA) THEN SELECT -6 AS `errorno`, "not enough gold in inventory to transfer." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; ELSE SELECT -7 AS `errorno`, "Missing gold ID." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; IF (in_GoldB_UID > 0) THEN SET UID = in_GoldB_UID; open cur2; FETCH cur2 INTO in_parent, in_container, in_curGoldB; close cur2; IF (in_parent != in_PlayerB_UID OR in_container != 'inventory') THEN SELECT -4 AS `errorno`, "Invalid parent or gold not in inventory." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; IF (in_GoldB_Amount > in_curGoldB) THEN SELECT -6 AS `errorno`, "not enough gold in inventory to transfer." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; ELSE SELECT -7 AS `errorno`, "Missing gold ID." AS `errormsg`; ROLLBACK; LEAVE MAIN; END IF; Set cnt = 1; WHILE (cnt <= totA) DO SET UID = `function_strSplit`(in_ItemsA, ',', cnt); SET @dyn_sql = CONCAT('UPDATE `object` SET `parent` = ? WHERE `UID` = ? AND `parent` = ? LIMIT 1;'), @parent = in_PlayerB_UID, @uid = uid, @curOwner = in_PlayerA_UID; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @parent, @uid, @curOwner; SET cnt = cnt + 1; END WHILE; Set cnt = 1; WHILE (cnt <= totB) DO SET UID = `function_strSplit`(in_ItemsB, ',', cnt); SET @dyn_sql = CONCAT('UPDATE `object` SET `parent` = ? WHERE `UID` = ? AND `parent` = ? LIMIT 1;'), @parent = in_PlayerA_UID, @uid = uid, @curOwner = in_PlayerB_UID; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @parent, @uid, @curOwner; SET cnt = cnt + 1; END WHILE; IF (in_GoldA_Amount > 0 OR in_GoldB_Amount > 0) THEN Set in_curGoldA = in_curGoldA - in_GoldA_Amount + in_GoldB_Amount; Set in_curGoldB = in_curGoldB + in_GoldA_Amount - in_GoldB_Amount; SET @dyn_sql = CONCAT('UPDATE `obj_item` SET `numberOfItems` = ? WHERE `UID` = ? LIMIT 1;'), @numGold = in_curGoldB, @uid = in_GoldB_UID; PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @numGold, @uid; SET @dyn_sql = CONCAT('UPDATE `obj_item` SET `numberOfItems` = ? WHERE `UID` = ? LIMIT 1;'), @numGold = in_curGoldA, @uid = in_GoldA_UID; PREPARE stmt3 FROM @dyn_sql; EXECUTE stmt3 USING @numGold, @uid; END IF; COMMIT; Select 1 AS 'result'; END Main ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `item_TRANSFER_OWNER` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `item_TRANSFER_OWNER`(IN `UID` BIGINT, IN `newParent` BIGINT, IN `newContainer` ENUM('bank','equip','inventory','vault','forge','none'), IN `equipSlot` VARCHAR(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; SET @dyn_sql = CONCAT('UPDATE `obj_item` INNER JOIN `object` ON `object`.`UID` = `obj_item`.`UID` SET `object`.`parent`=?, `obj_item`.`container`=?, `obj_item`.`equipSlot`=? WHERE `object`.`UID`=?'), @parent = newParent, @container = newContainer, @equipSlot = equipSlot, @uid = UID; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @parent, @container, @equipSlot, @uid; DEALLOCATE PREPARE stmt1; COMMIT; SELECT '1' AS `result`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mine_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mine_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_mine` WHERE `obj_mine`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mine_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mine_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_mine` SET ',in_name,' = ? WHERE `obj_mine`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_mine` WHERE `obj_mine`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mine_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mine_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_mine` SET ',in_name,' = ? WHERE `obj_mine`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_mine` WHERE `obj_mine`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mob_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mob_CREATE`(IN `zoneUID` BIGINT, IN `mobbaseID` INT, IN `guildID` BIGINT, IN `spawnX` FLOAT, IN `spawnY` FLOAT, IN `spawnZ` FLOAT, IN `spawnType` SMALLINT, IN `spawnRadius` FLOAT, IN `spawnTime` INT, IN `contractID` INT, IN `buildingID` INT, IN `moblevel` INT, IN `mobname` VARCHAR(60), IN `fsm` VARCHAR(255)) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE mob_fsm VARCHAR(255); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(zoneUID) THEN SELECT -2 AS `errorno`, "Parent (zone) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_zone` WHERE `obj_zone`.`UID`= zoneUID) THEN SELECT -3 AS `errorno`, "Parent (zone) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; IF fsm = "" THEN SET mob_fsm = "None"; ELSE SET mob_fsm = fsm; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'mob', zoneUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_mob` (`UID`, `mob_mobbaseID`, `mob_guildUID`, `mob_spawnX`, `mob_spawnY`, `mob_SpawnZ`, `mob_spawnType`, `mob_spawnRadius`, `mob_spawnTime`,`mob_contractID`, `mob_buildingID`, `mob_level`, `mob_name`, `fsm`) VALUES (UID, mobbaseID, guildID, spawnX, spawnY, spawnZ, spawnType, spawnRadius, spawnTime, contractID, buildingID, moblevel, mobname, mob_fsm); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mob_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mob_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_mob` WHERE `obj_mob`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mob_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mob_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_mob` SET ',in_name,' = ? WHERE `obj_mob`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_mob` WHERE `obj_mob`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mob_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mob_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_mob` SET ',in_name,' = ? WHERE `obj_mob`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_mob` WHERE `obj_mob`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `mob_SIEGECREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `mob_SIEGECREATE`(IN `zoneUID` BIGINT, IN `mobbaseID` INT, IN `guildID` BIGINT, IN `spawnX` FLOAT, IN `spawnY` FLOAT, IN `spawnZ` FLOAT, IN `spawnType` SMALLINT, IN `spawnRadius` FLOAT, IN `spawnTime` INT, IN `buildingID` INT) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(zoneUID) THEN SELECT -2 AS `errorno`, "Parent (zone) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_zone` WHERE `obj_zone`.`UID`= zoneUID) THEN SELECT -3 AS `errorno`, "Parent (zone) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'mob', zoneUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_mob` (`UID`, `mob_mobbaseID`, `mob_guildUID`, `mob_spawnX`, `mob_spawnY`, `mob_SpawnZ`, `mob_spawnType`, `mob_spawnRadius`, `mob_spawnTime`, `mob_buildingID`) VALUES (UID, mobbaseID, guildID, spawnX, spawnY, spawnZ, spawnType, spawnRadius, spawnTime, buildingID); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `npc_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `npc_CREATE`(IN `zoneUID` INT, IN `name` VARCHAR(100), IN `contractID` INT, IN `guildID` BIGINT, IN `spawnX` FLOAT, IN `spawnY` FLOAT, IN `spawnZ` FLOAT, IN `npcLevel` SMALLINT, IN `buyPercent` FLOAT, IN `sellPercent` FLOAT, IN `buildingID` INT) MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(zoneUID) THEN SELECT -2 AS `errorno`, "Parent (zone) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS(SELECT NULL FROM `obj_zone` WHERE `obj_zone`.`UID`= zoneUID) THEN SELECT -3 AS `errorno`, "Parent (zone) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'npc', zoneUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_npc` (`UID`, `npc_name`, `npc_contractID`, `npc_guildID`, `npc_spawnX`, `npc_spawnY`, `npc_spawnZ`, `npc_level`, `npc_buyPercent`, `npc_sellPercent`, `npc_buildingID`) VALUES (UID, name, contractID, guildID, spawnX, spawnY, spawnZ, npcLevel, buyPercent, sellPercent, buildingID); COMMIT; SELECT UID AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `npc_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `npc_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_npc` WHERE `obj_npc`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `npc_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `npc_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_npc` SET ',in_name,' = ? WHERE `obj_npc`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_npc` WHERE `obj_npc`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `npc_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `npc_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_npc` SET ',in_name,' = ? WHERE `obj_npc`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_npc` WHERE `obj_npc`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `object_GETSETPARENT` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `object_GETSETPARENT`(IN `oUID` BIGINT UNSIGNED, IN `pUID` BIGINT UNSIGNED, IN `oldPUID` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; UPDATE `object` SET `object`.`parent` = pUID WHERE `object`.`UID` = oUID AND `object`.`parent` = oldPUID LIMIT 1; SELECT `object`.`parent` INTO @result FROM `object` WHERE `object`.`UID` = oUID LIMIT 1; SELECT @result AS `UID`; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `object_reorg` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `object_reorg`(IN `v_index` INT) BEGIN DECLARE v_nextIndex INT; DECLARE v_curIndex INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for select UID from object WHERE UID > v_index ORDER BY UID ASC; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_nextIndex = v_index +1; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_curIndex; if done THEN LEAVE loopy_doopy; END IF; update object set UID = v_nextIndex where UID = v_curIndex; SET v_nextIndex = v_nextIndex + 1; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `object_UID_ENUM` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `object_UID_ENUM`(IN `n` bigint) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT 0; END; SELECT type FROM `object` WHERE `object`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `PURGE_ORPHANS` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `PURGE_ORPHANS`() BEGIN DECLARE v_uid INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `UID` from object WHERE type = 'item' and parent IS NULL; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_uid; if done THEN LEAVE loopy_doopy; END IF; START TRANSACTION; delete from object where object.UID = v_uid; COMMIT; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `pvpHistory` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `pvpHistory`(IN `CharUUID` varchar(20)) BEGIN DECLARE TOTALDEATHS INT(10); DECLARE KILLCOUNT INT(10); DECLARE DEATHCOUNT INT(10); DECLARE HOURLYKILLS INT(10); DECLARE HOURLYDEATHS INT(10); DECLARE DAILYKILLS INT(10); DECLARE DAILYDEATHS INT(10); SET TOTALDEATHS = (SELECT COUNT(*) FROM `warehouse_pvphistory`); SET KILLCOUNT = (SELECT COUNT(*) FROM `warehouse_pvphistory` where `char_id` = `CharUUID`); SET DEATHCOUNT = (SELECT COUNT(*) FROM `warehouse_pvphistory` where `victim_id` = `CharUUID`); SET DAILYKILLS = (SELECT COUNT(*) FROM `warehouse_pvphistory` where datetime > DATE_SUB(NOW(), INTERVAL 1 DAY) AND `char_id` = `CharUUID`); SET DAILYDEATHS = (SELECT COUNT(*) FROM `warehouse_pvphistory` where datetime > DATE_SUB(NOW(), INTERVAL 1 DAY) AND `victim_id` = `CharUUID`); SET HOURLYKILLS = (SELECT COUNT(*) FROM `warehouse_pvphistory` where datetime > DATE_SUB(NOW(), INTERVAL 1 HOUR) AND `char_id` = `CharUUID`); SET HOURLYDEATHS = (SELECT COUNT(*) FROM `warehouse_pvphistory` where datetime > DATE_SUB(NOW(), INTERVAL 1 HOUR) AND `victim_id` = `CharUUID`); SELECT TOTALDEATHS, KILLCOUNT, DEATHCOUNT, HOURLYKILLS, HOURLYDEATHS, DAILYKILLS, DAILYDEATHS; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `realm_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `realm_GETBYUID`(IN `n` BIGINT UNSIGNED) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_realm` WHERE `obj_realm`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `realm_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `realm_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_realm` SET ',in_name,' = ? WHERE `obj_realm`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_realm` WHERE `obj_realm`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `realm_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `realm_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_realm` SET ',in_name,' = ? WHERE `obj_realm`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_realm` WHERE `obj_realm`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `realm_UPDATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `realm_UPDATE`(IN REALMUUID INT, IN cityUUID INT, IN charter int, IN rulingDate DATETIME) MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; UPDATE `obj_realm` SET `rulingCityUID` = cityUUID, `charterType` = charter, `ruledSince` = rulingDate WHERE `realmID` = REALMUUID; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `shrine_CREATE` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `shrine_CREATE`( IN `zoneUID` BIGINT UNSIGNED, IN `oUID` BIGINT UNSIGNED, IN `n` VARCHAR (255), IN `loadNum` INT, IN `locX` FLOAT, IN `locY` FLOAT, IN `locZ` FLOAT, IN `strX` FLOAT, IN `cHP` INT UNSIGNED, IN `invuln` VARCHAR (64), IN `strongbox` INT, IN `rank` TINYINT, IN `upgradedate` DATETIME, IN `baseID` INT, IN `lac` FLOAT, IN `rotY` FLOAT, IN `shrineType` VARCHAR (64) ) MAIN : BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE shrineUID BIGINT UNSIGNED; DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT - 1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; IF ISNULL(zoneUID) THEN SELECT - 2 AS `errorno`, "Parent (zone) UID CANNOT be null" AS `errormsg`; LEAVE MAIN; ELSEIF NOT EXISTS ( SELECT NULL FROM `obj_zone` WHERE `obj_zone`.`UID` = zoneUID ) THEN SELECT - 3 AS `errorno`, "Parent (zone) UID must exist" AS `errormsg`; LEAVE MAIN; END IF; START TRANSACTION; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'building', zoneUID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_building ( `UID`, `ownerUUID`, `name`, `meshUUID`, `locationX`, `locationY`, `locationZ`, `scale`, `doorState`, `currentHP`, `protectionState`, `currentGold`, `rank`, `upgradeDate`, `blueprintUUID`, `w`, `rotY` ) VALUES ( UID, oUID, n, loadNum, locX, locY, locZ, strX, 0, cHP, invuln, strongbox, `rank`, upgradedate, baseID, lac, rotY ); INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'shrine', UID); SET shrineUID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_shrine ( `UID`, `shrine_type`, `shrine_favors` ) VALUES (shrineUID, shrineType, 0); SELECT `obj_building`.*, `object`.`parent`, `object`.`type` FROM `object` LEFT JOIN `obj_building` ON `object`.`UID` = `obj_building`.`UID` WHERE `object`.`UID` = UID; SELECT `obj_shrine`.*, `object`.`parent`, `object`.`type` FROM `object` LEFT JOIN `obj_shrine` ON `object`.`UID` = `obj_shrine`.`UID` WHERE `object`.`UID` = shrineUID; COMMIT; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `singleAccountCreate` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `singleAccountCreate`(IN `uname` VARCHAR(60), IN `passwd` CHAR(60)) MODIFIES SQL DATA MAIN: BEGIN DECLARE UID BIGINT UNSIGNED; DECLARE SALTSTRING VARCHAR(8); DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; START TRANSACTION; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'account', NULL); SET UID = LAST_INSERT_ID(); SET SALTSTRING = (SELECT SUBSTRING(MD5(RAND()) FROM 1 FOR 8) AS SALT); INSERT HIGH_PRIORITY INTO `obj_account` (`UID`, `acct_uname`, `acct_passwd`, `acct_salt`, `discordAccount`, `registrationDate`) VALUES (UID, uname,MD5(CONCAT(MD5(passwd), SALTSTRING)), SALTSTRING, uuid(), CURRENT_TIMESTAMP()); INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'container', UID); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_container (`UID`, `container_type`) VALUES (UID, 'vault'); COMMIT; SELECT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `transfer_accounts` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `transfer_accounts`() MAIN: BEGIN DECLARE ID INT UNSIGNED; DECLARE done INT DEFAULT 0; DECLARE UIDC BIGINT UNSIGNED; DECLARE UID BIGINT UNSIGNED; DECLARE in_uname VARCHAR(60); DECLARE in_passwd VARCHAR(60); DECLARE in_email VARCHAR(200); DECLARE in_accessLevel SMALLINT UNSIGNED; DECLARE in_lastCharUsedID INT UNSIGNED; DECLARE in_suspended TINYINT(1); DECLARE in_dateSuspended DATE; DECLARE in_salt CHAR(30); DECLARE in_vbulletinUserID INT UNSIGNED; DECLARE in_syncPass TINYINT(1); DECLARE in_messageFilter TINYINT(1); DECLARE in_currentKey TINYBLOB; DECLARE in_currentKeyTime TIMESTAMP; DECLARE in_flags SMALLINT UNSIGNED; DECLARE ACCTUID BIGINT(10); DECLARE cur1 CURSOR FOR SELECT UID, acct_uname, acct_passwd, acct_email, acct_accessLevel, acct_salt, acct_vbulletinUserID, acct_suspend, acct_suspendDate, acct_flags, acct_syncPass, acct_lastKey, acct_lastKeyTime, acct_lastCharUID FROM `accounts2`; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; OPEN cur1; START TRANSACTION; read_loop: LOOP FETCH cur1 INTO ID, in_uname, in_passwd, in_email, in_accessLevel, in_salt, in_vbulletinUserID, in_suspended, in_dateSuspended, in_flags, in_syncPass, in_currentKey, in_currentKeyTime, in_lastCharUsedID; IF done THEN LEAVE read_loop; END IF; IF NOT EXISTS(SELECT NULL FROM `obj_account` WHERE `acct_uname`= in_uname) THEN INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'account', NULL); SET UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_account` (`UID`, `acct_uname`, `acct_passwd`, `acct_email`, `acct_accessLevel`, `acct_lastCharUID`, `acct_suspend`, `acct_suspendDate`, `acct_salt`, `acct_vbulletinUserID`, `acct_syncPass`, `acct_flags`, `acct_lastKey`, `acct_lastKeyTime`) VALUES (UID, in_uname, in_passwd, in_email, in_accessLevel, NULL, in_suspended, in_dateSuspended, in_salt, in_vbulletinUserID, in_syncPass, in_flags, in_CurrentKey, in_currentKeyTime); END IF; END LOOP; COMMIT; CLOSE cur1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `wipe_server` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `wipe_server`() BEGIN TRUNCATE TABLE dyn_admin_log; TRUNCATE TABLE obj_account_wipe; CREATE TEMPORARY TABLE obj_cleanup AS Select UID from object Where UID >= (select UID from object where type = 'account' LIMIT 1); delete o from object o join obj_cleanup oc on o.uid = oc.uid where o.uid = oc.uid; update obj_mine set mine_ownerUID = 0, mine_resource = 'GOLD'; update obj_building set ownerUUID = 0 where UID in (select mine_buildingUID from obj_mine); update obj_realm set rulingCityUID = 0, ruledSince = NULL; delete from dyn_banes; delete from dyn_building_condemned; delete from dyn_building_friends; delete from dyn_building_patrol_points; delete from dyn_character_friends; delete from dyn_character_guildhistory; delete from dyn_character_heraldy; delete from dyn_character_ignore; delete from dyn_character_killmap; delete from dyn_character_murdermap; delete from dyn_character_power; delete from dyn_character_rune; delete from dyn_character_skill; delete from dyn_guards; delete from dyn_guild_allianceenemylist; delete from dyn_guild_banishlist; delete from dyn_guild_characterkoslist; delete from dyn_guild_guildkoslist; delete from dyn_item_enchantment; delete from dyn_login_history; delete from dyn_npc_profits; delete from dyn_session; delete from dyn_workorders; delete from dyn_warehouse; delete from dyn_warehouse_transactions; delete from dyn_trash; delete from dyn_petition; delete from warehouse_banehistory; delete from warehouse_characterhistory; delete from warehouse_cityhistory; delete from warehouse_guildhistory; delete from warehouse_minehistory; delete from warehouse_pvphistory; delete from warehouse_realmhistory; SET foreign_key_checks = 0; ALTER TABLE object MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE object MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_guildhistory MODIFY COLUMN ID BIGINT UNSIGNED; ALTER TABLE dyn_character_guildhistory MODIFY COLUMN ID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_ignore MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_character_ignore MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_killmap MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_character_killmap MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_power MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_character_power MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_rune MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_character_rune MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_character_skill MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_character_skill MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_guild_banishlist MODIFY COLUMN ID BIGINT UNSIGNED; ALTER TABLE dyn_guild_banishlist MODIFY COLUMN ID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_guild_characterkoslist MODIFY COLUMN ID BIGINT UNSIGNED; ALTER TABLE dyn_guild_characterkoslist MODIFY COLUMN ID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_guild_guildkoslist MODIFY COLUMN ID BIGINT UNSIGNED; ALTER TABLE dyn_guild_guildkoslist MODIFY COLUMN ID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_item_enchantment MODIFY COLUMN UID BIGINT UNSIGNED; ALTER TABLE dyn_item_enchantment MODIFY COLUMN UID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE dyn_warehouse_transactions MODIFY COLUMN ID BIGINT UNSIGNED; ALTER TABLE dyn_warehouse_transactions MODIFY COLUMN ID BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_banehistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_banehistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_characterhistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_characterhistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_cityhistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_cityhistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_guildhistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_guildhistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_minehistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_minehistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_pvphistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_pvphistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; ALTER TABLE warehouse_realmhistory MODIFY COLUMN event_number BIGINT UNSIGNED; ALTER TABLE warehouse_realmhistory MODIFY COLUMN event_number BIGINT UNSIGNED AUTO_INCREMENT; SET foreign_key_checks = 1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `zone_GETBYUID` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `zone_GETBYUID`(IN `n` BIGINT UNSIGNED) MODIFIES SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SELECT * FROM `obj_zone` WHERE `obj_zone`.`UID` = n LIMIT 1; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `zone_GETSETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `zone_GETSETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255), IN `in_old_value` varchar(255)) MODIFIES SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_zone` SET ',in_name,' = ? WHERE `obj_zone`.`UID` = ? AND ',in_name,' = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid, @old_value = in_old_value; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid, @old_value; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_zone` WHERE `obj_zone`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `zone_SETPROP` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8mb4 */ ; /*!50003 SET character_set_results = utf8mb4 */ ; /*!50003 SET collation_connection = utf8mb4_0900_ai_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `zone_SETPROP`(IN `uid` bigint unsigned, IN `in_name` varchar(255), IN `in_new_value` varchar(255)) MODIFIES SQL DATA MAIN: BEGIN DECLARE EXIT HANDLER FOR SQLEXCEPTION, SQLWARNING, NOT FOUND BEGIN ROLLBACK; SELECT -1 AS `errorno`, "SQL Error: A rollback has occured." AS `errormsg`; END; SET @dyn_sql = CONCAT('UPDATE `obj_zone` SET ',in_name,' = ? WHERE `obj_zone`.`UID` = ? LIMIT 1;'), @new_value = in_new_value, @uid = uid; PREPARE stmt1 FROM @dyn_sql; EXECUTE stmt1 USING @new_value, @uid; SET @dyn_sql = CONCAT('SELECT `',in_name,'` INTO @result FROM `obj_zone` WHERE `obj_zone`.`UID` = ? LIMIT 1;'); PREPARE stmt2 FROM @dyn_sql; EXECUTE stmt2 USING @uid; DEALLOCATE PREPARE stmt1; DEALLOCATE PREPARE stmt2; SELECT @result AS result; END MAIN ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_bootyset` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_bootyset`(INOUT `v_zoneID` INT , IN `v_parent` INT , IN `v_index` INT) BEGIN DECLARE v_templateID INT DEFAULT 0; DECLARE v_dropChance FLOAT DEFAULT 0; DECLARE v_bootySetID INT DEFAULT 0; DECLARE recordsExist INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `booty_item` , `booty_percent` from _mobile_booties WHERE zoneID = v_zoneID AND parent = v_parent AND mob_index = v_index; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_bootySetID = (select bootySet from static_loot_bootySet ORDER BY bootySet DESC LIMIT 1 OFFSET 0); if v_bootySetID IS NULL THEN SET v_bootySetID = 0; END IF; SET v_bootySetID = v_bootySetID + 1; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_templateID, v_dropChance; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `static_loot_bootySet` VALUES (v_bootySetID, "ITEM", 0, 0, v_templateID, 0, v_dropChance); SET recordsExist = TRUE; END LOOP loopy_doopy; CLOSE cur1; IF recordsExist = TRUE THEN SET v_zoneID = v_bootySetID; ELSE SET v_zoneID = 0; END IF; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_contract_equip` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_contract_equip`(INOUT `v_contract` INT) BEGIN DECLARE v_bootySetID INT DEFAULT 0; DECLARE v_templateID INT DEFAULT 0; DECLARE v_dropChance FLOAT DEFAULT 0; DECLARE recordsExist INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `templateID`, `dropChance` from _contract_equipment WHERE `contractID` = `v_contract`; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_bootySetID = (select bootySet from static_loot_bootySet ORDER BY bootySet DESC LIMIT 1 OFFSET 0); if v_bootySetID IS NULL THEN SET v_bootySetID = 0; END IF; SET v_bootySetID = v_bootySetID + 2; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_templateID, v_dropChance; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `static_loot_bootySet` VALUES (v_bootySetID, "EQUIP", 0, 0, v_templateID, 0, v_dropChance); UPDATE static_npc_contract SET equipsetID = v_bootySetID where contractID = v_contract; SET recordsExist = TRUE; END LOOP loopy_doopy; CLOSE cur1; IF recordsExist = TRUE THEN SET `v_contract` = v_bootySetID; ELSE SET `v_contract` = 0; END IF; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_contract_equip_run` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_contract_equip_run`() BEGIN DECLARE v_uid INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `contractID` from static_npc_contract; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_uid; if done THEN LEAVE loopy_doopy; END IF; CALL _build_contract_equip(v_uid); END LOOP loopy_doopy; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_equipset` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_equipset`(INOUT `v_zoneID` INT , IN `v_parent` INT , IN `v_index` INT) BEGIN DECLARE v_templateID INT DEFAULT 0; DECLARE v_dropChance FLOAT DEFAULT 0; DECLARE v_equipSetID INT DEFAULT 0; DECLARE recordsExist INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `templateID`, `item_Float` from _mobile_equipment WHERE zoneID = v_zoneID AND parent = v_parent AND mob_index = v_index; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_equipSetID = (select bootySet from static_loot_bootySet ORDER BY bootySet DESC LIMIT 1 OFFSET 0); if v_equipSetID IS NULL THEN SET v_equipSetID = 0; END IF; SET v_equipSetID = v_equipSetID + 2; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_templateID, v_dropChance; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `static_loot_bootySet` VALUES (v_equipSetID, "EQUIP", 0, 0, v_templateID, 0, v_dropChance); SET recordsExist = TRUE; END LOOP loopy_doopy; CLOSE cur1; IF recordsExist = TRUE THEN SET v_zoneID = v_equipSetID; ELSE SET v_zoneID = 0; END IF; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_mines` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_mines`() BEGIN DECLARE v_zone_UID INT; DECLARE v_parent INT; DECLARE v_object_UID INT; DECLARE v_zone_name VARCHAR(60); DECLARE mineUUID INT DEFAULT 0; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT UID, obj_zone.`zone_name` from obj_zone where obj_zone.`zone_name` in ("Ore Mine", "Magic Mine", "Lumber Mine", "Lumber Camp", "Gold Mine"); DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; DELETE from object where type = "mine"; DELETE from obj_mine; SET mineUUID = (SELECT UID from object WHERE object.UID < 100 AND object.type = "npc" ORDER by object.UID DESC LIMIT 1); OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_zone_UID, v_zone_name; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'building', v_zone_UID); SET v_object_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_building (`UID`, `ownerUUID`, `name`, `meshUUID`, `locationX`, `locationY`, `locationZ`, `currentHP`, `protectionState`, `currentGold`, `rank`, `w`, `rotY`, `level`, `floor`, `parentBuildingID`, `blueprintUUID`) VALUES (v_object_UID, 0, "Mine Tower", 1500100, 32, 0, 0, 1, "NPC", 2000, 1, 1, 0, -1, -1, 0, 1500100); SET mineUUID = mineUUID + 1; SET @oreType = (SELECT CASE WHEN v_zone_name = "Ore Mine" THEN "ORE" WHEN v_zone_name = "Magic Mine" THEN "MAGIC" WHEN v_zone_name = "Gold Mine" THEN "GOLD" WHEN v_zone_name = "Lumber Mine" THEN "LUMBER" WHEN v_zone_name = "Lumber Camp" THEN "LUMBER" END AS oreString); INSERT HIGH_PRIORITY INTO `object` VALUES (mineUUID, 'mine', v_zone_UID); INSERT HIGH_PRIORITY INTO `obj_mine` VALUES (mineUUID, @oreType, "GOLD", 0, v_object_UID, 0); END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_runegates` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_runegates`() BEGIN DECLARE v_zone_name VARCHAR(60); DECLARE gateUUID INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for Select UID from obj_building where meshUUID = 24500; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; DELETE from static_runegate_portals; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO gateUUID; if done THEN LEAVE loopy_doopy; END IF; SET @ZONE_UID = (SELECT parent from object where `UID` = gateUUID); SET v_zone_name = (SELECT `zone_name` from obj_zone where `UID` = @ZONE_UID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "EARTH", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "AIR", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "FIRE", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "WATER", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "SPIRIT", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "CHAOS", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "OBLIV", gateUUID); INSERT HIGH_PRIORITY INTO `static_runegate_portals` VALUES (v_zone_name, gateUUID, "MERCHANT", gateUUID); END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_runeset` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_runeset`(INOUT `v_zoneID` INT , IN `v_parent` INT , IN `v_index` INT) BEGIN DECLARE v_runeBase INT DEFAULT 0; DECLARE v_runeSetID INT DEFAULT 0; DECLARE recordsExist INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `rune_id` from _mobile_runestones WHERE zoneID = v_zoneID AND parent = v_parent AND mob_index = v_index; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_runeSetID = (select static_npc_runeSet.runeSet from static_npc_runeSet ORDER BY runeSet DESC LIMIT 1 OFFSET 0); if v_runeSetID IS NULL THEN SET v_runeSetID = 0; END IF; SET v_runeSetID = v_runeSetID + 2; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_runeBase; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `static_npc_runeSet` VALUES (v_runeSetID, v_runeBase); SET recordsExist = TRUE; END LOOP loopy_doopy; CLOSE cur1; IF recordsExist = TRUE THEN SET v_zoneID = v_runeSetID; ELSE SET v_zoneID = 0; END IF; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_rune_bootyset` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_rune_bootyset`(INOUT `v_mobbase` INT) BEGIN DECLARE v_runeID INT DEFAULT 0; DECLARE v_bootyType VARCHAR(60); DECLARE v_bootySetID INT DEFAULT 0; DECLARE v_lowGold INT DEFAULT 0; DECLARE v_highGold INT DEFAULT 0; DECLARE v_lootTable INT DEFAULT 0; DECLARE v_templateID INT DEFAULT 0; DECLARE v_dropChance FLOAT DEFAULT 0; DECLARE recordsExist INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `runeID` , `bootyType`, `lowGold`, `highGold`, `templateID`, `lootTable`, `dropChance` from _runebase_booty WHERE runeID = `v_mobbase`; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET v_bootySetID = (select bootySet from static_loot_bootySet ORDER BY bootySet DESC LIMIT 1 OFFSET 0); if v_bootySetID IS NULL THEN SET v_bootySetID = 0; END IF; SET v_bootySetID = v_bootySetID + 2; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_runeID, v_bootyType, v_lowGold, v_highGold, v_templateID, v_lootTable, v_dropChance; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO `static_loot_bootySet` VALUES (v_bootySetID, v_bootyType, v_lowGold, v_highGold, v_templateID, v_lootTable, v_dropChance); UPDATE static_npc_mobbase SET bootySet = v_bootySetID where ID = v_mobbase; SET recordsExist = TRUE; END LOOP loopy_doopy; CLOSE cur1; IF recordsExist = TRUE THEN SET `v_mobbase` = v_bootySetID; ELSE SET `v_mobbase` = 0; END IF; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_build_rune_booty_run` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_build_rune_booty_run`() BEGIN DECLARE v_uid INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `ID` from static_npc_mobbase; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_uid; if done THEN LEAVE loopy_doopy; END IF; CALL _build_rune_bootyset(v_uid); END LOOP loopy_doopy; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_city_audit_create` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_city_audit_create`() BEGIN DROP TABLE IF EXISTS _city_audit; CREATE table _city_audit AS (select obj_zone.`zone_name`, zoneID, 0 as guildUID, basic_zone_template_id, city_prop_gm_guild, city_prop_gm_nation, city_prop_asset_rank from _prop_data INNER JOIN obj_zone on obj_zone.template = _prop_data.zoneID where zoneID in (select template from obj_zone where obj_zone.peace_zone = 1) AND city_prop_gm_nation != 0 AND basic_zone_template_id in (24000, 24100, 24500, 407100, 407700, 407900, 410000, 410100, 410200, 410300, 1611900) AND parent = 0 AND prop_index = 1); ALTER TABLE `_city_audit` ADD `uid` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_city_audit_run` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_city_audit_run`() BEGIN DECLARE v_zoneID INT; DECLARE v_guildUID INT; DECLARE v_cacheGuild INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT zoneID, guildUID, city_prop_gm_guild from _city_audit; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_zoneID, v_guildUID, v_cacheGuild; if done THEN LEAVE loopy_doopy; END IF; UPDATE _prop_data SET city_prop_gm_guild = v_guildUID WHERE city_prop_gm_guild != 0 AND _prop_data.zoneID = v_zoneID; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_purge_booty_dupes` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_purge_booty_dupes`() BEGIN DECLARE v_bootySet INT; DECLARE v_dupeString VARCHAR(512); DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for Select bootySet, dupeString from _bootyTemp; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; SET @beforeCount = (select COUNT(DISTINCT bootySet) from static_npc_bootySet); DROP TABLE IF EXISTS _bootyPurge; CREATE TEMPORARY TABLE _bootyPurge AS ( Select bootySet, CONCAT(lowGold, highGold, lootTable, dropChance, GROUP_CONCAT(itemBase order by itemBase ASC SEPARATOR ',')) `dupeString` From static_npc_bootySet Group by bootySet); DROP TABLE IF EXISTS _bootyTemp; CREATE TEMPORARY TABLE _bootyTemp AS (Select bootySet, dupeString from _bootyPurge GROUP BY dupeString HAVING COUNT(*) > 1 ORDER BY bootySet ASC); OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_bootySet, v_dupeString; if done THEN LEAVE loopy_doopy; END IF; update obj_npc set equipmentSet = v_bootySet where equipmentSet in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); update obj_mob set bootySet = v_bootySet where bootySet in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); update obj_mob set equipmentSet = v_bootySet where equipmentSet in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); update static_npc_contract set equipsetID = v_bootySet where equipsetID in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); update static_npc_mobbase set bootySet = v_bootySet where bootySet in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); delete from static_npc_bootySet where bootySet in (select bootySet from _bootyPurge WHERE dupeString = v_dupeString AND bootySet != v_bootySet); END LOOP loopy_doopy; CLOSE cur1; SET @afterCount = (select COUNT(DISTINCT bootySet) from static_npc_bootySet); SET @outStr = concat("Before: ", @beforeCount, " After: ", @afterCount); SELECT @outStr as ''; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_purge_runeset_dupes` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_purge_runeset_dupes`() BEGIN DECLARE v_runeSet INT; DECLARE v_dupeString VARCHAR(512); DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for Select runeSet, dupeString from _runeTemp; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; SET @beforeCount = (select COUNT(DISTINCT runeSet) from static_npc_runeSet); DROP TABLE IF EXISTS _runePurge; CREATE TEMPORARY TABLE _runePurge AS Select runeSet, GROUP_CONCAT(runeBase order by runeBase ASC SEPARATOR ',') `dupeString` From static_npc_runeSet Group by runeSet; DROP TABLE IF EXISTS _runeTemp; CREATE TEMPORARY TABLE _runeTemp AS Select runeSet, dupeString from _runePurge GROUP BY dupeString HAVING COUNT(*) > 1 ORDER BY runeSet ASC; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_runeSet, v_dupeString; if done THEN LEAVE loopy_doopy; END IF; update obj_mob set runeSet = v_runeSet where runeSet in (select runeSet from _runePurge WHERE dupeString = v_dupeString AND runeSet != v_runeSet); delete from static_npc_runeSet where runeSet in (select runeSet from _runePurge WHERE dupeString = v_dupeString AND runeSet != v_runeSet); END LOOP loopy_doopy; CLOSE cur1; SET @afterCount = (select COUNT(DISTINCT runeSet) from static_npc_runeSet); SET @outStr = concat("Before: ", @beforeCount, " After: ", @afterCount); SELECT @outStr as ''; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_renumber_bootysets` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_renumber_bootysets`() BEGIN DECLARE v_oldBootySet INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for select bootySet from _bootyTemp ORDER BY bootySet ASC; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; DROP TABLE IF EXISTS _bootyTemp; CREATE TEMPORARY TABLE _bootyTemp AS (select DISTINCT bootySet from static_npc_bootySet ORDER BY bootySet ASC); OPEN cur1; SET @newBootySet = 1; loopy_doopy: LOOP FETCH cur1 INTO v_oldBootySet; if done THEN LEAVE loopy_doopy; END IF; update obj_npc set equipmentSet = @newBootySet where equipmentSet = v_oldBootySet; update obj_mob set bootySet = @newBootySet where bootySet = v_oldBootySet; update obj_mob set equipmentSet = @newBootySet where equipmentSet = v_oldBootySet; update static_npc_contract set equipsetID = @newBootySet where equipsetID = v_oldBootySet; update static_npc_mobbase set bootySet = @newBootySet where bootySet = v_oldBootySet; update static_npc_bootySet set bootySet = @newBootySet where bootySet = v_oldBootySet; SET @outStr = concat("Bootyset: ", v_oldBootySet, " : ", @newBootySet); SELECT @outStr as ''; SET @newBootySet = @newBootySet + 1; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_renumber_runesets` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_renumber_runesets`() BEGIN DECLARE v_oldRuneSet INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for select runeSet from _runeTemp ORDER BY runeSet ASC; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; DROP TABLE IF EXISTS _runeTemp; CREATE TEMPORARY TABLE _runeTemp AS (select DISTINCT runeSet from static_npc_runeSet ORDER BY runeSet ASC); OPEN cur1; SET @newRuneSet = 1; loopy_doopy: LOOP FETCH cur1 INTO v_oldRuneSet; if done THEN LEAVE loopy_doopy; END IF; update obj_mob set runeSet = @newRuneSet where runeSet = v_oldRuneSet; update obj_npc set runeSet = @newRuneSet where runeSet = v_oldRuneSet; update static_npc_runeSet set runeSet = @newRuneSet where runeSet = v_oldRuneSet; SET @outStr = concat("Runeset: ", v_oldRuneSet, " : ", @newRuneSet); SELECT @outStr as ''; SET @newRuneSet = @newRuneSet + 1; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_zone_import_run` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_zone_import_run`() BEGIN DECLARE v_zoneUID INT; DECLARE v_parentUID INT; DECLARE v_zoneName VARCHAR(60); DECLARE v_locationX INT; DECLARE v_locationY INT; DECLARE v_locationZ INT; DECLARE v_template INT; DECLARE v_isSafeZone INT; DECLARE v_icon1 VARCHAR(60); DECLARE v_icon2 VARCHAR(60); DECLARE v_icon3 VARCHAR(60); DECLARE object_UID INT; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `zone_uuid`, `parent`, `zone_name`, `locationx`,`locationy`, `locationz`, `template`, `is_safe_zone`, `icon1`, `icon2`, `icon3` from _zone_tree; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; UPDATE _zone_tree SET parent = 1 WHERE template = 1; ALTER TABLE object AUTO_INCREMENT = 100; OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_zoneUID, v_parentUID, v_zoneName, v_locationX, v_locationY, v_locationZ, v_template, v_isSafeZone, v_icon1, v_icon2, v_icon3; if done THEN LEAVE loopy_doopy; END IF; INSERT HIGH_PRIORITY INTO object VALUES (NULL, 'zone', v_parentUID); SET object_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_zone` (`UID` ,`xOffset` ,`yOffset` ,`zOffset` ,`template` ,`zone_name` ,`peace_zone` ,`icon1` ,`icon2` ,`icon3`) VALUES (object_UID, v_locationX, v_locationY, v_locationZ, v_template, TRIM(v_zoneName), v_isSafeZone, TRIM(v_icon1), TRIM(v_icon2), TRIM(v_icon3)); END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_zone_npc_import` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_zone_npc_import`(IN `zoneUID` int) BEGIN DECLARE zoneLoadNum INT DEFAULT 0; DECLARE buildingUID INT DEFAULT 0; DECLARE ownerUID INT DEFAULT 0; DECLARE guildUID INT DEFAULT 0; DECLARE done INT DEFAULT FALSE; DECLARE last_UID INT default 0; DECLARE prop_offset INT default 0; DECLARE equipSetID INT default 0; DECLARE runeSetID INT default 0; DECLARE bootySetID INT default 0; DECLARE radians FLOAT default 0.0; DECLARE v_parent INT DEFAULT 0; DECLARE v_mob_index INT DEFAULT 0; DECLARE v_mobile_type VARCHAR(30); DECLARE v_mobBase INT DEFAULT 0; DECLARE v_raceID INT DEFAULT 0; DECLARE v_mobile_level INT DEFAULT 0; DECLARE v_name_override VARCHAR(255); DECLARE v_spawn_x FLOAT DEFAULT 0; DECLARE v_spawn_y FLOAT DEFAULT 0; DECLARE v_spawn_z FLOAT DEFAULT 0; DECLARE v_zone_level INT DEFAULT 0; DECLARE v_zone_room INT DEFAULT 0; DECLARE v_spawn_radius FLOAT DEFAULT 0; DECLARE v_spawn_time FLOAT DEFAULT 0; DECLARE v_sparse_data VARCHAR(60); DECLARE v_notEnemy BIGINT DEFAULT 0; DECLARE v_enemy BIGINT DEFAULT 0; DECLARE v_number_in_group INT DEFAULT 0; DECLARE v_fsm VARCHAR(60); DECLARE cur1 CURSOR for SELECT parent, mob_index, mobile_type, mobile_level, mobile_number_in_group, basic_zone_name_override, basic_zone_spawn_radius, basic_zone_time_to_respawn, basic_zone_spawn_location_x, basic_zone_spawn_location_y, basic_zone_spawn_location_z, basic_zone_y_rot, basic_zone_level_number, basic_zone_room_number, basic_zone_sparse_data, notEnemy, enemy, mobile_root_fs_mid from _mobile_data where zoneID = zoneLoadNum; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("NPC ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET zoneLoadNum = (select DISTINCT template from obj_zone where UID = zoneUID); OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_parent, v_mob_index, v_mobile_type, v_mobile_level, v_number_in_group, v_name_override, v_spawn_radius, v_spawn_time, v_spawn_x, v_spawn_y, v_spawn_z, radians, v_zone_level, v_zone_room, v_sparse_data, v_notEnemy, v_enemy, v_fsm; if done THEN LEAVE loopy_doopy; END IF; SET buildingUID = 0; SET ownerUID = 0; SET guildUID = 0; SET v_mobBase = 0; SET v_raceID = 0; if v_parent != 0 THEN SET prop_offset = v_parent - 1; SET buildingUID = (select UID from obj_building where obj_building.UID in (select UID from object where parent = zoneUID AND type = "building") AND parentBuildingID = 0 LIMIT 1 OFFSET prop_offset); SET ownerUID = IFNULL((select ownerUUID from obj_building WHERE UID = buildingUID), 0); SET guildUID = IFNULL((select UID from obj_guild WHERE leaderUID = ownerUID), 0); END IF; SET equipSetID = zoneLoadNum; CALL _build_equipset(equipSetID, v_parent, v_mob_index); SET runeSetID = zoneLoadNum; CALL _build_runeset(runeSetID, v_parent, v_mob_index); SET @halfRadians = radians * .5; if v_fsm = "" THEN SET v_fsm = "None"; END IF; if v_mobile_type = "MOBILE" THEN SET bootySetID = zoneLoadNum; CALL _build_bootyset(bootySetID, v_parent, v_mob_index); SET v_mobbase = (select rune_id from _mobile_runestones where zoneID = zoneLoadNum AND parent = v_parent AND mob_index = v_mob_index LIMIT 1 OFFSET 0); SET @mobCount = 1; mobLoop: REPEAT INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'mob', zoneUID); SET last_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_mob` (`UID`, `mob_mobbaseID`, `mob_level`, `mob_guildUID`, `mob_spawnX`, `mob_spawnY`, `mob_spawnZ`, `mob_spawnRadius`, `mob_spawnTime`, `mob_buildingID`, `mob_rotation`, `mob_name`, `mob_buildingFloor`, `mob_buildingLevel`, `equipmentSet`, `runeSet`, `bootySet`, `sparseData`, `notEnemy`, `enemy`, `fsm`, `rotation`) VALUES(last_UID, v_mobBase, v_mobile_level, guildUID, v_spawn_x, v_spawn_y, v_spawn_z, v_spawn_radius, v_spawn_time, buildingUID, COS(@halfRadians), v_name_override, v_zone_room, v_zone_level, equipSetID, runeSetID, bootySetID, v_sparse_data, v_notEnemy, v_enemy, v_fsm, radians); SET @mobCount = @mobCount + 1; UNTIL @mobCount > v_number_in_group END REPEAT mobLoop; END IF; if v_mobile_type = "TRAINER" THEN SET v_mobbase = (select rune_id from _mobile_runestones where zoneID = zoneLoadNum AND parent = v_parent AND mob_index = v_mob_index LIMIT 1 OFFSET 1); SET v_raceID = (select rune_id from _mobile_runestones where zoneID = zoneLoadNum AND parent = v_parent AND mob_index = v_mob_index LIMIT 1 OFFSET 0); INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'npc', zoneUID); SET last_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_npc` (`UID`, `npc_name`, `npc_contractID`, `npc_guildID`, `npc_spawnX`, `npc_spawnY`, `npc_spawnZ`, `npc_level`, `npc_buildingID`, `npc_rotation`, `npc_buildingLevel`, `npc_buildingFloor`, `npc_raceID`, `equipmentSet`, `runeSet`, `rotation`) VALUES(last_UID, v_name_override, v_mobBase, guildUID, v_spawn_x, v_spawn_y, v_spawn_z, v_mobile_level, buildingUID, COS(@halfRadians), v_zone_level, v_zone_room, v_raceID, equipSetID, runeSetID, radians); END IF; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `_zone_prop_import` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `_zone_prop_import`(IN `zoneUID` int) BEGIN DECLARE zoneLoadNum INT DEFAULT 0; DECLARE cityUUID INT DEFAULT 0; DECLARE isSafeZone INT DEFAULT FALSE; DECLARE done INT DEFAULT FALSE; DECLARE prop_UID INT DEFAULT 0; DECLARE city_UID INT DEFAULT 0; DECLARE zoneName VARCHAR(30); DECLARE parent_UID INT DEFAULT 0; DECLARE is_furniture INT DEFAULT 0; DECLARE parent_building INT DEFAULT 0; DECLARE radians FLOAT DEFAULT 0.0; DECLARE prop_table_index INT DEFAULT 0; DECLARE parent_prop INT DEFAULT 0; DECLARE prop_zone_index INT DEFAULT 0; DECLARE prop_owner_guild INT DEFAULT 0; DECLARE prop_owner INT DEFAULT 0; DECLARE prop_name VARCHAR(255); DECLARE template_id INT DEFAULT 0; DECLARE location_x FLOAT DEFAULT 0.0; DECLARE location_y FLOAT DEFAULT 0.0; DECLARE location_z FLOAT DEFAULT 0.0; DECLARE rotation FLOAT DEFAULT 0.0; DECLARE prop_level INT DEFAULT 0; DECLARE prop_room INT DEFAULT 0; DECLARE prop_rank INT DEFAULT 0; DECLARE prop_funds INT DEFAULT 0; DECLARE cur1 CURSOR for SELECT prop_entry, prop_index, parent, basic_zone_template_id, basic_zone_name_override, basic_zone_spawn_location_x, basic_zone_spawn_location_y, basic_zone_spawn_location_z, city_prop_gm_guild, basic_zone_y_rot, basic_zone_level_number, basic_zone_room_number, city_prop_asset_rank, city_prop_asset_funds from _prop_data where zoneID = zoneLoadNum ORDER BY parent ASC, prop_index ASC; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("PROP IMPORT", zoneName, @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; SET zoneLoadNum = (SELECT `template` from obj_zone where `UID` = `zoneUID`); SET isSafeZone = (SELECT `peace_zone` from obj_zone where `UID` = `zoneUID`); SET zoneName = (SELECT `zone_name` from obj_zone where `UID` = `zoneUID`); OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO prop_table_index, prop_zone_index, parent_prop, template_id, prop_name, location_x, location_y, location_z, prop_owner_guild, rotation, prop_level, prop_room, prop_rank, prop_funds; if done THEN LEAVE loopy_doopy; END IF; SET parent_UID = zoneUID; SET parent_building = 0; SET radians = rotation * .5; SET prop_owner = 0; if prop_owner_guild != 0 THEN SET prop_owner = (SELECT `leaderUID` from obj_guild where `UID` = prop_owner_guild); END IF; if ISNULL(prop_owner) THEN SET prop_owner = 0; END IF; if parent_prop != 0 THEN SET parent_building = (SELECT `prop_UUID` from _prop_data where `zoneID` = zoneLoadNum AND `parent` = 0 AND `prop_index` = parent_prop); SET is_furniture = TRUE; END IF; INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'building', parent_UID); SET prop_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO obj_building (`UID`, `ownerUUID`, `name`, `meshUUID`, `locationX`, `locationY`, `locationZ`, `currentHP`, `protectionState`, `currentGold`, `rank`, `w`, `rotY`, `level`, `floor`, `parentBuildingID`, `isFurniture`, `rotation`) VALUES (prop_UID, prop_owner, prop_name, template_id, location_x, location_y, location_z, 1, "NPC", prop_funds, prop_rank, SIN(radians), COS(radians), prop_room, prop_level, parent_building, is_furniture, rotation); UPDATE `_prop_data` SET prop_UUID = prop_UID where `prop_entry` = prop_table_index; IF isSafeZone = 1 AND template_id in (24000, 24100, 24500, 407100, 407700, 407900, 410000, 410100, 410200, 410300, 1611900) AND parent_prop = 0 AND prop_zone_index = 1 THEN INSERT HIGH_PRIORITY INTO `object` VALUES (NULL, 'city', zoneUID); SET city_UID = LAST_INSERT_ID(); INSERT HIGH_PRIORITY INTO `obj_city` (`UID`, `name`, `motto`, `treeOfLifeUUID`, `established`, `population`, `siegesWithstood`, `isNpc`, `isCapital`, `isNoobIsle`, `bindX`, `bindZ`, `bindRadius`, `radiusType`) VALUES (city_UID, zoneName, '', prop_UID, "2003-03-25 09:00:00", 1, 0, 1, 0, 0, 0, 0, 32, 1); UPDATE `obj_guild` SET ownedCity = city_UID WHERE `UID` = prop_owner_guild; END IF; END LOOP loopy_doopy; CLOSE cur1; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; /*!50003 DROP PROCEDURE IF EXISTS `__world_import_run` */; /*!50003 SET @saved_cs_client = @@character_set_client */ ; /*!50003 SET @saved_cs_results = @@character_set_results */ ; /*!50003 SET @saved_col_connection = @@collation_connection */ ; /*!50003 SET character_set_client = utf8 */ ; /*!50003 SET character_set_results = utf8 */ ; /*!50003 SET collation_connection = utf8_general_ci */ ; /*!50003 SET @saved_sql_mode = @@sql_mode */ ; /*!50003 SET sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' */ ; DELIMITER ;; CREATE DEFINER=`mb_dev`@`localhost` PROCEDURE `__world_import_run`() BEGIN DECLARE v_uid INT; DECLARE v_zoneName VARCHAR(60); DECLARE zoneTotal INT DEFAULT 0; DECLARE propTotal INT DEFAULT 0; DECLARE npcTotal INT DEFAULT 0; DECLARE done INT DEFAULT FALSE; DECLARE cur1 CURSOR for SELECT `UID`, `zone_name` from obj_zone; DECLARE exit handler for SQLEXCEPTION BEGIN GET DIAGNOSTICS CONDITION 1 @sqlstate = RETURNED_SQLSTATE, @errno = MYSQL_ERRNO, @text = MESSAGE_TEXT; SET @full_error = CONCAT("ERROR ", @errno, " (", @sqlstate, "): ", @text); SELECT @full_error; END; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1; SET @START_TIME = NOW(); DELETE from object WHERE `UID` in (SELECT UID from obj_zone WHERE template = 0); OPEN cur1; loopy_doopy: LOOP FETCH cur1 INTO v_uid, v_zoneName; if done THEN LEAVE loopy_doopy; END IF; SET @zoneLoadNum = (select DISTINCT template from obj_zone where UID = v_uid); SET @prop_count = (SELECT COUNT(*) from _prop_data where _prop_data.zoneID = @zoneLoadNum); SET @npc_count = (SELECT COUNT(*) from _mobile_data where _mobile_data.zoneID = @zoneLoadNum); SET zoneTotal = zoneTotal + 1; SET propTotal = propTotal + @prop_count; SET npcTotal = npcTotal + @npc_count; SET @outStr = concat("Creating Zone ", v_uid, " : ", v_zoneName, ": Props: ", @prop_count, " NPCs: ", @npc_count); SELECT @outStr as ''; CALL _zone_prop_import(v_uid); CALL _zone_npc_import(v_uid); END LOOP loopy_doopy; SET @outStr = "Configuring Mines"; SELECT @outStr as ''; CALL _build_mines(); SET @outStr = "Configuring Runegates"; SELECT @outStr as ''; CALL _build_runegates(); SET @outStr = "Purging missing items from equipment sets"; SELECT @outStr as ''; delete from static_loot_bootySet where static_loot_bootySet.templateID not in (select static_item_templates.id from static_item_templates) and bootyType = "EQUIP"; UPDATE obj_mob set equipmentSet = 0 where equipmentSet != 0 AND equipmentSet not in (select DISTINCT bootySet from static_loot_bootySet); SET @outStr = "Setting default min/max 30/60 for adventure zones."; SELECT @outStr as ''; update obj_zone set min_level = 30, max_level = 60 where icon1 != ""; CLOSE cur1; SET @outStr = "Database is for to imported."; SELECT @outStr as ''; SET @outStr = CONCAT("Runtime: ", TIMESTAMPDIFF(MINUTE, @START_TIME, NOW()), "m"); SELECT @outStr as ''; SET @outStr = CONCAT("Zone records: ", zoneTotal, " Prop records: ", propTotal, " NPC records: ", npcTotal); SELECT @outStr as ''; END ;; DELIMITER ; /*!50003 SET sql_mode = @saved_sql_mode */ ; /*!50003 SET character_set_client = @saved_cs_client */ ; /*!50003 SET character_set_results = @saved_cs_results */ ; /*!50003 SET collation_connection = @saved_col_connection */ ; -- -- Final view structure for view `char_perAccount` -- /*!50001 DROP VIEW IF EXISTS `char_perAccount`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `char_perAccount` AS select `a`.`acct_uname` AS `acct_uname`,`a`.`discordAccount` AS `discordAccount`,`c`.`UID` AS `CharacterUID`,concat(`c`.`char_firstname`,' ',`c`.`char_lastname`) AS `CharacterName`,`rr`.`name` AS `CharRace`,`r1`.`name` AS `BaseClass`,(case when (`r2`.`name` is null) then 'Not Promoted' else `r2`.`name` end) AS `PromotionClass`,`c`.`char_experience` AS `char_experience`,(case when ((`c`.`char_experience` >= 0) and (`c`.`char_experience` < 150)) then '1' when ((`c`.`char_experience` >= 150) and (`c`.`char_experience` < 1200)) then '2' when ((`c`.`char_experience` >= 1200) and (`c`.`char_experience` < 4051)) then '3' when ((`c`.`char_experience` >= 4050) and (`c`.`char_experience` < 9601)) then '4' when ((`c`.`char_experience` >= 9600) and (`c`.`char_experience` < 18750)) then '5' when ((`c`.`char_experience` >= 18750) and (`c`.`char_experience` < 32400)) then '6' when ((`c`.`char_experience` >= 32400) and (`c`.`char_experience` < 51450)) then '7' when ((`c`.`char_experience` >= 51450) and (`c`.`char_experience` < 76800)) then '8' when ((`c`.`char_experience` >= 76800) and (`c`.`char_experience` < 109350)) then '9' when ((`c`.`char_experience` >= 109350) and (`c`.`char_experience` < 150000)) then '10' when ((`c`.`char_experience` >= 150000) and (`c`.`char_experience` < 199650)) then '11' when ((`c`.`char_experience` >= 199650) and (`c`.`char_experience` < 259200)) then '12' when ((`c`.`char_experience` >= 259200) and (`c`.`char_experience` < 329550)) then '13' when ((`c`.`char_experience` >= 329550) and (`c`.`char_experience` < 411600)) then '14' when ((`c`.`char_experience` >= 411600) and (`c`.`char_experience` < 506250)) then '15' when ((`c`.`char_experience` >= 506250) and (`c`.`char_experience` < 614400)) then '16' when ((`c`.`char_experience` >= 614400) and (`c`.`char_experience` < 736950)) then '17' when ((`c`.`char_experience` >= 736950) and (`c`.`char_experience` < 874800)) then '18' when ((`c`.`char_experience` >= 874800) and (`c`.`char_experience` < 1028850)) then '19' when ((`c`.`char_experience` >= 1028850) and (`c`.`char_experience` < 1200000)) then '20' when ((`c`.`char_experience` >= 1200000) and (`c`.`char_experience` < 1389150)) then '21' when ((`c`.`char_experience` >= 1389150) and (`c`.`char_experience` < 1597200)) then '22' when ((`c`.`char_experience` >= 1597200) and (`c`.`char_experience` < 1825050)) then '23' when ((`c`.`char_experience` >= 1825050) and (`c`.`char_experience` < 2073600)) then '24' when ((`c`.`char_experience` >= 2073600) and (`c`.`char_experience` < 2343750)) then '25' when ((`c`.`char_experience` >= 2343750) and (`c`.`char_experience` < 2636400)) then '26' when ((`c`.`char_experience` >= 2636400) and (`c`.`char_experience` < 2952450)) then '27' when ((`c`.`char_experience` >= 2952450) and (`c`.`char_experience` < 3292800)) then '28' when ((`c`.`char_experience` >= 3292800) and (`c`.`char_experience` < 3658350)) then '29' when ((`c`.`char_experience` >= 3658350) and (`c`.`char_experience` < 4050000)) then '30' when ((`c`.`char_experience` >= 4050000) and (`c`.`char_experience` < 4468650)) then '31' when ((`c`.`char_experience` >= 4468650) and (`c`.`char_experience` < 4915200)) then '32' when ((`c`.`char_experience` >= 4915200) and (`c`.`char_experience` < 5390550)) then '33' when ((`c`.`char_experience` >= 5390550) and (`c`.`char_experience` < 5895600)) then '34' when ((`c`.`char_experience` >= 5895600) and (`c`.`char_experience` < 6431250)) then '35' when ((`c`.`char_experience` >= 6431250) and (`c`.`char_experience` < 6998400)) then '36' when ((`c`.`char_experience` >= 6998400) and (`c`.`char_experience` < 7597950)) then '37' when ((`c`.`char_experience` >= 7597950) and (`c`.`char_experience` < 8230800)) then '38' when ((`c`.`char_experience` >= 8230800) and (`c`.`char_experience` < 8897850)) then '39' when ((`c`.`char_experience` >= 8897850) and (`c`.`char_experience` < 10091520)) then '40' when ((`c`.`char_experience` >= 10091520) and (`c`.`char_experience` < 11396777)) then '41' when ((`c`.`char_experience` >= 11396777) and (`c`.`char_experience` < 12820187)) then '42' when ((`c`.`char_experience` >= 12820187) and (`c`.`char_experience` < 14368505)) then '43' when ((`c`.`char_experience` >= 14368505) and (`c`.`char_experience` < 16048666)) then '44' when ((`c`.`char_experience` >= 16048666) and (`c`.`char_experience` < 17867790)) then '45' when ((`c`.`char_experience` >= 17867790) and (`c`.`char_experience` < 19833183)) then '46' when ((`c`.`char_experience` >= 19833183) and (`c`.`char_experience` < 21952335)) then '47' when ((`c`.`char_experience` >= 21952335) and (`c`.`char_experience` < 24232919)) then '48' when ((`c`.`char_experience` >= 24232919) and (`c`.`char_experience` < 26682793)) then '49' when ((`c`.`char_experience` >= 26682793) and (`c`.`char_experience` < 29310000)) then '50' when ((`c`.`char_experience` >= 29310000) and (`c`.`char_experience` < 32122766)) then '51' when ((`c`.`char_experience` >= 32122766) and (`c`.`char_experience` < 35129502)) then '52' when ((`c`.`char_experience` >= 35129502) and (`c`.`char_experience` < 38338805)) then '53' when ((`c`.`char_experience` >= 38338805) and (`c`.`char_experience` < 41759452)) then '54' when ((`c`.`char_experience` >= 41759452) and (`c`.`char_experience` < 45400409)) then '55' when ((`c`.`char_experience` >= 45400409) and (`c`.`char_experience` < 49270824)) then '56' when ((`c`.`char_experience` >= 49270824) and (`c`.`char_experience` < 53380030)) then '57' when ((`c`.`char_experience` >= 53380030) and (`c`.`char_experience` < 57737542)) then '58' when ((`c`.`char_experience` >= 57737542) and (`c`.`char_experience` < 62353064)) then '59' when ((`c`.`char_experience` >= 62353064) and (`c`.`char_experience` < 67236479)) then '60' when ((`c`.`char_experience` >= 67236479) and (`c`.`char_experience` < 72397859)) then '61' when ((`c`.`char_experience` >= 72397859) and (`c`.`char_experience` < 77847457)) then '62' when ((`c`.`char_experience` >= 77847457) and (`c`.`char_experience` < 83595712)) then '63' when ((`c`.`char_experience` >= 83595712) and (`c`.`char_experience` < 89653247)) then '64' when ((`c`.`char_experience` >= 89653247) and (`c`.`char_experience` < 96030869)) then '65' when ((`c`.`char_experience` >= 96030869) and (`c`.`char_experience` < 102739569)) then '66' when ((`c`.`char_experience` >= 102739569) and (`c`.`char_experience` < 109790524)) then '67' when ((`c`.`char_experience` >= 109790524) and (`c`.`char_experience` < 117195093)) then '68' when ((`c`.`char_experience` >= 117195093) and (`c`.`char_experience` < 124964822)) then '69' when ((`c`.`char_experience` >= 124964822) and (`c`.`char_experience` < 133111438)) then '70' when ((`c`.`char_experience` >= 133111438) and (`c`.`char_experience` < 141646855)) then '71' when ((`c`.`char_experience` >= 141646855) and (`c`.`char_experience` < 150583171)) then '72' when ((`c`.`char_experience` >= 150583171) and (`c`.`char_experience` < 159932666)) then '73' when ((`c`.`char_experience` >= 159932666) and (`c`.`char_experience` < 169707808)) then '74' when (`c`.`char_experience` >= 169707808) then '75' else 'Unknown' end) AS `char_level`,`a`.`status` AS `AccountStatus` from (((((`obj_character` `c` join `object` `o` on((`c`.`UID` = `o`.`UID`))) join `obj_account` `a` on((`a`.`UID` = `o`.`parent`))) left join `static_rune_runebase` `r1` on((`r1`.`ID` = `c`.`char_baseClassID`))) left join `static_rune_runebase` `r2` on((`r2`.`ID` = `c`.`char_promotionClassID`))) join `static_rune_race` `rr` on((`rr`.`ID` = `c`.`char_raceID`))) where (`c`.`char_isActive` = 1) order by `a`.`acct_uname`,`c`.`char_experience` desc */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `class_metrics` -- /*!50001 DROP VIEW IF EXISTS `class_metrics`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `class_metrics` AS select distinct concat('BaseClass',': ',`char_perAccount`.`BaseClass`) AS `Class`,count(`char_perAccount`.`BaseClass`) AS `Count` from `char_perAccount` group by `char_perAccount`.`BaseClass` union select distinct concat('PromotionClass',': ',`char_perAccount`.`PromotionClass`) AS `CONCAT('PromotionClass',': ',PromotionClass)`,count(`char_perAccount`.`PromotionClass`) AS `Count` from `char_perAccount` group by `char_perAccount`.`PromotionClass` union select 'Total: ' AS `Name_exp_5`,count(`char_perAccount`.`CharacterUID`) AS `COUNT(CharacterUID)` from `char_perAccount` order by `Class` */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `dyn_trash_detail` -- /*!50001 DROP VIEW IF EXISTS `dyn_trash_detail`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `dyn_trash_detail` AS select distinct `l`.`accountName` AS `accountName`,`l`.`characterName` AS `characterName`,`r1`.`name` AS `BaseClass`,(case when (`r2`.`name` is null) then 'Not Promoted' else `r2`.`name` end) AS `PromotionClass`,`t`.`machineID` AS `machineID`,`l`.`ip` AS `ip`,`t`.`count` AS `count`,`c`.`char_isActive` AS `char_isActive` from ((((((`dyn_trash` `t` join `dyn_login_history` `l` on((`t`.`machineID` = `l`.`machineID`))) join `obj_character` `c` on((`l`.`characterName` = (case when (`c`.`char_lastname` > '') then concat(`c`.`char_firstname`,' ',`c`.`char_lastname`) else `c`.`char_firstname` end)))) join `object` `o` on((`c`.`UID` = `o`.`UID`))) join `obj_account` `a` on((`a`.`UID` = `o`.`parent`))) left join `static_rune_runebase` `r1` on((`r1`.`ID` = `c`.`char_baseClassID`))) left join `static_rune_runebase` `r2` on((`r2`.`ID` = `c`.`char_promotionClassID`))) where (`c`.`char_isActive` = 1) */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `guild_Leaders` -- /*!50001 DROP VIEW IF EXISTS `guild_Leaders`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8 */; /*!50001 SET character_set_results = utf8 */; /*!50001 SET collation_connection = utf8_general_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `guild_Leaders` AS select `a`.`acct_uname` AS `acct_uname`,`a`.`discordAccount` AS `discordAccount`,`a`.`AccountStatus` AS `AccountStatus`,`a`.`CharacterUID` AS `CharacterUID`,`a`.`CharacterName` AS `CharacterName`,`a`.`char_level` AS `char_level`,`g`.`name` AS `GuildName`,`g`.`ownedCity` AS `ownedCity`,`c`.`name` AS `CityName`,`g`.`mineTime` AS `mineTime`,`g`.`motto` AS `motto` from ((`char_perAccount` `a` join `obj_guild` `g` on((`a`.`CharacterUID` = `g`.`leaderUID`))) join `obj_city` `c` on((`c`.`UID` = `g`.`ownedCity`))) order by `a`.`acct_uname` */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `mob_Powers` -- /*!50001 DROP VIEW IF EXISTS `mob_Powers`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `mob_Powers` AS select `mbp`.`mobbaseUUID` AS `mobbaseUUID`,`mb`.`name` AS `mobName`,`mb`.`level` AS `mobLevel`,`mbp`.`token` AS `powerToken`,`pb`.`IDString` AS `powerString`,`pb`.`name` AS `powerName`,`mbp`.`rank` AS `powerRank` from ((`static_npc_mobbase_powers` `mbp` left join `static_npc_mobbase` `mb` on((`mbp`.`mobbaseUUID` = `mb`.`ID`))) left join `static_power_powerbase` `pb` on((`pb`.`token` = `mbp`.`token`))) order by `mbp`.`mobbaseUUID` */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `orphaned_Mines` -- /*!50001 DROP VIEW IF EXISTS `orphaned_Mines`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `orphaned_Mines` AS select `m`.`UID` AS `UID`,`m`.`mine_buildingUID` AS `mine_buildingUID`,`m`.`mine_type` AS `mine_type`,`m`.`mine_resource` AS `mine_resource`,`b`.`ownerUUID` AS `ownerUUID`,`c`.`CharacterName` AS `CharacterName` from ((`obj_mine` `m` join `obj_building` `b` on((`m`.`mine_buildingUID` = `b`.`UID`))) left join `char_perAccount` `c` on((`c`.`CharacterUID` = `b`.`ownerUUID`))) where (`c`.`CharacterName` is null) */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `runes_perCharacter` -- /*!50001 DROP VIEW IF EXISTS `runes_perCharacter`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `runes_perCharacter` AS select `c`.`acct_uname` AS `acct_uname`,`c`.`discordAccount` AS `discordAccount`,`c`.`CharacterUID` AS `CharacterUID`,`c`.`CharacterName` AS `CharacterName`,`rb`.`name` AS `AppliedRunes`,`c`.`BaseClass` AS `BaseClass`,`c`.`PromotionClass` AS `PromotionClass`,`g`.`name` AS `GuildName`,`c`.`char_experience` AS `char_experience`,`c`.`AccountStatus` AS `AccountStatus` from ((((`char_perAccount` `c` join `dyn_character_rune` `r` on((`c`.`CharacterUID` = `r`.`CharacterID`))) join `static_rune_runebase` `rb` on((`rb`.`ID` = `r`.`RuneBaseID`))) join `obj_character` `oc` on((`oc`.`UID` = `c`.`CharacterUID`))) join `obj_guild` `g` on((`oc`.`guildUID` = `g`.`UID`))) order by `c`.`acct_uname`,`c`.`CharacterName` */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; -- -- Final view structure for view `subguild_Leaders` -- /*!50001 DROP VIEW IF EXISTS `subguild_Leaders`*/; /*!50001 SET @saved_cs_client = @@character_set_client */; /*!50001 SET @saved_cs_results = @@character_set_results */; /*!50001 SET @saved_col_connection = @@collation_connection */; /*!50001 SET character_set_client = utf8mb4 */; /*!50001 SET character_set_results = utf8mb4 */; /*!50001 SET collation_connection = utf8mb4_0900_ai_ci */; /*!50001 CREATE ALGORITHM=UNDEFINED */ /*!50013 DEFINER=`mb_dev`@`localhost` SQL SECURITY DEFINER */ /*!50001 VIEW `subguild_Leaders` AS select `o`.`UID` AS `GuildUID`,`g`.`name` AS `GuildName`,`g`.`leaderUID` AS `GuildLeader UID`,`a`.`CharacterName` AS `CharacterName`,`a`.`char_level` AS `CharacterLevel`,`a`.`acct_uname` AS `AccountName` from ((`object` `o` join `obj_guild` `g` on((`o`.`UID` = `g`.`UID`))) left join `char_perAccount` `a` on((`a`.`CharacterUID` = `g`.`leaderUID`))) where ((`o`.`type` = 'guild') and (`o`.`parent` <> 1) and (`g`.`ownedCity` = 0)) */; /*!50001 SET character_set_client = @saved_cs_client */; /*!50001 SET character_set_results = @saved_cs_results */; /*!50001 SET collation_connection = @saved_col_connection */; /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; -- Dump completed on 2026-09-27 12:10:04