From 69543863009ec5f51d1feb710aa355ceecbaea6f Mon Sep 17 00:00:00 2001
From: brianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Date: Sun, 22 Apr 2012 15:17:49 +0000
Subject: - Follow-up to r15923: fixed renamed file not being svn-copied (and
 lacking svn history). - Added svn:eol-style=native property for some recently
 added text files.

git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15924 54d463be-8e91-2dee-dedb-b68131a5f0ec
---
 db/skill_improvise_db.txt           |   64 +-
 db/skill_reproduce_db.txt           |  408 +++---
 npc/custom/healers/heal.txt         |   53 +-
 npc/custom/healers/heal_payment.txt |   75 +-
 npc/events/bossnia.txt              |  244 ++--
 npc/guild/agit_main.txt             | 2696 +++++++++++++++++------------------
 npc/guild/trs_rp.txt                |  164 +--
 npc/mobs/bossnia.txt                |  374 ++---
 npc/mobs/jail.txt                   |   36 +-
 npc/warps/other/bossnia.txt         |   36 +-
 sql-files/upgrade_svn15885.sql      |    2 +-
 src/map/config/classes/general.h    |   48 +-
 src/map/config/classes/swordsman.h  |   32 +-
 src/map/config/const.h              |  156 +-
 14 files changed, 2207 insertions(+), 2181 deletions(-)

diff --git a/db/skill_improvise_db.txt b/db/skill_improvise_db.txt
index 1b4a17b9d..9f0f2b6e7 100644
--- a/db/skill_improvise_db.txt
+++ b/db/skill_improvise_db.txt
@@ -1,32 +1,32 @@
-// Improvise DB.
-// Database for skills that can be summoned trough Randomize Spell/Improvised Song (Minstrel/Wanderer Skill).
-// Format: SkillID,Rate
-
-// Mage Skills
-10,5000	// Sight
-11,5000	// Napalm Beat
-12,5000	// Safety Wall
-13,5000	// Soul Strike
-14,5000	// Cold Bolt
-15,5000	// Frost Diver
-16,5000	// Stone Curse
-17,5000	// Fire Ball
-18,5000	// Fire Wall
-19,5000	// Fire Bolt
-20,5000	// Lightning Bolt
-21,5000	// Thunderstorm
-
-// Wizard Skills
-80,2500	// Fire Pillar
-81,2500	// Sightrasher
-83,2500	// Meteor Storm
-84,2500	// Jupitel Thunder
-85,2500	// Lord of Vermilion
-86,2500	// Water Ball
-87,2500	// Ice Wall
-88,2500	// Frost Nova
-89,2500	// Storm Gust
-90,2500	// Earth Spike
-91,2500	// Heaven's Drive
-92,2500	// Quagmire
-93,2500	// Sense
+// Improvise DB.
+// Database for skills that can be summoned trough Randomize Spell/Improvised Song (Minstrel/Wanderer Skill).
+// Format: SkillID,Rate
+
+// Mage Skills
+10,5000	// Sight
+11,5000	// Napalm Beat
+12,5000	// Safety Wall
+13,5000	// Soul Strike
+14,5000	// Cold Bolt
+15,5000	// Frost Diver
+16,5000	// Stone Curse
+17,5000	// Fire Ball
+18,5000	// Fire Wall
+19,5000	// Fire Bolt
+20,5000	// Lightning Bolt
+21,5000	// Thunderstorm
+
+// Wizard Skills
+80,2500	// Fire Pillar
+81,2500	// Sightrasher
+83,2500	// Meteor Storm
+84,2500	// Jupitel Thunder
+85,2500	// Lord of Vermilion
+86,2500	// Water Ball
+87,2500	// Ice Wall
+88,2500	// Frost Nova
+89,2500	// Storm Gust
+90,2500	// Earth Spike
+91,2500	// Heaven's Drive
+92,2500	// Quagmire
+93,2500	// Sense
diff --git a/db/skill_reproduce_db.txt b/db/skill_reproduce_db.txt
index 55cfb1e5a..eca500da2 100644
--- a/db/skill_reproduce_db.txt
+++ b/db/skill_reproduce_db.txt
@@ -1,204 +1,204 @@
-// Reproduce Copy Skills List
-//
-// ##TODO## screw this file and make it a new skill_info2 flag
-//
-// Structure of Database:
-// SkillID
-//=================================
-
-//Swordsman
-5	//Bash
-7	//Magnum Break
-
-//Mage
-11	// Napalm Beat
-13	// Soul Strike
-14	// Cold Bolt
-15	// Frost Diver
-17	// Fire Ball
-18	// Fire Wall
-19	// Fire Bolt
-20	// Lightning Bolt
-21	// Thunderstorm
-
-//Acolyte
-24	// Ruwach
-28	// Heal
-
-//Merchant
-42	// Mammonite
-
-//Archer
-46	// Double Strafe
-47	// Arrow Shower
-
-//Thief
-52	// Envenom
-
-// Resurrection
-54	// Resurrection
-
-// Knight
-62	// Bowling Bash
-
-// Priest
-68	// Asperio
-69	// B.S Sacramenti
-70	// Sanctuary
-77	// Turn Undead
-79	// Magnus Exorcismus
-
-// Wizard
-80	// Fire Pillar
-81	// Sightrasher
-83	// Meteor Storm
-84	// Jupitel Thunder
-85	// Lord of Vermillion
-86	// Water Ball
-88	// Frost Nova
-89	// Storm Gust
-90	// Earth Spike
-91	// Heaven's Drive
-
-// Hunter
-116	// Land Mine
-121	// Freezing Trap
-122	// Blast Mine
-123	// Claymore Trap
-
-// Assassin
-141	// Venom Splasher
-
-// 1st Job Quest Skills
-148	// Arrow Repel
-152	// Stone Fling
-156	// Holy Light
-
-// Rogue
-212	// Backstab
-
-// Alchemist
-229	// Bomb
-230	// Acid Terror
-
-// Crusader
-250	// Smite
-251	// Shield Boomerang
-253	// Holy Cross
-254	// Grand Cross
-
-// Monk
-263	// Raging Trifecta Blow
-266	// Occult Impaction
-267	// Throw Spirit Sphere
-271	// Guillotine Fist
-272	// Raging Quadruple Blow
-
-// Item Skill
-337	// Tomahawk Throwing
-
-// TaeKwon Kid
-421	// Flying Kick
-
-// Ninja
-526	// Throw Coins
-527	// Flip Tatami
-528	// Haze Slasher
-529	// Shadow Slash
-531	// Blaze Shield
-534	// Flaming Petals
-536	// Exploding Dragon
-537	// Freezing Spear
-539	// Snow Flake Draft
-540	// Wind Blade
-541	// Lightning Jolt
-542	// First Wind
-
-// 2nd Job Quest Skills
-1001	// Charge Attack
-1004	// Venom Knife
-1006	// Sight Blaster
-1009	// Phantasmic Arrow
-1015	// Excruciating Palm
-
-// Rune Knight
-2002	// Sonic Wave
-2005	// Ignition Break
-2006	// Wind Cutter
-
-// Guillotine Cross
-2022	// Cross Impact
-2023	// Dark Illusion
-2034	// Phantom Menace
-
-// Arch Bishop
-2038	// Judex
-2040	// Adoramus
-2051	// Highness Heal
-2054	// Duple Light
-
-// Warlock
-2202	// Soul Expansion
-2203	// Frosty Misty
-2204	// Jack Frost
-2210	// Drain Life
-2211	// Crimson Rock
-2212	// Hell Inferno
-2213	// Comet
-2214	// Chain Lightning
-2216	// Earth Strain
-
-// Ranger
-2233	// Arrow Storm
-2236	// Aimed Bolt
-2239	// Cluster Bomb
-2253	// Icebound Trap
-2254	// Firing Trap
-
-// Shadow Chaser
-2284	// Fatal Menace
-2288	// Triangle Shot
-2304	// Feint Bomb
-
-// Royal Guard
-2310	// Shield Press
-2315	// Shield Spell
-2316	// Exceed Break
-2320	// Moon Slasher
-2323	// Earth Drive
-
-// Sura
-2326	// Dragon Combo
-2327	// Sky Net Blow
-2328	// Earth Shaker
-2330	// Tiger Cannon
-2332	// Rampage Blaster
-2336	// Knuckle Arrow
-2337	// Windmill
-2343	// Gate of Hell
-2344	// Gentle Touch - Quiet
-2517	// Howling of Lion
-2518	// Riding Lightning
-
-// Minstrel/Wanderer
-2413	// Metallic Sound
-2414	// Reverberation
-2418	// Severe Rainstorm
-
-// Sorcerer
-2443	// Fire Walk
-2444	// Electric Walk
-2446	// Earth Grave
-2447	// Diamond Dust
-2448	// Poison Buster
-2449	// Psychic Wave
-2450	// Cloud Kill
-2454	// Varetyr Spear
-
-// Genetic
-2479	// Thorn Trap
-2480	// Blood Sucker
-2481	// Spore Explosion
-2482	// Wall of Thorns
-2483	// Crazy Weed
-2490	// Hell's Plant
\ No newline at end of file
+// Reproduce Copy Skills List
+//
+// ##TODO## screw this file and make it a new skill_info2 flag
+//
+// Structure of Database:
+// SkillID
+//=================================
+
+//Swordsman
+5	//Bash
+7	//Magnum Break
+
+//Mage
+11	// Napalm Beat
+13	// Soul Strike
+14	// Cold Bolt
+15	// Frost Diver
+17	// Fire Ball
+18	// Fire Wall
+19	// Fire Bolt
+20	// Lightning Bolt
+21	// Thunderstorm
+
+//Acolyte
+24	// Ruwach
+28	// Heal
+
+//Merchant
+42	// Mammonite
+
+//Archer
+46	// Double Strafe
+47	// Arrow Shower
+
+//Thief
+52	// Envenom
+
+// Resurrection
+54	// Resurrection
+
+// Knight
+62	// Bowling Bash
+
+// Priest
+68	// Asperio
+69	// B.S Sacramenti
+70	// Sanctuary
+77	// Turn Undead
+79	// Magnus Exorcismus
+
+// Wizard
+80	// Fire Pillar
+81	// Sightrasher
+83	// Meteor Storm
+84	// Jupitel Thunder
+85	// Lord of Vermillion
+86	// Water Ball
+88	// Frost Nova
+89	// Storm Gust
+90	// Earth Spike
+91	// Heaven's Drive
+
+// Hunter
+116	// Land Mine
+121	// Freezing Trap
+122	// Blast Mine
+123	// Claymore Trap
+
+// Assassin
+141	// Venom Splasher
+
+// 1st Job Quest Skills
+148	// Arrow Repel
+152	// Stone Fling
+156	// Holy Light
+
+// Rogue
+212	// Backstab
+
+// Alchemist
+229	// Bomb
+230	// Acid Terror
+
+// Crusader
+250	// Smite
+251	// Shield Boomerang
+253	// Holy Cross
+254	// Grand Cross
+
+// Monk
+263	// Raging Trifecta Blow
+266	// Occult Impaction
+267	// Throw Spirit Sphere
+271	// Guillotine Fist
+272	// Raging Quadruple Blow
+
+// Item Skill
+337	// Tomahawk Throwing
+
+// TaeKwon Kid
+421	// Flying Kick
+
+// Ninja
+526	// Throw Coins
+527	// Flip Tatami
+528	// Haze Slasher
+529	// Shadow Slash
+531	// Blaze Shield
+534	// Flaming Petals
+536	// Exploding Dragon
+537	// Freezing Spear
+539	// Snow Flake Draft
+540	// Wind Blade
+541	// Lightning Jolt
+542	// First Wind
+
+// 2nd Job Quest Skills
+1001	// Charge Attack
+1004	// Venom Knife
+1006	// Sight Blaster
+1009	// Phantasmic Arrow
+1015	// Excruciating Palm
+
+// Rune Knight
+2002	// Sonic Wave
+2005	// Ignition Break
+2006	// Wind Cutter
+
+// Guillotine Cross
+2022	// Cross Impact
+2023	// Dark Illusion
+2034	// Phantom Menace
+
+// Arch Bishop
+2038	// Judex
+2040	// Adoramus
+2051	// Highness Heal
+2054	// Duple Light
+
+// Warlock
+2202	// Soul Expansion
+2203	// Frosty Misty
+2204	// Jack Frost
+2210	// Drain Life
+2211	// Crimson Rock
+2212	// Hell Inferno
+2213	// Comet
+2214	// Chain Lightning
+2216	// Earth Strain
+
+// Ranger
+2233	// Arrow Storm
+2236	// Aimed Bolt
+2239	// Cluster Bomb
+2253	// Icebound Trap
+2254	// Firing Trap
+
+// Shadow Chaser
+2284	// Fatal Menace
+2288	// Triangle Shot
+2304	// Feint Bomb
+
+// Royal Guard
+2310	// Shield Press
+2315	// Shield Spell
+2316	// Exceed Break
+2320	// Moon Slasher
+2323	// Earth Drive
+
+// Sura
+2326	// Dragon Combo
+2327	// Sky Net Blow
+2328	// Earth Shaker
+2330	// Tiger Cannon
+2332	// Rampage Blaster
+2336	// Knuckle Arrow
+2337	// Windmill
+2343	// Gate of Hell
+2344	// Gentle Touch - Quiet
+2517	// Howling of Lion
+2518	// Riding Lightning
+
+// Minstrel/Wanderer
+2413	// Metallic Sound
+2414	// Reverberation
+2418	// Severe Rainstorm
+
+// Sorcerer
+2443	// Fire Walk
+2444	// Electric Walk
+2446	// Earth Grave
+2447	// Diamond Dust
+2448	// Poison Buster
+2449	// Psychic Wave
+2450	// Cloud Kill
+2454	// Varetyr Spear
+
+// Genetic
+2479	// Thorn Trap
+2480	// Blood Sucker
+2481	// Spore Explosion
+2482	// Wall of Thorns
+2483	// Crazy Weed
+2490	// Hell's Plant
diff --git a/npc/custom/healers/heal.txt b/npc/custom/healers/heal.txt
index 09f14cb60..3c4e136e9 100644
--- a/npc/custom/healers/heal.txt
+++ b/npc/custom/healers/heal.txt
@@ -1,54 +1,53 @@
 //===== rAthena Script =======================================
 //= Healer
 //===== By: ==================================================
-//= lots of people
+//= rAthena Dev Team
 //===== Current Version: =====================================
-//= 3.1
+//= 3.2
 //===== Compatible With: =====================================
 //= rAthena SVN
 //===== Description: =========================================
 //= Healer NPC Which Heals For Free
 //===== Additional Comments: =================================
-//= 2.0 Duplicates And Changed A Bit you can replace this script file by 
-//= heal_payment.txt if you want that players have to pay their healings. [Darkchild]
-//= 3.0 Changed and edited the script added other warp points of maps. [massdriller]
-//= 3.1 Optimized for the greater good. [Kisuka]
+//= 
 //============================================================
 
--	script	Healer#h1-1::Healer	742,{
+-	script	healer	-1,{
 	callfunc "F_ClearGarbage",0;
-	
 	mes "[Healer]";
 	mes "I have amazing healing powers!!";
 	mes "You look like a person who needs them";
 	mes "Want some?";
 	next;
-	if (select("Heal:No thanks") == 1) {
+	switch(select("Heal:No thanks")) {
+	case 1:
 		percentheal 100,100;
 		mes "[Healer]";
 		mes "Wonderfull, You are now healed!.";
 		mes "Have fun adventuring!!";
-	} else {
+		break;
+	case 2:
 		mes "[Healer]";
 		mes "Alright, come back if you need a heal.";
+		break;
 	}
 	close;
 }
 
-// --------- NPC Clones ---------
-prontera,150,184,5	duplicate(Healer)	Healer#h1-1	742
-morocc,159,96,5	duplicate(Healer)	Healer#h1-2	742
-ayothaya,155,111,5	duplicate(Healer)	Healer#h1-3	742
-geffen,121,61,5	duplicate(Healer)	Healer#h1-4	742
-umbala,94,162,5	duplicate(Healer)	Healer#h1-5	742
-payon,180,105,5	duplicate(Healer)	Healer#h1-6	742
-alberta,185,144,5	duplicate(Healer)	Healer#h1-7	742
-aldebaran,134,123,5	duplicate(Healer)	Healer#h1-8	742
-izlude,125,118,5	duplicate(Healer)	Healer#h1-9	742
-xmas,149,136,5	duplicate(Healer)	Healer#h1-10	742
-comodo,188,162,5	duplicate(Healer)	Healer#h1-11	742
-amatsu,200,80,5	duplicate(Healer)	Healer#h1-12	742
-gonryun,164,130,5	duplicate(Healer)	Healer#h1-13	742
-yuno,152,186,5	duplicate(Healer)	Healer#h1-14	742
-niflheim,188,180,5	duplicate(Healer)	Healer#h1-15	742
-louyang,225,103,5	duplicate(Healer)	Healer#h1-16	742
+// NPC Duplicates
+alberta,185,144,5	duplicate(healer)	Healer#alb	742
+aldebaran,134,123,5	duplicate(healer)	Healer#alde	742
+amatsu,200,80,5	duplicate(healer)	Healer#ama	742
+ayothaya,155,111,5	duplicate(healer)	Healer#ayo	742
+comodo,188,162,5	duplicate(healer)	Healer#com	742
+geffen,121,61,5	duplicate(healer)	Healer#gef	742
+gonryun,164,130,5	duplicate(healer)	Healer#gon	742
+izlude,125,118,5	duplicate(healer)	Healer#izl	742
+louyang,225,103,5	duplicate(healer)	Healer#lou	742
+morocc,159,96,5	duplicate(healer)	Healer#mor	742
+niflheim,188,180,5	duplicate(healer)	Healer#nif	742
+payon,180,105,5	duplicate(healer)	Healer#pay	742
+prontera,150,184,5	duplicate(healer)	Healer#pront	742
+umbala,94,162,5	duplicate(healer)	Healer#umb	742
+xmas,149,136,5	duplicate(healer)	Healer#xmas	742
+yuno,152,186,5	duplicate(healer)	Healer#yuno	742
diff --git a/npc/custom/healers/heal_payment.txt b/npc/custom/healers/heal_payment.txt
index 0cc30e6f6..4bcbd5d4e 100644
--- a/npc/custom/healers/heal_payment.txt
+++ b/npc/custom/healers/heal_payment.txt
@@ -1,9 +1,9 @@
 //===== rAthena Script =======================================
-//= Healer (/w payments)
+//= Healer (with payment)
 //===== By: ==================================================
-//= Yor & abunch of other people
+//= rAthena Dev Team
 //===== Current Version: =====================================
-//= 1.3
+//= 2.0
 //===== Compatible With: =====================================
 //= rAthena SVN
 //===== Description: =========================================
@@ -13,12 +13,39 @@
 //= each HP need 1 zeny
 //= each SP need (baselevel / 5) zenys
 //= calculation is done at start of the script
-//= Added Duplicates And Correct payon Loc [Darkchild]
-//= Some modifications. Added NPC locations. [massdriller]
-//= Removed Duplicates [Silent]
 //============================================================
 
--	script	Healer#h2-1::Healer2	742,{
+-	script	healer2	-1,{
+	set .@hp, MaxHp - Hp;
+	set .@sp, MaxSp - Sp;
+	
+	
+	
+	
+	
+	mes "[Healer]";
+	mes "I have amazing healing powers!!";
+	mes "You look like a person who needs them";
+	mes "Want some?";
+	next;
+	switch(select("Heal:No thanks")) {
+	case 1:
+		percentheal 100,100;
+		mes "[Healer]";
+		mes "Wonderfull, You are now healed!.";
+		mes "Have fun adventuring!!";
+		break;
+	case 2:
+		mes "[Healer]";
+		mes "Alright, come back if you need a heal.";
+		break;
+	}
+	close;
+}
+
+
+
+
 	set @tempHp, MaxHp-Hp;
 	set @tempSpReal, MaxSp-Sp;
 	set @tempSp, ((MaxSp-Sp) * BaseLevel) / 5;
@@ -89,20 +116,20 @@ CANCEL:
 	close;
 }
 
-
-prontera,150,184,5	duplicate(Healer2)	Healer#h2-1	742
-morocc,159,96,5	duplicate(Healer2)	Healer#h2-2	742
-ayothaya,155,111,5	duplicate(Healer2)	Healer#h2-3	742
-geffen,121,61,5	duplicate(Healer2)	Healer#h2-4	742
-umbala,94,162,5	duplicate(Healer2)	Healer#h2-5	742
-payon,180,105,5	duplicate(Healer2)	Healer#h2-6	742
-alberta,185,144,5	duplicate(Healer2)	Healer#h2-7	742
-aldebaran,134,123,5	duplicate(Healer2)	Healer#h2-8	742
-izlude,125,118,5	duplicate(Healer2)	Healer#h2-9	742
-xmas,149,136,5	duplicate(Healer2)	Healer#h2-10	742
-comodo,188,162,5	duplicate(Healer2)	Healer#h2-11	742
-amatsu,200,80,5	duplicate(Healer2)	Healer#h2-12	742
-gonryun,164,130,5	duplicate(Healer2)	Healer#h2-13	742
-yuno,152,186,5	duplicate(Healer2)	Healer#h2-14	742
-niflheim,188,180,5	duplicate(Healer2)	Healer#h2-15	742
-louyang,225,103,5	duplicate(Healer2)	Healer#h2-16	742
+// NPC Duplicates
+alberta,185,144,5	duplicate(healer2)	Healer#alb	742
+aldebaran,134,123,5	duplicate(healer2)	Healer#alde	742
+amatsu,200,80,5	duplicate(healer2)	Healer#ama	742
+ayothaya,155,111,5	duplicate(healer2)	Healer#ayo	742
+comodo,188,162,5	duplicate(healer2)	Healer#com	742
+geffen,121,61,5	duplicate(healer2)	Healer#gef	742
+gonryun,164,130,5	duplicate(healer2)	Healer#gon	742
+izlude,125,118,5	duplicate(healer2)	Healer#izl	742
+louyang,225,103,5	duplicate(healer2)	Healer#lou	742
+morocc,159,96,5	duplicate(healer2)	Healer#mor	742
+niflheim,188,180,5	duplicate(healer2)	Healer#nif	742
+payon,180,105,5	duplicate(healer2)	Healer#pay	742
+prontera,150,184,5	duplicate(healer2)	Healer#pront	742
+umbala,94,162,5	duplicate(healer2)	Healer#umb	742
+xmas,149,136,5	duplicate(healer2)	Healer#xmas	742
+yuno,152,186,5	duplicate(healer2)	Healer#yuno	742
diff --git a/npc/events/bossnia.txt b/npc/events/bossnia.txt
index 080dee33b..9f772d308 100644
--- a/npc/events/bossnia.txt
+++ b/npc/events/bossnia.txt
@@ -1,122 +1,122 @@
-//===== rAthena Script ======================================= 
-//= Bossnia Warp NPC's.
-//===== By: ================================================== 
-//= Masao
-//===== Current Version: ===================================== 
-//= 1.0
-//===== Compatible With: ===================================== 
-//= rAthena
-//===== Description: ========================================= 
-//= Bossnia Warp NPC's.
-//===== Additional Comments: ================================= 
-//= 1.0 Converted from the official script.
-//============================================================ 
-
-prontera,132,125,4	script	Bossnia Staff::bsw	908,{
-
-	mes "[Riss]";
-	mes "Hello?";
-	mes "I found some beautiful places";
-	mes "while I travelled all over the world.";
-	mes "I am an adventurer.";
-	mes "Haha~";
-	next;
-	mes "[Riss]";
-	mes "What? My name is...";
-	mes "'Bossnia Staff'?? no no..";
-	mes "Well, my name is not so important.";
-	mes "Sometimes you should be generous.";
-	mes "No time for considering that kind of small stuff";
-	mes "when you have to concentrate on more important things.";
-	next;
-	mes "[Riss]";
-	mes "Hum... anyway i want to say..something..";
-	mes "While i was travelling through some places,";
-	mes "I found a really fearful place.";
-	next;
-	mes "[Riss]";
-	mes "Most of the time when you come to a place,";
-	mes "there is one strong and fearful monster.";
-	mes "Isn't it?";
-	next;
-	mes "[Riss]";
-	mes "But.. but.. in there..";
-	mes "There are lots of fearful and strong monsters in there..";
-	mes "That was really frightful.";
-	next;
-	mes "[Riss]";
-	mes "If I had reacted a bit later.. a few seconds..";
-	mes "I might have been killed.";
-	next;
-	mes "[Riss]";
-	mes "What?";
-	mes "You want to go in there?";
-	mes "Oh~ Boy~ you didn't get me.";
-	mes "In there.......";
-	next;
-	mes "[Riss]";
-	mes "Uh... you already know?";
-	mes "Although you know the place, you want to go in..";
-	mes "Good, I will send you there.";
-	mes "But after you went there, don't hold";
-	mes "a grudge against me. Also it costs 5,000 zeny.";
-	next;
-	if (Zeny > 4999) {
-		mes "[Riss]";
-		mes "Would you really like to take the challenge??";
-		mes "Ok, just choose the course.";
-		next;
-		switch(select("First","Second","Third","Fourth")) {
-		case 1:
-			mes "[Riss]";
-			mes "Take care, boy~";
-			mes "Don't hold a grudge against me.";
-			close2;
-			set Zeny, Zeny - 5000;
-			set .@boss_x, rand(202,204);
-			set .@boss_y, rand(202,204);
-			warp "bossnia_01",.@boss_x,.@boss_y;
-			end;
-		case 2:
-			mes "[Riss]";
-			mes "Take care, boy~";
-			mes "Don't hold a grudge against me.";
-			close2;
-			set Zeny, Zeny - 5000;
-			set .@boss_x, rand(202,204);
-			set .@boss_y, rand(202,204);
-			warp "bossnia_02",.@boss_x,.@boss_y;
-			end;
-		case 3:
-			mes "[Riss]";
-			mes "Take care, boy~";
-			mes "Don't hold a grudge against me.";
-			close2;
-			set Zeny, Zeny - 5000;
-			set .@boss_x, rand(202,204);
-			set .@boss_y, rand(202,204);
-			warp "bossnia_03",.@boss_x,.@boss_y;
-			end;
-		case 4:
-			mes "[Riss]";
-			mes "Take care, boy~";
-			mes "Don't hold a grudge against me.";
-			close2;
-			set Zeny, Zeny - 5000;
-			set .@boss_x, rand(202,204);
-			set .@boss_y, rand(202,204);
-			warp "bossnia_04",.@boss_x,.@boss_y;
-			end;
-		}
-	}
-	mes "[Riss]";
-	mes "You don't have enough money...";
-	mes "Come back when you have at least 5,000 zeny.";
-	close;
-}
-
-geffen,124,169,4	duplicate(bsw)	Bossnia Staff#2	908
-Payon,165,150,4	duplicate(bsw)	Bossnia Staff#3	908
-morocc,142,100,4	duplicate(bsw)	Bossnia Staff#4	908
-lighthalzen,203,140,4	duplicate(bsw)	Bossnia Staff#5	908
-rachel,132,144,4	duplicate(bsw)	Bossnia Staff#6	908
\ No newline at end of file
+//===== rAthena Script ======================================= 
+//= Bossnia Warp NPC's.
+//===== By: ================================================== 
+//= Masao
+//===== Current Version: ===================================== 
+//= 1.0
+//===== Compatible With: ===================================== 
+//= rAthena
+//===== Description: ========================================= 
+//= Bossnia Warp NPC's.
+//===== Additional Comments: ================================= 
+//= 1.0 Converted from the official script.
+//============================================================ 
+
+prontera,132,125,4	script	Bossnia Staff::bsw	908,{
+
+	mes "[Riss]";
+	mes "Hello?";
+	mes "I found some beautiful places";
+	mes "while I travelled all over the world.";
+	mes "I am an adventurer.";
+	mes "Haha~";
+	next;
+	mes "[Riss]";
+	mes "What? My name is...";
+	mes "'Bossnia Staff'?? no no..";
+	mes "Well, my name is not so important.";
+	mes "Sometimes you should be generous.";
+	mes "No time for considering that kind of small stuff";
+	mes "when you have to concentrate on more important things.";
+	next;
+	mes "[Riss]";
+	mes "Hum... anyway i want to say..something..";
+	mes "While i was travelling through some places,";
+	mes "I found a really fearful place.";
+	next;
+	mes "[Riss]";
+	mes "Most of the time when you come to a place,";
+	mes "there is one strong and fearful monster.";
+	mes "Isn't it?";
+	next;
+	mes "[Riss]";
+	mes "But.. but.. in there..";
+	mes "There are lots of fearful and strong monsters in there..";
+	mes "That was really frightful.";
+	next;
+	mes "[Riss]";
+	mes "If I had reacted a bit later.. a few seconds..";
+	mes "I might have been killed.";
+	next;
+	mes "[Riss]";
+	mes "What?";
+	mes "You want to go in there?";
+	mes "Oh~ Boy~ you didn't get me.";
+	mes "In there.......";
+	next;
+	mes "[Riss]";
+	mes "Uh... you already know?";
+	mes "Although you know the place, you want to go in..";
+	mes "Good, I will send you there.";
+	mes "But after you went there, don't hold";
+	mes "a grudge against me. Also it costs 5,000 zeny.";
+	next;
+	if (Zeny > 4999) {
+		mes "[Riss]";
+		mes "Would you really like to take the challenge??";
+		mes "Ok, just choose the course.";
+		next;
+		switch(select("First","Second","Third","Fourth")) {
+		case 1:
+			mes "[Riss]";
+			mes "Take care, boy~";
+			mes "Don't hold a grudge against me.";
+			close2;
+			set Zeny, Zeny - 5000;
+			set .@boss_x, rand(202,204);
+			set .@boss_y, rand(202,204);
+			warp "bossnia_01",.@boss_x,.@boss_y;
+			end;
+		case 2:
+			mes "[Riss]";
+			mes "Take care, boy~";
+			mes "Don't hold a grudge against me.";
+			close2;
+			set Zeny, Zeny - 5000;
+			set .@boss_x, rand(202,204);
+			set .@boss_y, rand(202,204);
+			warp "bossnia_02",.@boss_x,.@boss_y;
+			end;
+		case 3:
+			mes "[Riss]";
+			mes "Take care, boy~";
+			mes "Don't hold a grudge against me.";
+			close2;
+			set Zeny, Zeny - 5000;
+			set .@boss_x, rand(202,204);
+			set .@boss_y, rand(202,204);
+			warp "bossnia_03",.@boss_x,.@boss_y;
+			end;
+		case 4:
+			mes "[Riss]";
+			mes "Take care, boy~";
+			mes "Don't hold a grudge against me.";
+			close2;
+			set Zeny, Zeny - 5000;
+			set .@boss_x, rand(202,204);
+			set .@boss_y, rand(202,204);
+			warp "bossnia_04",.@boss_x,.@boss_y;
+			end;
+		}
+	}
+	mes "[Riss]";
+	mes "You don't have enough money...";
+	mes "Come back when you have at least 5,000 zeny.";
+	close;
+}
+
+geffen,124,169,4	duplicate(bsw)	Bossnia Staff#2	908
+Payon,165,150,4	duplicate(bsw)	Bossnia Staff#3	908
+morocc,142,100,4	duplicate(bsw)	Bossnia Staff#4	908
+lighthalzen,203,140,4	duplicate(bsw)	Bossnia Staff#5	908
+rachel,132,144,4	duplicate(bsw)	Bossnia Staff#6	908
diff --git a/npc/guild/agit_main.txt b/npc/guild/agit_main.txt
index accf967a8..42e7755fd 100644
--- a/npc/guild/agit_main.txt
+++ b/npc/guild/agit_main.txt
@@ -1,1348 +1,1348 @@
-//===== rAthena Script =======================================
-//= War of Emperium Guild Template File
-//===== By: ==================================================
-//= L0ne_W0lf
-//===== Current Version: =====================================
-//= 1.9
-//===== Compatible With: =====================================
-//= rAthena SVN
-//===== Description: =========================================
-//= [ Aegis Conversion]
-//= ----------------------------------------------------------
-//= - THIS FILE IS REQUIRED FOR GUILD CASTLES TO FUNCTION.
-//= ----------------------------------------------------------
-//= - Enables AGIT Manager inside Guild Strongholds.
-//=   Visible Name required: Agit
-//=   Manages the various functions used in and out of WoE.
-//=
-//= - Enables Stewards inside Guild Strongholds which let's
-//=   the guild master invest in Defense and Economy, and
-//=   to summon guardians, a Kafra, and enter master's room.
-//=
-//= - Guardian Spawning Template
-//=   Visible Name required: Guardian
-//=   Spawn guardians when guild castle data is recieved.
-//=
-//= - Enables Kafra Services inside Guild Strongholds.
-//=   Visible Name required: Kafra Employee
-//=   Storage, Guild Storage, Teleport Service, Cart rental.
-//=
-//= - Treasure Chest spawning.
-//=   Chests will NOT be saved anymore in the event of crashes.
-//=   Treasures will NOT spawn on a location that already has
-//=   treasure chest spawned.
-//===== Additional Comments: =================================
-//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
-//= 1.1 Daily investement will now be reset. [L0ne_W0lf]
-//=     Template will no longer try to spawn chests.
-//= 1.2 Fixed Eco Invest option charging twice. [L0ne_W0lf]
-//= 1.3 Fixed a loading flag emblem for Payon 1. [L0ne_W0lf]
-//=     Fixed two typos regarding Guild Steward name.
-//= 1.4 Fixed a typo in defense investment. [L0ne_W0lf]
-//= 1.5 Fixed spawn point of the emperium in Payon 1. [L0ne_W0lf]
-//=     Double-investing doubles the price now.
-//= 1.6 Corrected Zeny check when summoning guardians. [L0ne_W0lf]
-//=     Corrected cost for investing, thanks to Ai4rei.
-//=     Second invest is now quadruple the value of the first
-//=     Investing now happens at the turn of the day.
-//= 1.6a Corrected conditions in the new investing blocks. [L0ne_W0lf]
-//= 1.6b Moved where investments are added to eco/def. [L0ne_W0lf]
-//= 1.7 Updated Agitbreak announcements, added bc_woe [L0ne_W0lf]
-//=     and added extended anouncement format for mapannounce.
-//= 1.8 Fixed a possible exploit in guild castle investment. [Brian]
-//= 1.9 Partially rewrote Script. [Masao]
-//============================================================
-
-// WoE : Main Functions
-//============================================================
--	script	Gld_Agit_Manager::Gld_Agit_Manager	-1,{
-	end;
-
-// War of Emperium has started.
-OnAgitStart:
-	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
-	MapRespawnGuildID strnpcinfo(2),GetCastleData(strnpcinfo(2),1),2;
-	GvgOn strnpcinfo(2);
-
-// Spawn (fall through), or respawn the Emperium once it has been broken.
-OnStartArena:
-	// OnAgitStart will fall through and spawn the Emperium.
-	if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
-	else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
-	else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
-	else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
-	else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
-	else if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
-	else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
-	else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
-	else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
-	else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
-	else if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
-	else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
-	else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
-	else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
-	else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
-	else if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
-	else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
-	else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
-	else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
-	else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-	if (!mobcount(strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak")) {
-		monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Emperium",1288,1,"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
-	}
-	end;
-
-// The Emperium has been broken.
-OnAgitBreak:
-	set .@GID,getcharid(2);
-	// Show and log error if an unguilded player breaks the Emperium. (Should NEVER happen)
-	if (.@GID <= 0) {
-		set .@notice$,"Character "+strcharinfo(0)+" ("+getcharid(0)+") broke the Emperium in Castle: "+strnpcinfo(2)+" while guildless. No data will be saved and Emperium respawned.";
- 		logmes .@notice$; debugmes .@notice$;
-		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
-		end;
-	}
-	// Adjust Economy Invest Level for Castle
-	set .@Economy,GetCastleData(strnpcinfo(2),2) - 5;
-	if (.@Economy < 0) set .@Economy, 0;
-	SetCastleData strnpcinfo(2), 2, .@Economy;
-	// Adjust Defense Invest Level for Castle
-	set .@Defence,GetCastleData(strnpcinfo(2),3) - 5;
-	if (.@Defence < 0) set .@Defence, 0;
-	SetCastleData strnpcinfo(2), 3, .@Defence;
-
-	// Set new Castle Occupant
-	SetCastleData strnpcinfo(2),1, .@GID;
-
-	// Announce that the Emperium is destroyed, and respawn all but new castle-occupants.
-	mapannounce strnpcinfo(2),"The emperium has been destroyed.",bc_map|bc_woe,"0x00CCFF",FW_NORMAL,12;
-	MapRespawnGuildID strnpcinfo(2),.@GID,2;
-
-	// Refresh castle data, disable Kafra and reset Invest information.
-	donpcevent strnpcinfo(0)+"::OnRecvCastle";
-	disablenpc "Kafra Staff#"+strnpcinfo(2);
-	for( set .@i, 4; .@i <= 9; set .@i, .@i+1 ) {
-		SetCastleData strnpcinfo(2), .@i, 0;
-	}
-	// Erase Guardian Database information if the new owners do not have Guardian Research.
-	if( getgdskilllv(.@GID,10002) == 0 ) {
-		for( set .@i, 10; .@i <= 17; set .@i, .@i+1 ) {
-			SetCastleData strnpcinfo(2), .@i, 0;
-		}
-	}
-	// Respawn the Emperium, and display new owners.
-	sleep 500; // Slow down script execution slightly.
-	if( agitcheck() )
-		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
-	sleep 7000;
-	announce "The [" + getcastlename(strnpcinfo(2)) + "] castle has been conquered by the [" + getguildName(.@GID) + "] guild.",bc_all|bc_woe;
-	end;
-
-// War of Emperium has ended.
-OnAgitEnd:
-	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
-	GvgOff strnpcinfo(2);
-	// If the castle has no owner at the end of WoE, do not kill Emperium.
-	if (GetCastleData(strnpcinfo(2),1)) {
-		KillMonster strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
-	}
-	end;
-
-// Occupying Guild has been disbanded.
-OnGuildBreak:
-	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
-	// Kill guardians, disable the Kafra, and set owner to 0.
-	killmonster strnpcinfo(2),"Guardian#"+strnpcinfo(2)+"::OnGuardianDied";
-	disablenpc "Kafra Staff#"+strnpcinfo(2);
-	SetCastleData strnpcinfo(2),0,0;
-	// Wait before refreshing guild information.
-	sleep 7000;
-	Announce "Guild Base [" + GetCastleName(strnpcinfo(2)) + "] has been abandoned.",0;
-	donpcevent strnpcinfo(0)+"::OnRecvCastle";
-	end;
-
-OnAgitInit:
-OnRecvCastle:
-	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
-	// Spawn Monsters if the castle is empty.
-	set .@GID, GetCastleData(strnpcinfo(2),1);
-	if (.@GID == 0) {
-		killmonsterall strnpcinfo(2);
-		if (compare(strnpcinfo(2),"aldeg")) {
-			// Normal Spawns
-			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
-			monster strnpcinfo(2),0,0,"Khalitzburg",1132,4;
-			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,2;
-			monster strnpcinfo(2),0,0,"Executioner",1205,1;
-			monster strnpcinfo(2),0,0,"Penomena",1216,10;
-			monster strnpcinfo(2),0,0,"Alarm",1193,18;
-			monster strnpcinfo(2),0,0,"Clock",1269,9;
-			monster strnpcinfo(2),0,0,"Raydric Archer",1276,7;
-			monster strnpcinfo(2),0,0,"Wanderer",1208,3;
-			monster strnpcinfo(2),0,0,"Alice",1275,1;
-			monster strnpcinfo(2),0,0,"Bloody Knight",1268,1;
-			monster strnpcinfo(2),0,0,"Dark Lord",1272,1;
-			// Set Emperium room spawn coordinates and spawn monsters.
-			if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
-			else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
-			else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
-			else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
-			else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Dark Lord",1272,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Tower Keeper",1270,4;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Bloody Knight",1268,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Abysmal Knight",1219,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
-		}
-		else if (compare(strnpcinfo(2),"gefg")) {
-			// Normal Spawns
-			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
-			monster strnpcinfo(2),0,0,"Wind Ghost",1263,11;
-			monster strnpcinfo(2),0,0,"Bathory",1102,10;
-			monster strnpcinfo(2),0,0,"Jakk",1130,10;
-			monster strnpcinfo(2),0,0,"Marduk",1140,20;
-			monster strnpcinfo(2),0,0,"Raydric",1163,9;
-			monster strnpcinfo(2),0,0,"Alice",1275,1;
-			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,1;
-			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
-			monster strnpcinfo(2),0,0,"Phreeoni",1159,1;
-			// Set Emperium room spawn coordinates and spawn monsters.
-			if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
-			else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
-			else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
-			else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
-			else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Mysteltainn",1203,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Hero",1087,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"High Orc",1213,10;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Archer",1189,10;
-		}
-		else if (compare(strnpcinfo(2),"payg")) {
-			// Normal Spawns
-			monster strnpcinfo(2),0,0,"Greatest General",1277,9;
-			monster strnpcinfo(2),0,0,"Wanderer",1208,10;
-			monster strnpcinfo(2),0,0,"Mutant Dragonoid",1262,5;
-			monster strnpcinfo(2),0,0,"Bathory",1102,5;
-			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
-			monster strnpcinfo(2),0,0,"Eddga",1115,1;
-			monster strnpcinfo(2),0,0,"Horong",1129,11;
-			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
-			monster strnpcinfo(2),0,0,"Kobold Archer",1282,4;
-			monster strnpcinfo(2),0,0,"Gargoyle",1253,5;
-			// Set Emperium room spawn coordinates and spawn monsters.
-			if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
-			else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
-			else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
-			else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
-			else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Moonlight Flower",1150,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Eddga",1115,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Wanderer",1208,6;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
-		}
-		else if (compare(strnpcinfo(2),"prtg")) {
-			// Normal Spawns
-			monster strnpcinfo(2),0,0,"Raydric",1163,1;
-			monster strnpcinfo(2),0,0,"Khalitzburg",1132,10;
-			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,5;
-			monster strnpcinfo(2),0,0,"Bloody Knight",1268,5;
-			monster strnpcinfo(2),0,0,"Stormy Knight",1251,1;
-			monster strnpcinfo(2),0,0,"Hatii",1252,1;
-			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
-			monster strnpcinfo(2),0,0,"Gryphon",1259,2;
-			monster strnpcinfo(2),0,0,"Chimera",1283,3;
-			monster strnpcinfo(2),0,0,"Alice",1275,1;
-			monster strnpcinfo(2),0,0,"Zealotus",1200,1;
-			// Set Emperium room spawn coordinates and spawn monsters.
-			if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
-			else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
-			else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
-			else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
-			else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1268,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Master",1251,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Hatii",1252,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1219,1;
-			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
-		}
-		// Add custom Guild Castles here.
-		else {
-			end;
-		}
-		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
-		// Disable Kafra Staff...
-		disablenpc "Kafra Staff#"+strnpcinfo(2);
-		end;
-	}
-	else {
-		// Otherwise place the guild emblem on flags.
-		if (strnpcinfo(2) == "aldeg_cas01") { donpcevent "::OnRecvCastleA01"; }
-		else if (strnpcinfo(2) == "aldeg_cas02") { donpcevent "::OnRecvCastleA02"; }
-		else if (strnpcinfo(2) == "aldeg_cas03") { donpcevent "::OnRecvCastleA03"; }
-		else if (strnpcinfo(2) == "aldeg_cas04") { donpcevent "::OnRecvCastleA04"; }
-		else if (strnpcinfo(2) == "aldeg_cas05") { donpcevent "::OnRecvCastleA05"; }
-		else if (strnpcinfo(2) == "gefg_cas01") { donpcevent "::OnRecvCastleG01"; }
-		else if (strnpcinfo(2) == "gefg_cas02") { donpcevent "::OnRecvCastleG02"; }
-		else if (strnpcinfo(2) == "gefg_cas03") { donpcevent "::OnRecvCastleG03"; }
-		else if (strnpcinfo(2) == "gefg_cas04") { donpcevent "::OnRecvCastleG04"; }
-		else if (strnpcinfo(2) == "gefg_cas05") { donpcevent "::OnRecvCastleG05"; }
-		else if (strnpcinfo(2) == "payg_cas01") { donpcevent "::OnRecvCastlePy01"; }
-		else if (strnpcinfo(2) == "payg_cas02") { donpcevent "::OnRecvCastlePy02"; }
-		else if (strnpcinfo(2) == "payg_cas03") { donpcevent "::OnRecvCastlePy03"; }
-		else if (strnpcinfo(2) == "payg_cas04") { donpcevent "::OnRecvCastlePy04"; }
-		else if (strnpcinfo(2) == "payg_cas05") { donpcevent "::OnRecvCastlePy05"; }
-		else if (strnpcinfo(2) == "prtg_cas01") { donpcevent "::OnRecvCastlePt01"; }
-		else if (strnpcinfo(2) == "prtg_cas02") { donpcevent "::OnRecvCastlePt02"; }
-		else if (strnpcinfo(2) == "prtg_cas03") { donpcevent "::OnRecvCastlePt03"; }
-		else if (strnpcinfo(2) == "prtg_cas04") { donpcevent "::OnRecvCastlePt04"; }
-		else if (strnpcinfo(2) == "prtg_cas05") { donpcevent "::OnRecvCastlePt05"; }
-		// Add custom Guild Castles here.
-		else {
-			end;
-		}
-		// And load purchased Guardian in castles.
-		donpcevent "Guardian#"+strnpcinfo(2)+"::OnSpawnGuardians";
-		// And display Kafra if purchased.
-		if (GetCastleData(strnpcinfo(2),9) < 1) disablenpc "Kafra Staff#"+strnpcinfo(2);
-	}
-	end;
-}
-
-// WoE : Guild Kafras
-//============================================================
--	script	Kafra Staff#woe::guildkafra	-1,{
-
-	set .@GID,GetCastleData(strnpcinfo(2),1);
-
-	if (compare(strnpcinfo(2),"aldeg")) {
-		setarray .@destination$[0],"Al De Baran","aldebaran";
-		setarray .@coordinates[0],132,103;
-	}
-	else if (compare(strnpcinfo(2),"gefg")) {
-		setarray .@destination$[0],"Geffen","geffen";
-		setarray .@coordinates[0],120,39;
-	}
-	else if (compare(strnpcinfo(2),"payg")) {
-		setarray .@destination$[0],"Payon","payon";
-		setarray .@coordinates[0],70,100;
-	}
-	else if (compare(strnpcinfo(2),"prtg")) {
-		setarray .@destination$[0],"Prontera","prontera";
-		setarray .@coordinates[0],278,211;
-	}
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-
-	cutin "kafra_01",2;
-	if (getcharid(2) == .@GID) {
-		mes "[Kafra Employee]";
-		mes "Welcome. ^ff0000" + GetGuildName(.@GID) + "^000000 Member.";
-		mes "The Kafra Corporation will stay with you wherever you go.";
-		next;
-		switch (select("Use Storage:Use Teleport Service:Rent a Pushcart:Cancel")) {
-		case 1:
-			if (getskilllv("NV_BASIC") < 6) {
-				mes "[Kafra Employee]";
-				mes "I'm sorry, but you";
-				mes "need the Novice's";
-				mes "Basic Skill Level 6 to";
-				mes "use the Storage Service.";
-				close2;
-				cutin "",255;
-				end;
-			}
-			mes "[Kafra Employee]";
-			mes "Here, let me open";
-			mes "your Storage for you.";
-			mes "Thank you for using";
-			mes "the Kafra Service.";
-			close2;
-			cutin "",255;
-			openstorage;
-			end;
-		case 2:
-			mes "[Kafra Employee]";
-			mes "Please choose";
-			mes "your destination.";
-			next;
-			switch (select(.@destination$+" -> 200z:Cancel")) {
-			case 1:
-				if (Zeny < 200) {
-					mes "[Kafra Employee]";
-					mes "I'm sorry, but you don't have";
-					mes "enough zeny for the Teleport";
-					mes "Service. The fee to teleport";
-					mes "to "+.@destination$+" is 200 zeny.";
-					close2;
-					cutin "",255;
-					end;
-				}
-				set Zeny, Zeny - 200;
-				set RESRVPTS,RESRVPTS+2;
-				close2;
-				warp .@destination$[1],.@coordinates[0],.@coordinates[1];
-				end;
-			case 2:
-				close2;
-				cutin "",255;
-				end;
-			}
-		case 3:
-			if (BaseClass != Job_Merchant) {
-				mes "[Kafra Employee]";
-				mes "I'm sorry, but the";
-				mes "Pushcart rental service";
-				mes "is only available to Merchants,";
-				mes "Blacksmiths, Master Smiths,";
-				mes "Alchemists, Biochemists,";
-				mes "Mechanics and Geneticists.";
-				close2;
-				cutin "",255;
-				end;
-			}
-			if (checkcart()) {
-				mes "[Kafra Employee]";
-				mes "You already have";
-				mes "a Pushcart equipped.";
-				mes "Unfortunately, we can't";
-				mes "rent more than one to";
-				mes "each customer at a time.";
-				close2;
-				cutin "",255;
-				end;
-			}
-			mes "[Kafra Employee]";
-			mes "The Pushcart rental";
-			mes "fee is 800 zeny. Would";
-			mes "you like to rent a Pushcart?";
-			next;
-			switch (select("Rent a Pushcart.:Cancel")) {
-			case 1:
-				if (Zeny < 800) {
-					mes "[Kafra Employee]";
-					mes "I'm sorry, but you";
-					mes "don't have enough";
-					mes "zeny to pay the Pushcart";
-					mes "rental fee of 800 zeny.";
-					close2;
-					cutin "",255;
-					end;
-				}
-				set RESRVPTS,RESRVPTS+8;
-				set Zeny, Zeny - 800;
-				setcart;
-				close2;
-				cutin "",255;
-				end;
-			case 2:
-				close2;
-				cutin "",255;
-				end;
-			}
-		case 4:
-			mes "[Kafra Employee]";
-			mes "We, here at Kafra Corporation,";
-			mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence.";
-			close2;
-			cutin "",255;
-			end;
-		}
-	}
-	mes "[Kafra Employee]";
-	mes "I am instructed to only offer my services to the ^ff0000"+GetGuildName(.@GID)+"^000000 Guild. Please try another Kafra Employee around here. Sorry for the inconvenience.";
-	close2;
-	cutin "",255;
-	end;
-}
-
-// WoE : Castle Managers
-//============================================================
--	script	Castle Manager#cm::cm	-1,{
-
-	set .@GID,GetCastleData(strnpcinfo(2),1);
-
-	// .@guardiantype = Defines the types of guardians per castle basis.
-	// 1 - Soldier Guardian, 2 - Archer Guardian, 3 - Knight Guardian
-	// .@guardianposx = Define the x spawn point for each uardian.
-	// [0] = 1st guardian's x spawn point.
-	// .@guardianposy = Define the y spawn point for each guardian.
-	// [0] = 1st guardian's y spawn point.
-	// .@masterroom = Defines the coordinates of the Treasure Room.
-	if (strnpcinfo(2) == "aldeg_cas01") { 
-		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
-		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
-		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
-		setarray .@masterroom[0],113,223;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas02") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
-		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
-		setarray .@masterroom[0],134,225;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas03") {
-		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
-		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
-		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
-		setarray .@masterroom[0],229,267;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas04") {
-		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
-		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
-		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
-		setarray .@masterroom[0],83,17;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas05") {
-		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
-		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
-		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
-		setarray .@masterroom[0],64,8;
-	}
-	// Geffen (Britoniah) Castles
-	else if (strnpcinfo(2) == "gefg_cas01") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
-		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
-		setarray .@masterroom[0],152,117;
-	}
-	else if (strnpcinfo(2) == "gefg_cas02") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
-		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
-		setarray .@masterroom[0],145,115;
-	}
-	else if (strnpcinfo(2) == "gefg_cas03") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
-		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
-		setarray .@masterroom[0],275,289;
-	}
-	else if (strnpcinfo(2) == "gefg_cas04") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
-		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
-		setarray .@masterroom[0],116,123;
-	}
-	else if (strnpcinfo(2) == "gefg_cas05") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
-		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
-		setarray .@masterroom[0],149,106;
-	}
-	// Payon (Baulder) Castles
-	else if (strnpcinfo(2) == "payg_cas01") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
-		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
-		setarray .@masterroom[0],295,8;
-	}
-	else if (strnpcinfo(2) == "payg_cas02") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
-		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
-		setarray .@masterroom[0],141,149;
-	}
-	else if (strnpcinfo(2) == "payg_cas03") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
-		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
-		setarray .@masterroom[0],163,167;
-	}
-	else if (strnpcinfo(2) == "payg_cas04") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
-		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
-		setarray .@masterroom[0],151,47;
-	}
-	else if (strnpcinfo(2) == "payg_cas05") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
-		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
-		setarray .@masterroom[0],153,137;
-	}
-	// Prontera (Valkyrie Realms) Castles
-	else if (strnpcinfo(2) == "prtg_cas01") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
-		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
-		setarray .@masterroom[0],15,209;
-	}
-	else if (strnpcinfo(2) == "prtg_cas02") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
-		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
-		setarray .@masterroom[0],207,229;
-	}
-	else if (strnpcinfo(2) == "prtg_cas03") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
-		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
-		setarray .@masterroom[0],190,130;
-	}
-	else if (strnpcinfo(2) == "prtg_cas04") {
-		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
-		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
-		setarray .@masterroom[0],275,160;
-	}
-	else if (strnpcinfo(2) == "prtg_cas05") {
-		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
-		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
-		setarray .@masterroom[0],281,176;
-	}
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-
-	if (.@GID == 0) {
-		mes "["+strnpcinfo(1)+"]";
-		mes "I have been waiting for a master to fulfill my destiny.";
-		mes "Brave soul... fate will guide you towards your future...";
-		close;
-	}
-	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
-		mes "["+strnpcinfo(1)+"]";
-		mes "No matter how much you pester me, I'll still follow my master ^ff0000"+GetGuildMaster(.@GID)+"^000000. Where are the Guardians?! Send these ruffians away right now!";
-		close;
-	}
-	mes "["+strnpcinfo(1)+"]";
-	mes "Welcome. My honorable master, ^ff0000"+strcharinfo(0)+"^000000...";
-	mes "Your humble servent, "+strnpcinfo(1)+", is here to serve you.";
-	next;
-	switch (select("Castle briefing:Invest in commercial growth:Invest in Castle Defenses:Summon Guardian:Hire / Fire a Kafra Employee:Go into Master's room")) {
-	case 1:
-		mes "["+strnpcinfo(1)+"]";
-		mes "I will report the Castle briefing, Master.";
-		mes " ";
-		mes "^0000ffNow, the commercial growth level is "+GetCastleData(strnpcinfo(2),2)+".";
-		if (GetCastleData(strnpcinfo(2),4)) {
-			mes " You invested "+GetCastleData(strnpcinfo(2),4)+" times in past 1 day.";
-		}
-		mes " Now, the Castle Defense level is "+GetCastleData(strnpcinfo(2),3)+".^000000";
-		if (GetCastleData(strnpcinfo(2),5)) {
-			mes " ^0000ff- You invested "+GetCastleData(strnpcinfo(2),5)+" times in past 1 day.^000000";
-		}
-		mes " ";
-		mes "That's all I have to report, Master.";
-		close;
-	case 2:
-		if (.@Economy < 6) { set .@eco_invest,5000; }
-		else if ((.@Economy >= 6) && (.@Economy <= 10)) { set .@eco_invest,10000; }
-		else if ((.@Economy >= 11) && (.@Economy <= 15)) { set .@eco_invest,20000; }
-		else if ((.@Economy >= 16) && (.@Economy <= 20)) { set .@eco_invest,35000; }
-		else if ((.@Economy >= 21) && (.@Economy <= 25)) { set .@eco_invest,55000; }
-		else if ((.@Economy >= 26) && (.@Economy <= 30)) { set .@eco_invest,80000; }
-		else if ((.@Economy >= 31) && (.@Economy <= 35)) { set .@eco_invest,110000; }
-		else if ((.@Economy >= 36) && (.@Economy <= 40)) { set .@eco_invest,145000; }
-		else if ((.@Economy >= 41) && (.@Economy <= 45)) { set .@eco_invest,185000; }
-		else if ((.@Economy >= 46) && (.@Economy <= 50)) { set .@eco_invest,230000; }
-		else if ((.@Economy >= 51) && (.@Economy <= 55)) { set .@eco_invest,280000; }
-		else if ((.@Economy >= 56) && (.@Economy <= 60)) { set .@eco_invest,335000; }
-		else if ((.@Economy >= 61) && (.@Economy <= 65)) { set .@eco_invest,395000; }
-		else if ((.@Economy >= 66) && (.@Economy <= 70)) { set .@eco_invest,460000; }
-		else if ((.@Economy >= 71) && (.@Economy <= 75)) { set .@eco_invest,530000; }
-		else if ((.@Economy >= 76) && (.@Economy <= 80)) { set .@eco_invest,605000; }
-		else if ((.@Economy >= 81) && (.@Economy <= 85)) { set .@eco_invest,685000; }
-		else if ((.@Economy >= 86) && (.@Economy <= 90)) { set .@eco_invest,770000; }
-		else if ((.@Economy >= 91) && (.@Economy <= 95)) { set .@eco_invest,860000; }
-		else if ((.@Economy >= 96) && (.@Economy <= 100)) { set .@eco_invest,955000; }
-		//Quadruple the cost of investing if you've already invested once.
-		if (GetCastleData(strnpcinfo(2),4)) {
-			set .@eco_invest,.@eco_invest*4;
-		}
-		mes "["+strnpcinfo(1)+"]";
-		mes "If you invest in commercial growth, the quantity of goods made by the guild will increase. Therfore, if you consider our future, investments will be a necessity.";
-		mes " ";
-		mes "Initially, you are able to invest just once but if you pay more money, you will be able to invest twice.";
-		if (.@Economy == 100) {
-			mes " ";
-			mes "^ff0000The commercial growth level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great economist like you, Master.^000000";
-			end;
-		}
-		if (GetCastleData(strnpcinfo(2),4) >= 2) {
-			mes " ";
-			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect riches of the guild to grow at a high rate.";
-			end;
-		}
-		if (GetCastleData(strnpcinfo(2),4) == 0) {
-			mes " ";
-			mes "The current investment amount required is ^ff0000"+.@eco_invest+"^000000 zeny. Will you invest?";
-		}
-		else {
-			mes " ";
-			mes "You've invested once today... if you wish to invest once more, ^ff0000"+.@eco_invest+"^000000 more zeny will be needed.";
-		}
-		next;
-		switch (select("Invest in commercial growth:Cancel")) {
-		case 1:
-			if (Zeny < .@eco_invest) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
-				close;
-			}
-			set Zeny, Zeny - .@eco_invest;
-			SetCastleData strnpcinfo(2),4,GetCastleData(strnpcinfo(2),4)+1;
-			mes "[ "+strnpcinfo(1)+"]";
-			mes "We finished the investment safely. I expect that our growth level will be increased by tomorrow.";
-			close;
-		case 2:
-			mes "["+strnpcinfo(1)+"]";
-			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
-			close;
-		}
-	case 3:
-		set .@Defence,GetCastleData(strnpcinfo(2),3);
-		if (.@Defence < 6) { set .@def_invest,10000; }
-		else if ((.@Defence >= 6) && (.@Defence <= 10)) { set .@def_invest,20000; }
-		else if ((.@Defence >= 11) && (.@Defence <= 15)) { set .@def_invest,40000; }
-		else if ((.@Defence >= 16) && (.@Defence <= 20)) { set .@def_invest,70000; }
-		else if ((.@Defence >= 21) && (.@Defence <= 25)) { set .@def_invest,110000; }
-		else if ((.@Defence >= 26) && (.@Defence <= 30)) { set .@def_invest,160000; }
-		else if ((.@Defence >= 31) && (.@Defence <= 35)) { set .@def_invest,220000; }
-		else if ((.@Defence >= 36) && (.@Defence <= 40)) { set .@def_invest,290000; }
-		else if ((.@Defence >= 41) && (.@Defence <= 45)) { set .@def_invest,370000; }
-		else if ((.@Defence >= 46) && (.@Defence <= 50)) { set .@def_invest,460000; }
-		else if ((.@Defence >= 51) && (.@Defence <= 55)) { set .@def_invest,560000; }
-		else if ((.@Defence >= 56) && (.@Defence <= 60)) { set .@def_invest,670000; }
-		else if ((.@Defence >= 61) && (.@Defence <= 65)) { set .@def_invest,790000; }
-		else if ((.@Defence >= 66) && (.@Defence <= 70)) { set .@def_invest,920000; }
-		else if ((.@Defence >= 71) && (.@Defence <= 75)) { set .@def_invest,1060000; }
-		else if ((.@Defence >= 76) && (.@Defence <= 80)) { set .@def_invest,1210000; }
-		else if ((.@Defence >= 81) && (.@Defence <= 85)) { set .@def_invest,1370000; }
-		else if ((.@Defence >= 86) && (.@Defence <= 90)) { set .@def_invest,1540000; }
-		else if ((.@Defence >= 91) && (.@Defence <= 95)) { set .@def_invest,1720000; }
-		else if ((.@Defence >= 96) && (.@Defence <= 100)) { set .@def_invest,1910000; }
-		//Quadruple the cost of investing if you've already invested once.
-		if (GetCastleData(strnpcinfo(2),5)) {
-			set .@def_invest,.@def_invest*4;
-		}
-		mes "["+strnpcinfo(1)+"]";
-		mes "If you raise Castle Defenses, the durability of Guardians and the Emperium will increase. Therefore, if you consider our coming battles, some investment in this area will be required.";
-		mes " ";
-		mes "Originally you can invest just once but if you pay more money, you can invest twice.";
-		if (.@Defence == 100) {
-			mes " ";
-			mes "^ff0000But the Castle Defense level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great strategist like you, Master.^000000";
-			close;
-		}
-		if (GetCastleData(strnpcinfo(2),5) >= 2) {
-			mes " ";
-			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect the Defenses of the guild to grow at a high rate.";
-			close;
-		}
-		if (GetCastleData(strnpcinfo(2),5) == 0) {
-			mes " ";
-			mes "The current investment amount required is ^ff0000"+.@def_invest+"^000000 zeny. Will you invest?";
-		}
-		else {
-			mes " ";
-			mes "You've invested once today... if you wish to invest once more, ^ff0000"+.@def_invest+"^000000 more zeny will be needed.";
-		}
-		next;
-		switch (select("Invest in Castle Defenses.:Cancel")) {
-		case 1:
-			if (Zeny < .@def_invest) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
-				close;
-			}
-			set Zeny, Zeny - .@def_invest;
-			SetCastleData strnpcinfo(2),5,GetCastleData(strnpcinfo(2),5)+1;
-			mes "[ "+strnpcinfo(1)+"]";
-			mes "We finished the investment safely. I expect that our Castle Defense level will be increased by tomorrow.";
-			close;
-		case 2:
-			mes "["+strnpcinfo(1)+"]";
-			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
-			close;
-		}
-	case 4:
-		mes "["+strnpcinfo(1)+"]";
-		mes "Will you summon a Guardian? It'll be a protector to defend us loyally.";
-		mes "Please select a guardian to defend us.";
-		next;
-		for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
-			if (.@guardiantype[.@i] == 1) { set .@type$,"Guardian Soldier"; }
-			else if (.@guardiantype[.@i] == 2) { set .@type$,"Guardian Archer"; }
-			else { set .@type$,"Guardian Knight"; }
-			if (guardianinfo(strnpcinfo(2),.@i,0)) {
-				setarray .@gname$[.@i], .@type$ + " - Implemented (" + guardianinfo(strnpcinfo(2),.@i,2) + "/" + guardianinfo(strnpcinfo(2),.@i,1) + ")";
-			}
-			else {
-				setarray .@gname$[.@i], .@type$ + " - Not Implemented";
-			}
-		}
-		set .@menu$,.@gname$[0]+":"+.@gname$[1]+":"+.@gname$[2]+":"+.@gname$[3]+":"+.@gname$[4]+":"+.@gname$[5]+":"+.@gname$[6]+":"+.@gname$[7];
-		set .@GDnum,select(.@menu$)+9;
-		mes "["+strnpcinfo(1)+"]";
-		mes "Will you summon the chosen guardian? 10,000 zeny are required to summon a Guardian.";
-		next;
-		switch (select("Summon:Cancel")) {
-		case 1:
-			if (getgdskilllv(.@GID,10002) == 0) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "Master, we have not the resources to Summon the Guardian. If you want to accumulate them, you have to learn the Guild skill. We failed to summon the Guardian.";
-				close;
-			}
-			if (GetCastleData(strnpcinfo(2),.@GDnum) == 1) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "Master, you already have summoned that Guardian. We cannot summon another.";
-				close;
-			}
-			if (Zeny < 10000) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "Well... I'm sorry but we don't have funds to summon the Guardian. We failed to summon the Guardian.";
-				close;
-			}
-			set Zeny, Zeny - 10000;
-			SetCastleData strnpcinfo(2),.@GDnum,1; // mark as 'installed'
-			set .@UseGID,.@GDnum - 10;
-			if (.@guardiantype[.@UseGID] == 1) { set .@type,1287; }
-			else if (.@guardiantype[.@UseGID] == 2) { set .@type,1285; }
-			else { set .@type,1286; }
-			guardian strnpcinfo(2),.@guardianposx[.@UseGID],.@guardianposy[.@UseGID],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@UseGID;
-			mes "["+strnpcinfo(1)+"]";
-			mes "We completed the summoning of the Guardian. Our defenses are now increased with it in place.";
-			close;
-		case 2:
-			mes "["+strnpcinfo(1)+"]";
-			mes "I did as you ordered. But please remember if you the have money to spare, it'll be better to set it up.";
-			close;
-		}
-	case 5:
-		if (GetCastleData(strnpcinfo(2),9) == 1) {
-			mes "["+strnpcinfo(1)+"]";
-			mes "We are currently hiring a Kafra Employee... Do you want to fire the Kafra Employee?";
-			next;
-			switch (select("Fire:Cancel")) {
-			case 1:
-				cutin "kafra_01",2;
-				mes "[ Hired Kafra Employee ]";
-				mes "I worked so hard... How can you do that, Master?... Please... Please reconsider... Check it again, Master... Please...";
-				next;
-				switch (select("Fire:Cancel")) {
-				case 1:
-					mes "[ Hired Kafra Employee ]";
-					mes "Oh, my goodness! This is nonsense!";
-					next;
-					cutin "",255;
-					close;
-				case 2:
-					mes "[ Hired Kafra Employee ]";
-					mes "I'll work hard for you... Thank you!";
-					close;
-				}
-			case 2:
-				mes "["+strnpcinfo(1)+"]";
-				mes "She worked hard in my opinion. It was a good decision to keep her.";
-				close;
-			}
-			disablenpc "Kafra Staff#"+strnpcinfo(2);
-			SetCastleData strnpcinfo(2),9,0;
-			mes "["+strnpcinfo(1)+"]";
-			mes "....";
-			mes "I have discharged the Kafra Employee... But... are you unsatisfied with something?";
-			close;
-		}
-		mes "["+strnpcinfo(1)+"]";
-		mes "Will you contact the kafra Main Office and Hire a Employee for our Castle?";
-		mes "^ff0000 10,000 zeny is required for their services. ";
-		next;
-		switch (select("Hire.:Cancel")) {
-		case 1:
-			if (getgdskilllv(.@GID,10001) == 0) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "Master, we can't hire a Kafra Employee because we don't have a contract with the Kafra Main Office. If you want to obtain a contract with the Kafra Main Office, you will need to learn the Guild skill first.";
-				close;
-			}
-			if (Zeny < 10000) {
-				mes "["+strnpcinfo(1)+"]";
-				mes "Well... I'm sorry but we don't have enough funds to hire a Kafra Employee.";
-				close;
-			}
-			set Zeny, Zeny - 10000;
-			enablenpc "Kafra Staff#"+strnpcinfo(2);
-			SetCastleData strnpcinfo(2),9,1;
-			mes "["+strnpcinfo(1)+"]";
-			mes "We obtained a contract with the kafra Main Office, and hired a Kafra Employee.";
-			next;
-			cutin "kafra_01",2;
-			mes "[ Hired Kafra Employee ]";
-			mes "How do you do? I was dispatched from the Main Office.";
-			mes "I'll do my best to not tarnish the reputation of the Guild.";
-			next;
-			cutin "",255;
-			mes "["+strnpcinfo(1)+"]";
-			mes "The Contract terms of the hired Kafra Employee are for 1 month and after this term, you will need to to pay an additional fee.";
-			mes "It will be useful for our members.";
-			close;
-		case 2:
-			mes "["+strnpcinfo(1)+"]";
-			mes "I did as you ordered, but some of our members will be unhappy. It will be better to hire a Kafra Employee quickly.";
-			close;
-		}
-	case 6:
-		mes "["+strnpcinfo(1)+"]";
-		mes "Do you want to visit the room where our valuables are stored?";
-		mes "That room is restricted to you... you are the only one with access to it.";
-		next;
-		switch (select("Go into Master's room.:Cancel")) {
-		case 1:
-			mes "["+strnpcinfo(1)+"]";
-			mes "I'll show you the secret path. Follow me...please.";
-			mes "When you want to return here, please press the secret switch.";
-			close2;
-			warp strnpcinfo(2),.@masterroom[0],.@masterroom[1];
-			end;
-		case 2:
-			mes "["+strnpcinfo(1)+"]";
-			mes "Goods are produced once a day... if you don't remove them in time, they will not be produced anymore.";
-			mes "Therefore, it will be better if you check up on them from time to time.";
-			close;
-		}
-	}
-}
-
-// WoE : Guild Dungeon Entrances
-//============================================================
--	script	Lever#gd::gdlever	-1,{
-
-	set .@GID,GetCastleData(strnpcinfo(2),1);
-
-	if (.@GID == 0) {
-		mes "[Ringing Voice]";
-		mes "'Those who overcome an ordeal shows a great deal of bravery... and will find their way to another ordeal.'";
-		close;
-	}
-
-	if (compare(strnpcinfo(2),"aldeg")) {
-		set .@destination$,"gld_dun02";
-		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],32,122;
-		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],79,30;
-		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],165,38;
-		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],160,148;
-		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],103,169;
-	}
-	else if (compare(strnpcinfo(2),"gefg")) {
-		set .@destination$,"gld_dun04";
-		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],39,258;
-		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],125,270;
-		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],268,251;
-		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,108;
-		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],230,35;
-	}
-	else if (compare(strnpcinfo(2),"payg")) {
-		set .@destination$,"gld_dun01";
-		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],186,165;
-		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],54,165;
-		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],54,39;
-		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],186,39;
-		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],223,202;
-	}
-	else if (compare(strnpcinfo(2),"prtg")) {
-		set .@destination$,"gld_dun03";
-		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],28,251;
-		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],164,268;
-		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],164,179;
-		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,203;
-		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],199,28;
-	}
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-
-	mes "[Ringing Voice]";
-	mes "'Only the truly brave can take the test.'";
-	next;
-	mes " ";
-	mes "There's a small lever. Will you pull it?";
-	next;
-	if(select("Pull.:Don't pull.") == 1) {
-		if (getcharid(2) == .@GID) {
-			close2;
-			warp .@destination$,.@coordinates[0],.@coordinates[1];
-			end;
-		}
-		mes " ";
-		mes "Nothing happened.";
-		close;
-	}
-	close;
-}
-
-// Guardian Spawner Template
-//============================================================
--	script	Gld_Guard_Template::Gld_Guard_Template	-1,{
-// Spawn Guardians in castles
-// When adding new castles, ensure that the coordinates coincide
-// with the coordinates defined in the Guild Steward template.
-OnSpawnGuardians:
-	// Define the types of guardians on a per castle basis.
-	// 1 - Soldier Guardian; 2 - Archer Guardian; 3 - Knight Guardian
-	// Define the x spawn point for each uardian.
-	// [0] = 1st guardian's x spawn point.
-	// Define the y spawn point for each uardian.
-	// [0] = 1st guardian's y spawn point.
-	// Aldebaran (Luina) Castles
-	if (strnpcinfo(2) == "aldeg_cas01") { 
-		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
-		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
-		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas02") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
-		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas03") {
-		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
-		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
-		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas04") {
-		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
-		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
-		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas05") {
-		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
-		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
-		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
-	}
-	// Geffen (Britoniah) Castles
-	else if (strnpcinfo(2) == "gefg_cas01") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
-		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
-	}
-	else if (strnpcinfo(2) == "gefg_cas02") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
-		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
-	}
-	else if (strnpcinfo(2) == "gefg_cas03") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
-		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
-	}
-	else if (strnpcinfo(2) == "gefg_cas04") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
-		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
-	}
-	else if (strnpcinfo(2) == "gefg_cas05") {
-		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
-		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
-		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
-	}
-	// Payon (Baulder) Castles
-	else if (strnpcinfo(2) == "payg_cas01") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
-		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
-	}
-	else if (strnpcinfo(2) == "payg_cas02") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
-		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
-	}
-	else if (strnpcinfo(2) == "payg_cas03") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
-		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
-	}
-	else if (strnpcinfo(2) == "payg_cas04") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
-		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
-	}
-	else if (strnpcinfo(2) == "payg_cas05") {
-		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
-		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
-		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
-	}
-	// Prontera (Valkyrie Realms) Castles
-	else if (strnpcinfo(2) == "prtg_cas01") {
-		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
-		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
-		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
-	}
-	else if (strnpcinfo(2) == "prtg_cas02") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
-		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
-	}
-	else if (strnpcinfo(2) == "prtg_cas03") {
-		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
-		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
-		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
-	}
-	else if (strnpcinfo(2) == "prtg_cas04") {
-		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
-		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
-	}
-	else if (strnpcinfo(2) == "prtg_cas05") {
-		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
-		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
-		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
-	}
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-
-	// Kill all existing guardians before spawning new ones.
-	// This should prevent duplicating Guardians when char Server disconnects.
-	killmonster strnpcinfo(2),strnpcinfo(0)+"::OnGuardianDied";
-
-	for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
-		set .@UseGID,.@i + 10;
-		if (.@guardiantype[.@i] == 1) { set .@type,1287; }
-		else if (.@guardiantype[.@i] == 2) { set .@type,1285; }
-		else { set .@type,1286; }
-		if (GetCastleData(strnpcinfo(2),.@UseGID)) {
-			guardian strnpcinfo(2),.@guardianposx[.@i],.@guardianposy[.@i],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@i;
-		}
-	}
-	end;
-
-OnGuardianDied:
-	end;
-}
-
-// Treasure Room Spawn Template
-//============================================================
--	script	Gld_Trea_Spawn::Gld_Trea_Spawn	-1,{
-	end;
-
-OnClock0001:
-	// Do nothing if this script is the template.
-	if (strnpcinfo(1) == "Gld_Trea_Spawn") end;
-	
-	set .@GID, GetCastleData(strnpcinfo(2),1);
-	
-	// If there is no owner, do nothing.
-	if (!.@GID) end;
-
-	// Is there Economy in this castle?
-	set .@Treasure,GetCastleData(strnpcinfo(2),2)/5+4;
-
-	// Set information
-	if (strnpcinfo(2) == "aldeg_cas01") { 
-		set .@treasurebox,1324;
-		setarray .@treasurex[0],115,122,115,122,116,117,118,119,120,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116;
-		setarray .@treasurey[0],226,226,219,219,225,225,225,225,225,225,224,223,222,221,220,220,220,220,220,220,221,222,223,224;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas02") { 
-		set .@treasurebox,1326;
-		setarray .@treasurex[0],134,135,135,134,132,133,134,135,136,137,137,137,137,137,137,136,135,134,133,132,132,132,132,132;
-		setarray .@treasurey[0],231,231,230,230,233,233,233,233,233,233,232,231,230,229,228,228,228,228,228,228,229,230,231,232;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas03") { 
-		set .@treasurebox,1328;
-		setarray .@treasurex[0],224,225,225,224,222,223,224,225,226,227,227,227,227,227,227,226,225,224,223,222,222,222,222,222;
-		setarray .@treasurey[0],269,269,268,268,271,271,271,271,271,271,270,269,268,267,266,266,266,266,266,266,267,268,269,270;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas04") { 
-		set .@treasurebox,1330;
-		setarray .@treasurex[0],84,85,85,84,82,83,84,85,86,87,87,87,87,87,87,86,85,84,83,82,82,82,82,82;
-		setarray .@treasurey[0],13,13,12,12,15,15,15,15,15,15,14,13,12,11,10,10,10,10,10,10,11,12,13,14;
-	}
-	else if (strnpcinfo(2) == "aldeg_cas05") { 
-		set .@treasurebox,1332;
-		setarray .@treasurex[0],61,62,62,61,59,60,61,62,63,64,64,64,64,64,64,63,62,61,60,59,59,59,59,59;
-		setarray .@treasurey[0],12,12,11,11,14,14,14,14,14,14,13,12,11,10,9,9,9,9,9,9,10,11,12,13;
-	}
-	else if (strnpcinfo(2) == "gefg_cas01") { 
-		set .@treasurebox,1334;
-		setarray .@treasurex[0],153,154,154,153,151,152,153,154,155,156,156,156,156,156,156,155,154,153,152,151,151,151,151,151;
-		setarray .@treasurey[0],113,113,112,112,115,115,115,115,115,115,114,113,112,111,110,110,110,110,110,110,111,112,113,114;
-	}
-	else if (strnpcinfo(2) == "gefg_cas02") { 
-		set .@treasurebox,1336;
-		setarray .@treasurex[0],139,140,140,139,137,138,139,140,141,142,142,142,142,142,142,141,140,139,138,137,137,137,137,137;
-		setarray .@treasurey[0],115,115,114,114,117,117,117,117,117,117,116,115,114,113,112,112,112,112,112,112,113,114,115,116;
-	}
-	else if (strnpcinfo(2) == "gefg_cas03") { 
-		set .@treasurebox,1338;
-		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
-		setarray .@treasurey[0],291,291,290,290,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288,288,289,290,291,292;
-	}
-	else if (strnpcinfo(2) == "gefg_cas04") { 
-		set .@treasurebox,1340;
-		setarray .@treasurex[0],115,116,116,115,113,114,115,116,117,118,118,118,118,118,118,117,116,115,114,113,113,113,113,113;
-		setarray .@treasurey[0],119,119,118,118,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116,116,117,118,119,120;
-	}
-	else if (strnpcinfo(2) == "gefg_cas05") { 
-		set .@treasurebox,1342;
-		setarray .@treasurex[0],143,144,144,143,141,142,143,144,145,146,146,146,146,146,146,145,144,143,142,141,141,141,141,141;
-		setarray .@treasurey[0],110,110,109,109,112,112,112,112,112,112,111,110,109,108,107,107,107,107,107,107,108,109,110,111;
-	}
-	else if (strnpcinfo(2) == "payg_cas01") { 
-		set .@treasurebox,1344;
-		setarray .@treasurex[0],289,292,292,289,288,289,290,291,292,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288;
-		setarray .@treasurey[0],10,10,7,7,11,11,11,11,11,11,10,9,8,7,6,6,6,6,6,6,7,8,9,10;
-	}
-	else if (strnpcinfo(2) == "payg_cas02") { 
-		set .@treasurebox,1346;
-		setarray .@treasurex[0],143,146,146,143,142,143,144,145,146,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142;
-		setarray .@treasurey[0],146,146,143,143,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142,142,143,144,145,146;
-	}
-	else if (strnpcinfo(2) == "payg_cas03") { 
-		set .@treasurebox,1348;
-		setarray .@treasurex[0],158,159,159,158,156,157,158,159,160,161,161,161,161,161,161,160,159,158,157,156,156,156,156,156;
-		setarray .@treasurey[0],169,169,168,168,171,171,171,171,171,171,170,169,168,167,166,166,166,166,166,166,167,168,169,170;
-	}
-	else if (strnpcinfo(2) == "payg_cas04") { 
-		set .@treasurebox,1350;
-		setarray .@treasurex[0],146,147,147,146,144,145,146,147,148,149,149,149,149,149,149,148,147,146,145,144,144,144,144,144;
-		setarray .@treasurey[0],48,48,47,47,50,50,50,50,50,50,49,48,47,46,45,45,45,45,45,45,46,47,48,49;
-	}
-	else if (strnpcinfo(2) == "payg_cas05") { 
-		set .@treasurebox,1352;
-		setarray .@treasurex[0],155,158,158,155,154,155,156,157,158,159,159,159,159,159,159,158,157,156,155,154,154,154,154,154;
-		setarray .@treasurey[0],134,134,131,131,135,135,135,135,135,135,134,133,132,131,130,130,130,130,130,130,131,132,133,134;
-	}
-	else if (strnpcinfo(2) == "prtg_cas01") { 
-		set .@treasurebox,1354;
-		setarray .@treasurex[0],10,11,11,10,8,9,10,11,12,13,13,13,13,13,13,12,11,10,9,8,8,8,8,8;
-		setarray .@treasurey[0],209,209,208,208,211,211,211,211,211,211,210,209,208,207,206,206,206,206,206,206,207,208,209,210;
-	}
-	else if (strnpcinfo(2) == "prtg_cas02") { 
-		set .@treasurebox,1356;
-		setarray .@treasurex[0],201,202,202,201,199,200,201,202,203,204,204,204,204,204,204,203,202,201,200,199,199,199,199,199;
-		setarray .@treasurey[0],228,228,227,227,230,230,230,230,230,230,229,228,227,226,225,225,225,225,225,225,226,227,228,229;
-	}
-	else if (strnpcinfo(2) == "prtg_cas03") { 
-		set .@treasurebox,1358;
-		setarray .@treasurex[0],187,188,188,187,185,186,187,188,189,190,190,190,190,190,190,189,188,187,186,185,185,185,185,185;
-		setarray .@treasurey[0],132,132,131,131,134,134,134,134,134,134,133,132,131,130,129,129,129,129,129,129,130,131,132,133;
-	}
-	else if (strnpcinfo(2) == "prtg_cas04") { 
-		set .@treasurebox,1360;
-		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
-		setarray .@treasurey[0],162,162,161,161,164,164,164,164,164,164,163,162,161,160,159,159,159,159,159,159,160,161,162,163;
-	}
-	else if (strnpcinfo(2) == "prtg_cas05") { 
-		set .@treasurebox,1362;
-		setarray .@treasurex[0],275,276,276,275,273,274,275,276,277,278,278,278,278,278,278,277,276,275,274,273,273,273,273,273;
-		setarray .@treasurey[0],178,178,177,177,180,180,180,180,180,180,179,178,177,176,175,175,175,175,175,175,176,177,178,179;
-	}
-	// Add custom Guild Castles here.
-	else {
-		end;
-	}
-
-	// Apply investment to Eco. and Def. Only happens if there were investments made.
-	// Permanent Development can only happen once per day.
-	if (GetCastleData(strnpcinfo(2),4)) {
-		set .@Economy,GetCastleData(strnpcinfo(2),2);
-		SetCastleData strnpcinfo(2),2,.@Economy + GetCastleData(strnpcinfo(2),4) + (rand(2) && getgdskilllv(.@GID,10014));
-		if (GetCastleData(strnpcinfo(2),2) > 100) SetCastleData strnpcinfo(2),2,100;
-	}
-	if (GetCastleData(strnpcinfo(2),5)) {
-		set .@Defence,GetCastleData(strnpcinfo(2),3);
-		SetCastleData strnpcinfo(2),3,.@Defence + GetCastleData(strnpcinfo(2),5);
-		if (GetCastleData(strnpcinfo(2),3) > 100) SetCastleData strnpcinfo(2),3,100;
-	}
-	// Reset daily investment limits.
-	setcastledata strnpcinfo(2),4,0;
-	setcastledata strnpcinfo(2),5,0;
-
-	// Spawn boxes in proper order.
-	for (set .@i,0; .@i < .@Treasure ; set .@i,.@i+1) {
-		// set treasure box ID
-		set .@boxid, .@treasurebox + (.@i+2) % 2;
-		set .@box,1 << .@i;
-		// Spawn or do not spawn chests if one already exists.
-		if ((getd("$@"+strnpcinfo(2)+"_treasure") & .@box) == 0) {
-			monster strnpcinfo(2),.@treasurex[.@i],.@treasurey[.@i],"Treasure Chest",.@boxid,1,"Treasure#"+strnpcinfo(2)+"::OnTreasureDied"+.@i;
-			setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") | .@box;
-		}
-	}
-	end;
-
-// Individual "You killed a chest" events to ensure proper spawning at the change of day.
-OnTreasureDied0:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1;
-	end;
-OnTreasureDied1:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2;
-	end;
-OnTreasureDied2:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4;
-	end;
-OnTreasureDied3:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8;
-	end;
-OnTreasureDied4:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16;
-	end;
-OnTreasureDied5:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32;
-	end;
-OnTreasureDied6:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~64;
-	end;
-OnTreasureDied7:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~128;
-	end;
-OnTreasureDied8:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~256;
-	end;
-OnTreasureDied9:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~512;
-	end;
-OnTreasureDied10:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1024;
-	end;
-OnTreasureDied11:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2048;
-	end;
-OnTreasureDied12:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4096;
-	end;
-OnTreasureDied13:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8192;
-	end;
-OnTreasureDied14:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16384;
-	end;
-OnTreasureDied15:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32768;
-	end;
-OnTreasureDied16:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~65536;
-	end;
-OnTreasureDied17:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~131072;
-	end;
-OnTreasureDied18:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~262144;
-	end;
-OnTreasureDied19:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~524288;
-	end;
-OnTreasureDied20:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1048576;
-	end;
-OnTreasureDied21:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2097152;
-	end;
-OnTreasureDied22:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4194304;
-	end;
-OnTreasureDied23:
-	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8388608;
-	end;
-}
\ No newline at end of file
+//===== rAthena Script =======================================
+//= War of Emperium Guild Template File
+//===== By: ==================================================
+//= L0ne_W0lf
+//===== Current Version: =====================================
+//= 1.9
+//===== Compatible With: =====================================
+//= rAthena SVN
+//===== Description: =========================================
+//= [ Aegis Conversion]
+//= ----------------------------------------------------------
+//= - THIS FILE IS REQUIRED FOR GUILD CASTLES TO FUNCTION.
+//= ----------------------------------------------------------
+//= - Enables AGIT Manager inside Guild Strongholds.
+//=   Visible Name required: Agit
+//=   Manages the various functions used in and out of WoE.
+//=
+//= - Enables Stewards inside Guild Strongholds which let's
+//=   the guild master invest in Defense and Economy, and
+//=   to summon guardians, a Kafra, and enter master's room.
+//=
+//= - Guardian Spawning Template
+//=   Visible Name required: Guardian
+//=   Spawn guardians when guild castle data is recieved.
+//=
+//= - Enables Kafra Services inside Guild Strongholds.
+//=   Visible Name required: Kafra Employee
+//=   Storage, Guild Storage, Teleport Service, Cart rental.
+//=
+//= - Treasure Chest spawning.
+//=   Chests will NOT be saved anymore in the event of crashes.
+//=   Treasures will NOT spawn on a location that already has
+//=   treasure chest spawned.
+//===== Additional Comments: =================================
+//= 1.0 First Version. No longer uses functions. [L0ne_W0lf]
+//= 1.1 Daily investement will now be reset. [L0ne_W0lf]
+//=     Template will no longer try to spawn chests.
+//= 1.2 Fixed Eco Invest option charging twice. [L0ne_W0lf]
+//= 1.3 Fixed a loading flag emblem for Payon 1. [L0ne_W0lf]
+//=     Fixed two typos regarding Guild Steward name.
+//= 1.4 Fixed a typo in defense investment. [L0ne_W0lf]
+//= 1.5 Fixed spawn point of the emperium in Payon 1. [L0ne_W0lf]
+//=     Double-investing doubles the price now.
+//= 1.6 Corrected Zeny check when summoning guardians. [L0ne_W0lf]
+//=     Corrected cost for investing, thanks to Ai4rei.
+//=     Second invest is now quadruple the value of the first
+//=     Investing now happens at the turn of the day.
+//= 1.6a Corrected conditions in the new investing blocks. [L0ne_W0lf]
+//= 1.6b Moved where investments are added to eco/def. [L0ne_W0lf]
+//= 1.7 Updated Agitbreak announcements, added bc_woe [L0ne_W0lf]
+//=     and added extended anouncement format for mapannounce.
+//= 1.8 Fixed a possible exploit in guild castle investment. [Brian]
+//= 1.9 Partially rewrote Script. [Masao]
+//============================================================
+
+// WoE : Main Functions
+//============================================================
+-	script	Gld_Agit_Manager::Gld_Agit_Manager	-1,{
+	end;
+
+// War of Emperium has started.
+OnAgitStart:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	MapRespawnGuildID strnpcinfo(2),GetCastleData(strnpcinfo(2),1),2;
+	GvgOn strnpcinfo(2);
+
+// Spawn (fall through), or respawn the Emperium once it has been broken.
+OnStartArena:
+	// OnAgitStart will fall through and spawn the Emperium.
+	if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
+	else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
+	else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
+	else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
+	else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
+	else if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
+	else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
+	else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
+	else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
+	else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
+	else if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
+	else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
+	else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
+	else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
+	else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
+	else if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
+	else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
+	else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
+	else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
+	else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+	if (!mobcount(strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak")) {
+		monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Emperium",1288,1,"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
+	}
+	end;
+
+// The Emperium has been broken.
+OnAgitBreak:
+	set .@GID,getcharid(2);
+	// Show and log error if an unguilded player breaks the Emperium. (Should NEVER happen)
+	if (.@GID <= 0) {
+		set .@notice$,"Character "+strcharinfo(0)+" ("+getcharid(0)+") broke the Emperium in Castle: "+strnpcinfo(2)+" while guildless. No data will be saved and Emperium respawned.";
+ 		logmes .@notice$; debugmes .@notice$;
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+		end;
+	}
+	// Adjust Economy Invest Level for Castle
+	set .@Economy,GetCastleData(strnpcinfo(2),2) - 5;
+	if (.@Economy < 0) set .@Economy, 0;
+	SetCastleData strnpcinfo(2), 2, .@Economy;
+	// Adjust Defense Invest Level for Castle
+	set .@Defence,GetCastleData(strnpcinfo(2),3) - 5;
+	if (.@Defence < 0) set .@Defence, 0;
+	SetCastleData strnpcinfo(2), 3, .@Defence;
+
+	// Set new Castle Occupant
+	SetCastleData strnpcinfo(2),1, .@GID;
+
+	// Announce that the Emperium is destroyed, and respawn all but new castle-occupants.
+	mapannounce strnpcinfo(2),"The emperium has been destroyed.",bc_map|bc_woe,"0x00CCFF",FW_NORMAL,12;
+	MapRespawnGuildID strnpcinfo(2),.@GID,2;
+
+	// Refresh castle data, disable Kafra and reset Invest information.
+	donpcevent strnpcinfo(0)+"::OnRecvCastle";
+	disablenpc "Kafra Staff#"+strnpcinfo(2);
+	for( set .@i, 4; .@i <= 9; set .@i, .@i+1 ) {
+		SetCastleData strnpcinfo(2), .@i, 0;
+	}
+	// Erase Guardian Database information if the new owners do not have Guardian Research.
+	if( getgdskilllv(.@GID,10002) == 0 ) {
+		for( set .@i, 10; .@i <= 17; set .@i, .@i+1 ) {
+			SetCastleData strnpcinfo(2), .@i, 0;
+		}
+	}
+	// Respawn the Emperium, and display new owners.
+	sleep 500; // Slow down script execution slightly.
+	if( agitcheck() )
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+	sleep 7000;
+	announce "The [" + getcastlename(strnpcinfo(2)) + "] castle has been conquered by the [" + getguildName(.@GID) + "] guild.",bc_all|bc_woe;
+	end;
+
+// War of Emperium has ended.
+OnAgitEnd:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	GvgOff strnpcinfo(2);
+	// If the castle has no owner at the end of WoE, do not kill Emperium.
+	if (GetCastleData(strnpcinfo(2),1)) {
+		KillMonster strnpcinfo(2),"Agit#"+strnpcinfo(2)+"::OnAgitBreak";
+	}
+	end;
+
+// Occupying Guild has been disbanded.
+OnGuildBreak:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	// Kill guardians, disable the Kafra, and set owner to 0.
+	killmonster strnpcinfo(2),"Guardian#"+strnpcinfo(2)+"::OnGuardianDied";
+	disablenpc "Kafra Staff#"+strnpcinfo(2);
+	SetCastleData strnpcinfo(2),0,0;
+	// Wait before refreshing guild information.
+	sleep 7000;
+	Announce "Guild Base [" + GetCastleName(strnpcinfo(2)) + "] has been abandoned.",0;
+	donpcevent strnpcinfo(0)+"::OnRecvCastle";
+	end;
+
+OnAgitInit:
+OnRecvCastle:
+	if (strnpcinfo(0) == "Gld_Agit_Manager") end;
+	// Spawn Monsters if the castle is empty.
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+	if (.@GID == 0) {
+		killmonsterall strnpcinfo(2);
+		if (compare(strnpcinfo(2),"aldeg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
+			monster strnpcinfo(2),0,0,"Khalitzburg",1132,4;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,2;
+			monster strnpcinfo(2),0,0,"Executioner",1205,1;
+			monster strnpcinfo(2),0,0,"Penomena",1216,10;
+			monster strnpcinfo(2),0,0,"Alarm",1193,18;
+			monster strnpcinfo(2),0,0,"Clock",1269,9;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,7;
+			monster strnpcinfo(2),0,0,"Wanderer",1208,3;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Bloody Knight",1268,1;
+			monster strnpcinfo(2),0,0,"Dark Lord",1272,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "aldeg_cas01") { setarray .@emproom[0],216,23; }
+			else if (strnpcinfo(2) == "aldeg_cas02") { setarray .@emproom[0],213,23; }
+			else if (strnpcinfo(2) == "aldeg_cas03") { setarray .@emproom[0],205,31; }
+			else if (strnpcinfo(2) == "aldeg_cas04") { setarray .@emproom[0],36,217; }
+			else if (strnpcinfo(2) == "aldeg_cas05") { setarray .@emproom[0],27,101; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Dark Lord",1272,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Tower Keeper",1270,4;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Bloody Knight",1268,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Abysmal Knight",1219,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		else if (compare(strnpcinfo(2),"gefg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Evil Druid",1117,10;
+			monster strnpcinfo(2),0,0,"Wind Ghost",1263,11;
+			monster strnpcinfo(2),0,0,"Bathory",1102,10;
+			monster strnpcinfo(2),0,0,"Jakk",1130,10;
+			monster strnpcinfo(2),0,0,"Marduk",1140,20;
+			monster strnpcinfo(2),0,0,"Raydric",1163,9;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,1;
+			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),0,0,"Phreeoni",1159,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "gefg_cas01") { setarray .@emproom[0],197,181; }
+			else if (strnpcinfo(2) == "gefg_cas02") { setarray .@emproom[0],176,178; }
+			else if (strnpcinfo(2) == "gefg_cas03") { setarray .@emproom[0],244,166; }
+			else if (strnpcinfo(2) == "gefg_cas04") { setarray .@emproom[0],174,177; }
+			else if (strnpcinfo(2) == "gefg_cas05") { setarray .@emproom[0],194,184; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Mysteltainn",1203,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Hero",1087,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"High Orc",1213,10;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Orc Archer",1189,10;
+		}
+		else if (compare(strnpcinfo(2),"payg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Greatest General",1277,9;
+			monster strnpcinfo(2),0,0,"Wanderer",1208,10;
+			monster strnpcinfo(2),0,0,"Mutant Dragonoid",1262,5;
+			monster strnpcinfo(2),0,0,"Bathory",1102,5;
+			monster strnpcinfo(2),0,0,"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),0,0,"Eddga",1115,1;
+			monster strnpcinfo(2),0,0,"Horong",1129,11;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
+			monster strnpcinfo(2),0,0,"Kobold Archer",1282,4;
+			monster strnpcinfo(2),0,0,"Gargoyle",1253,5;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "payg_cas01") { setarray .@emproom[0],139,139; }
+			else if (strnpcinfo(2) == "payg_cas02") { setarray .@emproom[0],38,25; }
+			else if (strnpcinfo(2) == "payg_cas03") { setarray .@emproom[0],269,265; }
+			else if (strnpcinfo(2) == "payg_cas04") { setarray .@emproom[0],270,28; }
+			else if (strnpcinfo(2) == "payg_cas05") { setarray .@emproom[0],30,30; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Moonlight Flower",1150,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Eddga",1115,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Wanderer",1208,6;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		else if (compare(strnpcinfo(2),"prtg")) {
+			// Normal Spawns
+			monster strnpcinfo(2),0,0,"Raydric",1163,1;
+			monster strnpcinfo(2),0,0,"Khalitzburg",1132,10;
+			monster strnpcinfo(2),0,0,"Abysmal Knight",1219,5;
+			monster strnpcinfo(2),0,0,"Bloody Knight",1268,5;
+			monster strnpcinfo(2),0,0,"Stormy Knight",1251,1;
+			monster strnpcinfo(2),0,0,"Hatii",1252,1;
+			monster strnpcinfo(2),0,0,"Raydric Archer",1276,5;
+			monster strnpcinfo(2),0,0,"Gryphon",1259,2;
+			monster strnpcinfo(2),0,0,"Chimera",1283,3;
+			monster strnpcinfo(2),0,0,"Alice",1275,1;
+			monster strnpcinfo(2),0,0,"Zealotus",1200,1;
+			// Set Emperium room spawn coordinates and spawn monsters.
+			if (strnpcinfo(2) == "prtg_cas01") { setarray .@emproom[0],197,197; }
+			else if (strnpcinfo(2) == "prtg_cas02") { setarray .@emproom[0],157,174; }
+			else if (strnpcinfo(2) == "prtg_cas03") { setarray .@emproom[0],16,220; }
+			else if (strnpcinfo(2) == "prtg_cas04") { setarray .@emproom[0],291,14; }
+			else if (strnpcinfo(2) == "prtg_cas05") { setarray .@emproom[0],266,266; }
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1268,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Master",1251,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Hatii",1252,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Guardian Knight",1219,1;
+			monster strnpcinfo(2),.@emproom[0],.@emproom[1],"Raydric Archer",1276,5;
+		}
+		// Add custom Guild Castles here.
+		else {
+			end;
+		}
+		donpcevent "Agit#"+strnpcinfo(2)+"::OnStartArena";
+		// Disable Kafra Staff...
+		disablenpc "Kafra Staff#"+strnpcinfo(2);
+		end;
+	}
+	else {
+		// Otherwise place the guild emblem on flags.
+		if (strnpcinfo(2) == "aldeg_cas01") { donpcevent "::OnRecvCastleA01"; }
+		else if (strnpcinfo(2) == "aldeg_cas02") { donpcevent "::OnRecvCastleA02"; }
+		else if (strnpcinfo(2) == "aldeg_cas03") { donpcevent "::OnRecvCastleA03"; }
+		else if (strnpcinfo(2) == "aldeg_cas04") { donpcevent "::OnRecvCastleA04"; }
+		else if (strnpcinfo(2) == "aldeg_cas05") { donpcevent "::OnRecvCastleA05"; }
+		else if (strnpcinfo(2) == "gefg_cas01") { donpcevent "::OnRecvCastleG01"; }
+		else if (strnpcinfo(2) == "gefg_cas02") { donpcevent "::OnRecvCastleG02"; }
+		else if (strnpcinfo(2) == "gefg_cas03") { donpcevent "::OnRecvCastleG03"; }
+		else if (strnpcinfo(2) == "gefg_cas04") { donpcevent "::OnRecvCastleG04"; }
+		else if (strnpcinfo(2) == "gefg_cas05") { donpcevent "::OnRecvCastleG05"; }
+		else if (strnpcinfo(2) == "payg_cas01") { donpcevent "::OnRecvCastlePy01"; }
+		else if (strnpcinfo(2) == "payg_cas02") { donpcevent "::OnRecvCastlePy02"; }
+		else if (strnpcinfo(2) == "payg_cas03") { donpcevent "::OnRecvCastlePy03"; }
+		else if (strnpcinfo(2) == "payg_cas04") { donpcevent "::OnRecvCastlePy04"; }
+		else if (strnpcinfo(2) == "payg_cas05") { donpcevent "::OnRecvCastlePy05"; }
+		else if (strnpcinfo(2) == "prtg_cas01") { donpcevent "::OnRecvCastlePt01"; }
+		else if (strnpcinfo(2) == "prtg_cas02") { donpcevent "::OnRecvCastlePt02"; }
+		else if (strnpcinfo(2) == "prtg_cas03") { donpcevent "::OnRecvCastlePt03"; }
+		else if (strnpcinfo(2) == "prtg_cas04") { donpcevent "::OnRecvCastlePt04"; }
+		else if (strnpcinfo(2) == "prtg_cas05") { donpcevent "::OnRecvCastlePt05"; }
+		// Add custom Guild Castles here.
+		else {
+			end;
+		}
+		// And load purchased Guardian in castles.
+		donpcevent "Guardian#"+strnpcinfo(2)+"::OnSpawnGuardians";
+		// And display Kafra if purchased.
+		if (GetCastleData(strnpcinfo(2),9) < 1) disablenpc "Kafra Staff#"+strnpcinfo(2);
+	}
+	end;
+}
+
+// WoE : Guild Kafras
+//============================================================
+-	script	Kafra Staff#woe::guildkafra	-1,{
+
+	set .@GID,GetCastleData(strnpcinfo(2),1);
+
+	if (compare(strnpcinfo(2),"aldeg")) {
+		setarray .@destination$[0],"Al De Baran","aldebaran";
+		setarray .@coordinates[0],132,103;
+	}
+	else if (compare(strnpcinfo(2),"gefg")) {
+		setarray .@destination$[0],"Geffen","geffen";
+		setarray .@coordinates[0],120,39;
+	}
+	else if (compare(strnpcinfo(2),"payg")) {
+		setarray .@destination$[0],"Payon","payon";
+		setarray .@coordinates[0],70,100;
+	}
+	else if (compare(strnpcinfo(2),"prtg")) {
+		setarray .@destination$[0],"Prontera","prontera";
+		setarray .@coordinates[0],278,211;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	cutin "kafra_01",2;
+	if (getcharid(2) == .@GID) {
+		mes "[Kafra Employee]";
+		mes "Welcome. ^ff0000" + GetGuildName(.@GID) + "^000000 Member.";
+		mes "The Kafra Corporation will stay with you wherever you go.";
+		next;
+		switch (select("Use Storage:Use Teleport Service:Rent a Pushcart:Cancel")) {
+		case 1:
+			if (getskilllv("NV_BASIC") < 6) {
+				mes "[Kafra Employee]";
+				mes "I'm sorry, but you";
+				mes "need the Novice's";
+				mes "Basic Skill Level 6 to";
+				mes "use the Storage Service.";
+				close2;
+				cutin "",255;
+				end;
+			}
+			mes "[Kafra Employee]";
+			mes "Here, let me open";
+			mes "your Storage for you.";
+			mes "Thank you for using";
+			mes "the Kafra Service.";
+			close2;
+			cutin "",255;
+			openstorage;
+			end;
+		case 2:
+			mes "[Kafra Employee]";
+			mes "Please choose";
+			mes "your destination.";
+			next;
+			switch (select(.@destination$+" -> 200z:Cancel")) {
+			case 1:
+				if (Zeny < 200) {
+					mes "[Kafra Employee]";
+					mes "I'm sorry, but you don't have";
+					mes "enough zeny for the Teleport";
+					mes "Service. The fee to teleport";
+					mes "to "+.@destination$+" is 200 zeny.";
+					close2;
+					cutin "",255;
+					end;
+				}
+				set Zeny, Zeny - 200;
+				set RESRVPTS,RESRVPTS+2;
+				close2;
+				warp .@destination$[1],.@coordinates[0],.@coordinates[1];
+				end;
+			case 2:
+				close2;
+				cutin "",255;
+				end;
+			}
+		case 3:
+			if (BaseClass != Job_Merchant) {
+				mes "[Kafra Employee]";
+				mes "I'm sorry, but the";
+				mes "Pushcart rental service";
+				mes "is only available to Merchants,";
+				mes "Blacksmiths, Master Smiths,";
+				mes "Alchemists, Biochemists,";
+				mes "Mechanics and Geneticists.";
+				close2;
+				cutin "",255;
+				end;
+			}
+			if (checkcart()) {
+				mes "[Kafra Employee]";
+				mes "You already have";
+				mes "a Pushcart equipped.";
+				mes "Unfortunately, we can't";
+				mes "rent more than one to";
+				mes "each customer at a time.";
+				close2;
+				cutin "",255;
+				end;
+			}
+			mes "[Kafra Employee]";
+			mes "The Pushcart rental";
+			mes "fee is 800 zeny. Would";
+			mes "you like to rent a Pushcart?";
+			next;
+			switch (select("Rent a Pushcart.:Cancel")) {
+			case 1:
+				if (Zeny < 800) {
+					mes "[Kafra Employee]";
+					mes "I'm sorry, but you";
+					mes "don't have enough";
+					mes "zeny to pay the Pushcart";
+					mes "rental fee of 800 zeny.";
+					close2;
+					cutin "",255;
+					end;
+				}
+				set RESRVPTS,RESRVPTS+8;
+				set Zeny, Zeny - 800;
+				setcart;
+				close2;
+				cutin "",255;
+				end;
+			case 2:
+				close2;
+				cutin "",255;
+				end;
+			}
+		case 4:
+			mes "[Kafra Employee]";
+			mes "We, here at Kafra Corporation,";
+			mes "are always endeavoring to provide you with the best services. We hope that we meet your adventuring needs and standards of excellence.";
+			close2;
+			cutin "",255;
+			end;
+		}
+	}
+	mes "[Kafra Employee]";
+	mes "I am instructed to only offer my services to the ^ff0000"+GetGuildName(.@GID)+"^000000 Guild. Please try another Kafra Employee around here. Sorry for the inconvenience.";
+	close2;
+	cutin "",255;
+	end;
+}
+
+// WoE : Castle Managers
+//============================================================
+-	script	Castle Manager#cm::cm	-1,{
+
+	set .@GID,GetCastleData(strnpcinfo(2),1);
+
+	// .@guardiantype = Defines the types of guardians per castle basis.
+	// 1 - Soldier Guardian, 2 - Archer Guardian, 3 - Knight Guardian
+	// .@guardianposx = Define the x spawn point for each uardian.
+	// [0] = 1st guardian's x spawn point.
+	// .@guardianposy = Define the y spawn point for each guardian.
+	// [0] = 1st guardian's y spawn point.
+	// .@masterroom = Defines the coordinates of the Treasure Room.
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
+		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
+		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
+		setarray .@masterroom[0],113,223;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
+		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
+		setarray .@masterroom[0],134,225;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") {
+		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
+		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
+		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
+		setarray .@masterroom[0],229,267;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") {
+		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
+		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
+		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
+		setarray .@masterroom[0],83,17;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
+		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
+		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
+		setarray .@masterroom[0],64,8;
+	}
+	// Geffen (Britoniah) Castles
+	else if (strnpcinfo(2) == "gefg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
+		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
+		setarray .@masterroom[0],152,117;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
+		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
+		setarray .@masterroom[0],145,115;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
+		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
+		setarray .@masterroom[0],275,289;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
+		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
+		setarray .@masterroom[0],116,123;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
+		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
+		setarray .@masterroom[0],149,106;
+	}
+	// Payon (Baulder) Castles
+	else if (strnpcinfo(2) == "payg_cas01") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
+		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
+		setarray .@masterroom[0],295,8;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
+		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
+		setarray .@masterroom[0],141,149;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
+		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
+		setarray .@masterroom[0],163,167;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
+		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
+		setarray .@masterroom[0],151,47;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
+		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
+		setarray .@masterroom[0],153,137;
+	}
+	// Prontera (Valkyrie Realms) Castles
+	else if (strnpcinfo(2) == "prtg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
+		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
+		setarray .@masterroom[0],15,209;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
+		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
+		setarray .@masterroom[0],207,229;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
+		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
+		setarray .@masterroom[0],190,130;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
+		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
+		setarray .@masterroom[0],275,160;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
+		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
+		setarray .@masterroom[0],281,176;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	if (.@GID == 0) {
+		mes "["+strnpcinfo(1)+"]";
+		mes "I have been waiting for a master to fulfill my destiny.";
+		mes "Brave soul... fate will guide you towards your future...";
+		close;
+	}
+	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
+		mes "["+strnpcinfo(1)+"]";
+		mes "No matter how much you pester me, I'll still follow my master ^ff0000"+GetGuildMaster(.@GID)+"^000000. Where are the Guardians?! Send these ruffians away right now!";
+		close;
+	}
+	mes "["+strnpcinfo(1)+"]";
+	mes "Welcome. My honorable master, ^ff0000"+strcharinfo(0)+"^000000...";
+	mes "Your humble servent, "+strnpcinfo(1)+", is here to serve you.";
+	next;
+	switch (select("Castle briefing:Invest in commercial growth:Invest in Castle Defenses:Summon Guardian:Hire / Fire a Kafra Employee:Go into Master's room")) {
+	case 1:
+		mes "["+strnpcinfo(1)+"]";
+		mes "I will report the Castle briefing, Master.";
+		mes " ";
+		mes "^0000ffNow, the commercial growth level is "+GetCastleData(strnpcinfo(2),2)+".";
+		if (GetCastleData(strnpcinfo(2),4)) {
+			mes " You invested "+GetCastleData(strnpcinfo(2),4)+" times in past 1 day.";
+		}
+		mes " Now, the Castle Defense level is "+GetCastleData(strnpcinfo(2),3)+".^000000";
+		if (GetCastleData(strnpcinfo(2),5)) {
+			mes " ^0000ff- You invested "+GetCastleData(strnpcinfo(2),5)+" times in past 1 day.^000000";
+		}
+		mes " ";
+		mes "That's all I have to report, Master.";
+		close;
+	case 2:
+		if (.@Economy < 6) { set .@eco_invest,5000; }
+		else if ((.@Economy >= 6) && (.@Economy <= 10)) { set .@eco_invest,10000; }
+		else if ((.@Economy >= 11) && (.@Economy <= 15)) { set .@eco_invest,20000; }
+		else if ((.@Economy >= 16) && (.@Economy <= 20)) { set .@eco_invest,35000; }
+		else if ((.@Economy >= 21) && (.@Economy <= 25)) { set .@eco_invest,55000; }
+		else if ((.@Economy >= 26) && (.@Economy <= 30)) { set .@eco_invest,80000; }
+		else if ((.@Economy >= 31) && (.@Economy <= 35)) { set .@eco_invest,110000; }
+		else if ((.@Economy >= 36) && (.@Economy <= 40)) { set .@eco_invest,145000; }
+		else if ((.@Economy >= 41) && (.@Economy <= 45)) { set .@eco_invest,185000; }
+		else if ((.@Economy >= 46) && (.@Economy <= 50)) { set .@eco_invest,230000; }
+		else if ((.@Economy >= 51) && (.@Economy <= 55)) { set .@eco_invest,280000; }
+		else if ((.@Economy >= 56) && (.@Economy <= 60)) { set .@eco_invest,335000; }
+		else if ((.@Economy >= 61) && (.@Economy <= 65)) { set .@eco_invest,395000; }
+		else if ((.@Economy >= 66) && (.@Economy <= 70)) { set .@eco_invest,460000; }
+		else if ((.@Economy >= 71) && (.@Economy <= 75)) { set .@eco_invest,530000; }
+		else if ((.@Economy >= 76) && (.@Economy <= 80)) { set .@eco_invest,605000; }
+		else if ((.@Economy >= 81) && (.@Economy <= 85)) { set .@eco_invest,685000; }
+		else if ((.@Economy >= 86) && (.@Economy <= 90)) { set .@eco_invest,770000; }
+		else if ((.@Economy >= 91) && (.@Economy <= 95)) { set .@eco_invest,860000; }
+		else if ((.@Economy >= 96) && (.@Economy <= 100)) { set .@eco_invest,955000; }
+		//Quadruple the cost of investing if you've already invested once.
+		if (GetCastleData(strnpcinfo(2),4)) {
+			set .@eco_invest,.@eco_invest*4;
+		}
+		mes "["+strnpcinfo(1)+"]";
+		mes "If you invest in commercial growth, the quantity of goods made by the guild will increase. Therfore, if you consider our future, investments will be a necessity.";
+		mes " ";
+		mes "Initially, you are able to invest just once but if you pay more money, you will be able to invest twice.";
+		if (.@Economy == 100) {
+			mes " ";
+			mes "^ff0000The commercial growth level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great economist like you, Master.^000000";
+			end;
+		}
+		if (GetCastleData(strnpcinfo(2),4) >= 2) {
+			mes " ";
+			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect riches of the guild to grow at a high rate.";
+			end;
+		}
+		if (GetCastleData(strnpcinfo(2),4) == 0) {
+			mes " ";
+			mes "The current investment amount required is ^ff0000"+.@eco_invest+"^000000 zeny. Will you invest?";
+		}
+		else {
+			mes " ";
+			mes "You've invested once today... if you wish to invest once more, ^ff0000"+.@eco_invest+"^000000 more zeny will be needed.";
+		}
+		next;
+		switch (select("Invest in commercial growth:Cancel")) {
+		case 1:
+			if (Zeny < .@eco_invest) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
+				close;
+			}
+			set Zeny, Zeny - .@eco_invest;
+			SetCastleData strnpcinfo(2),4,GetCastleData(strnpcinfo(2),4)+1;
+			mes "[ "+strnpcinfo(1)+"]";
+			mes "We finished the investment safely. I expect that our growth level will be increased by tomorrow.";
+			close;
+		case 2:
+			mes "["+strnpcinfo(1)+"]";
+			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
+			close;
+		}
+	case 3:
+		set .@Defence,GetCastleData(strnpcinfo(2),3);
+		if (.@Defence < 6) { set .@def_invest,10000; }
+		else if ((.@Defence >= 6) && (.@Defence <= 10)) { set .@def_invest,20000; }
+		else if ((.@Defence >= 11) && (.@Defence <= 15)) { set .@def_invest,40000; }
+		else if ((.@Defence >= 16) && (.@Defence <= 20)) { set .@def_invest,70000; }
+		else if ((.@Defence >= 21) && (.@Defence <= 25)) { set .@def_invest,110000; }
+		else if ((.@Defence >= 26) && (.@Defence <= 30)) { set .@def_invest,160000; }
+		else if ((.@Defence >= 31) && (.@Defence <= 35)) { set .@def_invest,220000; }
+		else if ((.@Defence >= 36) && (.@Defence <= 40)) { set .@def_invest,290000; }
+		else if ((.@Defence >= 41) && (.@Defence <= 45)) { set .@def_invest,370000; }
+		else if ((.@Defence >= 46) && (.@Defence <= 50)) { set .@def_invest,460000; }
+		else if ((.@Defence >= 51) && (.@Defence <= 55)) { set .@def_invest,560000; }
+		else if ((.@Defence >= 56) && (.@Defence <= 60)) { set .@def_invest,670000; }
+		else if ((.@Defence >= 61) && (.@Defence <= 65)) { set .@def_invest,790000; }
+		else if ((.@Defence >= 66) && (.@Defence <= 70)) { set .@def_invest,920000; }
+		else if ((.@Defence >= 71) && (.@Defence <= 75)) { set .@def_invest,1060000; }
+		else if ((.@Defence >= 76) && (.@Defence <= 80)) { set .@def_invest,1210000; }
+		else if ((.@Defence >= 81) && (.@Defence <= 85)) { set .@def_invest,1370000; }
+		else if ((.@Defence >= 86) && (.@Defence <= 90)) { set .@def_invest,1540000; }
+		else if ((.@Defence >= 91) && (.@Defence <= 95)) { set .@def_invest,1720000; }
+		else if ((.@Defence >= 96) && (.@Defence <= 100)) { set .@def_invest,1910000; }
+		//Quadruple the cost of investing if you've already invested once.
+		if (GetCastleData(strnpcinfo(2),5)) {
+			set .@def_invest,.@def_invest*4;
+		}
+		mes "["+strnpcinfo(1)+"]";
+		mes "If you raise Castle Defenses, the durability of Guardians and the Emperium will increase. Therefore, if you consider our coming battles, some investment in this area will be required.";
+		mes " ";
+		mes "Originally you can invest just once but if you pay more money, you can invest twice.";
+		if (.@Defence == 100) {
+			mes " ";
+			mes "^ff0000But the Castle Defense level of our Castle is at it's highest, 100%. No more investments are needed. Just as I have expected from a great strategist like you, Master.^000000";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),5) >= 2) {
+			mes " ";
+			mes "^ff0000You have already invested twice today. You cannot invest any more.^000000 I expect the Defenses of the guild to grow at a high rate.";
+			close;
+		}
+		if (GetCastleData(strnpcinfo(2),5) == 0) {
+			mes " ";
+			mes "The current investment amount required is ^ff0000"+.@def_invest+"^000000 zeny. Will you invest?";
+		}
+		else {
+			mes " ";
+			mes "You've invested once today... if you wish to invest once more, ^ff0000"+.@def_invest+"^000000 more zeny will be needed.";
+		}
+		next;
+		switch (select("Invest in Castle Defenses.:Cancel")) {
+		case 1:
+			if (Zeny < .@def_invest) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master.";
+				close;
+			}
+			set Zeny, Zeny - .@def_invest;
+			SetCastleData strnpcinfo(2),5,GetCastleData(strnpcinfo(2),5)+1;
+			mes "[ "+strnpcinfo(1)+"]";
+			mes "We finished the investment safely. I expect that our Castle Defense level will be increased by tomorrow.";
+			close;
+		case 2:
+			mes "["+strnpcinfo(1)+"]";
+			mes "I'll do as you bid, my master... There is no hurry. We will do our best.";
+			close;
+		}
+	case 4:
+		mes "["+strnpcinfo(1)+"]";
+		mes "Will you summon a Guardian? It'll be a protector to defend us loyally.";
+		mes "Please select a guardian to defend us.";
+		next;
+		for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
+			if (.@guardiantype[.@i] == 1) { set .@type$,"Guardian Soldier"; }
+			else if (.@guardiantype[.@i] == 2) { set .@type$,"Guardian Archer"; }
+			else { set .@type$,"Guardian Knight"; }
+			if (guardianinfo(strnpcinfo(2),.@i,0)) {
+				setarray .@gname$[.@i], .@type$ + " - Implemented (" + guardianinfo(strnpcinfo(2),.@i,2) + "/" + guardianinfo(strnpcinfo(2),.@i,1) + ")";
+			}
+			else {
+				setarray .@gname$[.@i], .@type$ + " - Not Implemented";
+			}
+		}
+		set .@menu$,.@gname$[0]+":"+.@gname$[1]+":"+.@gname$[2]+":"+.@gname$[3]+":"+.@gname$[4]+":"+.@gname$[5]+":"+.@gname$[6]+":"+.@gname$[7];
+		set .@GDnum,select(.@menu$)+9;
+		mes "["+strnpcinfo(1)+"]";
+		mes "Will you summon the chosen guardian? 10,000 zeny are required to summon a Guardian.";
+		next;
+		switch (select("Summon:Cancel")) {
+		case 1:
+			if (getgdskilllv(.@GID,10002) == 0) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "Master, we have not the resources to Summon the Guardian. If you want to accumulate them, you have to learn the Guild skill. We failed to summon the Guardian.";
+				close;
+			}
+			if (GetCastleData(strnpcinfo(2),.@GDnum) == 1) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "Master, you already have summoned that Guardian. We cannot summon another.";
+				close;
+			}
+			if (Zeny < 10000) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "Well... I'm sorry but we don't have funds to summon the Guardian. We failed to summon the Guardian.";
+				close;
+			}
+			set Zeny, Zeny - 10000;
+			SetCastleData strnpcinfo(2),.@GDnum,1; // mark as 'installed'
+			set .@UseGID,.@GDnum - 10;
+			if (.@guardiantype[.@UseGID] == 1) { set .@type,1287; }
+			else if (.@guardiantype[.@UseGID] == 2) { set .@type,1285; }
+			else { set .@type,1286; }
+			guardian strnpcinfo(2),.@guardianposx[.@UseGID],.@guardianposy[.@UseGID],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@UseGID;
+			mes "["+strnpcinfo(1)+"]";
+			mes "We completed the summoning of the Guardian. Our defenses are now increased with it in place.";
+			close;
+		case 2:
+			mes "["+strnpcinfo(1)+"]";
+			mes "I did as you ordered. But please remember if you the have money to spare, it'll be better to set it up.";
+			close;
+		}
+	case 5:
+		if (GetCastleData(strnpcinfo(2),9) == 1) {
+			mes "["+strnpcinfo(1)+"]";
+			mes "We are currently hiring a Kafra Employee... Do you want to fire the Kafra Employee?";
+			next;
+			switch (select("Fire:Cancel")) {
+			case 1:
+				cutin "kafra_01",2;
+				mes "[ Hired Kafra Employee ]";
+				mes "I worked so hard... How can you do that, Master?... Please... Please reconsider... Check it again, Master... Please...";
+				next;
+				switch (select("Fire:Cancel")) {
+				case 1:
+					mes "[ Hired Kafra Employee ]";
+					mes "Oh, my goodness! This is nonsense!";
+					next;
+					cutin "",255;
+					close;
+				case 2:
+					mes "[ Hired Kafra Employee ]";
+					mes "I'll work hard for you... Thank you!";
+					close;
+				}
+			case 2:
+				mes "["+strnpcinfo(1)+"]";
+				mes "She worked hard in my opinion. It was a good decision to keep her.";
+				close;
+			}
+			disablenpc "Kafra Staff#"+strnpcinfo(2);
+			SetCastleData strnpcinfo(2),9,0;
+			mes "["+strnpcinfo(1)+"]";
+			mes "....";
+			mes "I have discharged the Kafra Employee... But... are you unsatisfied with something?";
+			close;
+		}
+		mes "["+strnpcinfo(1)+"]";
+		mes "Will you contact the kafra Main Office and Hire a Employee for our Castle?";
+		mes "^ff0000 10,000 zeny is required for their services. ";
+		next;
+		switch (select("Hire.:Cancel")) {
+		case 1:
+			if (getgdskilllv(.@GID,10001) == 0) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "Master, we can't hire a Kafra Employee because we don't have a contract with the Kafra Main Office. If you want to obtain a contract with the Kafra Main Office, you will need to learn the Guild skill first.";
+				close;
+			}
+			if (Zeny < 10000) {
+				mes "["+strnpcinfo(1)+"]";
+				mes "Well... I'm sorry but we don't have enough funds to hire a Kafra Employee.";
+				close;
+			}
+			set Zeny, Zeny - 10000;
+			enablenpc "Kafra Staff#"+strnpcinfo(2);
+			SetCastleData strnpcinfo(2),9,1;
+			mes "["+strnpcinfo(1)+"]";
+			mes "We obtained a contract with the kafra Main Office, and hired a Kafra Employee.";
+			next;
+			cutin "kafra_01",2;
+			mes "[ Hired Kafra Employee ]";
+			mes "How do you do? I was dispatched from the Main Office.";
+			mes "I'll do my best to not tarnish the reputation of the Guild.";
+			next;
+			cutin "",255;
+			mes "["+strnpcinfo(1)+"]";
+			mes "The Contract terms of the hired Kafra Employee are for 1 month and after this term, you will need to to pay an additional fee.";
+			mes "It will be useful for our members.";
+			close;
+		case 2:
+			mes "["+strnpcinfo(1)+"]";
+			mes "I did as you ordered, but some of our members will be unhappy. It will be better to hire a Kafra Employee quickly.";
+			close;
+		}
+	case 6:
+		mes "["+strnpcinfo(1)+"]";
+		mes "Do you want to visit the room where our valuables are stored?";
+		mes "That room is restricted to you... you are the only one with access to it.";
+		next;
+		switch (select("Go into Master's room.:Cancel")) {
+		case 1:
+			mes "["+strnpcinfo(1)+"]";
+			mes "I'll show you the secret path. Follow me...please.";
+			mes "When you want to return here, please press the secret switch.";
+			close2;
+			warp strnpcinfo(2),.@masterroom[0],.@masterroom[1];
+			end;
+		case 2:
+			mes "["+strnpcinfo(1)+"]";
+			mes "Goods are produced once a day... if you don't remove them in time, they will not be produced anymore.";
+			mes "Therefore, it will be better if you check up on them from time to time.";
+			close;
+		}
+	}
+}
+
+// WoE : Guild Dungeon Entrances
+//============================================================
+-	script	Lever#gd::gdlever	-1,{
+
+	set .@GID,GetCastleData(strnpcinfo(2),1);
+
+	if (.@GID == 0) {
+		mes "[Ringing Voice]";
+		mes "'Those who overcome an ordeal shows a great deal of bravery... and will find their way to another ordeal.'";
+		close;
+	}
+
+	if (compare(strnpcinfo(2),"aldeg")) {
+		set .@destination$,"gld_dun02";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],32,122;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],79,30;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],165,38;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],160,148;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],103,169;
+	}
+	else if (compare(strnpcinfo(2),"gefg")) {
+		set .@destination$,"gld_dun04";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],39,258;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],125,270;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],268,251;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,108;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],230,35;
+	}
+	else if (compare(strnpcinfo(2),"payg")) {
+		set .@destination$,"gld_dun01";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],186,165;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],54,165;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],54,39;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],186,39;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],223,202;
+	}
+	else if (compare(strnpcinfo(2),"prtg")) {
+		set .@destination$,"gld_dun03";
+		if (compare(strnpcinfo(2),"cas01")) setarray .@coordinates[0],28,251;
+		else if (compare(strnpcinfo(2),"cas02")) setarray .@coordinates[0],164,268;
+		else if (compare(strnpcinfo(2),"cas03")) setarray .@coordinates[0],164,179;
+		else if (compare(strnpcinfo(2),"cas04")) setarray .@coordinates[0],268,203;
+		else if (compare(strnpcinfo(2),"cas05")) setarray .@coordinates[0],199,28;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	mes "[Ringing Voice]";
+	mes "'Only the truly brave can take the test.'";
+	next;
+	mes " ";
+	mes "There's a small lever. Will you pull it?";
+	next;
+	if(select("Pull.:Don't pull.") == 1) {
+		if (getcharid(2) == .@GID) {
+			close2;
+			warp .@destination$,.@coordinates[0],.@coordinates[1];
+			end;
+		}
+		mes " ";
+		mes "Nothing happened.";
+		close;
+	}
+	close;
+}
+
+// Guardian Spawner Template
+//============================================================
+-	script	Gld_Guard_Template::Gld_Guard_Template	-1,{
+// Spawn Guardians in castles
+// When adding new castles, ensure that the coordinates coincide
+// with the coordinates defined in the Guild Steward template.
+OnSpawnGuardians:
+	// Define the types of guardians on a per castle basis.
+	// 1 - Soldier Guardian; 2 - Archer Guardian; 3 - Knight Guardian
+	// Define the x spawn point for each uardian.
+	// [0] = 1st guardian's x spawn point.
+	// Define the y spawn point for each uardian.
+	// [0] = 1st guardian's y spawn point.
+	// Aldebaran (Luina) Castles
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		setarray .@guardiantype[0],1,2,2,2,2,3,3,3;
+		setarray .@guardianposx[0],17,39,38,45,21,218,213,73;
+		setarray .@guardianposy[0],218,208,196,228,194,24,24,70;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],27,88,117,60,51,21,36,210;
+		setarray .@guardianposy[0],184,43,46,202,183,177,183,7;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") {
+		setarray .@guardiantype[0],3,3,1,1,1,2,2,2;
+		setarray .@guardianposx[0],90,116,86,116,64,212,195,110;
+		setarray .@guardianposy[0],112,112,120,76,103,160,151,217;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") {
+		setarray .@guardiantype[0],2,2,2,1,1,1,3,3;
+		setarray .@guardianposx[0],187,192,148,145,169,198,48,55;
+		setarray .@guardianposy[0],100,42,88,209,53,77,72,88;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,3,3,3,3;
+		setarray .@guardianposx[0],51,188,157,157,27,145,156,41;
+		setarray .@guardianposy[0],202,79,192,74,221,78,73,112;
+	}
+	// Geffen (Britoniah) Castles
+	else if (strnpcinfo(2) == "gefg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],67,184,62,36,50,50,189,200;
+		setarray .@guardianposy[0],179,20,41,186,186,67,41,167;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],64,56,166,35,20,19,166,159;
+		setarray .@guardianposy[0],168,41,25,148,150,41,42,188;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],48,113,48,157,243,157,234,238;
+		setarray .@guardianposy[0],176,214,207,62,41,45,25,160;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],53,31,49,29,147,57,160,148;
+		setarray .@guardianposy[0],191,178,220,46,65,46,50,189;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") {
+		setarray .@guardiantype[0],2,2,1,1,1,3,3,3;
+		setarray .@guardianposx[0],45,71,72,66,177,66,177,193;
+		setarray .@guardianposy[0],149,163,142,47,50,17,35,166;
+	}
+	// Payon (Baulder) Castles
+	else if (strnpcinfo(2) == "payg_cas01") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],229,225,222,99,65,36,51,138;
+		setarray .@guardianposy[0],92,80,111,45,31,127,144,133;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],237,228,210,57,42,287,264,27;
+		setarray .@guardianposy[0],54,72,41,241,241,257,272,20;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],245,269,36,41,39,19,37,268;
+		setarray .@guardianposy[0],37,51,39,39,65,276,277,244;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],251,232,231,32,32,35,36,270;
+		setarray .@guardianposy[0],212,212,175,287,232,45,17,41;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") {
+		setarray .@guardiantype[0],2,2,2,2,2,2,2,3;
+		setarray .@guardianposx[0],19,33,266,266,263,263,250,36;
+		setarray .@guardianposy[0],279,260,234,279,37,21,22,36;
+	}
+	// Prontera (Valkyrie Realms) Castles
+	else if (strnpcinfo(2) == "prtg_cas01") {
+		setarray .@guardiantype[0],1,1,1,2,2,3,3,3;
+		setarray .@guardianposx[0],182,182,153,59,50,184,196,107;
+		setarray .@guardianposy[0],62,116,86,28,36,183,189,179;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],161,153,178,71,49,64,7,75;
+		setarray .@guardianposy[0],161,161,44,75,28,186,196,175;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") {
+		setarray .@guardiantype[0],3,3,3,1,1,2,2,2;
+		setarray .@guardianposx[0],191,137,45,50,41,191,179,191;
+		setarray .@guardianposy[0],190,190,99,87,87,42,43,72;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],276,274,246,38,29,33,78,36;
+		setarray .@guardianposy[0],14,35,246,240,240,258,48,61;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") {
+		setarray .@guardiantype[0],3,3,3,1,1,1,2,2;
+		setarray .@guardianposx[0],266,287,245,236,251,278,32,44;
+		setarray .@guardianposy[0],262,280,250,63,63,253,253,248;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	// Kill all existing guardians before spawning new ones.
+	// This should prevent duplicating Guardians when char Server disconnects.
+	killmonster strnpcinfo(2),strnpcinfo(0)+"::OnGuardianDied";
+
+	for( set .@i, 0; .@i <= 7 ; set .@i, .@i+1 ) {
+		set .@UseGID,.@i + 10;
+		if (.@guardiantype[.@i] == 1) { set .@type,1287; }
+		else if (.@guardiantype[.@i] == 2) { set .@type,1285; }
+		else { set .@type,1286; }
+		if (GetCastleData(strnpcinfo(2),.@UseGID)) {
+			guardian strnpcinfo(2),.@guardianposx[.@i],.@guardianposy[.@i],strmobinfo(2,.@type),.@type,"Guardian#"+strnpcinfo(2)+"::OnGuardianDied",.@i;
+		}
+	}
+	end;
+
+OnGuardianDied:
+	end;
+}
+
+// Treasure Room Spawn Template
+//============================================================
+-	script	Gld_Trea_Spawn::Gld_Trea_Spawn	-1,{
+	end;
+
+OnClock0001:
+	// Do nothing if this script is the template.
+	if (strnpcinfo(1) == "Gld_Trea_Spawn") end;
+	
+	set .@GID, GetCastleData(strnpcinfo(2),1);
+	
+	// If there is no owner, do nothing.
+	if (!.@GID) end;
+
+	// Is there Economy in this castle?
+	set .@Treasure,GetCastleData(strnpcinfo(2),2)/5+4;
+
+	// Set information
+	if (strnpcinfo(2) == "aldeg_cas01") { 
+		set .@treasurebox,1324;
+		setarray .@treasurex[0],115,122,115,122,116,117,118,119,120,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116;
+		setarray .@treasurey[0],226,226,219,219,225,225,225,225,225,225,224,223,222,221,220,220,220,220,220,220,221,222,223,224;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas02") { 
+		set .@treasurebox,1326;
+		setarray .@treasurex[0],134,135,135,134,132,133,134,135,136,137,137,137,137,137,137,136,135,134,133,132,132,132,132,132;
+		setarray .@treasurey[0],231,231,230,230,233,233,233,233,233,233,232,231,230,229,228,228,228,228,228,228,229,230,231,232;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas03") { 
+		set .@treasurebox,1328;
+		setarray .@treasurex[0],224,225,225,224,222,223,224,225,226,227,227,227,227,227,227,226,225,224,223,222,222,222,222,222;
+		setarray .@treasurey[0],269,269,268,268,271,271,271,271,271,271,270,269,268,267,266,266,266,266,266,266,267,268,269,270;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas04") { 
+		set .@treasurebox,1330;
+		setarray .@treasurex[0],84,85,85,84,82,83,84,85,86,87,87,87,87,87,87,86,85,84,83,82,82,82,82,82;
+		setarray .@treasurey[0],13,13,12,12,15,15,15,15,15,15,14,13,12,11,10,10,10,10,10,10,11,12,13,14;
+	}
+	else if (strnpcinfo(2) == "aldeg_cas05") { 
+		set .@treasurebox,1332;
+		setarray .@treasurex[0],61,62,62,61,59,60,61,62,63,64,64,64,64,64,64,63,62,61,60,59,59,59,59,59;
+		setarray .@treasurey[0],12,12,11,11,14,14,14,14,14,14,13,12,11,10,9,9,9,9,9,9,10,11,12,13;
+	}
+	else if (strnpcinfo(2) == "gefg_cas01") { 
+		set .@treasurebox,1334;
+		setarray .@treasurex[0],153,154,154,153,151,152,153,154,155,156,156,156,156,156,156,155,154,153,152,151,151,151,151,151;
+		setarray .@treasurey[0],113,113,112,112,115,115,115,115,115,115,114,113,112,111,110,110,110,110,110,110,111,112,113,114;
+	}
+	else if (strnpcinfo(2) == "gefg_cas02") { 
+		set .@treasurebox,1336;
+		setarray .@treasurex[0],139,140,140,139,137,138,139,140,141,142,142,142,142,142,142,141,140,139,138,137,137,137,137,137;
+		setarray .@treasurey[0],115,115,114,114,117,117,117,117,117,117,116,115,114,113,112,112,112,112,112,112,113,114,115,116;
+	}
+	else if (strnpcinfo(2) == "gefg_cas03") { 
+		set .@treasurebox,1338;
+		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
+		setarray .@treasurey[0],291,291,290,290,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288,288,289,290,291,292;
+	}
+	else if (strnpcinfo(2) == "gefg_cas04") { 
+		set .@treasurebox,1340;
+		setarray .@treasurex[0],115,116,116,115,113,114,115,116,117,118,118,118,118,118,118,117,116,115,114,113,113,113,113,113;
+		setarray .@treasurey[0],119,119,118,118,121,121,121,121,121,121,120,119,118,117,116,116,116,116,116,116,117,118,119,120;
+	}
+	else if (strnpcinfo(2) == "gefg_cas05") { 
+		set .@treasurebox,1342;
+		setarray .@treasurex[0],143,144,144,143,141,142,143,144,145,146,146,146,146,146,146,145,144,143,142,141,141,141,141,141;
+		setarray .@treasurey[0],110,110,109,109,112,112,112,112,112,112,111,110,109,108,107,107,107,107,107,107,108,109,110,111;
+	}
+	else if (strnpcinfo(2) == "payg_cas01") { 
+		set .@treasurebox,1344;
+		setarray .@treasurex[0],289,292,292,289,288,289,290,291,292,293,293,293,293,293,293,292,291,290,289,288,288,288,288,288;
+		setarray .@treasurey[0],10,10,7,7,11,11,11,11,11,11,10,9,8,7,6,6,6,6,6,6,7,8,9,10;
+	}
+	else if (strnpcinfo(2) == "payg_cas02") { 
+		set .@treasurebox,1346;
+		setarray .@treasurex[0],143,146,146,143,142,143,144,145,146,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142;
+		setarray .@treasurey[0],146,146,143,143,147,147,147,147,147,147,146,145,144,143,142,142,142,142,142,142,143,144,145,146;
+	}
+	else if (strnpcinfo(2) == "payg_cas03") { 
+		set .@treasurebox,1348;
+		setarray .@treasurex[0],158,159,159,158,156,157,158,159,160,161,161,161,161,161,161,160,159,158,157,156,156,156,156,156;
+		setarray .@treasurey[0],169,169,168,168,171,171,171,171,171,171,170,169,168,167,166,166,166,166,166,166,167,168,169,170;
+	}
+	else if (strnpcinfo(2) == "payg_cas04") { 
+		set .@treasurebox,1350;
+		setarray .@treasurex[0],146,147,147,146,144,145,146,147,148,149,149,149,149,149,149,148,147,146,145,144,144,144,144,144;
+		setarray .@treasurey[0],48,48,47,47,50,50,50,50,50,50,49,48,47,46,45,45,45,45,45,45,46,47,48,49;
+	}
+	else if (strnpcinfo(2) == "payg_cas05") { 
+		set .@treasurebox,1352;
+		setarray .@treasurex[0],155,158,158,155,154,155,156,157,158,159,159,159,159,159,159,158,157,156,155,154,154,154,154,154;
+		setarray .@treasurey[0],134,134,131,131,135,135,135,135,135,135,134,133,132,131,130,130,130,130,130,130,131,132,133,134;
+	}
+	else if (strnpcinfo(2) == "prtg_cas01") { 
+		set .@treasurebox,1354;
+		setarray .@treasurex[0],10,11,11,10,8,9,10,11,12,13,13,13,13,13,13,12,11,10,9,8,8,8,8,8;
+		setarray .@treasurey[0],209,209,208,208,211,211,211,211,211,211,210,209,208,207,206,206,206,206,206,206,207,208,209,210;
+	}
+	else if (strnpcinfo(2) == "prtg_cas02") { 
+		set .@treasurebox,1356;
+		setarray .@treasurex[0],201,202,202,201,199,200,201,202,203,204,204,204,204,204,204,203,202,201,200,199,199,199,199,199;
+		setarray .@treasurey[0],228,228,227,227,230,230,230,230,230,230,229,228,227,226,225,225,225,225,225,225,226,227,228,229;
+	}
+	else if (strnpcinfo(2) == "prtg_cas03") { 
+		set .@treasurebox,1358;
+		setarray .@treasurex[0],187,188,188,187,185,186,187,188,189,190,190,190,190,190,190,189,188,187,186,185,185,185,185,185;
+		setarray .@treasurey[0],132,132,131,131,134,134,134,134,134,134,133,132,131,130,129,129,129,129,129,129,130,131,132,133;
+	}
+	else if (strnpcinfo(2) == "prtg_cas04") { 
+		set .@treasurebox,1360;
+		setarray .@treasurex[0],269,270,270,269,267,268,269,270,271,272,272,272,272,272,272,271,270,269,268,267,267,267,267,267;
+		setarray .@treasurey[0],162,162,161,161,164,164,164,164,164,164,163,162,161,160,159,159,159,159,159,159,160,161,162,163;
+	}
+	else if (strnpcinfo(2) == "prtg_cas05") { 
+		set .@treasurebox,1362;
+		setarray .@treasurex[0],275,276,276,275,273,274,275,276,277,278,278,278,278,278,278,277,276,275,274,273,273,273,273,273;
+		setarray .@treasurey[0],178,178,177,177,180,180,180,180,180,180,179,178,177,176,175,175,175,175,175,175,176,177,178,179;
+	}
+	// Add custom Guild Castles here.
+	else {
+		end;
+	}
+
+	// Apply investment to Eco. and Def. Only happens if there were investments made.
+	// Permanent Development can only happen once per day.
+	if (GetCastleData(strnpcinfo(2),4)) {
+		set .@Economy,GetCastleData(strnpcinfo(2),2);
+		SetCastleData strnpcinfo(2),2,.@Economy + GetCastleData(strnpcinfo(2),4) + (rand(2) && getgdskilllv(.@GID,10014));
+		if (GetCastleData(strnpcinfo(2),2) > 100) SetCastleData strnpcinfo(2),2,100;
+	}
+	if (GetCastleData(strnpcinfo(2),5)) {
+		set .@Defence,GetCastleData(strnpcinfo(2),3);
+		SetCastleData strnpcinfo(2),3,.@Defence + GetCastleData(strnpcinfo(2),5);
+		if (GetCastleData(strnpcinfo(2),3) > 100) SetCastleData strnpcinfo(2),3,100;
+	}
+	// Reset daily investment limits.
+	setcastledata strnpcinfo(2),4,0;
+	setcastledata strnpcinfo(2),5,0;
+
+	// Spawn boxes in proper order.
+	for (set .@i,0; .@i < .@Treasure ; set .@i,.@i+1) {
+		// set treasure box ID
+		set .@boxid, .@treasurebox + (.@i+2) % 2;
+		set .@box,1 << .@i;
+		// Spawn or do not spawn chests if one already exists.
+		if ((getd("$@"+strnpcinfo(2)+"_treasure") & .@box) == 0) {
+			monster strnpcinfo(2),.@treasurex[.@i],.@treasurey[.@i],"Treasure Chest",.@boxid,1,"Treasure#"+strnpcinfo(2)+"::OnTreasureDied"+.@i;
+			setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") | .@box;
+		}
+	}
+	end;
+
+// Individual "You killed a chest" events to ensure proper spawning at the change of day.
+OnTreasureDied0:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1;
+	end;
+OnTreasureDied1:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2;
+	end;
+OnTreasureDied2:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4;
+	end;
+OnTreasureDied3:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8;
+	end;
+OnTreasureDied4:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16;
+	end;
+OnTreasureDied5:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32;
+	end;
+OnTreasureDied6:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~64;
+	end;
+OnTreasureDied7:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~128;
+	end;
+OnTreasureDied8:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~256;
+	end;
+OnTreasureDied9:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~512;
+	end;
+OnTreasureDied10:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1024;
+	end;
+OnTreasureDied11:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2048;
+	end;
+OnTreasureDied12:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4096;
+	end;
+OnTreasureDied13:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8192;
+	end;
+OnTreasureDied14:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~16384;
+	end;
+OnTreasureDied15:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~32768;
+	end;
+OnTreasureDied16:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~65536;
+	end;
+OnTreasureDied17:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~131072;
+	end;
+OnTreasureDied18:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~262144;
+	end;
+OnTreasureDied19:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~524288;
+	end;
+OnTreasureDied20:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~1048576;
+	end;
+OnTreasureDied21:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~2097152;
+	end;
+OnTreasureDied22:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~4194304;
+	end;
+OnTreasureDied23:
+	setd "$@"+strnpcinfo(2)+"_treasure",getd("$@"+strnpcinfo(2)+"_treasure") & ~8388608;
+	end;
+}
diff --git a/npc/guild/trs_rp.txt b/npc/guild/trs_rp.txt
index 96fae1abe..26ea70bc2 100644
--- a/npc/guild/trs_rp.txt
+++ b/npc/guild/trs_rp.txt
@@ -1,82 +1,82 @@
-//===== rAthena Script ======================================= 
-//= Treasure Room Protection
-//===== By: ================================================== 
-//= Masao
-//===== Current Version: ===================================== 
-//= 1.0
-//===== Compatible With: ===================================== 
-//= rAthena
-//===== Description: ========================================= 
-//= Warps every Player out of the Treasure Room except for the
-//= Guildleader.
-//===== Additional Comments: ================================= 
-//= 1.0 Converted from the official script.
-//============================================================ 
-
--	script	ban_warp#1::prtg	139,6,6,{
-
-OnTouch:
-	set .@GID,getcharid(2);
-	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
-		warp "prontera",119,64;
-		end;
-	}
-	end;
-}
-
-prtg_cas01,11,208,0	duplicate(prtg)	ban_warp#1-2	139,6,6
-prtg_cas02,202,228,0	duplicate(prtg)	ban_warp#2	139,6,6
-prtg_cas03,189,132,0	duplicate(prtg)	ban_warp#3	139,6,6
-prtg_cas04,271,162,0	duplicate(prtg)	ban_warp#4	139,6,6
-prtg_cas05,276,178,0	duplicate(prtg)	ban_warp#5	139,6,6
-
--	script	ban_warp#6::payg	139,6,6,{
-
-OnTouch:
-	set .@GID,getcharid(2);
-	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
-		warp "payon",100,100;
-		end;
-	}
-	end;
-}
-
-payg_cas01,291,8,0	duplicate(payg)	ban_warp#6-2	139,6,6
-payg_cas02,145,144,0	duplicate(payg)	ban_warp#7	139,6,6
-payg_cas03,159,168,0	duplicate(payg)	ban_warp#8	139,6,6
-payg_cas04,147,48,0	duplicate(payg)	ban_warp#9	139,6,6
-payg_cas05,157,132,0	duplicate(payg)	ban_warp#10	139,6,6
-
--	script	ban_warp#11::aldeg	139,8,8,{
-
-OnTouch:
-	set .@GID,getcharid(2);
-	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
-		warp "aldebaran",143,112;
-		end;
-	}
-	end;
-}
-
-aldeg_cas01,118,223,0	duplicate(aldeg)	ban_warp#11-2	139,8,8
-aldeg_cas02,135,230,0	duplicate(aldeg)	ban_warp#12	139,8,8
-aldeg_cas03,225,269,0	duplicate(aldeg)	ban_warp#13	139,8,8
-aldeg_cas04,84,13,0	duplicate(aldeg)	ban_warp#14	139,8,8
-aldeg_cas05,62,12,0	duplicate(aldeg)	ban_warp#15	139,8,8
-
--	script	ban_warp#16::gefg	139,6,6,{
-
-OnTouch:
-	set .@GID,getcharid(2);
-	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
-		warp "geffen",120,38;
-		end;
-	}
-	end;
-}
-
-gefg_cas01,154,112,0	duplicate(gefg)	ban_warp#16-2	139,6,6
-gefg_cas02,140,116,0	duplicate(gefg)	ban_warp#17	139,6,6
-gefg_cas03,271,290,0	duplicate(gefg)	ban_warp#18	139,6,6
-gefg_cas04,116,119,0	duplicate(gefg)	ban_warp#19	139,6,6
-gefg_cas05,144,110,0	duplicate(gefg)	ban_warp#20	139,6,6
\ No newline at end of file
+//===== rAthena Script ======================================= 
+//= Treasure Room Protection
+//===== By: ================================================== 
+//= Masao
+//===== Current Version: ===================================== 
+//= 1.0
+//===== Compatible With: ===================================== 
+//= rAthena
+//===== Description: ========================================= 
+//= Warps every Player out of the Treasure Room except for the
+//= Guildleader.
+//===== Additional Comments: ================================= 
+//= 1.0 Converted from the official script.
+//============================================================ 
+
+-	script	ban_warp#1::prtg	139,6,6,{
+
+OnTouch:
+	set .@GID,getcharid(2);
+	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
+		warp "prontera",119,64;
+		end;
+	}
+	end;
+}
+
+prtg_cas01,11,208,0	duplicate(prtg)	ban_warp#1-2	139,6,6
+prtg_cas02,202,228,0	duplicate(prtg)	ban_warp#2	139,6,6
+prtg_cas03,189,132,0	duplicate(prtg)	ban_warp#3	139,6,6
+prtg_cas04,271,162,0	duplicate(prtg)	ban_warp#4	139,6,6
+prtg_cas05,276,178,0	duplicate(prtg)	ban_warp#5	139,6,6
+
+-	script	ban_warp#6::payg	139,6,6,{
+
+OnTouch:
+	set .@GID,getcharid(2);
+	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
+		warp "payon",100,100;
+		end;
+	}
+	end;
+}
+
+payg_cas01,291,8,0	duplicate(payg)	ban_warp#6-2	139,6,6
+payg_cas02,145,144,0	duplicate(payg)	ban_warp#7	139,6,6
+payg_cas03,159,168,0	duplicate(payg)	ban_warp#8	139,6,6
+payg_cas04,147,48,0	duplicate(payg)	ban_warp#9	139,6,6
+payg_cas05,157,132,0	duplicate(payg)	ban_warp#10	139,6,6
+
+-	script	ban_warp#11::aldeg	139,8,8,{
+
+OnTouch:
+	set .@GID,getcharid(2);
+	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
+		warp "aldebaran",143,112;
+		end;
+	}
+	end;
+}
+
+aldeg_cas01,118,223,0	duplicate(aldeg)	ban_warp#11-2	139,8,8
+aldeg_cas02,135,230,0	duplicate(aldeg)	ban_warp#12	139,8,8
+aldeg_cas03,225,269,0	duplicate(aldeg)	ban_warp#13	139,8,8
+aldeg_cas04,84,13,0	duplicate(aldeg)	ban_warp#14	139,8,8
+aldeg_cas05,62,12,0	duplicate(aldeg)	ban_warp#15	139,8,8
+
+-	script	ban_warp#16::gefg	139,6,6,{
+
+OnTouch:
+	set .@GID,getcharid(2);
+	if (GetGuildMaster(.@GID) != strcharinfo(0)) {
+		warp "geffen",120,38;
+		end;
+	}
+	end;
+}
+
+gefg_cas01,154,112,0	duplicate(gefg)	ban_warp#16-2	139,6,6
+gefg_cas02,140,116,0	duplicate(gefg)	ban_warp#17	139,6,6
+gefg_cas03,271,290,0	duplicate(gefg)	ban_warp#18	139,6,6
+gefg_cas04,116,119,0	duplicate(gefg)	ban_warp#19	139,6,6
+gefg_cas05,144,110,0	duplicate(gefg)	ban_warp#20	139,6,6
diff --git a/npc/mobs/bossnia.txt b/npc/mobs/bossnia.txt
index 1493ef6af..31b5e25d0 100644
--- a/npc/mobs/bossnia.txt
+++ b/npc/mobs/bossnia.txt
@@ -1,187 +1,187 @@
-//===== rAthena Script =======================================
-//= Bossnia Monster Spawn Script
-//===== By: ==================================================
-//= Masao
-//===== Current Version: =====================================
-//= 1.0
-//===== Compatible With: =====================================
-//= Any rAthena Version
-//===== Description: =========================================
-//= Spawns boss monsters / MvP's in the Bossnia Dungeons.
-//============================================================
-
-//==================================================
-// bossnia_01 - Bossnia
-//==================================================
-bossnia_01,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
-bossnia_01,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
-bossnia_01,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
-bossnia_01,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
-bossnia_01,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
-bossnia_01,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_01,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_01,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
-bossnia_01,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
-
-//==================================================
-// bossnia_02 - Bossnia
-//==================================================
-bossnia_02,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
-bossnia_02,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
-bossnia_02,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
-bossnia_02,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
-bossnia_02,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
-bossnia_02,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_02,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_02,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
-bossnia_02,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
-
-//==================================================
-// bossnia_03 - Bossnia
-//==================================================
-bossnia_03,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
-bossnia_03,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
-bossnia_03,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
-bossnia_03,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
-bossnia_03,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
-bossnia_03,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_03,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_03,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
-bossnia_03,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
-
-//==================================================
-// bossnia_04 - Bossnia
-//==================================================
-bossnia_04,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
-bossnia_04,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
-bossnia_04,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
-bossnia_04,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
-bossnia_04,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
-bossnia_04,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_04,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
-bossnia_04,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
-bossnia_04,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
\ No newline at end of file
+//===== rAthena Script =======================================
+//= Bossnia Monster Spawn Script
+//===== By: ==================================================
+//= Masao
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= Any rAthena Version
+//===== Description: =========================================
+//= Spawns boss monsters / MvP's in the Bossnia Dungeons.
+//============================================================
+
+//==================================================
+// bossnia_01 - Bossnia
+//==================================================
+bossnia_01,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
+bossnia_01,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
+bossnia_01,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
+bossnia_01,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
+bossnia_01,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
+bossnia_01,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_01,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_01,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
+bossnia_01,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
+
+//==================================================
+// bossnia_02 - Bossnia
+//==================================================
+bossnia_02,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
+bossnia_02,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
+bossnia_02,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
+bossnia_02,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
+bossnia_02,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
+bossnia_02,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_02,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_02,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
+bossnia_02,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
+
+//==================================================
+// bossnia_03 - Bossnia
+//==================================================
+bossnia_03,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
+bossnia_03,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
+bossnia_03,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
+bossnia_03,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
+bossnia_03,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
+bossnia_03,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_03,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_03,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
+bossnia_03,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
+
+//==================================================
+// bossnia_04 - Bossnia
+//==================================================
+bossnia_04,0,0,0,0	boss_monster	Garm	1252,5,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Gloom Under Night	1768,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Dark Lord	1272,3,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Doppelganger	1046,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Dracula	1389,5,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Drake	1112,10,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Detale	1719,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Maya	1147,10,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Mistress	1059,1,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Baphomet	1039,10,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Egnigem Cenia	1658,10,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Amon Ra	1511,1,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Atroce	1785,10,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Vesper	1685,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Eddga	1115,1,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Osiris	1038,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Orc Lord	1190,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Orc Hero	1087,2,1800000,0,1
+bossnia_04,0,0,0,0	boss_monster	Samurai Specter	1492,1,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Moonlight Flower	1150,1,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Lord of the Dead	1373,1,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Ktullanux	1779,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Kiel D-01	1734,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Thanatos Phantom	1708,2,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Lady Tanee	1688,1,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Tao Gunka	1583,1,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Turtle General	1312,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Pharaoh	1157,2,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Stormy Knight	1251,2,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Falling Bishop	1871,5,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Phreeoni	1159,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Golden Thief Bug	1086,10,3600000,0,1
+bossnia_04,0,0,0,0	boss_monster	Evil Snake Lord	1418,10,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	RSX-0806	1623,5,7200000,0,1
+bossnia_04,0,0,0,0	boss_monster	Assassin Cross Eremes	1647,1,0,0,1
+bossnia_04,137,118,1,1	boss_monster	Whitesmith Howard	1648,1,0,0,1
+bossnia_04,122,195,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_04,45,118,1,1	boss_monster	Beelzebub	1873,1,0,0,1
+bossnia_04,196,122,1,1	boss_monster	Valkyrie Randgris	1751,1,0,0,1
+bossnia_04,142,61,1,1	boss_monster	Ifrit	1832,1,0,0,1
diff --git a/npc/mobs/jail.txt b/npc/mobs/jail.txt
index bf68dbc9a..4ff6b0b48 100644
--- a/npc/mobs/jail.txt
+++ b/npc/mobs/jail.txt
@@ -1,18 +1,18 @@
-//===== rAthena Script =======================================
-//= Jail Monster Spawn Script
-//===== By: ==================================================
-//= Masao
-//===== Current Version: =====================================
-//= 1.0
-//===== Compatible With: =====================================
-//= Any rAthena Version
-//===== Description: =========================================
-//= Spawns monsters in Jail.
-//============================================================
-
-sec_in02,139,80,20	monster	Poring	1002,10,0,0,0
-sec_in02,138,54,20,20	monster	Marin	1242,5,0,0,0
-sec_in02,161,46,15,15	monster	Poporing	1031,5,0,0,0
-sec_in02,114,47,10,10	monster	Drops	1113,5,0,0,0
-sec_in02,114,47,10,10	monster	Bigfoot	1060,10,0,0,0
-sec_in02,139,80,30,30	monster	Flora	1118,10,0,0,0
\ No newline at end of file
+//===== rAthena Script =======================================
+//= Jail Monster Spawn Script
+//===== By: ==================================================
+//= Masao
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= Any rAthena Version
+//===== Description: =========================================
+//= Spawns monsters in Jail.
+//============================================================
+
+sec_in02,139,80,20	monster	Poring	1002,10,0,0,0
+sec_in02,138,54,20,20	monster	Marin	1242,5,0,0,0
+sec_in02,161,46,15,15	monster	Poporing	1031,5,0,0,0
+sec_in02,114,47,10,10	monster	Drops	1113,5,0,0,0
+sec_in02,114,47,10,10	monster	Bigfoot	1060,10,0,0,0
+sec_in02,139,80,30,30	monster	Flora	1118,10,0,0,0
diff --git a/npc/warps/other/bossnia.txt b/npc/warps/other/bossnia.txt
index fb57466fd..28cfda019 100644
--- a/npc/warps/other/bossnia.txt
+++ b/npc/warps/other/bossnia.txt
@@ -1,18 +1,18 @@
-//===== rAthena Script =======================================
-//= Bossnia Warps
-//===== By: ==================================================
-//= Masao
-//===== Current Version: =====================================
-//= 1.0
-//===== Compatible With: =====================================
-//= Any rAthena Version
-//===== Description: =========================================
-//= Back Warp Points related to the Bossnia event.
-//===== Additional Comments: =================================
-//= 1.0 First Version.
-//============================================================
-
-bossnia_01,204,204,0	warp	bossnia01	1,1,prontera,155,180
-bossnia_02,204,204,0	warp	bossnia02	1,1,prontera,155,180
-bossnia_03,204,204,0	warp	bossnia03	1,1,prontera,155,180
-bossnia_04,204,204,0	warp	bossnia04	1,1,prontera,155,180
\ No newline at end of file
+//===== rAthena Script =======================================
+//= Bossnia Warps
+//===== By: ==================================================
+//= Masao
+//===== Current Version: =====================================
+//= 1.0
+//===== Compatible With: =====================================
+//= Any rAthena Version
+//===== Description: =========================================
+//= Back Warp Points related to the Bossnia event.
+//===== Additional Comments: =================================
+//= 1.0 First Version.
+//============================================================
+
+bossnia_01,204,204,0	warp	bossnia01	1,1,prontera,155,180
+bossnia_02,204,204,0	warp	bossnia02	1,1,prontera,155,180
+bossnia_03,204,204,0	warp	bossnia03	1,1,prontera,155,180
+bossnia_04,204,204,0	warp	bossnia04	1,1,prontera,155,180
diff --git a/sql-files/upgrade_svn15885.sql b/sql-files/upgrade_svn15885.sql
index 7f1666c79..48b25b5a7 100644
--- a/sql-files/upgrade_svn15885.sql
+++ b/sql-files/upgrade_svn15885.sql
@@ -21,4 +21,4 @@ CREATE TABLE IF NOT EXISTS `elemental` (
   `luk` smallint(4) unsigned NOT NULL default '0',
   `life_time` int(11) NOT NULL default '0',
   PRIMARY KEY  (`ele_id`)
-) ENGINE=MyISAM;
\ No newline at end of file
+) ENGINE=MyISAM;
diff --git a/src/map/config/classes/general.h b/src/map/config/classes/general.h
index 279bb033e..a2c9c64c3 100644
--- a/src/map/config/classes/general.h
+++ b/src/map/config/classes/general.h
@@ -1,24 +1,24 @@
-// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
-// For more information, see LICENCE in the main folder
-#ifndef _CONFIG_GENERAL_H_
-#define _CONFIG_GENERAL_H_
-
-/**
- * rAthena configuration file (http://rathena.org)
- * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
- **/
-
-/**
- * Default Magical Reflection Behavior
- * - When reflecting, reflected damage depends on gears caster is wearing, not target
- * - When disabled damage depends on gears target is wearing, not caster.
- * @values 1 (enabled) or 0 (disabled)
- **/
-#define MAGIC_REFLECTION_TYPE 1
-
-/**
- * No settings past this point
- **/
-#include "swordsman.h"
-
-#endif // _CONFIG_GENERAL_H_
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _CONFIG_GENERAL_H_
+#define _CONFIG_GENERAL_H_
+
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
+ **/
+
+/**
+ * Default Magical Reflection Behavior
+ * - When reflecting, reflected damage depends on gears caster is wearing, not target
+ * - When disabled damage depends on gears target is wearing, not caster.
+ * @values 1 (enabled) or 0 (disabled)
+ **/
+#define MAGIC_REFLECTION_TYPE 1
+
+/**
+ * No settings past this point
+ **/
+#include "swordsman.h"
+
+#endif // _CONFIG_GENERAL_H_
diff --git a/src/map/config/classes/swordsman.h b/src/map/config/classes/swordsman.h
index 3c8f69043..44ae922d5 100644
--- a/src/map/config/classes/swordsman.h
+++ b/src/map/config/classes/swordsman.h
@@ -1,16 +1,16 @@
-// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
-// For more information, see LICENCE in the main folder
-#ifndef _CONFIG_SKILLS_SWORDS_H_
-#define _CONFIG_SKILLS_SWORDS_H_
-/**
- * rAthena configuration file (http://rathena.org)
- * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
- **/
-
-/// rune knight
-///
-/// maximum number of runes that a rune knight character can carry at any given time
-/// default: 20
-#define MAX_RUNE 20
-
-#endif // _CONFIG_SKILLS_SWORDS_H_
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _CONFIG_SKILLS_SWORDS_H_
+#define _CONFIG_SKILLS_SWORDS_H_
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
+ **/
+
+/// rune knight
+///
+/// maximum number of runes that a rune knight character can carry at any given time
+/// default: 20
+#define MAX_RUNE 20
+
+#endif // _CONFIG_SKILLS_SWORDS_H_
diff --git a/src/map/config/const.h b/src/map/config/const.h
index ae7ecd102..420fe4927 100644
--- a/src/map/config/const.h
+++ b/src/map/config/const.h
@@ -1,78 +1,78 @@
-// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
-// For more information, see LICENCE in the main folder
-#ifndef _RRCONFIGS_CONST_
-#define _RRCONFIGS_CONST_
-
-/**
- * rAthena configuration file (http://rathena.org)
- * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
- **/
-
-/**
- * @INFO: This file holds constants that aims at making code smoother and more efficient
- */
-
-/**
- * "Constants"
- **/
-#ifdef RENEWAL_CAST
-
-	#ifndef RENEWAL
-		#error RENEWAL_CAST requires RENEWAL enabled
-	#endif
-
-	#define CONST_CASTRATE_SCALE RENEWAL_CAST_VMIN
-	/**
-	 * Cast Rate Formula: (DEX x 2)+INT
-	 **/
-	#define CONST_CASTRATE_CALC ((status_get_dex(bl)*2)+status_get_int(bl))
-#else
-	#define CONST_CASTRATE_SCALE battle_config.castrate_dex_scale
-	/**
-	 * Cast Rate Formula: (DEX)
-	 **/
-	#define CONST_CASTRATE_CALC (status_get_dex(bl))
-#endif
-
-/**
- * "Sane Checks" to save you from compiling with cool bugs 
- **/
-#if SECURE_NPCTIMEOUT_INTERVAL <= 0
-	#error SECURE_NPCTIMEOUT_INTERVAL should be at least 1 (1s)
-#endif
-#if SECURE_NPCTIMEOUT < 0
-	#error SECURE_NPCTIMEOUT cannot be lower than 0
-#endif
-
-/**
- * Path within the /db folder to (non-)renewal specific db files
- **/
-#ifdef RENEWAL
-	#define DBPATH "re/"
-#else
-	#define DBPATH "pre-re/"
-#endif
-
-/**
- * DefType
- **/
-#ifdef RENEWAL
-	typedef short defType;
-	#define DEFTYPE_MIN SHRT_MIN
-	#define DEFTYPE_MAX SHRT_MAX
-#else
-	typedef signed char defType;
-	#define DEFTYPE_MIN CHAR_MIN
-	#define DEFTYPE_MAX CHAR_MAX
-#endif
-
-
-#ifdef __64BIT__
-	#define __64BPRTSIZE(y) (intptr)y
-#else
-	#define __64BPRTSIZE(y) y
-#endif
-/**
- * End of File
- **/
-#endif
+// Copyright (c) rAthena Dev Teams - Licensed under GNU GPL
+// For more information, see LICENCE in the main folder
+#ifndef _RRCONFIGS_CONST_
+#define _RRCONFIGS_CONST_
+
+/**
+ * rAthena configuration file (http://rathena.org)
+ * For detailed guidance on these check http://rathena.org/wiki/SRC/map/config/
+ **/
+
+/**
+ * @INFO: This file holds constants that aims at making code smoother and more efficient
+ */
+
+/**
+ * "Constants"
+ **/
+#ifdef RENEWAL_CAST
+
+	#ifndef RENEWAL
+		#error RENEWAL_CAST requires RENEWAL enabled
+	#endif
+
+	#define CONST_CASTRATE_SCALE RENEWAL_CAST_VMIN
+	/**
+	 * Cast Rate Formula: (DEX x 2)+INT
+	 **/
+	#define CONST_CASTRATE_CALC ((status_get_dex(bl)*2)+status_get_int(bl))
+#else
+	#define CONST_CASTRATE_SCALE battle_config.castrate_dex_scale
+	/**
+	 * Cast Rate Formula: (DEX)
+	 **/
+	#define CONST_CASTRATE_CALC (status_get_dex(bl))
+#endif
+
+/**
+ * "Sane Checks" to save you from compiling with cool bugs 
+ **/
+#if SECURE_NPCTIMEOUT_INTERVAL <= 0
+	#error SECURE_NPCTIMEOUT_INTERVAL should be at least 1 (1s)
+#endif
+#if SECURE_NPCTIMEOUT < 0
+	#error SECURE_NPCTIMEOUT cannot be lower than 0
+#endif
+
+/**
+ * Path within the /db folder to (non-)renewal specific db files
+ **/
+#ifdef RENEWAL
+	#define DBPATH "re/"
+#else
+	#define DBPATH "pre-re/"
+#endif
+
+/**
+ * DefType
+ **/
+#ifdef RENEWAL
+	typedef short defType;
+	#define DEFTYPE_MIN SHRT_MIN
+	#define DEFTYPE_MAX SHRT_MAX
+#else
+	typedef signed char defType;
+	#define DEFTYPE_MIN CHAR_MIN
+	#define DEFTYPE_MAX CHAR_MAX
+#endif
+
+
+#ifdef __64BIT__
+	#define __64BPRTSIZE(y) (intptr)y
+#else
+	#define __64BPRTSIZE(y) y
+#endif
+/**
+ * End of File
+ **/
+#endif
-- 
cgit v1.2.3-70-g09d2