38676-vm/db/database_schema.sql
2026-03-12 23:06:48 +00:00

675 lines
26 KiB
SQL

/*M!999999\- enable the sandbox mode */
-- MariaDB dump 10.19 Distrib 10.11.14-MariaDB, for debian-linux-gnu (x86_64)
--
-- Host: 127.0.0.1 Database: app_38676
-- ------------------------------------------------------
-- Server version 10.11.14-MariaDB-0+deb12u2
/*!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 */;
/*!40101 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 `badges`
--
DROP TABLE IF EXISTS `badges`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `badges` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`image_url` varchar(255) NOT NULL,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`allowed_user_type` varchar(50) DEFAULT 'all',
`required_level` int(11) DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `celestial_object_status_profiles`
--
DROP TABLE IF EXISTS `celestial_object_status_profiles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `celestial_object_status_profiles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`enabled` tinyint(1) DEFAULT 1,
`priority` int(11) DEFAULT 0,
`scope_object_type` varchar(50) DEFAULT NULL,
`config` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`config`)),
`created_at` timestamp NULL DEFAULT current_timestamp(),
`updated_at` timestamp NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `celestial_object_status_rules`
--
DROP TABLE IF EXISTS `celestial_object_status_rules`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `celestial_object_status_rules` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`status_id` int(11) NOT NULL,
`profile_id` int(11) NOT NULL,
`priority` int(11) DEFAULT 0,
`orbital_count_op` varchar(10) DEFAULT NULL,
`orbital_count_val` int(11) DEFAULT NULL,
`terrestrial_count_op` varchar(10) DEFAULT NULL,
`terrestrial_count_val` int(11) DEFAULT NULL,
`orbital_dominance` text DEFAULT NULL,
`terrestrial_dominance` text DEFAULT NULL,
`is_empty_case` tinyint(1) DEFAULT 0,
`combine_mode` varchar(50) DEFAULT 'AND',
`is_active` tinyint(1) DEFAULT 1,
PRIMARY KEY (`id`),
KEY `status_id` (`status_id`),
KEY `profile_id` (`profile_id`),
CONSTRAINT `celestial_object_status_rules_ibfk_1` FOREIGN KEY (`status_id`) REFERENCES `celestial_object_statuses` (`id`) ON DELETE CASCADE,
CONSTRAINT `celestial_object_status_rules_ibfk_2` FOREIGN KEY (`profile_id`) REFERENCES `celestial_object_status_profiles` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `celestial_object_statuses`
--
DROP TABLE IF EXISTS `celestial_object_statuses`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `celestial_object_statuses` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(50) NOT NULL,
`color` varchar(50) DEFAULT NULL,
`description` text DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `celestial_object_type_modifiers`
--
DROP TABLE IF EXISTS `celestial_object_type_modifiers`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `celestial_object_type_modifiers` (
`celestial_object_type_id` int(11) NOT NULL,
`modifier_id` int(11) NOT NULL,
PRIMARY KEY (`celestial_object_type_id`,`modifier_id`),
KEY `modifier_id` (`modifier_id`),
CONSTRAINT `celestial_object_type_modifiers_ibfk_1` FOREIGN KEY (`celestial_object_type_id`) REFERENCES `celestial_object_types` (`id`) ON DELETE CASCADE,
CONSTRAINT `celestial_object_type_modifiers_ibfk_2` FOREIGN KEY (`modifier_id`) REFERENCES `modifiers` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `celestial_object_types`
--
DROP TABLE IF EXISTS `celestial_object_types`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `celestial_object_types` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(50) NOT NULL,
`icon` varchar(50) DEFAULT NULL,
`description` text DEFAULT NULL,
`image_url` varchar(255) DEFAULT NULL,
`orbital_control_enabled` tinyint(1) DEFAULT 1,
`terrestrial_control_enabled` tinyint(1) DEFAULT 1,
`status_profile_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `cities`
--
DROP TABLE IF EXISTS `cities`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `cities` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`planet_id` int(11) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`settlement_type_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `city_faction_control`
--
DROP TABLE IF EXISTS `city_faction_control`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `city_faction_control` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`city_id` int(11) DEFAULT NULL,
`faction_id` int(11) DEFAULT NULL,
`control_level` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `faction_alliances`
--
DROP TABLE IF EXISTS `faction_alliances`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `faction_alliances` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`faction_id_1` int(11) NOT NULL,
`faction_id_2` int(11) NOT NULL,
`created_at` timestamp NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
UNIQUE KEY `unique_alliance` (`faction_id_1`,`faction_id_2`),
KEY `faction_id_2` (`faction_id_2`),
CONSTRAINT `faction_alliances_ibfk_1` FOREIGN KEY (`faction_id_1`) REFERENCES `factions` (`id`) ON DELETE CASCADE,
CONSTRAINT `faction_alliances_ibfk_2` FOREIGN KEY (`faction_id_2`) REFERENCES `factions` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `factions`
--
DROP TABLE IF EXISTS `factions`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `factions` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`image_url` varchar(255) DEFAULT NULL,
`fa_icon` varchar(50) DEFAULT NULL,
`color` varchar(7) DEFAULT '#808080',
`created_at` timestamp NULL DEFAULT current_timestamp(),
`slug` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `game_resources`
--
DROP TABLE IF EXISTS `game_resources`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `game_resources` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`icon` varchar(100) DEFAULT NULL,
`image_url` varchar(255) DEFAULT NULL,
`description` text DEFAULT NULL,
`created_at` timestamp NULL DEFAULT current_timestamp(),
`show_in_header` tinyint(1) DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `grades`
--
DROP TABLE IF EXISTS `grades`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `grades` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`user_type` varchar(50) DEFAULT NULL,
`min_level` int(11) DEFAULT NULL,
`max_level` int(11) DEFAULT NULL,
`level_id` int(11) DEFAULT 1,
`grade_name` varchar(100) DEFAULT 'New Grade',
`image_url` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `level_id` (`level_id`),
CONSTRAINT `grades_ibfk_1` FOREIGN KEY (`level_id`) REFERENCES `levels` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guild_creation_requirements`
--
DROP TABLE IF EXISTS `guild_creation_requirements`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `guild_creation_requirements` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`resource_id` int(11) NOT NULL,
`amount` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guild_members`
--
DROP TABLE IF EXISTS `guild_members`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `guild_members` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`guild_id` int(11) NOT NULL,
`user_id` int(11) NOT NULL,
`role` enum('superviseur','officier','membre','en attente') DEFAULT 'membre',
`joined_at` timestamp NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
UNIQUE KEY `user_id` (`user_id`),
KEY `guild_id` (`guild_id`),
CONSTRAINT `guild_members_ibfk_1` FOREIGN KEY (`guild_id`) REFERENCES `guilds` (`id`) ON DELETE CASCADE,
CONSTRAINT `guild_members_ibfk_2` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guild_restrictions`
--
DROP TABLE IF EXISTS `guild_restrictions`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `guild_restrictions` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`restriction_key` varchar(255) NOT NULL,
`value` varchar(255) NOT NULL,
`description` text DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `restriction_key` (`restriction_key`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `guilds`
--
DROP TABLE IF EXISTS `guilds`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `guilds` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`tag` varchar(10) NOT NULL,
`owner_id` int(11) NOT NULL,
`created_at` timestamp NULL DEFAULT current_timestamp(),
`description` text DEFAULT NULL,
`recruitment_status` enum('ouvert','validation','ferme') DEFAULT 'ouvert',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `levels`
--
DROP TABLE IF EXISTS `levels`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `levels` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`resource_id` int(11) DEFAULT NULL,
`required_quantity` int(11) DEFAULT NULL,
`required_xp` int(11) DEFAULT 0,
`level_name` varchar(100) DEFAULT 'New Level',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `lootbox_items`
--
DROP TABLE IF EXISTS `lootbox_items`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `lootbox_items` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`lootbox_id` int(11) NOT NULL,
`resource_slug` varchar(255) DEFAULT NULL,
`probability` decimal(5,2) NOT NULL DEFAULT 0.00,
`quantity_min` int(11) NOT NULL DEFAULT 1,
`quantity_max` int(11) NOT NULL DEFAULT 1,
`is_guaranteed` tinyint(1) DEFAULT 0,
PRIMARY KEY (`id`),
KEY `lootbox_id` (`lootbox_id`),
KEY `resource_slug` (`resource_slug`),
CONSTRAINT `lootbox_items_ibfk_1` FOREIGN KEY (`lootbox_id`) REFERENCES `lootboxes` (`id`) ON DELETE CASCADE,
CONSTRAINT `lootbox_items_ibfk_2` FOREIGN KEY (`resource_slug`) REFERENCES `game_resources` (`slug`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `lootbox_rolls`
--
DROP TABLE IF EXISTS `lootbox_rolls`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `lootbox_rolls` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`lootbox_id` int(11) NOT NULL,
`roll_count` int(11) NOT NULL DEFAULT 1,
`probability` decimal(5,2) NOT NULL DEFAULT 100.00,
PRIMARY KEY (`id`),
KEY `lootbox_id` (`lootbox_id`),
CONSTRAINT `lootbox_rolls_ibfk_1` FOREIGN KEY (`lootbox_id`) REFERENCES `lootboxes` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `lootboxes`
--
DROP TABLE IF EXISTS `lootboxes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `lootboxes` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`description` text DEFAULT NULL,
`created_at` timestamp NULL DEFAULT current_timestamp(),
`is_guaranteed` tinyint(1) DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `modifiers`
--
DROP TABLE IF EXISTS `modifiers`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `modifiers` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`type` enum('bonus','malus') NOT NULL,
`description` text DEFAULT NULL,
`icon` varchar(50) DEFAULT 'info-circle',
`slug` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `planet_faction_control`
--
DROP TABLE IF EXISTS `planet_faction_control`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `planet_faction_control` (
`planet_id` int(11) NOT NULL,
`faction_id` int(11) NOT NULL,
`control_level` int(11) NOT NULL DEFAULT 0,
PRIMARY KEY (`planet_id`,`faction_id`),
KEY `fk_planet_faction_control_faction` (`faction_id`),
CONSTRAINT `fk_planet_faction_control_faction` FOREIGN KEY (`faction_id`) REFERENCES `factions` (`id`) ON DELETE CASCADE,
CONSTRAINT `fk_planet_faction_control_planet` FOREIGN KEY (`planet_id`) REFERENCES `planets` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `planets`
--
DROP TABLE IF EXISTS `planets`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `planets` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`galaxy_id` int(11) DEFAULT NULL,
`sector_id` int(11) DEFAULT NULL,
`slot` int(11) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`type` varchar(50) NOT NULL DEFAULT 'planet',
`status` varchar(50) NOT NULL DEFAULT 'stable',
`status_profile_id` int(11) DEFAULT NULL,
`faction_id` int(11) DEFAULT NULL,
`orbital_control` int(11) DEFAULT NULL,
`terrestrial_control` int(11) DEFAULT NULL,
`owner_faction_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `project_logs`
--
DROP TABLE IF EXISTS `project_logs`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `project_logs` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`version` varchar(50) NOT NULL,
`title` varchar(255) NOT NULL,
`content` text NOT NULL,
`created_at` timestamp NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `sectors`
--
DROP TABLE IF EXISTS `sectors`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `sectors` (
`id` int(11) NOT NULL,
`galaxy_id` int(11) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`status` varchar(50) DEFAULT 'unexplored',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `settlement_sizes`
--
DROP TABLE IF EXISTS `settlement_sizes`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `settlement_sizes` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) NOT NULL,
`slug` varchar(50) NOT NULL,
`description` text DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `settlement_types`
--
DROP TABLE IF EXISTS `settlement_types`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `settlement_types` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT NULL,
`slug` varchar(255) DEFAULT NULL,
`description` text DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `titles`
--
DROP TABLE IF EXISTS `titles`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `titles` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`allowed_user_type` varchar(50) DEFAULT 'all',
`required_level` int(11) DEFAULT 0,
`color` varchar(7) DEFAULT '#ffffff',
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `unit_rewards`
--
DROP TABLE IF EXISTS `unit_rewards`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `unit_rewards` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`unit_id` int(11) NOT NULL,
`action_type` enum('destroy','capture') NOT NULL,
`lootbox_id` int(11) DEFAULT NULL,
`resource_id` int(11) DEFAULT NULL,
`amount` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `unit_id` (`unit_id`),
KEY `resource_id` (`resource_id`),
KEY `fk_unit_rewards_lootbox` (`lootbox_id`),
CONSTRAINT `fk_unit_rewards_lootbox` FOREIGN KEY (`lootbox_id`) REFERENCES `lootboxes` (`id`) ON DELETE SET NULL,
CONSTRAINT `unit_rewards_ibfk_1` FOREIGN KEY (`unit_id`) REFERENCES `units` (`id`) ON DELETE CASCADE,
CONSTRAINT `unit_rewards_ibfk_2` FOREIGN KEY (`resource_id`) REFERENCES `game_resources` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `units`
--
DROP TABLE IF EXISTS `units`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `units` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`slug` varchar(255) NOT NULL,
`image_url` varchar(255) DEFAULT NULL,
`grid_data` text DEFAULT NULL,
`faction_id` int(11) DEFAULT NULL,
`cost_resource_id` int(11) DEFAULT NULL,
`cost_amount` int(11) DEFAULT 1,
`can_be_destroyed` tinyint(1) DEFAULT 0,
`can_be_captured` tinyint(1) DEFAULT 0,
`points_per_hit` int(11) DEFAULT 1,
`bonus_destruction` int(11) DEFAULT 0,
`destruction_resource_id` int(11) DEFAULT NULL,
`destruction_amount` int(11) DEFAULT 0,
`bonus_capture` int(11) DEFAULT 0,
`capture_resource_id` int(11) DEFAULT NULL,
`capture_amount` int(11) DEFAULT 0,
`created_at` timestamp NULL DEFAULT current_timestamp(),
PRIMARY KEY (`id`),
UNIQUE KEY `slug` (`slug`),
KEY `faction_id` (`faction_id`),
CONSTRAINT `units_ibfk_1` FOREIGN KEY (`faction_id`) REFERENCES `factions` (`id`) ON DELETE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `user_resources`
--
DROP TABLE IF EXISTS `user_resources`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `user_resources` (
`user_id` int(11) NOT NULL,
`resource_id` int(11) NOT NULL,
`amount` bigint(20) unsigned NOT NULL DEFAULT 0,
`updated_at` timestamp NULL DEFAULT current_timestamp() ON UPDATE current_timestamp(),
PRIMARY KEY (`user_id`,`resource_id`),
KEY `resource_id` (`resource_id`),
CONSTRAINT `user_resources_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
CONSTRAINT `user_resources_ibfk_2` FOREIGN KEY (`resource_id`) REFERENCES `game_resources` (`id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Table structure for table `users`
--
DROP TABLE IF EXISTS `users`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8mb4 */;
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`role` varchar(50) DEFAULT 'user',
`last_login` timestamp NULL DEFAULT current_timestamp(),
`created_at` timestamp NULL DEFAULT current_timestamp(),
`user_type` varchar(50) DEFAULT 'user',
`level_id` int(11) DEFAULT 1,
`faction_id` int(11) DEFAULT NULL,
`display_name` varchar(255) DEFAULT NULL,
`selected_title_id` int(11) DEFAULT NULL,
`selected_badge_id` int(11) DEFAULT NULL,
`guild_id` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `username` (`username`),
UNIQUE KEY `email` (`email`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
/*!40101 SET character_set_client = @saved_cs_client */;
--
-- Dumping routines for database 'app_38676'
--
/*!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-03-12 23:04:04