summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--conf/common/inter-server.conf6
-rw-r--r--conf/common/map-index.conf34
-rw-r--r--conf/map/battle/client.conf36
-rw-r--r--conf/map/battle/guild.conf17
-rw-r--r--conf/map/battle/items.conf14
-rw-r--r--conf/map/battle/misc.conf4
-rw-r--r--conf/map/battle/monster.conf5
-rw-r--r--conf/map/battle/party.conf27
-rw-r--r--conf/map/battle/pet.conf12
-rw-r--r--conf/map/battle/player.conf7
-rw-r--r--conf/map/battle/skill.conf15
-rw-r--r--conf/map/help.txt2
-rw-r--r--conf/map/logs.conf62
-rw-r--r--conf/map/script.conf10
-rw-r--r--conf/messages.conf273
-rw-r--r--db/castle_db.conf15
-rw-r--r--db/constants.conf907
-rw-r--r--db/mob_avail.txt15
-rw-r--r--db/mob_db2.conf80
-rw-r--r--db/mob_skill_db2.conf10
-rw-r--r--db/pet_db2.conf43
-rw-r--r--db/re/item_chain.conf51
-rw-r--r--db/re/item_combo_db.conf43
-rw-r--r--db/re/item_combo_db.txt5
-rw-r--r--db/re/item_db.conf42
-rw-r--r--db/re/item_lapineddukddak.conf44
-rw-r--r--db/re/mob_db.conf15
-rw-r--r--db/re/mob_skill_db.conf30
-rw-r--r--db/re/pet_db.conf70
-rw-r--r--db/re/skill_db.conf5
-rw-r--r--db/sc_config.conf3741
-rw-r--r--db/sc_config.txt508
-rw-r--r--sql-files/logs.sql96
-rw-r--r--sql-files/main.sql1060
-rw-r--r--sql-files/upgrades/2015-07-02--18-14.sql74
-rw-r--r--sql-files/upgrades/2019-08-08--19-43.sql95
-rw-r--r--sql-files/upgrades/2019-10-05--19-01.sql28
-rw-r--r--sql-files/upgrades/2019-10-12--14-21.sql23
-rw-r--r--sql-files/upgrades/2019-11-22--23-58.sql23
-rw-r--r--sql-files/upgrades/2020-01-24--01-09.sql63
-rw-r--r--sql-files/upgrades/2020-03-22--01-56.sql23
-rw-r--r--sql-files/upgrades/2020-03-22--03-09.sql24
-rw-r--r--sql-files/upgrades/2020-05-01--04-44.sql25
-rw-r--r--sql-files/upgrades/2020-05-10--23-11.sql43
-rw-r--r--sql-files/upgrades/index.txt10
45 files changed, 6353 insertions, 1382 deletions
diff --git a/conf/common/inter-server.conf b/conf/common/inter-server.conf
index df326a67..6db189a7 100644
--- a/conf/common/inter-server.conf
+++ b/conf/common/inter-server.conf
@@ -76,14 +76,16 @@ inter_configuration: {
acc_reg_str_db: "acc_reg_str_db"
char_reg_str_db: "char_reg_str_db"
char_reg_num_db: "char_reg_num_db"
-
global_acc_reg_num_db: "global_acc_reg_num_db"
global_acc_reg_str_db: "global_acc_reg_str_db"
+ map_reg_num_db: "map_reg_num_db"
+ map_reg_str_db: "map_reg_str_db"
}
pc: {
hotkey_db: "hotkey"
scdata_db: "sc_data"
cart_db: "cart_inventory"
+ achievement_db: "char_achievements"
inventory_db: "inventory"
charlog_db: "charlog"
storage_db: "storage"
@@ -112,11 +114,11 @@ inter_configuration: {
position_db: "guild_position"
storage_db: "guild_storage"
}
- mapreg_db: "mapreg"
autotrade_merchants_db: "autotrade_merchants"
autotrade_data_db: "autotrade_data"
npc_market_data_db: "npc_market_data"
npc_barter_data_db: "npc_barter_data"
+ npc_expanded_barter_data_db: "npc_expanded_barter_data"
}
// Show warning in console if some string translation missing for selected language
diff --git a/conf/common/map-index.conf b/conf/common/map-index.conf
new file mode 100644
index 00000000..b3a1b4e8
--- /dev/null
+++ b/conf/common/map-index.conf
@@ -0,0 +1,34 @@
+//================= Hercules Configuration ================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2014-2019 Hercules Dev Team
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+//= Map Index configuration file.
+//=========================================================================
+
+mapindex_configuration: {
+ // Full path to the map_index.txt file
+ // Default: db/map_index.txt
+ file_path: "db/map_index.txt"
+}
diff --git a/conf/map/battle/client.conf b/conf/map/battle/client.conf
index 9a4305f4..2f281201 100644
--- a/conf/map/battle/client.conf
+++ b/conf/map/battle/client.conf
@@ -202,3 +202,39 @@ ping_time: 20
// Drop or not connection after client send disconnect request packet
// Official is false
drop_connection_on_quit: true
+
+// When to display the rate modifier messages?
+// 0x0 - Never display rate modifier messages.
+// 0x1 - Display rate modifier messages upon login.
+// 0x2 - Display rate modifier messages upon map change.
+// 0x4 - Display rate modifier messages upon teleporting (regardless of changing maps).
+// Default: 0x1 (Official behavior.)
+display_rate_messages: 0x1
+
+// When to display the configuration messages and which? (Note 3)
+//
+// Flags for when to display the configuration messages:
+// 0x000 - Never display configuration messages.
+// 0x001 - Display configuration messages upon login. (Default. Should always be set.)
+// 0x002 - Display configuration messages upon map change.
+// 0x004 - Display configuration messages upon teleporting (regardless of changing maps).
+//
+// Flags for which configuration messages are displayed:
+// 0x010 - Character's party invitation state. (Default.)
+// 0x020 - Character's view equipment state. (Default.)
+// 0x040 - Character's Urgent Call state. (Default.)
+// 0x080 - Character's pet auto-feed state. (Default.)
+// 0x100 - Character's homunculus auto-feed state. (Default.)
+//
+// Default: 0x1F1 (Official behavior.)
+display_config_messages: 0x1F1
+
+// When to display the overweight messages?
+// 0x0 - Never display overweight messages.
+// 0x1 - Display overweight messages upon login. (Default.)
+// 0x2 - Display overweight messages upon map change. (Default.)
+// Default: 0x3 (Official behavior.)
+display_overweight_messages: 0x3
+
+// Show tip of the day window upon login?
+show_tip_window: true
diff --git a/conf/map/battle/guild.conf b/conf/map/battle/guild.conf
index 101349a8..204c295c 100644
--- a/conf/map/battle/guild.conf
+++ b/conf/map/battle/guild.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2014-2019 Hercules Dev Team
+//= Copyright (C) 2014-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -45,9 +45,6 @@ guild_max_castles: 0
// 2 - like 1, but your logged off time is also decreased from the remaining cooldown (Aegis)
guild_skill_relog_delay: 2
-// Damage adjustments for WOE battles against defending Guild monsters (Note 2)
-castle_defense_rate: 100
-
// Flee penalty on gvg grounds. Official value is 20 (Note 2)
// NOTE: It's %, not absolute, so 20 is -20% of your total flee
gvg_flee_penalty: 20
@@ -62,11 +59,13 @@ require_glory_guild: false
// Default is 3
max_guild_alliance: 3
-// When to re-display the guild notice
-// Upon teleporting (regardless of changing maps): 2 (official)
-// Upon changing maps: 1
-// Do not re-display: 0 (disabled)
-guild_notice_changemap: 2
+// When to display the guild notice?
+// 0x0 - Never display guild notice.
+// 0x1 - Display guild notice upon login.
+// 0x2 - Display guild notice upon map change.
+// 0x4 - Display guild notice upon teleporting (regardless of changing maps).
+// Default: 0x7 (Official behavior.)
+guild_notice_changemap: 0x7
// Can guild members invite/expel members inside guild castles in WoE/GvG? (Note 1)
// default: false
diff --git a/conf/map/battle/items.conf b/conf/map/battle/items.conf
index 0dd990e0..ef383e19 100644
--- a/conf/map/battle/items.conf
+++ b/conf/map/battle/items.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2014-2019 Hercules Dev Team
+//= Copyright (C) 2014-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -100,10 +100,14 @@ autospell_stacking: false
// Default: true (official)
item_restricted_consumption_type: true
-// Enable all NPC to allow changing of equipments while interacting? (Note 1)
-// Script commands 'enable_items/disable_items' will not be override. (see doc/script_commands.txt)
-// Default: true (official)
-item_enabled_npc: true
+// Which item actions are allowed while interacting with NPC? (Note 3)
+// Script commands 'enable_items/disable_items' will not be overridden. (See doc/script_commands.txt.)
+// 0x0 (ITEMENABLEDNPC_NONE) - Don't allow any item actions.
+// 0x1 (ITEMENABLEDNPC_EQUIP) - Allow changing equipment.
+// 0x2 (ITEMENABLEDNPC_CONSUME) - Allow consuming usable items.
+// Official RE: 0x1 (Default value.)
+// Official Pre-RE: 0x3
+item_enabled_npc: 0x1
// Unequip the equipments that has disabled by map_zone_db.conf ?
// 0 : disabled equipments and cards are nullify (official)
diff --git a/conf/map/battle/misc.conf b/conf/map/battle/misc.conf
index aa5cf850..4aa273f8 100644
--- a/conf/map/battle/misc.conf
+++ b/conf/map/battle/misc.conf
@@ -101,8 +101,8 @@ duel_allow_teleport: false
// Autoleave duel when die
duel_autoleave_when_die: true
-// Delay between using @duel in minutes
-duel_time_interval: 1
+// Delay between using @duel in seconds
+duel_time_interval: 60
// Restrict duel usage to same map
duel_only_on_same_map: false
diff --git a/conf/map/battle/monster.conf b/conf/map/battle/monster.conf
index d75b7d16..ac4ebba9 100644
--- a/conf/map/battle/monster.conf
+++ b/conf/map/battle/monster.conf
@@ -269,3 +269,8 @@ boss_icewall_walk_block: 1
// only have a range of 9. If you put a number higher than 0, their range will
// be increased by that number.
monster_eye_range_bonus: 0
+
+// Should slaves chase after what their master is chasing?
+// false: Don't chase after what master is chasing. (old behavior)
+// true: Chase after what master is chasing. (official, default)
+slave_chase_masters_chasetarget: true
diff --git a/conf/map/battle/party.conf b/conf/map/battle/party.conf
index 085e3091..a34a0c4f 100644
--- a/conf/map/battle/party.conf
+++ b/conf/map/battle/party.conf
@@ -80,3 +80,30 @@ party_even_share_bonus: 0
// Display party name regardless if player is in a guild.
// Official servers do not display party name unless the user is in a guild. (Note 1)
display_party_name: true
+
+// When and how to send the party options? (Note 3)
+//
+// Flags for when to display the party options:
+// 0x00000 - Never send party options.
+// 0x00001 - Send party options upon login. (Default. Should always be set.)
+// 0x00002 - Send party options upon map change.
+// 0x00004 - Send party options upon teleporting (regardless of changing maps).
+// 0x00008 - Send party options upon successfully changing options manually. (Default. Should always be set.)
+// 0x00010 - Send party options upon unsuccessfully changing options manually. (Tried to enable EXP sharing if not allowed.) (Default.)
+// 0x00020 - Send party options upon changing options automatically. (Default. Should always be set.)
+// 0x00040 - Send party options upon joining party. (Default. Should always be set.)
+// 0x00080 - Send party options upon leaving party. (Default.)
+//
+// Flags for how to send the party options:
+// 0x00100 - Send party options to all party members upon unsuccessfully changing options manually. (Tried to enable EXP sharing if not allowed.) (Default.)
+// 0x00200 - Send all party options upon login.
+// 0x00400 - Send all party options upon map change.
+// 0x00800 - Send all party options upon teleporting (regardless of changing maps).
+// 0x01000 - Send all party options upon successfully changing options manually. (Default.)
+// 0x02000 - Send all party options upon unsuccessfully changing options manually. (Tried to enable EXP sharing if not allowed.) (Default.)
+// 0x04000 - Send all party options upon changing options automatically.
+// 0x08000 - Send all party options upon joining party.
+// 0x10000 - Send all party options upon leaving party.
+//
+// Default: 0x31F9 (Official behavior.)
+send_party_options: 0x31F9
diff --git a/conf/map/battle/pet.conf b/conf/map/battle/pet.conf
index cbe854d4..9ee4c9f8 100644
--- a/conf/map/battle/pet.conf
+++ b/conf/map/battle/pet.conf
@@ -32,6 +32,14 @@
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary)
//=========================================================================
+// Use the offical formula to calculate the pet catch rate? (Note 1)
+// Official formula:
+// CatchRate = CaptureRate * (100 - 100 * MonsterHP / MonsterMaxHP) / 100 + CaptureRate
+// Custum *Athena formula:
+// CatchRate = (CaptureRate + (CharacterBaseLevel - MonsterLevel) * 30 + CharacterLuk * 20) * (200 - 100 * MonsterHP / MonsterMaxHP) / 100
+// (CaptureRate is defined in db/(pre-)re/pet_db.conf.)
+pet_catch_rate_official_formula: true
+
// Rate for catching pets (Note 2)
pet_catch_rate: 100
@@ -98,3 +106,7 @@ pet_max_atk2: 1000
// If set to true, pets are automatically returned to egg when entering castles during WoE times
// and hatching is forbidden within as well.
pet_disable_in_gvg: false
+
+// Should the pet immediately be removed when its intimacy drops to 0? (Note 1)
+// If set to false the pet will randomly walk around the map before being removed.
+pet_remove_immediately: true
diff --git a/conf/map/battle/player.conf b/conf/map/battle/player.conf
index ed5767ae..aa9cf92f 100644
--- a/conf/map/battle/player.conf
+++ b/conf/map/battle/player.conf
@@ -226,3 +226,10 @@ shadow_refine_atk: true
// Keep player facing direction after warping?
// Default: false (on official servers players always faces north)
player_warp_keep_direction: true
+
+// Can dead players do actions like trading, open a chat room, etc.?
+// 0x0 - Don't allow trading and open chat rooms.
+// 0x1 - Allow trading when dead.
+// 0x2 - Allow open chat room when dead.
+// default: 0x3 (Official)
+allowed_actions_when_dead: 0x3
diff --git a/conf/map/battle/skill.conf b/conf/map/battle/skill.conf
index e0188c8f..5a58a8a1 100644
--- a/conf/map/battle/skill.conf
+++ b/conf/map/battle/skill.conf
@@ -97,7 +97,7 @@ skillrange_by_distance: 14
skillrange_from_weapon: 0
// Should a check on the caster's status be performed in all skill attacks?
-// When set to true, meteors, storm gust and any other ground skills will have
+// When set to true, meteors, storm gust and any other ground skills will have
// no effect while the caster is unable to fight (eg: stunned).
skill_caster_check: true
@@ -347,3 +347,16 @@ stormgust_knockback: true
// 0 : (official) Magic Rod's animation occurs every time it is used.
// 1 : Magic Rod's animation would not occur unless a spell was absorbed. (old behavior)
magicrod_type: 0
+
+// Which skills are allowed to use while interacting with NPC?
+// 0 (SKILLENABLEDNPC_NONE) - Don't allow using skills.
+// 1 (SKILLENABLEDNPC_SELF) - Allow using non-damaging self skills.
+// 2 (SKILLENABLEDNPC_ALL) - Allow using all skills.
+// Official RE: 0 (Default value.)
+// Official Pre-RE: 1
+skill_enabled_npc: 0
+
+// Close the storage/gstorage when teleported? (Note 1)
+// true : (Official)
+// false : (Athena)
+teleport_close_storage: true
diff --git a/conf/map/help.txt b/conf/map/help.txt
index 846c1627..17dd829f 100644
--- a/conf/map/help.txt
+++ b/conf/map/help.txt
@@ -305,3 +305,5 @@ autoloottype: "Manage a list of autolooting item types.\n"
" To remove an item type, use \"@autoloottype -<type name>\".\n"
" Type List: healing, usable, etc, weapon, armor, card, petegg, petarmor, ammo.\n"
" \"@autoloottype reset\" will clear your autoloottype list."
+feelreset: "Reset 'Feeling' maps."
+hatereset: "Reset 'Hatred' targets."
diff --git a/conf/map/logs.conf b/conf/map/logs.conf
index 9526372e..654209b7 100644
--- a/conf/map/logs.conf
+++ b/conf/map/logs.conf
@@ -34,38 +34,40 @@
map_log: {
// Enable Logs? (Note 3)
- // 0x0000000 - Don't log at all
- // 0x0000001 - (T) Log trades
- // 0x0000002 - (V) Log vending transactions
- // 0x0000004 - (P) Log items drop/picked by players
- // 0x0000008 - (L) Log items drop/looted by monsters
- // 0x0000010 - (S) Log NPC transactions (buy/sell)
- // 0x0000020 - (N) Log Script transactions (items deleted/acquired through quests)
- // 0x0000040 - (D) Log items stolen from mobs (Steal/Gank)
- // 0x0000080 - (C) Log player-used items (consumables/pet&hom&merc food/items used for skills&attacks)
- // 0x0000100 - (O) Log produced/ingredient items
- // 0x0000200 - (U) Log MVP prize items
- // 0x0000400 - (A) Log player created/deleted items (through @/# commands)
- // 0x0000800 - (R) Log items placed/retrieved from storage.
- // 0x0001000 - (G) Log items placed/retrieved from guild storage.
- // 0x0002000 - (E) Log mail system transactions.
- // 0x0004000 - (I) Log auction system transactions.
- // 0x0008000 - (B) Log buying store transactions
- // 0x0010000 - (X) Log other transactions
- // 0x0020000 - (K) Log account bank transactions
- // 0x0040000 - (Y) Divorce
- // 0x0080000 - (Z) Roulette
- // 0x0100000 - (W) Rental
- // 0x0200000 - (Q) Card
- // 0x0400000 - (J) Invalid in inventory
- // 0x0800000 - (H) Invalid in cart
- // 0x1000000 - (@) Egg
- // 0x2000000 - (0) Quest
- // 0x4000000 - (1) Skill
- // 0x8000000 - (2) Refine
+ // 0x00000000 - Don't log at all
+ // 0x00000001 - (T) Log trades X
+ // 0x00000002 - (V) Log vending transactions X
+ // 0x00000004 - (P) Log items drop/picked by players X
+ // 0x00000008 - (M) Log items dropped by monsters
+ // 0x00000010 - (S) Log NPC transactions (buy/sell)
+ // 0x00000020 - (N) Log Script transactions (items deleted/acquired through quests)
+ // 0x00000040 - (D) Log items stolen from mobs (Steal/Gank)
+ // 0x00000080 - (C) Log player-used items (consumables/pet&hom&merc food/items used for skills&attacks)
+ // 0x00000100 - (O) Log produced/ingredient items
+ // 0x00000200 - (U) Log MVP prize items
+ // 0x00000400 - (A) Log player created/deleted items (through @/# commands)
+ // 0x00000800 - (R) Log items placed/retrieved from storage.
+ // 0x00001000 - (G) Log items placed/retrieved from guild storage.
+ // 0x00002000 - (E) Log mail system transactions.
+ // 0x00004000 - (I) Log auction system transactions.
+ // 0x00008000 - (B) Log buying store transactions
+ // 0x00010000 - (X) Log other transactions
+ // 0x00020000 - (K) Log account bank transactions
+ // 0x00040000 - (Y) Divorce
+ // 0x00080000 - (Z) Roulette
+ // 0x00100000 - (W) Rental
+ // 0x00200000 - (Q) Card
+ // 0x00400000 - (J) Invalid in inventory
+ // 0x00800000 - (H) Invalid in cart
+ // 0x01000000 - (@) Egg
+ // 0x02000000 - (0) Quest
+ // 0x04000000 - (1) Skill
+ // 0x08000000 - (2) Refine
+ // 0x10000000 - (L) Log items looted by monsters
+ // 0x20000000 - (3) Achievements
// Example: Log trades+vending+script items+created items: 1+2+32+1024 = 1059
// Please note that moving items from inventory to cart and back is not logged by design.
- enable: 0xFFFFFFF
+ enable: 0xFFFFFFFF
// Logging files/tables
// Following settings specify where to log to. If 'use_sql' is
diff --git a/conf/map/script.conf b/conf/map/script.conf
index 802ce253..98a39f52 100644
--- a/conf/map/script.conf
+++ b/conf/map/script.conf
@@ -59,6 +59,16 @@ script_configuration: {
// Defaults to INT_MAX.
//input_max_value: 2147483647
input_max_value: 10000000
+
+ // Specifies whether functions not explicitly marked with a "private" or
+ // "public" keyword should be treated as "private" by default.
+ // Default: true
+ functions_private_by_default: true
+
+ // Specifies whether public functions can be invoked as NPC events. This
+ // allows, for example, to use a `public function OnDeath { ... }` instead
+ // of a `OnDeath:` label for mob death events.
+ functions_as_events: true
}
import: "conf/import/script.conf"
diff --git a/conf/messages.conf b/conf/messages.conf
index d62999b5..d6250406 100644
--- a/conf/messages.conf
+++ b/conf/messages.conf
@@ -4,7 +4,7 @@
//= This file handles all messages set throughout the server.
//============================================================
// For translation, just change msg here (second line),
-// no need to modify source code or alternatively,
+// no need to modify source code or alternatively,
// use conf/import/msg_conf.txt.
//============================================================
// Format:
@@ -56,10 +56,10 @@
28: No player found.
29: 1 player found.
30: %d players found.
-31: PvP Off.
-32: PvP On.
-33: GvG Off.
-34: GvG On.
+31: PvP: Off.
+32: PvP: On.
+33: GvG: Off.
+34: GvG: On.
35: This job has no alternate body styles.
36: Appearance changed.
37: An invalid number was specified.
@@ -102,7 +102,8 @@
79: %d results found.
80: Please specify a display name or monster name/id.
81: Your GM level doesn't authorize you to perform this action on the specified player.
-//82-83 FREE
+82: Roulette is disabled
+//83 FREE
84: All stats changed!
85: Invalid time for ban command.
//86-87 FREE
@@ -190,7 +191,7 @@
170: The item is not equippable.
171: %d - void
172: Speed returned to normal.
-//173 FREE
+173: Please enter a valid madogear type.
174: Number of status points changed.
175: Number of skill points changed.
176: Current amount of zeny changed.
@@ -215,7 +216,7 @@
201: You don't have this quest skill.
//202-203 FREE
204: You can't open a shop on this cell.
-205: Maybe you meant:
+205: Maybe you meant:
206: '%s' skill points reset.
207: '%s' stats points reset.
208: '%s' skill and stat points have been reset.
@@ -350,9 +351,9 @@
//335-342 FREE
// Templates for @who output
-343: Name: %s
-344: (%s)
-345: | Party: '%s'
+343: Name: %s
+344: (%s)
+345: | Party: '%s'
346: | Guild: '%s'
//You may omit the last %s, then you won't see players job name
347: | Lv:%d/%d | Job: %s
@@ -361,22 +362,22 @@
//349 FREE
// @duel
-350: Duel| You can't use @invite. You aren't a duelist.
-351: Duel| The limit of players has been reached.
-352: Duel| Player name not found.
-353: Duel| The Player is in the duel already.
-354: Duel| Invitation has been sent.
-355: Duel| You can't use @duel without @reject.
-356: Duel| You can take part in duel once per %d minutes.
-357: Duel| Invalid value.
-358: Duel| You can't use @leave. You aren't a duelist.
-359: Duel| You've left the duel.
-360: Duel| You can't use @accept without a duel invitation.
-361: Duel| The duel invitation has been accepted.
-362: Duel| You can't use @reject without a duel invitation.
-363: Duel| The duel invitation has been rejected.
-364: Duel| You can't invite %s because he/she isn't in the same map.
-365: Duel| Can't use %s in duel.
+350: Duel: You can't use @invite. You aren't a duelist.
+351: Duel: The limit of players has been reached.
+352: Duel: Player name not found.
+353: Duel: The Player is in the duel already.
+354: Duel: Invitation has been sent.
+355: Duel: You can't use @duel without @reject.
+356: Duel: You can take part in duel again after %d seconds.
+357: Duel: Invalid value.
+358: Duel: You can't use @leave. You aren't a duelist.
+359: Duel: You've left the duel.
+360: Duel: You can't use @accept without a duel invitation.
+361: Duel: The duel invitation has been accepted.
+362: Duel: You can't use @reject without a duel invitation.
+363: Duel: The duel invitation has been rejected.
+364: Duel: You can't invite %s because he/she isn't in the same map.
+365: Duel: Can't use %s in duel.
// Stylist Shop
366: Styling Shop
367: <MSG>2949</MSG>
@@ -429,7 +430,7 @@
420: Your account is no longer authorized.
421: Your account has been totally erased.
//422 FREE
-423: Your account has been banished until
+423: Your account has been banished until
424: Login-server has been asked to %s the player '%.*s'.
425: The player '%.*s' doesn't exist.
426: Your GM level doesn't authorize you to %s the player '%.*s'.
@@ -439,17 +440,38 @@
430: unblock
431: unban
432: change the sex of
-433: This character has been banned until
+433: This character has been banned until
434: Char-server has been asked to %s the character '%.*s'.
-//435-449 FREE
+//435-448 FREE
// Homunculus messages
+449: Homunculus Experience Gained Base:%u (%.2f%%)
450: You already have a homunculus
// Return pet to egg message
451: You can't return your pet because your inventory is full.
452: usage @camerainfo range rotation latitude
+
+// Refinary
453: Refinery UI is not available
-//454-497 FREE
+
+// Battlegrounds
+454: Server : %s is leaving the battlefield...
+455: Server : %s has been afk-kicked from the battlefield...
+456: You are a deserter! Wait %u minute(s) before you can apply again
+457: You are a deserter! Wait %u seconds before you can apply again
+458: You can't reapply to this arena so fast. Apply to the different arena or wait %u minute(s)
+459: You can't reapply to this arena so fast. Apply to the different arena or wait %u seconds
+460: Can't apply: not enough members in your team/guild that have not entered the queue in individual mode, minimum is %d
+461: Can't apply: not enough members in your team/guild, minimum is %d
+462: Can't apply: not enough members in your team/party that have not entered the queue in individual mode, minimum is %d
+463: Can't apply: not enough members in your team/party, minimum is %d
+464: Server : %s has quit the game...
+// IRC
+465: [ #%s ] User IRC.%s left the channel. [Quit: %s]
+466: [ #%s ] User IRC.%s left the channel. [%s]
+467: [ #%s ] User IRC.%s is now known as IRC.%s
+468: [ #%s ] User IRC.%s joined the channel.
+// 469-497 FREE
// Messages of others (not for GM commands)
// ----------------------------------------
@@ -477,7 +499,8 @@
// mail system
//----------------------
510: You have %d new emails (%d unread)
-//511-537 FREE
+511: Inbox is full (Max %d). Delete some mails.
+// 512-537 FREE
// Trade Spoof Messages
538: Hack on trade: character '%s' (account: %d) try to trade more items that he has.
@@ -641,7 +664,7 @@
// Etc messages from source
862: You're too close to a NPC, you must be at least %d cells away from any NPC.
-863: Duel| Can't use this item in duel.
+863: Duel: Can't use this item in duel.
864: You cannot use this command when dead.
865: Can't create chat rooms in this area.
866: Pets are not allowed in Guild Wars.
@@ -660,7 +683,28 @@
879: You have become the Guild Master!
880: You have been recovered!
881: Shop is out of stock! Come again later!
-//882-899 FREE
+
+// Frost Joker / Scream text for monster (MobName : SkillName !!)
+882: %s : %s !!
+// Cursed Circle
+883: You are too close to a stone or emperium to do this skill
+//
+884: Skill Failed. [%s] requires %dx %s.
+885: Removed %dz.
+886: Gained %dz.
+887: %s stole an Unknown Item (id: %i).
+888: %s stole %s.
+889: Experience Gained Base:%"PRIu64" (%.2f%%) Job:%"PRIu64" (%.2f%%)
+890: [KS Warning!! - Owner : %s]
+891: [Watch out! %s is trying to KS you!]
+892: Growth: hp:%d sp:%d str(%.2f) agi(%.2f) vit(%.2f) int(%.2f) dex(%.2f) luk(%.2f)
+893: [ Kill Steal Protection Disabled. KS is allowed in this map ]
+894: %s is in autotrade mode and cannot receive whispered messages.
+// 895 FREE
+896: Base EXP : %d%% | Base Drop: %d%% | Base Death Penalty: %d%%
+897: #%s '%s' joined
+898: #%s '%s' left
+// 899 FREE
//------------------------------------
// More atcommands message
@@ -687,7 +731,7 @@
911: Please enter a player name (usage: @jumpto/@warpto/@goto <char name/ID>).
// @who
-912: (CID:%d/AID:%d)
+912: (CID:%d/AID:%d)
// @whogm
913: Name: %s (GM)
@@ -719,7 +763,10 @@
926: Zone not found. Keep in mind that the names are CaSe SenSitiVe.
927: Zone successfully changed from '%s' to '%s'.
-//928-979 FREE
+//928-978 FREE
+
+// @hatereset
+979: Reset 'Hatred' targets.
// @kami
980: Please enter a message (usage: @kami <message>).
@@ -865,58 +912,58 @@
1043: Autotrade Enabled
1044: Autotrade Disabled
1045: Battlegrounds ON
-1046: PvP Flags:
-1047: Pvp ON |
-1048: NoGuild |
-1049: NoParty |
-1050: NightmareDrop |
-1051: NoCalcRank |
-1052: GvG Flags:
-1053: GvG ON |
-1054: GvG Dungeon |
-1055: GvG Castle |
-1056: NoParty |
-1057: Teleport Flags:
-1058: NoTeleport |
-1059: Monster NoTeleport |
-1060: NoWarp |
-1061: NoWarpTo |
-1062: NoReturn |
-1063: NoAutoloot |
-1064: NoMemo |
+1046: PvP Flags:
+1047: Pvp ON |
+1048: NoGuild |
+1049: NoParty |
+1050: NightmareDrop |
+1051: NoCalcRank |
+1052: GvG Flags:
+1053: GvG ON |
+1054: GvG Dungeon |
+1055: GvG Castle |
+1056: NoParty |
+1057: Teleport Flags:
+1058: NoTeleport |
+1059: Monster NoTeleport |
+1060: NoWarp |
+1061: NoWarpTo |
+1062: NoReturn |
+1063: NoAutoloot |
+1064: NoMemo |
1065: No Exp Penalty: %s | No Zeny Penalty: %s
1066: On
1067: Off
1068: No Save (Return to last Save Point)
1069: No Save, Save Point: %s,Random
1070: No Save, Save Point: %s,%d,%d
-1071: Weather Flags:
-1072: Snow |
-1073: Fog |
-1074: Sakura |
-1075: Clouds |
-1076: Clouds2 |
-1077: Fireworks |
-1078: Leaves |
-1079: NoViewID |
-1080: Displays Night |
-1081: Other Flags:
-1082: NoBranch |
-1083: NoTrade |
-1084: NoVending |
-1085: NoDrop |
-1086: NoSkill |
-1087: NoIcewall |
-1088: AllowKS |
-1089: Reset |
-1090: Other Flags:
-1091: NoCommand |
-1092: NoBaseEXP |
-1093: NoJobEXP |
-1094: NoMobLoot |
-1095: NoMVPLoot |
-1096: PartyLock |
-1097: GuildLock |
+1071: Weather Flags:
+1072: Snow |
+1073: Fog |
+1074: Sakura |
+1075: Clouds |
+1076: Clouds2 |
+1077: Fireworks |
+1078: Leaves |
+1079: NoViewID |
+1080: Displays Night |
+1081: Other Flags:
+1082: NoBranch |
+1083: NoTrade |
+1084: NoVending |
+1085: NoDrop |
+1086: NoSkill |
+1087: NoIcewall |
+1088: AllowKS |
+1089: Reset |
+1090: Other Flags:
+1091: NoCommand |
+1092: NoBaseEXP |
+1093: NoJobEXP |
+1094: NoMobLoot |
+1095: NoMVPLoot |
+1096: PartyLock |
+1097: GuildLock |
1098: ----- Players in Map -----
1099: Player '%s' (session #%d) | Location: %d,%d
1100: ----- NPCs in Map -----
@@ -931,7 +978,7 @@
1109: North
1110: Unknown
1111: NPC %d: %s | Direction: %s | Sprite: %d | Location: %d %d
-1112: NPC %d: %s::%s | Direction: %s | Sprite: %d | Location: %d %d
+1112: NPC %d: %s::%s | Direction: %s | Sprite: %d | Location: %d %d
1113: ----- Chats in Map -----
1114: Chat: %s | Player: %s | Location: %d %d
1115: Users: %d/%d | Password: %s | Public: %s
@@ -969,8 +1016,8 @@
// @loadnpc
1132: Please enter a script file name (usage: @loadnpc <file name>).
-// @npcoff
-1133: Please enter a NPC name (usage: @npcoff <NPC_name>).
+// @unloadnpc
+1133: Please enter a NPC name (Usage: @unloadnpc <NPC_name> {<flag>}).
// @jail
1134: Please enter a player name (usage: @jail <char_name>).
@@ -1244,7 +1291,7 @@
1277: Item: '%s'/'%s'[%d] (%d) Type: %s | Extra Effect: %s
1278: None
1279: With script
-1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
+1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
1281: - Available in shops only.
1282: - Maximal monsters drop chance: %02.02f%%
1283: - Monsters don't drop this item.
@@ -1263,8 +1310,8 @@
// @mobinfo ...
1291: ATK:%d~%d MATK:%d~%d Range:%d~%d~%d Size:%s Race: %s Element: %s (Lv:%d)
-1292: PrivateAirshipStartable |
-1293: PrivateAirshipEndable |
+1292: PrivateAirshipStartable |
+1293: PrivateAirshipEndable |
//1294 used by hercules chat feature
// @version
@@ -1340,26 +1387,26 @@
// @itemlist
1332: ------ %s items list of '%s' ------
-1333: | equipped:
-1334: garment,
-1335: left accessory,
-1336: body/armor,
-1337: right hand,
-1338: left hand,
-1339: both hands,
-1340: feet,
-1341: right accessory,
-1342: lower head,
-1343: top head,
-1344: lower/top head,
-1345: mid head,
-1346: lower/mid head,
-1347: lower/mid/top head,
+1333: | equipped:
+1334: garment,
+1335: left accessory,
+1336: body/armor,
+1337: right hand,
+1338: left hand,
+1339: both hands,
+1340: feet,
+1341: right accessory,
+1342: lower head,
+1343: top head,
+1344: lower/top head,
+1345: mid head,
+1346: lower/mid head,
+1347: lower/mid/top head,
1348: -> (pet egg, pet id: %u, named)
1349: -> (pet egg, pet id: %u, unnamed)
1350: -> (crafted item, creator id: %u, star crumbs %d, element %d)
1351: -> (produced item, creator id: %u)
-1352: -> (card(s):
+1352: -> (card(s):
1353: No item found in this player's %s.
1354: %d item(s) found in %d %s slots.
@@ -1408,8 +1455,8 @@
1384: User '%s' permissions updated successfully. The changes are temporary.
// @unloadnpcfile
-1385: Usage: @unloadnpcfile <file name>
-1386: File unloaded. Be aware that mapflags and monsters spawned directly are not removed.
+1385: Usage: @unloadnpcfile <path> {<flag>}
+1386: File unloaded. Be aware that some changes made by NPC are not reverted on unload. See doc/atcommands.txt for details.
1387: File not found.
// General command messages
@@ -1458,7 +1505,7 @@
1410: -- Public Channels
1411: Unknown color '%s'
1412: You're not the owner of channel '%s'
-1413: '%s' channel color updated to '%s'
+1413: '%s' channel color updated to '%s'
1414: --- Available options:
1415: -- %s create <channel name> <channel password>
1416: - creates a new channel
@@ -1571,8 +1618,8 @@
// @dropall
1500: Usage: @dropall {<type>}
-1501: Type List: (default) all = -1, healing = 0, usable = 2, etc = 3, weapon = 4, armor = 5, card = 6, petegg = 7, petarmor = 8, ammo = 10, delayed-consumable = 11, cash = 18
-1502: %d items are dropped!
+1501: Type List: (default) all = -1, healing = 0, usable = 2, etc = 3, weapon = 4, armor = 5, card = 6, petegg = 7, petarmor = 8, ammo = 10, delayed-consumable = 11, cash = 18
+1502: %d items are dropped (%d skipped)!
// @refine - Part 2
1503: %d: Costume Headgear (Top)
@@ -1589,5 +1636,13 @@
1514: %d: Refine All Equip (Costume)
1515: %d: Refine All Equip (Shadow)
+// @reloadnpc
+1516: Usage: @reloadnpc <path> {<flag>}
+1517: Script could not be unloaded.
+
+// File name validation
+1518: Not a file.
+1519: Can't open file.
+
//Custom translations
import: conf/import/msg_conf.txt
diff --git a/db/castle_db.conf b/db/castle_db.conf
index fe4d07fe..fc2b2d31 100644
--- a/db/castle_db.conf
+++ b/db/castle_db.conf
@@ -9,8 +9,8 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2019 Hercules Dev Team
-//= Copyright (C) 2019 Asheraf
+//= Copyright (C) 2019-2020 Hercules Dev Team
+//= Copyright (C) 2019 Asheraf
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -37,8 +37,17 @@ castle_db: (
CastleID: (int) Unique ID of the castle. Must remain unique across all map-servers.
MapName: (string) Map name to be considered as the castle map.
CastleName: (string) Name of the castle (used by scripts and guardian name tags)
- OnGuildBreakEventName: (string) NPC unique name to invoke ::OnGuildBreak on, when a occupied
+ OnGuildBreakEventName: (string) NPC unique name to invoke ::OnGuildBreak on, when a occupied
castle is abandoned during guild break.
+ // ================ Optional fields ===============================
+ SiegeType: (string, default to SIEGE_TYPE_FE) define siege type
+ EnableClientWarp: (bool, default to false) enable or disable client teleport features
+ ClientWarp: {
+ Position: (int, int) x, y position of warp request
+ ZenyCost: (int) The zeny cost of warp
+ ZenyCostSiegeTime: (int) The zeny cost of warp durring woe
+ }
},
**************************************************************************/
+
)
diff --git a/db/constants.conf b/db/constants.conf
index 2c0fb424..5d040c0a 100644
--- a/db/constants.conf
+++ b/db/constants.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2016 Hercules Dev Team
+//= Copyright (C) 2016-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -29,12 +29,24 @@
constants_db: {
/************* Entry structure (short) ************************************
- Identifier: value // (int)
+ Identifier: value // (integer literal)
************* Entry structure (full) *************************************
Identifier: {
- Value: value // (int)
+ Value: value // (integer literal)
Deprecated: true // (boolean) Defaults to false.
}
+ ************* Supported integer literals *********************************
+ decimal: 1337 // no prefix
+ hexadecimal: 0x1337 // prefix: 0x
+ octal: 0o1337 // prefix: 0o
+ binary: 0b101101 // prefix: 0b
+
+ Underscores can also be used as visual separators for digit grouping purposes:
+ 2_147_483_647
+ 0x7FFF_FFFF
+
+ Keep in mind that number literals cannot start or end with a separator and no
+ more than one separator can be used in a row (so 12_3___456 is illegal).
**************************************************************************/
comment__: "Weekdays"
@@ -428,17 +440,20 @@ constants_db: {
mf_nogstorage: 60
comment__: "Cell Properties"
- cell_walkable: 0
- cell_shootable: 1
- cell_water: 2
- cell_npc: 3
- cell_basilica: 4
- cell_landprotector: 5
- cell_novending: 6
- cell_nochat: 7
+ cell_walkable: 0
+ cell_shootable: 1
+ cell_water: 2
+ cell_npc: 3
+ cell_basilica: 4
+ cell_landprotector: 5
+ cell_novending: 6
+ cell_nochat: 7
+ cell_icewall: 8
+ cell_noicewall: 9
+ cell_noskill: 10
comment__: "Cell checks"
- //cell_gettype: 0
+ cell_gettype: 0
cell_chkwall: 1
cell_chkwater: 2
cell_chkcliff: 3
@@ -446,12 +461,15 @@ constants_db: {
cell_chkreach: 5
cell_chknopass: 6
cell_chknoreach: 7
- //cell_chkstack: 8
+ cell_chkstack: 8
cell_chknpc: 9
cell_chkbasilica: 10
cell_chklandprotector: 11
cell_chknovending: 12
cell_chknochat: 13
+ cell_chkicewall: 14
+ cell_chknoicewall: 15
+ cell_chknoskill: 16
comment__: "Bonuses / Parameter IDs"
bMaxHP: 6
@@ -1393,7 +1411,7 @@ constants_db: {
SC_TUNAPARTY: 649
SC_SHRIMP: 650
SC_FRESHSHRIMP: 651
-
+
SC_DAILYSENDMAILCNT: 653
// Summer 2 Costume
@@ -1402,7 +1420,112 @@ constants_db: {
// Clan System
SC_CLAN_INFO: 654
- comment__: "petstat"
+ SC_SIT: 655
+ SC_MOON: 656
+ SC_TING: 657
+ SC_DEVIL1: 658
+ SC_RIDING: 659
+ SC_FALCON: 660
+ SC_WUGRIDER: 661
+ SC_POSTDELAY: 662
+ SC_ON_PUSH_CART: 663
+ SC_RESIST_PROPERTY_WATER: 664
+ SC_RESIST_PROPERTY_GROUND: 665
+ SC_RESIST_PROPERTY_FIRE: 666
+ SC_RESIST_PROPERTY_WIND: 667
+ SC_CLIENT_ONLY_EQUIP_ARROW: 668
+ SC_MADOGEAR: 669
+ SC_POPECOOKIE: 670
+ SC_VITALIZE_POTION: 671
+ SC_SKF_MATK: 672
+ SC_SKF_ATK: 673
+ SC_SKF_ASPD: 674
+ SC_SKF_CAST: 675
+ SC_ALMIGHTY: 676
+
+ comment__: "Emotes"
+ e_gasp: 0
+ e_what: 1
+ e_ho: 2
+ e_lv: 3
+ e_swt: 4
+ e_ic: 5
+ e_an: 6
+ e_ag: 7
+ e_cash: 8
+ e_dots: 9
+ e_scissors: 10
+ e_rock: 11
+ e_paper: 12
+ e_korea: 13
+ e_lv2: 14
+ e_thx: 15
+ e_wah: 16
+ e_sry: 17
+ e_heh: 18
+ e_swt2: 19
+ e_hmm: 20
+ e_no1: 21
+ e_no: 22
+ e_omg: 23
+ e_oh: 24
+ e_X: 25
+ e_hlp: 26
+ e_go: 27
+ e_sob: 28
+ e_gg: 29
+ e_kis: 30
+ e_kis2: 31
+ e_pif: 32
+ e_ok: 33
+ e_mute: 34
+ e_indonesia: 35
+ e_bzz: 36
+ e_rice: 37
+ e_awsm: 38
+ e_meh: 39
+ e_shy: 40
+ e_pat: 41
+ e_mp: 42
+ e_slur: 43
+ e_com: 44
+ e_yawn: 45
+ e_grat: 46
+ e_hp: 47
+ e_philippines: 48
+ e_malaysia: 49
+ e_singapore: 50
+ e_brazil: 51
+ e_flash: 52
+ e_spin: 53
+ e_sigh: 54
+ e_dum: 55
+ e_loud: 56
+ e_otl: 57
+ e_dice1: 58
+ e_dice2: 59
+ e_dice3: 60
+ e_dice4: 61
+ e_dice5: 62
+ e_dice6: 63
+ e_india: 64
+ e_luv: 65
+ e_russia: 66
+ e_virgin: 67
+ e_mobile: 68
+ e_mail: 69
+ e_chinese: 70
+ e_antenna1: 71
+ e_antenna2: 72
+ e_antenna3: 73
+ e_hum: 74
+ e_abs: 75
+ e_oops: 76
+ e_spit: 77
+ e_ene: 78
+ e_panic: 79
+ e_whisp: 80
+
comment__: "petstat - deprecated, use *getpetinfo"
PET_CLASS: {
Value: 1
@@ -1410,11 +1533,11 @@ constants_db: {
}
PET_NAME: {
Value: 2
- Deprecated: true
+ Deprecated: true
}
PET_LEVEL: {
Value: 3
- Deprecated: true
+ Deprecated: true
}
PET_HUNGRY: {
Value: 4
@@ -3490,6 +3613,100 @@ constants_db: {
4_M_AC_RUMIN: 10246
4_M_HIGH_WIZARD: 10247
4_SYSTEM_BOX: 10248
+ 4_STEELBOX: 10249
+ 4_WOODBOX: 10250
+ 4_M_POPFESTA: 10251
+ 4_BONFIRE: 10252
+ 4_PCCOUNT: 10253
+ 4_LAVAGOLEM: 10254
+ 4_F_IA: 10255
+ 4_LOCKE: 10256
+ 4_LIL_LIF: 10257
+ 4_LIL_LIF2: 10258
+ 4_F_DRAGONHAT: 10259
+ 4_M_DRAGONHAT: 10260
+ JP_NPC02: 10261
+ JP_NPC03: 10262
+ JP_NPC04: 10263
+ JP_NPC05: 10264
+ JP_NPC06: 10265
+ JP_NPC07: 10266
+ JP_NPC08: 10267
+ JP_NPC09: 10268
+ JP_NPC10: 10269
+ 4_FIRERING: 10270
+ 4_SCATLETON: 10271
+ 4_JP_AB_NPC_001: 10272
+ 4_JP_AB_NPC_002: 10273
+ 4_JP_AB_NPC_003: 10274
+ 4_JP_AB_NPC_004: 10275
+ 4_JP_AB_NPC_005: 10276
+ 4_JP_AB_NPC_006: 10277
+ 4_JP_AB_NPC_007: 10278
+ 4_JP_AB_NPC_008: 10279
+ 4_JJAK: 10280
+ 4_M_SNOWMAN_B: 10281
+ 4_M_SNOWMAN_R: 10282
+ 4_M_SNOWMAN_G: 10283
+ WARPEFFECTNPC: 10284
+ 4_HEN: 10285
+ 4_F_DANGDANG: 10286
+ 4_M_DANGDANG: 10287
+ 4_F_DANGDANG1: 10288
+ 4_LEAFCAT: 10289
+ 4_NASARIAN: 10290
+ 4_NASARIAN_EM: 10291
+ 4_TEDDY_BEAR_W: 10292
+ 4_TEDDY_BEAR_B: 10293
+ 4_TEDDY_BEAR_B_L: 10294
+ 4_M_SOULREAPER: 10295
+ 4_F_SE_SUN: 10296
+ 4_M_SE_MOON: 10297
+ 4_M_SE_STAR: 10298
+ 4_EP17_KAYA: 10299
+ 4_EP17_AS: 10300
+ 4_EP17_ELYUMINA: 10301
+ 4_EP17_MORNING: 10302
+ 4_EP17_MIGUEL: 10303
+ 4_EP17_NIHIL_K: 10304
+ 4_EP17_MIGUEL_D: 10305
+ 4_ED_SCHMIDT: 10306
+ 4_ED_OSCAR: 10307
+ 4_ED_ORB: 10308
+ 4_ED_FENCE: 10309
+ 4_M_ANDREA: 10310
+ 4_M_ANDREA_D: 10311
+ 4_F_ANES: 10312
+ 4_F_ANES_D: 10313
+ 4_M_SILVANO: 10314
+ 4_M_SILVANO_D: 10315
+ 4_F_CECILIA: 10316
+ 4_F_CECILIA_D: 10317
+ 4_M_MD_SEYREN: 10318
+ 4_M_MD_EREMES: 10319
+ 4_M_MD_HARWORD: 10320
+ 4_F_MD_MAGALETA: 10321
+ 4_F_MD_SHECIL: 10322
+ 4_F_MD_KATRINN: 10323
+ 4_M_MD_SEYREN_H: 10324
+ 4_M_MD_EREMES_H: 10325
+ 4_M_MD_HARWORD_H: 10326
+ 4_F_MD_MAGALETA_H: 10327
+ 4_F_MD_SHECIL_H: 10328
+ 4_F_MD_KATRINN_H: 10329
+ 4_M_MD_SEYREN_D: 10330
+ 4_M_MD_EREMES_D: 10331
+ 4_M_MD_HARWORD_D: 10332
+ 4_F_MD_MAGALETA_D: 10333
+ 4_F_MD_SHECIL_D: 10334
+ 4_F_MD_KATRINN_D: 10335
+ 4_F_MD_YGNIZEM: 10336
+ 4_F_ERENE: 10337
+ 4_M_EINCPTMINER: 10338
+ 4_F_EINRESERCHER: 10339
+ 4_F_REINDEER: 10340
+ 4_PIGOCTO: 10341
+ 4_JP_16TH: 10343
comment__: "Mercenary IDs"
MER_LIF: 6001
@@ -3745,6 +3962,7 @@ constants_db: {
SEX_MALE: 1
SEX_ANY: 2
+
comment__: "HatEffect Constants"
HAT_EF_BLOSSOM_FLUTTERING: 1
HAT_EF_MERMAID_LONGING: 2
@@ -3886,8 +4104,659 @@ constants_db: {
comment__: "inventory expansion"
INVENTORY_INCREASE_STEP: 10
- // for disable warning
- ITMCHAIN_ORE: 1
+ comment__: "Status Effect Icons"
+ SI_BLANK: -1
+ SI_PROVOKE: 0
+ SI_ENDURE: 1
+ SI_TWOHANDQUICKEN: 2
+ SI_CONCENTRATION: 3
+ SI_HIDING: 4
+ SI_CLOAKING: 5
+ SI_ENCHANTPOISON: 6
+ SI_POISONREACT: 7
+ SI_QUAGMIRE: 8
+ SI_ANGELUS: 9
+ SI_BLESSING: 10
+ SI_CRUCIS: 11
+ SI_INC_AGI: 12
+ SI_DEC_AGI: 13
+ SI_SLOWPOISON: 14
+ SI_IMPOSITIO: 15
+ SI_SUFFRAGIUM: 16
+ SI_ASPERSIO: 17
+ SI_BENEDICTIO: 18
+ SI_KYRIE: 19
+ SI_MAGNIFICAT: 20
+ SI_GLORIA: 21
+ SI_LEXAETERNA: 22
+ SI_ADRENALINE: 23
+ SI_WEAPONPERFECT: 24
+ SI_OVERTHRUST: 25
+ SI_MAXIMIZE: 26
+ SI_RIDING: 27
+ SI_FALCON: 28
+ SI_TRICKDEAD: 29
+ SI_SHOUT: 30
+ SI_ENERGYCOAT: 31
+ SI_BROKENARMOR: 32
+ SI_BROKENWEAPON: 33
+ SI_ILLUSION: 34
+ SI_WEIGHTOVER50: 35
+ SI_WEIGHTOVER90: 36
+ SI_ATTHASTE_POTION1: 37
+ SI_ATTHASTE_POTION2: 38
+ SI_ATTHASTE_POTION3: 39
+ SI_ATTHASTE_INFINITY: 40
+ SI_MOVHASTE_POTION: 41
+ SI_MOVHASTE_INFINITY: 42
+ SI_ANKLESNARE: 45
+ SI_POSTDELAY: 46
+ SI_NOEQUIPWEAPON: 50
+ SI_NOEQUIPSHIELD: 51
+ SI_NOEQUIPARMOR: 52
+ SI_NOEQUIPHELM: 53
+ SI_PROTECTWEAPON: 54
+ SI_PROTECTSHIELD: 55
+ SI_PROTECTARMOR: 56
+ SI_PROTECTHELM: 57
+ SI_AUTOGUARD: 58
+ SI_REFLECTSHIELD: 59
+ SI_PROVIDENCE: 61
+ SI_DEFENDER: 62
+ SI_AUTOSPELL: 65
+ SI_SPEARQUICKEN: 68
+ SI_EXPLOSIONSPIRITS: 86
+ SI_STEELBODY: 87
+ SI_EXTREMITYFIST: 88
+ SI_PROPERTYFIRE: 90
+ SI_PROPERTYWATER: 91
+ SI_PROPERTYWIND: 92
+ SI_PROPERTYGROUND: 93
+ SI_STOP: 95
+ SI_PROPERTYUNDEAD: 97
+ SI_AURABLADE: 103
+ SI_PARRYING: 104
+ SI_LKCONCENTRATION: 105
+ SI_TENSIONRELAX: 106
+ SI_BERSERK: 107
+ SI_ASSUMPTIO: 110
+ SI_GROUNDMAGIC: 112
+ SI_MAGICPOWER: 113
+ SI_EDP: 114
+ SI_TRUESIGHT: 115
+ SI_WINDWALK: 116
+ SI_MELTDOWN: 117
+ SI_CARTBOOST: 118
+ SI_SWORDREJECT: 120
+ SI_MARIONETTE_MASTER: 121
+ SI_MARIONETTE: 122
+ SI_MOON: 123
+ SI_BLOODING: 124
+ SI_JOINTBEAT: 125
+ SI_PROTECTEXP: 130
+ SI_AUTOBERSERK: 132
+ SI_RUN: 133
+ SI_TING: 134
+ SI_STORMKICK_ON: 135
+ SI_STORMKICK_READY: 136
+ SI_DOWNKICK_ON: 137
+ SI_DOWNKICK_READY: 138
+ SI_TURNKICK_ON: 139
+ SI_TURNKICK_READY: 140
+ SI_COUNTER_ON: 141
+ SI_COUNTER_READY: 142
+ SI_DODGE_ON: 143
+ SI_DODGE_READY: 144
+ SI_STRUP: 145
+ SI_PROPERTYDARK: 146
+ SI_ADRENALINE2: 147
+ SI_PROPERTYTELEKINESIS: 148
+ SI_SOULLINK: 149
+ SI_PLUSATTACKPOWER: 150
+ SI_PLUSMAGICPOWER: 151
+ SI_DEVIL1: 152
+ SI_KAITE: 153
+ SI_KAIZEL: 156
+ SI_KAAHI: 157
+ SI_KAUPE: 158
+ SI_SMA_READY: 159
+ SI_SKE: 160
+ SI_ONEHANDQUICKEN: 161
+ SI_SG_SUN_WARM: 165
+ SI_SUN_COMFORT: 169
+ SI_MOON_COMFORT: 170
+ SI_STAR_COMFORT: 171
+ SI_PRESERVE: 181
+ SI_INCSTR: 182
+ SI_CLAIRVOYANCE: 184
+ SI_MOVESLOW_POTION: 185
+ SI_DOUBLECASTING: 186
+ SI_OVERTHRUSTMAX: 188
+ SI_TAROTCARD: 191
+ SI_CR_SHRINK: 197
+ SI_WZ_SIGHTBLASTER: 198
+ SI_DC_WINKCHARM: 199
+ SI_RG_CCONFINE_M: 200
+ SI_RG_CCONFINE_S: 201
+ SI_GS_MADNESSCANCEL: 203
+ SI_GS_GATLINGFEVER: 204
+ SI_EARTHSCROLL: 205
+ SI_NJ_UTSUSEMI: 206
+ SI_NJ_BUNSINJYUTSU: 207
+ SI_NJ_NEN: 208
+ SI_GS_ADJUSTMENT: 209
+ SI_GS_ACCURACY: 210
+ SI_NJ_SUITON: 211
+ SI_FOOD_STR: 241
+ SI_FOOD_AGI: 242
+ SI_FOOD_VIT: 243
+ SI_FOOD_DEX: 244
+ SI_FOOD_INT: 245
+ SI_FOOD_LUK: 246
+ SI_FOOD_BASICAVOIDANCE: 247
+ SI_FOOD_BASICHIT: 248
+ SI_FOOD_CRITICALSUCCESSVALUE: 249
+ SI_CASH_PLUSEXP: 250
+ SI_CASH_DEATHPENALTY: 251
+ SI_CASH_RECEIVEITEM: 252
+ SI_CASH_BOSS_ALARM: 253
+ SI_FOOD_STR_CASH: 271
+ SI_FOOD_AGI_CASH: 272
+ SI_FOOD_VIT_CASH: 273
+ SI_FOOD_DEX_CASH: 274
+ SI_FOOD_INT_CASH: 275
+ SI_FOOD_LUK_CASH: 276
+ SI_MER_FLEE: 277
+ SI_MER_ATK: 278
+ SI_MER_HP: 279
+ SI_MER_SP: 280
+ SI_MER_HIT: 281
+ SI_SLOWCAST: 282
+ SI_CRITICALWOUND: 286
+ SI_MOVHASTE_HORSE: 289
+ SI_PROTECT_DEF: 290
+ SI_PROTECT_MDEF: 291
+ SI_HEALPLUS: 292
+ SI_S_LIFEPOTION: 293
+ SI_L_LIFEPOTION: 294
+ SI_CRITICALPERCENT: 295
+ SI_PLUSAVOIDVALUE: 296
+ SI_ATKER_ASPD: 297
+ SI_TARGET_ASPD: 298
+ SI_ATKER_MOVESPEED: 299
+ SI_ATKER_BLOOD: 300
+ SI_TARGET_BLOOD: 301
+ SI_ARMOR_PROPERTY: 302
+ SI_HELLPOWER: 304
+ SI_STEAMPACK: 305
+ SI_INVINCIBLE: 311
+ SI_CASH_PLUSONLYJOBEXP: 312
+ SI_PARTYFLEE: 313
+ SI_ANGEL_PROTECT: 314
+ SI_ENCHANTBLADE: 316
+ SI_DEATHBOUND: 317
+ SI_REFRESH: 318
+ SI_GIANTGROWTH: 319
+ SI_STONEHARDSKIN: 320
+ SI_VITALITYACTIVATION: 321
+ SI_FIGHTINGSPIRIT: 322
+ SI_ABUNDANCE: 323
+ SI_REUSE_MILLENNIUMSHIELD: 324
+ SI_REUSE_CRUSHSTRIKE: 325
+ SI_REUSE_REFRESH: 326
+ SI_REUSE_STORMBLAST: 327
+ SI_VENOMIMPRESS: 328
+ SI_EPICLESIS: 329
+ SI_ORATIO: 330
+ SI_LAUDAAGNUS: 331
+ SI_LAUDARAMUS: 332
+ SI_CLOAKINGEXCEED: 333
+ SI_HALLUCINATIONWALK: 334
+ SI_HALLUCINATIONWALK_POSTDELAY: 335
+ SI_RENOVATIO: 336
+ SI_WEAPONBLOCKING: 337
+ SI_WEAPONBLOCKING_POSTDELAY: 338
+ SI_ROLLINGCUTTER: 339
+ SI_EXPIATIO: 340
+ SI_POISONINGWEAPON: 341
+ SI_TOXIN: 342
+ SI_PARALYSE: 343
+ SI_VENOMBLEED: 344
+ SI_MAGICMUSHROOM: 345
+ SI_DEATHHURT: 346
+ SI_PYREXIA: 347
+ SI_OBLIVIONCURSE: 348
+ SI_LEECHESEND: 349
+ SI_DUPLELIGHT: 350
+ SI_FROSTMISTY: 351
+ SI_FEARBREEZE: 352
+ SI_ELECTRICSHOCKER: 353
+ SI_MARSHOFABYSS: 354
+ SI_RECOGNIZEDSPELL: 355
+ SI_STASIS: 356
+ SI_WUGRIDER: 357
+ SI_WUGDASH: 358
+ SI_WUGBITE: 359
+ SI_CAMOUFLAGE: 360
+ SI_ACCELERATION: 361
+ SI_HOVERING: 362
+ SI_SPHERE_1: 363
+ SI_SPHERE_2: 364
+ SI_SPHERE_3: 365
+ SI_SPHERE_4: 366
+ SI_SPHERE_5: 367
+ SI_MVPCARD_TAOGUNKA: 368
+ SI_MVPCARD_MISTRESS: 369
+ SI_MVPCARD_ORCHERO: 370
+ SI_MVPCARD_ORCLORD: 371
+ SI_OVERHEAT_LIMITPOINT: 372
+ SI_OVERHEAT: 373
+ SI_SHAPESHIFT: 374
+ SI_INFRAREDSCAN: 375
+ SI_MAGNETICFIELD: 376
+ SI_NEUTRALBARRIER: 377
+ SI_NEUTRALBARRIER_MASTER: 378
+ SI_STEALTHFIELD: 379
+ SI_STEALTHFIELD_MASTER: 380
+ SI_MANU_ATK: 381
+ SI_MANU_DEF: 382
+ SI_SPL_ATK: 383
+ SI_SPL_DEF: 384
+ SI_REPRODUCE: 385
+ SI_MANU_MATK: 386
+ SI_SPL_MATK: 387
+ SI_STR_SCROLL: 388
+ SI_INT_SCROLL: 389
+ SI_LG_REFLECTDAMAGE: 390
+ SI_FORCEOFVANGUARD: 391
+ SI_BUCHEDENOEL: 392
+ SI_AUTOSHADOWSPELL: 393
+ SI_SHADOWFORM: 394
+ SI_RAID: 395
+ SI_SHIELDSPELL_DEF: 396
+ SI_SHIELDSPELL_MDEF: 397
+ SI_SHIELDSPELL_REF: 398
+ SI_BODYPAINT: 399
+ SI_EXEEDBREAK: 400
+ SI_ADORAMUS: 401
+ SI_PRESTIGE: 402
+ SI_INVISIBILITY: 403
+ SI_DEADLYINFECT: 404
+ SI_BANDING: 405
+ SI_EARTHDRIVE: 406
+ SI_INSPIRATION: 407
+ SI_ENERVATION: 408
+ SI_GROOMY: 409
+ SI_RAISINGDRAGON: 410
+ SI_IGNORANCE: 411
+ SI_LAZINESS: 412
+ SI_LIGHTNINGWALK: 413
+ SI_ACARAJE: 414
+ SI_UNLUCKY: 415
+ SI_CURSEDCIRCLE_ATKER: 416
+ SI_CURSEDCIRCLE_TARGET: 417
+ SI_WEAKNESS: 418
+ SI_CRESCENTELBOW: 419
+ SI_NOEQUIPACCESSARY: 420
+ SI_STRIPACCESSARY: 421
+ SI_MANHOLE: 422
+ SI_POPECOOKIE: 423
+ SI_FALLENEMPIRE: 424
+ SI_GENTLETOUCH_ENERGYGAIN: 425
+ SI_GENTLETOUCH_CHANGE: 426
+ SI_GENTLETOUCH_REVITALIZE: 427
+ SI_BLOODYLUST: 428
+ SI_SWINGDANCE: 429
+ SI_SYMPHONYOFLOVERS: 430
+ SI_PROPERTYWALK: 431
+ SI_SPELLFIST: 432
+ SI_NETHERWORLD: 433
+ SI_SIREN: 434
+ SI_DEEPSLEEP: 435
+ SI_SIRCLEOFNATURE: 436
+ SI_COLD: 437
+ SI_GLOOMYDAY: 438
+ SI_SONG_OF_MANA: 439
+ SI_CLOUDKILL: 440
+ SI_DANCEWITHWUG: 441
+ SI_RUSHWINDMILL: 442
+ SI_ECHOSONG: 443
+ SI_HARMONIZE: 444
+ SI_STRIKING: 445
+ SI_MOONLITSERENADE: 447
+ SI_SATURDAYNIGHTFEVER: 448
+ SI_SITDOWN_FORCE: 449
+ SI_ANALYZE: 450
+ SI_LERADSDEW: 451
+ SI_MELODYOFSINK: 452
+ SI_WARCRYOFBEYOND: 453
+ SI_UNLIMITEDHUMMINGVOICE: 454
+ SI_SPELLBOOK1: 455
+ SI_SPELLBOOK2: 456
+ SI_SPELLBOOK3: 457
+ SI_FREEZE_SP: 458
+ SI_GN_TRAINING_SWORD: 459
+ SI_GN_REMODELING_CART: 460
+ SI_CARTSBOOST: 461
+ SI_FIXEDCASTINGTM_REDUCE: 462
+ SI_THORNTRAP: 463
+ SI_BLOODSUCKER: 464
+ SI_SPORE_EXPLOSION: 465
+ SI_DEMONIC_FIRE: 466
+ SI_FIRE_EXPANSION_SMOKE_POWDER: 467
+ SI_FIRE_EXPANSION_TEAR_GAS: 468
+ SI_BLOCKING_PLAY: 469
+ SI_MANDRAGORA: 470
+ SI_ACTIVATE: 471
+ SI_SECRAMENT: 472
+ SI_ASSUMPTIO2: 473
+ SI_TK_SEVENWIND: 474
+ SI_LIMIT_ODINS_RECALL: 475
+ SI_STOMACHACHE: 476
+ SI_MYSTERIOUS_POWDER: 477
+ SI_MELON_BOMB: 478
+ SI_BANANA_BOMB_SITDOWN_POSTDELAY: 479
+ SI_PROMOTE_HEALTH_RESERCH: 480
+ SI_ENERGY_DRINK_RESERCH: 481
+ SI_EXTRACT_WHITE_POTION_Z: 482
+ SI_VITATA_500: 483
+ SI_EXTRACT_SALAMINE_JUICE: 484
+ SI_BOOST500: 485
+ SI_FULL_SWING_K: 486
+ SI_MANA_PLUS: 487
+ SI_MUSTLE_M: 488
+ SI_LIFE_FORCE_F: 489
+ SI_VACUUM_EXTREME: 490
+ SI_SAVAGE_STEAK: 491
+ SI_COCKTAIL_WARG_BLOOD: 492
+ SI_MINOR_BBQ: 493
+ SI_SIROMA_ICE_TEA: 494
+ SI_DROCERA_HERB_STEAMED: 495
+ SI_PUTTI_TAILS_NOODLES: 496
+ SI_BANANA_BOMB: 497
+ SI_SUMMON_AGNI: 498
+ SI_SPELLBOOK4: 499
+ SI_SPELLBOOK5: 500
+ SI_SPELLBOOK6: 501
+ SI_SPELLBOOK7: 502
+ SI_ELEMENTAL_AGGRESSIVE: 503
+ SI_RETURN_TO_ELDICASTES: 504
+ SI_BANDING_DEFENCE: 505
+ SI_SKELSCROLL: 506
+ SI_DISTRUCTIONSCROLL: 507
+ SI_ROYALSCROLL: 508
+ SI_IMMUNITYSCROLL: 509
+ SI_MYSTICSCROLL: 510
+ SI_BATTLESCROLL: 511
+ SI_ARMORSCROLL: 512
+ SI_FREYJASCROLL: 513
+ SI_SOULSCROLL: 514
+ SI_CIRCLE_OF_FIRE: 515
+ SI_CIRCLE_OF_FIRE_OPTION: 516
+ SI_FIRE_CLOAK: 517
+ SI_FIRE_CLOAK_OPTION: 518
+ SI_WATER_SCREEN: 519
+ SI_WATER_SCREEN_OPTION: 520
+ SI_WATER_DROP: 521
+ SI_WATER_DROP_OPTION: 522
+ SI_WIND_STEP: 523
+ SI_WIND_STEP_OPTION: 524
+ SI_WIND_CURTAIN: 525
+ SI_WIND_CURTAIN_OPTION: 526
+ SI_WATER_BARRIER: 527
+ SI_ZEPHYR: 528
+ SI_SOLID_SKIN: 529
+ SI_SOLID_SKIN_OPTION: 530
+ SI_STONE_SHIELD: 531
+ SI_STONE_SHIELD_OPTION: 532
+ SI_POWER_OF_GAIA: 533
+ SI_PYROTECHNIC: 539
+ SI_PYROTECHNIC_OPTION: 540
+ SI_HEATER: 541
+ SI_HEATER_OPTION: 542
+ SI_TROPIC: 543
+ SI_TROPIC_OPTION: 544
+ SI_AQUAPLAY: 545
+ SI_AQUAPLAY_OPTION: 546
+ SI_COOLER: 547
+ SI_COOLER_OPTION: 548
+ SI_CHILLY_AIR: 549
+ SI_CHILLY_AIR_OPTION: 550
+ SI_GUST: 551
+ SI_GUST_OPTION: 552
+ SI_BLAST: 553
+ SI_BLAST_OPTION: 554
+ SI_WILD_STORM: 555
+ SI_WILD_STORM_OPTION: 556
+ SI_PETROLOGY: 557
+ SI_PETROLOGY_OPTION: 558
+ SI_CURSED_SOIL: 559
+ SI_CURSED_SOIL_OPTION: 560
+ SI_UPHEAVAL: 561
+ SI_UPHEAVAL_OPTION: 562
+ SI_TIDAL_WEAPON: 563
+ SI_TIDAL_WEAPON_OPTION: 564
+ SI_ROCK_CRUSHER: 565
+ SI_ROCK_CRUSHER_ATK: 566
+ SI_FIRE_INSIGNIA: 567
+ SI_WATER_INSIGNIA: 568
+ SI_WIND_INSIGNIA: 569
+ SI_EARTH_INSIGNIA: 570
+ SI_EQUIPED_FLOOR: 571
+ SI_GUARDIAN_RECALL: 572
+ SI_MORA_BUFF: 573
+ SI_REUSE_LIMIT_G: 574
+ SI_REUSE_LIMIT_H: 575
+ SI_NEEDLE_OF_PARALYZE: 576
+ SI_PAIN_KILLER: 577
+ SI_G_LIFEPOTION: 578
+ SI_VITALIZE_POTION: 579
+ SI_LIGHT_OF_REGENE: 580
+ SI_OVERED_BOOST: 581
+ SI_SILENT_BREEZE: 582
+ SI_ODINS_POWER: 583
+ SI_STYLE_CHANGE: 584
+ SI_SONIC_CLAW_POSTDELAY: 585
+ SI_SILVERVEIN_RUSH_POSTDELAY: 596
+ SI_MIDNIGHT_FRENZY_POSTDELAY: 597
+ SI_GOLDENE_FERSE: 598
+ SI_ANGRIFFS_MODUS: 599
+ SI_TINDER_BREAKER: 600
+ SI_TINDER_BREAKER_POSTDELAY: 601
+ SI_CBC: 602
+ SI_CBC_POSTDELAY: 603
+ SI_EQC: 604
+ SI_MAGMA_FLOW: 605
+ SI_GRANITIC_ARMOR: 606
+ SI_PYROCLASTIC: 607
+ SI_VOLCANIC_ASH: 608
+ SI_SPIRITS_SAVEINFO1: 609
+ SI_SPIRITS_SAVEINFO2: 610
+ SI_MAGIC_CANDY: 611
+ SI_SEARCH_STORE_INFO: 612
+ SI_ALL_RIDING: 613
+ SI_ALL_RIDING_REUSE_LIMIT: 614
+ SI_MACRO: 615
+ SI_MACRO_POSTDELAY: 616
+ SI_BEER_BOTTLE_CAP: 617
+ SI_OVERLAPEXPUP: 618
+ SI_PC_IZ_DUN05: 619
+ SI_CRUSHSTRIKE: 620
+ SI_MONSTER_TRANSFORM: 621
+ SI_SIT: 622
+ SI_ONAIR: 623
+ SI_MTF_ASPD: 624
+ SI_MTF_RANGEATK: 625
+ SI_MTF_MATK: 626
+ SI_MTF_MLEATKED: 627
+ SI_MTF_CRIDAMAGE: 628
+ SI_REUSE_LIMIT_MTF: 629
+ SI_MACRO_PERMIT: 630
+ SI_MACRO_PLAY: 631
+ SI_SKF_CAST: 632
+ SI_SKF_ASPD: 633
+ SI_SKF_ATK: 634
+ SI_SKF_MATK: 635
+ SI_REWARD_PLUSONLYJOBEXP: 636
+ SI_HANDICAPSTATE_NORECOVER: 637
+ SI_SET_NUM_DEF: 638
+ SI_SET_NUM_MDEF: 639
+ SI_SET_PER_DEF: 640
+ SI_SET_PER_MDEF: 641
+ SI_PARTYBOOKING_SEARCH_DEALY: 642
+ SI_PARTYBOOKING_REGISTER_DEALY: 643
+ SI_PERIOD_TIME_CHECK_DETECT_SKILL: 644
+ SI_KO_JYUMONJIKIRI: 645
+ SI_MEIKYOUSISUI: 646
+ SI_ATTHASTE_CASH: 647
+ SI_EQUIPPED_DIVINE_ARMOR: 648
+ SI_EQUIPPED_HOLY_ARMOR: 649
+ SI_2011RWC: 650
+ SI_KYOUGAKU: 651
+ SI_IZAYOI: 652
+ SI_ZENKAI: 653
+ SI_KG_KAGEHUMI: 654
+ SI_KYOMU: 655
+ SI_KAGEMUSYA: 656
+ SI_ZANGETSU: 657
+ SI_PHI_DEMON: 658
+ SI_GENSOU: 659
+ SI_AKAITSUKI: 660
+ SI_TETANY: 661
+ SI_GM_BATTLE: 662
+ SI_GM_BATTLE2: 663
+ SI_2011RWC_SCROLL: 664
+ SI_ACTIVE_MONSTER_TRANSFORM: 665
+ SI_MYSTICPOWDER: 666
+ SI_ECLAGE_RECALL: 667
+ SI_ENTRY_QUEUE_APPLY_DELAY: 668
+ SI_REUSE_LIMIT_ECL: 669
+ SI_M_LIFEPOTION: 670
+ SI_ENTRY_QUEUE_NOTIFY_ADMISSION_TIME_OUT: 671
+ SI_UNKNOWN_NAME: 672
+ SI_ON_PUSH_CART: 673
+ SI_HAT_EFFECT: 674
+ SI_FLOWER_LEAF: 675
+ SI_RAY_OF_PROTECTION: 676
+ SI_GLASTHEIM_ATK: 677
+ SI_GLASTHEIM_DEF: 678
+ SI_GLASTHEIM_HEAL: 679
+ SI_GLASTHEIM_HIDDEN: 680
+ SI_GLASTHEIM_STATE: 681
+ SI_GLASTHEIM_ITEMDEF: 682
+ SI_GLASTHEIM_HPSP: 683
+ SI_HOMUN_SKILL_POSTDELAY: 684
+ SI_ALMIGHTY: 685
+ SI_GVG_GIANT: 686
+ SI_GVG_GOLEM: 687
+ SI_GVG_STUN: 688
+ SI_GVG_STONE: 689
+ SI_GVG_FREEZ: 690
+ SI_GVG_SLEEP: 691
+ SI_GVG_CURSE: 692
+ SI_GVG_SILENCE: 693
+ SI_GVG_BLIND: 694
+ SI_CLIENT_ONLY_EQUIP_ARROW: 695
+ SI_CLAN_INFO: 696
+ SI_JP_EVENT01: 697
+ SI_JP_EVENT02: 698
+ SI_JP_EVENT03: 699
+ SI_JP_EVENT04: 700
+ SI_TELEPORT_FIXEDCASTINGDELAY: 701
+ SI_GEFFEN_MAGIC1: 702
+ SI_GEFFEN_MAGIC2: 703
+ SI_GEFFEN_MAGIC3: 704
+ SI_QUEST_BUFF1: 705
+ SI_QUEST_BUFF2: 706
+ SI_QUEST_BUFF3: 707
+ SI_REUSE_LIMIT_RECALL: 708
+ SI_SAVEPOSITION: 709
+ SI_HANDICAPSTATE_ICEEXPLO: 710
+ SI_FENRIR_CARD: 711
+ SI_REUSE_LIMIT_ASPD_POTION: 712
+ SI_MAXPAIN: 713
+ SI_PC_STOP: 714
+ SI_FRIGG_SONG: 715
+ SI_OFFERTORIUM: 716
+ SI_TELEKINESIS_INTENSE: 717
+ SI_MOONSTAR: 718
+ SI_STRANGELIGHTS: 719
+ SI_FULL_THROTTLE: 720
+ SI_REBOUND: 721
+ SI_UNLIMIT: 722
+ SI_KINGS_GRACE: 723
+ SI_ITEM_ATKMAX: 724
+ SI_ITEM_ATKMIN: 725
+ SI_ITEM_MATKMAX: 726
+ SI_ITEM_MATKMIN: 727
+ SI_SUPER_STAR: 728
+ SI_HIGH_RANKER: 729
+ SI_DARKCROW: 730
+ SI_2013_VALENTINE1: 731
+ SI_2013_VALENTINE2: 732
+ SI_2013_VALENTINE3: 733
+ SI_ILLUSIONDOPING: 734
+ SI_CHILL: 736
+ SI_BURNT: 737
+ SI_FLASHCOMBO: 740
+ SI_CUP_OF_BOZA: 751
+ SI_B_TRAP: 752
+ SI_E_CHAIN: 753
+ SI_E_QD_SHOT_READY: 754
+ SI_C_MARKER: 755
+ SI_H_MINE: 756
+ SI_H_MINE_SPLASH: 757
+ SI_P_ALTER: 758
+ SI_HEAT_BARREL: 759
+ SI_ANTI_M_BLAST: 760
+ SI_SLUGSHOT: 761
+ SI_SWORDCLAN: 762
+ SI_ARCWANDCLAN: 763
+ SI_GOLDENMACECLAN: 764
+ SI_CROSSBOWCLAN: 765
+ SI_PACKING_ENVELOPE1: 766
+ SI_PACKING_ENVELOPE2: 767
+ SI_PACKING_ENVELOPE3: 768
+ SI_PACKING_ENVELOPE4: 769
+ SI_PACKING_ENVELOPE5: 770
+ SI_PACKING_ENVELOPE6: 771
+ SI_PACKING_ENVELOPE7: 772
+ SI_PACKING_ENVELOPE8: 773
+ SI_PACKING_ENVELOPE9: 774
+ SI_PACKING_ENVELOPE10: 775
+ SI_GLASTHEIM_TRANS: 776
+ SI_HEAT_BARREL_AFTER: 778
+ SI_DECORATION_OF_MUSIC: 779
+ SI_MTF_MHP: 793
+ SI_MTF_MSP: 794
+ SI_MTF_PUMPKIN: 795
+ SI_MTF_HITFLEE: 796
+ SI_FLOWERSMOKE: 822
+ SI_FSTONE: 823
+ SI_DAILYSENDMAILCNT: 824
+ SI_LJOSALFAR: 826
+ SI_HAPPINESS_STAR: 849
+ SI_DRESS_UP: 856
+ SI_MAPLE_FALLS: 857
+ SI_MERMAID_LONGING: 863
+ SI_MAGICAL_FEATHER: 864
+ SI_TIME_ACCESSORY: 872
+ SI_SU_STOOP: 893
+ SI_CATNIPPOWDER: 894
+ SI_BLOSSOM_FLUTTERING: 895
+ SI_SV_ROOTTWIST: 896
+ SI_RESIST_PROPERTY_WATER: 908
+ SI_RESIST_PROPERTY_GROUND: 909
+ SI_RESIST_PROPERTY_FIRE: 910
+ SI_RESIST_PROPERTY_WIND: 911
+ SI_BITESCAR: 917
+ SI_ARCLOUSEDASH: 918
+ SI_TUNAPARTY: 919
+ SI_SHRIMP: 920
+ SI_FRESHSHRIMP: 921
+ SI_SUHIDE: 933
+ SI_SPRITEMABLE: 937
+ SI_MADOGEAR: 1149
/* ==================================================== */
/** evol constants **/
diff --git a/db/mob_avail.txt b/db/mob_avail.txt
deleted file mode 100644
index 8f216af7..00000000
--- a/db/mob_avail.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-// Mob Availability and Alias Database
-//
-// Structure of Database:
-// MobID,SpriteID{,Equipment}
-//
-// 01. MobID Mob ID to change.
-// 02. SpriteID Mob ID which will be sent to the client instead of MobID.
-// If 0, the mob becomes unavailable for use.
-// 03. Equipment Item ID of pet equipment (must be available for pet counterpart, or this will cause problems).
-//
-// To disguise a mob as a player:
-// MobID,SpriteID,Sex,Hair_Style,Hair_Color,Weapon,Shield,Head_Top,Head_Middle,Head_Bottom,Option,Dye_Color
-//
-// SpriteID is a job class value.
-// Weapon and Shield uses Item ID, while Head uses View ID.
diff --git a/db/mob_db2.conf b/db/mob_db2.conf
index e21cc2a2..f0c059fc 100644
--- a/db/mob_db2.conf
+++ b/db/mob_db2.conf
@@ -1,15 +1,42 @@
+//================= Hercules Database =====================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2015-2020 Hercules Dev Team
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+//= Mobs Database
+//=========================================================================
+
mob_db: (
-// Mobs Database
-//
-/******************************************************************************
- ************* Entry structure ************************************************
- ******************************************************************************
+/**************************************************************************
+ ************* Entry structure ********************************************
+ **************************************************************************
{
- // =================== Mandatory fields ===============================
+ // ================ Mandatory fields ==============================
Id: ID (int)
SpriteName: "SPRITE_NAME" (string)
Name: "Mob name" (string)
- // =================== Optional fields ================================
+ // ================ Optional fields ===============================
JName: "Mob name" (string)
Lv: level (int, defaults to 1)
Hp: health (int, defaults to 1)
@@ -30,25 +57,26 @@ mob_db: (
}
ViewRange: view range (int, defaults to 1)
ChaseRange: chase range (int, defaults to 1)
- Size: size (int, defaults to 1)
- Race: race (int, defaults to 0)
- Element: (type, level)
+ Size: size (string, defaults to "Size_Small")
+ Race: race (string, defaults to "RC_Formless")
+ Element: (type, level) (string/int, defaults to "Ele_Neutral"/1)
Mode: {
- CanMove: true/false (bool)
- Looter: true/false (bool)
- Aggressive: true/false (bool)
- Assist: true/false (bool)
- CastSensorIdle:true/false (bool)
- Boss: true/false (bool)
- Plant: true/false (bool)
- CanAttack: true/false (bool)
- Detector: true/false (bool)
- CastSensorChase: true/false (bool)
- ChangeChase: true/false (bool)
- Angry: true/false (bool)
- ChangeTargetMelee: true/false (bool)
- ChangeTargetChase: true/false (bool)
- TargetWeak: true/false (bool)
+ CanMove: true/false (bool, defaults to false)
+ Looter: true/false (bool, defaults to false)
+ Aggressive: true/false (bool, defaults to false)
+ Assist: true/false (bool, defaults to false)
+ CastSensorIdle:true/false (bool, defaults to false)
+ Boss: true/false (bool, defaults to false)
+ Plant: true/false (bool, defaults to false)
+ CanAttack: true/false (bool, defaults to false)
+ Detector: true/false (bool, defaults to false)
+ CastSensorChase: true/false (bool, defaults to false)
+ ChangeChase: true/false (bool, defaults to false)
+ Angry: true/false (bool, defaults to false)
+ ChangeTargetMelee: true/false (bool, defaults to false)
+ ChangeTargetChase: true/false (bool, defaults to false)
+ TargetWeak: true/false (bool, defaults to false)
+ NoKnockback: true/false (bool, defaults to false)
}
MoveSpeed: move speed (int, defaults to 0)
AttackDelay: attack delay (int, defaults to 4000)
@@ -67,7 +95,7 @@ mob_db: (
}
DamageTakenRate: damage taken rate (int, defaults to 100)
},
-******************************************************************************/
+**************************************************************************/
)
diff --git a/db/mob_skill_db2.conf b/db/mob_skill_db2.conf
index 77d35361..de4b014f 100644
--- a/db/mob_skill_db2.conf
+++ b/db/mob_skill_db2.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2018 Hercules Dev Team
+//= Copyright (C) 2018-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -36,20 +36,20 @@ mob_skill_db:(
<Skill_Constant>: {
ClearSkills: (boolean, defaults to false) allows cleaning all previous defined skills for the mob.
SkillLevel: (int, defaults to 1)
- SkillState: (int, defaults to 0)
- SkillTarget: (int, defaults to 0)
+ SkillState: (string, defaults to "MSS_ANY")
+ SkillTarget: (string, defaults to "MST_TARGET")
Rate: (int, defaults to 1)
CastTime: (int, defaults to 0)
Delay: (int, defaults to 0)
Cancelable: (boolean, defaults to false)
- CastCondition: (int, defaults to 0)
+ CastCondition: (string, defaults to "MSC_ALWAYS")
ConditionData: (int, defaults to 0)
val0: (int, defaults to 0)
val1: (int, defaults to 0)
val2: (int, defaults to 0)
val3: (int, defaults to 0)
val4: (int, defaults to 0)
- Emotion: (int, defaults to 0)
+ Emotion: (int, defaults to -1)
ChatMsgID: (int, defaults to 0)
}
}
diff --git a/db/pet_db2.conf b/db/pet_db2.conf
index 34a6130e..235e41c0 100644
--- a/db/pet_db2.conf
+++ b/db/pet_db2.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2018 Hercules Dev Team
+//= Copyright (C) 2018-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -34,30 +34,39 @@ pet_db:(
{
// ================ Mandatory fields ==============================
Id: ID (int)
- SpriteName: "Sprite_Name" (string)
Name: "Pet Name" (string)
+ EggItem: "Egg Item Constant" (string)
// ================ Optional fields ===============================
- TamingItem: Taming Item (string, defaults to 0)
- EggItem: Egg Id (string, defaults to 0)
- AccessoryItem: Equipment Id (string, defaults to 0)
- FoodItem: Food Id (string, defaults to 0)
- FoodEffectiveness: hunger points (int, defaults to 0)
- HungerDelay: hunger time (int, defaults to 0)
+ TamingItem: "Taming Item Constant" (string, defaults to 0)
+ FoodItem: "Food Item Constant" (string, defaults to "Pet_Food" (ID=537))
+ AccessoryItem: "Equipment Item Constant" (string, defaults to 0)
+ FoodEffectiveness: hunger points (int, defaults to 80)
+ HungerDelay: hunger time (int, defaults to 60)
+ HungerDecrement: hunger points (int, defaults to 1)
Intimacy: {
- Initial: start intimacy (int, defaults to 0)
- FeedIncrement: feeding intimacy (int, defaults to 0)
- OverFeedDecrement: overfeeding intimacy (int, defaults to 0)
- OwnerDeathDecrement: owner die intimacy (int, defaults to 0)
+ Initial: start intimacy (int, defaults to 250)
+ FeedIncrement: feeding intimacy (int, defaults to 10)
+ OverFeedDecrement: overfeeding intimacy (int, defaults to 100)
+ OwnerDeathDecrement: owner die intimacy (int, defaults to 20)
+ StarvingDelay: starving time (int, defaults to 20)
+ StarvingDecrement: starving intimacy (int, defaults to 20)
}
- CaptureRate: capture rate (int, defaults to 0)
- Speed: speed (int, defaults to 0)
+ CaptureRate: capture rate (int, defaults to 1000)
+ Speed: speed (int, defaults to 150)
SpecialPerformance: true/false (boolean, defaults to false)
TalkWithEmotes: convert talk (boolean, defaults to false)
- AttackRate: attack rate (int, defaults to 0)
- DefendRate: Defence attack (int, defaults to 0)
- ChangeTargetRate: change target (int, defaults to 0)
+ AttackRate: attack rate (int, defaults to 300)
+ DefendRate: Defence attack (int, defaults to 300)
+ ChangeTargetRate: change target (int, defaults to 800)
+ AutoFeed: true/false (boolean, defaults to false)
PetScript: <" Pet Script (can also be multi-line) ">
EquipScript: <" Equip Script (can also be multi-line) ">
+ Evolve: {
+ EggID: { (string, Evolved Pet EggID)
+ Name: Amount (items required to perform evolution)
+ ...
+ }
+ }
},
**************************************************************************/
// entries in this file will override the ones in /(pre-)re/pet_db.conf
diff --git a/db/re/item_chain.conf b/db/re/item_chain.conf
index 9d0026e4..77a9a598 100644
--- a/db/re/item_chain.conf
+++ b/db/re/item_chain.conf
@@ -1,21 +1,42 @@
-//====================================================
-//= _ _ _
-//= | | | | | |
-//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//================= Hercules Database =====================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
//= | | | | __/ | | (__| |_| | | __/\__ \
//= \_| |_/\___|_| \___|\__,_|_|\___||___/
-//=
-//= http://herc.ws/board/
-//================= More Information =================
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2013-2020 Hercules Dev Team
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//================= More Information ======================================
// http://herc.ws/board/topic/1244-official-item-grouppackagechain
-//====================================================
-// Structure of file:
-/*
+//=========================================================================
- ITMCHAIN_<Name>: {
- <Item_Name>: <chance>
- }
-
-*/
+/**************************************************************************
+ ************* Entry structure ********************************************
+ **************************************************************************
+ITMCHAIN_<Name>: {
+ <Item_Name>: <chance>
+ // ...
+}
+**************************************************************************/
+// Hercules expects those 3 to always exist:
+ITMCHAIN_ORE: {}
+ITMCHAIN_SIEGFRIED: {}
+ITMCHAIN_NEO_INSURANCE: {}
diff --git a/db/re/item_combo_db.conf b/db/re/item_combo_db.conf
new file mode 100644
index 00000000..cb4b0af5
--- /dev/null
+++ b/db/re/item_combo_db.conf
@@ -0,0 +1,43 @@
+//================= Hercules Database =====================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2019 Hercules Dev Team
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//================= Description ===========================================
+// Configurations file for status effects
+//=========================================================================
+
+combo_db: (
+/**************************************************************************
+ ************* Entry structure ********************************************
+ **************************************************************************
+{
+ // ================ Mandatory fields ===============================
+ Items: ["item_list"] (string, array) list of items
+ Script: <"
+ Script
+ (it can be multi-line)
+ ">
+}
+**************************************************************************/
+)
diff --git a/db/re/item_combo_db.txt b/db/re/item_combo_db.txt
deleted file mode 100644
index 2f4fa6ac..00000000
--- a/db/re/item_combo_db.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-// Item Combos Database
-//
-// Structure of Database:
-// ID:ID:ID:ID,{ Script }
-
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index 4dc9d48e..c971ebd8 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2014-2015 Hercules Dev Team
+//= Copyright (C) 2014-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -28,17 +28,15 @@
//=========================================================================
item_db: (
-// Items Database
-//
-/******************************************************************************
- ************* Entry structure ************************************************
- ******************************************************************************
+/**************************************************************************
+************* Entry structure ********************************************
+**************************************************************************
{
- // =================== Mandatory fields ===============================
+ // ================ Mandatory fields ==============================
Id: ID (int)
AegisName: "Aegis_Name" (string)
Name: "Item Name" (string)
- // =================== Optional fields ================================
+ // ================ Optional fields ===============================
Type: Item Type (string, defaults to "IT_ETC")
Buy: Buy Price (int, defaults to Sell * 2)
Sell: Sell Price (int, defaults to Buy / 2)
@@ -49,7 +47,21 @@ item_db: (
Range: Attack Range (int, defaults to 0)
MinRange: Minimal Attack Range (int, defaults to 0)
Slots: Slots (int, defaults to 0)
- Job: Job mask (int, defaults to all jobs = 0xFFFFFFFF)
+ Job: { (defaults to all job)
+ All: true/false (boolean, defaults to false)
+ Viro: true/false (boolean, defaults to false)
+ CaveUkar: true/false (boolean, defaults to false)
+ FireKralog: true/false (boolean, defaults to false)
+ LightRaijin: true/false (boolean, defaults to false)
+ SeaTritan: true/false (boolean, defaults to false)
+ FrostKralog: true/false (boolean, defaults to false)
+ DarkRaijin: true/false (boolean, defaults to false)
+ ArgaesViro: true/false (boolean, defaults to false)
+ TonoriViro: true/false (boolean, defaults to false)
+ LakeTritan: true/false (boolean, defaults to false)
+ MountainUkar: true/false (boolean, defaults to false)
+ }
+ Job: Job mask (alternate format, int, defaults to all jobs = 0xFFFFFFFF)
Upper: Upper mask (bitmask array, string or int, defaults to "ITEMUPPER_ALL")
Gender: Gender (string, defaults to "SEX_ANY")
Loc: Equip location (bitmask array, string or int, required value for equipment)
@@ -96,13 +108,13 @@ item_db: (
override: GroupID (int, defaults to 100)
nodrop: true/false (boolean, defaults to false)
notrade: true/false (boolean, defaults to false)
- partneroverride: true/false (boolean, defaults to false)
- noselltonpc: true/false (boolean, defaults to false)
- nocart: true/false (boolean, defaults to false)
nostorage: true/false (boolean, defaults to false)
- nogstorage: true/false (boolean, defaults to false)
+ nocart: true/false (boolean, defaults to false)
+ noselltonpc: true/false (boolean, defaults to false)
nomail: true/false (boolean, defaults to false)
noauction: true/false (boolean, defaults to false)
+ nogstorage: true/false (boolean, defaults to false)
+ partneroverride: true/false (boolean, defaults to false)
}
Nouse: { (defaults to no restrictions)
override: GroupID (int, defaults to 100)
@@ -119,6 +131,8 @@ item_db: (
OnDropScript: <" OnDrop Script (can also be multi-line) ">
OnTakeScript: <" OnTake Script (can also be multi-line) ">
OnInsertCardScript: <" OnInsert card Script (can also be multi-line) ">
+ OnRentalStartScript: <" On item renting script, gets called after item is created in inventory (can also be multi-line) ">
+ OnRentalEndScript: <" On item rent end/expire script, gets called after item is removed from inventory (can also be multi-line) ">
AllowCards: {
idNUM: amount (NUM is id number, amount is amount)
}
@@ -126,7 +140,7 @@ item_db: (
idNUM: something (NUM is id number)
}
},
-******************************************************************************/
+**************************************************************************/
/*
501 699 = Usable Items
700 999 = Generic Items
diff --git a/db/re/item_lapineddukddak.conf b/db/re/item_lapineddukddak.conf
new file mode 100644
index 00000000..c8f22eca
--- /dev/null
+++ b/db/re/item_lapineddukddak.conf
@@ -0,0 +1,44 @@
+//================= Hercules Database =====================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2018-2019 Hercules Dev Team
+//= Copyright (C) 2018-2019 Asheraf
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+
+/**************************************************************************
+ ************* Entry structure ********************************************
+ **************************************************************************
+<Box_Item_Const>: {
+ NeedCount: (int, defaults to 0) The required amount of unique items
+ NeedRefineMin: (int, defaults to 0) The minimum refine for each of the items
+ NeedRefineMax: (int, defaults to 0) The maximum refine for each of the items
+ SourceItems: { A list of allowed items to be converted with specific amount for each item
+ <Item_Const>: <amount> (string, int)
+ ...
+ }
+ Script: <"
+ Script (it can be multi-line)
+ Executes on success
+ ">
+}
diff --git a/db/re/mob_db.conf b/db/re/mob_db.conf
index ca0ef908..c627e2c3 100644
--- a/db/re/mob_db.conf
+++ b/db/re/mob_db.conf
@@ -106,6 +106,21 @@ mob_db: (
SkillAttacks: {
SkillName: 10000
}
+ ViewData: {
+ SpriteId: sprite id (int, defaults to Id)
+ WeaponId: weapon id (int, defaults to 0)
+ ShieldId: shield id (int, defaults to 0)
+ RobeId: garment id (int, defaults to 0)
+ HeadTopId: top headgear id (int, defaults to 0)
+ HeadMidId: middle headgear id (int, defaults to 0)
+ HeadLowId: lower headgear id (int, defaults to 0)
+ HairStyleId: hair style id (int, defaults to 0)
+ BodyStyleId: clothes id (int, defaults to 0)
+ HairColorId: hair color id (int, defaults to 0)
+ BodyColorId: clothes color id (int, defaults to 0)
+ Gender: gender (string, defaults to "SEX_FEMALE")
+ Options: options (int, defaults to 0)
+ }
},
******************************************************************************/
diff --git a/db/re/mob_skill_db.conf b/db/re/mob_skill_db.conf
index 7e4c18e8..9c550159 100644
--- a/db/re/mob_skill_db.conf
+++ b/db/re/mob_skill_db.conf
@@ -35,22 +35,22 @@ mob_skill_db:(
<Monster_Constant>: {
<Skill_Constant>: {
ClearSkills: (boolean, defaults to false) allows cleaning all previous defined skills for the mob.
- SkillLevel: (int, defaults to 1)
- SkillState: (int, defaults to 0)
- SkillTarget: (int, defaults to 0)
- Rate: (int, defaults to 1) Rate refers to the chance of the skill being casted when the condition is fulfilled.(10000 = 100%)
- CastTime: (int, defaults to 0) CastTime is the time in milliseconds that has to be pass to casting skill
- Delay: (int, defaults to 0) Delay is the time in milliseconds that has to be pass before recasting the same skill.
- Cancelable: (boolean, defaults to false)
- CastCondition: (int, defaults to 0)
+ SkillLevel: (int, defaults to 1)
+ SkillState: (string, defaults to "MSS_ANY")
+ SkillTarget: (string, defaults to "MST_TARGET")
+ Rate: (int, defaults to 1) Rate refers to the chance of the skill being casted when the condition is fulfilled.(10000 = 100%)
+ CastTime: (int, defaults to 0) CastTime is the time in milliseconds that has to be pass to casting skill
+ Delay: (int, defaults to 0) Delay is the time in milliseconds that has to be pass before recasting the same skill.
+ Cancelable: (boolean, defaults to false)
+ CastCondition: (string, defaults to "MSC_ALWAYS")
ConditionData: (int, defaults to 0)
- val0: (int, defaults to 0) Value 0
- val1: (int, defaults to 0)
- val2: (int, defaults to 0)
- val3: (int, defaults to 0)
- val4: (int, defaults to 0)
- Emotion: (int, defaults to 0)
- ChatMsgID: (int, defaults to 0)
+ val0: (int, defaults to 0)
+ val1: (int, defaults to 0)
+ val2: (int, defaults to 0)
+ val3: (int, defaults to 0)
+ val4: (int, defaults to 0)
+ Emotion: (int, defaults to -1)
+ ChatMsgID: (int, defaults to 0)
}
}
diff --git a/db/re/pet_db.conf b/db/re/pet_db.conf
index 25535bf1..fcd1fcff 100644
--- a/db/re/pet_db.conf
+++ b/db/re/pet_db.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2018 Hercules Dev Team
+//= Copyright (C) 2018-2020 Hercules Dev Team
//=
//= Hercules is free software: you can redistribute it and/or modify
//= it under the terms of the GNU General Public License as published by
@@ -32,39 +32,41 @@ pet_db:(
************* Entry structure ********************************************
**************************************************************************
{
- // ================ Mandatory fields ==============================
- Id: ID (int)
- SpriteName: "Sprite_Name" (string)
- Name: "Pet Name" (string)
- // ================ Optional fields ===============================
- TamingItem: Taming Item (string, defaults to 0)
- EggItem: Egg Id (string, defaults to 0)
- AccessoryItem: Equipment Id (string, defaults to 0)
- FoodItem: Food Id (string, defaults to 0)
- FoodEffectiveness: hunger points (int, defaults to 0)
- HungerDelay: hunger time (int, defaults to 0)
- Intimacy: {
- Initial: start intimacy (int, defaults to 0)
- FeedIncrement: feeding intimacy (int, defaults to 0)
- OverFeedDecrement: overfeeding intimacy (int, defaults to 0)
- OwnerDeathDecrement: owner die intimacy (int, defaults to 0)
- }
- CaptureRate: capture rate (int, defaults to 0)
- Speed: speed (int, defaults to 0)
- SpecialPerformance: true/false (boolean, defaults to false)
- TalkWithEmotes: convert talk (boolean, defaults to false)
- AttackRate: attack rate (int, defaults to 0)
- DefendRate: Defence attack (int, defaults to 0)
- ChangeTargetRate: change target (int, defaults to 0)
- Evolve: {
- EggID: { (string, Evolved Pet EggID)
- Name: Amount (items required to perform evolution)
- ...
- }
- }
- AutoFeed: true/false (boolean, defaults to false)
- PetScript: <" Pet Script (can also be multi-line) ">
- EquipScript: <" Equip Script (can also be multi-line) ">
+ // ================ Mandatory fields ==============================
+ Id: ID (int)
+ Name: "Pet Name" (string)
+ EggItem: "Egg Item Constant" (string)
+ // ================ Optional fields ===============================
+ TamingItem: "Taming Item Constant" (string, defaults to 0)
+ FoodItem: "Food Item Constant" (string, defaults to "Pet_Food" (ID=537))
+ AccessoryItem: "Equipment Item Constant" (string, defaults to 0)
+ FoodEffectiveness: hunger points (int, defaults to 80)
+ HungerDelay: hunger time (int, defaults to 60)
+ HungerDecrement: hunger points (int, defaults to 1)
+ Intimacy: {
+ Initial: start intimacy (int, defaults to 250)
+ FeedIncrement: feeding intimacy (int, defaults to 10)
+ OverFeedDecrement: overfeeding intimacy (int, defaults to 100)
+ OwnerDeathDecrement: owner die intimacy (int, defaults to 20)
+ StarvingDelay: starving time (int, defaults to 20)
+ StarvingDecrement: starving intimacy (int, defaults to 20)
+ }
+ CaptureRate: capture rate (int, defaults to 1000)
+ Speed: speed (int, defaults to 150)
+ SpecialPerformance: true/false (boolean, defaults to false)
+ TalkWithEmotes: convert talk (boolean, defaults to false)
+ AttackRate: attack rate (int, defaults to 300)
+ DefendRate: Defence attack (int, defaults to 300)
+ ChangeTargetRate: change target (int, defaults to 800)
+ AutoFeed: true/false (boolean, defaults to false)
+ PetScript: <" Pet Script (can also be multi-line) ">
+ EquipScript: <" Equip Script (can also be multi-line) ">
+ Evolve: {
+ EggID: { (string, Evolved Pet EggID)
+ Name: Amount (items required to perform evolution)
+ ...
+ }
+ }
},
**************************************************************************/
diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf
index 6749fcd3..e2339732 100644
--- a/db/re/skill_db.conf
+++ b/db/re/skill_db.conf
@@ -28253,7 +28253,7 @@ skill_db: (
Lv7: 20
Lv8: 22
Lv9: 24
- Lv10: 26
+ Lv10: 25
}
CastTime: 1000
AfterCastActDelay: 1000
@@ -28308,7 +28308,7 @@ skill_db: (
Lv7: 20
Lv8: 22
Lv9: 24
- Lv10: 26
+ Lv10: 25
}
CastTime: 1000
AfterCastActDelay: 1000
@@ -38662,3 +38662,4 @@ skill_db: (
}
},
)
+
diff --git a/db/sc_config.conf b/db/sc_config.conf
new file mode 100644
index 00000000..217fa3b2
--- /dev/null
+++ b/db/sc_config.conf
@@ -0,0 +1,3741 @@
+//================= Hercules Database =====================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2019-2020 Hercules Dev Team
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//================= Description ===========================================
+// Configurations file for status effects
+//=========================================================================
+
+/**************************************************************************
+ ************* Entry structure ********************************************
+ **************************************************************************
+SC_TYPE: {
+ // ================ Optional fields ===============================
+ Visible: (bool) SC can be visible for all players
+ Flags: {
+ NoDeathReset: (bool) SC cannot be removed by death.
+ NoSave: (bool) SC cannot be saved.
+ NoDispelReset: (bool) SC cannot be reset by dispell.
+ NoClearanceReset: (bool) SC cannot be reset by clearance.
+ Buff: (bool) SC considered as buff and be removed by Hermode and etc.
+ Debuff: (bool) SC considered as debuff and be removed by Gospel and etc.
+ NoMadoReset: (bool) SC cannot be reset when MADO Gear is taken off.
+ NoAllReset: (bool) SC cannot be reset by 'sc_end SC_ALL' and status change clear.
+ NoBoss: (bool) SC cannot be applied to boss monsters.
+ }
+ Icon: (string, defaults to SI_BLANK) The status icon attached to the SC
+}
+**************************************************************************/
+SC_PROVOKE: {
+ Flags: {
+ Debuff: true
+ NoBoss: true
+ }
+ Icon: "SI_PROVOKE"
+}
+SC_ENDURE: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_ENDURE"
+}
+SC_HIDING: {
+ Flags: {
+ NoDispelReset: true
+ }
+ Icon: "SI_HIDING"
+}
+SC_CLOAKING: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ }
+ Icon: "SI_CLOAKING"
+}
+SC_TWOHANDQUICKEN: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_TWOHANDQUICKEN"
+}
+SC_CONCENTRATION: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_CONCENTRATION"
+}
+SC_ENCHANTPOISON: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ENCHANTPOISON"
+}
+SC_POISONREACT: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_POISONREACT"
+}
+SC_QUAGMIRE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Debuff: true
+ }
+ Icon: "SI_QUAGMIRE"
+}
+SC_ANGELUS: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ANGELUS"
+}
+SC_BLESSING: {
+ Flags: {
+ Buff: true
+ NoMadoReset: true
+ NoBoss: true
+ }
+ Icon: "SI_BLESSING"
+}
+SC_INC_AGI: {
+ Flags: {
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_EVOL_INCAGI"
+}
+SC_DEC_AGI: {
+ Flags: {
+ NoSave: true
+ Debuff: true
+ NoBoss: true
+ }
+ Icon: "SI_DEC_AGI"
+}
+SC_SLOWPOISON: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SLOWPOISON"
+}
+SC_IMPOSITIO: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_IMPOSITIO"
+}
+SC_SUFFRAGIUM: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SUFFRAGIUM"
+}
+SC_ASPERSIO: {
+ Flags: {
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_ASPERSIO"
+}
+SC_BENEDICTIO: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_BENEDICTIO"
+}
+SC_KYRIE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_KYRIE"
+}
+SC_MAGNIFICAT: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_MAGNIFICAT"
+}
+SC_GLORIA: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_GLORIA"
+}
+SC_LEXAETERNA: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_LEXAETERNA"
+}
+SC_ADRENALINE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ADRENALINE"
+}
+SC_WEAPONPERFECT: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_WEAPONPERFECT"
+}
+SC_OVERTHRUST: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_OVERTHRUST"
+}
+SC_MAXIMIZEPOWER: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_MAXIMIZE"
+}
+SC_TRICKDEAD: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_TRICKDEAD"
+}
+SC_SHOUT: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SHOUT"
+}
+SC_ENERGYCOAT: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ENERGYCOAT"
+}
+SC_ATTHASTE_POTION1: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ATTHASTE_POTION1"
+}
+SC_ATTHASTE_POTION2: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ATTHASTE_POTION2"
+}
+SC_ATTHASTE_POTION3: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ATTHASTE_POTION3"
+}
+SC_MOVHASTE_POTION: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MOVHASTE_POTION"
+}
+SC_BARRIER: {
+ Flags: {
+ Buff: true
+ }
+}
+SC_NOEQUIPWEAPON: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NOEQUIPWEAPON"
+}
+SC_NOEQUIPSHIELD: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NOEQUIPSHIELD"
+}
+SC_NOEQUIPARMOR: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NOEQUIPARMOR"
+}
+SC_NOEQUIPHELM: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NOEQUIPHELM"
+}
+SC_PROTECTWEAPON: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECTWEAPON"
+}
+SC_PROTECTSHIELD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECTSHIELD"
+}
+SC_PROTECTARMOR: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECTARMOR"
+}
+SC_PROTECTHELM: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECTHELM"
+}
+SC_AUTOGUARD: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_AUTOGUARD"
+}
+SC_REFLECTSHIELD: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_REFLECTSHIELD"
+}
+SC_DEVOTION: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+}
+SC_PROVIDENCE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_PROVIDENCE"
+}
+SC_DEFENDER: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_DEFENDER"
+}
+SC_MAGICROD: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_AUTOSPELL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_AUTOSPELL"
+}
+SC_SPEARQUICKEN: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SPEARQUICKEN"
+}
+SC_BLADESTOP: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_EXPLOSIONSPIRITS: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_EXPLOSIONSPIRITS"
+}
+SC_STEELBODY: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_STEELBODY"
+}
+SC_PROPERTYFIRE: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYFIRE"
+}
+SC_PROPERTYWATER: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYWATER"
+}
+SC_PROPERTYWIND: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYWIND"
+}
+SC_PROPERTYGROUND: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYGROUND"
+}
+SC_STOP: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_STOP"
+}
+SC_PROPERTYUNDEAD: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYUNDEAD"
+}
+SC_AURABLADE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_AURABLADE"
+}
+SC_PARRYING: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PARRYING"
+}
+SC_LKCONCENTRATION: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_LKCONCENTRATION"
+}
+SC_TENSIONRELAX: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_TENSIONRELAX"
+}
+SC_BERSERK: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_BERSERK"
+}
+SC_SACRIFICE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_GOSPEL: {
+ Flags: {
+ NoSave: true
+ Debuff: true
+ }
+}
+SC_SAFETYWALL: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_PNEUMA: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_ASSUMPTIO: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ASSUMPTIO"
+}
+SC_BASILICA: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_VOLCANO: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_GROUNDMAGIC"
+}
+SC_DELUGE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_GROUNDMAGIC"
+}
+SC_VIOLENTGALE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_GROUNDMAGIC"
+}
+SC_MAGICPOWER: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_MAGICPOWER"
+}
+SC_EDP: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_EDP"
+}
+SC_TRUESIGHT: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_TRUESIGHT"
+}
+SC_WINDWALK: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_WINDWALK"
+}
+SC_MELTDOWN: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_MELTDOWN"
+}
+SC_CARTBOOST: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_CARTBOOST"
+}
+SC_BLOODING: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_BLOODING"
+}
+SC_JOINTBEAT: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Debuff: true
+ }
+ Icon: "SI_JOINTBEAT"
+}
+SC_MINDBREAKER: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+}
+SC_MEMORIZE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+}
+SC_FOGWALL: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ NoBoss: true
+ }
+}
+SC_SPIDERWEB: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Debuff: true
+ }
+}
+SC_SUB_WEAPONPROPERTY: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+}
+SC_RUN: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_RUN"
+}
+SC_STRUP: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_STRUP"
+}
+SC_PROPERTYDARK: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYDARK"
+}
+SC_ADRENALINE2: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_ADRENALINE2"
+}
+SC_PROPERTYTELEKINESIS: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYTELEKINESIS"
+}
+SC_SOULLINK: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SOULLINK"
+}
+SC_PLUSATTACKPOWER: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_PLUSATTACKPOWER"
+}
+SC_PLUSMAGICPOWER: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_PLUSMAGICPOWER"
+}
+SC_KAITE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_KAITE"
+}
+SC_KAAHI: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_KAAHI"
+}
+SC_KAUPE: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_KAUPE"
+}
+SC_ONEHANDQUICKEN: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ONEHANDQUICKEN"
+}
+SC_PRESERVE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_PRESERVE"
+}
+SC_CHASEWALK: {
+ Flags: {
+ NoDispelReset: true
+ }
+}
+SC_CHASEWALK2: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_INCSTR"
+}
+SC_MOVESLOW_POTION: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MOVESLOW_POTION"
+}
+SC_DOUBLECASTING: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_DOUBLECASTING"
+}
+SC_GRAVITATION: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ NoBoss: true
+ }
+}
+SC_OVERTHRUSTMAX: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_OVERTHRUSTMAX"
+}
+SC_TAROTCARD: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Debuff: true
+ }
+ Icon: "SI_TAROTCARD"
+}
+SC_CR_SHRINK: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_CR_SHRINK"
+}
+SC_WZ_SIGHTBLASTER: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_WZ_SIGHTBLASTER"
+}
+SC_RG_CCONFINE_M: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_RG_CCONFINE_M"
+}
+SC_RG_CCONFINE_S: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_RG_CCONFINE_S"
+}
+SC_NJ_UTSUSEMI: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NJ_UTSUSEMI"
+}
+SC_NJ_BUNSINJYUTSU: {
+ Flags: {
+ NoSave: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NJ_BUNSINJYUTSU"
+}
+SC_NJ_SUITON: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Debuff: true
+ NoBoss: true
+ }
+ Icon: "SI_NJ_SUITON"
+}
+SC_FOOD_STR: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_STR"
+}
+SC_FOOD_AGI: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_AGI"
+}
+SC_FOOD_VIT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_VIT"
+}
+SC_FOOD_DEX: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_DEX"
+}
+SC_FOOD_INT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_INT"
+}
+SC_FOOD_LUK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_LUK"
+}
+SC_FOOD_BASICAVOIDANCE: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_BASICAVOIDANCE"
+}
+SC_FOOD_BASICHIT: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_BASICHIT"
+}
+SC_FOOD_CRITICALSUCCESSVALUE: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_FOOD_CRITICALSUCCESSVALUE"
+}
+SC_CASH_PLUSEXP: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CASH_PLUSEXP"
+}
+SC_CASH_DEATHPENALTY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CASH_DEATHPENALTY"
+}
+SC_CASH_RECEIVEITEM: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CASH_RECEIVEITEM"
+}
+SC_CASH_BOSS_ALARM: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CASH_BOSS_ALARM"
+}
+SC_FOOD_STR_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_STR_CASH"
+}
+SC_FOOD_AGI_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_AGI_CASH"
+}
+SC_FOOD_VIT_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_VIT_CASH"
+}
+SC_FOOD_DEX_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_DEX_CASH"
+}
+SC_FOOD_INT_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_INT_CASH"
+}
+SC_FOOD_LUK_CASH: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_FOOD_LUK_CASH"
+}
+SC_SAVAGE_STEAK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_SAVAGE_STEAK"
+}
+SC_COCKTAIL_WARG_BLOOD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_COCKTAIL_WARG_BLOOD"
+}
+SC_MINOR_BBQ: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_MINOR_BBQ"
+}
+SC_SIROMA_ICE_TEA: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_SIROMA_ICE_TEA"
+}
+SC_DROCERA_HERB_STEAMED: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_DROCERA_HERB_STEAMED"
+}
+SC_PUTTI_TAILS_NOODLES: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_PUTTI_TAILS_NOODLES"
+}
+SC_MELON_BOMB: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_MELON_BOMB"
+}
+SC_BANANA_BOMB_SITDOWN_POSTDELAY: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_BANANA_BOMB_SITDOWN_POSTDELAY"
+}
+SC_BANANA_BOMB: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_BANANA_BOMB"
+}
+SC_PROMOTE_HEALTH_RESERCH: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_PROMOTE_HEALTH_RESERCH"
+}
+SC_ENERGY_DRINK_RESERCH: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_ENERGY_DRINK_RESERCH"
+}
+SC_EXTRACT_WHITE_POTION_Z: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_VITATA_500: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_EXTRACT_SALAMINE_JUICE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_BOOST500: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_FULL_SWING_K: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MANA_PLUS: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MUSTLE_M: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_LIFE_FORCE_F: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MER_FLEE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MER_FLEE"
+}
+SC_MER_ATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MER_ATK"
+}
+SC_MER_HP: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MER_HP"
+}
+SC_MER_SP: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MER_SP"
+}
+SC_MER_HIT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MER_HIT"
+}
+SC_SLOWCAST: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SLOWCAST"
+}
+SC_CRITICALWOUND: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_CRITICALWOUND"
+}
+SC_MOVHASTE_HORSE: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MOVHASTE_HORSE"
+}
+SC_PROTECT_DEF: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECT_DEF"
+}
+SC_PROTECT_MDEF: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PROTECT_MDEF"
+}
+SC_HEALPLUS: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_HEALPLUS"
+}
+SC_S_LIFEPOTION: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_S_LIFEPOTION"
+}
+SC_L_LIFEPOTION: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_L_LIFEPOTION"
+}
+SC_CRITICALPERCENT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CRITICALPERCENT"
+}
+SC_PLUSAVOIDVALUE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_PLUSAVOIDVALUE"
+}
+SC_ATKER_ASPD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ATKER_ASPD"
+}
+SC_TARGET_ASPD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_TARGET_ASPD"
+}
+SC_ATKER_MOVESPEED: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ATKER_MOVESPEED"
+}
+SC_ATKER_BLOOD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ATKER_BLOOD"
+}
+SC_TARGET_BLOOD: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_TARGET_BLOOD"
+}
+SC_ARMOR_PROPERTY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ARMOR_PROPERTY"
+}
+SC_HELLPOWER: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_HELLPOWER"
+}
+SC_STEAMPACK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Debuff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_STEAMPACK"
+}
+SC_CASH_PLUSONLYJOBEXP: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_CASH_PLUSONLYJOBEXP"
+}
+SC_PARTYFLEE: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_PARTYFLEE"
+}
+SC_ANGEL_PROTECT: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ANGEL_PROTECT"
+}
+SC_ENCHANTBLADE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_ENCHANTBLADE"
+}
+SC_DEATHBOUND: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_DEATHBOUND"
+}
+SC_REFRESH: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_REFRESH"
+}
+SC_GIANTGROWTH: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_GIANTGROWTH"
+}
+SC_STONEHARDSKIN: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_STONEHARDSKIN"
+}
+SC_VITALITYACTIVATION: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_VITALITYACTIVATION"
+}
+SC_FIGHTINGSPIRIT: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_FIGHTINGSPIRIT"
+}
+SC_ABUNDANCE: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_ABUNDANCE"
+}
+SC_EPICLESIS: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_EPICLESIS"
+}
+SC_ORATIO: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_ORATIO"
+}
+SC_LAUDAAGNUS: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_LAUDAAGNUS"
+}
+SC_LAUDARAMUS: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_LAUDARAMUS"
+}
+SC_CLOAKINGEXCEED: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_CLOAKINGEXCEED"
+}
+SC_HALLUCINATIONWALK: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_HALLUCINATIONWALK"
+}
+SC_HALLUCINATIONWALK_POSTDELAY: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_HALLUCINATIONWALK_POSTDELAY"
+}
+SC_RENOVATIO: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_RENOVATIO"
+}
+SC_WEAPONBLOCKING: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_WEAPONBLOCKING"
+}
+SC_ROLLINGCUTTER: {
+ Visible: true
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ROLLINGCUTTER"
+}
+SC_EXPIATIO: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_EXPIATIO"
+}
+SC_POISONINGWEAPON: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_POISONINGWEAPON"
+}
+SC_TOXIN: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_TOXIN"
+}
+SC_PARALYSE: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_PARALYSE"
+}
+SC_VENOMBLEED: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_VENOMBLEED"
+}
+SC_MAGICMUSHROOM: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_MAGICMUSHROOM"
+}
+SC_DEATHHURT: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_DEATHHURT"
+}
+SC_PYREXIA: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_PYREXIA"
+}
+SC_OBLIVIONCURSE: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_OBLIVIONCURSE"
+}
+SC_LEECHESEND: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_LEECHESEND"
+}
+SC_DUPLELIGHT: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_DUPLELIGHT"
+}
+SC_FEARBREEZE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_FEARBREEZE"
+}
+SC_ELECTRICSHOCKER: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_ELECTRICSHOCKER"
+}
+SC_MARSHOFABYSS: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_MARSHOFABYSS"
+}
+SC_RECOGNIZEDSPELL: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_RECOGNIZEDSPELL"
+}
+SC_WUGDASH: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_WUGDASH"
+}
+SC_WUGBITE: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoBoss: true
+ }
+}
+SC_CAMOUFLAGE: {
+ Visible: true
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_CAMOUFLAGE"
+}
+SC_ACCELERATION: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ACCELERATION"
+}
+SC_HOVERING: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_HOVERING"
+}
+SC_SUMMON1: {
+ Visible: true
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPHERE_1"
+}
+SC_SUMMON2: {
+ Visible: true
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPHERE_2"
+}
+SC_SUMMON3: {
+ Visible: true
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPHERE_3"
+}
+SC_SUMMON4: {
+ Visible: true
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPHERE_4"
+}
+SC_SUMMON5: {
+ Visible: true
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPHERE_5"
+}
+SC_MVPCARD_TAOGUNKA: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_MVPCARD_TAOGUNKA"
+}
+SC_MVPCARD_MISTRESS: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_MVPCARD_MISTRESS"
+}
+SC_MVPCARD_ORCHERO: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_MVPCARD_ORCHERO"
+}
+SC_MVPCARD_ORCLORD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_MVPCARD_ORCLORD"
+}
+SC_OVERHEAT_LIMITPOINT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_OVERHEAT_LIMITPOINT"
+}
+SC_OVERHEAT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_OVERHEAT"
+}
+SC_SHAPESHIFT: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SHAPESHIFT"
+}
+SC_INFRAREDSCAN: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_INFRAREDSCAN"
+}
+SC_MAGNETICFIELD: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_MAGNETICFIELD"
+}
+SC_NEUTRALBARRIER: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NEUTRALBARRIER"
+}
+SC_NEUTRALBARRIER_MASTER: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_NEUTRALBARRIER_MASTER"
+}
+SC_STEALTHFIELD_MASTER: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_STEALTHFIELD_MASTER"
+}
+SC_MANU_ATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MANU_ATK"
+}
+SC_MANU_DEF: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MANU_DEF"
+}
+SC_SPL_ATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPL_ATK"
+}
+SC_SPL_DEF: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPL_DEF"
+}
+SC__REPRODUCE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_REPRODUCE"
+}
+SC_MANU_MATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MANU_MATK"
+}
+SC_SPL_MATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SPL_MATK"
+}
+SC_STR_SCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_STR_SCROLL"
+}
+SC_INT_SCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_INT_SCROLL"
+}
+SC_FORCEOFVANGUARD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_FORCEOFVANGUARD"
+}
+SC_BUCHEDENOEL: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ Debuff: true
+ }
+ Icon: "SI_BUCHEDENOEL"
+}
+SC__AUTOSHADOWSPELL: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_AUTOSHADOWSPELL"
+}
+SC__SHADOWFORM: {
+ Visible: true
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SHADOWFORM"
+}
+SC_RAID: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_SHIELDSPELL_DEF: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SHIELDSPELL_DEF"
+}
+SC_SHIELDSPELL_MDEF: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SHIELDSPELL_MDEF"
+}
+SC_SHIELDSPELL_REF: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SHIELDSPELL_REF"
+}
+SC__BODYPAINT: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_BODYPAINT"
+}
+SC_EXEEDBREAK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_EXEEDBREAK"
+}
+SC_ADORAMUS: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_ADORAMUS"
+}
+SC_PRESTIGE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_PRESTIGE"
+}
+SC__INVISIBILITY: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_INVISIBILITY"
+}
+SC__DEADLYINFECT: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_DEADLYINFECT"
+}
+SC_BANDING: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_BANDING"
+}
+SC_BANDING_DEFENCE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_BANDING_DEFENCE"
+}
+SC_EARTHDRIVE: {
+ Flags: {
+ NoDispelReset: true
+ Buff: true
+ }
+ Icon: "SI_EARTHDRIVE"
+}
+SC_INSPIRATION: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_INSPIRATION"
+}
+SC__ENERVATION: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_ENERVATION"
+}
+SC__GROOMY: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_GROOMY"
+}
+SC_RAISINGDRAGON: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_RAISINGDRAGON"
+}
+SC__IGNORANCE: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_IGNORANCE"
+}
+SC__LAZINESS: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_LAZINESS"
+}
+SC_LIGHTNINGWALK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_LIGHTNINGWALK"
+}
+SC_ACARAJE: {
+ Flags: {
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ACARAJE"
+}
+SC__UNLUCKY: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_UNLUCKY"
+}
+SC_CURSEDCIRCLE_ATKER: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_CURSEDCIRCLE_ATKER"
+}
+SC_CURSEDCIRCLE_TARGET: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_CURSEDCIRCLE_TARGET"
+}
+SC__WEAKNESS: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_WEAKNESS"
+}
+SC_CRESCENTELBOW: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_CRESCENTELBOW"
+}
+SC__STRIPACCESSARY: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_STRIPACCESSARY"
+}
+SC__MANHOLE: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_MANHOLE"
+}
+SC__BLOODYLUST: {
+ Flags: {
+ Debuff: true
+ }
+}
+SC_SWING: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SWINGDANCE"
+}
+SC_SYMPHONY_LOVE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SYMPHONYOFLOVERS"
+}
+SC_PROPERTYWALK: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_PROPERTYWALK"
+}
+SC_SPELLFIST: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SPELLFIST"
+}
+SC_NETHERWORLD: {
+ Flags: {
+ Buff: true
+ NoBoss: true
+ }
+ Icon: "SI_NETHERWORLD"
+}
+SC_SIREN: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SIREN"
+}
+SC_DEEP_SLEEP: {
+ Visible: true
+ Flags: {
+ NoSave: true
+ Debuff: true
+ NoBoss: true
+ }
+ Icon: "SI_DEEPSLEEP"
+}
+SC_SIRCLEOFNATURE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SIRCLEOFNATURE"
+}
+SC_GLOOMYDAY: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_GLOOMYDAY"
+}
+SC_GLOOMYDAY_SK: {
+ Flags: {
+ Buff: true
+ }
+}
+SC_SONG_OF_MANA: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SONG_OF_MANA"
+}
+SC_DANCE_WITH_WUG: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_DANCEWITHWUG"
+}
+SC_RUSH_WINDMILL: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_RUSHWINDMILL"
+}
+SC_ECHOSONG: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ECHOSONG"
+}
+SC_HARMONIZE: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_HARMONIZE"
+}
+SC_MOONLIT_SERENADE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MOONLITSERENADE"
+}
+SC_SATURDAY_NIGHT_FEVER: {
+ Flags: {
+ Buff: true
+ }
+ Icon: "SI_SATURDAYNIGHTFEVER"
+}
+SC_SITDOWN_FORCE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+}
+SC_ANALYZE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_ANALYZE"
+}
+SC_LERADS_DEW: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_LERADSDEW"
+}
+SC_MELODYOFSINK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_MELODYOFSINK"
+}
+SC_BEYOND_OF_WARCRY: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_WARCRYOFBEYOND"
+}
+SC_UNLIMITED_HUMMING_VOICE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_UNLIMITEDHUMMINGVOICE"
+}
+SC_WARMER: {
+ Flags: {
+ NoSave: true
+ }
+}
+SC_VENOMIMPRESS: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ }
+ Icon: "SI_VENOMIMPRESS"
+}
+SC_FROSTMISTY: {
+ Visible: true
+ Flags: {
+ Debuff: true
+ NoBoss: true
+ }
+ Icon: "SI_FROSTMISTY"
+}
+SC_STOMACHACHE: {
+ Flags: {
+ Debuff: true
+ }
+ Icon: "SI_STOMACHACHE"
+}
+SC_MYSTERIOUS_POWDER: {
+ Flags: {
+ Debuff: true
+ }
+ Icon: "SI_MYSTERIOUS_POWDER"
+}
+SC_WATER_BARRIER: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_WATER_BARRIER"
+}
+SC_ZEPHYR: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_ZEPHYR"
+}
+SC_POWER_OF_GAIA: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_POWER_OF_GAIA"
+}
+SC_FIRE_INSIGNIA: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_FIRE_INSIGNIA"
+}
+SC_WATER_INSIGNIA: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_WATER_INSIGNIA"
+}
+SC_WIND_INSIGNIA: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_WIND_INSIGNIA"
+}
+SC_EARTH_INSIGNIA: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_EARTH_INSIGNIA"
+}
+SC_MORA_BUFF: {
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_MORA_BUFF"
+}
+SC_NEEDLE_OF_PARALYZE: {
+ Flags: {
+ NoDeathReset: true
+ NoBoss: true
+ }
+ Icon: "SI_NEEDLE_OF_PARALYZE"
+}
+SC_PAIN_KILLER: {
+ Flags: {
+ NoDeathReset: true
+ }
+ Icon: "SI_PAIN_KILLER"
+}
+SC_G_LIFEPOTION: {
+ Flags: {
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_G_LIFEPOTION"
+}
+SC_LIGHT_OF_REGENE: {
+ Flags: {
+ NoDeathReset: true
+ }
+ Icon: "SI_LIGHT_OF_REGENE"
+}
+SC_MAGIC_CANDY: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ NoMadoReset: true
+ }
+ Icon: "SI_MAGIC_CANDY"
+}
+SC_MONSTER_TRANSFORM: {
+ Visible: true
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_MONSTER_TRANSFORM"
+}
+SC_MTF_ASPD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MTF_RANGEATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MTF_MATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MTF_MLEATKED: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_MTF_CRIDAMAGE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_FULL_THROTTLE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_FULL_THROTTLE"
+}
+SC_REBOUND: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_REBOUND"
+}
+SC_TELEKINESIS_INTENSE: {
+ Flags: {
+ NoSave: true
+ Buff: true
+ }
+ Icon: "SI_TELEKINESIS_INTENSE"
+}
+SC_SKELSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_DISTRUCTIONSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_ROYALSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_IMMUNITYSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_MYSTICSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_BATTLESCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_ARMORSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_FREYJASCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_SOULSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+}
+SC_QUEST_BUFF1: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_QUEST_BUFF1"
+}
+SC_QUEST_BUFF2: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_QUEST_BUFF2"
+}
+SC_QUEST_BUFF3: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_QUEST_BUFF3"
+}
+SC_GEFFEN_MAGIC1: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_GEFFEN_MAGIC1"
+}
+SC_GEFFEN_MAGIC2: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_GEFFEN_MAGIC2"
+}
+SC_GEFFEN_MAGIC3: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_GEFFEN_MAGIC3"
+}
+SC_OVERLAPEXPUP: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_OVERLAPEXPUP"
+}
+SC_M_LIFEPOTION: {
+ Flags: {
+ NoDispelReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_M_LIFEPOTION"
+}
+SC_LEADERSHIP: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_GLORYWOUNDS: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_SOULCOLD: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_HAWKEYES: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_GDSKILL_REGENERATION: {
+ Flags: {
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_ORCISH: {
+ Flags: {
+ NoSave: true
+ }
+}
+SC_WEIGHTOVER50: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_WEIGHTOVER50"
+}
+SC_WEIGHTOVER90: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_WEIGHTOVER90"
+}
+SC_WEDDING: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_XMAS: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_SUMMER: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_NOCHAT: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_FUSION: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_EARTHSCROLL: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_EARTHSCROLL"
+}
+SC_STORMKICK_READY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_STORMKICK_ON"
+}
+SC_DOWNKICK_READY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_DOWNKICK_ON"
+}
+SC_COUNTERKICK_READY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_COUNTER_ON"
+}
+SC_TURNKICK_READY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_TURNKICK_ON"
+}
+SC_DODGE_READY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_DODGE_ON"
+}
+SC_JAILED: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+}
+SC_AUTOTRADE: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_DANCING: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+}
+SC_WHISTLE: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_ASSNCROS: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_POEMBRAGI: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_APPLEIDUN: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_HUMMING: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_DONTFORGETME: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_FORTUNE: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_SERVICEFORYOU: {
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+}
+SC_INCHIT: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ }
+ Icon: "SI_EVOL_INCHIT"
+}
+SC_PUSH_CART: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_ON_PUSH_CART"
+}
+SC_COLD: {
+ Visible: true
+ Flags: {
+ NoBoss: true
+ }
+ Icon: "SI_COLD"
+}
+SC_BLOOD_SUCKER: {
+ Visible: true
+ Flags: {
+ }
+ Icon: "SI_BLOODSUCKER"
+}
+SC_MOONSTAR: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_MOONSTAR"
+}
+SC_SUPER_STAR: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_SUPER_STAR"
+}
+SC_STRANGELIGHTS: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_STRANGELIGHTS"
+}
+SC_DECORATION_OF_MUSIC: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_DECORATION_OF_MUSIC"
+}
+SC_LJOSALFAR: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_LJOSALFAR"
+}
+SC_MERMAID_LONGING: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_MERMAID_LONGING"
+}
+SC_HAT_EFFECT: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_HAT_EFFECT"
+}
+SC_FLOWERSMOKE: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_FLOWERSMOKE"
+}
+SC_FSTONE: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_FSTONE"
+}
+SC_HAPPINESS_STAR: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_HAPPINESS_STAR"
+}
+SC_MAPLE_FALLS: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_MAPLE_FALLS"
+}
+SC_TIME_ACCESSORY: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_TIME_ACCESSORY"
+}
+SC_MAGICAL_FEATHER: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_MAGICAL_FEATHER"
+}
+SC_BLOSSOM_FLUTTERING: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_BLOSSOM_FLUTTERING"
+}
+SC_SPRITEMABLE: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_SPRITEMABLE"
+}
+SC_BITESCAR: {
+ Flags: {
+ NoDispelReset: true
+ NoBoss: true
+ }
+ Icon: "SI_BITESCAR"
+}
+SC_CLAN_INFO: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoSave: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_CLAN_INFO"
+}
+SC_ALL_RIDING: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_ALL_RIDING"
+}
+SC_DAILYSENDMAILCNT: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoMadoReset: true
+ NoAllReset: true
+ }
+ Icon: "SI_DAILYSENDMAILCNT"
+}
+SC_ATTHASTE_INFINITY: {
+ Icon: "SI_ATTHASTE_INFINITY"
+}
+SC_PYROCLASTIC: {
+ Icon: "SI_PYROCLASTIC"
+}
+SC_VACUUM_EXTREME: {
+ Icon: "SI_VACUUM_EXTREME"
+}
+SC_MOON_COMFORT: {
+ Icon: "SI_MOON_COMFORT"
+}
+SC_OFFERTORIUM: {
+ Icon: "SI_OFFERTORIUM"
+}
+SC_WIND_STEP: {
+ Icon: "SI_WIND_STEP"
+}
+SC_STEALTHFIELD: {
+ Icon: "SI_STEALTHFIELD"
+}
+SC_INVINCIBLE: {
+ Icon: "SI_INVINCIBLE"
+}
+SC_CURSED_SOIL: {
+ Icon: "SI_CURSED_SOIL"
+}
+SC_RIDING: {
+ Icon: "SI_RIDING"
+}
+SC_GRANITIC_ARMOR: {
+ Icon: "SI_GRANITIC_ARMOR"
+}
+SC_CURSED_SOIL_OPTION: {
+ Icon: "SI_CURSED_SOIL_OPTION"
+}
+SC_MOVHASTE_INFINITY: {
+ Icon: "SI_MOVHASTE_INFINITY"
+}
+SC_GOLDENE_FERSE: {
+ Icon: "SI_GOLDENE_FERSE"
+}
+SC_GS_ACCURACY: {
+ Icon: "SI_GS_ACCURACY"
+}
+SC_GENSOU: {
+ Icon: "SI_GENSOU"
+}
+SC_MAGMA_FLOW: {
+ Icon: "SI_MAGMA_FLOW"
+}
+SC_SHRIMP: {
+ Icon: "SI_SHRIMP"
+}
+SC_SPELLBOOK1: {
+ Icon: "SI_SPELLBOOK1"
+}
+SC_UNLIMIT: {
+ Icon: "SI_UNLIMIT"
+}
+SC_AQUAPLAY_OPTION: {
+ Icon: "SI_AQUAPLAY_OPTION"
+}
+SC_GS_GATLINGFEVER: {
+ Icon: "SI_GS_GATLINGFEVER"
+}
+SC_ROCK_CRUSHER_ATK: {
+ Icon: "SI_ROCK_CRUSHER_ATK"
+}
+SC_HEATER_OPTION: {
+ Icon: "SI_HEATER_OPTION"
+}
+SC_FALLENEMPIRE: {
+ Icon: "SI_FALLENEMPIRE"
+}
+SC_MANDRAGORA: {
+ Icon: "SI_MANDRAGORA"
+}
+SC_ANKLESNARE: {
+ Icon: "SI_ANKLESNARE"
+}
+SC_KAIZEL: {
+ Icon: "SI_KAIZEL"
+}
+SC_DC_WINKCHARM: {
+ Icon: "SI_DC_WINKCHARM"
+}
+SC_WUGRIDER: {
+ Icon: "SI_WUGRIDER"
+}
+SC_SPELLBOOK7: {
+ Icon: "SI_SPELLBOOK7"
+}
+SC_CATNIPPOWDER: {
+ Icon: "SI_CATNIPPOWDER"
+}
+SC_TIDAL_WEAPON_OPTION: {
+ Icon: "SI_TIDAL_WEAPON_OPTION"
+}
+SC_ANGRIFFS_MODUS: {
+ Icon: "SI_ANGRIFFS_MODUS"
+}
+SC_AUTOBERSERK: {
+ Icon: "SI_AUTOBERSERK"
+}
+SC_CRUCIS: {
+ Icon: "SI_CRUCIS"
+}
+SC_SECRAMENT: {
+ Icon: "SI_SECRAMENT"
+}
+SC_CRUSHSTRIKE: {
+ Icon: "SI_CRUSHSTRIKE"
+}
+SC_SPELLBOOK3: {
+ Icon: "SI_SPELLBOOK3"
+}
+SC_BLAST: {
+ Icon: "SI_BLAST"
+}
+SC_IZAYOI: {
+ Icon: "SI_IZAYOI"
+}
+SC_ODINS_POWER: {
+ Icon: "SI_ODINS_POWER"
+}
+SC_TING: {
+ Icon: "SI_TING"
+}
+SC_SIT: {
+ Icon: "SI_SIT"
+}
+SC_GS_MADNESSCANCEL: {
+ Icon: "SI_GS_MADNESSCANCEL"
+}
+SC_SV_ROOTTWIST: {
+ Icon: "SI_SV_ROOTTWIST"
+}
+SC_COOLER: {
+ Icon: "SI_COOLER"
+}
+SC_WIND_STEP_OPTION: {
+ Icon: "SI_WIND_STEP_OPTION"
+}
+SC_RESIST_PROPERTY_GROUND: {
+ Icon: "SI_RESIST_PROPERTY_GROUND"
+}
+SC_ILLUSIONDOPING: {
+ Icon: "SI_ILLUSIONDOPING"
+}
+SC_KO_JYUMONJIKIRI: {
+ Icon: "SI_KO_JYUMONJIKIRI"
+}
+SC_PHI_DEMON: {
+ Icon: "SI_PHI_DEMON"
+}
+SC_KYOUGAKU: {
+ Icon: "SI_KYOUGAKU"
+}
+SC_KAGEMUSYA: {
+ Icon: "SI_KAGEMUSYA"
+}
+SC_SPELLBOOK6: {
+ Icon: "SI_SPELLBOOK6"
+}
+SC_BLAST_OPTION: {
+ Icon: "SI_BLAST_OPTION"
+}
+SC_DARKCROW: {
+ Icon: "SI_DARKCROW"
+}
+SC_PYROTECHNIC: {
+ Icon: "SI_PYROTECHNIC"
+}
+SC_STAR_COMFORT: {
+ Icon: "SI_STAR_COMFORT"
+}
+SC_LG_REFLECTDAMAGE: {
+ Icon: "SI_LG_REFLECTDAMAGE"
+}
+SC_GENTLETOUCH_REVITALIZE: {
+ Icon: "SI_GENTLETOUCH_REVITALIZE"
+}
+SC_HEATER: {
+ Icon: "SI_HEATER"
+}
+SC_CIRCLE_OF_FIRE_OPTION: {
+ Icon: "SI_CIRCLE_OF_FIRE_OPTION"
+}
+SC_ROCK_CRUSHER: {
+ Icon: "SI_ROCK_CRUSHER"
+}
+SC_MOON: {
+ Icon: "SI_MOON"
+}
+SC_PETROLOGY: {
+ Icon: "SI_PETROLOGY"
+}
+SC_SUN_COMFORT: {
+ Icon: "SI_SUN_COMFORT"
+}
+SC_TROPIC_OPTION: {
+ Icon: "SI_TROPIC_OPTION"
+}
+SC_ARCLOUSEDASH: {
+ Icon: "SI_ARCLOUSEDASH"
+}
+SC_STRIKING: {
+ Icon: "SI_STRIKING"
+}
+SC_AQUAPLAY: {
+ Icon: "SI_AQUAPLAY"
+}
+SC_WATER_DROP: {
+ Icon: "SI_WATER_DROP"
+}
+SC_GM_BATTLE2: {
+ Icon: "SI_GM_BATTLE2"
+}
+SC_BROKENWEAPON: {
+ Icon: "SI_BROKENWEAPON"
+}
+SC_CUP_OF_BOZA: {
+ Icon: "SI_CUP_OF_BOZA"
+}
+SC_FRIGG_SONG: {
+ Icon: "SI_FRIGG_SONG"
+}
+SC_POSTDELAY: {
+ Icon: "SI_POSTDELAY"
+}
+SC_BROKENARMOR: {
+ Icon: "SI_BROKENARMOR"
+}
+SC_DRESS_UP: {
+ Icon: "SI_DRESS_UP"
+}
+SC_2011RWC: {
+ Icon: "SI_2011RWC"
+}
+SC_WATER_SCREEN_OPTION: {
+ Icon: "SI_WATER_SCREEN_OPTION"
+}
+SC_FIRE_CLOAK: {
+ Icon: "SI_FIRE_CLOAK"
+}
+SC_FALCON: {
+ Icon: "SI_FALCON"
+}
+SC_ZENKAI: {
+ Icon: "SI_ZENKAI"
+}
+SC_CLAIRVOYANCE: {
+ Icon: "SI_CLAIRVOYANCE"
+}
+SC_STONE_SHIELD: {
+ Icon: "SI_STONE_SHIELD"
+}
+SC_FIRE_EXPANSION_TEAR_GAS: {
+ Icon: "SI_FIRE_EXPANSION_TEAR_GAS"
+}
+SC_ZANGETSU: {
+ Icon: "SI_ZANGETSU"
+}
+SC_RESIST_PROPERTY_WIND: {
+ Icon: "SI_RESIST_PROPERTY_WIND"
+}
+SC_FLASHCOMBO: {
+ Icon: "SI_FLASHCOMBO"
+}
+SC_GUST_OPTION: {
+ Icon: "SI_GUST_OPTION"
+}
+SC_GENTLETOUCH_ENERGYGAIN: {
+ Icon: "SI_GENTLETOUCH_ENERGYGAIN"
+}
+SC_PYROTECHNIC_OPTION: {
+ Icon: "SI_PYROTECHNIC_OPTION"
+}
+SC_CIRCLE_OF_FIRE: {
+ Icon: "SI_CIRCLE_OF_FIRE"
+}
+SC_DEVIL1: {
+ Icon: "SI_DEVIL1"
+}
+SC_GS_ADJUSTMENT: {
+ Icon: "SI_GS_ADJUSTMENT"
+}
+SC_SPELLBOOK5: {
+ Icon: "SI_SPELLBOOK5"
+}
+SC_UPHEAVAL_OPTION: {
+ Icon: "SI_UPHEAVAL_OPTION"
+}
+SC_SUHIDE: {
+ Icon: "SI_SUHIDE"
+}
+SC_NJ_NEN: {
+ Icon: "SI_NJ_NEN"
+}
+SC_VOLCANIC_ASH: {
+ Icon: "SI_VOLCANIC_ASH"
+}
+SC_KYOMU: {
+ Icon: "SI_KYOMU"
+}
+SC_WILD_STORM: {
+ Icon: "SI_WILD_STORM"
+}
+SC_PETROLOGY_OPTION: {
+ Icon: "SI_PETROLOGY_OPTION"
+}
+SC_SPELLBOOK2: {
+ Icon: "SI_SPELLBOOK2"
+}
+SC_MYSTICPOWDER: {
+ Icon: "SI_MYSTICPOWDER"
+}
+SC_RESIST_PROPERTY_FIRE: {
+ Icon: "SI_RESIST_PROPERTY_FIRE"
+}
+SC_COOLER_OPTION: {
+ Icon: "SI_COOLER_OPTION"
+}
+SC_TROPIC: {
+ Icon: "SI_TROPIC"
+}
+SC_UPHEAVAL: {
+ Icon: "SI_UPHEAVAL"
+}
+SC_GENTLETOUCH_CHANGE: {
+ Icon: "SI_GENTLETOUCH_CHANGE"
+}
+SC_WATER_DROP_OPTION: {
+ Icon: "SI_WATER_DROP_OPTION"
+}
+SC_CHILLY_AIR_OPTION: {
+ Icon: "SI_CHILLY_AIR_OPTION"
+}
+SC_FENRIR_CARD: {
+ Icon: "SI_FENRIR_CARD"
+}
+SC_CLIENT_ONLY_EQUIP_ARROW: {
+ Icon: "SI_CLIENT_ONLY_EQUIP_ARROW"
+}
+SC_STASIS: {
+ Icon: "SI_STASIS"
+}
+SC_KINGS_GRACE: {
+ Icon: "SI_KINGS_GRACE"
+}
+SC_OVERED_BOOST: {
+ Icon: "SI_OVERED_BOOST"
+}
+SC_AKAITSUKI: {
+ Icon: "SI_AKAITSUKI"
+}
+SC_MARIONETTE: {
+ Icon: "SI_MARIONETTE"
+}
+SC_WIND_CURTAIN: {
+ Icon: "SI_WIND_CURTAIN"
+}
+SC_ON_PUSH_CART: {
+ Icon: "SI_ON_PUSH_CART"
+}
+SC_SPELLBOOK4: {
+ Icon: "SI_SPELLBOOK4"
+}
+SC_ILLUSION: {
+ Icon: "SI_ILLUSION"
+}
+SC_WIND_CURTAIN_OPTION: {
+ Icon: "SI_WIND_CURTAIN_OPTION"
+}
+SC_SU_STOOP: {
+ Icon: "SI_SU_STOOP"
+}
+SC_SOLID_SKIN_OPTION: {
+ Icon: "SI_SOLID_SKIN_OPTION"
+}
+SC_TUNAPARTY: {
+ Icon: "SI_TUNAPARTY"
+}
+SC_RESIST_PROPERTY_WATER: {
+ Icon: "SI_RESIST_PROPERTY_WATER"
+}
+SC_KG_KAGEHUMI: {
+ Icon: "SI_KG_KAGEHUMI"
+}
+SC_SMA_READY: {
+ Icon: "SI_SMA_READY"
+}
+SC_FIRE_CLOAK_OPTION: {
+ Icon: "SI_FIRE_CLOAK_OPTION"
+}
+SC_WATER_SCREEN: {
+ Icon: "SI_WATER_SCREEN"
+}
+SC_GM_BATTLE: {
+ Icon: "SI_GM_BATTLE"
+}
+SC_GUST: {
+ Icon: "SI_GUST"
+}
+SC_SOLID_SKIN: {
+ Icon: "SI_SOLID_SKIN"
+}
+SC_CHILLY_AIR: {
+ Icon: "SI_CHILLY_AIR"
+}
+SC_MEIKYOUSISUI: {
+ Icon: "SI_MEIKYOUSISUI"
+}
+SC_FIRE_EXPANSION_SMOKE_POWDER: {
+ Icon: "SI_FIRE_EXPANSION_SMOKE_POWDER"
+}
+SC_MARIONETTE_MASTER: {
+ Icon: "SI_MARIONETTE_MASTER"
+}
+SC_FRESHSHRIMP: {
+ Icon: "SI_FRESHSHRIMP"
+}
+SC_STONE_SHIELD_OPTION: {
+ Icon: "SI_STONE_SHIELD_OPTION"
+}
+SC_SWORDREJECT: {
+ Icon: "SI_SWORDREJECT"
+}
+SC_WILD_STORM_OPTION: {
+ Icon: "SI_WILD_STORM_OPTION"
+}
+SC_BABY: {
+ Icon: "SI_PROTECTEXP"
+}
+SC_EXTREMITYFIST2: {
+ Icon: "SI_EXTREMITYFIST"
+}
+SC_GN_CARTBOOST: {
+ Icon: "SI_CARTSBOOST"
+}
+SC_MIRACLE: {
+ Icon: "SI_SOULLINK"
+}
+SC_POISON: {
+ Icon: "SI_CLOUDKILL"
+}
+SC_SILENCE: {
+ Icon: "SI_SILENT_BREEZE"
+}
+SC_THORNS_TRAP: {
+ Icon: "SI_THORNTRAP"
+}
+SC_WARM: {
+ Icon: "SI_SG_SUN_WARM"
+}
+SC_COMA: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_RICHMANKIM: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_ROKISWEIL: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_BURNING: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_VACUUM_EXTREME: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_FRESHSHRIMP: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_SV_ROOTTWIST: {
+ Flags: {
+ NoBoss: true
+ }
+}
+SC_MADOGEAR: {
+ Visible: true
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ NoAllReset: true
+ NoBoss: true
+ }
+ Icon: "SI_MADOGEAR"
+}
+SC_POPECOOKIE: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_POPECOOKIE"
+}
+SC_VITALIZE_POTION: {
+ Flags: {
+ NoDispelReset: true
+ }
+ Icon: "SI_VITALIZE_POTION"
+}
+SC_SKF_MATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SKF_MATK"
+}
+SC_SKF_ATK: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SKF_ATK"
+}
+SC_SKF_ASPD: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SKF_ASPD"
+}
+SC_SKF_CAST: {
+ Flags: {
+ NoDispelReset: true
+ NoClearanceReset: true
+ Buff: true
+ }
+ Icon: "SI_SKF_CAST"
+}
+SC_ALMIGHTY: {
+ Flags: {
+ NoDeathReset: true
+ NoDispelReset: true
+ NoClearanceReset: true
+ }
+ Icon: "SI_ALMIGHTY"
+}
+
+// evol effects
+SC_PHYSICAL_SHIELD: {
+ Visible: true
+ Flags: {
+ NoSave: true
+ }
+ Icon: "SI_PHYSICAL_SHIELD"
+}
diff --git a/db/sc_config.txt b/db/sc_config.txt
deleted file mode 100644
index 2155aef3..00000000
--- a/db/sc_config.txt
+++ /dev/null
@@ -1,508 +0,0 @@
-// Status Change configuration database
-//
-// Structure of Database:
-// SC_NAME, flag
-//
-// flag 1 - SC cannot be removed by death.
-// 2 - SC cannot be saved.
-// 4 - SC cannot be reset by dispell.
-// 8 - SC cannot be reset by clearance.
-// 16 - SC considered as buff and be removed by Hermode and etc.
-// 32 - SC considered as debuff and be removed by Gospel and etc.
-// 64 - SC cannot be reset when MADO Gear is taken off.
-// 128 - SC cannot be reset by 'sc_end SC_ALL' and status change clear.
-// 256 - SC can be visible for all players
-// Example:
-// SC_ENDURE, 21 //SC_ENDURE: cannot be removed by death and dispell and cosidered as buff. (16 + 4 + 1 = 21)
-
-SC_PROVOKE, 32
-SC_ENDURE, 21
-SC_HIDING, 4
-SC_CLOAKING, 6
-SC_TWOHANDQUICKEN, 24
-SC_CONCENTRATION, 16
-SC_ENCHANTPOISON, 16
-SC_POISONREACT, 16
-SC_QUAGMIRE, 42
-SC_ANGELUS, 16
-SC_BLESSING, 80
-SC_INC_AGI, 80
-SC_DEC_AGI, 34
-SC_SLOWPOISON, 24
-SC_IMPOSITIO, 16
-SC_SUFFRAGIUM, 16
-SC_ASPERSIO, 80
-SC_BENEDICTIO, 26
-SC_KYRIE, 16
-SC_MAGNIFICAT, 18
-SC_GLORIA, 16
-SC_LEXAETERNA, 18
-SC_ADRENALINE, 16
-SC_WEAPONPERFECT, 16
-SC_OVERTHRUST, 16
-SC_MAXIMIZEPOWER, 16
-SC_TRICKDEAD, 26
-SC_SHOUT, 16
-SC_ENERGYCOAT, 16
-SC_ATTHASTE_POTION1, 24
-SC_ATTHASTE_POTION2, 24
-SC_ATTHASTE_POTION3, 16
-SC_MOVHASTE_POTION, 26
-//SC_POSTDELAY, 29
-SC_BARRIER, 16
-SC_NOEQUIPWEAPON, 30
-SC_NOEQUIPSHIELD, 30
-SC_NOEQUIPARMOR, 30
-SC_NOEQUIPHELM, 30
-SC_PROTECTWEAPON, 28
-SC_PROTECTSHIELD, 28
-SC_PROTECTARMOR, 28
-SC_PROTECTHELM, 28
-SC_AUTOGUARD, 24
-SC_REFLECTSHIELD, 24
-SC_DEVOTION, 18
-SC_PROVIDENCE, 18
-SC_DEFENDER, 16
-SC_MAGICROD, 26
-//SC_WEAPONPROPERTY, 24
-SC_AUTOSPELL, 21
-//SC_SPECIALZONE, 26
-//SC_MASK, 26
-SC_SPEARQUICKEN, 16
-SC_BLADESTOP, 26
-SC_EXPLOSIONSPIRITS, 26
-SC_STEELBODY, 18
-SC_PROPERTYFIRE, 29
-SC_PROPERTYWATER, 29
-SC_PROPERTYWIND, 29
-SC_PROPERTYGROUND, 29
-SC_STOP, 26
-SC_PROPERTYUNDEAD, 26
-//SC_STATUSONE, 26
-SC_AURABLADE, 18
-SC_PARRYING, 26
-SC_LKCONCENTRATION, 18
-SC_TENSIONRELAX, 26
-SC_BERSERK, 18
-SC_SACRIFICE, 26
-SC_GOSPEL, 34
-SC_SAFETYWALL, 28
-SC_PNEUMA, 28
-SC_ASSUMPTIO, 16
-SC_BASILICA, 26
-//SC_GROUNDMAGIC, 26 // is divided to SC_VOLCANO, 0xSC_DELUGE, 0xSC_VIOLENTGALE
-SC_VOLCANO, 26
-SC_DELUGE, 26
-SC_VIOLENTGALE, 26
-SC_MAGICPOWER, 18
-SC_EDP, 23
-SC_TRUESIGHT, 18
-SC_WINDWALK, 18
-SC_MELTDOWN, 23
-SC_CARTBOOST, 23
-SC_BLOODING, 26
-SC_JOINTBEAT, 42
-SC_MINDBREAKER, 18
-SC_MEMORIZE, 18
-SC_FOGWALL, 26
-SC_SPIDERWEB, 47
-SC_SUB_WEAPONPROPERTY, 23
-SC_RUN, 26
-SC_STRUP, 26
-SC_PROPERTYDARK, 26
-SC_ADRENALINE2, 18
-SC_PROPERTYTELEKINESIS, 26
-SC_SOULLINK, 26
-SC_PLUSATTACKPOWER, 88
-SC_PLUSMAGICPOWER, 88
-SC_KAITE, 26
-SC_KAAHI, 26
-SC_KAUPE, 26
-SC_ONEHANDQUICKEN, 26
-//SC_GDSKILL_POSTDELAY, 29
-SC_PRESERVE, 18
-SC_CHASEWALK, 4
-SC_CHASEWALK2, 26
-SC_MOVESLOW_POTION, 26
-SC_DOUBLECASTING, 26
-SC_GRAVITATION, 26
-SC_OVERTHRUSTMAX, 18
-SC_TAROTCARD, 42
-SC_CR_SHRINK, 23
-SC_WZ_SIGHTBLASTER, 23
-SC_RG_CCONFINE_M, 31
-SC_RG_CCONFINE_S, 31
-SC_NJ_UTSUSEMI, 26
-SC_NJ_BUNSINJYUTSU, 26
-SC_NJ_SUITON, 47
-//SC_MENTAL, 26
-//SC_EXPMEMORY, 26
-//SC_PERFORMANCE, 26
-//SC_GAIN, 26
-//SC_DRIFT, 26
-//SC_WALLSHIFT, 26
-//SC_REINCARNATION, 26
-//SC_DENERGY, 26
-//SC_DAURA, 26
-//SC_DFREEZER, 26
-//SC_DPUNISH, 26
-//SC_DBARRIER, 26
-//SC_DWARNING, 26
-//SC_MOUSEWHEEL, 30
-//SC_DACCEL, 26
-//SC_DBLOCK, 26
-SC_FOOD_STR, 92
-SC_FOOD_AGI, 92
-SC_FOOD_VIT, 92
-SC_FOOD_DEX, 92
-SC_FOOD_INT, 92
-SC_FOOD_LUK, 92
-SC_FOOD_BASICAVOIDANCE, 88
-SC_FOOD_BASICHIT, 88
-SC_FOOD_CRITICALSUCCESSVALUE, 24
-SC_CASH_PLUSEXP, 93
-SC_CASH_DEATHPENALTY, 93
-SC_CASH_RECEIVEITEM, 93
-SC_CASH_BOSS_ALARM, 94
-//SC_DA_ENERGY, 26
-//SC_DA_FIRSTSLOT, 26
-//SC_DA_HEADDEF, 26
-//SC_DA_SPACE, 30
-//SC_DA_ITEMREBUILD, 30
-//SC_DA_ILLUSION, 26
-//SC_DA_EARPLUG, 30
-//SC_DA_CONTRACT, 29
-//SC_DA_BLACK, 30
-//SC_DA_MAGICCART, 26
-//SC_CRYSTAL, 30
-//SC_DA_REBUILD, 29
-//SC_DA_EDARKNESS, 26
-//SC_DA_EGUARDIAN, 26
-//SC_DA_TIMEOUT, 26
-SC_FOOD_STR_CASH, 93
-SC_FOOD_AGI_CASH, 93
-SC_FOOD_VIT_CASH, 93
-SC_FOOD_DEX_CASH, 93
-SC_FOOD_INT_CASH, 93
-SC_FOOD_LUK_CASH, 93
-SC_SAVAGE_STEAK, 76
-SC_COCKTAIL_WARG_BLOOD, 76
-SC_MINOR_BBQ, 76
-SC_SIROMA_ICE_TEA, 76
-SC_DROCERA_HERB_STEAMED, 76
-SC_PUTTI_TAILS_NOODLES, 76
-SC_MELON_BOMB, 12
-SC_BANANA_BOMB_SITDOWN_POSTDELAY, 12
-SC_BANANA_BOMB, 12
-SC_PROMOTE_HEALTH_RESERCH, 12
-SC_ENERGY_DRINK_RESERCH, 12
-SC_EXTRACT_WHITE_POTION_Z, 12
-SC_VITATA_500, 12
-SC_EXTRACT_SALAMINE_JUICE, 12
-SC_BOOST500, 12
-SC_FULL_SWING_K, 12
-SC_MANA_PLUS, 12
-SC_MUSTLE_M, 12
-SC_LIFE_FORCE_F, 12
-SC_MER_FLEE, 28
-SC_MER_ATK, 28
-SC_MER_HP, 28
-SC_MER_SP, 28
-SC_MER_HIT, 28
-SC_SLOWCAST, 31
-SC_CRITICALWOUND, 23
-SC_MOVHASTE_HORSE, 31
-SC_PROTECT_DEF, 28
-SC_PROTECT_MDEF, 28
-SC_HEALPLUS, 92
-SC_S_LIFEPOTION, 92
-SC_L_LIFEPOTION, 92
-SC_CRITICALPERCENT, 92
-SC_PLUSAVOIDVALUE, 92
-SC_ATKER_ASPD, 28
-SC_TARGET_ASPD, 92
-SC_ATKER_MOVESPEED, 28
-SC_ATKER_BLOOD, 28
-SC_TARGET_BLOOD, 30
-SC_ARMOR_PROPERTY, 29
-//SC_REUSE_LIMIT_A, 29
-SC_HELLPOWER, 29
-SC_STEAMPACK, 108
-//SC_REUSE_LIMIT_B, 29
-//SC_REUSE_LIMIT_C, 29
-//SC_REUSE_LIMIT_D, 29
-//SC_REUSE_LIMIT_E, 29
-//SC_REUSE_LIMIT_F, 29
-SC_CASH_PLUSONLYJOBEXP, 93
-SC_PARTYFLEE, 24
-SC_ANGEL_PROTECT, 24
-//SC_ENDURE_MDEF, 21
-SC_ENCHANTBLADE, 16
-SC_DEATHBOUND, 30
-SC_REFRESH, 22
-SC_GIANTGROWTH, 20
-SC_STONEHARDSKIN, 23
-SC_VITALITYACTIVATION, 20
-SC_FIGHTINGSPIRIT, 20
-SC_ABUNDANCE, 20
-//SC_REUSE_MILLENNIUMSHIELD, 29
-//SC_REUSE_CRUSHSTRIKE, 29
-//SC_REUSE_REFRESH, 29
-//SC_REUSE_STORMBLAST, 29
-SC_EPICLESIS, 29
-SC_ORATIO, 276
-SC_LAUDAAGNUS, 20
-SC_LAUDARAMUS, 20
-SC_CLOAKINGEXCEED, 30
-SC_HALLUCINATIONWALK, 284
-SC_HALLUCINATIONWALK_POSTDELAY, 31
-SC_RENOVATIO, 20
-SC_WEAPONBLOCKING, 28
-//SC_WEAPONBLOCKING_POSTDELAY, 31
-SC_ROLLINGCUTTER, 286
-SC_EXPIATIO, 20
-SC_POISONINGWEAPON, 28
-SC_TOXIN, 20
-SC_PARALYSE, 20
-SC_VENOMBLEED, 20
-SC_MAGICMUSHROOM, 20
-SC_DEATHHURT, 20
-SC_PYREXIA, 20
-SC_OBLIVIONCURSE, 20
-SC_LEECHESEND, 20
-SC_DUPLELIGHT, 276
-SC_FEARBREEZE, 28
-SC_ELECTRICSHOCKER, 30
-SC_MARSHOFABYSS, 20
-SC_RECOGNIZEDSPELL, 20
-//SC_WUGRIDER, 29
-SC_WUGDASH, 30
-SC_WUGBITE, 30
-SC_CAMOUFLAGE, 286
-SC_ACCELERATION, 28
-SC_HOVERING, 28
-SC_SUMMON1, 280
-SC_SUMMON2, 280
-SC_SUMMON3, 280
-SC_SUMMON4, 280
-SC_SUMMON5, 280
-SC_MVPCARD_TAOGUNKA, 60
-SC_MVPCARD_MISTRESS, 60
-SC_MVPCARD_ORCHERO, 60
-SC_MVPCARD_ORCLORD, 60
-SC_OVERHEAT_LIMITPOINT, 28
-SC_OVERHEAT, 28
-SC_SHAPESHIFT, 28
-SC_INFRAREDSCAN, 28
-SC_MAGNETICFIELD, 30
-SC_NEUTRALBARRIER, 30
-SC_NEUTRALBARRIER_MASTER, 30
-SC_STEALTHFIELD_MASTER, 30
-SC_MANU_ATK, 28
-SC_MANU_DEF, 28
-SC_SPL_ATK, 28
-SC_SPL_DEF, 28
-SC__REPRODUCE, 28
-SC_MANU_MATK, 28
-SC_SPL_MATK, 28
-SC_STR_SCROLL, 61
-SC_INT_SCROLL, 61
-SC_FORCEOFVANGUARD, 28
-SC_BUCHEDENOEL, 60
-SC__AUTOSHADOWSPELL, 16
-SC__SHADOWFORM, 286
-SC_RAID, 28
-SC_SHIELDSPELL_DEF, 16
-SC_SHIELDSPELL_MDEF, 16
-SC_SHIELDSPELL_REF, 16
-SC__BODYPAINT, 20
-SC_EXEEDBREAK, 28
-SC_ADORAMUS, 16
-SC_PRESTIGE, 16
-SC__INVISIBILITY, 30
-SC__DEADLYINFECT, 20
-SC_BANDING, 284
-SC_BANDING_DEFENCE, 28
-SC_EARTHDRIVE, 20
-SC_INSPIRATION, 28
-SC__ENERVATION, 16
-SC__GROOMY, 16
-SC_RAISINGDRAGON, 30
-SC__IGNORANCE, 16
-SC__LAZINESS, 16
-SC_LIGHTNINGWALK, 28
-SC_ACARAJE, 24
-SC__UNLUCKY, 16
-SC_CURSEDCIRCLE_ATKER, 284
-SC_CURSEDCIRCLE_TARGET, 284
-SC__WEAKNESS, 16
-SC_CRESCENTELBOW, 28
-//SC_NOEQUIPACCESSARY, 30
-SC__STRIPACCESSARY, 28
-SC__MANHOLE, 94
-//SC_POPECOOKIE, 28
-SC__BLOODYLUST, 32
-SC_SWING, 28
-SC_SYMPHONY_LOVE, 28
-SC_PROPERTYWALK, 18
-SC_SPELLFIST, 16
-SC_NETHERWORLD, 16
-SC_SIREN, 16
-SC_DEEP_SLEEP, 290
-SC_SIRCLEOFNATURE, 16
-SC_GLOOMYDAY, 16
-SC_GLOOMYDAY_SK, 16
-SC_SONG_OF_MANA, 16
-SC_DANCE_WITH_WUG, 16
-SC_RUSH_WINDMILL, 28
-SC_ECHOSONG, 28
-SC_HARMONIZE, 16
-SC_MOONLIT_SERENADE, 28
-SC_SATURDAY_NIGHT_FEVER, 16
-SC_SITDOWN_FORCE, 28
-SC_ANALYZE, 28
-SC_LERADS_DEW, 28
-SC_MELODYOFSINK, 28
-SC_BEYOND_OF_WARCRY, 28
-SC_UNLIMITED_HUMMING_VOICE, 28
-SC_WARMER, 2
-SC_VENOMIMPRESS, 260
-SC_FROSTMISTY, 288
-//SC_ASSUMPTIO2, 16
-//SC_GN_TRAINING_SWORD, 31
-//SC_GN_REMODELING_CART, 31
-SC_STOMACHACHE, 32
-SC_MYSTERIOUS_POWDER, 32
-//SC_ELEMENTAL_AGGRESSIVE, 2
-//SC_ELEMENTAL_WAIT, 2
-//SC_ELEMENTAL_PASSIVE, 2
-//SC_ELEMENTAL_DEFENSIVE, 2
-SC_WATER_BARRIER, 2
-SC_ZEPHYR, 2
-SC_POWER_OF_GAIA, 2
-SC_FIRE_INSIGNIA, 2
-SC_WATER_INSIGNIA, 2
-SC_WIND_INSIGNIA, 2
-SC_EARTH_INSIGNIA, 2
-SC_MORA_BUFF, 2
-//SC_REUSE_LIMIT_G, 29
-//SC_REUSE_LIMIT_H, 29
-SC_NEEDLE_OF_PARALYZE, 1
-SC_PAIN_KILLER, 1
-SC_G_LIFEPOTION, 68
-//SC_VITALIZE_POTION, 4
-SC_LIGHT_OF_REGENE, 1
-//SC_SONIC_CLAW_POSTDELAY, 2
-//SC_SILVERVEIN_RUSH_POSTDELAY, 2
-//SC_MIDNIGHT_FRENZY_POSTDELAY, 2
-//SC_TINDER_BREAKER, 2
-//SC_TINDER_BREAKER_POSTDELAY, 2
-//SC_CBC, 2
-//SC_CBC_POSTDELAY, 2
-//SC_EQC, 2
-SC_MAGIC_CANDY, 92
-//SC_ALL_RIDING_REUSE_LIMIT, 1
-//SC_HANDICAPSTATE_DEEP_SLEEP, 80
-SC_MONSTER_TRANSFORM, 268
-SC_MTF_ASPD, 12
-SC_MTF_RANGEATK, 12
-SC_MTF_MATK, 12
-SC_MTF_MLEATKED,12
-SC_MTF_CRIDAMAGE, 12
-SC_FULL_THROTTLE, 18
-SC_REBOUND, 18
-SC_TELEKINESIS_INTENSE, 18
-
-// Geffen Scrolls
-SC_SKELSCROLL, 69
-SC_DISTRUCTIONSCROLL, 69
-SC_ROYALSCROLL, 69
-SC_IMMUNITYSCROLL, 69
-SC_MYSTICSCROLL, 69
-SC_BATTLESCROLL, 69
-SC_ARMORSCROLL, 69
-SC_FREYJASCROLL, 69
-SC_SOULSCROLL, 69
-
-// Eden Crystal Synthesis
-SC_QUEST_BUFF1, 13
-SC_QUEST_BUFF2, 13
-SC_QUEST_BUFF3, 13
-
-// Geffen Magic Tournament
-SC_GEFFEN_MAGIC1, 14
-SC_GEFFEN_MAGIC2, 14
-SC_GEFFEN_MAGIC3, 14
-
-SC_OVERLAPEXPUP, 12
-SC_M_LIFEPOTION, 68
-
-// Guild Auras should not be saved
-SC_LEADERSHIP,78
-SC_GLORYWOUNDS,78
-SC_SOULCOLD,78
-SC_HAWKEYES,78
-SC_GDSKILL_REGENERATION,78
-
-SC_ORCISH, 2
-
-// Unremovable
-SC_WEIGHTOVER50, 207
-SC_WEIGHTOVER90, 207
-SC_WEDDING, 77
-SC_XMAS, 77
-SC_SUMMER, 77
-SC_NOCHAT, 205
-SC_FUSION, 77
-SC_EARTHSCROLL, 77
-SC_STORMKICK_READY, 77
-SC_DOWNKICK_READY, 77
-SC_COUNTERKICK_READY, 77
-SC_TURNKICK_READY, 77
-SC_DODGE_READY, 77
-SC_JAILED, 205
-SC_AUTOTRADE, 77
-SC_DANCING, 12
-SC_WHISTLE, 79
-SC_ASSNCROS, 79
-SC_POEMBRAGI, 79
-SC_APPLEIDUN, 79
-SC_HUMMING, 79
-SC_DONTFORGETME, 79
-SC_FORTUNE, 79
-SC_SERVICEFORYOU, 79
-SC_INCHIT, 77
-SC_PUSH_CART, 461
-SC_COLD, 256
-SC_BLOOD_SUCKER, 256
-
-// Costumes
-SC_MOONSTAR, 463
-SC_SUPER_STAR, 463
-SC_STRANGELIGHTS, 463
-SC_DECORATION_OF_MUSIC, 463
-SC_LJOSALFAR, 463
-SC_MERMAID_LONGING, 463
-SC_HAT_EFFECT, 463
-SC_FLOWERSMOKE, 463
-SC_FSTONE, 463
-SC_HAPPINESS_STAR, 463
-SC_MAPLE_FALLS, 463
-SC_TIME_ACCESSORY, 463
-SC_MAGICAL_FEATHER, 463
-SC_BLOSSOM_FLUTTERING, 463
-
-// Summoner
-SC_SPRITEMABLE, 205
-SC_BITESCAR, 4
-
-// Clan System
-SC_CLAN_INFO, 463
-
-// Cant Clear
-SC_ALL_RIDING, 397
-
-SC_DAILYSENDMAILCNT, 461
-
-// evol effects
-SC_PHYSICAL_SHIELD, 258
diff --git a/sql-files/logs.sql b/sql-files/logs.sql
index 6edf385a..499afcfd 100644
--- a/sql-files/logs.sql
+++ b/sql-files/logs.sql
@@ -1,8 +1,8 @@
-- This file is part of Hercules.
-- http://herc.ws - http://github.com/HerculesWS/Hercules
--
--- Copyright (C) 2012-2015 Hercules Dev Team
--- Copyright (C) Athena Dev Teams
+-- Copyright (C) 2012-2020 Hercules Dev Team
+-- Copyright (C) Athena Dev Teams
--
-- Hercules is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
@@ -42,10 +42,10 @@
--
CREATE TABLE IF NOT EXISTS `atcommandlog` (
- `atcommand_id` MEDIUMINT(9) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `atcommand_id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
`atcommand_date` DATETIME NULL,
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`char_name` VARCHAR(25) NOT NULL DEFAULT '',
`map` VARCHAR(11) NOT NULL DEFAULT '',
`command` VARCHAR(255) NOT NULL DEFAULT '',
@@ -59,10 +59,10 @@ CREATE TABLE IF NOT EXISTS `atcommandlog` (
--
CREATE TABLE IF NOT EXISTS `branchlog` (
- `branch_id` MEDIUMINT(9) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `branch_id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
`branch_date` DATETIME NULL,
- `account_id` INT(11) NOT NULL DEFAULT '0',
- `char_id` INT(11) NOT NULL DEFAULT '0',
+ `account_id` INT NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
`char_name` VARCHAR(25) NOT NULL DEFAULT '',
`map` VARCHAR(11) NOT NULL DEFAULT '',
PRIMARY KEY(`branch_id`),
@@ -75,15 +75,15 @@ CREATE TABLE IF NOT EXISTS `branchlog` (
--
CREATE TABLE IF NOT EXISTS `chatlog` (
- `id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `id` BIGINT NOT NULL AUTO_INCREMENT,
`time` DATETIME NULL,
`type` ENUM('O','W','P','G','M','C') NOT NULL DEFAULT 'O',
- `type_id` INT(11) NOT NULL DEFAULT '0',
- `src_charid` INT(11) NOT NULL DEFAULT '0',
- `src_accountid` INT(11) NOT NULL DEFAULT '0',
+ `type_id` INT NOT NULL DEFAULT '0',
+ `src_charid` INT NOT NULL DEFAULT '0',
+ `src_accountid` INT NOT NULL DEFAULT '0',
`src_map` VARCHAR(11) NOT NULL DEFAULT '',
- `src_map_x` SMALLINT(4) NOT NULL DEFAULT '0',
- `src_map_y` SMALLINT(4) NOT NULL DEFAULT '0',
+ `src_map_x` SMALLINT NOT NULL DEFAULT '0',
+ `src_map_y` SMALLINT NOT NULL DEFAULT '0',
`dst_charname` VARCHAR(25) NOT NULL DEFAULT '',
`message` VARCHAR(150) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
@@ -99,7 +99,7 @@ CREATE TABLE IF NOT EXISTS `loginlog` (
`time` DATETIME NULL,
`ip` VARCHAR(15) NOT NULL DEFAULT '',
`user` VARCHAR(23) NOT NULL DEFAULT '',
- `rcode` TINYINT(4) NOT NULL DEFAULT '0',
+ `rcode` TINYINT NOT NULL DEFAULT '0',
`log` VARCHAR(255) NOT NULL DEFAULT '',
INDEX (`ip`)
) ENGINE=MyISAM;
@@ -109,12 +109,12 @@ CREATE TABLE IF NOT EXISTS `loginlog` (
--
CREATE TABLE IF NOT EXISTS `mvplog` (
- `mvp_id` MEDIUMINT(9) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `mvp_id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
`mvp_date` DATETIME NULL,
- `kill_char_id` INT(11) NOT NULL DEFAULT '0',
- `monster_id` SMALLINT(6) NOT NULL DEFAULT '0',
- `prize` INT(11) NOT NULL DEFAULT '0',
- `mvpexp` MEDIUMINT(9) NOT NULL DEFAULT '0',
+ `kill_char_id` INT NOT NULL DEFAULT '0',
+ `monster_id` SMALLINT NOT NULL DEFAULT '0',
+ `prize` INT NOT NULL DEFAULT '0',
+ `mvpexp` MEDIUMINT NOT NULL DEFAULT '0',
`map` VARCHAR(11) NOT NULL DEFAULT '',
PRIMARY KEY (`mvp_id`)
) ENGINE=MyISAM AUTO_INCREMENT=1;
@@ -124,10 +124,10 @@ CREATE TABLE IF NOT EXISTS `mvplog` (
--
CREATE TABLE IF NOT EXISTS `npclog` (
- `npc_id` MEDIUMINT(9) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `npc_id` MEDIUMINT UNSIGNED NOT NULL AUTO_INCREMENT,
`npc_date` DATETIME NULL,
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`char_name` VARCHAR(25) NOT NULL DEFAULT '',
`map` VARCHAR(11) NOT NULL DEFAULT '',
`mes` VARCHAR(255) NOT NULL DEFAULT '',
@@ -141,28 +141,28 @@ CREATE TABLE IF NOT EXISTS `npclog` (
--
CREATE TABLE IF NOT EXISTS `picklog` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `id` INT NOT NULL AUTO_INCREMENT,
`time` DATETIME NULL,
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `type` ENUM('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2') NOT NULL DEFAULT 'P',
- `nameid` INT(11) NOT NULL DEFAULT '0',
- `amount` INT(11) NOT NULL DEFAULT '1',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` smallint(5) unsigned NOT NULL default '0',
- `opt_val0` smallint(5) unsigned NOT NULL default '0',
- `opt_idx1` smallint(5) unsigned NOT NULL default '0',
- `opt_val1` smallint(5) unsigned NOT NULL default '0',
- `opt_idx2` smallint(5) unsigned NOT NULL default '0',
- `opt_val2` smallint(5) unsigned NOT NULL default '0',
- `opt_idx3` smallint(5) unsigned NOT NULL default '0',
- `opt_val3` smallint(5) unsigned NOT NULL default '0',
- `opt_idx4` smallint(5) unsigned NOT NULL default '0',
- `opt_val4` smallint(5) unsigned NOT NULL default '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
+ `type` ENUM('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2','3') NOT NULL DEFAULT 'P',
+ `nameid` INT NOT NULL DEFAULT '0',
+ `amount` INT NOT NULL DEFAULT '1',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT unsigned NOT NULL default '0',
+ `opt_val0` SMALLINT unsigned NOT NULL default '0',
+ `opt_idx1` SMALLINT unsigned NOT NULL default '0',
+ `opt_val1` SMALLINT unsigned NOT NULL default '0',
+ `opt_idx2` SMALLINT unsigned NOT NULL default '0',
+ `opt_val2` SMALLINT unsigned NOT NULL default '0',
+ `opt_idx3` SMALLINT unsigned NOT NULL default '0',
+ `opt_val3` SMALLINT unsigned NOT NULL default '0',
+ `opt_idx4` SMALLINT unsigned NOT NULL default '0',
+ `opt_val4` SMALLINT unsigned NOT NULL default '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
`map` VARCHAR(11) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
INDEX (`type`)
@@ -173,12 +173,12 @@ CREATE TABLE IF NOT EXISTS `picklog` (
--
CREATE TABLE IF NOT EXISTS `zenylog` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
+ `id` INT NOT NULL AUTO_INCREMENT,
`time` DATETIME NULL,
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `src_id` INT(11) NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
+ `src_id` INT NOT NULL DEFAULT '0',
`type` ENUM('T','V','P','M','S','N','D','C','A','E','I','B','K') NOT NULL DEFAULT 'S',
- `amount` INT(11) NOT NULL DEFAULT '0',
+ `amount` INT NOT NULL DEFAULT '0',
`map` VARCHAR(11) NOT NULL DEFAULT '',
PRIMARY KEY (`id`),
INDEX (`type`)
diff --git a/sql-files/main.sql b/sql-files/main.sql
index e364ec77..7aebd73f 100644
--- a/sql-files/main.sql
+++ b/sql-files/main.sql
@@ -1,8 +1,8 @@
-- This file is part of Hercules.
-- http://herc.ws - http://github.com/HerculesWS/Hercules
--
--- Copyright (C) 2012-2016 Hercules Dev Team
--- Copyright (C) Athena Dev Teams
+-- Copyright (C) 2012-2020 Hercules Dev Team
+-- Copyright (C) Athena Dev Teams
--
-- Hercules is free software: you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
@@ -22,11 +22,11 @@
--
CREATE TABLE IF NOT EXISTS `account_data` (
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `bank_vault` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `base_exp` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '100',
- `base_drop` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '100',
- `base_death` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '100',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `bank_vault` INT UNSIGNED NOT NULL DEFAULT '0',
+ `base_exp` SMALLINT UNSIGNED NOT NULL DEFAULT '100',
+ `base_drop` SMALLINT UNSIGNED NOT NULL DEFAULT '100',
+ `base_death` SMALLINT UNSIGNED NOT NULL DEFAULT '100',
PRIMARY KEY (`account_id`)
) ENGINE=MyISAM;
@@ -35,10 +35,10 @@ CREATE TABLE IF NOT EXISTS `account_data` (
--
CREATE TABLE IF NOT EXISTS `acc_reg_num_db` (
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` INT(11) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`account_id`,`key`,`index`),
KEY `account_id` (`account_id`)
) ENGINE=MyISAM;
@@ -48,10 +48,10 @@ CREATE TABLE IF NOT EXISTS `acc_reg_num_db` (
--
CREATE TABLE IF NOT EXISTS `acc_reg_str_db` (
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` VARCHAR(254) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` VARCHAR(255) NOT NULL DEFAULT '0',
PRIMARY KEY (`account_id`,`key`,`index`),
KEY `account_id` (`account_id`)
) ENGINE=MyISAM;
@@ -61,35 +61,35 @@ CREATE TABLE IF NOT EXISTS `acc_reg_str_db` (
--
CREATE TABLE IF NOT EXISTS `auction` (
- `auction_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
- `seller_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `auction_id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `seller_id` INT UNSIGNED NOT NULL DEFAULT '0',
`seller_name` VARCHAR(30) NOT NULL DEFAULT '',
- `buyer_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `buyer_id` INT UNSIGNED NOT NULL DEFAULT '0',
`buyer_name` VARCHAR(30) NOT NULL DEFAULT '',
- `price` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `buynow` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `hours` SMALLINT(6) NOT NULL DEFAULT '0',
- `timestamp` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nameid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `price` INT UNSIGNED NOT NULL DEFAULT '0',
+ `buynow` INT UNSIGNED NOT NULL DEFAULT '0',
+ `hours` SMALLINT NOT NULL DEFAULT '0',
+ `timestamp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nameid` INT UNSIGNED NOT NULL DEFAULT '0',
`item_name` VARCHAR(50) NOT NULL DEFAULT '',
- `type` SMALLINT(6) NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `type` SMALLINT NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`auction_id`)
) ENGINE=MyISAM;
@@ -98,10 +98,10 @@ CREATE TABLE IF NOT EXISTS `auction` (
--
CREATE TABLE IF NOT EXISTS `autotrade_data` (
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `itemkey` INT(11) NOT NULL DEFAULT '0',
- `amount` INT(11) NOT NULL DEFAULT '0',
- `price` INT(11) NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
+ `itemkey` INT NOT NULL DEFAULT '0',
+ `amount` INT NOT NULL DEFAULT '0',
+ `price` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`,`itemkey`)
) ENGINE=MyISAM;
@@ -110,9 +110,9 @@ CREATE TABLE IF NOT EXISTS `autotrade_data` (
--
CREATE TABLE IF NOT EXISTS `autotrade_merchants` (
- `account_id` INT(11) NOT NULL DEFAULT '0',
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `sex` TINYINT(2) NOT NULL DEFAULT '0',
+ `account_id` INT NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
+ `sex` TINYINT NOT NULL DEFAULT '0',
`title` VARCHAR(80) NOT NULL DEFAULT 'Buy From Me!',
PRIMARY KEY (`account_id`,`char_id`)
) ENGINE=MyISAM;
@@ -122,20 +122,20 @@ CREATE TABLE IF NOT EXISTS `autotrade_merchants` (
--
CREATE TABLE IF NOT EXISTS `char_achievements` (
- `char_id` INT(11) UNSIGNED NOT NULL,
- `ach_id` INT(11) UNSIGNED NOT NULL,
- `completed_at` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `rewarded_at` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_0` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_1` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_2` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_3` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_4` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_5` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_6` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_7` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_8` INT(10) UNSIGNED NOT NULL DEFAULT '0',
- `obj_9` INT(10) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL,
+ `ach_id` INT UNSIGNED NOT NULL,
+ `completed_at` INT UNSIGNED NOT NULL DEFAULT '0',
+ `rewarded_at` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_0` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_1` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_2` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_3` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_4` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_5` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_6` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_7` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_8` INT UNSIGNED NOT NULL DEFAULT '0',
+ `obj_9` INT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`, `ach_id`)
) ENGINE=MyISAM;
@@ -144,31 +144,31 @@ CREATE TABLE IF NOT EXISTS `char_achievements` (
--
CREATE TABLE IF NOT EXISTS `cart_inventory` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `nameid` INT(11) NOT NULL DEFAULT '0',
- `amount` INT(11) NOT NULL DEFAULT '0',
- `equip` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `expire_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `bound` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `id` INT NOT NULL AUTO_INCREMENT,
+ `char_id` INT NOT NULL DEFAULT '0',
+ `nameid` INT NOT NULL DEFAULT '0',
+ `amount` INT NOT NULL DEFAULT '0',
+ `equip` INT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `expire_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `bound` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -178,74 +178,74 @@ CREATE TABLE IF NOT EXISTS `cart_inventory` (
--
CREATE TABLE IF NOT EXISTS `char` (
- `char_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_num` TINYINT(1) NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_num` TINYINT NOT NULL DEFAULT '0',
`name` VARCHAR(30) NOT NULL DEFAULT '',
- `class` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `base_level` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '1',
- `job_level` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '1',
- `base_exp` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
- `job_exp` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
- `zeny` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `str` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `agi` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `vit` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `int` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `dex` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `luk` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `max_hp` INT(9) UNSIGNED NOT NULL DEFAULT '0',
- `hp` INT(9) UNSIGNED NOT NULL DEFAULT '0',
- `max_sp` INT(9) UNSIGNED NOT NULL DEFAULT '0',
- `sp` INT(9) UNSIGNED NOT NULL DEFAULT '0',
- `status_point` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `skill_point` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `option` INT(11) NOT NULL DEFAULT '0',
- `karma` TINYINT(3) NOT NULL DEFAULT '0',
- `manner` SMALLINT(6) NOT NULL DEFAULT '0',
- `party_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `clan_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `pet_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `homun_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `elemental_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `hair` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `hair_color` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `clothes_color` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `body` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `weapon` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `shield` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `head_top` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `head_mid` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `head_bottom` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `robe` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `last_login` BIGINT(20) NULL DEFAULT '0',
+ `class` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `base_level` SMALLINT UNSIGNED NOT NULL DEFAULT '1',
+ `job_level` SMALLINT UNSIGNED NOT NULL DEFAULT '1',
+ `base_exp` BIGINT UNSIGNED NOT NULL DEFAULT '0',
+ `job_exp` BIGINT UNSIGNED NOT NULL DEFAULT '0',
+ `zeny` INT UNSIGNED NOT NULL DEFAULT '0',
+ `str` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `agi` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `vit` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `int` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `dex` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `luk` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `max_hp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `hp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `max_sp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `sp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `status_point` INT UNSIGNED NOT NULL DEFAULT '0',
+ `skill_point` INT UNSIGNED NOT NULL DEFAULT '0',
+ `option` INT NOT NULL DEFAULT '0',
+ `karma` TINYINT NOT NULL DEFAULT '0',
+ `manner` SMALLINT NOT NULL DEFAULT '0',
+ `party_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `clan_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `pet_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `homun_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `elemental_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `hair` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `hair_color` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `clothes_color` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `body` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `weapon` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `shield` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `head_top` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `head_mid` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `head_bottom` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `robe` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `last_login` BIGINT NULL DEFAULT '0',
`last_map` VARCHAR(11) NOT NULL DEFAULT '',
- `last_x` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '53',
- `last_y` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '111',
+ `last_x` SMALLINT UNSIGNED NOT NULL DEFAULT '53',
+ `last_y` SMALLINT UNSIGNED NOT NULL DEFAULT '111',
`save_map` VARCHAR(11) NOT NULL DEFAULT '',
- `save_x` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '53',
- `save_y` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '111',
- `partner_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `online` TINYINT(2) NOT NULL DEFAULT '0',
- `father` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `mother` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `child` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `fame` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `rename` SMALLINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `delete_date` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `slotchange` SMALLINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `char_opt` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `font` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `unban_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `uniqueitem_counter` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `save_x` SMALLINT UNSIGNED NOT NULL DEFAULT '53',
+ `save_y` SMALLINT UNSIGNED NOT NULL DEFAULT '111',
+ `partner_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `online` TINYINT NOT NULL DEFAULT '0',
+ `father` INT UNSIGNED NOT NULL DEFAULT '0',
+ `mother` INT UNSIGNED NOT NULL DEFAULT '0',
+ `child` INT UNSIGNED NOT NULL DEFAULT '0',
+ `fame` INT UNSIGNED NOT NULL DEFAULT '0',
+ `rename` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `delete_date` INT UNSIGNED NOT NULL DEFAULT '0',
+ `slotchange` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `char_opt` INT UNSIGNED NOT NULL DEFAULT '0',
+ `font` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unban_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `uniqueitem_counter` BIGINT UNSIGNED NOT NULL DEFAULT '0',
`sex` ENUM('M','F','U') NOT NULL DEFAULT 'U',
- `hotkey_rowshift` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `hotkey_rowshift2` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attendance_count` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attendance_timer` BIGINT(20) NULL DEFAULT '0',
- `title_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `inventory_size` INT(11) UNSIGNED NOT NULL DEFAULT '100',
+ `hotkey_rowshift` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `hotkey_rowshift2` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attendance_count` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attendance_timer` BIGINT NULL DEFAULT '0',
+ `title_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `inventory_size` INT UNSIGNED NOT NULL DEFAULT '100',
PRIMARY KEY (`char_id`),
UNIQUE KEY `name_key` (`name`),
KEY `account_id` (`account_id`),
@@ -259,10 +259,10 @@ CREATE TABLE IF NOT EXISTS `char` (
--
CREATE TABLE IF NOT EXISTS `char_reg_num_db` (
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` INT(11) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`,`key`,`index`),
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -272,10 +272,10 @@ CREATE TABLE IF NOT EXISTS `char_reg_num_db` (
--
CREATE TABLE IF NOT EXISTS `char_reg_str_db` (
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` VARCHAR(254) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` VARCHAR(255) NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`,`key`,`index`),
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -287,19 +287,19 @@ CREATE TABLE IF NOT EXISTS `char_reg_str_db` (
CREATE TABLE IF NOT EXISTS `charlog` (
`time` DATETIME NULL,
`char_msg` VARCHAR(255) NOT NULL DEFAULT 'char select',
- `account_id` INT(11) NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_num` TINYINT(4) NOT NULL DEFAULT '0',
- `class` MEDIUMINT(9) NOT NULL DEFAULT '0',
+ `account_id` INT NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_num` TINYINT NOT NULL DEFAULT '0',
+ `class` MEDIUMINT NOT NULL DEFAULT '0',
`name` VARCHAR(23) NOT NULL DEFAULT '',
- `str` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `agi` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `vit` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `int` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `dex` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `luk` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `hair` TINYINT(4) NOT NULL DEFAULT '0',
- `hair_color` INT(11) NOT NULL DEFAULT '0'
+ `str` INT UNSIGNED NOT NULL DEFAULT '0',
+ `agi` INT UNSIGNED NOT NULL DEFAULT '0',
+ `vit` INT UNSIGNED NOT NULL DEFAULT '0',
+ `int` INT UNSIGNED NOT NULL DEFAULT '0',
+ `dex` INT UNSIGNED NOT NULL DEFAULT '0',
+ `luk` INT UNSIGNED NOT NULL DEFAULT '0',
+ `hair` TINYINT NOT NULL DEFAULT '0',
+ `hair_color` INT NOT NULL DEFAULT '0'
) ENGINE=MyISAM;
--
@@ -307,23 +307,23 @@ CREATE TABLE IF NOT EXISTS `charlog` (
--
CREATE TABLE IF NOT EXISTS `elemental` (
- `ele_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) NOT NULL,
- `class` MEDIUMINT(9) UNSIGNED NOT NULL DEFAULT '0',
- `mode` INT(11) UNSIGNED NOT NULL DEFAULT '1',
- `hp` INT(12) NOT NULL DEFAULT '1',
- `sp` INT(12) NOT NULL DEFAULT '1',
- `max_hp` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
- `max_sp` MEDIUMINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `atk1` MEDIUMINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `atk2` MEDIUMINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `matk` MEDIUMINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `aspd` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `def` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `mdef` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `flee` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `hit` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `life_time` INT(11) NOT NULL DEFAULT '0',
+ `ele_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `char_id` INT NOT NULL,
+ `class` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `mode` INT UNSIGNED NOT NULL DEFAULT '1',
+ `hp` INT NOT NULL DEFAULT '1',
+ `sp` INT NOT NULL DEFAULT '1',
+ `max_hp` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `max_sp` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `atk1` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `atk2` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `matk` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `aspd` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `def` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `mdef` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `flee` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `hit` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `life_time` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`ele_id`)
) ENGINE=MyISAM;
@@ -332,9 +332,9 @@ CREATE TABLE IF NOT EXISTS `elemental` (
--
CREATE TABLE IF NOT EXISTS `friends` (
- `char_id` INT(11) NOT NULL DEFAULT '0',
- `friend_account` INT(11) NOT NULL DEFAULT '0',
- `friend_id` INT(11) NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL DEFAULT '0',
+ `friend_account` INT NOT NULL DEFAULT '0',
+ `friend_id` INT NOT NULL DEFAULT '0',
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -343,11 +343,11 @@ CREATE TABLE IF NOT EXISTS `friends` (
--
CREATE TABLE IF NOT EXISTS `hotkey` (
- `char_id` INT(11) NOT NULL,
- `hotkey` TINYINT(2) UNSIGNED NOT NULL,
- `type` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `itemskill_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `skill_lvl` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL,
+ `hotkey` TINYINT UNSIGNED NOT NULL,
+ `type` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `itemskill_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `skill_lvl` TINYINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`,`hotkey`)
) ENGINE=MyISAM;
@@ -356,10 +356,10 @@ CREATE TABLE IF NOT EXISTS `hotkey` (
--
CREATE TABLE IF NOT EXISTS `global_acc_reg_num_db` (
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` INT(11) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`account_id`,`key`,`index`),
KEY `account_id` (`account_id`)
) ENGINE=MyISAM;
@@ -369,10 +369,10 @@ CREATE TABLE IF NOT EXISTS `global_acc_reg_num_db` (
--
CREATE TABLE IF NOT EXISTS `global_acc_reg_str_db` (
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
`key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` VARCHAR(254) NOT NULL DEFAULT '0',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` VARCHAR(255) NOT NULL DEFAULT '0',
PRIMARY KEY (`account_id`,`key`,`index`),
KEY `account_id` (`account_id`)
) ENGINE=MyISAM;
@@ -382,21 +382,21 @@ CREATE TABLE IF NOT EXISTS `global_acc_reg_str_db` (
--
CREATE TABLE IF NOT EXISTS `guild` (
- `guild_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `guild_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`master` VARCHAR(24) NOT NULL DEFAULT '',
- `guild_lv` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `connect_member` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `max_member` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `average_lv` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '1',
- `exp` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
- `next_exp` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `skill_point` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_lv` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `connect_member` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `max_member` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `average_lv` SMALLINT UNSIGNED NOT NULL DEFAULT '1',
+ `exp` BIGINT UNSIGNED NOT NULL DEFAULT '0',
+ `next_exp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `skill_point` TINYINT UNSIGNED NOT NULL DEFAULT '0',
`mes1` VARCHAR(60) NOT NULL DEFAULT '',
`mes2` VARCHAR(120) NOT NULL DEFAULT '',
- `emblem_len` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `emblem_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `emblem_len` INT UNSIGNED NOT NULL DEFAULT '0',
+ `emblem_id` INT UNSIGNED NOT NULL DEFAULT '0',
`emblem_data` blob,
PRIMARY KEY (`guild_id`,`char_id`),
UNIQUE KEY `guild_id` (`guild_id`),
@@ -408,9 +408,9 @@ CREATE TABLE IF NOT EXISTS `guild` (
--
CREATE TABLE IF NOT EXISTS `guild_alliance` (
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `opposition` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `alliance_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `opposition` INT UNSIGNED NOT NULL DEFAULT '0',
+ `alliance_id` INT UNSIGNED NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
PRIMARY KEY (`guild_id`,`alliance_id`),
KEY `alliance_id` (`alliance_id`)
@@ -421,24 +421,24 @@ CREATE TABLE IF NOT EXISTS `guild_alliance` (
--
CREATE TABLE IF NOT EXISTS `guild_castle` (
- `castle_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `economy` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `defense` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `triggerE` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `triggerD` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nextTime` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `payTime` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `createTime` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleC` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG0` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG1` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG2` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG3` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG4` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG5` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG6` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `visibleG7` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `castle_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `economy` INT UNSIGNED NOT NULL DEFAULT '0',
+ `defense` INT UNSIGNED NOT NULL DEFAULT '0',
+ `triggerE` INT UNSIGNED NOT NULL DEFAULT '0',
+ `triggerD` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nextTime` INT UNSIGNED NOT NULL DEFAULT '0',
+ `payTime` INT UNSIGNED NOT NULL DEFAULT '0',
+ `createTime` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleC` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG0` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG1` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG2` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG3` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG4` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG5` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG6` INT UNSIGNED NOT NULL DEFAULT '0',
+ `visibleG7` INT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`castle_id`),
KEY `guild_id` (`guild_id`)
) ENGINE=MyISAM;
@@ -448,9 +448,9 @@ CREATE TABLE IF NOT EXISTS `guild_castle` (
--
CREATE TABLE IF NOT EXISTS `guild_expulsion` (
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
`mes` VARCHAR(40) NOT NULL DEFAULT '',
PRIMARY KEY (`guild_id`,`name`)
@@ -461,18 +461,18 @@ CREATE TABLE IF NOT EXISTS `guild_expulsion` (
--
CREATE TABLE IF NOT EXISTS `guild_member` (
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `hair` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `hair_color` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `gender` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `class` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `lv` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `exp` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
- `exp_payper` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `online` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `position` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `hair` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `hair_color` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `gender` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `class` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `lv` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `exp` BIGINT UNSIGNED NOT NULL DEFAULT '0',
+ `exp_payper` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `online` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `position` TINYINT UNSIGNED NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
PRIMARY KEY (`guild_id`,`char_id`),
KEY `char_id` (`char_id`)
@@ -483,11 +483,11 @@ CREATE TABLE IF NOT EXISTS `guild_member` (
--
CREATE TABLE IF NOT EXISTS `guild_position` (
- `guild_id` INT(9) UNSIGNED NOT NULL DEFAULT '0',
- `position` TINYINT(6) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `position` TINYINT UNSIGNED NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `mode` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `exp_mode` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `mode` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `exp_mode` TINYINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`guild_id`,`position`)
) ENGINE=MyISAM;
@@ -496,9 +496,9 @@ CREATE TABLE IF NOT EXISTS `guild_position` (
--
CREATE TABLE IF NOT EXISTS `guild_skill` (
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `id` SMALLINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `lv` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `id` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `lv` TINYINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`guild_id`,`id`)
) ENGINE=MyISAM;
@@ -507,31 +507,31 @@ CREATE TABLE IF NOT EXISTS `guild_skill` (
--
CREATE TABLE IF NOT EXISTS `guild_storage` (
- `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
- `guild_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nameid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `equip` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `expire_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `bound` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `guild_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nameid` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT UNSIGNED NOT NULL DEFAULT '0',
+ `equip` INT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `expire_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `bound` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `guild_id` (`guild_id`)
) ENGINE=MyISAM;
@@ -541,30 +541,30 @@ CREATE TABLE IF NOT EXISTS `guild_storage` (
--
CREATE TABLE IF NOT EXISTS `homunculus` (
- `homun_id` INT(11) NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) NOT NULL,
- `class` MEDIUMINT(9) UNSIGNED NOT NULL DEFAULT '0',
- `prev_class` MEDIUMINT(9) NOT NULL DEFAULT '0',
+ `homun_id` INT NOT NULL AUTO_INCREMENT,
+ `char_id` INT NOT NULL,
+ `class` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `prev_class` MEDIUMINT NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `level` SMALLINT(4) NOT NULL DEFAULT '0',
- `exp` INT(12) NOT NULL DEFAULT '0',
- `intimacy` INT(12) NOT NULL DEFAULT '0',
- `hunger` SMALLINT(4) NOT NULL DEFAULT '0',
- `str` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `agi` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `vit` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `INT` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `dex` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `luk` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `hp` INT(12) NOT NULL DEFAULT '1',
- `max_hp` INT(12) NOT NULL DEFAULT '1',
- `sp` INT(12) NOT NULL DEFAULT '1',
- `max_sp` INT(12) NOT NULL DEFAULT '1',
- `skill_point` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `alive` TINYINT(2) NOT NULL DEFAULT '1',
- `rename_flag` TINYINT(2) NOT NULL DEFAULT '0',
- `vaporize` TINYINT(2) NOT NULL DEFAULT '0',
- `autofeed` TINYINT(2) NOT NULL DEFAULT '0',
+ `level` SMALLINT NOT NULL DEFAULT '0',
+ `exp` INT NOT NULL DEFAULT '0',
+ `intimacy` INT NOT NULL DEFAULT '0',
+ `hunger` SMALLINT NOT NULL DEFAULT '0',
+ `str` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `agi` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `vit` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `INT` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `dex` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `luk` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `hp` INT NOT NULL DEFAULT '1',
+ `max_hp` INT NOT NULL DEFAULT '1',
+ `sp` INT NOT NULL DEFAULT '1',
+ `max_sp` INT NOT NULL DEFAULT '1',
+ `skill_point` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `alive` TINYINT NOT NULL DEFAULT '1',
+ `rename_flag` TINYINT NOT NULL DEFAULT '0',
+ `vaporize` TINYINT NOT NULL DEFAULT '0',
+ `autofeed` TINYINT NOT NULL DEFAULT '0',
PRIMARY KEY (`homun_id`)
) ENGINE=MyISAM;
@@ -582,32 +582,32 @@ CREATE TABLE IF NOT EXISTS `interlog` (
--
CREATE TABLE IF NOT EXISTS `inventory` (
- `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nameid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `equip` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `expire_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `favorite` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `bound` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nameid` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT UNSIGNED NOT NULL DEFAULT '0',
+ `equip` INT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `expire_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `favorite` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `bound` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -617,36 +617,36 @@ CREATE TABLE IF NOT EXISTS `inventory` (
--
CREATE TABLE IF NOT EXISTS `ipbanlist` (
- `list` VARCHAR(255) NOT NULL DEFAULT '',
+ `list` VARCHAR(39) NOT NULL DEFAULT '',
`btime` DATETIME NULL,
`rtime` DATETIME NULL,
`reason` VARCHAR(255) NOT NULL DEFAULT '',
KEY (`list`)
-) ENGINE=MyISAM;
+) ENGINE=InnoDB;
--
-- Table structure for table `login`
--
CREATE TABLE IF NOT EXISTS `login` (
- `account_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `userid` VARCHAR(23) NOT NULL DEFAULT '',
+ `account_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `userid` VARCHAR(23) NOT NULL,
`user_pass` VARCHAR(32) NOT NULL DEFAULT '',
`sex` ENUM('M','F','S') NOT NULL DEFAULT 'M',
`email` VARCHAR(39) NOT NULL DEFAULT '',
- `group_id` TINYINT(3) NOT NULL DEFAULT '0',
- `state` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `unban_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `expiration_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `logincount` MEDIUMINT(9) UNSIGNED NOT NULL DEFAULT '0',
+ `group_id` TINYINT NOT NULL DEFAULT '0',
+ `state` INT UNSIGNED NOT NULL DEFAULT '0',
+ `unban_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `expiration_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `logincount` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
`lastlogin` DATETIME NULL,
`last_ip` VARCHAR(100) NOT NULL DEFAULT '',
`birthdate` DATE NULL,
- `character_slots` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
+ `character_slots` TINYINT UNSIGNED NOT NULL DEFAULT '0',
`pincode` VARCHAR(4) NOT NULL DEFAULT '',
- `pincode_change` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `pincode_change` INT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`account_id`),
- KEY `name` (`userid`)
+ UNIQUE KEY `name` (`userid`)
) ENGINE=MyISAM AUTO_INCREMENT=2000000;
-- added standard accounts for servers, VERY INSECURE!!!
@@ -655,14 +655,25 @@ CREATE TABLE IF NOT EXISTS `login` (
INSERT IGNORE INTO `login` (`account_id`, `userid`, `user_pass`, `sex`, `email`) VALUES ('1', 's1', 'p1', 'S','athena@athena.com');
--
--- Table structure for table `mapreg`
+-- Table structure for table `map_reg_num_db`
--
-CREATE TABLE IF NOT EXISTS `mapreg` (
- `varname` VARCHAR(32) BINARY NOT NULL,
- `index` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `value` VARCHAR(255) NOT NULL,
- PRIMARY KEY (`varname`,`index`)
+CREATE TABLE IF NOT EXISTS `map_reg_num_db` (
+ `key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` INT NOT NULL DEFAULT '0',
+ PRIMARY KEY (`key`, `index`)
+) ENGINE=MyISAM;
+
+--
+-- Table structure for table `map_reg_str_db`
+--
+
+CREATE TABLE IF NOT EXISTS `map_reg_str_db` (
+ `key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` VARCHAR(255) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`key`, `index`)
) ENGINE=MyISAM;
--
@@ -671,8 +682,8 @@ CREATE TABLE IF NOT EXISTS `mapreg` (
CREATE TABLE IF NOT EXISTS `npc_market_data` (
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `itemid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `itemid` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`name`,`itemid`)
) ENGINE=MyISAM;
@@ -681,14 +692,15 @@ CREATE TABLE IF NOT EXISTS `npc_market_data` (
--
CREATE TABLE IF NOT EXISTS `sc_data` (
- `account_id` INT(11) UNSIGNED NOT NULL,
- `char_id` INT(11) UNSIGNED NOT NULL,
- `type` SMALLINT(11) UNSIGNED NOT NULL,
- `tick` INT(11) NOT NULL,
- `val1` INT(11) NOT NULL DEFAULT '0',
- `val2` INT(11) NOT NULL DEFAULT '0',
- `val3` INT(11) NOT NULL DEFAULT '0',
- `val4` INT(11) NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL,
+ `char_id` INT UNSIGNED NOT NULL,
+ `type` SMALLINT UNSIGNED NOT NULL,
+ `tick` INT NOT NULL,
+ `total_tick` INT NOT NULL,
+ `val1` INT NOT NULL DEFAULT '0',
+ `val2` INT NOT NULL DEFAULT '0',
+ `val3` INT NOT NULL DEFAULT '0',
+ `val4` INT NOT NULL DEFAULT '0',
KEY (`account_id`),
KEY (`char_id`),
PRIMARY KEY (`account_id`,`char_id`,`type`)
@@ -699,36 +711,36 @@ CREATE TABLE IF NOT EXISTS `sc_data` (
--
CREATE TABLE IF NOT EXISTS `mail` (
- `id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`send_name` VARCHAR(30) NOT NULL DEFAULT '',
- `send_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `send_id` INT UNSIGNED NOT NULL DEFAULT '0',
`dest_name` VARCHAR(30) NOT NULL DEFAULT '',
- `dest_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `dest_id` INT UNSIGNED NOT NULL DEFAULT '0',
`title` VARCHAR(45) NOT NULL DEFAULT '',
`message` VARCHAR(255) NOT NULL DEFAULT '',
- `time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `status` TINYINT(2) NOT NULL DEFAULT '0',
- `zeny` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nameid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `status` TINYINT NOT NULL DEFAULT '0',
+ `zeny` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nameid` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT UNSIGNED NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM;
@@ -737,11 +749,11 @@ CREATE TABLE IF NOT EXISTS `mail` (
--
CREATE TABLE IF NOT EXISTS `memo` (
- `memo_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `memo_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
`map` VARCHAR(11) NOT NULL DEFAULT '',
- `x` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `y` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
+ `x` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `y` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`memo_id`),
KEY `char_id` (`char_id`)
) ENGINE=MyISAM;
@@ -751,13 +763,13 @@ CREATE TABLE IF NOT EXISTS `memo` (
--
CREATE TABLE IF NOT EXISTS `mercenary` (
- `mer_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `char_id` INT(11) NOT NULL,
- `class` MEDIUMINT(9) UNSIGNED NOT NULL DEFAULT '0',
- `hp` INT(12) NOT NULL DEFAULT '1',
- `sp` INT(12) NOT NULL DEFAULT '1',
- `kill_counter` INT(11) NOT NULL,
- `life_time` INT(11) NOT NULL DEFAULT '0',
+ `mer_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `char_id` INT NOT NULL,
+ `class` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `hp` INT NOT NULL DEFAULT '1',
+ `sp` INT NOT NULL DEFAULT '1',
+ `kill_counter` INT NOT NULL,
+ `life_time` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`mer_id`)
) ENGINE=MyISAM;
@@ -766,14 +778,14 @@ CREATE TABLE IF NOT EXISTS `mercenary` (
--
CREATE TABLE IF NOT EXISTS `mercenary_owner` (
- `char_id` INT(11) NOT NULL,
- `merc_id` INT(11) NOT NULL DEFAULT '0',
- `arch_calls` INT(11) NOT NULL DEFAULT '0',
- `arch_faith` INT(11) NOT NULL DEFAULT '0',
- `spear_calls` INT(11) NOT NULL DEFAULT '0',
- `spear_faith` INT(11) NOT NULL DEFAULT '0',
- `sword_calls` INT(11) NOT NULL DEFAULT '0',
- `sword_faith` INT(11) NOT NULL DEFAULT '0',
+ `char_id` INT NOT NULL,
+ `merc_id` INT NOT NULL DEFAULT '0',
+ `arch_calls` INT NOT NULL DEFAULT '0',
+ `arch_faith` INT NOT NULL DEFAULT '0',
+ `spear_calls` INT NOT NULL DEFAULT '0',
+ `spear_faith` INT NOT NULL DEFAULT '0',
+ `sword_calls` INT NOT NULL DEFAULT '0',
+ `sword_faith` INT NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`)
) ENGINE=MyISAM;
@@ -782,12 +794,12 @@ CREATE TABLE IF NOT EXISTS `mercenary_owner` (
--
CREATE TABLE IF NOT EXISTS `party` (
- `party_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
+ `party_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `exp` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `item` TINYINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `leader_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `leader_char` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `exp` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `item` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `leader_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `leader_char` INT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`party_id`)
) ENGINE=MyISAM;
@@ -796,19 +808,19 @@ CREATE TABLE IF NOT EXISTS `party` (
--
CREATE TABLE IF NOT EXISTS `pet` (
- `pet_id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `class` MEDIUMINT(9) UNSIGNED NOT NULL DEFAULT '0',
+ `pet_id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `class` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
`name` VARCHAR(24) NOT NULL DEFAULT '',
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `level` SMALLINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `egg_id` SMALLINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `equip` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
- `intimate` SMALLINT(9) UNSIGNED NOT NULL DEFAULT '0',
- `hungry` SMALLINT(9) UNSIGNED NOT NULL DEFAULT '0',
- `rename_flag` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `incubate` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `autofeed` TINYINT(2) UNSIGNED NOT NULL DEFAULT '0',
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `level` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `egg_id` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `equip` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `intimate` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `hungry` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `rename_flag` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `incubate` INT UNSIGNED NOT NULL DEFAULT '0',
+ `autofeed` TINYINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`pet_id`)
) ENGINE=MyISAM;
@@ -817,13 +829,13 @@ CREATE TABLE IF NOT EXISTS `pet` (
--
CREATE TABLE IF NOT EXISTS `quest` (
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `quest_id` INT(10) UNSIGNED NOT NULL,
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `quest_id` INT UNSIGNED NOT NULL,
`state` ENUM('0','1','2') NOT NULL DEFAULT '0',
- `time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `count1` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
- `count2` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
- `count3` MEDIUMINT(8) UNSIGNED NOT NULL DEFAULT '0',
+ `time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `count1` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `count2` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
+ `count3` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`char_id`,`quest_id`)
) ENGINE=MyISAM;
@@ -832,11 +844,11 @@ CREATE TABLE IF NOT EXISTS `quest` (
--
CREATE TABLE IF NOT EXISTS `ragsrvinfo` (
- `index` INT(11) NOT NULL DEFAULT '0',
+ `index` INT NOT NULL DEFAULT '0',
`name` VARCHAR(255) NOT NULL DEFAULT '',
- `exp` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `jexp` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `drop` INT(11) UNSIGNED NOT NULL DEFAULT '0'
+ `exp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `jexp` INT UNSIGNED NOT NULL DEFAULT '0',
+ `drop` INT UNSIGNED NOT NULL DEFAULT '0'
) ENGINE=MyISAM;
--
@@ -844,10 +856,10 @@ CREATE TABLE IF NOT EXISTS `ragsrvinfo` (
--
CREATE TABLE IF NOT EXISTS `skill` (
- `char_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `id` SMALLINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `lv` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `flag` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,
+ `char_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `id` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `lv` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `flag` TINYINT UNSIGNED NOT NULL DEFAULT 0,
PRIMARY KEY (`char_id`,`id`)
) ENGINE=MyISAM;
@@ -856,9 +868,9 @@ CREATE TABLE IF NOT EXISTS `skill` (
--
CREATE TABLE IF NOT EXISTS `skill_homunculus` (
- `homun_id` INT(11) NOT NULL,
- `id` INT(11) NOT NULL,
- `lv` SMALLINT(6) NOT NULL,
+ `homun_id` INT NOT NULL,
+ `id` INT NOT NULL,
+ `lv` SMALLINT NOT NULL,
PRIMARY KEY (`homun_id`,`id`)
) ENGINE=MyISAM;
@@ -867,7 +879,7 @@ CREATE TABLE IF NOT EXISTS `skill_homunculus` (
--
CREATE TABLE IF NOT EXISTS `sql_updates` (
- `timestamp` INT(11) UNSIGNED NOT NULL,
+ `timestamp` INT UNSIGNED NOT NULL,
`ignored` ENUM('Yes','No') NOT NULL DEFAULT 'No',
PRIMARY KEY (`timestamp`)
) ENGINE=MyISAM;
@@ -930,87 +942,96 @@ INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1546059075); -- 2018-12-2
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1554760320); -- 2019-04-08--21-52.sql
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1556147483); -- 2019-04-25--02-12.sql
INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1557414445); -- 2019-05-09--18-07.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1565293394); -- 2019-08-08--19-43.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1570309293); -- 2019-10-05--19-01.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1570870260); -- 2019-10-21--14-21.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1574463539); -- 2019-11-22--23-58.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1579817630); -- 2020-01-24--01-09.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1584838560); -- 2020-03-22--01-56.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1584842940); -- 2020-03-22--03-09.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1588301040); -- 2020-05-01--04-44.sql
+INSERT IGNORE INTO `sql_updates` (`timestamp`) VALUES (1589145060); -- 2020-05-10--23-11.sql
--
-- Table structure for table `storage`
--
CREATE TABLE IF NOT EXISTS `storage` (
- `id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
- `account_id` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `nameid` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `amount` SMALLINT(11) UNSIGNED NOT NULL DEFAULT '0',
- `equip` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) UNSIGNED NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) UNSIGNED NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `expire_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `bound` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
+ `account_id` INT UNSIGNED NOT NULL DEFAULT '0',
+ `nameid` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `equip` INT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `expire_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `bound` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `account_id` (`account_id`)
) ENGINE=MyISAM;
CREATE TABLE IF NOT EXISTS `rodex_items` (
- `id` INT(11) NOT NULL AUTO_INCREMENT,
- `mail_id` BIGINT(20) NOT NULL DEFAULT '0',
- `nameid` INT(11) NOT NULL DEFAULT '0',
- `amount` INT(11) NOT NULL DEFAULT '0',
- `equip` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `identify` SMALLINT(6) NOT NULL DEFAULT '0',
- `refine` TINYINT(3) UNSIGNED NOT NULL DEFAULT '0',
- `attribute` TINYINT(4) NOT NULL DEFAULT '0',
- `card0` INT(11) NOT NULL DEFAULT '0',
- `card1` INT(11) NOT NULL DEFAULT '0',
- `card2` INT(11) NOT NULL DEFAULT '0',
- `card3` INT(11) NOT NULL DEFAULT '0',
- `opt_idx0` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val0` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx1` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val1` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx2` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val2` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx3` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val3` SMALLINT(5) NOT NULL DEFAULT '0',
- `opt_idx4` SMALLINT(5) UNSIGNED NOT NULL DEFAULT '0',
- `opt_val4` SMALLINT(5) NOT NULL DEFAULT '0',
- `expire_time` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `bound` TINYINT(1) UNSIGNED NOT NULL DEFAULT '0',
- `unique_id` BIGINT(20) UNSIGNED NOT NULL DEFAULT '0',
+ `id` INT NOT NULL AUTO_INCREMENT,
+ `mail_id` BIGINT NOT NULL DEFAULT '0',
+ `nameid` INT NOT NULL DEFAULT '0',
+ `amount` INT NOT NULL DEFAULT '0',
+ `equip` INT UNSIGNED NOT NULL DEFAULT '0',
+ `identify` SMALLINT NOT NULL DEFAULT '0',
+ `refine` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `attribute` TINYINT NOT NULL DEFAULT '0',
+ `card0` INT NOT NULL DEFAULT '0',
+ `card1` INT NOT NULL DEFAULT '0',
+ `card2` INT NOT NULL DEFAULT '0',
+ `card3` INT NOT NULL DEFAULT '0',
+ `opt_idx0` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val0` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx1` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val1` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx2` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val2` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx3` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val3` SMALLINT NOT NULL DEFAULT '0',
+ `opt_idx4` SMALLINT UNSIGNED NOT NULL DEFAULT '0',
+ `opt_val4` SMALLINT NOT NULL DEFAULT '0',
+ `expire_time` INT UNSIGNED NOT NULL DEFAULT '0',
+ `bound` TINYINT UNSIGNED NOT NULL DEFAULT '0',
+ `unique_id` BIGINT UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
KEY `mail_id` (`mail_id`)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS `rodex_mail` (
- `mail_id` BIGINT(20) NOT NULL AUTO_INCREMENT,
+ `mail_id` BIGINT NOT NULL AUTO_INCREMENT,
`sender_name` VARCHAR(30) NOT NULL,
- `sender_id` INT(11) NOT NULL,
+ `sender_id` INT NOT NULL,
`receiver_name` VARCHAR(30) NOT NULL,
- `receiver_id` INT(11) NOT NULL,
- `receiver_accountid` INT(11) NOT NULL,
+ `receiver_id` INT NOT NULL,
+ `receiver_accountid` INT NOT NULL,
`title` VARCHAR(50) NOT NULL,
`body` VARCHAR(510) NOT NULL,
- `zeny` BIGINT(20) NOT NULL,
- `type` TINYINT(8) UNSIGNED NOT NULL,
- `is_read` TINYINT(8) NOT NULL,
- `sender_read` TINYINT(2) NOT NULL,
- `send_date` INT(11) NOT NULL,
- `expire_date` INT(11) NOT NULL,
- `weight` INT(11) NOT NULL,
+ `zeny` BIGINT NOT NULL,
+ `type` TINYINT UNSIGNED NOT NULL,
+ `is_read` TINYINT NOT NULL,
+ `sender_read` TINYINT NOT NULL,
+ `send_date` INT NOT NULL,
+ `expire_date` INT NOT NULL,
+ `weight` INT NOT NULL,
PRIMARY KEY (`mail_id`),
KEY `sender_id` (`sender_id`),
KEY `receiver_id` (`receiver_id`),
@@ -1021,9 +1042,52 @@ CREATE TABLE IF NOT EXISTS `rodex_mail` (
CREATE TABLE IF NOT EXISTS `npc_barter_data` (
`name` VARCHAR(24) NOT NULL DEFAULT '',
+ `itemId` INT UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT UNSIGNED NOT NULL DEFAULT '0',
+ `priceId` INT UNSIGNED NOT NULL DEFAULT '0',
+ `priceAmount` INT UNSIGNED NOT NULL DEFAULT '0',
+ PRIMARY KEY (`name`, `itemid`, `priceId`, `priceAmount`)
+) ENGINE=MyISAM;
+
+CREATE TABLE IF NOT EXISTS `npc_expanded_barter_data` (
+ `name` VARCHAR(24) NOT NULL DEFAULT '',
`itemId` INT(11) UNSIGNED NOT NULL DEFAULT '0',
`amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `priceId` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- `priceAmount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
- PRIMARY KEY (`name`, `itemid`, `priceId`, `priceAmount`)
+ `zeny` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyId1` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount1` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine1` INT(11) NOT NULL DEFAULT '0',
+ `currencyId2` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount2` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine2` INT(11) NOT NULL DEFAULT '0',
+ `currencyId3` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount3` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine3` INT(11) NOT NULL DEFAULT '0',
+ `currencyId4` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount4` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine4` INT(11) NOT NULL DEFAULT '0',
+ `currencyId5` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount5` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine5` INT(11) NOT NULL DEFAULT '0',
+ `currencyId6` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount6` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine6` INT(11) NOT NULL DEFAULT '0',
+ `currencyId7` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount7` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine7` INT(11) NOT NULL DEFAULT '0',
+ `currencyId8` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount8` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine8` INT(11) NOT NULL DEFAULT '0',
+ `currencyId9` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount9` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine9` INT(11) NOT NULL DEFAULT '0',
+ `currencyId10` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount10` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine10` INT(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`name`, `itemid`, `zeny`,
+ `currencyId1`, `currencyAmount1`, `currencyRefine1`,
+ `currencyId2`, `currencyAmount2`, `currencyRefine2`,
+ `currencyId3`, `currencyAmount3`, `currencyRefine3`,
+ `currencyId4`, `currencyAmount4`, `currencyRefine4`
+)
) ENGINE=MyISAM;
diff --git a/sql-files/upgrades/2015-07-02--18-14.sql b/sql-files/upgrades/2015-07-02--18-14.sql
new file mode 100644
index 00000000..68a02e30
--- /dev/null
+++ b/sql-files/upgrades/2015-07-02--18-14.sql
@@ -0,0 +1,74 @@
+#1435860840
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2015-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+DELIMITER $$
+
+DROP PROCEDURE IF EXISTS alter_if_not_exists $$
+DROP PROCEDURE IF EXISTS alter_if_exists $$
+
+CREATE PROCEDURE alter_if_not_exists(my_table TINYTEXT, my_column TINYTEXT, my_command TINYTEXT, my_predicate TEXT)
+BEGIN
+ set @dbname = DATABASE();
+ IF EXISTS (
+ SELECT * FROM information_schema.TABLES
+ WHERE TABLE_SCHEMA = @dbname
+ AND TABLE_NAME = my_table
+ ) AND NOT EXISTS (
+ SELECT * FROM information_schema.COLUMNS
+ WHERE TABLE_SCHEMA = @dbname
+ AND TABLE_NAME = my_table
+ AND COLUMN_NAME = my_column
+ )
+ THEN
+ SET @q = CONCAT('ALTER TABLE ', @dbname, '.', my_table, ' ',
+ my_command, ' `', my_column, '` ', my_predicate);
+ PREPARE STMT FROM @q;
+ EXECUTE STMT;
+ END IF;
+
+END $$
+
+CREATE PROCEDURE alter_if_exists(my_table TINYTEXT, my_column TINYTEXT, my_command TINYTEXT, my_predicate TEXT)
+BEGIN
+ set @dbname = DATABASE();
+ IF EXISTS (
+ SELECT * FROM information_schema.COLUMNS
+ WHERE TABLE_SCHEMA = @dbname
+ AND TABLE_NAME = my_table
+ AND COLUMN_NAME = my_column
+ )
+ THEN
+ SET @q = CONCAT('ALTER TABLE ', @dbname, '.', my_table, ' ',
+ my_command, ' `', my_column, '` ', my_predicate);
+ PREPARE STMT FROM @q;
+ EXECUTE STMT;
+ END IF;
+
+END $$
+
+CALL alter_if_not_exists('item_db', 'forceserial', 'ADD COLUMN', 'TINYINT(1) UNSIGNED DEFAULT NULL AFTER `bindonequip`') $$
+CALL alter_if_not_exists('item_db2', 'forceserial', 'ADD COLUMN', 'TINYINT(1) UNSIGNED DEFAULT NULL AFTER `bindonequip`') $$
+
+DROP PROCEDURE IF EXISTS alter_if_not_exists $$
+DROP PROCEDURE IF EXISTS alter_if_exists $$
+
+DELIMITER ';'
+
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1435860840);
diff --git a/sql-files/upgrades/2019-08-08--19-43.sql b/sql-files/upgrades/2019-08-08--19-43.sql
new file mode 100644
index 00000000..15bc4a89
--- /dev/null
+++ b/sql-files/upgrades/2019-08-08--19-43.sql
@@ -0,0 +1,95 @@
+#1565293394
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ALTER TABLE `guild_castle` DROP PRIMARY KEY;
+ALTER TABLE `guild_castle` ADD COLUMN `castle_name` VARCHAR(24) AFTER `castle_id`;
+UPDATE `guild_castle` SET `castle_name` = 'aldeg_cas01' WHERE castle_id = 0;
+UPDATE `guild_castle` SET `castle_name` = 'aldeg_cas02' WHERE castle_id = 1;
+UPDATE `guild_castle` SET `castle_name` = 'aldeg_cas03' WHERE castle_id = 2;
+UPDATE `guild_castle` SET `castle_name` = 'aldeg_cas04' WHERE castle_id = 3;
+UPDATE `guild_castle` SET `castle_name` = 'aldeg_cas05' WHERE castle_id = 4;
+UPDATE `guild_castle` SET `castle_name` = 'gefg_cas01' WHERE castle_id = 5;
+UPDATE `guild_castle` SET `castle_name` = 'gefg_cas02' WHERE castle_id = 6;
+UPDATE `guild_castle` SET `castle_name` = 'gefg_cas03' WHERE castle_id = 7;
+UPDATE `guild_castle` SET `castle_name` = 'gefg_cas04' WHERE castle_id = 8;
+UPDATE `guild_castle` SET `castle_name` = 'gefg_cas05' WHERE castle_id = 9;
+UPDATE `guild_castle` SET `castle_name` = 'payg_cas01' WHERE castle_id = 10;
+UPDATE `guild_castle` SET `castle_name` = 'payg_cas02' WHERE castle_id = 11;
+UPDATE `guild_castle` SET `castle_name` = 'payg_cas03' WHERE castle_id = 12;
+UPDATE `guild_castle` SET `castle_name` = 'payg_cas04' WHERE castle_id = 13;
+UPDATE `guild_castle` SET `castle_name` = 'payg_cas05' WHERE castle_id = 14;
+UPDATE `guild_castle` SET `castle_name` = 'prtg_cas01' WHERE castle_id = 15;
+UPDATE `guild_castle` SET `castle_name` = 'prtg_cas02' WHERE castle_id = 16;
+UPDATE `guild_castle` SET `castle_name` = 'prtg_cas03' WHERE castle_id = 17;
+UPDATE `guild_castle` SET `castle_name` = 'prtg_cas04' WHERE castle_id = 18;
+UPDATE `guild_castle` SET `castle_name` = 'prtg_cas05' WHERE castle_id = 19;
+UPDATE `guild_castle` SET `castle_name` = 'nguild_alde' WHERE castle_id = 20;
+UPDATE `guild_castle` SET `castle_name` = 'nguild_gef' WHERE castle_id = 21;
+UPDATE `guild_castle` SET `castle_name` = 'nguild_pay' WHERE castle_id = 22;
+UPDATE `guild_castle` SET `castle_name` = 'nguild_prt' WHERE castle_id = 23;
+UPDATE `guild_castle` SET `castle_name` = 'schg_cas01' WHERE castle_id = 24;
+UPDATE `guild_castle` SET `castle_name` = 'schg_cas02' WHERE castle_id = 25;
+UPDATE `guild_castle` SET `castle_name` = 'schg_cas03' WHERE castle_id = 26;
+UPDATE `guild_castle` SET `castle_name` = 'schg_cas04' WHERE castle_id = 27;
+UPDATE `guild_castle` SET `castle_name` = 'schg_cas05' WHERE castle_id = 28;
+UPDATE `guild_castle` SET `castle_name` = 'arug_cas01' WHERE castle_id = 29;
+UPDATE `guild_castle` SET `castle_name` = 'arug_cas02' WHERE castle_id = 30;
+UPDATE `guild_castle` SET `castle_name` = 'arug_cas03' WHERE castle_id = 31;
+UPDATE `guild_castle` SET `castle_name` = 'arug_cas04' WHERE castle_id = 32;
+UPDATE `guild_castle` SET `castle_name` = 'arug_cas05' WHERE castle_id = 33;
+
+-- Change the castle ids
+UPDATE `guild_castle` SET `castle_id` = 1 WHERE castle_name = 'prtg_cas01';
+UPDATE `guild_castle` SET `castle_id` = 2 WHERE castle_name = 'prtg_cas02';
+UPDATE `guild_castle` SET `castle_id` = 3 WHERE castle_name = 'prtg_cas03';
+UPDATE `guild_castle` SET `castle_id` = 4 WHERE castle_name = 'prtg_cas04';
+UPDATE `guild_castle` SET `castle_id` = 5 WHERE castle_name = 'prtg_cas05';
+UPDATE `guild_castle` SET `castle_id` = 6 WHERE castle_name = 'aldeg_cas01';
+UPDATE `guild_castle` SET `castle_id` = 7 WHERE castle_name = 'aldeg_cas02';
+UPDATE `guild_castle` SET `castle_id` = 8 WHERE castle_name = 'aldeg_cas03';
+UPDATE `guild_castle` SET `castle_id` = 9 WHERE castle_name = 'aldeg_cas04';
+UPDATE `guild_castle` SET `castle_id` = 10 WHERE castle_name = 'aldeg_cas05';
+UPDATE `guild_castle` SET `castle_id` = 11 WHERE castle_name = 'gefg_cas01';
+UPDATE `guild_castle` SET `castle_id` = 12 WHERE castle_name = 'gefg_cas02';
+UPDATE `guild_castle` SET `castle_id` = 13 WHERE castle_name = 'gefg_cas03';
+UPDATE `guild_castle` SET `castle_id` = 14 WHERE castle_name = 'gefg_cas04';
+UPDATE `guild_castle` SET `castle_id` = 15 WHERE castle_name = 'gefg_cas05';
+UPDATE `guild_castle` SET `castle_id` = 16 WHERE castle_name = 'payg_cas01';
+UPDATE `guild_castle` SET `castle_id` = 17 WHERE castle_name = 'payg_cas02';
+UPDATE `guild_castle` SET `castle_id` = 18 WHERE castle_name = 'payg_cas03';
+UPDATE `guild_castle` SET `castle_id` = 19 WHERE castle_name = 'payg_cas04';
+UPDATE `guild_castle` SET `castle_id` = 20 WHERE castle_name = 'payg_cas05';
+UPDATE `guild_castle` SET `castle_id` = 21 WHERE castle_name = 'arug_cas01';
+UPDATE `guild_castle` SET `castle_id` = 22 WHERE castle_name = 'arug_cas02';
+UPDATE `guild_castle` SET `castle_id` = 23 WHERE castle_name = 'arug_cas03';
+UPDATE `guild_castle` SET `castle_id` = 24 WHERE castle_name = 'arug_cas04';
+UPDATE `guild_castle` SET `castle_id` = 25 WHERE castle_name = 'arug_cas05';
+UPDATE `guild_castle` SET `castle_id` = 26 WHERE castle_name = 'schg_cas01';
+UPDATE `guild_castle` SET `castle_id` = 27 WHERE castle_name = 'schg_cas02';
+UPDATE `guild_castle` SET `castle_id` = 29 WHERE castle_name = 'schg_cas04';
+UPDATE `guild_castle` SET `castle_id` = 28 WHERE castle_name = 'schg_cas03';
+UPDATE `guild_castle` SET `castle_id` = 30 WHERE castle_name = 'schg_cas05';
+UPDATE `guild_castle` SET `castle_id` = 31 WHERE castle_name = 'nguild_prt';
+UPDATE `guild_castle` SET `castle_id` = 32 WHERE castle_name = 'nguild_alde';
+UPDATE `guild_castle` SET `castle_id` = 33 WHERE castle_name = 'nguild_gef';
+UPDATE `guild_castle` SET `castle_id` = 34 WHERE castle_name = 'nguild_pay';
+ALTER TABLE `guild_castle` ADD PRIMARY KEY (`castle_id`);
+ALTER TABLE `guild_castle` DROP COLUMN `castle_name`;
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1565293394);
diff --git a/sql-files/upgrades/2019-10-05--19-01.sql b/sql-files/upgrades/2019-10-05--19-01.sql
new file mode 100644
index 00000000..165764a8
--- /dev/null
+++ b/sql-files/upgrades/2019-10-05--19-01.sql
@@ -0,0 +1,28 @@
+#1570309293
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+-- Adds new total_tick column
+ALTER TABLE `sc_data` ADD COLUMN `total_tick` INT(11) NOT NULL AFTER `tick`;
+
+-- Copy current tick to total_tick so players doesn't lose their current
+-- status_changes, although those will still appear wrong until they end
+UPDATE `sc_data` SET `total_tick` = `tick`;
+
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1570309293);
diff --git a/sql-files/upgrades/2019-10-12--14-21.sql b/sql-files/upgrades/2019-10-12--14-21.sql
new file mode 100644
index 00000000..7da66e9b
--- /dev/null
+++ b/sql-files/upgrades/2019-10-12--14-21.sql
@@ -0,0 +1,23 @@
+#1570870260
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+ALTER TABLE `picklog` MODIFY `type` enum('M','P','L','T','V','S','N','C','A','R','G','E','B','O','I','X','D','U','K','Y','Z','W','Q','J','H','@','0','1','2', '3') NOT NULL DEFAULT 'P';
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1570870260);
diff --git a/sql-files/upgrades/2019-11-22--23-58.sql b/sql-files/upgrades/2019-11-22--23-58.sql
new file mode 100644
index 00000000..34ffc2c7
--- /dev/null
+++ b/sql-files/upgrades/2019-11-22--23-58.sql
@@ -0,0 +1,23 @@
+#1574463539
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+ALTER TABLE `ipbanlist` MODIFY `list` VARCHAR(13) NOT NULL DEFAULT '';
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1574463539);
diff --git a/sql-files/upgrades/2020-01-24--01-09.sql b/sql-files/upgrades/2020-01-24--01-09.sql
new file mode 100644
index 00000000..2370b267
--- /dev/null
+++ b/sql-files/upgrades/2020-01-24--01-09.sql
@@ -0,0 +1,63 @@
+#1579817630
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2013-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+CREATE TABLE IF NOT EXISTS `npc_expanded_barter_data` (
+ `name` VARCHAR(24) NOT NULL DEFAULT '',
+ `itemId` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `amount` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `zeny` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyId1` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount1` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine1` INT(11) NOT NULL DEFAULT '0',
+ `currencyId2` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount2` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine2` INT(11) NOT NULL DEFAULT '0',
+ `currencyId3` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount3` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine3` INT(11) NOT NULL DEFAULT '0',
+ `currencyId4` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount4` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine4` INT(11) NOT NULL DEFAULT '0',
+ `currencyId5` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount5` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine5` INT(11) NOT NULL DEFAULT '0',
+ `currencyId6` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount6` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine6` INT(11) NOT NULL DEFAULT '0',
+ `currencyId7` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount7` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine7` INT(11) NOT NULL DEFAULT '0',
+ `currencyId8` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount8` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine8` INT(11) NOT NULL DEFAULT '0',
+ `currencyId9` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount9` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine9` INT(11) NOT NULL DEFAULT '0',
+ `currencyId10` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyAmount10` INT(11) UNSIGNED NOT NULL DEFAULT '0',
+ `currencyRefine10` INT(11) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`name`, `itemid`, `zeny`,
+ `currencyId1`, `currencyAmount1`, `currencyRefine1`,
+ `currencyId2`, `currencyAmount2`, `currencyRefine2`,
+ `currencyId3`, `currencyAmount3`, `currencyRefine3`,
+ `currencyId4`, `currencyAmount4`, `currencyRefine4`
+)
+) ENGINE=MyISAM;
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1579817630);
diff --git a/sql-files/upgrades/2020-03-22--01-56.sql b/sql-files/upgrades/2020-03-22--01-56.sql
new file mode 100644
index 00000000..58f090a6
--- /dev/null
+++ b/sql-files/upgrades/2020-03-22--01-56.sql
@@ -0,0 +1,23 @@
+#1584838560
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+
+ALTER TABLE `ipbanlist` MODIFY `list` VARCHAR(39) NOT NULL DEFAULT '';
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1584838560);
diff --git a/sql-files/upgrades/2020-03-22--03-09.sql b/sql-files/upgrades/2020-03-22--03-09.sql
new file mode 100644
index 00000000..dbdf65c5
--- /dev/null
+++ b/sql-files/upgrades/2020-03-22--03-09.sql
@@ -0,0 +1,24 @@
+#1584842940
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ALTER TABLE `login` ALTER `userid` DROP DEFAULT;
+ALTER TABLE `login` DROP INDEX `name`;
+ALTER TABLE `login` ADD CONSTRAINT `name` UNIQUE (`userid`);
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1584842940);
diff --git a/sql-files/upgrades/2020-05-01--04-44.sql b/sql-files/upgrades/2020-05-01--04-44.sql
new file mode 100644
index 00000000..6cb5a30e
--- /dev/null
+++ b/sql-files/upgrades/2020-05-01--04-44.sql
@@ -0,0 +1,25 @@
+#1588301040
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+ALTER TABLE `acc_reg_str_db` MODIFY `value` VARCHAR(255) NOT NULL DEFAULT '0';
+ALTER TABLE `char_reg_str_db` MODIFY `value` VARCHAR(255) NOT NULL DEFAULT '0';
+ALTER TABLE `global_acc_reg_str_db` MODIFY `value` VARCHAR(255) NOT NULL DEFAULT '0';
+
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1588301040);
diff --git a/sql-files/upgrades/2020-05-10--23-11.sql b/sql-files/upgrades/2020-05-10--23-11.sql
new file mode 100644
index 00000000..9f2755e7
--- /dev/null
+++ b/sql-files/upgrades/2020-05-10--23-11.sql
@@ -0,0 +1,43 @@
+#1589145060
+
+-- This file is part of Hercules.
+-- http://herc.ws - http://github.com/HerculesWS/Hercules
+--
+-- Copyright (C) 2019-2020 Hercules Dev Team
+--
+-- Hercules is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+-- Add separate tables for global integer and string variables.
+CREATE TABLE IF NOT EXISTS `map_reg_num_db` (
+ `key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` INT NOT NULL DEFAULT '0',
+ PRIMARY KEY (`key`, `index`)
+) ENGINE=MyISAM;
+CREATE TABLE IF NOT EXISTS `map_reg_str_db` (
+ `key` VARCHAR(32) BINARY NOT NULL DEFAULT '',
+ `index` INT UNSIGNED NOT NULL DEFAULT '0',
+ `value` VARCHAR(255) NOT NULL DEFAULT '0',
+ PRIMARY KEY (`key`, `index`)
+) ENGINE=MyISAM;
+
+-- Copy data from mapreg table to new map_reg_*_db tables.
+INSERT INTO `map_reg_num_db` (`key`, `index`, `value`) SELECT `varname`, `index`, CAST(`value` AS SIGNED) FROM `mapreg` WHERE NOT RIGHT(`varname`, 1)='$';
+INSERT INTO `map_reg_str_db` (`key`, `index`, `value`) SELECT `varname`, `index`, `value` FROM `mapreg` WHERE RIGHT(`varname`, 1)='$';
+
+-- Remove mapreg table.
+DROP TABLE IF EXISTS `mapreg`;
+
+-- Add update timestamp.
+INSERT INTO `sql_updates` (`timestamp`) VALUES (1589145060);
diff --git a/sql-files/upgrades/index.txt b/sql-files/upgrades/index.txt
index 915d3565..fb889c28 100644
--- a/sql-files/upgrades/index.txt
+++ b/sql-files/upgrades/index.txt
@@ -27,6 +27,7 @@
2014-05-17--00-06.sql
2014-09-01--16-53.sql
2014-11-03--00-45.sql
+2015-07-02--18-14.sql
2015-07-08--13-08.sql
2015-08-27--20-42.sql
2015-12-16--12-57.sql
@@ -54,3 +55,12 @@
2019-04-08--21-52.sql
2019-04-25--02-12.sql
2019-05-09--18-07.sql
+2019-08-08--19-43.sql
+2019-10-05--19-01.sql
+2019-10-12--14-21.sql
+2019-11-22--23-58.sql
+2020-01-24--01-09.sql
+2020-03-22--01-56.sql
+2020-03-22--03-09.sql
+2020-05-01--04-44.sql
+2020-05-10--23-11.sql