-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathtable_mysql.sql
More file actions
211 lines (182 loc) · 6.2 KB
/
Copy pathtable_mysql.sql
File metadata and controls
211 lines (182 loc) · 6.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
-- #{ table
-- #{ optimize_tables
OPTIMIZE TABLE factions_kills, inventory_backup;
-- #}
-- #{ online_servers
CREATE TABLE IF NOT EXISTS servers
(
server_unique_id VARCHAR(128) PRIMARY KEY
) ENGINE = InnoDB;
-- #}
-- #{ players
CREATE TABLE IF NOT EXISTS player_data
(
player VARCHAR(16) NOT NULL,
xuid VARCHAR(16) NOT NULL,
inventory BLOB DEFAULT (''),
crate_keys BLOB DEFAULT (''),
kit_cooldown BLOB DEFAULT (''),
vaults LONGBLOB DEFAULT (''),
tags BIGINT DEFAULT 0,
registerDate INT DEFAULT 0,
currentTag INT DEFAULT 0,
coins INT DEFAULT 1000,
groupId INT DEFAULT 0,
kills INT DEFAULT 0,
streak INT DEFAULT 0,
bestStreak INT DEFAULT 0,
bounty INT DEFAULT 0,
xp INT DEFAULT 0,
form_status INT DEFAULT 0,
extra_data BLOB DEFAULT (''),
home_coords BLOB DEFAULT (''),
server_online VARCHAR(128) DEFAULT NULL,
PRIMARY KEY (xuid),
UNIQUE idx_player (player),
INDEX idx_server (server_online),
FOREIGN KEY (server_online) REFERENCES servers (server_unique_id) ON UPDATE CASCADE ON DELETE SET NULL
) ENGINE = InnoDB;
-- #}
-- #{ item_storage
CREATE TABLE IF NOT EXISTS item_storage
(
id INTEGER PRIMARY KEY AUTO_INCREMENT,
origin varchar(16) NOT NULL
) ENGINE = InnoDB;
-- #}
-- #{ inventory_ids
CREATE TABLE IF NOT EXISTS inventory_ids
(
id BLOB UNIQUE NOT NULL
);
-- #}
-- #{ auctions
CREATE TABLE IF NOT EXISTS auctions
(
auction_id INTEGER PRIMARY KEY AUTO_INCREMENT,
player VARCHAR(16) NOT NULL,
category VARCHAR(255) DEFAULT NULL,
item_name VARCHAR(255) DEFAULT NULL,
item_json BLOB DEFAULT NULL,
price INTEGER DEFAULT NULL,
expires INTEGER DEFAULT NULL,
INDEX idx_player (player),
FOREIGN KEY (player) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ factions
CREATE TABLE IF NOT EXISTS factions
(
faction_id INTEGER AUTO_INCREMENT,
faction_name VARCHAR(16),
leader VARCHAR(16) NOT NULL,
home_coords BLOB,
motd VARCHAR(200) DEFAULT '',
strength INT DEFAULT 100,
balance INT DEFAULT 0,
PRIMARY KEY faction_idx (faction_id, leader),
UNIQUE leader_idx (leader),
FOREIGN KEY (leader) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ faction_allies
CREATE TABLE IF NOT EXISTS faction_allies
(
faction_id INTEGER,
faction_allied INTEGER,
UNIQUE idx_faction (faction_id, faction_allied),
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE,
FOREIGN KEY (faction_allied) REFERENCES factions (faction_id) ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ faction_kills
CREATE TABLE IF NOT EXISTS factions_kills
(
faction_id INTEGER,
player_name VARCHAR(16) NOT NULL,
deaths_on INTEGER DEFAULT 0,
death_time INTEGER,
PRIMARY KEY (faction_id, player_name),
FOREIGN KEY (player_name) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ faction_vault
CREATE TABLE IF NOT EXISTS faction_vaults
(
faction_id INTEGER PRIMARY KEY,
vault LONGBLOB,
server_id VARCHAR(128) DEFAULT NULL,
locked_player VARCHAR(16) DEFAULT NULL,
last_open VARCHAR(16) DEFAULT NULL,
INDEX idx_players (locked_player, last_open),
FOREIGN KEY (server_id) REFERENCES servers (server_unique_id) ON UPDATE CASCADE ON DELETE SET NULL,
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE,
FOREIGN KEY (locked_player) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY (last_open) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ faction_claims
CREATE TABLE IF NOT EXISTS faction_claims
(
chunk_hash BIGINT NOT NULL,
server_id VARCHAR(3) NOT NULL,
faction_id INTEGER NOT NULL,
UNIQUE chunk_hash (chunk_hash, server_id),
INDEX idx_faction (faction_id),
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ faction_member
CREATE TABLE IF NOT EXISTS faction_members
(
faction_id INTEGER,
faction_role INTEGER NOT NULL,
player_name VARCHAR(16) NOT NULL,
INDEX idx_faction (faction_id),
UNIQUE idx_player (player_name),
FOREIGN KEY (player_name) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{faction_kills_tracking
CREATE TABLE factions_kills_tracking
(
player_name VARCHAR(16) NOT NULL,
faction_id INTEGER NOT NULL,
deaths_total INTEGER DEFAULT 0,
last_updated_epoch INTEGER DEFAULT 0,
INDEX idx_faction (faction_id),
UNIQUE idx_player (player_name),
FOREIGN KEY (player_name) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE,
FOREIGN KEY (faction_id) REFERENCES factions (faction_id) ON DELETE CASCADE
);
-- #}
-- #{ offline_storage
CREATE TABLE IF NOT EXISTS offline_storage
(
player VARCHAR(16) NOT NULL,
message VARCHAR(1024) NOT NULL,
INDEX idx_player (player),
FOREIGN KEY (player) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ inventory_storage
CREATE TABLE IF NOT EXISTS inventory_backup
(
inventory_id INTEGER PRIMARY KEY AUTO_INCREMENT,
player_name VARCHAR(16) NOT NULL,
inventory BLOB DEFAULT (''),
death_time INTEGER DEFAULT 0,
death_cause BLOB DEFAULT (''),
has_executed BOOLEAN DEFAULT FALSE,
item_count INTEGER DEFAULT 0,
INDEX idx_player (player_name),
FOREIGN KEY (player_name) REFERENCES player_data (player) ON UPDATE CASCADE ON DELETE CASCADE
) ENGINE = InnoDB;
-- #}
-- #{ alter_table
ALTER TABLE factions
AUTO_INCREMENT = 1;
-- #{
-- #}