summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2016-02-11 16:35:08 +0100
committerHaru <haru@dotalux.com>2016-08-19 21:32:20 +0200
commit5b983fc43b2f632a51ddbeef360e2462ad3ca055 (patch)
treea376fa83aeaca49ab6645c349b8e0c9be545a514
parentdc2130b51371cc022d1feea66cb185082e8462b9 (diff)
downloadhercules-5b983fc43b2f632a51ddbeef360e2462ad3ca055.tar.gz
hercules-5b983fc43b2f632a51ddbeef360e2462ad3ca055.tar.bz2
hercules-5b983fc43b2f632a51ddbeef360e2462ad3ca055.tar.xz
hercules-5b983fc43b2f632a51ddbeef360e2462ad3ca055.zip
Ported npc config to libconfig
Ported to modern Hercules and cleaned up from Panikon's commits: ca009582cb22340951aa3e86c044ec1dca05df36, 6d6adf9bab2ba6f4274395018b8def566b880197 Signed-off-by: Haru <haru@dotalux.com>
-rw-r--r--npc/pre-re/scripts.conf126
-rw-r--r--npc/pre-re/scripts_jobs.conf18
-rw-r--r--npc/pre-re/scripts_main.conf73
-rw-r--r--npc/pre-re/scripts_monsters.conf128
-rw-r--r--npc/pre-re/scripts_warps.conf30
-rw-r--r--npc/re/scripts.conf252
-rw-r--r--npc/re/scripts_jobs.conf50
-rw-r--r--npc/re/scripts_main.conf77
-rw-r--r--npc/re/scripts_mapflags.conf4
-rw-r--r--npc/re/scripts_monsters.conf154
-rw-r--r--npc/re/scripts_warps.conf66
-rw-r--r--npc/re/scripts_woe.conf6
-rw-r--r--npc/scripts.conf436
-rw-r--r--npc/scripts_custom.conf134
-rw-r--r--npc/scripts_dev.conf4
-rw-r--r--npc/scripts_jobs.conf106
-rw-r--r--npc/scripts_mapflags.conf60
-rw-r--r--npc/scripts_monsters.conf10
-rw-r--r--npc/scripts_removed.conf37
-rw-r--r--npc/scripts_warps.conf158
-rw-r--r--npc/scripts_woe.conf74
-rw-r--r--src/map/map.c117
-rw-r--r--src/map/map.h2
23 files changed, 1106 insertions, 1016 deletions
diff --git a/npc/pre-re/scripts.conf b/npc/pre-re/scripts.conf
index ad6407503..d00d6ffba 100644
--- a/npc/pre-re/scripts.conf
+++ b/npc/pre-re/scripts.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,84 +29,84 @@
//=========================================================================
//================= Airport ===============================================
-npc: npc/pre-re/airports/izlude.txt
+"npc/pre-re/airports/izlude.txt",
//================= Cities ================================================
-npc: npc/pre-re/cities/alberta.txt
-npc: npc/pre-re/cities/izlude.txt
-npc: npc/pre-re/cities/jawaii.txt
-npc: npc/pre-re/cities/yuno.txt
+"npc/pre-re/cities/alberta.txt",
+"npc/pre-re/cities/izlude.txt",
+"npc/pre-re/cities/jawaii.txt",
+"npc/pre-re/cities/yuno.txt",
//================= Guides ================================================
-npc: npc/pre-re/guides/guides_alberta.txt
-npc: npc/pre-re/guides/guides_aldebaran.txt
-npc: npc/pre-re/guides/guides_amatsu.txt
-npc: npc/pre-re/guides/guides_ayothaya.txt
-npc: npc/pre-re/guides/guides_comodo.txt
-npc: npc/pre-re/guides/guides_einbroch.txt
-npc: npc/pre-re/guides/guides_geffen.txt
-npc: npc/pre-re/guides/guides_gonryun.txt
-npc: npc/pre-re/guides/guides_hugel.txt
-npc: npc/pre-re/guides/guides_izlude.txt
-npc: npc/pre-re/guides/guides_juno.txt
-npc: npc/pre-re/guides/guides_lighthalzen.txt
-npc: npc/pre-re/guides/guides_louyang.txt
-npc: npc/pre-re/guides/guides_morroc.txt
-npc: npc/pre-re/guides/guides_moscovia.txt
-npc: npc/pre-re/guides/guides_niflheim.txt
-npc: npc/pre-re/guides/guides_payon.txt
-npc: npc/pre-re/guides/guides_prontera.txt
-npc: npc/pre-re/guides/guides_rachel.txt
-npc: npc/pre-re/guides/guides_umbala.txt
-npc: npc/pre-re/guides/guides_veins.txt
+"npc/pre-re/guides/guides_alberta.txt",
+"npc/pre-re/guides/guides_aldebaran.txt",
+"npc/pre-re/guides/guides_amatsu.txt",
+"npc/pre-re/guides/guides_ayothaya.txt",
+"npc/pre-re/guides/guides_comodo.txt",
+"npc/pre-re/guides/guides_einbroch.txt",
+"npc/pre-re/guides/guides_geffen.txt",
+"npc/pre-re/guides/guides_gonryun.txt",
+"npc/pre-re/guides/guides_hugel.txt",
+"npc/pre-re/guides/guides_izlude.txt",
+"npc/pre-re/guides/guides_juno.txt",
+"npc/pre-re/guides/guides_lighthalzen.txt",
+"npc/pre-re/guides/guides_louyang.txt",
+"npc/pre-re/guides/guides_morroc.txt",
+"npc/pre-re/guides/guides_moscovia.txt",
+"npc/pre-re/guides/guides_niflheim.txt",
+"npc/pre-re/guides/guides_payon.txt",
+"npc/pre-re/guides/guides_prontera.txt",
+"npc/pre-re/guides/guides_rachel.txt",
+"npc/pre-re/guides/guides_umbala.txt",
+"npc/pre-re/guides/guides_veins.txt",
//================= Kafras & Cool Event Corp. =============================
-npc: npc/pre-re/kafras/kafras.txt
+"npc/pre-re/kafras/kafras.txt",
//================= Merchants =============================================
-npc: npc/pre-re/merchants/ammo_boxes.txt
-npc: npc/pre-re/merchants/ammo_dealer.txt
-npc: npc/pre-re/merchants/shops.txt
+"npc/pre-re/merchants/ammo_boxes.txt",
+"npc/pre-re/merchants/ammo_dealer.txt",
+"npc/pre-re/merchants/shops.txt",
//================= Others ================================================
-npc: npc/pre-re/other/bulletin_boards.txt
-npc: npc/pre-re/other/mercenary_rent.txt
-npc: npc/pre-re/other/pvp.txt
-npc: npc/pre-re/other/msg_boards.txt
-npc: npc/pre-re/other/resetskill.txt
-npc: npc/pre-re/other/turbo_track.txt
+"npc/pre-re/other/bulletin_boards.txt",
+"npc/pre-re/other/mercenary_rent.txt",
+"npc/pre-re/other/pvp.txt",
+"npc/pre-re/other/msg_boards.txt",
+"npc/pre-re/other/resetskill.txt",
+"npc/pre-re/other/turbo_track.txt",
//================= Quests ================================================
// - Repeatable EXP Quests (iRO) --------------------------------
-//npc: npc/pre-re/quests/collection/quest_alligator.txt
-//npc: npc/pre-re/quests/collection/quest_caramel.txt
+//"npc/pre-re/quests/collection/quest_alligator.txt",
+//"npc/pre-re/quests/collection/quest_caramel.txt",
// - Exploitable due to vendor selling Acorns in Moscovia
-//npc: npc/pre-re/quests/collection/quest_coco.txt
-//npc: npc/pre-re/quests/collection/quest_creamy.txt
-//npc: npc/pre-re/quests/collection/quest_demonpungus.txt
-//npc: npc/pre-re/quests/collection/quest_disguiseloliruri.txt
-//npc: npc/pre-re/quests/collection/quest_dokebi.txt
-//npc: npc/pre-re/quests/collection/quest_dryad.txt
-//npc: npc/pre-re/quests/collection/quest_fabre.txt
-//npc: npc/pre-re/quests/collection/quest_frilldora.txt
+//"npc/pre-re/quests/collection/quest_coco.txt",
+//"npc/pre-re/quests/collection/quest_creamy.txt",
+//"npc/pre-re/quests/collection/quest_demonpungus.txt",
+//"npc/pre-re/quests/collection/quest_disguiseloliruri.txt",
+//"npc/pre-re/quests/collection/quest_dokebi.txt",
+//"npc/pre-re/quests/collection/quest_dryad.txt",
+//"npc/pre-re/quests/collection/quest_fabre.txt",
+//"npc/pre-re/quests/collection/quest_frilldora.txt",
// - Exploitable due to vendor selling Antelope Horns in Niflheim
-//npc: npc/pre-re/quests/collection/quest_goat.txt
-//npc: npc/pre-re/quests/collection/quest_golem.txt
-//npc: npc/pre-re/quests/collection/quest_hode.txt
-//npc: npc/pre-re/quests/collection/quest_leafcat.txt
-//npc: npc/pre-re/quests/collection/quest_mantis.txt
+//"npc/pre-re/quests/collection/quest_goat.txt",
+//"npc/pre-re/quests/collection/quest_golem.txt",
+//"npc/pre-re/quests/collection/quest_hode.txt",
+//"npc/pre-re/quests/collection/quest_leafcat.txt",
+//"npc/pre-re/quests/collection/quest_mantis.txt",
// - Exploitable due to vendor selling Bill of Birds in Morroc
-//npc: npc/pre-re/quests/collection/quest_pecopeco.txt
-//npc: npc/pre-re/quests/collection/quest_pupa.txt
-//npc: npc/pre-re/quests/collection/quest_zhupolong.txt
+//"npc/pre-re/quests/collection/quest_pecopeco.txt",
+//"npc/pre-re/quests/collection/quest_pupa.txt",
+//"npc/pre-re/quests/collection/quest_zhupolong.txt",
// --------------------------------------------------------------
// - Quests-Tutorials for basic classes (1st class quests) ------
-npc: npc/pre-re/quests/first_class/tu_archer.txt
+"npc/pre-re/quests/first_class/tu_archer.txt",
// --------------------------------------------------------------
-npc: npc/pre-re/quests/monstertamers.txt
-npc: npc/pre-re/quests/mrsmile.txt
-npc: npc/pre-re/quests/quests_13_1.txt
-npc: npc/pre-re/quests/quests_izlude.txt
-npc: npc/pre-re/quests/quests_lighthalzen.txt
-npc: npc/pre-re/quests/quests_nameless.txt
-npc: npc/pre-re/quests/quests_veins.txt
+"npc/pre-re/quests/monstertamers.txt",
+"npc/pre-re/quests/mrsmile.txt",
+"npc/pre-re/quests/quests_13_1.txt",
+"npc/pre-re/quests/quests_izlude.txt",
+"npc/pre-re/quests/quests_lighthalzen.txt",
+"npc/pre-re/quests/quests_nameless.txt",
+"npc/pre-re/quests/quests_veins.txt",
diff --git a/npc/pre-re/scripts_jobs.conf b/npc/pre-re/scripts_jobs.conf
index bf0f46c28..139f9de48 100644
--- a/npc/pre-re/scripts_jobs.conf
+++ b/npc/pre-re/scripts_jobs.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -30,15 +30,15 @@
//================= Job Quests ============================================
// - 1-1
-npc: npc/pre-re/jobs/1-1/acolyte.txt
-npc: npc/pre-re/jobs/1-1/archer.txt
-npc: npc/pre-re/jobs/1-1/mage.txt
-npc: npc/pre-re/jobs/1-1/merchant.txt
-npc: npc/pre-re/jobs/1-1/swordman.txt
-npc: npc/pre-re/jobs/1-1/thief.txt
+"npc/pre-re/jobs/1-1/acolyte.txt",
+"npc/pre-re/jobs/1-1/archer.txt",
+"npc/pre-re/jobs/1-1/mage.txt",
+"npc/pre-re/jobs/1-1/merchant.txt",
+"npc/pre-re/jobs/1-1/swordman.txt",
+"npc/pre-re/jobs/1-1/thief.txt",
// - Novice
-npc: npc/pre-re/jobs/novice/novice.txt
+"npc/pre-re/jobs/novice/novice.txt",
//================= Skill Quests ==========================================
// - Novice
-npc: npc/pre-re/quests/skills/novice_skills.txt
+"npc/pre-re/quests/skills/novice_skills.txt",
diff --git a/npc/pre-re/scripts_main.conf b/npc/pre-re/scripts_main.conf
index 356aa7c12..9381497ec 100644
--- a/npc/pre-re/scripts_main.conf
+++ b/npc/pre-re/scripts_main.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -27,46 +27,49 @@
//=========================================================================
//= Hercules Pre-Renewal Primary Scripts File
//=========================================================================
-// The idea of this new system is to make scripts more organized
-// since the old system was rather messy with all the NPCs in one
-// file. Now scripts are organized in to files arraged by type.
-// Custom scripts are now in scripts_custom.conf, all other
-// scripts are deemed as 'official'. You should place your NPCs
-// in to scripts_custom.conf to follow the trend.
-//
-// Thanks,
-// Ancyker and the rest of the Hercules Team
-//
-// Note: "Comments" are all text on the right side of a double slash "//"
-// Whatever text is commented will not be parsed by the servers, and serves
-// only as information/reference.
+// The idea of this new system is to make scripts more organized since the old
+// system was rather messy with all the NPCs in one file. Now scripts are
+// organized in to files arraged by type. Custom scripts are now in
+// scripts_custom.conf, all other scripts are deemed as 'official'. You should
+// place your NPCs in to scripts_custom.conf to follow the trend.
//=========================================================================
-//================= Global Scripts Functions ==============================
+//================= Disabled Scripts ======================================
+// All NPCs that you wish to remove from your loading list should be put in
+// this file
+@include "npc/scripts_removed.conf"
+
+//================= Global NPC list =======================================
+// Only files that are included here will be read by the server
+npc_global_list: (
+
+//- Global Scripts Functions -
// Utilitarian functions used by many scripts.
-npc: npc/other/Global_Functions.txt
+"npc/other/Global_Functions.txt",
-//================= Cash Shop Functions ===================================
+//- Cash Shop Functions -
// Used by cash shop items in the Item Database.
-npc: npc/other/CashShop_Functions.txt
+"npc/other/CashShop_Functions.txt",
+
+//- Common Script Files -
+@include "npc/scripts.conf"
+@include "npc/scripts_woe.conf"
+@include "npc/scripts_jobs.conf"
+@include "npc/scripts_mapflags.conf"
+@include "npc/scripts_monsters.conf"
+@include "npc/scripts_warps.conf"
-//================= Common Script Files ===================================
-import: npc/scripts.conf
-import: npc/scripts_woe.conf
-import: npc/scripts_jobs.conf
-import: npc/scripts_mapflags.conf
-import: npc/scripts_monsters.conf
-import: npc/scripts_warps.conf
+//- Pre-Renewal Script Files -
+@include "npc/pre-re/scripts.conf"
+@include "npc/pre-re/scripts_jobs.conf"
+@include "npc/pre-re/scripts_monsters.conf"
+@include "npc/pre-re/scripts_warps.conf"
-//================= Pre-Renewal Script Files ==============================
-import: npc/pre-re/scripts.conf
-import: npc/pre-re/scripts_jobs.conf
-import: npc/pre-re/scripts_monsters.conf
-import: npc/pre-re/scripts_warps.conf
+//- Development / Testing Script Files -
+@include "npc/scripts_dev.conf"
-//================= Development / Testing Script Files ====================
-import: npc/scripts_dev.conf
+//- Custom Script Files -
+// Your NPCs go in this file!
+@include "npc/scripts_custom.conf"
-//================= Custom Script Files ===================================
-// - Your NPCs go in this file!
-import: npc/scripts_custom.conf
+) // npc_global_list
diff --git a/npc/pre-re/scripts_monsters.conf b/npc/pre-re/scripts_monsters.conf
index 8d726e8bc..83ec3cc64 100644
--- a/npc/pre-re/scripts_monsters.conf
+++ b/npc/pre-re/scripts_monsters.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,70 +29,70 @@
//=========================================================================
//================= Misc Spawns ===========================================
-npc: npc/pre-re/mobs/citycleaners.txt
+"npc/pre-re/mobs/citycleaners.txt",
//================= Dungeons ==============================================
-npc: npc/pre-re/mobs/dungeons/abbey.txt
-npc: npc/pre-re/mobs/dungeons/abyss.txt
-npc: npc/pre-re/mobs/dungeons/alde_dun.txt
-npc: npc/pre-re/mobs/dungeons/ama_dun.txt
-npc: npc/pre-re/mobs/dungeons/anthell.txt
-npc: npc/pre-re/mobs/dungeons/ayo_dun.txt
-npc: npc/pre-re/mobs/dungeons/beach_dun.txt
-npc: npc/pre-re/mobs/dungeons/c_tower.txt
-npc: npc/pre-re/mobs/dungeons/ein_dun.txt
-npc: npc/pre-re/mobs/dungeons/gef_dun.txt
-npc: npc/pre-re/mobs/dungeons/gefenia.txt
-npc: npc/pre-re/mobs/dungeons/glastheim.txt
-npc: npc/pre-re/mobs/dungeons/gld_dun.txt
-npc: npc/pre-re/mobs/dungeons/gld_dunSE.txt
-npc: npc/pre-re/mobs/dungeons/gon_dun.txt
-npc: npc/pre-re/mobs/dungeons/ice_dun.txt
-npc: npc/pre-re/mobs/dungeons/in_sphinx.txt
-npc: npc/pre-re/mobs/dungeons/iz_dun.txt
-npc: npc/pre-re/mobs/dungeons/juperos.txt
-npc: npc/pre-re/mobs/dungeons/kh_dun.txt
-npc: npc/pre-re/mobs/dungeons/lhz_dun.txt
-npc: npc/pre-re/mobs/dungeons/lou_dun.txt
-npc: npc/pre-re/mobs/dungeons/mag_dun.txt
-npc: npc/pre-re/mobs/dungeons/mjo_dun.txt
-npc: npc/pre-re/mobs/dungeons/moc_pryd.txt
-npc: npc/pre-re/mobs/dungeons/mosk_dun.txt
-npc: npc/pre-re/mobs/dungeons/nyd_dun.txt
-npc: npc/pre-re/mobs/dungeons/odin.txt
-npc: npc/pre-re/mobs/dungeons/orcsdun.txt
-npc: npc/pre-re/mobs/dungeons/pay_dun.txt
-npc: npc/pre-re/mobs/dungeons/prt_maze.txt
-npc: npc/pre-re/mobs/dungeons/prt_sew.txt
-npc: npc/pre-re/mobs/dungeons/ra_san.txt
-npc: npc/pre-re/mobs/dungeons/tha_t.txt
-npc: npc/pre-re/mobs/dungeons/thor_v.txt
-npc: npc/pre-re/mobs/dungeons/treasure.txt
-npc: npc/pre-re/mobs/dungeons/tur_dun.txt
-npc: npc/pre-re/mobs/dungeons/um_dun.txt
-npc: npc/pre-re/mobs/dungeons/xmas_dun.txt
-npc: npc/pre-re/mobs/dungeons/yggdrasil.txt
+"npc/pre-re/mobs/dungeons/abbey.txt",
+"npc/pre-re/mobs/dungeons/abyss.txt",
+"npc/pre-re/mobs/dungeons/alde_dun.txt",
+"npc/pre-re/mobs/dungeons/ama_dun.txt",
+"npc/pre-re/mobs/dungeons/anthell.txt",
+"npc/pre-re/mobs/dungeons/ayo_dun.txt",
+"npc/pre-re/mobs/dungeons/beach_dun.txt",
+"npc/pre-re/mobs/dungeons/c_tower.txt",
+"npc/pre-re/mobs/dungeons/ein_dun.txt",
+"npc/pre-re/mobs/dungeons/gef_dun.txt",
+"npc/pre-re/mobs/dungeons/gefenia.txt",
+"npc/pre-re/mobs/dungeons/glastheim.txt",
+"npc/pre-re/mobs/dungeons/gld_dun.txt",
+"npc/pre-re/mobs/dungeons/gld_dunSE.txt",
+"npc/pre-re/mobs/dungeons/gon_dun.txt",
+"npc/pre-re/mobs/dungeons/ice_dun.txt",
+"npc/pre-re/mobs/dungeons/in_sphinx.txt",
+"npc/pre-re/mobs/dungeons/iz_dun.txt",
+"npc/pre-re/mobs/dungeons/juperos.txt",
+"npc/pre-re/mobs/dungeons/kh_dun.txt",
+"npc/pre-re/mobs/dungeons/lhz_dun.txt",
+"npc/pre-re/mobs/dungeons/lou_dun.txt",
+"npc/pre-re/mobs/dungeons/mag_dun.txt",
+"npc/pre-re/mobs/dungeons/mjo_dun.txt",
+"npc/pre-re/mobs/dungeons/moc_pryd.txt",
+"npc/pre-re/mobs/dungeons/mosk_dun.txt",
+"npc/pre-re/mobs/dungeons/nyd_dun.txt",
+"npc/pre-re/mobs/dungeons/odin.txt",
+"npc/pre-re/mobs/dungeons/orcsdun.txt",
+"npc/pre-re/mobs/dungeons/pay_dun.txt",
+"npc/pre-re/mobs/dungeons/prt_maze.txt",
+"npc/pre-re/mobs/dungeons/prt_sew.txt",
+"npc/pre-re/mobs/dungeons/ra_san.txt",
+"npc/pre-re/mobs/dungeons/tha_t.txt",
+"npc/pre-re/mobs/dungeons/thor_v.txt",
+"npc/pre-re/mobs/dungeons/treasure.txt",
+"npc/pre-re/mobs/dungeons/tur_dun.txt",
+"npc/pre-re/mobs/dungeons/um_dun.txt",
+"npc/pre-re/mobs/dungeons/xmas_dun.txt",
+"npc/pre-re/mobs/dungeons/yggdrasil.txt",
//================= Fields ================================================
-npc: npc/pre-re/mobs/fields/amatsu.txt
-npc: npc/pre-re/mobs/fields/ayothaya.txt
-npc: npc/pre-re/mobs/fields/comodo.txt
-npc: npc/pre-re/mobs/fields/einbroch.txt
-npc: npc/pre-re/mobs/fields/geffen.txt
-npc: npc/pre-re/mobs/fields/gonryun.txt
-npc: npc/pre-re/mobs/fields/hugel.txt
-npc: npc/pre-re/mobs/fields/lighthalzen.txt
-npc: npc/pre-re/mobs/fields/louyang.txt
-npc: npc/pre-re/mobs/fields/lutie.txt
-npc: npc/pre-re/mobs/fields/manuk.txt
-npc: npc/pre-re/mobs/fields/mjolnir.txt
-npc: npc/pre-re/mobs/fields/morocc.txt
-npc: npc/pre-re/mobs/fields/moscovia.txt
-npc: npc/pre-re/mobs/fields/niflheim.txt
-npc: npc/pre-re/mobs/fields/payon.txt
-npc: npc/pre-re/mobs/fields/prontera.txt
-npc: npc/pre-re/mobs/fields/rachel.txt
-npc: npc/pre-re/mobs/fields/splendide.txt
-npc: npc/pre-re/mobs/fields/umbala.txt
-npc: npc/pre-re/mobs/fields/veins.txt
-npc: npc/pre-re/mobs/fields/yuno.txt
+"npc/pre-re/mobs/fields/amatsu.txt",
+"npc/pre-re/mobs/fields/ayothaya.txt",
+"npc/pre-re/mobs/fields/comodo.txt",
+"npc/pre-re/mobs/fields/einbroch.txt",
+"npc/pre-re/mobs/fields/geffen.txt",
+"npc/pre-re/mobs/fields/gonryun.txt",
+"npc/pre-re/mobs/fields/hugel.txt",
+"npc/pre-re/mobs/fields/lighthalzen.txt",
+"npc/pre-re/mobs/fields/louyang.txt",
+"npc/pre-re/mobs/fields/lutie.txt",
+"npc/pre-re/mobs/fields/manuk.txt",
+"npc/pre-re/mobs/fields/mjolnir.txt",
+"npc/pre-re/mobs/fields/morocc.txt",
+"npc/pre-re/mobs/fields/moscovia.txt",
+"npc/pre-re/mobs/fields/niflheim.txt",
+"npc/pre-re/mobs/fields/payon.txt",
+"npc/pre-re/mobs/fields/prontera.txt",
+"npc/pre-re/mobs/fields/rachel.txt",
+"npc/pre-re/mobs/fields/splendide.txt",
+"npc/pre-re/mobs/fields/umbala.txt",
+"npc/pre-re/mobs/fields/veins.txt",
+"npc/pre-re/mobs/fields/yuno.txt",
diff --git a/npc/pre-re/scripts_warps.conf b/npc/pre-re/scripts_warps.conf
index 472a0e6da..2e4c65027 100644
--- a/npc/pre-re/scripts_warps.conf
+++ b/npc/pre-re/scripts_warps.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,21 +29,21 @@
//=========================================================================
//================= Cities ================================================
-npc: npc/pre-re/warps/cities/izlude.txt
-npc: npc/pre-re/warps/cities/rachel.txt
-npc: npc/pre-re/warps/cities/yggdrasil.txt
+"npc/pre-re/warps/cities/izlude.txt",
+"npc/pre-re/warps/cities/rachel.txt",
+"npc/pre-re/warps/cities/yggdrasil.txt",
//================= Fields ================================================
-npc: npc/pre-re/warps/fields/com_fild.txt
-npc: npc/pre-re/warps/fields/geffen_fild.txt
-npc: npc/pre-re/warps/fields/hugel_fild.txt
-npc: npc/pre-re/warps/fields/morroc_fild.txt
-npc: npc/pre-re/warps/fields/payon_fild.txt
-npc: npc/pre-re/warps/fields/prontera_fild.txt
-npc: npc/pre-re/warps/fields/rachel_fild.txt
-npc: npc/pre-re/warps/fields/veins_fild.txt
-npc: npc/pre-re/warps/fields/yuno_fild.txt
+"npc/pre-re/warps/fields/com_fild.txt",
+"npc/pre-re/warps/fields/geffen_fild.txt",
+"npc/pre-re/warps/fields/hugel_fild.txt",
+"npc/pre-re/warps/fields/morroc_fild.txt",
+"npc/pre-re/warps/fields/payon_fild.txt",
+"npc/pre-re/warps/fields/prontera_fild.txt",
+"npc/pre-re/warps/fields/rachel_fild.txt",
+"npc/pre-re/warps/fields/veins_fild.txt",
+"npc/pre-re/warps/fields/yuno_fild.txt",
//================= Others ================================================
-npc: npc/pre-re/warps/other/arena.txt
-npc: npc/pre-re/warps/other/sign.txt
+"npc/pre-re/warps/other/arena.txt",
+"npc/pre-re/warps/other/sign.txt",
diff --git a/npc/re/scripts.conf b/npc/re/scripts.conf
index 53c5f4944..38caffc81 100644
--- a/npc/re/scripts.conf
+++ b/npc/re/scripts.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,152 +29,152 @@
//=========================================================================
//================= Airport ===============================================
-npc: npc/re/airports/izlude.txt
+"npc/re/airports/izlude.txt",
//================ Battlegrounds ==========================================
-npc: npc/re/battleground/bg_common.txt
+"npc/re/battleground/bg_common.txt",
//================= Cities ================================================
-npc: npc/re/cities/alberta.txt
-npc: npc/re/cities/brasilis.txt
-npc: npc/re/cities/dewata.txt
-npc: npc/re/cities/dicastes.txt
-npc: npc/re/cities/eclage.txt
-npc: npc/re/cities/izlude.txt
-npc: npc/re/cities/jawaii.txt
-npc: npc/re/cities/malangdo.txt
-npc: npc/re/cities/malaya.txt
-npc: npc/re/cities/mora.txt
-npc: npc/re/cities/yuno.txt
+"npc/re/cities/alberta.txt",
+"npc/re/cities/brasilis.txt",
+"npc/re/cities/dewata.txt",
+"npc/re/cities/dicastes.txt",
+"npc/re/cities/eclage.txt",
+"npc/re/cities/izlude.txt",
+"npc/re/cities/jawaii.txt",
+"npc/re/cities/malangdo.txt",
+"npc/re/cities/malaya.txt",
+"npc/re/cities/mora.txt",
+"npc/re/cities/yuno.txt",
//================= Events ================================================
-//npc: npc/re/events/halloween_2013.txt
-//npc: npc/re/events/halloween_2014.txt
-//npc: npc/re/events/christmas_2013.txt
+//"npc/re/events/halloween_2013.txt",
+//"npc/re/events/halloween_2014.txt",
+//"npc/re/events/christmas_2013.txt",
//================= Guides ================================================
-npc: npc/re/guides/navigation.txt
-npc: npc/re/guides/guides_alberta.txt
-npc: npc/re/guides/guides_aldebaran.txt
-npc: npc/re/guides/guides_amatsu.txt
-npc: npc/re/guides/guides_ayothaya.txt
-npc: npc/re/guides/guides_brasilis.txt
-npc: npc/re/guides/guides_comodo.txt
-npc: npc/re/guides/guides_dewata.txt
-npc: npc/re/guides/guides_dicastes.txt
-npc: npc/re/guides/guides_eclage.txt
-npc: npc/re/guides/guides_einbroch.txt
-npc: npc/re/guides/guides_geffen.txt
-npc: npc/re/guides/guides_gonryun.txt
-npc: npc/re/guides/guides_hugel.txt
-npc: npc/re/guides/guides_izlude.txt
-npc: npc/re/guides/guides_juno.txt
-npc: npc/re/guides/guides_lighthalzen.txt
-npc: npc/re/guides/guides_louyang.txt
-npc: npc/re/guides/guides_lutie.txt
-npc: npc/re/guides/guides_malaya.txt
-npc: npc/re/guides/guides_mora.txt
-npc: npc/re/guides/guides_morroc.txt
-npc: npc/re/guides/guides_moscovia.txt
-npc: npc/re/guides/guides_niflheim.txt
-npc: npc/re/guides/guides_payon.txt
-npc: npc/re/guides/guides_prontera.txt
-npc: npc/re/guides/guides_rachel.txt
-npc: npc/re/guides/guides_umbala.txt
-npc: npc/re/guides/guides_veins.txt
+"npc/re/guides/navigation.txt",
+"npc/re/guides/guides_alberta.txt",
+"npc/re/guides/guides_aldebaran.txt",
+"npc/re/guides/guides_amatsu.txt",
+"npc/re/guides/guides_ayothaya.txt",
+"npc/re/guides/guides_brasilis.txt",
+"npc/re/guides/guides_comodo.txt",
+"npc/re/guides/guides_dewata.txt",
+"npc/re/guides/guides_dicastes.txt",
+"npc/re/guides/guides_eclage.txt",
+"npc/re/guides/guides_einbroch.txt",
+"npc/re/guides/guides_geffen.txt",
+"npc/re/guides/guides_gonryun.txt",
+"npc/re/guides/guides_hugel.txt",
+"npc/re/guides/guides_izlude.txt",
+"npc/re/guides/guides_juno.txt",
+"npc/re/guides/guides_lighthalzen.txt",
+"npc/re/guides/guides_louyang.txt",
+"npc/re/guides/guides_lutie.txt",
+"npc/re/guides/guides_malaya.txt",
+"npc/re/guides/guides_mora.txt",
+"npc/re/guides/guides_morroc.txt",
+"npc/re/guides/guides_moscovia.txt",
+"npc/re/guides/guides_niflheim.txt",
+"npc/re/guides/guides_payon.txt",
+"npc/re/guides/guides_prontera.txt",
+"npc/re/guides/guides_rachel.txt",
+"npc/re/guides/guides_umbala.txt",
+"npc/re/guides/guides_veins.txt",
//================= Instances =============================================
-npc: npc/re/instances/BakonawaLake.txt
-npc: npc/re/instances/BangungotHospital.txt
-npc: npc/re/instances/BuwayaCave.txt
-npc: npc/re/instances/HazyForest.txt
-npc: npc/re/instances/MalangdoCulvert.txt
-npc: npc/re/instances/OctopusCave.txt
-npc: npc/re/instances/OldGlastHeim.txt
-npc: npc/re/instances/saras_memory.txt
-npc: npc/re/instances/WolfchevLaboratory.txt
-npc: npc/re/instances/EclageInterior.txt
+"npc/re/instances/BakonawaLake.txt",
+"npc/re/instances/BangungotHospital.txt",
+"npc/re/instances/BuwayaCave.txt",
+"npc/re/instances/HazyForest.txt",
+"npc/re/instances/MalangdoCulvert.txt",
+"npc/re/instances/OctopusCave.txt",
+"npc/re/instances/OldGlastHeim.txt",
+"npc/re/instances/saras_memory.txt",
+"npc/re/instances/WolfchevLaboratory.txt",
+"npc/re/instances/EclageInterior.txt",
//================= Kafras & Cool Event Corp. =============================
-npc: npc/re/kafras/kafras.txt
+"npc/re/kafras/kafras.txt",
//================= Merchants =============================================
-npc: npc/re/merchants/3rd_trader.txt
-npc: npc/re/merchants/advanced_refiner.txt
-npc: npc/re/merchants/alchemist.txt
-npc: npc/re/merchants/ammo_boxes.txt
-npc: npc/re/merchants/ammo_dealer.txt
-//npc: npc/re/merchants/blessed_refiner.txt
-npc: npc/re/merchants/card_separation.txt
-npc: npc/re/merchants/catalog.txt
-npc: npc/re/merchants/coin_exchange.txt
-npc: npc/re/merchants/diamond.txt
-npc: npc/re/merchants/enchan_mal.txt
-npc: npc/re/merchants/enchan_mora.txt
-npc: npc/re/merchants/enchan_ko.txt
-npc: npc/re/merchants/flute.txt
-npc: npc/re/merchants/hd_refiner.txt
-npc: npc/re/merchants/inn.txt
-npc: npc/re/merchants/quivers.txt
-npc: npc/re/merchants/refine.txt
-npc: npc/re/merchants/renters.txt
-npc: npc/re/merchants/shops.txt
-//npc: npc/re/merchants/ticket_refiner.txt
-//npc: npc/re/merchants/enchan_upg.txt
-npc: npc/re/merchants/ninja_craftsman.txt
-npc: npc/re/merchants/shadow_refiner.txt
+"npc/re/merchants/3rd_trader.txt",
+"npc/re/merchants/advanced_refiner.txt",
+"npc/re/merchants/alchemist.txt",
+"npc/re/merchants/ammo_boxes.txt",
+"npc/re/merchants/ammo_dealer.txt",
+//"npc/re/merchants/blessed_refiner.txt",
+"npc/re/merchants/card_separation.txt",
+"npc/re/merchants/catalog.txt",
+"npc/re/merchants/coin_exchange.txt",
+"npc/re/merchants/diamond.txt",
+"npc/re/merchants/enchan_mal.txt",
+"npc/re/merchants/enchan_mora.txt",
+"npc/re/merchants/enchan_ko.txt",
+"npc/re/merchants/flute.txt",
+"npc/re/merchants/hd_refiner.txt",
+"npc/re/merchants/inn.txt",
+"npc/re/merchants/quivers.txt",
+"npc/re/merchants/refine.txt",
+"npc/re/merchants/renters.txt",
+"npc/re/merchants/shops.txt",
+//"npc/re/merchants/ticket_refiner.txt",
+//"npc/re/merchants/enchan_upg.txt",
+"npc/re/merchants/ninja_craftsman.txt",
+"npc/re/merchants/shadow_refiner.txt",
//================= Others ================================================
-npc: npc/re/other/bulletin_boards.txt
-npc: npc/re/other/mail.txt
-npc: npc/re/other/mercenary_rent.txt
-npc: npc/re/other/pvp.txt
-npc: npc/re/other/resetskill.txt
-npc: npc/re/other/stone_change.txt
-npc: npc/re/other/turbo_track.txt
+"npc/re/other/bulletin_boards.txt",
+"npc/re/other/mail.txt",
+"npc/re/other/mercenary_rent.txt",
+"npc/re/other/pvp.txt",
+"npc/re/other/resetskill.txt",
+"npc/re/other/stone_change.txt",
+"npc/re/other/turbo_track.txt",
//================= Quests ================================================
// - Eden Group -------------------------------------------------
-npc: npc/re/quests/eden/11-25.txt
-npc: npc/re/quests/eden/26-40.txt
-npc: npc/re/quests/eden/41-55.txt
-npc: npc/re/quests/eden/56-70.txt
-npc: npc/re/quests/eden/71-85.txt
-npc: npc/re/quests/eden/86-90.txt
-npc: npc/re/quests/eden/91-99.txt
-npc: npc/re/quests/eden/100-110.txt
-npc: npc/re/quests/eden/111-120.txt
-npc: npc/re/quests/eden/121-130.txt
-npc: npc/re/quests/eden/131-140.txt
-npc: npc/re/quests/eden/eden_common.txt
-npc: npc/re/quests/eden/eden_quests.txt
-npc: npc/re/quests/eden/eden_service.txt
-npc: npc/re/quests/eden/eden_tutorial.txt
+"npc/re/quests/eden/11-25.txt",
+"npc/re/quests/eden/26-40.txt",
+"npc/re/quests/eden/41-55.txt",
+"npc/re/quests/eden/56-70.txt",
+"npc/re/quests/eden/71-85.txt",
+"npc/re/quests/eden/86-90.txt",
+"npc/re/quests/eden/91-99.txt",
+"npc/re/quests/eden/100-110.txt",
+"npc/re/quests/eden/111-120.txt",
+"npc/re/quests/eden/121-130.txt",
+"npc/re/quests/eden/131-140.txt",
+"npc/re/quests/eden/eden_common.txt",
+"npc/re/quests/eden/eden_quests.txt",
+"npc/re/quests/eden/eden_service.txt",
+"npc/re/quests/eden/eden_tutorial.txt",
// iRO custom additions.
-//npc: npc/re/quests/eden/eden_iro.txt
+//"npc/re/quests/eden/eden_iro.txt",
// --------------------------------------------------------------
// - Quests-Tutorials for basic classes (1st class quests) ------
-npc: npc/re/quests/first_class/tu_archer.txt
+"npc/re/quests/first_class/tu_archer.txt",
// --------------------------------------------------------------
-//npc: npc/re/quests/cupet.txt
-npc: npc/re/quests/homun_s.txt
-npc: npc/re/quests/magic_books.txt
-npc: npc/re/quests/monstertamers.txt
-npc: npc/re/quests/mrsmile.txt
-npc: npc/re/quests/pile_bunker.txt
-npc: npc/re/quests/quests_13_1.txt
-npc: npc/re/quests/quests_aldebaran.txt
-npc: npc/re/quests/quests_brasilis.txt
-npc: npc/re/quests/quests_dewata.txt
-npc: npc/re/quests/quests_dicastes.txt
-npc: npc/re/quests/quests_eclage.txt
-npc: npc/re/quests/quests_izlude.txt
-npc: npc/re/quests/quests_lighthalzen.txt
-npc: npc/re/quests/quests_malangdo.txt
-npc: npc/re/quests/quests_malaya.txt
-npc: npc/re/quests/quests_mora.txt
-npc: npc/re/quests/quests_morocc.txt
-npc: npc/re/quests/quests_nameless.txt
-npc: npc/re/quests/quests_veins.txt
+//"npc/re/quests/cupet.txt",
+"npc/re/quests/homun_s.txt",
+"npc/re/quests/magic_books.txt",
+"npc/re/quests/monstertamers.txt",
+"npc/re/quests/mrsmile.txt",
+"npc/re/quests/pile_bunker.txt",
+"npc/re/quests/quests_13_1.txt",
+"npc/re/quests/quests_aldebaran.txt",
+"npc/re/quests/quests_brasilis.txt",
+"npc/re/quests/quests_dewata.txt",
+"npc/re/quests/quests_dicastes.txt",
+"npc/re/quests/quests_eclage.txt",
+"npc/re/quests/quests_izlude.txt",
+"npc/re/quests/quests_lighthalzen.txt",
+"npc/re/quests/quests_malangdo.txt",
+"npc/re/quests/quests_malaya.txt",
+"npc/re/quests/quests_mora.txt",
+"npc/re/quests/quests_morocc.txt",
+"npc/re/quests/quests_nameless.txt",
+"npc/re/quests/quests_veins.txt",
// - New Gears --------------------------------------------------
-npc: npc/re/quests/newgears/2012_headgears.txt
+"npc/re/quests/newgears/2012_headgears.txt",
diff --git a/npc/re/scripts_jobs.conf b/npc/re/scripts_jobs.conf
index 7a2db4447..08218a912 100644
--- a/npc/re/scripts_jobs.conf
+++ b/npc/re/scripts_jobs.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -30,32 +30,32 @@
//================= Job Quests ============================================
// - 1-1
-npc: npc/re/jobs/1-1/acolyte.txt
-npc: npc/re/jobs/1-1/archer.txt
-npc: npc/re/jobs/1-1/mage.txt
-npc: npc/re/jobs/1-1/merchant.txt
-npc: npc/re/jobs/1-1/swordman.txt
-npc: npc/re/jobs/1-1/thief.txt
+"npc/re/jobs/1-1/acolyte.txt",
+"npc/re/jobs/1-1/archer.txt",
+"npc/re/jobs/1-1/mage.txt",
+"npc/re/jobs/1-1/merchant.txt",
+"npc/re/jobs/1-1/swordman.txt",
+"npc/re/jobs/1-1/thief.txt",
// - 2e
-npc: npc/re/jobs/2e/kagerou_oboro.txt
+"npc/re/jobs/2e/kagerou_oboro.txt",
// - 3-1
-npc: npc/re/jobs/3-1/archbishop.txt
-npc: npc/re/jobs/3-1/mechanic.txt
-npc: npc/re/jobs/3-1/ranger.txt
-npc: npc/re/jobs/3-1/rune_knight.txt
-npc: npc/re/jobs/3-1/warlock.txt
-npc: npc/re/jobs/3-1/guillotine_cross.txt
+"npc/re/jobs/3-1/archbishop.txt",
+"npc/re/jobs/3-1/mechanic.txt",
+"npc/re/jobs/3-1/ranger.txt",
+"npc/re/jobs/3-1/rune_knight.txt",
+"npc/re/jobs/3-1/warlock.txt",
+"npc/re/jobs/3-1/guillotine_cross.txt",
// - 3-2
-npc: npc/re/jobs/3-2/genetic.txt
-npc: npc/re/jobs/3-2/minstrel.txt
-npc: npc/re/jobs/3-2/royal_guard.txt
-npc: npc/re/jobs/3-2/shadow_chaser.txt
-npc: npc/re/jobs/3-2/sorcerer.txt
-npc: npc/re/jobs/3-2/sura.txt
-npc: npc/re/jobs/3-2/wanderer.txt
+"npc/re/jobs/3-2/genetic.txt",
+"npc/re/jobs/3-2/minstrel.txt",
+"npc/re/jobs/3-2/royal_guard.txt",
+"npc/re/jobs/3-2/shadow_chaser.txt",
+"npc/re/jobs/3-2/sorcerer.txt",
+"npc/re/jobs/3-2/sura.txt",
+"npc/re/jobs/3-2/wanderer.txt",
// - Novice
-npc: npc/re/jobs/novice/academy.txt
-// npc: npc/re/jobs/novice/novice.txt
-npc: npc/re/jobs/novice/supernovice_ex.txt
+"npc/re/jobs/novice/academy.txt",
+//"npc/re/jobs/novice/novice.txt",
+"npc/re/jobs/novice/supernovice_ex.txt",
// - Job Repairs
-npc: npc/re/jobs/repair.txt
+"npc/re/jobs/repair.txt",
diff --git a/npc/re/scripts_main.conf b/npc/re/scripts_main.conf
index fd0d85fad..475e8d1be 100644
--- a/npc/re/scripts_main.conf
+++ b/npc/re/scripts_main.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -27,48 +27,51 @@
//=========================================================================
//= Hercules Renewal Primary Scripts File
//=========================================================================
-// The idea of this new system is to make scripts more organized
-// since the old system was rather messy with all the NPCs in one
-// file. Now scripts are organized in to files arraged by type.
-// Custom scripts are now in scripts_custom.conf, all other
-// scripts are deemed as 'official'. You should place your NPCs
-// in to scripts_custom.conf to follow the trend.
-//
-// Thanks,
-// Ancyker and the rest of the Hercules Team
-//
-// Note: "Comments" are all text on the right side of a double slash "//"
-// Whatever text is commented will not be parsed by the servers, and serves
-// only as information/reference.
+// The idea of this new system is to make scripts more organized since the old
+// system was rather messy with all the NPCs in one file. Now scripts are
+// organized in to files arraged by type. Custom scripts are now in
+// scripts_custom.conf, all other scripts are deemed as 'official'. You should
+// place your NPCs in to scripts_custom.conf to follow the trend.
//=========================================================================
-//================= Global Scripts Functions ==============================
+//================= Disabled Scripts ======================================
+// All NPCs that you wish to remove from your loading list should be put in
+// this file
+@include "npc/scripts_removed.conf"
+
+//================= Global NPC list =======================================
+// Only files that are included here will be read by the server
+npc_global_list: (
+
+//- Global Scripts Functions -
// Utilitarian functions used by many scripts.
-npc: npc/other/Global_Functions.txt
+"npc/other/Global_Functions.txt",
-//================= Cash Shop Functions ===================================
+//- Cash Shop Functions -
// Used by cash shop items in the Item Database.
-npc: npc/other/CashShop_Functions.txt
+"npc/other/CashShop_Functions.txt",
+
+//- Common Script Files -
+@include "npc/scripts.conf"
+@include "npc/scripts_woe.conf"
+@include "npc/scripts_jobs.conf"
+@include "npc/scripts_mapflags.conf"
+@include "npc/scripts_monsters.conf"
+@include "npc/scripts_warps.conf"
-//================= Common Script Files ===================================
-import: npc/scripts.conf
-import: npc/scripts_woe.conf
-import: npc/scripts_jobs.conf
-import: npc/scripts_mapflags.conf
-import: npc/scripts_monsters.conf
-import: npc/scripts_warps.conf
+//- Renewal Script Files -
+@include "npc/re/scripts.conf"
+@include "npc/re/scripts_woe.conf"
+@include "npc/re/scripts_jobs.conf"
+@include "npc/re/scripts_mapflags.conf"
+@include "npc/re/scripts_monsters.conf"
+@include "npc/re/scripts_warps.conf"
-//================= Renewal Script Files ==================================
-import: npc/re/scripts.conf
-import: npc/re/scripts_woe.conf
-import: npc/re/scripts_jobs.conf
-import: npc/re/scripts_mapflags.conf
-import: npc/re/scripts_monsters.conf
-import: npc/re/scripts_warps.conf
+//- Development / Testing Script Files -
+@include "npc/scripts_dev.conf"
-//================= Development / Testing Script Files ====================
-import: npc/scripts_dev.conf
+//- Custom Script Files -
+// Your NPCs go in this file!
+@include "npc/scripts_custom.conf"
-//================= Custom Script Files ===================================
-// - Your NPCs go in this file!
-import: npc/scripts_custom.conf
+) // npc_global_list
diff --git a/npc/re/scripts_mapflags.conf b/npc/re/scripts_mapflags.conf
index 9f10792ef..8727d9b44 100644
--- a/npc/re/scripts_mapflags.conf
+++ b/npc/re/scripts_mapflags.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -28,4 +28,4 @@
//= Map Flags
//=========================================================================
-npc: npc/re/mapflag/zone.txt
+"npc/re/mapflag/zone.txt",
diff --git a/npc/re/scripts_monsters.conf b/npc/re/scripts_monsters.conf
index cb8e25de6..06b3031bf 100644
--- a/npc/re/scripts_monsters.conf
+++ b/npc/re/scripts_monsters.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,83 +29,83 @@
//=========================================================================
//================= Misc Spawns ===========================================
-npc: npc/re/mobs/citycleaners.txt
-npc: npc/re/mobs/towns.txt
-npc: npc/re/mobs/champion.txt
+"npc/re/mobs/citycleaners.txt",
+"npc/re/mobs/towns.txt",
+"npc/re/mobs/champion.txt",
//================= Dungeons ==============================================
-npc: npc/re/mobs/dungeons/abbey.txt
-npc: npc/re/mobs/dungeons/abyss.txt
-npc: npc/re/mobs/dungeons/alde_dun.txt
-npc: npc/re/mobs/dungeons/ama_dun.txt
-npc: npc/re/mobs/dungeons/anthell.txt
-npc: npc/re/mobs/dungeons/ayo_dun.txt
-npc: npc/re/mobs/dungeons/beach_dun.txt
-npc: npc/re/mobs/dungeons/bra_dun.txt
-npc: npc/re/mobs/dungeons/c_tower.txt
-npc: npc/re/mobs/dungeons/dew_dun.txt
-npc: npc/re/mobs/dungeons/dic_dun.txt
-npc: npc/re/mobs/dungeons/ecl_tdun.txt
-npc: npc/re/mobs/dungeons/ein_dun.txt
-npc: npc/re/mobs/dungeons/gef_dun.txt
-npc: npc/re/mobs/dungeons/gefenia.txt
-npc: npc/re/mobs/dungeons/glastheim.txt
-npc: npc/re/mobs/dungeons/gld_dunSE.txt
-npc: npc/re/mobs/dungeons/gld_re.txt
-npc: npc/re/mobs/dungeons/gon_dun.txt
-npc: npc/re/mobs/dungeons/ice_dun.txt
-npc: npc/re/mobs/dungeons/in_sphinx.txt
-npc: npc/re/mobs/dungeons/iz_dun.txt
-npc: npc/re/mobs/dungeons/juperos.txt
-npc: npc/re/mobs/dungeons/kh_dun.txt
-npc: npc/re/mobs/dungeons/lhz_dun.txt
-npc: npc/re/mobs/dungeons/lou_dun.txt
-npc: npc/re/mobs/dungeons/ma_dun.txt
-npc: npc/re/mobs/dungeons/mag_dun.txt
-npc: npc/re/mobs/dungeons/mal_dun.txt
-npc: npc/re/mobs/dungeons/mjo_dun.txt
-npc: npc/re/mobs/dungeons/moc_pryd.txt
-npc: npc/re/mobs/dungeons/mosk_dun.txt
-npc: npc/re/mobs/dungeons/nyd_dun.txt
-npc: npc/re/mobs/dungeons/odin.txt
-npc: npc/re/mobs/dungeons/orcsdun.txt
-npc: npc/re/mobs/dungeons/pay_dun.txt
-npc: npc/re/mobs/dungeons/prt_maze.txt
-npc: npc/re/mobs/dungeons/prt_sew.txt
-npc: npc/re/mobs/dungeons/ra_san.txt
-npc: npc/re/mobs/dungeons/tha_t.txt
-npc: npc/re/mobs/dungeons/thor_v.txt
-npc: npc/re/mobs/dungeons/treasure.txt
-npc: npc/re/mobs/dungeons/tur_dun.txt
-npc: npc/re/mobs/dungeons/xmas_dun.txt
-npc: npc/re/mobs/dungeons/yggdrasil.txt
+"npc/re/mobs/dungeons/abbey.txt",
+"npc/re/mobs/dungeons/abyss.txt",
+"npc/re/mobs/dungeons/alde_dun.txt",
+"npc/re/mobs/dungeons/ama_dun.txt",
+"npc/re/mobs/dungeons/anthell.txt",
+"npc/re/mobs/dungeons/ayo_dun.txt",
+"npc/re/mobs/dungeons/beach_dun.txt",
+"npc/re/mobs/dungeons/bra_dun.txt",
+"npc/re/mobs/dungeons/c_tower.txt",
+"npc/re/mobs/dungeons/dew_dun.txt",
+"npc/re/mobs/dungeons/dic_dun.txt",
+"npc/re/mobs/dungeons/ecl_tdun.txt",
+"npc/re/mobs/dungeons/ein_dun.txt",
+"npc/re/mobs/dungeons/gef_dun.txt",
+"npc/re/mobs/dungeons/gefenia.txt",
+"npc/re/mobs/dungeons/glastheim.txt",
+"npc/re/mobs/dungeons/gld_dunSE.txt",
+"npc/re/mobs/dungeons/gld_re.txt",
+"npc/re/mobs/dungeons/gon_dun.txt",
+"npc/re/mobs/dungeons/ice_dun.txt",
+"npc/re/mobs/dungeons/in_sphinx.txt",
+"npc/re/mobs/dungeons/iz_dun.txt",
+"npc/re/mobs/dungeons/juperos.txt",
+"npc/re/mobs/dungeons/kh_dun.txt",
+"npc/re/mobs/dungeons/lhz_dun.txt",
+"npc/re/mobs/dungeons/lou_dun.txt",
+"npc/re/mobs/dungeons/ma_dun.txt",
+"npc/re/mobs/dungeons/mag_dun.txt",
+"npc/re/mobs/dungeons/mal_dun.txt",
+"npc/re/mobs/dungeons/mjo_dun.txt",
+"npc/re/mobs/dungeons/moc_pryd.txt",
+"npc/re/mobs/dungeons/mosk_dun.txt",
+"npc/re/mobs/dungeons/nyd_dun.txt",
+"npc/re/mobs/dungeons/odin.txt",
+"npc/re/mobs/dungeons/orcsdun.txt",
+"npc/re/mobs/dungeons/pay_dun.txt",
+"npc/re/mobs/dungeons/prt_maze.txt",
+"npc/re/mobs/dungeons/prt_sew.txt",
+"npc/re/mobs/dungeons/ra_san.txt",
+"npc/re/mobs/dungeons/tha_t.txt",
+"npc/re/mobs/dungeons/thor_v.txt",
+"npc/re/mobs/dungeons/treasure.txt",
+"npc/re/mobs/dungeons/tur_dun.txt",
+"npc/re/mobs/dungeons/xmas_dun.txt",
+"npc/re/mobs/dungeons/yggdrasil.txt",
//================= Fields ================================================
-npc: npc/re/mobs/fields/amatsu.txt
-npc: npc/re/mobs/fields/ayothaya.txt
-npc: npc/re/mobs/fields/bifrost.txt
-npc: npc/re/mobs/fields/brasilis.txt
-npc: npc/re/mobs/fields/comodo.txt
-npc: npc/re/mobs/fields/dewata.txt
-npc: npc/re/mobs/fields/dicastes.txt
-npc: npc/re/mobs/fields/eclage.txt
-npc: npc/re/mobs/fields/einbroch.txt
-npc: npc/re/mobs/fields/geffen.txt
-npc: npc/re/mobs/fields/gonryun.txt
-npc: npc/re/mobs/fields/hugel.txt
-npc: npc/re/mobs/fields/lighthalzen.txt
-npc: npc/re/mobs/fields/louyang.txt
-npc: npc/re/mobs/fields/lutie.txt
-npc: npc/re/mobs/fields/malaya.txt
-npc: npc/re/mobs/fields/manuk.txt
-npc: npc/re/mobs/fields/mjolnir.txt
-npc: npc/re/mobs/fields/morocc.txt
-npc: npc/re/mobs/fields/moscovia.txt
-npc: npc/re/mobs/fields/niflheim.txt
-npc: npc/re/mobs/fields/payon.txt
-npc: npc/re/mobs/fields/prontera.txt
-npc: npc/re/mobs/fields/rachel.txt
-npc: npc/re/mobs/fields/splendide.txt
-npc: npc/re/mobs/fields/umbala.txt
-npc: npc/re/mobs/fields/veins.txt
-npc: npc/re/mobs/fields/yuno.txt
+"npc/re/mobs/fields/amatsu.txt",
+"npc/re/mobs/fields/ayothaya.txt",
+"npc/re/mobs/fields/bifrost.txt",
+"npc/re/mobs/fields/brasilis.txt",
+"npc/re/mobs/fields/comodo.txt",
+"npc/re/mobs/fields/dewata.txt",
+"npc/re/mobs/fields/dicastes.txt",
+"npc/re/mobs/fields/eclage.txt",
+"npc/re/mobs/fields/einbroch.txt",
+"npc/re/mobs/fields/geffen.txt",
+"npc/re/mobs/fields/gonryun.txt",
+"npc/re/mobs/fields/hugel.txt",
+"npc/re/mobs/fields/lighthalzen.txt",
+"npc/re/mobs/fields/louyang.txt",
+"npc/re/mobs/fields/lutie.txt",
+"npc/re/mobs/fields/malaya.txt",
+"npc/re/mobs/fields/manuk.txt",
+"npc/re/mobs/fields/mjolnir.txt",
+"npc/re/mobs/fields/morocc.txt",
+"npc/re/mobs/fields/moscovia.txt",
+"npc/re/mobs/fields/niflheim.txt",
+"npc/re/mobs/fields/payon.txt",
+"npc/re/mobs/fields/prontera.txt",
+"npc/re/mobs/fields/rachel.txt",
+"npc/re/mobs/fields/splendide.txt",
+"npc/re/mobs/fields/umbala.txt",
+"npc/re/mobs/fields/veins.txt",
+"npc/re/mobs/fields/yuno.txt",
diff --git a/npc/re/scripts_warps.conf b/npc/re/scripts_warps.conf
index a67432479..a5ead53e2 100644
--- a/npc/re/scripts_warps.conf
+++ b/npc/re/scripts_warps.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,41 +29,41 @@
//=========================================================================
//================= Cities ================================================
-npc: npc/re/warps/cities/brasilis.txt
-npc: npc/re/warps/cities/dewata.txt
-npc: npc/re/warps/cities/dicastes.txt
-npc: npc/re/warps/cities/eclage.txt
-npc: npc/re/warps/cities/izlude.txt
-npc: npc/re/warps/cities/malangdo.txt
-npc: npc/re/warps/cities/malaya.txt
-npc: npc/re/warps/cities/rachel.txt
-npc: npc/re/warps/cities/yggdrasil.txt
+"npc/re/warps/cities/brasilis.txt",
+"npc/re/warps/cities/dewata.txt",
+"npc/re/warps/cities/dicastes.txt",
+"npc/re/warps/cities/eclage.txt",
+"npc/re/warps/cities/izlude.txt",
+"npc/re/warps/cities/malangdo.txt",
+"npc/re/warps/cities/malaya.txt",
+"npc/re/warps/cities/rachel.txt",
+"npc/re/warps/cities/yggdrasil.txt",
//================= Dungeons ==============================================
-npc: npc/re/warps/dungeons/bra_dun.txt
-npc: npc/re/warps/dungeons/dic_dun.txt
-npc: npc/re/warps/dungeons/ecl_dun.txt
-npc: npc/re/warps/dungeons/iz_dun.txt
-npc: npc/re/warps/dungeons/moc_pryd.txt
+"npc/re/warps/dungeons/bra_dun.txt",
+"npc/re/warps/dungeons/dic_dun.txt",
+"npc/re/warps/dungeons/ecl_dun.txt",
+"npc/re/warps/dungeons/iz_dun.txt",
+"npc/re/warps/dungeons/moc_pryd.txt",
//================= Fields ================================================
-npc: npc/re/warps/fields/bif_fild.txt
-npc: npc/re/warps/fields/bra_fild.txt
-npc: npc/re/warps/fields/com_fild.txt
-npc: npc/re/warps/fields/dic_fild.txt
-npc: npc/re/warps/fields/geffen_fild.txt
-npc: npc/re/warps/fields/hugel_fild.txt
-npc: npc/re/warps/fields/morroc_fild.txt
-npc: npc/re/warps/fields/payon_fild.txt
-npc: npc/re/warps/fields/prontera_fild.txt
-npc: npc/re/warps/fields/rachel_fild.txt
-npc: npc/re/warps/fields/veins_fild.txt
-npc: npc/re/warps/fields/yuno_fild.txt
+"npc/re/warps/fields/bif_fild.txt",
+"npc/re/warps/fields/bra_fild.txt",
+"npc/re/warps/fields/com_fild.txt",
+"npc/re/warps/fields/dic_fild.txt",
+"npc/re/warps/fields/geffen_fild.txt",
+"npc/re/warps/fields/hugel_fild.txt",
+"npc/re/warps/fields/morroc_fild.txt",
+"npc/re/warps/fields/payon_fild.txt",
+"npc/re/warps/fields/prontera_fild.txt",
+"npc/re/warps/fields/rachel_fild.txt",
+"npc/re/warps/fields/veins_fild.txt",
+"npc/re/warps/fields/yuno_fild.txt",
//================= Others ================================================
-npc: npc/re/warps/other/arena.txt
-npc: npc/re/warps/other/jobquests.txt
-npc: npc/re/warps/other/paradise.txt
-npc: npc/re/warps/other/s_workshop.txt
-npc: npc/re/warps/other/sign.txt
-npc: npc/re/warps/guildcastles.txt
+"npc/re/warps/other/arena.txt",
+"npc/re/warps/other/jobquests.txt",
+"npc/re/warps/other/paradise.txt",
+"npc/re/warps/other/s_workshop.txt",
+"npc/re/warps/other/sign.txt",
+"npc/re/warps/guildcastles.txt",
diff --git a/npc/re/scripts_woe.conf b/npc/re/scripts_woe.conf
index 9677c55b7..957ac766d 100644
--- a/npc/re/scripts_woe.conf
+++ b/npc/re/scripts_woe.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -30,5 +30,5 @@
//================= War of Emperium =======================================
// - Hall of Abyss
-npc: npc/re/woe-fe/invest_main.txt
-npc: npc/re/woe-fe/invest_npc.txt
+"npc/re/woe-fe/invest_main.txt",
+"npc/re/woe-fe/invest_npc.txt",
diff --git a/npc/scripts.conf b/npc/scripts.conf
index 4fa9818f7..d56d7cb73 100644
--- a/npc/scripts.conf
+++ b/npc/scripts.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,282 +29,282 @@
//=========================================================================
//================= Message of the Day ====================================
-npc: npc/MOTD.txt
+"npc/MOTD.txt",
//================= Airport ===============================================
-npc: npc/airports/airships.txt
-npc: npc/airports/einbroch.txt
-npc: npc/airports/hugel.txt
-npc: npc/airports/izlude.txt
-npc: npc/airports/lighthalzen.txt
-npc: npc/airports/rachel.txt
-npc: npc/airports/yuno.txt
+"npc/airports/airships.txt",
+"npc/airports/einbroch.txt",
+"npc/airports/hugel.txt",
+"npc/airports/izlude.txt",
+"npc/airports/lighthalzen.txt",
+"npc/airports/rachel.txt",
+"npc/airports/yuno.txt",
//================= Battlegrounds =========================================
// - Flavius ----------------------------------------------------
-npc: npc/battleground/flavius/flavius_enter.txt
-npc: npc/battleground/flavius/flavius01.txt
-npc: npc/battleground/flavius/flavius02.txt
+"npc/battleground/flavius/flavius_enter.txt",
+"npc/battleground/flavius/flavius01.txt",
+"npc/battleground/flavius/flavius02.txt",
// - Kreiger Von Midgard ----------------------------------------
-npc: npc/battleground/kvm/kvm_enter.txt
-npc: npc/battleground/kvm/kvm_item_pay.txt
-npc: npc/battleground/kvm/kvm01.txt
-npc: npc/battleground/kvm/kvm02.txt
-npc: npc/battleground/kvm/kvm03.txt
+"npc/battleground/kvm/kvm_enter.txt",
+"npc/battleground/kvm/kvm_item_pay.txt",
+"npc/battleground/kvm/kvm01.txt",
+"npc/battleground/kvm/kvm02.txt",
+"npc/battleground/kvm/kvm03.txt",
// - Tierra Gorge -----------------------------------------------
-npc: npc/battleground/tierra/tierra_enter.txt
-npc: npc/battleground/tierra/tierra01.txt
-npc: npc/battleground/tierra/tierra02.txt
+"npc/battleground/tierra/tierra_enter.txt",
+"npc/battleground/tierra/tierra01.txt",
+"npc/battleground/tierra/tierra02.txt",
// --------------------------------------------------------------
-npc: npc/battleground/bg_common.txt
+"npc/battleground/bg_common.txt",
//================= Cities ================================================
-npc: npc/cities/alberta.txt
-npc: npc/cities/aldebaran.txt
-npc: npc/cities/amatsu.txt
-npc: npc/cities/ayothaya.txt
-npc: npc/cities/comodo.txt
-npc: npc/cities/einbech.txt
-npc: npc/cities/einbroch.txt
-npc: npc/cities/geffen.txt
-npc: npc/cities/gonryun.txt
-npc: npc/cities/hugel.txt
-npc: npc/cities/izlude.txt
-npc: npc/cities/jawaii.txt
-npc: npc/cities/lighthalzen.txt
-npc: npc/cities/louyang.txt
-npc: npc/cities/lutie.txt
-npc: npc/cities/manuk.txt
-npc: npc/cities/morocc.txt
-npc: npc/cities/moscovia.txt
-npc: npc/cities/niflheim.txt
-npc: npc/cities/payon.txt
-npc: npc/cities/prontera.txt
-npc: npc/cities/rachel.txt
-npc: npc/cities/splendide.txt
-npc: npc/cities/umbala.txt
-npc: npc/cities/veins.txt
-npc: npc/cities/yuno.txt
+"npc/cities/alberta.txt",
+"npc/cities/aldebaran.txt",
+"npc/cities/amatsu.txt",
+"npc/cities/ayothaya.txt",
+"npc/cities/comodo.txt",
+"npc/cities/einbech.txt",
+"npc/cities/einbroch.txt",
+"npc/cities/geffen.txt",
+"npc/cities/gonryun.txt",
+"npc/cities/hugel.txt",
+"npc/cities/izlude.txt",
+"npc/cities/jawaii.txt",
+"npc/cities/lighthalzen.txt",
+"npc/cities/louyang.txt",
+"npc/cities/lutie.txt",
+"npc/cities/manuk.txt",
+"npc/cities/morocc.txt",
+"npc/cities/moscovia.txt",
+"npc/cities/niflheim.txt",
+"npc/cities/payon.txt",
+"npc/cities/prontera.txt",
+"npc/cities/rachel.txt",
+"npc/cities/splendide.txt",
+"npc/cities/umbala.txt",
+"npc/cities/veins.txt",
+"npc/cities/yuno.txt",
//================= Events ================================================
// - Novice WoE -------------------------------------------------
// Novice WoE is a kRO Event, after the event, the scripts were disabled.
// Novice Castles don't have real dungeons. They're connected to the common ones.
// So it's better not to uncomment this line.
-//npc: npc/events/nguild/nguild_dunsw.txt
-//npc: npc/events/nguild/nguild_treas.txt
-//npc: npc/events/nguild/nguild_guardians.txt
-//npc: npc/events/nguild/nguild_warper.txt
-//npc: npc/events/nguild/nguild_ev_agit.txt
-//npc: npc/events/nguild/nguild_flags.txt
-//npc: npc/events/nguild/nguild_managers.txt
-//npc: npc/events/nguild/nguild_kafras.txt
+//"npc/events/nguild/nguild_dunsw.txt",
+//"npc/events/nguild/nguild_treas.txt",
+//"npc/events/nguild/nguild_guardians.txt",
+//"npc/events/nguild/nguild_warper.txt",
+//"npc/events/nguild/nguild_ev_agit.txt",
+//"npc/events/nguild/nguild_flags.txt",
+//"npc/events/nguild/nguild_managers.txt",
+//"npc/events/nguild/nguild_kafras.txt",
// --------------------------------------------------------------
-//npc: npc/events/bossnia.txt
+//"npc/events/bossnia.txt",
// - Official indian Ro Event Children Week
-//npc: npc/events/children_week.txt
+//"npc/events/children_week.txt",
// - Official Christmas Events (iRO)
-//npc: npc/events/christmas_2005.txt
-//npc: npc/events/christmas_2008.txt
-//npc: npc/events/dumplingfestival.txt
+//"npc/events/christmas_2005.txt",
+//"npc/events/christmas_2008.txt",
+//"npc/events/dumplingfestival.txt",
// - Official Easter (2008) Event (iRO)
-//npc: npc/events/easter_2008.txt
+//"npc/events/easter_2008.txt",
// - Official Easter (2010) Event
-//npc: npc/events/easter_2010.txt
+//"npc/events/easter_2010.txt",
// - Official kRO, idRO Skill Reset Event
-//npc: npc/events/event_skill_reset.txt
+//"npc/events/event_skill_reset.txt",
// - Events related to WoE SE Guild Dungeons.
-npc: npc/events/gdevent_aru.txt
-npc: npc/events/gdevent_sch.txt
+"npc/events/gdevent_aru.txt",
+"npc/events/gdevent_sch.txt",
// - God Item SE post-creation Event
-npc: npc/events/god_se_festival.txt
+"npc/events/god_se_festival.txt",
// - Official Halloween Events (iRO)
-//npc: npc/events/halloween_2006.txt
-//npc: npc/events/halloween_2008.txt
-//npc: npc/events/halloween_2009.txt
+//"npc/events/halloween_2006.txt",
+//"npc/events/halloween_2008.txt",
+//"npc/events/halloween_2009.txt",
// - Official idRO Idul Fitri Event
-//npc: npc/events/idul_fitri.txt
+//"npc/events/idul_fitri.txt",
// - Official Lunar New Year (2008) Event (iRO)
-//npc: npc/events/lunar_2008.txt
+//"npc/events/lunar_2008.txt",
// - Official RWC (2011) Golden Poring Event
-//npc: npc/events/RWC_2011.txt
+//"npc/events/RWC_2011.txt",
// - Official RWC (2012) Enchants Event
-//npc: npc/events/RWC_2012.txt
+//"npc/events/RWC_2012.txt",
// - Official Memorial Day (2009) Event (iRO)
-//npc: npc/events/MemorialDay_2008.txt
+//"npc/events/MemorialDay_2008.txt",
// - Official St. Patrick's Day (2008) Event (iRO)
-//npc: npc/events/StPatrick_2008.txt
-//npc: npc/events/twintowers.txt
-//npc: npc/events/valentinesday.txt
+//"npc/events/StPatrick_2008.txt",
+//"npc/events/twintowers.txt",
+//"npc/events/valentinesday.txt",
// - Official Valentine's Day Events (iRO)
-//npc: npc/events/valentinesday_2009.txt
-//npc: npc/events/valentinesday_2012.txt
-//npc: npc/events/whiteday.txt
-//npc: npc/events/xmas.txt
+//"npc/events/valentinesday_2009.txt",
+//"npc/events/valentinesday_2012.txt",
+//"npc/events/whiteday.txt",
+//"npc/events/xmas.txt",
//================= Instances =============================================
-npc: npc/instances/SealedShrine.txt
-npc: npc/instances/EndlessTower.txt
-npc: npc/instances/OrcsMemory.txt
-npc: npc/instances/NydhoggsNest.txt
+"npc/instances/SealedShrine.txt",
+"npc/instances/EndlessTower.txt",
+"npc/instances/OrcsMemory.txt",
+"npc/instances/NydhoggsNest.txt",
//================= Kafras & Cool Event Corp. =============================
-npc: npc/kafras/cool_event_corp.txt
-npc: npc/kafras/dts_warper.txt
-npc: npc/kafras/functions_kafras.txt
-npc: npc/kafras/kafras.txt
+"npc/kafras/cool_event_corp.txt",
+"npc/kafras/dts_warper.txt",
+"npc/kafras/functions_kafras.txt",
+"npc/kafras/kafras.txt",
//================= Merchants =============================================
-npc: npc/merchants/advanced_refiner.txt
-npc: npc/merchants/alchemist.txt
-npc: npc/merchants/ammo_boxes.txt
-npc: npc/merchants/ammo_dealer.txt
-npc: npc/merchants/buying_shops.txt
-//npc: npc/merchants/clothes_dyer.txt
-npc: npc/merchants/coin_exchange.txt
-npc: npc/merchants/dye_maker.txt
-npc: npc/merchants/elemental_trader.txt
-npc: npc/merchants/enchan_arm.txt
-npc: npc/merchants/gemstone.txt
-npc: npc/merchants/hair_dyer.txt
-npc: npc/merchants/hair_style.txt
-//npc: npc/merchants/hd_refine.txt
-//npc: npc/merchants/icecream.txt
-npc: npc/merchants/inn.txt
-npc: npc/merchants/kunai_maker.txt
-npc: npc/merchants/milk_trader.txt
-npc: npc/merchants/novice_exchange.txt
-npc: npc/merchants/old_pharmacist.txt
-npc: npc/merchants/quivers.txt
-npc: npc/merchants/refine.txt
-npc: npc/merchants/renters.txt
-npc: npc/merchants/shops.txt
-npc: npc/merchants/socket_enchant.txt
-npc: npc/merchants/socket_enchant2.txt
-npc: npc/merchants/wander_pet_food.txt
+"npc/merchants/advanced_refiner.txt",
+"npc/merchants/alchemist.txt",
+"npc/merchants/ammo_boxes.txt",
+"npc/merchants/ammo_dealer.txt",
+"npc/merchants/buying_shops.txt",
+//"npc/merchants/clothes_dyer.txt",
+"npc/merchants/coin_exchange.txt",
+"npc/merchants/dye_maker.txt",
+"npc/merchants/elemental_trader.txt",
+"npc/merchants/enchan_arm.txt",
+"npc/merchants/gemstone.txt",
+"npc/merchants/hair_dyer.txt",
+"npc/merchants/hair_style.txt",
+//"npc/merchants/hd_refine.txt",
+//"npc/merchants/icecream.txt",
+"npc/merchants/inn.txt",
+"npc/merchants/kunai_maker.txt",
+"npc/merchants/milk_trader.txt",
+"npc/merchants/novice_exchange.txt",
+"npc/merchants/old_pharmacist.txt",
+"npc/merchants/quivers.txt",
+"npc/merchants/refine.txt",
+"npc/merchants/renters.txt",
+"npc/merchants/shops.txt",
+"npc/merchants/socket_enchant.txt",
+"npc/merchants/socket_enchant2.txt",
+"npc/merchants/wander_pet_food.txt",
// - Cash Shop
// See file before enabling, as you may wish to change the
// point value of items to suit your own needs.
-//npc: npc/merchants/cash_hair.txt
-//npc: npc/merchants/cash_trader.txt
-npc: npc/merchants/cashheadgear_dye.txt
+//"npc/merchants/cash_hair.txt",
+//"npc/merchants/cash_trader.txt",
+"npc/merchants/cashheadgear_dye.txt",
//================= Others ================================================
// - Izlude Battle Arena ----------------------------------------
-npc: npc/other/arena/arena_aco.txt
-npc: npc/other/arena/arena_lvl50.txt
-npc: npc/other/arena/arena_lvl60.txt
-npc: npc/other/arena/arena_lvl70.txt
-npc: npc/other/arena/arena_lvl80.txt
-npc: npc/other/arena/arena_party.txt
-npc: npc/other/arena/arena_point.txt
-npc: npc/other/arena/arena_room.txt
+"npc/other/arena/arena_aco.txt",
+"npc/other/arena/arena_lvl50.txt",
+"npc/other/arena/arena_lvl60.txt",
+"npc/other/arena/arena_lvl70.txt",
+"npc/other/arena/arena_lvl80.txt",
+"npc/other/arena/arena_party.txt",
+"npc/other/arena/arena_point.txt",
+"npc/other/arena/arena_room.txt",
// --------------------------------------------------------------
-//npc: npc/other/acolyte_warp.txt
-npc: npc/other/auction.txt
-npc: npc/other/books.txt
-npc: npc/other/bulletin_boards.txt
-//npc: npc/other/card_trader.txt
-npc: npc/other/comodo_gambling.txt
-npc: npc/other/divorce.txt
-npc: npc/other/fortune.txt
-npc: npc/other/gm_npcs.txt
-npc: npc/other/guildpvp.txt
-npc: npc/other/gympass.txt
-npc: npc/other/hugel_bingo.txt
-npc: npc/other/mail.txt
-npc: npc/other/marriage.txt
-npc: npc/other/mercenary_rent.txt
-npc: npc/other/monster_museum.txt
+//"npc/other/acolyte_warp.txt",
+"npc/other/auction.txt",
+"npc/other/books.txt",
+"npc/other/bulletin_boards.txt",
+//"npc/other/card_trader.txt",
+"npc/other/comodo_gambling.txt",
+"npc/other/divorce.txt",
+"npc/other/fortune.txt",
+"npc/other/gm_npcs.txt",
+"npc/other/guildpvp.txt",
+"npc/other/gympass.txt",
+"npc/other/hugel_bingo.txt",
+"npc/other/mail.txt",
+"npc/other/marriage.txt",
+"npc/other/mercenary_rent.txt",
+"npc/other/monster_museum.txt",
// - Hugel Monster Races
-npc: npc/other/monster_race.txt
-//npc: npc/other/msg_boards.txt
-npc: npc/other/poring_war.txt
-npc: npc/other/powernpc.txt
-npc: npc/other/pvp.txt
+"npc/other/monster_race.txt",
+//"npc/other/msg_boards.txt",
+"npc/other/poring_war.txt",
+"npc/other/powernpc.txt",
+"npc/other/pvp.txt",
// - Turbo Track Arena
-npc: npc/other/turbo_track.txt
-npc: npc/other/item_merge.txt
+"npc/other/turbo_track.txt",
+"npc/other/item_merge.txt",
//================= Quests ================================================
// - Quests-Tutorials for basic classes (1st class quests) ------
-npc: npc/quests/first_class/tu_acolyte.txt
-npc: npc/quests/first_class/tu_archer.txt
-npc: npc/quests/first_class/tu_magician01.txt
-npc: npc/quests/first_class/tu_ma_th01.txt
-npc: npc/quests/first_class/tu_merchant.txt
-npc: npc/quests/first_class/tu_sword.txt
-npc: npc/quests/first_class/tu_thief01.txt
+"npc/quests/first_class/tu_acolyte.txt",
+"npc/quests/first_class/tu_archer.txt",
+"npc/quests/first_class/tu_magician01.txt",
+"npc/quests/first_class/tu_ma_th01.txt",
+"npc/quests/first_class/tu_merchant.txt",
+"npc/quests/first_class/tu_sword.txt",
+"npc/quests/first_class/tu_thief01.txt",
// - Headgear Quests --------------------------------------------
-npc: npc/quests/newgears/2004_headgears.txt
-npc: npc/quests/newgears/2005_headgears.txt
-npc: npc/quests/newgears/2006_headgears.txt
-npc: npc/quests/newgears/2008_headgears.txt
-npc: npc/quests/newgears/2010_headgears.txt
+"npc/quests/newgears/2004_headgears.txt",
+"npc/quests/newgears/2005_headgears.txt",
+"npc/quests/newgears/2006_headgears.txt",
+"npc/quests/newgears/2008_headgears.txt",
+"npc/quests/newgears/2010_headgears.txt",
// - Falicious Okolnir ------------------------------------------
// God Item Second Edition Quests
-npc: npc/quests/okolnir.txt
+"npc/quests/okolnir.txt",
// - The God Item Quest -----------------------------------------
// - Controller file, allow GMs to change variables.
-npc: npc/quests/seals/god_global.txt
-npc: npc/quests/seals/brisingamen_seal.txt
-npc: npc/quests/seals/god_weapon_creation.txt
-npc: npc/quests/seals/megingard_seal.txt
-npc: npc/quests/seals/mjolnir_seal.txt
-npc: npc/quests/seals/sleipnir_seal.txt
+"npc/quests/seals/god_global.txt",
+"npc/quests/seals/brisingamen_seal.txt",
+"npc/quests/seals/god_weapon_creation.txt",
+"npc/quests/seals/megingard_seal.txt",
+"npc/quests/seals/mjolnir_seal.txt",
+"npc/quests/seals/sleipnir_seal.txt",
// - Seal status board.
-npc: npc/quests/seals/seal_status.txt
+"npc/quests/seals/seal_status.txt",
// --------------------------------------------------------------
// - Wandering Minstrel Quest
-npc: npc/quests/bard_quest.txt
-npc: npc/quests/bunnyband.txt
-npc: npc/quests/cooking_quest.txt
-npc: npc/quests/counteragent_mixture.txt
-//npc: npc/quests/dandelion_request.txt
-npc: npc/quests/doomed_swords.txt
-npc: npc/quests/doomed_swords_quest.txt
-npc: npc/quests/eye_of_hellion.txt
+"npc/quests/bard_quest.txt",
+"npc/quests/bunnyband.txt",
+"npc/quests/cooking_quest.txt",
+"npc/quests/counteragent_mixture.txt",
+//"npc/quests/dandelion_request.txt",
+"npc/quests/doomed_swords.txt",
+"npc/quests/doomed_swords_quest.txt",
+"npc/quests/eye_of_hellion.txt",
// - Guild Relay Quests
-npc: npc/quests/guildrelay.txt
-npc: npc/quests/gunslinger_quests.txt
-npc: npc/quests/juice_maker.txt
-npc: npc/quests/kiel_hyre_quest.txt
-npc: npc/quests/lvl4_weapon_quest.txt
-npc: npc/quests/mage_solution.txt
-npc: npc/quests/monstertamers.txt
-npc: npc/quests/mrsmile.txt
-npc: npc/quests/ninja_quests.txt
-npc: npc/quests/obb_quest.txt
-npc: npc/quests/partyrelay.txt
-npc: npc/quests/quests_13_1.txt
-npc: npc/quests/quests_13_2.txt
-npc: npc/quests/quests_airship.txt
-npc: npc/quests/quests_alberta.txt
-npc: npc/quests/quests_aldebaran.txt
-npc: npc/quests/quests_amatsu.txt
-npc: npc/quests/quests_ayothaya.txt
-npc: npc/quests/quests_comodo.txt
-npc: npc/quests/quests_ein.txt
-npc: npc/quests/quests_geffen.txt
-npc: npc/quests/quests_gonryun.txt
-npc: npc/quests/quests_hugel.txt
-npc: npc/quests/quests_izlude.txt
-npc: npc/quests/quests_juperos.txt
-npc: npc/quests/quests_lighthalzen.txt
-npc: npc/quests/quests_louyang.txt
-npc: npc/quests/quests_lutie.txt
-npc: npc/quests/quests_morocc.txt
-npc: npc/quests/quests_moscovia.txt
-npc: npc/quests/quests_nameless.txt
-npc: npc/quests/quests_niflheim.txt
-npc: npc/quests/quests_payon.txt
-npc: npc/quests/quests_prontera.txt
-npc: npc/quests/quests_rachel.txt
-npc: npc/quests/quests_umbala.txt
-npc: npc/quests/quests_veins.txt
-npc: npc/quests/quests_yuno.txt
-npc: npc/quests/thana_quest.txt
+"npc/quests/guildrelay.txt",
+"npc/quests/gunslinger_quests.txt",
+"npc/quests/juice_maker.txt",
+"npc/quests/kiel_hyre_quest.txt",
+"npc/quests/lvl4_weapon_quest.txt",
+"npc/quests/mage_solution.txt",
+"npc/quests/monstertamers.txt",
+"npc/quests/mrsmile.txt",
+"npc/quests/ninja_quests.txt",
+"npc/quests/obb_quest.txt",
+"npc/quests/partyrelay.txt",
+"npc/quests/quests_13_1.txt",
+"npc/quests/quests_13_2.txt",
+"npc/quests/quests_airship.txt",
+"npc/quests/quests_alberta.txt",
+"npc/quests/quests_aldebaran.txt",
+"npc/quests/quests_amatsu.txt",
+"npc/quests/quests_ayothaya.txt",
+"npc/quests/quests_comodo.txt",
+"npc/quests/quests_ein.txt",
+"npc/quests/quests_geffen.txt",
+"npc/quests/quests_gonryun.txt",
+"npc/quests/quests_hugel.txt",
+"npc/quests/quests_izlude.txt",
+"npc/quests/quests_juperos.txt",
+"npc/quests/quests_lighthalzen.txt",
+"npc/quests/quests_louyang.txt",
+"npc/quests/quests_lutie.txt",
+"npc/quests/quests_morocc.txt",
+"npc/quests/quests_moscovia.txt",
+"npc/quests/quests_nameless.txt",
+"npc/quests/quests_niflheim.txt",
+"npc/quests/quests_payon.txt",
+"npc/quests/quests_prontera.txt",
+"npc/quests/quests_rachel.txt",
+"npc/quests/quests_umbala.txt",
+"npc/quests/quests_veins.txt",
+"npc/quests/quests_yuno.txt",
+"npc/quests/thana_quest.txt",
// - The Sign Quest
// Be sure that the time zone set corresponds with the server's.
// For more info, read the comments in npc/quests/the_sign_quest.txt
-npc: npc/quests/the_sign_quest.txt
+"npc/quests/the_sign_quest.txt",
diff --git a/npc/scripts_custom.conf b/npc/scripts_custom.conf
index 940405beb..14384fd17 100644
--- a/npc/scripts_custom.conf
+++ b/npc/scripts_custom.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -35,103 +35,103 @@
// All the custom scripts, remove the '//' to enable...
// Place your scripts here!
-//npc: npc/location/to/script.txt
+//"npc/location/to/script.txt",
//================= Basic Scripts =========================================
-//npc: npc/custom/itembind.txt
-//npc: npc/custom/warper.txt
-//npc: npc/custom/jobmaster.txt
-//npc: npc/custom/platinum_skills.txt
-//npc: npc/custom/healer.txt
-//npc: npc/custom/breeder.txt
-//npc: npc/custom/itemmall.txt
-//npc: npc/custom/stylist.txt
-//npc: npc/custom/resetnpc.txt
-//npc: npc/custom/card_remover.txt
-//npc: npc/custom/item_signer.txt
-//npc: npc/custom/woe_controller.txt
+//"npc/custom/itembind.txt",
+//"npc/custom/warper.txt",
+//"npc/custom/jobmaster.txt",
+//"npc/custom/platinum_skills.txt",
+//"npc/custom/healer.txt",
+//"npc/custom/breeder.txt",
+//"npc/custom/itemmall.txt",
+//"npc/custom/stylist.txt",
+//"npc/custom/resetnpc.txt",
+//"npc/custom/card_remover.txt",
+//"npc/custom/item_signer.txt",
+//"npc/custom/woe_controller.txt",
//================= Other Scripts =========================================
// -- MVP Arena
-//npc: npc/custom/etc/mvp_arena.txt
+//"npc/custom/etc/mvp_arena.txt",
// -- Penal Servitude (Jails Quest)
-//npc: npc/custom/etc/penal_servitude.txt
+//"npc/custom/etc/penal_servitude.txt",
// -- Banks
-//npc: npc/custom/etc/bank_kafra.txt
-//npc: npc/custom/etc/bank.txt
+//"npc/custom/etc/bank_kafra.txt",
+//"npc/custom/etc/bank.txt",
// -- Lottery (very flexible)
-//npc: npc/custom/etc/lottery.txt
+//"npc/custom/etc/lottery.txt",
// -- Stock Market (Play on it, earn money, very flexible)
-//npc: npc/custom/etc/stock_market.txt
+//"npc/custom/etc/stock_market.txt",
// -- Russian Roulette + Rock Scissors Paper (warning! contains OBB/OVB/OCA/etc. prizes!)
-//npc: npc/custom/etc/rpsroulette.txt
+//"npc/custom/etc/rpsroulette.txt",
// -- Black Jack
-//npc: npc/custom/etc/blackjack.txt
+//"npc/custom/etc/blackjack.txt",
// -- Hire ninja squads to assassinate an enemy!
-//npc: npc/custom/etc/shifty_assassin.txt
+//"npc/custom/etc/shifty_assassin.txt",
// -- Train your monsters to fight against other players' monsters
-//npc: npc/custom/etc/monster_arena.txt
+//"npc/custom/etc/monster_arena.txt",
// -- Raceway mini-game
-//npc: npc/custom/etc/morroc_raceway.txt
+//"npc/custom/etc/morroc_raceway.txt",
// -- Random change of Drop/Exp rates 1x ~ 1.5x every 6 hours on your server
-//npc: npc/custom/etc/floating_rates.txt
+//"npc/custom/etc/floating_rates.txt",
// -- Wedding script that supports same-sex marriages
-//npc: npc/custom/etc/marriage.txt
+//"npc/custom/etc/marriage.txt",
// -- Warper that works only after locations are unlocked
-//npc: npc/custom/etc/quest_warper.txt
+//"npc/custom/etc/quest_warper.txt",
//================= Quest Scripts =========================================
// -- Dynamic Quest Scripts
-//npc: npc/custom/quests/hunting_missions.txt
-//npc: npc/custom/quests/quest_shop.txt
-//npc: npc/custom/quests/questboard.txt
+//"npc/custom/quests/hunting_missions.txt",
+//"npc/custom/quests/quest_shop.txt",
+//"npc/custom/quests/questboard.txt",
// -- Treasure Hunters Guild Quests (40 Quests + Special Guild Shop)
-//npc: npc/custom/quests/thq/THQS_ChatingNPC.txt
-//npc: npc/custom/quests/thq/THQS_GuildNPC.txt
-//npc: npc/custom/quests/thq/THQS_QuestNPC.txt
-//npc: npc/custom/quests/thq/THQS_Quests.txt
-//npc: npc/custom/quests/thq/THQS_TTShop.txt
+//"npc/custom/quests/thq/THQS_ChatingNPC.txt",
+//"npc/custom/quests/thq/THQS_GuildNPC.txt",
+//"npc/custom/quests/thq/THQS_QuestNPC.txt",
+//"npc/custom/quests/thq/THQS_Quests.txt",
+//"npc/custom/quests/thq/THQS_TTShop.txt",
// -- Equipment Quests
-//npc: npc/custom/quests/elvenear.txt
-//npc: npc/custom/quests/sunglasses.txt
-//npc: npc/custom/quests/bandit_beard.txt
-//npc: npc/custom/quests/event_6_new_hats.txt
-//npc: npc/custom/quests/may_hats.txt
-//npc: npc/custom/quests/kings_items.txt
+//"npc/custom/quests/elvenear.txt",
+//"npc/custom/quests/sunglasses.txt",
+//"npc/custom/quests/bandit_beard.txt",
+//"npc/custom/quests/event_6_new_hats.txt",
+//"npc/custom/quests/may_hats.txt",
+//"npc/custom/quests/kings_items.txt",
// -- Misc Item Quests
-//npc: npc/custom/quests/dead_branch.txt
-//npc: npc/custom/quests/berzebub.txt
-//npc: npc/custom/quests/jewel_case.txt
+//"npc/custom/quests/dead_branch.txt",
+//"npc/custom/quests/berzebub.txt",
+//"npc/custom/quests/jewel_case.txt",
// -- Godly Equipment Quests (be careful!)
-//npc: npc/custom/quests/valhallen.txt
-//npc: npc/custom/quests/kaho_balmung.txt
-//npc: npc/custom/quests/kahohorn.txt
+//"npc/custom/quests/valhallen.txt",
+//"npc/custom/quests/kaho_balmung.txt",
+//"npc/custom/quests/kahohorn.txt",
//================= Event Scripts =========================================
// -- Daily Events
-//npc: npc/custom/events/disguise.txt
-//npc: npc/custom/events/mushroom_event.txt
-//npc: npc/custom/events/cluckers.txt
+//"npc/custom/events/disguise.txt",
+//"npc/custom/events/mushroom_event.txt",
+//"npc/custom/events/cluckers.txt",
// -- Holiday Events
-//npc: npc/custom/events/xmas_rings_event.txt
-//npc: npc/custom/events/valentinesdayexp.txt
-//npc: npc/custom/events/hallow06.txt
-//npc: npc/custom/events/uneasy_cemetery.txt
+//"npc/custom/events/xmas_rings_event.txt",
+//"npc/custom/events/valentinesdayexp.txt",
+//"npc/custom/events/hallow06.txt",
+//"npc/custom/events/uneasy_cemetery.txt",
//================= Unofficial Scripts ====================================
// -- Unofficial Airplane script
-//npc: npc/custom/etc/airplane.txt
+//"npc/custom/etc/airplane.txt",
// -- Thanatos Tower Statues Quest
-//npc: npc/custom/quests/tha_statues.txt
+//"npc/custom/quests/tha_statues.txt",
// -- Custom quests from official Umbalian Quests
-//npc: npc/custom/quests/sphinx_mask.txt
-//npc: npc/custom/quests/umbalian_language.txt
+//"npc/custom/quests/sphinx_mask.txt",
+//"npc/custom/quests/umbalian_language.txt",
// -- Unofficial Battlegrounds
-//npc: npc/custom/battleground/bg_common.txt
-//npc: npc/custom/battleground/bg_tierra_01.txt
-//npc: npc/custom/battleground/bg_tierra_02.txt
-//npc: npc/custom/battleground/bg_flavius_01.txt
-//npc: npc/custom/battleground/bg_flavius_02.txt
-//npc: npc/custom/battleground/bg_kvm01.txt
-//npc: npc/custom/battleground/bg_kvm02.txt
-//npc: npc/custom/battleground/bg_kvm03.txt
+//"npc/custom/battleground/bg_common.txt",
+//"npc/custom/battleground/bg_tierra_01.txt",
+//"npc/custom/battleground/bg_tierra_02.txt",
+//"npc/custom/battleground/bg_flavius_01.txt",
+//"npc/custom/battleground/bg_flavius_02.txt",
+//"npc/custom/battleground/bg_kvm01.txt",
+//"npc/custom/battleground/bg_kvm02.txt",
+//"npc/custom/battleground/bg_kvm03.txt",
diff --git a/npc/scripts_dev.conf b/npc/scripts_dev.conf
index 2d282de6e..ff4ef4c4f 100644
--- a/npc/scripts_dev.conf
+++ b/npc/scripts_dev.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-2016 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
@@ -31,4 +31,4 @@
//=========================================================================
//================= Script Engine self-test ===============================
-//npc: npc/dev/test.txt
+//"npc: npc/dev/test.txt",
diff --git a/npc/scripts_jobs.conf b/npc/scripts_jobs.conf
index 8731d773c..c95f9da9d 100644
--- a/npc/scripts_jobs.conf
+++ b/npc/scripts_jobs.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -30,68 +30,68 @@
//================= Job Quests ============================================
// - 1-1 Expanded
-npc: npc/jobs/1-1e/gunslinger.txt
-npc: npc/jobs/1-1e/ninja.txt
-npc: npc/jobs/1-1e/taekwon.txt
+"npc/jobs/1-1e/gunslinger.txt",
+"npc/jobs/1-1e/ninja.txt",
+"npc/jobs/1-1e/taekwon.txt",
// - 2-1
-npc: npc/jobs/2-1/assassin.txt
-npc: npc/jobs/2-1/blacksmith.txt
-npc: npc/jobs/2-1/hunter.txt
-npc: npc/jobs/2-1/knight.txt
-npc: npc/jobs/2-1/priest.txt
-npc: npc/jobs/2-1/wizard.txt
+"npc/jobs/2-1/assassin.txt",
+"npc/jobs/2-1/blacksmith.txt",
+"npc/jobs/2-1/hunter.txt",
+"npc/jobs/2-1/knight.txt",
+"npc/jobs/2-1/priest.txt",
+"npc/jobs/2-1/wizard.txt",
// - 2-1 Transcended
-npc: npc/jobs/2-1a/AssassinCross.txt
-npc: npc/jobs/2-1a/HighPriest.txt
-npc: npc/jobs/2-1a/HighWizard.txt
-npc: npc/jobs/2-1a/LordKnight.txt
-npc: npc/jobs/2-1a/Sniper.txt
-npc: npc/jobs/2-1a/WhiteSmith.txt
+"npc/jobs/2-1a/AssassinCross.txt",
+"npc/jobs/2-1a/HighPriest.txt",
+"npc/jobs/2-1a/HighWizard.txt",
+"npc/jobs/2-1a/LordKnight.txt",
+"npc/jobs/2-1a/Sniper.txt",
+"npc/jobs/2-1a/WhiteSmith.txt",
// - 2-1 Expanded
-npc: npc/jobs/2-1e/StarGladiator.txt
+"npc/jobs/2-1e/StarGladiator.txt",
// - 2-2
-npc: npc/jobs/2-2/alchemist.txt
-npc: npc/jobs/2-2/bard.txt
-npc: npc/jobs/2-2/crusader.txt
-npc: npc/jobs/2-2/dancer.txt
-npc: npc/jobs/2-2/monk.txt
-npc: npc/jobs/2-2/rogue.txt
-npc: npc/jobs/2-2/sage.txt
+"npc/jobs/2-2/alchemist.txt",
+"npc/jobs/2-2/bard.txt",
+"npc/jobs/2-2/crusader.txt",
+"npc/jobs/2-2/dancer.txt",
+"npc/jobs/2-2/monk.txt",
+"npc/jobs/2-2/rogue.txt",
+"npc/jobs/2-2/sage.txt",
// - 2-2 Transcended
-npc: npc/jobs/2-2a/Champion.txt
-npc: npc/jobs/2-2a/Clown.txt
-npc: npc/jobs/2-2a/Creator.txt
-npc: npc/jobs/2-2a/Gypsy.txt
-npc: npc/jobs/2-2a/Paladin.txt
-npc: npc/jobs/2-2a/Professor.txt
-npc: npc/jobs/2-2a/Stalker.txt
+"npc/jobs/2-2a/Champion.txt",
+"npc/jobs/2-2a/Clown.txt",
+"npc/jobs/2-2a/Creator.txt",
+"npc/jobs/2-2a/Gypsy.txt",
+"npc/jobs/2-2a/Paladin.txt",
+"npc/jobs/2-2a/Professor.txt",
+"npc/jobs/2-2a/Stalker.txt",
// - 2-2 Expanded
-npc: npc/jobs/2-2e/SoulLinker.txt
+"npc/jobs/2-2e/SoulLinker.txt",
// - Novice
-npc: npc/jobs/novice/supernovice.txt
+"npc/jobs/novice/supernovice.txt",
// - Transcended Quest (2-x -> High Novice)
-npc: npc/jobs/valkyrie.txt
+"npc/jobs/valkyrie.txt",
//================= Skill Quests ==========================================
// - 1-1
-npc: npc/quests/skills/acolyte_skills.txt
-npc: npc/quests/skills/archer_skills.txt
-npc: npc/quests/skills/mage_skills.txt
-npc: npc/quests/skills/merchant_skills.txt
-npc: npc/quests/skills/swordman_skills.txt
-npc: npc/quests/skills/thief_skills.txt
+"npc/quests/skills/acolyte_skills.txt",
+"npc/quests/skills/archer_skills.txt",
+"npc/quests/skills/mage_skills.txt",
+"npc/quests/skills/merchant_skills.txt",
+"npc/quests/skills/swordman_skills.txt",
+"npc/quests/skills/thief_skills.txt",
// - 2-1
-npc: npc/quests/skills/assassin_skills.txt
-npc: npc/quests/skills/blacksmith_skills.txt
-npc: npc/quests/skills/hunter_skills.txt
-npc: npc/quests/skills/knight_skills.txt
-npc: npc/quests/skills/priest_skills.txt
-npc: npc/quests/skills/rogue_skills.txt
-npc: npc/quests/skills/wizard_skills.txt
+"npc/quests/skills/assassin_skills.txt",
+"npc/quests/skills/blacksmith_skills.txt",
+"npc/quests/skills/hunter_skills.txt",
+"npc/quests/skills/knight_skills.txt",
+"npc/quests/skills/priest_skills.txt",
+"npc/quests/skills/rogue_skills.txt",
+"npc/quests/skills/wizard_skills.txt",
// - 2-2
-npc: npc/quests/skills/alchemist_skills.txt
-npc: npc/quests/skills/bard_skills.txt
-npc: npc/quests/skills/crusader_skills.txt
-npc: npc/quests/skills/dancer_skills.txt
-npc: npc/quests/skills/monk_skills.txt
-npc: npc/quests/skills/sage_skills.txt
+"npc/quests/skills/alchemist_skills.txt",
+"npc/quests/skills/bard_skills.txt",
+"npc/quests/skills/crusader_skills.txt",
+"npc/quests/skills/dancer_skills.txt",
+"npc/quests/skills/monk_skills.txt",
+"npc/quests/skills/sage_skills.txt",
diff --git a/npc/scripts_mapflags.conf b/npc/scripts_mapflags.conf
index 0a4f64069..c662f7562 100644
--- a/npc/scripts_mapflags.conf
+++ b/npc/scripts_mapflags.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -28,32 +28,32 @@
//= Map Flags
//=========================================================================
-npc: npc/mapflag/nopvp.txt
-npc: npc/mapflag/gvg.txt
-npc: npc/mapflag/jail.txt
-npc: npc/mapflag/nightmare.txt
-npc: npc/mapflag/nobranch.txt
-npc: npc/mapflag/noexp.txt
-npc: npc/mapflag/noicewall.txt
-npc: npc/mapflag/noloot.txt
-npc: npc/mapflag/nomemo.txt
-npc: npc/mapflag/nopenalty.txt
-npc: npc/mapflag/nosave.txt
-npc: npc/mapflag/noteleport.txt
-npc: npc/mapflag/noreturn.txt
-npc: npc/mapflag/noskill.txt
-npc: npc/mapflag/nowarp.txt
-npc: npc/mapflag/nowarpto.txt
-npc: npc/mapflag/partylock.txt
-npc: npc/mapflag/pvp.txt
-npc: npc/mapflag/pvp_noparty.txt
-npc: npc/mapflag/pvp_noguild.txt
-npc: npc/mapflag/night.txt
-npc: npc/mapflag/zone.txt
-npc: npc/mapflag/battleground.txt
-npc: npc/mapflag/novending.txt
-npc: npc/mapflag/town.txt
-npc: npc/mapflag/reset.txt
-npc: npc/mapflag/skillmodifier.txt
-npc: npc/mapflag/skillduration.txt
-npc: npc/mapflag/notomb.txt
+"npc/mapflag/nopvp.txt",
+"npc/mapflag/gvg.txt",
+"npc/mapflag/jail.txt",
+"npc/mapflag/nightmare.txt",
+"npc/mapflag/nobranch.txt",
+"npc/mapflag/noexp.txt",
+"npc/mapflag/noicewall.txt",
+"npc/mapflag/noloot.txt",
+"npc/mapflag/nomemo.txt",
+"npc/mapflag/nopenalty.txt",
+"npc/mapflag/nosave.txt",
+"npc/mapflag/noteleport.txt",
+"npc/mapflag/noreturn.txt",
+"npc/mapflag/noskill.txt",
+"npc/mapflag/nowarp.txt",
+"npc/mapflag/nowarpto.txt",
+"npc/mapflag/partylock.txt",
+"npc/mapflag/pvp.txt",
+"npc/mapflag/pvp_noparty.txt",
+"npc/mapflag/pvp_noguild.txt",
+"npc/mapflag/night.txt",
+"npc/mapflag/zone.txt",
+"npc/mapflag/battleground.txt",
+"npc/mapflag/novending.txt",
+"npc/mapflag/town.txt",
+"npc/mapflag/reset.txt",
+"npc/mapflag/skillmodifier.txt",
+"npc/mapflag/skillduration.txt",
+"npc/mapflag/notomb.txt",
diff --git a/npc/scripts_monsters.conf b/npc/scripts_monsters.conf
index 2c4cc9ea4..beab8fdf6 100644
--- a/npc/scripts_monsters.conf
+++ b/npc/scripts_monsters.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,7 +29,7 @@
//=========================================================================
//================= Misc Spawns ===========================================
-npc: npc/mobs/citycleaners.txt
-npc: npc/mobs/jail.txt
-npc: npc/mobs/pvp.txt
-npc: npc/mobs/towns.txt
+"npc/mobs/citycleaners.txt",
+"npc/mobs/jail.txt",
+"npc/mobs/pvp.txt",
+"npc/mobs/towns.txt",
diff --git a/npc/scripts_removed.conf b/npc/scripts_removed.conf
new file mode 100644
index 000000000..c1089466c
--- /dev/null
+++ b/npc/scripts_removed.conf
@@ -0,0 +1,37 @@
+//================= Hercules Configuration ================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2014-2016 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/>.
+//=========================================================================
+//= Hercules global npc removed list
+//=========================================================================
+// All NPCs that you wish to remove from your loading list should be put in
+// this file
+//=========================================================================
+
+// If instead of a path to an NPC is put "all" no file will be loaded
+npc_removed_list: (
+ //"all",
+ //"path/to/npc",
+) // removed
diff --git a/npc/scripts_warps.conf b/npc/scripts_warps.conf
index 05dd4ede2..c89d75089 100644
--- a/npc/scripts_warps.conf
+++ b/npc/scripts_warps.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -29,87 +29,87 @@
//=========================================================================
//================= Cities ================================================
-npc: npc/warps/cities/alberta.txt
-npc: npc/warps/cities/aldebaran.txt
-npc: npc/warps/cities/amatsu.txt
-npc: npc/warps/cities/ayothaya.txt
-npc: npc/warps/cities/comodo.txt
-npc: npc/warps/cities/einbech.txt
-npc: npc/warps/cities/einbroch.txt
-npc: npc/warps/cities/geffen.txt
-npc: npc/warps/cities/gonryun.txt
-npc: npc/warps/cities/hugel.txt
-npc: npc/warps/cities/lighthalzen.txt
-npc: npc/warps/cities/louyang.txt
-npc: npc/warps/cities/lutie.txt
-npc: npc/warps/cities/manuk.txt
-npc: npc/warps/cities/mid_camp.txt
-npc: npc/warps/cities/morroc.txt
-npc: npc/warps/cities/moscovia.txt
-npc: npc/warps/cities/nameless.txt
-npc: npc/warps/cities/niflheim.txt
-npc: npc/warps/cities/payon.txt
-npc: npc/warps/cities/prontera.txt
-npc: npc/warps/cities/splendide.txt
-npc: npc/warps/cities/umbala.txt
-npc: npc/warps/cities/veins.txt
-npc: npc/warps/cities/yuno.txt
+"npc/warps/cities/alberta.txt",
+"npc/warps/cities/aldebaran.txt",
+"npc/warps/cities/amatsu.txt",
+"npc/warps/cities/ayothaya.txt",
+"npc/warps/cities/comodo.txt",
+"npc/warps/cities/einbech.txt",
+"npc/warps/cities/einbroch.txt",
+"npc/warps/cities/geffen.txt",
+"npc/warps/cities/gonryun.txt",
+"npc/warps/cities/hugel.txt",
+"npc/warps/cities/lighthalzen.txt",
+"npc/warps/cities/louyang.txt",
+"npc/warps/cities/lutie.txt",
+"npc/warps/cities/manuk.txt",
+"npc/warps/cities/mid_camp.txt",
+"npc/warps/cities/morroc.txt",
+"npc/warps/cities/moscovia.txt",
+"npc/warps/cities/nameless.txt",
+"npc/warps/cities/niflheim.txt",
+"npc/warps/cities/payon.txt",
+"npc/warps/cities/prontera.txt",
+"npc/warps/cities/splendide.txt",
+"npc/warps/cities/umbala.txt",
+"npc/warps/cities/veins.txt",
+"npc/warps/cities/yuno.txt",
//================= Dungeons ==============================================
-npc: npc/warps/dungeons/abbey.txt
-npc: npc/warps/dungeons/abyss.txt
-npc: npc/warps/dungeons/alde_dun.txt
-npc: npc/warps/dungeons/ama_dun.txt
-npc: npc/warps/dungeons/anthell.txt
-npc: npc/warps/dungeons/ayo_dun.txt
-npc: npc/warps/dungeons/beach_dun.txt
-npc: npc/warps/dungeons/c_tower.txt
-npc: npc/warps/dungeons/ein_dun.txt
-npc: npc/warps/dungeons/gef_dun.txt
-npc: npc/warps/dungeons/gon_dun.txt
-npc: npc/warps/dungeons/ice_dun.txt
-npc: npc/warps/dungeons/in_sphinx.txt
-npc: npc/warps/dungeons/iz_dun.txt
-npc: npc/warps/dungeons/juperos.txt
-npc: npc/warps/dungeons/kh_dun.txt
-npc: npc/warps/dungeons/lhz_dun.txt
-npc: npc/warps/dungeons/lou_dun.txt
-npc: npc/warps/dungeons/mag_dun.txt
-npc: npc/warps/dungeons/mjo_dun.txt
-npc: npc/warps/dungeons/moc_pryd.txt
-npc: npc/warps/dungeons/mosk_dun.txt
-npc: npc/warps/dungeons/odin.txt
-npc: npc/warps/dungeons/orcsdun.txt
-npc: npc/warps/dungeons/pay_dun.txt
-npc: npc/warps/dungeons/prt_maze.txt
-npc: npc/warps/dungeons/ra_san.txt
-npc: npc/warps/dungeons/tha_t.txt
-npc: npc/warps/dungeons/thor_v.txt
-npc: npc/warps/dungeons/treasure.txt
-npc: npc/warps/dungeons/tur_dun.txt
-npc: npc/warps/dungeons/um_dun.txt
-npc: npc/warps/dungeons/xmas_dun.txt
+"npc/warps/dungeons/abbey.txt",
+"npc/warps/dungeons/abyss.txt",
+"npc/warps/dungeons/alde_dun.txt",
+"npc/warps/dungeons/ama_dun.txt",
+"npc/warps/dungeons/anthell.txt",
+"npc/warps/dungeons/ayo_dun.txt",
+"npc/warps/dungeons/beach_dun.txt",
+"npc/warps/dungeons/c_tower.txt",
+"npc/warps/dungeons/ein_dun.txt",
+"npc/warps/dungeons/gef_dun.txt",
+"npc/warps/dungeons/gon_dun.txt",
+"npc/warps/dungeons/ice_dun.txt",
+"npc/warps/dungeons/in_sphinx.txt",
+"npc/warps/dungeons/iz_dun.txt",
+"npc/warps/dungeons/juperos.txt",
+"npc/warps/dungeons/kh_dun.txt",
+"npc/warps/dungeons/lhz_dun.txt",
+"npc/warps/dungeons/lou_dun.txt",
+"npc/warps/dungeons/mag_dun.txt",
+"npc/warps/dungeons/mjo_dun.txt",
+"npc/warps/dungeons/moc_pryd.txt",
+"npc/warps/dungeons/mosk_dun.txt",
+"npc/warps/dungeons/odin.txt",
+"npc/warps/dungeons/orcsdun.txt",
+"npc/warps/dungeons/pay_dun.txt",
+"npc/warps/dungeons/prt_maze.txt",
+"npc/warps/dungeons/ra_san.txt",
+"npc/warps/dungeons/tha_t.txt",
+"npc/warps/dungeons/thor_v.txt",
+"npc/warps/dungeons/treasure.txt",
+"npc/warps/dungeons/tur_dun.txt",
+"npc/warps/dungeons/um_dun.txt",
+"npc/warps/dungeons/xmas_dun.txt",
//================= Fields ================================================
-npc: npc/warps/fields/abyss_warper.txt
-npc: npc/warps/fields/amatsu_fild.txt
-npc: npc/warps/fields/ein_fild.txt
-npc: npc/warps/fields/gefenia.txt
-npc: npc/warps/fields/glastheim.txt
-npc: npc/warps/fields/jawaii.txt
-npc: npc/warps/fields/lhalzen_fild.txt
-npc: npc/warps/fields/lutie_fild.txt
-npc: npc/warps/fields/man_fild.txt
-npc: npc/warps/fields/mtmjolnir.txt
-npc: npc/warps/fields/spl_fild.txt
-npc: npc/warps/fields/umbala_fild.txt
+"npc/warps/fields/abyss_warper.txt",
+"npc/warps/fields/amatsu_fild.txt",
+"npc/warps/fields/ein_fild.txt",
+"npc/warps/fields/gefenia.txt",
+"npc/warps/fields/glastheim.txt",
+"npc/warps/fields/jawaii.txt",
+"npc/warps/fields/lhalzen_fild.txt",
+"npc/warps/fields/lutie_fild.txt",
+"npc/warps/fields/man_fild.txt",
+"npc/warps/fields/mtmjolnir.txt",
+"npc/warps/fields/spl_fild.txt",
+"npc/warps/fields/umbala_fild.txt",
//================= Others ================================================
-npc: npc/warps/other/airplane.txt
-npc: npc/warps/other/arena.txt
-npc: npc/warps/other/god.txt
-npc: npc/warps/other/jobquests.txt
-npc: npc/warps/other/kiel.txt
-npc: npc/warps/other/other.txt
-npc: npc/warps/guildcastles.txt
-npc: npc/warps/pvp.txt
+"npc/warps/other/airplane.txt",
+"npc/warps/other/arena.txt",
+"npc/warps/other/god.txt",
+"npc/warps/other/jobquests.txt",
+"npc/warps/other/kiel.txt",
+"npc/warps/other/other.txt",
+"npc/warps/guildcastles.txt",
+"npc/warps/pvp.txt",
diff --git a/npc/scripts_woe.conf b/npc/scripts_woe.conf
index 4fdaf5731..695a1a398 100644
--- a/npc/scripts_woe.conf
+++ b/npc/scripts_woe.conf
@@ -9,7 +9,7 @@
//= This file is part of Hercules.
//= http://herc.ws - http://github.com/HerculesWS/Hercules
//=
-//= Copyright (C) 2012-2015 Hercules Dev Team
+//= Copyright (C) 2012-2016 Hercules Dev Team
//= Copyright (C) Athena Dev Teams
//=
//= Hercules is free software: you can redistribute it and/or modify
@@ -30,52 +30,52 @@
//================= War of Emperium =======================================
// - Guild WoE time settings
-npc: npc/woe-fe/agit_controller.txt
+"npc/woe-fe/agit_controller.txt",
// - Guild NPC Template file
-npc: npc/woe-fe/agit_main.txt
+"npc/woe-fe/agit_main.txt",
// - Al De Baran
-npc: npc/woe-fe/aldeg_cas01.txt
-npc: npc/woe-fe/aldeg_cas02.txt
-npc: npc/woe-fe/aldeg_cas03.txt
-npc: npc/woe-fe/aldeg_cas04.txt
-npc: npc/woe-fe/aldeg_cas05.txt
+"npc/woe-fe/aldeg_cas01.txt",
+"npc/woe-fe/aldeg_cas02.txt",
+"npc/woe-fe/aldeg_cas03.txt",
+"npc/woe-fe/aldeg_cas04.txt",
+"npc/woe-fe/aldeg_cas05.txt",
// - Geffen
-npc: npc/woe-fe/gefg_cas01.txt
-npc: npc/woe-fe/gefg_cas02.txt
-npc: npc/woe-fe/gefg_cas03.txt
-npc: npc/woe-fe/gefg_cas04.txt
-npc: npc/woe-fe/gefg_cas05.txt
+"npc/woe-fe/gefg_cas01.txt",
+"npc/woe-fe/gefg_cas02.txt",
+"npc/woe-fe/gefg_cas03.txt",
+"npc/woe-fe/gefg_cas04.txt",
+"npc/woe-fe/gefg_cas05.txt",
// - Payon
-npc: npc/woe-fe/payg_cas01.txt
-npc: npc/woe-fe/payg_cas02.txt
-npc: npc/woe-fe/payg_cas03.txt
-npc: npc/woe-fe/payg_cas04.txt
-npc: npc/woe-fe/payg_cas05.txt
+"npc/woe-fe/payg_cas01.txt",
+"npc/woe-fe/payg_cas02.txt",
+"npc/woe-fe/payg_cas03.txt",
+"npc/woe-fe/payg_cas04.txt",
+"npc/woe-fe/payg_cas05.txt",
// - Prontera
-npc: npc/woe-fe/prtg_cas01.txt
-npc: npc/woe-fe/prtg_cas02.txt
-npc: npc/woe-fe/prtg_cas03.txt
-npc: npc/woe-fe/prtg_cas04.txt
-npc: npc/woe-fe/prtg_cas05.txt
+"npc/woe-fe/prtg_cas01.txt",
+"npc/woe-fe/prtg_cas02.txt",
+"npc/woe-fe/prtg_cas03.txt",
+"npc/woe-fe/prtg_cas04.txt",
+"npc/woe-fe/prtg_cas05.txt",
// - Treasure Room Protection
-//npc: npc/woe-fe/trs_rp.txt
+//"npc/woe-fe/trs_rp.txt",
//================= War of Emperium Second Edition ========================
// - WoE SE time settings
-npc: npc/woe-se/agit_start_se.txt
+"npc/woe-se/agit_start_se.txt",
// - Guild NPC Template file
-npc: npc/woe-se/agit_main_se.txt
+"npc/woe-se/agit_main_se.txt",
// - Town Flags
-npc: npc/woe-se/guild_flags.txt
+"npc/woe-se/guild_flags.txt",
// - Arunafeltz
-npc: npc/woe-se/arug_cas01.txt
-npc: npc/woe-se/arug_cas02.txt
-npc: npc/woe-se/arug_cas03.txt
-npc: npc/woe-se/arug_cas04.txt
-npc: npc/woe-se/arug_cas05.txt
+"npc/woe-se/arug_cas01.txt",
+"npc/woe-se/arug_cas02.txt",
+"npc/woe-se/arug_cas03.txt",
+"npc/woe-se/arug_cas04.txt",
+"npc/woe-se/arug_cas05.txt",
// - Schwaltzvalt
-npc: npc/woe-se/schg_cas01.txt
-npc: npc/woe-se/schg_cas02.txt
-npc: npc/woe-se/schg_cas03.txt
-npc: npc/woe-se/schg_cas04.txt
-npc: npc/woe-se/schg_cas05.txt
+"npc/woe-se/schg_cas01.txt",
+"npc/woe-se/schg_cas02.txt",
+"npc/woe-se/schg_cas03.txt",
+"npc/woe-se/schg_cas04.txt",
+"npc/woe-se/schg_cas05.txt",
diff --git a/src/map/map.c b/src/map/map.c
index 37885cd0b..a6e19d88f 100644
--- a/src/map/map.c
+++ b/src/map/map.c
@@ -4113,44 +4113,91 @@ bool map_config_read(const char *filename, bool imported)
return retval;
}
-void map_reloadnpc_sub(char *cfgName) {
- char line[1024], w1[1024], w2[1024];
- FILE *fp;
-
- nullpo_retv(cfgName);
- fp = fopen(cfgName,"r");
- if (fp == NULL) {
- ShowError("Map configuration file not found at: %s\n", cfgName);
- return;
+/**
+ * Reads 'npc_global_list'/'npc_removed_list' and adds or removes NPC sources
+ * from map-server.
+ *
+ * @param filename Path to configuration file (used in error and warning messages).
+ * @param imported Whether the current config is imported from another file.
+ *
+ * @retval false in case of error.
+ */
+bool map_read_npclist(const char *filename, bool imported)
+{
+ struct config_t config;
+ struct config_setting_t *setting = NULL;
+ const char *import = NULL;
+ bool retval = true;
+
+ struct DBMap *deleted_npcs;
+
+ nullpo_retr(false, filename);
+
+ if (!libconfig->load_file(&config, filename))
+ return false;
+
+ deleted_npcs = strdb_alloc(DB_OPT_DUP_KEY|DB_OPT_RELEASE_KEY, MAP_NAME_LENGTH);
+
+ // Remove maps
+ if ((setting = libconfig->lookup(&config, "npc_removed_list")) != NULL) {
+ int i, del_count = libconfig->setting_length(setting);
+ for (i = 0; i < del_count; i++) {
+ const char *scriptname;
+
+ if ((scriptname = libconfig->setting_get_string_elem(setting, i)) == NULL || scriptname[0] == '\0')
+ continue;
+
+ strdb_put(deleted_npcs, scriptname, NULL);
+
+ if (imported) // Map list is empty on the first run, only do this for imported files.
+ npc->delsrcfile(scriptname);
+ }
}
- while (fgets(line, sizeof(line), fp)) {
- char* ptr;
+ if ((setting = libconfig->lookup(&config, "npc_global_list")) != NULL) {
+ int i, count = libconfig->setting_length(setting);
+ if (count <= 0) {
+ if (!imported) {
+ ShowWarning("map_read_npclist: no NPCs found in %s!\n", filename);
+ retval = false;
+ }
+ }
+ for (i = 0; i < count; i++) {
+ const char *scriptname;
- if (line[0] == '/' && line[1] == '/')
- continue;
- if ((ptr = strstr(line, "//")) != NULL)
- *ptr = '\n'; //Strip comments
- if (sscanf(line, "%1023[^:]: %1023[^\t\r\n]", w1, w2) < 2)
- continue;
+ if ((scriptname = libconfig->setting_get_string_elem(setting, i)) == NULL || scriptname[0] == '\0')
+ continue;
- //Strip trailing spaces
- ptr = w2 + strlen(w2);
- while (--ptr >= w2 && *ptr == ' ');
- ptr++;
- *ptr = '\0';
-
- if (strcmpi(w1, "npc") == 0)
- npc->addsrcfile(w2);
- else if (strcmpi(w1, "import") == 0)
- map->reloadnpc_sub(w2);
- else if (strcmpi(w1, "delnpc") == 0)
- npc->delsrcfile(w2);
- else
- ShowWarning("Unknown setting '%s' in file %s\n", w1, cfgName);
+ if (strdb_exists(deleted_npcs, scriptname))
+ continue;
+
+ npc->addsrcfile(scriptname);
+ }
+ } else {
+ ShowError("map_read_npclist: npc_global_list was not found in %s!\n", filename);
+ retval = false;
}
- fclose(fp);
+ db_destroy(deleted_npcs);
+
+ // import should overwrite any previous configuration, so it should be called last
+ if (libconfig->lookup_string(&config, "import", &import) == CONFIG_TRUE) {
+ const char *base_npclist = NULL;
+#ifdef RENEWAL
+ base_npclist = "npc/re/scripts_main.conf";
+#else
+ base_npclist = "npc/pre-re/scripts_main.conf";
+#endif
+ if (strcmp(import, filename) == 0 || strcmp(import, base_npclist) == 0) {
+ ShowWarning("map_read_npclist: Loop detected! Skipping 'import'...\n");
+ } else {
+ if (!map->read_npclist(import, true))
+ retval = false;
+ }
+ }
+
+ libconfig->destroy(&config);
+ return retval;
}
/**
@@ -4164,9 +4211,9 @@ void map_reloadnpc(bool clear) {
npc->addsrcfile("clear"); // this will clear the current script list
#ifdef RENEWAL
- map->reloadnpc_sub("npc/re/scripts_main.conf");
+ map->read_npclist("npc/re/scripts_main.conf", false);
#else
- map->reloadnpc_sub("npc/pre-re/scripts_main.conf");
+ map->read_npclist("npc/pre-re/scripts_main.conf", false);
#endif
// Append extra scripts
@@ -6754,7 +6801,7 @@ void map_defaults(void) {
map->readgat = map_readgat;
map->readallmaps = map_readallmaps;
map->config_read = map_config_read;
- map->reloadnpc_sub = map_reloadnpc_sub;
+ map->read_npclist = map_read_npclist;
map->inter_config_read = inter_config_read;
map->inter_config_read_database_names = inter_config_read_database_names;
map->inter_config_read_connection = inter_config_read_connection;
diff --git a/src/map/map.h b/src/map/map.h
index 6514ef0af..723691971 100644
--- a/src/map/map.h
+++ b/src/map/map.h
@@ -1188,7 +1188,7 @@ END_ZEROED_BLOCK;
int (*readgat) (struct map_data *m);
int (*readallmaps) (void);
bool (*config_read) (const char *filename, bool imported);
- void (*reloadnpc_sub) (char *cfgName);
+ bool (*read_npclist) (const char *filename, bool imported);
bool (*inter_config_read) (const char *filename, bool imported);
bool (*inter_config_read_database_names) (const char *filename, const struct config_t *config, bool imported);
bool (*inter_config_read_connection) (const char *filename, const struct config_t *config, bool imported);