Browse Source

Initial release of Illusion of underwater (#7521)

Implemented the main quest, daily quests and exchange npcs related to illusion of underwater.
Walkthrough Conversion.

Closed #6472 

Thanks to @secretdataz @OptimusM !

Co-authored-by: aleos <aleos89@users.noreply.github.com>
Atemo 2 years ago
parent
commit
c7b464b91f

+ 556 - 24
db/re/mob_db.yml

@@ -97392,28 +97392,514 @@ Body:
 #    AegisName: MD_THA_DOLOR
 #  - Id: 20800
 #    AegisName: MD_OBSERVATION
-#  - Id: 20801
-#    AegisName: ILL_SROPHO
-#  - Id: 20802
-#    AegisName: ILL_OBEAUNE
-#  - Id: 20803
-#    AegisName: ILL_DEVIACE
-#  - Id: 20804
-#    AegisName: ILL_MARSE
-#  - Id: 20805
-#    AegisName: ILL_MERMAN
-#  - Id: 20806
-#    AegisName: ILL_SEDORA
-#  - Id: 20807
-#    AegisName: ILL_SWORD_FISH
-#  - Id: 20808
-#    AegisName: ILL_STROUF
-#  - Id: 20809
-#    AegisName: ILL_PHEN
-#  - Id: 20810
-#    AegisName: ILL_KING_DRAMOH
-#  - Id: 20811
-#    AegisName: ILL_KRAKEN
+  - Id: 20801
+    AegisName: ILL_SROPHO
+    Name: Deep Sea Sropho
+    Level: 147
+    Hp: 336823
+    BaseExp: 30314
+    JobExp: 21220
+    Attack: 2657
+    Attack2: 340
+    Defense: 224
+    MagicDefense: 81
+    Str: 145
+    Agi: 50
+    Vit: 95
+    Int: 80
+    Dex: 110
+    Luk: 50
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Fish
+    Element: Water
+    ElementLevel: 3
+    WalkSpeed: 250
+    AttackDelay: 550
+    AttackMotion: 1056
+    DamageMotion: 576
+    Ai: 04
+    Drops:
+      - Item: Fin
+        Rate: 2500
+      - Item: Blue_Herb
+        Rate: 50
+      - Item: Crystal_Arrow_Container
+        Rate: 50
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: Electric_Eel
+        Rate: 25
+      - Item: Deepsea_Fish_Tail
+        Rate: 1000
+      - Item: ILL_Sropho_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20802
+    AegisName: ILL_OBEAUNE
+    Name: Deep Sea Obeaune
+    Level: 149
+    Hp: 340238
+    BaseExp: 30621
+    JobExp: 21434
+    Attack: 2647
+    Attack2: 384
+    Defense: 255
+    MagicDefense: 90
+    Str: 134
+    Agi: 50
+    Vit: 114
+    Int: 77
+    Dex: 114
+    Luk: 50
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Fish
+    Element: Water
+    ElementLevel: 2
+    WalkSpeed: 200
+    AttackDelay: 936
+    AttackMotion: 1155
+    DamageMotion: 672
+    Ai: 04
+    Drops:
+      - Item: Heart_Of_Mermaid
+        Rate: 2500
+      - Item: Fin
+        Rate: 150
+      - Item: Skyblue_Jewel
+        Rate: 5
+      - Item: Saint_Robe
+        Rate: 10
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: Rotten_Deepseafish
+        Rate: 1000
+      - Item: ILL_Obeaune_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20803
+    AegisName: ILL_DEVIACE
+    Name: Deep Sea Deviace
+    Level: 150
+    Hp: 348355
+    BaseExp: 31352
+    JobExp: 21946
+    Attack: 2714
+    Attack2: 401
+    Defense: 274
+    MagicDefense: 91
+    Str: 151
+    Agi: 58
+    Vit: 121
+    Int: 80
+    Dex: 120
+    Luk: 58
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Fish
+    Element: Water
+    ElementLevel: 4
+    WalkSpeed: 400
+    AttackDelay: 480
+    AttackMotion: 970
+    DamageMotion: 770
+    Ai: 04
+    Drops:
+      - Item: Mistic_Frozen
+        Rate: 10
+      - Item: Tooth_Of_Ancient_Fish
+        Rate: 2500
+      - Item: Lip_Of_Ancient_Fish
+        Rate: 300
+      - Item: Katar_Of_Cold_Icicle
+        Rate: 5
+      - Item: Abysmal_Clam
+        Rate: 1000
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Deviace_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20804
+    AegisName: ILL_MARSE
+    Name: Deep Sea Marse
+    Level: 149
+    Hp: 335141
+    BaseExp: 30163
+    JobExp: 21114
+    Attack: 2851
+    Attack2: 417
+    Defense: 288
+    MagicDefense: 100
+    Str: 159
+    Agi: 60
+    Vit: 135
+    Int: 90
+    Dex: 120
+    Luk: 60
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Small
+    Race: Fish
+    Element: Water
+    ElementLevel: 2
+    WalkSpeed: 270
+    AttackDelay: 1070
+    AttackMotion: 1512
+    DamageMotion: 485
+    Ai: 04
+    Drops:
+      - Item: Chinese_Ink
+        Rate: 2500
+      - Item: Tentacle
+        Rate: 1000
+      - Item: Water_Sprits_Armor
+        Rate: 10
+      - Item: Skyblue_Jewel
+        Rate: 5
+      - Item: Mistic_Frozen
+        Rate: 6
+      - Item: Deep_Sea_Starfish
+        Rate: 1000
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Marse_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20805
+    AegisName: ILL_MERMAN
+    Name: Deep Sea Merman
+    Level: 148
+    Hp: 337534
+    BaseExp: 30378
+    JobExp: 21265
+    Attack: 2801
+    Attack2: 401
+    Defense: 268
+    MagicDefense: 75
+    Str: 159
+    Agi: 60
+    Vit: 134
+    Int: 74
+    Dex: 110
+    Luk: 48
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Demihuman
+    Element: Water
+    ElementLevel: 3
+    WalkSpeed: 220
+    AttackDelay: 708
+    AttackMotion: 1225
+    DamageMotion: 675
+    Ai: 04
+    Drops:
+      - Item: Lip_Of_Ancient_Fish
+        Rate: 1000
+      - Item: Mistic_Frozen
+        Rate: 100
+      - Item: Yggdrasilberry
+        Rate: 80
+      - Item: Deep_Sea_Crab
+        Rate: 1000
+      - Item: Zephyrus
+        Rate: 5
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Merman_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20806
+    AegisName: ILL_SEDORA
+    Name: Deep Sea Sedora
+    Level: 199
+    Hp: 2875143
+    BaseExp: 191676
+    JobExp: 134173
+    Attack: 6574
+    Attack2: 796
+    Defense: 274
+    MagicDefense: 100
+    Str: 232
+    Agi: 147
+    Vit: 78
+    Int: 147
+    Dex: 140
+    Luk: 60
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Fish
+    Element: Wind
+    ElementLevel: 3
+    WalkSpeed: 220
+    AttackDelay: 168
+    AttackMotion: 965
+    DamageMotion: 578
+    Ai: 04
+    Drops:
+      - Item: Tentacle
+        Rate: 2000
+      - Item: Chinese_Ink
+        Rate: 1000
+      - Item: Old_Blue_Box
+        Rate: 5
+      - Item: Crystal_Blue
+        Rate: 20
+      - Item: Abysmal_Clam
+        Rate: 2500
+      - Item: Electronic_Guitar
+        Rate: 5
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Sedora_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20807
+    AegisName: ILL_SWORD_FISH
+    Name: Deep Sea Swordfish
+    Level: 199
+    Hp: 2997411
+    BaseExp: 199827
+    JobExp: 139879
+    Attack: 6678
+    Attack2: 824
+    Defense: 288
+    MagicDefense: 71
+    Str: 248
+    Agi: 160
+    Vit: 99
+    Int: 120
+    Dex: 160
+    Luk: 60
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Large
+    Race: Fish
+    Element: Water
+    ElementLevel: 3
+    WalkSpeed: 250
+    AttackDelay: 335
+    AttackMotion: 1250
+    DamageMotion: 384
+    Ai: 04
+    Drops:
+      - Item: Sharp_Scale
+        Rate: 2000
+      - Item: Gill
+        Rate: 300
+      - Item: Deepsea_Fish_Tail
+        Rate: 2500
+      - Item: Mistic_Frozen
+        Rate: 50
+      - Item: Morrigane's_Pendant
+        Rate: 10
+      - Item: Elunium_Stone
+        Rate: 25
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Sword_Fish_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20808
+    AegisName: ILL_STROUF
+    Name: Deep Sea Strouf
+    Level: 201
+    Hp: 2967419
+    BaseExp: 197828
+    JobExp: 138480
+    Attack: 5947
+    Attack2: 811
+    Defense: 277
+    MagicDefense: 80
+    Str: 224
+    Agi: 160
+    Vit: 99
+    Int: 125
+    Dex: 161
+    Luk: 64
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Large
+    Race: Fish
+    Element: Water
+    ElementLevel: 3
+    WalkSpeed: 180
+    AttackDelay: 276
+    AttackMotion: 672
+    DamageMotion: 384
+    Ai: 04
+    Drops:
+      - Item: Fin
+        Rate: 2000
+      - Item: Skyblue_Jewel
+        Rate: 10
+      - Item: Oridecon_Stone
+        Rate: 10
+      - Item: Mistic_Frozen
+        Rate: 20
+      - Item: Deep_Sea_Starfish
+        Rate: 2500
+      - Item: Brionac
+        Rate: 50
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Strouf_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20809
+    AegisName: ILL_PHEN
+    Name: Deep Sea Phen
+    Level: 199
+    Hp: 2897158
+    BaseExp: 193144
+    JobExp: 135201
+    Attack: 5844
+    Attack2: 813
+    Defense: 219
+    MagicDefense: 90
+    Str: 208
+    Agi: 157
+    Vit: 66
+    Int: 115
+    Dex: 144
+    Luk: 71
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Medium
+    Race: Fish
+    Element: Water
+    ElementLevel: 2
+    WalkSpeed: 220
+    AttackDelay: 168
+    AttackMotion: 1154
+    DamageMotion: 865
+    Ai: 04
+    Drops:
+      - Item: Sharp_Scale
+        Rate: 2000
+      - Item: Fin
+        Rate: 1000
+      - Item: Meat
+        Rate: 300
+      - Item: Mistic_Frozen
+        Rate: 50
+      - Item: Rotten_Deepseafish
+        Rate: 2500
+      - Item: Morrigane's_Helm
+        Rate: 10
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_Phen_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20810
+    AegisName: ILL_KING_DRAMOH
+    Name: Deep Sea King Dramoh
+    Level: 205
+    Hp: 3115698
+    BaseExp: 207713
+    JobExp: 145399
+    Attack: 6081
+    Attack2: 849
+    Defense: 330
+    MagicDefense: 40
+    Str: 194
+    Agi: 151
+    Vit: 150
+    Int: 100
+    Dex: 142
+    Luk: 80
+    AttackRange: 1
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Large
+    Race: Fish
+    Element: Water
+    ElementLevel: 3
+    WalkSpeed: 180
+    AttackDelay: 480
+    AttackMotion: 960
+    DamageMotion: 970
+    Ai: 04
+    Drops:
+      - Item: Nipper
+        Rate: 1500
+      - Item: Solid_Shell
+        Rate: 1500
+      - Item: Deep_Sea_Crab
+        Rate: 2500
+      - Item: Morrigane's_Belt
+        Rate: 50
+      - Item: Death_Guidance
+        Rate: 50
+      - Item: E_Abyss1
+        Rate: 250
+      - Item: ILL_King_Dramoh_Card
+        Rate: 1
+        StealProtected: true
+  - Id: 20811
+    AegisName: ILL_KRAKEN
+    Name: Deep Sea Kraken
+    Level: 204
+    Hp: 81289587
+    BaseExp: 5865974
+    JobExp: 4178562
+    Attack: 10874
+    Attack2: 1889
+    Defense: 335
+    MagicDefense: 271
+    Str: 325
+    Agi: 190
+    Vit: 169
+    Int: 277
+    Dex: 200
+    Luk: 55
+    AttackRange: 3
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Large
+    Race: Fish
+    Element: Water
+    ElementLevel: 4
+    WalkSpeed: 180
+    AttackDelay: 422
+    AttackMotion: 870
+    DamageMotion: 480
+    Ai: 21
+    Class: Boss
+    Modes:
+      Mvp: true
+    Drops:
+      - Item: Tentacle
+        Rate: 3000
+      - Item: Mistic_Frozen
+        Rate: 500
+      - Item: Shadowdecon
+        Rate: 50
+      - Item: IL_Kraken_Leg
+        Rate: 3000
+      - Item: Morrigane's_Manteau
+        Rate: 300
+      - Item: E_Abyss1
+        Rate: 1000
+      - Item: ILL_Kraken_Card
+        Rate: 1
+        StealProtected: true
 #  - Id: 20812
 #    AegisName: MD_EVENT_HEMEL
 #  - Id: 20813
@@ -97568,8 +98054,54 @@ Body:
 #    AegisName: ELEMETAL_MASTER_S4
 #  - Id: 20842
 #    AegisName: ELEMETAL_MASTER_S5
-#  - Id: 20843
-#    AegisName: ILL_ABYSMAL_WITCH
+  - Id: 20843
+    AegisName: ILL_ABYSMAL_WITCH
+    Name: Deep Sea Witch
+    Level: 205
+    Hp: 78368745
+    BaseExp: 5896412
+    JobExp: 4143664
+    Attack: 11016
+    Attack2: 1853
+    Defense: 452
+    MagicDefense: 81
+    Str: 327
+    Agi: 194
+    Vit: 173
+    Int: 325
+    Dex: 201
+    Luk: 55
+    AttackRange: 3
+    SkillRange: 10
+    ChaseRange: 12
+    Size: Large
+    Race: Demon
+    Element: Dark
+    ElementLevel: 3
+    WalkSpeed: 210
+    AttackDelay: 360
+    AttackMotion: 1250
+    DamageMotion: 480
+    Ai: 21
+    Class: Boss
+    Modes:
+      Mvp: true
+    Drops:
+      - Item: Crown_Of_Witch
+        Rate: 3000
+      - Item: Mistic_Frozen
+        Rate: 300
+      - Item: Morrigane's_Pendant
+        Rate: 50
+      - Item: Morrigane's_Belt
+        Rate: 50
+      - Item: Shadowdecon
+        Rate: 50
+      - Item: E_Abyss1
+        Rate: 1000
+      - Item: ILL_Abysmal_Witch_Card
+        Rate: 1
+        StealProtected: true
 #  - Id: 20844
 #    AegisName: PRAY_GIVER
 #  - Id: 20845

+ 142 - 0
db/re/mob_skill_db.txt

@@ -13416,6 +13416,148 @@
 20419,MUSPELLSKOLL_H@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,2,1834,1835,,,,,
 20419,MUSPELLSKOLL_H@AL_TELEPORT,walk,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
 
+// Illusion of Underwater
+20801,ILL_SROPHO@NPC_WINDATTACK,attack,187,5,2000,0,5000,no,target,always,0,,,,,,29,
+20801,ILL_SROPHO@NPC_WINDATTACK,chase,187,5,2000,0,5000,no,target,always,0,,,,,,29,
+20801,ILL_SROPHO@NPC_STUNATTACK,attack,179,5,3000,1000,10000,no,target,always,0,,,,,,,
+20801,ILL_SROPHO@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20801,ILL_SROPHO@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20801,ILL_SROPHO@WZ_JUPITEL,attack,84,5,2000,0,5000,no,target,always,0,,,,,,,
+20801,ILL_SROPHO@WZ_JUPITEL,chase,84,5,2000,0,5000,no,target,always,0,,,,,,,
+20801,ILL_SROPHO@NPC_COMBOATTACK,attack,171,3,1000,700,5000,no,target,always,0,,,,,,,
+20802,ILL_OBEAUNE@NPC_CURSEATTACK,attack,181,1,500,800,5000,no,target,always,0,,,,,,,
+20802,ILL_OBEAUNE@NPC_DARKNESSATTACK,attack,190,5,2000,0,5000,no,target,always,0,,,,,,29,
+20802,ILL_OBEAUNE@NPC_DARKNESSATTACK,chase,190,5,2000,0,5000,no,target,always,0,,,,,,29,
+20802,ILL_OBEAUNE@NPC_DARKCROSS,attack,338,5,3000,1000,10000,no,target,always,0,,,,,,,
+20802,ILL_OBEAUNE@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20802,ILL_OBEAUNE@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20802,ILL_OBEAUNE@NPC_MOVE_COORDINATE,chase,755,1,1000,500,180000,no,target,always,0,,,,,,,
+20802,ILL_OBEAUNE@NPC_COMBOATTACK,attack,171,3,1000,700,5000,no,target,always,0,,,,,,,
+20803,ILL_DEVIACE@NPC_WATERATTACK,attack,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20803,ILL_DEVIACE@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20803,ILL_DEVIACE@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20803,ILL_DEVIACE@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20803,ILL_DEVIACE@MG_COLDBOLT,attack,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20803,ILL_DEVIACE@MG_COLDBOLT,chase,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20803,ILL_DEVIACE@NPC_COMBOATTACK,attack,171,3,1000,700,5000,no,target,always,0,,,,,,,
+20804,ILL_MARSE@NPC_WATERATTACK,attack,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20804,ILL_MARSE@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20804,ILL_MARSE@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20804,ILL_MARSE@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20804,ILL_MARSE@MG_COLDBOLT,attack,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20804,ILL_MARSE@MG_COLDBOLT,chase,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20804,ILL_MARSE@NPC_COMBOATTACK,attack,171,3,1000,700,5000,no,target,always,0,,,,,,,
+20805,ILL_MERMAN@NPC_WATERATTACK,attack,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20805,ILL_MERMAN@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20805,ILL_MERMAN@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20805,ILL_MERMAN@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20805,ILL_MERMAN@MG_COLDBOLT,attack,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20805,ILL_MERMAN@MG_COLDBOLT,chase,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20805,ILL_MERMAN@NPC_COMBOATTACK,attack,171,3,1000,700,5000,no,target,always,0,,,,,,,
+20806,ILL_SEDORA@NPC_WATERATTACK,attack,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20806,ILL_SEDORA@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20806,ILL_SEDORA@WZ_WATERBALL,chase,86,10,5000,500,25000,no,target,always,0,,,,,,,
+20806,ILL_SEDORA@WZ_WATERBALL,attack,86,10,5000,500,25000,no,target,always,0,,,,,,29,
+20806,ILL_SEDORA@MG_COLDBOLT,attack,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20806,ILL_SEDORA@MG_COLDBOLT,chase,14,9,1000,1000,5000,no,target,always,0,,,,,,,
+20806,ILL_SEDORA@NPC_STORMGUST2,attack,723,3,2500,500,10000,no,target,always,0,,,,,,20,
+20807,ILL_SWORD_FISH@NPC_WATERATTACK,attack,184,1,6500,300,5000,yes,target,always,0,,,,,,,
+20807,ILL_SWORD_FISH@WZ_WATERBALL,attack,86,3,7000,1500,5000,yes,target,always,0,,,,,,,
+20807,ILL_SWORD_FISH@WZ_WATERBALL,chase,86,3,7000,1500,5000,yes,target,always,0,,,,,,,
+20807,ILL_SWORD_FISH@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,always,0,,,,,,,
+20807,ILL_SWORD_FISH@NPC_IGNITIONBREAK,attack,740,2,1000,300,30000,no,self,always,0,,,,,,,
+20807,ILL_SWORD_FISH@WZ_WATERBALL,chase,86,3,7000,1500,5000,yes,target,always,0,,,,,,,
+20807,ILL_SWORD_FISH@NPC_CRITICALWOUND,attack,673,1,8000,300,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_FROSTDIVER,attack,15,9,1000,1000,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_FROSTDIVER,chase,15,9,1000,1000,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_LIGHTNINGBOLT,attack,20,3,500,1500,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_LIGHTNINGBOLT,chase,20,3,500,1500,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@NPC_EMOTION,idle,197,1,2000,0,5000,yes,self,always,0,,,,,,32,
+20808,ILL_STROUF@NPC_WATERATTACK,attack,184,1,2000,0,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@WZ_WATERBALL,attack,86,3,500,1500,5000,yes,target,always,0,,,,,,6,
+20808,ILL_STROUF@NPC_GUIDEDATTACK,attack,172,4,7000,300,30000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_FROSTDIVER,chase,15,9,1000,1000,5000,yes,target,always,0,,,,,,,
+20808,ILL_STROUF@MG_LIGHTNINGBOLT,follow,20,3,500,1500,5000,yes,target,always,0,,,,,,,
+20809,ILL_PHEN@NPC_WATERATTACK,attack,184,3,500,500,5000,no,target,always,0,,,,,,19,
+20809,ILL_PHEN@AL_TELEPORT,idle,26,1,1000,1000,10000,no,self,always,0,,,,,,,
+20809,ILL_PHEN@AL_TELEPORT,chase,26,1,1000,1000,10000,no,self,always,0,,,,,,,
+20809,ILL_PHEN@AL_TELEPORT,attack,26,1,1000,1000,10000,no,self,always,0,,,,,,,
+20809,ILL_PHEN@AL_HEAL,idle,28,9,10000,1000,10000,yes,friend,always,0,,,,,,,
+20809,ILL_PHEN@AL_HEAL,chase,28,9,10000,1000,10000,yes,friend,always,0,,,,,,,
+20809,ILL_PHEN@AL_HEAL,attack,28,9,10000,1000,10000,yes,friend,always,0,,,,,,,
+20810,ILL_KING_DRAMOH@SM_ENDURE,chase,8,1,5000,0,10000,yes,self,longrangeattacked,0,,,,,,6,
+20810,ILL_KING_DRAMOH@NPC_DEFENDER,attack,205,1,500,0,5000,yes,self,longrangeattacked,0,,,,,,36,
+20810,ILL_KING_DRAMOH@NPC_STOP,attack,342,1,500,0,30000,yes,target,always,0,,,,,,38,
+20810,ILL_KING_DRAMOH@NPC_STUNATTACK,attack,179,4,500,1500,5000,no,target,always,0,,,,,,,
+20810,ILL_KING_DRAMOH@NPC_WATERATTACK,attack,184,1,6500,300,5000,yes,target,always,0,,,,,,,
+20811,ILL_KRAKEN@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDESILENCE,chase,663,1,2000,1000,20000,no,self,always,0,,,,,,32,
+20811,ILL_KRAKEN@NPC_WIDESILENCE,attack,663,1,2000,700,25000,yes,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDEFREEZE,chase,664,1,2000,1000,20000,yes,self,always,0,,,,,,36,
+20811,ILL_KRAKEN@NPC_WIDEFREEZE,attack,664,1,2000,1000,20000,yes,self,always,0,,,,,,36,
+20811,ILL_KRAKEN@NPC_WIDESLEEP,chase,668,1,2000,700,25000,yes,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDESLEEP,attack,668,1,2000,700,25000,yes,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDEBLEEDING,chase,665,1,2000,500,100000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDEBLEEDING,attack,665,1,2000,500,100000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDESOULDRAIN,chase,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20811,ILL_KRAKEN@NPC_WIDESOULDRAIN,attack,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20811,ILL_KRAKEN@WZ_WATERBALL,attack,86,10,2000,500,25000,no,target,always,0,,,,,,0,
+20811,ILL_KRAKEN@WZ_WATERBALL,chase,86,10,2000,500,25000,no,target,always,0,,,,,,0,
+20811,ILL_KRAKEN@NPC_DRAGONFEAR,attack,659,5,500,0,30000,yes,self,myhpltmaxrate,70,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDECURSE,chase,677,1,500,800,5000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,20806,20807,20808,20809,20810,,
+20811,ILL_KRAKEN@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,20806,20807,20808,20809,20810,,
+20811,ILL_KRAKEN@NPC_WIDECURSE,attack,677,1,500,800,5000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDESTUN,chase,678,1,2000,1300,180000,yes,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WIDESTUN,attack,678,1,2000,1300,180000,yes,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_WATERATTACK,attack,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20811,ILL_KRAKEN@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20811,ILL_KRAKEN@NPC_WATERATTACK,chase,184,5,2000,0,5000,no,target,always,0,,,,,,29,
+20811,ILL_KRAKEN@MG_FROSTDIVER,attack,15,40,3000,1000,10000,no,target,always,0,,,,,,,
+20811,ILL_KRAKEN@MG_FROSTDIVER,chase,15,40,3000,1000,10000,no,target,always,0,,,,,,,
+20811,ILL_KRAKEN@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_PULSESTRIKE,attack,661,5,2000,0,30000,yes,self,always,0,,,,,,32,
+20811,ILL_KRAKEN@HW_GANBANTEIN,attack,483,1,2000,0,5000,yes,target,always,0,,,,,,,
+// 20811,ILL_KRAKEN@NPC_EARTHQUAKE_K,attack,750,5,10000,1500,25000,no,target,myhpltmaxrate,20,,,,,,,
+20811,ILL_KRAKEN@NPC_HELLJUDGEMENT2,chase,768,2,3000,500,5000,no,target,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_HELLJUDGEMENT2,attack,768,2,3000,500,5000,no,target,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_CLOUD_KILL,attack,739,5,2000,500,16000,no,target,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_DAMAGE_HEAL,attack,753,1,10000,1000,60000,no,target,myhpltmaxrate,10,,,,,,,
+20811,ILL_KRAKEN@NPC_PHANTOMTHRUST,chase,741,5,1000,0,5000,no,self,always,0,,,,,,,
+20811,ILL_KRAKEN@NPC_CALLSLAVE,idle,352,1,5000,0,30000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESILENCE,chase,663,1,2000,1000,20000,no,self,always,0,,,,,,32,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESILENCE,attack,663,1,2000,700,25000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDEFREEZE,chase,664,1,2000,1000,20000,yes,self,always,0,,,,,,36,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDEFREEZE,attack,664,1,2000,1000,20000,yes,self,always,0,,,,,,36,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESLEEP,chase,668,1,2000,700,25000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESLEEP,attack,668,1,2000,700,25000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_DARKTHUNDER,chase,341,3,500,1500,15000,no,target,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_DARKTHUNDER,attack,341,3,500,1500,15000,no,target,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESOULDRAIN,chase,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESOULDRAIN,attack,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20843,ILL_ABYSMAL_WITCH@WZ_WATERBALL,attack,86,10,3000,500,25000,no,target,always,0,,,,,,0,
+20843,ILL_ABYSMAL_WITCH@WZ_WATERBALL,chase,86,10,3000,500,25000,no,target,always,0,,,,,,0,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDECURSE,chase,677,1,500,800,5000,no,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,20801,20802,20803,20804,20805,,
+20843,ILL_ABYSMAL_WITCH@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,20801,20802,20803,20804,20805,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDECURSE,attack,677,1,500,800,5000,no,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESTUN,chase,678,1,2000,1300,180000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_WIDESTUN,attack,678,1,2000,1300,180000,yes,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_DARKNESSATTACK,attack,190,5,2000,0,5000,no,target,always,0,,,,,,29,
+20843,ILL_ABYSMAL_WITCH@NPC_DARKNESSATTACK,chase,190,5,2000,0,5000,no,target,always,0,,,,,,29,
+20843,ILL_ABYSMAL_WITCH@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_PULSESTRIKE,attack,661,5,2000,0,30000,yes,self,always,0,,,,,,32,
+20843,ILL_ABYSMAL_WITCH@HW_GANBANTEIN,attack,483,1,2000,0,5000,yes,target,always,0,,,,,,,
+// 20843,ILL_ABYSMAL_WITCH@NPC_EARTHQUAKE_K,attack,750,5,10000,1500,25000,no,target,myhpltmaxrate,20,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_HELLJUDGEMENT2,chase,768,2,2000,500,5000,no,target,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_HELLJUDGEMENT2,attack,768,2,2000,500,5000,no,target,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_CLOUD_KILL,attack,739,5,2000,500,16000,no,target,always,0,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_DAMAGE_HEAL,attack,753,1,10000,1000,60000,no,target,myhpltmaxrate,10,,,,,,,
+20843,ILL_ABYSMAL_WITCH@NPC_CALLSLAVE,idle,352,1,5000,0,30000,yes,self,always,0,,,,,,,
+
 // Meister ABR's (Automated Battle Robot)
 20834,ABR_BATTLE_WARIOR@ABR_BATTLE_BUSTER,chase,8601,1,10000,500,5000,yes,target,always,0,,,,,,,
 20834,ABR_BATTLE_WARIOR@ABR_BATTLE_BUSTER,attack,8601,1,10000,500,5000,yes,target,always,0,,,,,,,

+ 46 - 0
db/re/quest_db.yml

@@ -1286,15 +1286,61 @@ Body:
   - Id: 3406
     Title: Dragon Monster Hunt - Standby
     TimeLimit: 4h
+  - Id: 3407
+    Title: The Fishing Rod of the Missing Person
+  - Id: 3408
+    Title: Procurement of Abyssal Essence
+  - Id: 3409
+    Title: Vortex leading to the Deep Sea
+  - Id: 3410
+    Title: Sirud to the Surface
+  - Id: 3411
+    Title: Defeating Deep Sea Creatures
+    Targets:
+      - Mob: ILL_SROPHO
+        Count: 10
+      - Mob: ILL_MARSE
+        Count: 10
+      - Mob: ILL_DEVIACE
+        Count: 10
+  - Id: 3412
+    Title: Collect Abyssal Essence
+  - Id: 3413
+    Title: Collect Abyssal Essence - Daily
   - Id: 3414
     Title: Collect Abyssal Essence - Standby
     TimeLimit: 4h
+  - Id: 3415
+    Title: Defeat Deep Sea Creatures in the Upper Layers - Daily
+    Targets:
+      - Mob: ILL_SROPHO
+        Count: 10
+      - Mob: ILL_MARSE
+        Count: 10
+      - Mob: ILL_DEVIACE
+        Count: 10
   - Id: 3416
     Title: Defeat Deep Sea Creatures in the Upper Layers - Standby
     TimeLimit: 4h
+  - Id: 3417
+    Title: Defeat Deep Sea Creatures in the Lower Layers - Daily
+    Targets:
+      - Mob: ILL_SWORD_FISH
+        Count: 10
+      - Mob: ILL_PHEN
+        Count: 10
+      - Mob: ILL_KING_DRAMOH
+        Count: 10
   - Id: 3418
     Title: Defeat Deep Sea Creatures in the Lower Layers - Standby
     TimeLimit: 4h
+  - Id: 3419
+    Title: Defeat Deep Sea fishmen in the Lower Layers - Daily
+    Targets:
+      - Mob: ILL_SEDORA
+        Count: 15
+      - Mob: ILL_STROUF
+        Count: 15
   - Id: 3420
     Title: Defeat Deep Sea fishmen in the Lower Layers - Standby
     TimeLimit: 4h

+ 1 - 0
npc/re/merchants/barters.yml

@@ -56,3 +56,4 @@ Footer:
   - Path: npc/re/merchants/barters/enchantgrade.yml
   - Path: npc/re/merchants/barters/cashmall.yml
   - Path: npc/re/merchants/barters/rgsr_in.yml
+  - Path: npc/re/merchants/barters/enchan_illusion_16_2.yml

+ 231 - 0
npc/re/merchants/barters/enchan_illusion_16_2.yml

@@ -0,0 +1,231 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2023 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Barter Database
+###########################################################################
+#
+# Barter Settings
+#
+###########################################################################
+#  - Name               NPC name.
+#    Map                Map name. (Default: not on a map)
+#    X                  Map x coordinate. (Default: 0)
+#    Y                  Map y coordinate. (Default: 0)
+#    Direction          Direction the NPC is looking. (Default: North)
+#    Sprite             Sprite name of the NPC. (Default: FakeNpc)
+#    Items:             List of sold items.
+#      - Index          Index of the item inside the shop. (0-...)
+#                       Maximum index depends on client.
+#        Item           Aegis name of the item.
+#        Stock          Amount of item in stock. 0 means unlimited. (Default: 0)
+#        Zeny           Cost of them item in Zeny. (Default: 0)
+#        RequiredItems: List of required items (Optional)
+#          - Index      Index of the required item. (0-4)
+#            Item       Aegis name of required item.
+#            Amount     Amount of required item. (Default: 1)
+#            Refine     Refine level of required item. (Default: 0)
+###########################################################################
+
+Header:
+  Type: BARTER_DB
+  Version: 1
+
+Body:
+  - Name: barter_ill_underwater
+    Items:
+      - Index: 0
+        Item: Electric_Eel_IL
+        RequiredItems:
+          - Index: 0
+            Item: Electric_Eel
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Starfish
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 1
+        Item: Electronic_Guitar_IL
+        RequiredItems:
+          - Index: 0
+            Item: Electronic_Guitar
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Starfish
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 2
+        Item: Brionac_IL
+        RequiredItems:
+          - Index: 0
+            Item: Brionac
+            Refine: 9
+          - Index: 1
+            Item: Deepsea_Fish_Tail
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 3
+        Item: KatarOfCold_Icicle_IL
+        RequiredItems:
+          - Index: 0
+            Item: Katar_Of_Cold_Icicle_
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Crab
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 4
+        Item: Death_Guidance_IL
+        RequiredItems:
+          - Index: 0
+            Item: Death_Guidance
+            Refine: 9
+          - Index: 1
+            Item: Rotten_Deepseafish
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 5
+        Item: Zephyrus_IL
+        RequiredItems:
+          - Index: 0
+            Item: Zephyrus_
+            Refine: 9
+          - Index: 1
+            Item: Abysmal_Clam
+            Amount: 150
+          - Index: 2
+            Item: IllusionStone
+            Amount: 120
+      - Index: 6
+        Item: Saint_Robe_IL
+        RequiredItems:
+          - Index: 0
+            Item: Saint_Robe_
+            Refine: 9
+          - Index: 1
+            Item: Deepsea_Fish_Tail
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 20
+          - Index: 3
+            Item: IllusionStone
+            Amount: 90
+      - Index: 7
+        Item: Water_Sprits_Armor_IL
+        RequiredItems:
+          - Index: 0
+            Item: Water_Sprits_Armor_
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Crab
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 20
+          - Index: 3
+            Item: IllusionStone
+            Amount: 90
+      - Index: 8
+        Item: Chain_Mail_IL
+        RequiredItems:
+          - Index: 0
+            Item: Chain_Mail_
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Starfish
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 20
+          - Index: 3
+            Item: IllusionStone
+            Amount: 90
+      - Index: 9
+        Item: Morrigane_Helm_IL
+        RequiredItems:
+          - Index: 0
+            Item: Morrigane's_Helm
+            Refine: 9
+          - Index: 1
+            Item: Deep_Sea_Crab
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 50
+          - Index: 3
+            Item: IllusionStone
+            Amount: 100
+      - Index: 10
+        Item: Morrigane_Manyeau_IL
+        RequiredItems:
+          - Index: 0
+            Item: Morrigane's_Manteau
+            Refine: 9
+          - Index: 1
+            Item: Rotten_Deepseafish
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 50
+          - Index: 3
+            Item: IllusionStone
+            Amount: 100
+      - Index: 11
+        Item: Morrigane_Belt_IL
+        RequiredItems:
+          - Index: 0
+            Item: Morrigane's_Belt
+          - Index: 1
+            Item: Deepsea_Fish_Tail
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 50
+          - Index: 3
+            Item: IL_Kraken_Leg
+            Amount: 15
+          - Index: 4
+            Item: IllusionStone
+            Amount: 100
+      - Index: 12
+        Item: Morrigane_Pendant_IL
+        RequiredItems:
+          - Index: 0
+            Item: Morrigane's_Pendant
+          - Index: 1
+            Item: Abysmal_Clam
+            Amount: 100
+          - Index: 2
+            Item: E_Abyss1
+            Amount: 50
+          - Index: 3
+            Item: Crown_Of_Witch
+            Amount: 15
+          - Index: 4
+            Item: IllusionStone
+            Amount: 100

+ 30 - 0
npc/re/merchants/enchan_illusion_16_2.txt

@@ -12,6 +12,7 @@
 //= 1.3 Added Illusion of Frozen enchanter [Capuche]
 //= 1.4 Added Illusion of Turtle enchanter [Capuche]
 //= 1.5 Added Illusion of Luanda enchanter [Capuche]
+//= 1.6 Added Illusion of Underwater exchange [Capuche]
 //============================================================
 
 //============================================================
@@ -1645,3 +1646,32 @@ S_Data:
 	}
 	return (.@size/2);
 }
+
+
+//============================================================
+//= Illusion of Underwater
+//============================================================
+
+iz_d04_i,134,228,4	script	Horen#Horen	4_M_BIBI,{
+	if (checkweight(1201,3) == 0) {
+		mes "Conversation cannot proceed because you have too many items.";
+		mes "Please clean up your inventory and try again.";
+		close;
+	}
+	mes "[Horen]";
+	mes "Hello. If you have rare materials from this place, I can enhance your equipment.";
+	next;
+	mes "[Horen]";
+	mes "Would you like to see upgradeable equipment?";
+	next;
+	if (select( "Yes", "No" ) == 2) {
+		mes "[Horen]";
+		mes "Come back if interested.";
+		close;
+	}
+	mes "[Horen]";
+	mes "There are many types, so take your time. If you want something, I can enhance it right away.";
+	close2;
+	callshop( "barter_ill_underwater" );
+	end;
+}

+ 76 - 0
npc/re/mobs/dungeons/iz_dun.txt

@@ -12,6 +12,7 @@
 //= 1.3 Added Izlude Dungeon F6 spawns [Chilly]
 //= 1.4 Official F6 spawns.
 //= 1.5 Correct Spawn by Navigation's mob data. [attackjom]
+//= 1.6 Added Illusion of Underwater. [Capuche]
 //============================================================
 
 //==================================================
@@ -119,3 +120,78 @@ iz_dun05,0,0	monster	Sedora	2204,60,5000
 iz_dun05,0,0	monster	Pot Dofle	2203,30,5000
 iz_dun05,0,0	monster	King Dramoh	2198,25,5000
 iz_dun05,0,0,0,0	boss_monster	Kraken	2202,1,7200000,1800000,0
+
+//==================================================
+// Illusion of Underwater
+//==================================================
+iz_d04_i	monster	Deep Sea Sropho	20801,45,5000,0,"iz_d04_i_boss::OnMobDead"
+iz_d04_i	monster	Deep Sea Obeaune	20802,45,5000,0,"iz_d04_i_boss::OnMobDead"
+iz_d04_i	monster	Deep Sea Merman	20805,45,5000,0,"iz_d04_i_boss::OnMobDead"
+iz_d04_i	monster	Deep Sea Marse	20804,45,5000,0,"iz_d04_i_boss::OnMobDead"
+iz_d04_i	monster	Deep Sea Deviace	20803,45,5000,0,"iz_d04_i_boss::OnMobDead"
+
+-	script	iz_d04_i_boss	-1,{
+	end;
+OnMobDead:
+	if (playerattached()) {
+		if (.count < 1500)	// todo value ?
+			.count++;
+		if (!.boss_spawn && !.cooldown && .count == 1500) {
+			.boss_spawn = true;
+			.count = 0;
+			killmonster "iz_d04_i", "iz_d04_i_boss::OnBossDeath";
+			// mapannounce "iz_d04_i", "", bc_map;	// todo
+			getunitdata( killedgid, .@data );
+			monster "iz_d04_i", .@data[UMOB_X], .@data[UMOB_Y], "--ja--", 20811,1, "iz_d04_i_boss::OnBossDeath";	// ILL_KRAKEN
+			end;
+		}
+	}
+	end;
+OnBossDeath:
+	killmonster "iz_d04_i", "iz_d04_i_boss::OnBossDeath";
+	.boss_spawn = false;
+	.cooldown = true;
+	initnpctimer;
+	end;
+
+OnTimer7200000:
+	.cooldown = false;
+	stopnpctimer;
+	end;
+}
+
+iz_d05_i	monster	Deep Sea Strouf	20808,45,5000,0,"iz_d05_i_boss::OnMobDead"
+iz_d05_i	monster	Deep Sea Swordfish	20807,45,5000,0,"iz_d05_i_boss::OnMobDead"
+iz_d05_i	monster	Deep Sea Phen	20809,45,5000,0,"iz_d05_i_boss::OnMobDead"
+iz_d05_i	monster	Deep Sea Sedora	20806,45,5000,0,"iz_d05_i_boss::OnMobDead"
+iz_d05_i	monster	Deep Sea King Dramoh	20810,45,5000,0,"iz_d05_i_boss::OnMobDead"
+
+-	script	iz_d05_i_boss	-1,{
+	end;
+OnMobDead:
+	if (playerattached()) {
+		if (.count < 1500)	// todo value ?
+			.count++;
+		if (!.boss_spawn && !.cooldown && .count == 1500) {
+			.boss_spawn = true;
+			.count = 0;
+			killmonster "iz_d05_i", "iz_d05_i_boss::OnBossDeath";
+			// mapannounce "iz_d05_i", "", bc_map;	// todo
+			getunitdata( killedgid, .@data );
+			monster "iz_d05_i", .@data[UMOB_X], .@data[UMOB_Y], "--ja--", 20843,1, "iz_d05_i_boss::OnBossDeath";	// ILL_ABYSMAL_WITCH
+			end;
+		}
+	}
+	end;
+OnBossDeath:
+	killmonster "iz_d05_i", "iz_d05_i_boss::OnBossDeath";
+	.boss_spawn = false;
+	.cooldown = true;
+	initnpctimer;
+	end;
+
+OnTimer7200000:
+	.cooldown = false;
+	stopnpctimer;
+	end;
+}

+ 1369 - 0
npc/re/quests/quests_16_2_illusion.txt

@@ -12,6 +12,7 @@
 //= 1.3 Added Illusion of Frozen [Capuche]
 //= 1.4 Added Illusion of Turtle [Capuche]
 //= 1.5 Added Illusion of Luanda [Capuche]
+//= 1.6 Added Illusion of Underwater [Capuche]
 //============================================================
 
 //============================================================
@@ -8710,3 +8711,1371 @@ S_MenuHunt:
 	}
 	return .@menu$;
 }
+
+
+//============================================================
+//= Illusion of Underwater
+//============================================================
+prt_elib,57,18,4	script	Jerrymon#jerry	1_M_01,{
+	if (ill_underwater == 0) {
+		mes "[Jerrymon]";
+		mes "Um... Uhm...";
+		next;
+		mes "[Jerrymon]";
+		mes "Oh, what a surprise!!";
+		next;
+		mes "[Jerrymon]";
+		mes "What's up? I'm busy right now, so I'll talk to you later.";
+		close;
+	}
+	if (ill_underwater == 1) {
+		mes "[Jerrymon]";
+		mes "Um... Uhm...";
+		next;
+		mes "[Jerrymon]";
+		mes "Oh, what a surprise!!";
+		next;
+		mes "[Jerrymon]";
+		mes "What's up? I'm a bit busy right now...";
+		next;
+		mes "[Jerrymon]";
+		mes "Ah, you're the one introduced by Raket. I've been waiting for you.";
+		mes "Can you show me your fishing rod?";
+		next;
+		mes "- Jerrymon began to examine the rod closely. -";
+		next;
+		mes ".";
+		next;
+		mes "..";
+		next;
+		mes "...";
+		next;
+		mes "....";
+		next;
+		mes ".....";
+		next;
+		mes "[Jerrymon]";
+		mes "Yes, that's right... this substance is just that... to discover it again like this...";
+		next;
+		select( "What material are you talking about?" );
+		mes "[Jerrymon]";
+		mes "Adventurer, do you know where the deepest part of the sea is?";
+		next;
+		select( "Well...??" );
+		mes "[Jerrymon]";
+		mes "It is a place called the ^4d4dffTrench^000000. To put it simply, you can think of it as a deep cliff in the sea.";
+		next;
+		mes "[Jerrymon]";
+		mes "It is known that there are hundreds of different types of trenches in the world's oceans.";
+		next;
+		mes "[Jerrymon]";
+		mes "The widest and deepest known trench is the ^4d4dffBahia Trench^000000 near Izlude.";
+		next;
+		mes "[Jerrymon]";
+		mes "There are rare life forms at the bottom of the trench, and marine scientists like myself have shown great interest and have been exploring them.";
+		next;
+		mes "[Jerrymon]";
+		mes "Though shallow trenches can be explored to some extent.";
+		next;
+		mes "[Jerrymon]";
+		mes "But in the case of the Bahia Trench, scientists have calculated that scientifically, no life can exist because it is so incredibly deep.";
+		next;
+		mes "[Jerrymon]";
+		mes "I recently found out that there is life in the Bahia Trench.";
+		next;
+		select( "How do you know that??" );
+		mes "[Jerrymon]";
+		mes "You can tell by the stone that contains my magic.";
+		next;
+		select( "A stone with magical power?" );
+		mes "[Jerrymon]";
+		mes "Yes, I'm a mage-turned-oceanographer. I learned magic for oceanography.";
+		next;
+		mes "[Jerrymon]";
+		mes "Enchant a large boulder and make it fall to the floor where the trench exists.";
+		next;
+		mes "[Jerrymon]";
+		mes "The magic on the dropped stone is connected to me, so by measuring the distance, I can get a little idea of how deep it is and what's going on near the stone.";
+		next;
+		mes "[Jerrymon]";
+		mes "To tell you what I found out...";
+		next;
+		mes "[Jerrymon]";
+		mes "The composition of normal sea water and deep sea water is almost the same. But the only difference is the deep sea of Bahia Trench.";
+		next;
+		mes "[Jerrymon]";
+		mes "Should I say it's like water and oil? There's a section where they never mix.";
+		next;
+		mes "[Jerrymon]";
+		mes "A strong boundary was formed where they meet each other, and it felt as if the deep seawater in that section was desperately blocking the seawater coming down from above.";
+		next;
+		mes "[Jerrymon]";
+		mes "The water pressure is also much lower than that of normal seawater, so it is assumed that it has a favorable environment for life.";
+		next;
+		mes "[Jerrymon]";
+		mes "We call it ^4d4dffdeep seawater^000000";
+		next;
+		select( "Is this gloss related to what you said?" );
+		mes "[Jerrymon]";
+		mes "Yes! That's right!!";
+		mes "We only identified the existence of Abyssal Seawater deep in the Bahia Trench, and it was very difficult to obtain samples. This fishing rod has a lot of Abyssal Seawater on it...";
+		next;
+		mes "[Jerrymon]";
+		mes "Could you leave this fishing rod with me? I think I can figure something out if I extract this sea water and turn it into essence.";
+		next;
+		mes "[Jerrymon]";
+		mes "Oh, and I heard that the fishing rod was found today. Can I ask you to check if there is another floating substance in the nearby sea?";
+		next;
+		if (select( "Okay, I'll be back.", "I'm a bit busy right now..." ) == 2) {
+			mes "[Jerrymon]";
+			mes "Please come back to me when you're done!";
+			close;
+		}
+		mes "[Jerrymon]";
+		mes "Yes, thanks! I'll be waiting for you!!";
+		close2;
+		if (countitem(25898) > 0)
+			delitem 25898,1;	// Siroods_Fish_Rod
+		ill_underwater = 2;
+		erasequest 3407;
+		end;
+	}
+	if (ill_underwater == 2) {
+		mes "[Jerrymon]";
+		mes "I'm sorry to bother you, but please. I'll be waiting for you here.";
+		close;
+	}
+	if (ill_underwater == 3) {
+		if (countitem(25899) < 1) {
+			mes "[Jerrymon]";
+			mes "I'm sorry to bother you, but please. I'll be waiting for you here.";
+			close;
+		}
+		mes "[Jerrymon]";
+		mes "Ah, welcome, adventurer!";
+		next;
+		mes "[Jerrymon]";
+		mes "The investigation is going smoothly~";
+		mes "Hey, could you take a look at this?";
+		next;
+		mes "[Jerrymon]";
+		mes "See those two little water bottles here?";
+		next;
+		mes "[Jerrymon]";
+		mes "One side is normal seawater, and the other side is seawater mixed with seawater from the abyss buried in fishing rods. I'll try mixing these two.";
+		next;
+		mes " - Jerrymon poured both waters into one bottle and began to shake them together. - ";
+		next;
+		mes "[Jerrymon]";
+		mes "Now, look. As I said before, they don't mix at all, do they?";
+		next;
+		mes "[Jerrymon]";
+		mes "This... this!!";
+		next;
+		mes "[Jerrymon]";
+		mes "If you shake it like crazy!!";
+		next;
+		mes "[Jerrymon]";
+		mes "<FONT COLOR = E68F8F><FONT SIZE = 16><B>Wow!!!!!!</FONT></FONT></B>";
+		next;
+		mes "[Jerrymon]";
+		mes "<FONT COLOR = E68F8F><FONT SIZE = 16><B>Uwachachaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!!!!!!</FONT></FONT></B>";
+		next;
+		mes "[Jerrymon]";
+		mes "<FONT COLOR = E68F8F><FONT SIZE = 16><B>Ahhhhhhh!!!!!!</FONT></FONT></B>";
+		next;
+		mes "[Jerrymon]";
+		mes "Ahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh...";
+		next;
+		select( "Oh, I'm going to catch someone, is it okay?" );
+		mes "[Jerrymon]";
+		mes "Keep... Whoa... Whoa... OK now.";
+		next;
+		mes "- Looking into the bottle Jerrymon is holding, I can clearly see the shape of the vortex. - ";
+		next;
+		mes "[Jerrymon]";
+		mes "Now, do you see this whirlpool!! This is the passage that connects to the bottom of the Bahia Trench!";
+		next;
+		select( "??? Isn't that just a whirlpool created by shaking it?" );
+		mes "[Jerrymon]";
+		mes "No. This is the stone that contains my magical power. Let's look at it.";
+		next;
+		mes " - Jerrymon put a glowing stone into the bottle. The glowing stone was sucked into the whirlpool inside the bottle and disappeared without a trace! - ";
+		next;
+		select( "No, how could it be?" );
+		mes "[Jerrymon]";
+		mes "Did I ever tell you that the stone that contains my magic can measure the distance to me?";
+		next;
+		mes "[Jerrymon]";
+		mes "It feels the same as the last time I threw a pebble into the Bahia Trench..";
+		mes "If you follow this whirlpool, you may be able to find the owner of the fishing rod.";
+		next;
+		mes "[Jerrymon]";
+		mes "The problem is... the amount of essence on a fishing rod can't make a whirlpool large enough for a person to fit in.";
+		next;
+		select( "Is this amount okay?" );
+		mes "- Showed the ^4d4dff" + getitemname(25899) + "^000000 received from Gein to Jerrymon. - ";
+		next;
+		mes "[Jerrymon]";
+		mes "Oh, just in case, I actually found it!";
+		next;
+		mes "[Jerrymon]";
+		mes "With this amount, I think I can create a vortex of fissures that normal people can enter. You can pass it to me.";
+		next;
+		mes "[Jerrymon]";
+		mes "The place is too small to do this much here, so let's do it in Izlude. In order to get help from your friends.";
+		mes "Then see you in Izlude!!";
+		close2;
+		delitem 25899,1;	// E_Abyss1
+		ill_underwater = 4;
+		erasequest 3408;
+		setquest 3409;
+		end;
+	}
+	if (ill_underwater == 4) {
+		mes "[Jerrymon]";
+		mes "Then let's meet in Izlude!!";
+		close;
+	}
+	mes "[Jerrymon]";
+	mes "I'm sorry to bother you, but please. I'll be waiting for you here.";
+	close;
+
+OnInit:
+	// note: no questinfo for 3407
+	questinfo( QTYPE_QUEST2, QMARK_YELLOW, "isbegin_quest(3408) == 1" );
+	end;
+}
+
+
+izlude,126,53,0	script	Sirood#SRD1	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	if (ill_underwater > 3)
+		cloakoffnpcself( "Jerrymon#jerry2" );
+	if (ill_underwater > 6)
+		cloakoffnpcself( "Sirood#SRD2" );
+	end;
+}
+izlude,132,54,0	duplicate(Sirood#SRD1)	Jerrymon#jerry1	HIDDEN_WARP_NPC,4,4
+
+izlude,126,53,4	script	Sirood#SRD2	1_M_04,{
+	mes "[Sirood]";
+	mes "Thank you very much, adventurer.";
+	next;
+	mes "[Sirood]";
+	mes "I thought I'd never come back...";
+	close;
+}
+
+izlude,129,49,4	script	Soup#Soup	1_M_02,{
+	if (ill_underwater < 5) {
+		mes "[Soup]";
+		mes "Hello, my name is Soup, a friend of Sirood who is missing.";
+		next;
+		mes "[Soup]";
+		mes "The four of us, Sirood, Raket, Gein, and I often enjoyed fishing.";
+		next;
+		mes "[Soup]";
+		mes "That windy day... I had been feeling very guilty for not stopping Sirood from going fishing.";
+		next;
+		mes "[Soup]";
+		mes "When I heard that Sirood's fishing pole was found, I jumped out.";
+		next;
+		mes "[Soup]";
+		mes "You must have a clue about something?";
+		close;
+	}
+	if (ill_underwater < 7) {
+		mes "[Soup]";
+		mes "I did my best.";
+		next;
+		mes "[Soup]";
+		mes "Should Sirood come back safely?";
+		close;
+	}
+	mes "[Soup]";
+	mes "Sirood is back with us.";
+	next;
+	mes "[Soup]";
+	mes "Thanks to you, adventurer. Thank you very much.";
+	close;
+}
+
+izlude,135,51,4	script	Raket#Raket	1_F_MERCHANT_01,{
+	if (ill_underwater < 5) {
+		mes "[Raket]";
+		mes "It's been exactly 3 months since Sirood went missing.";
+		next;
+		mes "[Raket]";
+		mes "Sirood's fishing rod was found.";
+		next;
+		mes "[Raket]";
+		mes "I felt that way.";
+		next;
+		select( "What do you think?" );
+		mes "[Raket]";
+		mes "Why is this only discovered now, isn't this a message from someone?";
+		next;
+		select( "Looking at it, it doesn't make sense." );
+		mes "[Raket]";
+		mes "Ha... It's just my delusion. I especially miss that child today.";
+		close;
+	}
+	if (ill_underwater < 7) {
+		mes "[Raket]";
+		mes "Heh heh... It's so hard to use all your strength...";
+		next;
+		mes "[Raket]";
+		mes "But for Sirood's sake...";
+		close;
+	}
+	mes "[Raket]";
+	mes "Thank you so much!!";
+	next;
+	mes "[Raket]";
+	mes "Now you can fish with Sirood again.";
+	next;
+	mes "[Raket]";
+	mes "I'm so glad...";
+	close;
+}
+
+izlude,132,49,5	script	Gein#Gein	4W_M_01,{
+	if (checkweight(1201,3) == 0) {
+		mes "You have too many items.";
+		mes "Please clean up your items and try again.";
+		close;
+	}
+	if (BaseLevel < 140) {
+		mes "[Gein]";
+		mes "Haha... why did this only get discovered now??";
+		mes "It's impossible, this is...";
+		next;
+		mes "- I feel serious anguish from this person. Let's come back after I've become level 140. -";
+		close;
+	}
+	if (ill_underwater == 0) {
+		mes "[Gein]";
+		mes "Haha...why did this only get discovered now??";
+		mes "It's impossible, this is...";
+		next;
+		select( "Do you have any concerns?" );
+		mes "[Gein]";
+		mes "Oh, hello...";
+		next;
+		mes "- He is very fidgety with a fishing pole in his hand. It doesn't look like he's out fishing. - ";
+		next;
+		mes "[Gein]";
+		mes "This fishing rod belongs to my friend <FONT COLOR = 4D4DFF><FONT SIZE = 16><B>Sirood</FONT></FONT></B> who went missing three months ago. I found something!!!";
+		next;
+		select( "Disappeared?" );
+		mes "[Gein]";
+		mes "Yes... Sirood is a fishing fanatic and came here to fish whenever he had a chance.";
+		next;
+		mes "[Gein]";
+		mes "Influenced by Sirood, we also fell in love with fishing, and the four of us often had a good time.";
+		next;
+		mes "[Gein]";
+		mes "Sirood's passion for fishing was to the point that he invited us to go fishing even in the rain and wind.";
+		next;
+		mes "[Gein]";
+		mes "The day Sirood went missing was exactly the same rainy and windy day. I put on my raincoat and went to go fishing.";
+		next;
+		mes "[Gein]";
+		mes "We were invited to go out together, but they all declined.";
+		next;
+		mes "[Gein]";
+		mes "Sirood went fishing alone and we haven't seen him since...";
+		next;
+		mes "[Gein]";
+		mes "I should have stopped you from leaving...";
+		next;
+		mes "- Gein started talking again after wiping away tears for a moment. -";
+		next;
+		mes "[Gein]";
+		mes "The news of Sirood's disappearance immediately spread throughout Izlude and a large-scale search was conducted with a lot of time and manpower invested, but the search ended without finding any clues.";
+		next;
+		mes "[Gein]";
+		mes "After that, we got together and ran everywhere to find Sirood, but there was no result, and we were about to give up.";
+		next;
+		mes "[Gein]";
+		mes "But just now!!";
+		next;
+		mes "[Gein]";
+		mes "After 3 months!!!";
+		next;
+		mes "[Gein]";
+		mes "Sirood's fishing pole has risen above sea level. His item was nowhere to be found during the search!";
+		next;
+		select( "Now, calm down... Are you sure it's Sirood's fishing rod?" );
+		mes "[Gein]";
+		mes "Yes, I'm sure! It's the fishing rod I've always seen.";
+		next;
+		mes "[Gein]";
+		mes "This fishing rod was made by Sirood himself, so it is the only one. You can see the initials on the handle here, S.R.D!!";
+		next;
+		select( "Oh, then why now..." );
+		mes "[Gein]";
+		mes "I'm so surprised and shocked right now that I don't know what to do.";
+		next;
+		mes "- But looking closely at the fishing rod, I feel something different. This wooden fishing rod has been submerged in water for 3 months, but it still looks the same, and I can see a bit of shiny gloss... -";
+		next;
+		select( "Isn't this fishing rod a bit strange over there?" );
+		mes "[Gein]";
+		mes "Strange, what is it?";
+		next;
+		mes "[Gein]";
+		mes "Uh...";
+		next;
+		mes "[Gein]";
+		mes "Uh.....??";
+		next;
+		mes "[Gein]";
+		mes "It's been submerged in water for 3 months... but it hasn't corroded at all. It's completely fine??";
+		next;
+		mes "[Gein]";
+		mes "Hmm... And it seems to have a subtle glow... It seems like the fishing rod is coated?";
+		next;
+		mes "-The person who seemed to be Gein's friend who was listening to the story opened his mouth. -";
+		next;
+		mes "[Raket]";
+		mes "Where is it, I want to see it!! What's wrong??";
+		next;
+		mes "[Gein]";
+		mes "This fishing rod... It was submerged in the water for 3 months, but it was found in its original form, or worse, in a state of disrepair.";
+		next;
+		mes "[Raket]";
+		mes "Ugh...";
+		next;
+		mes "[Raket]";
+		mes "Um...";
+		next;
+		mes "- Raket looked intently at his fishing pole, then answered Gein. -";
+		next;
+		mes "[Raket]";
+		mes "I'm not sure either?";
+		next;
+		mes "[Gein]";
+		mes "Certainly!! I don't know, but would you?";
+		next;
+		mes "[Raket]";
+		mes "Ummm... but I know someone who might know a little about this rod.";
+		next;
+		mes "[Gein]";
+		mes "Who??";
+		next;
+		select( "Who?" );
+		mes "[Raket]";
+		mes "His name is <FONT COLOR = 4D4DFF><FONT SIZE = 16><B>Jerrymon</FONT></FONT></B>, a marine scientist. I've met my father a few times. I know you are in the East Library of Prontera.";
+		next;
+		mes "[Gein]";
+		mes "Ah, ah... then... hey adventurer!! I'm sorry for the first meeting, but can I ask you a favor?? We can't get out of here in Izlude...";
+		next;
+		mes "[Gein]";
+		mes "Please go see Jerrymon and show him this fishing rod...even if it's trivial...I hope he has some information..";
+		next;
+		if (select( "Okay. Let's go.", "Sorry. I'm a bit busy right now..." ) == 2) {
+			mes "[Gein]";
+			mes "No... are you sure?";
+			next;
+			mes "[Gein]";
+			mes "Are you turning around after hearing about this heartbreaking story and mysterious clue...";
+			close;
+		}
+		mes "[Gein]";
+		mes "Ugh... Thanks!";
+		next;
+		mes "[Gein]";
+		mes "^4d4dffJerrymon^000000 should still be at the <NAVI>[East Library]<INFO>prontera,192,264,</INFO></NAVI> in Prontera.";
+		next;
+		mes "[Gein]";
+		mes "Now, I'll give you the fishing rod, a keepsake from Sirood. Thank you...";
+		next;
+		mes "[Raket]";
+		mes "What??? It's a keepsake!! You don't even know if Sirood is alive or dead!!";
+		next;
+		mes "[Gein]";
+		mes "Uhhh... yes I made a mistake, this is the fishing rod Sirood left behind. Please take good care of it.";
+		next;
+		mes "[Raket]";
+		mes "I'll tell Jerrymon about the contents in advance through my father!";
+		next;
+		mes "[Gein & Raket & Soup]";
+		mes "Thank you!!!";
+		close2;
+		getitem 25898,1;	// Siroods_Fish_Rod
+		ill_underwater = 1;
+		setquest 3407;
+		end;
+	}
+	if (ill_underwater == 1) {
+		mes "[Gein]";
+		mes "You can go to Prontera's <NAVI>[East Library]<INFO>prontera,192,264,</INFO></NAVI> as Raket told you.";
+		next;
+		mes "[Gein]";
+		mes "Take care of yourself!! I hope there is even the smallest clue...";
+		close;
+	}
+	if (ill_underwater == 2) {
+		mes "[Gein]";
+		mes "Ah, you're here!!!";
+		next;
+		mes "[Gein]";
+		mes "Do you have any information about Sirood?";
+		next;
+		mes "- I relayed what I heard from Jerrymon. -";
+		next;
+		mes "[Gein]";
+		mes "Ah... I see, I've never heard of a trench before.";
+		next;
+		mes "[Gein]";
+		mes "I can't believe there's such a big and deep trench near Izlude...";
+		next;
+		mes "[Gein]";
+		mes "Oh, by the way, is there anything else you need for coming back here?";
+		next;
+		select( "I was wondering if there was anything else found besides the fishing rod." );
+		mes "[Gein]";
+		mes "Oh right!!";
+		next;
+		mes "[Gein]";
+		mes "It's a chunk scooped up with a landing net near where the fishing rod was found.";
+		next;
+		mes " - This lump is what Jerrymon said.";
+		mes "^4d4dffIt must be the essence of the abyss^000000. - ";
+		next;
+		mes "[Gein]";
+		mes "Something shiny and has the same feeling of Sirood's fishing rod, so I secured it for now.";
+		mes "Could this nugget help?";
+		next;
+		select( "Thanks, that would be a great help." );
+		mes "[Gein]";
+		mes "Are you going back to Jerrymon? Please be careful.";
+		close2;
+		getitem 25899,1;	// E_Abyss1
+		ill_underwater = 3;
+		setquest 3408;
+		end;
+	}
+	if (ill_underwater == 3) {
+		mes "[Gein]";
+		mes "I hope Sirood will appear in front of us intact, just as the fishing rod appeared intact...";
+		next;
+		mes "[Gein]";
+		mes "Please let me know if you have any new information!";
+		close;
+	}
+	if (ill_underwater < 7) {
+		mes "[Gein]";
+		mes "Heh...heh...Hello adventurer, heh...heh... I'm so tired I can't move...";
+		close;
+	}
+	mes "[Gein]";
+	mes "Thank you, adventurer.";
+	next;
+	mes "[Gein]";
+	mes "To be able to meet Sirood again is like a dream.";
+	close;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "ill_underwater == 0" );
+	questinfo( QTYPE_QUEST2, QMARK_YELLOW, "ill_underwater == 2" );
+	end;
+}
+
+izlude,132,54,4	script(CLOAKED)	Jerrymon#jerry2	1_M_01,{
+	if (ill_underwater < 4)
+		end;
+	if (ill_underwater == 4) {
+		mes "[Jerrymon]";
+		mes "Ah you're here!!";
+		next;
+		mes "[Jerrymon]";
+		mes "We are fully prepared while the adventurers are coming.";
+		next;
+		mes "- Gein gasps to say hello to his two friends. - ";
+		next;
+		mes "[Gein]";
+		mes "Ha ha ha ha ha ha ha ha ha ha ha ha ha ha ha... ah, welcome adventurer.";
+		next;
+		mes "[Gein]";
+		mes "I'm not sure what the principle is, but I stirred it diligently as Jerrymon-sama told me to!!";
+		next;
+		mes "[Raket & Soup]";
+		mes "Hee... hee... hee... ah... hello.";
+		next;
+		mes "[Jerrymon]";
+		specialeffect EF_MAP_MAGICZONE3;
+		mes "Okay, shall we begin?";
+		next;
+		mes "[Jerrymon]";
+		mes "The whirlpool will be created soon.";
+		next;
+		mes "[Jerrymon]";
+		mes "Hold my hand when I give you a signal!!";
+		next;
+		select( "No, wait. Are you leaving right now?" );
+		mes "[Jerrymon]";
+		mes "Yes, yes, go ahead and don't think about it! Just trust me~~!!";
+		next;
+		mes "[Jerrymon]";
+		mes "Okay now. Take my hand!";
+		next;
+		specialeffect EF_CASTSPIN2, AREA;
+		mes "[Jerrymon]";
+		mes "Wow! It spins round and round~~!!";
+		close2;
+		ill_underwater = 5;
+		erasequest 3409;
+		specialeffect EF_CASTSPIN2, AREA;
+		warp "iz_d04_i",130,227;
+		end;
+	}
+	mes "[Jerrymon]";
+	mes "Hello!!";
+	next;
+	mes "[Jerrymon]";
+	mes "Thanks to you, Adventurer, I am having a fun and exciting time every day.";
+	next;
+	mes "[Jerrymon]";
+	mes "Would you like to go to the deep sea again? I will follow you!!";
+	next;
+	if (select( "Please", "I'll go next time" ) == 2) {
+		mes "[Jerrymon]";
+		mes "Yeah... Then I'll be waiting for you.";
+		close;
+	}
+	mes "[Jerrymon]";
+	specialeffect EF_MAP_MAGICZONE3;
+	mes "Good.";
+	next;
+	specialeffect EF_CASTSPIN2;
+	mes "[Jerrymon]";
+	mes "Come on! Let's go~~!! Yay!!";
+	close2;
+	specialeffect EF_CASTSPIN2, AREA;
+	warp "iz_d04_i",130,227;
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(3409) == 1" );
+	end;
+}
+
+
+iz_d04_i,127,228,4	script	Jerrymon#jerry3	1_M_01,{
+	if (checkweight(1201,3) == 0) {
+		mes "You have too many items.";
+		mes "Please clean up your items and try again.";
+		close;
+	}
+	if (ill_underwater < 5)
+		end;
+	if (ill_underwater == 5) {
+		switch( checkquest(3411,HUNTING) ) {
+		case -1:
+			mes "[Jerrymon]";
+			mes "Wow... this purple sea... it's fantastic!!!";
+			next;
+			mes "[Jerrymon]";
+			mes "It's so amazing that we can breathe without gills, there's no sea pressure, and even marine life that I've never seen before...!!!";
+			next;
+			mes "[Jerrymon]";
+			mes "There's more than one or two things to look into, I'll be busy.";
+			mes "Wow... so exciting!!! I think this is the most thrilling moment in my 14 years as an oceanographer!";
+			next;
+			mes "[Jerrymon]";
+			mes "Lululala~~~";
+			next;
+			select( "Oh hey, I'm here to find Sirood..." );
+			mes "[Jerrymon]";
+			mes "Ah, ah... that, right? That should take precedence.";
+			next;
+			mes "[Jerrymon]";
+			mes "In order to bring Sirood back ashore, we need an additional ^4d4dff" + getitemname(25899) + "^000000. The question is how to get it...";
+			next;
+			mes "[Jerrymon]";
+			mes "I've been watching the deep sea creatures here, and I've seen some of them glow with the essence of the abyss.";
+			mes "And they seem to threaten us sometimes.";
+			next;
+			mes "[Jerrymon]";
+			mes "In that sense, could you handle some of the deep sea creatures? Maybe we can get ^4d4dff" + getitemname(25899) + "^000000 from them.";
+			next;
+			mes "[Jerrymon]";
+			mes "Please take out 10 each of ^4d4dff" + getmonsterinfo("ILL_SROPHO", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_DEVIACE", MOB_NAME) + "^000000, and ^4d4dff" + getmonsterinfo("ILL_MARSE", MOB_NAME) + "^000000.";
+			next;
+			if (select( "Okay", "I'll do it next time" ) == 2) {
+				mes "[Jerrymon]";
+				mes "Yes yes~ I'll be waiting for you here!";
+				close;
+			}
+			mes "[Jerrymon]";
+			mes "Yes yes~ I'll be waiting for you here!";
+			close2;
+			setquest 3411;
+			end;
+		case 0:
+		case 1:
+			mes "[Jerrymon]";
+			mes "Please take out 10 each of ^4d4dff" + getmonsterinfo("ILL_SROPHO", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_DEVIACE", MOB_NAME) + "^000000, and ^4d4dff" + getmonsterinfo("ILL_MARSE", MOB_NAME) + "^000000.";
+			next;
+			mes "[Jerrymon]";
+			mes "I'll be waiting for you here.";
+			close;
+		case 2:
+			mes "[Jerrymon]";
+			mes "Thank you for your hard work, you also brought ^4d4dff" + getitemname(25899) + "^000000!! As expected, my prediction was correct.";
+			next;
+			mes "[Jerrymon]";
+			mes "It looks like we only need about 10 ^4d4dff" + getitemname(25899) + "^000000 to send Sirood back ashore.";
+			next;
+			mes "[Jerrymon]";
+			mes "If you collect them, I'll create a whirlpool for you.";
+			next;
+			mes "[Jerrymon]";
+			mes "Oh, and this is a stone I found while researching. I've been keeping it because it looks like something that could be used by adventurers, so please take it.";
+			next;
+			mes "[Jerrymon]";
+			mes "Then be careful!";
+			close2;
+			getitem 25271,2;	// IllusionStone
+			ill_underwater = 6;
+			erasequest 3411;
+			setquest 3412;
+			getexp 4441860,3109150;
+			end;
+		}
+		end;
+	}
+	if (ill_underwater == 6) {
+		if (countitem(25899) < 10) {
+			mes "[Jerrymon]";
+			mes "Please bring ^4d4dff10 " + getitemname(25899) + "^000000.";
+			next;
+			mes "[Jerrymon]";
+			mes "I'd like to save it myself, but as you can see I'm weak, heck.";
+			close;
+		}
+		mes "[Jerrymon]";
+		mes "Thank you for your hard work!! You brought 10 ^4d4dff" + getitemname(25899) + "^000000.";
+		next;
+		mes "[Jerrymon]";
+		mes "Would you like to go ashore now?";
+		next;
+		if (select( "Go ashore", "Not going up now" ) == 2) {
+			mes "[Jerrymon]";
+			mes "Talk to me when you're ready to go ashore!";
+			close;
+		}
+		mes "[Jerrymon]";
+		mes "I found this again while waiting for adventurer. Please accept it!!";
+		next;
+		mes "[Jerrymon]";
+		mes "Okay, let's condense this...";
+		next;
+		mes "[Jerrymon]";
+		mes "Huh...!!";
+		next;
+		mes "[Jerrymon]";
+		mes "Now, Adventurer and Sirood!! Can you help me?? Ehhh!!!!";
+		next;
+		mes "- A huge whirlpool was created in front of Jerrymon! -";
+		specialeffect EF_MAP_MAGICZONE3;
+		next;
+		mes "[Jerrymon]";
+		mes "Then I'll cross first!!! Follow me carefully!";
+		specialeffect EF_CASTSPIN2;
+		close2;
+		delitem 25899,10;	// E_Abyss1
+		ill_underwater = 7;
+		erasequest 3412;
+		if (isbegin_quest(3410) == 1)
+			erasequest 3410;
+		getitem 25271,2;	// IllusionStone
+		getexp 4441860,3109150;
+		warp "izlude",128,54;
+		end;
+	}
+
+	// daily
+	if (checkquest(3414,PLAYTIME) == 2 && checkquest(3416,PLAYTIME) == 2) {
+		mes "[Jerrymon]";
+		mes "I have everything I need for today's survey, thank you!!";
+		next;
+		mes "[Jerrymon]";
+		mes "Looks like you've finished your business. Would you like to move to Izlude?";
+		next;
+		if (select( "Move", "Do not move" ) == 2) {
+			mes "[Jerrymon]";
+			mes "Please let me know if you need any help!";
+			close;
+		}
+		specialeffect EF_MAP_MAGICZONE3;
+		mes "[Jerrymon]";
+		mes "Okay, huh!";
+		next;
+		mes "[Jerrymon]";
+		mes "I'm going to cross~~ Ah!!";
+		specialeffect EF_CASTSPIN2;
+		close2;
+		warp "izlude",128,54;
+		end;
+	}
+	mes "[Jerrymon]";
+	mes "Hello, research is going well.";
+	next;
+	mes "[Jerrymon]";
+	mes "If we do well, we might be able to make the vortex linking here and Izlude last forever!";
+	next;
+	mes "[Jerrymon]";
+	mes "So, can you help me a bit more?";
+	next;
+	mes "[Jerrymon]";
+	mes "I need more ^4d4dff" + getitemname(25899) + "^000000, and I'd like you to take care of the ^4d4dffDeep Sea Creatures^000000 that get in the way of my research.";
+	next;
+	switch( select( "Okay", "I'll do it next time", "I want to go back to Izlude" ) ) {
+	case 1:
+		mes "[Jerrymon]";
+		mes "Thanks!! Can you do something for me?";
+		next;
+
+		switch( checkquest(3414,PLAYTIME) ) {
+		case -1:
+			switch( isbegin_quest(3413) ) {
+			case 0:
+				.@menu$[0] = "Collect " + getitemname(25899) + "";
+				break;
+			case 1:
+				if (countitem(25899) < 10)
+					.@menu$[0] = "Collecting " + getitemname(25899) + " - In Progress";
+				else
+					.@menu$[0] = "Collect " + getitemname(25899) + " - Done";
+				break;
+			case 2:
+				end;
+			}
+			break;
+		case 0:
+		case 1:
+			.@menu$[0] = "^999999" + getitemname(25899) + " Collection - Pending^000000";
+			break;
+		case 2:
+			break;
+		}
+
+		switch( checkquest(3416,PLAYTIME) ) {
+		case -1:
+			switch( checkquest(3415,HUNTING) ) {
+			case -1:
+				.@menu$[1] = "Kill Deep Sea Creatures";
+				break;
+			case 0:
+			case 1:
+				.@menu$[1] = "Kill sea creatures - In Progress";
+				break;
+			case 2:
+				.@menu$[1] = "Kill Deep Sea Creatures - Done";
+				break;
+			}
+			break;
+		case 0:
+		case 1:
+			.@menu$[1] = "^999999Deep Sea Creatures Killed - Pending^000000";
+			break;
+		case 2:
+			break;
+		}
+
+		switch( select( .@menu$[0], .@menu$[1], "Next time." ) ) {
+		case 1:
+			switch( checkquest(3414,PLAYTIME) ) {
+			case -1:
+				break;
+			case 0:
+			case 1:
+				end;	// todo
+			case 2:
+				erasequest 3414;
+				break;
+			}
+			switch( isbegin_quest(3413) ) {
+			case 0:
+				mes "[Jerrymon]";
+				mes "^4d4dff" + getitemname(25899) + "^000000 can be obtained from all the deep sea creatures here.";
+				mes "I need 10 right now.";
+				next;
+				mes "[Jerrymon]";
+				mes "Then take care of yourself~~!!";
+				close2;
+				setquest 3413;
+				end;
+			case 1:
+				if (countitem(25899) < 10) {
+					mes "[Jerrymon]";
+					mes "I need 10 ^4d4dff" + getitemname(25899) + "^000000.";
+					next;
+					mes "[Jerrymon]";
+					mes "Come back to me when you've collected all the essences!";
+					close;
+				}
+				mes "[Jerrymon]";
+				mes "You've collected all the " + getitemname(25899) + "!!";
+				next;
+				mes "[Jerrymon]";
+				mes "Thank you, I'll put it to good use in my research.";
+				close2;
+				delitem 25899,10;	// E_Abyss1
+				getexp 4441860,3109150;
+				erasequest 3413;
+				setquest 3414;
+				getitem 25271,1;	// IllusionStone
+				end;
+			case 2:
+				end;
+			}
+			end;
+		case 2:
+			switch( checkquest(3416,PLAYTIME) ) {
+			case -1:
+				break;
+			case 0:
+			case 1:
+				end;	// todo
+			case 2:
+				erasequest 3416;
+				break;
+			}
+			switch( checkquest(3415,HUNTING) ) {
+			case -1:
+				mes "[Jerrymon]";
+				mes "Please kill 10 each of ^4d4dff" + getmonsterinfo("ILL_SROPHO", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_DEVIACE", MOB_NAME) + "^000000 and ^4d4dff" + getmonsterinfo("ILL_MARSE", MOB_NAME) + "^000000 that roam around here.";
+				next;
+				mes "[Jerrymon]";
+				mes "Then take care of yourself~~!!";
+				close2;
+				setquest 3415;
+				end;
+			case 0:
+			case 1:
+				mes "[Jerrymon]";
+				mes "Please kill 10 each of ^4d4dff" + getmonsterinfo("ILL_SROPHO", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_DEVIACE", MOB_NAME) + "^000000, and ^4d4dff" + getmonsterinfo("ILL_MARSE", MOB_NAME) + "^000000.";
+				close;
+			case 2:
+				mes "[Jerrymon]";
+				mes "You've finished dealing with all the deep sea creatures, thank you for your hard work.";
+				next;
+				mes "[Jerrymon]";
+				mes "I'll get back to you if I need help. Thanks!!";
+				close2;
+				getitem 25271,1;	// IllusionStone
+				getexp 4441860,3109150;
+				erasequest 3415;
+				setquest 3416;
+				end;
+			}
+			end;
+		case 3:
+			mes "[Jerrymon]";
+			mes "The only person I can ask for is you...";
+			next;
+			mes "[Jerrymon]";
+			mes "Feel free to tell me if you change your mind!!";
+			close;
+		}
+		end;
+	case 2:
+		mes "[Jerrymon]";
+		mes "I'll be staying here for a while, so let me know if you change your mind!!";
+		close;
+	case 3:
+		specialeffect EF_MAP_MAGICZONE3;
+		mes "[Jerrymon]";
+		mes "Okay, huh!";
+		next;
+		mes "[Jerrymon]";
+		mes "I'm going to cross~~ Ah!!";
+		specialeffect EF_CASTSPIN2;
+		close2;
+		warp "izlude",128,54;
+		end;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "ill_underwater == 5 && checkquest(3411,HUNTING) == -1" );
+	questinfo( QTYPE_QUEST2, QMARK_YELLOW, "ill_underwater == 5 && checkquest(3411,HUNTING) == 2" );
+	questinfo( QTYPE_QUEST2, QMARK_YELLOW, "isbegin_quest(3412) == 1 && countitem(25899) >= 10" );
+
+	// daily
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "ill_underwater == 7 && checkquest(3414,PLAYTIME) == -1 && isbegin_quest(3413) == 0" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "isbegin_quest(3413) == 1 && countitem(25899) >= 10" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3414,PLAYTIME) == 2" );
+
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "ill_underwater == 7 && checkquest(3416,PLAYTIME) == -1 && checkquest(3415,HUNTING) == -1" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3415,HUNTING) == 2" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3416,PLAYTIME) == 2" );
+	end;
+}
+
+
+iz_d04_i,134,223,4	script	Jane#Jane01	1_F_01,{
+	if (ill_underwater < 6) {
+		mes "[???]";
+		mes "Hello.";
+		next;
+		select( "Are you Sirood?" );
+		mes "[Jane]";
+		mes "No, my name is Jane.";
+		next;
+		mes "[Jane]";
+		mes "Sirood...?";
+		mes "I think I've heard that name somewhere...";
+		close;
+	}
+	mes "[Jane]";
+	mes "Hello, it looks like you've been here a while...";
+	next;
+	mes "[Jane]";
+	mes "How do you like it? Isn't this a pretty charming place too?";
+	next;
+	mes "[Jane]";
+	mes "I should go back to my hometown...";
+	close;
+}
+
+iz_d04_i,142,216,4	script	Sunrin#Sun01	4_F_03,{
+	if (ill_underwater < 6) {
+		mes "[???]";
+		mes "You said you were looking for someone named Sirood?";
+		next;
+		mes "[Sunrin]";
+		mes "My name is Sunrin.";
+		next;
+		mes "[Sunrin]";
+		mes "Sirood... ah, I think I know who it is.";
+		next;
+		mes "[Sunrin]";
+		mes "Go all the way to the left, and you'll find him.";
+		next;
+		mes "[Sunrin]";
+		mes "Then have a nice day today!!";
+		close;
+	}
+	mes "[Sunrin]";
+	mes "All the people here are immigrants and settlers.";
+	next;
+	mes "[Sunrin]";
+	mes "As you can see, there are traces of civilization in these depths, but everyone here was an outsider.";
+	next;
+	mes "[Sunrin]";
+	mes "You'll get used to it soon.";
+	next;
+	mes "[Sunrin]";
+	mes "Sea monsters do attack from time to time, but that's about it...";
+	close;
+}
+
+iz_d04_i,125,226,0	script	Sirood#SRD3	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	if (ill_underwater < 7 && isbegin_quest(3410) == 0)
+		cloakoffnpcself( "Sirood#SRD4" );
+	end;
+}
+
+iz_d04_i,125,226,5	script(CLOAKED)	Sirood#SRD4	1_M_04,{
+	if (ill_underwater != 5 && ill_underwater != 6)
+		end;
+	switch( isbegin_quest(3410) ) {
+	case 0:
+		mes "[Sirood]";
+		mes "Hello, Adventurer.";
+		next;
+		mes " - Sirood greeted me as if he had been waiting. -";
+		next;
+		mes "[Sirood]";
+		mes "It looks like the message I sent reached Izlude, I'm so glad...";
+		next;
+		mes "[Sirood]";
+		mes "About 3 months ago... I went fishing on a rainy and windy day.";
+		next;
+		mes "[Sirood]";
+		mes "After I caught my first fish, I tripped and fell into the water while trying to get it out with a fishing pole.";
+		next;
+		mes "[Sirood]";
+		mes "I was trying to swim as hard as I could to get out, but I felt something pulling me in with great force.";
+		next;
+		mes "[Sirood]";
+		mes "What, it looked like a whirlpool... I thought I was going to die... and when I woke up, I found this place.";
+		next;
+		mes "[Sirood]";
+		mes "I don't know why I can't breathe or why I don't feel hungry even if I don't eat.";
+		next;
+		mes "[Sirood]";
+		mes "And observing the surroundings here, I could see small vortices forming occasionally.";
+		next;
+		mes "[Sirood]";
+		mes "I had a hunch that it was the same kind of whirlpool I was swept into.";
+		next;
+		mes "[Sirood]";
+		mes "The duration of the vortex is very short. It took me 2 months just to put my fishing rod with my name on it into the vortex.";
+		next;
+		mes "[Sirood]";
+		mes "Waiting for someone to discover...";
+		next;
+		mes "[Sirood]";
+		mes "Are you sure you came to me with that fishing rod as a clue?";
+		next;
+		select( "That's right" );
+		mes "[Sirood]";
+		mes "Ah, that's a relief... I'd appreciate it if you could take me with you when you return ashore.";
+		next;
+		mes "- I think we should talk to Jerrymon about the work to send Sirood ashore. - ";
+		close2;
+		setquest 3410;
+		end;
+	case 1:
+		mes "[Sirood]";
+		mes "Adventurer, please take me with you when you return ashore.";
+		close;
+	case 2:
+		end;
+	}
+	end;
+}
+
+iz_d04_i,146,226,4	script	Nick#Nick01	2_M_SAGE_B,{
+	mes "[Nick]";
+	mes "How is it? Is it worth living here?";
+	next;
+	mes "[Nick]";
+	mes "It's deeper here than anywhere else, and it's amazing to be able to breathe freely.";
+	mes "I'm not sure how that works.";
+	close;
+}
+
+
+// Floor 2
+iz_d04_i,129,232,5	script	Gatekeeper#guard1	4_M_KY_SOLD,{
+	if (BaseLevel < 180) {
+		mes "[Gatekeeper]";
+		mes "Your strength isn't enough to cross to the lower levels.";
+		//close;	// close is used on official
+		next;
+		mes "[Gatekeeper]";
+		mes "Please come back after you are at least level 180.";
+		close;
+	}
+	mes "[Gatekeeper]";
+	mes "If you go downstairs, you will run into some pretty vicious fish. Would that be alright?";
+	next;
+	if (select( "Sure", "I'll come next time" ) == 1) {
+		mes "[Gatekeeper]";
+		mes "Please talk to me again when you are ready to cross.";
+		close;
+	}
+	mes "[Gatekeeper]";
+	mes "Then be careful.";
+	close2;
+	warp "iz_d05_i",141,186;
+	end;
+}
+
+iz_d05_i,141,188,5	script	Guardian#guard2	4_M_KY_SOLD,{
+	mes "[Gatekeeper]";
+	mes "Hello, would you like to go upstairs again?";
+	next;
+	if (select( "Yes", "No" ) == 2) {
+		mes "[Gatekeeper]";
+		mes "Please talk to me again when you are ready to cross.";
+		close;
+	}
+	mes "[Gatekeeper]";
+	mes "Then be careful.";
+	close2;
+	warp "iz_d04_i",129,227;
+	end;
+}
+
+iz_d05_i,138,186,5	script	Kena#Kena	4_M_02,{
+	if (checkweight(1201,3) == 0) {
+		mes "You have too many items.";
+		mes "Please clean up your items and try again.";
+		close;
+	}
+	if (BaseLevel < 180)
+		end;
+	if (ill_underwater < 5)
+		end;
+	if (checkquest(3418,PLAYTIME) == 2 && checkquest(3420,PLAYTIME) == 2) {
+		mes "[Kena]";
+		mes "Thank you for your hard work. Take a good rest today and visit us tomorrow.";
+		close;
+	}
+	mes "[Kena]";
+	mes "Hello, Adventurer.";
+	next;
+	mes "[Kena]";
+	mes "I heard that there are many dangerous deep-sea creatures in the lower layer, but when I came here, they were more dangerous than I thought.";
+	next;
+	mes "[Kena]";
+	mes "Not too long ago, there was a lot of uproar when a creature from the lower layer came up to the upper layer.";
+	next;
+	mes "[Kena]";
+	mes "The population of deep sea creatures is increasing. Adventurer, may I ask for your help?";
+	next;
+	if (select( "Yes", "No" ) == 2) {
+		mes "[Kena]";
+		mes "Oops...";
+		next;
+		mes "[Kena]";
+		mes "It would be dangerous if left unattended...";
+		close;
+	}
+	mes "[Kena]";
+	mes "Thank you, I'd appreciate it if you could help me defeat the deep sea creatures or fishmen.";
+	next;
+	mes "[Kena]";
+	mes "What would you like to do?";
+	next;
+	.@menu$[0] = callsub( S_Quest, "Kill Deep Sea Creatures", 3418,3417 );
+	.@menu$[1] = callsub( S_Quest, "Destroy the Deep Sea Fishmen", 3420,3419 );
+
+	switch( select( .@menu$[0], .@menu$[1], "Next time." ) ) {
+	case 1:
+		switch( checkquest(3418,PLAYTIME) ) {
+		case -1:
+			break;
+		case 0:
+		case 1:
+			mes "[Kena]";
+			mes "I think this is enough for today, please come back tomorrow.";
+			close;
+		case 2:
+			erasequest 3418;
+			break;
+		}
+		switch( checkquest(3417,HUNTING) ) {
+		case -1:
+			mes "[Kena]";
+			mes "Please kill 10 each of ^4d4dff" + getmonsterinfo("ILL_SWORD_FISH", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_PHEN", MOB_NAME) + "^000000, and ^4d4dff" + getmonsterinfo("ILL_KING_DRAMOH", MOB_NAME) + "^000000.";
+			next;
+			mes "[Kena]";
+			mes "These monsters are quite ferocious, so be very careful.";
+			next;
+			mes "[Kena]";
+			mes "Thank you.";
+			close2;
+			setquest 3417;
+			end;
+		case 0:
+		case 1:
+			mes "[Kena]";
+			mes "^4d4dff" + getmonsterinfo("ILL_SWORD_FISH", MOB_NAME) + "^000000, ^4d4dff" + getmonsterinfo("ILL_PHEN", MOB_NAME) + "^000000, and ^4d4dff" + getmonsterinfo("ILL_KING_DRAMOH", MOB_NAME) + "^000000.";
+			next;
+			mes "[Kena]";
+			mes "Please kill 10 of each.";
+			close;
+		case 2:
+			mes "[Kena]";
+			mes "They've all been eliminated, thank you for your hard work.";
+			next;
+			mes "[Kena]";
+			mes "If you have time, please come back tomorrow. I'll be waiting for you.";
+			close2;
+			getitem 25271,1;	// IllusionStone
+			getexp 20107500,14075250;
+			erasequest 3417;
+			setquest 3418;
+			end;
+		}
+		end;
+	case 2:
+		switch( checkquest(3420,PLAYTIME) ) {
+		case -1:
+			break;
+		case 0:
+		case 1:
+			mes "[Kena]";
+			mes "I think this is enough for today, please come back tomorrow.";
+			close;
+		case 2:
+			erasequest 3420;
+			break;
+		}
+		switch( checkquest(3419,HUNTING) ) {
+		case -1:
+			mes "[Kena]";
+			mes "Please take out 15 ^4d4dff" + getmonsterinfo("ILL_SEDORA", MOB_NAME) + "^000000 and ^4d4dff" + getmonsterinfo("ILL_STROUF", MOB_NAME) + "^000000 each.";
+			next;
+			mes "[Kena]";
+			mes "They are quite annoying, so be careful.";
+			close2;
+			setquest 3419;
+			end;
+		case 0:
+		case 1:
+			mes "[Kena]";
+			mes "Please take out 15 ^4d4dff" + getmonsterinfo("ILL_SEDORA", MOB_NAME) + "^000000 and ^4d4dff" + getmonsterinfo("ILL_STROUF", MOB_NAME) + "^000000 each.";
+			close;
+		case 2:
+			mes "[Kena]";
+			mes "They've all been eliminated, thank you for your hard work.";
+			next;
+			mes "[Kena]";
+			mes "Please drop by tomorrow when the time is right. I'll be waiting for you.";
+			close2;
+			getitem 25271,1;	// IllusionStone
+			getexp 20107500,14075250;
+			setquest 3420;
+			erasequest 3419;
+			end;
+		}
+		end;
+	case 3:
+		mes "[Kena]";
+		mes "Oops...";
+		next;
+		mes "[Kena]";
+		mes "It would be dangerous if left unattended...";
+		close;
+	}
+	end;
+
+S_Quest:
+	switch( checkquest(getarg(1),PLAYTIME) ) {
+	case -1:
+		switch( checkquest(getarg(2),HUNTING) ) {
+		case -1:
+			.@string$ = getarg(0);
+			break;
+		case 0:
+		case 1:
+			.@string$ = getarg(0) + " - In Progress";
+			break;
+		case 2:
+			.@string$ = getarg(0) + " - Done";
+			break;
+		}
+		break;
+	case 0:
+	case 1:
+		.@string$ = "^999999" + getarg(0) + " - Pending^000000";
+		break;
+	case 2:
+		.@string$ = getarg(0);
+		break;
+	}
+	return .@string$;
+
+OnInit:
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3418,PLAYTIME) == -1 && checkquest(3417,HUNTING) == -1" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3417,HUNTING) == 2" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3418,PLAYTIME) == 2" );
+
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3420,PLAYTIME) == -1 && checkquest(3419,HUNTING) == -1" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3419,HUNTING) == 2" );
+	questinfo( QTYPE_DAILYQUEST, QMARK_YELLOW, "checkquest(3420,PLAYTIME) == 2" );
+	end;
+}