summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Renewal.txt4
-rw-r--r--conf/Changelog.txt2
-rw-r--r--conf/battle/client.conf4
-rw-r--r--conf/battle/player.conf2
-rw-r--r--db/Changelog.txt2
-rw-r--r--db/item_db.txt4
-rw-r--r--db/mob_db.txt4
-rw-r--r--db/mob_skill_db.txt167
-rw-r--r--db/pet_db.txt4
-rw-r--r--db/quest_db.txt27
-rw-r--r--doc/item_bonus.txt2
-rw-r--r--npc/Changelog.txt2
-rw-r--r--npc/cities/brasilis.txt147
-rw-r--r--npc/instances/NydhoggsNest.txt2948
-rw-r--r--npc/kafras/kafras_brasilis.txt7
-rw-r--r--npc/merchants/inn.txt48
-rw-r--r--npc/merchants/shops.txt10
-rw-r--r--npc/mobs/dungeons/bra_dun.txt23
-rw-r--r--npc/mobs/fields/brasilis.txt12
-rw-r--r--npc/scripts_athena.conf5
-rw-r--r--npc/scripts_jobs.conf17
-rw-r--r--npc/scripts_monsters.conf6
-rw-r--r--npc/scripts_warps.conf1
-rw-r--r--src/common/mmo.h2
-rw-r--r--src/map/battle.c2
-rw-r--r--src/map/pc.h2
26 files changed, 3294 insertions, 160 deletions
diff --git a/Changelog-Renewal.txt b/Changelog-Renewal.txt
index be709a59c..b89061940 100644
--- a/Changelog-Renewal.txt
+++ b/Changelog-Renewal.txt
@@ -1,6 +1,10 @@
Date Added
2011/08/07
+ * Rev. 14931 Raised MAX_MERCENARY_CLASS to 44 for new mercenaries. [L0ne_W0lf]
+ * Raised max_lv to allow values up to 150 in battle.conf.
+ * Raised MAX_SKILL_TREE 77 in prep for 3rd class skill trees.
+2011/08/07
* Rev. 14927 Added bonus3 bAddClassDropItem, care of Epoque. [L0ne_W0lf]
2011/07/10
* Merged changes from trunk [14827:14894/trunk]. [Ai4rei]
diff --git a/conf/Changelog.txt b/conf/Changelog.txt
index 5d33110b0..26351612c 100644
--- a/conf/Changelog.txt
+++ b/conf/Changelog.txt
@@ -1,5 +1,7 @@
Date Added
+2011/08/10
+ * Rev. 14931 Upped max_lv and max_aura to 150, and max_aspd to 193.
2011/07/09
* Rev. 14892 Removed 'msg_athena.conf' messages 619 and 620 (duplicates to 572 and 573) (since r5506). [Ai4rei]
2011/05/13
diff --git a/conf/battle/client.conf b/conf/battle/client.conf
index 6a6c58d13..11bb215a2 100644
--- a/conf/battle/client.conf
+++ b/conf/battle/client.conf
@@ -76,7 +76,7 @@ area_size: 14
// NOTE: You also need to adjust the client if you want this to work.
// NOTE: Default is 99. Values above 127 will probably behave incorrectly.
// NOTE: If you don't know what this does, don't change it!!!
-max_lv: 99
+max_lv: 150
// Level required to display an aura.
// NOTE: This assumes that sending max_lv to the client will display the aura.
@@ -84,7 +84,7 @@ max_lv: 99
// Example: If max_lv is 99 and aura_lv is 150, characters with level 99~149
// will be sent as being all level 98, and only characters with level
// 150 or more will be reported as having level 99 and show an aura.
-aura_lv: 99
+aura_lv: 150
// Will tuxedo and wedding dresses be shown when worn? (Note 1)
wedding_modifydisplay: no
diff --git a/conf/battle/player.conf b/conf/battle/player.conf
index 5ac599a96..1f21076fa 100644
--- a/conf/battle/player.conf
+++ b/conf/battle/player.conf
@@ -74,7 +74,7 @@ natural_heal_skill_interval: 10000
natural_heal_weight_rate: 50
// Maximum atk speed. (Default 190, Highest allowed 199)
-max_aspd: 190
+max_aspd: 193
// Maximum walk speed rate (200 would be capped to twice the normal speed)
max_walk_speed: 300
diff --git a/db/Changelog.txt b/db/Changelog.txt
index 5633aad84..fe9c20ff9 100644
--- a/db/Changelog.txt
+++ b/db/Changelog.txt
@@ -9,6 +9,8 @@
13005 Angelic Wing Dagger: NEED INFO.
=======================
+2011/08/10
+ * Rev. 14931 Added Brasilis database updates from trunk r14928. [L0ne_W0lf]
2011/08/07
* Rev. 14927 Merged database changes from trunk r14927. [L0ne_W0lf]
2011/04/16
diff --git a/db/item_db.txt b/db/item_db.txt
index e9e15f41f..0d88b1f0a 100644
--- a/db/item_db.txt
+++ b/db/item_db.txt
@@ -5099,13 +5099,13 @@
12392,RepairA,Repair A,2,220,,100,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12393,RepairB,Repair B,2,500,,140,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12394,RepairC,Repair C,2,1100,,180,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
-12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
+12395,Tantanmen,Tantan Noodle,2,20,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ pet 1519; },{},{}
12396,Fools_Day_Box,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "AL_TELEPORT",1; else if(rand(1,10)==2) itemskill "AL_TELEPORT",3; else if(rand(1,10)==3) percentheal 50,0; else if(rand(1,10)==4) percentheal 0,50; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 512,1; else if(rand(1,10)==7) itemskill "ALL_REVERSEORCISH",1; else if(rand(1,10)==8) specialeffect2 247; else if(rand(1,10)==9) specialeffect2 338; else specialeffect2 10; },{},{}
12397,Fools_Day_Box2,Gift Box?,11,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(rand(1,10)==1) itemskill "TF_DETOXIFY",1; else if(rand(1,10)==2) itemskill "TF_PICKSTONE",1; else if(rand(1,10)==3) itemskill "BA_FROSTJOKER",1; else if(rand(1,10)==4) itemskill "DC_SCREAM",1; else if(rand(1,10)==5) end; else if(rand(1,10)==6) getitem 909,1; else if(rand(1,10)==7) itemskill "AL_RUWACH",1; else if(rand(1,10)==8) specialeffect2 328; else if(rand(1,10)==9) specialeffect2 68; else specialeffect2 196; },{},{}
12398,PCBang_Gift_Box,PCBang Gift Box,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12399,Castle_Treasure_Box,Castle Treasure Box,2,20,,1000,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12400,Water_Of_Blessing_,Water Of Blessing ,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
-12401,Rune_Kn_Test_Int,Rune Kn Test Int,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
+12401,Rune_Kn_Test_Int,Rune Kn Test Int,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{ sc_start SC_INCINT,300000,40; },{},{}
12402,29Fruit,29Fruit,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12403,Lucky_Egg2,Lucky Egg2,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
12404,Acti_Potion,Acti Potion,2,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
diff --git a/db/mob_db.txt b/db/mob_db.txt
index 6cf017e93..a72ee417d 100644
--- a/db/mob_db.txt
+++ b/db/mob_db.txt
@@ -1110,7 +1110,7 @@
//2054,E_BATHORY,Bathory,Bathory,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2055,E_INCUBUS,Incubus,Incubus,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2056,E_ZHERLTHSH,Zherlthsh,Zealotus,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-//2057,E_CRAMP,Cramp,Cramp,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+2057,E_CRAMP,Cramp,Cramp,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x181,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2058,M_MIMIC,Mimic,Mimic,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2059,M_DISGUISE,Disguise,Disguise,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2060,M_ALICE,Alice,Alice,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
@@ -1134,7 +1134,7 @@
//2078,S_SUCCUBUS,Succubus,Succubus,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2079,CRYSTAL_H,Crystal,Crystal,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2080,CRYSTAL_L,Crystal,Crystal,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-//2081,E_HYDRA,Hydra,Hydra,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+2081,E_HYDRA,Suspicious Hydra,Strange Hydra,34,854,1,0,0,7,1,2,100,100,1,1,1,1,1,1,10,12,0,3,41,0x0,1000,800,432,600,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2082,G_PIRANHA,Piranha,Piranha,75,4522,0,0,0,1,182,223,2,10,69,45,30,30,66,35,10,12,1,5,61,0x3295,200,768,768,384,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2083,HORN_SCARABA,Scaraba,Scaraba,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
//2084,HORN_SCARABA2,Scaraba,Scaraba,1,50,0,0,0,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x120,400,1872,672,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
diff --git a/db/mob_skill_db.txt b/db/mob_skill_db.txt
index 6bba81d28..c0dacc9c3 100644
--- a/db/mob_skill_db.txt
+++ b/db/mob_skill_db.txt
@@ -250,8 +250,8 @@
1046,Doppelganger@NPC_CRITICALSLASH,attack,170,1,2000,0,5000,yes,target,always,0,,,,,,,
1046,Doppelganger@CR_AUTOGUARD,attack,249,10,2000,500,300000,no,self,always,0,,,,,,29,
1046,Doppelganger@CR_AUTOGUARD,chase,249,10,2000,500,300000,no,self,longrangeattacked,,,,,,,29,
-1046,Doppelganger@AL_DECAGI,attack,30,10,500,0,20000,no,target,always,0,,,,,,5,
-1046,Doppelganger@AL_DECAGI,chase,30,10,500,0,20000,no,target,always,0,,,,,,5,
+1046,Doppelganger@AL_DECAGI,attack,30,48,500,0,20000,no,target,always,0,,,,,,5,
+1046,Doppelganger@AL_DECAGI,chase,30,48,500,0,20000,no,target,always,0,,,,,,5,
1046,Doppelganger@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,1427,,,,,,
1046,Doppelganger@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,1427,,,,,,
1046,Doppelganger@BS_HAMMERFALL,chase,110,11,10000,0,5000,yes,target,skillused,18,,,,,,,
@@ -399,7 +399,7 @@
1086,Golden Thief Bug@NPC_SUMMONSLAVE,idle,196,10,10000,0,0,no,self,onspawn,0,1054,,,,,,
1086,Golden Thief Bug@TF_HIDING,attack,51,1,1000,0,5000,no,self,myhpltmaxrate,20,,,,,,19,
1086,Golden Thief Bug@AL_HEAL,idle,28,11,10000,0,5000,yes,self,mystatuson,hiding,,,,,,,
-1087,Orc Hero@AL_DECAGI,chase,30,10,2000,0,300000,no,target,always,0,,,,,,6,
+1087,Orc Hero@AL_DECAGI,chase,30,48,2000,0,300000,no,target,always,0,,,,,,6,
1087,Orc Hero@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
1087,Orc Hero@AL_TELEPORT,idle,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
1087,Orc Hero@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
@@ -551,7 +551,7 @@
1111,Drainliar@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
1111,Drainliar@NPC_BLOODDRAIN,attack,199,1,500,0,5000,yes,target,always,0,,,,,,,
1111,Drainliar@NPC_DARKNESSATTACK,attack,190,1,2000,0,5000,yes,target,always,0,,,,,,,
-1112,Drake@AL_DECAGI,chase,30,10,2000,0,60000,no,target,always,0,,,,,,29,
+1112,Drake@AL_DECAGI,chase,30,48,2000,0,60000,no,target,always,0,,,,,,29,
1112,Drake@NPC_ARMORBRAKE,attack,344,10,2000,0,60000,no,target,always,0,,,,,,,
1112,Drake@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
1112,Drake@BS_MAXIMIZE,attack,114,1,500,0,5000,no,self,always,0,,,,,,,
@@ -1151,7 +1151,7 @@
1251,Stormy Knight@WZ_STORMGUST,chase,89,10,2000,500,5000,no,target,always,0,,,,,,21,
1251,Stormy Knight@WZ_STORMGUST,chase,89,10,10000,500,5000,no,target,skillused,18,,,,,,21,
1251,Stormy Knight@AL_HEAL,idle,28,11,10000,0,10000,yes,self,myhpltmaxrate,50,,,,,,,
-1252,Garm@AL_DECAGI,chase,30,10,2000,0,300000,no,target,always,0,,,,,,6,
+1252,Garm@AL_DECAGI,chase,30,48,2000,0,300000,no,target,always,0,,,,,,6,
1252,Garm@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
1252,Garm@AL_TELEPORT,idle,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
1252,Garm@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
@@ -1618,7 +1618,7 @@
1372,Goat@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,19,0x1089,,,,,
1372,Goat@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,attackpcge,2,,,,,,,
1372,Goat@NPC_STUNATTACK,attack,179,3,500,1500,5000,no,target,always,0,,,,,,6,
-1373,Lord of Death@AL_DECAGI,chase,30,10,2000,0,60000,no,target,always,0,,,,,,,
+1373,Lord of Death@AL_DECAGI,chase,30,48,2000,0,60000,no,target,always,0,,,,,,,
1373,Lord of Death@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
1373,Lord of Death@NPC_POWERUP,attack,349,5,10000,0,30000,yes,self,myhpltmaxrate,30,,,,,,6,
1373,Lord of Death@NPC_HELLJUDGEMENT,chase,662,10,10000,1000,10000,no,self,always,0,,,,,,36,
@@ -1774,7 +1774,7 @@
1388,Arc Angeling@NPC_SUMMONSLAVE,attack,196,7,10000,700,60000,no,self,slavele,3,1443,1246,1742,1743,1744,18,
1388,Arc Angeling@NPC_SUMMONSLAVE,idle,196,7,10000,700,60000,no,self,slavele,3,1443,1246,1742,1743,1744,18,
1388,Arc Angeling@RG_INTIMIDATE,attack,219,5,2000,0,5000,yes,target,always,0,,,,,,,
-1389,Dracula@AL_DECAGI,chase,30,10,2000,0,5000,no,target,always,0,,,,,,,
+1389,Dracula@AL_DECAGI,chase,30,48,2000,0,5000,no,target,always,0,,,,,,,
1389,Dracula@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
1389,Dracula@AL_TELEPORT,idle,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
1389,Dracula@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
@@ -2675,10 +2675,10 @@
1584,Tamruan@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,9,,,,,,
1584,Tamruan@NPC_SILENCEATTACK,attack,178,5,2000,700,5000,no,target,always,0,,,,,,9,
1584,Tamruan@NPC_EMOTION,chase,197,1,2000,0,5000,yes,self,always,0,9,,,,,,
-1585,Mime Monkey@NPC_HALLUCINATION,chase,207,1,500,500,5000,yes,target,always,0,,,,,,18,
-1585,Mime Monkey@SM_PROVOKE,chase,6,10,500,600,5000,no,target,always,0,,,,,,18,
-1585,Mime Monkey@NPC_HALLUCINATION,attack,207,1,500,500,5000,yes,target,always,0,,,,,,18,
-1585,Mime Monkey@SM_PROVOKE,attack,6,10,500,600,5000,no,target,always,0,,,,,,18,
+//1585,Mime Monkey@NPC_HALLUCINATION,chase,207,1,500,500,5000,yes,target,always,0,,,,,,18,
+//1585,Mime Monkey@SM_PROVOKE,chase,6,10,500,600,5000,no,target,always,0,,,,,,18,
+//1585,Mime Monkey@NPC_HALLUCINATION,attack,207,1,500,500,5000,yes,target,always,0,,,,,,18,
+//1585,Mime Monkey@SM_PROVOKE,attack,6,10,500,600,5000,no,target,always,0,,,,,,18,
1586,Leaf Cat@AL_HEAL,attack,28,1,10000,500,5000,no,friend,friendhpltmaxrate,60,,,,,,18,
1586,Leaf Cat@AL_HEAL,attack,28,1,10000,500,5000,no,self,myhpltmaxrate,30,,,,,,18,
1586,Leaf Cat@AL_HEAL,chase,28,1,10000,500,5000,no,friend,friendhpltmaxrate,60,,,,,,18,
@@ -2882,7 +2882,7 @@
1637,Margaretha Sorin@AL_PNEUMA,idle,25,1,10000,0,0,yes,self,longrangeattacked,,,,,,,,
1637,Margaretha Sorin@AL_INCAGI,attack,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
1637,Margaretha Sorin@AL_INCAGI,chase,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
-1637,Margaretha Sorin@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1637,Margaretha Sorin@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1637,Margaretha Sorin@MG_SAFETYWALL,attack,12,10,1000,0,5000,yes,self,always,0,,,,,,,
1637,Margaretha Sorin@AL_PNEUMA,attack,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
1637,Margaretha Sorin@AL_PNEUMA,chase,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
@@ -3031,7 +3031,7 @@
1643,High Priest Margaretha@AL_PNEUMA,idle,25,1,10000,0,0,yes,self,longrangeattacked,,,,,,,,
1643,High Priest Margaretha@AL_INCAGI,attack,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
1643,High Priest Margaretha@AL_INCAGI,chase,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
-1643,High Priest Margaretha@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1643,High Priest Margaretha@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1643,High Priest Margaretha@MG_SAFETYWALL,attack,12,10,1000,0,5000,yes,self,always,0,,,,,,,
1643,High Priest Margaretha@AL_PNEUMA,attack,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
1643,High Priest Margaretha@AL_PNEUMA,chase,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
@@ -3196,7 +3196,7 @@
1649,High Priest Margaretha@AL_PNEUMA,idle,25,1,10000,0,0,yes,self,longrangeattacked,,,,,,,,
1649,High Priest Margaretha@AL_INCAGI,attack,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
1649,High Priest Margaretha@AL_INCAGI,chase,29,10,2000,0,240000,yes,self,always,0,,,,,,2,
-1649,High Priest Margaretha@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1649,High Priest Margaretha@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1649,High Priest Margaretha@MG_SAFETYWALL,attack,12,10,1000,0,5000,yes,self,always,0,,,,,,,
1649,High Priest Margaretha@AL_PNEUMA,attack,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
1649,High Priest Margaretha@AL_PNEUMA,chase,25,1,5000,0,10000,yes,self,longrangeattacked,,,,,,,19,
@@ -3382,8 +3382,8 @@
1661,Errende Ebecee@AL_HEAL,chase,28,11,10000,500,5000,yes,self,myhpltmaxrate,30,,,,,,3,
1661,Errende Ebecee@NPC_HOLYATTACK,attack,189,3,1000,0,5000,yes,target,always,0,,,,,,,
1661,Errende Ebecee@NPC_SILENCEATTACK,attack,178,4,1000,700,5000,no,target,always,0,,,,,,,
-1661,Errende Ebecee@AL_DECAGI,attack,30,10,500,1000,5000,no,target,always,0,,,,,,29,
-1661,Errende Ebecee@AL_DECAGI,chase,30,10,500,1000,5000,no,target,always,0,,,,,,29,
+1661,Errende Ebecee@AL_DECAGI,attack,30,48,500,1000,5000,no,target,always,0,,,,,,29,
+1661,Errende Ebecee@AL_DECAGI,chase,30,48,500,1000,5000,no,target,always,0,,,,,,29,
1662,Kavach Icarus@AC_DOUBLE,attack,46,10,500,1000,5000,no,target,always,0,,,,,,,
1662,Kavach Icarus@AC_DOUBLE,attack,46,10,10000,1000,1000,no,target,skillused,46,,,,,,,
1662,Kavach Icarus@AC_DOUBLE,chase,46,10,2000,1000,5000,no,target,always,0,,,,,,,
@@ -3674,8 +3674,8 @@
1707,Thanatos Dolor@NPC_MENTALBREAKER,chase,159,2,500,0,5000,yes,target,always,0,,,,,,30,
1707,Thanatos Dolor@NPC_DARKTHUNDER,attack,341,9,500,1000,5000,no,target,always,0,,,,,,,
1707,Thanatos Dolor@NPC_DARKTHUNDER,chase,341,9,500,1000,5000,no,target,always,0,,,,,,,
-1707,Thanatos Dolor@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
-1707,Thanatos Dolor@AL_DECAGI,attack,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1707,Thanatos Dolor@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
+1707,Thanatos Dolor@AL_DECAGI,attack,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1707,Thanatos Dolor@AL_HEAL,attack,28,8,1000,0,5000,yes,friend,friendhpltmaxrate,40,,,,,,3,
1707,Thanatos Dolor@AL_HEAL,attack,28,8,1000,0,5000,yes,self,myhpltmaxrate,40,,,,,,3,
1707,Thanatos Dolor@AL_HEAL,idle,28,8,1000,0,5000,yes,friend,friendhpltmaxrate,40,,,,,,3,
@@ -3740,8 +3740,8 @@
1712,Thanatos Dolor@NPC_MENTALBREAKER,chase,159,2,500,1000,10000,no,target,always,0,,,,,,,
1712,Thanatos Dolor@NPC_DARKTHUNDER,attack,341,9,500,1000,5000,no,target,always,0,,,,,,,
1712,Thanatos Dolor@NPC_DARKTHUNDER,chase,341,9,500,1000,5000,no,target,always,0,,,,,,,
-1712,Thanatos Dolor@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
-1712,Thanatos Dolor@AL_DECAGI,attack,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1712,Thanatos Dolor@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
+1712,Thanatos Dolor@AL_DECAGI,attack,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1712,Thanatos Dolor@AL_HEAL,attack,28,11,1000,0,5000,yes,friend,friendhpltmaxrate,70,,,,,,3,
1712,Thanatos Dolor@AL_HEAL,attack,28,11,1000,0,5000,yes,self,myhpltmaxrate,70,,,,,,3,
1712,Thanatos Dolor@AL_HEAL,idle,28,9,1000,0,5000,yes,friend,friendhpltmaxrate,70,,,,,,3,
@@ -3982,8 +3982,8 @@
1754,Skeggiold@AL_HEAL,idle,28,9,5000,500,5000,no,self,myhpltmaxrate,30,,,,,,18,
1754,Skeggiold@MG_THUNDERSTORM,attack,21,7,1000,1500,10000,no,target,always,0,,,,,,,
1754,Skeggiold@MG_THUNDERSTORM,chase,21,7,1000,1500,10000,no,target,always,0,,,,,,,
-1754,Skeggiold@AL_DECAGI,attack,30,10,500,0,30000,no,target,always,0,,,,,,29,
-1754,Skeggiold@AL_DECAGI,chase,30,10,500,0,30000,no,target,always,0,,,,,,29,
+1754,Skeggiold@AL_DECAGI,attack,30,48,500,0,30000,no,target,always,0,,,,,,29,
+1754,Skeggiold@AL_DECAGI,chase,30,48,500,0,30000,no,target,always,0,,,,,,29,
1754,Skeggiold@NPC_PETRIFYATTACK,attack,180,2,500,500,5000,no,target,always,0,,,,,,3,
1754,Skeggiold@NPC_PETRIFYATTACK,chase,180,2,500,500,5000,no,target,always,0,,,,,,3,
1754,Skeggiold@RG_STRIPARMOR,attack,217,3,500,0,5000,yes,target,always,0,,,,,,6,
@@ -4116,7 +4116,7 @@
1769,Agav@MG_SAFETYWALL,attack,12,10,2000,0,5000,yes,self,always,0,,,,,,,
1769,Agav@NPC_CURSEATTACK,attack,181,5,500,800,5000,no,target,always,0,,,,,,30,
1769,Agav@NPC_CURSEATTACK,chase,181,5,500,800,5000,no,target,always,0,,,,,,30,
-1769,Agav@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1769,Agav@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1769,Agav@PR_LEXDIVINA,attack,76,1,1000,0,5000,yes,target,always,0,,,,,,36,
1769,Agav@PR_LEXDIVINA,chase,76,1,1000,0,5000,yes,target,always,0,,,,,,36,
1769,Agav@PR_LEXDIVINA,attack,76,1,5000,0,5000,yes,target,casttargeted,0,,,,,,36,
@@ -4275,7 +4275,7 @@
1786,Agav@MG_SAFETYWALL,attack,12,10,2000,0,5000,yes,self,always,0,,,,,,,
1786,Agav@NPC_CURSEATTACK,attack,181,5,500,800,5000,no,target,always,0,,,,,,30,
1786,Agav@NPC_CURSEATTACK,chase,181,5,500,800,5000,no,target,always,0,,,,,,30,
-1786,Agav@AL_DECAGI,chase,30,10,2000,0,10000,yes,target,always,0,,,,,,,
+1786,Agav@AL_DECAGI,chase,30,48,2000,0,10000,yes,target,always,0,,,,,,,
1786,Agav@PR_LEXDIVINA,attack,76,1,1000,0,5000,yes,target,always,0,,,,,,36,
1786,Agav@PR_LEXDIVINA,chase,76,1,1000,0,5000,yes,target,always,0,,,,,,36,
1786,Agav@PR_LEXDIVINA,attack,76,1,5000,0,5000,yes,target,casttargeted,0,,,,,,36,
@@ -4859,8 +4859,9 @@
1894,Pouring@WZ_WATERBALL,attack,86,10,10000,500,5000,no,target,always,0,,,,,,,
1894,Pouring@WZ_WATERBALL,chase,86,10,10000,500,5000,no,target,always,0,,,,,,,
-1904,Bomb Poring@NPC_SELFDESTRUCTION,attack,173,2,10000,3000,0,no,self,always,0,,,,,,,
-1904,Bomb Poring@NPC_SELFDESTRUCTION,chase,173,2,10000,3000,0,no,self,always,0,,,,,,,
+1904,Bomb Poring@NPC_SELFDESTRUCTION,idle,173,1,1000,3000,0,no,self,always,0,,,,,,,
+1904,Bomb Poring@NPC_SELFDESTRUCTION,attack,173,1,1000,3000,0,no,self,always,0,,,,,,,
+1904,Bomb Poring@NPC_SELFDESTRUCTION,chase,173,1,1000,3000,0,no,self,always,0,,,,,,,
// Satan Morroc (12.1)
//5% HP - Dragon Fear
@@ -5509,11 +5510,11 @@
2008,Woomawang@NPC_CALLSLAVE,attack,352,1,10000,0,15000,yes,self,always,0,,,,,,,
2008,Woomawang@NPC_CALLSLAVE,chase,352,1,10000,0,15000,yes,self,always,0,,,,,,,
2008,Woomawang@NPC_CALLSLAVE,idle,352,1,10000,0,15000,yes,self,always,0,,,,,,,
-2008,Woomawang@NPC_SUMMONSLAVE,attack,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
-2008,Woomawang@NPC_SUMMONSLAVE,chase,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
-2008,Woomawang@NPC_SUMMONSLAVE,idle,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
-2008,Woomawang@NPC_METAMORPHOSIS,chase,193,1,10000,5000,5000,no,self,myhpltmaxrate,50,,,,,,,
-2008,Woomawang@NPC_METAMORPHOSIS,attack,193,1,10000,5000,5000,no,self,myhpltmaxrate,50,,,,,,,
+2008,Woomawang@NPC_SUMMONSLAVE,attack,196,1,10000,0,10000,yes,self,slavele,5,2010,,,,,,
+2008,Woomawang@NPC_SUMMONSLAVE,chase,196,1,10000,0,10000,yes,self,slavele,5,2010,,,,,,
+2008,Woomawang@NPC_SUMMONSLAVE,idle,196,6,10000,0,10000,yes,self,slavele,5,2010,,,,,,
+2008,Woomawang@NPC_METAMORPHOSIS,chase,193,6,10000,5000,5000,no,self,myhpltmaxrate,50,,,,,,,
+2008,Woomawang@NPC_METAMORPHOSIS,attack,193,6,10000,5000,5000,no,self,myhpltmaxrate,50,,,,,,,
2008,Woomawang@NPC_SHIELDBRAKE,attack,346,10,2000,0,5000,yes,target,always,0,,,,,,,
2008,Woomawang@LK_SPIRALPIERCE,attack,397,5,2000,500,5000,yes,target,always,0,,,,,,,
2008,Woomawang@NPC_CRITICALWOUND,attack,673,3,2000,0,30000,yes,target,always,0,,,,,,,
@@ -5528,15 +5529,15 @@
2008,Woomawang@NPC_AGIUP,chase,350,5,10000,0,30000,yes,self,myhpltmaxrate,60,,,,,,,
2009,Woomawang@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,,,,,,,,
2009,Woomawang@AL_TELEPORT,chase,26,1,5000,0,5000,yes,self,rudeattacked,,,,,,,,
-2009,Woomawang@NPC_RUN,attack,354,1,10000,0,0,yes,self,myhpltmaxrate,1,,,,,,26,
-2009,Woomawang@NPC_RUN,chase,354,1,10000,0,0,yes,self,myhpltmaxrate,1,,,,,,26,
+2009,Woomawang@NPC_RUN,attack,354,10,10000,0,0,yes,self,myhpltmaxrate,1,,,,,,26,
+2009,Woomawang@NPC_RUN,chase,354,10,10000,0,0,yes,self,myhpltmaxrate,1,,,,,,26,
2009,Woomawang@AL_HEAL,idle,28,9,10000,0,2000,yes,self,myhpltmaxrate,99,,,,,,,
2009,Woomawang@NPC_CALLSLAVE,attack,352,1,10000,0,15000,yes,self,always,0,,,,,,,
2009,Woomawang@NPC_CALLSLAVE,chase,352,1,10000,0,15000,yes,self,always,0,,,,,,,
2009,Woomawang@NPC_CALLSLAVE,idle,352,1,10000,0,15000,yes,self,always,0,,,,,,,
-2009,Woomawang@NPC_SUMMONSLAVE,attack,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
-2009,Woomawang@NPC_SUMMONSLAVE,chase,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
-2009,Woomawang@NPC_SUMMONSLAVE,idle,196,1,10000,0,10000,yes,self,slavele,5,,,,,,,
+2009,Woomawang@NPC_SUMMONSLAVE,attack,196,6,10000,0,10000,yes,self,slavele,5,2010,,,,,,
+2009,Woomawang@NPC_SUMMONSLAVE,chase,196,6,10000,0,10000,yes,self,slavele,5,2010,,,,,,
+2009,Woomawang@NPC_SUMMONSLAVE,idle,196,6,10000,0,10000,yes,self,slavele,5,2010,,,,,,
2009,Woomawang@NPC_STONESKIN,chase,675,4,10000,1000,30000,no,self,myhpltmaxrate,3,,,,,,,
2009,Woomawang@NPC_STONESKIN,attack,675,4,10000,1000,30000,no,self,myhpltmaxrate,3,,,,,,,
2009,Woomawang@NPC_EVILLAND,attack,670,10,10000,0,15000,yes,target,myhpltmaxrate,50,,,,,,,
@@ -5650,13 +5651,14 @@
2022,Nidhoggr's Shadow@NPC_ALLHEAL,walk,687,1,3000,10000,10000,no,self,rudeattacked,0,,,,,,,
2022,Nidhoggr's Shadow@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
2022,Nidhoggr's Shadow@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
-2022,Nidhoggr's Shadow@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,,,,,,,
-2022,Nidhoggr's Shadow@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,,,,,,,
+2022,Nidhoggr's Shadow@NPC_SUMMONSLAVE,attack,196,5,10000,700,10000,no,self,slavele,3,2027,,,,,,
+2022,Nidhoggr's Shadow@NPC_SUMMONSLAVE,idle,196,5,10000,700,10000,no,self,slavele,3,2027,,,,,,
+2022,Nidhoggr's Shadow@NPC_SUMMONSLAVE,idle,196,5,10000,700,10000,no,self,onspawn,0,2027,,,,,,
2022,Nidhoggr's Shadow@NPC_MAGICMIRROR,idle,671,3,10000,0,120000,yes,self,always,0,,,,,,,
2022,Nidhoggr's Shadow@NPC_MAGICMIRROR,chase,671,3,10000,0,120000,yes,self,always,0,,,,,,,
2022,Nidhoggr's Shadow@NPC_MAGICMIRROR,attack,671,3,10000,0,120000,yes,self,always,0,,,,,,,
-2022,Nidhoggr's Shadow@NPC_STONESKIN,chase,675,3,10000,2500,300000,no,self,myhpltmaxrate,3,,,,,,,
-2022,Nidhoggr's Shadow@NPC_STONESKIN,attack,675,3,10000,2500,300000,no,self,myhpltmaxrate,3,,,,,,,
+2022,Nidhoggr's Shadow@NPC_STONESKIN,chase,675,3,10000,2500,300000,no,self,myhpltmaxrate,3,,,,,,,34
+2022,Nidhoggr's Shadow@NPC_STONESKIN,attack,675,3,10000,2500,300000,no,self,myhpltmaxrate,3,,,,,,,34
2022,Nidhoggr's Shadow@NPC_POWERUP,attack,349,5,6000,0,60000,yes,self,myhpltmaxrate,15,,,,,,6,
2022,Nidhoggr's Shadow@NPC_EVILLAND,attack,670,4,500,0,25000,yes,target,myhpltmaxrate,15,,,,,,,
2022,Nidhoggr's Shadow@WZ_QUAGMIRE,chase,92,5,10000,700,5000,no,target,myhpltmaxrate,28,,,,,,12,
@@ -5669,8 +5671,8 @@
2022,Nidhoggr's Shadow@NPC_WIDESTONE,attack,666,5,10000,0,60000,yes,self,myhpltmaxrate,40,,,,,,,
2022,Nidhoggr's Shadow@NPC_EVILLAND,idle,670,10,500,0,120000,yes,target,myhpltmaxrate,50,,,,,,,
2022,Nidhoggr's Shadow@NPC_EVILLAND,chase,670,10,500,0,120000,yes,target,myhpltmaxrate,50,,,,,,,
-2022,Nidhoggr's Shadow@NPC_HELLJUDGEMENT,chase,662,2,10000,7000,25000,no,self,myhpltmaxrate,50,,,,,,,
-2022,Nidhoggr's Shadow@NPC_HELLJUDGEMENT,attack,662,2,10000,7000,25000,no,self,myhpltmaxrate,50,,,,,,,
+2022,Nidhoggr's Shadow@NPC_HELLJUDGEMENT,chase,662,2,10000,7000,25000,no,self,myhpltmaxrate,50,,,,,,,32
+2022,Nidhoggr's Shadow@NPC_HELLJUDGEMENT,attack,662,2,10000,7000,25000,no,self,myhpltmaxrate,50,,,,,,,32
2022,Nidhoggr's Shadow@NPC_DARKNESSBREATH,attack,658,10,10000,800,35000,no,target,myhpltmaxrate,50,,,,,,32,
2022,Nidhoggr's Shadow@NPC_SLOWCAST,attack,672,5,10000,0,60000,yes,self,myhpltmaxrate,70,,,,,,,
2022,Nidhoggr's Shadow@NPC_CRITICALWOUND,attack,673,3,2000,0,30000,yes,target,myhpltmaxrate,70,,,,,,,
@@ -5685,7 +5687,7 @@
2022,Nidhoggr's Shadow@NPC_DRAGONFEAR,attack,659,5,2000,1000,20000,no,self,always,0,,,,,,32,
2022,Nidhoggr's Shadow@WZ_METEOR,attack,83,10,2000,1000,10000,no,target,always,0,,,,,,29,
2022,Nidhoggr's Shadow@SA_DISPELL,attack,289,5,10000,0,30000,yes,target,always,0,,,,,,,
-2022,Nidhoggr's Shadow@NPC_PULSESTRIKE,attack,661,5,2000,10000,40000,no,self,always,0,,,,,,,
+2022,Nidhoggr's Shadow@NPC_PULSESTRIKE,attack,661,5,2000,10000,40000,no,self,always,0,,,,,,,31
2022,Nidhoggr's Shadow@NPC_ALLHEAL,idle,687,1,10000,120000,30000,yes,self,myhpltmaxrate,60,,,,,,20,
2023,Dark Shadow@NPC_DARKSTRIKE,chase,340,2,2000,0,5000,yes,target,always,0,,,,,,,
2023,Dark Shadow@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,9,,,,,,
@@ -5696,7 +5698,86 @@
2026,Dandelion@NPC_POISON,attack,176,3,1000,500,60000,no,target,myhpltmaxrate,30,,,,,,,
2026,Dandelion@NPC_COMBOATTACK,attack,171,1,3000,0,5000,yes,target,always,0,,,,,,,27
2026,Dandelion@TF_SPRINKLESAND,attack,149,1,500,0,5000,yes,target,always,0,,,,,,,28
+
2027,Dark Shadow@NPC_DARKSTRIKE,chase,340,2,2000,0,5000,yes,target,always,0,,,,,,,
2027,Dark Shadow@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,9,,,,,,
2027,Dark Shadow@NPC_FIREATTACK,attack,186,3,500,500,5000,no,target,always,0,,,,,,,
2027,Dark Shadow@NPC_DARKNESSBREATH,attack,658,1,500,1000,5000,no,target,always,0,,,,,,,
+
+// Brasilis
+2068,Boitata@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+2068,Boitata@MG_FIREBALL,idle,17,5,10000,0,5000,yes,randomtarget,always,0,,,,,,,
+2068,Boitata@MG_FIREBALL,chase,17,5,10000,0,5000,yes,target,always,0,,,,,,,
+2068,Boitata@CR_REFLECTSHIELD,idle,252,3,1000,0,200000,no,self,always,0,,,,,,,
+2068,Boitata@CR_REFLECTSHIELD,attack,252,3,1000,0,200000,no,self,always,0,,,,,,,
+2068,Boitata@NPC_FIREATTACK,attack,186,5,2000,1000,200000,no,target,always,0,,,,,,,
+2068,Boitata@NPC_BLEEDING,attack,660,3,500,500,10000,no,target,always,0,,,,,,,
+2068,Boitata@AS_SONICBLOW,attack,136,10,1000,0,10000,yes,target,always,0,,,,,,,
+2068,Boitata@SM_MAGNUM,attack,7,7,1000,0,10000,yes,self,attackpcge,2,,,,,,,
+2068,Boitata@KN_TWOHANDQUICKEN,attack,60,20,2000,0,300000,yes,self,myhpltmaxrate,40,,,,,,,
+2068,Boitata@NPC_CRITICALSLASH,attack,170,1,2000,0,5000,yes,target,always,0,,,,,,,
+2068,Boitata@NPC_WIDEBLEEDING,attack,665,2,10000,500,100000,no,self,myhpltmaxrate,20,,,,,,,
+2068,Boitata@NPC_POWERUP,attack,349,5,10000,0,30000,yes,self,myhpltmaxrate,20,,,,,,6,
+2068,Boitata@NPC_SUMMONSLAVE,attack,196,5,10000,1000,30000,no,self,slavele,1,2082,,,,,,
+2068,Boitata@NPC_SUMMONSLAVE,idle,196,5,10000,1000,30000,no,self,slavele,1,2082,,,,,,
+2068,Boitata@NPC_SUMMONSLAVE,chase,196,5,10000,1000,30000,no,self,slavele,1,2082,,,,,,
+2068,Boitata@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+2068,Boitata@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+2069,Iara@NPC_WATERATTACK,attack,184,3,500,0,5000,no,target,always,0,,,,,,6,
+2069,Iara@PR_LEXDIVINA,attack,76,5,500,1000,5000,yes,target,always,0,,,,,,2,
+2069,Iara@PR_LEXDIVINA,chase,76,5,500,1000,5000,yes,target,always,0,,,,,,2,
+2069,Iara@NPC_EMOTION,chase,197,1,2000,0,5000,yes,self,always,0,3,,,,,,
+2069,Iara@WZ_WATERBALL,attack,86,3,500,1000,5000,yes,target,always,0,,,,,,6,
+2069,Iara@SM_BASH,attack,5,5,500,800,5000,no,target,always,0,,,,,,,
+2069,Iara@NPC_STOP,attack,342,1,500,0,30000,yes,target,always,0,,,,,,,
+2069,Iara@MG_FROSTDIVER,attack,15,5,500,1000,5000,yes,target,always,0,,,,,,,
+2069,Iara@MG_FROSTDIVER,chase,15,10,500,1000,5000,yes,target,always,0,,,,,,,
+2070,Piranha@NPC_WATERATTACK,attack,184,2,500,0,5000,no,target,always,0,,,,,,6,
+2070,Piranha@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
+2070,Piranha@NPC_CRITICALSLASH,angry,170,1,500,500,5000,no,target,always,0,,,,,,6,
+2070,Piranha@NPC_CRITICALWOUND,attack,673,1,50,0,10000,yes,target,always,0,,,,,,,
+2070,Piranha@NPC_BLEEDING,attack,660,3,500,0,5000,yes,target,always,0,,,,,,,
+2070,Piranha@MG_COLDBOLT,attack,14,3,500,1000,5000,yes,target,always,0,,,,,,,
+2070,Piranha@MG_COLDBOLT,chase,14,3,500,1000,5000,yes,target,always,0,,,,,,,
+2070,Piranha@WZ_WATERBALL,attack,86,3,500,1000,5000,yes,target,always,0,,,,,,6,
+2070,Piranha@NPC_BLOODDRAIN,attack,199,1,500,0,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@NPC_CURSEATTACK,attack,181,1,1000,800,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@NPC_CURSEATTACK,chase,181,1,1000,800,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@NPC_FIREATTACK,attack,186,3,500,500,5000,no,target,always,0,,,,,,7,
+2071,Headless Mule@MG_FIREBOLT,attack,19,5,2000,1500,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@MG_FIREBOLT,chase,19,5,2000,1500,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@NPC_BLEEDING,attack,660,3,500,0,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@NPC_SILENCEATTACK,attack,178,3,500,700,5000,no,target,always,0,,,,,,,
+2071,Headless Mule@MG_FIREWALL,chase,18,5,500,500,5000,yes,target,always,0,,,,,,,
+2071,Headless Mule@SM_BASH,attack,5,5,500,800,5000,no,target,always,0,,,,,,,
+2072,Jaguar@NPC_GROUNDATTACK,attack,185,3,500,500,5000,no,target,always,0,,,,,,,
+2072,Jaguar@NPC_COMBOATTACK,attack,171,1,500,500,5000,no,target,always,0,,,,,,6,
+2072,Jaguar@AS_SONICBLOW,attack,136,3,500,800,5000,no,target,always,0,,,,,,0,
+2072,Jaguar@NPC_DARKNESSATTACK,attack,190,1,2000,0,5000,yes,target,always,0,,,,,,,
+2072,Jaguar@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,7,0x3195,,,,,
+2072,Jaguar@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+2073,Toucan@NPC_EMOTION,walk,197,1,2000,0,5000,yes,self,always,0,2,,,,,,
+2073,Toucan@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,19,0x81,,,,,
+2073,Toucan@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,7,0x3195,,,,,
+2073,Toucan@NPC_TELEKINESISATTACK,chase,191,5,500,0,5000,yes,target,always,0,,,,,,,
+2073,Toucan@NPC_WINDATTACK,attack,187,3,500,500,5000,no,target,always,0,,,,,,6,
+2073,Toucan@NPC_STOP,attack,342,1,500,500,5000,no,target,always,0,,,,,,30,
+2073,Toucan@NPC_SILENCEATTACK,attack,178,3,500,700,5000,no,target,always,0,,,,,,,
+2074,Curupira@NPC_GROUNDATTACK,attack,185,2,500,500,5000,no,target,always,0,,,,,,6,
+2074,Curupira@SA_REVERSEORCISH,attack,294,1,50,0,30000,yes,target,always,0,,,,,,18,
+2074,Curupira@SA_REVERSEORCISH,chase,294,1,50,0,30000,yes,target,always,0,,,,,,18,
+2074,Curupira@NPC_BLINDATTACK,attack,177,3,500,0,5000,yes,target,always,0,,,,,,,
+2074,Curupira@MG_STONECURSE,idle,16,5,10000,0,5000,yes,target,always,0,,,,,,11,
+2074,Curupira@MG_STONECURSE,attack,16,5,10000,0,5000,yes,target,always,0,,,,,,11,
+2074,Curupira@AL_INCAGI,chase,29,1,500,700,60000,no,self,always,0,,,,,,6,
+//2080,Crystal@AL_TELEPORT,attack,26,1,3000,0,10000,yes,self,always,0,,,,,,29,
+//2080,Crystal@AL_TELEPORT,idle,26,1,4000,0,10000,yes,self,always,0,,,,,,29,
+2082,Piranha@NPC_WATERATTACK,attack,184,2,500,0,5000,no,target,always,0,,,,,,6,
+2082,Piranha@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
+2082,Piranha@NPC_CRITICALSLASH,angry,170,1,500,500,5000,no,target,always,0,,,,,,6,
+2082,Piranha@NPC_CRITICALWOUND,attack,673,1,50,0,10000,yes,target,always,0,,,,,,,
+2082,Piranha@NPC_BLEEDING,attack,660,3,500,0,5000,yes,target,always,0,,,,,,,
+2082,Piranha@MG_COLDBOLT,attack,14,3,500,1000,5000,yes,target,always,0,,,,,,,
+2082,Piranha@MG_COLDBOLT,chase,14,3,500,1000,5000,yes,target,always,0,,,,,,,
+2082,Piranha@WZ_WATERBALL,attack,86,3,500,1000,5000,yes,target,always,0,,,,,,6,
+2082,Piranha@NPC_BLOODDRAIN,attack,199,1,500,0,5000,yes,target,always,0,,,,,,,
diff --git a/db/pet_db.txt b/db/pet_db.txt
index c5c888c78..df1b6a003 100644
--- a/db/pet_db.txt
+++ b/db/pet_db.txt
@@ -121,5 +121,5 @@
1837,IMP,Fire Imp,12374,9056,10038,6114,80,60,10,100,250,20,200,150,0,0,300,300,800,{},{ bonus2 bSubEle,Ele_Fire,2; bonus2 bAddEle,Ele_Fire,2; }
// Brasilis Quest - Suspicious Beach [UNHATCHABLE]
-2057,E_CRAMP,Strange Cramp,12408,6221,0,0,0,0,0,0,0,50,0,0,0,0,350,400,800,{},{} // kRO version
-2081,E_HYDRA,Strange Hydra,12408,6221,0,0,0,0,0,0,0,50,0,0,0,0,350,400,800,{},{} // iRO/cRO version
+2057,E_CRAMP,Strange Cramp,12408,6221,0,0,0,0,0,0,0,0,50,0,0,0,350,400,800,{},{} // kRO version
+2081,E_HYDRA,Strange Hydra,12408,6221,0,0,0,0,0,0,0,0,50,0,0,0,350,400,800,{},{} // iRO/cRO version
diff --git a/db/quest_db.txt b/db/quest_db.txt
index 4e0cff4dc..000e7f1de 100644
--- a/db/quest_db.txt
+++ b/db/quest_db.txt
@@ -189,14 +189,14 @@
2198,0,0,0,0,0,0,0,"Guarana quest"
2199,0,0,0,0,0,0,0,"Guarana quest"
2200,0,0,0,0,0,0,0,"Guarana quest"
-2201,0,0,0,0,0,0,0,"Fortunate training"
-2202,0,0,0,0,0,0,0,"Fortunate training"
-2203,0,0,0,0,0,0,0,"Fortunate training"
-2204,0,0,0,0,0,0,0,"Fortunate training"
-2205,0,0,0,0,0,0,0,"Fortunate training"
-2206,0,0,0,0,0,0,0,"Fortunate training"
-2207,0,0,0,0,0,0,0,"Fortunate training"
-2208,0,0,0,0,0,0,0,"Ghost of bathroom"
+2201,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2202,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2203,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2204,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2205,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2206,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2207,0,0,0,0,0,0,0,"Brasilis Water Lily"
+2208,0,0,0,0,0,0,0,"Bathroom Ghost"
2209,0,0,0,0,0,0,0,"Generic Job Change Quest"
2210,0,0,0,0,0,0,0,"Generic Job Change Quest"
@@ -487,8 +487,8 @@
7051,0,0,0,0,0,0,0,"Thanatos Tower - Sealed Tower"
7052,0,0,0,0,0,0,0,"Thanatos Tower - Sealed Tower"
7053,0,0,0,0,0,0,0,"Thanatos Tower - What they want is.."
-7054,0,0,0,0,0,0,0,"Myu's Favor - Teach them a lesson!"
-7055,0,0,0,0,0,0,0,"Myu's Favor - Not the cat!"
+7054,0,1282,1000,0,0,0,0,"Myu's Favor - Teach them a lesson!"
+7055,0,1261,1,0,0,0,0,"Myu's Favor - Not the cat!"
7056,0,0,0,0,0,0,0,"Messenger - Arc's Favor"
7057,0,0,0,0,0,0,0,"Messenger - Arc's Favor"
7058,0,0,0,0,0,0,0,"Messenger - Arc's Favor"
@@ -1776,3 +1776,10 @@
60308,0,1713,200,0,0,0,0,"Dragon Hunting"
60309,0,1716,100,0,0,0,0,"Dragon Hunting"
60310,0,1716,200,0,0,0,0,"Dragon Hunting"
+
+// iRO expanded upon the log entries of this quest.
+60351,0,0,0,0,0,0,0,"Bathroom Ghost"
+60352,0,0,0,0,0,0,0,"Bathroom Ghost"
+60353,0,0,0,0,0,0,0,"Bathroom Ghost"
+60354,0,0,0,0,0,0,0,"Bathroom Ghost"
+60355,0,0,0,0,0,0,0,"Bathroom Ghost"
diff --git a/doc/item_bonus.txt b/doc/item_bonus.txt
index 840aea3de..e705a963b 100644
--- a/doc/item_bonus.txt
+++ b/doc/item_bonus.txt
@@ -437,3 +437,5 @@ bonus bUnstripable,n; Armor cannot be taken off via strip skills (n is meaningle
bonus2 bHPDrainValueRace,r,n; Heals +n HP when attacking a monster of race r with normal attack.
bonus bMagicSPGainValue,n; Heals +n SP when killing an enemy with magic attack.
bonus bMagicHPGainValue,n; Heals +n HP when killing an enemy with magic attack.
+
+bonus3 bAddClassDropItem,s,x,n; Adds an n/100% chance of dropping item s when killing monster class x.
diff --git a/npc/Changelog.txt b/npc/Changelog.txt
index 9f605e9cd..d66408ae9 100644
--- a/npc/Changelog.txt
+++ b/npc/Changelog.txt
@@ -1,5 +1,7 @@
Date Added
======
+2011/08/10
+ * Revv. 14931 Added scripts and NPC Brasilis updates from trunk r14928. [L0ne_W0lf]
2011/07/26
* Rev. 14922 Added Renewal Guides, and made the filenames uniform. [L0ne_W0lf]
2011/07/21
diff --git a/npc/cities/brasilis.txt b/npc/cities/brasilis.txt
index 4d97694fc..45581fe6e 100644
--- a/npc/cities/brasilis.txt
+++ b/npc/cities/brasilis.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= L0ne_W0lf
//===== Current Version: =====================================
-//= 1.1
+//= 1.2
//===== Compatible With: =====================================
//= eAthena SVN
//===== Description: =========================================
@@ -12,79 +12,150 @@
//===== Additional Comments: =================================
//= 1.0 First version. Transportation and Basic NPCs.
//= 1.1 Fixed Zeny not being removed for payment. [Kisuka]
+//= 1.2 Updated dialog, added Ice Cream Maker. [L0ne_W0lf]
//============================================================
-alberta,247,115,3 script Brute Sailor#bra2 100,{
- mes "[Brute Sailor]";
- mes "Hey, have you heard of the place called Brasilis?";
- mes "It's a place that's as hot as the Morroc desert, and as dense as the forests of Payon.";
+alberta,247,115,3 script Crewman#bra2 100,{
+ mes "[Crewman]";
+ mes "Hey, have you heard of a place called Brasilis?";
+ mes "It's a tropical city that's hot like the desert but also rainy. It is a very mysterious place.";
next;
- mes "[Brute Sailor]";
- mes "I have a map to get there, if you want I can take you to Brasilis.";
- mes "It will only cost you 10,000 zeny. What do you say?";
+ mes "[Crewman]";
+ mes "We recently found a new ocean route to get there easily.";
+ mes "It's just 10,000 zeny for a round trip! So do you want to go?";
next;
- switch(select("Let's go to Brasilis!:Cancel.")) {
+ switch(select("Take me to Brasilis!:I'll stay here.")) {
case 1:
- if (Zeny > 9999 ) {
- mes "[Brute Sailor]";
- mes "Great! Let's Go!";
+ if (Zeny > 9999) {
+ mes "[Crewman]";
+ mes "Cool~!! Let's go~!";
+ set zeny,zeny-10000;
close2;
- set Zeny,Zeny-10000;
warp "brasilis",314,60;
end;
}
else {
- mes "[Brute Sailor]";
- mes "I'm sorry but you don't have";
- mes "enough zeny now";
- mes "You need 10,000 zeny";
- mes "to go to Brasilis";
- mes "Thank you.";
+ mes "[Crewman]";
+ mes "I said 10,000 zeny.";
close;
}
case 2:
- mes "[Brute Sailor]";
- mes "Let me know if you change your mind.";
+ mes "[Crewman]";
+ mes "Well if you're ever interested, let me know and I can take you there.";
close;
}
}
-brasilis,316,57,3 script Brute Sailor#bra1 100,{
- mes "[Brute Sailor]";
- mes "My ship will be heading back to Alberta soon, would you like to go back?";
+brasilis,316,57,3 script Crewman#bra1 100,{
+ mes "[Crewman]";
+ mes "My ship is going to back to Alberta, do you want to join us?";
next;
- switch(select("Return to Alberta.:Cancel.")) {
+ switch(select("Go back to Alberta.:Not yet~.")) {
case 1:
- mes "[Brute Sailor]";
- mes "Alright, lets get going!";
+ mes "[Crewman]";
+ mes "I sure do miss home.";
close2;
warp "alberta",244,115;
end;
case 2:
- mes "[Brute Sailor]";
- mes "Let me know if you change your mind.";
+ mes "[Crewman]";
+ mes "Ok, suit yourself. We'll see you when we get back then.";
close;
}
}
-brasilis,278,137,3 script Bulletin Board#bra1 858,{
- mes ":: Happy Toucan Inn ::";
+brasilis,155,165,3 script Signpost#bra1 858,{
+ mes ":: Art Museum ::";
close;
}
-brasilis,244,248,1 script Bulletin Board#bra2 858,{
- mes ":: Brasilis Market ::";
+brasilis,195,231,3 script Signpost#bra2 858,{
+ mes ":: Verass Monument ::";
close;
}
-brasilis,155,165,3 script Bulletin Board#bra3 858,{
- mes ":: Brasilis Art Museum ::";
+brasilis,240,247,3 script Signpost#bra3 858,{
+ mes ":: Market ::";
+ mes " ";
+ mes "- For your Potions and Weaponry -";
close;
}
-brasilis,303,309,3 script Bulletin Board#bra4 858,{
+brasilis,303,309,3 script Signpost#bra4 858,{
mes ":: Jungle Cable ::";
- mes " ";
- mes "- Not recommended for the faint hearted! -";
+ mes "";
+ mes "- Not for the faint of heart -";
+ close;
+}
+
+brasilis,278,137,3 script Signpost#bra5 858,{
+ mes ":: Brasilis Hotel ::";
close;
}
+
+brasilis,137,77,5 script Ice-Cream Maker 85,{
+ mes "[Ice Cream Maker]";
+ mes "Come~come~";
+ mes "Ice cream is the perfect snack for a hot day~";
+ mes "It's just ^3355FF100 Zeny^000000~";
+ mes "Ice Cream~";
+ mes "Get 'yer Ice Cream!";
+ next;
+ switch(select("Give me one!:Ice Cream?:Cancel.")) {
+ case 1:
+ mes "[Ice Cream Maker]";
+ mes "Since there are so many people want to get a cool ice cream you can order only 5 at a time.";
+ mes "So how many d'ya want?";
+ next;
+ while(1) {
+ input .@input; //,1,5;
+ if (.@input == 0) {
+ mes "[Ice Cream Maker]";
+ mes "None?";
+ mes "Fine get outta the way, I have customers to serve.";
+ close;
+ }
+ else if ((.@input < 0) || (.@input > 5)) {
+ mes "[Ice Cream Maker]";
+ mes "Wow.";
+ mes "You ordered too much.";
+ mes "If you eat over 5 you might need to fight with a monster in your stomach. Calm down buddy.";
+ next;
+ }
+ else
+ break;
+ }
+ set .@icecream_hap,.@input*100;
+ if (Zeny < .@icecream_hap) {
+ mes "[Ice Cream Maker]";
+ mes "Dood~! You don't have enough money.";
+ mes "It's only ^3355FF100 Zeny^000000~ Seriously!";
+ close;
+ }
+ if (!checkweight(536,.@input)) {
+ mes "[Ice Cream Maker]";
+ mes "You seem to have too much stuff.";
+ mes "Lighten your pack before buying this.";
+ close;
+ }
+ set zeny,zeny-.@icecream_hap;
+ getitem 536,.@input; //Ice_Cream
+ close;
+ case 2:
+ mes "[Ice Cream Maker]";
+ mes "'Ice cream is...";
+ mes "Wait, don't you know";
+ mes "what Ice Cream is?";
+ mes "What rock have you";
+ mes "been living under?";
+ next;
+ mes "[Ice Cream Maker]";
+ mes "I'm not going to even start with how weird that sounds.";
+ mes "Anyway, get 'yer Ice Cream right here while it's nice and cold.";
+ close;
+ case 3:
+ mes "[Ice Cream Maker]";
+ mes "Don't miss your chance to eat the greatest Ice Cream in all the land~!";
+ close;
+ }
+}
diff --git a/npc/instances/NydhoggsNest.txt b/npc/instances/NydhoggsNest.txt
new file mode 100644
index 000000000..aab699570
--- /dev/null
+++ b/npc/instances/NydhoggsNest.txt
@@ -0,0 +1,2948 @@
+//===== eAthena Script =======================================
+//= Nidhoggr's Nest
+//===== By: ==================================================
+//= L0ne_W0lf, various sources
+//===== Current Version: =====================================
+//= 1.2
+//===== Compatible With: =====================================
+//= eAthena SVN
+//===== Description: =========================================
+//= [Aegis Conversion]
+//= Nidhoggr's Nest Instance
+//===== Additional Comments: =================================
+//= 1.0 First version.
+//= 1.1 Updated dialog slightly, adjusted EXP gained.
+//= 1.2 No longer glitches when anyone but party leader talks to the first NPC.
+//============================================================
+
+nyd_dun02,100,201,3 script Yggdrasil Gatekeeper 111,8,8,{
+ if (ins_nyd == 0) {
+ mes "A great stone gate stands before you. The sculpture of a terrible dragon spreads its powerful looking wings.";
+ next;
+ mes "Near the bottom of the gate, Laphine tribeswomen have been turned to stone and now look like they are part of the great door.";
+ next;
+ switch(select("Move closer to look more carefully.:Step back.")) {
+ case 1:
+ if (ep13_1_edq == 14) {
+ specialeffect2 EF_HOLYHIT;
+ PushPC 3,3;
+ set ep13_1_edq,15;
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ next;
+ mes "It would be better to go back to camp and inform the others and ask for help.";
+ set ins_nyd,1;
+ close;
+ }
+ else if (ep13_1_edq == 15) {
+ specialeffect2 EF_HOLYHIT;
+ PushPC 3,3;
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ next;
+ mes "It would be better to go back to camp and inform the others and ask for help.";
+ set ins_nyd,1;
+ close;
+ }
+ else {
+ specialeffect2 EF_HOLYHIT;
+ PushPC 3,3;
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ next;
+ mes "It would be better to go back to camp and inform the others and ask for help.";
+ next;
+ mes "You'll have to obtain the others trust in the expendition camp by working hard.";
+ set ins_nyd,1;
+ close;
+ }
+ case 2:
+ close;
+ }
+ }
+ else if (ins_nyd == 1) {
+ if ((ep13_1_edq == 14) || (ep13_1_edq == 15)) {
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ next;
+ mes "It would be better to go back to camp and inform the others and ask for help.";
+ set ep13_1_edq,15;
+ close;
+ }
+ else {
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ next;
+ mes "It would be better to go back to camp and inform the others and ask for help.";
+ next;
+ mes "You'll have to obtain the others trust in the expendition camp by working hard.";
+ close;
+ }
+ }
+ else if ((ins_nyd == 111) || (ins_nyd == 112)) {
+ specialeffect2 EF_CHANGECOLD;
+ mes "The strange sensation surrounding your body has disappeared";
+ next;
+ mes "When you touch the stone gate, you hear a commanding voice.";
+ next;
+ mes "[??????]";
+ mes "Wingless one... Our promised words...";
+ next;
+ switch(select("'Guardian's spell'!:Take a step back.")) {
+ case 1:
+ mes "[??????]";
+ mes "Promised words... Guardian's spell... proof of their existence.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "In the name of Yggdrasiliad, I will accept you as a servant of the Guardian.";
+ next;
+ specialeffect2 EF_CHANGECOLD;
+ set ins_nyd,200;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "I accept your entrance through the Guardian's gate. You are now considered a faithful servant of the Guardian Nidhoggur.";
+ next;
+ mes "The voice has disappeared, and the dark power is calming down from behind the stone gate.";
+ close;
+ case 2:
+ close;
+ }
+ }
+ else if ((ins_nyd == 131) || (ins_nyd == 132) || (ins_nyd > 199)) {
+ set .@ins_nyd_check,checkquest(3135,PLAYTIME); // 3 Day cooldown
+ set .@ins_nyd_check2,checkquest(3135,PLAYTIME); // 4 Hour play limit
+ if (.@ins_nyd_check == -1) {
+ mes "As I put my hands on the stone gate, a voice sounded from the depth of my heart.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "The loyal servants of the Guardian... what can I do for you?";
+ next;
+ switch(select("Please allow me to enter.:I want to go in.:I want to leave.")) {
+ case 1:
+ set .@party,getcharid(1);
+ set .@leader,getpartyleader(.@party,2);
+ set .@md_name$,"Nidhoggur's Nest";
+
+ getpartymember(.@party);
+ set .@partymembercount,$@partymembercount;
+ copyarray .@partymembername$[0],$@partymembername$[0],.@partymembercount;
+
+ if ((.@party > 0) && ((.@partymembercount > 1)) && (.@leader == getcharid(0))) {
+ set .@instance, instance_create(.@md_name$, .@party);
+ if (.@instance < 0) {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "The Guardian seems to wish to be alone. I will go in and check, please wait out here.";
+ close;
+ }
+ else {
+ for( set .@i, 1; .@i <= 2; set .@i, .@i + 1 ) {
+ if( instance_attachmap(.@i + "@nyd", .@instance) == "" )
+ break;
+ }
+ if( .@i < 2 ) {
+ instance_destroy(.@instance);
+ close;
+ }
+ instance_attach(.@instance);
+ instance_set_timeout 144000,300,.@instance;
+ instance_init(.@instance);
+
+ // Spawn standard mobs
+ donpcevent instance_npcname("ins_nyd1_spawn_mobs", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("ins_nyd2_spawn_mobs", instance_id())+"::OnInstanceInit";
+ // Activate Floor 1
+ donpcevent instance_npcname("nyd_call_mon_1", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("ins_nyd_1f_timer", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_to2f_warp", instance_id())+"::OnInstanceInit";
+ // Active Floor 2
+ donpcevent instance_npcname("nyd_2f_enter_broad", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_boss_enter", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("World Tree Yggdrasil#2F", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_red_c", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_red_warp1", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_red_warp2", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_red_warp3", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_white_c", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_white_warp1", instance_id())+"::OnInstanceInit";;
+ donpcevent instance_npcname("nyd_2f_white_warp2", instance_id())+"::OnInstanceInit";;
+ donpcevent instance_npcname("nyd_2f_white_warp3", instance_id())+"::OnInstanceInit";;
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_yellow_warp1", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_yellow_warp2", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_yellow_warp3", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_green_c", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_green_warp1", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_green_warp2", instance_id())+"::OnInstanceInit";
+ donpcevent instance_npcname("nyd_2f_green_warp3", instance_id())+"::OnInstanceInit";
+
+ mes "[Yggdrasil Gatekeeper]";
+ mes "I've recorded your request, are you ready to go inside?";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "If you are ready, I will allow you to enter.";
+ close;
+ }
+ }
+ else {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "When you touch the stone gate, you can hear the voice in your heart.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "Where are the other servants, so you can work together? Each servant cannot be admitted here individually...";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "Come with at least 1 more servant... Only party leaders can accept admission to Nidhoggur's Nest.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "And only 1 representative of you needs to talk to me, so don't annoy me...";
+ close;
+ }
+ case 2:
+ if (.@ins_nyd_check2 < 2) { // Added check to avoid people from re-partting up.
+ set .@party,getcharid(1);
+ set .@leader,getpartyleader(.@party,2);
+ set .@p_name$,getpartyname(.@party);
+ set .@p_name2$,strcharinfo(0);
+ set .@md_name$,"Nidhoggur's Nest";
+
+ getpartymember(.@party);
+ set .@partymembercount,$@partymembercount;
+ copyarray .@partymembername$[0],$@partymembername$[0],.@partymembercount;
+
+ if (has_instance("1@nyd") == "") {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "You did not request for entrance. Please let your leader request entrance.";
+ close;
+ }
+ else if ((has_instance("1@nyd") != "") && (.@partymembercount < 2)) {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "Where are the other servants with you? We do not allow individuals to enter alone.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "You must be accompanied by one servant to be able to enter.";
+ close;
+ }
+ else {
+ mapannounce "nyd_dun02", .@p_name$ + "'s Party member " + .@p_name2$ + " has entered " + .@md_name$,bc_map,"0x00ff99";
+ if (checkquest(3135) == -1) setquest 3135;
+ if (checkquest(3136) == -1) setquest 3136;
+ warp "1@nyd",32,37;
+ close;
+ }
+ }
+ else {
+ //Custom
+ mes "[Yggdrasil Gatekeeper]";
+ mes "You are no longer able to enter Nidhogger's Nest, as your instance has expired.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "After Nidhoggur's Shadow disappears, at least 3 days is needed for stabilizing.";
+ close;
+ }
+ case 3:
+ close;
+ }
+ }
+ else if ((.@ins_nyd_check == 0) || (.@ins_nyd_check == 1)) {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "With the defeat of Nidhoggur's Shadow, the roots of the World Tree Yggdrasil are also affected.";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "After Nidhoggur's Shadow disappears, at least 3 days is needed for stabilizing.";
+ close;
+ }
+ else if (.@ins_nyd_check == 2) {
+ mes "[Yggdrasil Gatekeeper]";
+ mes "The World Tree Yggdrasil has stabilized. Would you like to enter Nidhoggur's Nest again?";
+ next;
+ mes "[Yggdrasil Gatekeeper]";
+ mes "If you would like to enter again, please register with me.";
+ erasequest 3135;
+ erasequest 3136;
+ set 'ins_nyd2,0;
+ close;
+ }
+ else {
+ close;
+ }
+ }
+ else {
+ mes "A great stone gate stands before you. The sculpture of a terrible dragon spreads its powerful looking wings.";
+ next;
+ mes "Near the bottom of the gate, Laphine tribeswomen have been turned to stone and now look like they are part of the great door.";
+ next;
+ switch(select("Move closer to look more carefully.:Step back.")) {
+ case 1:
+ specialeffect2 EF_HOLYHIT;
+ PushPC 3,3;
+ mes "A mysterious power prevents you from getting too close. It looks like there is something strong beyond the door...";
+ next;
+ mes "Perhaps there's a great hidden secret beyond the gate, beyond expectation.";
+ close;
+ case 2:
+ close;
+ }
+ }
+ close;
+
+OnTouch_:
+ if (ins_nyd == 0) {
+ specialeffect2 EF_CHANGECOLD;
+ specialeffect EF_CHANGECOLD,"Yggdrasil Gatekeeper";
+ }
+ end;
+}
+
+mid_camp,271,299,3 script Historian Magnifier#edq 755,3,3,{
+ if (ins_nyd == 1) {
+ mes "[Historian Magniffer]";
+ mes "Sure, the mainland also has lots of interesting adventures... Hello, I am Magnifier, a historian dispatched from the Prontera royal court.";
+ next;
+ mes "[Historian Magniffer]";
+ mes "Finding another line of work might make for a really worthy job, but only a historian gets to know the world over..";
+ next;
+ mes "[Historian Magniffer]";
+ mes "How this world is organized... and the way of the future! With our studies of the past and present we can predict what is to come.";
+ next;
+ mes "[Historian Magniffer]";
+ mes "We are expecting a lot from you, expert adventurer. So, if you find anything... just tell me.";
+ close;
+ }
+ else if (ins_nyd == 2) {
+ mes "[Historian Magniffer]";
+ mes "Does Commander Agip want to talk to me? Let's listen to his story.";
+ next;
+ mes "[Historian Magniffer]";
+ mes "Did you find the cave that the fairy tribes treat as a holy place? You are a really tough cookie. What did you find?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "...";
+ next;
+ mes "... ...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Wait a second... I have a brilliant idea.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Let's see... This book... No... this one...? Hmm... Maybe this...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "... ...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Oh, here it is! World Tree Yggdrasil and God's tribes... This is their book!";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Maybe you found the central line to enter into the World Tree Yggdrasil!";
+ next;
+ mes "[Historian Magnifier]";
+ mes "If that's true, you've found the greatest discovery since the harnessing of mana. Isn't this exciting?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "But we need a lot more information... Are they refusing you admission?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I will send a message to my assistant who is in the Prontera Library. So, help her find more information.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I will definitely help you find a way to enter the World Tree directly so, just believe in me! Okay~!!";
+ set ins_nyd,3;
+ close;
+ }
+ else if (ins_nyd == 3) {
+ mes "[Historian Magnifier]";
+ mes "Why are you standing there? Go to my assistant in the Prontera Library!";
+ close;
+ }
+ else if (ins_nyd == 4) {
+ mes "[Historian Magnifier]";
+ mes "You've come back... Good, how's Naomi? Actually, I don't need to worry about her. She is always cheerful. Haha.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "You look like you have a lot on your mind... Your face is full of curiosity and questions.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "So, did you read the whole story that I have prepared?";
+ next;
+ switch(select("Not yet.:I read all the stories.")) {
+ case 1:
+ mes "[Historian Magnifier]";
+ mes "Sheesh~ I prepared these stories for you carefully, but you didn't bother to check anything out did you?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "It would be better if you returned after reading all of them. That's very basic data of what we should do for the future.";
+ close;
+ case 2:
+ mes "[Historian Magnifier]";
+ mes "Hm, good job. Maybe I don't need to check anything else, right?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I sent you to figure out which basic materials will be needed for the jobs ahead of us. You should bring research reports...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "You might complain about why I didn't bring any myself... That's because I trust your abilities, don't ever take anything for granted.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "But a while ago, while you were tranferring reports from Commander Agip to the mainland, you lost those reports... remember?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "So far, nothing's come up... Was it that somebody attacked you?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Somehow, the truth will come out, but we should be careful of shocking the natives if we go there unannounced and they're not prepared for our arrival.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I've talked too much... Anyway, as you know through my report, you've found a great thing!";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Firstly, we should find out more about the place. I expect we can, but... we can't do much without help from others.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I have heard about recent expeditions of adventurers that have tried to contact the tribes... Have you heard anything about this?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Anyway, let's try to contact them first, to be clear about any caves or treasures.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "For now, you try to contact the Sapha and Laphine tribes, and try to extract information from them.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I'll also keep searching here. If you find anything, come back and let me know.";
+ set ins_nyd,5;
+ close;
+ }
+ }
+ else if ((ins_nyd == 5) || (ins_nyd == 51) || (ins_nyd == 52)) {
+ mes "[Historian Magnifier]";
+ mes "Okay, let's try to contact them first, to be clear about any caves or treasures.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "For now, you try to contact the Sapha and Laphine tribes, and try to extract more information.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "I'll also keep searching here. If you find anything, come back and let me know.";
+ close;
+ }
+ else if ((ins_nyd == 61) || (ins_nyd == 62)) {
+ mes "[Historian Magnifier]";
+ mes "Ah, you've come at a proper time. I found a curious thing while looking for reports from Arunafeltz.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Right now, we are standing on part of one of the roots of the World Tree Yggdrasil.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "This spot is connected to World Tree by the root. I think we can expect confrontations between the Sapha and Laphine here eventually, don't you think?";
+ next;
+ mes "[Historian Magnifier]";
+ mes "As I expected, the cave is the entrance to go to one of Yggdrasil's roots...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Did you find anything about the Sapha and Laphine?";
+ next;
+ mes "...";
+ next;
+ mes "... ...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Both sides act ambiguously, so... I'm getting worried...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "The two tribes have some trouble amongst their top leaders. It's not anything official, but...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Let's report to Commander Agip about the situation so far. Then, we wait on his decision.";
+ set ins_nyd,7;
+ close;
+ }
+ else if ((ins_nyd == 7) || (ins_nyd == 8)) {
+ mes "[Historian Magnifier]";
+ mes "Report to Commander Hibba Agip about what we have discovered, since time is dependent on his decision.";
+ close;
+ }
+ else if ((ins_nyd == 121) || (ins_nyd == 122) || (ins_nyd == 131) || (ins_nyd == 132) || (ins_nyd ==14)) {
+ mes "[Historian Magnifier]";
+ mes "So that's how it is... we were right about some parts of it... it's called the Guardian's Nest.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "We have gained a large amount of knowledge today, but...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "What we have figured out... how is it going to influence mankind? It's so unpredictable...";
+ next;
+ mes "[Historian Magnifier]";
+ mes "This is only the beginning...we will be quite busy from now on.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "First, report to Commander Agip, then act according to the situation. Let me organize my research findings...";
+ close;
+ }
+ else {
+ mes "[Historian Magnifier]";
+ mes "Sure, the mainland also has lots of interesting adventures... Hello, I am Magnifier, a historian dispatched from the Prontera royal court.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "Finding another line of work might make for a really worthy job, but only a historian gets to know the world over..";
+ next;
+ mes "[Historian Magnifier]";
+ mes "How this world is organized... and the way of the future! With our studies of the past and present we can predict what is to come.";
+ next;
+ mes "[Historian Magnifier]";
+ mes "We are expecting a lot from you, expert adventurer. So, if you find anything... just tell me.";
+ close;
+ }
+}
+
+prt_in,171,94,3 script Assistant Naomi#edq 893,3,3,{
+ set name,PcName;
+ if (ins_nyd == 3) {
+ mes "[Assistant Naomi]";
+ mes "The doctor never ever tries to come back, and there're too many things to do... How can I do it all...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Hey, you. Please move these books. Put them into shelf 3 row B.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "Ah...um..I...am...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Don't you see I am too busy? Don't hesitate. Just do it.";
+ next;
+ switch(select("Look busy, and take a step back.:Help her just this once.")) {
+ case 1:
+ mes "[Assistant Naomi]";
+ mes "Gosh! Where is-? Where did-? Ugh! It's so difficult!";
+ close;
+ case 2:
+ mes "[Assistant Naomi]";
+ mes "Ah... if you're done moving those, then these should go in shelf 3 row B.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "Ah...I...see...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Now, I am almost done... Who are you? Are you a new assistant to Dr. Magnifier?";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "He asked me to bring some reports. Didn't he say anything?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Hmm... I haven't seen him in over a year! What's he doing now?";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "He said that he would send a message to you... didn't you get it?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Message? ...Let's see... I never expected him to write a message...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "I will check the mailbox, wait a minute. If you get bored read those books.";
+ next;
+ mes "...";
+ next;
+ mes "... ...";
+ next;
+ mes "It's too messy due to lots of stacked books and files. Dr. Magnifier looks like he has a ton of reports.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "'Birth of the World', 'The Fiction of Odin's Myth', 'God's Battle Then After', 'Dreams of the Tribes'. There are a variety of books...";
+ next;
+ mes "...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Oh, sorry I took so long. There was too much mail, so it took me a while to find stuff.";
+ next;
+ mes "[Assistant Naomi]";
+ mes "He has sent me mail over 20 times. I did not know that...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Ah, here's the message about you. He's said to share the information on research and reports.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "What is the Doctor's area of expertise?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Ever since 5 years ago, he has been curious about how the world started, and so he began his search for the God of creation.";
+ next;
+ mes "[Assistant Naomi]";
+ mes "He researches combat between Odin and the Gods, and about the Gods' origins and life.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "So, did he already know that the Rebirth of Satan Morocc has occured before?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "I can't be sure, but he thought someday it would occur. It broke out earlier than he expected though.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "But Rune-Midgarts approved this research?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Our academics are not a religion. And they too have curiosity about this world's history.";
+ next;
+ mes "[Assistant Naomi]";
+ mes "The combat of Odin vs. the Gods, and the God's sons and their purpose... The Doctor has researched this his whole life.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "But those reports haven't come out yet. Have they?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "That's why he sent you here. By the way, this isn't the first time I've heard this.";
+ next;
+ mes "[Assistant Naomi]";
+ mes "After the establishment of the Rune-Midgarts Kingdom and Arunafeltz, the rumors have spread in secret about their tribes, myths, etc.";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Anyway, I should make sure that you read all these books, and I'll just keep doing my work.";
+ next;
+ mes "[" +strcharinfo(0)+ "]";
+ mes "Shouldn't I have filed the books?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "The Doctor said he will pick up the books through another person. Besides, don't you need the basic information on what to do?";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Before you go back to the Doctor, you had better read these books. So, I will go back to work.";
+ set ins_nyd,4;
+ close;
+ }
+ }
+ else if (ins_nyd == 4) {
+ mes "[Assistant Naomi]";
+ mes "Browse around, to take a look at the books.";
+ next;
+ switch(select("Discovery of Heterogeneity:Report of Indigenous Tribes")) {
+ case 1:
+ mes "Satan Morocc has known that he didn't resurrect normally or by himself.";
+ next;
+ mes "Continuously, adventurers from Rune-Midgarts have attacked him and he is slowly losing his power. He would need more time to resurrect completely.";
+ next;
+ mes "Satan Morroc stopped to destroy the city of Morroc, turning it into a ruined desert, then started to rip the world apart.";
+ next;
+ mes "Satan Morroc was worried about those who would give chase, so he created Morocc clones to keep watch behind him.";
+ next;
+ mes "Modeled after Morocc, their appearance made it difficult to go around the time-space gap.";
+ next;
+ mes "Still the adventurers gave chase. They came from all over the world, trying to approach the Dimensional Gorge.";
+ next;
+ mes "The reports of these adventurers have been sent to representatives of all kingdoms, and an expedition team has been created to find out more information.";
+ next;
+ mes "The scientists of Schwartzwalt created a combination metal, using fragments of metals found in the dimensional gorge.";
+ next;
+ mes "The Schwaltzvalt Republic requested approval to find the source of the new metal, and since Rune-Midgart couldn't complete the test themselves, they finally accepted.";
+ next;
+ mes "They associated together to gather volunteers. The Assassin Guild was the first to volunteer.";
+ next;
+ mes "The Assassins have a terrible past with Satan Morroc, so they gathered 18 members to chase him down.";
+ next;
+ mes "About 3 hours later, all 18 members returned without any problem, and each man and woman shared the information that they had collected.";
+ next;
+ mes "They had discovered another world with a definitively different nature and environment. And indeed, people could also live there.";
+ next;
+ mes "The most surprising thing is the flow of time. The 18 assassins had stayed for about 2 weeks in there, yet they returned within 3 hours after departing.";
+ next;
+ mes "The last thing to be tested... was to send adventurers who volunteered to explore the new world.";
+ next;
+ mes "There was a flood of adventurer applications. Lots of volunteers disappeared over the dimensional gorge, and they brought back new data.";
+ next;
+ mes "The new world could support 3 completely different eco-systems dependant upon the race of people that lived there.";
+ next;
+ mes "The heterogenous phenomenon needed to be studied thoroughly and carefully in order to under the relationship between thair world and ours.";
+ next;
+ mes "Just when it was expected to be impossible to travel into a different world, the first page of a new chapter was opened.";
+ close;
+ case 2:
+ mes "Long ago, there wasn't a sun, moon, or stars; just empty earth... and Ymir was born. Then, by making sons, Ymir grew.";
+ next;
+ mes "But, his sons grew as well and he was killed by Odin, Vili, and Ve; 3 brothers, Gods, that attacked from different sides.";
+ next;
+ mes "At that time of Ymir's fall his blood flooded the world... killing all in it's path.";
+ next;
+ mes "Only Hvergelmir of the Sapha tribe escaped from this flooding of blood. And he swore vengeance in Jotunheim, which is covered with foggy snow.";
+ next;
+ mes "Currently, one of the Sapha tribe has been discovered from beyond the Dimensional Gorge.";
+ next;
+ mes "Other than the Sapha tribe, there was another tribe beyond the time-space gap, known as the Laphine.";
+ next;
+ mes "The Laphine tribes gathered as well for an expedition to explore the time-space gap and figure out the World Tree's strange symptoms and perharps a cure method.";
+ next;
+ mes "The Laphine tribe was charged with the management of Yggdrasil, to establish their lands close to Asgard, and to protect the balance of Yggdrasil's magic power.";
+ next;
+ mes "The Laphine tribe has never contacted anyone outside of Asgard. But since they found that Yggdrasil's power if weakening...";
+ next;
+ mes "They have declared they will attend to the high courts for the first time in 1000 human years, since the end of the battles of Gods vs. Magicians.";
+ close;
+ }
+ }
+ else {
+ mes "[Assistant Naomi]";
+ mes "The doctor never ever tries to come back, and there're too many things to do... How can I do it all...";
+ next;
+ mes "[Assistant Naomi]";
+ mes "Don't you see that I'm too busy? Don't dawdle, just go!";
+ close;
+ }
+}
+
+splendide,198,178,3 script Grumbling Soldier#edq 447,3,3,{
+ if (isequipped(2782) == 1) {
+ mes "[Grumbling Soldier]";
+ mes "Nowadays, the world has turned unstable. I can't even fly comfortably anymore.";
+ next;
+ if (ins_nyd == 5) {
+ switch(select("What's with the cave up north?:Who are the Sapha tribesmen?:Hmm. We can talk later.")) {
+ case 1:
+ mes "[Grumbling Soldier]";
+ mes "What? If you wander around there... you might return with injuries.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "I don't know exactly how to explain it, but it's like it has a bad mood. There are lots of terrible monsters there.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "They whisper to each other, so... something is there... But I don't care...";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "Might be... those Sapha tribesmen have dug in the cave before... They do have a special talent for digging.";
+ set ins_nyd,51;
+ close;
+ case 2:
+ mes "[Grumbling Soldier]";
+ mes "Oh! It is because of them that we have been living here, a lowdown and dirty city, for over one hundred years.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "They don't care if there's trouble with the Yggdrasil.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "They are surely full of bad ideas, so... they have destroyed the Yggdrasil's root.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "We are here to make sure that the Sapha don't make things worse.";
+ close;
+ case 3:
+ close;
+ }
+ }
+ else {
+ mes "[Grumbling Soldier]";
+ mes "Nowadays, the world has turned unstable. I can't even fly comfortably anymore.";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "What can you expect when Manuk giants start to dig into the world to destroy the Yggdrasil...";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "And the worst thing is... that strange things are strutting along the streets of the towns...";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "Yes, you... What do you think about the way the government is handling this...?";
+ next;
+ mes "[Grumbling Soldier]";
+ mes "Although they ignore your track record, still, one should be careful...";
+ close;
+ }
+ }
+ else {
+ mes "[Grumbling Soldier]";
+ mes "SeLarsmar Di marThusVil U SeMushVohl";
+ close;
+ }
+}
+
+splendide,240,164,3 script Sighing Soldier#edq 461,3,3,{
+ if (isequipped(2782) == 1) {
+ mes "[Sighing Soldier]";
+ mes "When will we be finished with this combat with the Sapha? Ugghhhh...";
+ next;
+ if (ins_nyd == 5) {
+ switch(select("What's with the cave up north?:Who are the Sapha tribesmen?:Hmm. We can talk later.")) {
+ case 1:
+ mes "[Sighing Soldier]";
+ mes "Well... I'm not sure, but we have avoided going to that area.";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Sometimes, the dispatched researchers hang around here... I feel bad that there's nothing to see... without any reason...";
+ next;
+ mes "[Sighing Soldier]";
+ mes "But the command officers make sure that there's something hidden in there.";
+ next;
+ mes "[Sighing Soldier]";
+ mes "We don't know if the monsters there are strong, so we never checked it out. But on a personal level, nobody wants to go there...";
+ set ins_nyd,51;
+ close;
+ case 2:
+ mes "[Sighing Soldier]";
+ mes "I don't know what others think about it... but we've had some trouble with our attitude against the Sapha tribes.";
+ next;
+ mes "[Sighing Soldier]";
+ mes "We didn't try to solve the problems with talk. We attacked them first.";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Maybe... our command officers don't want to accept other species different than us...";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Don't misunderstand... Recently, we have talked about your particular species and our commanders feel grateful to you.";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Anyway... I'm just exhausted during this useless and nerve-wracking situation... Sigh.";
+ close;
+ case 3:
+ close;
+ }
+ }
+ else {
+ mes "[Sighing Soldier]";
+ mes "When will we be finished with this combat with the Sapha? Ugghhhh...";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Frankly, I don't think of you or any Sapha is our enemy. Sigh...";
+ next;
+ mes "[Sighing Soldier]";
+ mes "Is there no way to resolve this by communicating? There's no meaning in useless combat! Geez.";
+ close;
+ }
+ }
+ else {
+ mes "[Grumbling Soldier]";
+ mes "VohlLarsmar Ha DielCyatas";
+ close;
+ }
+}
+
+spl_in01,109,60,3 script Commander Lebiordirr#edq 435,3,3,{
+ if (isequipped(2782) == 1) {
+ if (ins_nyd == 51) {
+ mes "[Commander Lebiordirr]";
+ mes "Are you...? Are you the one collecting information from my soldiers...?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "You should be cautious. Our tribe has respected the existence of you humans but...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "I've taken a great risk in allowing you in here. So be wary.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Don't attract too much attention because that would make your people look bad.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Now, we don't need to talk much about this, so just go back where you came from.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Unless you have any messages for me...? Your face says you do...";
+ next;
+ switch(select("No. Nothing. We can talk later.:I intend to stay. For good reasons.")) {
+ case 1:
+ close;
+ case 2:
+ mes "[Splendide Guard]";
+ mes "Sir, I can drag this pest out right now.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "No. Let's hear an explanation. Good? Now, if you want...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "I have known that, recently, time has broken... so, you're here exploring for a solution, no?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Our tribe has respected you, so just forget about the searching and exploring around here.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "I heard that you are to search for any treasure in the closed cave to the north.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "That place is banned by order of the Laphine tribe. So, people can't just go there without permission.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "If you can't follow this rule, I will stop associating with you and ban all of your people from here.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "We still have an unstable relationship with the Sapha, we usually don't worry about outsiders.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Now, if you understand this, inform your friends.";
+ set ins_nyd,61;
+ close;
+ }
+ }
+ else if (ins_nyd == 61) {
+ mes "[Commander Lebiordirr]";
+ mes "If you can't follow this rule, I will stop associating with you and ban all of your people from here.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "We still have an unstable relationship with the Sapha, we usually don't worry about outsiders.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Now, if you understand this, inform your friends.";
+ close;
+ }
+ else if (ins_nyd == 81) {
+ mes "[Commander Lebiordirr]";
+ mes "Why have you come back, outsider?";
+ next;
+ switch(select("To ask the Laphines about exploring...")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "Exploring what? Choose your words wisely?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Do we not understand each other? What do you want?";
+ next;
+ switch(select("I must explore the cave.")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "That means... that you are ignoring my warning? Is this your decision or are you just following orders?";
+ next;
+ switch(select("I'm just following orders")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "Are you trying to insult me on purpose, outsider?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Why do you want to explore? It better be a very good reason.";
+ next;
+ switch(select("It's about Dr. Magnifier's report...")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "So... What do I care about an outsider's report?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "To protect the Yggdrasil! That's the Laphine's fate. Can you say that about yourself?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Do you have any proof of your birth with Odin and Yggdrasil's blessings?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "I shouldn't say anymore. Please don't take this as being rude but, please go now!";
+ next;
+ switch(select("Then I'll ask the Sapha for help.")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "What are you talking about, outsider?";
+ next;
+ mes "[Splendide Guard]";
+ mes "Sir, I can get rid of this rude outsider if you wish?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "No, wait... The Sapha tribesmen know the meaning of that place? Did you ask to associate with them?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Ah... How tricky... Are you testing us?";
+ next;
+ mes "[Splendide Guard]";
+ mes "Calm down, sir. I will throw this outsider into prison.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "No... No, wait. Ok, I will accept it. I can accept your admission into the Holy Sekos.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Okay. If you are a servant of the Yggdrasil as you claim to be, I will allow you admission. But I am not responsible for your actions.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "And make sure that if you find anything out of the ordinary in there, that you share it with us!";
+ next;
+ switch(select("But of course!")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "So... since I have agreed to allow your exploration... Arioss, help them, and take the results.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Sir... are you sure? This is an invasion of the Holy Sekos...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Invasion is a harsh word. I am allowing them entrance. Better them than a dirty giant. It might just save our lives...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Here, outsider. Arioss will explain the situation with the giants. Talk with him...";
+ set ins_nyd,91;
+ close;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ else if ((ins_nyd == 91) || (ins_nyd == 101) || (ins_nyd == 111) || (ins_nyd == 200) || (ins_nyd == 201) || (ins_nyd == 202)) {
+ mes "[Commander Lebiordirr]";
+ mes "Outsider. Arioss here will explain the situation with the giants, talk with him...";
+ close;
+ }
+ else if ((ins_nyd == 72) || (ins_nyd == 82) || (ins_nyd == 92) || (ins_nyd == 102) || (ins_nyd == 112) || (ins_nyd == 122) || (ins_nyd == 132)) {
+ mes "[Commander Lebiordirr]";
+ mes "Welcome to the Laphine camp in Splendide, outsider... I am Lebiordirr. I am in charge here.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Be cautious of your actions. We already have lots of problems with the Sapha tribe as it is.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "If you are cautious with your actions, I won't place any harm on you. Fare well.";
+ close;
+ }
+ else if (ins_nyd == 203) {
+ mes "[Commander Lebiordirr]";
+ mes "I was waiting for you. You came back safe, that's good news. Did you find anything?";
+ next;
+ switch(select("Explain about the guardian Nidhoggur's leave.")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "What? The Guardian is not in his nest...?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "And because of his disppearance, the Guardian's Shadow is currently destorying the roots of the World Tree...?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "That's unbelievable. You must be insulting the Guardian's and our pride. I did not provide you with our help for that.";
+ next;
+ mes "[Aide Arioss]";
+ mes "It's not like that, Commander, they speak the truth.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "What are you saying? Arioss, do not forget your place as the Guardian's priest.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Even though I have not seen it with my own eyes, this does explain why we lost communication with the great World Tree Yggdrasil.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Do not speak of His Highness, the World Tree Yggdrasil's name so lightly.";
+ next;
+ switch(select("Pass along World Tree Yggdrasil's words.")) {
+ case 1:
+ mes "[Commander Lebiordirr]";
+ mes "His Highness, the World Tree Yggdrasil, said that?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "The reason behind all of this... is not because of the Sapha tribe, but because of the sudden leave of the Guardian? And the Guaridan has given up on his identity?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "This must be reported... reported to the High Priest of Alfheim... Unbelievable.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Commander... do we need to alert the rest of the tribe...?";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "You don't need to worry about this, Arioss. As commander, I will handle it. You just pretend nothing happened...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Strange one, thank you for your cooperation in such situations... Please forget what has happened today...";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Arioss, please compensate this strange one for the help. I need to go rest...";
+ next;
+ mes "[Aide Arioss]";
+ mes "Commander...";
+ set ins_nyd,121;
+ close;
+ }
+ }
+ }
+ else if ((ins_nyd == 121) || (ins_nyd == 131)) {
+ mes "[Commander Lebiordirr]";
+ mes "Strange one, thank you for your cooperation in such situations... Please forget what has happened today...";
+ close;
+ }
+ else {
+ mes "[Commander Lebiordirr]";
+ mes "Welcome to the Laphine camp in Splendide, outsider... I am Lebiordirr. I am in charge here.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "Be cautious of your actions. We already have lots of problems with the Sapha tribe as it is.";
+ next;
+ mes "[Commander Lebiordirr]";
+ mes "If you are cautious with your actions, I won't place any harm on you. Fare well.";
+ close;
+ }
+ }
+ else {
+ mes "[Commander Lebiordirr]";
+ mes "ThusDurnah Ra SharVeldIyaz U UorAmanDur Yee neaOsaAdor Yee...";
+ close;
+ }
+}
+
+spl_in01,104,56,3 script Aide Arioss#edq 437,3,3,{
+ if (isequipped(2782) == 1) {
+ if (ins_nyd == 91) {
+ mes "[Aide Arioss]";
+ mes "Sigh, since it's Commander Lebiordirr's wish, I will cooperate with you...";
+ next;
+ mes "[Aide Arioss]";
+ mes "You want to go there to find out exactly what that place is?";
+ next;
+ mes "[Aide Arioss]";
+ mes "Alright...it's as you have assumed, a place connecting to the World Tree. It's also the Guardian's Nest.";
+ next;
+ switch(select("Guardian's Nest?")) {
+ case 1:
+ mes "[Aide Arioss]";
+ mes "Yes, that's the nest of Nidhoggur, the Guardian of the World Tree...";
+ next;
+ mes "[Aide Arioss]";
+ mes "Only a marked guardian's servant from the Laphine tribe is allowed to enter.";
+ next;
+ mes "[Aide Arioss]";
+ mes "That place was initially closed off from the public, but then the giants of the Sapha tribe turned things around...";
+ next;
+ mes "[Aide Arioss]";
+ mes "To obtain more minerals, they started to dig with madness.";
+ next;
+ mes "[Aide Arioss]";
+ mes "In the end, they have harmed a part of the World Tree's root that lies very close to their mine, and thus, the World Tree became very ill.";
+ next;
+ mes "[Aide Arioss]";
+ mes "After we have arrived here knowing the facts, the World Tree was already in a very bad state due to the many factories built by the Sapha tribe.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Even though, for a long time, we have been attacking the Sapha tribe, trying to force them to leave, they are not so easily defeated, leading to this stalemate.";
+ next;
+ mes "[Aide Arioss]";
+ mes "During this time, your people have travelled through the space-time gap to this land.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Because of those many unexpected reasons, the Guardian's nest, which was meant to stay hidden deep underground, has been discovered by your race...";
+ next;
+ mes "[Aide Arioss]";
+ mes "Now you understand how serious this situation is. Because of the Sapha tribe, we are no longer able to approach the Guardian, and seek his teachings of wisdom.";
+ next;
+ mes "[Aide Arioss]";
+ mes "It's very insulting to our pride... but if you can help us enter that place again, and speak to the Guardian, maybe we can find a solution...";
+ next;
+ mes "[Aide Arioss]";
+ mes "Then we'll leave it to you. As for your request, I will do my best to cooperate.";
+ next;
+ mes "[Aide Arioss]";
+ mes "I have already told you what you wanted to know... If you need anything else, just let me know.";
+ set ins_nyd,101;
+ close;
+ }
+ }
+ else if (ins_nyd == 101) {
+ mes "[Aide Arioss]";
+ mes "Ah, you said that there is a strange power blocking the entrance to the Guardian's nest, right?";
+ next;
+ mes "[Aide Arioss]";
+ mes "That's because only the ones chosen by the Guardian may enter.";
+ next;
+ mes "[Aide Arioss]";
+ mes "We have been the Guardian's servants for generations, and have been protecting the World Tree ever since.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Before we were captured and brought here, there were 3 servants including me. Our task was to heal the World Tree.";
+ next;
+ mes "[Aide Arioss]";
+ mes "One was killed in our last war with the Sapha tribe... and the other has been taken captive.";
+ next;
+ mes "[Aide Arioss]";
+ mes "I will give you my proof. Don't worry, I'm just temporarily marking you as a guardian's servant.";
+ specialeffect2 EF_HOLYHIT;
+ next;
+ mes "[Aide Arioss]";
+ mes "Also, remember this spell, it's needed to open the gate of the Guardian.";
+ next;
+ mes "[Aide Arioss]";
+ mes "AnomarDu Ha OdesUdenVer Ie ";
+ next;
+ mes "[Aide Arioss]";
+ mes "remuAlaAsh Mu ModtasAn Yu Dur";
+ next;
+ mes "[Aide Arioss]";
+ mes "TalsehrDur So CyaReMush Di DielAlaWos Ie RuffserIman Ie ";
+ next;
+ mes "[Aide Arioss]";
+ mes "Go find the fairy guarding the gate, and say this spell.";
+ next;
+ mes "[Aide Arioss]";
+ mes "The proof and the spell will confirm that you are one of the Guardian's servants.";
+ next;
+ mes "[Aide Arioss]";
+ mes "Please meet the Guardian, and come back with an answer to everything. I believe in you.";
+ set ins_nyd,111;
+ close;
+ }
+ else if ((ins_nyd == 101) || (ins_nyd == 111) || (ins_nyd == 200) || (ins_nyd == 201) || (ins_nyd == 202)) {
+ mes "[Aide Arioss]";
+ mes "Please meet with the Guardian and take a wise answer from him. I will trust you.";
+ close;
+ }
+ else if ((ins_nyd == 72) || (ins_nyd == 82) || (ins_nyd == 92) || (ins_nyd == 102) || (ins_nyd == 112)) {
+ mes "[Aide Arioss]";
+ mes "... ...";
+ next;
+ mes "Not even caring about this a single bit? What a stupid woman...";
+ close;
+ }
+ else if (ins_nyd == 121) {
+ mes "[Aide Arioss]";
+ mes "Things have actually become like this... as priests of the Guardian, it's our responsibility...";
+ next;
+ mes "[Aide Arioss]";
+ mes "I represent the entire Laphine tribe, and show you our gratitude. This must all be very hard for our commander...";
+ next;
+ mes "[Aide Arioss]";
+ mes "It can't compare with the effort you have put in for us... but please accept our token of friendship.";
+ getexp 150000,35000;
+ getitem 6081,10; //Splendide_Coin
+ set ins_nyd,131;
+ mes "[Aide Arioss]";
+ mes "If we can help you with anything in the future, we will do all we can to assist you. Once again, thank you.";
+ close;
+ }
+ else if (ins_nyd == 131) {
+ mes "[Aide Arioss]";
+ mes "If we can help you with anything in the future, we will do all we can to assist you. Once again, thank you.";
+ close;
+ }
+ else {
+ mes "[Aide Arioss]";
+ mes "... ...";
+ next;
+ mes "Never give attention to... um... a blunt woman...";
+ close;
+ }
+ }
+ else {
+ mes "[Aide Arioss]";
+ mes "AmanVilShar Ie DorLuShar Mu Re";
+ close;
+ }
+}
+
+spl_in01,110,21,0 script trap#s_edq -1,10,10,{
+OnTouch_:
+ if ((isequipped(2782) == 1) && (ins_nyd == 51)) {
+ mes "[Splendide Guard]";
+ mes "That man is currently under arrest.";
+ next;
+ mes "[Splendide Guard]";
+ mes "You'd better behave, Aide Arioss says that different races shall be treated the same way.";
+ warp "spl_in01",109,58;
+ close;
+ }
+ end;
+}
+
+spl_in01,101,52,5 script Splendide Guard#1_edq 447,1,1,{
+ if (isequipped(2782) == 1) {
+ mes "[Splendide Guard]";
+ mes "This is the Splendide office. Don't act impolitely.";
+ close;
+ }
+ else {
+ mes "[Splendide Guard]";
+ mes "ThusDurnah Ra SharVeldIyaz U UorAmanDur Yee neaOsaAdor Yee ";
+ close;
+ }
+}
+
+spl_in01,118,52,3 script Splendide Guard#2_edq 447,1,1,{
+ if (isequipped(2782) == 1) {
+ mes "[Splendide Guard]";
+ mes "This is the Splendide office. Don't act impolitely.";
+ close;
+ }
+ else {
+ mes "[Splendide Guard]";
+ mes "ThusDurnah Ra SharVeldIyaz U UorAmanDur Yee neaOsaAdor Yee ";
+ close;
+ }
+}
+
+man_in01,311,57,3 script Neat Etorr#edq 453,3,3,{
+ if (isequipped(2782) == 1) {
+ if (ins_nyd == 52) {
+ mes "[Neat Etorr]";
+ mes "Guest from the other world, please excuse our rudeness...";
+ next;
+ mes "[Neat Etorr]";
+ mes "As the leader of the Sapha tribe, I have something very important to tell you. That is why I asked for you...";
+ next;
+ mes "[Neat Etorr]";
+ mes "Your race has come to this land not long ago through the space-time gap.";
+ next;
+ mes "[Neat Etorr]";
+ mes "You should have already seen what is going on. We have been at war with the Laphine tribe for a very long time.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Recently, because you do not understand the current situations, you have done some things that I, as a leader, can't ignore any longer.";
+ next;
+ mes "[Neat Etorr]";
+ mes "I hope that your people will becareful of your actions on this land, and terminate any unnecessary interventions.";
+ next;
+ switch(select("Leave quietly.:Don't know what he's talking about, and ask for details.")) {
+ case 1:
+ close;
+ case 2:
+ mes "[Manuk Field Elite Soldier]";
+ mes "Are we really just letting these people go after they have stirred up problems on our land?";
+ next;
+ mes "[Neat Etorr]";
+ mes "After what happened, I don't think they know what else they can do. Let me explain.";
+ next;
+ mes "[Neat Etorr]";
+ mes "For now, we have acknowledged your race, and have been tolerant towards your activities.";
+ next;
+ mes "[Neat Etorr]";
+ mes "But we have recently started to suspect you of being the Laphine tribe's eyes and ears.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Not long ago, We have heard that you have found remains in an abandoned cave in the north, and have been conducting investigations and researches regarding it.";
+ next;
+ mes "[Neat Etorr]";
+ mes "We have captured a Laphine tribe priest during the last war, and we have heard that you have had contact with said captive.";
+ next;
+ mes "[Neat Etorr]";
+ mes "That captive is the only reference for our tribe, so we have taken good care of her. She is related to your current investigation.";
+ next;
+ mes "[Neat Etorr]";
+ mes "For your people, who have no direct connections, it is not a place satisfy your curiosity. I hope that you stop your investigations, and mind your own business.";
+ next;
+ mes "[Neat Etorr]";
+ mes "If you don't accept our request, then do not expect any cooperations between our races in the future.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Because of the war against the Laphine tribe, everything is a mess. But even then, we cannot allow a foreign race to interfere.";
+ next;
+ mes "[Neat Etorr]";
+ mes "You have heard it all, now please report back to your race.";
+ set ins_nyd,62;
+ close;
+ }
+ }
+ else if (ins_nyd == 62) {
+ mes "[Neat Etorr]";
+ mes "That captive is the only reference for our tribe, so we have taken good care of her. She is related to your current investigation.";
+ next;
+ mes "[Neat Etorr]";
+ mes "For your people, who have no direct connections, it is not a place to satisfy your curiosity. I hope that you stop your investigations, and mind your own business.";
+ next;
+ mes "[Neat Etorr]";
+ mes "If you don't accept our request, then do not expect any cooperations between our races in the future.";
+ close;
+ }
+ else if (ins_nyd == 72) {
+ mes "[Neat Etorr]";
+ mes "Recently, because you do not understand the current situations, you have done some things that I, as a leader, can't ignore any longer.";
+ next;
+ mes "[Neat Etorr]";
+ mes "I hope that your people will becareful of your actions on this land, and terminate any unnecessary interventions.";
+ close;
+ }
+ else if (ins_nyd == 82) {
+ mes "[Neat Etorr]";
+ mes "Do you need me for something, strange one?";
+ next;
+ switch(select("Received invitation from the Sapha tribe to cooperate and investigate.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "Cooperate and investigate? What do you mean?";
+ next;
+ mes "[Neat Etorr]";
+ mes "It seems like you did not understand what I said. What are you thinking?";
+ next;
+ switch(select("Please allow me to investigate the cave.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "From what I can tell, you are disrespecting my request. Is this your intention, or your people's intention?";
+ next;
+ switch(select("It's our intention.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "Ah, it is not an easy decision. You frighten me.";
+ next;
+ mes "[Neat Etorr]";
+ mes "But may I ask why you want to do this?";
+ next;
+ switch(select("Explain Professor Magnifier's theory.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "It's surprising that you are able to obtain such results. We also have a similar theory.";
+ next;
+ mes "[Neat Etorr]";
+ mes "At least we also think that we must use the Laphine prisoner to get information.";
+ next;
+ mes "[Neat Etorr]";
+ mes "This problem has been the root of our conflicts with the Laphine tribe. Of course, it may also be an opportunity to resolve them.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Therefore, it's more of a reason to depend on our own powers. There is no room for you to interfere. Please give up.";
+ next;
+ switch(select("Give up request, and ask Laphine tribe for help instead.")) {
+ case 1:
+ mes "[Manuk Field Elite Soldier]";
+ mes "You finally showed your true face. I knew you were a spy from the Laphine tribe!";
+ next;
+ mes "[Neat Etorr]";
+ mes "Ah...you'd go as far as saying that. What good will it do for you, helping the Laphine tribe?";
+ next;
+ mes "[Neat Etorr]";
+ mes "Those obnoxious dwarves offended our right of living, and are trying to get rid of us.";
+ next;
+ mes "[Neat Etorr]";
+ mes "The reason we don't allow anyone to enter that site is because it's full of suspicions.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Alright, I'll approve of your request, and let you investigate the secret the Laphine tribe has hidden inside the cave.";
+ next;
+ mes "[Neat Etorr]";
+ mes "If you promise to share all of your research results and findings, we will accept your request.";
+ next;
+ switch(select("Of course.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "Alright, from now on, we will cooperate with you, and allow you to directly communicate with the Laphine prisoner.";
+ next;
+ mes "[Manuk Field Elite Soldier]";
+ mes "Commander...are you sure of this? We don't even know if they're friend or foe...";
+ next;
+ mes "[Neat Etorr]";
+ mes "With just our powers, it's impossible to figure out what the Laphine is up to. I think the past has proven that.";
+ next;
+ mes "[Neat Etorr]";
+ mes "What they're doing right now could potentially lead us to a solution.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Strange one, we hope our cooperation will be a good one. Now please go interrogate the Laphine prisoner.";
+ set ins_nyd,92;
+ close;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ else if ((ins_nyd == 92) || (ins_nyd == 102) || (ins_nyd == 112) || (ins_nyd == 200) || (ins_nyd == 201) || (ins_nyd == 202)) {
+ mes "[Neat Etorr]";
+ mes "Strange one, we hope our cooperation will be a good one. Now please go interrogate the Laphine prisoner.";
+ close;
+ }
+ else if ((ins_nyd == 71) || (ins_nyd == 81) || (ins_nyd == 91) || (ins_nyd == 101) || (ins_nyd == 111) || (ins_nyd == 121) || (ins_nyd == 131)) {
+ mes "[Neat Etorr]";
+ mes "Outsider. Welcome to Manuk, the village of the Sapha. I am its representative, Neat Etorr.";
+ next;
+ mes "[Neat Etorr]";
+ mes "We are just a small village, nothing special... but rest comfortably.";
+ close;
+ }
+ else if (ins_nyd == 203) {
+ mes "[Neat Etorr]";
+ mes "I was waiting for you. It's good that you're safe. Did you find anything?";
+ next;
+ switch(select("Explain the sudden leave of the Guardian.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "So... that's the nest of the Guardian of the World Tree, the sacred grounds for the Laphine tribe.";
+ next;
+ mes "[Neat Etorr]";
+ mes "But because of the angry leave of the Guardian, his shadow is wreaking havoc on the World Tree?";
+ next;
+ mes "[Neat Etorr]";
+ mes "If what you're saying is true, then there is no more reason for us to continue fighting the Laphine tribe...";
+ next;
+ mes "[Neat Etorr]";
+ mes "What a huge discovery... So Nidhoggur is no longer the Guardian of the World Tree...?";
+ next;
+ mes "[Neat Etorr]";
+ mes "Nidhoggur's Shadow came to exist in this world, and harmed the roots of the World Tree... what a disaster.";
+ next;
+ switch(select("Pass along the World Tree Yggdrasil's message.")) {
+ case 1:
+ mes "[Neat Etorr]";
+ mes "Is that what the priest of the Guardian said?";
+ next;
+ mes "[Neat Etorr]";
+ mes "From now on, we need to talk about this with the Laphine tribe.";
+ next;
+ mes "[Neat Etorr]";
+ mes "But of course...we don't know if they're reasonable enough...hehe.";
+ next;
+ mes "[Neat Etorr]";
+ mes "This is all we needed from you...What is left is business between us and the Laphine tribe.";
+ next;
+ mes "[Neat Etorr]";
+ mes "Thank you for helping us with such a huge problem. You may forget about it now.";
+ next;
+ mes "[Neat Etorr]";
+ mes "It's not a lot, but please this as a token of our appreciation.";
+ getexp 1500000,350000;
+ getitem 6080,10; //Manuk_Coin
+ set ins_nyd,132;
+ close;
+ }
+ }
+ }
+ else if (ins_nyd == 132) {
+ mes "[Neat Etorr]";
+ mes "Strange one, thank you for helping us in the time of need. I will never forget your kindness.";
+ close;
+ }
+ else {
+ mes "[Neat Etorr]";
+ mes "Outsider. Welcome to the Manuk village of Sapha. I am its representative, Neat Etorr.";
+ next;
+ mes "[Neat Etorr]";
+ mes "We are just a small village, nothing special... but rest comfortably.";
+ close;
+ }
+ }
+ else {
+ mes "[Neat Etorr]";
+ mes "Tkeh likek Ohek QekhlHkl PkedlioH.";
+ close;
+ }
+}
+
+man_in01,286,61,5 script Manuk Guard#1_edq 450,1,1,{
+ if (isequipped(2782) == 1) {
+ mes "[Manuk Guard]";
+ mes "I'm guarding this Laphine prisoner. Leave me alone.";
+ close;
+ }
+ else {
+ mes "[Manuk Guard]";
+ mes "Klekod Oi Thekd Pheid Okei.";
+ close;
+ }
+}
+
+man_in01,295,61,3 script Manuk Guard#2_edq 450,1,1,{
+ if (isequipped(2782) == 1) {
+ mes "[Manuk Guard]";
+ mes "I'm guarding this Laphine prisoner. Leave me alone.";
+ close;
+ }
+ else {
+ mes "[Manuk Guard]";
+ mes "Liek QUekdk Ohei Vue.";
+ close;
+ }
+}
+
+man_in01,291,62,3 script Laphine Prisoner#edq 437,3,3,{
+ if (isequipped(2782) == 1) {
+ if (ins_nyd == 5) {
+ mes "[Laphine Prisoner]";
+ mes "You... are not of the Sapha tribe... Are you... an outsider?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Have you ever come in contact with the Laphine tribe? Have you ever been to Splendide?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Please, talk to my people in Splendide. They will come to help me.";
+ next;
+ switch(select("What happened to you?:What's in the cave to the north?:Tell me about your tribe.:I will leave you alone.")) {
+ case 1:
+ mes "[Laphine Prisoner]";
+ mes "During out last battle with the Sapha tribe... they caught me and took me prisoner.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "The Sapha tribe attacked first. They are destroying the World Tree.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "That's why the war started. But I don't want to fight with the Sapha tribe anymore...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "If it wasn't for that... I wouldn't survive here...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Please. Bring this news to all of Splendide. Send someone to save me... or they might kill me.";
+ close;
+ case 2:
+ mes "[Laphine Prisoner]";
+ mes "There is...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "No... I can't tell you... It's the secret of our tribe...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "I just want to say this...if the Sapha tribe intrude that place, we will never forgive them!";
+ set ins_nyd,52;
+ close;
+ case 3:
+ mes "[Laphine Prisoner]";
+ mes "The Laphines have protected the Yggdrasil World Tree for generations.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "We live in a... different time, different land... we came for an expedition.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "After we received reports from our spy about the World Tree's strange symptoms, we recgnized the Manuk's existence.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "They are mining metal, and in so doing, destroying the World Tree's roots...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "So we dispatched an expedition here. Soonafter, the war with the Sapha began...";
+ close;
+ case 4:
+ close;
+ }
+ }
+ else if (ins_nyd == 92) {
+ mes "[Laphine Prisoner]";
+ mes "The sapha tribe went as far as cooperating with an unknown race?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "What is your purpose? Why do you want to know what that place is?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "lright...it's as you have assumed, a place connecting to the World Tree. It's also the Guardian's Nest.";
+ next;
+ switch(select("Guardian's Nest?")) {
+ case 1:
+ mes "[Laphine Prisoner]";
+ mes "Yes, that's the nest of Nidhoggur, the Guardian of the World Tree...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Only a marked guardian's servant from the Laphine tribe is allowed to enter.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "That place was initially closed off from the public, but then the giants of the Sapha tribe turned things around...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "To obtain more minerals, they started to dig with madness.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "In the end, they have harmed a part of the World Tree's root that lies very close to their mine, and thus, the World Tree became very ill.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "After we have arrived here knowing the facts, the World Tree was already in a very bad state due to the many factories built by the Sapha tribe.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Even though, for a long time, we have been attacking the Sapha tribe, trying to force them to leave, they are not so easily defeated, leading to this stalemate.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "During this time, your people have travelled through the space-time gap to this land.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Because of those many unexpected reasons, the Guardian's nest, which was meant to stay hidden deep underground, has been discovered by your race...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Now you understand how serious this situation is. Because of the Sapha tribe, we are no longer able to approach the Guardian, and seek his teachings of wisdom.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Hmph...even if I don't cooperate, I know you will find other means to get in...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Looking at the current situation of the Laphine tribe, we do not have enough power to surround the Manuk fields, and chase the giants away.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Okay, if it has already become like this, I will help you. There are no dead-ends. If you keep going, you will find a solution.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Even if I don't say anything, my situation will not change.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "I have already told you everything you wanted to hear. If you have any other requests, please let me know.";
+ set ins_nyd,102;
+ close;
+ }
+ }
+ else if (ins_nyd == 102) {
+ mes "[Laphine Prisoner]";
+ mes "Ah, you said that there is a strange power blocking the entrance to the Guardian's nest, right?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "That's because only the ones chosen by the Guardian may enter.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "We have been the Guardian's servants for generations, and have been protecting the World Tree ever since.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Before we were captured and brought here, there were 3 servants including me. Our task was to heal the World Tree.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "One was killed in our last war with the Sapha tribe...and I have been taken captive.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "I will give you my proof. Don't worry, I'm just temporarily marking you as a guardian's servant.";
+ specialeffect2 EF_HOLYHIT;
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Also, remember this spell, it's needed to open the gate of the Guardian.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "AnomarDu Ha OdesUdenVer Ie ";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "remuAlaAsh Mu ModtasAn Yu Dur";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "TalsehrDur So CyaReMush Di DielAlaWos Ie RuffserIman Ie ";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Go find the fairy guarding the gate, and say this spell.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "he proof and the spell will confirm that you are one of the Guardian's servants.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Please meet the Guardian, and come back with an answer to everything. And tell the answer to...";
+ set ins_nyd,112;
+ close;
+ }
+ else if ((ins_nyd == 71) || (ins_nyd == 81) || (ins_nyd == 91) || (ins_nyd == 101) || (ins_nyd == 111) || (ins_nyd == 121) || (ins_nyd == 131)) {
+ mes "[Laphine Prisoner]";
+ mes "... ...";
+ next;
+ mes "[Manuk Guard]";
+ mes "Hey, outsider! Step away from the prisoner!";
+ close;
+ }
+ else if (ins_nyd == 112) {
+ mes "[Laphine Prisoner]";
+ mes "Please meet the Guardian, and come back with an answer to everything. And tell the answer to...";
+ close;
+ }
+ else if (ins_nyd == 132) {
+ mes "[Laphine Prisoner]";
+ mes "Yes...I heard your conversation with the Sapha tribe...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "If our tribe were to really trust in the Sapha tribe...I don't know.";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Our hatred towards them has already reached an abnormal level...";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "Those giants...can they really be trusted?";
+ next;
+ mes "[Laphine Prisoner]";
+ mes "It's...it's better if you don't believe the one called Etorr...the minds of the Sapha tribe is unpredictable.";
+ close;
+ }
+ else {
+ mes "[Laphine Prisoner]";
+ mes "... ...";
+ next;
+ mes "[Manuk Guard]";
+ mes "Hey, outsider! Step away from the prisoner!";
+ close;
+ }
+ }
+ else {
+ mes "[Laphine Prisoner]";
+ mes "AmanVilShar Ie DorLuShar Mu Re";
+ close;
+ }
+}
+
+man_in01,282,42,0 script trap#edq2 -1,10,10,{
+OnTouch_:
+ if ((isequipped(2782) == 1) && (ins_nyd == 52)) {
+ mes "[Manuk Field Elite Soldier]";
+ mes "This is Neat Etorr's order. Please come with us to see him.";
+ next;
+ mes "[Manuk Field Elite Soldier]";
+ mes "Bring him to Neat Etorr. All soldiers be prepared.";
+ warp "man_in01",311,54;
+ close;
+ }
+ end;
+}
+
+// First floor
+1@nyd,213,277,5 script Murdered Yggdrasilid#1F 437,5,5,{
+ if ('ins_nyd2 == 0) {
+ mes "When a faint light enters your heart, a voice sounds in your head.";
+ next;
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "It's all over... servants of the Guardian... Hurry up and leave this place.";
+ next;
+ while (1) {
+ switch(select("Who are you?:What do you mean?")) {
+ case 1:
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "I... I am the World Tree Yggdrasil, servant of the Guardian of Nidhoggur, as well as the High Priest leading the Laphine Tribe.";
+ next;
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "So you're not priestess of the Laphine Tribe... How did you get in? No, there's no time to answer that.";
+ next;
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "Hurry... and leave... leave this place before it's too late.";
+ next;
+ break;
+ case 2:
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "The guardian... something's wrong with the guardian. I don't know what made him like this.";
+ next;
+ mes "[World Tree World Tree Yggdrasil]";
+ mes "This... this is no longer the nest of the Guardian of the World Tree Yggdrasil.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Darkness took over the Guardian and destroyed all living things... now this place has become the cursed home of monsters.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Now the vile Nidhoggur's Shadow is wreaking havoc here...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Now's not too late, hurry and get out... tell the Laphine Tribe about this... tell the commanders of Alfheim...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "My soul... it has been trapped here. You're the only ones I can trust now.";
+ next;
+ set .@exit,1;
+ }
+ if (.@exit) break;
+ }
+ switch(select("Nidhoggur's Shadow?")) {
+ case 1:
+ mes "[World Tree Yggdrasil]";
+ mes "The Guardian Nidhoggur... he's not in the nest.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "He...for some reason abandoned his own shadow, and left.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "All that's left, is the ugly Shadow of the Guardian of Nidhoggur...the Shadow that is going mad.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The Shadow sucked all the nutrients from the World Tree Yggdrasil, and has gone mad when there is nothing more left to obtain. Now, he wants this land.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Once the ugly Shadow leaves here to steal power from the other World Yggdrasil Trees, there will be great destruction. This world will become hell.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "You must... tell the commanders of Alfheim about this, and come up with a plan. Only them...";
+ next;
+ switch(select("Is there nothing else we can do?")) {
+ case 1:
+ mes "[World Tree Yggdrasil]";
+ mes "With our current powers...it is impossible to defeat the Guardian.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "But the one going mad is not the Guardian, but his dark Shadow...maybe we can trap him here...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Are you willing to accept this mission? Even if it means to pay with your life?";
+ next;
+ switch(select("Leave it to us.:We can't do it.")) {
+ case 1:
+ if (getpartyleader(getcharid(1),2) == getcharid(0)) {
+ mes "[World Tree Yggdrasil]";
+ mes "I thank you deeply for your decision. I will use what is left of my powers to open up the path towards the Guardian's Nest.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The path to the Guardian's Nest is just past the waterfall by the large World Tree Yggdrasil to the North. The defensive mechanisms of the Sanctuary will start immediately.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Defeat all of Nidhoggur's guardians and go through the waterfall into the nest... and stop Nidhoggur's Shadow there.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The gate will open soon. Go defeat all of the guardians... you must kill them all in 30 minutes before the gate opens...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "30 minutes... that's the limit of my powers. Please hurry.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "And... Be careful... Be careful of the shadow's power.";
+ set 'ins_nyd2,1;
+ donpcevent instance_npcname("ins_nyd_1f_timer", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_call_mon_1", instance_id())+"::OnEnable";
+ close;
+ }
+ else {
+ mes "[World Tree Yggdrasil]";
+ mes "I thank you deeply for your decision. I will use what is left of my powers to open up the path towards the Guardian's Nest.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The path to the Guardian's Nest is just past the waterfall by the large World Tree Yggdrasil to the North. The defensive mechanisms will start immediately.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Defeat all of Nidhoggur's guardians and go through the waterfall into the nest... and stop Nidhoggur's Shadow there.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The gate will open soon. Go defeat all of the guardians... you must kill them all in 30 minutes before the gate opens...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "30 minutes... that's the limit of my powers. Please hurry.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "And... Be careful... Be careful of the shadow's power.";
+ close;
+ }
+ case 2:
+ close;
+ }
+ }
+ }
+ }
+ else if ('ins_nyd2 == 1) {
+ mes "[World Tree Yggdrasil]";
+ mes "The path to the Guardian's Nest is just past the waterfall by the large World Tree Yggdrasil to the North. The defensive mechanisms will start immediately.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Defeat all of Nidhoggur's guardians and go through the waterfall into the nest... and stop Nidhoggur's Shadow there.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The gate will open soon. Go defeat all of the guardians.";
+ close;
+ }
+ else if ('ins_nyd2 == 2) {
+ mes "[World Tree Yggdrasil]";
+ mes "The path to the Guardian's Nest is just past the waterfall by the large World Tree Yggdrasil to the North.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Use your powers... and destroy the vile Shadow...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "This is.. all I can do for you...";
+ close;
+
+ }
+ else {
+ mes "[World Tree Yggdrasil]";
+ mes "Those who want to taint the sacred Sanctuary of the Guardian... Get out.";
+ warp "mid_camp",100,100;
+ }
+ end;
+
+OnTouch:
+ if ('ins_nyd2 == 0) {
+ mes "What's a woman from the Laphine Tribe doing here...";
+ next;
+ mes "What's happening? Let's go check it out.";
+ close;
+ }
+ end;
+}
+
+1@nyd,1,1,0 script nyd_call_mon_1 -1,{
+OnInstanceInit:
+ enablenpc instance_npcname("nyd_call_mon_1", instance_id());
+ end;
+
+OnEnable:
+ monster "1@nyd",220,250,"Nidhoggur's Guardian#1",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",220,252,"Nidhoggur's Guardian#2",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",240,270,"Nidhoggur's Guardian#3",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",240,272,"Nidhoggur's Guardian#4",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",200,200,"Nidhoggur's Guardian#5",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",210,210,"Nidhoggur's Guardian#6",2020,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",225,265,"Nidhoggur's Guardian#7",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",225,270,"Nidhoggur's Guardian#8",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",245,235,"Nidhoggur's Guardian#9",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",255,255,"Nidhoggur's Guardian#10",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",225,245,"Nidhoggur's Guardian#11",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ monster "1@nyd",230,280,"Nidhoggur's Guardian#12",2021,1,instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ instance_announce 0, "Nidhoggur's Guardian : Protect the Guardian's Sanctuary. Get rid of the intruders.",bc_map,"0x00ff99";
+ end;
+
+OnDisable:
+ killmonster "1@nyd",instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead";
+ disablenpc instance_npcname("nyd_call_mon_1", instance_id());
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("1@nyd", instance_npcname("nyd_call_mon_1", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "All of Nidhoggur's Guardians have been defeated!",bc_map,"0x00ff99";
+ donpcevent instance_npcname("ins_nyd_1f_timer", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_to2f_warp", instance_id())+"::OnEnable";
+ set 'ins_nyd2,2;
+ }
+ end;
+}
+
+1@nyd,1,2,0 script ins_nyd_1f_timer -1,{
+
+OnInstanceInit:
+ disablenpc instance_npcname("ins_nyd_1f_timer", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("ins_nyd_1f_timer", instance_id());
+ initnpctimer;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("ins_nyd_1f_timer", instance_id());
+ stopnpctimer;
+ killmonsterall "1@nyd";
+ end;
+
+OnTimer900000:
+ instance_announce 0, "World Tree Yggdrasil : There's not much time left. Please hurry.",bc_map,"0xFFFF00";
+ end;
+
+OnTimer1200000:
+ instance_announce 0, "World Tree Yggdrasil : My powers are slowly disappearing. Please hurry.",bc_map,"0xFFFF00";
+ end;
+
+OnTimer1500000:
+ instance_announce 0, "World Tree Yggdrasil : I'm... almost at my limit... please hurry up." ,bc_map,"0xFFFF00";
+ end;
+
+OnTimer1800000:
+ instance_announce 0, "World Tree Yggdrasil : You've failed... but I will use what power I have left... to send you out of here.",bc_map,"0xFFFF00";
+ end;
+
+OnTimer1830000:
+ instance_announce 0, "Opening of the Gate has failed.",bc_map,"0xFFFF00";
+ end;
+
+OnTimer1850000:
+ donpcevent instance_npcname("ins_nyd_1f_timer", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_call_mon_1", instance_id())+"::OnDisable";
+ instance_warpall "mid_camp",310,150;
+ stopnpctimer;
+ end;
+}
+
+1@nyd,195,320,0 script nyd_to2f_warp 45,5,5,{
+
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_to2f_warp", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_to2f_warp", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_to2f_warp", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",200,10;
+ end;
+}
+
+1@nyd,1,1,0 script ins_nyd1_spawn_mobs -1,{
+OnInstanceInit:
+ monster "1@nyd",0,0,"Ancient Tree",2019,20;
+ monster "1@nyd",0,0,"Rhyncho",2020,15;
+ monster "1@nyd",0,0,"Phylla",2021,15;
+ monster "1@nyd",0,0,"Aqua Elemental",2016,15;
+ monster "1@nyd",0,0,"Dark Pinguicula",2015,15;
+ monster "1@nyd",0,0,"Ancient Tree",2019,20;
+ monster "1@nyd",0,0,"Rhyncho",2020,15;
+ monster "1@nyd",0,0,"Phylla",2021,15;
+ monster "1@nyd",0,0,"Aqua Elemental",2016,15;
+ monster "1@nyd",0,0,"Dark Pinguicula",2015,15;
+ end;
+}
+
+// Second Floor
+2@nyd,200,14,0 script nyd_2f_enter -1,6,6,{
+OnTouch_:
+ donpcevent instance_npcname("nyd_2f_enter_broad", instance_id())+"::OnEnable";
+ disablenpc instance_npcname("nyd_2f_enter", instance_id());
+ end;
+}
+
+2@nyd,1,1,0 script nyd_2f_enter_broad -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_enter_broad", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_enter_broad", instance_id());
+ initnpctimer;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_enter_broad", instance_id());
+ end;
+
+OnTimer12000:
+ instance_announce 0, "Nidhoggur's Shadow : No more...I can't stand this anymore...",bc_map,"0xFFFF00";
+ end;
+
+OnTimer15000:
+ instance_announce 0, "Nidhoggur's Shadow : I need...I need the World Tree Yggdrasil's powers...",bc_map,"0xFFFF00";
+ end;
+
+OnTimer18000:
+ instance_announce 0, "Nidhoggur's Shadow : Destroy...everything...",bc_map,"0xFFFF00";
+ end;
+ /*
+ stopnpctimer;
+ disablenpc instance_npcname("nyd_2f_enter_broad", instance_id());
+ end;
+ */
+}
+
+2@nyd,199,178,0 script nyd_2f_ddr_control -1,6,6,{
+OnTouch:
+ specialeffect2 EF_HOLYHIT;
+ mes "From below the gorgeous stones, a strange breeze is forming.";
+ next;
+ mes "The strange power slowly surrounds your body, the dimension is starting to shift.";
+ close2;
+ warp "2@nyd",199,255;
+ end;
+}
+
+2@nyd,199,268,0 script nyd_2f_boss_enter -1,8,8,{
+OnInstanceInit:
+ enablenpc instance_npcname("nyd_2f_boss_enter", instance_id());
+ end;
+
+OnTouch_:
+ if (getpartyleader(getcharid(1),2) == getcharid(0)) {
+ donpcevent instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnEnable";
+ disablenpc instance_npcname("nyd_2f_boss_enter", instance_id());
+ end;
+ }
+ end;
+}
+
+2@nyd,2,2,0 script nyd_2f_boss_enter_call -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_boss_enter_call", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_boss_enter_call", instance_id());
+ monster "2@nyd",199,327,"Nidhoggur's Shadow#",2022,1,instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnMyMobDead";
+ instance_announce 0, "Nidhoggur's Shadow : I will devour all of you...you and the World Tree Yggdrasil.",bc_map,"0x00ff99";
+ //donpcevent instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::Ongo";
+ initnpctimer;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_boss_enter_call", instance_id());
+ killmonster "2@nyd",instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnMyMobDead";
+ end;
+
+OnTimer180000:
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ stopnpctimer;
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("2@nyd",instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "Nidhoggur's Shadow : World Tree Yggdrasil's guardian... his powers are disappearing...",bc_map,"0x00ff99";
+ donpcevent instance_npcname("World Tree Yggdrasil#2F", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_call", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green_c", instance_id())+"::OnDisable";
+ end;
+ }
+ else {
+ end;
+ }
+}
+
+2@nyd,2,4,0 script nyd_2f_boss_enter_logic -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_boss_enter_logic", instance_id());
+ end;
+
+OnEnable:
+ stopnpctimer;
+ initnpctimer;
+ end;
+
+OnDisable:
+ stopnpctimer;
+ disablenpc instance_npcname("nyd_2f_boss_enter_logic", instance_id());
+ end;
+
+OnTimer180000:
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ stopnpctimer;
+ end;
+}
+
+2@nyd,202,324,5 script World Tree Yggdrasil#2F 437,3,3,{
+ mes "[World Tree Yggdrasil]";
+ mes "Thank you. You're the saviour of humans and the Laphine Tribe.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "You've defeated Nidhoggur's Shadow. But...It's not gone for good. Its powers are merely put to sleep.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "But you have won us plenty of time. This is great.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Please go and report this to those in charge of Splendide and Manuk.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "As you have seen, neither the Sapha tribe nor the Laphine tribe is at fault for the weakening of the World Tree. It's all because of the Guardian's Shadow...";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "The Guardian's insanity...is caused by powers unknown to us... You must tell this to everyone.";
+ next;
+ mes "[World Tree Yggdrasil]";
+ mes "Now... Allow me to escort you out of the cursed nest.";
+ next;
+ switch(select("Please let me out.:I want to look around for a while.")) {
+ case 1:
+ set 'ins_nyd2,0;
+ //setquest 3135;
+ warp "nyd_dun02",98,196;
+ end;
+ case 2:
+ mes "[World Tree Yggdrasil]";
+ mes "Is that so... I'll be around if you want to leave.";
+ close;
+ }
+
+OnInstanceInit:
+ disablenpc instance_npcname("World Tree Yggdrasil#2F", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("World Tree Yggdrasil#2F", instance_id());
+ instance_announce 0, "World Tree Yggdrasil : You did good. Have everyone go to the Magic Circle in the middle, and get ready for the destruction of the nest.",bc_map,"0x00ff99";
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("World Tree Yggdrasil#2F", instance_id());
+ end;
+}
+
+2@nyd,115,278,0 script nyd_2f_red -1,5,5,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_red", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_red", instance_id());
+ donpcevent instance_npcname("nyd_2f_red_warp1", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_red_warp2", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_red_warp3", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_red_c", instance_id())+"::OnEnable";
+ initnpctimer;
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_red_warp1", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red_warp2", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red_warp3", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_red", instance_id());
+ end;
+
+OnTouch:
+ percentheal -50,0;
+ percentheal -30,0;
+ sc_start SC_BLEEDING,60000,0;
+ end;
+
+OnTimer10000:
+ disablenpc instance_npcname("nyd_2f_red", instance_id());
+ stopnpctimer;
+ end;
+}
+
+2@nyd,6,6,0 script nyd_2f_red_c -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_red_c", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_red_c", instance_id());
+ initnpctimer;
+ monster "2@nyd",120,285,"Nidhoggur's Guardian#1",2020,1,instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",119,286,"Nidhoggur's Guardian#2",2020,1,instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",120,270,"Nidhoggur's Guardian#3",2020,1,instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",119,269,"Nidhoggur's Guardian#4",2021,1,instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",118,270,"Nidhoggur's Guardian#5",2021,1,instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("2@nyd",instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "Nidhoggur's Shadow : You're not bad... but I will be your opponent this time.",bc_map,"0x00ff99";
+ donpcevent instance_npcname("nyd_2f_red_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnEnable";
+ end;
+ }
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_red_c", instance_id());
+ stopnpctimer;
+ end;
+
+OnTimer180000:
+ killmonster "2@nyd",instance_npcname("nyd_2f_red_c", instance_id())+"::OnMyMobDead";;
+ stopnpctimer;
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ end;
+}
+
+2@nyd,130,298,0 script nyd_2f_red_warp1 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_red_warp1", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_red_warp1", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_red_warp1", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",115,278;
+ end;
+}
+
+2@nyd,142,296,0 script nyd_2f_red_warp2 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_red_warp2", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_red_warp2", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_red_warp2", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",115,278;
+ end;
+}
+
+2@nyd,145,283,0 script nyd_2f_red_warp3 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_red_warp3", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_red_warp3", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_red_warp3", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",115,278;
+ end;
+}
+
+2@nyd,115,373,0 script nyd_2f_white -1,5,5,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_white", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_white", instance_id());
+ donpcevent instance_npcname("nyd_2f_white_warp1", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_white_warp2", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_white_warp3", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_white_c", instance_id())+"::OnEnable";
+ initnpctimer;
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_white_warp1", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white_warp2", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white_warp3", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_white", instance_id());
+ end;
+
+OnTouch:
+ percentheal -50,0;
+ sc_start SC_FREEZE,20000,0;
+ end;
+
+OnTimer10000:
+ disablenpc instance_npcname("nyd_2f_white", instance_id());
+ stopnpctimer;
+ end;
+}
+
+2@nyd,6,7,0 script nyd_2f_white_c -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_white_c", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_white_c", instance_id());
+ initnpctimer;
+ monster "2@nyd",120,380,"Nidhoggur's Guardian#1",2020,1,instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",119,381,"Nidhoggur's Guardian#2",2020,1,instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",120,367,"Nidhoggur's Guardian#3",2020,1,instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",119,366,"Nidhoggur's Guardian#4",2021,1,instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",118,365,"Nidhoggur's Guardian#5",2021,1,instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("2@nyd",instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "Nidhoggur's Shadow : You're not bad... but I will be your opponent this time.",bc_map,"0x00ff99";
+ donpcevent instance_npcname("nyd_2f_white_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnEnable";
+ end;
+ }
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_white_c", instance_id());
+ stopnpctimer;
+ end;
+
+OnTimer180000:
+ killmonster "2@nyd",instance_npcname("nyd_2f_white_c", instance_id())+"::OnMyMobDead";
+ stopnpctimer;
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ end;
+}
+
+2@nyd,127,354,0 script nyd_2f_white_warp1 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_white_warp1", instance_id());;
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_white_warp1", instance_id());;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_white_warp1", instance_id());;
+ end;
+
+OnTouch:
+ warp "2@nyd",115,373;
+ end;
+}
+
+2@nyd,140,357,0 script nyd_2f_white_warp2 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_white_warp2", instance_id());;
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_white_warp2", instance_id());;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_white_warp2", instance_id());;
+ end;
+
+OnTouch:
+ warp "2@nyd",115,373;
+ end;
+}
+
+2@nyd,145,367,0 script nyd_2f_white_warp3 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_white_warp3", instance_id());;
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_white_warp3", instance_id());;
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_white_warp3", instance_id());;
+ end;
+
+OnTouch:
+ warp "2@nyd",115,373;
+ end;
+}
+
+2@nyd,284,278,0 script nyd_2f_yellow -1,5,5,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_yellow", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_yellow", instance_id());
+ donpcevent instance_npcname("nyd_2f_yellow_warp1", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_yellow_warp2", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_yellow_warp3", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnEnable";
+ initnpctimer;
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_yellow_warp1", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow_warp2", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow_warp3", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_yellow", instance_id());
+ end;
+
+OnTouch:
+ percentheal 0,-50;
+ sc_start SC_SLEEP,20000,0;
+ sc_start SC_CONFUSION,60000,0;
+ end;
+
+OnTimer10000:
+ disablenpc instance_npcname("nyd_2f_yellow", instance_id());
+ stopnpctimer;
+ end;
+}
+
+2@nyd,6,8,0 script nyd_2f_yellow_c -1,{
+OnInstanceInit:;
+ disablenpc instance_npcname("nyd_2f_yellow_c", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_yellow_c", instance_id());
+ initnpctimer;
+ monster "2@nyd",282,284,"Nidhoggur's Guardian#1",2020,1,instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",283,283,"Nidhoggur's Guardian#2",2020,1,instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",280,275,"Nidhoggur's Guardian#3",2020,1,instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",281,276,"Nidhoggur's Guardian#4",2021,1,instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",281,277,"Nidhoggur's Guardian#5",2021,1,instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("2@nyd",instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "Nidhoggur's Shadow : You're not bad...but I will be your opponent this time.",bc_map,"0x00ff99";
+ donpcevent instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnEnable";
+ end;
+ }
+ else {
+ end;
+ }
+
+Onreset:
+ killmonster "2@nyd",instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ donpcevent instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnDisable";
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_yellow_c", instance_id());
+ stopnpctimer;
+ end;
+
+OnTimer180000:
+ killmonster "2@nyd",instance_npcname("nyd_2f_yellow_c", instance_id())+"::OnMyMobDead";
+ stopnpctimer;
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ end;
+}
+
+2@nyd,255,285,0 script nyd_2f_yellow_warp1 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_yellow_warp1", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_yellow_warp1", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_yellow_warp1", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,278;
+ end;
+}
+
+2@nyd,257,296,0 script nyd_2f_yellow_warp2 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_yellow_warp2", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_yellow_warp2", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_yellow_warp2", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,278;
+ end;
+}
+
+2@nyd,268,300,0 script nyd_2f_yellow_warp3 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_yellow_warp3", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_yellow_warp3", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_yellow_warp3", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,278;
+ end;
+}
+
+2@nyd,284,374,0 script nyd_2f_green -1,5,5,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_green", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_green", instance_id());
+ donpcevent instance_npcname("nyd_2f_green_warp1", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_green_warp2", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_green_warp3", instance_id())+"::OnEnable";
+ donpcevent instance_npcname("nyd_2f_green_c", instance_id())+"::OnEnable";
+ initnpctimer;
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_green_warp1", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green_warp2", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green_warp3", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_green", instance_id());
+ end;
+
+OnTouch:
+ percentheal -50,-50;
+ sc_start SC_POISON,60000,0;
+ end;
+
+OnTimer10000:
+ disablenpc instance_npcname("nyd_2f_green", instance_id());
+ stopnpctimer;
+ end;
+}
+
+2@nyd,6,9,0 script nyd_2f_green_c -1,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_green_c", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_green_c", instance_id());
+ initnpctimer;
+ monster "2@nyd",282,378,"Nidhoggur's Guardian#1",2020,1,instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",283,377,"Nidhoggur's Guardian#2",2020,1,instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",280,368,"Nidhoggur's Guardian#3",2020,1,instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",281,368,"Nidhoggur's Guardian#4",2021,1,instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ monster "2@nyd",281,367,"Nidhoggur's Guardian#5",2021,1,instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ end;
+
+OnMyMobDead:
+ set .@mob_dead_num,mobcount("2@nyd",instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead");
+ if (.@mob_dead_num < 1) {
+ instance_announce 0, "Nidhoggur's Shadow : You're not bad... but I will be your opponent this time.",bc_map,"0x00ff99";
+ donpcevent instance_npcname("nyd_2f_green_c", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_boss_enter_logic", instance_id())+"::OnEnable";
+ end;
+ }
+ else {
+ end;
+ }
+
+Onreset:
+ killmonster "2@nyd",instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ donpcevent instance_npcname("nyd_2f_green_c", instance_id())+"::OnDisable";
+ end;
+
+OnDisable:
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ disablenpc instance_npcname("nyd_2f_green_c", instance_id());
+ stopnpctimer;
+ end;
+
+OnTimer180000:
+ killmonster "2@nyd",instance_npcname("nyd_2f_green_c", instance_id())+"::OnMyMobDead";
+ stopnpctimer;
+ set .@rullet,rand(1,4);
+ if (.@rullet == 1) {
+ instance_announce 0, "Nidhoggur's Shadow : In this chaos... your blood is just what I need.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,278;
+ end;
+ }
+ else if (.@rullet == 2) {
+ instance_announce 0, "Nidhoggur's Shadow : I will freeze every last drop of your blood.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",115,373;
+ end;
+ }
+ else if (.@rullet == 3) {
+ instance_announce 0, "Nidhoggur's Shadow : Sleep for eternity in an empty illusion.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,278;
+ end;
+ }
+ else if (.@rullet == 4) {
+ instance_announce 0, "Nidhoggur's Shadow : I'll let you enjoy the pain of dying slowly.",bc_map,"0xFFFF00";
+ donpcevent instance_npcname("nyd_2f_red", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_white", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_yellow", instance_id())+"::OnDisable";
+ donpcevent instance_npcname("nyd_2f_green", instance_id())+"::OnEnable";
+ instance_warpall "2@nyd",284,374;
+ end;
+ }
+ end;
+}
+
+2@nyd,274,356,0 script nyd_2f_green_warp1 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_green_warp1", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_green_warp1", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_green_warp1", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,374;
+ end;
+}
+
+2@nyd,260,356,0 script nyd_2f_green_warp2 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_green_warp2", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_green_warp2", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_green_warp2", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,374;
+ end;
+}
+
+2@nyd,258,368,0 script nyd_2f_green_warp3 -1,6,6,{
+OnInstanceInit:
+ disablenpc instance_npcname("nyd_2f_green_warp3", instance_id());
+ end;
+
+OnEnable:
+ enablenpc instance_npcname("nyd_2f_green_warp3", instance_id());
+ end;
+
+OnDisable:
+ disablenpc instance_npcname("nyd_2f_green_warp3", instance_id());
+ end;
+
+OnTouch:
+ warp "2@nyd",284,374;
+ end;
+}
+
+2@nyd,1,1,0 script ins_nyd2_spawn_mobs -1,{
+OnIntanceInit:
+ areamonster "2@nyd",200,92,180,80,"Rhyncho",2020,20;
+ areamonster "2@nyd",200,92,180,80,"Phylla",2021,20;
+ areamonster "2@nyd",200,92,180,80,"Dark Shadow",2023,20;
+ areamonster "2@nyd",200,92,180,80,"Dark Pinguicula",2015,20;
+ areamonster "2@nyd",200,92,180,80,"Rhyncho",2020,20;
+ areamonster "2@nyd",200,92,180,80,"Phylla",2021,20;
+ areamonster "2@nyd",200,92,180,80,"Dark Shadow",2023,20;
+ areamonster "2@nyd",200,92,180,80,"Dark Pinguicula",2015,20;
+ end;
+}
diff --git a/npc/kafras/kafras_brasilis.txt b/npc/kafras/kafras_brasilis.txt
index f71fdecc9..a91dfbc7c 100644
--- a/npc/kafras/kafras_brasilis.txt
+++ b/npc/kafras/kafras_brasilis.txt
@@ -3,7 +3,7 @@
//===== By: =========================
//= L0ne_W0lf
//===== Current Version: ===================
-//= 1.0
+//= 1.1
//===== Compatible With: =====================
//= eAthena 1.0
//===== Description: ============================================
@@ -16,7 +16,8 @@
//= arg(3): Cost of Storage service
//= arg(4): Cost of Rent a Pushcart service
//===== Additional Comments: ==========================================
-//= v1.0 First version.
+//= 1.0 First version.
+//- 1.1 Updated save point coordinates.
//=====================================================================
brasilis,197,221,4 script Kafra Employee::kaf_bra 117,{
@@ -30,6 +31,6 @@ brasilis,197,221,4 script Kafra Employee::kaf_bra 117,{
callfunc "F_Kafra",5,3,0,80,700;
M_Save:
- savepoint "brasilis",197,219;
+ savepoint "brasilis",195,259;
callfunc "F_KafEnd",0,1,"in the city of Brasilis";
}
diff --git a/npc/merchants/inn.txt b/npc/merchants/inn.txt
index f05d390f5..5d307eabd 100644
--- a/npc/merchants/inn.txt
+++ b/npc/merchants/inn.txt
@@ -4,7 +4,7 @@
//= Darkchild (1.1)
//= Playtester (1.2)
//===== Current Version: =====================================
-//= 3.0
+//= 3.0a
//===== Compatible With: =====================================
//= eAthena 1.0+
//===== Description: =========================================
@@ -45,6 +45,7 @@
//= 2.8 Removed Moscovia Inn; Its in quests/quest_moscovia.txt [Kisuka]
//= 2.9 Added switch menus, updated to match AEGIS scripts. [Kisuka]
//= 3.0 Added Brasilis inn receptionist. [L0ne_W0lf]
+//= 3.0a Updated dialog for Brasilis inn. [L0ne_W0lf]
//============================================================
@@ -205,46 +206,41 @@ ve_in,157,219,5 script Inn Master#Receptionist 709,{
}
//======================== Brasilis =================================
-bra_in01,27,24,3 script Receptionist#bra 478,{
- mes "[Receptionist]";
- mes "Welcome to the 'Happy Toucan' Inn,";
- mes "we have everything to make you feel at home.";
+bra_in01,27,24,3 script Hotel Keeper#bra1 478,{
+ mes "[Hotel Keeper]";
+ mes "Welcome to the beautiful Brasilis Hotel.";
next;
- switch(select("Save:Take Rest - 5,000 zeny:Cancel")) {
+ switch(select("Save:Rest -5000 zeny")) {
case 1:
- mes "[Receptionist]";
- mes "Would you like me to save your respawn point here?";
+ mes "[Hotel Keeper]";
+ mes "Do you want to save here at the Brasilis Hotel?";
next;
- switch(select("No, thanks.:Sure!")) {
+ switch(select("No thank you.:Absolutely.")) {
case 1:
- mes "[Receptionist]";
- mes "Alright, please come back if you change your mind.";
+ mes "[Hotel Keeper]";
+ mes "Ok then, enjoy your stay.";
close;
case 2:
- savepoint "bra_in01",143,68;
- mes "[Receptionist]";
- mes "Your respawn point has been saved.";
- mes "Enjoy your stay in Brasilius and don't forget to check our natural beauties.";
+ mes "[Hotel Keeper]";
+ mes "Your respawn has been saved here at the hotel. I hope that you enjoy your stay here in Brasilis.";
+ savepoint "bra_in01",144,69;
close;
}
case 2:
- if (Zeny < 5000) {
- mes "[Receptionist]";
- mes "I'm sorry, but the service charge is 5,000 zeny.";
- mes "Please make sure that you have enough money to check in next time, okay?";
- close;
- }
- else {
- mes "[Receptionist]";
- mes "I'll take you to your room.";
+ if (Zeny > 4999) {
+ mes "[Hotel Keeper]";
+ mes "I will show you a great room.";
close2;
set zeny,zeny-5000;
percentheal 100,100;
warp "bra_in01",144,69;
end;
}
- case 3:
- close;
+ else {
+ mes "[Hotel Keeper]";
+ mes "I'm sorry, but the service charge is 5,000 zeny per night.";
+ close;
+ }
}
}
diff --git a/npc/merchants/shops.txt b/npc/merchants/shops.txt
index 43fcd3744..bb73df394 100644
--- a/npc/merchants/shops.txt
+++ b/npc/merchants/shops.txt
@@ -3,7 +3,7 @@
//===== By: ==================================================
//= eAthena Dev Team
//===== Current Version: =====================================
-//= 2.7b
+//= 2.8
//===== Compatible With: =====================================
//= eAthena 1.0+
//===== Description: =========================================
@@ -31,6 +31,7 @@
//= Re-added Bill of Birds to Morroc Item Collectors.
//= 2.7a Actually applied the right update to the comodo weapon shop. [L0ne_W0lf]
//= 2.7b Corrected Brasilis Fruit Merchant. (bugreport:4278) [L0ne_W0lf]
+//= 2.8 Updates to Brasilis Merchants. [L0ne_W0lf]
//============================================================
//=======================================================
@@ -73,11 +74,10 @@ ayo_in01,90,160,1 shop Armor Dealer#ayo 842,2211:-1,2401:-1,2403:-1,2501:-1,2503
//=======================================================
// Brasilis
//=======================================================
-brasilis,252,257,5 shop Tool Dealer#bra 478,645:-1,656:-1,601:-1,602:-1,1065:-1,1750:-1,610:-1
+brasilis,252,257,3 shop Tool Dealer#bra 478,645:-1,656:-1,601:-1,602:-1,611:-1,1065:-1,610:-1
brasilis,244,243,3 shop Weapon Dealer#bra 477,1407:-1,1457:-1,1354:-1,1519:-1,13003:-1
-brasilis,201,309,4 shop Pet Groomer#bra 476,537:-1,643:-1,10013:-1,10014:-1,554:-1,6113:-1,6114:-1,6115:-1
-// Apple -> Acai_Fruit
-brasilis,221,128,4 shop Fruit Merchant#bra 476,11515:-1,513:-1,11516:-1
+brasilis,201,309,3 shop Pet Groomer#bra 476,537:-1,643:-1
+brasilis,221,128,3 shop Fruit Gardener#bra 477,11515:-1,513:-1,11516:-1
//=======================================================
// Comodo
diff --git a/npc/mobs/dungeons/bra_dun.txt b/npc/mobs/dungeons/bra_dun.txt
index b720dce8f..354fda79c 100644
--- a/npc/mobs/dungeons/bra_dun.txt
+++ b/npc/mobs/dungeons/bra_dun.txt
@@ -15,20 +15,23 @@
//==================================================
// bra_dun01 - Behind the Waterfall
//==================================================
-bra_dun01,0,0,0,0 monster Iara 2069,60,5000,0,0
-bra_dun01,0,0,0,0 monster Piranha 2070,100,5000,0,0
-bra_dun01,0,0,0,0 monster Hydra 1068,10,5000,0,0
+bra_dun01,0,0,0,0 monster Piranha 2070,80,5000,0,0
+bra_dun01,0,0,0,0 monster Iara 2069,30,5000,0,0
+bra_dun01,0,0,0,0 monster Black Mushroom 1084,5,180000,90000,1
+bra_dun01,0,0,0,0 monster Marina 1141,20,5000,0,0
+bra_dun01,0,0,0,0 monster Kukre 1070,10,5000,0,0
bra_dun01,0,0,0,0 monster Plankton 1161,10,5000,0,0
-bra_dun01,0,0,0,0 monster Marina 1141,10,5000,0,0
-bra_dun01,0,0,0,0 monster Black Mushroom 1084,10,180000,90000,1
+bra_dun01,0,0,0,0 monster Hydra 1068,15,5000,0,0
//==================================================
// bra_dun02 - Behind the Waterfall
//==================================================
-bra_dun02,0,0,0,0 monster Iara 2069,120,5000,0,0
-bra_dun02,0,0,0,0 monster Piranha 2070,80,5000,0,0
-bra_dun02,0,0,0,0 monster Hydra 1068,20,5000,0,0
-bra_dun02,0,0,0,0 monster Plankton 1161,20,5000,0,0
+bra_dun02,0,0,0,0 monster Piranha 2070,60,5000,0,0
+bra_dun02,0,0,0,0 monster Iara 2069,110,5000,0,0
bra_dun02,0,0,0,0 monster Marina 1141,10,5000,0,0
+bra_dun02,0,0,0,0 monster Kukre 1070,10,5000,0,0
+bra_dun02,0,0,0,0 monster Plankton 1161,10,5000,0,0
+bra_dun02,0,0,0,0 monster Hydra 1068,15,5000,0,0
+bra_dun02,0,0,0,0 monster Shining Plant 1083,2,5000,0,0
+bra_dun02,0,0,0,0 monster Black Mushroom 1084,5,5000,0,0
bra_dun02,0,0,0,0 boss_monster Boitata 2068,1,7200000,600000,1
-bra_dun02,0,0,0,0 monster Black Mushroom 1084,10,180000,90000,1
diff --git a/npc/mobs/fields/brasilis.txt b/npc/mobs/fields/brasilis.txt
index 6b52709aa..70bcf0e71 100644
--- a/npc/mobs/fields/brasilis.txt
+++ b/npc/mobs/fields/brasilis.txt
@@ -13,10 +13,10 @@
//==================================================
// bra_fild01
//==================================================
+bra_fild01,0,0,0,0 monster Curupira 2074,50,5000,0,0
+bra_fild01,0,0,0,0 monster Dokebi 1110,10,5000,0,0
+bra_fild01,0,0,0,0 monster Savage 1166,5,5000,0,0
bra_fild01,0,0,0,0 monster Headless Mule 2071,40,5000,0,0
-bra_fild01,0,0,0,0 monster Curupira 2074,80,5000,0,0
-bra_fild01,0,0,0,0 monster Dokebi 1110,20,5000,0,0
-bra_fild01,0,0,0,0 monster Jaguar 2072,10,5000,0,0
-bra_fild01,0,0,0,0 monster Savage 1166,20,5000,0,0
-bra_fild01,0,0,0,0 monster Toucan 2073,10,5000,0,0
-bra_fild01,0,0,0,0 monster Red Mushroom 1085,3,5000,0,0 \ No newline at end of file
+bra_fild01,0,0,0,0 monster Red Mushroom 1085,5,5000,0,0
+bra_fild01,0,0,0,0 monster Jaguar 2072,55,5000,0,0
+bra_fild01,0,0,0,0 monster Toucan 2073,60,5000,0,0 \ No newline at end of file
diff --git a/npc/scripts_athena.conf b/npc/scripts_athena.conf
index a534f6e3a..828365fc2 100644
--- a/npc/scripts_athena.conf
+++ b/npc/scripts_athena.conf
@@ -79,7 +79,7 @@ npc: npc/quests/quests_alberta.txt
npc: npc/quests/quests_aldebaran.txt
npc: npc/quests/quests_amatsu.txt
npc: npc/quests/quests_ayothaya.txt
-//npc: npc/quests/quests_brasilis.txt
+npc: npc/quests/quests_brasilis.txt
npc: npc/quests/quests_comodo.txt
npc: npc/quests/quests_ein.txt
npc: npc/quests/quests_geffen.txt
@@ -166,6 +166,7 @@ npc: npc/quests/Bard_Quest.txt
npc: npc/quests/2007_relay.txt
//Guild Relay Quests
npc: npc/quests/guildrelay.txt
+//npc: npc/quests/newgears/2008_headgear.txt
//Falicious Okolnir
//God Item Second Edition Quests
npc: npc/quests/okolnir/godse_aru01.txt
@@ -353,5 +354,5 @@ npc: npc/battleground/kvm/kvm03.txt
npc: npc/instances/SealedShrine.txt
npc: npc/instances/EndlessTower.txt
npc: npc/instances/OrcsMemory.txt
-//npc: npc/instances/NydhoggsNest.txt
+npc: npc/instances/NydhoggsNest.txt
// --------------------------------------------------------------
diff --git a/npc/scripts_jobs.conf b/npc/scripts_jobs.conf
index ba08f2bf0..23adb3b5a 100644
--- a/npc/scripts_jobs.conf
+++ b/npc/scripts_jobs.conf
@@ -46,14 +46,25 @@ npc: npc/jobs/2-2a/Gypsy.txt
npc: npc/jobs/2-2a/Paladin.txt
npc: npc/jobs/2-2a/Professor.txt
npc: npc/jobs/2-2a/Stalker.txt
-// -- 1-1E (Without Quest)
+// -- 1-1E
npc: npc/jobs/1-1e/gunslinger.txt
npc: npc/jobs/1-1e/ninja.txt
npc: npc/jobs/1-1e/taekwon.txt
-// -- 2-1E (Place Holder)
+// -- 2-1E
npc: npc/jobs/2-1e/StarGladiator.txt
-// -- 2-2E (Place Holder)
+// -- 2-2E
npc: npc/jobs/2-2e/SoulLinker.txt
+// -- 3-1
+//npc: npc/jobs/3-1/archbishop.txt
+//npc: npc/jobs/3-1/mechanic.txt
+//npc: npc/jobs/3-1/ranger.txt
+//npc: npc/jobs/3-1/rune_knight.txt
+//npc: npc/jobs/3-1/warlock.txt
+// -- 3-2
+//npc: npc/jobs/3-2/maestro.txt
+//npc: npc/jobs/3-2/royal_guard.txt
+//npc: npc/jobs/3-2/sorcerer.txt
+//npc: npc/jobs/3-2/sura.txt
// --------------------------------------------------------------
// ------------------------ Skill Quests ------------------------
npc: npc/quests/skills/acolyte_skills.txt
diff --git a/npc/scripts_monsters.conf b/npc/scripts_monsters.conf
index e94abbd13..d51f1bcbc 100644
--- a/npc/scripts_monsters.conf
+++ b/npc/scripts_monsters.conf
@@ -4,9 +4,11 @@
npc: npc/mobs/citycleaners.txt
npc: npc/mobs/pvp.txt
+npc: npc/mobs/towns/brasilis.txt
+
npc: npc/mobs/fields/amatsu.txt
npc: npc/mobs/fields/ayothaya.txt
-//npc: npc/mobs/fields/brasilis.txt
+npc: npc/mobs/fields/brasilis.txt
npc: npc/mobs/fields/comodo.txt
//npc: npc/mobs/fields/dicastes.txt
npc: npc/mobs/fields/einbroch.txt
@@ -37,7 +39,7 @@ npc: npc/mobs/dungeons/ama_dun.txt
npc: npc/mobs/dungeons/anthell.txt
npc: npc/mobs/dungeons/ayo_dun.txt
npc: npc/mobs/dungeons/beach_dun.txt
-//npc: npc/mobs/dungeons/bra_dun.txt
+npc: npc/mobs/dungeons/bra_dun.txt
npc: npc/mobs/dungeons/c_tower.txt
//npc: npc/mobs/dungeons/dic_dun.txt
npc: npc/mobs/dungeons/ein_dun.txt
diff --git a/npc/scripts_warps.conf b/npc/scripts_warps.conf
index f65289920..27889eed9 100644
--- a/npc/scripts_warps.conf
+++ b/npc/scripts_warps.conf
@@ -41,6 +41,7 @@ npc: npc/warps/dungeons/ama_dun.txt
npc: npc/warps/dungeons/anthell.txt
npc: npc/warps/dungeons/ayo_dun.txt
npc: npc/warps/dungeons/beach_dun.txt
+npc: npc/warps/dungeons/bra_dun.txt
npc: npc/warps/dungeons/c_tower.txt
npc: npc/warps/dungeons/ein_dun.txt
npc: npc/warps/dungeons/gef_dun.txt
diff --git a/src/common/mmo.h b/src/common/mmo.h
index f9037e913..49a738b08 100644
--- a/src/common/mmo.h
+++ b/src/common/mmo.h
@@ -160,7 +160,7 @@
//Mercenary System
#define MC_SKILLBASE 8201
#define MAX_MERCSKILL 40
-#define MAX_MERCENARY_CLASS 40
+#define MAX_MERCENARY_CLASS 44
enum item_types {
IT_HEALING = 0,
diff --git a/src/map/battle.c b/src/map/battle.c
index ca5662dd7..f60b375ed 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -3764,7 +3764,7 @@ static const struct _battle_data {
{ "arrow_decrement", &battle_config.arrow_decrement, 1, 0, 2, },
{ "max_aspd", &battle_config.max_aspd, 199, 100, 199, },
{ "max_walk_speed", &battle_config.max_walk_speed, 300, 100, 100*DEFAULT_WALK_SPEED, },
- { "max_lv", &battle_config.max_lv, 99, 0, 127, },
+ { "max_lv", &battle_config.max_lv, 99, 0, 150, },
{ "aura_lv", &battle_config.aura_lv, 99, 0, INT_MAX, },
{ "max_hp", &battle_config.max_hp, 32500, 100, 1000000000, },
{ "max_sp", &battle_config.max_sp, 32500, 100, 1000000000, },
diff --git a/src/map/pc.h b/src/map/pc.h
index fdf4094a1..6cf9be63c 100644
--- a/src/map/pc.h
+++ b/src/map/pc.h
@@ -428,7 +428,7 @@ struct map_session_data {
};
//Update this max as necessary. 55 is the value needed for Super Baby currently
-#define MAX_SKILL_TREE 55
+#define MAX_SKILL_TREE 77
//Total number of classes (for data storage)
#define CLASS_COUNT (JOB_MAX - JOB_NOVICE_HIGH + JOB_MAX_BASIC)