2024-08-23 23:13:36 +02:00
|
|
|
/* Style hints:
|
2024-08-18 21:08:59 +02:00
|
|
|
when a primary key is made up of a single column embed the primary key syntax in the column definition
|
|
|
|
|
embed AUTOINCREMENT in column definition
|
|
|
|
|
do not embed unique qualifier syntax, instead it should be part of a constraint definition
|
|
|
|
|
unique, foreign and primary key constraints should always be explicitly named via CONSTRAINT
|
|
|
|
|
|
|
|
|
|
naming convention for primary key constraints: pk_<full table name>
|
|
|
|
|
naming convention for unique constraints: uq_<full table name>_<col 1>_<col 2>_...
|
|
|
|
|
naming convention for foreign keys: fk_<full table name>_<foreign col>
|
|
|
|
|
|
|
|
|
|
quote all column and table references
|
|
|
|
|
*/
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "meta"
|
2024-07-15 23:18:11 +02:00
|
|
|
(
|
|
|
|
|
"db_version" INTEGER NOT NULL
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "setting"
|
2022-01-14 15:09:22 +08:00
|
|
|
(
|
2024-08-18 21:08:59 +02:00
|
|
|
"key" VARCHAR(32) PRIMARY KEY NOT NULL,
|
|
|
|
|
"value" TEXT NOT NULL
|
2019-12-04 22:38:01 +08:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "account"
|
2022-01-14 15:09:22 +08:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"name" TEXT NOT NULL,
|
|
|
|
|
"normal_name" TEXT NOT NULL,
|
|
|
|
|
"hash" TEXT NOT NULL,
|
|
|
|
|
"mail" TEXT NOT NULL,
|
|
|
|
|
"mail_verified" BOOLEAN NOT NULL,
|
|
|
|
|
"mail_verified_at" DATETIME DEFAULT NULL,
|
|
|
|
|
"mail_token" TEXT DEFAULT NULL,
|
|
|
|
|
"password_token" TEXT DEFAULT NULL,
|
|
|
|
|
"login_token" TEXT DEFAULT NULL,
|
|
|
|
|
"login_token_created" DATETIME DEFAULT NULL,
|
|
|
|
|
"state" INTEGER NOT NULL,
|
|
|
|
|
"last_login" DATETIME DEFAULT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL,
|
2026-07-06 20:54:58 -04:00
|
|
|
"locale" VARCHAR(10) DEFAULT "en-US" NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "uq_account_name" UNIQUE ("name"),
|
|
|
|
|
CONSTRAINT "uq_account_normal_name" UNIQUE ("normal_name"),
|
|
|
|
|
CONSTRAINT "uq_account_login_token" UNIQUE ("login_token"),
|
|
|
|
|
CONSTRAINT "uq_account_mail" UNIQUE ("mail")
|
2022-01-14 15:09:22 +08:00
|
|
|
);
|
|
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "account_ip_ban"
|
|
|
|
|
(
|
|
|
|
|
"addr" TEXT PRIMARY KEY NOT NULL,
|
|
|
|
|
"date" DATETIME NOT NULL DEFAULT (CURRENT_TIMESTAMP)
|
|
|
|
|
);
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_account_ip_ban_addr" ON "account_ip_ban" ("addr");
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_schedule_next"
|
|
|
|
|
(
|
|
|
|
|
"type" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"timestamp" BIGINT NOT NULL
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character_common"
|
2023-04-29 22:12:55 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"hide_equip_head" BOOLEAN NOT NULL,
|
2024-04-30 08:17:14 -04:00
|
|
|
"hide_equip_lantern" BOOLEAN NOT NULL
|
2023-04-29 22:12:55 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character"
|
2022-01-14 15:09:22 +08:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"account_id" INTEGER NOT NULL,
|
|
|
|
|
"version" INTEGER NOT NULL,
|
|
|
|
|
"first_name" TEXT NOT NULL,
|
|
|
|
|
"last_name" TEXT NOT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL,
|
|
|
|
|
"my_pawn_slot_num" SMALLINT NOT NULL,
|
|
|
|
|
"rental_pawn_slot_num" SMALLINT NOT NULL,
|
|
|
|
|
"hide_equip_head_pawn" BOOLEAN NOT NULL,
|
|
|
|
|
"hide_equip_lantern_pawn" BOOLEAN NOT NULL,
|
|
|
|
|
"arisen_profile_share_range" SMALLINT NOT NULL,
|
2023-10-13 17:52:06 +02:00
|
|
|
"fav_warp_slot_num" INTEGER NOT NULL,
|
2024-05-31 18:51:14 +02:00
|
|
|
"max_bazaar_exhibits" INTEGER NOT NULL,
|
2025-03-11 11:58:00 -04:00
|
|
|
"partner_pawn_id" INTEGER NOT NULL DEFAULT 0,
|
2024-08-17 21:43:16 -04:00
|
|
|
"game_mode" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_character_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_character_account_id" FOREIGN KEY ("account_id") REFERENCES "account" ("id") ON DELETE CASCADE
|
2022-09-05 17:30:52 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_character_account_game_mode" ON "ddon_character" ("account_id", "game_mode");
|
2022-09-05 17:30:52 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_pawn"
|
2022-09-05 17:30:52 +02:00
|
|
|
(
|
2024-08-17 18:54:22 +02:00
|
|
|
"pawn_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"name" TEXT NOT NULL,
|
|
|
|
|
"hm_type" SMALLINT NOT NULL,
|
|
|
|
|
"pawn_type" SMALLINT NOT NULL,
|
2024-12-10 17:47:06 +01:00
|
|
|
"pawn_state" SMALLINT NOT NULL,
|
2024-08-17 18:54:22 +02:00
|
|
|
"training_points" INTEGER NOT NULL,
|
|
|
|
|
"available_training" INTEGER NOT NULL,
|
|
|
|
|
"craft_rank" INTEGER NOT NULL,
|
|
|
|
|
"craft_rank_limit" INTEGER NOT NULL,
|
|
|
|
|
"craft_exp" INTEGER NOT NULL,
|
|
|
|
|
"craft_points" INTEGER NOT NULL,
|
|
|
|
|
"production_speed_level" INTEGER NOT NULL,
|
|
|
|
|
"equipment_enhancement_level" INTEGER NOT NULL,
|
|
|
|
|
"equipment_quality_level" INTEGER NOT NULL,
|
|
|
|
|
"consumable_quantity_level" INTEGER NOT NULL,
|
|
|
|
|
"cost_performance_level" INTEGER NOT NULL,
|
2024-07-26 00:54:21 -04:00
|
|
|
"is_official_pawn" BOOLEAN NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_pawn_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_pawn_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-04-29 22:12:55 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_pawn_character_id" ON "ddon_pawn" ("character_id");
|
2023-04-29 22:12:55 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_pawn_training_status"
|
2024-05-09 23:24:07 +02:00
|
|
|
(
|
|
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"training_status" BLOB NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_pawn_training_status" PRIMARY KEY ("pawn_id", "job"),
|
|
|
|
|
CONSTRAINT "fk_ddon_pawn_training_status_pawn_id" FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
2024-05-09 23:24:07 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_edit_info"
|
2023-04-29 22:12:55 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER PRIMARY KEY NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
"sex" INTEGER NOT NULL,
|
|
|
|
|
"voice" INTEGER NOT NULL,
|
|
|
|
|
"voice_pitch" INTEGER NOT NULL,
|
|
|
|
|
"personality" INTEGER NOT NULL,
|
|
|
|
|
"speech_freq" INTEGER NOT NULL,
|
|
|
|
|
"body_type" INTEGER NOT NULL,
|
|
|
|
|
"hair" INTEGER NOT NULL,
|
|
|
|
|
"beard" INTEGER NOT NULL,
|
|
|
|
|
"makeup" INTEGER NOT NULL,
|
|
|
|
|
"scar" INTEGER NOT NULL,
|
|
|
|
|
"eye_preset_no" INTEGER NOT NULL,
|
|
|
|
|
"nose_preset_no" INTEGER NOT NULL,
|
|
|
|
|
"mouth_preset_no" INTEGER NOT NULL,
|
|
|
|
|
"eyebrow_tex_no" INTEGER NOT NULL,
|
|
|
|
|
"color_skin" INTEGER NOT NULL,
|
|
|
|
|
"color_hair" INTEGER NOT NULL,
|
|
|
|
|
"color_beard" INTEGER NOT NULL,
|
|
|
|
|
"color_eyebrow" INTEGER NOT NULL,
|
|
|
|
|
"color_r_eye" INTEGER NOT NULL,
|
|
|
|
|
"color_l_eye" INTEGER NOT NULL,
|
|
|
|
|
"color_makeup" INTEGER NOT NULL,
|
|
|
|
|
"sokutobu" INTEGER NOT NULL,
|
|
|
|
|
"hitai" INTEGER NOT NULL,
|
|
|
|
|
"mimi_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"kannkaku" INTEGER NOT NULL,
|
|
|
|
|
"mabisasi_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"hanakuchi_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"ago_saki_haba" INTEGER NOT NULL,
|
|
|
|
|
"ago_zengo" INTEGER NOT NULL,
|
|
|
|
|
"ago_saki_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"hitomi_ookisa" INTEGER NOT NULL,
|
|
|
|
|
"me_ookisa" INTEGER NOT NULL,
|
|
|
|
|
"me_kaiten" INTEGER NOT NULL,
|
|
|
|
|
"mayu_kaiten" INTEGER NOT NULL,
|
|
|
|
|
"mimi_ookisa" INTEGER NOT NULL,
|
|
|
|
|
"mimi_muki" INTEGER NOT NULL,
|
|
|
|
|
"elf_mimi" INTEGER NOT NULL,
|
|
|
|
|
"miken_takasa" INTEGER NOT NULL,
|
|
|
|
|
"miken_haba" INTEGER NOT NULL,
|
|
|
|
|
"hohobone_ryou" INTEGER NOT NULL,
|
|
|
|
|
"hohobone_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"hohoniku" INTEGER NOT NULL,
|
|
|
|
|
"erahone_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"erahone_haba" INTEGER NOT NULL,
|
|
|
|
|
"hana_jyouge" INTEGER NOT NULL,
|
|
|
|
|
"hana_haba" INTEGER NOT NULL,
|
|
|
|
|
"hana_takasa" INTEGER NOT NULL,
|
|
|
|
|
"hana_kakudo" INTEGER NOT NULL,
|
|
|
|
|
"kuchi_haba" INTEGER NOT NULL,
|
|
|
|
|
"kuchi_atsusa" INTEGER NOT NULL,
|
|
|
|
|
"eyebrow_uv_offset_x" INTEGER NOT NULL,
|
|
|
|
|
"eyebrow_uv_offset_y" INTEGER NOT NULL,
|
|
|
|
|
"wrinkle" INTEGER NOT NULL,
|
|
|
|
|
"wrinkle_albedo_blend_rate" INTEGER NOT NULL,
|
|
|
|
|
"wrinkle_detail_normal_power" INTEGER NOT NULL,
|
|
|
|
|
"muscle_albedo_blend_rate" INTEGER NOT NULL,
|
|
|
|
|
"muscle_detail_normal_power" INTEGER NOT NULL,
|
|
|
|
|
"height" INTEGER NOT NULL,
|
|
|
|
|
"head_size" INTEGER NOT NULL,
|
|
|
|
|
"neck_offset" INTEGER NOT NULL,
|
|
|
|
|
"neck_scale" INTEGER NOT NULL,
|
|
|
|
|
"upper_body_scale_x" INTEGER NOT NULL,
|
|
|
|
|
"belly_size" INTEGER NOT NULL,
|
|
|
|
|
"teat_scale" INTEGER NOT NULL,
|
|
|
|
|
"tekubi_size" INTEGER NOT NULL,
|
|
|
|
|
"koshi_offset" INTEGER NOT NULL,
|
|
|
|
|
"koshi_size" INTEGER NOT NULL,
|
|
|
|
|
"ankle_offset" INTEGER NOT NULL,
|
|
|
|
|
"fat" INTEGER NOT NULL,
|
|
|
|
|
"muscle" INTEGER NOT NULL,
|
|
|
|
|
"motion_filter" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_edit_info_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-05 17:30:52 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_status_info"
|
2022-09-05 17:30:52 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"revive_point" SMALLINT NOT NULL,
|
2024-05-01 23:29:22 -04:00
|
|
|
"hp" INTEGER NOT NULL,
|
|
|
|
|
"white_hp" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_status_info_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-05 17:30:52 +02:00
|
|
|
);
|
2022-09-22 20:37:13 +08:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character_matching_profile"
|
2022-09-05 17:30:52 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"entry_job" SMALLINT NOT NULL,
|
|
|
|
|
"entry_job_level" INTEGER NOT NULL,
|
|
|
|
|
"current_job" SMALLINT NOT NULL,
|
|
|
|
|
"current_job_level" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
"objective_type1" INTEGER NOT NULL,
|
|
|
|
|
"objective_type2" INTEGER NOT NULL,
|
2023-09-23 00:06:03 +02:00
|
|
|
"play_style" INTEGER NOT NULL,
|
|
|
|
|
"comment" TEXT NOT NULL,
|
|
|
|
|
"is_join_party" BOOLEAN NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_character_matching_profile_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2022-09-05 17:30:52 +02:00
|
|
|
);
|
2022-09-22 20:37:13 +08:00
|
|
|
|
2025-06-28 22:21:03 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character_profile"
|
2022-09-05 17:30:52 +02:00
|
|
|
(
|
2025-06-28 22:21:03 -07:00
|
|
|
"character_common_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"background_id" SMALLINT NOT NULL,
|
|
|
|
|
"title_uid" INTEGER NOT NULL,
|
|
|
|
|
"title_index" INTEGER NOT NULL,
|
|
|
|
|
"motion_id" SMALLINT NOT NULL,
|
|
|
|
|
"motion_frame_no" INTEGER NOT NULL,
|
|
|
|
|
"comment" TEXT NOT NULL,
|
|
|
|
|
CONSTRAINT "fk_ddon_character_profile_character_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-01-18 15:28:26 +08:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character_job_data"
|
2022-09-02 21:15:48 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"exp" INTEGER NOT NULL,
|
|
|
|
|
"job_point" INTEGER NOT NULL,
|
|
|
|
|
"lv" INTEGER NOT NULL,
|
|
|
|
|
"atk" SMALLINT NOT NULL,
|
|
|
|
|
"def" SMALLINT NOT NULL,
|
|
|
|
|
"m_atk" SMALLINT NOT NULL,
|
|
|
|
|
"m_def" SMALLINT NOT NULL,
|
|
|
|
|
"strength" SMALLINT NOT NULL,
|
|
|
|
|
"down_power" SMALLINT NOT NULL,
|
|
|
|
|
"shake_power" SMALLINT NOT NULL,
|
|
|
|
|
"stun_power" SMALLINT NOT NULL,
|
|
|
|
|
"consitution" SMALLINT NOT NULL,
|
|
|
|
|
"guts" SMALLINT NOT NULL,
|
|
|
|
|
"fire_resist" SMALLINT NOT NULL,
|
|
|
|
|
"ice_resist" SMALLINT NOT NULL,
|
|
|
|
|
"thunder_resist" SMALLINT NOT NULL,
|
|
|
|
|
"holy_resist" SMALLINT NOT NULL,
|
|
|
|
|
"dark_resist" SMALLINT NOT NULL,
|
|
|
|
|
"spread_resist" SMALLINT NOT NULL,
|
|
|
|
|
"freeze_resist" SMALLINT NOT NULL,
|
|
|
|
|
"shock_resist" SMALLINT NOT NULL,
|
|
|
|
|
"absorb_resist" SMALLINT NOT NULL,
|
|
|
|
|
"dark_elm_resist" SMALLINT NOT NULL,
|
|
|
|
|
"poison_resist" SMALLINT NOT NULL,
|
|
|
|
|
"slow_resist" SMALLINT NOT NULL,
|
|
|
|
|
"sleep_resist" SMALLINT NOT NULL,
|
|
|
|
|
"stun_resist" SMALLINT NOT NULL,
|
|
|
|
|
"wet_resist" SMALLINT NOT NULL,
|
|
|
|
|
"oil_resist" SMALLINT NOT NULL,
|
|
|
|
|
"seal_resist" SMALLINT NOT NULL,
|
|
|
|
|
"curse_resist" SMALLINT NOT NULL,
|
|
|
|
|
"soft_resist" SMALLINT NOT NULL,
|
|
|
|
|
"stone_resist" SMALLINT NOT NULL,
|
|
|
|
|
"gold_resist" SMALLINT NOT NULL,
|
|
|
|
|
"fire_reduce_resist" SMALLINT NOT NULL,
|
|
|
|
|
"ice_reduce_resist" SMALLINT NOT NULL,
|
|
|
|
|
"thunder_reduce_resist" SMALLINT NOT NULL,
|
|
|
|
|
"holy_reduce_resist" SMALLINT NOT NULL,
|
|
|
|
|
"dark_reduce_resist" SMALLINT NOT NULL,
|
|
|
|
|
"atk_down_resist" SMALLINT NOT NULL,
|
|
|
|
|
"def_down_resist" SMALLINT NOT NULL,
|
|
|
|
|
"m_atk_down_resist" SMALLINT NOT NULL,
|
|
|
|
|
"m_def_down_resist" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_character_job_data" PRIMARY KEY ("character_common_id", "job"),
|
|
|
|
|
CONSTRAINT "fk_ddon_character_job_data_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-02 21:15:48 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS ddon_storage
|
2023-01-02 22:24:16 +01:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"storage_type" SMALLINT NOT NULL,
|
|
|
|
|
"slot_max" SMALLINT NOT NULL,
|
|
|
|
|
"item_sort" BLOB NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_storage" PRIMARY KEY ("character_id", "storage_type"),
|
|
|
|
|
CONSTRAINT "fk_ddon_storage_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-03-13 21:20:09 +01:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS ddon_wallet_point
|
2023-03-13 21:20:09 +01:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"type" SMALLINT NOT NULL,
|
|
|
|
|
"value" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_wallet_point" PRIMARY KEY ("character_id", "type"),
|
|
|
|
|
CONSTRAINT "fk_ddon_wallet_point_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-01-02 22:24:16 +01:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_storage_item"
|
2023-01-02 22:24:16 +01:00
|
|
|
(
|
2025-04-27 17:14:06 +02:00
|
|
|
"item_uid" TEXT PRIMARY KEY NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"storage_type" SMALLINT NOT NULL,
|
|
|
|
|
"slot_no" SMALLINT NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"item_num" INTEGER NOT NULL,
|
2024-10-18 22:48:08 -07:00
|
|
|
"safety" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
"color" SMALLINT NOT NULL,
|
|
|
|
|
"plus_value" SMALLINT NOT NULL,
|
|
|
|
|
"equip_points" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "uq_ddon_storage_item_character_id_storage_type_slot_no" UNIQUE ("character_id", "storage_type", "slot_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_storage_item_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-01-02 22:24:16 +01:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_equip_item"
|
2022-09-02 21:15:48 +02:00
|
|
|
(
|
2025-04-27 17:14:06 +02:00
|
|
|
"item_uid" TEXT NOT NULL,
|
2023-09-23 00:35:53 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"equip_type" SMALLINT NOT NULL,
|
|
|
|
|
"equip_slot" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_equip_item" PRIMARY KEY ("character_common_id", "job", "equip_type", "equip_slot"),
|
|
|
|
|
CONSTRAINT "fk_ddon_equip_item_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-02 21:15:48 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_equip_job_item"
|
2022-09-02 21:15:48 +02:00
|
|
|
(
|
2025-04-27 17:14:06 +02:00
|
|
|
"item_uid" TEXT NOT NULL,
|
2023-09-23 00:35:53 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"equip_slot" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_equip_job_item" PRIMARY KEY ("character_common_id", "job", "equip_slot"),
|
|
|
|
|
CONSTRAINT "fk_ddon_equip_job_item_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-02 23:56:54 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_normal_skill_param"
|
2022-09-04 15:00:04 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"skill_no" INTEGER NOT NULL,
|
|
|
|
|
"index" INTEGER NOT NULL,
|
|
|
|
|
"pre_skill_no" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_normal_skill_param" PRIMARY KEY ("character_common_id", "job", "skill_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_normal_skill_param_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-09-04 15:00:04 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_learned_custom_skill"
|
2023-06-07 21:03:49 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"skill_id" INTEGER NOT NULL,
|
|
|
|
|
"skill_lv" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_learned_custom_skill" PRIMARY KEY ("character_common_id", "job", "skill_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_learned_custom_skill_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2023-06-07 21:03:49 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_equipped_custom_skill"
|
2022-10-01 01:06:25 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"slot_no" SMALLINT NOT NULL,
|
|
|
|
|
"skill_id" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_equipped_custom_skill" PRIMARY KEY ("character_common_id", "job", "slot_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_equipped_custom_skill_character_common_id" FOREIGN KEY ("character_common_id", "job", "skill_id") REFERENCES "ddon_learned_custom_skill" ("character_common_id", "job", "skill_id") ON DELETE CASCADE
|
2023-06-07 21:03:49 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_learned_ability"
|
2023-06-07 21:03:49 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"ability_id" INTEGER NOT NULL,
|
|
|
|
|
"ability_lv" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_learned_ability" PRIMARY KEY ("character_common_id", "job", "ability_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_learned_ability_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2022-10-01 01:06:25 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_equipped_ability"
|
2022-10-01 01:06:25 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"equipped_to_job" SMALLINT NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"slot_no" SMALLINT NOT NULL,
|
|
|
|
|
"ability_id" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_equipped_ability" PRIMARY KEY ("character_common_id", "equipped_to_job", "slot_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_equipped_ability_character_common_id" FOREIGN KEY ("character_common_id", "job", "ability_id") REFERENCES "ddon_learned_ability" ("character_common_id", "job", "ability_id") ON DELETE CASCADE
|
2022-10-01 01:06:25 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_shortcut"
|
2022-10-04 00:32:47 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"page_no" INTEGER NOT NULL,
|
|
|
|
|
"button_no" INTEGER NOT NULL,
|
|
|
|
|
"shortcut_id" INTEGER NOT NULL,
|
|
|
|
|
u32_data INTEGER NOT NULL,
|
|
|
|
|
f32_data INTEGER NOT NULL,
|
|
|
|
|
"exex_type" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_shortcut" PRIMARY KEY ("character_id", "page_no", "button_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_shortcut_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2022-10-04 00:32:47 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_communication_shortcut"
|
2022-10-04 00:32:47 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"page_no" INTEGER NOT NULL,
|
|
|
|
|
"button_no" INTEGER NOT NULL,
|
|
|
|
|
"type" SMALLINT NOT NULL,
|
|
|
|
|
"category" SMALLINT NOT NULL,
|
|
|
|
|
"id" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_communication_shortcut" PRIMARY KEY ("character_id", "page_no", "button_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_communication_shortcut_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-04-29 22:12:55 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_pawn_reaction"
|
2023-04-29 22:12:55 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"reaction_type" SMALLINT NOT NULL,
|
|
|
|
|
"motion_no" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_pawn_reaction" PRIMARY KEY ("pawn_id", "reaction_type"),
|
|
|
|
|
CONSTRAINT "fk_ddon_pawn_reaction_pawn_id" FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
2023-04-29 22:12:55 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_sp_skill"
|
2023-04-29 22:12:55 +02:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"pawn_id" INTEGER NOT NULL,
|
2024-06-02 23:57:18 +02:00
|
|
|
"job" SMALLINT NOT NULL,
|
2023-09-23 00:06:03 +02:00
|
|
|
"sp_skill_id" SMALLINT NOT NULL,
|
|
|
|
|
"sp_skill_lv" SMALLINT NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_sp_skill" PRIMARY KEY ("pawn_id", "job", "sp_skill_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_sp_skill_pawn_id" FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
2022-10-04 00:32:47 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_released_warp_point"
|
2023-10-13 17:52:06 +02:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"warp_point_id" INTEGER NOT NULL,
|
|
|
|
|
"favorite_slot_no" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_released_warp_point" PRIMARY KEY ("character_id", "warp_point_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_released_warp_point_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2023-10-16 16:00:35 +02:00
|
|
|
);
|
2023-10-13 17:52:06 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_game_token"
|
2022-01-18 15:28:26 +08:00
|
|
|
(
|
2023-09-23 00:06:03 +02:00
|
|
|
"account_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"token" TEXT NOT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "uq_ddon_game_token_token" UNIQUE ("token"),
|
|
|
|
|
CONSTRAINT "fk_ddon_game_token_account_id" FOREIGN KEY ("account_id") REFERENCES "account" ("id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_game_token_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id")
|
2022-09-22 20:37:13 +08:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_connection"
|
2022-09-22 20:37:13 +08:00
|
|
|
(
|
2026-04-30 21:28:52 -07:00
|
|
|
"server_id" INTEGER NOT NULL,
|
|
|
|
|
"account_id" INTEGER NOT NULL,
|
|
|
|
|
"type" INTEGER NOT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL,
|
|
|
|
|
"character_id" INTEGER,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "uq_ddon_connection_server_id_account_id" UNIQUE ("server_id", "account_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_connection_token_account_id" FOREIGN KEY ("account_id") REFERENCES "account" ("id") ON DELETE CASCADE
|
2023-09-23 00:06:03 +02:00
|
|
|
);
|
2024-04-27 15:44:19 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_dragon_force_augmentation"
|
2024-04-23 01:32:35 -04:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"element_id" INTEGER NOT NULL,
|
|
|
|
|
"page_no" INTEGER NOT NULL,
|
|
|
|
|
"group_no" INTEGER NOT NULL,
|
|
|
|
|
"index_no" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_dragon_force_augmentation" PRIMARY KEY ("character_common_id", "element_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_dragon_force_augmentation_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2024-04-23 01:32:35 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_orb_gain_extend_param"
|
2024-04-23 01:32:35 -04:00
|
|
|
(
|
2024-08-18 21:08:59 +02:00
|
|
|
"character_common_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"hp_max" INTEGER NOT NULL,
|
|
|
|
|
"stamina_max" INTEGER NOT NULL,
|
|
|
|
|
"physical_attack" INTEGER NOT NULL,
|
|
|
|
|
"physical_defence" INTEGER NOT NULL,
|
|
|
|
|
"magic_attack" INTEGER NOT NULL,
|
|
|
|
|
"magic_defence" INTEGER NOT NULL,
|
|
|
|
|
"ability_cost" INTEGER NOT NULL,
|
|
|
|
|
"jewelry_slot" INTEGER NOT NULL,
|
|
|
|
|
"use_item_slot" INTEGER NOT NULL,
|
|
|
|
|
"material_item_slot" INTEGER NOT NULL,
|
|
|
|
|
"equip_item_slot" INTEGER NOT NULL,
|
|
|
|
|
"main_pawn_slot" INTEGER NOT NULL,
|
|
|
|
|
"support_pawn_slot" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "fk_ddon_orb_gain_extend_param_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_unlocked_secret_ability"
|
2024-04-23 01:32:35 -04:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"ability_id" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_unlocked_secret_ability" PRIMARY KEY ("character_common_id", "ability_id"),
|
|
|
|
|
CONSTRAINT "fk_unlocked_secret_ability_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2024-04-23 01:32:35 -04:00
|
|
|
);
|
2024-04-28 18:58:08 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_contact_list"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
|
"requester_character_id" INTEGER NOT NULL,
|
|
|
|
|
"requested_character_id" INTEGER NOT NULL,
|
|
|
|
|
"status" SMALLINT NOT NULL,
|
|
|
|
|
"type" SMALLINT NOT NULL,
|
|
|
|
|
"requester_favorite" BOOLEAN NOT NULL,
|
|
|
|
|
"requested_favorite" BOOLEAN NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_contact_list_requester_character_id" FOREIGN KEY ("requester_character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_contact_list_requested_character_id" FOREIGN KEY ("requested_character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE,
|
2025-04-12 17:01:55 +02:00
|
|
|
CONSTRAINT "uq_ddon_contact_list_requester_character_id_requested_char_id" UNIQUE ("requester_character_id", "requested_character_id")
|
2024-04-28 18:58:08 -04:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_contact_list_requester_character_id" ON "ddon_contact_list" ("requester_character_id");
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_contact_list_requested_character_id" ON "ddon_contact_list" ("requested_character_id");
|
2024-05-31 18:53:26 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bazaar_exhibition"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
2024-05-31 18:53:26 +02:00
|
|
|
"bazaar_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"sequence" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"num" INTEGER NOT NULL,
|
|
|
|
|
"price" INTEGER NOT NULL,
|
|
|
|
|
"exhibition_time" DATETIME NOT NULL,
|
|
|
|
|
"state" SMALLINT NOT NULL,
|
|
|
|
|
"proceeds" INTEGER NOT NULL,
|
|
|
|
|
"expire" DATETIME NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_bazaar_exhibition_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_bazaar_exhibition_all_filter" ON "ddon_bazaar_exhibition" ("item_id", "state", "expire", "character_id", "price");
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_bazaar_exhibition_state_expire" ON "ddon_bazaar_exhibition" ("state", "expire");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_reward_box"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"uniq_reward_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
2024-10-08 21:25:12 -04:00
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
2024-08-11 20:42:14 +02:00
|
|
|
"num_random_rewards" INTEGER NOT NULL,
|
|
|
|
|
"random_reward0_index" INTEGER NOT NULL,
|
|
|
|
|
"random_reward1_index" INTEGER NOT NULL,
|
|
|
|
|
"random_reward2_index" INTEGER NOT NULL,
|
|
|
|
|
"random_reward3_index" INTEGER NOT NULL,
|
2026-04-05 14:46:19 -04:00
|
|
|
"is_repeat_reward" INTEGER NOT NULL DEFAULT 0,
|
2026-05-03 11:00:14 -04:00
|
|
|
"reward_flags" INTEGER NOT NULL DEFAULT 0,
|
2024-08-11 20:42:14 +02:00
|
|
|
CONSTRAINT "fk_ddon_reward_box_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_reward_box_character_common_id" ON "ddon_reward_box" ("character_common_id");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2026-05-03 11:00:14 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_reward_box_item"
|
|
|
|
|
(
|
|
|
|
|
"reward_box_item_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"uniq_reward_id" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"num" INTEGER NOT NULL,
|
|
|
|
|
"uid" TEXT NOT NULL,
|
|
|
|
|
"type" INTEGER NOT NULL,
|
|
|
|
|
"is_charge" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"is_help" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"select_group_id" INTEGER NOT NULL DEFAULT 0,
|
2026-05-03 14:17:35 -04:00
|
|
|
"is_instance" INTEGER NOT NULL DEFAULT 0,
|
2026-05-03 11:00:14 -04:00
|
|
|
CONSTRAINT "fk_ddon_reward_box_item_uniq_reward_id" FOREIGN KEY ("uniq_reward_id") REFERENCES "ddon_reward_box" ("uniq_reward_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_reward_box_item_uniq_reward_id" ON "ddon_reward_box_item" ("uniq_reward_id");
|
|
|
|
|
|
2026-05-03 14:17:35 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_reward_staged_item"
|
|
|
|
|
(
|
|
|
|
|
"uid" TEXT PRIMARY KEY NOT NULL,
|
|
|
|
|
"reward_box_item_id" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"num" INTEGER NOT NULL DEFAULT 1,
|
|
|
|
|
"color" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"plus_value" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"safety_setting" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "fk_reward_staged_item_reward_box_item_id"
|
|
|
|
|
FOREIGN KEY ("reward_box_item_id")
|
|
|
|
|
REFERENCES "ddon_reward_box_item" ("reward_box_item_id")
|
|
|
|
|
ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_reward_staged_item_reward_box_item_id" ON "ddon_reward_staged_item" ("reward_box_item_id");
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_reward_staged_item_crest"
|
|
|
|
|
(
|
|
|
|
|
"uid" TEXT NOT NULL,
|
|
|
|
|
"slot" INTEGER NOT NULL,
|
|
|
|
|
"crest_id" INTEGER NOT NULL,
|
2026-05-03 21:12:40 -04:00
|
|
|
"level" INTEGER NOT NULL DEFAULT 0,
|
2026-05-03 14:17:35 -04:00
|
|
|
CONSTRAINT "pk_reward_staged_item_crest" PRIMARY KEY ("uid", "slot"),
|
|
|
|
|
CONSTRAINT "fk_reward_staged_item_crest_uid"
|
|
|
|
|
FOREIGN KEY ("uid")
|
|
|
|
|
REFERENCES "ddon_reward_staged_item" ("uid")
|
|
|
|
|
ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_quest_progress"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_type" INTEGER NOT NULL,
|
2024-10-08 21:25:12 -04:00
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
2024-08-11 20:42:14 +02:00
|
|
|
"step" INTEGER NOT NULL,
|
2026-03-25 00:09:21 -04:00
|
|
|
CONSTRAINT "pk_ddon_quest_progress" PRIMARY KEY ("character_common_id", "quest_schedule_id"),
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_quest_progress_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_quest_progress_character_common_id" ON "ddon_quest_progress" ("character_common_id");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2026-05-03 22:44:36 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_quest_delivery_progress"
|
|
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"amount_delivered" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "pk_ddon_quest_delivery_progress" PRIMARY KEY ("character_common_id", "quest_schedule_id", "item_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_quest_delivery_progress_quest_progress"
|
|
|
|
|
FOREIGN KEY ("character_common_id", "quest_schedule_id")
|
|
|
|
|
REFERENCES "ddon_quest_progress" ("character_common_id", "quest_schedule_id")
|
|
|
|
|
ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_completed_quests"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_type" INTEGER NOT NULL,
|
|
|
|
|
"quest_id" INTEGER NOT NULL,
|
|
|
|
|
"clear_count" INTEGER NOT NULL DEFAULT 0,
|
2025-04-25 19:42:51 -04:00
|
|
|
CONSTRAINT "pk_ddon_completed_quests" PRIMARY KEY ("character_common_id", "quest_id"),
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_completed_quests_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_completed_quests_character_common_id_type" ON "ddon_completed_quests" ("character_common_id", "quest_type");
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_completed_quests_character_common_id_quest_id" ON "ddon_completed_quests" ("character_common_id", "quest_id");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_priority_quests"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
2024-10-08 21:25:12 -04:00
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
2026-03-25 00:09:21 -04:00
|
|
|
CONSTRAINT "fk_priority_to_progress" FOREIGN KEY ("character_common_id", "quest_schedule_id") REFERENCES "ddon_quest_progress" ("character_common_id", "quest_schedule_id") ON DELETE CASCADE,
|
2025-04-17 00:54:27 +02:00
|
|
|
CONSTRAINT "fk_ddon_priority_quests_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "uq_character_common_id_quest_schedule_id" UNIQUE ("character_common_id", "quest_schedule_id")
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
|
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_mail"
|
|
|
|
|
(
|
|
|
|
|
"message_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"message_state" INTEGER NOT NULL,
|
|
|
|
|
"sender_id" INTEGER NOT NULL,
|
|
|
|
|
"message_title" VARCHAR(256) NOT NULL DEFAULT '',
|
|
|
|
|
"message_body" VARCHAR(2048) NOT NULL DEFAULT '',
|
|
|
|
|
"send_date" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "fk_ddon_mail_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_mail_character_id" ON "ddon_mail" ("character_id");
|
|
|
|
|
|
2026-05-03 11:00:14 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_quest_period_first_clear"
|
2026-04-05 14:46:19 -04:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
2026-05-03 11:00:14 -04:00
|
|
|
"quest_type" INTEGER NOT NULL,
|
2026-04-05 14:46:19 -04:00
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
2026-05-03 11:00:14 -04:00
|
|
|
CONSTRAINT "pk_ddon_quest_period_first_clear" PRIMARY KEY ("character_common_id", "quest_type", "quest_schedule_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_quest_period_first_clear_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2026-04-05 14:46:19 -04:00
|
|
|
);
|
2026-05-03 11:00:14 -04:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_quest_period_first_clear_quest_type" ON "ddon_quest_period_first_clear" ("quest_type");
|
2026-04-05 14:46:19 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_system_mail"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
2024-08-18 21:08:59 +02:00
|
|
|
"message_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"message_state" INTEGER NOT NULL,
|
|
|
|
|
"sender_name" VARCHAR(256) NOT NULL DEFAULT '',
|
|
|
|
|
"message_title" VARCHAR(256) NOT NULL DEFAULT '',
|
|
|
|
|
"message_body" VARCHAR(2048) NOT NULL DEFAULT '',
|
|
|
|
|
"send_date" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "fk_ddon_system_mail_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_system_mail_character_id" ON "ddon_system_mail" ("character_id");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_system_mail_attachment"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
2024-08-18 21:08:59 +02:00
|
|
|
"attachment_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"message_id" INTEGER NOT NULL,
|
|
|
|
|
"attachment_type" INTEGER NOT NULL,
|
2024-11-27 22:28:19 -05:00
|
|
|
"is_received" BOOLEAN NOT NULL DEFAULT FALSE,
|
2024-08-18 21:08:59 +02:00
|
|
|
"param0" VARCHAR(256) NOT NULL DEFAULT '',
|
|
|
|
|
"param1" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"param2" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"param3" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "fk_ddon_system_mail_attachment_message_id" FOREIGN KEY ("message_id") REFERENCES "ddon_system_mail" ("message_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_system_mail_attachment_message_id" ON "ddon_system_mail_attachment" ("message_id");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_character_playpoint_data"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"job" SMALLINT NOT NULL,
|
|
|
|
|
"play_point" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"exp_mode" TINYINT NOT NULL DEFAULT 1,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_character_playpoint_data" PRIMARY KEY ("character_id", "job"),
|
|
|
|
|
CONSTRAINT "fk_ddon_character_playpoint_data_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-07-28 17:56:19 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_stamp_bonus"
|
2024-07-28 17:56:19 -07:00
|
|
|
(
|
2024-08-11 20:42:14 +02:00
|
|
|
"character_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"consecutive_stamp" INTEGER NOT NULL,
|
|
|
|
|
"total_stamp" INTEGER NOT NULL,
|
2026-04-18 01:27:57 -07:00
|
|
|
"can_stamp" BOOLEAN NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_stamp_bonus_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-02 21:39:03 -07:00
|
|
|
);
|
2024-07-16 23:08:18 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_crests"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_common_id" INTEGER NOT NULL,
|
2025-04-27 17:14:06 +02:00
|
|
|
"item_uid" TEXT NOT NULL,
|
2024-08-11 20:42:14 +02:00
|
|
|
"slot" INTEGER NOT NULL,
|
|
|
|
|
"crest_id" INTEGER NOT NULL,
|
|
|
|
|
"crest_amount" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_crests_item_uid" FOREIGN KEY ("item_uid") REFERENCES "ddon_storage_item" ("item_uid") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_crests_character_common_id" FOREIGN KEY ("character_common_id") REFERENCES "ddon_character_common" ("character_common_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_crests_item_uid" ON "ddon_crests" ("item_uid");
|
|
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_crests_character_item" ON "ddon_crests" ("character_common_id", "item_uid");
|
2024-08-11 20:42:14 +02:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_preset_ability"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"preset_no" INTEGER NOT NULL,
|
|
|
|
|
"preset_name" TEXT,
|
|
|
|
|
"ability_1" INTEGER,
|
|
|
|
|
"ability_2" INTEGER,
|
|
|
|
|
"ability_3" INTEGER,
|
|
|
|
|
"ability_4" INTEGER,
|
|
|
|
|
"ability_5" INTEGER,
|
|
|
|
|
"ability_6" INTEGER,
|
|
|
|
|
"ability_7" INTEGER,
|
|
|
|
|
"ability_8" INTEGER,
|
|
|
|
|
"ability_9" INTEGER,
|
|
|
|
|
"ability_10" INTEGER,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "pk_ddon_preset_ability" PRIMARY KEY ("character_id", "preset_no"),
|
|
|
|
|
CONSTRAINT "fk_ddon_preset_ability_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_pawn_craft_progress"
|
2024-08-11 20:42:14 +02:00
|
|
|
(
|
|
|
|
|
"craft_character_id" INTEGER NOT NULL,
|
|
|
|
|
"craft_lead_pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"craft_support_pawn_id1" INTEGER NOT NULL,
|
|
|
|
|
"craft_support_pawn_id2" INTEGER NOT NULL,
|
|
|
|
|
"craft_support_pawn_id3" INTEGER NOT NULL,
|
|
|
|
|
|
|
|
|
|
"recipe_id" INTEGER NOT NULL,
|
|
|
|
|
"exp" INTEGER NOT NULL,
|
|
|
|
|
"npc_action_id" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"unk0" INTEGER NOT NULL,
|
2026-03-15 14:36:44 +01:00
|
|
|
"finish_at" INTEGER NOT NULL,
|
2024-08-11 20:42:14 +02:00
|
|
|
"exp_bonus" BOOLEAN NOT NULL,
|
|
|
|
|
"create_count" INTEGER NOT NULL,
|
|
|
|
|
|
|
|
|
|
"plus_value" INTEGER NOT NULL,
|
|
|
|
|
"great_success" BOOLEAN NOT NULL,
|
|
|
|
|
"bonus_exp" INTEGER NOT NULL,
|
|
|
|
|
"additional_quantity" INTEGER NOT NULL,
|
2024-08-18 21:08:59 +02:00
|
|
|
CONSTRAINT "fk_ddon_pawn_craft_progress_craft_character_id" FOREIGN KEY ("craft_character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_pawn_craft_progress_craft_lead_pawn_id" FOREIGN KEY ("craft_lead_pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
2024-08-11 20:42:14 +02:00
|
|
|
);
|
2024-08-10 15:17:30 -07:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_binary_data"
|
2024-08-10 15:17:30 -07:00
|
|
|
(
|
2024-08-18 21:08:59 +02:00
|
|
|
"character_id" INTEGER PRIMARY KEY NOT NULL,
|
|
|
|
|
"binary_data" BLOB NOT NULL,
|
|
|
|
|
CONSTRAINT "fk_ddon_binary_data_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-17 21:43:16 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_character_map"
|
2024-08-23 23:47:29 +02:00
|
|
|
(
|
2024-08-20 11:38:10 -04:00
|
|
|
"character_id" INTEGER PRIMARY KEY NOT NULL,
|
2024-08-23 23:47:29 +02:00
|
|
|
"bbm_character_id" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "fk_ddon_bbm_character_map_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-17 21:43:16 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_progress"
|
2024-08-23 23:47:29 +02:00
|
|
|
(
|
2024-08-20 11:38:10 -04:00
|
|
|
"character_id" INTEGER PRIMARY KEY NOT NULL,
|
2024-08-23 23:47:29 +02:00
|
|
|
"start_time" INTEGER NOT NULL,
|
|
|
|
|
"content_id" INTEGER NOT NULL,
|
|
|
|
|
"content_mode" INTEGER NOT NULL,
|
|
|
|
|
"tier" INTEGER NOT NULL,
|
|
|
|
|
"killed_death" BOOLEAN NOT NULL,
|
|
|
|
|
"last_ticket_time" INTEGER NOT NULL,
|
2026-07-04 10:01:26 -04:00
|
|
|
"is_paid_reset" BOOLEAN NOT NULL DEFAULT 0,
|
2024-08-23 23:47:29 +02:00
|
|
|
CONSTRAINT "fk_ddon_bbm_progress_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-17 21:43:16 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_rewards"
|
2024-08-23 23:47:29 +02:00
|
|
|
(
|
2025-08-24 22:57:11 -07:00
|
|
|
"character_id" INTEGER NOT NULL,
|
2024-08-23 23:47:29 +02:00
|
|
|
"gold_marks" INTEGER NOT NULL,
|
|
|
|
|
"silver_marks" INTEGER NOT NULL,
|
|
|
|
|
"red_marks" INTEGER NOT NULL,
|
2025-08-24 22:57:11 -07:00
|
|
|
"stage_id" INTEGER NOT NULL,
|
2025-09-03 20:23:48 -07:00
|
|
|
CONSTRAINT "pk_ddon_bbm_rewards" PRIMARY KEY ("character_id", "stage_id"),
|
2024-08-23 23:47:29 +02:00
|
|
|
CONSTRAINT "fk_ddon_bbm_rewards_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-17 21:43:16 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_content_treasure"
|
2024-08-23 23:47:29 +02:00
|
|
|
(
|
2025-08-24 22:57:11 -07:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"stage_id" INTEGER NOT NULL,
|
|
|
|
|
"group_id" INTEGER NOT NULL,
|
|
|
|
|
"index" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_bbm_content_treasure" PRIMARY KEY ("character_id", "stage_id", "group_id", "index"),
|
2024-08-23 23:47:29 +02:00
|
|
|
CONSTRAINT "fk_ddon_bbm_content_treasure_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-08-20 11:38:10 -04:00
|
|
|
);
|
2024-09-16 23:15:31 -07:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_clan_param"
|
|
|
|
|
(
|
|
|
|
|
"clan_id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
|
|
|
"clan_level" INTEGER NOT NULL,
|
|
|
|
|
"member_num" INTEGER NOT NULL,
|
|
|
|
|
"master_id" INTEGER NOT NULL,
|
|
|
|
|
"system_restriction" BOOLEAN NOT NULL,
|
|
|
|
|
"is_base_release" BOOLEAN NOT NULL,
|
|
|
|
|
"can_base_release" BOOLEAN NOT NULL,
|
|
|
|
|
"total_clan_point" INTEGER NOT NULL,
|
|
|
|
|
"money_clan_point" INTEGER NOT NULL,
|
|
|
|
|
"name" TEXT NOT NULL,
|
|
|
|
|
"short_name" TEXT NOT NULL,
|
|
|
|
|
"emblem_mark_type" SMALLINT NOT NULL,
|
|
|
|
|
"emblem_base_type" SMALLINT NOT NULL,
|
|
|
|
|
"emblem_main_color" SMALLINT NOT NULL,
|
|
|
|
|
"emblem_sub_color" SMALLINT NOT NULL,
|
|
|
|
|
"motto" INTEGER NOT NULL,
|
|
|
|
|
"active_days" INTEGER NOT NULL,
|
|
|
|
|
"active_time" INTEGER NOT NULL,
|
|
|
|
|
"characteristic" INTEGER NOT NULL,
|
|
|
|
|
"is_publish" BOOLEAN NOT NULL,
|
|
|
|
|
"comment" TEXT NOT NULL,
|
|
|
|
|
"board_message" TEXT NOT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_clan_membership"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"clan_id" INTEGER NOT NULL,
|
|
|
|
|
"rank" INTEGER NOT NULL,
|
|
|
|
|
"permission" INTEGER NOT NULL,
|
|
|
|
|
"created" DATETIME NOT NULL,
|
2024-10-02 22:02:50 -07:00
|
|
|
CONSTRAINT "pk_ddon_clan_membership" PRIMARY KEY ("character_id", "clan_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_clan_membership_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_clan_membership_clan_id" FOREIGN KEY ("clan_id") REFERENCES "ddon_clan_param" ("clan_id") ON DELETE CASCADE
|
2024-09-16 23:15:31 -07:00
|
|
|
);
|
2024-11-14 01:41:57 -08:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_clan_shop_purchases"
|
2024-11-14 01:41:57 -08:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"clan_id" INTEGER NOT NULL,
|
|
|
|
|
"lineup_id" INTEGER NOT NULL,
|
2024-11-14 01:41:57 -08:00
|
|
|
CONSTRAINT "pk_ddon_clan_shop_purchases" PRIMARY KEY ("clan_id", "lineup_id"),
|
|
|
|
|
CONSTRAINT "fl_ddon_clan_shop_purchases_clan_id" FOREIGN KEY ("clan_id") REFERENCES "ddon_clan_param" ("clan_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_clan_base_customization"
|
2024-11-14 01:41:57 -08:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"clan_id" INTEGER NOT NULL,
|
|
|
|
|
"type" INTEGER NOT NULL,
|
|
|
|
|
"furniture_id" INTEGER NOT NULL,
|
2024-11-14 01:41:57 -08:00
|
|
|
CONSTRAINT "pk_ddon_clan_base_customization" PRIMARY KEY ("clan_id", "type"),
|
|
|
|
|
CONSTRAINT "fl_ddon_clan_base_customization_clan_id" FOREIGN KEY ("clan_id") REFERENCES "ddon_clan_param" ("clan_id") ON DELETE CASCADE
|
2024-12-12 09:50:13 -05:00
|
|
|
);
|
2024-11-24 18:50:58 -05:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_epitaph_road_unlocks"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"epitaph_id" INTEGER NOT NULL,
|
2024-11-24 18:50:58 -05:00
|
|
|
CONSTRAINT "pk_ddon_epitaph_road_unlocks" PRIMARY KEY ("character_id", "epitaph_id"),
|
2025-04-20 22:38:19 +02:00
|
|
|
CONSTRAINT "fk_ddon_epitaph_road_unlocks_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-11-24 18:50:58 -05:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_epitaph_claimed_weekly_rewards"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"epitaph_id" INTEGER NOT NULL,
|
2024-11-24 18:50:58 -05:00
|
|
|
CONSTRAINT "pk_ddon_epitaph_claimed_weekly_rewards" PRIMARY KEY ("character_id", "epitaph_id"),
|
2025-04-20 22:38:19 +02:00
|
|
|
CONSTRAINT "fk_ddon_epitaph_claimed_weekly_rewards_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-11-14 01:41:57 -08:00
|
|
|
);
|
2024-12-06 20:00:09 -05:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_area_rank"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"area_id" INTEGER NOT NULL,
|
|
|
|
|
"rank" INTEGER NOT NULL,
|
|
|
|
|
"point" INTEGER NOT NULL,
|
|
|
|
|
"week_point" INTEGER NOT NULL,
|
|
|
|
|
"last_week_point" INTEGER NOT NULL,
|
2024-12-26 23:22:13 -08:00
|
|
|
CONSTRAINT "pk_ddon_area_rank" PRIMARY KEY ("character_id", "area_id"),
|
2025-04-20 22:38:19 +02:00
|
|
|
CONSTRAINT "fk_ddon_area_rank_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-12-26 23:22:13 -08:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_area_rank_supply"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"area_id" INTEGER NOT NULL,
|
|
|
|
|
"index" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"num" INTEGER NOT NULL,
|
2024-12-26 23:22:13 -08:00
|
|
|
CONSTRAINT "pk_ddon_area_rank_supply" PRIMARY KEY ("character_id", "area_id", "index"),
|
2025-04-20 22:38:19 +02:00
|
|
|
CONSTRAINT "fk_ddon_area_rank_supply_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2024-12-26 23:22:13 -08:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
INSERT INTO "ddon_schedule_next" ("type", "timestamp")
|
|
|
|
|
VALUES (4, 0);
|
2025-02-14 22:23:31 -08:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_rank_record"
|
2025-02-14 22:23:31 -08:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"record_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_id" INTEGER NOT NULL,
|
|
|
|
|
"score" INTEGER NOT NULL,
|
|
|
|
|
"date" DATETIME NOT NULL,
|
|
|
|
|
CONSTRAINT "fk_ddon_rank_record_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-02-14 22:23:31 -08:00
|
|
|
);
|
2025-03-11 11:58:00 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_partner_pawn"
|
2025-03-11 11:58:00 -04:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"num_gifts" INTEGER NOT NULL,
|
|
|
|
|
"num_crafts" INTEGER NOT NULL,
|
2025-03-11 11:58:00 -04:00
|
|
|
"num_adventures" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_partner_pawn" PRIMARY KEY ("character_id", "pawn_id"),
|
|
|
|
|
CONSTRAINT "fk_ddonpartner_pawn_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-11 11:58:00 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_partner_pawn_last_affection_increase"
|
2025-03-11 11:58:00 -04:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"action" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_partner_pawn_last_affection_increase" PRIMARY KEY ("character_id", "pawn_id", "action"),
|
|
|
|
|
CONSTRAINT "fk_ddon_partner_pawn_affection_increase_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-11 11:58:00 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_partner_pawn_pending_rewards"
|
2025-03-11 11:58:00 -04:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
"pawn_id" INTEGER NOT NULL,
|
2025-03-11 11:58:00 -04:00
|
|
|
"reward_level" INTEGER NOT NULL,
|
2026-03-17 16:16:43 +01:00
|
|
|
CONSTRAINT "pk_ddon_partner_pawn_pending_rewards" PRIMARY KEY ("character_id", "pawn_id", "reward_level"),
|
2026-03-18 23:15:44 +01:00
|
|
|
CONSTRAINT "fk_ddon_partner_pawn_pending_rewards_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE,
|
2026-03-18 23:12:03 +01:00
|
|
|
CONSTRAINT "fk_ddon_partner_pawn_pending_rewards_pawn_id" FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
2025-03-11 11:58:00 -04:00
|
|
|
);
|
2025-03-23 23:32:51 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_achievement_progress"
|
2025-03-16 18:55:35 -07:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"achievement_type" INTEGER NOT NULL,
|
|
|
|
|
"achievement_param" INTEGER NOT NULL,
|
|
|
|
|
"progress" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_achievement_progress" PRIMARY KEY ("character_id", "achievement_type", "achievement_param"),
|
|
|
|
|
CONSTRAINT "fk_ddon_achievement_progress_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-16 18:55:35 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_achievement"
|
2025-03-16 18:55:35 -07:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"achievement_id" INTEGER NOT NULL,
|
|
|
|
|
"date" DATETIME NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_achievement" PRIMARY KEY ("character_id", "achievement_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_achievement_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-16 18:55:35 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_achievement_unique_crafts"
|
2025-03-16 18:55:35 -07:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
|
|
|
|
"craft_type" TINYINT NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_achievement_unique_crafts" PRIMARY KEY ("character_id", "item_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_achievement_unique_crafts_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-16 18:55:35 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_unlocked_items"
|
2025-04-02 21:49:18 -07:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"category" INTEGER NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_unlocked_items" PRIMARY KEY ("character_id", "category", "item_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_unlocked_items_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-04-02 21:49:18 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_myroom_customization"
|
2025-04-05 03:43:04 -07:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"layout_id" TINYINT NOT NULL,
|
|
|
|
|
"item_id" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_myroom_customization" PRIMARY KEY ("character_id", "layout_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_myroom_customization_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-04-05 03:43:04 -07:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_recycle_equipment"
|
2025-03-23 23:32:51 -04:00
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"num_attempts" INTEGER NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_recycle_equipment" PRIMARY KEY ("character_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_recycle_equipment_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-23 23:32:51 -04:00
|
|
|
);
|
2025-03-27 00:17:22 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_equipment_limit_break"
|
2025-03-27 00:17:22 -04:00
|
|
|
(
|
2025-04-20 22:38:19 +02:00
|
|
|
"character_id" INTEGER NOT NULL,
|
2025-08-03 20:46:37 -07:00
|
|
|
"item_uid" TEXT NOT NULL,
|
|
|
|
|
"effect_id" INTEGER NOT NULL,
|
|
|
|
|
"unk1" INTEGER NOT NULL,
|
2025-08-25 21:18:16 -07:00
|
|
|
"effect_type" SMALLINT NOT NULL,
|
|
|
|
|
"unk0" SMALLINT NOT NULL,
|
2025-08-03 20:46:37 -07:00
|
|
|
CONSTRAINT "pk_ddon_equipment_limit_break" PRIMARY KEY ("character_id", "item_uid", "effect_type"),
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "fk_ddon_equipment_limit_break_item_uid" FOREIGN KEY ("item_uid") REFERENCES "ddon_storage_item" ("item_uid") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_equipment_limit_break_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-03-27 00:17:22 -04:00
|
|
|
);
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE INDEX IF NOT EXISTS "idx_ddon_equipment_limit_break_item_uid" ON "ddon_equipment_limit_break" ("item_uid");
|
2025-04-03 00:31:27 -04:00
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_job_master_released_elements"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"job_id" INTEGER NOT NULL,
|
2025-04-03 00:31:27 -04:00
|
|
|
"release_type" INTEGER NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
"release_id" INTEGER NOT NULL,
|
2025-04-03 00:31:27 -04:00
|
|
|
"release_level" INTEGER NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
CONSTRAINT "pk_ddon_job_master_released_elements" PRIMARY KEY ("character_id", "job_id", "release_type",
|
|
|
|
|
"release_id", "release_level"),
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "fk_ddon_job_master_released_elements_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-04-03 00:31:27 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_job_master_active_orders"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"job_id" INTEGER NOT NULL,
|
|
|
|
|
"release_type" INTEGER NOT NULL,
|
|
|
|
|
"release_id" INTEGER NOT NULL,
|
|
|
|
|
"release_level" INTEGER NOT NULL,
|
2025-04-03 00:31:27 -04:00
|
|
|
"order_accepted" BOOLEAN NOT NULL,
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "pk_ddon_job_master_active_orders" PRIMARY KEY ("character_id", "job_id", "release_type", "release_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_job_master_active_orders_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-04-03 00:31:27 -04:00
|
|
|
);
|
|
|
|
|
|
2025-04-20 22:38:19 +02:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_job_master_active_orders_progress"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"job_id" INTEGER NOT NULL,
|
|
|
|
|
"release_type" INTEGER NOT NULL,
|
|
|
|
|
"release_id" INTEGER NOT NULL,
|
|
|
|
|
"target_id" INTEGER NOT NULL,
|
2025-04-27 22:38:54 +02:00
|
|
|
"condition" INTEGER NOT NULL,
|
2025-04-20 22:38:19 +02:00
|
|
|
"target_rank" INTEGER NOT NULL,
|
|
|
|
|
"target_num" INTEGER NOT NULL,
|
|
|
|
|
"current_num" INTEGER NOT NULL,
|
2026-05-09 14:12:14 -04:00
|
|
|
CONSTRAINT "pk_ddon_job_master_active_orders_progress" PRIMARY KEY ("character_id", "job_id", "release_type", "release_id", "condition", "target_id", "target_rank"),
|
2025-04-18 16:58:42 +02:00
|
|
|
CONSTRAINT "fk_ddon_job_master_active_orders_progress" FOREIGN KEY ("character_id", "job_id", "release_type", "release_id") REFERENCES "ddon_job_master_active_orders" ("character_id", "job_id", "release_type", "release_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT "fk_ddon_job_master_active_orders_progress_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-04-03 00:31:27 -04:00
|
|
|
);
|
2024-08-26 18:41:49 -04:00
|
|
|
|
2025-06-09 01:11:59 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS ddon_skill_augmentation_released_elements (
|
2024-08-26 18:41:49 -04:00
|
|
|
"character_id" INTEGER NOT NULL,
|
2025-06-09 01:11:59 -04:00
|
|
|
"orb_tree_type" INTEGER NOT NULL,
|
2024-08-26 18:41:49 -04:00
|
|
|
"job_id" INTEGER NOT NULL,
|
|
|
|
|
"release_id" INTEGER NOT NULL,
|
2025-06-09 01:11:59 -04:00
|
|
|
CONSTRAINT pk_ddon_skill_augmentation_released_elements PRIMARY KEY ("character_id", "orb_tree_type", "job_id", "release_id"),
|
2024-08-26 18:41:49 -04:00
|
|
|
CONSTRAINT fk_ddon_skill_augmentation_released_elements_character_id FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2024-08-23 16:49:44 -04:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_job_emblem" (
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"job_id" INTEGER NOT NULL,
|
|
|
|
|
"emblem_level" SMALLINT NOT NULL,
|
|
|
|
|
"emblem_points_used" SMALLINT NOT NULL,
|
|
|
|
|
"physical_attack" SMALLINT NOT NULL,
|
|
|
|
|
"magick_attack" SMALLINT NOT NULL,
|
|
|
|
|
"physical_defense" SMALLINT NOT NULL,
|
|
|
|
|
"magick_defense" SMALLINT NOT NULL,
|
|
|
|
|
"max_hp" SMALLINT NOT NULL,
|
|
|
|
|
"max_stamina" SMALLINT NOT NULL,
|
|
|
|
|
"healing_power" SMALLINT NOT NULL,
|
|
|
|
|
"endurance" SMALLINT NOT NULL,
|
|
|
|
|
"blow_power" SMALLINT NOT NULL,
|
|
|
|
|
"chance_attack" SMALLINT NOT NULL,
|
|
|
|
|
"exhaust_attack" SMALLINT NOT NULL,
|
|
|
|
|
"knockout_power" SMALLINT NOT NULL,
|
|
|
|
|
"fire_resist" SMALLINT NOT NULL,
|
|
|
|
|
"ice_resist" SMALLINT NOT NULL,
|
|
|
|
|
"thunder_resist" SMALLINT NOT NULL,
|
|
|
|
|
"holy_resist" SMALLINT NOT NULL,
|
|
|
|
|
"dark_resist" SMALLINT NOT NULL,
|
|
|
|
|
CONSTRAINT pk_ddon_job_emblem PRIMARY KEY ("character_id", "job_id"),
|
|
|
|
|
CONSTRAINT fk_ddon_job_emblem_character_id FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2025-05-31 15:28:22 -04:00
|
|
|
|
2025-04-29 23:01:36 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_light_quests"
|
|
|
|
|
(
|
|
|
|
|
"variant_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_schedule_id" INTEGER NOT NULL,
|
|
|
|
|
"quest_id" INTEGER NOT NULL,
|
|
|
|
|
"target" INTEGER NOT NULL,
|
|
|
|
|
"level" INTEGER NOT NULL,
|
|
|
|
|
"count" INTEGER NOT NULL,
|
|
|
|
|
"reward_xp" INTEGER NOT NULL,
|
|
|
|
|
"reward_g" INTEGER NOT NULL,
|
|
|
|
|
"reward_r" INTEGER NOT NULL,
|
|
|
|
|
"reward_ap" INTEGER NOT NULL,
|
|
|
|
|
"distribution_end" DATETIME NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_light_quests_variant_id" PRIMARY KEY ("variant_id")
|
|
|
|
|
);
|
|
|
|
|
|
2025-05-31 15:28:22 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_pawn_favorites" (
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT pk_ddon_pawn_favorites PRIMARY KEY ("character_id", "pawn_id"),
|
|
|
|
|
CONSTRAINT fk_ddon_pawn_favorites_pawn_id FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE,
|
|
|
|
|
CONSTRAINT fk_ddon_pawn_favorites_character_id FOREIGN KEY ("character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2025-06-28 22:21:03 -07:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_rental_pawn"
|
|
|
|
|
(
|
|
|
|
|
"hiring_character_id" INTEGER NOT NULL,
|
|
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"data" BLOB NOT NULL,
|
|
|
|
|
"data_size" INTEGER NOT NULL,
|
|
|
|
|
"adventure_count" TINYINT NOT NULL,
|
|
|
|
|
"craft_count" TINYINT NOT NULL,
|
|
|
|
|
"kill_count" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_rental_pawn" PRIMARY KEY ("hiring_character_id", "pawn_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_rental_pawn_hiring_character_id" FOREIGN KEY ("hiring_character_id") REFERENCES "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_rental_pawn_feedback"
|
|
|
|
|
(
|
|
|
|
|
"hiring_character_id" INTEGER NOT NULL,
|
|
|
|
|
"pawn_id" INTEGER NOT NULL,
|
|
|
|
|
"hire_date" DATETIME NOT NULL,
|
|
|
|
|
"return_date" DATETIME NOT NULL,
|
|
|
|
|
"adventure_count" TINYINT NOT NULL,
|
|
|
|
|
"craft_count" TINYINT NOT NULL,
|
|
|
|
|
"kill_count" INTEGER NOT NULL,
|
|
|
|
|
"appearance_score" TINYINT,
|
|
|
|
|
"appearance_comment" TINYINT,
|
|
|
|
|
"combat_score" TINYINT,
|
|
|
|
|
"combat_comment" TINYINT,
|
|
|
|
|
"craft_score" TINYINT,
|
|
|
|
|
"craft_comment" TINYINT,
|
|
|
|
|
CONSTRAINT "fk_ddon_rental_pawn_feedback_pawn_id" FOREIGN KEY ("pawn_id") REFERENCES "ddon_pawn" ("pawn_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2025-08-22 22:56:16 -07:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_dispel_seals"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"seal_index" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_dispel_seals" PRIMARY KEY ("character_id", "seal_index"),
|
|
|
|
|
CONSTRAINT "fk_ddon_dispel_seals_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE
|
2025-08-24 22:57:11 -07:00
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_reset_ticket"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_bbm_reset_ticket" PRIMARY KEY ("character_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_bbm_reset_ticket_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2025-09-03 20:23:48 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_bbm_reset_gg"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"reset_count" INTEGER NOT NULL,
|
|
|
|
|
CONSTRAINT "pk_ddon_bbm_reset_gg_ticket" PRIMARY KEY ("character_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_bbm_reset_gg_ticket_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_group_chat_groups"
|
|
|
|
|
(
|
|
|
|
|
"group_id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
|
|
|
|
|
"group_name" TEXT NOT NULL,
|
|
|
|
|
"group_desc" TEXT NOT NULL,
|
|
|
|
|
"prevent_deletion" BOOLEAN NOT NULL
|
|
|
|
|
);
|
2026-03-14 19:24:33 +01:00
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_group_chat"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"group_id" BIGINT NOT NULL,
|
2026-04-10 20:21:59 -04:00
|
|
|
CONSTRAINT "pk_ddon_group_chat" PRIMARY KEY ("character_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_group_chat_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE,
|
2026-04-18 01:27:57 -07:00
|
|
|
CONSTRAINT "fk_ddon_group_chat_group_id" FOREIGN KEY ("group_id") references "ddon_group_chat_groups" ("group_id") ON DELETE CASCADE
|
|
|
|
|
);
|
2026-03-25 00:09:21 -04:00
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_black_list"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"target_id" INTEGER NOT NULL,
|
2026-04-10 20:21:59 -04:00
|
|
|
CONSTRAINT "pk_ddon_black_list" PRIMARY KEY ("character_id", "target_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_black_list_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE,
|
2026-04-18 01:27:57 -07:00
|
|
|
CONSTRAINT "fk_ddon_black_list_target_id" FOREIGN KEY ("target_id") references "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_communication_message_set"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"set_no" INTEGER NOT NULL,
|
|
|
|
|
"set_name" TEXT NOT NULL,
|
2026-04-10 20:21:59 -04:00
|
|
|
CONSTRAINT "pk_ddon_communication_message_set" PRIMARY KEY ("character_id", "set_no"),
|
2026-04-18 01:27:57 -07:00
|
|
|
CONSTRAINT "fk_ddon_communication_message_set_character_id" FOREIGN KEY ("character_id") references "ddon_character" ("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
|
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_communication_message"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"set_no" INTEGER NOT NULL,
|
|
|
|
|
"message_no" INTEGER NOT NULL,
|
|
|
|
|
"message" TEXT NOT NULL,
|
|
|
|
|
"emotion" INTEGER NOT NULL,
|
|
|
|
|
"emotochat" BOOLEAN NOT NULL,
|
2026-04-10 20:21:59 -04:00
|
|
|
CONSTRAINT "pk_ddon_communication_message" PRIMARY KEY ("character_id", "set_no", "message_no"),
|
2026-04-18 01:27:57 -07:00
|
|
|
CONSTRAINT "fk_ddon_communication_message_character_id_set_no" FOREIGN KEY ("character_id", "set_no") references "ddon_communication_message_set" ("character_id", "set_no") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2026-04-10 20:21:59 -04:00
|
|
|
CREATE TABLE IF NOT EXISTS "ddon_substory_progress"
|
|
|
|
|
(
|
|
|
|
|
"character_id" INTEGER NOT NULL,
|
|
|
|
|
"substory_group_id" INTEGER NOT NULL,
|
|
|
|
|
"sequence_step" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
"is_complete" INTEGER NOT NULL DEFAULT 0,
|
|
|
|
|
CONSTRAINT "pk_ddon_substory_progress" PRIMARY KEY ("character_id", "substory_group_id"),
|
|
|
|
|
CONSTRAINT "fk_ddon_substory_progress_character_id" FOREIGN KEY ("character_id") REFERENCES "ddon_character"("character_id") ON DELETE CASCADE
|
|
|
|
|
);
|
|
|
|
|
|
2026-04-18 01:27:57 -07:00
|
|
|
INSERT INTO "ddon_schedule_next"(type, timestamp) VALUES
|
|
|
|
|
(2, 0),
|
|
|
|
|
(6, 0),
|
|
|
|
|
(8, 0),
|
|
|
|
|
(13, 0),
|
|
|
|
|
(19, 0),
|
|
|
|
|
(20, 0),
|
|
|
|
|
(23, 0),
|
|
|
|
|
(24, 0),
|
|
|
|
|
(25, 0),
|
|
|
|
|
(26, 0);
|