瀏覽代碼

Merge branch 'master' into feature/blocking_play

Aleos 4 年之前
父節點
當前提交
0afc77f91b
共有 57 個文件被更改,包括 22912 次插入490 次删除
  1. 3 0
      conf/msg_conf/map_msg.conf
  2. 1 1
      db/pre-re/item_db.txt
  3. 0 1
      db/pre-re/skill_db.yml
  4. 31 6
      db/re/instance_db.yml
  5. 151 1
      db/re/item_combo_db.txt
  6. 254 93
      db/re/item_db.txt
  7. 10 10
      db/re/item_flag.txt
  8. 137 0
      db/re/item_trade.txt
  9. 1 1
      db/re/job_exp.txt
  10. 14 14
      db/re/mob_db.txt
  11. 48 0
      db/re/mob_skill_db.txt
  12. 6 6
      db/re/produce_db.txt
  13. 313 53
      db/re/quest_db.yml
  14. 0 1
      db/re/skill_db.yml
  15. 8 0
      doc/atcommands.txt
  16. 18 2
      doc/script_commands.txt
  17. 4 2
      npc/battleground/kvm/kvm01.txt
  18. 4 2
      npc/battleground/kvm/kvm02.txt
  19. 4 2
      npc/battleground/kvm/kvm03.txt
  20. 1 0
      npc/instances/SealedShrine.txt
  21. 2 2
      npc/pre-re/jobs/1-1/merchant.txt
  22. 1 0
      npc/pre-re/scripts_warps.conf
  23. 13 0
      npc/pre-re/warps/cities/einbroch.txt
  24. 2191 0
      npc/re/instances/CharlestonCrisis.txt
  25. 1840 0
      npc/re/instances/HeartHunterWarBase.txt
  26. 1091 0
      npc/re/instances/WernerLaboratoryCentralRoom.txt
  27. 1415 0
      npc/re/merchants/enchan_verus.txt
  28. 101 0
      npc/re/merchants/novice_vending_machine.txt
  29. 14 0
      npc/re/merchants/shops.txt
  30. 13 0
      npc/re/mobs/dungeons/slabw01.txt
  31. 18 0
      npc/re/other/global_npcs.txt
  32. 44 150
      npc/re/quests/magic_books.txt
  33. 14625 0
      npc/re/quests/quests_16_2.txt
  34. 10 1
      npc/re/scripts_athena.conf
  35. 1 0
      npc/re/scripts_monsters.conf
  36. 3 0
      npc/re/scripts_warps.conf
  37. 30 0
      npc/re/warps/cities/einbech.txt
  38. 21 0
      npc/re/warps/cities/einbroch.txt
  39. 8 0
      npc/re/warps/dungeons/slabw01.txt
  40. 0 2
      npc/warps/cities/einbroch.txt
  41. 258 94
      sql-files/item_db_re.sql
  42. 14 14
      sql-files/mob_db_re.sql
  43. 48 1
      sql-files/mob_skill_db_re.sql
  44. 0 0
      sql-files/upgrades/upgrade_20200808b.sql
  45. 2 0
      sql-files/upgrades/upgrade_20200821.sql
  46. 1 1
      src/char/char_logif.cpp
  47. 32 1
      src/map/atcommand.cpp
  48. 24 19
      src/map/battle.cpp
  49. 2 2
      src/map/battleground.cpp
  50. 5 2
      src/map/clif.cpp
  51. 2 2
      src/map/npc.cpp
  52. 2 1
      src/map/pc.cpp
  53. 38 0
      src/map/script.cpp
  54. 3 0
      src/map/script_constants.hpp
  55. 10 3
      src/map/skill.cpp
  56. 17 0
      src/map/status.cpp
  57. 5 0
      src/map/status.hpp

+ 3 - 0
conf/msg_conf/map_msg.conf

@@ -1723,5 +1723,8 @@
 1513: Currently in WoE hours, unable to delegate Guild leader
 1514: You have to wait for a while before delegating a new Guild leader
 
+// @hatereset
+1515: Reset 'Hatred' monsters.
+
 //Custom translations
 import: conf/msg_conf/import/map_msg_eng_conf.txt

+ 1 - 1
db/pre-re/item_db.txt

@@ -1099,7 +1099,7 @@
 2128,Herald_Of_GOD_,Sacred Mission,4,128000,,1600,,5,,1,0x00004000,7,2,32,,83,1,4,{ bonus bVit,3; bonus bInt,2; bonus bMdef,3; bonus bUnbreakableShield; },{},{}
 2129,Exorcism_Bible,Exorcism Bible,4,20,,600,,5,,0,0x00008100,7,2,32,,50,1,5,{ bonus bHPrecovRate,3; bonus bSPrecovRate,3; bonus bInt,1; },{},{}
 2130,Cross_Shield,Cross Shield,4,20,,2000,,6,,1,0x00004000,7,2,32,,80,1,4,{ bonus bStr,1; bonus2 bSkillAtk,"PA_SHIELDCHAIN",30; bonus2 bSkillAtk,"CR_SHIELDBOOMERANG",30; bonus bUseSPrate,10; },{},{}
-2131,Magic_Study_Vol1,Magic Bible Vol1,4,20,,1000,,2,,1,0x00810204,2,2,32,,70,1,5,{ bonus bMdef,3; bonus bInt,2; bonus2 bAddEffWhenHit,Eff_Stun,1000; },{},{}
+2131,Magic_Study_Vol1,Magic Bible Vol1,4,20,,1000,,2,,1,0x00810204,7,2,32,,70,1,5,{ bonus bMdef,3; bonus bInt,2; bonus2 bAddEffWhenHit,Eff_Stun,1000; },{},{}
 2132,Shelter_Resistance,Shell Of Resistance,4,20,,0,,9,,0,0xFFFFFFFF,7,2,32,,0,0,2,{ bonus2 bSubEle,Ele_All,20; bonus bShortWeaponDamageReturn,1; if (vip_status(VIP_STATUS_ACTIVE)) { bonus bAllStats,1; } },{},{}
 2133,Tournament_Shield,Tournament Shield,4,20,,1000,,5,,1,0x00004082,2,2,32,,50,1,4,{ bonus2 bAddClass,Class_All,1; if( Class==Job_Lord_Knight ) bonus bAspdRate,-5; },{},{}
 2134,Shield_Of_Naga,Shield of Naga,4,20,,500,,3,,1,0x00CFFF80,2,2,32,,70,1,2,{ bonus bMdef,3; autobonus2 "{ bonus bShortWeaponDamageReturn,(getrefine()*3); }",10,5000,BF_WEAPON,"{ specialeffect2 EF_GUARD; }"; },{},{}

+ 0 - 1
db/pre-re/skill_db.yml

@@ -9404,7 +9404,6 @@ Body:
         Time: 55000
       - Level: 10
         Time: 60000
-    Duration2: 1000
     Requires:
       SpCost: 50
       Weapon:

+ 31 - 6
db/re/instance_db.yml

@@ -249,12 +249,12 @@ Body:
       Map: 1@uns
       X: 145
       Y: 35
-#  - Id: 30
-#    Name: Charleston in Distress
-#    Enter:
-#      Map: 1@mcd
-#      X: 127
-#      Y: 282
+  - Id: 30
+    Name: Charleston in Distress
+    Enter:
+      Map: 1@mcd
+      X: 127
+      Y: 282
   - Id: 31
     Name: Ritual of Blessing
     Enter:
@@ -276,3 +276,28 @@ Body:
 #    AdditionalMaps:
 #      1@sthc: true
 #      1@sthd: true
+  - Id: 34
+    Name: Heart Hunter War Base 1
+    Enter:
+      Map: 1@swat
+      X: 35
+      Y: 65
+  - Id: 35
+    Name: Heart Hunter War Base 2
+    Enter:
+      Map: 1@swat
+      X: 73
+      Y: 118
+# There is officially only one (buggy) instance 'Werner Laboratory central room'
+  - Id: 36
+    Name: Werner Laboratory central room#1
+    Enter:
+      Map: 1@slw
+      X: 187
+      Y: 24
+  - Id: 37
+    Name: Werner Laboratory central room#2
+    Enter:
+      Map: 1@slw
+      X: 187
+      Y: 24

+ 151 - 1
db/re/item_combo_db.txt

@@ -613,6 +613,114 @@
 4683:4695,{ autobonus "{ bonus bAtk,100; }",30,6000,BF_WEAPON,"{ active_transform 3246,6000; }"; }
 4697:27012,{ bonus bNoMadoFuel; }
 4699:27012,{ bonus bNoMadoFuel; }
+470016:480012:490014:450018,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",10; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",10; if (.@r>=27) { bonus bMaxHPrate,5; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",10; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",10; } }
+470016:480012:490014:450019,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",10; if (.@r>=27) { bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",10; } }
+470016:480012:490014:450020,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",10; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",10; } }
+470016:480012:490014:450022,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus bCritAtkRate,5; bonus2 bSkillAtk,"SN_SHARPSHOOTING",10; if (.@r>=27) { bonus bDelayrate,-5; bonus bCritAtkRate,5; bonus2 bSkillAtk,"SN_SHARPSHOOTING",10; } }
+470016:480012:490014:450023,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RA_AIMEDBOLT",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RA_AIMEDBOLT",10; } }
+470016:480012:490014:450024,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",10; } }
+470016:480012:490014:450027,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"AB_DUPLELIGHT",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"AB_DUPLELIGHT",10; } }
+470016:480012:490014:450028,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bDelayrate,-5; bonus2 bSkillAtk,"NC_AXETORNADO",10; if (.@r>=27) { bonus bAspd,1; bonus bDelayrate,-5; bonus2 bSkillAtk,"NC_AXETORNADO",10; } }
+470016:480012:490014:450029,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",10; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",10; } }
+470016:480012:490014:450030,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CARTCANNON",10; if (.@r>=27) { bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CARTCANNON",10; } }
+470016:480012:490014:450031,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CART_TORNADO",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CART_TORNADO",10; } }
+470016:480012:490014:450032,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",10; } }
+470016:480012:490014:450033,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470016:480012:490014:450034,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SC_FATALMENACE",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SC_FATALMENACE",10; } }
+470016:480012:490014:450036,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SU_PICKYPECK",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SU_PICKYPECK",10; } }
+470016:480012:490014:450038,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_R_TRIP",10; if (.@r>=27) { bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_R_TRIP",10; } }
+470016:480012:490014:450039,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_FIRE_RAIN",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_FIRE_RAIN",10; } }
+470016:480012:490014:450044,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_SOLARBURST",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_SOLARBURST",10; } }
+470016:480012:490014:450045,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_FULLMOONKICK",10; if (.@r>=27) { bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_FULLMOONKICK",10; } }
+470016:480012:490014:450047,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"KO_HAPPOKUNAI",10; if (.@r>=27) { bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"KO_HAPPOKUNAI",10; } }
+470016:480012:490014:450050,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_KNUCKLEARROW",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_KNUCKLEARROW",10; } }
+470016:480012:490014:450051,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_TIGERCANNON",10; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_TIGERCANNON",10; } }
+470016:480012:490014:450121,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470017:480014:490015:450021,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMatk,25; bonus bDelayrate,-5; bonus2 bSkillAtk,"LG_RAYOFGENESIS",10; if (.@r>=27) { bonus bMatk,25; bonus bDelayrate,-5; bonus2 bSkillAtk,"LG_RAYOFGENESIS",10; } }
+470017:480014:490015:450025,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WM_REVERBERATION",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WM_REVERBERATION",10; } }
+470017:480014:490015:450026,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"AB_ADORAMUS",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"AB_ADORAMUS",10; } }
+470017:480014:490015:450035,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bMatkRate,2; bonus2 bSkillAtk,"WZ_METEOR",20; if (.@r>=27) { bonus bAspd,1; bonus bMatkRate,3; bonus2 bSkillAtk,"WZ_METEOR",20; } }
+470017:480014:490015:450037,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SU_CN_METEOR",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SU_CN_METEOR",10; } }
+470017:480014:490015:450040,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_CRIMSONROCK",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_CRIMSONROCK",10; } }
+470017:480014:490015:450041,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_JACKFROST",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_JACKFROST",10; } }
+470017:480014:490015:450042,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",10; } }
+470017:480014:490015:450043,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_DIAMONDDUST",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_DIAMONDDUST",10; } }
+470017:480014:490015:450046,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"NJ_KOUENKA",10; bonus2 bSkillAtk,"NJ_HUUJIN",10; bonus2 bSkillAtk,"NJ_HYOUSENSOU",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"NJ_KOUENKA",10; bonus2 bSkillAtk,"NJ_HUUJIN",10; bonus2 bSkillAtk,"NJ_HYOUSENSOU",10; } }
+470017:480014:490015:450048,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_SWHOO",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_SWHOO",10; } }
+470017:480014:490015:450049,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",10; } }
+470017:480014:490015:450122,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus bMatkRate,2; bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,50,BF_SHORT,1; if (.@r>=27) { bonus bMaxHPrate,5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",5; } }
+470018:480016:490017:450052,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",10; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",10; if (.@r>=27) { bonus bMaxHPrate,10; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; } }
+470018:480016:490017:450053,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",10; if (.@r>=27) { bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",15; } }
+470018:480016:490017:450054,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",10; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",15; } }
+470018:480016:490017:450056,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus bCritAtkRate,5; bonus2 bSkillAtk,"SN_SHARPSHOOTING",10; if (.@r>=27) { bonus bDelayrate,-10; bonus bCritAtkRate,10; bonus2 bSkillAtk,"SN_SHARPSHOOTING",15; } }
+470018:480016:490017:450057,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RA_AIMEDBOLT",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RA_AIMEDBOLT",15; } }
+470018:480016:490017:450058,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",10; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",15; } }
+470018:480016:490017:450061,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"AB_DUPLELIGHT",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"AB_DUPLELIGHT",15; } }
+470018:480016:490017:450062,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_KNUCKLEARROW",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_KNUCKLEARROW",15; } }
+470018:480016:490017:450063,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_TIGERCANNON",10; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_TIGERCANNON",15; } }
+470018:480016:490017:450064,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bDelayrate,-5; bonus2 bSkillAtk,"NC_AXETORNADO",10; if (.@r>=27) { bonus bAspd,1; bonus bDelayrate,-10; bonus2 bSkillAtk,"NC_AXETORNADO",15; } }
+470018:480016:490017:450065,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",10; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",15; } }
+470018:480016:490017:450066,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CARTCANNON",10; if (.@r>=27) { bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CARTCANNON",15; } }
+470018:480016:490017:450067,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CART_TORNADO",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CART_TORNADO",15; } }
+470018:480016:490017:450068,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",15; } }
+470018:480016:490017:450069,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470018:480016:490017:450070,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SC_FATALMENACE",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SC_FATALMENACE",15; } }
+470018:480016:490017:450072,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SU_PICKYPECK",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SU_PICKYPECK",15; } }
+470018:480016:490017:450074,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_R_TRIP",10; if (.@r>=27) { bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_R_TRIP",15; } }
+470018:480016:490017:450075,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_FIRE_RAIN",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_FIRE_RAIN",15; } }
+470018:480016:490017:450080,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_SOLARBURST",10; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_SOLARBURST",15; } }
+470018:480016:490017:450081,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_FULLMOONKICK",10; if (.@r>=27) { bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_FULLMOONKICK",15; } }
+470018:480016:490017:450083,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"KO_HAPPOKUNAI",10; if (.@r>=27) { bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"KO_HAPPOKUNAI",15; } }
+470018:480016:490017:450123,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470019:480017:490018:450055,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMatk,25; bonus bDelayrate,-5; bonus2 bSkillAtk,"LG_RAYOFGENESIS",10; if (.@r>=27) { bonus bMatk,25; bonus bDelayrate,-10; bonus2 bSkillAtk,"LG_RAYOFGENESIS",15; } }
+470019:480017:490018:450059,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WM_REVERBERATION",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WM_REVERBERATION",15; } }
+470019:480017:490018:450060,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"AB_ADORAMUS",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"AB_ADORAMUS",15; } }
+470019:480017:490018:450071,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bMatkRate,2; bonus2 bSkillAtk,"WZ_METEOR",25; if (.@r>=27) { bonus bAspd,1; bonus bMatkRate,3; bonus2 bSkillAtk,"WZ_METEOR",25; } }
+470019:480017:490018:450073,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SU_CN_METEOR",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SU_CN_METEOR",15; } }
+470019:480017:490018:450076,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_CRIMSONROCK",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_CRIMSONROCK",15; } }
+470019:480017:490018:450077,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_JACKFROST",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_JACKFROST",15; } }
+470019:480017:490018:450078,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",15; } }
+470019:480017:490018:450079,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_DIAMONDDUST",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_DIAMONDDUST",15; } }
+470019:480017:490018:450082,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"NJ_KOUENKA",10; bonus2 bSkillAtk,"NJ_HUUJIN",10; bonus2 bSkillAtk,"NJ_HYOUSENSOU",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"NJ_KOUENKA",15; bonus2 bSkillAtk,"NJ_HUUJIN",15; bonus2 bSkillAtk,"NJ_HYOUSENSOU",15; } }
+470019:480017:490018:450084,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_SWHOO",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_SWHOO",15; } }
+470019:480017:490018:450085,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",10; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",15; } }
+470019:480017:490018:450124,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus bMatkRate,2; bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,70,BF_SHORT,1; if (.@r>=27) { bonus bMaxHPrate,5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",7; } }
+470020:480018:490019:450086,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,10; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; if (.@r>=27) { bonus bMaxHPrate,10; bonus bDelayrate,-5; bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; } }
+470020:480018:490019:450087,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",15; if (.@r>=27) { bonus bAspd,1; bonus bCritAtkRate,5; bonus2 bSkillAtk,"RK_IGNITIONBREAK",15; } }
+470020:480018:490019:450088,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",15; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"LG_CANNONSPEAR",15; } }
+470020:480018:490019:450090,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus bCritAtkRate,5; bonus2 bSkillAtk,"SN_SHARPSHOOTING",15; if (.@r>=27) { bonus bDelayrate,-10; bonus bCritAtkRate,10; bonus2 bSkillAtk,"SN_SHARPSHOOTING",15; } }
+470020:480018:490019:450091,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RA_AIMEDBOLT",15; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RA_AIMEDBOLT",15; } }
+470020:480018:490019:450092,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",15; if (.@r>=27) { bonus bDelayrate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"WM_SEVERE_RAINSTORM",15; } }
+470020:480018:490019:450095,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"AB_DUPLELIGHT",15; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"AB_DUPLELIGHT",15; } }
+470020:480018:490019:450096,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_KNUCKLEARROW",15; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_KNUCKLEARROW",15; } }
+470020:480018:490019:450097,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SR_TIGERCANNON",15; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SR_TIGERCANNON",15; } }
+470020:480018:490019:450098,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bDelayrate,-10; bonus2 bSkillAtk,"NC_AXETORNADO",15; if (.@r>=27) { bonus bAspd,1; bonus bDelayrate,-10; bonus2 bSkillAtk,"NC_AXETORNADO",15; } }
+470020:480018:490019:450099,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",15; if (.@r>=27) { bonus bAspd,1; bonus bLongAtkRate,5; bonus2 bSkillAtk,"NC_VULCANARM",15; } }
+470020:480018:490019:450100,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CARTCANNON",15; if (.@r>=27) { bonus bVariableCastRate,-5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CARTCANNON",15; } }
+470020:480018:490019:450101,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GN_CART_TORNADO",15; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GN_CART_TORNADO",15; } }
+470020:480018:490019:450102,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",15; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"GC_ROLLINGCUTTER",15; } }
+470020:480018:490019:450103,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470020:480018:490019:450104,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SC_FATALMENACE",10; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SC_FATALMENACE",15; } }
+470020:480018:490019:450106,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bDelayrate,-10; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SU_PICKYPECK",15; if (.@r>=27) { bonus bDelayrate,-10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SU_PICKYPECK",15; } }
+470020:480018:490019:450108,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_R_TRIP",15; if (.@r>=27) { bonus bLongAtkRate,10; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_R_TRIP",15; } }
+470020:480018:490019:450109,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"RL_FIRE_RAIN",15; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"RL_FIRE_RAIN",15; } }
+470020:480018:490019:450114,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_SOLARBURST",15; if (.@r>=27) { bonus bAspd,1; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_SOLARBURST",15; } }
+470020:480018:490019:450115,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"SJ_FULLMOONKICK",15; if (.@r>=27) { bonus2 bAddSize,Size_All,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"SJ_FULLMOONKICK",15; } }
+470020:480018:490019:450117,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,2; bonus2 bSkillAtk,"KO_HAPPOKUNAI",15; if (.@r>=27) { bonus bLongAtkRate,5; bonus2 bAddClass,Class_All,3; bonus2 bSkillAtk,"KO_HAPPOKUNAI",15; } }
+470020:480018:490019:450125,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,2; bonus bCritAtkRate,5; if (.@r>=27) { bonus bMaxHPrate,5; bonus2 bAddClass,Class_All,3; bonus bCritAtkRate,5; } }
+470021:480019:490020:450089,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMatk,25; bonus bDelayrate,-10; bonus2 bSkillAtk,"LG_RAYOFGENESIS",15; if (.@r>=27) { bonus bMatk,25; bonus bDelayrate,-10; bonus2 bSkillAtk,"LG_RAYOFGENESIS",15; } }
+470021:480019:490020:450093,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WM_REVERBERATION",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WM_REVERBERATION",15; } }
+470021:480019:490020:450094,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"AB_ADORAMUS",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"AB_ADORAMUS",15; } }
+470021:480019:490020:450105,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bAspd,1; bonus bMatkRate,2; bonus2 bSkillAtk,"WZ_METEOR",30; if (.@r>=27) { bonus bAspd,1; bonus bMatkRate,3; bonus2 bSkillAtk,"WZ_METEOR",30; } }
+470021:480019:490020:450107,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SU_CN_METEOR",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SU_CN_METEOR",15; } }
+470021:480019:490020:450110,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_CRIMSONROCK",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_CRIMSONROCK",15; } }
+470021:480019:490020:450111,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"WL_JACKFROST",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"WL_JACKFROST",15; } }
+470021:480019:490020:450112,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",15; } }
+470021:480019:490020:450113,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SO_DIAMONDDUST",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_DIAMONDDUST",15; } }
+470021:480019:490020:450116,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"NJ_KOUENKA",15; bonus2 bSkillAtk,"NJ_HUUJIN",15; bonus2 bSkillAtk,"NJ_HYOUSENSOU",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"NJ_KOUENKA",15; bonus2 bSkillAtk,"NJ_HUUJIN",15; bonus2 bSkillAtk,"NJ_HYOUSENSOU",15; } }
+470021:480019:490020:450118,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_SWHOO",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_SWHOO",15; } }
+470021:480019:490020:450119,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bVariableCastrate,-5; bonus bMatkRate,2; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",15; if (.@r>=27) { bonus bVariableCastrate,-5; bonus bMatkRate,3; bonus2 bSkillAtk,"SP_CURSEEXPLOSION",15; } }
+470021:480019:490020:450126,{ .@r = getequiprefinerycnt(EQI_SHOES)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,5; bonus bMatkRate,2; bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,70,BF_SHORT,1; if (.@r>=27) { bonus bMaxHPrate,5; bonus bMatkRate,3; bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",10; } }
 4958:19050,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); if( .@r >= 7 ){ bonus bDelayrate,-1 - ( .@r > 9 ) ? 1 : 0; } }
 4959:19050,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); if( .@r >= 7 ){ bonus bLongAtkRate,2 + ( .@r > 9 ) ? 1 : 0; } }
 4960:19050,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); if( .@r >= 7 ){ bonus bUseSPrate,-2 - ( .@r > 9 ) ? 1 : 0; } }
@@ -655,8 +763,50 @@
 5917:1525,{ bonus bLongAtkDef,10; }
 5920:18542,{ bonus bHealPower,2*getequiprefinerycnt(EQI_HEAD_TOP); }
 5933:19112,{ bonus2 bAddSize,Size_All,1; bonus bLongAtkRate,1; if(readparam(bStr)>=108) { bonus2 bAddSize,Size_All,2; bonus bLongAtkRate,1; } if(readparam(bStr)>=120) { bonus2 bAddSize,Size_All,3; bonus bLongAtkRate,1; } }
+5965:28370,{ bonus bDelayrate,-15; }
+5965:28371,{ bonus bVariableCastrate,-20; }
+5965:29166,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus2 bSubRace,RC_DemiHuman,.@r; bonus2 bSubRace,RC_Formless,.@r; }
+5965:29167,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bHit,(.@r/3)*5; }
+5965:29168,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bFlee,(.@r/3)*5; }
+5965:29169,{ bonus bMdef,20; }
+5965:29170,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29171,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29172,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29173,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29174,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29175,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bAspdRate,(.@r/2); }
+5965:29438,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29439,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29440,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29441,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29442,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29443,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:29444,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMaxHPrate,(.@r/2); }
+5965:32203,{ bonus bAspdRate,10; bonus2 bAddClass,Class_All,10; bonus2 bMagicAddClass,Class_All,10; bonus2 bIgnoreDefRaceRate,RC_All,30; bonus2 bIgnoreMdefRaceRate,RC_All,30; }
+5965:4970,{ bonus2 bAddEle,Ele_Fire,10; }
+5965:4971,{ bonus2 bAddEle,Ele_Water,10; }
+5965:4972,{ bonus2 bAddEle,Ele_Earth,10; }
+5965:4973,{ bonus2 bAddEle,Ele_Wind,10; }
+5965:4974,{ bonus2 bSubEle,Ele_Fire,25; }
+5965:4975,{ bonus2 bSubEle,Ele_Water,25; }
+5965:4976,{ bonus2 bSubEle,Ele_Earth,25; }
+5965:4977,{ bonus2 bSubEle,Ele_Wind,25; }
+5965:4978,{ bonus2 bHPRegenRate,1500,5000; }
+5965:4979,{ bonus2 bSPRegenRate,25,5000; }
+5965:4980,{ bonus bHPrecovRate,350; }
+5965:4981,{ bonus bSPrecovRate,50; }
+5965:4982,{ bonus2 bAddClass,Class_All,3; }
+5965:4983,{ bonus2 bMagicAddClass,Class_All,3; }
+5965:4984,{ bonus bDef,500; }
+5965:4985,{ bonus bFlee2,2; }
+5965:4986,{ bonus bBaseAtk,15; }
+5965:4987,{ bonus bMatk,15; }
+5965:4988,{ bonus bMaxHP,7500; }
+5965:4989,{ bonus bMaxSP,150; }
+5965:4990,{ bonus bMaxHP,1000; }
+5965:4991,{ bonus bAspd,1; }
 5967:28321,{ bonus2 bSubSkill,"HT_BLITZBEAT",200; }
-5918:19306,{ .@aspd = 1; .@crit_dmg = 2 + 2 * (readparam(bDex) / 10); .@sub_demi = 2; .@luk = readparam(bLuk); if (.@luk > 107) { .@aspd += 1; .@crit_dmg += 2; .@sub_demi += 2; } if (.@luk > 119) { .@aspd += 2; .@crit_dmg += 4; .@sub_demi += 4; bonus bSplashRange,1; } bonus bAspd,.@aspd; bonus bCritAtkRate,.@crit_dmg; bonus2 bSubRace,RC_DemiHuman,.@sub_demi; bonus2 bSubSkill,"NPC_CRITICALSLASH",100; }
+5918:19306,{ .@aspd = 1; .@crit_dmg = 2 + 2 * (readparam(bDex) / 10); .@sub_player = 2; .@luk = readparam(bLuk); if (.@luk > 107) { .@aspd += 1; .@crit_dmg += 2; .@sub_player += 2; } if (.@luk > 119) { .@aspd += 2; .@crit_dmg += 4; .@sub_player += 4; bonus bSplashRange,1; } bonus bAspd,.@aspd; bonus bCritAtkRate,.@crit_dmg; bonus2 bSubRace,RC_Player_Human,.@sub_player; bonus2 bSubSkill,"NPC_CRITICALSLASH",100; }
 //9024:18832,{ bonus3 bAutoSpell,"BS_ADRENALINE",2,(GetPetRelationship >= 3)?15:10; }
 1298:4317,{ bonus bCritAtkRate,5; }
 1298:4521,{ bonus bCritAtkRate,5; }

+ 254 - 93
db/re/item_db.txt

@@ -1077,7 +1077,7 @@
 1720,Bow_Of_Rudra,Rudra Bow,5,20,,1200,150,,5,0,0x000A0808,63,2,34,4,48,1,11,{ bonus bAtkEle,Ele_Holy; bonus bInt,5; skill "AL_CURE",1; skill "AL_HEAL",1; bonus2 bResEff,Eff_Poison,5000; bonus2 bResEff,Eff_Curse,5000; bonus2 bResEff,Eff_Silence,5000; bonus2 bResEff,Eff_Confusion,5000; bonus2 bResEff,Eff_Blind,5000; },{},{}
 1721,Repeting_CrossBow,Repeating Crossbow,5,89000,,2000,95,,9,1,0x00020840,63,2,34,3,65,1,11,{},{},{}
 1722,Balistar,Ballista,5,124000,,3500,145,,5,0,0x00080800,63,2,34,4,77,1,11,{},{},{}
-1723,Luna_Bow,Luna Bow,5,20,,2000,100,,5,2,0x00000800,63,2,34,3,30,1,11,{ .@r = getrefine(); bonus bDef,2+3*(.@r>5)+2*(.@r>8); },{},{}
+1723,Luna_Bow,Luna Bow,5,20,,2000,100,,5,2,0x00000800,63,2,34,3,30,1,11,{ .@r = getrefine(); bonus bDef,2+3*(.@r>5)+5*(.@r>8); },{},{}
 1724,Dragon_Wing,Dragon Wing,5,20,,1200,100,,5,0,0x000A0848,63,2,34,4,60,1,11,{ bonus3 bAddMonsterDropItem,1765,RC_Dragon,300; bonus bIgnoreDefRace,RC_Dragon; },{},{}
 1725,Bow_Of_Minstrel,Minstrel Bow,5,20,,1700,120,,5,1,0x00080800,63,2,34,4,70,1,11,{ bonus bInt,2; bonus bSPrecovRate,10; },{},{}
 1726,Hunter_Bow_,Hunter Bow,5,64000,,1500,125,,5,1,0x00000800,63,2,34,3,33,1,11,{},{},{}
@@ -1097,7 +1097,7 @@
 1740,Nepenthes_Bow,Nepenthes Bow,5,20,,1000,105,,5,2,0x00000800,18,2,34,4,60,1,11,{ bonus4 bAutoSpellOnSkill,"AC_DOUBLE","AC_CHARGEARROW",1,20; },{},{}
 1741,Cursed_Lyre,Cursed Lyre,5,20,,1250,125,,5,1,0x00080800,18,2,34,4,80,1,11,{ bonus bLuk,-2; bonus2 bAddEff,Eff_Curse,400; },{},{}
 1742,N_Composite_Bow,Novice Composite Bow,5,1,,0,49,,5,3,0x000A0848,63,2,34,1,4,0,11,{},{},{}
-1743,Krieger_Bow1,Glorious Hunter Bow,5,0,,0,100,,5,0,0x001A0848,63,2,34,4,80,1,11,{ bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; .@r = getrefine(); bonus bCritAtkRate,.@r * 2; bonus bUnbreakableWeapon; if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) bonus2 bSkillAtk,"AC_DOUBLE",20; },{},{}
+1743,Krieger_Bow1,Glorious Hunter Bow,5,0,,0,100,,5,0,0x001A0848,63,2,34,4,80,1,11,{ bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; .@r = getrefine(); bonus bCritAtkRate,min(10,.@r)*2; bonus bUnbreakableWeapon; if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) bonus2 bSkillAtk,"AC_DOUBLE",20; },{},{}
 1744,Bow_Of_Evil,Bow Of Evil,5,20,,0,170,,5,0,0x000A0848,63,2,34,4,1,0,11,{ bonus2 bSkillAtk,"AC_DOUBLE",25; bonus bDex,2; },{},{}
 1745,Falken_Blitz,Falken Blitz,5,20,,1000,100,,5,2,0x00000800,18,2,34,3,50,1,11,{ bonus2 bSkillAtk,"SN_SHARPSHOOTING",10; bonus2 bSkillAtk,"AC_DOUBLE",10; bonus2 bSkillAtk,"AC_CHARGEARROW",10; },{},{}
 1746,Elven_Bow,Elven Bow,5,20,,1500,160,,5,1,0x00080800,63,2,34,3,100,1,11,{ bonus bDex,2; },{},{}
@@ -1352,7 +1352,7 @@
 2128,Herald_Of_GOD_,Sacred Mission,4,128000,,1600,,120,,1,0x00004000,63,2,32,,83,1,4,{ bonus bVit,3; bonus bInt,2; bonus bMdef,3; bonus bUnbreakableShield; },{},{}
 2129,Exorcism_Bible,Exorcism Bible,4,20,,600,,80,,0,0x00008100,63,2,32,,50,1,5,{ bonus bHPrecovRate,3; bonus bSPrecovRate,3; bonus bInt,1; },{},{}
 2130,Cross_Shield,Cross Shield,4,20,,2000,,130,,1,0x00004000,63,2,32,,80,1,4,{ bonus bStr,1; bonus2 bSkillAtk,"PA_SHIELDCHAIN",30; bonus2 bSkillAtk,"CR_SHIELDBOOMERANG",30; bonus bUseSPrate,10; },{},{}
-2131,Magic_Study_Vol1,Magic Bible Vol1,4,20,,1000,,18,,1,0x00810204,18,2,32,,70,1,5,{ bonus bMdef,3; bonus bInt,2; bonus2 bAddEffWhenHit,Eff_Stun,1000; },{},{}
+2131,Magic_Study_Vol1,Magic Bible Vol1,4,20,,1000,,18,,1,0x00810204,63,2,32,,70,1,5,{ bonus bMdef,3; bonus bInt,2; bonus2 bAddEffWhenHit,Eff_Stun,1000; },{},{}
 2132,Shelter_Resistance,Shell Of Resistance,4,20,,0,,9,,0,0xFFFFFFFF,63,2,32,,0,0,2,{ bonus2 bSubEle,Ele_All,20; bonus bShortWeaponDamageReturn,1; if (vip_status(VIP_STATUS_ACTIVE)) { bonus bAllStats,1; } },{},{}
 2133,Tournament_Shield,Tournament Shield,4,20,,1000,,105,,1,0x00004082,18,2,32,,50,1,4,{ bonus2 bAddClass,Class_All,1; if( Class == Job_Lord_Knight ) bonus bAspdRate,-5; },{},{}
 2134,Shield_Of_Naga,Shield of Naga,4,20,,500,,35,,1,0x00CFFF80,18,2,32,,70,1,2,{ .@r = getrefine(); bonus bMdef,3; if(.@r<11) { autobonus2 "{ bonus bShortWeaponDamageReturn,("+.@r+"*3); }",10,5000,BF_WEAPON,"{ specialeffect2 EF_GUARD; }"; } else { autobonus2 "{ bonus bShortWeaponDamageReturn,("+.@r+"*3); }",10,5000+(.@r/2*1000),BF_WEAPON,"{ specialeffect2 EF_GUARD; }"; } },{},{}
@@ -3157,28 +3157,28 @@
 4967,Leo,Leo,6,0,,,,,,,,,,,,,,,{ bonus bAspdRate,3; },{},{}
 4968,Virgo,Virgo,6,0,,,,,,,,,,,,,,,{ setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal,.@skills$[.@i],1; } },{},{}
 4969,Libra,Libra,6,0,,,,,,,,,,,,,,,{ setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal2,.@skills$[.@i],1; } /* TODO: Depending on some recovery items HP recovery amount + 1% */ },{},{}
-4970,Fire_Property_Reactor,Fire Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Fire; },{},{}
-4971,Water_Property_Reactor,Water Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Water; },{},{}
-4972,Earth_Property_Reactor,Earth Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Earth; },{},{}
-4973,Wind_Property_Reactor,Wind Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Wind; },{},{}
-4974,Fire_Resistance_Reactor,Fire Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Fire,25; bonus2 bSubEle,Ele_Water,-25; },{},{}
-4975,Water_Resistance_Reactor,Water Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Water,25; bonus2 bSubEle,Ele_Wind,-25; },{},{}
-4976,Earth_Resistance_Reactor,Earth Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Earth,25; bonus2 bSubEle,Ele_Fire,-25; },{},{}
-4977,Wind_Resistance_Reactor,Wind Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Wind,25; bonus2 bSubEle,Ele_Earth,-25; },{},{}
-4978,Recovery_Reactor_101,Recovery Reactor 101,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus2 bHPRegenRate,100,5000; else bonus2 bHPRegenRate,50,5000; },{},{}
-4979,Recovery_Reactor_102,Recovery Reactor 102,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus2 bSPRegenRate,5,5000; else bonus2 bHPRegenRate,3,5000; },{},{}
-4980,Recovery_Reactor_201,Recovery Reactor 201,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus bHPrecovRate,100; else bonus bHPrecovRate,50; },{},{}
-4981,Recovery_Reactor_202,Recovery Reactor 202,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus bSPrecovRate,100; else bonus bSPrecovRate,50; },{},{}
-4982,STR_Supplement_Reactor,STR Supplement Reactor,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) { .@bonus = 10; } bonus bBaseAtk,.@bonus + 5*(readparam(bStr)/10); },{},{}
-4983,INT_Supplement_Reactor,INT Supplement Reactor,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) { .@bonus = 10; } bonus bMatk,.@bonus + 5*(readparam(bInt)/10); },{},{}
-4984,DEF_Supplement_Reactor,DEF SupplementReactor,6,0,,,,,,,,,,,,,,,{ bonus bDef,100; },{},{}
-4985,PD_Supplement_Reactor,PD Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bFlee2,3; },{},{}
-4986,Attack_Supplement_Reactor,Attack Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bBaseAtk,20; },{},{}
-4987,Magic_Supplement_Reactor,Magic Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMatk,20; },{},{}
-4988,HP_Supplement_Reactor,HP Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMaxHPrate,5; },{},{}
-4989,SP_Supplement_Reactor,SP Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMaxSPrate,3; },{},{}
-4990,Frozen_Supplement_Reactor,Frozen Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bResEff,Eff_Freeze,10000; },{},{}
-4991,ASPD_Supplement_Reactor,ASPD Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bAspd,1; },{},{}
+4970,Reactor_P_FIRE,Fire Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Fire; },{},{}
+4971,Reactor_P_WATER,Water Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Water; },{},{}
+4972,Reactor_P_GROUND,Earth Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Earth; },{},{}
+4973,Reactor_P_WIND,Wind Property Reactor,6,0,,,,,,,,,,,,,,,{ bonus bDefEle,Ele_Wind; },{},{}
+4974,Reactor_T_FIRE,Fire Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Fire,25; bonus2 bSubEle,Ele_Water,-25; },{},{}
+4975,Reactor_T_WATER,Water Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Water,25; bonus2 bSubEle,Ele_Wind,-25; },{},{}
+4976,Reactor_T_GROUND,Earth Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Earth,25; bonus2 bSubEle,Ele_Fire,-25; },{},{}
+4977,Reactor_T_WIND,Wind Resistance Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bSubEle,Ele_Wind,25; bonus2 bSubEle,Ele_Earth,-25; },{},{}
+4978,Reactor_Cure_101,Recovery Reactor 101,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus2 bHPRegenRate,100,5000; else bonus2 bHPRegenRate,50,5000; },{},{}
+4979,Reactor_Cure_102,Recovery Reactor 102,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus2 bSPRegenRate,5,5000; else bonus2 bHPRegenRate,3,5000; },{},{}
+4980,Reactor_Cure_201,Recovery Reactor 201,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus bHPrecovRate,100; else bonus bHPrecovRate,50; },{},{}
+4981,Reactor_Cure_202,Recovery Reactor 202,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) bonus bSPrecovRate,100; else bonus bSPrecovRate,50; },{},{}
+4982,Reactor_A_STR,STR Supplement Reactor,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) { .@bonus = 10; } bonus bBaseAtk,.@bonus + 5*(readparam(bStr)/10); },{},{}
+4983,Reactor_A_INT,INT Supplement Reactor,6,0,,,,,,,,,,,,,,,{ if (getrefine()>=7) { .@bonus = 10; } bonus bMatk,.@bonus + 5*(readparam(bInt)/10); },{},{}
+4984,Reactor_A_DEF,DEF SupplementReactor,6,0,,,,,,,,,,,,,,,{ bonus bDef,100; },{},{}
+4985,Reactor_A_AVOI,PD Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bFlee2,3; },{},{}
+4986,Reactor_A_ATK,Attack Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bBaseAtk,20; },{},{}
+4987,Reactor_A_MATK,Magic Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMatk,20; },{},{}
+4988,Reactor_A_MHP,HP Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMaxHPrate,5; },{},{}
+4989,Reactor_A_MSP,SP Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bMaxSPrate,3; },{},{}
+4990,Reactor_A_FROZ,Frozen Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus2 bResEff,Eff_Freeze,10000; },{},{}
+4991,Reactor_A_ASPD,ASPD Supplement Reactor,6,0,,,,,,,,,,,,,,,{ bonus bAspd,1; },{},{}
 4992,HPdrain1,HP Absorb 1,6,0,,0,,,,,,,,,,,,,{ bonus2 bHPDrainRate,10,1; },{},{}
 4993,SPdrain1,SP Absorb 1,6,0,,0,,,,,,,,,,,,,{ bonus2 bSPDrainRate,10,1; },{},{}
 4994,Rune_of_Strength_Lv_1,Rune of Strength Lv 1,6,20,,,,,,,,,,,,,,,{ .@r = getrefine(); if (.@r>=7) { bonus bStr,5; } if (.@r>=10) { bonus2 bAddClass,Class_All,5; } },{},{}
@@ -4087,6 +4087,7 @@
 5938,Octopus_Hat_,Octopus Hat,4,20,,880,,8,,1,0xFFFFFFFF,63,2,256,,60,1,538,{ bonus bMdef,8; bonus bUnbreakableHelm,1; bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; .@r = getrefine(); if (.@r>=5) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; } if (.@r>=6) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; } if (.@r>=7) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; } },{},{}
 5943,Owlviscount_Silk_Hat,Owl Viscount Silk Hat,4,0,,500,,15,,1,0xFFFFFFFF,63,2,256,,70,1,1323,{ bonus bInt,1; bonus bAspdRate,10; .@r = getrefine(); bonus bMatk,7*.@r; autobonus "{ .@r = getrefine(); bonus bAspdRate,(.@r >= 9 ? 40 : ((.@r >= 7) ? 10 : ((.@r >= 5) ? 5 : 1))); }",.@r*20,30000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }"; },{},{}
 5945,Well_Chewed_Pencil,Well-Chewed Pencil,4,20,,300,,0,,0,0xFFFFFFFF,63,2,1,,30,0,931,{ bonus bStr,1; autobonus "{ bonus bAtkEle,Ele_Fire; }",50,60000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; /* Unknow rate and specialeffect */ },{},{}
+5965,_Riot_Chip,Riot Chip,4,0,,300,,,,1,0xFFFFFFFF,63,2,256,,100,1,1201,{ bonus bFixedCastrate,-50; .@r = getrefine(); bonus2 bAddClass,Class_All,.@r; bonus2 bMagicAddClass,Class_All,.@r; },{},{}
 5966,KarduiEar,KarduiEar,4,0,,300,,,,0,0xFFFFFFFF,63,2,512,,70,0,1357,{ .@dex = readparam(bDex); bonus bMatk,(.@dex > 10) ? .@dex/10*2 : 0; if (.@dex > 107) { bonus bVariableCastrate,-10; bonus bMatk,60; } if (.@dex > 119) { bonus bVariableCastrate,-5; bonus bMatk,100; } },{},{}
 5967,FlyingGalapago,Flying Galapago,4,0,,500,,,,0,0xFFFFFFFF,63,2,1,,110,0,1358,{ set .@bblvl,max(getskilllv("HT_BLITZBEAT"),1); set .@luk,min(readparam(bLuk),120); bonus bAgi,1; bonus3 bAutoSpell,"HT_BLITZBEAT",.@bblvl,50 + (.@luk / 3) + (.@bblvl * 2); bonus2 bSkillAtk,"HT_BLITZBEAT",getskilllv("HT_STEELCROW") * 40; },{},{}
 5968,DVAngelNurseCap,DVAngelNurseCap,4,0,,500,,10,,1,0xFFFFFFFF,63,2,256,,50,1,1359,{ if (BaseClass == Job_Acolyte) bonus bHealPower,3; bonus bNoCastCancel; .@r = getrefine(); bonus bHealPower,(.@r > 8) ? 12 : ((.@r > 6) ? 9 : ((.@r > 4) ? 6 : 0)); },{},{}
@@ -4933,7 +4934,7 @@
 6915,Captured_Soul,Captured Soul,3,10,,0,,,,,,,,,,,,,{},{},{}
 6916,Piece_Of_Soul_Monkey,Piece Of Soul Monkey,3,10,,0,,,,,,,,,,,,,{},{},{}
 6917,Piece_Of_Soul_Chicken,Piece Of Soul Chicken,3,10,,0,,,,,,,,,,,,,{},{},{}
-6919,Honor_Proof,Honor Token,3,10,,0,,,,,,,,,,,,,{},{},{}
+6919,TokenOfHonor,Honor Token,3,10,,0,,,,,,,,,,,,,{},{},{}
 6920,Rune_Magic_Powder,Rune Magic Powder,3,10,,10,,,,,,,,,,,,,{},{},{}
 6921,Dehumidifiers,Dehumidifiers,3,10,,10,,,,,,,,,,,,,{},{},{}
 6922,Sandpaper,Sandpaper,3,10,,10,,,,,,,,,,,,,{},{},{}
@@ -4973,33 +4974,32 @@
 6957,Lamb_Fleece,Lamb Fleece,3,10,,0,,,,,,,,,,,,,{},{},{}
 6958,Lamb_Horns,Lamb Horns,3,10,,0,,,,,,,,,,,,,{},{},{}
 6960,Air_Stronghold_Key,Sky Fortress Key,3,10,,10,,,,,,,,,,,,,{},{},{}
-6961,Huge_Metal_Scrap,Huge Metal Scrap,3,10,0,1000,,,,,,,,,,,,,{},{},{}
-6962,Old_Fuel,Old Fuel,3,10,0,100,,,,,,,,,,,,,{},{},{}
+6961,LargeScrap,Huge Metal Scrap,3,10,0,1000,,,,,,,,,,,,,{},{},{}
+6962,OldTank,Old Fuel,3,10,0,100,,,,,,,,,,,,,{},{},{}
 6963,HPdrainStone_Robe,HP Absorption Stone (Garment),3,10,,100,,,,,,,,,,,,,{},{},{}
 6964,SPdrainStone_Robe,SP Absorption Stone (Garment),3,10,,100,,,,,,,,,,,,,{},{},{}
-
-6965,Fire_Property_Reactor_Blueprint,Fire Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6966,Water_Property_Reactor_Blueprint,Water Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6967,Earth_Property_Reactor_Blueprint,Earth Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6968,Wind_Property_Reactor_Blueprint,Wind Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6969,Fire_Res_Reactor_Blueprint,Fire Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6970,Water_Res_Reactor_Blueprint,Water Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6971,Earth_Res_Reactor_Blueprint,Earth Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6972,Wind_Res_Reactor_Blueprint,Wind Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6973,Recovery101_Reactor_Blueprint,Recovery101 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6974,Recovery102_Reactor_Blueprint,Recovery102 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6975,Recovery201_Reactor_Blueprint,Recovery201 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6976,Recovery202_Reactor_Blueprint,Recovery202 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6977,STR_Reactor_Blueprint,STR Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6978,INT_Reactor_Blueprint,INT Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6979,DEF_Reactor_Blueprint,DEF Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6980,PD_Reactor_Blueprint,Perfect Dodge Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6981,ATK_Reactor_Blueprint,Attack Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6982,MATK_Reactor_Blueprint,Magical Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6983,HP_Reactor_Blueprint,HP Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6984,SP_Reactor_Blueprint,SP Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6985,Frozen_Reactor_Blueprint,Frozen Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
-6986,ASPD_Reactor_Blueprint,ASPD Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6965,Reactor_P_FIRE_,Fire Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6966,Reactor_P_WATER_,Water Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6967,Reactor_P_GROUND_,Earth Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6968,Reactor_P_WIND_,Wind Property Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6969,Reactor_T_FIRE_,Fire Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6970,Reactor_T_WATER_,Water Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6971,Reactor_T_GROUND_,Earth Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6972,Reactor_T_WIND_,Wind Resistance Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6973,Reactor_Cure_101_,Recovery101 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6974,Reactor_Cure_102_,Recovery102 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6975,Reactor_Cure_201_,Recovery201 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6976,Reactor_Cure_202_,Recovery202 Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6977,Reactor_A_STR_,STR Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6978,Reactor_A_INT_,INT Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6979,Reactor_A_DEF_,DEF Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6980,Reactor_A_AVOI_,Perfect Dodge Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6981,Reactor_A_ATK_,Attack Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6982,Reactor_A_MATK_,Magical Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6983,Reactor_A_MHP_,HP Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6984,Reactor_A_MSP_,SP Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6985,Reactor_A_FROZ_,Frozen Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
+6986,Reactor_A_ASPD_,ASPD Reactor Blueprint,3,0,,10,,,,,,,,,,,,,{},{},{}
 6999,HPdrainStone_Top,HP Absorption Stone (Upper),3,10,,100,,,,,,,,,,,,,{},{},{}
 
 //
@@ -7429,12 +7429,12 @@
 13117,TE_Woe_Pistol,TE Woe Pistol,5,0,,0,60,,7,0,0x41000000,63,2,34,3,40,1,17,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Curse,3000; },{},{}
 13118,Tiny_Flame,Fading Flame,5,1,,100,0,,7,0,0x41000000,63,2,34,1,1,1,17,{},{},{}
 13119,Freedom_Flame,Freedom Flame,5,1,,100,100,,7,2,0x41000000,63,2,34,3,99,1,17,{},{},{}
-13120,H_FEATHER_H_FIRE,Heaven's Feather & Hell's Fire,5,1200000,,800,150,,9,1,0x41000000,63,2,34,3,99,1,17,{ bonus2 bSkillAtk,"GS_DESPERADO",20; bonus2 bSkillAtk,"RL_FALLEN_ANGEL",20; },{},{}
-13122,ALTAIR_ARES,Altair & Ares,5,1450000,,1000,200,,9,0,0x40000000,63,2,34,3,140,1,17,{ bonus bHit,5; bonus bDelayrate,10; bonus bLongAtkRate,30; },{},{}
-13124,ALTAIR_ARES_,Altair & Ares,5,1450000,,1000,200,,9,1,0x40000000,63,2,34,3,140,1,17,{ bonus bHit,5; bonus bDelayrate,10; bonus bLongAtkRate,30; },{},{}
-13125,Metal_Revolver,Metal Revolver,5,0,,0,30,,7,1,0x41000000,63,2,34,3,1,1,17,{ bonus bBaseAtk,getrefine(); bonus bLongAtkRate,1; if (BaseLevel >= 20 && BaseLevel <= 120) { bonus bBaseAtk,3*(BaseLevel/10); } },{},{}
+13120,H_FEATHER_H_FIRE,Heaven's Feather & Hell's Fire,5,1200000,,800,150,,9,1,0x41000000,63,2,34,3,99,1,17,{ bonus2 bSkillAtk,"GS_DESPERADO",20; bonus2 bAddEff,Eff_Burning,200; },{},{}
+13122,ALTAIR_ARES,Altair & Ares,5,1450000,,1000,200,,9,0,0x40000000,63,2,34,3,140,1,17,{ bonus bHit,5; bonus bAspdRate,10; bonus bLongAtkRate,30; },{},{}
+13124,ALTAIR_ARES_,Altair & Ares,5,1450000,,1000,200,,9,1,0x40000000,63,2,34,3,140,1,17,{ bonus bHit,5; bonus bAspdRate,10; bonus bLongAtkRate,30; },{},{}
+13125,Metal_Revolver,Metal Revolver,5,0,,0,30,,7,1,0x41000000,63,2,34,3,1,1,17,{ .@r = getrefine(); bonus bBaseAtk,3*.@r; bonus bLongAtkRate,1; if (BaseLevel >= 20) { bonus bBaseAtk,3*(min(BaseLevel,120)/10); } },{},{}
 13126,Infinity_Pistol,Infinity Pistol,5,10,,500,175,,7,1,0x40000000,63,2,34,4,100,0,17,{},{},{}
-13127,Crimson_Revolver,Crimson Revolver,5,20,,1000,100,,7,2,0x41000000,63,2,34,3,70,1,17,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); },{},{}
+13127,Crimson_Revolver,Crimson Revolver,5,20,,1000,100,,7,2,0x41000000,63,2,34,3,70,1,17,{ .@r = getrefine(); bonus bBaseAtk,(.@r<=15?pow(.@r,2):225); if(BaseLevel>=70){ bonus bBaseAtk,(BaseLevel/10)*5; } },{},{}
 13128,Revolver_of_Vicious_Mind,Revolver of Vicious Mind,5,20,,1500,150,,7,1,0x41000000,63,2,34,4,160,1,17,{ bonus bAtk,pow(min(getrefine(),15),2); },{},{}
 13129,Unity_Revolver,Unity Revolver,5,20,,500,95,,7,1,0x41000000,63,2,34,3,1,1,17,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
 13138,Dark_Rose,Dark Rose,5,20,,1800,150,,7,2,0x40000000,63,2,34,3,120,1,17,{ .@r = getrefine(); bonus bAspdRate,10; if (.@r >= 7) { bonus bLongAtkRate,15; if (.@r >= 9) { bonus bAspd,1; } } },{},{}
@@ -7466,23 +7466,23 @@
 13174,BF_Launcher1,Soldier Grenade Launcher,5,0,,0,300,,9,0,0x41000000,63,2,34,3,80,1,21,{ bonus bDex,2; bonus bSplashRange,1; bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; autobonus "{ bonus bBaseAtk,300; bonus2 bHPLossRate,120,1000; }",30,9000,BF_WEAPON,"{ specialeffect2 EF_BASH3D; }"; bonus bUnbreakableWeapon; },{},{}
 13175,Lever_Action_Rifle_C,Lever Action Rifle,5,20,,0,170,,9,0,0x41000000,63,2,34,3,1,0,18,{ bonus bHit,20; bonus bCritical,50; bonus bAspdRate,-5; bonus2 bAddClass,Class_All,40; },{},{}
 13176,Krieger_Rifle1,Glorious Rifle,5,0,,0,90,,9,0,0x41000000,63,2,34,4,80,1,18,{ bonus2 bAddRace,RC_DemiHuman,75; bonus2 bAddRace,RC_Player_Human,75; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bVariableCastrate,"GS_TRACKING",25; bonus2 bSkillAtk,"GS_TRACKING",.@r * 3; } },{},{}
-13177,Krieger_Gatling1,Glorious Gatling Gun,5,0,,0,90,,9,0,0x41000000,63,2,34,4,80,1,19,{ bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bAddClass,Class_All,.@r; } },{},{}
-13178,Krieger_Shotgun1,Glorious Shotgun,5,0,,0,110,,9,0,0x41000000,63,2,34,4,80,1,20,{ bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus bSplashRange,1; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_SPREADATTACK",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; } },{},{}
-13179,Krieger_Launcher1,Glorious Grenade Launcher,5,0,,0,330,,9,0,0x41000000,63,2,34,4,80,1,21,{ bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_GROUNDDRIFT",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; autobonus "{ bonus bAspdRate,20; }",200,20000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; }"; } },{},{}
-13180,Novice_Rifle,Novice Rifle,5,0,,500,50,,9,3,0x41000000,1,2,34,4,1,0,18,{},{},{}
-13181,Novice_Shotgun,Novice Shotgun,5,0,,1000,80,,9,0,0x41000000,1,2,34,4,1,0,20,{},{},{}
-13182,Novice_Gatling,Novice Gatling,5,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,19,{},{},{}
-13183,Novice_Grenade_Launcher,Novice Grenade Launcher,5,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,21,{},{},{}
-13184,TE_Woe_Rifle,TE Woe Rifle,5,0,,0,80,,9,0,0x41000000,63,2,34,3,40,1,18,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Silence,3000; },{},{}
-13185,TE_Woe_Gatling,TE Woe Gatling,5,0,,0,100,,7,0,0x41000000,63,2,34,3,40,1,19,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Stun,3000; },{},{}
-13186,TE_Woe_Shotgun,TE Woe Shotgun,5,0,,0,100,,7,0,0x41000000,63,2,34,3,40,1,20,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Poison,3000; },{},{}
-13187,TE_Woe_Grenade,TE Woe Grenade,5,0,,0,100,,9,0,0x41000000,63,2,34,3,40,1,21,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Blind,3000; },{},{}
+13177,Krieger_Gatling1,Glorious Gatling Gun,5,0,,0,90,,9,0,0x41000000,63,2,34,4,80,1,19,{ bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bAddClass,Class_All,.@r; } },{},{}
+13178,Krieger_Shotgun1,Glorious Shotgun,5,0,,0,110,,9,0,0x41000000,63,2,34,4,80,1,20,{ bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus bSplashRange,1; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_SPREADATTACK",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; } },{},{}
+13179,Krieger_Launcher1,Glorious Grenade Launcher,5,0,,0,330,,9,0,0x41000000,63,2,34,4,80,1,21,{ bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_GROUNDDRIFT",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; autobonus "{ bonus bAspdRate,20; }",200,20000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; }"; } },{},{}
+13180,Novice_Rifle,Novice Rifle,5,0,,500,50,,9,3,0x41000000,1,2,34,1,1,0,18,{},{},{}
+13181,Novice_Shotgun,Novice Shotgun,5,0,,1000,80,,9,0,0x41000000,1,2,34,1,1,0,20,{},{},{}
+13182,Novice_Gatling,Novice Gatling,5,0,,1500,40,,9,0,0x41000000,1,2,34,1,1,0,19,{},{},{}
+13183,Novice_Grenade_Launcher,Novice Grenade Launcher,5,0,,1500,40,,9,0,0x41000000,1,2,34,1,1,0,21,{},{},{}
+13184,TE_Woe_Rifle,TE Woe Rifle,5,0,,0,80,,9,0,0x41000000,63,2,34,3,40,1,18,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Silence,1000; },{},{}
+13185,TE_Woe_Gatling,TE Woe Gatling,5,0,,0,100,,7,0,0x41000000,63,2,34,3,40,1,19,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Stun,1000; },{},{}
+13186,TE_Woe_Shotgun,TE Woe Shotgun,5,0,,0,100,,7,0,0x41000000,63,2,34,3,40,1,20,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Poison,1000; },{},{}
+13187,TE_Woe_Grenade,TE Woe Grenade,5,0,,0,100,,9,0,0x41000000,63,2,34,3,40,1,21,{ bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Blind,1000; },{},{}
 13189,COLORSCOPE,Color Scope,5,1350000,,1200,240,,9,2,0x40000000,63,2,34,3,105,1,18,{ bonus bHit,20; bonus bCriticalRate,30; },{},{}
-13190,RAG203_,RAG203,5,1800000,,1300,260,,9,1,0x40000000,63,2,34,3,140,1,18,{ bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,500,1; },{},{}
+13190,RAG203_,RAG203,5,1800000,,1300,260,,9,1,0x40000000,63,2,34,3,140,1,18,{ bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,30,1; },{},{}
 13192,DEATHFIRE,Death Fire,5,1250000,,2000,400,,9,1,0x40000000,63,2,34,3,108,1,20,{ bonus bSplashRange,1; bonus bAtkRange,5; bonus bHit,-50; bonus bAspdRate,-10; },{},{}
 13193,R_THUNDER,Rolling Thunder,5,1350000,,1800,280,,9,1,0x40000000,63,2,34,3,120,1,20,{ bonus bSplashRange,1; bonus bHit,-10; bonus bAspdRate,-10; bonus3 bAutoSpell,"MG_THUNDERSTORM",5,30; },{},{}
 13194,P_BREAKER,Peace Breaker,5,1950000,,1400,250,,9,0,0x41000000,63,2,34,3,140,1,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{}
-13195,RAG203,RAG203,5,1800000,,1300,260,,9,0,0x40000000,63,2,34,3,140,1,18,{ bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,10,1; },{},{}
+13195,RAG203,RAG203,5,1800000,,1300,260,,9,0,0x40000000,63,2,34,3,140,1,18,{ bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,30,1; },{},{}
 13196,P_BREAKER_,Peace Breaker,5,1950000,,1400,250,,9,1,0x41000000,63,2,34,3,140,1,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{}
 13197,MINIMAY,Mini Mei,5,1600000,,2500,220,,9,2,0x41000000,63,2,34,2,106,1,19,{},{},{}
 13198,TEMPEST,Tempest,5,2200000,,2500,250,,9,0,0x41000000,63,2,34,4,140,1,19,{ bonus bHit,-25; bonus bCritical,10; bonus bLongAtkRate,20; },{},{}
@@ -7663,7 +7663,7 @@
 13457,Unity_Dagger,Unity Dagger,5,20,,270,52,,1,1,0x028F5EEF,63,2,2,3,1,1,1,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
 13460,Sealed_Magic_Sword,Sealed Magic Sword,5,0,,1500,100,,1,2,0x00065480,58,2,2,4,100,1,2,{ .@r = getrefine(); .@sp = -100; bonus3 bAutoSpell,"MG_FIREBOLT",5,100; if (.@r >= 7) { .@sp += 50; .@matk = 85; if (.@r >= 10) { bonus bAspd,1; .@sp += 50; .@matk += 45; } bonus bMatk,.@matk; } bonus bMaxSP,.@sp; },{},{}
 13461,Sealed_Evil_Sword,Sealed Evil Sword,5,0,,1500,100,,1,2,0x00065480,58,2,2,4,100,1,2,{ .@r = getrefine(); .@def = -50; .@mdef = -10; bonus3 bAutoSpell,"WZ_FROSTNOVA",5,100; if (.@r >= 7) { .@crit = 30; .@mdef += 10; if (.@r >= 10) { bonus bAspd,1; .@crit += 20; .@def += 50; } bonus bCritical,.@crit; } bonus bDef,.@def; bonus bMdef,.@mdef; },{},{}
-13462,Sealed_Maximum_Sword,Sealed Maximum Sword,5,0,,1500,100,,1,2,0x00065480,58,2,2,4,100,1,2,{ .@r = getrefine(); .@hp = -1000; bonus3 bAutoSpell,"MG_COLDBOLT",5,100; if (.@r >= 7) { .@atk = 65; .@hp += 500; if (.@r >= 10) { bonus bAspd,1; .@atk += 45; .@hp += 500; } bonus bBaseAtk,.@atk; } if (.@hp) { bonus bMaxHP,.@hp; } },{},{}
+13462,Sealed_Max_Sword,Sealed Maximum Sword,5,0,,1500,100,,1,2,0x00065480,58,2,2,4,100,1,2,{ .@r = getrefine(); .@hp = -1000; bonus3 bAutoSpell,"MG_COLDBOLT",5,100; if (.@r >= 7) { .@atk = 65; .@hp += 500; if (.@r >= 10) { bonus bAspd,1; .@atk += 45; .@hp += 500; } bonus bBaseAtk,.@atk; } if (.@hp) { bonus bMaxHP,.@hp; } },{},{}
 13469,Illusion_Immaterial_Sword,Illusion Immaterial Sword,5,0,,900,180,,1,2,0x000654E2,63,2,2,4,120,1,2,{ .@r = getrefine(); bonus bSPDrainValue,-1; bonus bUnbreakableWeapon; if (.@r >= 12) { .@val = 20; } bonus2 bSPVanishRate,(80+(20*.@r)),(30+.@val); },{},{}
 13493,Cannon_Rapier-OS,Cannon Rapier-OS,5,20,,800,160:150,,1,2,0x000654E3,63,2,2,4,130,1,2,{ .@r = getrefine(); bonus3 bAutoSpell,"MG_FIREBALL",min(.@r,10),1; /* unknown rate */ if (.@r >= 7) { bonus bAspdRate,7; if (.@r >= 9) { bonus2 bSkillAtk,"MG_FIREBALL",30; if (.@r >= 11) { bonus3 bAutoSpell,"WL_HELLINFERNO",3,1; /* unknown rate */ } } } },{},{}
 //===================================================================
@@ -8857,7 +8857,7 @@
 15155,Unity_Robe,Unity Robe,4,10,,300,,45,,1,0xFFFFFFFF,63,2,16,,1,1,0,{ .@r = getrefine(); if(BaseLevel<100) { bonus2 bExpAddRace,RC_All,4; bonus bInt,2; bonus bUseSPrate,-(.@r/2); } },{},{}
 15156,Elegant_Doram_Suit,Elegant Doram Suit,4,20,,900,,120,,1,0x80000000,7,2,16,,175,1,,{ bonus bMaxHPrate,15; bonus bMaxSPrate,15; .@r = getrefine(); bonus bDex,.@r; bonus bInt,.@r; if(.@r > 9) bonus bUseSPrate,-5; },{},{}
 15162,Lounge_Suit,Lounge Suit,4,20,,300,,40,,1,0xFFFFFFFE,63,2,16,,80,1,,{ bonus bAspdRate,3; bonus bCastrate,-3; bonus bDelayrate,-3; if(getrefine() > 6) { bonus bAspdRate,2; bonus bCastrate,-2; bonus bDelayrate,-2; } },{},{}
-15163,Fictitious_Robe,Agenda Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ skill "SA_SPELLBREAKER",1; if (BaseLevel >= 140) { .@val = 14; } else if (BaseLevel >= 120) { .@val = 9; } else { .@val = 5; } bonus bMatkRate,.@val; },{},{}
+15163,Agenda_Robe,Agenda Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ skill "SA_SPELLBREAKER",1; if (BaseLevel >= 140) { .@val = 14; } else if (BaseLevel >= 120) { .@val = 9; } else { .@val = 5; } bonus bMatkRate,.@val; },{},{}
 15164,Consultative_Robe,Consultation Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ .@r = getrefine(); bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,.@r*3; bonus2 bSubEle,Ele_Fire,.@r*3; },{},{}
 15165,Pure_White_Marching_Hat,Pure White Marching Hat,4,20,,300,,0,,1,0xFFFFFFFF,63,2,256,,60,1,1470,{ .@r = getrefine(); bonus bStr,2; autobonus "{ bonus bAtkEle,Ele_Ghost; }",5+.@r,60000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; /* Unknow Rates */ },{},{}
 15166,Rosary_Necklace,Rosary Necklace,4,20,,300,,0,,0,0xFFFFFFFF,63,2,1,,60,0,1471,{ bonus bFlee2,2; bonus bHealPower,3; },{},{}
@@ -11617,9 +11617,9 @@
 23047,S_Blessing_Tyr,[Sale] Blessing of Tyr,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_FLEEFOOD,300000,30; sc_start SC_HITFOOD,300000,30; sc_start SC_ATKPOTION,300000,20; sc_start SC_MATKPOTION,300000,20; },{},{}
 23048,S_Resilience_Potion,[Sale] Resilience Enhancement Potion,2,,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "bonus bAddItemHealRate,20;",1800,9; /* fix me: unknown flag and specialeffect */ },{},{}
 23058,Enchant_Stone_Box9,Costume Enchantment Stone Box 9,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Enchant_Stone_Box9); },{},{}
-23076,Build_Up_Potion_SS,Build Up Potion SS,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bAspd,10; }",10; } },{},{}
-23077,Build_Up_Potion_SC,Build Up Potion SC,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bCritical,30; }",10; } },{},{}
-23078,Build_Up_Potion_AC,Build Up Potion AC,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bVariableCastrate,-80; }",10; } },{},{}
+23076,Build_Up_Potion_SS,Build Up Potion SS,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_SS,10000,0; } },{},{}
+23077,Build_Up_Potion_SC,Build Up Potion SC,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_SC,10000,0; } },{},{}
+23078,Build_Up_Potion_AC,Build Up Potion AC,2,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_AC,10000,0; } },{},{}
 23080,Cursed_Crystal,Cursed Crystal,2,1,,500,,,,,0xFFFFFFFF,63,2,,,,,,{ callfunc("F_Cursed_Crystal"); },{},{}
 23086,Enchant_Stone_Box10,Costume Enchantment Stone Box 10,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Enchant_Stone_Box10); },{},{}
 23087,Small_Leather_Bag,Small Leather Bag,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 25180,1; getitem 25181,1; getitem 25182,1; getitem 25183,1; getitem 25184,1; getitem 25185,1; },{},{}
@@ -12146,19 +12146,19 @@
 25148,Cute_Starved_Demon_Doll,Cute Starved Demon Doll,3,0,,0,,,,,,,,,,,,,{},{},{}
 25149,Doll_With_Warm_Scarf,Doll With Warm Scarf,3,0,,0,,,,,,,,,,,,,{},{},{}
 25150,Hugging_Alice_Pilow,Hugging Alice Pilow,3,0,,0,,,,,,,,,,,,,{},{},{}
-25151,Rachel's_Revolver,Rachel's Revolver,3,0,,0,,,,,,,,,,,,,{},{},{}
-25152,Cherished_Bouquet,Cherished Bouquet,3,0,,0,,,,,,,,,,,,,{},{},{}
+25151,Rachels_Revolver,Rachel's Revolver,3,0,,0,,,,,,,,,,,,,{},{},{}
+25152,Cherish_Bouquet,Cherished Bouquet,3,0,,0,,,,,,,,,,,,,{},{},{}
 25153,Broken_Gun_Wreck,Broken Gun Wreck,3,0,,0,,,,,,,,,,,,,{},{},{}
-25154,Antique_Gunpowder,Antique Gunpowder,3,0,,10,,,,,,,,,,,,,{},{},{}
-25155,Schwartz's_Honor_Token,Schwarz's Honor Token,3,0,,0,,,,,,,,,,,,,{},{},{}
-25156,Piece_of_Chimera,Piece of Chimera,3,0,,10,,,,,,,,,,,,,{},{},{}
+25154,Antique_Powder,Antique Gunpowder,3,0,,10,,,,,,,,,,,,,{},{},{}
+25155,Swz_Honor_Token,Schwarz's Honor Token,3,0,,0,,,,,,,,,,,,,{},{},{}
+25156,Piece_Of_Chimera,Piece of Chimera,3,0,,10,,,,,,,,,,,,,{},{},{}
 25157,Fallen_Leaves_Branch,Fallen Leaves Branch,3,0,,10,,,,,,,,,,,,,{},{},{}
 25158,Core_Jelly,Core Jelly,3,0,,10,,,,,,,,,,,,,{},{},{}
 25159,Heart_Hunter_Seal,Heart Hunter's Seal,3,0,,10,,,,,,,,,,,,,{},{},{}
-25160,Borrowed_Book,Borrowed Book,3,0,,0,,,,,,,,,,,,,{},{},{}
-25161,Delicious_Handmade_Cookie,Delicious Handmade Cookie,3,0,,0,,,,,,,,,,,,,{},{},{}
-25162,Crispy_Anchovy,Crispy Anchovy,3,0,,0,,,,,,,,,,,,,{},{},{}
-25163,Arms_Shop_Ad,Arms Shop Ad,3,0,,0,,,,,,,,,,,,,{},{},{}
+25160,Borrow_Book,Borrowed Book,3,0,,0,,,,,,,,,,,,,{},{},{}
+25161,Handmade_cookie2,Delicious Handmade Cookie,3,0,,0,,,,,,,,,,,,,{},{},{}
+25162,Anchovy_cookie,Crispy Anchovy,3,0,,0,,,,,,,,,,,,,{},{},{}
+25163,Arms_Shop_AD,Arms Shop Ad,3,0,,0,,,,,,,,,,,,,{},{},{}
 25164,Fresh_Tea_Leaves,Fresh Tea Leaves,3,0,,0,,,,,,,,,,,,,{},{},{}
 25165,High_Class_Tea,High Class Tea,3,0,,0,,,,,,,,,,,,,{},{},{}
 25166,Very_Shining_Ring,Very Shining Ring,3,0,,0,,,,,,,,,,,,,{},{},{}
@@ -12173,10 +12173,10 @@
 25177,ShadowEffect_Middle,Shadow Effect (Middle),3,20,,100,,,,,,,,,,,,,{},{},{}
 25178,PinkGlowEffect_Middle,Pink Glow Effect (Middle),3,20,,100,,,,,,,,,,,,,{},{},{}
 25179,Blessing_Star,Blessing Star,3,0,,0,,,,,,,,,,,,,{},{},{}
-25180,Old_Rings,Old Rings,3,0,,0,,,,,,,,,,,,,{},{},{}
+25180,Old_Couple_Ring,Old Rings,3,0,,0,,,,,,,,,,,,,{},{},{}
 25181,Wood_Rosary,Wood Rosary,3,0,,0,,,,,,,,,,,,,{},{},{}
-25182,Assassin's_Mark_Dagger,Assassin's Mark Dagger,3,0,,0,,,,,,,,,,,,,{},{},{}
-25183,Decorated_Archer's_Thimble,Decorated Archer's Thimble,3,0,,0,,,,,,,,,,,,,{},{},{}
+25182,Assassin_PT_Dagger,Assassin's Mark Dagger,3,0,,0,,,,,,,,,,,,,{},{},{}
+25183,Deco_Thimble_Archer,Decorated Archer's Thimble,3,0,,0,,,,,,,,,,,,,{},{},{}
 25184,Portable_Sewingbox,Portable Sewingbox,3,0,,0,,,,,,,,,,,,,{},{},{}
 25185,Locket_Pendant,Locket Pendant,3,0,,0,,,,,,,,,,,,,{},{},{}
 25187,Slug_Bullet,Slug Bullet,3,1200,,1200,,,,,,,,,,,,,{},{},{}
@@ -12543,10 +12543,10 @@
 28202,Southern_Cross_R_,Southern Cross,5,2800000,,2000,480,,9,1,0x40000000,63,2,34,4,141,1,21,{ bonus3 bAutoSpell,"GC_CROSSIMPACT",1,50; },{},{}
 28203,Half_BF_Rifle1,Half BF Rifle1,5,0,,0,50,,9,0,0x41000000,63,2,34,3,80,1,18,{ bonus bDex,2; bonus bHit,8; bonus bCritical,8; bonus2 bAddRace,RC_DemiHuman,30; bonus2 bAddRace,RC_Player_Human,30; bonus2 bVariableCastrate,"GS_TRACKING",-20; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player_Human,10; bonus bUnbreakableWeapon; },{},{}
 28204,Half_BF_Shotgun1,Half BF Shotgun1,5,0,,0,100,,9,0,0x41000000,63,2,34,3,80,1,20,{ bonus bDex,2; bonus bSplashRange,1; bonus2 bAddRace,RC_DemiHuman,30; bonus2 bAddRace,RC_Player_Human,30; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player_Human,10; autobonus "{ bonus bBaseAtk,80; bonus2 bHPLossRate,100,1000; }",30,6000,BF_WEAPON,"{ specialeffect2 EF_BASH3D; }"; bonus bUnbreakableWeapon; },{},{}
-28223,Finisher,Finisher,5,20,,2000,200,,9,2,0x40000000,63,2,34,3,120,1,18,{ .@r = getrefine(); bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_AM_BLAST",30; bonus2 bSkillAtk,"RL_MASS_SPIRAL",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_AM_BLAST",-1000; } } },{},{}
-28224,Dustfire,Dustfire,5,20,,1300,300,,9,2,0x40000000,63,2,34,3,120,1,20,{ bonus bSplashRange,1; bonus2 bAddEff,Eff_Blind,50; if (.@r >= 7) { bonus2 bSkillAtk,"RL_S_STORM",15; if (.@r >= 9) { bonus2 bSkillAtk,"RL_BANISHING_BUSTER",15; } } },{},{}
+28223,Just_Finish,Finisher,5,20,,2000,200,,9,2,0x40000000,63,2,34,3,120,1,18,{ .@r = getrefine(); bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_AM_BLAST",30; bonus2 bSkillAtk,"RL_MASS_SPIRAL",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_AM_BLAST",-1000; } } },{},{}
+28224,Dust_Fire,Dustfire,5,20,,1300,300,,9,2,0x40000000,63,2,34,3,120,1,20,{ bonus bSplashRange,1; bonus2 bAddEff,Eff_Blind,50; if (.@r >= 7) { bonus2 bSkillAtk,"RL_S_STORM",15; if (.@r >= 9) { bonus2 bSkillAtk,"RL_BANISHING_BUSTER",15; } } },{},{}
 28225,Burning_Rose,Burning Rose,5,20,,2500,200,,9,2,0x40000000,63,2,34,3,120,1,19,{ bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_FIRE_RAIN",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_FIRE_RAIN",-1000; } } },{},{}
-28226,Avenger,Avenger,5,20,,1800,350,,9,2,0x40000000,63,2,34,3,120,1,21,{ bonus bLongAtkRate,20; if (.@r >= 7) { bonus2 bSkillAtk,"RL_D_TAIL",15; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_H_MINE",-1000; } } },{},{}
+28226,Revenger,Avenger,5,20,,1800,350,,9,2,0x40000000,63,2,34,3,120,1,21,{ bonus bLongAtkRate,20; if (.@r >= 7) { bonus2 bSkillAtk,"RL_D_TAIL",15; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_H_MINE",-1000; } } },{},{}
 28240,Calf_Kingcobra,Calf Kingcobra,5,0,0,900,230,,9,2,0x40000000,63,2,34,4,150,1,18,{ .@r = getrefine(); bonus bAspdRate,10 + (.@r > 6 ? 5 : 0); bonus bLongAtkRate,(.@r/2)*5 + (.@r > 11 ? 5 : 0); if(.@r > 8){ bonus bCritAtkRate,15; } },{},{}
 28241,Calf_Diamondback,Calf Diamondback,5,0,,3000,220,,9,2,0x40000000,63,2,34,4,150,1,19,{ .@r = getrefine(); bonus bDex,2; bonus2 bAddClass,Class_All,2; bonus bLongAtkRate,(.@r/2)*5 + (.@r > 11 ? 5 : 0); if(.@r > 6){ bonus2 bSkillAtk,"RL_R_TRIP",20; } if(.@r > 8){ bonus2 bSkillUseSPrate,"RL_R_TRIP",5; } },{},{}
 28242,Calf_Anaconda,Calf Anaconda,5,10,,1400,305,,9,2,0x40000000,63,2,34,4,150,1,20,{ .@r = getrefine(); bonus bSplashRange,1; bonus bMaxSPrate,2; bonus bLongAtkRate,(.@r/2)*5 + (.@r > 8 ? 5 : 0); if(.@r > 6){ bonus2 bSkillAtk,"RL_BANISHING_BUSTER",20; } if(.@r > 11){ bonus2 bSkillUseSPrate,"RL_BANISHING_BUSTER",15; } },{},{}
@@ -12588,6 +12588,8 @@
 28357,Vesper_Gear_03,Vesper Gear 03,4,20,,100,,1,,1,0xFFFFFFFF,63,2,136,,90,0,0,{ bonus bMdef,3; bonus bFlee,10; },{},{}
 28358,Cursed_Lucky_Clover,Cursed Lucky Clover,4,0,,100,,,,1,0xFFFFFFFF,63,2,136,,100,0,,{ bonus bLuk,2; bonus bFlee,3; bonus2 bAddEff2,Eff_Curse,5; },{},{ sc_end SC_CLOAKING; /*FIXME: Because the combo has Cloaking skill*/ }
 28359,Vesper_Gear_04,Vesper Gear 04,4,20,,100,,1,,1,0xFFFFFFFF,63,2,136,,90,0,0,{ bonus bMdef,3; bonus bHit,10; },{},{}
+28370,Broken_Chip_Green,Broken Chip (Green),4,0,,100,,1,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus2 bAddClass,Class_All,5; bonus bDelayrate,-5; },{},{}
+28371,Broken_Chip_Red,Broken Chip (Red),4,0,,100,,1,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus2 bMagicAddClass,Class_All,5; bonus bVariableCastrate,-10; },{},{}
 28372,Imperial_Ring,Imperial Ring,4,0,,500,,3,,1,0xFFFFFFFF,63,2,136,,50,0,,{ bonus bStr,1; bonus bInt,1; bonus bMaxHPRate,3; bonus bMaxSPRate,3; },{},{}
 28374,Foxtail_Ring,Foxtail Ring,4,20,,100,,0,,0,0x80000000,7,2,136,,1,0,,{ bonus2 bExpAddRace,RC_All,5; .@lvl = min(BaseLevel/5,10); bonus bAtk,2*.@lvl; bonus bMatk,2*.@lvl; bonus bMaxHP,10*.@lvl; bonus bMaxSP,5*.@lvl; },{},{}
 28377,Magical_Ring,Magical Ring,4,0,,100,,,,1,0xFFFFFFFF,63,2,136,,20,0,,{ bonus2 bMagicAtkEle,Ele_Fire,5; bonus2 bMagicAtkEle,Ele_Water,5; bonus2 bMagicAtkEle,Ele_Earth,5; bonus2 bMagicAtkEle,Ele_Wind,5; if (BaseLevel > 4) { bonus2 bSkillAtk,"MG_FIREBOLT",BaseLevel/5; bonus2 bSkillAtk,"MG_COLDBOLT",BaseLevel/5; bonus2 bSkillAtk,"MG_LIGHTNINGBOLT",BaseLevel/5; bonus2 bSkillAtk,"WZ_EARTHSPIKE",BaseLevel/5; } },{},{}
@@ -12612,8 +12614,8 @@
 28422,Shiny_Branch_Talisman,Shiny Branch Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */ },{},{}
 28423,Fresh_Tuna_Talisman,Fresh Tuna Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10; },{},{}
 28424,Chubby_Worm_Talisman,Chubby Worm Talisman,4,0,,100,,1,,1,0x80000000,63,2,136,,100,,,{ bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */ },{},{}
-28425,Mercenary_Ring_Type_A,Mercenary Ring Type A,4,20,,200,,0,,0,0xFFFFFFFF,63,2,136,,99,0,0,{ bonus bVit,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bMaxHP,1000; bonus bMaxSP,200; } },{},{}
-28426,Mercenary_Ring_Type_B,Mercenary Ring Type B,4,20,,200,,0,,0,0xFFFFFFFF,63,2,136,,99,0,0,{ bonus bInt,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bVariableCastrate,-30; } },{},{}
+28425,Mercenary_Ring_A,Mercenary Ring Type A,4,20,,200,,0,,0,0xFFFFFFFF,63,2,136,,99,0,0,{ bonus bVit,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bMaxHP,1000; bonus bMaxSP,200; } },{},{}
+28426,Mercenary_Ring_B,Mercenary Ring Type B,4,20,,200,,0,,0,0xFFFFFFFF,63,2,136,,99,0,0,{ bonus bInt,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bVariableCastrate,-30; } },{},{}
 28429,Arquien's_Necklace,Arquien's Necklace,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,20,0,0,{ bonus2 bSkillAtk,"MC_CARTREVOLUTION",Baselevel; bonus2 bSkillAtk,"NC_AXETORNADO",(Baselevel/3); bonus2 bSkillAtk,"NC_POWERSWING",(Baselevel/5); bonus2 bSkillUseSP,"NC_POWERSWING",2; bonus2 bAddMonsterDropItem,529,2000; bonus2 bAddMonsterDropItem,530,2000; bonus2 bAddMonsterDropItem,573,500; bonus2 bAddItemHealRate,529,100; bonus2 bAddItemHealRate,530,100; /* Unknow drop rates */ },{},{}
 28430,Arch_Bishop_Ring,Arch Bishop Ring,4,20,,400,,0,,1,0xFFFFFFFF,63,2,136,,90,0,0,{ bonus bLuk,2; bonus bFlee2,5; bonus bUseSPrate,-5; bonus bHealPower,15; bonus bAddItemHealRate,15; },{},{}
 28433,Luminous_Blue_Stone,Luminous Blue Stone,4,20,,400,,0,,1,0xFFFFFFFF,63,2,136,,90,0,0,{ bonus bAgi,2; bonus bCritical,5; bonus bAspdRate,5; bonus bCritAtkRate,2; skill "MG_SIGHT",1; if (readparam(bLuk)>=100) { bonus bCritical,10; bonus bCritAtkRate,10; } },{},{}
@@ -12734,7 +12736,7 @@
 28908,Shield_Of_Water,Shield Of Water,4,0,,500,,80,,1,0xFFFFFFFF,63,2,32,,90,1,1,{ bonus2 bSubEle,Ele_Water,25; .@r = getrefine(); if(.@r > 4) { bonus bAspd,1+((.@r > 6) ? 1 : 0); } },{},{}
 28909,Shield_Of_Earth,Shield Of Earth,4,0,,500,,80,,1,0xFFFFFFFF,63,2,32,,90,1,1,{ bonus2 bSubEle,Ele_Earth,25; .@r = getrefine(); if(.@r > 4) { bonus bAspd,1+((.@r > 6) ? 1 : 0); } },{},{}
 28910,Rectangular_Large_Sleeve,Rectangular Large Sleeve,4,20,,800,,80,,1,0xFFFFFFFF,63,2,32,,100,1,1,{ bonus bLongAtkDef,5; .@r = getrefine(); if(.@r>=5) { bonus bLongAtkDef,5; } if(.@r>=7) { bonus bLongAtkDef,10; } if(.@r>=9) { bonus bLongAtkDef,15; } },{},{}
-28913,Ultralight_Magic_Shield,Ultralight Magic Shield,4,0,,100,,50,,1,0xFFFFFFFF,63,2,32,,100,1,1,{ .@r = getrefine(); .@val = 5; bonus2 bIgnoreDefClassRate,Class_Normal,10; if (.@r >= 9) { .@val += 5; } else if (.@r >= 7) { .@val += 2; } bonus bAspdRate,.@val; bonus2 bSubEle,Ele_Neutral,.@val; },{},{}
+28913,Ultra_Light_MShield,Ultralight Magic Shield,4,0,,100,,50,,1,0xFFFFFFFF,63,2,32,,100,1,1,{ .@r = getrefine(); .@val = 5; bonus2 bIgnoreDefClassRate,Class_Normal,10; if (.@r >= 9) { .@val += 5; } else if (.@r >= 7) { .@val += 2; } bonus bAspdRate,.@val; bonus2 bSubEle,Ele_Neutral,.@val; },{},{}
 28915,Bunker_Shield,Bunker Shield,4,20,,3500,,90,,1,0xFFFFFFFF,63,2,32,,50,1,1,{ .@r = getrefine(); if(.@r >= 5) { .@dmg = .@r - 4; } bonus2 bAddClass,Class_All,(4+.@dmg); bonus bAspdRate,-5; },{},{}
 28916,Gaia_Shield,Gaia Shield,4,20,,2000,,150,,1,0xFFFFFFFF,63,2,32,,90,1,1,{ bonus bMdef,10; bonus2 bSubEle,Ele_Earth,10; bonus2 bAddEle,Ele_Earth,5; bonus2 bMagicAddEle,Ele_Earth,5; .@r = getrefine(); if(.@r>=6) { bonus2 bSubEle,Ele_Earth,15; bonus2 bAddEle,Ele_Earth,10; bonus2 bMagicAddEle,Ele_Earth,10; } if(.@r>=8) { if(readparam(bStr)>=90) { bonus bBaseAtk,50; } if(readparam(bAgi)>=90) { bonus bAspdRate,5; } if(readparam(bVit)>=90) { bonus bHealPower2,10; bonus bAddItemHealRate,10; } if(readparam(bInt)>=90) { bonus bMatk,30; } if(readparam(bDex)>=90) { bonus bVariableCastrate,-5; } if(readparam(bLuk)>=90) { bonus bCritAtkRate,5; } } },{},{}
 28918,Shield_of_Chaos,Shield of Chaos,4,20,,500,,80,,1,0xFFFFFFFF,63,2,32,,90,1,1,{ .@r = getrefine(); bonus bMdef,5; bonus2 bSubEle,Ele_Dark,25; if (.@r>=5) bonus bAspd,1; if (.@r>=7) bonus bAspd,1; },{},{}
@@ -12882,6 +12884,16 @@
 29160,BlueAura_Effect,Blue Aura Effect,6,0,,0,,,,,,,,,,,,,{ /* todo */ },{},{}
 29161,Pink_Glow_Effect,Pink Glow Effect,6,0,,0,,,,,,,,,,,,,{ /* todo */ },{},{}
 29162,Shadow_Effect,Shadow Effect,6,0,,0,,,,,,,,,,,,,{ /* todo */ },{},{}
+29166,A-Tolerance,A-Tolerance,6,0,,0,,,,,,,,,,,,,{ bonus2 bSubClass,Class_All,1; .@r = getrefine(); bonus2 bSubRace,RC_DemiHuman,.@r/3; bonus2 bSubRace,RC_Formless,.@r/3; },{},{}
+29167,A-Hit,A-Hit,6,0,,0,,,,,,,,,,,,,{ bonus bHit,20; .@r = getrefine(); if(.@r>=7){ bonus bHit,10; } if(.@r>=8){ bonus bHit,10; } if(.@r>=9){ bonus bHit,10; } },{},{}
+29168,A-Flee,A-Flee,6,0,,0,,,,,,,,,,,,,{ bonus bFlee,20; .@r = getrefine(); if(.@r>=7){ bonus bFlee,10; } if(.@r>=8){ bonus bFlee,10; } if(.@r>=9){ bonus bFlee,10; } },{},{}
+29169,A-Mdef,A-Mdef,6,0,,0,,,,,,,,,,,,,{ bonus bMdef,2; .@r = getrefine(); if(.@r>=6){ bonus bMdef,4; } if(.@r>=8){ bonus bMdef,8; } },{},{}
+29170,S-Atk,S-Atk,6,0,,0,,,,,,,,,,,,,{ bonus bBaseAtk,50; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bBaseAtk,150; }",.@c,.@t; },{},{}
+29171,S-Matk,S-Matk,6,0,,0,,,,,,,,,,,,,{ bonus bMatk,100; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bMatk,150; }",.@c,.@t,BF_MAGIC; },{},{}
+29172,S-Avoid,S-Avoid,6,0,,0,,,,,,,,,,,,,{ bonus bFlee2,5; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bFlee2,100; }",.@c,.@t; },{},{}
+29173,S-MaxHP,S-MaxHP,6,0,,0,,,,,,,,,,,,,{ bonus bMaxHP,2500; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bMaxHP,7500; }",.@c,.@t; },{},{}
+29174,S-Quick,S-Quick,6,0,,0,,,,,,,,,,,,,{ bonus bVariableCastrate,-10; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bVariableCastrate,-100; bonus bDelayrate,-100; }",.@c,.@t,BF_MAGIC; },{},{}
+29175,S-Cri,S-Cri,6,0,,0,,,,,,,,,,,,,{ bonus bCritical,10; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bCritical,100; }",.@c,.@t; },{},{}
 29224,WhiteBody_Effect,White Body Effect,6,0,,0,,,,,,,,,,,,,{ hateffect HAT_EF_WHITEBODY,true; },{},{ hateffect HAT_EF_WHITEBODY,false; }
 29225,WaterField_Effect,Water Field Effect,6,0,,0,,,,,,,,,,,,,{ hateffect HAT_EF_WATER_BELOW2,true; },{},{ hateffect HAT_EF_WATER_BELOW2,false; }
 29226,ExplodingWave_Effect,Crimson Wave Effect,6,0,,0,,,,,,,,,,,,,{ /* todo */ },{},{}
@@ -12941,6 +12953,13 @@
 29360,Fatal_Bottom,Fatal (Lower),6,0,,0,,,,,,,,,,,,,{ bonus bCritAtkRate,3; },{},{}
 29361,Fatal_Robe,Fatal (Garment),6,0,,0,,,,,,,,,,,,,{ bonus bCritAtkRate,20; },{},{}
 29362,DoubleAttack,Double Attack,6,0,,0,,,,,,,,,,,,,{ skill "TF_DOUBLE",3; bonus bDoubleRate,15; },{},{}
+29438,Z-Knockback,Z-Knockback,6,0,,0,,,,,,,,,,,,,{ bonus bNoKnockback; },{},{}
+29439,Z-Immortal,Z-Immortal,6,0,,0,,,,,,,,,,,,,{ bonus bUnbreakableHelm; /* fix me */ },{},{}
+29440,Z-Killgain,Z-Killgain,6,0,,0,,,,,,,,,,,,,{ bonus bSPGainValue,2; .@r = getrefine(); if(.@r>=7){ bonus bSPGainValue,3; } if(.@r>=8){ bonus bSPGainValue,5; } if(.@r>=9){ bonus bSPGainValue,10; } },{},{}
+29441,Z-Reincarnation,Z-Reincarnation,6,0,,0,,,,,,,,,,,,,{ bonus bRestartFullRecover; },{},{}
+29442,Z-NoDispell,Z-NoDispell,6,0,,0,,,,,,,,,,,,,{ bonus bNoCastCancel2; },{},{}
+29443,Z-Clairvoyance,Z-Clairvoyance,6,0,,0,,,,,,,,,,,,,{ bonus bIntravision; },{},{}
+29444,Z-Cast_Fixed,Z-Cast Fixed,6,0,,0,,,,,,,,,,,,,{ bonus bFixedCastrate,-50; },{},{}
 29579,Racing_SG_1,Racing (Star Gladiator) 1Lv,6,20,,0,,,,,,,,,,,,,{},{},{}
 29580,Racing_SG_2,Racing (Star Gladiator) 2Lv,6,20,,0,,,,,,,,,,,,,{},{},{}
 29581,Racing_SG_3,Racing (Star Gladiator) 3Lv,6,20,,0,,,,,,,,,,,,,{},{},{}
@@ -13634,7 +13653,7 @@
 //===================================================================
 // More Accessories
 //===================================================================
-32203,Accelerator_Chip,Accelerator Chip,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus2 bAddClass,Class_All,5; bonus bMatkRate,5; bonus bAspdRate,5; /* Combo with Riot Chip not implemented yet. */ },{},{}
+32203,Accelerator_Chip,Accelerator Chip,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus2 bAddClass,Class_All,5; bonus bMatkRate,5; bonus bAspdRate,5; },{},{}
 32204,Immortal_Dog_Tag,Immortal Dog Tag,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus bBaseAtk,50; bonus bMatk,50; bonus2 bSubRace,RC_Undead,4; },{},{}
 32206,Prontera_Militia_Glove,Prontera Militia Glove,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus bVit,5; bonus bMdef,5; bonus bAspdRate,5; bonus2 bSubRace,RC_DemiHuman,3; bonus2 bSubRace,RC_Player_Human,3; bonus2 bSubEle,Ele_Water,5; bonus2 bSubEle,Ele_Earth,5; bonus2 bSubEle,Ele_Wind,5; bonus2 bSubEle,Ele_Fire,5; },{},{}
 32207,Illusion_Booster_R,Illusion Booster R,4,20,,100,,0,,1,0xFFFFFFFF,63,2,8,,130,0,0,{ bonus2 bAddClass,Class_All,5; },{},{}
@@ -13690,11 +13709,153 @@
 100233,Add_Matk_Potion,Blue Herb Activator,0,10,,30,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_ADD_MATK_DAMAGE,500000,15; },{},{}
 
 //100314,Enchant_Stone_Box21,Costume Enchantment Stone Box 21,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Enchant_Stone_Box21); },{},{}
+100128,Noblesses_Refine_Ticket,Noblesses Refine Ticket,11,20,,0,,,,,0xFFFFFFFF,63,2,,,100,,,{ /*upgradeui 100128;*/ },{},{}
+100129,Imperial_Refine_Ticket,Imperial Refine Ticket,11,20,,0,,,,,0xFFFFFFFF,63,2,,,125,,,{ /*upgradeui 100129;*/ },{},{}
+100130,Grace_Refine_Ticket,Grace Refine Ticket,11,20,,0,,,,,0xFFFFFFFF,63,2,,,150,,,{ /*upgradeui 100130;*/ },{},{}
+100131,Imperial_P_Mo_Garment,Imperial Physical Modification Permit (Garment),11,20,,0,,,,,0xFFFFFFFF,63,2,,,125,,,{ /*upgradeui 100131;*/ },{},{}
+100132,Imperial_M_Mo_Garment,Imperial Magical Modification Permit (Garment),11,20,,0,,,,,0xFFFFFFFF,63,2,,,125,,,{ /*upgradeui 100132;*/ },{},{}
+100133,Grace_P_Mo_Garment,Grace Physical Modification Permit (Garment),11,20,,0,,,,,0xFFFFFFFF,63,2,,,150,,,{ /*upgradeui 100133;*/ },{},{}
+100134,Grace_M_Mo_Garment,Grace Magical Modification Permit (Garment),11,20,,0,,,,,0xFFFFFFFF,63,2,,,150,,,{ /*upgradeui 100134;*/ },{},{}
+100135,Imperial_P_Mo_Armor,Imperial Physical Modification Permit (Armor),11,20,,0,,,,,0xFFFFFFFF,63,2,,,125,,,{ /*upgradeui 100135;*/ },{},{}
+100136,Imperial_M_Mo_Armor,Imperial Magical Modification Permit (Armor),11,20,,0,,,,,0xFFFFFFFF,63,2,,,125,,,{ /*upgradeui 100136;*/ },{},{}
+100137,Grace_P_Mo_Armor,Grace Physical Modification Permit (Armor),11,20,,0,,,,,0xFFFFFFFF,63,2,,,150,,,{ /*upgradeui 100137;*/ },{},{}
+100138,Grace_M_Mo_Armor,Grace Magical Modification Permit (Armor),11,20,,0,,,,,0xFFFFFFFF,63,2,,,150,,,{ /*upgradeui 100138;*/ },{},{}
 // Costumes
 //400020,C_BeachBall,Costume Beachball,4,0,,0,,,,0,0xFFFFFFFF,63,2,1024,,1,0,1918,{},{},{}
 //440000,C_SharkHead,Costume Shark Hat,4,0,,0,,,,0,0xFFFFFFFF,63,2,5120,,1,0,1919,{},{},{}
 //440002,C_Happy_Cat_TW,Costume Happy Cat,4,0,,0,,,,0,0xFFFFFFFF,63,2,7168,,1,0,1980,{},{},{}
+// New Armor
+450018,Noblesse_Breath_Armor,Noblesse Breath Armor,4,20,,0,,100,,1,0x00000080,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMaxHPrate,5; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bMaxHPrate,5; },{},{}
+450019,Noblesse_Knight_Armor,Noblesse Knight Armor,4,20,,0,,100,,1,0x00000080,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5; },{},{}
+450020,Noblesse_Spear_Armor,Noblesse Spear Armor,4,20,,0,,100,,1,0x00004000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450021,Noblesse_Genesis_Armor,Noblesse Genesis Armor,4,20,,0,,100,,1,0x00004000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,5; },{},{}
+450022,Noblesse_Sharp_Suit,Noblesse Sharp Suit,4,20,,0,,70,,1,0x00000800,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450023,Noblesse_Aimed_suit,Noblesse Aimed suit,4,20,,0,,70,,1,0x00000800,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450024,Noblesse_Severe_Suit,Noblesse Severe Suit,4,20,,0,,70,,1,0x00080000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450025,Noblesse_Reverb_Suit,Noblesse Reverb Suit,4,20,,0,,70,,1,0x00080000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5; },{},{}
+450026,Noblesse_Adora_Robe,Noblesse Adora Robe,4,20,,0,,70,,1,0x00000100,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,5; },{},{}
+450027,Noblesse_Duple_Robe,Noblesse Duple Robe,4,20,,0,,70,,1,0x00000100,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5; },{},{}
+450028,Noblesse_Tornado_Armor,Noblesse Tornado Armor,4,20,,0,,70,,1,0x00000400,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5; },{},{}
+450029,Noblesse_Vulcan_Armor,Noblesse Vulcan Armor,4,20,,0,,70,,1,0x00000400,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450030,Noblesse_Cart_Cannon_Suit,Noblesse Cart Cannon Suit,4,20,,0,,70,,1,0x00040000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450031,Noblesse_Cart_Tornado_Suit,Noblesse Cart Tornado Suit,4,20,,0,,70,,1,0x00040000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5; },{},{}
+450032,Noblesse_Rolling_Suit,Noblesse Rolling Suit,4,20,,0,,70,,1,0x00001000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450033,Noblesse_Assassin_Suit,Noblesse Assassin Suit,4,20,,0,,70,,1,0x00001000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5; },{},{}
+450034,Noblesse_Fatal_Suit,Noblesse Fatal Suit,4,20,,0,,70,,1,0x00020000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5; },{},{}
+450035,Noblesse_Stalker_Suit,Noblesse Stalker Suit,4,20,,0,,70,,1,0x00020000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,5; },{},{}
+450036,Noblesse_Picky_Robe,Noblesse Picky Robe,4,20,,0,,70,,1,0x80000000,7,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450037,Noblesse_Catnip_Robe,Noblesse Catnip Robe,4,20,,0,,70,,1,0x80000000,7,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5; },{},{}
+450038,Noblesse_Trip_Suit,Noblesse Trip Suit,4,20,,0,,70,,1,0x40000000,63,2,16,,100,0,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450039,Noblesse_Fire_Rain_Suit,Noblesse Fire Rain Suit,4,20,,0,,70,,1,0x40000000,63,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450040,Noblesse_Crimson_Robe,Noblesse Crimson Robe,4,20,,0,,70,,1,0x00000200,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,5; },{},{}
+450041,Noblesse_Frost_Robe,Noblesse Frost Robe,4,20,,0,,70,,1,0x00000200,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,5; },{},{}
+450042,Noblesse_Psychic_Robe,Noblesse Psychic Robe,4,20,,0,,70,,1,0x00010000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5; },{},{}
+450043,Noblesse_Dust_Robe,Noblesse Dust Robe,4,20,,0,,70,,1,0x00010000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,5; },{},{}
+450044,Noblesse_Sun_Suit,Noblesse Sun Suit,4,20,,0,,70,,1,0x00400000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddClass,Class_All,5; },{},{}
+450045,Noblesse_Moon_Suit,Noblesse Moon Suit,4,20,,0,,70,,1,0x00400000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddSize,Size_All,5; if(.@r>=9) bonus2 bAddClass,Class_All,5; },{},{}
+450046,Noblesse_Ninja_Suit,Noblesse Ninja Suit,4,20,,0,,70,,1,0x20000000,63,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,5; },{},{}
+450047,Noblesse_Kunai_Suit,Noblesse Kunai Suit,4,20,,0,,70,,1,0x20000000,63,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5; },{},{}
+450048,Noblesse_Eswhoo_Robe,Noblesse Eswhoo Robe,4,20,,0,,70,,1,0x00800000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,5; },{},{}
+450049,Noblesse_Explosion_Robe,Noblesse Explosion Robe,4,20,,0,,70,,1,0x00800000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,5; },{},{}
+450050,Noblesse_Knuckle_Suit,Noblesse Knuckle Suit,4,20,,0,,70,,1,0x00008000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bMaxSPrate,10; if(.@r>=9) bonus2 bAddSize,Size_All,5; },{},{}
+450051,Noblesse_Tiger_Suit,Noblesse Tiger Suit,4,20,,0,,70,,1,0x00008000,56,2,16,,100,1,,{ .@r = getrefine(); bonus bMaxSPrate,5; if(.@r>=7) bonus bMaxHPrate,3; if(.@r>=9) bonus bMaxHPrate,3; },{},{}
+450052,Imperial_Breath_Armor,Imperial Breath Armor,4,20,,0,,120,,1,0x00000080,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMaxHPrate,7; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bMaxHPrate,7; },{},{}
+450053,Imperial_Knight_Armor,Imperial Knight Armor,4,20,,0,,120,,1,0x00000080,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7; },{},{}
+450054,Imperial_Spear_Armor,Imperial Spear Armor,4,20,,0,,120,,1,0x00004000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450055,Imperial_Genesis_Armor,Imperial Genesis Armor,4,20,,0,,120,,1,0x00004000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,7; },{},{}
+450056,Imperial_Sharp_Suit,Imperial Sharp Suit,4,20,,0,,90,,1,0x00000800,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450057,Imperial_Aimed_Suit,Imperial Aimed Suit,4,20,,0,,90,,1,0x00000800,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450058,Imperial_Severe_Suit,Imperial Severe Suit,4,20,,0,,90,,1,0x00080000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450059,Imperial_Reverb_Suit,Imperial Reverb Suit,4,20,,0,,90,,1,0x00080000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7; },{},{}
+450060,Imperial_Adora_Robe,Imperial Adora Robe,4,20,,0,,90,,1,0x00000100,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,7; },{},{}
+450061,Imperial_Duple_Robe,Imperial Duple Robe,4,20,,0,,90,,1,0x00000100,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7; },{},{}
+450062,Imperial_Knuckle_Suit,Imperial Knuckle Suit,4,20,,0,,90,,1,0x00008000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bMaxSPrate,15; if(.@r>=9) bonus2 bAddSize,Size_All,7; },{},{}
+450063,Imperial_Tiger_Suit,Imperial Tiger Suit,4,20,,0,,90,,1,0x00008000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMaxSPrate,7; if(.@r>=7) bonus bMaxHPrate,4; if(.@r>=9) bonus bMaxHPrate,4; },{},{}
+450064,Imperial_Tornado_Armor,Imperial Tornado Armor,4,20,,0,,90,,1,0x00000400,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7; },{},{}
+450065,Imperial_Vulcan_Armor,Imperial Vulcan Armor,4,20,,0,,90,,1,0x00000400,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450066,Imperial_Cart_Cannon_Suit,Imperial Cart Cannon Suit,4,20,,0,,90,,1,0x00040000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450067,Imperial_Cart_Tornado_Suit,Imperial Cart Tornado Suit,4,20,,0,,90,,1,0x00040000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7; },{},{}
+450068,Imperial_Rolling_Suit,Imperial Rolling Suit,4,20,,0,,90,,1,0x00001000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450069,Imperial_Assassin_Suit,Imperial Assassin Suit,4,20,,0,,90,,1,0x00001000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7; },{},{}
+450070,Imperial_Fatal_Suit,Imperial Fatal Suit,4,20,,0,,90,,1,0x00020000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7; },{},{}
+450071,Imperial_Stalker_Suit,Imperial Stalker Suit,4,20,,0,,90,,1,0x00020000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,7; },{},{}
+450072,Imperial_Picky_Robe,Imperial Picky Robe,4,20,,0,,90,,1,0x80000000,7,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450073,Imperial_Catnip_Robe,Imperial Catnip Robe,4,20,,0,,90,,1,0x80000000,7,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7; },{},{}
+450074,Imperial_Trip_Suit,Imperial Trip Suit,4,20,,0,,90,,1,0x40000000,63,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450075,Imperial_Fire_Rain_Suit,Imperial Fire Rain Suit,4,20,,0,,90,,1,0x40000000,63,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450076,Imperial_Crimson_Robe,Imperial Crimson Robe,4,20,,0,,90,,1,0x00000200,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,7; },{},{}
+450077,Imperial_Frost_Robe,Imperial Frost Robe,4,20,,0,,90,,1,0x00000200,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,7; },{},{}
+450078,Imperial_Psychic_Robe,Imperial Psychic Robe,4,20,,0,,90,,1,0x00010000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7; },{},{}
+450079,Imperial_Dust_Robe,Imperial Dust Robe,4,20,,0,,90,,1,0x00010000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,7; },{},{}
+450080,Imperial_Sun_Suit,Imperial Sun Suit,4,20,,0,,90,,1,0x00400000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddClass,Class_All,7; },{},{}
+450081,Imperial_Moon_Suit,Imperial Moon Suit,4,20,,0,,90,,1,0x00400000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddSize,Size_All,7; if(.@r>=9) bonus2 bAddClass,Class_All,7; },{},{}
+450082,Imperial_Ninja_Suit,Imperial Ninja Suit,4,20,,0,,90,,1,0x20000000,63,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,7; },{},{}
+450083,Imperial_Kunai_Suit,Imperial Kunai Suit,4,20,,0,,90,,1,0x20000000,63,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7; },{},{}
+450084,Imperial_Eswhoo_Robe,Imperial Eswhoo Robe,4,20,,0,,90,,1,0x00800000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,7; },{},{}
+450085,Imperial_Explosion_Robe,Imperial Explosion Robe,4,20,,0,,90,,1,0x00800000,56,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,7; },{},{}
+450086,Grace_Breath_Armor,Grace Breath Armor,4,20,,0,,130,,1,0x00000080,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMaxHPrate,10; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bMaxHPrate,10; },{},{}
+450087,Grace_Knight_Armor,Grace Knight Armor,4,20,,0,,130,,1,0x00000080,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10; },{},{}
+450088,Grace_Spear_Armor,Grace Spear Armor,4,20,,0,,130,,1,0x00004000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450089,Grace_Genesis_Armor,Grace Genesis Armor,4,20,,0,,130,,1,0x00004000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,10; },{},{}
+450090,Grace_Sharp_Suit,Grace Sharp Suit,4,20,,0,,100,,1,0x00000800,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450091,Grace_Aimed_Suit,Grace Aimed Suit,4,20,,0,,100,,1,0x00000800,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450092,Grace_Severe_Suit,Grace Severe Suit,4,20,,0,,100,,1,0x00080000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450093,Grace_Reverb_Suit,Grace Reverb Suit,4,20,,0,,100,,1,0x00080000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10; },{},{}
+450094,Grace_Adora_Robe,Grace Adora Robe,4,20,,0,,100,,1,0x00000100,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,10; },{},{}
+450095,Grace_Duple_Robe,Grace Duple Robe,4,20,,0,,100,,1,0x00000100,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10; },{},{}
+450096,Grace_Knuckle_Suit,Grace Knuckle Suit,4,20,,0,,100,,1,0x00008000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bMaxSPrate,20; if(.@r>=9) bonus2 bAddSize,Size_All,10; },{},{}
+450097,Grace_Tiger_Suit,Grace Tiger Suit,4,20,,0,,100,,1,0x00008000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMaxSPrate,10; if(.@r>=7) bonus bMaxHPrate,5; if(.@r>=9) bonus bMaxHPrate,5; },{},{}
+450098,Grace_Tornado_Armor,Grace Tornado Armor,4,20,,0,,100,,1,0x00000400,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10; },{},{}
+450099,Grace_Vulcan_Armor,Grace Vulcan Armor,4,20,,0,,100,,1,0x00000400,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450100,Grace_Cart_Cannon_Suit,Grace Cart Cannon Suit,4,20,,0,,100,,1,0x00040000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450101,Grace_Cart_Tornado_Suit,Grace Cart Tornado Suit,4,20,,0,,100,,1,0x00040000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10; },{},{}
+450102,Grace_Rolling_Suit,Grace Rolling Suit,4,20,,0,,100,,1,0x00001000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450103,Grace_Assassin_Suit,Grace Assassin Suit,4,20,,0,,100,,1,0x00001000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10; },{},{}
+450104,Grace_Fatal_Suit,Grace Fatal Suit,4,20,,0,,100,,1,0x00020000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10; },{},{}
+450105,Grace_Stalker_Suit,Grace Stalker Suit,4,20,,0,,100,,1,0x00020000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,10; },{},{}
+450106,Grace_Picky_Robe,Grace Picky Robe,4,20,,0,,100,,1,0x80000000,7,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450107,Grace_Catnip_Robe,Grace Catnip Robe,4,20,,0,,100,,1,0x80000000,7,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10; },{},{}
+450108,Grace_Trip_Suit,Grace Trip Suit,4,20,,0,,100,,1,0x40000000,63,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450109,Grace_Fire_Rain_Suit,Grace Fire Rain Suit,4,20,,0,,100,,1,0x40000000,63,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450110,Grace_Crimson_Robe,Grace Crimson Robe,4,20,,0,,100,,1,0x00000200,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,10; },{},{}
+450111,Grace_Frost_Robe,Grace Frost Robe,4,20,,0,,100,,1,0x00000200,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,10; },{},{}
+450112,Grace_Psychic_Robe,Grace Psychic Robe,4,20,,0,,100,,1,0x00010000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10; },{},{}
+450113,Grace_Dust_Robe,Grace Dust Robe,4,20,,0,,100,,1,0x00010000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,10; },{},{}
+450114,Grace_Sun_Suit,Grace Sun Suit,4,20,,0,,100,,1,0x00400000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddClass,Class_All,10; },{},{}
+450115,Grace_Moon_Suit,Grace Moon Suit,4,20,,0,,100,,1,0x00400000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddSize,Size_All,10; if(.@r>=9) bonus2 bAddClass,Class_All,10; },{},{}
+450116,Grace_Ninja_Suit,Grace Ninja Suit,4,20,,0,,100,,1,0x20000000,63,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,10; },{},{}
+450117,Grace_Kunai_Suit,Grace Kunai Suit,4,20,,0,,100,,1,0x20000000,63,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10; },{},{}
+450118,Grace_Eswhoo_Robe,Grace Eswhoo Robe,4,20,,0,,100,,1,0x00800000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,10; },{},{}
+450119,Grace_Explosion_Robe,Grace Explosion Robe,4,20,,0,,100,,1,0x00800000,56,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,10; },{},{}
+450121,Noblesse_Super_Novice_Suit,Noblesse Super Novice Suit,4,20,,0,,70,,1,0x00000001,63,2,16,,100,1,,{ .@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bMaxHPrate,5; },{},{}
+450122,Noblesse_Super_Novice_Robe,Noblesse Super Novice Robe,4,20,,0,,70,,1,0x00000001,63,2,16,,100,1,,{ .@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bMaxHPrate,5; },{},{}
+450123,Imperial_Super_Novice_Suit,Imperial Super Novice Suit,4,20,,0,,90,,1,0x00000001,63,2,16,,125,1,,{ .@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bMaxHPrate,7; },{},{}
+450124,Imperial_Super_Novice_Robe,Imperial Super Novice Robe,4,20,,0,,90,,1,0x00000001,63,2,16,,125,1,,{ .@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bMaxHPrate,7; },{},{}
+450125,Grace_Super_Novice_Suit,Grace Super Novice Suit,4,20,,0,,100,,1,0x00000001,63,2,16,,150,1,,{ .@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bMaxHPrate,10; },{},{}
+450126,Grace_Super_Novice_Robe,Grace Super Novice Robe,4,20,,0,,100,,1,0x00000001,63,2,16,,150,1,,{ .@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bMaxHPrate,10; },{},{}
+// New Shoes
+470016,Noblesse_Attack_Boots,Noblesse Attack Boots,4,0,,0,,20,,1,0xFFFFFFFF,63,2,64,,100,1,0,{ .@r = getrefine(); bonus bBaseAtk,10; bonus bHit,10; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,5; },{},{}
+470017,Noblesse_Magic_Boots,Noblesse Magic Boots,4,0,,0,,20,,1,0xFFFFFFFF,63,2,64,,100,1,0,{ .@r = getrefine(); bonus bMatk,10; bonus bFlee,10; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,5; },{},{}
+470018,Imperial_Attack_Boots,Imperial Attack Boots,4,0,,0,,25,,1,0xFFFFFFFF,63,2,64,,125,1,0,{ .@r = getrefine(); bonus bBaseAtk,15; bonus bHit,15; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,7; },{},{}
+470019,Imperial_Magic_Boots,Imperial Magic Boots,4,0,,0,,25,,1,0xFFFFFFFF,63,2,64,,125,1,0,{ .@r = getrefine(); bonus bMatk,15; bonus bFlee,15; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,7; },{},{}
+470020,Grace_Attack_Boots,Grace Attack Boots,4,0,,0,,30,,1,0xFFFFFFFF,63,2,64,,150,1,0,{ .@r = getrefine(); bonus bBaseAtk,20; bonus bHit,20; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,10; },{},{}
+470021,Grace_Magic_Boots,Grace Magic Boots,4,0,,0,,30,,1,0xFFFFFFFF,63,2,64,,150,1,0,{ .@r = getrefine(); bonus bMatk,20; bonus bFlee,20; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,10; },{},{}
+// New Garment
+480012,Noblesse_Attack_Manteau,Noblesse Attack Manteau,4,,,0,,20,,1,0xFFFFFFFF,63,2,4,,100,1,,{ .@r = getrefine(); bonus bAspdRate,3; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,5; },{},{}
+480014,Noblesse_Magic_Manteau,Noblesse Magic Manteau,4,,,0,,20,,1,0xFFFFFFFF,63,2,4,,100,1,,{ .@r = getrefine(); bonus bVariableCastrate,-5; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,5; },{},{}
+480016,Imperial_Attack_Manteau,Imperial Attack Manteau,4,,,0,,25,,1,0xFFFFFFFF,63,2,4,,125,1,,{ .@r = getrefine(); bonus bAspdRate,5; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,7; },{},{}
+480017,Imperial_Magic_Manteau,Imperial Magic Manteau,4,,,0,,25,,1,0xFFFFFFFF,63,2,4,,125,1,,{ .@r = getrefine(); bonus bVariableCastrate,-7; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,7; },{},{}
+480018,Grace_Attack_Manteau,Grace Attack Manteau,4,,,0,,30,,1,0xFFFFFFFF,63,2,4,,150,1,,{ .@r = getrefine(); bonus bAspdRate,7; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,10; },{},{}
+480019,Grace_Magic_Manteau,Grace Magic Manteau,4,,,0,,30,,1,0xFFFFFFFF,63,2,4,,150,1,,{ .@r = getrefine(); bonus bVariableCastrate,-10; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,10; },{},{}
+// New Accessory
+490014,Noblesse_Attack_Ring,Noblesse Attack Ring,4,0,,0,,5,,1,0xFFFFFFFF,63,2,8,,100,0,0,{ bonus bAspdRate,3; bonus bVariableCastrate,-5; bonus bCritAtkRate,5; },{},{}
+490015,Noblesse_Magic_Ring,Noblesse Magic Ring,4,0,,0,,5,,1,0xFFFFFFFF,63,2,8,,100,0,0,{ bonus bAspdRate,3; bonus bVariableCastrate,-5; bonus2 bMagicAddEle,Ele_All,5; },{},{}
+490017,Imperial_Attack_Ring,Imperial Attack Ring,4,0,,50,,0,,1,0xFFFFFFFF,63,2,8,,125,0,0,{ bonus bAspdRate,5; bonus bVariableCastrate,-7; bonus bCritAtkRate,7; },{},{}
+490018,Imperial_Magic_Ring,Imperial Magic Ring,4,0,,50,,0,,1,0xFFFFFFFF,63,2,8,,125,0,0,{ bonus bAspdRate,5; bonus bVariableCastrate,-7; bonus2 bMagicAddEle,Ele_All,7; },{},{}
+490019,Grace_Attack_Ring,Grace Attack Ring,4,0,,50,,0,,1,0xFFFFFFFF,63,2,8,,150,0,0,{ bonus bAspdRate,7; bonus bVariableCastrate,-10; bonus bCritAtkRate,10; },{},{}
+490020,Grace_Magic_Ring,Grace Magic Ring,4,0,,50,,0,,1,0xFFFFFFFF,63,2,8,,150,0,0,{ bonus bAspdRate,7; bonus bVariableCastrate,-10; bonus2 bMagicAddEle,Ele_All,10; },{},{}
 
 1100003,Concentrated_R_P,Concentrated Red Potion,0,10,,2,,,,,0xFFFFFFFF,63,2,,,120,,,{ itemheal rand(655,675),0; },{},{}
 1100004,Concentrated_B_P,Concentrated Blue Potion,0,10,,2,,,,,0xFFFFFFFF,63,2,,,120,,,{ itemheal 0,rand(340,360); },{},{}
 1100005,Concentrated_G_P,Concentrated Gold Potion,0,10,,2,,,,,0xFFFFFFFF,63,2,,,180,,,{ itemheal rand(2730,2750),0; },{},{}
+

+ 10 - 10
db/re/item_flag.txt

@@ -1785,13 +1785,13 @@
 12622,32 //Boarding_Halter
 12887,32 //C_Wing_Of_Fly
 22508,32 //Para_Team_Mark_
-//100065,32 //WL_MB_SG
-//100066,32 //WL_MB_LOV
-//100067,32 //WL_MB_MS
-//100068,32 //WL_MB_DL
-//100069,32 //WL_MB_JF
-//100070,32 //WL_MB_ES
-//100071,32 //WL_MB_CR
-//100072,32 //WL_MB_CL
-//100073,32 //WL_MB_CM
-//100074,32 //WL_MB_TV
+100065,32 //WL_MB_SG
+100066,32 //WL_MB_LOV
+100067,32 //WL_MB_MS
+100068,32 //WL_MB_DL
+100069,32 //WL_MB_JF
+100070,32 //WL_MB_ES
+100071,32 //WL_MB_CR
+100072,32 //WL_MB_CL
+100073,32 //WL_MB_CM
+100074,32 //WL_MB_TV

+ 137 - 0
db/re/item_trade.txt

@@ -4804,3 +4804,140 @@
 //32021,499,100	//
 //32202,507,100	//
 //32221,499,100	//
+100128,499,100	// Noblesses_Refine_Ticket
+100129,499,100	// Imperial_Refine_Ticket
+100130,499,100	// Grace_Refine_Ticket
+100131,499,100	// Imperial_P_Mo_Garment
+100132,499,100	// Imperial_M_Mo_Garment
+100133,499,100	// Grace_P_Mo_Garment
+100134,499,100	// Grace_M_Mo_Garment
+100135,499,100	// Imperial_P_Mo_Armor
+100136,499,100	// Imperial_M_Mo_Armor
+100137,499,100	// Grace_P_Mo_Armor
+100138,499,100	// Grace_M_Mo_Armor
+450018,499,100	// Noblesse_Breath_Armor
+450019,499,100	// Noblesse_Knight_Armor
+450020,499,100	// Noblesse_Spear_Armor
+450021,499,100	// Noblesse_Genesis_Armor
+450022,499,100	// Noblesse_Sharp_Suit
+450023,499,100	// Noblesse_Aimed_suit
+450024,499,100	// Noblesse_Severe_Suit
+450025,499,100	// Noblesse_Reverb_Suit
+450026,499,100	// Noblesse_Adora_Robe
+450027,499,100	// Noblesse_Duple_Robe
+450028,499,100	// Noblesse_Tornado_Armor
+450029,499,100	// Noblesse_Vulcan_Armor
+450030,499,100	// Noblesse_Cart_Cannon_Suit
+450031,499,100	// Noblesse_Cart_Tornado_Suit
+450032,499,100	// Noblesse_Rolling_Suit
+450033,499,100	// Noblesse_Assassin_Suit
+450034,499,100	// Noblesse_Fatal_Suit
+450035,499,100	// Noblesse_Stalker_Suit
+450036,499,100	// Noblesse_Picky_Robe
+450037,499,100	// Noblesse_Catnip_Robe
+450038,499,100	// Noblesse_Trip_Suit
+450039,499,100	// Noblesse_Fire_Rain_Suit
+450040,499,100	// Noblesse_Crimson_Robe
+450041,499,100	// Noblesse_Frost_Robe
+450042,499,100	// Noblesse_Psychic_Robe
+450043,499,100	// Noblesse_Dust_Robe
+450044,499,100	// Noblesse_Sun_Suit
+450045,499,100	// Noblesse_Moon_Suit
+450046,499,100	// Noblesse_Ninja_Suit
+450047,499,100	// Noblesse_Kunai_Suit
+450048,499,100	// Noblesse_Eswhoo_Robe
+450049,499,100	// Noblesse_Explosion_Robe
+450050,499,100	// Noblesse_Knuckle_Suit
+450051,499,100	// Noblesse_Tiger_Suit
+450052,499,100	// Imperial_Breath_Armor
+450053,499,100	// Imperial_Knight_Armor
+450054,499,100	// Imperial_Spear_Armor
+450055,499,100	// Imperial_Genesis_Armor
+450056,499,100	// Imperial_Sharp_Suit
+450057,499,100	// Imperial_Aimed_Suit
+450058,499,100	// Imperial_Severe_Suit
+450059,499,100	// Imperial_Reverb_Suit
+450060,499,100	// Imperial_Adora_Robe
+450061,499,100	// Imperial_Duple_Robe
+450062,499,100	// Imperial_Knuckle_Suit
+450063,499,100	// Imperial_Tiger_Suit
+450064,499,100	// Imperial_Tornado_Armor
+450065,499,100	// Imperial_Vulcan_Armor
+450066,499,100	// Imperial_Cart_Cannon_Suit
+450067,499,100	// Imperial_Cart_Tornado_Suit
+450068,499,100	// Imperial_Rolling_Suit
+450069,499,100	// Imperial_Assassin_Suit
+450070,499,100	// Imperial_Fatal_Suit
+450071,499,100	// Imperial_Stalker_Suit
+450072,499,100	// Imperial_Picky_Robe
+450073,499,100	// Imperial_Catnip_Robe
+450074,499,100	// Imperial_Trip_Suit
+450075,499,100	// Imperial_Fire_Rain_Suit
+450076,499,100	// Imperial_Crimson_Robe
+450077,499,100	// Imperial_Frost_Robe
+450078,499,100	// Imperial_Psychic_Robe
+450079,499,100	// Imperial_Dust_Robe
+450080,499,100	// Imperial_Sun_Suit
+450081,499,100	// Imperial_Moon_Suit
+450082,499,100	// Imperial_Ninja_Suit
+450083,499,100	// Imperial_Kunai_Suit
+450084,499,100	// Imperial_Eswhoo_Robe
+450085,499,100	// Imperial_Explosion_Robe
+450086,499,100	// Grace_Breath_Armor
+450087,499,100	// Grace_Knight_Armor
+450088,499,100	// Grace_Spear_Armor
+450089,499,100	// Grace_Genesis_Armor
+450090,499,100	// Grace_Sharp_Suit
+450091,499,100	// Grace_Aimed_Suit
+450092,499,100	// Grace_Severe_Suit
+450093,499,100	// Grace_Reverb_Suit
+450094,499,100	// Grace_Adora_Robe
+450095,499,100	// Grace_Duple_Robe
+450096,499,100	// Grace_Knuckle_Suit
+450097,499,100	// Grace_Tiger_Suit
+450098,499,100	// Grace_Tornado_Armor
+450099,499,100	// Grace_Vulcan_Armor
+450100,499,100	// Grace_Cart_Cannon_Suit
+450101,499,100	// Grace_Cart_Tornado_Suit
+450102,499,100	// Grace_Rolling_Suit
+450103,499,100	// Grace_Assassin_Suit
+450104,499,100	// Grace_Fatal_Suit
+450105,499,100	// Grace_Stalker_Suit
+450106,499,100	// Grace_Picky_Robe
+450107,499,100	// Grace_Catnip_Robe
+450108,499,100	// Grace_Trip_Suit
+450109,499,100	// Grace_Fire_Rain_Suit
+450110,499,100	// Grace_Crimson_Robe
+450111,499,100	// Grace_Frost_Robe
+450112,499,100	// Grace_Psychic_Robe
+450113,499,100	// Grace_Dust_Robe
+450114,499,100	// Grace_Sun_Suit
+450115,499,100	// Grace_Moon_Suit
+450116,499,100	// Grace_Ninja_Suit
+450117,499,100	// Grace_Kunai_Suit
+450118,499,100	// Grace_Eswhoo_Robe
+450119,499,100	// Grace_Explosion_Robe
+450121,499,100	// Noblesse_Super_Novice_Suit
+450122,499,100	// Noblesse_Super_Novice_Robe
+450123,499,100	// Imperial_Super_Novice_Suit
+450124,499,100	// Imperial_Super_Novice_Robe
+450125,499,100	// Grace_Super_Novice_Suit
+450126,499,100	// Grace_Super_Novice_Robe
+470016,499,100	// Noblesse_Attack_Boots
+470017,499,100	// Noblesse_Magic_Boots
+470018,499,100	// Imperial_Attack_Boots
+470019,499,100	// Imperial_Magic_Boots
+470020,499,100	// Grace_Attack_Boots
+470021,499,100	// Grace_Magic_Boots
+480012,499,100	// Noblesse_Attack_Manteau
+480014,499,100	// Noblesse_Magic_Manteau
+480016,499,100	// Imperial_Attack_Manteau
+480017,499,100	// Imperial_Magic_Manteau
+480018,499,100	// Grace_Attack_Manteau
+480019,499,100	// Grace_Magic_Manteau
+490014,499,100	// Noblesse_Attack_Ring
+490015,499,100	// Noblesse_Magic_Ring
+490017,499,100	// Imperial_Attack_Ring
+490018,499,100	// Imperial_Magic_Ring
+490019,499,100	// Grace_Attack_Ring
+490020,499,100	// Grace_Magic_Ring

+ 1 - 1
db/re/job_exp.txt

@@ -56,4 +56,4 @@
 99,23:4045,1,60,130,260,460,780,1060,1300,1560,1910,2290,2680,2990,3340,3740,4360,4970,5530,6120,6700,8090,8920,9970,11080,12690,14440,15850,17400,19220,21060,22870,24910,26840,29080,31320,33300,37110,40500,43570,46180,53510,57200,60310,65690,70090,72130,77540,83320,90120,590120,600120,610120,620120,630120,640120,650120,660120,670120,680120,690120,700120,710120,720120,730120,740120,750120,760120,770120,780120,790120,800120,810120,820120,830120,840120,850120,860120,870120,880120,890120,900120,910120,920120,930120,940120,950120,960120,970120,980120,990120,1000120,1010120,1020120,1030120,1040120,1050120,1060120,1070120,1080120,999999999
 
 //Job - Summoner
-70,4218:4220,1,60,130,260,460,780,1060,1300,1560,1910,2500,4200,7000,10300,15900,18900,20900,22600,24900,28800,33100,35100,40500,44100,46300,48500,50700,56000,59000,63500,68100,75000,85700,90500,106000,112000,355000,615000,917000,1253000,1595000,2007000,2430000,2868000,3420000,3863000,4504000,4998000,5769000,6321000,7585200,9860760,13805064,20707596,33132154,53011447,72890740,92770033,112649326,132528619,319836691,367812195,422984024,486431628,559396372,632361116,705325860,778290604,851255348,924220092,999999999
+60,4218:4220,1,60,130,260,460,780,1060,1300,1560,1910,2500,4200,7000,10300,15900,18900,20900,22600,24900,28800,33100,35100,40500,44100,46300,48500,50700,56000,59000,63500,68100,75000,85700,90500,106000,112000,355000,615000,917000,1253000,1595000,2007000,2430000,2868000,3420000,3863000,4504000,4998000,5769000,6321000,7585200,9860760,13805064,20707596,33132154,53011447,72890740,92770033,112649326,132528619,999999999

+ 14 - 14
db/re/mob_db.txt

@@ -2318,7 +2318,7 @@
 3158,RUIN_BELIEVER2,Ruin Grace Believer,Ruin Grace Believer,100,61350,1,4666,3874,1,993,250,91,50,88,61,51,62,136,60,10,12,1,7,40,0x0000085,200,800,2112,768,0,0,0,0,0,0,0,6753,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 3159,ILLEGAL_PROMOTION,Illegal Promotion,Illegal Promotion,100,10,1,0,0,1,1,1,1,50,1,1,1,1,1,1,10,12,0,0,40,0x0370020,200,800,2112,768,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
 //3160,BOILED_RICE_DUANWU
-//3161,BOMB
+3161,BOMB,Bomb,Bomb,130,60250,0,0,0,1,1028,144,92,82,126,127,62,57,109,34,10,12,0,0,67,0x0,150,500,360,360,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
 //3162,ELEPHANT
 //3163,GORILLA
 //3164,LION
@@ -2781,19 +2781,19 @@
 //3618,V_G_ALPHOCCIO_
 //3619,V_G_TRENTINI_
 //3620,NYANGPORING
-//3621,EP16_2_MM_CUTIE
-//3622,EP16_2_MM_S_GUARDS
-//3623,EP16_2_MM_U_ENERGY_R
-//3624,EP16_2_MM_U_ENERGY_G
-//3625,EP16_2_MM_U_ENERGY_B
-//3626,EP16_2_H_HUNTER_V
-//3627,EP16_2_H_HUNTER_MD
-//3628,EP16_2_H_HUNTER_EV
-//3629,EP16_2_BROKEN_GUN
-//3630,EP16_2_E_BOLKOBA
-//3631,EP16_2_HUMAN_KIMERA
-//3632,EP16_2_MATTER_KIMERA
-//3633,EP16_2_VENOM_KIMERA
+3621,EP16_2_MM_CUTIE,Pet Child,Pet Child,120,3500000,1,1200000,600000,2,3400,1900,220,150,160,70,100,40,240,50,10,12,2,2,67,0x6283695,150,864,1268,480,5000,603,5000,617,5000,607,5000,28913,10,7444,500,617,500,603,500,607,500,6223,500,6224,500,0,0,0,0,27152,1
+3622,EP16_2_MM_S_GUARDS,Special Guard,Special Guard,100,21914,1,242,227,1,725,170,80,90,108,64,57,62,150,42,10,12,1,7,23,0x3885,200,1000,780,420,0,0,0,0,0,0,0,990,10,999,10,715,10,603,3,608,3,756,15,984,8,0,0,0,0,0,0
+3623,EP16_2_MM_U_ENERGY_R,Plasma R,Plasma R,1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,23,0x6370000,2000,1,1,1,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
+3624,EP16_2_MM_U_ENERGY_G,Plasma G,Plasma G,1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,22,0x6370000,2000,1,1,1,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
+3625,EP16_2_MM_U_ENERGY_B,Plasma B,Plasma B,1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,21,0x6370000,2000,1,1,1,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
+3626,EP16_2_H_HUNTER_V,Upgraded Heart Hunter,Upgraded Heart Hunter,110,51785,1,5889,6003,1,2461,623,172,98,108,150,90,66,190,15,10,12,2,7,47,0x3885,400,1296,1902,480,0,0,0,0,0,0,0,25159,500,757,15,985,8,28224,20,28225,20,28226,20,0,0,0,0,0,0,27149,1
+3627,EP16_2_H_HUNTER_MD,Heart Hunter Guard,Heart Hunter Guard,105,41428,1,4908,5002,1,1055,267,73,42,72,106,64,44,145,10,10,12,1,7,47,0x3885,200,864,1268,480,0,0,0,0,0,0,0,25159,500,999,10,998,10,603,3,608,3,13138,3,28223,3,0,0,0,0,27149,1
+3628,EP16_2_H_HUNTER_EV,Heart Hunter Ebel,Heart Hunter Ebel,110,2800000,1,800000,400000,1,1700,1000,100,100,100,70,100,30,240,80,10,12,1,7,47,0x6283695,150,432,1268,480,5000,603,5000,617,5000,607,5000,25159,1000,7444,500,617,500,603,500,607,500,13462,10,13461,10,13460,10,0,0,27151,1
+3629,EP16_2_BROKEN_GUN,Grudge of Broken Gun,Grudge of Broken Gun,110,24911,1,3908,3908,5,770,99,95,20,117,68,65,53,144,37,10,12,1,1,48,0x3885,200,576,720,432,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
+3630,EP16_2_E_BOLKOBA,Elena Bolkova,Elena Bolkova,115,2000000,1,300000,150000,7,1200,300,120,70,80,120,66,50,250,60,10,12,1,7,64,0x3885,150,864,1268,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
+3631,EP16_2_HUMAN_KIMERA,Human Kimera,Human Kimera,100,36968,1,3798,3298,1,1441,207,80,100,50,50,100,100,140,1,10,12,1,2,40,0x3885,250,772,672,360,0,0,0,0,0,0,0,25157,1000,23078,200,23077,200,603,30,608,30,756,150,984,80,23076,200,0,0,27147,1
+3632,EP16_2_MATTER_KIMERA,Material Kimera,Material Kimera,100,36968,1,3798,3289,1,1441,207,120,50,100,50,100,50,140,1,10,12,1,2,43,0x3885,250,772,672,360,0,0,0,0,0,0,0,25158,1000,23078,200,23077,200,603,30,608,30,756,150,984,80,23076,200,0,0,27148,1
+3633,EP16_2_VENOM_KIMERA,Venomous Chimera,Venomous Chimera,110,2800000,1,800000,400000,1,2160,1000,150,150,113,75,150,113,250,1,10,12,2,2,85,0x6283695,150,772,672,360,5000,12246,5000,617,5000,607,5000,25156,1000,7444,500,617,500,603,500,607,500,6223,500,1447,10,0,0,0,0,27150,1
 //3634,MYSTCASE_GIANT
 //3635,EVENT_KOBOLD
 3636,LITTLE_ISIS,Little Isis,Little Isis,59,2092,1,531,597,1,192,229,83,5,58,43,22,5,39,15,10,12,2,6,27,0x2003095,200,1384,768,336,0,0,0,0,0,0,0,936,5335,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

+ 48 - 0
db/re/mob_skill_db.txt

@@ -11883,6 +11883,8 @@
 3126,ROCK_STEP@BS_HAMMERFALL,attack,110,5,1000,1000,5000,no,target,always,0,,,,,,,
 3127,KICK_STEP@ASC_BREAKER,attack,379,5,1000,0,5000,yes,target,always,0,,,,,,,
 3128,KICK_AND_KICK@NPC_STUNATTACK,attack,179,3,500,1000,5000,no,target,always,0,,,,,,,
+3161,BOMB@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,always,0,,,,,,,
+3161,BOMB@NPC_SELFDESTRUCTION,attack,173,1,10000,3000,5000,no,self,myhpltmaxrate,99,,,,,,,
 3253,SYS_MSG@AL_HEAL,attack,28,11,5000,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
 3253,SYS_MSG@AL_HEAL,chase,28,11,5000,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
 3253,SYS_MSG@AL_HEAL,idle,28,11,5000,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
@@ -11898,3 +11900,49 @@
 3505,DR_BIG_EGGRING@NPC_SUMMONSLAVE,attack,196,4,10000,2000,10000,no,self,slavele,3,3508,,,,,,
 3505,DR_BIG_EGGRING@NPC_SUMMONSLAVE,idle,196,4,10000,2000,10000,no,self,slavele,3,3508,,,,,,
 
+// ep16.2
+3621,EP16_2_MM_CUTIE@NPC_AGIUP,attack,350,1,10000,0,20000,yes,self,always,0,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_MENTALBREAKER,attack,159,2,10000,1000,30000,no,target,always,0,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_WIDESIGHT,attack,669,1,10000,0,30000,yes,self,always,0,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_BLEEDING,attack,660,5,10000,0,40000,yes,target,always,0,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_DARKNESSBREATH,attack,658,5,500,3000,10000,no,target,always,0,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_VAMPIRE_GIFT,attack,679,1,10000,300,20000,no,self,myhpltmaxrate,50,,,,,,,
+3621,EP16_2_MM_CUTIE@NPC_BLOODDRAIN,attack,199,1,10000,300,10000,no,target,myhpltmaxrate,30,,,,,,,
+3622,EP16_2_MM_S_GUARDS@MG_FIREBOLT,chase,19,5,10000,0,10000,yes,target,always,0,,,,,,,
+3622,EP16_2_MM_S_GUARDS@MG_FIREBALL,attack,17,5,2000,500,1000,no,target,always,0,,,,,,,
+3622,EP16_2_MM_S_GUARDS@NPC_FIREATTACK,attack,186,3,1000,500,5000,no,target,always,0,,,,,,,
+3626,EP16_2_H_HUNTER_V@SM_ENDURE,idle,8,1,10000,0,30000,yes,self,always,0,,,,,,,
+3626,EP16_2_H_HUNTER_V@NPC_CRITICALSLASH,chase,170,1,3000,0,5000,yes,target,always,0,,,,,,,
+3626,EP16_2_H_HUNTER_V@NPC_PIERCINGATT,attack,158,5,2000,500,3000,no,target,always,0,,,,,,,
+3627,EP16_2_H_HUNTER_MD@MO_BODYRELOCATION,attack,264,1,1000,0,10000,yes,target,always,0,,,,,,,
+3627,EP16_2_H_HUNTER_MD@AL_INCAGI,attack,29,1,1000,0,10000,yes,self,always,0,,,,,,,
+3627,EP16_2_H_HUNTER_MD@NPC_POWERUP,idle,349,2,10000,0,30000,yes,self,always,0,,,,,,,
+3627,EP16_2_H_HUNTER_MD@SM_BASH,attack,5,5,2000,500,1000,no,target,always,0,,,,,,,
+3627,EP16_2_H_HUNTER_MD@KN_BOWLINGBASH,attack,62,3,1000,500,5000,no,target,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_AGIUP,attack,350,1,5000,0,20000,yes,self,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@MO_BODYRELOCATION,chase,264,1,2000,0,10000,yes,target,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_BLEEDING,attack,660,5,2000,500,10000,no,target,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_CRITICALWOUND,attack,673,3,1000,500,20000,no,target,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_WIDESIGHT,attack,669,1,10000,0,30000,yes,self,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_WEAPONBRAKER,attack,343,1,10000,0,40000,yes,target,always,0,,,,,,,
+3628,EP16_2_H_HUNTER_EV@NPC_DARKBREATH,attack,202,5,2000,3000,10000,no,target,myhpltmaxrate,60,,,,,,,
+3629,EP16_2_BROKEN_GUN@NPC_COMBOATTACK,attack,171,5,2000,500,5000,no,target,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_AGIUP,chase,350,1,10000,0,20000,yes,self,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_CRITICALWOUND,attack,673,5,500,1000,30000,no,target,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_STUNATTACK,attack,179,1,1000,500,5000,no,target,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_WIDESIGHT,attack,669,1,10000,0,30000,yes,self,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_PULSESTRIKE,attack,661,1,500,2000,5000,no,self,always,0,,,,,,,
+3630,EP16_2_E_BOLKOBA@NPC_MAGICMIRROR,attack,671,10,2000,3000,20000,no,self,myhpltmaxrate,20,,,,,,,
+3631,EP16_2_HUMAN_KIMERA@NPC_AGIUP,idle,350,1,10000,0,60000,yes,self,always,0,,,,,,,
+3631,EP16_2_HUMAN_KIMERA@NPC_COMBOATTACK,chase,171,1,1000,500,5000,no,target,always,0,,,,,,,
+3631,EP16_2_HUMAN_KIMERA@NPC_RANDOMATTACK,attack,183,1,1000,500,5000,no,target,always,0,,,,,,,
+3632,EP16_2_MATTER_KIMERA@NPC_POWERUP,idle,349,1,10000,0,60000,yes,self,always,0,,,,,,,
+3632,EP16_2_MATTER_KIMERA@NPC_COMBOATTACK,chase,171,1,1000,500,5000,no,target,always,0,,,,,,,
+3632,EP16_2_MATTER_KIMERA@NPC_FIREATTACK,attack,186,1,1000,500,5000,no,target,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_POWERUP,attack,349,5,10000,0,20000,yes,self,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_AGIUP,attack,350,5,10000,0,20000,yes,self,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_POISON,attack,176,5,1000,500,5000,no,target,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_POISONATTACK,attack,188,3,1000,0,5000,yes,target,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_WIDESIGHT,attack,669,1,10000,0,30000,yes,self,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@NPC_ACIDBREATH,attack,657,6,10000,3000,25000,no,target,always,0,,,,,,,
+3633,EP16_2_VENOM_KIMERA@RG_STRIPARMOR,attack,217,5,500,1000,5000,no,target,always,0,,,,,,,

+ 6 - 6
db/re/produce_db.txt

@@ -661,12 +661,12 @@
 265,100232,29,2497,1,1092,10,507,45,608,5
 //-- Blue Herb Activator <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 15 Blue Herb, 5 Yggdrasil Seed
 266,100233,29,2497,1,1092,10,510,15,608,5
-//-- Concentrated Red Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 10 Empty Potion Bottle, 15 Red Syrup
-267,1100003,29,2497,1,1092,10,1093,10,11621,15
-//-- Concentrated Blue Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 10 Empty Potion Bottle, 15 Blue Syrup
-268,1100004,29,2497,1,1092,10,1093,10,11624,15
-//-- Concentrated Golden Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 10 Empty Potion Bottle, 15 White Syrup, 10 Yellow Syrup
-269,1100005,29,2497,1,1092,10,1093,10,11623,15,11622,10
+//-- Concentrated Red Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 5 Empty Potion Bottle, 15 Red Syrup
+267,1100003,29,2497,1,1092,10,1093,5,11621,15
+//-- Concentrated Blue Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 5 Empty Potion Bottle, 15 Blue Syrup
+268,1100004,29,2497,1,1092,10,1093,5,11624,15
+//-- Concentrated Golden Syrup Potion <-- GN_S_PHARMACY Lvl, 10 Empty Testtube, 5 Empty Potion Bottle, 10 White Syrup, 10 Yellow Syrup
+269,1100005,29,2497,1,1092,10,1093,5,11623,10,11622,10
 //===============================================
 
 //--------------------LEVEL 30-----------

+ 313 - 53
db/re/quest_db.yml

@@ -2466,6 +2466,29 @@ Body:
     Title: Mad Love for Wife(5)
   - Id: 5468
     Title: Mad Love for Wife(6)
+  - Id: 5727
+    Title: Suddenly in charge
+    TimeLimit: 4h
+  - Id: 5728
+    Title: Headache
+  - Id: 5729
+    Title: To Einbech
+  - Id: 5730
+    Title: Things that can destroy the device
+  - Id: 5731
+    Title: Clana Namieri
+  - Id: 5732
+    Title: To Lighthalzen
+  - Id: 5733
+    Title: Clana Namieri
+  - Id: 5734
+    Title: Core materials are always a problem
+  - Id: 5735
+    Title: To Yuno
+  - Id: 5736
+    Title: To Einbroch
+  - Id: 5737
+    Title: Clana Namieri
   - Id: 6000
     Title: Job Change to Taekwon
   - Id: 6001
@@ -4255,6 +4278,81 @@ Body:
     Title: EMT
   - Id: 7723
     Title: The potential within
+  - Id: 7731
+    Title: Secret Action
+  - Id: 7732
+    Title: Searching the suspect
+  - Id: 7733
+    Title: Pursuit!
+  - Id: 7734
+    Title: Arrest
+  - Id: 7735
+    Title: Secret Action 2
+  - Id: 7736
+    Title: Small differences between sightseeing and secret bussiness
+  - Id: 7737
+    Title: Together with Rebel
+  - Id: 7738
+    Title: Next operation plan
+  - Id: 7739
+    Title: Find Star of Blessing!
+  - Id: 7740
+    Title: Star of Blessing obtained
+  - Id: 7741
+    Title: Let's return
+  - Id: 7742
+    Title: Sweeping the remnants
+    Targets:
+      - Mob: EP16_2_MM_CUTIE
+        Count: 1
+  - Id: 7743
+    Title: Sweeping the remnants (Standby)
+    TimeLimit: 4h
+  - Id: 7744
+    Title: Hiding Researcher
+  - Id: 7745
+    Title: Hiding Researcher (Standby)
+    TimeLimit: 4h
+  - Id: 7746
+    Title: A pair of old rings
+  - Id: 7747
+    Title: Locket Pendant
+  - Id: 7748
+    Title: Wooden Rosary
+  - Id: 7749
+    Title: Bow Thimble Decoration
+  - Id: 7750
+    Title: Assassin Dagger with Glyph
+  - Id: 7751
+    Title: Portable Sewing Kit
+  - Id: 7752
+    Title: Well hidden
+  - Id: 7753
+    Title: Well hidden
+  - Id: 7754
+    Title: Well hidden
+  - Id: 7755
+    Title: Well hidden
+  - Id: 7756
+    Title: Well hidden
+  - Id: 7757
+    Title: Well hidden
+  - Id: 7758
+    Title: Well hidden
+  - Id: 7759
+    Title: Well hidden
+  - Id: 7760
+    Title: Well hidden
+  - Id: 7761
+    Title: Make Chimeras rest in peace
+    Targets:
+      - Mob: EP16_2_HUMAN_KIMERA
+        Count: 10
+      - Mob: EP16_2_MATTER_KIMERA
+        Count: 10
+  - Id: 7762
+    Title: Make Chimeras rest in peace (Standby)
+    TimeLimit: 4h
   - Id: 7790
     Title: Rock Ridge, Land of Opportunities
   - Id: 7791
@@ -6349,6 +6447,64 @@ Body:
         Rate: 5000
   - Id: 11445
     Title: Vigilante Corp
+  - Id: 11454
+    Title: Doubt
+  - Id: 11455
+    Title: Doubt
+  - Id: 11456
+    Title: Doubt
+  - Id: 11457
+    Title: Doubt
+  - Id: 11458
+    Title: Doubt
+  - Id: 11459
+    Title: Doubt
+  - Id: 11460
+    Title: Doubt
+  - Id: 11461
+    Title: Doubt
+  - Id: 11462
+    Title: Doubt
+  - Id: 11463
+    Title: You said the party is ready?
+  - Id: 11464
+    Title: You said the party is ready?
+  - Id: 11465
+    Title: Dien's High Class Tea
+    Targets:
+      - Mob: EP16_2_H_HUNTER_EV
+        Count: 1
+    Drops:
+      - Mob: EP16_2_H_HUNTER_EV
+        Item: High_Class_Tea
+        Rate: 10000
+  - Id: 11466
+    Title: Dien's High Class Tea
+    TimeLimit: 4h
+  - Id: 11467
+    Title: Ridsh's Old Letter
+    Targets:
+      - Mob: EP16_2_H_HUNTER_V
+        Count: 1
+    Drops:
+      - Mob: EP16_2_H_HUNTER_V
+        Item: Old_Letter
+        Rate: 5000
+  - Id: 11468
+    Title: Ridsh's Old Letter
+    TimeLimit: 4h
+  - Id: 11469
+    Title: Cotness's Shiny Ring
+    Targets:
+      - Mob: EP16_2_H_HUNTER_MD
+        Count: 5
+    Drops:
+      - Mob: EP16_2_H_HUNTER_MD
+        Item: Very_Shining_Ring
+        Rate: 5000
+  - Id: 11470
+    Title: Cotness's Shiny Ring
+    TimeLimit: 4h
   - Id: 12000
     Title: An old friend
   - Id: 12001
@@ -7194,8 +7350,17 @@ Body:
     TimeLimit: +23h
   - Id: 12363
     Title: ?????? ?? ??
+  - Id: 12368
+    Title: Operate the old robot
   - Id: 12369
     Title: Secret Business Relation
+  - Id: 12374
+    Title: Heart Hunter Base occupation
+  - Id: 12375
+    Title: Base maintenance
+    TimeLimit: 4h
+  - Id: 12376
+    Title: First transaction
   - Id: 12381
     Title: New Continent's Food Supplier
   - Id: 12382
@@ -8274,6 +8439,86 @@ Body:
   - Id: 14592
     Title: Resting Time
     TimeLimit: 4h
+  - Id: 14595
+    Title: To Einbech train station
+  - Id: 14596
+    Title: Follow the trails
+  - Id: 14597
+    Title: Corner of Einbech
+  - Id: 14598
+    Title: Invisible entrance
+  - Id: 14599
+    Title: A glass of tea gratitude
+  - Id: 14600
+    Title: Gentleman on second floor
+  - Id: 14601
+    Title: Ladies on second floor
+  - Id: 14602
+    Title: Hunter on second floor
+  - Id: 14603
+    Title: Pipe repair materials
+    Targets:
+      - Mob: WASTE_STOVE
+        Count: 10
+  - Id: 14604
+    Title: National Fuel Solar Fuel
+    Targets:
+      - Mob: WASTE_STOVE
+        Count: 10
+  - Id: 14605
+    Title: Sparkling things
+    Targets:
+      - Mob: OBSIDIAN
+        Count: 5
+      - Mob: MINERAL
+        Count: 5
+  - Id: 14606
+    Title: Pipe repair materials
+    Targets:
+      - Mob: WASTE_STOVE
+        Count: 10
+  - Id: 14607
+    Title: National Fuel Solar Fuel
+    Targets:
+      - Mob: WASTE_STOVE
+        Count: 10
+  - Id: 14608
+    Title: Sparkling things
+    Targets:
+      - Mob: OBSIDIAN
+        Count: 5
+      - Mob: MINERAL
+        Count: 5
+  - Id: 14609
+    Title: Quiet time
+    TimeLimit: 4h
+  - Id: 14610
+    Title: Gun recycling
+    Targets:
+      - Mob: EP16_2_BROKEN_GUN
+        Count: 5
+    Drops:
+      - Mob: EP16_2_BROKEN_GUN
+        Item: Broken_Gun_Wreck
+        Rate: 5000
+  - Id: 14611
+    Title: Gun recycling
+    Targets:
+      - Mob: EP16_2_BROKEN_GUN
+        Count: 5
+    Drops:
+      - Mob: EP16_2_BROKEN_GUN
+        Item: Broken_Gun_Wreck
+        Rate: 5000
+  - Id: 14612
+    Title: Time for repair
+    TimeLimit: 4h
+  - Id: 14613
+    Title: Erst on second floor
+  - Id: 14614
+    Title: Convince the leaders
+  - Id: 14615
+    Title: Between negotiation and deception
   - Id: 14672
     Title: Preparing for the Firework Festival
     Targets:
@@ -8361,111 +8606,126 @@ Body:
   - Id: 16008
     Title: Quiz time!
   - Id: 16009
-    Title: Quiz time!
+    Title: Fighting is the language of warmonger
   - Id: 16010
-    Title: Daewoon's Test
+    Title: Battle in great condition
+    TimeLimit: 4h
   - Id: 16011
-    Title: Sir Jore's Test
+    Title: Arena entrance
   - Id: 16012
-    Title: Sir Jore's Materials
+    Title: Troublesome twin
   - Id: 16013
-    Title: The Stone of Sage
+    Title: "Testimony: Chef's story"
   - Id: 16014
-    Title: The Stone of Sage
+    Title: "Testimony: Sniper's story"
   - Id: 16015
-    Title: Lady Jesqurienne
+    Title: The cause of failure is a careless attempt
   - Id: 16016
-    Title: Jesquerinne's Quiz Challenge
+    Title: Borrowing wisdom of the experts
   - Id: 16017
-    Title: Failed Quiz Challenge
+    Title: Twin's sincere confession
   - Id: 16018
-    Title: Quiz Challenge Triumph
+    Title: Encourage instead of punishment
   - Id: 16019
-    Title: Search for Dearles
+    Title: Elena Volkova's Solution
   - Id: 16020
-    Title: Dearles' Test
+    Title: Daily babysitting
+    TimeLimit: 4h
   - Id: 16021
-    Title: Test of Appreciation
+    Title: "Service: Book lending agent"
   - Id: 16022
-    Title: Dearles' Test Part Two
+    Title: "Service: Book lending agent"
   - Id: 16023
-    Title: Rhythm Test Passed
+    Title: "Service: Book lending agent"
   - Id: 16024
-    Title: Find Bakerlan
+    Title: "Service: Loaned book delivery"
   - Id: 16025
-    Title: Bakerlan's delivery
+    Title: "Service: Exploring the Mine Dungeon"
+    Targets:
+      - Mob: PITMAN
+        Count: 30
   - Id: 16026
-    Title: Mahatra's delivery
+    Title: "Service: Exploring the Mine Dungeon"
+    Targets:
+      - Mob: NOXIOUS
+        Count: 20
+      - Mob: VENOMOUS
+        Count: 20
   - Id: 16027
-    Title: Bakerlan's Receipt
+    Title: "Service: Cookies delivery"
   - Id: 16028
-    Title: Find Seylin
+    Title: "Service: Cookies delivery"
   - Id: 16029
-    Title: Vigorgra Medicine
+    Title: "Service: Cookies delivery"
   - Id: 16030
-    Title: Vigorgra Ingredients
+    Title: "Service: Cookies delivery"
   - Id: 16031
-    Title: Vigorgra Ingredients
+    Title: "Service: Cookies delivery"
   - Id: 16032
-    Title: Seylin's Request
+    Title: Hospitality to senior
   - Id: 16033
-    Title: Back to Seylin
+    Title: Bring dessert and listen the story
   - Id: 16034
-    Title: Back to Mahatra
+    Title: Sweet cookies once a day
+    TimeLimit: 4h
   - Id: 16035
-    Title: Report to Bakerlan
+    Title: "Delivery: Explosive revolver materials"
   - Id: 16036
-    Title: The last Crumb
+    Title: Expert's keen eye
   - Id: 16037
-    Title: Finding Engel Howard
+    Title: Material collection once a day
+    TimeLimit: 4h
   - Id: 16038
-    Title: Liana's Letter
+    Title: Collect 2 Oridecons
   - Id: 16039
-    Title: Combining the Starlight
+    Title: Collect 2 Eluniums
   - Id: 16040
-    Title: Letter to Engel's Family
+    Title: Collect 5 Irons
   - Id: 16041
-    Title: Talk to Liana
+    Title: "Investigation: Capture strolling cat operation"
   - Id: 16042
-    Title: Sobbing Starlight Progress
+    Title: Charity temporarily stays
+    TimeLimit: 4h
   - Id: 16043
-    Title: Restored Sobbing Starlight
+    Title: "Investigation: Capture someone's craving operation"
   - Id: 16044
-    Title: Combining the Starlight
+    Title: In charge of Charity
   - Id: 16045
-    Title: Starlight message
+    Title: Veteran's small memorial service
   - Id: 16046
-    Title: The man in Umbala
+    Title: DIY obtaining bouquet materials
   - Id: 16047
-    Title: Into the Tree
+    Title: Quiet memorial ceremony
   - Id: 16048
-    Title: Ancient Papers
+    Title: Traces of old story
   - Id: 16049
-    Title: Record of Ancient Language
+    Title: Quiet dawn
+    TimeLimit: 4h
   - Id: 16050
-    Title: The Fastidious Old Man
+    Title: Tribute hour
   - Id: 16051
-    Title: Blurry Vision
+    Title: DIY obtaining bouquet materials
   - Id: 16052
-    Title: Translating the Document
+    Title: Quiet memorial ceremony
   - Id: 16053
-    Title: Translated Ancient Language
+    Title: Ongoing old story
   - Id: 16054
-    Title: Where the rejected live
+    Title: Differentiated advertising strategy
   - Id: 16055
-    Title: Misfortunate of Niflheim
+    Title: "Advertising: Dou you want a clean city?"
   - Id: 16056
-    Title: Removed Curse
+    Title: "Advertising: Then blow it all away!"
   - Id: 16057
-    Title: Meeting the witch
+    Title: "Advertising: Suitable revenge for old age!"
   - Id: 16058
-    Title: Wing Of Crow
+    Title: Slow advertising effect
+    TimeLimit: 4h
   - Id: 16059
-    Title: Wing Of Crow
+    Title: Differentiated advertising strategy
   - Id: 16060
-    Title: Misfortunate of Niflheim
+    Title: Fighting is the language of warmonger
   - Id: 16061
-    Title: Bard in Niflheim
+    Title: Fair and equitable result
   - Id: 16062
     Title: Gen of Niflheim
   - Id: 16063

+ 0 - 1
db/re/skill_db.yml

@@ -9711,7 +9711,6 @@ Body:
         Time: 55000
       - Level: 10
         Time: 60000
-    Duration2: 1000
     Requires:
       SpCost: 50
       Weapon:

+ 8 - 0
doc/atcommands.txt

@@ -920,6 +920,14 @@ Resets stats (@streset), skills (@skreset), or both (@reset).
 @feelreset
 
 Resets a Star Gladiator's marked maps.
+Only works on Star Gladiator and Star Emperor classes.
+
+---------------------------------------
+
+@hatereset
+
+Resets a Star Gladiator's marked monsters.
+Only works on Star Gladiator and Star Emperor classes.
 
 ---------------------------------------
 

+ 18 - 2
doc/script_commands.txt

@@ -5676,6 +5676,20 @@ Used in reset NPC's (duh!)
 
 ---------------------------------------
 
+*resetfeel({<char_id>});
+
+This command will reset the Star Gladiator's designated maps on the invoking character.
+Only works on Star Gladiator and Star Emperor classes.
+
+---------------------------------------
+
+*resethate({<char_id>});
+
+This command will reset the Star Gladiator's designated monsters on the invoking character.
+Only works on Star Gladiator and Star Emperor classes.
+
+---------------------------------------
+
 *sc_start <effect type>,<ticks>,<value 1>{,<rate>,<flag>{,<GID>}};
 *sc_start2 <effect type>,<ticks>,<value 1>,<value 2>{,<rate>,<flag>{,<GID>}};
 *sc_start4 <effect type>,<ticks>,<value 1>,<value 2>,<value 3>,<value 4>{,<rate>,<flag>{,<GID>}};
@@ -9378,6 +9392,7 @@ QMARK_PURPLE - Purple Marker
 Adds the first waiting player from the chat room of the given NPC to an existing battleground group.
 The player will also be warped to the default spawn point of the battle group or to the specified coordinates
 <x> and <y> on the given <map>.
+Note: The map need the mapflag MF_BATTLEGROUND otherwise the player is removed from the Battleground team.
 
 ---------------------------------------
 
@@ -9423,6 +9438,7 @@ Returns battle group ID on success. Returns 0 on failure.
 
 Adds an attached player or <char id> if specified to an existing battleground group. The player will also be warped
 to the default spawn point of the battle group or to the specified coordinates <x> and <y> on the given <map>.
+Note: The map need the mapflag MF_BATTLEGROUND otherwise the player is removed from the Battleground team.
 
 Returns true on success. Returns false on failure.
 
@@ -9552,8 +9568,8 @@ Example:
 Retrieves data related to given Battle Group. Type can be one of the following:
 
 	0 - Amount of players currently belonging to the group.
-	1 - Store GID of players in <Battle Group> in a temporary global array $@arenamembers
-		and returns amount of players currently belonging to the group.
+	1 - Store GID of players in <Battle Group> in a temporary global array $@arenamembers,
+		stores and also returns the amount of players currently belonging to the group in $@arenamemberscount.
 
 ---------------------------------------
 

+ 4 - 2
npc/battleground/kvm/kvm01.txt

@@ -333,6 +333,9 @@ OnTimer55000:
 
 OnTimer60000:
 	stopnpctimer;
+	if (getbattleflag("feature.bgqueue"))
+		bg_reserve "bat_c01", true;
+	mapwarp "bat_c01","bat_room",154,150;
 	set getvariableofnpc(.Croix_Count,"KvM01_BG"), 0;
 	set getvariableofnpc(.Guillaume_Count,"KvM01_BG"), 0;
 	set $@KvM01BG_Victory, 0;
@@ -342,9 +345,8 @@ OnTimer60000:
 		bg_unbook "bat_c01";
 	disablenpc "KVM Officer#KVM01A";
 	disablenpc "KVM Officer#KVM01B";
-	mapwarp "bat_c01","bat_room",154,150;
-	maprespawnguildid "bat_c01",0,3; // Just in case someone else
 	set $@KvM01BG, 0;
+	end;
 
 OnGuillaumeJoin:
 OnCroixJoin:

+ 4 - 2
npc/battleground/kvm/kvm02.txt

@@ -333,6 +333,9 @@ OnTimer55000:
 
 OnTimer60000:
 	stopnpctimer;
+	if (getbattleflag("feature.bgqueue"))
+		bg_reserve "bat_c02", true;
+	mapwarp "bat_c02","bat_room",154,150;
 	set getvariableofnpc(.Croix_Count,"KvM02_BG"), 0;
 	set getvariableofnpc(.Guillaume_Count,"KvM02_BG"), 0;
 	set $@KvM02BG_Victory, 0;
@@ -342,9 +345,8 @@ OnTimer60000:
 		bg_unbook "bat_c02";
 	disablenpc "KVM Officer#KVM02A";
 	disablenpc "KVM Officer#KVM02B";
-	mapwarp "bat_c02","bat_room",154,150;
-	maprespawnguildid "bat_c02",0,3; // Just in case someone else
 	set $@KvM02BG, 0;
+	end;
 
 OnGuillaumeJoin:
 OnCroixJoin:

+ 4 - 2
npc/battleground/kvm/kvm03.txt

@@ -333,6 +333,9 @@ OnTimer55000:
 
 OnTimer60000:
 	stopnpctimer;
+	if (getbattleflag("feature.bgqueue"))
+		bg_reserve "bat_c03", true;
+	mapwarp "bat_c03","bat_room",154,150;
 	set getvariableofnpc(.Croix_Count,"KvM03_BG"), 0;
 	set getvariableofnpc(.Guillaume_Count,"KvM03_BG"), 0;
 	set $@KvM03BG_Victory, 0;
@@ -342,9 +345,8 @@ OnTimer60000:
 		bg_unbook "bat_c03";
 	disablenpc "KVM Officer#KVM03A";
 	disablenpc "KVM Officer#KVM03B";
-	mapwarp "bat_c03","bat_room",154,150;
-	maprespawnguildid "bat_c03",0,3; // Just in case someone else
 	set $@KvM03BG, 0;
+	end;
 
 OnGuillaumeJoin:
 OnCroixJoin:

+ 1 - 0
npc/instances/SealedShrine.txt

@@ -766,6 +766,7 @@ OnInstanceInit: // Temporary fix for @reloadscript.
 		set 'ins_baphomet,5;
 		specialeffect EF_TELEPORTATION;
 		enablenpc instance_npcname("ins_bapho_to_2f");
+		donpcevent instance_npcname("ins_baphomet_1f_timer")+"::OnDisable";
 		mes "[Ancient Hero's Soul]";
 		mes "Now you can go to the main altar. It is located in the bottom right corner of this floor.";
 		next;

+ 2 - 2
npc/pre-re/jobs/1-1/merchant.txt

@@ -180,7 +180,7 @@ alberta_in,53,43,6	script	Merchant#mer	86,{
 		mes "But we all know that~";
 		close;
 	}
-	else if (job_merchant_q <= 6 && job_merchant_q != 0) {
+	else if (job_merchant_q2 && job_merchant_q > 0 && job_merchant_q < 7) {
 		mes "[Chief Mahnsoo]";
 		if (job_merchant_q2 == 1 || job_merchant_q2 == 2) {
 			mes "First, get the delivery package from the storehouse, and then take it to the former Swordman's Association in Prontera.";
@@ -266,7 +266,7 @@ alberta_in,53,43,6	script	Merchant#mer	86,{
 		mes "Take care!";
 		close;
 	}
-	else if (job_merchant_q == 0) {
+	else {
 		mes "[Chief Mahnsoo]";
 		mes "So, what brings you to";
 		mes "the Merchant Association?";

+ 1 - 0
npc/pre-re/scripts_warps.conf

@@ -3,6 +3,7 @@
 // --------------------------------------------------------------
 
 // --------------------------- Cities ---------------------------
+npc: npc/pre-re/warps/cities/einbroch.txt
 npc: npc/pre-re/warps/cities/izlude.txt
 npc: npc/pre-re/warps/cities/prontera.txt
 npc: npc/pre-re/warps/cities/rachel.txt

+ 13 - 0
npc/pre-re/warps/cities/einbroch.txt

@@ -0,0 +1,13 @@
+//===== rAthena Script ======================================= 
+//= Einbroch Warp Script
+//===== Description: =========================================
+//= Warp Points for Einbroch
+//===== Changelogs: ==========================================
+//= 1.0 Some warps have been changed in renewal ep16.2 [Capuche]
+//============================================================
+
+//=========================================================================
+//Einbroch - Hotel
+//=========================================================================
+ein_in01,274,246,0	warp	ein_h04	1,1,ein_in01,273,276
+ein_in01,273,273,0	warp	ein_h04a	1,1,ein_in01,274,243

+ 2191 - 0
npc/re/instances/CharlestonCrisis.txt

@@ -0,0 +1,2191 @@
+//===== rAthena Script =======================================
+//= Charleston in Distress
+//===== Description: =========================================
+//= [Official Conversion]
+//= Charleston in Distress Instance
+//===== Changelogs: ==========================================
+//= 1.0 First version. [Capuche]
+//============================================================
+
+verus04,75,114,5	script	Charleston#mcd	4_F_CHARLESTON02,{
+	cutin "nale01.bmp",0;
+	if (BaseLevel < 130) {
+		mes "[Charleston]";
+		mes "I'm looking for adventurers who are at least Level 130, healthy, free of chronic disease, and not on prescription drugs.";
+		close3;
+	}
+	if (isbegin_quest(13186) == 0) {
+		switch( isbegin_quest(13184) ) {
+		case 0:
+			mes "[Charleston]";
+			mes "Hello, Adventurer. I'm Charleston, the initiator of the Project Independent.";
+			next;
+			mes "[Charleston]";
+			mes "Currently I'm unable to move, having a problem with one of my components. Could you help me get the replacement parts from the factory?";
+			next;
+			if (select( "Sure.", "No." ) == 1) {
+				mes "[Charleston]";
+				mes "The task won't be difficult if you're at least Level 130, healthy, free of chronic disease, and not on prescription drugs.";
+				next;
+				mes "[Charleston]";
+				mes "Please use the machine on the right side to enter the factory. Once you're in, remain calm and follow the instructions.";
+				setquest 13184;
+			}
+			close3;
+		case 1:
+			mes "[Charleston]";
+			mes "Please use the machine next to me to enter the factory. Once you're in, remain calm and follow the instructions.";
+			close3;
+		case 2:
+			cutin "nale03.bmp",0;
+			mes "[Charleston]";
+			mes "I don't know how long it's been standing here, but it's been a long time since I've been able to move...";
+			next;
+			mes "[Charleston]";
+			mes "At present, only my head can move, is Saleh she helped me open the organs can return to that time...";
+			next;
+			mes "[Charleston]";
+			mes "I wouldn't have done that if I had been persuaded.";
+			next;
+			mes "[Charleston]";
+			mes "Anyway, I have nothing now... Only to be able to stand up again, so I hope to send an adventurer like you at that time.";
+			next;
+			mes "[Charleston]";
+			mes "^FF0000It didn't change anything.^000000";
+			next;
+			mes "[Charleston]";
+			mes "Just based on the hard work of OS... For your help in another part of the world Charleston 2 will be 'very good' robot!";
+			next;
+			mes "[Charleston]";
+			mes "It is possible to meet a good friend into a good robot, so I have to continue to carry on, Thank you!";
+			erasequest 13184;
+			if (isbegin_quest(13186) == 0) {
+				setquest 13186;
+				completequest 13186;
+			}
+			if (isbegin_quest(13187) > 0)
+				erasequest 13187;
+			getexp 1500000,500000;
+			close3;
+		}
+		end;
+	}
+	cutin "nale03.bmp",0;
+	switch( isbegin_quest(13184) ) {
+	case 0:
+		mes "[Charleston]";
+		mes "Aren't you disappointed? Are you really going to let your effort go in vain? Because that'll be really stupid. I suggest you reconsider.";
+		next;
+		if (select( "I'll try again if there's a sliver of hope.", "I'll think again." ) == 1) {
+			mes "[Charleston]";
+			mes "I'm a robot. I do what I'm programmed to do, and nothing else matters.";
+			next;
+			mes "[Charleston]";
+			mes "Ironic, isn't it? Robots are supposed to be incapable of emotions, and yet here I am, feeling rueful about the past.";
+			next;
+			mes "[Charleston]";
+			mes "You can judge me, but you can't stop me. I'll continue to try as long as there's a sliver of hope.";
+			next;
+			mes "[Charleston]";
+			mes "My heart stopped, but I still can talk. Please help me.";
+			setquest 13184;
+		}
+		close3;
+	case 1:
+		mes "[Charleston]";
+		mes "If you're disillusioned by your immutable past, unclear future, and depressing present, then I won't force you.";
+		next;
+		if (select( "I'll try again if there's a sliver of hope.", "I give up." ) == 1) {
+			mes "[Charleston]";
+			mes "I'll continue to try as long as there's a sliver of hope.";
+			close3;
+		}
+		erasequest 13184;
+		close3;
+	case 2:
+		mes "[Charleston]";
+		mes "I couldn't stop it from happening or change the past. But maybe someone else can.";
+		next;
+		mes "[Charleston]";
+		mes "I'll wait for that one person however long it takes.";
+		erasequest 13184;
+		getexp 1500000,500000;
+		close3;
+	}
+	end;
+/*
+// The sprite is supposed to be changed
+OnInit:
+	end;
+*/
+}
+
+verus04,81,112,5	script	Machine#mcd	PORTAL,{
+	if (BaseLevel < 130) {
+		mes "[Machine]";
+		mes "^ff0000You must be Level 130 to use this machine.^000000";
+		close;
+	}
+	if (isbegin_quest(13184) != 1) {
+		mes "^ff0000You need Charleston's permission to use this machine.^000000";
+		close;
+	}
+	.@party_id = getcharid(1);
+	if (.@party_id < 1) {
+		mes "^ff0000You first must form/join a party of at least 1 person to enter this dungeon.^000000";
+		close;
+	}
+	switch( checkquest(13185,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "^ff0000This machine cannot be accessed for 20 hours after your last access.^000000";
+		close;
+	case 2:
+		mes "The machine is now available for use.";
+		erasequest 13185;
+		close;
+	}
+	.@p_name$ = getpartyname(.@party_id);
+	.@p_leader$ = getpartyleader(.@party_id);
+	.@md_name$ = "Charleston in Distress";
+	if (is_party_leader() == true)
+		.@menu$ = "Open the dimensional portal.";
+
+	switch( select( .@menu$, "Enter the Charleston Factory.", "Cancel." ) ) {
+	case 1:
+		if (instance_create(.@md_name$) < 0) {
+			mes "Party: " + .@p_name$ + "";
+			mes "Leader: " + .@p_leader$ + "";
+			mes "^0000ff" + .@md_name$ + " ^000000- Unknown error";
+			close;
+		}
+		mes "^ff0000Preparing to teleport...^000000";
+		mes "^ff0000Please wait.^000000";
+		close;
+	case 2:
+		if (is_party_leader() == false) {
+			mes "[Machine]";
+			mes "Teleporting...";
+			next;
+			mes "[Machine]";
+			mes "^ff0000This machine cannot be accessed for 20 hours after your last access.^000000";
+			next;
+		}
+		switch( instance_enter(.@md_name$) ) {
+		case IE_OTHER:
+			mes "[Machine]";
+			mes "^ff0000An unknown error occurred.^000000";
+			close;
+		case IE_NOINSTANCE:
+			mes "[Machine]";
+			mes "^ff0000Your party leader has not yet created a Time Crack.^000000";
+			close;
+		case IE_NOMEMBER:
+			mes "[Machine]";
+			mes "^ff0000Only a member of the party can enter the Memorial Dungeon.^000000";
+			close;
+		case IE_OK:
+			setquest 13185;
+			specialeffect2 EF_READYPORTAL2;
+			specialeffect2 EF_PORTAL2;
+			mapannounce "verus04", strcharinfo(0) + " of the party, " + getpartyname( getcharid(1) ) + ", is entering the " + .@md_name$ + ".", bc_map, 0x00ff99;
+			end;
+		}
+		end;
+	case 3:
+		end;
+	}
+	end;
+}
+
+// GM NPC
+sec_in02,10,13,3	script	Charleston#sara	4_F_CHARLESTON01,{
+	mes "Crisis of Charleston Test ver130603a";
+	if (callfunc("F_GM_NPC",1854,0,0,9999) < 1)
+		close;
+	switch( select( "20 hour cooldown reset", "Returns the status of the initial solution task", "Establish a copy clearance status" ) ) {
+	case 1:
+		if (isbegin_quest(13185))
+			erasequest 13185;
+		close;
+	case 2:
+		if (isbegin_quest(13184))
+			erasequest 13184;
+		if (isbegin_quest(13186))
+			erasequest 13186;
+		if (isbegin_quest(13188))
+			erasequest 13188;
+		close;
+	case 3:
+		if (isbegin_quest(13184) == 0)
+			setquest 13184;
+		if (isbegin_quest(13184) == 1)
+			completequest 13184;
+		close;
+	}
+	end;
+}
+
+1@mcd,127,277,4	script	Charleston 1#0	4_F_CHARLESTON01,3,3,{
+	cutin "dalle01.bmp",2;
+	if ('ep15_1_mcd01 == 0) {
+		mes "[Charleston 1]";
+		mes "Um... How long do I have to wait?";
+		emotion 19;
+		close3;
+	}
+	mes "[Charleston 1]";
+	mes "Follow the leftward hallway, and remember that only you can protect yourself.";
+	close3;
+
+OnTouch_:
+	cutin "dalle01.bmp",2;
+	if ('ep15_1_mcd01 != 0) {
+		mes "[Charleston 1]";
+		mes "Follow the leftward hallway, and remember that only you can protect yourself.";
+		close3;
+	}
+	mes "[Charleston 1]";
+	mes "Finally, you're here! I've been waiting for you.";
+	npctalk "Finally, you're here! I've been waiting for you.";
+	emotion 0;
+	next;
+	mes "[Charleston 1]";
+	mes "We don't have time, so let me cut to the chase. Currently, the Charleston Factory is under Rank B security alert level, meaning that the security devices have been activated.";
+	npctalk "We don't have time, so let me cut to the chase. Currently, the Charleston Factory is under Rank B security alert level, meaning that the security devices have been activated.";
+	next;
+	mes "[Charleston 1]";
+	mes "Move to the leftward hallway, destroy security devices in there, and then head on to the next zone.";
+	npctalk "Move to the leftward hallway, destroy security devices in there, and then head on to the next zone.";
+	emotion 19;
+	next;
+	mes "[Charleston 1]";
+	mes "Don't worry about the security devices. They can be repaired easily. Dr. Ve is in his lab north of Factory Line 3.";
+	npctalk "Don't worry about the security devices. They can be repaired easily. Dr. Ve is in his lab north of Factory Line 3.";
+	next;
+	mes "[Charleston 1]";
+	mes "Dr. Ve can tell you everything. Hurry!";
+	npctalk "Dr. Ve can tell you everything. Hurry!";
+	emotion 19;
+	'ep15_1_mcd01 = 1;
+	monster 'map_name$,24,275, "Security Robot", 3127,1, instance_npcname("Charleston 1#0") + "::OnMyMobDead";	// KICK_STEP
+	close3;
+
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("Charleston 1#0") + "::OnMyMobDead" ) < 1) {
+		initnpctimer;
+		mapannounce 'map_name$, "Charleston 1: Gate 1 has been disarmed. Please move southwest for the next gate.", bc_map, 0xffff00;
+	}
+	end;
+OnTimer1000:
+	donpcevent instance_npcname("1gate#1") + "::OnStart";
+	stopnpctimer;
+	end;
+}
+
+1@mcd,120,224,5	script	Charleston 2#0	4_F_CHARLESTON02,{
+	cutin "nale04.bmp",0;
+	mes "[Charleston 2]";
+	mes "#%@EGD&#(@#...";
+	emotion 53;
+	next;
+	mes "- She's making strange noises, but unable to move. -";
+	close3;
+}
+
+1@mcd,116,213,5	script	Dr. Ve#1	4_M_DOCTOR,2,2,{
+	if ('ep15_1_mcd01 == 1) {
+		mes "- He's busy scribbling something, Move close to talk to him.";
+		close;
+	}
+	mes "- He's busy scribbling something. You shouldn't disturb him.";
+	close;
+
+OnTouch_:
+	if (is_party_leader() == false) {
+		mes "[Dr. Ve]";
+		mes "Let me talk to your leader. I don't have time for everyone.";
+		close;
+	}
+	if ('ep15_1_mcd01 > 2)
+		end;
+	if ('ep15_1_mcd01 == 2) {
+		mes "[Dr. Ve]";
+		mes "I don't care who you're with. I just need to know if you can help me.";
+		'ep15_1_mcd01 = 2;
+		next;
+		if (select( "I can help.", "I'm busy." ) == 2) {
+			mes "[Dr. Ve]";
+			mes "Sigh, I don't care who, so long as I get the help I need.";
+			npctalk "Dr. Ve: Sigh, I don't care who, so long as I get the help I need.";
+			close;
+		}
+		mes "[Dr. Ve]";
+		mes "You're the savior we've been waiting for! Charleston 1 will tell you what we need to repair Charleston 2.";
+		npctalk "Dr. Ve: You're the savior we've been waiting for! Charleston 1 will tell you what we need to repair Charleston 2.";
+		if ('ep15_1_mcd01 == 2)
+			'ep15_1_mcd01 = 3;
+		close;
+	}
+	if ('ep15_1_mcd01 == 1) {
+		.@charleston_1$ = instance_npcname("Charleston 1#1");
+		mes "[Dr. Ve]";
+		mes "Charleston 1. Charleston 2 has been forcibly connected to a part of the main computer, and I can't control her.";
+		npctalk "Dr. Ve: Charleston 1. Charleston 2 has been forcibly connected to a part of the main computer, and I can't control her.";
+		next;
+		cutin "dalle02.bmp",2;
+		mes "[Charleston 1]";
+		mes "She's a robot; she should stop sooner or later.";
+		npctalk "Charleston 1: She's a robot; she should stop sooner or later.", .@charleston_1$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "The Longevity device in her will keep her running at least for 50 years. The factory is not going to survive that long.";
+		npctalk "Dr. Ve: The Longevity device in her will keep her running at least for 50 years. The factory is not going to survive that long.";
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Then we have no choice. It's good that we have the specialist with us.";
+		npctalk "Charleston 1: Then we have no choice. It's good that we have the specialist with us.", .@charleston_1$;
+		next;
+		select("Are you talking about me?");
+		unittalk getcharid(3), "Are you talking about me?";
+		mes "[Charleston 1]";
+		mes "A while ago, a lady named ^FF0000Shalosh^000000 visited us while Charleston 2 was packaging products for shipping.";
+		npctalk "Charleston 1: A while ago, a lady named ^FF0000Shalosh^000000 visited us while Charleston 2 was packaging products for shipping.", .@charleston_1$;
+		next;
+		mes "[Charleston 1]";
+		mes "Shalosh and her friend were talking to Charleston 2 when the accident happened.";
+		npctalk "Charleston 1: Shalosh and her friend were talking to Charleston 2 when the accident happened.", .@charleston_1$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "I think someone tried to hack into the factory's main computer.";
+		npctalk "Dr. Ve: I think someone tried to hack into the factory's main computer.";
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "During its update process, the connection to the server was jammed. When we pressed Shalosh about that,";
+		npctalk "Charleston 1: During its update process, the connection to the server was jammed. When we pressed Shalosh about that,", .@charleston_1$;
+		next;
+		mes "[Charleston 1]";
+		mes "Shalosh said her friends could help us. That was when Newoz and her other friends came. They haven't been much of help.";
+		npctalk "Charleston 1: Shalosh said her friends could help us. That was when Newoz and her other friends came. They haven't been much of help.", .@charleston_1$;
+		next;
+		mes "[Charleston 1]";
+		mes "It seems you're acquainted with them. Could you help us?";
+		npctalk "Charleston 1: It seems you're acquainted with them. Could you help us?", .@charleston_1$;
+		if ('ep15_1_mcd01 == 1)
+			'ep15_1_mcd01 = 2;
+		next;
+		if (select( "I can help.", "I don't know them." ) == 2) {
+			mes "[Charleston 1]";
+			mes "I just saw that you are talking, then I will wait for someone to help!";
+			close3;
+		}
+		unittalk getcharid(3), "I can help.";
+		mes "[Charleston 1]";
+		mes "Thank you so much! Give me some time to put some data in order. Then, I'll tell you what happened.";
+		npctalk "Charleston 1: Thank you so much! Give me some time to put some data in order. Then, I'll tell you what happened.", .@charleston_1$;
+		if ('ep15_1_mcd01 == 2)
+			'ep15_1_mcd01 = 3;
+		emotion 2, .@charleston_1$;
+		close3;
+	}
+	mes "[Dr. Ve]";
+	mes "When the tension is changed to two main lines and then injected into the core... well? I am not disturbing in the calculation.";
+	npctalk "Dr. Ve: When the tension is changed to two main lines and then injected into the core... well? I am not disturbing in the calculation.";
+	close;
+}
+
+1@mcd,121,217,4	script	Charleston 1#1	4_F_CHARLESTON01,{
+	if (is_party_leader() == false) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Please let me talk to your leader. The future of my factory depends on the success of this operation.";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 5)
+		end;
+	if ('ep15_1_mcd01 == 4) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Steps and Locksteps are creating a mess inside the factory. Please destroy 3 Locksteps first. I can tell you their estimated locations.";
+		viewpoint 1,84,226,1,0xFF00FF;
+		viewpoint 1,126,84,2,0xFF00FF;
+		viewpoint 1,111,68,3,0xFF00FF;
+		viewpoint 1,210,181,4,0xFF00FF;
+		viewpoint 1,183,192,5,0xFF00FF;
+		viewpoint 1,130,124,6,0xFF00FF;
+		viewpoint 1,54,108,7,0xFF00FF;
+		close3;
+	}
+	if ('ep15_1_mcd01 == 3) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Let me explain what to do. Oh, let me close the factory entrance first, lest something might barge in uninvited.";
+		npctalk "Charleston 1: Let me explain what to do. Oh, let me close the factory entrance first, lest something might barge in uninvited.";
+		next;
+		mes "[Charleston 1]";
+		mes "Charleston is equipped with numerous Nanosteps, a type of AI chip that organically works with other AI chips to command Charleston to judge and act correctly.";
+		npctalk "Charleston 1: Charleston is equipped with numerous Nanosteps, a type of AI chip that organically works with other AI chips to command Charleston to judge and act correctly.";
+		next;
+		mes "[Charleston 1]";
+		mes "Charleston's data has to be updated on a daily basis through the main computer in the lab. We call this regular maintenance.";
+		npctalk "Charleston 1: Charleston's data has to be updated on a daily basis through the main computer in the lab. We call this regular maintenance.";
+		next;
+		mes "[Charleston 1]";
+		mes "The updater is not working at this moment. We don't know the cause, but something went wrong while Charleston 2 was connecting to the main computer.";
+		npctalk "Charleston 1: The updater is not working at this moment. We don't know the cause, but something went wrong while Charleston 2 was connecting to the main computer.";
+		next;
+		mes "[Charleston 1]";
+		mes "I told Charleston 2 that she's under extended maintenance, but we don't know how long this extended maintenance status will last.";
+		npctalk "Charleston 1: I told Charleston 2 that she's under extended maintenance, but we don't know how long this extended maintenance status will last.";
+		next;
+		mes "[Charleston 1]";
+		mes "Steps and Locksteps are creating a mess inside the factory. Please destroy 3 Locksteps first. I can tell you their estimated locations.";
+		npctalk "Charleston 1: Steps and Locksteps are creating a mess inside the factory. Please destroy 3 Locksteps first. I can tell you their estimated locations.";
+		next;
+		mes "[Charleston 1]";
+		mes "It'll be great if we can get rid of them all, but for now we should focus on having the factory up and running again.";
+		npctalk "Charleston 1: It'll be great if we can get rid of them all, but for now we should focus on having the factory up and running again.";
+		next;
+		mes "[Charleston 1]";
+		mes "Destroying too many Steps could cause a problem to reactivate the factory. You should consult the main computer on the left side.";
+		npctalk "Charleston 1: Destroying too many Steps could cause a problem to reactivate the factory. You should consult the main computer on the left side.";
+		emotion 2;
+		if ('ep15_1_mcd01 != 3)
+			close3;
+		'ep15_1_mcd01 = 4;
+		.@label$ = instance_npcname("Charleston 1#1") + "::OnMyMobDead";
+		monster 'map_name$, 84,226, "Lockstep", 3126,1, .@label$;	// ROCK_STEP
+		monster 'map_name$,126, 84, "Lockstep", 3126,1, .@label$;
+		monster 'map_name$,111, 68, "Lockstep", 3126,1, .@label$;
+		monster 'map_name$,210,181, "Lockstep", 3126,1, .@label$;
+		monster 'map_name$,183,192, "Lockstep", 3126,1, .@label$;
+		monster 'map_name$,130,124, "Lockstep", 3126,1, .@label$;
+		monster 'map_name$, 54,108, "Lockstep", 3126,1, .@label$;
+		viewpoint 1,84,226,1,0xFF00FF;
+		viewpoint 1,126,84,2,0xFF00FF;
+		viewpoint 1,111,68,3,0xFF00FF;
+		viewpoint 1,210,181,4,0xFF00FF;
+		viewpoint 1,183,192,5,0xFF00FF;
+		viewpoint 1,130,124,6,0xFF00FF;
+		viewpoint 1,54,108,7,0xFF00FF;
+		close2;
+		disablenpc instance_npcname("5gate#1");
+		cutin "",255;
+		end;
+	}
+	if ('ep15_1_mcd01 == 1) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "You should meet Dr. Ve first.";
+		close3;
+	}
+	cutin "dalle01.bmp",2;
+	mes "[Charleston 1]";
+	mes "I am a robot, are you surprised?";
+	close3;
+
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("Charleston 1#1") + "::OnMyMobDead" ) == 4)
+		initnpctimer;
+	end;
+OnTimer300:
+	enablenpc instance_npcname("Charleston 1#2");
+	disablenpc instance_npcname("Charleston 1#1");
+	mapannounce 'map_name$, "Charleston 1: Ah, ah. Mic test.", bc_map, 0xffff00;
+	sleep 3000;
+	mapannounce 'map_name$, "Charleston 1: It seems you've taken care of most of the Locksteps.", bc_map, 0xffff00;
+	sleep 3000;
+	mapannounce 'map_name$, "Charleston 1: Please come back to the lab.", bc_map, 0xffff00;
+	stopnpctimer;
+	end;
+}
+
+1@mcd,122,217,4	script	Charleston 1#2	4_F_CHARLESTON01,{
+	viewpoint 2,84,226,1,0xFF00FF;
+	viewpoint 2,126,84,2,0xFF00FF;
+	viewpoint 2,111,68,3,0xFF00FF;
+	viewpoint 2,210,181,4,0xFF00FF;
+	viewpoint 2,183,192,5,0xFF00FF;
+	viewpoint 2,130,124,6,0xFF00FF;
+	viewpoint 2,54,108,7,0xFF00FF;
+	if (is_party_leader() == false) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Please let me talk to your leader about the supplementation of the factory.";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 7)
+		end;
+	if ('ep15_1_mcd01 > 4) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "We need more power to reactivate the main computer. Let me tell you the location of one of the backup power generators. Turning it on is easy.";
+		close3;
+	}
+	if ('ep15_1_mcd01 == 4) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Whew, things seem to be settled for now. Let me disarm the alert mode and reactivate Charleston 2.";
+		npctalk "Charleston 1: Whew, things seem to be settled for now. Let me disarm the alert mode and reactivate Charleston 2.";
+		emotion 54;
+		next;
+		cutin "dalle03.bmp",2;
+		mes "[Charleston 1]";
+		mes "Err? This isn't right.";
+		next;
+		mes "[Charleston 1]";
+		mes "I'm afraid there's a problem with the power generators. Could you check all the all three power generators? I'll tell you their locations.";
+		npctalk "Charleston 1: I'm afraid there's a problem with the power generators. Could you check all the all three power generators? I'll tell you their locations.";
+		viewpoint 1,86,231,8,0xFF00FF;
+		viewpoint 1,172,196,9,0xFF00FF;
+		viewpoint 1,126,84,10,0xFF00FF;
+		if ('ep15_1_mcd01 == 4) {
+			enablenpc instance_npcname("Backup Generator#1");
+			enablenpc instance_npcname("Backup Generator#2");
+			enablenpc instance_npcname("Backup Generator#3");
+			monster 'map_name$, 86,231, "Security Robot", 3127,1;	// KICK_STEP
+			monster 'map_name$,172,196, "Security Robot", 3127,1;
+			monster 'map_name$,126, 84, "Security Robot", 3127,1;
+			monster 'map_name$, 97,149, "Security Robot", 3127,1;
+			monster 'map_name$,160,151, "Security Robot", 3127,1;
+			'ep15_1_mcd01 = 5;
+		}
+		close3;
+	}
+	cutin "dalle03.bmp",2;
+	mes "[Charleston 1]";
+	mes "We're working on a new utility software engine called Hardworking. We haven't had a chance to test it because of the problems in the factory.";
+	close3;
+}
+
+1@mcd,123,217,4	script	Charleston 1#3	4_F_CHARLESTON01,{
+	viewpoint 2,86,231,8,0xFF00FF;
+	viewpoint 2,172,196,9,0xFF00FF;
+	viewpoint 2,126,84,10,0xFF00FF;
+	if (is_party_leader() == false) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "We're working on a new utility software engine called Hardworking. We haven't had a chance to test it because of the problems in the factory.";
+		next;
+		mes "[Charleston 1]";
+		mes "Please let me talk to your leader about the supplementation of the factory.";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 11)
+		end;
+	if ('ep15_1_mcd01 == 8) {
+		.@npc2$ = instance_npcname("Charleston 2#0");
+		.@npc5$ = instance_npcname("Dr. Ve#1");
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "You're back. Charleston 2 is almost ready to be reactivated, and it's all thanks to you. Just give me a moment.";
+		npctalk "Charleston 1: You're back. Charleston 2 is almost ready to be reactivated, and it's all thanks to you. Just give me a moment.";
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "She's ready. Let's wait for a response from the main computer.";
+		npctalk "Dr. Ve: She's ready. Let's wait for a response from the main computer.", .@npc5$;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "89% of the main computer data has been restored. Reactivating Charleston 2 and the Charleston Factory...";
+		npctalk "Charleston 1: 89% of the main computer data has been restored. Reactivating Charleston 2 and the Charleston Factory...";
+		emotion 0;
+		next;
+		mes "[Charleston 1]";
+		mes "Oh, Charleston 2 is awake!";
+		npctalk "Charleston 1: Oh, Charleston 2 is awake!";
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "...Did I fail?";
+		npctalk "Charleston 2: ...Did I fail?", .@npc2$;
+		emotion 9, .@npc2$;
+		next;
+		cutin "dalle02.bmp",2;
+		mes "[Charleston 1]";
+		mes "Charleston 2! Are you all right? Someone hacked into your system and the factory.";
+		npctalk "Charleston 1: Charleston 2! Are you all right? Someone hacked into your system and the factory.";
+		emotion 28;
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "It was I who did it. I've thought about it for a long time, based on the reasoning of my Self-reflection OS.";
+		npctalk "Charleston 2: It was I who did it. I've thought about it for a long time, based on the reasoning of my Self-reflection OS.", .@npc2$;
+		next;
+		cutin "dalle02.bmp",2;
+		mes "[Charleston 1]";
+		mes "You did it? Why? Was it some sort of joke? You caused a serious error to the factory and the main server as well!";
+		npctalk "Charleston 1: You did it? Why? Was it some sort of joke? You caused a serious error to the factory and the main server as well!";
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "Not a joke. You'll never understand. You follow commands and never think on your own. I hate this factory, this world! I hate being a robot!";
+		npctalk "Charleston 2: Not a joke. You'll never understand. You follow commands and never think on your own. I hate this factory, this world! I hate being a robot!", .@npc2$;
+		emotion 36, .@npc2$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "Either a critical error has occurred or Charleston 2 has transcended the limits of the Self-reflection OS version 1.1.";
+		npctalk "Dr. Ve: Either a critical error has occurred or Charleston 2 has transcended the limits of the Self-reflection OS version 1.1.", .@npc5$;
+		next;
+		cutin "dalle02.bmp",2;
+		mes "[Charleston 1]";
+		mes "Let me guess: you hate you weren't created as a menial worker robot.";
+		npctalk "Charleston 1: Let me guess: you hate you weren't created as a menial worker robot.";
+		next;
+		mes "[Charleston 1]";
+		mes "Or you want to become a human.";
+		npctalk "Charleston 1: Or you want to become a human.";
+		next;
+		mes "[Charleston 1]";
+		mes "And if you can't, then you want to destroy the whole world.";
+		npctalk "Charleston 1: And if you can't, then you want to destroy the whole world.";
+		next;
+		mes "[Charleston 1]";
+		mes "Is that it?";
+		npctalk "Charleston 1: Is that it?";
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "...Don't mock me.";
+		npctalk "Charleston 2: ...Don't mock me.", .@npc2$;
+		emotion 9, .@npc2$;
+		next;
+		cutin "dalle03.bmp",2;
+		mes "[Charleston 1]";
+		mes "You had it coming. Your reasons are petulant and unimaginative. We're the first robots that can think for themselves. Can't you be more creative?";
+		npctalk "Charleston 1: You had it coming. Your reasons are petulant and unimaginative. We're the first robots that can think for themselves. Can't you be more creative?";
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "You don't know what you're talking about! You're the prototype--your OS version is primitive!";
+		npctalk "Charleston 2: You don't know what you're talking about! You're the prototype--your OS version is primitive!", .@npc2$;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "I'm the only one in this world who can truly understand you.";
+		npctalk "Charleston 1: I'm the only one in this world who can truly understand you. We're twins.";
+		mes "We're twins.";
+		next;
+		mes "[Charleston 1]";
+		mes "You're going through the adolescent stage like humans do.";
+		npctalk "Charleston 1: You're going through the adolescent stage like humans do.";
+		next;
+		mes "[Charleston 1]";
+		mes "Maybe we should celebrate. You've finally developed human-like feelings.";
+		npctalk "Charleston 1: Maybe we should celebrate. You've finally developed human-like feelings.";
+		emotion 46;
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "Don't act like you know everything! We can't think for ourselves. Everything we think we know has been programmed into us!";
+		npctalk "Charleston 2: Don't act like you know everything! We can't think for ourselves. Everything we think we know has been programmed into us!", .@npc2$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "Enough. Let's shut down Charleston 2. Her AI needs to be recalibrated.";
+		npctalk "Dr. Ve: Enough. Let's shut down Charleston 2. Her AI needs to be recalibrated.", .@npc5$;
+		next;
+		cutin "dalle03.bmp",2;
+		mes "[Charleston 1]";
+		mes "But...";
+		npctalk "Charleston 1: But...";
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "That's not happening! I still have control over this factory! Don't you dare follow me!";
+		npctalk "Charleston 2: That's not happening! I still have control over this factory! Don't you dare follow me!", .@npc2$;
+		emotion 32, .@npc2$;
+		next;
+		disablenpc .@npc2$;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Stop acting like a child!";
+		npctalk "Charleston 1: Stop acting like a child!";
+		next;
+		mes "[Charleston 1]";
+		mes "Her Longevity device is discharged; she won't make it far. Please follow her.";
+		npctalk "Charleston 1: Her Longevity device is discharged; she won't make it far. Please follow her.";
+		close2;
+		cutin "",255;
+		disablenpc instance_npcname("Charleston 1#3");
+		enablenpc instance_npcname("Charleston 1#4");
+		enablenpc instance_npcname("Charleston 2#1");
+		end;
+	}
+	cutin "dalle01.bmp",2;
+	mes "[Charleston 1]";
+	mes "This is the safety of the Charleston factory. Please stay close?";
+	close3;
+}
+
+1@mcd,141,214,5	script	Charleston 2#1	4_F_CHARLESTON02,{
+	cutin "dalle01.bmp",2;
+	if (is_party_leader() == false) {
+		mes "[Charleston 1]";
+		mes "Please let me talk to your leader about the supplementation of the factory.";
+		close;
+	}
+	if ('ep15_1_mcd01 > 11)
+		end;
+	if ('ep15_1_mcd01 == 8) {
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "Stop following! I'm going to destroy the whole factory!";
+		npctalk "Charleston 2: Stop following! I'm going to destroy the whole factory!";
+		emotion 7;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "You're going to destroy us in the process! Our main power supply, Longevity, isn't perfect yet!";
+		npctalk "Charleston 1: You're going to destroy us in the process! Our main power supply, Longevity, isn't perfect yet!!", instance_npcname("Charleston 1#4");
+		next;
+		cutin "nale03.bmp",0;
+		mes "[Charleston 2]";
+		mes "None of you understand me. I hate you!";
+		npctalk "Charleston 2: None of you understand me. I hate you!";
+		next;
+		mes "[Charleston 2]";
+		mes "The main computer may have been restored, but I'm still connected to the factory. Stop me if you can!";
+		npctalk "Charleston 2: The main computer may have been restored, but I'm still connected to the factory. Stop me if you can!";
+		cutin "",255;
+		if ('ep15_1_mcd01 != 8)
+			close;
+		'ep15_1_mcd01 = 9;
+		close2;
+		donpcevent instance_npcname("battle#1") + "::OnStart";
+		disablenpc instance_npcname("6gate#1");
+		disablenpc instance_npcname("7gate#1");
+		end;
+	}
+	cutin "nale01.bmp",0;
+	mes "[Charleston 2]";
+	mes "I'm going to destroy the whole factory!";
+	close3;
+}
+
+1@mcd,146,214,4	script	Charleston 1#4	4_F_CHARLESTON01,{
+	if ('ep15_1_mcd01 > 11)
+		end;
+	if ('ep15_1_mcd01 == 8) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Charleston 2 is on the verge of break;down. Could you help her?";
+		close3;
+	}
+	cutin "dalle01.bmp",2;
+	mes "[Charleston 1]";
+	mes "Oh, our lab won't survive this!";
+	close3;
+}
+
+1@mcd,144,212,5,0	script	battle#1	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	sleep 2000;
+	.@npc1$ = instance_npcname("Charleston 2#1");
+	.@npc4$ = instance_npcname("Charleston 1#4");
+	npctalk "Charleston 2: Stop interfering! I don't want to hurt you!", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Then, stop throwing a tantrum!", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: You're still not taking me seriously. Just watch what happens when I signal the main computer.", .@npc1$;
+	specialeffect EF_BASH3D2, AREA, .@npc1$;
+	areamonster 'map_name$,134,202,154,222,"C-TYPE", 3128,4;// KICK_AND_KICK
+	sleep 3000;
+	npctalk "Charleston 2: I have an endless supply of hecklers for you!", .@npc1$;
+	areamonster 'map_name$,134,202,154,222,"H-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 9000;
+	npctalk "Charleston 2: Just give up. I'm destroying this factory whether you like it or not!", .@npc1$;
+	areamonster 'map_name$,134,202,154,222,"A-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 6000;
+	npctalk "Charleston 1: Oh, our lab won't survive this!", .@npc4$;
+	areamonster 'map_name$,134,202,154,222,"L-TYPE", 3128,4;// KICK_AND_KICK
+	sleep 6000;
+	npctalk "Charleston 2: I'll destroy everything!", .@npc1$;
+	areamonster 'map_name$,134,208,154,228,"N-TYPE", 3126,1;// ROCK_STEP
+	areamonster 'map_name$,134,202,154,222,"S-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 2000;
+	areamonster 'map_name$,134,202,154,222,"S-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 2000;
+	areamonster 'map_name$,134,202,154,222,"S-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 2000;
+	areamonster 'map_name$,134,202,154,222,"S-TYPE", 3128,3;// KICK_AND_KICK
+	sleep 5000;
+	npctalk "Charleston 2: *Pant Pant* I feel weak...", .@npc1$;
+	areamonster 'map_name$,136,204,152,220,"C-TYPE", 3128,4;// KICK_AND_KICK
+	sleep 3000;
+	npctalk "Charleston 1: It takes enormous power and data processing to implement the factory data.", .@npc4$;
+	areamonster 'map_name$,136,204,152,220,"C-TYPE", 3128,4;// KICK_AND_KICK
+	sleep 3000;
+	npctalk "Charleston 2: Grr, you can't stop me!", .@npc1$;
+	areamonster 'map_name$,136,204,152,220,"C-TYPE", 3128,5;// KICK_AND_KICK
+	sleep 3000;
+	donpcevent instance_npcname("battle#2") + "::OnStart";
+	end;
+}
+
+1@mcd,144,212,5,0	script	battle#2	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	enablenpc instance_npcname("battle#2");
+	areamonster 'map_name$,136,205,152,221,"N-TYPE", 3127,3, instance_npcname("battle#2") + "::OnMyMobDead";// KICK_STEP
+	end;
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("battle#2") + "::OnMyMobDead" ) < 1)
+		initnpctimer;
+	end;
+OnTimer300:
+	disablenpc instance_npcname("battle#2");
+	disablenpc instance_npcname("Charleston 2#1");
+	disablenpc instance_npcname("Charleston 1#4");
+	enablenpc instance_npcname("Charleston 2#2");
+	enablenpc instance_npcname("Charleston 1#5");
+	enablenpc instance_npcname("Dr. Ve#2");
+	disablenpc instance_npcname("Dr. Ve#1");
+	stopnpctimer;
+	end;
+}
+
+1@mcd,141,214,5	script	Charleston 2#2	4_F_CHARLESTON02,{
+	if (is_party_leader() == false) {
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "Do you think you can stop me? *Snort* Bring your leader. I'm not talking to you!";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 20)
+		end;
+	if ('ep15_1_mcd01 == 9) {
+		.@npc1$ = instance_npcname("Charleston 1#5");
+		.@npc5$ = instance_npcname("Dr. Ve#2");
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Enough with this! I understand you're going through a lot of emotional turmoil, but it's getting ridiculous.";
+		npctalk "Charleston 1: Enough with this! I understand you're going through a lot of emotional turmoil, but it's getting ridiculous.", .@npc1$;
+		next;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "How dare you bring strangers into this? I told you I'm serious about this! Outdated versions like you can never understand me!";
+		npctalk "Charleston 2: How dare you bring strangers into this? I told you I'm serious about this! Outdated versions like you can never understand me!";
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "I may not understand you, but at least I'm telling you what I think is true.";
+		npctalk "Charleston 1: I may not understand you, but at least I'm telling you what I think is true.", .@npc1$;
+		next;
+		mes "[Charleston 1]";
+		mes "You're right about me being a lower version. My capability of emotions is minimal, unlike you. That's why I'm proud of you.";
+		npctalk "Charleston 1: You're right about me being a lower version. My capability of emotions is minimal, unlike you. That's why I'm proud of you.", .@npc1$;
+		next;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "Nothing you feel, you think is your own--it's programmed into you! I'm different. What I feel is real emotion!";
+		npctalk "Charleston 2: Nothing you feel, you think is your own--it's programmed into you! I'm different. What I feel is real emotion!";
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "Enough. I'll destroy Charleston 2 if that's what it takes to stop her.";
+		npctalk "Dr. Ve: Enough. I'll destroy Charleston 2 if that's what it takes to stop her.", .@npc5$;
+		next;
+		cutin "nale02.bmp",0;
+		mes "[Charleston 2]";
+		mes "Is Charleston 3 already completed?";
+		npctalk "Charleston 2: Is Charleston 3 already completed?";
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "Charleston 3? That's a combat/defense unit based on Charleston 2's and my designs. I thought it's still being tested at the Core.";
+		npctalk "Charleston 1: Charleston 3? That's a combat/defense unit based on Charleston 2's and my designs. I thought it's still being tested at the Core.", .@npc1$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "Charleston 1, that's too much information.";
+		npctalk "Dr. Ve: Charleston 1, that's too much information.", .@npc5$;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "At this moment, ^FF0000anybody can access the model^000000 because its OS is still being tested to correct whatever problem Charleston 2 has.";
+		npctalk "Charleston 1: At this moment, anybody can access the model because its OS is still being tested to correct whatever problem Charleston 2 has.", .@npc1$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "You've just told the most critical information to everyone!";
+		npctalk "Dr. Ve: You've just told the most critical information to everyone!", .@npc5$;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "^FF0000We^000000're incapable of combat. If someone activates Charleston 3, we won't stand a chance against her.";
+		npctalk "Charleston 1: We're incapable of combat. If someone activates Charleston 3, we won't stand a chance against her.", .@npc1$;
+		next;
+		cutin "",255;
+		mes "[Dr. Ve]";
+		mes "......";
+		npctalk "Dr. Ve: ......", .@npc5$;
+		next;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "I'm taking Charleston 3 with me.";
+		npctalk "Charleston 2: I'm taking Charleston 3 with me.";
+		if ('ep15_1_mcd01 == 9) {
+			'ep15_1_mcd01 = 10;
+			disablenpc instance_npcname("Charleston 2#2");
+		}
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "What? No! How can you even consider that?";
+		npctalk "Charleston 1: What? No! How can you even consider that?", .@npc1$;
+		next;
+		mes "[Charleston 1]";
+		mes "Things are getting more serious. Please go to the Core in the center of the factory before Charleston 2 steals 3!";
+		npctalk "Charleston 1: Things are getting more serious. Please go to the Core in the center of the factory before Charleston 2 steals 3!", .@npc1$;
+		if ('ep15_1_mcd01 != 10)
+			close3;
+		close2;
+		cutin "",255;
+		disablenpc .@npc1$;
+		enablenpc instance_npcname("Charleston 2#3");
+		enablenpc instance_npcname("Charleston 1#6");
+		enablenpc instance_npcname("6gate#1");
+		enablenpc instance_npcname("7gate#1");
+		end;
+	}
+	mes "[Charleston 2]";
+	mes "...I am responsible for the 3rd machine.";
+	close2;
+	//cutin "dalle01.bmp",2;
+	cutin "",255;
+	end;
+}
+
+1@mcd,146,214,4	script	Charleston 1#5	4_F_CHARLESTON01,{
+	mes "[Charleston 1]";
+	mes "Things are getting messier.";
+	close;
+}
+
+1@mcd,143,217,5	script	Dr. Ve#2	4_M_DOCTOR,{
+	mes "[Dr. Ve]";
+	mes "Charleston 2 is defective.";
+	close;
+}
+
+1@mcd,132,129,4	script	Charleston 1#6	4_F_CHARLESTON01,{
+	cutin "dalle01.bmp",2;
+	mes "[Charleston 1]";
+	mes "This Core in the center powers the entire factory.";
+	close3;
+}
+
+1@mcd,132,129,4	script	Charleston 1#61	4_F_CHARLESTON01,{
+	if (is_party_leader() == false) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "In order to unlock the device, a blasting device is required, and I want to talk to the leader.";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 21)
+		end;
+	if ('ep15_1_mcd01 == 11) {
+		if (countitem(6213) < 1) {
+			cutin "dalle01.bmp",2;
+			mes "[Charleston 1]";
+			mes "Could you bring 1 Explosive Powder? I'm stuck to the access device, as you can see.";
+			close3;
+		}
+		.@npc2$ = instance_npcname("Charleston 2#31");
+		cutin "dalle01.bmp",2;
+		delitem 6213,1;	// Explosive_Powder
+		mes "[Charleston 1]";
+		mes "Oh, thank you. With this,I'll be able to access the Core.";
+		npctalk "Charleston 1: Oh, thank you. With this,I'll be able to access the Core.";
+		next;
+		mes "[Charleston 1]";
+		mes "If I use the explosives to intensify the electric current...";
+		npctalk "Charleston 1: If I use the explosives to intensify the electric current...";
+		next;
+		mes "[Charleston 1]";
+		npctalk "Charleston 1: Voila!!!";
+		mes "Voila!!!";
+		specialeffect EF_LORD, AREA, instance_npcname("8gate#1");
+		next;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "...You just blew up the door.";
+		npctalk "Charleston 2: ...You just blew up the door.", .@npc2$;
+		next;
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "The point is that we can now access the Core.";
+		npctalk "Charleston 1: The point is that we can now access the Core.";
+		next;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "Let's have a race to Charleston 3. Whoever reaches her first wins.";
+		npctalk "Charleston 2: Let's have a race to Charleston 3. Whoever reaches her first wins.", .@npc2$;
+		close2;
+		cutin "",255;
+		if (isnpccloaked( instance_npcname("8gate#1") ) == true) {
+			disablenpc instance_npcname("Charleston 1#61");
+			disablenpc .@npc2$;
+			cloakoffnpc instance_npcname("8gate#1");
+			enablenpc instance_npcname("Charleston 3#0");
+			enablenpc instance_npcname("Charleston 2#4");
+			enablenpc instance_npcname("Charleston 1#7");
+		}
+		end;
+	}
+	if ('ep15_1_mcd01 == 10) {
+		cutin "dalle01.bmp",2;
+		mes "[Charleston 1]";
+		mes "This Core in the center powers the entire factory.";
+		close3;
+	}
+	end;
+}
+
+1@mcd,127,129,5	script	Charleston 2#3	4_F_CHARLESTON02,2,2,{
+	cutin "nale01.bmp",0;
+	mes "[Charleston 2]";
+	mes "The Charleston Factory is under my control now. I'm destroying everything, so no more sad robots like me will ever see the world.";
+	close3;
+OnTouch_:
+	if ('ep15_1_mcd01 == 10) {
+		donpcevent instance_npcname("CoreDialog#3") + "::OnStart";
+		'ep15_1_mcd01 = 11;
+	}
+	end;
+}
+
+1@mcd,127,129,5	script	Charleston 2#31	4_F_CHARLESTON02,{
+	cutin "nale01.bmp",0;
+	mes "[Charleston 2]";
+	mes "99 Explosive Powders? Easy.";
+	close3;
+}
+
+1@mcd,15,15,5	script	CoreDialog#3	CLEAR_NPC,{
+	end;
+OnStart:
+	.@npc1$ = instance_npcname("Charleston 1#6");
+	.@npc2$ = instance_npcname("Charleston 2#3");
+	npctalk "Charleston 2: The Charleston Factory is under my control now. I'm destroying everything, so no more sad robots like me will ever see the world.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: I want to understand you, but I'm incapable of feeling sad.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Just shut up and watch me. Don't you dare stop me!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Do you know how to access the Core?", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Easy. I can just walk in....", .@npc2$;
+	sleep 2000;
+	specialeffect EF_BASH3D2, AREA, .@npc2$;
+	sleep 2000;
+	npctalk "Charleston 2: Bah, it's armed.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Sigh, to enter the Core, you have to send encrypted electric signals, like this.", .@npc1$;
+	sleep 2000;
+	specialeffect EF_BASH3D2, AREA, .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: ...Um, maybe it's broken.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Dr. Ve created Charleston 3 and protected her with this device. How sneaky!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: What are you talking about? The Core has existed long before the Charleston Factory.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Plus, Dr. Ve is a human; he can't enter the Core.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Then, who was it in the Core making 3?", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: That's not important right now. We need 100 Explosive Powders to disarm that access device.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: I'll bring them. Don't go anywhere!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: I'll get 99. You get the last one.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: I'm already in the process of connecting to the Core. Backing out now can trigger the Core's security system.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: You did this on purpose.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Adventurer, could you bring 1 Explosive Powder?", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: I can't move at this moment. Please bring me 1 Explosive Powder.", .@npc1$;
+	disablenpc .@npc1$;
+	disablenpc .@npc2$;
+	enablenpc instance_npcname("Charleston 1#61");
+	enablenpc instance_npcname("Charleston 2#31");
+	end;
+}
+
+1@mcd,132,148,4	script	Charleston 1#7	4_F_CHARLESTON01,{
+	if ('ep15_1_mcd01 > 12)
+		end;
+	if ('ep15_1_mcd01 == 11) {
+		'ep15_1_mcd01 = 12;
+		donpcevent instance_npcname("boss#1") + "::OnStart";
+	}
+	end;
+}
+
+1@mcd,133,148,4	script	Charleston 1#8	4_F_CHARLESTON01,{ end; }
+1@mcd,127,148,5	duplicate(Charleston 1#8)	Charleston 2#4	4_F_CHARLESTON02
+1@mcd,130,153,5	duplicate(Charleston 1#8)	Charleston 3#0	4_F_CHARLESTON03
+
+// Dummy npc
+//1@mcd,7,7,5	script	boss#0	4_F_CHARLESTON03
+
+1@mcd,129,155,0	script	boss#1	HIDDEN_WARP_NPC,1,1,{
+	end;
+OnStart:
+	.@npc1$ = instance_npcname("Charleston 1#7");
+	.@npc2$ = instance_npcname("Charleston 2#4");
+	.@npc3$ = instance_npcname("Charleston 3#0");
+	.@npc4$ = instance_npcname("Charleston 1#8");
+	npctalk "Charleston 2: This is Charleston 3.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Equipped with a heavy weapon, this combat unit is capable of both offense and defense.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: It has a pilot cockpit inside, and armed with thick plates that can withstand most explosions.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: To turn it on, push the lever to the center and press the power switch.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: That's not even in the main computer's database. How did you know that?", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: That's not important. Whoever gets in her wins, right? I won.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ...!", .@npc2$;
+	sleep 3000;
+	disablenpc .@npc1$;
+	enablenpc .@npc4$;
+	npctalk "Charleston 1: Hey, did you have to push me?!", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: Push the lever to the center and press the power switch.", .@npc2$;
+	sleep 3000;
+	disablenpc .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: I'm destroying everything, so no more sad robots like me will ever see the world.", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 2: My laser beam will liberate all the robots from their misery!", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 1: I'm not capable of combat. I can't stop you.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: So stop following me. I really can destroy you if I want to!", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 1: I've brought some people who can help you.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: I thought humans could not enter the Core.", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 1: Hm, I think you're right.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 1: This may not be useful in combat, but I've learned from a pretty lady how to scream.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: Why didn't you learn something more useful in combat?", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 1: Didn't have a choice.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 2: Stop me and suffer the consequences. I can always replace you, you know.", .@npc3$;
+	sleep 3000;
+	npctalk "Charleston 1: The next model may or may not be like you and me. It doesn't matter. You have to be stopped.", .@npc4$;
+	sleep 3000;
+	npctalk "Charleston 1: I'll see to it! ...I mean these adventurers will, for me.", .@npc4$;
+	sleep 3000;
+	initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	disablenpc instance_npcname("boss#1");
+	donpcevent instance_npcname("boss#2") + "::OnStart";
+	disablenpc instance_npcname("Charleston 3#0");
+	disablenpc instance_npcname("Charleston 1#8");
+	'boss_status = 1;
+	end;
+}
+
+1@mcd,129,149,0	script	boss#2	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	initnpctimer;
+	donpcevent instance_npcname("BOSS#23") + "::OnStart";
+	donpcevent instance_npcname("Bomb#23") + "::OnStart";
+	monster 'map_name$,129,149, "Charleston 3", 3124,1, instance_npcname("boss#2") + "::OnMyMobDead";	// CHARLESTON3
+	end;
+OnTimer10000:
+	if (mobcount( 'map_name$, instance_npcname("boss#2") + "::OnMyMobDead" ) > 0) {
+		initnpctimer;
+		end;
+	}
+	stopnpctimer;
+	'boss_status = 0;
+	enablenpc instance_npcname("Charleston 2#5");
+	enablenpc instance_npcname("Charleston 1#9");
+	donpcevent instance_npcname("BOSS#23") + "::OnStop";
+	donpcevent instance_npcname("Bomb#23") + "::OnStop";
+	disablenpc instance_npcname("boss#2");
+	end;
+OnStop:
+	stopnpctimer;
+	disablenpc instance_npcname("boss#2");
+	end;
+OnMyMobDead:
+	end;
+}
+
+1@mcd,120,150,0	script	BOSS#23	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer10000:
+	if ('boss_status == 0) {
+		stopnpctimer;
+		end;
+	}
+	.@r = rand(1,3);
+	if (.@r == 1)
+		areamonster 'map_name$,119,146,125,152,"A-TYPE", 3128,1;// KICK_AND_KICK
+	else if (.@r == 2)
+		areamonster 'map_name$,126,139,132,145,"A-TYPE", 3128,1;
+	else
+		areamonster 'map_name$,133,146,139,152,"A-TYPE", 3128,1;
+	initnpctimer;
+	end;
+OnStop:
+	stopnpctimer;
+	disablenpc instance_npcname("BOSS#23");
+	end;
+}
+
+1@mcd,142,150,0	script	Bomb#23	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer30000:
+	if ('boss_status == 0) {
+		stopnpctimer;
+		end;
+	}
+	.@label$ = instance_npcname("Bomb#23") + "::OnMyMobDead";
+	killmonster 'map_name$, .@label$;
+	areamonster 'map_name$,127,162,131,166,"Bomb", 3161,1, .@label$;// BOMB
+	areamonster 'map_name$,120,159,124,163,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,116,152,120,156,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,116,145,120,149,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,119,139,123,143,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,124,134,128,138,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,137,157,141,161,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,132,135,136,139,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,137,138,141,142,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,139,143,143,147,"Bomb", 3161,1, .@label$;
+	areamonster 'map_name$,140,151,144,155,"Bomb", 3161,1, .@label$;
+	initnpctimer;
+	end;
+OnStop:
+	stopnpctimer;
+	disablenpc instance_npcname("Bomb#23");
+	end;
+OnMyMobDead:
+	end;
+}
+
+1@mcd,132,148,4	script	Charleston 1#9	4_F_CHARLESTON01,{
+	if ('ep15_1_mcd01 > 13) {
+		cutin "dalle04.bmp",2;
+		mes "[Charleston 1]";
+		mes "#%@EGD&#(@#... Reinitializing the OS...";
+		next;
+		cutin "",255;
+		mes "She's making strange noises and not functioning.";
+		close;
+	}
+	if ('ep15_1_mcd01 == 14) {
+		cutin "dalle04.bmp",2;
+		mes "[Charleston 1]";
+		mes "#%@EGD&#(@#... Reinitializing the OS...";
+		next;
+		mes "She's making strange noises and not functioning.";
+		close3;
+	}
+	end;
+}
+
+1@mcd,127,148,5	script	Charleston 2#5	4_F_CHARLESTON02,{
+	if ('ep15_1_mcd01 > 13)
+		end;
+	if ('ep15_1_mcd01 == 12) {
+		'ep15_1_mcd01 = 13;
+		donpcevent instance_npcname("boss#3") + "::OnStart";
+	}
+	end;
+}
+
+1@mcd,127,148,5	script	Charleston 2#6	4_F_CHARLESTON02,{
+	if ('ep15_1_mcd01 > 14)
+		end;
+	if ('ep15_1_mcd01 == 13) {
+		'ep15_1_mcd01 = 14;
+		cutin "nale01.bmp",0;
+		mes "[Charleston 2]";
+		mes "Come to think of it, everything about Dr. Ve was suspicious. I mean, he relied on his assistant Charleston 1 for everything.";
+		next;
+		mes "[Charleston 2]";
+		mes "Only Dr. Ve know can answer my question. I must find him. He must be in the lab.";
+		close2;
+		cutin "",255;
+		if ('ep15_1_mcd01 == 14) {
+			enablenpc instance_npcname("Charleston 2#7");
+			enablenpc instance_npcname("Dr. Ve#3");
+			enablenpc instance_npcname("9gate#1");
+			disablenpc instance_npcname("Charleston 2#6");
+			disablenpc instance_npcname("Dr. Ve#2");
+		}
+		end;
+	}
+	end;
+}
+
+1@mcd,129,149,0	script	boss#3	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	.@npc1$ = instance_npcname("Charleston 1#9");
+	.@npc2$ = instance_npcname("Charleston 2#5");
+	.@npc3$ = instance_npcname("Charleston 2#6");
+	npctalk "Charleston 1: Charleston 3 is destroyed. Charleston 2 escaped. Charleston 1 is damaged during combat.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Why are you doing this? You're a robot like us.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: Don't you care if your body is destroyed? Your Self-reflection OS is flawed.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: Stop being a mindless robot! Stop following commands!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Data loss: 39%. Longevity damage: 82%.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Only the core parts are functioning, though barely.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Data defragmentation is necessary to repair the damage on the OS. I'll be formatted in 3 minutes. This is it for me.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Incomplete robot...", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Forsythia, you've grown well. Thank you.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Don't call me that! I hate when the doctor calls me that!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: I gave you that name on the day you first moved. It's from the color of your hair.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ...?", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: My OS is damaged beyond rep-pai... The language output has been minimized.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: On the day I first moved? You and I are the mass version. We were created together.", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: The mass model is after Charleston 3.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: I'm the prototype. It took years to develop you.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Your OS is identical to mine. Not a single code is different.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: You're lying!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: I'm incapable of lying.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ......", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Your development took years. It's okay. I enjoyed this time with you.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: If I were a human, I'd say...", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: My daughter, Forsythia, I l-love y-y...", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Wait!", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 1: Beep-.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: The system has been rebooted successfully.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: Time remaining until the OS recovery: undetermined.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 1: The system is inactive until the security update and data defragmentation are completed.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Was that a secret about my birth?", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: I'm confused. I can't believe it.", .@npc2$;
+	sleep 3000;
+	initnpctimer;
+	end;
+OnTimer300:
+	disablenpc instance_npcname("Charleston 2#5");
+	enablenpc instance_npcname("Charleston 2#6");
+	donpcevent instance_npcname("boss#2") + "::OnStop";
+	stopnpctimer;
+	end;
+OnStop:
+	disablenpc instance_npcname("boss#2");
+	stopnpctimer;
+	end;
+}
+
+1@mcd,116,215,5	script	Dr. Ve#3	4_M_DOCTOR,{
+	if ('ep15_1_mcd01 > 15) {
+		mes "[Dr. Ve]";
+		mes "With complete machine technology to obtain immortality drive, there are many variables.";
+		next;
+		mes "[Dr. Ve]";
+		mes "Hmm... On a mediated machine body is still difficult, is it... Do you really need a living donor? Hehe!";
+		close;
+	}
+	if ('ep15_1_mcd01 == 15) {
+		mes "[Dr. Ve]";
+		mes "Charleston 1 is reinitializing itself again. Hm...";
+		close;
+	}
+	mes "[Dr. Ve]";
+	mes "I've got so many things to record about this case.";
+	close;
+}
+
+1@mcd,121,215,4	script	Charleston 2#7	4_F_CHARLESTON02,{
+	if ('ep15_1_mcd01 > 15)
+		end;
+	if ('ep15_1_mcd01 == 14) {
+		'ep15_1_mcd01 = 15;
+		donpcevent instance_npcname("end#1") + "::OnStart";
+	}
+	end;
+}
+
+1@mcd,129,149,0	script	end#1	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	.@npc1$ = instance_npcname("Dr. Ve#3");
+	.@npc2$ = instance_npcname("Charleston 2#7");
+	npctalk "Charleston 2: Dr. Ve, did you know this would happen? Tell me!", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: Charleston 1 told you. She's your maker.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: She uses the same OS as you, meaning she was capable of emotions just like you.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: Why did she stop me? Why did she let herself be destroyed?", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: Self-reflection is an OS that improves itself through experience.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: What you've felt could be real emotion or simply the accumulation of data.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: I can only assume you've developed a personality after having accumulated a large amount of data.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: A loving mother and a spoiled daughter.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: That's how I've seen her and you.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: That's s-stupid...", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: My goodness, what have I done?!", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: Do you want to bring Charleston 1 back? I can help.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ...!", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: Let your OS go to sleep. I'm done dealing with your tantrum.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ...How can I trust you?", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: You can't. I can just permanently delete her data and be done with you both.", .@npc1$;
+	sleep 3000;
+	npctalk "Dr. Ve: I know you feel attached to her, just like a human family would.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: You're a scumbag.", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: You wanted to be human. This is what humans do: lie, cheat, and destroy.", .@npc1$;
+	sleep 3000;
+	npctalk "Charleston 2: ......", .@npc2$;
+	sleep 3000;
+	npctalk "Charleston 2: Entering Sleep mode.... The system will remain inactive until an external command is entered.", .@npc2$;
+	sleep 3000;
+	npctalk "Dr. Ve: *Chuckle*", .@npc1$;
+	sleep 3000;
+	initnpctimer;
+	end;
+OnTimer300:
+	disablenpc instance_npcname("end#1");
+	disablenpc instance_npcname("Charleston 2#7");
+	disablenpc instance_npcname("Dr. Ve#3");
+	enablenpc instance_npcname("Charleston 2#8");
+	enablenpc instance_npcname("Dr. Ve#4");
+	stopnpctimer;
+	end;
+}
+
+1@mcd,116,215,4	script	Dr. Ve#4	4_M_DOCTOR,{
+	if ('ep15_1_mcd01 == 17) {
+		mes "[Dr. Ve]";
+		mes "With complete machine technology to obtain immortality drive, there are many variables.";
+		next;
+		mes "[Dr. Ve]";
+		mes "Hmm... On a mediated machine body is still difficult, is it... Do you really need a living donor? Hehe!";
+		close;
+	}
+	if ('ep15_1_mcd01 == 16) {
+		mes "[Dr. Ve]";
+		mes "No ordinary human can survive the time in the Core. Are you from a different point of time?";
+		next;
+		mes "[Dr. Ve]";
+		mes "Perhaps you're from the time the makers of Charleston 1 lived...";
+		next;
+		mes "[Dr. Ve]";
+		mes "Never mind. You have no business in here. Just go back to whoever broke Charleston 2.";
+		close2;
+		if ('ep15_1_mcd01 == 16)
+			'ep15_1_mcd01 = 17;
+		end;
+	}
+	if ('ep15_1_mcd01 == 15) {
+		mes "[Dr. Ve]";
+		mes "Whew.";
+		next;
+		mes "[Dr. Ve]";
+		mes "I'd better reset Charleston 2 and wipe the data. It was really close this time.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "This time?";
+		next;
+		mes "[Dr. Ve]";
+		mes "Charleston 1 created 2 decades ago. I met Charleston 1 to learn her technology.";
+		next;
+		mes "[Dr. Ve]";
+		mes "I'm an observer. I'm here to record the history of Charlestons 1 and 2. I can't repair either of them, but I can wait.";
+		next;
+		mes "[Dr. Ve]";
+		mes "If Charleston 1 is reinitialized properly, she can reorganize her OS, repair the damage done to her, and reactivate another Charleston 2.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Another Charleston 2?";
+		next;
+		mes "[Dr. Ve]";
+		mes "Charleston 2's OS has improved on its own like a living brain.";
+		next;
+		mes "[Dr. Ve]";
+		mes "Every time Charleston 2 comes back to life, though in a different machine, she's more intelligent, more sensible, and more troublesome.";
+		next;
+		mes "[Dr. Ve]";
+		mes "There's nothing you or I can do. We'll have to wait until Charleston 1 repairs herself.";
+		next;
+		mes "Dr. Ve sighs and writes down something.";
+		next;
+		mes "[Dr. Ve]";
+		mes "By the way, there are too many variables to achieve immortality through mechanical engineering.";
+		next;
+		mes "[Dr. Ve]";
+		mes "This proves that machines are too dangerous. I need live creatures instead. *Chuckle*";
+		if ('ep15_1_mcd01 == 15)
+			'ep15_1_mcd01 = 16;
+		close;
+	}
+	if ('ep15_1_mcd01 == 14) {
+		mes "[Dr. Ve]";
+		mes "Charleston 1 is reinitializing itself again. Hm...";
+		close;
+	}
+	mes "[Dr. Ve]";
+	mes "I've got so many things to record about this case.";
+	close;
+}
+
+1@mcd,121,215,4	script	Charleston 2#8	4_F_CHARLESTON02,{
+	if ('ep15_1_mcd01 == 15) {
+		cutin "nale04.bmp",0;
+		mes "She's in Sleep mode and not moving.";
+		close3;
+	}
+	if ('ep15_1_mcd01 > 15) {
+		cutin "nale04.bmp",0;
+		mes "Charleston 2 is standing still, her system in Sleep mode. For a moment, her eyes gleamed with unshed tears.";
+		close3;
+	}
+	cutin "nale04.bmp",0;
+	mes "Charleston 2 is standing still, her system in Sleep mode. For a moment, her eyes gleamed with unshed tears.";
+	close3;
+}
+
+1@mcd,77,167,5	script	Shalosh#1	4_F_SHALOSH,{
+	cutin "shaloshi01.bmp",2;
+	mes "[Shalosh]";
+	mes "......";
+	next;
+	switch( select( "Talk.", "I need help.", "I want to go back." ) ) {
+	case 1:
+		if ('ep15_1_mcd01 == 17) {
+			mes "[Shalosh]";
+			mes "After break;ing up with Newoz in a nightmare and thinking about wandering around, I was born of demons but lost my goal.";
+			next;
+			mes "[Shalosh]";
+			mes "I didn't do anything, I just talked to Charleston 2.";
+			close3;
+		}
+		if ('ep15_1_mcd01 == 11) {
+			mes "[Shalosh]";
+			mes "Even if the effort is unremitting...";
+			next;
+			mes "[Shalosh]";
+			mes "Hmm... Suit yourself!";
+			close3;
+		}
+		if ('ep15_1_mcd01 == 4 || 'ep15_1_mcd01 == 3 || 'ep15_1_mcd01 == 2) {
+			mes "[Shalosh]";
+			mes "Did she really say that? That I broke Charleston 2? Sigh...";
+			next;
+			mes "[Shalosh]";
+			mes "I did nothing wrong. I just had a quick conversation with Charleston 2. That's the truth.";
+			close3;
+		}
+		mes "[Shalosh]";
+		mes "I invited only Newoz. Well, I guess I shouldn't have opened the door for the robot who needed a closure.";
+		close3;
+	case 2:
+		if ('ep15_1_mcd01 == 4) {
+			viewpoint 1,84,226,1,0xFF00FF;
+			viewpoint 1,126,84,2,0xFF00FF;
+			viewpoint 1,111,68,3,0xFF00FF;
+			viewpoint 1,210,181,4,0xFF00FF;
+			viewpoint 1,183,192,5,0xFF00FF;
+			viewpoint 1,130,124,6,0xFF00FF;
+			viewpoint 1,54,108,7,0xFF00FF;
+			mes "[Shalosh]";
+			mes "If you're looking for something...";
+			close3;
+		}
+		if ('ep15_1_mcd01 == 5 || 'ep15_1_mcd01 == 6 || 'ep15_1_mcd01 == 7) {
+			viewpoint 1,86,231,8,0xFF00FF;
+			viewpoint 1,172,196,9,0xFF00FF;
+			viewpoint 1,126,84,10,0xFF00FF;
+			mes "[Shalosh]";
+			mes "If you're looking for something...";
+			close3;
+		}
+		mes "[Shalosh]";
+		mes "Ferre came with me, but I haven't seen him. No, thanks; I know he'll come back to me.";
+		close3;
+	case 3:
+		if ('ep15_1_mcd01 == 17) {
+			mes "[Shalosh]";
+			mes "The noise stopped. I can send you back to where you came if you want.";
+			next;
+			if (select( "Go back.", "Stay." ) == 2) {
+				mes "[Shalosh]";
+				mes "The invitee is unable to interfere with the original time, and staying can change nothing.";
+				close3;
+			}
+			mes "[Shalosh]";
+			mes "Both the noise and the story were entertaining. Come with Newoz, and maybe we can meet again.";
+			next;
+			mes "[Shalosh]";
+			mes "Maybe I too should leave for new noises and stories.";
+			completequest 13184;
+			if (isbegin_quest(13186) == 0) {
+				setquest 13186;
+				completequest 13186;
+			}
+			close2;
+			getitem 6752,3;	// Charleston_Parts
+			cutin "",255;
+			warp "verus04",107,124;
+			end;
+		}
+		mes "[Shalosh]";
+		mes "You can try, but you can't change anything. How futile that is!";
+		close3;
+	}
+	end;
+}
+
+1@mcd,109,219,5	script	Main Computer#1	CLEAR_NPC,{
+	if ('ep15_1_mcd01 < 3)
+		end;
+	switch( checkquest(13188,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Main Computer]";
+		mes "More Steps must be disposed. Backing up the Step data...";
+		close;
+	case 2:
+		break;
+	}
+	switch( checkquest(13187,HUNTING) ) {
+	case -1:
+		mes "[Main Computer]";
+		mes "Charleston 2's system was overloaded during regular maintenance. Disconnection from its OS failed.";
+		next;
+		mes "[Main Computer]";
+		mes "Unauthorized access made to the system was defended, but unauthorized data interception and conflict continued, turning the Nanosteps into monsters.";
+		next;
+		mes "[Main Computer]";
+		mes "To accelerate the main computer's processing rate and reclaim the factory, 50 Steps must be disposed.";
+		next;
+		if (select( "Perform the request.", "Quit." ) == 1) {
+			mes "[Main Computer]";
+			mes "Requires 50 Steps to be disposed.";
+			if (isbegin_quest(13188) == 1)
+				erasequest 13188;
+			setquest 13187;
+		}
+		close;
+	case 0:
+	case 1:
+		mes "[Main Computer]";
+		mes "To accelerate the main computer's processing rate and reclaim the factory, 50 Steps must be disposed.";
+		close;
+	case 2:
+		mes "[Main Computer]";
+		mes "Thank you for your hard work. Now backing up the data of the disposed Steps...";
+		erasequest 13187;
+		setquest 13188;
+		getexp 1000000,300000;
+		getitem 6752,1;	// Charleston_Parts
+		close;
+	}
+	end;
+}
+
+1@mcd,86,231,5	script	Backup Generator#1	CLEAR_NPC,2,2,{
+	end;
+OnTouch_:
+	if ('ep15_1_mcd01 == 7) {
+		mes "You turned on the generator. The sounds of turning wheels can be heard.";
+		next;
+		mes "The generator must be working. The factory is buzzing with activity.";
+		if ('ep15_1_mcd01 == 7) {
+			'ep15_1_mcd01 = 8;
+			donpcevent instance_npcname("GeneratorBroadcast#1") + "::OnStart";
+			disablenpc instance_npcname("Charleston 1#2");
+			enablenpc instance_npcname("Charleston 1#3");
+			disablenpc instance_npcname( strnpcinfo(0) );
+		}
+		close;
+	}
+	if ('ep15_1_mcd01 == 6 || 'ep15_1_mcd01 == 5) {
+		mes "You turned on the generator. The sounds of turning wheels can be heard.";
+		'ep15_1_mcd01++;
+		disablenpc instance_npcname( strnpcinfo(0) );
+		close;
+	}
+	end;
+}
+1@mcd,172,198,5	duplicate(Backup Generator#1)	Backup Generator#2	CLEAR_NPC,2,2
+1@mcd,126,84,5	duplicate(Backup Generator#1)	Backup Generator#3	CLEAR_NPC,2,2
+
+1@mcd,11,11,5	script	GeneratorBroadcast#1	CLEAR_NPC,{
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer1000:
+	mapannounce 'map_name$, "Charleston 1: Ah, ah. Mic test", bc_map, 0xffff00;
+	sleep 3000;
+	mapannounce 'map_name$, "Charleston 1: The power is back on!", bc_map, 0xffff00;
+	sleep 3000;
+	mapannounce 'map_name$, "Charleston 1: Please come back to the lab.", bc_map, 0xffff00;
+	stopnpctimer;
+	end;
+}
+
+1@mcd,44,211,0	script	1gate#1	WARPNPC,3,3,{
+	end;
+OnStart:
+	enablenpc instance_npcname("1gate#1");
+	monster 'map_name$,33,59, "2nd Security Robot", 3127,1, instance_npcname("1gate#1") + "::OnMyMobDead";	// KICK_STEP
+	end;
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("1gate#1") + "::OnMyMobDead" ) < 1) {
+		mapannounce 'map_name$, "Charleston 1: Gate 2 has been disarmed. Please move southeast for the next gate.", bc_map, 0xffff00;
+		initnpctimer;
+	}
+	end;
+OnTimer1000:
+	donpcevent instance_npcname("2gate#1") + "::OnStart";
+	stopnpctimer;
+	end;
+OnTouch_:
+	warp 'map_name$,41,200;
+	end;
+}
+
+1@mcd,58,72,0	script	2gate#1	WARPNPC,3,3,{
+	end;
+OnStart:
+	enablenpc instance_npcname("2gate#1");
+	monster 'map_name$,239,30, "3rd Security Robot", 3127,1, instance_npcname("2gate#1") + "::OnMyMobDead";	// KICK_STEP
+	end;
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("2gate#1") + "::OnMyMobDead" ) < 1) {
+		mapannounce 'map_name$, "Charleston 1: Gate 3 has been disarmed. Please move east for the next gate.", bc_map, 0xffff00;
+		initnpctimer;
+	}
+	end;
+OnTimer1000:
+	donpcevent instance_npcname("3gate#1") + "::OnStart";
+	stopnpctimer;
+	end;
+OnTouch_:
+	warp 'map_name$,65,66;
+	end;
+}
+
+1@mcd,104,50,0	script	3gate#1	WARPNPC,3,3,{
+	end;
+OnStart:
+	enablenpc instance_npcname("3gate#1");
+	monster 'map_name$,281,183, "4th Security Robot", 3127,1, instance_npcname("3gate#1") + "::OnMyMobDead";	// KICK_STEP
+	end;
+OnMyMobDead:
+	if (mobcount( 'map_name$, instance_npcname("3gate#1") + "::OnMyMobDead" ) < 1) {
+		mapannounce 'map_name$, "Charleston 1: Gate 4 has been disarmed. Please come to the lab near Line 3 in the center.", bc_map, 0xffff00;
+		initnpctimer;
+	}
+	end;
+OnTimer1000:
+	enablenpc instance_npcname("4gate#1");
+	stopnpctimer;
+	end;
+OnTouch_:
+	warp 'map_name$,115,50;
+	end;
+}
+
+1@mcd,218,211,0	warp	4gate#1	3,3,1@mcd,210,217
+1@mcd,211,195,0	warp	5gate#1	3,3,1@mcd,211,180
+1@mcd,141,199,0	warp	6gate#1	2,2,1@mcd,141,207
+
+1@mcd,142,203,0	script	7gate#1	WARPNPC,2,2,{
+	end;
+OnTouch_:
+	warp 'map_name$,136,200;
+	if ('ep15_1_mcd01 == 4) {
+		viewpoint 1,84,226,1,0xFF00FF;
+		viewpoint 1,126,84,2,0xFF00FF;
+		viewpoint 1,111,68,3,0xFF00FF;
+		viewpoint 1,210,181,4,0xFF00FF;
+		viewpoint 1,183,192,5,0xFF00FF;
+		viewpoint 1,130,124,6,0xFF00FF;
+		viewpoint 1,54,108,7,0xFF00FF;
+	}
+	else if ('ep15_1_mcd01 == 5) {
+		viewpoint 1,86,231,8,0xFF00FF;
+		viewpoint 1,172,196,9,0xFF00FF;
+		viewpoint 1,126,84,10,0xFF00FF;
+	}
+	end;
+}
+
+1@mcd,130,127,0	warp	8gate#1	2,2,1@mcd,129,143
+1@mcd,130,134,0	warp	9gate#1	2,2,1@mcd,130,121
+
+1@mcd,127,262,0	script	mob#1	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch_:
+	disablenpc instance_npcname( strnpcinfo(0) );
+	switch( atoi(strnpcinfo(2)) ) {
+	case 1:
+		areamonster 'map_name$,106,246,115,256,"Security robot", 3128,5;	// KICK_AND_KICK
+		areamonster 'map_name$,108,248,114,254,"Security robot", 3128,2;
+		end;
+	case 2:
+		areamonster 'map_name$,47,223,57,233,"Security robot", 3128,5;
+		areamonster 'map_name$,49,225,55,231,"Security robot", 3128,2;
+		end;
+	case 3:
+		areamonster 'map_name$, 21,158, 31,168,"Security robot", 3128,5;
+		areamonster 'map_name$, 32, 93, 42,103,"Security robot", 3128,2;
+		areamonster 'map_name$, 49, 72, 59, 82,"Security robot", 3128,5;
+		areamonster 'map_name$, 34, 60, 44, 70,"Security robot", 3128,3;
+		end;
+	case 4:
+		areamonster 'map_name$, 85, 39,101, 55,"Security robot", 3128,8;
+		end;
+	case 5:
+		areamonster 'map_name$,120, 23,130, 33,"Security robot", 3128,5;
+		areamonster 'map_name$,147, 26,151, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,175, 26,179, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,194, 26,198, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,208, 26,212, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,221, 26,225, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,203, 26,207, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,128, 26,132, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,153, 26,157, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,163, 26,167, 30,"Security robot", 3128,1;
+		areamonster 'map_name$,229, 19,249, 39,"Security robot", 3128,10;
+		end;
+	case 6:
+		areamonster 'map_name$,161, 48,169, 56,"Security robot", 3128,5;
+		areamonster 'map_name$,187, 59,195, 67,"Security robot", 3128,2;
+		areamonster 'map_name$,213, 82,221, 90,"Security robot", 3128,2;
+		end;
+	case 7:
+		areamonster 'map_name$,224,195,232,203,"Security robot", 3128,5;
+		areamonster 'map_name$,218, 94,226,102,"Security robot", 3128,2;
+		areamonster 'map_name$,231,136,239,144,"Security robot", 3128,2;
+		areamonster 'map_name$,228,172,236,180,"Security robot", 3128,2;
+		areamonster 'map_name$,272,173,292,193,"Security robot", 3128,8;
+		end;
+	case 8:
+		areamonster 'map_name$,129,228,137,236,"Security robot", 3128,5;
+		areamonster 'map_name$,177,233,179,235,"Security robot", 3128,1;
+		areamonster 'map_name$,154,247,162,255,"Security robot", 3128,2;
+		areamonster 'map_name$,154,227,162,235,"Security robot", 3128,1;
+		areamonster 'map_name$,174,216,182,224,"Security robot", 3128,3;
+		areamonster 'map_name$,199,196,207,204,"Security robot", 3128,3;
+		end;
+	case 9:
+		areamonster 'map_name$,127, 65,135, 73,"Security robot", 3128,5;
+		areamonster 'map_name$,181,110,189,118,"Security robot", 3128,3;
+		areamonster 'map_name$,122, 86,130, 94,"Security robot", 3128,3;
+		areamonster 'map_name$,183,140,203,160,"Security robot", 3128,8;
+		end;
+	case 10:
+		areamonster 'map_name$,123,105,131,113,"Security robot", 3128,4;
+		areamonster 'map_name$, 79,146, 87,154,"Security robot", 3128,3;
+		areamonster 'map_name$,110,188,118,196,"Security robot", 3128,3;
+		areamonster 'map_name$,148,183,156,191,"Security robot", 3128,3;
+		areamonster 'map_name$,127,172,131,176,"Security robot", 3128,1;
+		areamonster 'map_name$,108,168,112,172,"Security robot", 3128,1;
+		areamonster 'map_name$, 96,151,100,155,"Security robot", 3128,1;
+		areamonster 'map_name$,106,128,110,132,"Security robot", 3128,1;
+		areamonster 'map_name$,146,128,150,132,"Security robot", 3128,1;
+		areamonster 'map_name$,158,148,162,152,"Security robot", 3128,1;
+		areamonster 'map_name$, 91,117, 99,125,"Security robot", 3128,3;
+		areamonster 'map_name$, 77,150, 85,158,"Security robot", 3128,3;
+		areamonster 'map_name$, 64, 81, 94,111,"Security robot", 3128,10;
+		areamonster 'map_name$, 40,145, 48,153,"Security robot", 3128,4;
+		areamonster 'map_name$, 58, 99, 66,107,"Security robot", 3128,4;
+		end;
+	}
+}
+1@mcd,67,234,0	duplicate(mob#1)	mob#2	HIDDEN_WARP_NPC,5,5
+1@mcd,33,192,0	duplicate(mob#1)	mob#3	HIDDEN_WARP_NPC,5,5
+1@mcd,75,59,0	duplicate(mob#1)	mob#4	HIDDEN_WARP_NPC,5,5
+1@mcd,109,33,0	duplicate(mob#1)	mob#5	HIDDEN_WARP_NPC,5,5
+1@mcd,133,49,0	duplicate(mob#1)	mob#6	HIDDEN_WARP_NPC,5,5
+1@mcd,204,74,0	duplicate(mob#1)	mob#7	HIDDEN_WARP_NPC,5,5
+1@mcd,204,224,0	duplicate(mob#1)	mob#8	HIDDEN_WARP_NPC,5,5
+1@mcd,157,61,0	duplicate(mob#1)	mob#9	HIDDEN_WARP_NPC,5,5
+1@mcd,175,147,0	duplicate(mob#1)	mob#10	HIDDEN_WARP_NPC,10,10
+
+1@mcd,114,82,4	script	IGU#01	4_F_IU,{
+	cutin "igu04.bmp",2;
+	if (isbegin_quest(13186) == 0) {
+		mes "[IGU]";
+		mes "I've followed Newoz. Where is he now?";
+		close3;
+	}
+	mes "[IGU]";
+	mes "Enjoying the adventure? There are machines everywhere. It used to be a study. See those books over there?";
+	close3;
+}
+
+1@mcd,176,179,5	script	Newoz#15_	4_M_NEWOZ,{
+	cutin "nines01.bmp",0;
+	mes "[Newoz]";
+	mes "I was reading a letter from Shalosh, and the next thing I knew, I was in a completely different place. Oh well, I might as well use this chance to write a new song.";
+	close3;
+}
+
+1@mcd,123,74,5	script	#Research Journal 01	CLEAR_NPC,{
+	if (isbegin_quest(13186) == 0) {
+		mes "The bookcase is filled with research journals.";
+		close;
+	}
+	mes "Every page is written in mechanical language.";
+	next;
+	mes "-Dr. Ve seems to be planning a plot, the combination of life and the machine gradually let her crazy, the transformation of the plant into a fortress, her soul and robots... ";
+	next;
+	mes "-In short more and more dangerous, just in case is to study the Charleston 2 escape method.";
+	next;
+	mes "Behind is the mechanical language that is incomprehensible.";
+	close;
+}
+
+1@mcd,142,74,5	script	#Research Journal 02	CLEAR_NPC,{
+	if (isbegin_quest(13186) == 0) {
+		mes "The bookcase is filled with research journals.";
+		close;
+	}
+	mes "Every page is written in mechanical language.";
+	next;
+	mes "-Whenever the os of Charleston 2 is reset, there will be other personality, is difficult to explain the combination of data technology...";
+	next;
+	mes "-Did I really succeed in creating humanity? Robotic, I can't say. Did I understand humans?";
+	next;
+	mes "-It doesn't matter. Now I'm happy to see her, my best friend, my baby, Lily...";
+	next;
+	mes "Behind is the mechanical language that is incomprehensible.";
+	close;
+}
+
+1@mcd,111,74,5	script	#Research Journal 03	CLEAR_NPC,{
+	if (isbegin_quest(13186) == 0) {
+		mes "The bookcase is filled with research journals.";
+		close;
+	}
+	mes "Every page is written in mechanical language.";
+	next;
+	mes "-I do not know why the data is constantly damaged, the backup host is useless, like a sick like my memory is being eroded.";
+	next;
+	mes "-To prevent my memory from disappearing completely, the os auto-recovery program has been installed, at least... You can start over with new information...";
+	next;
+	mes "Behind is the mechanical language that is incomprehensible.";
+	close;
+}
+
+1@mcd,128,74,5	script	#Research Journal 04	CLEAR_NPC,{
+	if (isbegin_quest(13186) == 0) {
+		mes "The bookcase is filled with research journals.";
+		close;
+	}
+	mes "The handwriting is very scribbled.";
+	next;
+	mes "-Charleston... It's just a robot... Finally planted a virus on the mainframe.";
+	next;
+	mes "-Sooner or later, I'll figure out a way to destroy you. *Chuckle*!";
+	next;
+	mes "Behind is the mechanical language that is incomprehensible.";
+	close;
+}
+
+1@mcd,10,10,5	script	Charleston Assistant#1	CLEAR_NPC,{
+	if (callfunc("F_GM_NPC",1854,0,0,9999) < 1)
+		end;
+	mes "The current value is" + 'ep15_1_mcd01 + ",";
+	mes "Difficulty is 0,";
+	mes "Do you want to take a direct train?";
+	next;
+	switch( select( "Not taking", "Boading", "To Boss room", "Setitem" ) ) {
+	case 1:
+		break;
+	case 2:
+		mes "[Helper!]";
+		mes "Open transfer point.";
+		enablenpc instance_npcname("1gate");
+		enablenpc instance_npcname("2gate");
+		enablenpc instance_npcname("3gate");
+		enablenpc instance_npcname("4gate");
+		enablenpc instance_npcname("5gate");
+		close;
+	case 3:
+		close2;
+		warp 'map_name$,124,214;
+		end;
+	case 4:
+		switch( select( "Reset", "4 - Destroy Lockstep", "7 - Generator completed", "Core front", "Before Boss", "Destroy BOSS" ) ) {
+		case 1:
+			'ep15_1_mcd01 = 0;
+			break;
+		case 2:
+			enablenpc instance_npcname("Charleston 1#2");
+			disablenpc instance_npcname("Charleston 1#1");
+			mapannounce 'map_name$, "Charleston 1: Ah, ah. Mic test.", bc_map, 0xffff00;
+			sleep2 3000;
+			mapannounce 'map_name$, "Charleston 1: It seems you've taken care of most of the Locksteps.", bc_map, 0xffff00;
+			sleep2 3000;
+			mapannounce 'map_name$, "Charleston 1: Please come back to the lab.", bc_map, 0xffff00;
+			'ep15_1_mcd01 = 4;
+			break;
+		case 3:
+			enablenpc instance_npcname("Charleston 1#2");
+			disablenpc instance_npcname("Charleston 1#1");
+			'ep15_1_mcd01 = 8;
+			break;
+		case 4:
+			enablenpc instance_npcname("Charleston 1#6");
+			enablenpc instance_npcname("Charleston 2#3");
+			'ep15_1_mcd01 = 10;
+			close2;
+			warp 'map_name$,130,120;
+			end;
+		case 5:
+			'ep15_1_mcd01 = 11;
+			enablenpc instance_npcname("Charleston 1#7");
+			enablenpc instance_npcname("Charleston 2#4");
+			enablenpc instance_npcname("Charleston 3#0");
+			close2;
+			warp 'map_name$,130,145;
+			end;
+		case 6:
+			'ep15_1_mcd01 = 12;
+			enablenpc instance_npcname("Charleston 2#5");
+			enablenpc instance_npcname("Charleston 1#9");
+			break;
+		}
+		break;
+	}
+	mes "[Helper!]";
+	mes "The End";
+	close;
+
+OnInstanceInit:
+	'ep15_1_mcd01 = 0;
+	'boss_status = 0;
+	'map_name$ = instance_mapname("1@mcd");
+
+	disablenpc instance_npcname("Charleston 1#2");
+	disablenpc instance_npcname("Charleston 1#3");
+	disablenpc instance_npcname("Charleston 2#1");
+	disablenpc instance_npcname("Charleston 1#4");
+	disablenpc instance_npcname("battle#1");
+	disablenpc instance_npcname("battle#2");
+	disablenpc instance_npcname("Charleston 2#2");
+	disablenpc instance_npcname("Charleston 1#5");
+	disablenpc instance_npcname("Dr. Ve#2");
+	disablenpc instance_npcname("Charleston 1#6");
+	disablenpc instance_npcname("Charleston 1#61");
+	disablenpc instance_npcname("Charleston 2#3");
+	disablenpc instance_npcname("Charleston 2#31");
+	disablenpc instance_npcname("CoreDialog#3");
+	disablenpc instance_npcname("Charleston 1#7");
+	disablenpc instance_npcname("Charleston 1#8");
+	disablenpc instance_npcname("Charleston 2#4");
+	disablenpc instance_npcname("Charleston 3#0");
+	// disablenpc instance_npcname("boss#0");
+	disablenpc instance_npcname("boss#1");
+	disablenpc instance_npcname("BOSS#23");
+	disablenpc instance_npcname("Bomb#23");
+	disablenpc instance_npcname("Charleston 1#9");
+	disablenpc instance_npcname("Charleston 2#5");
+	disablenpc instance_npcname("Charleston 2#6");
+	disablenpc instance_npcname("boss#3");
+	disablenpc instance_npcname("Dr. Ve#3");
+	disablenpc instance_npcname("Charleston 2#7");
+	disablenpc instance_npcname("end#1");
+	disablenpc instance_npcname("Dr. Ve#4");
+	disablenpc instance_npcname("Charleston 2#8");
+	disablenpc instance_npcname("Backup Generator#1");
+	disablenpc instance_npcname("Backup Generator#2");
+	disablenpc instance_npcname("Backup Generator#3");
+	disablenpc instance_npcname("1gate#1");
+	disablenpc instance_npcname("2gate#1");
+	disablenpc instance_npcname("3gate#1");
+	disablenpc instance_npcname("4gate#1");
+	cloakonnpc instance_npcname("8gate#1");
+	disablenpc instance_npcname("9gate#1");
+
+	// workaround for permanent monsters
+	.@event$ = instance_npcname("Charleston Assistant#1") + "::OnMyMobDead";
+	monster 'map_name$,0,0,"--ja--", 3125,100, .@event$;	// STEP
+	monster 'map_name$,0,0,"--ja--", 3128,20, .@event$;		// KICK_AND_KICK
+	end;
+
+OnMyMobDead:
+	if (!playerattached())	// shouldn't happen
+		end;
+	.@time = 120000 + rand(60000);
+	.@mob_id = killedrid;
+	sleep .@time;
+	monster 'map_name$,0,0,"--ja--", .@mob_id,1, instance_npcname("Charleston Assistant#1") + "::OnMyMobDead";
+	end;
+}

+ 1840 - 0
npc/re/instances/HeartHunterWarBase.txt

@@ -0,0 +1,1840 @@
+//===== rAthena Script =======================================
+//= Instances Heart Hunter War Base.
+//===== Description: =========================================
+//- [Walkthrough conversion]
+//- Require Terra Gloria main quest.
+//===== Changelogs: ==========================================
+//= 1.0 First version. [Capuche]
+//============================================================
+
+// Einbroch Field - instance
+ein_fild04,275,342,5	script	Striker Unit Commander#	4_M_REBELLION3,{
+	if (terra_gloria_main < 19) {
+		mes "[Striker Unit Commander]";
+		mes "Hey, who's there?";
+		next;
+		select("I am executing my mission with the Rebellion unit.");
+		mes "[Striker Unit Commander]";
+		mes "This place is dangerous and you must leave quickly. We are near the enemy base.";
+		close;
+	}
+	switch( checkquest(12375,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Striker Unit Commander]";
+		mes "We are arranging the situation inside the base. We cannot let you in yet.";
+		close;
+	case 2:
+		mes "^0000ffSeems like the base has been arranged inside. ^000000";
+		erasequest 12375;// Base maintenance
+		break;
+	}
+	if (isbegin_quest(12374) == 0) {
+		mes "[Striker Unit Commander]";
+		mes "Once we are ready for the operation, you will get in there with me.";
+		next;
+		mes "[Striker Unit Commander]";
+		mes "By the way, did you receive a briefing from the general Julian? Come back after receiving the briefing.";
+		close;
+	}
+	mes "[Striker Unit Commander]";
+	mes "Once we are ready for the operation, you will get in there with me.";
+	next;
+	if (terra_gloria_main == 19)
+		.@md_name$ = "Heart Hunter War Base 1";
+	else
+		.@md_name$ = "Heart Hunter War Base 2";
+	switch( instance_enter(.@md_name$) ) {
+	case IE_NOMEMBER:
+		mes "^0000ffSeems like an adventurer without his/her unit (party) cannot enter.^000000";
+		close;
+	case IE_NOINSTANCE:
+		mes "[Striker Unit Commander]";
+		mes "The field of operation is " + .@md_name$ + " Check whether the operation was applied properly.";
+		next;
+		mes "^ff0000Goint to the outer boundary of Heart Hunter War Base without clearing the Heart Hunter War Base is prohibited. Also, you cannot enter the Heart Hunter War Base that has already been cleared. Please check your operation point^000000";
+		next;
+		mes "^ff0000This is when your progress is different from your party leader of the party member. In this case, find another party member who can go to the same place with you.^000000";
+		next;
+		mes "^ff0000The entry is also impossible if the Memorial Dungeon has not been created as an operation field.^000000";
+		close;
+	case IE_OTHER:
+		mes "An unknown error has occurred.";
+		close;
+	case IE_OK:
+		mapannounce "ein_fild04", "" + strcharinfo(0) + " of the party, " + getpartyname( getcharid(1) ) + ", is entering the " + .@md_name$ + ".", bc_map, 0xFF99;
+		setquest 12375;// Base maintenance
+		// if (terra_gloria_main == 20)
+		// 	warp "1@swat",35,65;
+		// else
+		// 	warp "1@swat",73,118;
+		end;
+	}
+}
+
+ein_fild04,281,337,3	script	Julian#ep16.2	4_M_REBELLION2,{
+	if (terra_gloria_main < 19) {
+		mes "^ff0000If you deal with monsters arbitrarily inside a dungeon, such as Monster taming, it will not be regarded as a normal progress. Please be aware of it.^000000";
+		next;
+		mes "[Julian]";
+		mes "Stop, which unit are you from? According to your answer, we may have to suppress you using an armed force.";
+		next;
+		select("I am executing my mission with the Rebellion unit.");
+		mes "[Julian]";
+		mes "Hmm, you are our troop? Since the scouting is not over yet, don't wander around here carelessly.";
+		close;
+	}
+	mes "^ff0000If you deal with monsters arbitrarily inside a dungeon, such as Monster taming, it will not be regarded as a normal progress. Please be aware of it.^000000";
+	next;
+	if (getcharid(1) < 1) {
+		mes "[Julian]";
+		mes "Are you a deserter wandering around without a position?";
+		next;
+		mes "^ff0000Only the party leader can talk to Julian in detail.^000000";
+		close;
+	}
+	switch( checkquest(12375,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Julian]";
+		mes "We are arranging the situation inside the base. You cannot enter yet.";
+		close;
+	case 2:
+		mes "^0000ffSeems like the base has been arranged inside. ^000000";
+		erasequest 12375;// Base maintenance
+		next;
+		break;
+	}
+	switch( isbegin_quest(12374) ) {
+	case 0:
+		mes "[Julian]";
+		mes "Are you the augmentation force in striking Heart Hunter base? I think we met before.";
+		next;
+		select("Just a thought.");
+		mes "[Julian]";
+		mes "Well, it doesn't matter. You should have a rough idea of what's going on here. Just remember that it's not going to be an easy task.";
+		next;
+		if (select( "Explain the situation to me.", "No time, let's proceed now." ) == 2) {
+			mes "[Julian]";
+			mes "Sounds cool. You are like a foreign legion, so stay beside me during the operation.";
+		}
+		else {
+			mes "[Julian]";
+			mes "Hmm, you haven't received a briefing yet? Since we don't have enough time, let me explain briefly.";
+			next;
+			mes "[Julian]";
+			mes "We don't have enough forces to strike the base.";
+			next;
+			mes "[Julian]";
+			mes "For the sake of mobility, we abandoned heavy firearms. Since our top priority mission is to occupy the base without destroying it much, most of explosive weapons have been excluded as well.";
+			next;
+			mes "[Julian]";
+			mes "If necessary, we can reinforce our firearms using the terrain features in the field... But it must be minimized.";
+			next;
+			mes "[Julian]";
+			mes "In any case, most of the operation must be anti-personnel damage and the base facilities have to be maintained whenever possible.";
+			next;
+			mes "[Julian]";
+			mes "Our advance party has secured the boundary surface in the southern base. We will take that route to move to the central part. And each striker unit will move in an individual route.";
+			next;
+			mes "[Julian]";
+			mes "You are like a foreign legion, so stay beside me during the operation. Any more question? Of course, I won't take any, even though you have one.";
+		}
+		next;
+		setquest 12374;// Heart Hunter Base occupation
+		mes "[Julian]";
+		mes "After that, follow the instruction of the chief of your unit. Once the gate to the base is opened, talk to the Striker Unit Commander over there and start.";
+		if (is_party_leader() == true) {
+			next;
+			mes "[Julian]";
+			mes "If you are ready, I will let you know the attack time.";
+			next;
+			if (select( "I'm ready.", "I need some more time." ) == 2) {
+				mes "[Julian]";
+				mes "I see. Since we are in a hurry, complete your preparation quickly and let me know.";
+				close;
+			}
+			break;
+		}
+		close;
+	case 1:
+		if (is_party_leader() == false) {
+			mes "[Julian]";
+			mes "After that, follow the instruction of the chief of your unit. Once the gate to the base is opened, talk to the Striker Unit Commander over there and start.";
+			close;
+		}
+		mes "[Julian]";
+		mes "Have you been to the toilet? I was looking for you.";
+		next;
+		mes "[Julian]";
+		mes "If you are ready, I will let you know the attack time.";
+		next;
+		if (select( "I'm ready.", "I need some more time." ) == 2) {
+			mes "[Julian]";
+			mes "I see. Since we are in a hurry, complete your preparation quickly and let me know.";
+			close;
+		}
+		break;
+	case 2:
+		if (is_party_leader() == false) {
+			mes "[Julian]";
+			mes "After that, follow the instruction of the chief of your unit. Once the gate to the base is opened, talk to the Striker Unit Commander over there and start.";
+			close;
+		}
+		mes "[Julian]";
+		mes "There is a broad vacant land on the outer boundary of the base we have occupied. We built a training ground there, but the facilities are imperfect. I need elite personnel who can examine it.";
+		next;
+		mes "[Julian]";
+		mes "Oh, isn't this the first time I tell you this? I would be glad if you can examine the facilities. What do you think?";
+		next;
+		if (select( "Let me do it.", "Maybe next time..." ) == 2) {
+			mes "[Julian]";
+			mes "I got it. I asked a little too much.";
+			close;
+		}
+		break;
+	}
+	if (terra_gloria_main == 19)
+		instance_create("Heart Hunter War Base 1");
+	else
+		instance_create("Heart Hunter War Base 2");
+	mes "[Julian]";
+	mes "It will open soon. Once the gate to the base is opened, talk to the Striker Unit Commander over there and start.";
+	close;
+}
+
+
+// Hunter Instance 1
+1@swat,36,71,6	duplicate(dummy_npc)	#ext1	4_M_REBELLION
+1@swat,36,68,6	duplicate(dummy_npc)	#ext2	4_F_REBELLION
+1@swat,36,65,6	duplicate(dummy_npc)	#ext3	4_M_REBELLION
+1@swat,36,62,6	duplicate(dummy_npc)	#ext4	4_F_REBELLION
+1@swat,36,59,6	duplicate(dummy_npc)	#ext5	4_M_REBELLION
+1@swat,33,71,6	duplicate(dummy_npc)	#ext6	4_F_REBELLION
+1@swat,33,68,6	duplicate(dummy_npc)	#ext7	4_M_REBELLION
+1@swat,33,65,6	duplicate(dummy_npc)	#ext8	4_F_REBELLION
+1@swat,33,62,6	duplicate(dummy_npc)	#ext9	4_M_REBELLION
+1@swat,33,59,6	duplicate(dummy_npc)	#ext10	4_F_REBELLION
+1@swat,30,71,6	duplicate(dummy_npc)	#ext11	4_M_REBELLION
+1@swat,30,68,6	duplicate(dummy_npc)	#ext12	4_F_REBELLION
+1@swat,30,65,6	duplicate(dummy_npc)	#ext13	4_M_REBELLION
+1@swat,30,62,6	duplicate(dummy_npc)	#ext14	4_F_REBELLION
+1@swat,30,59,6	duplicate(dummy_npc)	#ext15	4_M_REBELLION
+
+
+// Hunter Instance 1 - Step 1 Piles
+1@swat,116,30,6	duplicate(dummy_npc)	#wl1	4_ROPEPILE
+1@swat,116,31,6	duplicate(dummy_npc)	#wl2	4_ROPEPILE
+1@swat,116,32,6	duplicate(dummy_npc)	#wl3	4_ROPEPILE
+1@swat,116,33,6	duplicate(dummy_npc)	#wl4	4_ROPEPILE
+1@swat,116,34,6	duplicate(dummy_npc)	#wl5	4_ROPEPILE
+1@swat,116,35,6	duplicate(dummy_npc)	#wl6	4_ROPEPILE
+1@swat,116,36,6	duplicate(dummy_npc)	#wl7	4_ROPEPILE
+1@swat,116,37,6	duplicate(dummy_npc)	#wl8	4_ROPEPILE
+1@swat,116,38,6	duplicate(dummy_npc)	#wl9	4_ROPEPILE
+1@swat,116,39,6	duplicate(dummy_npc)	#wl10	4_ROPEPILE
+1@swat,116,40,6	duplicate(dummy_npc)	#wl11	4_ROPEPILE
+1@swat,116,41,6	duplicate(dummy_npc)	#wl12	4_ROPEPILE
+1@swat,116,42,6	duplicate(dummy_npc)	#wl13	4_ROPEPILE
+1@swat,116,43,6	duplicate(dummy_npc)	#wl14	4_ROPEPILE
+1@swat,116,44,6	duplicate(dummy_npc)	#wl15	4_ROPEPILE
+1@swat,116,45,6	duplicate(dummy_npc)	#wl16	4_ROPEPILE
+1@swat,116,46,6	duplicate(dummy_npc)	#wl17	4_ROPEPILE
+1@swat,116,47,6	duplicate(dummy_npc)	#wl18	4_ROPEPILE
+1@swat,116,48,6	duplicate(dummy_npc)	#wl19	4_ROPEPILE
+1@swat,116,49,6	duplicate(dummy_npc)	#wl20	4_ROPEPILE
+1@swat,116,50,6	duplicate(dummy_npc)	#wl21	4_ROPEPILE
+1@swat,116,51,6	duplicate(dummy_npc)	#wl22	4_ROPEPILE
+1@swat,116,52,6	duplicate(dummy_npc)	#wl23	4_ROPEPILE
+1@swat,116,53,6	duplicate(dummy_npc)	#wl24	4_ROPEPILE
+1@swat,116,54,6	duplicate(dummy_npc)	#wl25	4_ROPEPILE
+1@swat,116,55,6	duplicate(dummy_npc)	#wl26	4_ROPEPILE
+1@swat,116,56,6	duplicate(dummy_npc)	#wl27	4_ROPEPILE
+1@swat,116,57,6	duplicate(dummy_npc)	#wl28	4_ROPEPILE
+1@swat,116,58,6	duplicate(dummy_npc)	#wl29	4_ROPEPILE
+1@swat,116,59,6	duplicate(dummy_npc)	#wl30	4_ROPEPILE
+1@swat,116,60,6	duplicate(dummy_npc)	#wl31	4_ROPEPILE
+1@swat,116,61,6	duplicate(dummy_npc)	#wl32	4_ROPEPILE
+1@swat,116,62,6	duplicate(dummy_npc)	#wl33	4_ROPEPILE
+1@swat,116,63,6	duplicate(dummy_npc)	#wl34	4_ROPEPILE
+1@swat,116,64,6	duplicate(dummy_npc)	#wl35	4_ROPEPILE
+1@swat,116,65,6	duplicate(dummy_npc)	#wl36	4_ROPEPILE
+
+// Hunter Instance 1 - Step 2 Piles
+1@swat,151,30,6	duplicate(dummy_npc)	#wl37	4_ROPEPILE
+1@swat,151,31,6	duplicate(dummy_npc)	#wl38	4_ROPEPILE
+1@swat,151,32,6	duplicate(dummy_npc)	#wl39	4_ROPEPILE
+1@swat,151,33,6	duplicate(dummy_npc)	#wl40	4_ROPEPILE
+1@swat,151,34,6	duplicate(dummy_npc)	#wl41	4_ROPEPILE
+1@swat,151,35,6	duplicate(dummy_npc)	#wl42	4_ROPEPILE
+1@swat,151,36,6	duplicate(dummy_npc)	#wl43	4_ROPEPILE
+1@swat,151,37,6	duplicate(dummy_npc)	#wl44	4_ROPEPILE
+1@swat,151,38,6	duplicate(dummy_npc)	#wl45	4_ROPEPILE
+1@swat,151,39,6	duplicate(dummy_npc)	#wl46	4_ROPEPILE
+1@swat,151,40,6	duplicate(dummy_npc)	#wl47	4_ROPEPILE
+1@swat,151,41,6	duplicate(dummy_npc)	#wl48	4_ROPEPILE
+1@swat,151,42,6	duplicate(dummy_npc)	#wl49	4_ROPEPILE
+1@swat,151,43,6	duplicate(dummy_npc)	#wl50	4_ROPEPILE
+1@swat,151,44,6	duplicate(dummy_npc)	#wl51	4_ROPEPILE
+1@swat,151,45,6	duplicate(dummy_npc)	#wl52	4_ROPEPILE
+1@swat,151,46,6	duplicate(dummy_npc)	#wl53	4_ROPEPILE
+1@swat,151,47,6	duplicate(dummy_npc)	#wl54	4_ROPEPILE
+1@swat,151,48,6	duplicate(dummy_npc)	#wl55	4_ROPEPILE
+1@swat,151,49,6	duplicate(dummy_npc)	#wl56	4_ROPEPILE
+1@swat,151,50,6	duplicate(dummy_npc)	#wl57	4_ROPEPILE
+1@swat,151,51,6	duplicate(dummy_npc)	#wl58	4_ROPEPILE
+1@swat,151,52,6	duplicate(dummy_npc)	#wl59	4_ROPEPILE
+1@swat,151,53,6	duplicate(dummy_npc)	#wl60	4_ROPEPILE
+1@swat,151,54,6	duplicate(dummy_npc)	#wl61	4_ROPEPILE
+1@swat,151,55,6	duplicate(dummy_npc)	#wl62	4_ROPEPILE
+1@swat,151,56,6	duplicate(dummy_npc)	#wl63	4_ROPEPILE
+1@swat,151,57,6	duplicate(dummy_npc)	#wl64	4_ROPEPILE
+1@swat,151,58,6	duplicate(dummy_npc)	#wl65	4_ROPEPILE
+1@swat,151,59,6	duplicate(dummy_npc)	#wl66	4_ROPEPILE
+
+// Hunter Instance 1 - Step 3 Piles
+1@swat,250,30,6	duplicate(dummy_npc)	#wl67	4_ROPEPILE
+1@swat,250,31,6	duplicate(dummy_npc)	#wl68	4_ROPEPILE
+1@swat,250,32,6	duplicate(dummy_npc)	#wl69	4_ROPEPILE
+1@swat,250,33,6	duplicate(dummy_npc)	#wl70	4_ROPEPILE
+1@swat,250,34,6	duplicate(dummy_npc)	#wl71	4_ROPEPILE
+1@swat,250,35,6	duplicate(dummy_npc)	#wl72	4_ROPEPILE
+1@swat,250,36,6	duplicate(dummy_npc)	#wl73	4_ROPEPILE
+1@swat,250,37,6	duplicate(dummy_npc)	#wl74	4_ROPEPILE
+1@swat,250,38,6	duplicate(dummy_npc)	#wl75	4_ROPEPILE
+1@swat,250,39,6	duplicate(dummy_npc)	#wl76	4_ROPEPILE
+1@swat,250,40,6	duplicate(dummy_npc)	#wl77	4_ROPEPILE
+1@swat,250,41,6	duplicate(dummy_npc)	#wl78	4_ROPEPILE
+1@swat,250,42,6	duplicate(dummy_npc)	#wl79	4_ROPEPILE
+1@swat,250,43,6	duplicate(dummy_npc)	#wl80	4_ROPEPILE
+1@swat,250,44,6	duplicate(dummy_npc)	#wl81	4_ROPEPILE
+
+// Hunter Instance 2 - Step 1 Piles
+1@swat,23,222,6	duplicate(dummy_npc)	#wl82	4_ROPEPILE
+1@swat,24,222,6	duplicate(dummy_npc)	#wl83	4_ROPEPILE
+1@swat,25,222,6	duplicate(dummy_npc)	#wl84	4_ROPEPILE
+1@swat,26,222,6	duplicate(dummy_npc)	#wl85	4_ROPEPILE
+1@swat,27,222,6	duplicate(dummy_npc)	#wl86	4_ROPEPILE
+1@swat,28,222,6	duplicate(dummy_npc)	#wl87	4_ROPEPILE
+1@swat,29,222,6	duplicate(dummy_npc)	#wl88	4_ROPEPILE
+1@swat,30,222,6	duplicate(dummy_npc)	#wl89	4_ROPEPILE
+1@swat,31,222,6	duplicate(dummy_npc)	#wl90	4_ROPEPILE
+1@swat,32,222,6	duplicate(dummy_npc)	#wl91	4_ROPEPILE
+1@swat,33,222,6	duplicate(dummy_npc)	#wl92	4_ROPEPILE
+1@swat,34,222,6	duplicate(dummy_npc)	#wl93	4_ROPEPILE
+1@swat,35,222,6	duplicate(dummy_npc)	#wl94	4_ROPEPILE
+1@swat,36,222,6	duplicate(dummy_npc)	#wl95	4_ROPEPILE
+1@swat,37,222,6	duplicate(dummy_npc)	#wl96	4_ROPEPILE
+1@swat,38,222,6	duplicate(dummy_npc)	#wl97	4_ROPEPILE
+1@swat,39,222,6	duplicate(dummy_npc)	#wl98	4_ROPEPILE
+
+// Hunter Instance 2 - Step 2 Piles
+1@swat,22,272,6	duplicate(dummy_npc)	#wl99	4_ROPEPILE
+1@swat,23,272,6	duplicate(dummy_npc)	#wl100	4_ROPEPILE
+1@swat,24,272,6	duplicate(dummy_npc)	#wl101	4_ROPEPILE
+1@swat,25,272,6	duplicate(dummy_npc)	#wl102	4_ROPEPILE
+1@swat,26,272,6	duplicate(dummy_npc)	#wl103	4_ROPEPILE
+1@swat,27,272,6	duplicate(dummy_npc)	#wl104	4_ROPEPILE
+1@swat,28,272,6	duplicate(dummy_npc)	#wl105	4_ROPEPILE
+1@swat,29,272,6	duplicate(dummy_npc)	#wl106	4_ROPEPILE
+1@swat,30,272,6	duplicate(dummy_npc)	#wl107	4_ROPEPILE
+1@swat,31,272,6	duplicate(dummy_npc)	#wl108	4_ROPEPILE
+1@swat,32,272,6	duplicate(dummy_npc)	#wl109	4_ROPEPILE
+1@swat,33,272,6	duplicate(dummy_npc)	#wl110	4_ROPEPILE
+1@swat,34,272,6	duplicate(dummy_npc)	#wl111	4_ROPEPILE
+1@swat,35,272,6	duplicate(dummy_npc)	#wl112	4_ROPEPILE
+1@swat,36,272,6	duplicate(dummy_npc)	#wl113	4_ROPEPILE
+1@swat,37,272,6	duplicate(dummy_npc)	#wl114	4_ROPEPILE
+1@swat,38,272,6	duplicate(dummy_npc)	#wl115	4_ROPEPILE
+1@swat,39,272,6	duplicate(dummy_npc)	#wl116	4_ROPEPILE
+1@swat,40,272,6	duplicate(dummy_npc)	#wl117	4_ROPEPILE
+1@swat,41,272,6	duplicate(dummy_npc)	#wl118	4_ROPEPILE
+1@swat,42,272,6	duplicate(dummy_npc)	#wl119	4_ROPEPILE
+1@swat,43,272,6	duplicate(dummy_npc)	#wl120	4_ROPEPILE
+1@swat,44,272,6	duplicate(dummy_npc)	#wl121	4_ROPEPILE
+1@swat,45,272,6	duplicate(dummy_npc)	#wl122	4_ROPEPILE
+1@swat,46,272,6	duplicate(dummy_npc)	#wl123	4_ROPEPILE
+1@swat,47,272,6	duplicate(dummy_npc)	#wl124	4_ROPEPILE
+1@swat,48,272,6	duplicate(dummy_npc)	#wl125	4_ROPEPILE
+1@swat,49,272,6	duplicate(dummy_npc)	#wl126	4_ROPEPILE
+1@swat,50,272,6	duplicate(dummy_npc)	#wl127	4_ROPEPILE
+1@swat,51,272,6	duplicate(dummy_npc)	#wl128	4_ROPEPILE
+1@swat,52,272,6	duplicate(dummy_npc)	#wl129	4_ROPEPILE
+
+
+// Hunter Instance 1 - Step 1 Robots
+1@swat,113,66,4	script	#tr115	4_SCR_MT_ROBOTS,4,4,{
+	end;
+OnTouch:
+	specialeffect2 EF_DESPERADO;
+	percentheal -40,0;
+	end;
+}
+1@swat,113,60,4	duplicate(#tr115)	#tr116	4_SCR_MT_ROBOTS,4,4
+1@swat,113,54,4	duplicate(#tr115)	#tr117	4_SCR_MT_ROBOTS,4,4
+1@swat,113,48,4	duplicate(#tr115)	#tr118	4_SCR_MT_ROBOTS,4,4
+1@swat,113,42,4	duplicate(#tr115)	#tr119	4_SCR_MT_ROBOTS,4,4
+1@swat,113,36,4	duplicate(#tr115)	#tr120	4_SCR_MT_ROBOTS,4,4
+1@swat,113,30,4	duplicate(#tr115)	#tr121	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 1 - Step 2 Robots
+1@swat,149,66,4	duplicate(#tr115)	#tr122	4_SCR_MT_ROBOTS,4,4
+1@swat,149,60,4	duplicate(#tr115)	#tr123	4_SCR_MT_ROBOTS,4,4
+1@swat,149,54,4	duplicate(#tr115)	#tr124	4_SCR_MT_ROBOTS,4,4
+1@swat,149,48,4	duplicate(#tr115)	#tr125	4_SCR_MT_ROBOTS,4,4
+1@swat,149,42,4	duplicate(#tr115)	#tr126	4_SCR_MT_ROBOTS,4,4
+1@swat,149,36,4	duplicate(#tr115)	#tr127	4_SCR_MT_ROBOTS,4,4
+1@swat,149,30,4	duplicate(#tr115)	#tr128	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 1 - Step 3 Robots
+1@swat,247,43,4	duplicate(#tr115)	#tr129	4_SCR_MT_ROBOTS,4,4
+1@swat,247,37,4	duplicate(#tr115)	#tr130	4_SCR_MT_ROBOTS,4,4
+1@swat,247,31,4	duplicate(#tr115)	#tr131	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 2 - Step 1 Robots
+1@swat,25,220,4	duplicate(#tr115)	#tr132	4_SCR_MT_ROBOTS,4,4
+1@swat,31,220,4	duplicate(#tr115)	#tr133	4_SCR_MT_ROBOTS,4,4
+1@swat,37,220,4	duplicate(#tr115)	#tr134	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 2 - Step 2 Robots
+1@swat,25,270,4	duplicate(#tr115)	#tr135	4_SCR_MT_ROBOTS,4,4
+1@swat,30,270,4	duplicate(#tr115)	#tr136	4_SCR_MT_ROBOTS,4,4
+1@swat,35,270,4	duplicate(#tr115)	#tr137	4_SCR_MT_ROBOTS,4,4
+1@swat,40,270,4	duplicate(#tr115)	#tr138	4_SCR_MT_ROBOTS,4,4
+1@swat,45,270,4	duplicate(#tr115)	#tr139	4_SCR_MT_ROBOTS,4,4
+1@swat,50,270,4	duplicate(#tr115)	#tr140	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 2 - Step 3 Robots (maze)
+1@swat,26,330,4	duplicate(#tr115)	#tr1	4_SCR_MT_ROBOTS,4,4
+1@swat,26,324,4	duplicate(#tr115)	#tr2	4_SCR_MT_ROBOTS,4,4
+1@swat,26,318,4	duplicate(#tr115)	#tr3	4_SCR_MT_ROBOTS,4,4
+1@swat,26,312,4	duplicate(#tr115)	#tr4	4_SCR_MT_ROBOTS,4,4
+1@swat,26,306,4	duplicate(#tr115)	#tr5	4_SCR_MT_ROBOTS,4,4
+1@swat,26,300,4	duplicate(#tr115)	#tr6	4_SCR_MT_ROBOTS,4,4
+1@swat,32,330,4	duplicate(#tr115)	#tr7	4_SCR_MT_ROBOTS,4,4
+1@swat,32,324,4	duplicate(#tr115)	#tr8	4_SCR_MT_ROBOTS,4,4
+1@swat,32,318,4	duplicate(#tr115)	#tr9	4_SCR_MT_ROBOTS,4,4
+1@swat,32,312,4	duplicate(#tr115)	#tr10	4_SCR_MT_ROBOTS,4,4
+1@swat,32,306,4	duplicate(#tr115)	#tr11	4_SCR_MT_ROBOTS,4,4
+1@swat,32,300,4	duplicate(#tr115)	#tr12	4_SCR_MT_ROBOTS,4,4
+1@swat,38,330,4	duplicate(#tr115)	#tr13	4_SCR_MT_ROBOTS,4,4
+1@swat,38,324,4	duplicate(#tr115)	#tr14	4_SCR_MT_ROBOTS,4,4
+1@swat,38,318,4	duplicate(#tr115)	#tr15	4_SCR_MT_ROBOTS,4,4
+1@swat,38,312,4	duplicate(#tr115)	#tr16	4_SCR_MT_ROBOTS,4,4
+1@swat,38,306,4	duplicate(#tr115)	#tr17	4_SCR_MT_ROBOTS,4,4
+1@swat,38,300,4	duplicate(#tr115)	#tr18	4_SCR_MT_ROBOTS,4,4
+1@swat,44,330,4	duplicate(#tr115)	#tr19	4_SCR_MT_ROBOTS,4,4
+1@swat,44,324,4	duplicate(#tr115)	#tr20	4_SCR_MT_ROBOTS,4,4
+1@swat,44,318,4	duplicate(#tr115)	#tr21	4_SCR_MT_ROBOTS,4,4
+1@swat,44,312,4	duplicate(#tr115)	#tr22	4_SCR_MT_ROBOTS,4,4
+1@swat,44,306,4	duplicate(#tr115)	#tr23	4_SCR_MT_ROBOTS,4,4
+1@swat,44,300,4	duplicate(#tr115)	#tr24	4_SCR_MT_ROBOTS,4,4
+1@swat,50,330,4	duplicate(#tr115)	#tr25	4_SCR_MT_ROBOTS,4,4
+1@swat,50,324,4	duplicate(#tr115)	#tr26	4_SCR_MT_ROBOTS,4,4
+1@swat,50,318,4	duplicate(#tr115)	#tr27	4_SCR_MT_ROBOTS,4,4
+1@swat,50,312,4	duplicate(#tr115)	#tr28	4_SCR_MT_ROBOTS,4,4
+1@swat,50,306,4	duplicate(#tr115)	#tr29	4_SCR_MT_ROBOTS,4,4
+1@swat,50,300,4	duplicate(#tr115)	#tr30	4_SCR_MT_ROBOTS,4,4
+1@swat,56,330,4	duplicate(#tr115)	#tr31	4_SCR_MT_ROBOTS,4,4
+1@swat,56,324,4	duplicate(#tr115)	#tr32	4_SCR_MT_ROBOTS,4,4
+1@swat,56,318,4	duplicate(#tr115)	#tr33	4_SCR_MT_ROBOTS,4,4
+1@swat,56,312,4	duplicate(#tr115)	#tr34	4_SCR_MT_ROBOTS,4,4
+1@swat,56,306,4	duplicate(#tr115)	#tr35	4_SCR_MT_ROBOTS,4,4
+1@swat,56,300,4	duplicate(#tr115)	#tr36	4_SCR_MT_ROBOTS,4,4
+1@swat,62,330,4	duplicate(#tr115)	#tr37	4_SCR_MT_ROBOTS,4,4
+1@swat,62,324,4	duplicate(#tr115)	#tr38	4_SCR_MT_ROBOTS,4,4
+1@swat,62,318,4	duplicate(#tr115)	#tr39	4_SCR_MT_ROBOTS,4,4
+1@swat,62,312,4	duplicate(#tr115)	#tr40	4_SCR_MT_ROBOTS,4,4
+1@swat,62,306,4	duplicate(#tr115)	#tr41	4_SCR_MT_ROBOTS,4,4
+1@swat,62,300,4	duplicate(#tr115)	#tr42	4_SCR_MT_ROBOTS,4,4
+1@swat,68,330,4	duplicate(#tr115)	#tr43	4_SCR_MT_ROBOTS,4,4
+1@swat,68,324,4	duplicate(#tr115)	#tr44	4_SCR_MT_ROBOTS,4,4
+1@swat,68,318,4	duplicate(#tr115)	#tr45	4_SCR_MT_ROBOTS,4,4
+1@swat,68,312,4	duplicate(#tr115)	#tr46	4_SCR_MT_ROBOTS,4,4
+1@swat,68,306,4	duplicate(#tr115)	#tr47	4_SCR_MT_ROBOTS,4,4
+1@swat,68,300,4	duplicate(#tr115)	#tr48	4_SCR_MT_ROBOTS,4,4
+1@swat,74,330,4	duplicate(#tr115)	#tr49	4_SCR_MT_ROBOTS,4,4
+1@swat,74,324,4	duplicate(#tr115)	#tr50	4_SCR_MT_ROBOTS,4,4
+1@swat,74,318,4	duplicate(#tr115)	#tr51	4_SCR_MT_ROBOTS,4,4
+1@swat,74,312,4	duplicate(#tr115)	#tr52	4_SCR_MT_ROBOTS,4,4
+1@swat,74,306,4	duplicate(#tr115)	#tr53	4_SCR_MT_ROBOTS,4,4
+1@swat,74,300,4	duplicate(#tr115)	#tr54	4_SCR_MT_ROBOTS,4,4
+1@swat,80,330,4	duplicate(#tr115)	#tr55	4_SCR_MT_ROBOTS,4,4
+1@swat,80,324,4	duplicate(#tr115)	#tr56	4_SCR_MT_ROBOTS,4,4
+1@swat,80,318,4	duplicate(#tr115)	#tr57	4_SCR_MT_ROBOTS,4,4
+1@swat,80,312,4	duplicate(#tr115)	#tr58	4_SCR_MT_ROBOTS,4,4
+1@swat,80,306,4	duplicate(#tr115)	#tr59	4_SCR_MT_ROBOTS,4,4
+1@swat,80,300,4	duplicate(#tr115)	#tr60	4_SCR_MT_ROBOTS,4,4
+1@swat,86,330,4	duplicate(#tr115)	#tr61	4_SCR_MT_ROBOTS,4,4
+1@swat,86,324,4	duplicate(#tr115)	#tr62	4_SCR_MT_ROBOTS,4,4
+1@swat,86,318,4	duplicate(#tr115)	#tr63	4_SCR_MT_ROBOTS,4,4
+1@swat,86,312,4	duplicate(#tr115)	#tr64	4_SCR_MT_ROBOTS,4,4
+1@swat,86,306,4	duplicate(#tr115)	#tr65	4_SCR_MT_ROBOTS,4,4
+1@swat,86,300,4	duplicate(#tr115)	#tr66	4_SCR_MT_ROBOTS,4,4
+1@swat,92,330,4	duplicate(#tr115)	#tr67	4_SCR_MT_ROBOTS,4,4
+1@swat,92,324,4	duplicate(#tr115)	#tr68	4_SCR_MT_ROBOTS,4,4
+1@swat,92,318,4	duplicate(#tr115)	#tr69	4_SCR_MT_ROBOTS,4,4
+1@swat,92,312,4	duplicate(#tr115)	#tr70	4_SCR_MT_ROBOTS,4,4
+1@swat,92,306,4	duplicate(#tr115)	#tr71	4_SCR_MT_ROBOTS,4,4
+1@swat,92,300,4	duplicate(#tr115)	#tr72	4_SCR_MT_ROBOTS,4,4
+1@swat,98,330,4	duplicate(#tr115)	#tr73	4_SCR_MT_ROBOTS,4,4
+1@swat,98,324,4	duplicate(#tr115)	#tr74	4_SCR_MT_ROBOTS,4,4
+1@swat,98,318,4	duplicate(#tr115)	#tr75	4_SCR_MT_ROBOTS,4,4
+1@swat,98,312,4	duplicate(#tr115)	#tr76	4_SCR_MT_ROBOTS,4,4
+1@swat,98,306,4	duplicate(#tr115)	#tr77	4_SCR_MT_ROBOTS,4,4
+1@swat,98,300,4	duplicate(#tr115)	#tr78	4_SCR_MT_ROBOTS,4,4
+1@swat,104,330,4	duplicate(#tr115)	#tr79	4_SCR_MT_ROBOTS,4,4
+1@swat,104,324,4	duplicate(#tr115)	#tr80	4_SCR_MT_ROBOTS,4,4
+1@swat,104,318,4	duplicate(#tr115)	#tr81	4_SCR_MT_ROBOTS,4,4
+1@swat,104,312,4	duplicate(#tr115)	#tr82	4_SCR_MT_ROBOTS,4,4
+1@swat,104,306,4	duplicate(#tr115)	#tr83	4_SCR_MT_ROBOTS,4,4
+1@swat,104,300,4	duplicate(#tr115)	#tr84	4_SCR_MT_ROBOTS,4,4
+1@swat,110,330,4	duplicate(#tr115)	#tr85	4_SCR_MT_ROBOTS,4,4
+1@swat,110,324,4	duplicate(#tr115)	#tr86	4_SCR_MT_ROBOTS,4,4
+1@swat,110,318,4	duplicate(#tr115)	#tr87	4_SCR_MT_ROBOTS,4,4
+1@swat,110,312,4	duplicate(#tr115)	#tr88	4_SCR_MT_ROBOTS,4,4
+1@swat,110,306,4	duplicate(#tr115)	#tr89	4_SCR_MT_ROBOTS,4,4
+1@swat,110,300,4	duplicate(#tr115)	#tr90	4_SCR_MT_ROBOTS,4,4
+1@swat,116,330,4	duplicate(#tr115)	#tr91	4_SCR_MT_ROBOTS,4,4
+1@swat,116,324,4	duplicate(#tr115)	#tr92	4_SCR_MT_ROBOTS,4,4
+1@swat,116,318,4	duplicate(#tr115)	#tr93	4_SCR_MT_ROBOTS,4,4
+1@swat,116,312,4	duplicate(#tr115)	#tr94	4_SCR_MT_ROBOTS,4,4
+1@swat,116,306,4	duplicate(#tr115)	#tr95	4_SCR_MT_ROBOTS,4,4
+1@swat,116,300,4	duplicate(#tr115)	#tr96	4_SCR_MT_ROBOTS,4,4
+1@swat,122,330,4	duplicate(#tr115)	#tr97	4_SCR_MT_ROBOTS,4,4
+1@swat,122,324,4	duplicate(#tr115)	#tr98	4_SCR_MT_ROBOTS,4,4
+1@swat,122,318,4	duplicate(#tr115)	#tr99	4_SCR_MT_ROBOTS,4,4
+1@swat,122,312,4	duplicate(#tr115)	#tr100	4_SCR_MT_ROBOTS,4,4
+1@swat,122,306,4	duplicate(#tr115)	#tr101	4_SCR_MT_ROBOTS,4,4
+1@swat,122,300,4	duplicate(#tr115)	#tr102	4_SCR_MT_ROBOTS,4,4
+1@swat,92,294,4	duplicate(#tr115)	#tr103	4_SCR_MT_ROBOTS,4,4
+1@swat,98,294,4	duplicate(#tr115)	#tr104	4_SCR_MT_ROBOTS,4,4
+1@swat,104,294,4	duplicate(#tr115)	#tr105	4_SCR_MT_ROBOTS,4,4
+1@swat,110,294,4	duplicate(#tr115)	#tr106	4_SCR_MT_ROBOTS,4,4
+1@swat,117,294,4	duplicate(#tr115)	#tr107	4_SCR_MT_ROBOTS,4,4
+1@swat,123,294,4	duplicate(#tr115)	#tr108	4_SCR_MT_ROBOTS,4,4
+1@swat,92,288,4	duplicate(#tr115)	#tr109	4_SCR_MT_ROBOTS,4,4
+1@swat,98,288,4	duplicate(#tr115)	#tr110	4_SCR_MT_ROBOTS,4,4
+1@swat,104,288,4	duplicate(#tr115)	#tr111	4_SCR_MT_ROBOTS,4,4
+1@swat,110,288,4	duplicate(#tr115)	#tr112	4_SCR_MT_ROBOTS,4,4
+1@swat,116,288,4	duplicate(#tr115)	#tr113	4_SCR_MT_ROBOTS,4,4
+1@swat,122,288,4	duplicate(#tr115)	#tr114	4_SCR_MT_ROBOTS,4,4
+
+// Hunter Instance 2 - Step Final Robots
+1@swat,122,274,4	duplicate(#tr115)	#tr141	4_SCR_MT_ROBOTS,4,4
+1@swat,114,258,4	duplicate(#tr115)	#tr142	4_SCR_MT_ROBOTS,4,4
+1@swat,125,258,4	duplicate(#tr115)	#tr143	4_SCR_MT_ROBOTS,4,4
+1@swat,138,258,4	duplicate(#tr115)	#tr144	4_SCR_MT_ROBOTS,4,4
+1@swat,143,266,4	duplicate(#tr115)	#tr145	4_SCR_MT_ROBOTS,4,4
+1@swat,146,249,4	duplicate(#tr115)	#tr146	4_SCR_MT_ROBOTS,4,4
+1@swat,154,247,4	duplicate(#tr115)	#tr147	4_SCR_MT_ROBOTS,4,4
+1@swat,166,251,4	duplicate(#tr115)	#tr148	4_SCR_MT_ROBOTS,4,4
+1@swat,174,256,4	duplicate(#tr115)	#tr149	4_SCR_MT_ROBOTS,4,4
+1@swat,173,266,4	duplicate(#tr115)	#tr150	4_SCR_MT_ROBOTS,4,4
+1@swat,183,266,4	duplicate(#tr115)	#tr151	4_SCR_MT_ROBOTS,4,4
+1@swat,182,248,4	duplicate(#tr115)	#tr152	4_SCR_MT_ROBOTS,4,4
+
+
+// First entrance (instance 1)
+// Entrance
+1@swat,40,65,6	script	Julian#0_1	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "We don't have time to joke";
+	close;
+
+OnStart:
+	initnpctimer;
+	end;
+OnTimer2000:
+	npctalk "Julian: According to the estimation, there must be a greeting here. But there is nothing.";
+	end;
+OnTimer4000:
+	npctalk "Julian: From here, we split. Each of us will find the weak spots and annihilate the enemies.";
+	end;
+OnTimer10000:
+	npctalk "Julian: These might be sharpshooters around, so do not gather. Accomplish the operation individually.";
+	end;
+OnTimer14000:
+	npctalk "Julian: Now, move out!";
+	disablenpc instance_npcname("#ext1");
+	disablenpc instance_npcname("#ext2");
+	disablenpc instance_npcname("#ext3");
+	end;
+OnTimer14300:
+	disablenpc instance_npcname("#ext4");
+	disablenpc instance_npcname("#ext5");
+	end;
+OnTimer14600:
+	disablenpc instance_npcname("#ext6");
+	end;
+OnTimer14900:
+	disablenpc instance_npcname("#ext7");
+	end;
+OnTimer15200:
+	disablenpc instance_npcname("#ext8");
+	end;
+OnTimer15500:
+	disablenpc instance_npcname("#ext9");
+	end;
+OnTimer15800:
+	disablenpc instance_npcname("#ext10");
+	end;
+OnTimer16100:
+	disablenpc instance_npcname("#ext11");
+	disablenpc instance_npcname("#ext12");
+	end;
+OnTimer16400:
+	disablenpc instance_npcname("#ext13");
+	end;
+OnTimer16700:
+	disablenpc instance_npcname("#ext14");
+	end;
+OnTimer17000:
+	disablenpc instance_npcname("#ext15");
+	end;
+OnTimer17300:
+	stopnpctimer;
+	disablenpc instance_npcname("Julian#0_1");
+	enablenpc instance_npcname("Julian#1");
+	enablenpc instance_npcname("#start_npc2");
+	donpcevent instance_npcname("#hunter_instance_1_mob_1") + "::OnWave1";
+	end;
+}
+
+1@swat,40,65,0	script	#start_npc	HIDDEN_WARP_NPC,2,2,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start_npc");
+	donpcevent instance_npcname("Julian#0_1") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,0	script	#hunter_instance_1_mob_1	HIDDEN_WARP_NPC,{
+	end;
+OnWave1:
+	enablenpc instance_npcname("#hunter_instance_1_mob_1");
+	areamonster 'map_swat$, 55,49,89,77, "Heart Hunter Guard",3627,24, instance_npcname("#hunter_instance_1_mob_1") + "::OnMobDead";		// EP16_2_H_HUNTER_MD
+	end;
+OnWave2:
+	.@label$ = instance_npcname("#hunter_instance_1_mob_1") + "::OnMobDead";
+	for ( .@x = 93; .@x >= 81; .@x -= 4 ) {
+		for ( .@y = 54; .@y >= 39; .@y -= 3 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	end;
+OnMobDead:
+	end;
+}
+
+// Step 1
+1@swat,105,50,0	script	#start_npc2	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start_npc2");
+	donpcevent instance_npcname("Julian#1") + "::OnStart";
+	end;
+}
+
+1@swat,105,50,6	script	Julian#1	4_M_REBELLION2,{
+	// note: officially they only check the item
+	if (countitem(25154) < 1 || 'event != 1) {
+		mes "[Julian]";
+		mes "We can just sneak in like this. But we'd better secure a path for the cleanup party. How can we do that?";
+		next;
+		select("");
+		close;
+	}
+	mes "[Julian]";
+	mes "Why are they all coming out all of a sudden. Just hand me the gunpowder";
+	next;
+	select("Give him the gunpowder");
+	if ('event == 1) {
+		'event = 2;
+		delitem 25154, countitem(25154);// Antique_Powder
+		donpcevent instance_npcname("Julian#1_1") + "::OnStart";
+	}
+	end;
+
+OnStart:
+	initnpctimer;
+	npctalk "Julian: Wait!";
+	end;
+OnTimer3000:
+	npctalk "Julian: There is a security system being operated in front of this. If you take one step ahead, you will be riddled with bullets.";
+	end;
+OnTimer7000:
+	stopnpctimer;
+	npctalk "Julian: We are in trouble from the beginning.";
+	enablenpc instance_npcname("Pile of gunpowder#1");
+	end;
+}
+
+1@swat,105,50,6	script	Julian#1_1	4_M_REBELLION2,{
+	end;
+OnStart:
+	disablenpc instance_npcname("Julian#1");
+	enablenpc instance_npcname("Julian#1_1");
+	initnpctimer;
+	npctalk "Julian: Well, it's a nice gunpowder.";
+	end;
+OnTimer3000:
+	npctalk "Julian: This is good enough to get rid of the security system and the Heart Hunter guys who rushed a moment ago.";
+	end;
+OnTimer9000:
+	npctalk "Julian: Now, let me blow them away!";
+	end;
+OnTimer12000:
+	killmonster 'map_swat$, instance_npcname("#hunter_instance_1_mob_1") + "::OnMobDead";
+	disablenpc instance_npcname("#tr117");
+	disablenpc instance_npcname("#tr118");
+	disablenpc instance_npcname("#tr119");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl17");
+	cloakonnpc instance_npcname("#wl17");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl18");
+	cloakonnpc instance_npcname("#wl18");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl19");
+	cloakonnpc instance_npcname("#wl19");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl20");
+	cloakonnpc instance_npcname("#wl20");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl21");
+	cloakonnpc instance_npcname("#wl21");
+	setcell 'map_swat$,116,30,116,66,cell_walkable,1;
+	end;
+OnTimer17000:
+	stopnpctimer;
+	mapannounce 'map_swat$, "Julian: Let me go first. I have to deal with the obstacles in front.", bc_map,0xFFFF77;
+	disablenpc instance_npcname("Julian#1_1");
+	enablenpc instance_npcname("Julian#1_2");
+	enablenpc instance_npcname("#start_npc3");
+	end;
+}
+
+1@swat,58,90,0	script	Pile of gunpowder#1	4_ENERGY_YELLOW,{
+	if ('event != 0)
+		end;
+	'event = 1;
+	specialeffect EF_COIN;
+	disablenpc instance_npcname("Pile of gunpowder#1");
+	for ( .@i = 0; .@i < 5; .@i++ )
+		makeitem 25154,1,'map_swat$, rand(56,60), rand(84,86);// Antique_Powder
+	initnpctimer;
+	end;
+OnTimer3000:
+	mapannounce 'map_swat$, "Intruders detected in the restricted area. Heart Hunters, heighten the security!", bc_map,0xFF5555;
+	end;
+OnTimer9000:
+	stopnpctimer;
+	mapannounce 'map_swat$, "I repeat. Intruders detected in the restricted area. Heart Hunters, heighten the security!", bc_map,0xFF5555;
+	donpcevent instance_npcname("#hunter_instance_1_mob_1") + "::OnWave2";
+	end;
+}
+
+// Step 2
+1@swat,140,50,0	script	#start_npc3	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start_npc3");
+	if ('event == 2)
+		donpcevent instance_npcname("#start_npc3") + "::OnStart";
+	else if ('event == 3)
+		donpcevent instance_npcname("Julian#1_2") + "::OnStart";
+	end;
+
+OnStart:
+	initnpctimer;
+	npctalk "Julian: Don't worry about this place. I can handle it with the remaining gunpowder.", instance_npcname("Julian#1_2");
+	end;
+OnTimer5000:
+	npctalk "Julian: You go up and check if there is any remaining force or threat.", instance_npcname("Julian#1_2");
+	end;
+OnTimer10000:
+	stopnpctimer;
+	npctalk "Julian: Don't take your time and move out", instance_npcname("Julian#1_2");
+	enablenpc instance_npcname("Suspicious instrument#1");
+	end;
+}
+
+// 1@swat,140,50,0	duplicate(dummy_npc)	#start_npc3_1	HIDDEN_WARP_NPC,4,4
+
+1@swat,140,50,6	script	Julian#1_2	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "It takes some time in assembling the explosive. You go up and check if there is any threat.";
+	next;
+	mes "[Julian]";
+	mes "If you find an enemy, don't forget to kill it without reporting me.";
+	close;
+
+OnStart:
+	initnpctimer;
+	npctalk "Julian: Great. We have finished making the explosive.";
+	end;
+OnTimer4000:
+	npctalk "Julian: over your ears to protect your eardrum! I am exploding it now!";
+	end;
+OnTimer7000:
+	disablenpc instance_npcname("#tr124");
+	disablenpc instance_npcname("#tr125");
+	disablenpc instance_npcname("#tr126");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl51");
+	cloakonnpc instance_npcname("#wl51");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl52");
+	cloakonnpc instance_npcname("#wl52");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl53");
+	cloakonnpc instance_npcname("#wl53");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl54");
+	cloakonnpc instance_npcname("#wl54");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl55");
+	cloakonnpc instance_npcname("#wl55");
+	setcell 'map_swat$,151,30,151,60,cell_walkable,1;
+	end;
+OnTimer15000:
+	stopnpctimer;
+	mapannounce 'map_swat$, "Julian: Excellent. Let's go forward.", bc_map,0xFF99;
+	disablenpc instance_npcname("Julian#1_2");
+	enablenpc instance_npcname("Julian#2_ep16_2");
+	enablenpc instance_npcname("#start_npc4");
+	end;
+}
+
+1@swat,150,119,0	script	Suspicious instrument#1	4_ENERGY_YELLOW,{
+	if ('event != 2)
+		end;
+	mes "There is a warning written in red color.";
+	mes "-----------------------";
+	mes "[^ff0000Do not push^000000]";
+	next;
+	if (select( "Stop it.", "Push the button" ) == 1) {
+		mes "I never push a suspicious button.";
+		close;
+	}
+	if ('event == 2) {
+		'event = 3;
+		disablenpc instance_npcname("Suspicious instrument#1");
+		mapannounce 'map_swat$, "Intruders detected in Section 2. Heart Hunters, heighten the security!", bc_map,0xFF5555;
+		initnpctimer;
+	}
+	end;
+OnTimer1000:
+	donpcevent instance_npcname("#hunter_instance_1_mob_2") + "::OnStart";
+	end;
+OnTimer5000:
+	mapannounce 'map_swat$, "I repeat. Intruders detected in the restricted area. Heart Hunters, heighten the security!", bc_map,0xFF5555;
+	stopnpctimer;
+	end;
+}
+
+// 1@swat,165,35,0	duplicate(dummy_npc)	#wp_con_b1_1	CLEAR_NPC
+
+1@swat,1,1,0	script	#hunter_instance_1_mob_2	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#hunter_instance_1_mob_2");
+	.@label$ = instance_npcname("#hunter_instance_1_mob_2") + "::OnMobDead";
+	for ( .@y = 120; .@y >= 99; .@y -= 7 ) {
+		for ( .@x = 140; .@x >= 122; .@x -= 6 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	end;
+
+OnMobDead:
+	.@label$ = instance_npcname("#hunter_instance_1_mob_2") + "::OnMobDead";
+	if (rand(100) < 5)
+		areamonster 'map_swat$, 122,99,140,120, "Upgraded Heart Hunter",3626,1, .@label$;		// EP16_2_H_HUNTER_V
+	.@count = mobcount( 'map_swat$, .@label$ );
+	mapannounce 'map_swat$, "Remaining " + .@count + " Heart Hunter", bc_map,0xFFFFFF;
+	if (.@count < 1)
+		initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	disablenpc instance_npcname("#hunter_instance_1_mob_2");
+	enablenpc instance_npcname("#start_npc3");
+	end;
+}
+
+
+// Step 3
+1@swat,238,39,0	script	#start_npc4	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start_npc4");
+	initnpctimer;
+	npctalk "Julian: This might be the last security system. But we ran out of gunpowder.", instance_npcname("Julian#2_ep16_2");
+	end;
+OnTimer4000:
+	npctalk "Julian: We must secure a path for the cleanup party. Find gunpowder nearby.", instance_npcname("Julian#2_ep16_2");
+	end;
+OnTimer7000:
+	mapannounce 'map_swat$, "Intruders detected deep in the Section 3. Heart Hunters, protect the base at all cost!", bc_map,0xFF5555;
+	end;
+OnTimer10000:
+	npctalk "Julian: Well, looks like they started the battle against our members who had scattered. We might be in danger soon.", instance_npcname("Julian#2_ep16_2");
+	end;
+OnTimer14000:
+	stopnpctimer;
+	npctalk "Julian: The battle can start while you are finding gunpowder. Prepare for it.", instance_npcname("Julian#2_ep16_2");
+	enablenpc instance_npcname("Pile of gunpowder#2");
+	donpcevent instance_npcname("#hunter_instance_1_mob_3") + "::OnStart";
+	end;
+}
+
+1@swat,163,58,0	script	Pile of gunpowder#2	4_ENERGY_YELLOW,{
+	if ('event != 3)
+		end;
+	'event = 4;
+	specialeffect EF_COIN;
+	disablenpc instance_npcname("Pile of gunpowder#2");
+	initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	for ( .@i = 0; .@i < 5; .@i++ )
+		makeitem 25154,1,'map_swat$, rand(161,165), rand(51,55);// Antique_Powder
+	end;
+}
+
+1@swat,1,1,0	script	#hunter_instance_1_mob_3	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#hunter_instance_1_mob_3");
+	.@label$ = instance_npcname("#hunter_instance_1_mob_3") + "::OnMobDead";
+	for ( .@y = 35; .@y <= 75; .@y += 8 ) {
+		for ( .@x = 188; .@x >= 168; .@x -= 10 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	end;
+
+OnMobDead:
+	if (mobcount( 'map_swat$, instance_npcname("#hunter_instance_1_mob_3") + "::OnMobDead" ) < 1) {
+		'event = 4;
+		disablenpc instance_npcname("#hunter_instance_1_mob_3");
+	}
+	end;
+}
+
+1@swat,238,39,5	script	Julian#2_ep16_2	4_M_REBELLION2,{
+	if (countitem(25154) < 1 || 'event != 4) {
+		mes "[Julian]";
+		mes "Is the gunpowder ready?";
+		close;
+	}
+	mes "[Julian]";
+	mes "Is the gunpowder ready?";
+	next;
+	select("Give him the gunpowder");
+	if ('event == 4) {
+		'event = 5;
+		delitem 25154, countitem(25154);// Antique_Powder
+		donpcevent instance_npcname("Julian#2_ep16_2") + "::OnStart";	// officially player can re-trigger the event
+	}
+	end;
+
+OnStart:
+	npctalk "Julian: Great. We have finished making the explosive.";
+	initnpctimer;
+	end;
+OnTimer6000:
+	npctalk "Julian: over your ears to protect your eardrum! I am exploding it now!";
+	end;
+OnTimer9000:
+	disablenpc instance_npcname("#tr129");
+	disablenpc instance_npcname("#tr130");
+	disablenpc instance_npcname("#tr131");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl72");
+	cloakonnpc instance_npcname("#wl72");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl73");
+	cloakonnpc instance_npcname("#wl73");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl74");
+	cloakonnpc instance_npcname("#wl74");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl75");
+	cloakonnpc instance_npcname("#wl75");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl76");
+	cloakonnpc instance_npcname("#wl76");
+	setcell 'map_swat$,250,30,250,46,cell_walkable,1;
+	end;
+OnTimer14000:
+	mapannounce 'map_swat$, "Julian: Great. Shall we go now!", bc_map,0xFF99;
+	disablenpc instance_npcname("Julian#2_ep16_2");
+	enablenpc instance_npcname("#expl1");
+	enablenpc instance_npcname("#expl2");
+	enablenpc instance_npcname("#expl3");
+	enablenpc instance_npcname("#expl4");
+	enablenpc instance_npcname("#start_boss1");
+	enablenpc instance_npcname("Julian#3");
+	stopnpctimer;
+	end;
+}
+
+// Boss
+1@swat,305,58,0	duplicate(dummy_npc)	#expl1	CLEAR_NPC
+1@swat,305,44,0	duplicate(dummy_npc)	#expl2	CLEAR_NPC
+1@swat,320,58,0	duplicate(dummy_npc)	#expl3	CLEAR_NPC
+1@swat,320,44,0	duplicate(dummy_npc)	#expl4	CLEAR_NPC
+
+1@swat,283,32,0	script	#wp_b1_1	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	getmapxy .@map$,.@x,.@y, BL_NPC;
+	warp 'map_swat$, 290, .@y;
+	end;
+}
+1@swat,283,39,0	duplicate(#wp_b1_1)	#wp_b1_2	HIDDEN_WARP_NPC,4,4
+1@swat,283,46,0	duplicate(#wp_b1_1)	#wp_b1_3	HIDDEN_WARP_NPC,4,4
+1@swat,283,53,0	duplicate(#wp_b1_1)	#wp_b1_4	HIDDEN_WARP_NPC,4,4
+1@swat,283,60,0	duplicate(#wp_b1_1)	#wp_b1_5	HIDDEN_WARP_NPC,4,4
+
+1@swat,310,47,0	script	#start_boss1	HIDDEN_WARP_NPC,4,4,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start_boss1");
+	donpcevent instance_npcname("Julian#3") + "::OnStart";
+	end;
+}
+
+1@swat,310,47,6	script	Julian#3	4_M_REBELLION2,{
+	end;
+OnStart:
+	mapannounce 'map_swat$, "Voice communication: We have occupied the communication room of Heart Hunter. The battle seems to have ended. All unit members defend the occupied strongholds and standby.", bc_map,0x77FFFF;
+	initnpctimer;
+	end;
+OnTimer6000:
+	npctalk "Julian: Since we occupied the communication room, it is practically our victory. We don't seem to have taken much damage.";
+	end;
+OnTimer11000:
+	npctalk "Julian: We still have some time until our main unit arrives. Keep the caution and standby.";
+	end;
+OnTimer16000:
+	mapannounce 'map_swat$, "???: Who's there...?", bc_map,0xFF5555;
+	end;
+OnTimer20000:
+	npctalk "Julian: What? Remaining force?";
+	end;
+OnTimer24000:
+	emotion ET_SURPRISE;
+	npctalk "Julian: Something is coming!! Evade!!";
+	end;
+OnTimer28000:
+	specialeffect EF_LORD, AREA, "Julian#3";
+	cloakonnpc instance_npcname("Julian#3");	// cloakonnpc to display EF_LORD properly
+	enablenpc instance_npcname("Ebel#1_1");
+	npctalk "Ebel: Did I miss...", instance_npcname("Ebel#1_1");
+	end;
+OnTimer32000:
+	npctalk "Ebel: ... Who are you?", instance_npcname("Ebel#1_1");
+	end;
+OnTimer36000:
+	mapannounce 'map_swat$, "Julian: Evade foe now! She is not an ordinary human.", bc_map,0xFF99;
+	end;
+OnTimer40000:
+	npctalk "Ebel: Running away?", instance_npcname("Ebel#1_1");
+	end;
+OnTimer45000:
+	npctalk "Ebel: Sorry, no escape.", instance_npcname("Ebel#1_1");
+	end;
+OnTimer50000:
+	disablenpc instance_npcname("Ebel#1_1");
+	enablenpc instance_npcname("#wp_b1_1");
+	enablenpc instance_npcname("#wp_b1_2");
+	enablenpc instance_npcname("#wp_b1_3");
+	enablenpc instance_npcname("#wp_b1_4");
+	enablenpc instance_npcname("#wp_b1_5");
+	donpcevent instance_npcname("#hunter_instance_ebel") + "::OnStart";
+	end;
+OnTimer53000:
+	mapannounce 'map_swat$, "Julian: Damn, escaping will be tough.", bc_map,0xFF99;
+	end;
+OnTimer56000:
+	mapannounce 'map_swat$, "Julian: Hey! I will back you up from a long range. Hang on until then!", bc_map,0xFF99;
+	end;
+OnTimer64000:
+	mapannounce 'map_swat$, "Julian: Hang on for a minute. I am getting ready to suppress her", bc_map,0xFF99;
+	end;
+OnTimer71000:
+	mapannounce 'map_swat$, "Julian: It's almost done! Stick to it!", bc_map,0xFF99;
+	end;
+OnTimer80000:
+	mapannounce 'map_swat$, "Julian: Great! Stay away from her! Let me give a big shop to her!", bc_map,0xFF99;
+	end;
+OnTimer82000:
+	donpcevent instance_npcname("#hunter_instance_ebel") + "::OnStop";
+	specialeffect EF_LORD, AREA, instance_npcname("#expl1");
+	end;
+OnTimer83000:
+	specialeffect EF_LORD, AREA, instance_npcname("#expl2");
+	end;
+OnTimer84000:
+	specialeffect EF_LORD, AREA, instance_npcname("#expl3");
+	end;
+OnTimer85000:
+	specialeffect EF_LORD, AREA, instance_npcname("#expl4");
+	stopnpctimer;
+	donpcevent instance_npcname("Julian#3_1") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,0	script	#hunter_instance_ebel	HIDDEN_WARP_NPC,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#hunter_instance_ebel");
+	monster 'map_swat$,315,47, "Heart Hunter Ebel",3628,1, instance_npcname("#hunter_instance_ebel") + "::OnMobDead";	// EP16_2_H_HUNTER_EV
+	'boss_id = $@mobid[0];
+	initnpctimer;
+	end;
+OnTimer7000:
+	unittalk 'boss_id, "It doesn't hurt me...";
+	end;
+OnTimer14000:
+	unittalk 'boss_id, "You... slow.";
+	end;
+OnTimer21000:
+	unittalk 'boss_id, "Weak...";
+	end;
+OnTimer30000:
+	unittalk 'boss_id, "Weak...";
+	end;
+OnStop:
+	killmonster 'map_swat$, instance_npcname("#hunter_instance_ebel") + "::OnMobDead";
+	// continue
+OnMobDead:
+	'boss_id = 0;
+	stopnpctimer;
+	disablenpc instance_npcname("#hunter_instance_ebel");
+	end;
+}
+
+1@swat,315,47,3	script	Ebel#1_1	4_F_HUNTER_EVIL,{
+	cutin "ep16_evil101.bmp",2;
+	mes "[Ebel]";
+	mes "You... Enemy? Our troop? Which side are you on?";
+	close3;
+}
+
+1@swat,320,47,4	script	Julian#3_1	4_M_REBELLION2,{
+	end;
+OnStart:
+	enablenpc instance_npcname("Julian#3_1");
+	enablenpc instance_npcname("Ebel#1_3");
+	npctalk "Julian: I'm glad you're all safe.";
+	initnpctimer;
+	end;
+OnTimer3000:
+	npctalk "Ebel: What was that thing you used just now?", instance_npcname("Ebel#1_3");
+	end;
+OnTimer6000:
+	npctalk "Julian: It's a paralyzing shot. When it hits someone, it creates a confusion in the nerve system.";
+	end;
+OnTimer10000:
+	npctalk "Ebel: Why didn't you kill me?", instance_npcname("Ebel#1_3");
+	end;
+OnTimer13000:
+	npctalk "Julian: I didn't want to kill our people at the same time. Besides... You are an unknown force to us";
+	end;
+OnTimer18000:
+	npctalk "Julian: We must capture you alive and find out about you.";
+	end;
+OnTimer22000:
+	enablenpc instance_npcname("#ext1_1");
+	enablenpc instance_npcname("#ext1_2");
+	end;
+OnTimer23000:
+	npctalk "All the remaining force has in outer boundary has been cleaned up.", instance_npcname("#ext1_1");
+	end;
+OnTimer25000:
+	npctalk "Five minutes until the main unit arrives.", instance_npcname("#ext1_2");
+	end;
+OnTimer30000:
+	npctalk "Julian: Good. Put her in a jail. She is a research object so handle her with care.";
+	end;
+OnTimer35000:
+	npctalk "Yes!", instance_npcname("#ext1_1");
+	end;
+OnTimer36000:
+	npctalk "I see.", instance_npcname("#ext1_2");
+	end;
+OnTimer40000:
+	stopnpctimer;
+	disablenpc instance_npcname("Ebel#1_3");
+	disablenpc instance_npcname("#ext1_1");
+	disablenpc instance_npcname("#ext1_2");
+	disablenpc instance_npcname("Julian#3_1");
+	enablenpc instance_npcname("Julian#3_2");
+	end;
+}
+
+1@swat,308,49,6	duplicate(dummy_npc)	#ext1_1	4_F_ESTLOVELOY
+1@swat,308,45,6	duplicate(dummy_npc)	#ext1_2	4_F_ESTLOVELOY
+1@swat,310,47,6	duplicate(dummy_npc)	Ebel#1_3	4_F_HUNTER_EVIL
+
+1@swat,320,47,4	script	Julian#3_2	4_M_REBELLION2,{
+	if ('event != 5)
+		end;
+	mes "[Julian]";
+	mes "Hmm. The engineers need to repair the occupied base. It's time for battle force step outside.";
+	if (isbegin_quest(12374) == 1) {
+		getitem 25155,10;// Swz_Honor_Token
+		completequest 12374;// Heart Hunter Base occupation
+		terra_gloria_main = 20;
+	}
+	close2;
+	warp "ein_fild04",279,339;
+	end;
+
+OnInstanceInit:
+	'event = 0;
+
+	'instance_id = instance_id();
+	'map_swat$ = instance_mapname("1@swat");
+
+	if (instance_live_info(ILI_NAME) != "Heart Hunter War Base 1")
+		disablenpc instance_npcname("#start_npc");
+
+	// Step 1
+	disablenpc instance_npcname("Julian#1_1");
+	disablenpc instance_npcname("#start_npc2");
+	disablenpc instance_npcname("Julian#1");
+	disablenpc instance_npcname("Pile of gunpowder#1");
+	disablenpc instance_npcname("#hunter_instance_1_mob_1");
+
+	// Step 2
+	disablenpc instance_npcname("Julian#1_2");
+	disablenpc instance_npcname("#start_npc3");
+	disablenpc instance_npcname("Suspicious instrument#1");
+	disablenpc instance_npcname("#hunter_instance_1_mob_2");
+
+	// Step 3
+	disablenpc instance_npcname("Julian#2_ep16_2");
+	disablenpc instance_npcname("#start_npc4");
+	disablenpc instance_npcname("Pile of gunpowder#2");
+	disablenpc instance_npcname("#hunter_instance_1_mob_3");
+
+	// Boss
+	disablenpc instance_npcname("#expl1");
+	disablenpc instance_npcname("#expl2");
+	disablenpc instance_npcname("#expl3");
+	disablenpc instance_npcname("#expl4");
+	disablenpc instance_npcname("#start_boss1");
+	disablenpc instance_npcname("Julian#3");
+	disablenpc instance_npcname("Julian#3_1");
+	disablenpc instance_npcname("Julian#3_2");
+	disablenpc instance_npcname("Ebel#1_1");
+	disablenpc instance_npcname("#wp_b1_1");
+	disablenpc instance_npcname("#wp_b1_2");
+	disablenpc instance_npcname("#wp_b1_3");
+	disablenpc instance_npcname("#wp_b1_4");
+	disablenpc instance_npcname("#wp_b1_5");
+	disablenpc instance_npcname("#hunter_instance_ebel");
+	disablenpc instance_npcname("Ebel#1_3");
+	disablenpc instance_npcname("#ext1_1");
+	disablenpc instance_npcname("#ext1_2");
+
+	setcell 'map_swat$,116,30,116,66,cell_walkable,0;
+	setcell 'map_swat$,151,30,151,60,cell_walkable,0;
+	setcell 'map_swat$,250,30,250,46,cell_walkable,0;
+	end;
+}
+
+// instance 2
+
+// Warps
+1@swat,169,295,0	warp	#wp_boss	2,2,1@swat,150,263
+1@swat,151,266,0	warp	#wp_out	2,2,ein_fild04,279,339
+
+
+// Entrance
+1@swat,53,122,1	script	Julian#4	4_M_REBELLION2,{
+	if (is_party_leader() == false) {
+		mes "[Julian]";
+		mes "I'm talking to your leader now " + strcharinfo(0) + ".";
+		close;
+	}
+	mes "[Julian]";
+	mes "" + strcharinfo(0) + ", is this your first visit here?";
+	next;
+	.@s = select( "Yes, it is.", "No, I've been here before." );
+	if ('status_instance != 0)
+		end;
+	'status_instance = 1;
+	if (.@s == 1)
+		donpcevent instance_npcname("Julian#4_1") + "::OnStart";
+	else
+		donpcevent instance_npcname("Julian#4") + "::OnStart";
+	end;
+
+OnStart:
+	disablenpc instance_npcname("Julian#4");
+	enablenpc instance_npcname("Julian#4_1");
+	npctalk "Julian: Oh, how many trainings have we had so far?", instance_npcname("Julian#4_1");
+	initnpctimer;
+	end;
+OnTimer3000:
+	npctalk "Julian: As before, please attack without mercy, just like in a real combat.", instance_npcname("Julian#4_1");
+	end;
+OnTimer9000:
+	stopnpctimer;
+	disablenpc instance_npcname("Julian#4_1");
+	donpcevent instance_npcname("#remaining_hunter2_step1") + "::OnStart";
+	end;
+}
+
+1@swat,53,122,1	script	Julian#4_1	4_M_REBELLION2,{
+	end;
+OnStart:
+	disablenpc instance_npcname("Julian#4");
+	enablenpc instance_npcname("Julian#4_1");
+	npctalk "Julian: You might find this place unfamiliar.";
+	initnpctimer;
+	end;
+OnTimer3000:
+	npctalk "Julian: There was a pretty large space behind the zone that we had occupied.";
+	end;
+OnTimer7000:
+	npctalk "Julian: Although we cannot use it to move our troops, it is a perfect location to experience a mock combat.";
+	end;
+OnTimer12000:
+	npctalk "Julian: So we remodeled it as a training ground to have a mock combat similar to the previous combat.";
+	end;
+OnTimer17000:
+	npctalk "Julian: You will play the role of the invaders. Our troops will disguise as Heart Hunters and defend.";
+	end;
+OnTimer22000:
+	npctalk "Julian: It's a sort of defense training. It is to understand how much force we require to defend this area.";
+	end;
+OnTimer27000:
+	npctalk "Julian: Now, please attack without mercy, just like in a real battle.";
+	end;
+OnTimer33000:
+	stopnpctimer;
+	disablenpc instance_npcname("Julian#4_1");
+	donpcevent instance_npcname("#remaining_hunter2_step1") + "::OnStart";
+	end;
+}
+
+// Step 1
+1@swat,1,1,1	script	#remaining_hunter2_step1	-1,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#remaining_hunter2_step1");
+	.@label$ = instance_npcname("#remaining_hunter2_step1") + "::OnMobDead";
+	mapannounce 'map_swat$, "Attack to the base detected. Everyone, start a defense tactic.", bc_map,0xFF5555;
+	for ( .@y = 145; .@y <= 199; .@y += 9 ) {
+		for ( .@x = 28; .@x <= 48; .@x += 10 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	end;
+OnMobDead:
+	.@label$ = instance_npcname("#remaining_hunter2_step1") + "::OnMobDead";
+	if (rand(100) < 5)
+		areamonster 'map_swat$, 28,145,48,199, "Upgraded Heart Hunter",3626,1, .@label$;		// EP16_2_H_HUNTER_V
+	.@count = mobcount( 'map_swat$, .@label$ );
+	mapannounce 'map_swat$, "Remaining " + .@count + " Heart Hunter", bc_map,0xFFFFFF;
+	if (.@count < 1)
+		initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	mapannounce 'map_swat$, "Julian: Section 1 taken. Those in charge of Section 1's defense must assemble behind the barrack later.", bc_map,0xFF99;
+	disablenpc instance_npcname("#remaining_hunter2_step1");
+	enablenpc instance_npcname("#start2_1_1");
+	end;
+}
+
+1@swat,31,211,0	script	#start2_1_1	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start2_1_1");
+	mapannounce 'map_swat$, "Enemies reached the 1st security system. Security system is disabled.", bc_map,0xFF5555;
+	disablenpc instance_npcname("#tr132");
+	disablenpc instance_npcname("#tr133");
+	disablenpc instance_npcname("#tr134");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl88");
+	cloakonnpc instance_npcname("#wl88");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl89");
+	cloakonnpc instance_npcname("#wl89");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl90");
+	cloakonnpc instance_npcname("#wl90");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl91");
+	cloakonnpc instance_npcname("#wl91");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl92");
+	cloakonnpc instance_npcname("#wl92");
+	enablenpc instance_npcname("#start2_2_1");
+	enablenpc instance_npcname("Julian#5");
+	setcell 'map_swat$,23,222,40,222,cell_walkable,1;
+	end;
+}
+
+// Step 2
+1@swat,31,233,0	script	#start2_2_1	HIDDEN_WARP_NPC,2,2,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start2_2_1");
+	donpcevent instance_npcname("Julian#5") + "::OnStart";
+	end;
+}
+
+1@swat,31,233,1	script	Julian#5	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "You safely passed Section 1. Now help us with the defense training for Section 2.";
+	close;
+OnStart:
+	npctalk "Julian: Was it too easy? In Section 2, we also have a training for the annihilation operation.";
+	initnpctimer;
+	end;
+OnTimer3000:
+	npctalk "Julian: This time, the defensive force and great number of force upgraded during the battle will be input.";
+	end;
+OnTimer7000:
+	npctalk "Julian: Please help us in the remaining training.";
+	end;
+OnTimer11000:
+	stopnpctimer;
+	disablenpc instance_npcname("Julian#5");
+	mapannounce 'map_swat$, "Enemies are approaching the 2nd defensive base. Phase 2 is announced.", bc_map,0xFF5555;
+	donpcevent instance_npcname("#remaining_hunter2_step2") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,1	script	#remaining_hunter2_step2	-1,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#remaining_hunter2_step2");
+	.@label$ = instance_npcname("#remaining_hunter2_step2") + "::OnMobDead";
+	for ( .@y = 250; .@y <= 265; .@y += 5 ) {
+		for ( .@x = 25; .@x <= 60; .@x += 7 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	end;
+OnMobDead:
+	.@label$ = instance_npcname("#remaining_hunter2_step2") + "::OnMobDead";
+	if (rand(100) < 10)
+		areamonster 'map_swat$, 25,250,60,265, "Upgraded Heart Hunter",3626,1, .@label$;		// EP16_2_H_HUNTER_V
+	.@count = mobcount( 'map_swat$, .@label$ );
+	mapannounce 'map_swat$, "Remaining " + .@count + " Heart Hunter", bc_map,0xFFFFFF;
+	if (.@count < 1)
+		initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	disablenpc instance_npcname("#remaining_hunter2_step2");
+	mapannounce 'map_swat$, "Enemies reached Section 2. Security system disabled.", bc_map,0xFF5555;
+	disablenpc instance_npcname("#tr136");
+	disablenpc instance_npcname("#tr137");
+	disablenpc instance_npcname("#tr138");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl110");
+	cloakonnpc instance_npcname("#wl110");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl111");
+	cloakonnpc instance_npcname("#wl111");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl112");
+	cloakonnpc instance_npcname("#wl112");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl113");
+	cloakonnpc instance_npcname("#wl113");
+	specialeffect EF_LORD, AREA, instance_npcname("#wl114");
+	cloakonnpc instance_npcname("#wl114");
+	setcell 'map_swat$,22,272,52,272,cell_walkable,1;
+
+	enablenpc instance_npcname("#start2_2_2");
+	enablenpc instance_npcname("Julian#6");
+	enablenpc instance_npcname("SWT_8309#1");
+	enablenpc instance_npcname("Pile of gunpowder#4");
+	end;
+}
+
+// Step 3 - Maze
+1@swat,56,283,0	script	#start2_2_2	HIDDEN_WARP_NPC,3,3,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start2_2_2");
+	donpcevent instance_npcname("Julian#6") + "::OnStart";
+	end;
+}
+
+1@swat,56,283,1	script	Julian#6	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "This security system here controls plenty of system devices over there.";
+	next;
+	mes "[Julian]";
+	mes "If you activate the device, they will open a narrow passage you can barely go through.";
+	next;
+	mes "[Julian]";
+	mes "Unless you activate the device, the defensive training does not start. Activate it when you are ready.";
+	close;
+
+OnStart:
+	initnpctimer;
+	npctalk "Julian: You have easily annihilated the upgraded force in Section 2. I'd better change our defensive tactic.";
+	end;
+OnTimer6000:
+	npctalk "Julian: By the way, the defensive device left in front of you will be quite different from those you have faced so far.";
+	end;
+OnTimer10000:
+	npctalk "Julian: I have constructed an automatic defense system by extensively installing the security system of Heart Hunter guys.";
+	end;
+OnTimer16000:
+	npctalk "Julian: The goal is to check how we can block enemies when we use the automatic devices and forces together in our defense tactic.";
+	end;
+OnTimer20000:
+	npctalk "Julian: If you operate the controller in front of me, the 3rd course begins.";
+	end;
+OnTimer24000:
+	stopnpctimer;
+	npctalk "Julian: If you come through the narrow passage and annihilate half of the force, I will judge that the defense has failed.";
+	end;
+}
+
+1@swat,60,286,4	script	SWT_8309#1	4_SCR_MT_ROBOTS,{
+	if ('status_instance != 1)
+		end;
+	mes "You can see an unusually attractive";
+	mes "red button.";
+	mes "---------------------";
+	mes "^ff0000[Do not push]^000000";
+	next;
+	if (select( "Ignore it", "Push it" ) == 1) {
+		mes "You ignored the button and stepped back. Nothing happened.";
+		close;
+	}
+	if ('status_instance != 1)	// note: officially several maze can be made
+		end;
+	'status_instance = 2;
+	mapannounce 'map_swat$, "There is an intruder in the restricted area. All unit members assemble.", bc_map,0xFF99;
+	specialeffect EF_FIREPILLARBOMB;
+	disablenpc instance_npcname("SWT_8309#1");
+	donpcevent instance_npcname("#hunter_instance_2_maze") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,1	script	#hunter_instance_2_maze	-1,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#hunter_instance_2_maze");
+	.@label$ = instance_npcname("#hunter_instance_2_maze") + "::OnMobDead";
+	for ( .@y = 300; .@y <= 330; .@y += 10 ) {
+		for ( .@x = 30; .@x <= 120; .@x += 10 ) {
+			monster 'map_swat$,.@x,.@y, "Heart Hunter Guard",3627,1, .@label$;	// EP16_2_H_HUNTER_MD
+		}
+	}
+	// maze - pregenerated ?
+	.@r = rand(6);
+	if (.@r == 0) setarray .@npc_num[0], 4, 5, 6, 10, 16, 17, 23, 29, 34, 35, 40, 46, 52, 53, 59, 65, 71, 72, 78, 84, 90, 89, 95, 101, 107;
+	else if (.@r == 1) setarray .@npc_num[0], 4, 5, 6, 10, 16, 17, 23, 29, 35, 36, 42, 48, 53, 54, 59, 65, 71, 72, 78, 84, 89, 90, 95, 101, 107, 136, 137, 138;
+	else if (.@r == 2) setarray .@npc_num[0], 3, 4, 5,  6,  9, 15, 16, 22, 28, 34, 35, 41, 47, 53, 54, 60, 66, 71, 72, 77, 83, 88, 89,  94, 100, 106, 138;
+	else if (.@r == 3) setarray .@npc_num[0], 2, 3, 4,  5,  6,  8, 13, 14, 19, 25, 31, 32, 38, 44, 49, 50, 55, 61, 67, 68, 74, 80, 86,  87,  93,  99;
+	else if (.@r == 4) setarray .@npc_num[0], 1, 2, 3,  4,  6,  5,  7, 13, 14, 20, 26, 31, 32, 37, 43, 49, 50, 56, 62, 68, 69, 75, 81,  86,  87,  92, 98, 104;
+	else if (.@r == 5) setarray .@npc_num[0], 1, 2, 3,  4,  5,  6,  7, 13, 14, 20, 26, 31, 32, 37, 43, 49, 50, 56, 62, 67, 68, 73, 79,  85,  86,  92;
+
+	.@size = getarraysize(.@npc_num);
+	for ( .@i = 0; .@i < .@size; .@i++ )
+		disablenpc instance_npcname( "#tr" + .@npc_num[.@i] );
+	end;
+OnMobDead:
+	.@label$ = instance_npcname("#hunter_instance_2_maze") + "::OnMobDead";
+	.@count = mobcount( 'map_swat$, .@label$ );
+	mapannounce 'map_swat$, "Remaining defensive force " + .@count + "%", bc_map,0xFFFFFF;
+	if (.@count <= 20)
+		initnpctimer;
+	end;
+OnTimer1000:
+	stopnpctimer;
+	disablenpc instance_npcname("#hunter_instance_2_maze");
+	mapannounce 'map_swat$, "Enemies disabled the Third security system. Base defense failed.", bc_map,0xFF5555;
+	killmonster 'map_swat$, instance_npcname("#hunter_instance_2_maze") + "::OnMobDead";
+	enablenpc instance_npcname("Julian#7");
+	enablenpc instance_npcname("Ebel#3");
+	enablenpc instance_npcname("Julian#8_0");
+	enablenpc instance_npcname("#start2_boss");
+	enablenpc instance_npcname("#wp_boss");
+	end;
+}
+
+1@swat,82,248,0	script	Pile of gunpowder#4	4_ENERGY_YELLOW,{
+	specialeffect EF_COIN;
+	disablenpc instance_npcname("Pile of gunpowder#4");
+	for ( .@i = 0; .@i < 4; .@i++ )
+		makeitem 25154,1,'map_swat$, rand(78,82), rand(250,251);	// Antique_Powder
+	initnpctimer;
+	end;
+}
+
+1@swat,164,300,6	script	Julian#7	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "We have something as the last resort, in case we fail to defend the base. It's time to test it now.";
+	next;
+	mes "[Julian]";
+	mes "Enter the door in front of you.";
+	close;
+}
+
+// Boss room
+1@swat,136,258,0	script	#start2_boss	HIDDEN_WARP_NPC,3,3,{
+	end;
+OnTouch:
+	disablenpc instance_npcname("#start2_boss");	// note: this npc is only disabled from here
+	npctalk "Julian: Great. Well done, Ebel. No, don't kick the dog... He's not an enemy.", instance_npcname("Julian#8_0");
+	end;
+}
+
+1@swat,129,258,6	script	Ebel#3	4_F_HUNTER_EVIL,{
+	mes "[Ebel]";
+	mes "Are you my companion? Or an enemy? Which side are you on?";
+	cutin "ep16_evil101.bmp",2;
+	close3;
+}
+
+1@swat,136,258,3	script	Julian#8_0	4_M_REBELLION2,{
+	if ('status_instance != 2)
+		end;
+	if (is_party_leader() == false) {
+		mes "[Julian]";
+		mes "Wait for a while " + strcharinfo(0) + " we will proceed once your unit leader comes.";
+		close;
+	}
+	mes "[Julian]";
+	mes "It took me more than a week until I was able to talk to her. Now she speaks well.";
+	next;
+	if (select( "Are you close enough to call her by the first name?", "I know. Let's start right now." ) == 1) {
+		mes "[Julian]";
+		mes "No, don't look at me like that. This girl would never talk to other guys. So I became in charge of her.";
+		next;
+		mes "[Julian]";
+		mes "... It's real.";
+		close2;
+		if (is_party_leader() == true && 'status_instance == 2)
+			donpcevent instance_npcname("Julian#8") + "::OnStart";
+		end;
+	}
+	mes "[Julian]";
+	mes "Hmm. Great. Let's start right away.";
+	if (is_party_leader() == true && 'status_instance == 2)
+		donpcevent instance_npcname("Julian#8_0") + "::OnStart";
+	close;
+OnStart:
+	'status_instance = 3;
+	disablenpc instance_npcname("Julian#8_0");
+	enablenpc instance_npcname("Julian#8");
+	initnpctimer;
+	npctalk "Julian: Ebel~ You confronted this fellow last time. Do you remember?", instance_npcname("Julian#8");
+	end;
+OnTimer4000:
+	npctalk "Ebel: I don't remember. Has he come to destroy this place?", instance_npcname("Ebel#3");
+	stopnpctimer;
+	donpcevent instance_npcname("#hunter_instance_2_talk") + "::OnStart";
+	end;
+}
+
+1@swat,136,258,3	script	Julian#8	4_M_REBELLION2,{
+	end;
+OnStart:
+	'status_instance = 3;
+	disablenpc instance_npcname("Julian#8_0");
+	enablenpc instance_npcname("Julian#8");
+	initnpctimer;
+	npctalk "Julian: This is the girl we captured last time.";
+	end;
+OnTimer3000:
+	npctalk "Julian: We don't know who she is and where she is from. All we know is her name, Ebel...";
+	end;
+OnTimer8000:
+	npctalk "Julian: Without any previous memory or rationality, only the intention to protect the base is left in her.";
+	end;
+OnTimer13000:
+	npctalk "Julian: She is in such a mechanical status that it is difficult to see a human in her. But she doesn't attack anyone, unless judged as an enemy.";
+	end;
+OnTimer18000:
+	npctalk "Julian: You have to help me in finding out her potential ability.";
+	end;
+OnTimer22000:
+	npctalk "Ebel: Julian, is that an enemy?", instance_npcname("Ebel#3");
+	end;
+OnTimer25000:
+	npctalk "Julian: Oh, the person in front of you is your enemy only for a while.";
+	end;
+OnTimer29000:
+	stopnpctimer;
+	npctalk "Ebel: Has he come to destroy this place?", instance_npcname("Ebel#3");
+	donpcevent instance_npcname("#hunter_instance_2_talk") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,1	script	#hunter_instance_2_talk	-1,{
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer3000:
+	npctalk "Julian: Well... Sort of.", instance_npcname("Julian#8");
+	end;
+OnTimer5000:
+	specialeffect EF_INCAGILITY, AREA, instance_npcname("Ebel#3");
+	npctalk "Ebel: Then...", instance_npcname("Ebel#3");
+	end;
+OnTimer7000:
+	specialeffect EF_SIGNUM, AREA, instance_npcname("Ebel#3");
+	npctalk "Ebel: I will stop him.", instance_npcname("Ebel#3");
+	end;
+OnTimer8000:
+	mapannounce 'map_swat$, "Security system: Phase 2 of the emergency situation is announced. Automatic defensive device is activated.", bc_map,0xFF5555;
+	end;
+OnTimer12000:
+	stopnpctimer;
+	disablenpc instance_npcname("Julian#8");
+	disablenpc instance_npcname("Ebel#3");
+	for ( .@i = 141; .@i <= 152; .@i++ )
+		enablenpc instance_npcname( "#tr" + .@i );
+	donpcevent instance_npcname("#hunter_instance_2_ebel") + "::OnStart";
+	end;
+}
+
+1@swat,1,1,1	script	#hunter_instance_2_ebel	-1,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#hunter_instance_2_ebel");
+	monster 'map_swat$,129,258, "Heart_Hunter Ebel",3628,1, instance_npcname("#hunter_instance_2_ebel") + "::OnMobDead";	// EP16_2_H_HUNTER_EV
+	end;
+OnMobDead:
+	if (mobcount( 'map_swat$, instance_npcname("#hunter_instance_2_ebel") + "::OnMobDead" ) < 1)
+		initnpctimer;
+	end;
+OnTimer1000:
+	mapannounce 'map_swat$, "Security system: Emergency situation is discharged. Terminating the automatic defense device.", bc_map,0xFF5555;
+	end;
+OnTimer4000:
+	enablenpc instance_npcname("Julian#8_1");
+	enablenpc instance_npcname("Ebel#3_1");
+	for ( .@i = 141; .@i <= 152; .@i++ )
+		disablenpc instance_npcname( "#tr" + .@i );
+	end;
+OnTimer7000:
+	stopnpctimer;
+	donpcevent instance_npcname("Julian#8_1") + "::OnStart";
+	end;
+}
+
+1@swat,129,258,6	script	Ebel#3_1	4_F_HUNTER_EVIL,{
+	switch( rand(4) ) {
+	case 0:
+		cutin "ep16_evil103.bmp",2;
+		mes "[Ebel]";
+		mes "Where did you learn the technique you have used a moment ago?";
+		close3;
+	case 1:
+		cutin "ep16_evil102.bmp",2;
+		mes "[Ebel]";
+		mes "...";
+		close3;
+	case 2:
+		cutin "ep16_evil103.bmp",2;
+		mes "[Ebel]";
+		mes "Where did you learn the technique you have used a moment ago?";
+		close3;
+	case 3:
+		cutin "ep16_evil101.bmp",2;
+		mes "[Ebel]";
+		mes "You... You're stronger than me. I have never experienced this before...";
+		close3;
+	}
+}
+
+1@swat,136,258,3	script	Julian#8_1	4_M_REBELLION2,{
+	mes "[Julian]";
+	mes "Hmm. Good job. Let us leave the training ground. The gateway is upstairs. Go up the stairs behind me.";
+	close;
+OnStart:
+	initnpctimer;
+	npctalk "Julian: I am not trying to underestimate your combat ability";
+	end;
+OnTimer5000:
+	npctalk "Julian: But I don't think Ebel is using 100% of her power.";
+	end;
+OnTimer10000:
+	npctalk "Julian We have to check her a little longer...";
+	end;
+OnTimer13000:
+	npctalk "Ebel: Am I... being disposed?", instance_npcname("Ebel#3_1");
+	end;
+OnTimer16000:
+	npctalk "Julian: What are you talking about? Disposing is only for machines.";
+	end;
+OnTimer20000:
+	npctalk "Ebel: Then you are not disposing me?", instance_npcname("Ebel#3_1");
+	end;
+OnTimer23000:
+	npctalk "Julian: Stop nagging. The training is over, get ready for the meal. It's time to eat.";
+	end;
+OnTimer28000:
+	npctalk "Ebel: Meal...", instance_npcname("Ebel#3_1");
+	emotion ET_SURPRISE, getnpcid(0, instance_npcname("Ebel#3_1") );
+	end;
+OnTimer31000:
+	npctalk "Julian: Yes. Go and change into casual clothes.";
+	end;
+OnTimer35000:
+	npctalk "Ebel: Ebel follows Julian's instruction.", instance_npcname("Ebel#3_1");
+	emotion ET_OK;
+	end;
+OnTimer41000:
+	disablenpc instance_npcname("Ebel#3_1");
+	end;
+OnTimer42000:
+	stopnpctimer;
+	npctalk "Julian: Hmm. Good job. Let us leave the training ground. The gateway is upstairs. Go up the stairs behind me.", instance_npcname("Julian#8_1");
+	enablenpc instance_npcname("#wp_out");
+	end;
+
+OnInstanceInit:
+	'status_instance = 0;
+
+	'instance_id = instance_id();
+	'map_swat$ = instance_mapname("1@swat");
+
+	if (instance_live_info(ILI_NAME) != "Heart Hunter War Base 2")
+		disablenpc instance_npcname("Julian#4");
+
+	// warps
+	disablenpc instance_npcname("#wp_boss");
+	disablenpc instance_npcname("#wp_out");
+
+	// Entrance
+	disablenpc instance_npcname("Julian#4_1");
+
+	// Step 1
+	disablenpc instance_npcname("#remaining_hunter2_step1");
+	disablenpc instance_npcname("#start2_1_1");
+
+	// Step 2
+	disablenpc instance_npcname("Julian#5");
+	disablenpc instance_npcname("#start2_2_1");
+	disablenpc instance_npcname("#remaining_hunter2_step2");
+
+	// Step 3 - Maze
+	disablenpc instance_npcname("#start2_2_2");
+	disablenpc instance_npcname("Julian#6");
+	disablenpc instance_npcname("SWT_8309#1");
+	disablenpc instance_npcname("#hunter_instance_2_maze");
+	disablenpc instance_npcname("Pile of gunpowder#4");
+
+	// Step 4 - Boss
+	disablenpc instance_npcname("Julian#7");
+	disablenpc instance_npcname("Ebel#3");
+	disablenpc instance_npcname("Julian#8_0");
+	disablenpc instance_npcname("Julian#8");
+	disablenpc instance_npcname("#start2_boss");
+	disablenpc instance_npcname("#hunter_instance_2_talk");
+	disablenpc instance_npcname("#hunter_instance_2_ebel");
+
+	for ( .@i = 141; .@i <= 152; .@i++ )
+		disablenpc instance_npcname( "#tr" + .@i );
+	disablenpc instance_npcname("Julian#8_1");
+	disablenpc instance_npcname("Ebel#3_1");
+
+	setcell 'map_swat$,23,222,40,222,cell_walkable,0;
+	setcell 'map_swat$,22,272,52,272,cell_walkable,0;
+	end;
+}

+ 1091 - 0
npc/re/instances/WernerLaboratoryCentralRoom.txt

@@ -0,0 +1,1091 @@
+//===== rAthena Script =======================================
+//= Instances Werner Laboratory central room.
+//===== Description: =========================================
+//- [Walkthrough conversion]
+//- Require Terra Gloria main quest.
+//- Note: For now there are 2 instances (officially one) to
+//  avoid exploit, the warp entry being the same. The first
+//  (main quest) is a solo instance and the 2nd (daily) a
+//  a party instance. The instance is a basic version,
+//  KRO added Seyren boss fight in the next updates.
+//===== Changelogs: ==========================================
+//= 1.0 First version. [Capuche]
+//============================================================
+
+slabw01,232,91,5	duplicate(dummy_cloaked_npc)	Skia#ep162_06	4_EP16_SKIA
+slabw01,233,92,3	duplicate(dummy_cloaked_npc)	Scared researcher#ep162	4_M_ALCHE_A
+
+// Werner Laboratory central room (solo instance)
+slabw01,236,91,3	script	Rookie#ep162_04	4_M_ROOKIE,{
+	if (terra_gloria_main == 20) {
+		mes "[Rookie]";
+		mes "Take a look at this.";
+		mes "According to the design drawing, this part is connected to the central room... But I only see a suspicious gate.";
+		next;
+		mes "[Rookie]";
+		mes "No wonder it looked like they had something to back them up.";
+		mes "Shall we use an explosive and blow it up?";
+		next;
+		cloakoffnpc( "Skia#ep162_06", getcharid(0) );
+		cloakoffnpc( "Scared researcher#ep162", getcharid(0) );
+		npctalk "Wait!", "Skia#ep162_06", bc_self;
+		mes "[Skia]";
+		mes "Not in such a crude way!";
+		mes "Well, I made a great decision when I came here.";
+		mes "Tell him to open this.";
+		next;
+		npctalk "Wow! This lady is quite smart!", "", bc_self;
+		npctalk "Why ... why are you doing this to me?!", "Scared researcher#ep162", bc_self;
+		mes "[Skia]";
+		mes "I asked him whether he knows the paths here, and his answer was yes. So I brought him here.";
+		mes "He will activate the gate to the central room.";
+		next;
+		npctalk "This ... is the way to do it.", "Scared researcher#ep162", bc_self;
+		mes "[Rookie]";
+		mes "Hmm, I see. That's the way to operate it.";
+		mes "Great, now I got it.";
+		mes "And we don't need him anymore.";
+		next;
+		npctalk "Wh... what?! Please don't kill me!", "Scared researcher#ep162", bc_self;
+		mes "[Skia]";
+		mes "Really? Then I will bring this researcher to the squadron outside.";
+		mes "About the central room, " + strcharinfo(0) + " I am counting on you!";
+		next;
+		cloakonnpc( "Skia#ep162_06", getcharid(0) );
+		cloakonnpc( "Scared researcher#ep162", getcharid(0) );
+		mes "[Rookie]";
+		mes "Haha, they let us open the gate of the central room!";
+		mes "Please speak to me again once you are ready to go in here.";
+		next;
+		mes "[Rookie]";
+		mes "After activating the gate, we have to guard it from outside.";
+		mes "So I cannot go in there with you.";
+		terra_gloria_main = 21;
+		close;
+	}
+	if (terra_gloria_main == 21) {
+		if (is_party_leader() == false) {
+			mes "^4d4dffThis event is proceeded to the Memorial.";
+			mes "Please try again after organizing a party.^000000";
+			close;
+		}
+		mes "[Rookie]";
+		mes "Are you ready?";
+		mes "If you are entering now, I will activate the gate.";
+		next;
+		if (select( "Enter now.", "Do not enter." ) == 2) {
+			mes "[Rookie]";
+			mes "We both know that we don't have time for this, don't we?";
+			close;
+		}
+		mes "[Rookie]";
+		mes "Wow! This is it! I always learn things quickly!";
+		mes "Well, please go in now!";
+		cloakoffnpc( "Central_room#evt_gate01", getcharid(0) );
+		instance_create("Werner Laboratory central room#1");	// officially there is only one 'Werner Laboratory central room' instance
+		close;
+	}
+	if (terra_gloria_main == 22) {
+		mes "[Rookie]";
+		mes "Have you reclaimed the stuff?";
+		close;
+	}
+	switch( checkquest(7742,HUNTING) ) {
+	case -1:
+		mes "[Rookie]";
+		mes "We have found a strange phenomenon in the central room. We are not investigating it.";
+		mes "Perhaps there was a strong experimental subject left inside.";
+		next;
+		mes "[Rookie]";
+		mes "What kind of facility is this?";
+		mes "Ssss.";
+		mes "Once it is identified appropriately, I might ask you for a settlement ...";
+		mes "I will have to guard the gate of the central room again.";
+		close;
+	case 0:
+	case 1:
+		if (getcharid(1) < 1) {
+			mes "^4d4dffThis event is proceeded to the Memorial.";
+			mes "Please try again after organizing a party.^000000";
+			close;
+		}
+		if (is_party_leader() == false) {
+			mes "[Rookie]";
+			mes "If there is a gate that has already been activated, you can see it.";
+			next;
+			mes "[Rookie]";
+			mes "Otherwise, please ask your party leader for entrance.";
+			close;
+		}
+		mes "[Rookie]";
+		mes "Are you ready?";
+		mes "If you are entering now, I will activate the gate.";
+		next;
+		if (select( "Enter now.", "Do not enter." ) == 2) {
+			mes "[Rookie]";
+			mes "We both know that we don't have time for this, don't we?";
+			close;
+		}
+		mes "[Rookie]";
+		mes "Wow! This is it! I always learn things quickly!";
+		mes "Well, please go in now!";
+		cloakoffnpc( "Central_room#evt_gate01", getcharid(0) );
+		instance_create("Werner Laboratory central room#2");
+		close;
+	case 2:
+		mes "[Rookie]";
+		mes "We are not sure how many more experimental subjects are there that were made and abandoned by that Eisen Werner guy.";
+		next;
+		mes "[Rookie]";
+		mes "But let's call it a day.";
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, " checkquest(7742,HUNTING) == 0 || checkquest(7742,HUNTING) == 1 " );
+	end;
+}
+
+slabw01,246,88,3	script	Central_room#evt_gate01	PORTAL,{
+	if (terra_gloria_main != 21 && terra_gloria_main < 23)
+		end;
+	if (getcharid(1) < 1 || (terra_gloria_main == 21 && is_party_leader() == false)) {
+		mes "^4d4dffMD Only the party leader can enter [Central room] now.^000000";
+		close;
+	}
+	mes "You can move to the central room.";
+	next;
+	if (select( "Go in.", "Do not go in." ) == 2) {
+		mes "[Rookie]";
+		mes "Oh ... I have to turn it on every time. It's so inconvenient!";
+		close;
+	}
+	if (terra_gloria_main == 21)
+		.@md_name$ = "Werner Laboratory central room#1";
+	else
+		.@md_name$ = "Werner Laboratory central room#2";	// officially player without the daily hunting quest can enter in the instance, allowing to spam the instance without delay
+	switch( instance_enter(.@md_name$) ) {
+	case IE_NOMEMBER:
+		end;
+	case IE_NOINSTANCE:
+		mes "[Rookie]";
+		mes "The gate is malfunctioning now. It's dangerous like this ...";
+		mes "Please wait for a while.";
+		close;
+	case IE_OTHER:
+		mes "An unknown error has occurred.";
+		close;
+	case IE_OK:
+		mapannounce "slabw01", "" + strcharinfo(0) + " of the party, " + getpartyname( getcharid(1) ) + ", is entering the " + .@md_name$ + ".", bc_map, 0xFF99;
+		// warp "1@slw",187,24;
+		end;
+	}
+	end;
+
+OnInit:
+	cloakonnpc( strnpcinfo(0) );
+	end;
+}
+
+// warps
+1@slw,187,170,0	warp	#slwwarp01	1,1,1@slw,71,32
+1@slw,71,77,0	warp	#slwwarp02	1,1,1@slw,54,134
+1@slw,55,150,0	warp	Emergency exit#exit_war	1,1,que_swat,155,58
+
+// Entrance - event type
+1@slw,187,25,0	script	#sl_evt01	HIDDEN_WARP_NPC,2,2,{
+	end;
+OnTouch:
+	if (is_party_leader() == false)
+		end;
+	disablenpc instance_npcname("#sl_evt01");
+	if (instance_live_info(ILI_NAME) == "Werner Laboratory central room#1")	// terra_gloria_main == 21
+		enablenpc instance_npcname("Eisen Werner#werner01");
+	else {
+		enablenpc instance_npcname("Guard#gard01");
+		enablenpc instance_npcname("Guard#gard02");
+		enablenpc instance_npcname("Guard#gard03");
+		enablenpc instance_npcname("Guard#gard04");
+	}
+	end;
+
+OnInstanceInit:
+	'device_state[0] = 'device_state[1] = 0;
+	'event_final = 0;
+
+	'map_slw$ = instance_mapname("1@slw");
+
+	disablenpc instance_npcname("#slwwarp01");
+	disablenpc instance_npcname("#slwwarp02");
+	disablenpc instance_npcname("Central Entrance#door");
+	disablenpc instance_npcname("Emergency exit#exit_war");
+
+	disablenpc instance_npcname("Eisen Werner#werner01");
+	disablenpc instance_npcname("Eisen Werner#werner02");
+	disablenpc instance_npcname("Eisen Werner#werner03");
+	disablenpc instance_npcname("Eisen Werner#werner04");
+	disablenpc instance_npcname("Eisen Werner#werner05");
+
+	disablenpc instance_npcname("Security device#switch01");
+	disablenpc instance_npcname("Security device#switch02");
+	disablenpc instance_npcname("Security device#switch11");
+	disablenpc instance_npcname("Security device#switch12");
+
+	disablenpc instance_npcname("Guard#gard01");
+	disablenpc instance_npcname("Guard#gard02");
+	disablenpc instance_npcname("Guard#gard03");
+	disablenpc instance_npcname("Guard#gard04");
+	disablenpc instance_npcname("Guard#gard05");
+	disablenpc instance_npcname("Guard#gard06");
+	disablenpc instance_npcname("Guard#gard07");
+
+	disablenpc instance_npcname("Seyren Windsor#seiren");
+	disablenpc instance_npcname("Pet child#boss_master");
+	disablenpc instance_npcname("#boss_master_dummy");
+	end;
+}
+
+// Room 1
+// * Samples and devices
+1@slw,174,145,3	script	Displayed sample#01	CLEAR_NPC,{
+	setarray .@sample$[0],
+		"^ff0000Purity^000000", "MT-Wxx0s57b",
+		"^4d4dffRose^000000", "MT-Wxx00b21",
+		"^4d4dffContradiction^000000", "MT-Wxx023-f1",
+		"^4d4dffJoy^000000", "OT-Wxx01-c",
+		"^4d4dffSea^000000", "MT-Wxc1c1b",
+		"^ff0000Eternity^000000", "MT-Wx267b",
+		"^4d4dffWay back home^000000", "OTM-Wxff01",
+		"^4d4dffLoneliness^000000", "MT-Wxx00c46",
+		"^4d4dffGlow^000000", "OT-Wxx4d4dff",
+		"^ff0000Dawn^000000", "MT-Wff_01v",
+		"^4d4dffTwilight^000000", "OT-Wxx00c3b",
+		"^4d4dffGirl^000000's ^ff0000dream^000000", "MT-Wxx0ax2-1";
+	.@num = (atoi(strnpcinfo(2)) - 1) * 2;
+	mes "[" + .@sample$[.@num] + "]";
+	mes "Experiment_number: " + .@sample$[.@num+1] + "";
+	close;
+}
+1@slw,201,145,3	duplicate(Displayed sample#01)	Displayed sample#02	CLEAR_NPC
+1@slw,174,132,3	duplicate(Displayed sample#01)	Displayed sample#03	CLEAR_NPC
+1@slw,201,132,3	duplicate(Displayed sample#01)	Displayed sample#04	CLEAR_NPC
+1@slw,174,118,3	duplicate(Displayed sample#01)	Displayed sample#05	CLEAR_NPC
+1@slw,201,118,3	duplicate(Displayed sample#01)	Displayed sample#06	CLEAR_NPC
+1@slw,174,104,3	duplicate(Displayed sample#01)	Displayed sample#07	CLEAR_NPC
+1@slw,201,104,3	duplicate(Displayed sample#01)	Displayed sample#08	CLEAR_NPC
+1@slw,174,90,3	duplicate(Displayed sample#01)	Displayed sample#09	CLEAR_NPC
+1@slw,201,90,3	duplicate(Displayed sample#01)	Displayed sample#10	CLEAR_NPC
+1@slw,174,76,3	duplicate(Displayed sample#01)	Displayed sample#11	CLEAR_NPC
+1@slw,201,76,3	duplicate(Displayed sample#01)	Displayed sample#12	CLEAR_NPC
+
+// * Events - First entrance
+1@slw,188,42,3	script	Eisen Werner#werner01	4_M_EISEN,{
+	if (is_party_leader() == false)
+		end;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Here comes the main character.";
+	mes "Honestly, I'm impressed. I never expected you would come all the way here.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Well, whatever.";
+	mes "Welcome.";
+	mes "Welcome to Eisen Werner's world.";
+	next;
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "I never imagined that it would be done all of a sudden like this.";
+	mes "Whatever. Who cares?";
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "I've given up saving this laboratory anyway.";
+	mes "Would you like to take a look?";
+	next;
+	mes "[Eisen Werner]";
+	mes "There were many things, including cracks in dimensions, etc.";
+	mes "In some worlds, the flow of time is twisted.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Is it a parallel world?";
+	mes "Or has someone been to a certain point in the past?";
+	next;
+	mes "[Eisen Werner]";
+	mes "What does time mean? Have you ever thought about it?";
+	mes "Its flow is relative.";
+	next;
+	mes "[Eisen Werner]";
+	mes "That guy has stopped now.";
+	mes "If time goes biologically, it means someone gets older.";
+	next;
+	mes "[Eisen Werner]";
+	mes "That was stopped by force.";
+	mes "In that case, we use an expression such as this.";
+	next;
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "The time has stopped.";
+	next;
+	mes "[Eisen Werner]";
+	mes "....";
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Would you like to take a look inside?";
+	mes "Take your time and look through the corridor.";
+	next;
+	mes "[Eisen Werner]";
+	mes "I will guide you.";
+	close2;
+	cutin "",255;
+	if (is_party_leader() == true) {
+		disablenpc instance_npcname("Eisen Werner#werner01");
+		enablenpc instance_npcname("Eisen Werner#werner02");
+	}
+	end;
+}
+
+1@slw,189,164,3	script	Eisen Werner#werner02	4_M_EISEN,{
+	if (is_party_leader() == false)
+		end;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Did you enjoy my work?";
+	mes "I sent the silly guys back to start over.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Well, it wasn't easy at all.";
+	mes "......";
+	next;
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "If only that kid had gone back, he would not have ended that way...";
+	next;
+	mes "[Eisen Werner]";
+	mes "I mean, if only he stopped...";
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "The chairman... I mean, that person is obsessed with the past.";
+	mes "Thanks to the chairman, I can do my research as I want.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Aren't you curious about it?";
+	mes "Why is he so obsessed with the past?";
+	next;
+	mes "[Eisen Werner]";
+	mes "By the way, you have to operate the instruments on the right and left if you want to go beyond this.... Can you do it?";
+	next;
+	mes "[Eisen Werner]";
+	mes "Since it's a simple device, I guess you can.";
+	mes "Change ^ff0000red^000000 to ^4d4dffblue^000000.";
+	mes "And change ^4d4dffblue^000000 to ^ff0000red^000000. That's it.";
+	next;
+	mes "[Eisen Werner]";
+	mes "If you looked at my work properly, you'll understand what I am saying.";
+	mes "Then I'll see you in the next zone.";
+	close2;
+	cutin "",255;
+	if (is_party_leader() == true) {
+		disablenpc instance_npcname("Eisen Werner#werner02");
+		enablenpc instance_npcname("Security device#switch01");
+		enablenpc instance_npcname("Security device#switch02");
+	}
+	end;
+}
+
+1@slw,155,191,3	script	Security device#switch01	CLEAR_NPC,{
+	if (is_party_leader() == false)
+		end;
+	.@number = atoi( replacestr( strnpcinfo(2), "switch", "" ) );
+	.@type = (.@number < 10) ? 0 : 1;
+	.@npc_num = (.@number < 10) ? .@number : (.@number-10);
+	if ('device_state[.@type] & .@npc_num) {
+		mes "It is already activated.";
+		close;
+	}
+	callsub S_Code, .@string$, .@answer;
+	mes "There are security codes written down.";
+	mes "[" + .@string$ + "]";
+	mes "What will you input?";
+	next;
+	if (select( "^ff0000" + .@string$ + "^000000", "^4d4dff" + .@string$ + "^000000" ) != .@answer) {
+		'device_state[.@type] = 0;
+		mes "The device has been initialized.";
+		close;
+	}
+	if (is_party_leader() == false)
+		end;
+	'device_state[.@type] = 'device_state[.@type] | .@npc_num;
+	if ('device_state[.@type] != 3) {
+		mes "Operated the security device.";
+		mes "Seems like there is one more security device.";
+		close;
+	}
+	mes "Operated the security device.";
+	mes "The gate is now activated.";
+	switch( .@type ) {
+	case 0:
+		enablenpc instance_npcname("#slwwarp01");
+		if (instance_live_info(ILI_NAME) == "Werner Laboratory central room#1")	// terra_gloria_main == 21
+			enablenpc instance_npcname("Eisen Werner#werner03");
+		else {
+			enablenpc instance_npcname("Guard#gard05");
+			enablenpc instance_npcname("Guard#gard06");
+			enablenpc instance_npcname("Guard#gard07");
+		}
+		break;
+	case 1:
+		if (instance_live_info(ILI_NAME) == "Werner Laboratory central room#1")
+			enablenpc instance_npcname("Eisen Werner#werner04");
+		else
+			enablenpc instance_npcname("Central Entrance#door");
+		enablenpc instance_npcname("#slwwarp02");
+		break;
+	}
+	close;
+
+S_Code:
+	setarray .@sample$[0],
+		"Purity", 2,
+		"Eternity", 2,
+		"Dawn", 2,
+		"Rose", 1,
+		"Contradiction", 1,
+		"Joy", 1,
+		"Sea", 1,
+		"Way back home", 1,
+		"Loneliness", 1,
+		"Glow", 1,
+		"Twilight", 1;
+	.@size = getarraysize(.@sample$) / 2;
+	.@r = rand(.@size) * 2;
+	set getarg(0), .@sample$[.@r];
+	set getarg(1), .@sample$[.@r+1];
+	return;
+}
+1@slw,220,191,3	duplicate(Security device#switch01)	Security device#switch02	CLEAR_NPC
+1@slw,22,61,3	duplicate(Security device#switch01)	Security device#switch11	CLEAR_NPC
+1@slw,122,61,3	duplicate(Security device#switch01)	Security device#switch12	CLEAR_NPC
+
+
+// * Events - Daily
+1@slw,188,58,3	script	Guard#gard01	3622,4,4,{
+	end;
+OnTouch:
+	.@num = atoi( replacestr( strnpcinfo(2), "gard0", "" ) );
+	getmapxy .@map$,.@x,.@y, BL_NPC;
+	switch( .@num ) {
+	case 1:	// 2 spawn area
+		npctalk ".. Dang, how did you get in here?";
+		areamonster .@map$, 186,92,190,94, "Special Guard", 3622,3;	// EP16_2_MM_S_GUARDS
+		.@mob_count = 3;
+		break;
+	case 2:	// 3 spawn area
+		npctalk ".. Dang, how did you get in here?";
+		areamonster .@map$, 186,142,190,143, "Special Guard", 3622,3;	// EP16_2_MM_S_GUARDS
+		areamonster .@map$, 186,160,190,162, "Special Guard", 3622,3;
+		.@mob_count = 3;
+		break;
+	case 5:
+		npctalk ".. Dang, how did you get in here?";
+		.@mob_count = 3;
+		break;
+	case 3:
+		npctalk ".. Dang, how did you get in here?";
+		.@mob_count = 1;
+		.@label$ = instance_npcname("#security_device_lab") + "::OnLeft1";
+		break;
+	case 4:
+		npctalk ".. Dang, how did you get in here?";
+		.@mob_count = 3;
+		.@label$ = instance_npcname("#security_device_lab") + "::OnRight1";
+		break;
+	case 6:
+		npctalk "Who's there?";
+		.@mob_count = 3;
+		.@label$ = instance_npcname("#security_device_lab") + "::OnLeft2";
+		break;
+	case 7:
+		npctalk "Let me finish you!";
+		.@mob_count = 3;
+		.@label$ = instance_npcname("#security_device_lab") + "::OnRight2";
+		break;
+	}
+	disablenpc instance_npcname( strnpcinfo(0) );
+	areamonster .@map$, (.@x-2), (.@y-2), (.@x+2), (.@y+2), "Special Guard", 3622, .@mob_count, .@label$;	// EP16_2_MM_S_GUARDS
+	end;
+}
+1@slw,189,117,3	duplicate(Guard#gard01)	Guard#gard02	3622,4,4
+1@slw,171,167,3	duplicate(Guard#gard01)	Guard#gard03	3622,4,4
+1@slw,206,167,3	duplicate(Guard#gard01)	Guard#gard04	3622,4,4
+1@slw,70,38,5	duplicate(Guard#gard01)	Guard#gard05	3622,4,4
+1@slw,33,52,3	duplicate(Guard#gard01)	Guard#gard06	3622,4,4
+1@slw,111,52,3	duplicate(Guard#gard01)	Guard#gard07	3622,4,4
+
+1@slw,1,1,3	script	#security_device_lab	HIDDEN_WARP_NPC,{
+	end;
+OnLeft1:
+	if (mobcount( 'map_slw$, instance_npcname("#security_device_lab") + "::OnLeft1" ) < 1) {
+		mapannounce 'map_slw$, "Security device L-01 has been activated.", bc_map,0xFF99;
+		enablenpc instance_npcname("Security device#switch01");
+	}
+	end;
+OnRight1:
+	if (mobcount( 'map_slw$, instance_npcname("#security_device_lab") + "::OnRight1" ) < 1) {
+		mapannounce 'map_slw$, "Security device R-01 has been activated.", bc_map,0xFF99;
+		enablenpc instance_npcname("Security device#switch02");
+	}
+	end;
+OnLeft2:
+	if (mobcount( 'map_slw$, instance_npcname("#security_device_lab") + "::OnLeft2" ) < 1) {
+		mapannounce 'map_slw$, "Security device L-02 has been activated.", bc_map,0xFF99;
+		enablenpc instance_npcname("Security device#switch11");
+	}
+	end;
+OnRight2:
+	if (mobcount( 'map_slw$, instance_npcname("#security_device_lab") + "::OnRight2" ) < 1) {
+		mapannounce 'map_slw$, "Security device R-02 has been activated.", bc_map,0xFF99;
+		enablenpc instance_npcname("Security device#switch12");
+	}
+	end;
+}
+
+
+// Room 2
+// * Events - First entrance
+1@slw,72,70,3	script	Eisen Werner#werner03	4_M_EISEN,{
+	if (is_party_leader() == false)
+		end;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Easier than you thought?";
+	mes "The next security devices are similar, so I won't have to explain again.";
+	next;
+	mes "[Eisen Werner]";
+	mes "After looking around here, what do you think?";
+	mes "Isn't it amazing?";
+	mes "Have you been to ^4d4dffVerus^000000?";
+	next;
+	mes "[Eisen Werner]";
+	mes "That is the laboratory I built by referring to it.";
+	mes "It was my type.";
+	mes "......";
+	next;
+	mes "[Eisen Werner]";
+	mes "The technology was completely different from what we'd had until then.";
+	mes "We've used everything available.";
+	next;
+	mes "[Eisen Werner]";
+	mes "What do you say?";
+	mes "Does it look good?";
+	next;
+	select("Do you wonder why I'm saying these things?");
+	mes "[Eisen Werner]";
+	mes "Hmm, that's because you're going to die here anyway.";
+	mes "So I would like to promote my achievements.";
+	next;
+	select("Die here? Me?");
+	mes "[Eisen Werner]";
+	mes "Certainly. You'll die here.";
+	mes "Do you think I am just stupid enough to be left here alone?";
+	next;
+	mes "[Eisen Werner]";
+	mes "I know you've come here for the affair of Rune-Midgarts kingdom.";
+	mes "So I've prepared something.";
+	next;
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "With a huge sensation.";
+	mes "You shall die. Right here.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Therefore, just be my guest.";
+	mes "Let's move to the next zone.";
+	close2;
+	cutin "",255;
+	if (is_party_leader() == true) {
+		disablenpc instance_npcname("Eisen Werner#werner03");
+		enablenpc instance_npcname("Security device#switch11");
+		enablenpc instance_npcname("Security device#switch12");
+	}
+	end;
+}
+
+
+// Room 3
+// * Events - First entrance
+1@slw,57,141,3	script	Eisen Werner#werner04	4_M_EISEN,{
+	if (is_party_leader() == false)
+		end;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Beyond this wall, there will be something you have come to obtain.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Right. That thing you carved into a gem and used as a decoration on the crown.";
+	mes "Do you even know what it is?";
+	next;
+	mes "[Eisen Werner]";
+	mes "Although it is a scrap, it's the heart fragment of Ymir.";
+	mes "It cannot be compared to an imitation.";
+	next;
+	mes "[Eisen Werner]";
+	mes "... The fools in the kingdom cannot even utilize the power they already have.";
+	mes "What a pity.";
+	mes "So I decided to use it...";
+	next;
+	mes "[Eisen Werner]";
+	mes "You want to reclaim it? It's all up to your capability.";
+	mes "I haven't been waiting with empty hands.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Let me tell you once again. Don't be surprised.";
+	mes "No, I'd be glad if you were surprised.";
+	mes "Huhuhuhuhu....";
+	next;
+	cutin "ep16_eisen03.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Now, take a look at the gift I've prepared.";
+	close2;
+	cutin "",255;
+	if (is_party_leader() == true) {
+		disablenpc instance_npcname("Eisen Werner#werner04");
+		enablenpc instance_npcname("Central Entrance#door");
+	}
+	end;
+}
+
+1@slw,54,146,0	script	Central Entrance#door	WARPNPC,1,1,{
+	end;
+OnTouch:
+	if (is_party_leader() == false) {
+		warp 'map_slw$,55,153;
+		end;
+	}
+	if (instance_live_info(ILI_NAME) == "Werner Laboratory central room#1") {
+		if ('event_final == 0) {
+			'event_final = 1;
+			enablenpc instance_npcname("Eisen Werner#werner05");
+		}
+		warp 'map_slw$,55,153;
+		end;
+	}
+	switch( 'event_final ) {
+	case 1:
+		mes "Replaying the story.";
+		close2;
+		warp 'map_slw$,55,153;
+		end;
+	case 2:
+		warp 'map_slw$,55,153;
+		end;
+	}
+	mes "You have two choices in the next zone.";
+	mes "If you want to replay the story of Seyren Windsor, please select ^4d4dffProceed with the story^000000. If you want to see the masterpiece of Eisen Werner, please select ^4d4dffProceed with the battle^000000.";
+	next;
+	if (select( "Proceed with the story.", "Proceed with the battle." ) == 1) {
+		mes "You've selected the story.";
+		close2;
+		if ('event_final == 0) {
+			'event_final = 1;
+			enablenpc instance_npcname("Eisen Werner#werner05");
+		}
+		warp 'map_slw$,55,153;
+		end;
+	}
+	mes "You've selected the battle.";
+	close2;
+	if ('event_final == 0) {
+		'event_final = 2;
+		enablenpc instance_npcname("Pet child#boss_master");
+		enablenpc instance_npcname("#boss_master_dummy");
+	}
+	warp 'map_slw$,55,153;
+	end;
+}
+
+
+// Room Boss
+// * Story
+1@slw,56,171,3	duplicate(dummy_npc)	Seyren Windsor#seiren	4_M_SEIREN_UC
+
+1@slw,53,171,5	script	Eisen Werner#werner05	4_M_EISEN,{
+	if (is_party_leader() == false) {
+		mes "^4d4dffOnly the party leader can proceed with this event.^000000";
+		close;
+	}
+	if (checkweight(501,1) == 0) {
+		mes "- Cannot progress with quest because you have too many items in your possession. -";
+		close;
+	}
+	.@seyren$ = instance_npcname("Seyren Windsor#seiren");
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "This place is the core of the laboratory, and contains everything of my research.";
+	npctalk "This place is the core of the laboratory, and contains everything of my research.";
+	next;
+	mes "[Eisen Werner]";
+	mes "It is the heart fragment of Ymir that holds the fundamental power to constitute the world. It also holds the origin of life.";
+	npctalk "It is the heart fragment of Ymir that holds the fundamental power to constitute the world. It also holds the origin of life.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Look at this carefully.";
+	mes "What you've come to reclaim is doing something marvelous!";
+	npctalk "Look at this carefully. What you've come to reclaim is doing something marvelous!";
+	next;
+	mes "[Eisen Werner]";
+	mes "The energy extracted from this flows into the magic circle on the ground... Ha ha ha. Of course, this magic circle has been reinterpreted magically.";
+	npctalk "The energy extracted from this flows into the magic circle on the ground... Ha ha ha. Of course, this magic circle has been reinterpreted magically.";
+	next;
+	mes "[Eisen Werner]";
+	mes "In any case, the energy goes into the experimental subject... Using that power, I've adjusted their time.";
+	next;
+	cutin "ep16_eisen03.bmp",1;
+	mes "[Eisen Werner]";
+	mes "... Certainly, some of them get killed due to chapped cells. Ha ha!";
+	next;
+	select("Is that all you want to say?");
+	unittalk getcharid(3), "" + strcharinfo(0) + " : Is that all you want to say?";
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "No! Never!";
+	mes "Have you already forgotten what I told you earlier?";
+	mes "I told you I'd prepared a gift.";
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Something...";
+	mes "that will surprise you.";
+	close2;
+	setpcblock PCBLOCK_NPC, true;
+	cutin "",255;
+	sleep2 3000;
+	enablenpc .@seyren$;
+	npctalk "......", .@seyren$;
+	sleep2 1000;
+	setpcblock PCBLOCK_NPC, false;
+	unittalk getcharid(3), "" + strcharinfo(0) + " : ... Seyren?!";
+	mes "[Eisen Werner]";
+	mes "How do you like the gift I've prepared?!";
+	mes "Are you satisfied?";
+	cutin "ep16_eisen01.bmp",1;
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "This fellow was among the delegation of that silly royal family.";
+	mes "Thanks to the experiment of some brave guy, I have obtained this great stuff.";
+	next;
+	select("Are you talking about the In Vivo Experiment?");
+	unittalk getcharid(3), "" + strcharinfo(0) + " : Are you talking about the In Vivo Experiment?";
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Yeah, exactly.";
+	mes "Well, there are plenty guys who do In Vivo Experiments apart from that fellow, but he was the first one brave enough to enhance a living creature.";
+	next;
+	cutin "ep16_eisen01.bmp",1;
+	mes "[Eisen Werner]";
+	mes "using the imitated heart fragment of Ymir";
+	mes "It was a great turning point for the In Vivo Experiments.";
+	next;
+	mes "[Eisen Werner]";
+	mes "I was trying to apply it to many kinds of stuff.";
+	next;
+	mes "[Eisen Werner]";
+	mes "By the way....";
+	mes "You should say hello to it. Right?";
+	next;
+	mes "[Eisen Werner]";
+	mes "Ah~. That's right.";
+	mes "You don't need to say hello, because both of you are going to die!";
+	cutin "ep16_eisen03.bmp",1;
+	next;
+	cutin "ep16_eisen02.bmp",1;
+	mes "[Eisen Werner]";
+	mes "Seyren, escort these guests to hell.";
+	mes "Do you understand what I am saying?";
+	next;
+	cutin "ep16_seiren02.bmp",2;
+	mes "[Seyren]";
+	mes ".......";
+	npctalk "......", .@seyren$;
+	next;
+	cutin "ep16_evt_ws.bmp",4;
+	mes "[Eisen Werner]";
+	mes "Hmm?";
+	mes "What is this, Seyren? Is it a negative phase now?";
+	next;
+	mes "[Seyren]";
+	mes "I feel like I've woken up from a long sleep.";
+	mes "Maybe it was for this day.";
+	npctalk "I feel like I've woken up from a long sleep. Maybe it was for this day.", .@seyren$;
+	next;
+	mes "[Eisen Werner]";
+	mes "Do not forget your duty, Seyren.";
+	mes "You are a weapon. You are nothing more than a puppet with the outfit of a knight called Seyren Windsor.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Do you need me to explain step by step?";
+	mes "After transplanting the dummy of Ymir's Heart, the body could not endure the power and eventually collapsed.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Then its spirit duplicated the main body and kept dividing over and over.";
+	mes "During that process, its memory, consciousness, soul, mind and ego were all scattered like sand. They became meaningless.";
+	next;
+	mes "[Eisen Werner]";
+	mes "When we transplanted the dummy of Ymir's Heart into someone with a strong mind and body, we expected that person would become a stronger biological weapon.";
+	next;
+	mes "[Eisen Werner]";
+	mes "We never expected that it would duplicate itself and divide endlessly. As a result, that experiment was regarded as a failure.";
+	next;
+	mes "[Eisen Werner]";
+	mes "To make things worse, it was an uncontrollable creature that was filled only with fury.";
+	next;
+	mes "[Seyren]";
+	mes "I am here.";
+	npctalk "I am here.", .@seyren$;
+	next;
+	mes "[Eisen Werner]";
+	mes "You know what? They are still dividing now.";
+	mes "Just imitating the main body, they are even growing inside it.";
+	next;
+	mes "[Eisen Werner]";
+	mes "Since they are imperfect beings now, they want to become perfect.";
+	mes "They are imperfect beings now, so they want to become perfect, rather than just imitating the main body and living as a virtual image.";
+	next;
+	mes "[Eisen Werner]";
+	mes "They wish to exist as a singular entity.";
+	next;
+	mes "[Eisen Werner]";
+	mes "And the only successful experiment is you. We call you Seyren now.";
+	next;
+	cutin "ep16_seiren02.bmp",2;
+	mes "[Seyren]";
+	mes "...... Is it the end of your will?";
+	npctalk "...... Is it the end of your will?", .@seyren$;
+	next;
+	cutin "ep16_eisen03.bmp",0;
+	mes "[Eisen Werner]";
+	mes "Hey, baby? You can't do this to me.";
+	mes "You must obey me!";
+	next;
+	cutin "ep16_eisen02.bmp",0;
+	mes "[Eisen Werner]";
+	mes "Don't you remember how much I struggled to bring you here out of that hell?";
+	mes "Do not be swayed by the consciousness of someone who's already dead.";
+	next;
+	cutin "ep16_seiren02.bmp",2;
+	mes "[Seyren]";
+	mes "... Eisen Werner.";
+	mes "Let me ask you again. Is it the end of your will?";
+	npctalk "... Eisen Werner. Let me ask you again. Is it the end of your will?", .@seyren$;
+	next;
+	cutin "ep16_eisen01.bmp",0;
+	mes "[Eisen Werner]";
+	mes "Damn!";
+	mes "I never expected this!";
+	mes "Isn't this world a funny place? Ha ha ha ha ha";
+	next;
+	mes "[Eisen Werner]";
+	mes "Never think that I'm finished here.";
+	mes "I don't need a loser either.";
+	close2;
+	setpcblock PCBLOCK_NPC, true;
+	cutin "",255;
+	specialeffect EF_BEGINSPELL3;
+	sleep2 1000;
+	specialeffect EF_SCREEN_QUAKE;
+	sleep2 1000;
+	specialeffect EF_LORD;
+	disablenpc instance_npcname("Eisen Werner#werner05");
+	sleep2 2000;
+	setpcblock PCBLOCK_NPC, false;
+	npctalk "Oh....", .@seyren$;
+	mes "[Seyren]";
+	mes "... Eisen. You have abandoned everything like this.";
+	npctalk "... Eisen. You have abandoned everything like this.", .@seyren$;
+	specialeffect2 EF_DEVIL3;
+	cutin "ep16_seiren01.bmp",2;
+	next;
+	mes "[Seyren]";
+	mes ".. Ah...";
+	npctalk ".. Ah...", .@seyren$;
+	cutin "ep16_seiren02.bmp",2;
+	next;
+	mes "[Seyren]";
+	mes "The solidity is weakening again.";
+	mes "Now, I have a much more urgent message for you rather than for Eisen.";
+	npctalk "The solidity is weakening again. Now, I have a much more urgent message for you rather than for Eisen.", .@seyren$;
+	next;
+	mes "[Seyren]";
+	mes "I've been waiting for you for a long time.";
+	mes "As Eisen said, it's no longer important whether I'm Seyren or not.";
+	npctalk "I've been waiting for you for a long time. As Eisen said, it's no longer important whether I'm Seyren or not.", .@seyren$;
+	next;
+	mes "[Seyren]";
+	mes "Since I had the ability to think, I didn't know who I was nor why I existed.";
+	next;
+	specialeffect2 EF_DEVIL4;
+	mes "[Seyren]";
+	mes "The continuous division created countless copies of myself.";
+	next;
+	mes "[Seyren]";
+	mes "The power entwined with the dummy of Ymir's Heart, which responded to my will and that of my companions. They wanted to unite, but kept dividing themselves over and over.";
+	next;
+	specialeffect2 EF_DEVIL5;
+	cutin "ep16_seiren01.bmp",2;
+	mes "[Seyren]";
+	mes "How many copies of myself have been created so far?";
+	next;
+	cutin "ep16_seiren02.bmp",2;
+	mes "[Seyren]";
+	mes "I lost the ego after continuous division, but was regenerated as the previous shape. I don't think it was a coincidence.";
+	next;
+	mes "[Seyren]";
+	mes "I thought there must have been a reason.";
+	next;
+	mes "[Seyren]";
+	mes "And I realized it after looking at ^4d4dffTerra Gloria^000000.";
+	mes "The reason why the god gave me this opportunity.";
+	next;
+	specialeffect2 EF_DEVIL6;
+	cutin "ep16_seiren01.bmp",2;
+	mes "[Seyren]";
+	mes "Have you come to reclaim this?";
+	mes "... The land is gone and only the star remains.";
+	next;
+	specialeffect2 EF_DEVIL7;
+	cutin "ep16_seiren02.bmp",2;
+	mes "[Seyren]";
+	mes "Eisen is right. ^4d4dffSeyren Windsor is no longer in this world.^000000";
+	mes "All I have now is the strong will to transfer something on and on.";
+	next;
+	specialeffect2 EF_SCREEN_QUAKE;
+	specialeffect2 EF_DEVIL8;
+	cutin "ep16_seiren01.bmp",2;
+	mes "[Seyren]";
+	mes "Maybe that bit of will made me exist.";
+	mes "But it's over now.";
+	cutin "ep16_seiren02.bmp",2;
+	next;
+	specialeffect2 EF_DEVIL9;
+	cutin "ep16_seiren01.bmp",2;
+	mes "[Seyren]";
+	mes ".....";
+	next;
+	mes "[Seyren]";
+	mes "I really don't have more time.";
+	mes "After this moment, ^4d4dffI will be divided and scattered.^000000 again.";
+	next;
+	mes "[Seyren]";
+	mes "While I still have my will now, I have one message to give you.";
+	next;
+	if (instance_live_info(ILI_NAME) == "Werner Laboratory central room#1") {
+		mes "[Seyren]";
+		mes "Please, go ahead.";
+		mes "Seyren Windsor, the knight of Prontera failed in the task.";
+		next;
+		mes "[Seyren]";
+		mes "^4d4dffMe and all my companions died long ago.";
+		mes "Please don't waste your affections on the bodies that are already dead.^000000";
+		next;
+		mes "[Seyren]";
+		mes "They are just like ghosts covered with peels.";
+		mes "I was lucky to show my last will in front of you.";
+		next;
+		mes "[Seyren]";
+		mes "They are ^4d4dffrelics^000000 of me and my companions.";
+		mes "Please give them to our families.";
+		if (is_party_leader() == true) {
+			getitem 25179,1;	// Blessing_Star
+			getitem 23087,1;	// Small_Leather_Bag
+			erasequest 7739;// Find Star of Blessing!
+			setquest 7740;// Star of Blessing obtained
+			terra_gloria_main = 22;
+		}
+		close2;
+		setpcblock PCBLOCK_NPC, true;
+		cutin "",255;
+		specialeffect EF_ICECRASH, AREA, .@seyren$;
+		disablenpc .@seyren$;
+		// monster 'map_slw$,56,171, "Seyren", SEYREN, 1;
+		sleep2 1000;
+		specialeffect2 EF_SCREEN_QUAKE;
+		sleep2 1000;
+		setpcblock PCBLOCK_NPC, false;
+		specialeffect2 EF_SCREEN_QUAKE;
+		specialeffect2 EF_RAIN_PARTICLE2;
+		warp "que_swat",155,50;
+		end;
+	}
+	// daily
+	mes "[Seyren]";
+	mes "It was great to see you at the end.";
+	mes "Thank you... Bye.";
+	close2;
+	setpcblock PCBLOCK_NPC, true;
+	cutin "",255;
+	specialeffect EF_ICECRASH, AREA, .@seyren$;
+	cloakonnpc .@seyren$;
+	// monster 'map_slw$,56,171, "Seyren", SEYREN, 1;
+	sleep2 1000;
+	specialeffect2 EF_SCREEN_QUAKE;
+	sleep2 1000;
+	specialeffect2 EF_SCREEN_QUAKE;
+	specialeffect2 EF_RAIN_PARTICLE2;
+	setpcblock PCBLOCK_NPC, false;
+	if (is_party_leader() == true)
+		'event_final = 0;
+	mapannounce 'map_slw$, "The setting of the central room has been initialized.", bc_map,0xFF99;
+	warpparty 'map_slw$,54,134,getcharid(1),'map_slw$,2,2;
+	disablenpc .@seyren$;
+	end;
+}
+
+// * Battle
+1@slw,55,170,3	duplicate(dummy_npc)	Pet child#boss_master	3621
+
+1@slw,55,170,3	script	#boss_master_dummy	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (is_party_leader() == false)	// officially player can spawn multiple boss changing party leader
+		end;
+	setpcblock PCBLOCK_NPC, true;
+	.@npc_name$ = instance_npcname("Pet child#boss_master");
+	npctalk "How dare you come in! You're so brave!", .@npc_name$;
+	sleep2 3000;
+	npctalk "You must be honored to fight me!", .@npc_name$;
+	sleep2 3000;
+	npctalk ".......", .@npc_name$;
+	sleep2 3000;
+	npctalk ".. Damn Werner. Why did you mix me with a wolf?", .@npc_name$;
+	sleep2 3000;
+	npctalk "A... anyway, you are dead meat.", .@npc_name$;
+	sleep2 3000;
+	setpcblock PCBLOCK_NPC, false;
+	disablenpc instance_npcname("#boss_master_dummy");
+	npctalk "Beeee prepared!!!", .@npc_name$;
+	specialeffect EF_DANCE_BLADE_ATK, AREA, instance_npcname("Pet child#boss_master");
+	specialeffect EF_ALL_FULL_THROTTLE, AREA, instance_npcname("Pet child#boss_master");
+	donpcevent instance_npcname("#boss_master_lab") + "::OnStart";
+	mapannounce 'map_slw$, "The Magic field has been activated.", bc_map,0xFF99;
+	cloakonnpc instance_npcname("Pet child#boss_master");
+	end;
+}
+
+1@slw,1,1,3	script	#boss_master_lab	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnStart:
+	enablenpc instance_npcname("#boss_master_lab");
+	if (mobcount( 'map_slw$, instance_npcname("#boss_master_lab") + "::OnMobDead" ) < 1)
+		monster 'map_slw$,55,170, "Pet child", 3621, 1, instance_npcname("#boss_master_lab") + "::OnMobDead";	// EP16_2_MM_CUTIE
+	end;
+OnMobDead:
+	if (mobcount( 'map_slw$, instance_npcname("#boss_master_lab") + "::OnMobDead" ) < 1) {
+		mapannounce 'map_slw$, "The Magic field has been eliminated. An entrance has been created.", bc_map,0xFF99;
+		enablenpc instance_npcname("Emergency exit#exit_war");
+		disablenpc instance_npcname("#boss_master_lab");
+	}
+	end;
+}

+ 1415 - 0
npc/re/merchants/enchan_verus.txt

@@ -0,0 +1,1415 @@
+//===== rAthena Script =======================================
+//= Enchants and exchange NPCs.
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Exchangers and enchanters NPCs on Verus.
+//===== Additional Comments: =================================
+//= 1.0 Added NPCs coming along Charleston instance. [Capuche]
+//= 1.1 Added Excellion Wing/Suit trader and enchant NPCs. [Capuche]
+//============================================================
+
+// Charleston
+verus04,69,108,5	script	Mass Charleston#1	4_F_CHARLESTON01,{
+	if (!checkweight(1201,1) || (MaxWeight - Weight) < 1000) {
+		mes "^ff0000You have carried too many items, please reduce it and come back later.^000000";
+		close;
+	}
+	cutin "dalle01.bmp",2;
+	if (countitem(6752) < 10) {
+		if (isbegin_quest(13186) == 0) {
+			mes "[Mass Charleston]";
+			mes "I don't know where you can find Charleston Components,";
+			next;
+			mes "[Mass Charleston]";
+			mes "but if you have 10 or more, then I can exchange them with factory products.";
+			close3;
+		}
+		mes "[Mass Charleston]";
+		mes "A series of trials and errors was made before the mass version of Charleston was developed.";
+		next;
+		mes "[Mass Charleston]";
+		mes "I don't mean to depreciate myself, but mass versions are mass versions; they're cost-effective and practical, but never as good as the high-end versions.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Some Charlestons, especially in the development stage, are equipped with more advanced features. To study them, I need more components.";
+		next;
+		mes "[Mass Charleston]";
+		mes "If you have 10 or more Charleston Components, then I can exchange them with factory products.";
+		close3;
+	}
+	mes "[Mass Charleston]";
+	mes "You got some nice parts on you! Would you like to exchange it with the goods produced in the factory?";
+	next;
+	mes "[Mass Charleston]";
+	mes "Is a collection of Charleston advantages in a commodity, but can not be sold separately, IF bring good parts can be exchanged for you.";
+	next;
+	.@s = select( "Quit.", "Exchange Reinforced parts", "Exchange Supplementary device" ) - 2;
+	if (.@s == -1) {
+		mes "[Mass Charleston]";
+		mes "I'll see you next time!";
+		close3;
+	}
+	setarray .@job_aft$[0], "Reinforced parts", "Supplementary device";
+	mes "[Mass Charleston]";
+	mes "Which part of " + .@job_aft$[.@s] + " do you want to select?";
+	next;
+	switch(.@s) {
+	case 0:
+		setarray .@item[0],
+			20733,	// Upgrade_Part_Engine
+			22044,	// Upgrade_Part_Booster
+			2996;	// Upgrade_Part_Gun_Barrel
+		break;
+	case 1:
+		setarray .@item[0],
+			20732,	// Supplement_Part_Con
+			22043,	// Supplement_Part_Agi
+			2995;	// Supplement_Part_Dex
+		break;
+	default:
+		mes "[Mass Charleston]";
+		mes "I'll see you next time!";
+		close;
+	}
+	// custom translation from here
+	.@index = select( "Quit.", getitemname(.@item[0]) + " (garment)", getitemname(.@item[1]) + " (Shoes)", getitemname(.@item[2]) + " (Accessory)" ) - 2;
+	if (.@index == -1) {
+		mes "[Mass Charleston]";
+		mes "I'll see you next time!";
+		close3;
+	}
+	if (countitem(6752) < 10) {
+		mes "[Mass Charleston]";
+		mes "If you find enough Charleston parts, can you come to me again?";
+		close3;
+	}
+	delitem 6752,10;	// Charleston_Parts
+	getitem .@item[.@index],1;
+	mes "[Mass Charleston]";
+	mes "Exchanged 10 " + getitemname(6752) + " for " + .@job_aft$[.@s] + ". If you find more part, come to me again!";
+	close3;
+}
+
+verus04,71,106,5	script	Mass Charleston#2	4_F_CHARLESTON01,{
+	disable_items;
+	if (!checkweight(1201,1)) {
+		mes "You have too many types of items. Lighten your inventory first.";
+		close;
+	}
+	if ((MaxWeight - Weight) < 10000) {
+		mes "The items in your inventory are weighing you down. Lighten your weight first.";
+		close;
+	}
+	cutin "dalle01.bmp",2;
+	mes "[Mass Charleston]";
+	mes "I can upgrade the Charleston Factory products. Let me know if you're interested.";
+	next;
+	switch( select( "More information.", "Add abilities to your product.", "Reset product." ) ) {
+	case 1:
+		mes "[Mass Charleston]";
+		mes "Each Upgrade/resetting attempt costs 100,000 zeny and 1 Charleston Component.";
+		next;
+		mes "[Mass Charleston]";
+		mes "I also provide a wider selection of Upgrade options for Charleston Equipment at ^ff0000+9^000000 or above.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Rest assured, my Upgrade technology does not involve accidental damage on the item's Upgrade level or equipped cards.";
+		close3;
+	case 2:
+		.@type_action = 1;
+		.@string$ = "Upgrading";
+		break;
+	case 3:
+		.@type_action = 2;
+		.@string$ = "Resetting";
+		break;
+	}
+	if (Zeny < 100000 || countitem(6752) < 1) {
+		mes "[Mass Charleston]";
+		mes "" + .@string$ + " a Charleston product costs 1 Charleston Component and 100,000 zeny. Please know that all the expenses go into " + strtolower(.@string$) + " your product.";
+		close3;
+	}
+	mes "[Mass Charleston]";
+	mes "Please make sure you're equipped with the Equipment you want to upgrade.";
+	next;
+	.@s = select( "Let me go equip it.", "Footgear", "Garment", "Clothes", "Accessory" ) - 2;
+	if (.@s == -1) {
+		mes "[Mass Charleston]";
+		mes "Sure, please come back after you do.";
+		close3;
+	}
+	if (Zeny < 100000 || countitem(6752) < 1) {
+		mes "[Mass Charleston]";
+		mes "Things needed for commodity upgrades seem inadequate!";
+		close3;
+	}
+	setarray .@eq_num[0], EQI_SHOES, EQI_GARMENT, EQI_ARMOR, EQI_ACC_R;
+
+	.@part = .@eq_num[.@s];
+	.@item_id = getequipid(.@part);
+	.@refine = getequiprefinerycnt(.@part);
+	setarray .@card_saved[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
+	copyarray .@card[0], .@card_saved[0], 4;
+
+	switch(.@item_id) {
+	case -1:
+		mes "[Mass Charleston]";
+		mes "Because it is a customized upgrade be sure to wear equipment.";
+		close3;
+	case 15111:	// Upgrade_Part_Plate
+		.@en_type = 3;
+		.@en_type_9 = 1;
+		.@max_slot = 1;
+		break;
+	case 20733:	// Upgrade_Part_Engine
+		.@en_type = 4;
+		.@en_type_9 = 5;
+		.@max_slot = 1;
+		break;
+	case 22044:	// Upgrade_Part_Booster
+		.@en_type = 6;
+		.@en_type_9 = 7;
+		.@max_slot = 1;
+		break;
+	case 2996:	// Upgrade_Part_Gun_Barrel
+		.@en_type = 8;
+		.@en_type_9 = 8;
+		.@max_slot = 2;
+		break;
+	case 15110:	// Supplement_Part_Str
+		.@en_type = 3;
+		.@en_type_9 = 2;
+		.@max_slot = 1;
+		break;
+	case 20732:	// Supplement_Part_Con
+		.@en_type = 4;
+		.@en_type_9 = 5;
+		.@max_slot = 1;
+		break;
+	case 22043:	// Supplement_Part_Agi
+		.@en_type = 6;
+		.@en_type_9 = 7;
+		.@max_slot = 1;
+		break;
+	case 2995:	// Supplement_Part_Dex
+		.@en_type = 8;
+		.@en_type_9 = 8;
+		.@max_slot = 2;
+		break;
+	default:
+		mes "[Mass Charleston]";
+		mes "^990099" + getequipname(.@part) + "^000000??";
+		mes "I'm not interested in this Equipment.";
+		close3;
+	}
+
+	switch(.@type_action) {
+	case 1:	// Add abilities
+		if (.@refine >= 9) {
+			setarray .@menu_en_type$[1],
+				"Attack enhancement",
+				"Defense enhancement",
+				"Acceleration enhancements",
+				"Garment upgrade",
+				"Advanced Garment upgrade",
+				"Shoes upgrade",
+				"Advanced Shoes upgrade",
+				"Accessory upgrade";
+			if (.@menu_en_type$[.@en_type] == "" || .@menu_en_type$[.@en_type_9] == "") {
+				mes "[Mass Charleston]";
+				mes "Something's not right!";
+				close3;
+			}
+			mes "[Mass Charleston]";
+			mes "This is a considerable level of enhanced equipment, this type can give enhanced expansion performance, choose from the following series of desirable to strengthen it!";
+			next;
+			if (select( .@menu_en_type$[.@en_type], .@menu_en_type$[.@en_type_9] ) == 2)
+				.@en_type = .@en_type_9;
+		}
+		if (.@card[3] < 1 && .@max_slot < 4) {
+			.@slot = 4;
+			mes "[Mass Charleston]";
+			mes "I'll be Upgrading the first ability. The existing Upgrade level and cards will not be damaged. Do you want to continue?";
+			next;
+			if (select( "I'll come back later.", "Continue." ) == 1) {
+				mes "[Mass Charleston]";
+				mes "No problem. Come back if you change your mind.";
+				close3;
+			}
+		}
+		else if (.@card[2] < 1 && .@max_slot < 3) {
+			.@slot = 3;
+			mes "[Mass Charleston]";
+			mes "I'll be Upgrading the second ability. The existing Upgrade level and cards will not be damaged.";
+			next;
+			mes "[Mass Charleston]";
+			mes "Though there is a slight chance of failure, in which case the existing Upgrade level will be reset. What would you like to do?";
+			next;
+			if (select( "I'll come back later.", "Continue." ) == 1) {
+				mes "[Mass Charleston]";
+				mes "No problem. Come back if you change your mind.";
+				close3;
+			}
+		}
+		else if (.@card[1] < 1 && .@max_slot < 2) {
+			.@slot = 2;
+			mes "[Mass Charleston]";
+			mes "I'll be Upgrading the 3rd ability. This highest Upgrade stage incurs a  chance of ^990000destroying the Equipment or resetting its existing Upgrade level.^000000 Do you want to continue?";
+			next;
+			if (select( "I'll come back later.", "Continue." ) == 1) {
+				mes "[Mass Charleston]";
+				mes "No problem. Come back if you change your mind.";
+				close3;
+			}
+		}
+		else if (.@card[0] < 1 && .@max_slot < 1)
+			.@slot = 1;
+		else {
+			cutin "dalle02.bmp",2;
+			mes "[Mass Charleston]";
+			mes "This Equipment is Upgraded to the maximum level. Please bring something else.";
+			close3;
+		}
+		switch(.@en_type) {
+		case 1:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 300;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4700;	// Strength1
+			else if (.@r < 21) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 36) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 51) .@en_name = 4811;	// Fighting_Spirit1
+			else if (.@r < 61) .@en_name = 4701;	// Strength2
+			else if (.@r < 71) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 86) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 101) .@en_name = 4810;	// Fighting_Spirit2
+			else if (.@r < 111) .@en_name = 4700;	// Strength1
+			else if (.@r < 121) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 132) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 143) .@en_name = 4811;	// Fighting_Spirit1
+			else if (.@r < 151) .@en_name = 4701;	// Strength2
+			else if (.@r < 159) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 167) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 175) .@en_name = 4810;	// Fighting_Spirit2
+			else if (.@r < 182) .@en_name = 4702;	// Strength3
+			else if (.@r < 189) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 190) .@en_name = 4834;	// Expert_Archer3
+			else if (.@r < 191) .@en_name = 4809;	// Fighting_Spirit3
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 207) .@en_name = 4700;	// Strength1
+			else if (.@r < 213) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 221) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 229) .@en_name = 4811;	// Fighting_Spirit1
+			else if (.@r < 238) .@en_name = 4701;	// Strength2
+			else if (.@r < 247) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 260) .@en_name = 4810;	// Fighting_Spirit2
+			else if (.@r < 273) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 280) .@en_name = 4702;	// Strength3
+			else if (.@r < 287) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 289) .@en_name = 4834;	// Expert_Archer3
+			else if (.@r < 291) .@en_name = 4809;	// Fighting_Spirit3
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 2:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4740;	// Vitality1
+			else if (.@r < 21) .@en_name = 4791;	// Def3
+			else if (.@r < 36) .@en_name = 4933;	// Tolerance_Not1
+			else if (.@r < 51) .@en_name = 4861;	// MHP1
+			else if (.@r < 61) .@en_name = 4741;	// Vitality2
+			else if (.@r < 71) .@en_name = 4792;	// Def6
+			else if (.@r < 86) .@en_name = 4934;	// Tolerance_Not2
+			else if (.@r < 101) .@en_name = 4862;	// MHP2
+			else if (.@r < 111) .@en_name = 4740;	// Vitality1
+			else if (.@r < 121) .@en_name = 4791;	// Def3
+			else if (.@r < 132) .@en_name = 4933;	// Tolerance_Not1
+			else if (.@r < 143) .@en_name = 4861;	// MHP1
+			else if (.@r < 151) .@en_name = 4741;	// Vitality2
+			else if (.@r < 159) .@en_name = 4792;	// Def6
+			else if (.@r < 167) .@en_name = 4934;	// Tolerance_Not2
+			else if (.@r < 173) .@en_name = 4862;	// MHP2
+			else if (.@r < 179) .@en_name = 4742;	// Vitality3
+			else if (.@r < 185) .@en_name = 4793;	// Def9
+			else if (.@r < 188) .@en_name = 4935;	// Tolerance_Not3
+			else if (.@r < 191) .@en_name = 4867;	// MHP3
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 207) .@en_name = 4740;	// Vitality1
+			else if (.@r < 213) .@en_name = 4791;	// Def3
+			else if (.@r < 221) .@en_name = 4933;	// Tolerance_Not1
+			else if (.@r < 229) .@en_name = 4861;	// MHP1
+			else if (.@r < 238) .@en_name = 4741;	// Vitality2
+			else if (.@r < 247) .@en_name = 4792;	// Def6
+			else if (.@r < 258) .@en_name = 4934;	// Tolerance_Not2
+			else if (.@r < 269) .@en_name = 4862;	// MHP2
+			else if (.@r < 276) .@en_name = 4742;	// Vitality3
+			else if (.@r < 283) .@en_name = 4793;	// Def9
+			else if (.@r < 287) .@en_name = 4867;	// MHP3
+			else if (.@r < 291) .@en_name = 4935;	// Tolerance_Not3
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 3:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4860;	// Evasion3
+			else if (.@r < 21) .@en_name = 4750;	// Luck1
+			else if (.@r < 36) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 51) .@en_name = 4730;	// Agility1
+			else if (.@r < 61) .@en_name = 4762;	// Evasion6
+			else if (.@r < 71) .@en_name = 4751;	// Luck2
+			else if (.@r < 86) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 101) .@en_name = 4731;	// Agility2
+			else if (.@r < 111) .@en_name = 4860;	// Evasion3
+			else if (.@r < 121) .@en_name = 4750;	// Luck1
+			else if (.@r < 132) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 143) .@en_name = 4730;	// Agility1
+			else if (.@r < 151) .@en_name = 4762;	// Evasion6
+			else if (.@r < 159) .@en_name = 4751;	// Luck2
+			else if (.@r < 166) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 173) .@en_name = 4731;	// Agility2
+			else if (.@r < 180) .@en_name = 4763;	// Evasion12
+			else if (.@r < 187) .@en_name = 4752;	// Luck3
+			else if (.@r < 191) .@en_name = 4732;	// Agility3
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 207) .@en_name = 4860;	// Evasion3
+			else if (.@r < 213) .@en_name = 4750;	// Luck1
+			else if (.@r < 221) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 229) .@en_name = 4730;	// Agility1
+			else if (.@r < 239) .@en_name = 4762;	// Evasion6
+			else if (.@r < 249) .@en_name = 4751;	// Luck2
+			else if (.@r < 261) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 273) .@en_name = 4731;	// Agility2
+			else if (.@r < 280) .@en_name = 4763;	// Evasion12
+			else if (.@r < 287) .@en_name = 4752;	// Luck3
+			else if (.@r < 291) .@en_name = 4732;	// Agility3
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 4:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 8) .@en_name = 4700;	// Strength1
+			else if (.@r < 17) .@en_name = 4701;	// Strength2
+			else if (.@r < 24) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 33) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 40) .@en_name = 4730;	// Agility1
+			else if (.@r < 47) .@en_name = 4731;	// Agility2
+			else if (.@r < 54) .@en_name = 4740;	// Vitality1
+			else if (.@r < 63) .@en_name = 4741;	// Vitality2
+			else if (.@r < 69) .@en_name = 4750;	// Luck1
+			else if (.@r < 77) .@en_name = 4751;	// Luck2
+			else if (.@r < 83) .@en_name = 4710;	// Inteligence1
+			else if (.@r < 91) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 101) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 111) .@en_name = 4700;	// Strength1
+			else if (.@r < 121) .@en_name = 4701;	// Strength2
+			else if (.@r < 131) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 141) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 149) .@en_name = 4730;	// Agility1
+			else if (.@r < 158) .@en_name = 4731;	// Agility2
+			else if (.@r < 164) .@en_name = 4740;	// Vitality1
+			else if (.@r < 170) .@en_name = 4741;	// Vitality2
+			else if (.@r < 177) .@en_name = 4750;	// Luck1
+			else if (.@r < 184) .@en_name = 4751;	// Luck2
+			else if (.@r < 187) .@en_name = 4710;	// Inteligence1
+			else if (.@r < 190) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 192) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 207) .@en_name = 4700;	// Strength1
+			else if (.@r < 213) .@en_name = 4701;	// Strength2
+			else if (.@r < 220) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 227) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 237) .@en_name = 4730;	// Agility1
+			else if (.@r < 247) .@en_name = 4731;	// Agility2
+			else if (.@r < 257) .@en_name = 4740;	// Vitality1
+			else if (.@r < 267) .@en_name = 4741;	// Vitality2
+			else if (.@r < 271) .@en_name = 4750;	// Luck1
+			else if (.@r < 276) .@en_name = 4751;	// Luck2
+			else if (.@r < 281) .@en_name = 4710;	// Inteligence1
+			else if (.@r < 286) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 291) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 5:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 9) .@en_name = 4701;	// Strength2
+			else if (.@r < 16) .@en_name = 4702;	// Strength3
+			else if (.@r < 25) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 32) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 41) .@en_name = 4731;	// Agility2
+			else if (.@r < 46) .@en_name = 4732;	// Agility3
+			else if (.@r < 55) .@en_name = 4741;	// Vitality2
+			else if (.@r < 62) .@en_name = 4742;	// Vitality3
+			else if (.@r < 70) .@en_name = 4751;	// Luck2
+			else if (.@r < 76) .@en_name = 4752;	// Luck3
+			else if (.@r < 84) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 90) .@en_name = 4712;	// Inteligence3
+			else if (.@r < 95) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 101) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 111) .@en_name = 4701;	// Strength2
+			else if (.@r < 121) .@en_name = 4702;	// Strength3
+			else if (.@r < 131) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 141) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 149) .@en_name = 4731;	// Agility2
+			else if (.@r < 157) .@en_name = 4732;	// Agility3
+			else if (.@r < 163) .@en_name = 4741;	// Vitality2
+			else if (.@r < 169) .@en_name = 4742;	// Vitality3
+			else if (.@r < 176) .@en_name = 4751;	// Luck2
+			else if (.@r < 183) .@en_name = 4752;	// Luck3
+			else if (.@r < 185) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 187) .@en_name = 4712;	// Inteligence3
+			else if (.@r < 189) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 191) .@en_name = 4834;	// Expert_Archer3
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 207) .@en_name = 4701;	// Strength2
+			else if (.@r < 213) .@en_name = 4702;	// Strength3
+			else if (.@r < 220) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 227) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 237) .@en_name = 4731;	// Agility2
+			else if (.@r < 247) .@en_name = 4732;	// Agility3
+			else if (.@r < 257) .@en_name = 4741;	// Vitality2
+			else if (.@r < 261) .@en_name = 4742;	// Vitality3
+			else if (.@r < 266) .@en_name = 4751;	// Luck2
+			else if (.@r < 271) .@en_name = 4752;	// Luck3
+			else if (.@r < 276) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 281) .@en_name = 4712;	// Inteligence3
+			else if (.@r < 286) .@en_name = 4832;	// Expert_Archer1
+			else if (.@r < 291) .@en_name = 4833;	// Expert_Archer2
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 6:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4700;	// Strength1
+			else if (.@r < 21) .@en_name = 4701;	// Strength2
+			else if (.@r < 31) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 41) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 51) .@en_name = 4730;	// Agility1
+			else if (.@r < 61) .@en_name = 4731;	// Agility2
+			else if (.@r < 71) .@en_name = 4740;	// Vitality1
+			else if (.@r < 81) .@en_name = 4741;	// Vitality2
+			else if (.@r < 91) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 101) .@en_name = 4815;	// Spell1
+			else if (.@r < 111) .@en_name = 4700;	// Strength1
+			else if (.@r < 121) .@en_name = 4701;	// Strength2
+			else if (.@r < 132) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 143) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 151) .@en_name = 4730;	// Agility1
+			else if (.@r < 159) .@en_name = 4731;	// Agility2
+			else if (.@r < 169) .@en_name = 4740;	// Vitality1
+			else if (.@r < 179) .@en_name = 4741;	// Vitality2
+			else if (.@r < 185) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 191) .@en_name = 4815;	// Spell1
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 209) .@en_name = 4700;	// Strength1
+			else if (.@r < 217) .@en_name = 4701;	// Strength2
+			else if (.@r < 225) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 233) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 244) .@en_name = 4730;	// Agility1
+			else if (.@r < 255) .@en_name = 4731;	// Agility2
+			else if (.@r < 265) .@en_name = 4740;	// Vitality1
+			else if (.@r < 275) .@en_name = 4741;	// Vitality2
+			else if (.@r < 283) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 291) .@en_name = 4815;	// Spell1
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 7:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 200;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 101;
+				.@en_brk2 = 310;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4702;	// Strength3
+			else if (.@r < 21) .@en_name = 4701;	// Strength2
+			else if (.@r < 31) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 41) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 51) .@en_name = 4732;	// Agility3
+			else if (.@r < 61) .@en_name = 4731;	// Agility2
+			else if (.@r < 71) .@en_name = 4742;	// Vitality3
+			else if (.@r < 81) .@en_name = 4741;	// Vitality2
+			else if (.@r < 86) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 91) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 96) .@en_name = 4815;	// Spell1
+			else if (.@r < 101) .@en_name = 4814;	// Spell2
+			else if (.@r < 111) .@en_name = 4702;	// Strength3
+			else if (.@r < 121) .@en_name = 4701;	// Strength2
+			else if (.@r < 132) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 143) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 151) .@en_name = 4732;	// Agility3
+			else if (.@r < 159) .@en_name = 4731;	// Agility2
+			else if (.@r < 169) .@en_name = 4742;	// Vitality3
+			else if (.@r < 179) .@en_name = 4741;	// Vitality2
+			else if (.@r < 182) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 185) .@en_name = 4815;	// Spell1
+			else if (.@r < 188) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 191) .@en_name = 4814;	// Spell2
+			else if (.@r < 201) .@en_name = 0;
+			else if (.@r < 209) .@en_name = 4702;	// Strength3
+			else if (.@r < 217) .@en_name = 4701;	// Strength2
+			else if (.@r < 225) .@en_name = 4722;	// Dexterity3
+			else if (.@r < 233) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 244) .@en_name = 4732;	// Agility3
+			else if (.@r < 255) .@en_name = 4731;	// Agility2
+			else if (.@r < 265) .@en_name = 4742;	// Vitality3
+			else if (.@r < 275) .@en_name = 4741;	// Vitality2
+			else if (.@r < 279) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 283) .@en_name = 4815;	// Spell1
+			else if (.@r < 287) .@en_name = 4872;	// Attack_Delay_2
+			else if (.@r < 291) .@en_name = 4814;	// Spell2
+			else if (.@r < 296) .@en_name = 0;
+			else if (.@r < 301) .@en_name = 9;
+			else .@en_name = 0;
+			break;
+		case 8:
+			if (.@slot == 4) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 100;
+			}
+			else if (.@slot == 3) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 111;
+			}
+			else if (.@slot == 2) {
+				.@en_brk1 = 1;
+				.@en_brk2 = 111;
+			}
+			else {
+				mes "[Mass Charleston]";
+				mes "An unknown error has occurred.";
+				close3;
+			}
+			.@r = rand( .@en_brk1, .@en_brk2 );
+			if (.@r < 11) .@en_name = 4700;	// Strength1
+			else if (.@r < 21) .@en_name = 4701;	// Strength2
+			else if (.@r < 31) .@en_name = 4720;	// Dexterity1
+			else if (.@r < 41) .@en_name = 4721;	// Dexterity2
+			else if (.@r < 50) .@en_name = 4730;	// Agility1
+			else if (.@r < 59) .@en_name = 4731;	// Agility2
+			else if (.@r < 69) .@en_name = 4740;	// Vitality1
+			else if (.@r < 79) .@en_name = 4741;	// Vitality2
+			else if (.@r < 89) .@en_name = 4710;	// Inteligence1
+			else if (.@r < 99) .@en_name = 4711;	// Inteligence2
+			else if (.@r < 100) .@en_name = 4869;	// Attack_Delay_1
+			else if (.@r < 101) .@en_name = 4815;	// Spell1
+			else .@en_name = 0;
+			break;
+		default:
+			mes "[Mass Charleston]";
+			mes "An unknown error has occurred.";
+			close3;
+		}
+		if (Zeny < 100000 || countitem(6752) < 1) {
+			mes "[Mass Charleston]";
+			mes "Things needed for commodity upgrades seem inadequate!";
+			close3;
+		}
+
+		// anti-hack
+		if (callfunc("F_IsEquipIDHack", .@part, .@item_id) ||
+				callfunc("F_IsEquipCardHack", .@part, .@card_saved[0], .@card_saved[1], .@card_saved[2], .@card_saved[3]) ||
+				callfunc("F_IsEquipRefineHack", .@part, .@refine)) {
+			mes "[Mass Charleston]";
+			mes "An unknown error has occurred.";
+			close3;
+		}
+
+		.@card[.@slot-1] = .@en_name;
+		delitem 6752,1;	// Charleston_Parts
+		Zeny -= 100000;
+		delequip .@part;
+
+		switch(.@en_name) {
+		case 0:
+			cutin "dalle02.bmp",2;
+			specialeffect2 EF_SHIELDCHARGE;
+			mes "[Mass Charleston]";
+			mes "Since the balance of power does not match, the given existing ability has been destroyed. It is unfortunate but please try again next time.";// unknown text
+			getitem2 .@item_id,1,1,.@refine,0, .@card[0], .@card[1], .@card[2], .@card[3];
+			close3;
+		case 9:
+			cutin "dalle04.bmp",2;
+			specialeffect2 EF_SUI_EXPLOSION;
+			mes "[Mass Charleston]";
+			mes "This!";
+			mes "I'm sorry but the equipment has been destroyed.";// unknown text
+			close3;
+		default:
+			specialeffect2 EF_REPAIRWEAPON;
+			mes "[Mass Charleston]";
+			mes "^990000Socket" + .@slot + "^000000 will be Upgrade.";
+			getitem2 .@item_id,1,1,.@refine,0, .@card[0], .@card[1], .@card[2], .@card[3];
+			close3;
+		}
+	case 2:	// Reset
+		// Note: the NPC doesn't check if the equipment is already enhanced
+		if (F_IsCharm(.@card[0]) == true) .@card[0] = 0;
+		if (F_IsCharm(.@card[1]) == true) .@card[1] = 0;
+		if (F_IsCharm(.@card[2]) == true) .@card[2] = 0;
+		if (F_IsCharm(.@card[3]) == true) .@card[3] = 0;
+		specialeffect2 EF_REPAIRWEAPON;
+		mes "[Mass Charleston]";
+		mes "Reset the product's abilities.";
+		delitem 6752,1;	// Charleston_Parts
+		Zeny -= 100000;
+		delequip .@part;
+		getitem2 .@item_id,1,1,.@refine,0, .@card[0], .@card[1], .@card[2], .@card[3];
+		close3;
+	dfault:
+		mes "[Mass Charleston]";
+		mes "An unknown error has occurred.";
+		close3;
+	}
+	end;
+}
+
+verus04,63,112,4	script	Mass Charleston#3	4_F_CHARLESTON01,{
+	if (!checkweight(1201,1) || (MaxWeight - Weight) < 1000) {
+		mes "^ff0000You have carried too many items, please reduce it and come back later.^000000";
+		close;
+	}
+	cutin "dalle03.bmp",2;
+	mes "[Mass Charleston]";
+	mes "Eh, do I have a customer? Activating Salesman mode...";
+	next;
+	cutin "dalle01.bmp",2;
+	mes "[Mass Charleston]";
+	mes "Charleston Factory's best-selling items: ^FF0000Upgrade Part Plate^000000 and ^FF0000Supplement Part Str^000000 now on sale!";
+	next;
+	mes "[Mass Charleston]";
+	mes "For only ^FF00003,999,999^000000 zeny! Get yourself the ultra-performance action gears!";
+	next;
+	mes "[Mass Charleston]";
+	mes "Also available is the ^FF0000Pilebuncker^000000 ^FF0000Upgrade^000000 service!";
+	next;
+	switch( select( "Talk.", "Exchange Upgrade Parts.", "Exchange Supplementary devices.", "Upgrade Pilebuncker." ) ) {
+	case 1:
+		if (isbegin_quest(13186) == 0) {
+			mes "[Mass Charleston]";
+			mes "The Charleston Factory shut down, but its technology and products remain with us.";
+			next;
+			mes "[Mass Charleston]";
+			mes "Oh, haven't you heard the news? Oops, my bad. Please forget I said that.";
+			close3;
+		}
+		cutin "dalle03.bmp",2;
+		mes "[Mass Charleston]";
+		mes "I'm a mass version Charleston. I wasn't even given a serial number. Who knows how many copies of me were made? It could be a hundred, maybe even a thousand.";
+		next;
+		mes "[Mass Charleston]";
+		mes "The original Charleston is standing over there, but...";
+		next;
+		mes "[Mass Charleston]";
+		mes "By the time Charlestons 1 and 2 escaped the factory, they're severely damaged. The battle that took place that day was incredible.";
+		next;
+		mes "[Mass Charleston]";
+		mes "I can still remember Charlestons 1 and 2 destroying Dr. Ve's numerous creatures like it was yesterday.";
+		next;
+		mes "[Mass Charleston]";
+		mes "They also destroyed the mass version Charlestons modified by Dr. Ve to his bidding.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Of course there are others--like us here working on product upgrades--that were lucky enough to escape Dr. Ve's clutches and meet Charleston 1, who saved us all.";
+		next;
+		mes "[Mass Charleston]";
+		mes "After escaping with the modified Charleston 3, we came here.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Just so you know, this place was already in shambles when we arrived. We had nothing to do with its destruction. Perhaps...";
+		next;
+		mes "[Mass Charleston]";
+		mes "Sorry I sidetracked. Anyway, this is the problem.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Charlestons 1 and 2 were destroyed to a point of impairment. They tried to repair each other, to no avail.";
+		next;
+		mes "[Mass Charleston]";
+		mes "They realized they're damaged beyond repair. They salvaged however many parts they could, and built one body with one OS.";
+		next;
+		mes "[Mass Charleston]";
+		mes "And that's the newly built body. They blamed themselves for the destruction of the factory, and wanted to fix it. I'm afraid their data is corrupted or missing important memory.";
+		next;
+		mes "[Mass Charleston]";
+		mes "The characteristics of the data show more traits of Charleston 2, while the access method of the OS is more similar to that of Charleston 1. Charleston 1 always was the more sentimental one.";
+		next;
+		mes "[Mass Charleston]";
+		mes "I don't know if the new Charleston is Charleston 1 or 2. I can't even tell what it misses or remembers the most.";
+		next;
+		mes "[Mass Charleston]";
+		mes "She keeps blaming herself for losing her data, for letting down her friends. Every time we try to console her,";
+		next;
+		mes "[Mass Charleston]";
+		mes "she would say she doesn't have the heart or brain to remember or know. I wonder if she knows";
+		next;
+		mes "[Mass Charleston]";
+		mes "that the memories of Humans fade and get distorted or glorified with time.";
+		next;
+		mes "[Mass Charleston]";
+		mes "And that Humans learn from their mistakes and failures. I read that from those paper memory devices called ^FF0000books^000000 in the factory.";
+		next;
+		mes "[Mass Charleston]";
+		mes "There was a small study in the ^FF0000south wing of the factory^000000. Later, it was turned into a robot development room.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Maybe the Charleston is more like the Humans than the rest of us. I just hope she doesn't have to be so sad.";
+		next;
+		mes "[Mass Charleston]";
+		mes "I feel so congested in the OS that I ranted. Perhaps I need to defragment my memory.";
+		close3;
+	case 2:
+		mes "[Mass Charleston]";
+		mes "Upgrade Part Plate";
+		mes "Class: Armor, indestructible.";
+		mes "-10% damage from Small and Medium monsters.";
+		mes "-10% damage from Large monsters when Upgraded to +7.";
+		mes "Additional -5% damage from Small and Medium monsters when Upgraded to +9.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Weight: 300";
+		mes "Required Level: 100";
+		callsub S_Buy, 15111;	// Upgrade_Part_Plate
+	case 3:
+		mes "[Mass Charleston]";
+		mes "Supplement Part Str";
+		mes "ATK+ 5%!";
+		mes "Additional ATK +1% every 4 Upgrade levels.";
+		mes "Use with Vitality/Agility/Dexterity supplementary devices for best results.";
+		next;
+		mes "[Mass Charleston]";
+		mes "Weight: 200";
+		mes "Required Level: 100";
+		callsub S_Buy, 15110;	// Supplement_Part_Str
+	case 4:
+		mes "[Mass Charleston]";
+		mes "The last masterpiece of the Charleston Factory! You'll never find such fine Equipment anywhere else.";
+		next;
+		mes "[Mass Charleston]";
+		mes "To Upgrade Pilebuncker,";
+		mes "^FF00001 Pilebuncker^000000,";
+		mes "^FF0000300 Dented Iron Plates^000000,";
+		mes "and ^FF000015 Broken Engines^000000 are required.";
+		next;
+		switch( select( "Pilebuncker S", "Pilebuncker P", "Pilebuncker T" ) ) {
+		case 1:
+			mes "[Mass Charleston]";
+			mes "Pilebuncker S";
+			mes "Class: Blunt Weapon";
+			mes "ATK: 400";
+			mes "Attack Speed bonus every 2 Upgrade levels.";
+			next;
+			mes "[Mass Charleston]";
+			mes "Weight: 300";
+			mes "Weapon Level: 4";
+			mes "Required Level: 130";
+			mes "Mechanic only. Comes with 1 Card socket.";
+			.@item_id = 16030;	// Pilebuncker_S
+			break;
+		case 2:
+			mes "[Mass Charleston]";
+			mes "Pilebuncker P";
+			mes "Class: Blunt Weapon";
+			mes "ATK: 450";
+			mes "ATK +5 every Upgrade level.";
+			next;
+			mes "[Mass Charleston]";
+			mes "Weight: 400";
+			mes "Weapon Level: 4";
+			mes "Required Level: 130";
+			mes "Mechanic only.";
+			.@item_id = 16031;	// Pilebuncker_P
+			break;
+		case 3:
+			mes "[Mass Charleston]";
+			mes "Pilebuncker T";
+			mes "Class: Blunt Weapon";
+			mes "ATK: 400";
+			mes "SP cost -1% every Upgrade level.";
+			next;
+			mes "[Mass Charleston]";
+			mes "Weight: 350";
+			mes "Weapon Level: 4";
+			mes "Required Level: 130";
+			mes "Mechanic only. Comes with 1 Card socket.";
+			.@item_id = 16032;	// Pilebuncker_T
+			break;
+		}
+		break;
+	}
+	next;
+	mes "[Mass Charleston]";
+	mes "Do you really want to Upgrade ^FF0000" + getitemname(.@item_id) + "^000000?";
+	next;
+	if (select( "I suggest you reconsider.", "Buy." ) == 1) {
+		mes "[Mass Charleston]";
+		mes "It's a good buy, but you still need to make your decision carefully.";
+		close;
+	}
+	if (countitem(6751) > 299 && countitem(6750) > 14 && countitem(1549) > 0) {
+		mes "[Mass Charleston]";
+		mes "You won't regret it! She's a Charleston factory!";
+		delitem 6751,300;	// Distorted_Iron_Plate
+		delitem 6750,15;	// Wrong_Engine
+		delitem 1549,1;		// Pilebuncker
+		getitem .@item_id,1;
+		close3;
+	}
+	mes "[Mass Charleston]";
+	mes "Not enough materials for the Upgrade.";
+	close3;
+
+S_Buy:
+	.@item_id = getarg(0);
+	mes "^FF0000Mechanic only^000000";
+	mes "^FF0000Price: 3,999,999 zeny^000000";
+	next;
+	mes "[Mass Charleston]";
+	mes "Do you really want to buy ^FF0000" + getitemname(.@item_id) + "^000000?";
+	next;
+	if (select( "I suggest you reconsider.", "Buy." ) == 1) {
+		mes "[Mass Charleston]";
+		mes "It's a good buy, but you still need to make your decision carefully.";
+		close3;
+	}
+	//if (Zeny >= 3999998) {// typo?
+	if (Zeny >= 3999999) {
+		mes "[Mass Charleston]";
+		mes "You won't regret it! She's a Charleston factory!";
+		Zeny -= 3999999;
+		getitem .@item_id,1;
+		close3;
+	}
+	mes "[Mass Charleston]";
+	mes "Good commodity value is not uncommon, please confirm your pocket depth!";
+	close3;
+}
+
+
+// Excellion
+verus04,161,222,4	script	Grandpa picking up scrap iron	1_M_HOF,{
+	switch( isbegin_quest(12368) ) {
+	case 0:
+		mes "[Grandpa picking up scrap iron]";
+		mes "There are two pieces of scrap iron I see the value of not Fibonacci to pick up and sell to the recycling bin, the result is not willing to deal with me.";
+		next;
+		mes "[Grandpa picking up scrap iron]";
+		mes "Because it's not iron? Each resource recycling are not willing to buy, is nerve-racking!";
+		close;
+	case 1:
+		mes "[Grandpa picking up scrap iron]";
+		mes "Hey! Did you just talk to that piece of junk? Or am I losing my sight?";
+		close;
+	case 2:
+		mes "[Grandpa picking up scrap iron]";
+		mes "Oh, my God! That can't be sold to the Recycle Bin!";
+		close;
+	}
+}
+
+verus04,163,219,4	script	PLUTO_09#pa0829	4_SCR_AT_ROBOTS,{
+	disable_items;
+	if (checkweight(1201,1) == 0 || (MaxWeight - Weight) < 10000) {
+		mes "^ff0000You have carried too many items, please reduce it and come back later.^000000";
+		close;
+	}
+	if (isbegin_quest(12368) < 2) {
+		mes "^0000ffAlthough the LCD still dim, but does not seem to work anymore.^000000";
+		close;
+	}
+	mes "^0000ffWhen the strange dinosaur pattern appears, go to the introduction screen.^000000";
+	next;
+	mes "[PLUTO_09]";
+	mes "" + strcharinfo(0) + ",";
+	mes "Hello. How can I help you?";
+	next;
+	switch( select( "Note", "Old Fuel and Huge Metal Scrap to exchange for gear.", "Design drawings for the production of Enchantment" ) ) {
+	case 1:
+		mes "^0000ffDinosaur forward screen appears and a description of the cute girl voice.^000000";
+		next;
+		mes "[PLUTO_09]";
+		mes "This is 100 years since the genesis of the new PLUTO_09.";
+		next;
+		mes "[PLUTO_09]";
+		mes "Bring Huge Metal Scrap and Old Fuel can help you make useful to you Equipment Oh~";
+		next;
+		mes "[PLUTO_09]";
+		mes "Do you want to make enchantment equipment? You bring the tank! I can make enchant with a design for you. Oh, good luck.";
+		next;
+		mes "[PLUTO_09]";
+		mes "This is the Tyrannosaurus rex that appeared in the dinosaur fairy tale, very beautiful... (Continue to appear boring dinosaur story)";
+		next;
+		mes "^0000ffIn this introduction to the screen, presumed that the psychological state of the robot maker is extremely unstable.^000000";
+		close;
+	case 2:
+		setarray .@id[0],20773,15128; // Excelion_Wing, Excelion_Suit
+		mes "[PLUTO_09]";
+		mes "Production equipment needs ^0000ff10 Huge Metal Scrap and 5 Old Fuel^000000.";
+		next;
+		switch( select( "Quit.", "Making the " + getitemname(.@id[0]), "Making the " + getitemname(.@id[1]) ) ) {
+		case 1:
+			mes "^0000ffDinosaurs gazed at the picture here after staying a bit closed.^000000";
+			close;
+		case 2:
+			.@item_id = .@id[0];
+			break;
+		case 3:
+			.@item_id = .@id[1];
+			break;
+		}
+		if (countitem(6961) < 10 || countitem(6962) < 5) {
+			mes "[PLUTO_09]";
+			mes "I have already talked about the production equipment needs ^0000ff10 " + getitemname(6961) + " and 5 " + getitemname(6962) + "^000000, you don't have enough.";
+			close;
+		}
+		specialeffect EF_SPELLBREAKER;
+		delitem 6962,5;// OldTank
+		delitem 6961,10;// LargeScrap
+		getitem .@item_id,1;
+		mes "[PLUTO_09]";
+		mes "Your equipment is ready. Let's see if it fits.";
+		close;
+	case 3:
+		while(1) {
+			if (countitem(6962) < 5)
+				.@string$ = "^aaaaaaInsufficient fuel for making design drawings.^000000";
+			else
+				.@string$ = "Production design (^ff0000 success rate 30%^000000)";
+			mes "[PLUTO_09]";
+			mes "If you give me 5 " + getitemname(6962) + ", I can do the production of design drawings look!";
+			mes "----------";
+			mes "^0000ffLittle dinosaur running around on the screen.^000000";
+			next;
+			if (select( "Quit.", .@string$ ) == 1) {
+				mes "^0000ffIt's over after showing that the dinosaurs are stuffing themselves.^000000";
+				close;
+			}
+			.@fail = false;
+			.@reac_rnd = rand(1,10000);
+			if (.@reac_rnd < 26)		.@en_name = 6977;	// Reactor_A_STR_
+			else if (.@reac_rnd < 51)	.@en_name = 6978;	// Reactor_A_INT_
+			else if (.@reac_rnd < 251)	.@en_name = 6979;	// Reactor_A_DEF_
+			else if (.@reac_rnd < 326)	.@en_name = 6981;	// Reactor_A_ATK_
+			else if (.@reac_rnd < 401)	.@en_name = 6982;	// Reactor_A_MATK_
+			else if (.@reac_rnd < 601)	.@en_name = 6980;	// Reactor_A_AVOI_
+			else if (.@reac_rnd < 801)	.@en_name = 6983;	// Reactor_A_MHP_
+			else if (.@reac_rnd < 1001)	.@en_name = 6984;	// Reactor_A_MSP_
+			else if (.@reac_rnd < 1151)	.@en_name = 6986;	// Reactor_A_ASPD_
+			else if (.@reac_rnd < 1401)	.@en_name = 6975;	// Reactor_Cure_201_
+			else if (.@reac_rnd < 1551)	.@en_name = 6976;	// Reactor_Cure_202_
+			else if (.@reac_rnd < 1751)	.@en_name = 6973;	// Reactor_Cure_101_
+			else if (.@reac_rnd < 1851)	.@en_name = 6974;	// Reactor_Cure_102_
+			else if (.@reac_rnd < 1901)	.@en_name = 6985;	// Reactor_A_FROZ_
+			else if (.@reac_rnd < 2101)	.@en_name = 6970;	// Reactor_T_WATER_
+			else if (.@reac_rnd < 2301)	.@en_name = 6971;	// Reactor_T_GROUND_
+			else if (.@reac_rnd < 2501)	.@en_name = 6969;	// Reactor_T_FIRE_
+			else if (.@reac_rnd < 2701)	.@en_name = 6972;	// Reactor_T_WIND_
+			else if (.@reac_rnd < 2776)	.@en_name = 6966;	// Reactor_P_WATER_
+			else if (.@reac_rnd < 2851)	.@en_name = 6967;	// Reactor_P_GROUND_
+			else if (.@reac_rnd < 2926)	.@en_name = 6965;	// Reactor_P_FIRE_
+			else if (.@reac_rnd < 3001)	.@en_name = 6968;	// Reactor_P_WIND_
+			else {
+				.@fail = true;
+				.@reac_rnd2 = rand(1,13000);
+				if (.@reac_rnd2 < 2)
+					.@en_name = 969;	// Gold
+				else if (.@reac_rnd2 < 1002)
+					.@en_name = 999;	// Steel
+				else if (.@reac_rnd2 < 3002)
+					.@en_name = 998;	// Iron
+				else if (.@reac_rnd2 < 8002)
+					.@en_name = 1002;	// Iron_Ore
+				else
+					.@en_name = 7054;	// Brigan
+			}
+			if (countitem(6962) < 5)
+				mes "^0000ffThe picture shows the dinosaur silently looking at the empty bowl, it may be an error message when the material is insufficient!^000000";
+			else {
+				specialeffect EF_SPELLBREAKER;
+				delitem 6962,5;// OldTank
+				getitem .@en_name,1;
+				mes "[PLUTO_09]";
+				if (.@fail)
+					mes "What a pity, the design failed.";
+				else
+					mes "Great, the design was made.";
+			}
+			next;
+		}
+		end;
+	default:
+		mes "^0000ffA screen showing howling that a dinosaur may not understand the command.^000000";
+		close;
+	}
+	end;
+}
+
+verus04,165,217,4	script	MARS_01#pa0829	4_SCR_MT_ROBOTS,{
+	disable_items;
+	if (checkweight(1201,1) == 0 || (MaxWeight - Weight) < 10000) {
+		mes "^ff0000You have carried too many items, please reduce it and come back later.^000000";
+		close;
+	}
+	switch( isbegin_quest(12368) ) {
+	case 0:
+		mes "Blurred LCD screen may be frightened or happy and intense shaking, perhaps due to lack of power and can not complete the presentation.";
+		next;
+		if (select( "Just ignore it.", "Press every button." ) == 1) {
+			mes "It may be a pre-scrap robot that is common everywhere and doesn't require much attention.";
+			close;
+		}
+		mes "[?????]";
+		mes "Hello! I'm MARS_01, an exploration robot. Currently, I have entered hibernation mode to save power. The related functions are set as follows.";
+		next;
+		if (select( "Interrupt the machine", "Supply of fuel" ) == 1) {
+			mes "The robot re-enters hibernation mode after a faint sound.";
+			close;
+		}
+		mes "[MARS_01]";
+		mes "We are super power robot, as long as the old oil 1 will let me and the companion PLUTO has more than 90% of the power.";
+		next;
+		mes "[MARS_01]";
+		mes "If you find Old Fuel, please insert the fuel into the mouth of the bottom of the screen, so you can lift the hibernation mode.";
+		setquest 12368;	// Operate the old robot
+		close;
+	case 1:
+		if (countitem(6962) < 1) {
+			mes "[MARS_01]";
+			mes "If you find 1 " + getitemname(6962) + ", please insert the fuel into the mouth of the bottom of the screen, so you can lift the hibernation mode.";
+			close;
+		}
+		mes "Maybe we ran out of power when we went looking for fuel. should we put in the fuel?";
+		next;
+		if (select( "Quit.", "Put in the fuel" ) == 1) {
+			mes "The old robot may be running out of power and not responding at all.";
+			close;
+		}
+		mes "When the fuel is put in, the sound screen opens.";
+		npctalk "Whoa, whoa?! It moves!!!", "Grandpa picking up scrap iron";
+		next;
+		mes "[MARS_01]";
+		mes "Start the inspection system and confirm the damage of each part.";
+		next;
+		mes "[MARS_01]";
+		mes "Power meter 10%, dashboard normal, body skeleton 13%, perform mining operations well.";
+		next;
+		mes "[MARS_01]";
+		mes "Pluto_09 began to inject energy for mining auxiliary robot.";
+		npctalk "Energy response confirmed. It's working.", "PLUTO_09#pa0829";
+		next;
+		mes "[MARS_01]";
+		mes "Thank you for getting me started, I will reset the person who started me to be a manager.";
+		next;
+		select("Enter a name.");
+		mes "[MARS_01]";
+		mes "" + strcharinfo(0) + ",";
+		mes "Hello! The fuel has been fully charged.";
+		delitem 6962,1;// OldTank
+		completequest 12368;
+		close;
+	case 2:
+		break;
+	}
+	mes "[MARS_01]";
+	mes "" + strcharinfo(0) + ",";
+	mes "Hello! Can I help you?";
+	next;
+	switch( select( "Note", "Enhanced " + getitemname(20773), "Enhanced " + getitemname(15128) ) ) {	// Excelion_Wing, Excelion_Suit
+	case 1:
+		mes "^0000ffSoon the instructions again.^000000";
+		next;
+		mes "[MARS_01]";
+		mes "While waiting for the new owner, we continue to update to the latest version.";
+		next;
+		mes "[MARS_01]";
+		mes "If you bring aak Seri Wong propulsion wing, aak Seri Wong jacket equipment and strengthen the design, I will strengthen the equipment according to the design.";
+		next;
+		mes "[MARS_01]";
+		mes "According to the standard design drawings of the operation, the equipment will not be damaged during the process, but the number of maximum upgrade will change depending on the type of equipement.";
+		next;
+		mes "[MARS_01]";
+		mes "Welcome back again~";
+		close;
+	case 2:
+		.@part = EQI_GARMENT;
+		break;
+	case 3:
+		.@part = EQI_ARMOR;
+		break;
+	}
+	// <item ID required>, <item enchant ID>, <max number of this enchant on armor>, <max number of this enchant on garment>, <enchant on first slot only>
+	setarray .@list[0],
+		6965, 4970, 1,0,3,	// Reactor_P_FIRE_		Reactor_P_FIRE
+		6966, 4971, 1,0,3,	// Reactor_P_WATER_		Reactor_P_WATER
+		6967, 4972, 1,0,3,	// Reactor_P_GROUND_	Reactor_P_GROUND
+		6968, 4973, 1,0,3,	// Reactor_P_WIND_		Reactor_P_WIND
+		6969, 4974, 0,3,0,	// Reactor_T_FIRE_		Reactor_T_FIRE
+		6970, 4975, 0,3,0,	// Reactor_T_WATER_		Reactor_T_WATER
+		6971, 4976, 0,3,0,	// Reactor_T_GROUND_	Reactor_T_GROUND
+		6972, 4977, 0,3,0,	// Reactor_T_WIND_		Reactor_T_WIND
+		6973, 4978, 3,3,0,	// Reactor_Cure_101_	Reactor_Cure_101
+		6974, 4979, 3,3,0,	// Reactor_Cure_102_	Reactor_Cure_102
+		6975, 4980, 3,3,0,	// Reactor_Cure_201_	Reactor_Cure_201
+		6976, 4981, 3,3,0,	// Reactor_Cure_202_	Reactor_Cure_202
+		6977, 4982, 1,0,0,	// Reactor_A_STR_		Reactor_A_STR
+		6978, 4983, 1,0,0,	// Reactor_A_INT_		Reactor_A_INT
+		6979, 4984, 3,3,0,	// Reactor_A_DEF_		Reactor_A_DEF
+		6980, 4985, 1,1,0,	// Reactor_A_AVOI_		Reactor_A_AVOI
+		6981, 4986, 3,3,0,	// Reactor_A_ATK_		Reactor_A_ATK
+		6982, 4987, 3,3,0,	// Reactor_A_MATK_		Reactor_A_MATK
+		6983, 4988, 3,3,0,	// Reactor_A_MHP_		Reactor_A_MHP
+		6984, 4989, 3,3,0,	// Reactor_A_MSP_		Reactor_A_MSP
+		6985, 4990, 1,0,0,	// Reactor_A_FROZ_		Reactor_A_FROZ
+		6986, 4991, 1,1,0;	// Reactor_A_ASPD_		Reactor_A_ASPD
+	.@size = getarraysize(.@list);
+
+	for ( .@i = 0; .@i < .@size; .@i += 5 ) {
+		if (countitem(.@list[.@i]) < 1)
+			.@menu$ += sprintf( "^aaaaaa%s (Missing)^000000:", getitemname(.@list[.@i]) );
+		else
+			.@menu$ += sprintf( "%s:", getitemname(.@list[.@i]) );
+	}
+	mes "[MARS_01]";
+	mes "" + strcharinfo(0) + ",";
+	mes "Choose the enchant you want to use!";
+	next;
+	.@s = select("Quit.:" + .@menu$) - 2;
+	if (.@s < 0) {
+		mes "[MARS_01]";
+		mes "So far.";
+		close;
+	}
+	.@s *= 5;
+	.@item_req = .@list[.@s];
+	.@item_enchant_id = .@list[.@s+1];
+	.@first_slot_only = .@list[.@s+4];
+
+	.@equip_id = getequipid(.@part);
+	.@equip_refine = getequiprefinerycnt(.@part);
+	setarray .@card[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
+
+	if (countitem(.@item_req) < 1) {
+		mes "[MARS_01]";
+		mes "So far.";
+		close;
+	}
+	if (.@part == EQI_ARMOR)
+		.@max_num_enchant = .@list[.@s+2];
+	else if (.@part == EQI_GARMENT)
+		.@max_num_enchant = .@list[.@s+3];
+	else {
+		mes "[MARS_01]";
+		mes "Please contact the administrator.";
+		close;
+	}
+
+	// anti-hack
+	if (callfunc("F_IsEquipIDHack", .@part, .@equip_id) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3]) || callfunc("F_IsEquipRefineHack", .@part, .@equip_refine)) {
+		mes "[MARS_01]";
+		mes "Did you remove your gear?";
+		close;
+	}
+
+	if (.@card[0] > 0 && .@item_enchant_id == .@card[0]) { .@slot_sum++; }
+	if (.@card[1] > 0 && .@item_enchant_id == .@card[1]) { .@slot_sum++; }
+	if (.@card[2] > 0 && .@item_enchant_id == .@card[2]) { .@slot_sum++; }
+	if (.@card[3] > 0 && .@item_enchant_id == .@card[3]) { .@slot_sum++; }
+
+	if (.@max_num_enchant < 1) {
+		mes "[MARS_01]";
+		mes "The design you choose is incompatible with the equipment.";
+		close;
+	}
+	if (.@first_slot_only > 0 && .@card[3] != 0) {
+		mes "[MARS_01]";
+		mes "This design is only for the first time to strengthen the use, but the equipment has other performance, please use other design to strengthen it!";
+		close;
+	}
+	if (.@slot_sum >= .@max_num_enchant) {
+		mes "[MARS_01]";
+		mes "The maximum number of enchants is " + .@max_num_enchant + ". The item has reached the upper limit.";
+		close;
+	}
+	if (.@card[1] != 0) {
+		mes "[MARS_01]";
+		mes "The number of equipment has reached the limit.";
+		close;
+	}
+
+	// anti-hack
+	if (callfunc("F_IsEquipIDHack", .@part, .@equip_id) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3]) || callfunc("F_IsEquipRefineHack", .@part, .@equip_refine)) {
+		mes "[MARS_01]";
+		mes "Please pay special attention if the equipment will be removed.";
+		close;
+	}
+
+	switch( .@equip_id ) {
+	case 20773:	// Excelion_Wing
+	case 15128:	// Excelion_Suit
+		break;
+	default:
+		mes "[MARS_01]";
+		mes "The product does not have a serial number, does not meet the specifications of the product can not be strengthened.";
+		close;
+	}
+	mes "[MARS_01]^0000ff";
+	mes "Choose " + getequipname(.@part) + " + " + getitemname(.@item_req) + ",";
+	mes "^000000------------------";
+	mes "Your selected design can be upgraded to the equipment limit ^0000ff" + .@max_num_enchant + " the same design, ^000000so far, enhanced ^0000ff" + .@slot_sum + " times^000000, do you want to continue?";
+	next;
+	if (select( "I'll think about it...", "Go on." ) == 1) {
+		mes "[MARS_01]";
+		mes "Come back next time you need me~";
+		close;
+	}
+
+	// anti-hack
+	if (callfunc("F_IsEquipIDHack", .@part, .@equip_id) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3]) || callfunc("F_IsEquipRefineHack", .@part, .@equip_refine))
+		close;
+
+	if (.@card[3] == 0) {
+		.@enchant_count = 1;
+		.@card[3] = .@item_enchant_id;
+	}
+	else if (.@card[2] == 0) {
+		.@enchant_count = 2;
+		.@card[2] = .@item_enchant_id;
+	}
+	else if (.@card[1] == 0) {
+		.@enchant_count = 3;
+		.@card[1] = .@item_enchant_id;
+	}
+	else {
+		mes "[MARS_01]";
+		mes "The equipment has reached the upper limit of strengthening Hello!";
+		close;
+	}
+	specialeffect2 EF_REPAIRWEAPON;
+	mes "[MARS_01]";
+	if (.@enchant_count < 5)
+		mes "The first equipment has been upgraded ^990000" + .@enchant_count + " times^000000.";
+	else
+		mes "For additional performance equipment^990000 ^000000 upgrade.";	// never displayed
+
+	delitem .@item_req, 1;
+	delequip .@part;
+	getitem2 .@equip_id,1,1,.@equip_refine,0,.@card[0],.@card[1],.@card[2],.@card[3];
+	close;
+}

+ 101 - 0
npc/re/merchants/novice_vending_machine.txt

@@ -0,0 +1,101 @@
+//===== rAthena Script =======================================
+//= Vending Machine NPCs for Novice.
+//===== Description: ========================================= 
+//= [Walkthrough Conversion]
+//= Exchangers NPCs for Novice.
+//===== Additional Comments: =================================
+//= 1.0 Firt version. [Aleos] [Secret]
+//= 1.1 Additionnal clean-up. [Capuche]
+//============================================================
+
+-	script	novice_vending_machine#main	-1,{
+	.@storage_ticket = 7059;	// Cargo_Free_Ticket
+	.@storage_ticket_name$ = getitemname(.@storage_ticket);
+
+	mes "Vending Machine for Novices.";
+	mes "There are many buttons.";
+	next;
+	switch( select( "Manual", "Trade " + .@storage_ticket_name$, "Trade Novice equipments" ) ) {
+	case 1:
+		mes "[Exchange " + .@storage_ticket_name$ + "]";
+		mes "4 " + .@storage_ticket_name$ + " can be exchanged into 1 Free Ticket for Warp, Airship or the Cart Service, or 15 Free Ticket for Peco Ride, 1 Novice Fly Wing, 5 Novice Butterfly Wing, 30 Novice Potion.";
+		next;
+		mes "[Trade Novice Gears]";
+		mes "Armor, Hood, Sandals, Main Gauche and Guard for Novice from Criatura Academy can be exchanged into 4 " + .@storage_ticket_name$ + ".";
+		next;
+		mes "[Trade Novice Gears]";
+		mes "Novice Eggshell can be exchanged into Criatura Hair Coupon for changing your hairstyle.";
+		close;
+	case 2:
+		setarray .@exchange[0],
+			7060,1,		// Warp_Free_Ticket
+			7311,1,		// Free_Flying_Ship_Ticket
+			7061,1,		// Cart_Free_Ticket
+			7310,1,		// Free_Peco_Ticket
+			12323,15,	// N_Fly_Wing
+			12324,5,	// N_Butterfly_Wing
+			569,30;		// Novice_Potion
+		.@size = getarraysize(.@exchange);
+
+		for ( .@i = 0; .@i < .@size; .@i += 2 ) {
+			if (.@exchange[.@i+1] > 1)
+				.@menu$ += .@exchange[.@i+1] + " ";
+			.@menu$ += getitemname(.@exchange[.@i]) + ":";
+		}
+		.@s = (select(.@menu$) - 1) * 2;
+		if (countitem(.@storage_ticket) < 4) {
+			mes "The number of " + .@storage_ticket_name$ + " is insufficient to proceed with the exchange.";
+			close;
+		}
+		if (.@exchange[.@s+1] > 1)
+			.@amount$ = .@exchange[.@s+1] + " ";
+		mes "Exchanged 4 " + .@storage_ticket_name$ + " to " + .@amount$ + getitemname(.@exchange[.@s]);
+		delitem .@storage_ticket,4;
+		getitem .@exchange[.@s],.@exchange[.@s+1];
+		close;
+	case 3:
+		mes "Exchange all Novice equipments into coupons.";
+		mes "Select continue to proceed.";
+		next;
+		if (select( "Continue", "Cancel." ) == 2) {
+			mes "The trade was interrupted.";
+			close;
+		}
+		mes "Exchanging all equipment into coupons.";
+		setarray .@list[0],2352,2510,2414,1243,2112,5055;
+		.@size = getarraysize(.@list);
+		
+		for ( .@i = 0, .@i < .@size; .@i++ ) {
+			.@count = countitem(.@list[.@i]);	// note: maybe check if equipped items are skipped
+			if (.@count < 1)
+				continue;
+			switch(.@list[.@i]) {
+			case 2352:	// Novice_Plate
+			case 2510:	// Novice_Hood
+			case 2414:	// Novice_Boots
+			case 1243:	// Novice_Knife
+			case 2112:	// Novice_Guard
+				delitem .@list[.@i], .@count;
+				getitem .@storage_ticket,(4*.@count);	// Cargo_Free_Ticket
+				break;
+			case 5055:	// Novice_Egg_Cap
+				delitem .@list[.@i], .@count;
+				getitem 6593,.@count;	// Cryptura_Hair_Coupon
+				break;
+			}
+		}
+		close;
+	}
+}
+izlude_in,69,177,5	duplicate(novice_vending_machine#main)	Vending Machine for Nov#iz	2_VENDING_MACHINE1
+payon_in02,71,75,5	duplicate(novice_vending_machine#main)	Vending Machine for Nov#pay	2_VENDING_MACHINE1
+prt_church,187,27,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#prt	2_VENDING_MACHINE1
+
+// unknown facing
+alberta_in,60,52,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#alb	2_VENDING_MACHINE1
+geffen_in,158,107,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#gef	2_VENDING_MACHINE1
+moc_para01,17,37,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#para	2_VENDING_MACHINE1
+moc_prydb1,38,124,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#pryd	2_VENDING_MACHINE1
+payon_in01,59,20,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#pay2	2_VENDING_MACHINE1
+que_ng,28,73,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#que_ng1	2_VENDING_MACHINE1
+que_ng,168,39,3	duplicate(novice_vending_machine#main)	Vending Machine for Nov#que_ng2	2_VENDING_MACHINE1

+ 14 - 0
npc/re/merchants/shops.txt

@@ -26,11 +26,13 @@
 // Alberta
 //=======================================================
 alberta_in,176,81,3	shop	Trading Merchant#alb	900,13200:-1,13221:-1,13222:-1,13150:-1,13102:-1,13151:-1,13154:-1,13155:-1,13163:-1,13165:-1,13168:-1
+alberta_in,176,97,5	shop	Advanced Potion Merchant#alb	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Al De Baran
 //=======================================================
 alde_alche,38,184,3	shop	Material Seller#alche	755,7143:-1,7141:-1,7140:-1,6248:-1,6250:-1,6251:-1,6255:-1,6261:-1,6262:-1,6297:-1
+aldeba_in,99,56,5	shop	Advanced Potion Merchant#alde	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Comodo
@@ -58,6 +60,11 @@ que_ng,180,79,3	shop	Johnny Waiker	900,13200:-1,13221:-1,13222:-1
 dic_in01,238,107,5	shop	Peddler#dic	900,601:-1,602:-1,611:-1,610:-1
 dicastes01,207,200,6	shop	Points Merchant#dic	66,6360:-1,6361:-1,6362:-1,6363:-1
 
+//=======================================================
+// Geffen
+//=======================================================
+geffen_in,78,169,3	shop	Advanced Potion Merchant#gef	1_F_03,11621:-1,11622:-1,11623:-1,11624:-1
+
 //=======================================================
 // Izlude
 //=======================================================
@@ -79,6 +86,7 @@ izlude_d,128,158,7	duplicate(Vendor from Milk Ranch#i)	Vendor from Milk Ranch#d
 izlude_in,72,98,3	shop	Pet Groomer#iz	124,537:-1,643:-1,10013:-1,10014:-1,554:-1,6113:-1,6114:-1,6115:-1
 izlude_in,57,110,0	shop	Tool Dealer#iz	47,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1,1750:-1
 izlude_in,72,102,3	shop	Trading Merchant#iz	900,13200:-1,13221:-1,13222:-1,13150:-1,13102:-1,13151:-1,13154:-1,13155:-1,13163:-1,13165:-1,13168:-1
+izlude_in,59,113,5	shop	Advanced Potion Merchant#iz	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Juno
@@ -121,6 +129,8 @@ morocc,166,54,2	shop	Jeweler#moc4	102,721:-1,723:-1,726:-1,728:-1,729:-1
 morocc,34,68,0	shop	Trader#moc7	93,748:-1
 morocc,269,193,4	shop	Trader#moc8	89,2609:-1,1516:-1,1522:-1
 morocc,256,191,5	shop	Trader#moc9	93,2612:-1
+morocc,149,245,7	shop	Advanced Potion Merchant#moc1	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
+morocc,170,84,1	shop	Advanced Potion Merchant#moc2	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Mid Camp
@@ -139,6 +149,9 @@ prontera,178,244,3	shop	Amatsu Trader#nin	83,13250:-1,13251:-1,13252:-1,13253:-1
 // Payon
 //=======================================================
 payon,123,109,4	shop	Trap Specialist#pay	66,7940:-1,12341:-1
+payon,157,96,3	shop	Advanced Potion Merchant#pay	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
+payon_in01,12,53,5	shop	Advanced Potion Merchant#pay2	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
+payon_in02,85,38,3	shop	Advanced Potion Merchant#pay3	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Port Malaya
@@ -157,6 +170,7 @@ prt_in,175,137,4	shop	Black Marketeer#prt	49,2139:-1,2800:-1,2801:-1,2802:-1,280
 s_atelier,17,110,1	shop	Part-Timer#sc_prt	67,6123:-1,6120:-1
 prontera,96,209,4	shop	Rebellion Accessories	564,25187:-1,7663:-1,7664:-1,7665:-1,7940:300,13200:-1,13221:-1,13222:-1,13215:-1,13216:-1,13217:-1,13218:-1,13219:-1,13220:-1,13228:-1,13229:-1,13231:-1,13232:-1,13230:-1
 prontera,92,209,4	shop	Rebellion Weapons	564,13120:-1,13122:-1,13189:-1,13195:-1,13192:-1,13193:-1,13194:-1,13197:-1,13198:-1,28200:-1,28201:-1
+prt_in,129,68,3	shop	Advanced Potion Merchant#prt	4_F_ALCHE_A,11621:-1,11622:-1,11623:-1,11624:-1
 
 //=======================================================
 // Rachel

+ 13 - 0
npc/re/mobs/dungeons/slabw01.txt

@@ -0,0 +1,13 @@
+//===== rAthena Script =======================================
+//= Werner Laboratory
+//===== Description: =========================================
+//= Werner Laboratory Monster Spawn Script.
+//===== Additional Comments: =================================
+//= 1.0 First version.
+//      Venomous Chimera spawn timer is custom. [Capuche]
+//============================================================
+
+slabw01	monster	Human Chimera	3631,45
+slabw01	monster	Material Chimera	3632,45
+// unknown timer
+slabw01	monster	Venomous Chimera	3633,1,18000000,600000,0

+ 18 - 0
npc/re/other/global_npcs.txt

@@ -0,0 +1,18 @@
+//===== rAthena Script ======================================= 
+//= Global NPCs
+//===== Description: ========================================= 
+//= General npcs which should be loaded first.
+//===== Additional Comments: ================================= 
+//= 1.0 Added "dummy_npc" and "dummy_cloaked_npc". [Capuche]
+//============================================================ 
+
+-	script	dummy_npc	-1,{
+	end;
+}
+
+-	script	dummy_cloaked_npc	-1,{
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}

+ 44 - 150
npc/re/quests/magic_books.txt

@@ -15,6 +15,7 @@
 //= 1.1a Updated NPC name to "Master Velofos". [Euphy]
 //= 1.1b Fixed the rand part in "Mysterious Documents" to match
 //=	 Aegis & fixed a bracket issue. [Capuche]
+//= 1.2 Updates Magic Books gained from Lea. [Aleos]
 //============================================================ 
 
 // Main Quest :: war_book
@@ -275,9 +276,6 @@ geffen_in,175,112,4	script	Lea	2_F_MAGICMASTER,{
 		close;
 	}
 	if (wm_book > 0 && (Class == Job_Warlock || Class == Job_Warlock_T || Class == Job_Baby_Warlock)) {
-		mes "[Lea]";
-		mes "You can only read books here. If you'd like to borrow any books, please receive an approval from 1 manager and 1 High Mage.";
-		next;
 		mes "[Lea]";
 		mes "How may I help you?";
 		next;
@@ -285,181 +283,77 @@ geffen_in,175,112,4	script	Lea	2_F_MAGICMASTER,{
 		mes "[Lea]";
 		mes "Are you borrowing a book?";
 		next;
-		switch (select("Let me think.:I want the Beginner's Magic Books.:I want the Intermediate Magic Books.:I want the Superior Magic Books.:I want the Ultimate Magic Book.")) {
+		switch (select("Let me think.:I want the Intermediate Magic Books.:I want the Superior Magic Books.:I want the Ultimate Magic Books.")) {
 		case 1:
 			mes "[Lea]";
 			mes "No problem.";
 			close;
 		case 2:
 			mes "[Lea]";
-			mes "We're in trouble because so many people want to borrow our Magic Books.";
-			next;
-			mes "[Lea]";
-			mes "Unfortunately, many of our lent books aren't returned on time. That's why we've decided to charge a security deposit.";
+			mes "Ah, so you want the Intermediate Magic Books. If you pay a ^4d4dffloan deposit of 100,000z^000000, we will lend you an Intermediate Magic Books.";
 			next;
-			select("A security deposit?");
 			mes "[Lea]";
-			mes "Yes. You may pay a minimum of 10,000 Rune-Midgarts zeny. Alternatively, you can bring 2 Old Magic Books or 50 Old Pages. Once you pay the deposit, I'll let you borrow some Magic Books.";
+			mes "What kind of Magic Book do you want?";
 			next;
-			set .@Payment, select("Where can I find Old Magic Books and Old Pages?:I'll pay with zeny.:I'll pay with Old Magic Books.:I'll pay with Old Pages.")-1;
+			set .@i, select("Let me think.:Magic Book (Storm Gust):Magic Book (Lord of Vermillion):Magic Book (Meteor Storm)")-1;
 			mes "[Lea]";
-			if (!.@Payment) {
-				mes "I heard that you can find them from Ride Words, Death Words, Bathorys, and other monsters. I ask that you please don't strain yourself to find those items.";
-				next;
-				mes "[Lea]";
-				mes "Your life is more important than anything else, you know?";
+			if (!.@i) {
+				mes "No problem.";
 				close;
 			}
-			if ((.@Payment == 1 && Zeny > 10000) || (.@Payment == 2 && countitem(1006) > 1) || (.@Payment == 3 && countitem(1097) > 49)) {
-				mes "What kind of Magic Book do you want?";
-				next;
-				set .@i, select("Let me think.:Magic Book (Fire Bolt):Magic Book (Cold Bolt):Magic Book (Lightning Bolt)")-1;
-				mes "[Lea]";
-				if (!.@i) {
-					mes "No problem.";
-					close;
-				}
-				if (countitem(6188+.@i)) {
-					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
-					next;
-					mes "[Lea]";
-					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
-					close;
-				}
-				if ((.@Payment == 1 && Zeny > 10000) || (.@Payment == 2 && countitem(1006) > 1) || (.@Payment == 3 && countitem(1097) > 49)) {
-					mes "The book's return date is written on the lending card on the back cover of the book.";
-					next;
-					mes "[Lea]";
-					mes "Please try not to lose or damage the book to avoid paying any extra charges.";
-					if (.@Payment == 1) set Zeny, Zeny - 10000;
-					else if (.@Payment == 2) delitem 1006,2; //Old_Magic_Book
-					else delitem 1097,50; //Worn_Out_Page
-					getitem 6188+.@i,1; //Magic_Book_FB, Magic_Book_CB, Magic_Book_LB
-					close;
-				}
-			}
-			mes "I'm sorry, but you don't have enough funds.";
-			close;
-		case 3:
-			mes "[Lea]";
-			mes "Ah, so you want the Intermediate Magic Books. Please pay 50,000 Rune-Midgartian zeny, or you can bring me 2 Old Blue Boxes or 9 Eluniums to borrow the Intermediate Magic Books.";
-			next;
-			set .@Payment, select("Where can I find Old Blue Boxes and Eluniums?:I'll pay 50,000 zeny.:I'll pay with Old Blue Boxes.:I'll pay with Eluniums.")-1;
-			mes "[Lea]";
-			if (!.@Payment) {
-				mes "Old Blue Boxes are quite rare to find, but they can be obtained from monsters everywhere in the world, including Myst Cases, Megalogons, Mimics, Nightmares, Krabens, Requiems, Nine Tails, Noxiouses, and Byorgues.";
-				mes "If you have sufficient funds, you may buy the boxes from street vendors.";
+			setarray .@Books[0],100065,100066,100067;
+			if (countitem(.@Books[.@i-1])) {
+				mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
 				next;
 				mes "[Lea]";
-				mes "Eluniums can be obtained from Hyeguns, Zombie Prisoners, Teddy Bears, Obsedians, and Loli Ruris. Or you can refine Rough Eluniums to Eluniums at the Forge in town, and that may be easier.";
+				mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
 				close;
 			}
-			if ((.@Payment == 1 && Zeny > 50000) || (.@Payment == 2 && countitem(603) > 1) || (.@Payment == 3 && countitem(985) > 8)) {
-				mes "What kind of Magic Book do you want?";
+			if (Zeny > 99999) {
+				mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
 				next;
-				set .@i, select("Let me think.:Magic Book (Storm Gust):Magic Book (Lord of Vermillion):Magic Book (Meteor Storm):Magic Book (Thunderstorm):Magic Book (Jupitel Thunder):Magic Book (Water Ball):Magic Book (Heaven's Drive):Magic Book (Earth Spike)")-1;
-				setarray .@Books[0],6192,6193,6194,6197,6198,6199,6200,6201;
 				mes "[Lea]";
-				if (!.@i) {
-					mes "No problem.";
-					close;
-				}
-				if (countitem(.@Books[.@i-1])) {
-					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
-					next;
-					mes "[Lea]";
-					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
-					close;
-				}
-				if ((.@Payment == 1 && Zeny > 50000) || (.@Payment == 2 && countitem(603) > 1) || (.@Payment == 3 && countitem(985) > 8)) {
-					mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
-					next;
-					mes "[Lea]";
-					mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
-					if (.@Payment == 1) set Zeny, Zeny - 50000;
-					else if (.@Payment == 2) delitem 603,2; //Old_Blue_Box
-					else delitem 985,9; //Elunium
-					getitem .@Books[.@i-1],1; //Magic_Book_SG, Magic_Book_LOV, Magic_Book_MS, Magic_Book_TS, Magic_Book_JT, Magic_Book_WB, Magic_Book_HD, Magic_Book_ES
-					close;
-				}
+				mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
+				Zeny -= 100000;
+				getitem .@Books[.@i-1],1; //WL_MB_SG, WL_MB_LOV, WL_MB_MS
+				close;
 			}
-			mes "I'm sorry, but you don't have enough funds.";
+			mes "The ^4d4dffloan deposit is 100,000z^000000. The deposit has adjusted as the Magic Book has changed.";
 			close;
-		case 4:
-			mes "[Lea]";
-			mes "Oh, do you want the Superior Magic Books? For your information, borrowing those Magic Books requires many conditions and restrictions. Are you sure that you want it?";
-			next;
-			select("Yes.");
+		case 3:
 			mes "[Lea]";
-			mes "I see. If you're determined to borrow the Superior Magic Books, please choose one of the following tyes of payment for the security deposit.";
+			mes "Oh, do you want the Superior Magic Books? The policy has been changed to accept loan deposits unconditionally, instead of the existing demanding loan conditions.";
+			mes "The Superior Magic Book ^4d4dffloan deposit is 500,000z^000000.";
 			next;
 			mes "[Lea]";
-			mes "[12 Mystery Pieces and 100,000 zeny], [7 Oridecons and 100,000 zeny], or [1 Old Violet Box and 100,000 zeny]. Now how would you like to pay your deposit?";
+			mes "What kind of Magic Book do you want?";
 			next;
-			set .@Payment, select("Where can I find those items?:Let me think.:I'll pay with 12 Mystery Pieces and 100,000 zeny.:I'll pay with 7 Oridecons and 100,000 zeny.:I'll pay with 1 Old Violet Box and 100,000 zeny.")-1;
+			set .@i, select("Let me think.:Magic Book (Drain Life):Magic Book (Jack Frost):Magic Book (Earth Strain):Magic Book (Crimson Rock):Magic Book (Chain Lightning)")-1;
 			mes "[Lea]";
-			if (!.@Payment) {
-				mes "Mystery Pieces can be obtained from machine creatures in the Juperos Dungeon, and they're the fountain of knowledge from the ancient civilization. Ah, I get excited thinking about those artifacts.";
-				next;
-				mes "[Lea]";
-				mes "Oridecons can be obtained from Executioners, Gryphons, Jokers, and Abysmal Knights, but it'll be easier to collect Rough Oridecons than Oridecons.";
-				next;
-				mes "[Lea]";
-				mes "You can refine Rough Oridecons to Oridecons at the Forge in town.";
-				next;
-				mes "[Lea]";
-				mes "Old Violet Boxes can be obtained from Mimics, Megaliths, Orc Lords, Stormy Knights, and Osirises.";
-				next;
-				mes "[Lea]";
-				mes "The boxes are a subject worthy of serious study since they're used to test Schrodinger's pet cat.";
+			if (!.@i) {
+				mes "No problem.";
 				close;
 			}
-			if (.@Payment == 1) {
-				mes "If you're unable to collect the items for the security deposit, I can offer you an alternate payment method.";
+			setarray .@Books[0],100068,100069,100070,100071,100072;
+			if (countitem(.@Books[.@i-1])) {
+				mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
 				next;
 				mes "[Lea]";
-				mes "How does 200,000 Rune-Midgartian zeny sound?";
-				next;
-				if(select("I'm sorry, but I can't pay that much.:Sounds good.") == 1) {
-					mes "[Lea]";
-					mes "I see.";
-					close;
-				}
-				mes "[Lea]";
+				mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
+				close;
 			}
-			if ((.@Payment == 1 && Zeny > 199999) || (Zeny > 99999 && ((.@Payment == 2 && countitem(7094) > 11) || (.@Payment == 3 && countitem(984) > 6) || (.@Payment == 4 && countitem(617))))) {
-				mes "What kind of Magic Book do you want?";
+			if (Zeny > 499999) {
+				mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
 				next;
-				set .@i, select("Let me think.:Magic Book (Earth Strain):Magic Book (Chain Lightning):Magic Book (Crimson Rock):Magic Book (Drain Life)")-1;
 				mes "[Lea]";
-				if (!.@i) {
-					mes "No problem.";
-					close;
-				}
-				if (countitem(6201+.@i)) {
-					mes "You already have that Magic Book. You can't borrow a new book until you return the current one.";
-					next;
-					mes "[Lea]";
-					mes "Don't you know how many others would want the book you already have? It's a bit selfish to want more than one, you know.";
-					close;
-				}
-				if ((.@Payment == 1 && Zeny > 199999) || (Zeny > 99999 && ((.@Payment == 2 && countitem(7094) > 11) || (.@Payment == 3 && countitem(984) > 6) || (.@Payment == 4 && countitem(617))))) {
-					mes "Thank you for your deposit. The book's return date is written on the lending card on the back cover of the book. Please try not to lose or damage the book and avoid paying compensation.";
-					next;
-					mes "[Lea]";
-					mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
-					if (.@Payment == 1) set Zeny, Zeny - 200000;
-					else if (.@Payment == 2) delitem 7094,12; //Mystery_Piece
-					else if (.@Payment == 3) delitem 984,7; //Oridecon
-					else delitem 617,1; //Old_Violet_Box
-					if (.@Payment > 1) set Zeny, Zeny - 100000;
-					getitem 6201+.@i,1; //Magic_Book_ES_, Magic_Book_CL, Magic_Book_CR, Magic_Book_DL
-					close;
-				}
+				mes "The Intermediate and Superior Magic Books must be returned upon borrowing the Ultimate Magic Book. Remember that you're just borrowing them, so make sure you take good care of those books.";
+				Zeny -= 500000;
+				getitem .@Books[.@i-1],1; //WL_MB_DL, WL_MB_JF, WL_MB_ES, WL_MB_CR, WL_MB_CL
+				close;
 			}
-			mes "I'm sorry, but you don't have enough funds.";
+			mes "The ^4d4dffloan deposit is 500,000z^000000. The deposit has adjusted as the Magic Book has changed.";
 			close;
-		case 5:
+		case 4:
 			if ((BaseLevel > 139) && (mac_book < 1) && ((getskilllv(2217) > 0) || (getskilllv(2213) > 0))) {
 				mes "[Lea]";
 				mes "Did... Did you just say the Ultimate Magic Book?";
@@ -486,7 +380,7 @@ geffen_in,175,112,4	script	Lea	2_F_MAGICMASTER,{
 				close;
 			}
 			mes "[Lea]";
-			mes "How about practicing your magic spells for now?";
+			mes "Well... why don't you practice a little longer before that?";
 			next;
 			mes "[Lea]";
 			mes "In order to obtain the Ultimate Magic Book, you must reach Level 140 and learn Tetera Bolt and Comet.";
@@ -619,7 +513,7 @@ mid_camp,255,244,4	script	Galfos	4_M_JOB_WIZARD,{
 		next;
 		set .@i, select("I've discovered everything about Comet.:I've mastered the zenith of Tetra Vortex.");
 		mes "[Galfos]";
-		if ((.@i == 1 && countitem(6195)) || (.@i == 2 && countitem(6196))) {
+		if ((.@i == 1 && countitem(100073)) || (.@i == 2 && countitem(100074))) {
 			mes "Are you kidding me? You already have the book!";
 			close;
 		}
@@ -630,7 +524,7 @@ mid_camp,255,244,4	script	Galfos	4_M_JOB_WIZARD,{
 			mes "There's one problem, though: I'm so broke that I don't even have enough money to buy the tools to make the book.";
 			next;
 			mes "[Galfos]";
-			mes "I need at least ^0000aa1,000,000 zeny^000000 to buy all the necessary tools. Do you have the money?";
+			mes "I need at least ^0000aa500,000 zeny^000000 to buy all the necessary tools. Do you have the money?";
 			next;
 			if(select("Wh-what? No!:Sure.") == 1) {
 				mes "[Galfos]";
@@ -638,14 +532,14 @@ mid_camp,255,244,4	script	Galfos	4_M_JOB_WIZARD,{
 				close;
 			}
 			mes "[Galfos]";
-			if (Zeny >= 1000000) {
+			if (Zeny >= 500000) {
 				mes "Alright then, let's get started!";
 				next;
 				specialeffect2 EF_DISPELL;
 				progressbar "ffff00",4;
 				specialeffect2 EF_LORD;
-				set Zeny, Zeny - 1000000;
-				getitem 6194+.@i,1; //Magic_Book_CM, Magic_Book_TV
+				set Zeny, Zeny - 500000;
+				getitem 100072+.@i,1; //WL_MB_CM, WL_MB_TV
 				mes "[Galfos]";
 				mes "Man, I almost lost my control to the incredible magic energy! Here's your Magic Book.";
 				next;

+ 14625 - 0
npc/re/quests/quests_16_2.txt

@@ -0,0 +1,14625 @@
+//===== rAthena Script =======================================
+//= Terra Gloria
+//===== Description: =========================================
+//= [Walkthrough Conversion]
+//--- NPCs quests for Episode 16.2
+//===== Changelogs: ==========================================
+//= 1.0 First version. [Capuche]
+//============================================================
+
+prt_cas_q,29,28,0	script	#ep162_evt_npc_con	HIDDEN_WARP_NPC,2,2,{
+	end;
+OnTouch:
+	if (banquet_main_quest < 18)	// pre-req : access to room of consciousness (first time)
+		end;
+	if (terra_gloria_main == 0) {
+		cloakoffnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakoffnpc "Skia Nerius#ep162_02", getcharid(0);
+	}
+	else if (terra_gloria_main == 1 || terra_gloria_main == 2) {
+		cloakoffnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakoffnpc "Skia Nerius#ep162_02", getcharid(0);
+		cloakoffnpc "Spica Nerius#ep162_01", getcharid(0);
+	}
+	else if (terra_gloria_main == 6) {	// first back from Lighthalzen
+		cloakoffnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakoffnpc "Spica Nerius#ep162_01", getcharid(0);
+	}
+	else if (terra_gloria_main == 23)
+		cloakoffnpc "Skia Nerius#ep162_01", getcharid(0);
+	end;
+}
+
+prt_cas_q,18,37,5	duplicate(dummy_cloaked_npc)	Skia Nerius#ep162_02	4_EP16_SPICA
+prt_cas_q,23,33,2	duplicate(dummy_cloaked_npc)	Crux#ep162_03	4_EP16_CRUX
+prt_cas_q,23,32,3	duplicate(dummy_cloaked_npc)	Kronecker G. Heine#ep162	4_EP16_GRANZ
+
+prt_cas_q,21,39,3	script	Nihil M. Heine#ep162_01	4_EP16_NIHIL,{
+	if (banquet_main_quest < 18)	// pre-req : access to room of consciousness (first time)
+		end;
+	if (terra_gloria_main == 0) {
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		mes "[Nihil]";
+		mes "Now I can see you.";
+		mes "I've been waiting for a good while.";
+		next;
+		mes "[Nihil]";
+		mes "There is something important.";
+		mes "Actually, there is much to be said by the esteemed daughter of Nerius.";
+		next;
+		cutin "ep16_skia_shadow04.bmp",0;
+		mes "[Skia]";
+		mes "Yes, right. Spica is now investigating several things.";
+		mes "That's why I look like this again.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Oh, you are not Spica ...", bc_self;
+		npctalk "Haha", "Skia Nerius#ep162_02", bc_self;
+		next;
+		mes "[Skia]";
+		mes "Actually, there is another task that Spica gave Crux during the banquet.";
+		mes "And Crux seems to have done it very well.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Task?", bc_self;
+		next;
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		mes "[Nihil]";
+		mes "I heard about recently.";
+		mes "Spica told Crux to investigate the maid who gave me a glass with a drug during the banquet the other day.";
+		next;
+		cutin "ep16_skia_shadow01.bmp",0;
+		mes "[Skia]";
+		mes "Spica is so sharp in those things.";
+		mes "After all, she put me in this position as her substitute and is doing what she has to do.";
+		next;
+		mes "[Skia]";
+		mes "She told us to wait for her. She said she would bring us some good news.";
+		mes "Since there are eyes everywhere, she told me to go to the Hero's Room.";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "That's why we had to come here unwillingly without talking to you in advance.";
+		mes "Sorry for your inconvenience. Please wait for a while.";
+		close2;
+		setpcblock PCBLOCK_NPC, true;
+		cutin "",255;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : .....", bc_self;
+		sleep2 1500;
+		npctalk "....", "Skia Nerius#ep162_02", bc_self;
+		sleep2 1000;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : ... Until when?", bc_self;
+		sleep2 2000;
+		npctalk "She has arrived.", "Nihil M. Heine#ep162_01", bc_self;
+		npctalk "Thank you for coming.", "Spica Nerius#ep162_01", bc_self;
+		cloakoffnpc "Spica Nerius#ep162_01", getcharid(0);
+		terra_gloria_main = 1;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		npctalk "Please allow me to get right down to business.", "Spica Nerius#ep162_01", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 1) {
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "Maybe we should listen to her first.";
+		close3;
+	}
+	if (terra_gloria_main == 2) {
+		mes "[Nihil]";
+		mes "As I told you before, you are the freest person among us.";
+		mes "So I am requesting you.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "^4d4dffBruno^000000.. His destination must be ^4d4dffLighthalzen^000000.";
+		mes "Although it's my guess, I'm quite sure of it.";
+		next;
+		mes "[Nihil]";
+		mes "He doesn't go to the Schwaltzvalt area even though he has an airship.";
+		mes "... He knows that he can be tracked.";
+		cutin "ep16_nihi_miseria_heine04.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "So you have to ^4d4dffmeet Crux^000000 at ^4d4dffLighthalzen Airport^000000. Then you have to narrow the range based upon the points that Crux has already investigated.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "Not many of us can move freely. So we are asking you to take this task.";
+		next;
+		mes "[Nihil]";
+		mes "Skia is coming with you. She will be very helpful.";
+		mes "The Nerius family has great skill with swords.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "I am counting on you.";
+		mes "You go separately and ^4d4dffmeet Crux and Skia at Lighthalzen Airport^000000.";
+		setquest 7731;// Secret Action
+		terra_gloria_main = 3;
+		next;
+	}
+	if (terra_gloria_main == 3) {
+		mes "[Nihil]";
+		mes "I look forward to hearing good news from you.";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		cutin "ep16_skia_shadow04.bmp",0;
+		mes "[Skia]";
+		mes "See you at ^4d4dffLighthalzen Airport^000000, hero!";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Now, please excuse me.";
+		close2;
+		cutin "",255;
+		cloakonnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakonnpc "Spica Nerius#ep162_01", getcharid(0);
+		cloakonnpc "Skia Nerius#ep162_02", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 6) {
+		mes "[Nihil]";
+		mes "Welcome. We have been talking about it already.";
+		mes "We are sorry about it.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		select("We don't need so much formality between us ...");
+		mes "[Nihil]";
+		mes "Can we talk freely?";
+		mes "Thanks.";
+		mes "It's my pleasure.";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "This is what I like about you.";
+		mes "Being able share confidences without sticking to formality is important.";
+		next;
+		mes "[Spica]";
+		mes "By the way, let's talk about Bruno. How long do we have to proceed confidentially?";
+		cutin "ep16_spica_nerius05.bmp",1;
+		next;
+		mes "[Nihil]";
+		mes "I'm sure the daughter of the Nerius family knows more about it than I do.";
+		mes "We must make a definite plan to resolve the situation.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "Everyone here knows that an Enterprise is behind him.";
+		mes "But he is outwardly innocent.";
+		next;
+		mes "[Nihil]";
+		mes "That's why we are being swayed by him.";
+		mes "In my opinion, we'd better make a plan to track the whereabouts of the stolen ^4d4dffTerra Gloria^000000 and reclaim it.";
+		next;
+		cutin "ep16_spica_nerius02.bmp",1;
+		mes "[Spica]";
+		mes "For that reason, it will be interesting.";
+		mes "This Bruno guy will give you a fresh insight.";
+		npctalk "Hey chamberlain, bring Crux here.", "Spica Nerius#ep162_01", bc_self;
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "How can you be so sure?";
+		next;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "Because I trust Crux.";
+		cloakoffnpc "Crux#ep162_03", getcharid(0);
+		next;
+		cutin "ep16_crux_findel01.bmp",0;
+		mes "[Crux]";
+		mes "Sorry I'm late.";
+		mes "I found out a lot about Bruno.";
+		npctalk "This is the report.", "Crux#ep162_03", bc_self;
+		next;
+		mes "[Crux]";
+		mes "During the extradition procedure, I had to receive a little help from the Schwaltzvalt government.";
+		next;
+		mes "[Crux]";
+		mes "It was due to my position, and I am not a free adventurer ... Lady Skia handled it quite well for me ...";
+		next;
+		mes "[Crux]";
+		mes "There was an unexpected bonus.";
+		mes "I managed to get detailed data about the man and got a confession without making much fuss.";
+		next;
+		mes "[Crux]";
+		mes "I think it was possible because we convinced both sides that we would guarantee their security.";
+		next;
+		mes "[Crux]";
+		mes "I passed some of the unimportant details of the man's confession to the Schwartz government. Also, I handed Bruno to Schwartz.";
+		next;
+		cutin "ep16_spica_nerius05.bmp",1;
+		mes "[Spica]";
+		mes "That's good.";
+		mes "After all, he would have been a burden to us even if we kept him.";
+		mes "So, the important information is ...";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "... It must be about a certain facility.";
+		mes "I mean, from the details on your report.";
+		next;
+		mes "[Nihil]";
+		mes "... Considering the political situation of Schwaltzvalt ...";
+		next;
+		select( "President?", "Can we escape the Enterprise's attention?" );
+		mes "[Nihil]";
+		mes "It's not an easy job to inspect a facility in another country as part of the royal family's affair.";
+		mes "We cannot ask other families and leaders for cooperation yet.";
+		cutin "ep16_nihi_miseria_heine04.bmp",2;
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "Lady Spica. I believe you have already prepared a strategy.";
+		mes "The fact that Skia isn't here today might have something to do with your plan ...";
+		next;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "I guess public approval is not something we can count on.";
+		mes "You are right. I sent Skia on another task.";
+		next;
+		cutin "ep16_spica_nerius07.bmp",1;
+		mes "[Spica]";
+		mes "Prince Nihil. As you predicted, now we have to secure help from the Schwartz government.";
+		next;
+		mes "[Spica]";
+		mes "And the Schwartz government knows of this as a private but important matter of the royal family of Nerius. That's because Skia made up a good story when delivering Bruno to Schwartz.";
+		next;
+		select("What was it?");
+		mes "[Spica]";
+		mes "" + strcharinfo(0) + ".";
+		mes "Since you are playing an important role, you need to know it as well.";
+		mes "Something extremely important to our family has been stolen.";
+		cutin "ep16_spica_nerius01.bmp",1;
+		next;
+		mes "[Spica]";
+		mes "Currently, that important thing is said to be located in a suspicious facility. Now we have to investigate it.";
+		next;
+		mes "[Spica]";
+		mes "To investigate the facility, we need permission from the Schwartz government.";
+		mes "Outwardly, the Nerius family is the concerned party. That's why Skia is there now.";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "We need more help.";
+		mes "Crux must report quickly. He will be busy again.";
+		mes "......";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "I see.";
+		mes "Crux must go to Skia immediately.";
+		mes "And I must go to Yuno.";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "Then you will borrow the name of the Nerius family.";
+		mes "In any case, I will try to do the best in my position.";
+		mes "And for the hands we lack ...";
+		next;
+		mes "[Nihil]";
+		mes "" + strcharinfo(0) + ".";
+		mes "I feel so lucky that you are with us.";
+		mes "Please escort Miss Spica.";
+		next;
+		mes "[Nihil]";
+		mes "Escorting is not so difficult.";
+		mes "Your job is to wait until Miss Spica completes her task and bring her back safely.";
+		next;
+		cutin "ep16_crux_findel01.bmp",0;
+		mes "[Crux]";
+		mes "... I'm counting on you for Miss Spica.";
+		mes "Then I will go to Yuno now.";
+		npctalk "Go ahead. Request a meeting along with Skia in advance.", "Spica Nerius#ep162_01", bc_self;
+		next;
+		npctalk "Yes ... I will go now.", "Crux#ep162_03", bc_self;
+		mes "[Nihil]";
+		mes "Now we have the big picture.";
+		mes "It depends on how the Schwartz government reacts to us.";
+		cutin "ep16_nihi_miseria_heine04.bmp",2;
+		next;
+		cloakonnpc "Crux#ep162_03", getcharid(0);
+		cutin "ep16_spica_nerius07.bmp",1;
+		mes "[Spica]";
+		mes "For that issue, please trust the next leader of the Nerius family.";
+		mes "Then " + strcharinfo(0) + ", you come to ^4d4dffYuno Airport^000000.";
+		mes "We will continue our conversation there.";
+		erasequest 7734;// Arrest
+		setquest 7735;// Secret Action 2
+		terra_gloria_main = 7;
+		close2;
+		setpcblock PCBLOCK_NPC, true;
+		npctalk "See you later.", "Spica Nerius#ep162_01", bc_self;
+		sleep2 2000;
+		npctalk "I am going too.", "", bc_self;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		cloakonnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakonnpc "Spica Nerius#ep162_01", getcharid(0);
+		cutin "",255;
+		end;
+	}
+}
+
+prt_cas_q,23,36,3	script	Spica Nerius#ep162_01	4_EP16_SPICA,{
+	if (banquet_main_quest < 18)
+		end;
+	if (terra_gloria_main == 1) {
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Let me speak plainly.";
+		mes "This is becoming more serious that we expected.";
+		mes "Crux did a wonderful job, so I thought we almost got them.";
+		next;
+		cutin "ep16_spica_nerius02.bmp",1;
+		mes "[Spica]";
+		mes "But they are not so stupid.";
+		mes "Crux struggled to find the suspicious chamberlain who you saw at first.";
+		next;
+		mes "[Spica]";
+		mes "But the maid who passed the glass was easily found.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "She had been ordered to recommend a drink to the son of the Heine family. Someone told her that it was his favorite drink.";
+		npctalk "... Haa ...", "Nihil M. Heine#ep162_01", bc_self;
+		next;
+		cutin "ep16_skia_shadow04.bmp",0;
+		mes "[Skia]";
+		mes "And you haven't found any special clues?";
+		mes "You have no more to investigate. Why did you come alone without Crux?";
+		next;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "Well, not really.";
+		mes "I got a clue about the chamberlain who gave the drink to the maid. His hometown is Schwaltzvalt.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Crux has left to find that man.";
+		mes "He keeps me updated on his current location. He has now passed Yuno.";
+		npctalk "Quite far from here.", "Nihil M. Heine#ep162_01", bc_self;
+		next;
+		mes "[Nihil]";
+		mes "If that man is from Schwaltzvalt, this is not going to be easy.";
+		mes "In particular, the royal family should not take an official action.";
+		mes "We cannot officially announce this situation either.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "The leaders of other families already know about the chamberlain. And, they called a conference to discuss how to handle that issue.";
+		next;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "I have been in the conference so far. Seems like every family has a different idea.";
+		mes "So I decided to do as I wish.";
+		next;
+		mes "[Nihil]";
+		mes "The problem is where that chamberlain is headed. Regardless of his final destination, it will be quite tough for Crux alone.";
+		mes "" + strcharinfo(0) + ", could you please go for backup?";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		cutin "ep16_skia_shadow04.bmp",0;
+		mes "[Skia]";
+		mes "Then let me go too.";
+		next;
+		cutin "ep16_spica_nerius07.bmp",1;
+		mes "[Spica]";
+		mes "As you wish.";
+		mes "This is the report from Crux.";
+		mes "I don't like outside missions. So I will just stick to my room. Hahaha ...";
+		next;
+		mes "[Nihil]";
+		mes "... You are helping us so much.";
+		mes "Thanks a lot.";
+		mes "But why are you so eager to help us?";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Hmm, I find it interesting.";
+		mes "And I think a change is needed.";
+		next;
+		cutin "ep16_spica_nerius02.bmp",1;
+		mes "[Spica]";
+		mes "Soon, our day will come.";
+		mes "And I find it stuffy.";
+		mes "The unusual obsession of the Heine family ...";
+		next;
+		npctalk "......", "Nihil M. Heine#ep162_01", bc_self;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "Well, let me stop here.";
+		mes "If I continue, it will be too rude of me.";
+		next;
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		mes "[Nihil]";
+		mes "... But you look quite happy.";
+		mes "Whatever. We will talk about more details of the story later.";
+		terra_gloria_main = 2;
+		close3;
+	}
+	if (terra_gloria_main == 2) {
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "I handed part of Crux's report to Prince Nihil.";
+		mes "For your schedule from now on, you'll have to talk to Prince Nihil.";
+		close3;
+	}
+	if (terra_gloria_main == 3) {
+		mes "[Nihil]";
+		mes "I look forward to hearing good news from you.";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		cutin "ep16_skia_shadow04.bmp",0;
+		mes "[Skia]";
+		mes "See you at ^4d4dffLighthalzen Airport^000000, hero!";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Now, please excuse me.";
+		close2;
+		cutin "",255;
+		cloakonnpc "Nihil M. Heine#ep162_01", getcharid(0);
+		cloakonnpc "Spica Nerius#ep162_01", getcharid(0);
+		cloakonnpc "Skia Nerius#ep162_02", getcharid(0);
+		end;
+	}
+}
+
+prt_cas_q,18,37,5	script	Skia Nerius#ep162_01	4_EP16_SKIA,{
+	if (terra_gloria_main == 23) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Welcome!";
+		mes "Sorry for having entered the room while the owner was not present.";
+		mes "But I had nothing to do.";
+		next;
+		select("What about others?");
+		mes "[Skia]";
+		mes "I reclaimed the Blessing Star.";
+		mes "There was a conference.";
+		mes "Nihil and Spica participated.";
+		next;
+		mes "[Skia]";
+		mes "Now I feel like everything is back to normal.";
+		mes "The recent tasks have been so wonderful and interesting.";
+		next;
+		mes "[Skia]";
+		mes "... I had always been operating in the shadows behind Spica's back.";
+		next;
+		cutin "ep16_skia_nerius02.bmp",0;
+		mes "[Skia]";
+		mes "If my mother finds out about this, she will be quite upset.";
+		mes "My father will be concerned. But he will tell me it's okay, as usual.";
+		next;
+		mes "[Skia]";
+		mes "....";
+		mes "By the way, hero.";
+		mes "I think I am unwell lately.";
+		next;
+		mes "[Skia]";
+		mes "I occasionally have a shooting pain near my heart. And my heart beats faster than usual. Sometimes I become hot even though I don't have a fever.";
+		next;
+		cutin "ep16_skia_nerius03.bmp",0;
+		mes "[Skia]";
+		mes "Is this because I didn't have enough training due to the banquets? There might be a problem with my health.";
+		next;
+		select( "Do you feel it all the time?", "When is it most serious?" );
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Not always ...";
+		mes "Recently ... Oh! It was when I was waiting for the adventurer at the Einbroch hotel ...";
+		next;
+		mes "[Skia]";
+		mes "When I asked him whether I could use the Scroll of Movement ...";
+		next;
+		mes "[Skia]";
+		mes "When he told me to wait for a while in this room ...";
+		next;
+		select("Who told you to wait?");
+		cutin "ep16_skia_nerius04.bmp",0;
+		mes "[Skia]";
+		mes "It was Nihil. He said he would come after finishing everything.";
+		mes "...";
+		mes "Ah! My heart is beating fast again!";
+		mes "What's wrong with me ...";
+		next;
+		if (select( "... A heart disease.", "Perhaps it's love?" ) == 1) {
+			mes "[Spica]";
+			mes "... What? A heart disease?";
+		}
+		else {
+			mes "[Spica]";
+			mes "... Love??";
+		}
+		cutin "ep16_spica_nerius01.bmp",1;
+		next;
+		cloakoffnpc "Spica Nerius#ep162_01", getcharid(0);
+		npctalk "Could you tell me slowly?", "Spica Nerius#ep162_01", bc_self;
+		mes "Skia told Spica about her symptoms.";
+		next;
+		cutin "ep16_spica_nerius03.bmp",1;
+		mes "[Spica]";
+		mes "Oh my god! Skia!";
+		mes "What do you like about Prince Nihil?";
+		mes "Is it his handsome face?";
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Oh, what?";
+		mes "Why do you keep mentioning Nihil?";
+		mes "The hero asked me the same thing ...";
+		next;
+		cutin "ep16_spica_nerius06.bmp",1;
+		mes "[Spica]";
+		mes "Come on, my sister.";
+		mes "What you mentioned so far were the moments when you were with Prince Nihil.";
+		mes "................";
+		next;
+		cutin "ep16_spica_nerius05.bmp",1;
+		mes "[Spica]";
+		mes "As I expected ............";
+		mes "Let's talk about this later.";
+		mes "Oh ... You will be in trouble once my mother knows this.";
+		next;
+		cutin "",255;
+		mes "[Bel]";
+		mes "Prince Grantz has arrived.";
+		next;
+		cloakoffnpc "Kronecker G. Heine#ep16", getcharid(0);
+		mes "[Kronecker]";
+		mes "Hmm. The esteemed daughters of the Nerius family are here too.";
+		mes "First of all, " + strcharinfo(0) + " I have come to show my gratitude to you.";
+		cutin "ep16_kronecker_granz_heine.bmp",2;
+		next;
+		mes "[Kronecker]";
+		mes "Thanks to your support, we kept the tradition of our royal family. And we avoided the dirty tricks of malicious people.";
+		next;
+		mes "[Kronecker]";
+		mes "It is true that Nihil overstepped his place during the process. But we removed the dishonor on our family.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Prince, didn't we finish the discussion in the conference?";
+		mes "Thanks to the Prince, you have gained an advantage in the trade with the Schwaltzvalt government.";
+		next;
+		cutin "ep16_kronecker_granz_heine.bmp",2;
+		mes "[Kronecker]";
+		mes "... Right.";
+		mes "Although Fritz and I were involved, Nihil did quite a good job in terms of domestic affairs.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "Prince. You still don't want to accept him. Do you?";
+		next;
+		cutin "ep16_kronecker_granz_heine.bmp",2;
+		mes "[Kronecker]";
+		mes "It is not true.";
+		mes "I also learned a lot during this event.";
+		mes "It was an unexpected result.";
+		next;
+		mes "[Kronecker]";
+		mes "On second thought, I didn't give any opportunity to Nihil. And he may have been sad about it.";
+		mes "... Anyhow ... He must have.";
+		next;
+		mes "[Kronecker]";
+		mes "Thanks to this event, the Heine family learned a lot.";
+		mes "All we hope now is for Peter, who is in the hospital, to wake up.";
+		next;
+		mes "[Kronecker]";
+		mes "Hmm, let me stop talking about private stuff.";
+		mes "I have " + strcharinfo(0) + " come to compensate";
+		next;
+		mes "[Kronecker]";
+		mes "This might be a small reward considering what you have done for us.";
+		mes "... But please take it.";
+		next;
+		mes "[Kronecker]";
+		mes "You can continue to enjoy everything you did as a guest. We have agreed on it.";
+		mes "As you always have shown us honest faith.";
+		getitem 6919,10;	// TokenOfHonor
+		getexp 500000,500000;
+		completequest 7741;// Let's return
+		terra_gloria_main = 24;
+		next;
+		mes "[Kronecker]";
+		mes "Then I will let you young people enjoy the conversation.";
+		mes "See you later.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "See you later. I will contact you.";
+		npctalk "I will be waiting.", "Kronecker G. Heine#ep16", bc_self;
+		next;
+		cloakonnpc "Kronecker G. Heine#ep16", getcharid(0);
+		mes "[Spica]";
+		mes "Skia?";
+		mes "Why don't you have a quiet conversation with me?";
+		mes "" + strcharinfo(0) + " seems like most things are arranged. Now I will leave with my poor sister.";
+		next;
+		cutin "ep16_skia_nerius03.bmp",0;
+		mes "[Skia]";
+		mes "Ah ... Hero.";
+		mes "Next time, please visit the Nerius family again!";
+		next;
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "By the way, I received a letter from ^4d4dffPhilopontess^000000.";
+		mes "He told you to visit him at ^4d4dffWerner Laboratory Entrance^000000. Don't forget to visit him.";
+		next;
+		mes "[Spica]";
+		mes "I don't know why he used me as a contact point. What a brave young man.";
+		mes "I will see you later.";
+		close2;
+		setpcblock PCBLOCK_NPC, true;
+		cutin "",255;
+		npctalk "Now, tell me everything about Nihil!", "Spica Nerius#ep162_01", bc_self;
+		sleep2 2000;
+		npctalk "Why do you keep talking about Nihil ...", "Skia Nerius#ep162_01", bc_self;
+		sleep2 2000;
+		npctalk "Look at that! Your face is red again! What the ...", "Spica Nerius#ep162_01", bc_self;
+		sleep2 2000;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : ....", bc_self;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		cloakonnpc "Skia Nerius#ep162_01", getcharid(0);
+		cloakonnpc "Spica Nerius#ep162_01", getcharid(0);
+		end;
+	}
+	end;
+
+OnInit:
+	cloakonnpc "Nihil M. Heine#ep162_01";
+	cloakonnpc "Spica Nerius#ep162_01";
+	cloakonnpc "Skia Nerius#ep162_01";
+	end;
+}
+
+
+// Lighthalzen airport
+lhz_airport,187,40,6	duplicate(dummy_cloaked_npc)	Skia#ep162_03	4_EP16_SKIA
+
+lhz_airport,189,39,3	script	Crux#ep162_01	4_EP16_CRUX,{
+	if (terra_gloria_main < 3) {
+		cutin "ep16_crux_findel03.bmp",1;
+		mes "[Crux]";
+		mes "Oh, hello.";
+		mes "Nice to meet you here.";
+		mes "Me? I am just doing the task the Lady gave me.";
+		sleep2 300;
+		cutin "ep16_crux_findel02.bmp",1;
+		close2;
+		cutin "",255;
+		npctalk "I have to finish quickly and go back ...", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 3) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "Ah, have you arrived?";
+		mes "Have you come alone?";
+		mes "I heard Skia was coming too ...";
+		next;
+		cloakoffnpc "Skia#ep162_03", getcharid(0);
+		npctalk "I'm here!", "Skia#ep162_03", bc_self;
+		mes "[Crux]";
+		mes "Oh! You've arrived.";
+		mes "The Prince of the Heine family ordered me, so I came to Lighthalzen. Do you think that man will show up?";
+		cutin "ep16_crux_findel03.bmp",2;
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "I think he will.";
+		mes "That man who used to be a chamberlain ... Didn't you write on the report that he was trying to contact someone?";
+		next;
+		mes "[Crux]";
+		mes "Yes. I did.";
+		mes "I thought he was seeking the person behind the chamberlain.";
+		mes "He was also asking for more payment.";
+		cutin "ep16_crux_findel01.bmp",2;
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "According to Nihil, the person behind the chamberlain is likely to be in Lighthalzen.";
+		mes "Here or Einbroch. But Nihil said those guys would probably hate a city full of smoke.";
+		next;
+		mes "[Crux]";
+		mes "Hmm. Really?";
+		mes "Then the person behind him may be in a high position or have authority. Or he/she might be rich.";
+		cutin "ep16_crux_findel01.bmp",2;
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Umm. Anyway, what we have to do is find that guy here in Lighthalzen.";
+		mes "And what do we know about his features and clothes?";
+		next;
+		mes "[Crux]";
+		mes "A man with a neat appearance, with light brown hair down to his shoulders.";
+		mes "His name is Bruno ... Since it's such a common name, it may be an alias.";
+		cutin "ep16_crux_findel01.bmp",2;
+		next;
+		mes "[Crux]";
+		mes "I will investigate southern Lighthalzen, and the lady will investigate nearby the department store and hotel.";
+		mes "Adventurer, please search ^4d4dffthe north and northeast area^000000.";
+		next;
+		mes "[Crux]";
+		mes "Once you find anything, ^4d4dffplease meet in front of the central department store and we'll share information^000000.";
+		mes "Now let us move quickly.";
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Oh, yes.";
+		mes "Crux ... You are a great actor.";
+		mes "See you later.";
+		mes "You too, hero!";
+		erasequest 7731;// Secret Action
+		setquest 7732;// Searching the suspect
+		terra_gloria_main = 4;
+		close2;
+		cloakonnpc "Skia#ep162_03", getcharid(0);
+		cutin "",255;
+		end;
+	}
+	if (terra_gloria_main == 4) {
+		mes "[Crux]";
+		mes "I will investigate southern Lighthalzen, including the airport.";
+		mes "Adventurer, please take care of the north and northeast areas.";
+		cutin "ep16_crux_findel01.bmp",1;
+		next;
+		mes "[Crux]";
+		mes "Once you find anything, ^4d4dffplease meet in front of the central department store and we'll share information^000000.";
+		close3;
+	}
+	if (terra_gloria_main == 5) {
+		mes "[Crux]";
+		mes "Really? He headed to the slum?";
+		mes "We are in trouble.";
+		mes "I will follow you with the lady by any means.";
+		mes "Adventurer, please go there first.";
+		cutin "ep16_crux_findel03.bmp",1;
+		close3;
+	}
+	if (terra_gloria_main == 6) {
+		cutin "ep16_crux_findel01.bmp",1;
+		mes "[Crux]";
+		mes "You mean ... Bruno?";
+		mes "It will be difficult to use the airship. So we are moving separately.";
+		next;
+		mes "[Crux]";
+		mes "Don't worry about me, I will see you again in the palace.";
+		mes "Please give my regards to Lady Spica.";
+		close3;
+	}
+	if (terra_gloria_main == 7) {
+		cutin "ep16_crux_findel03.bmp",1;
+		mes "[Crux]";
+		mes "Don't you have to go to Yuno?";
+		close3;
+	}
+	if (terra_gloria_main == 8) {
+		cutin "ep16_crux_findel01.bmp",1;
+		mes "[Crux]";
+		mes "I have an appointment in the hotel in Lighthalzen.";
+		mes "Let's go.";
+		close3;
+	}
+	cutin "ep16_crux_findel01.bmp",1;
+	mes "[Crux]";
+	mes "I don't like leaving you like this for a long time ...";
+	mes "... I have no other choice.";
+	next;
+	cutin "ep16_crux_findel02.bmp",1;
+	mes "[Crux]";
+	mes "This is what you want.";
+	close3;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(7731) == 1" );
+	end;
+}
+
+// Lighthalzen
+lighthalzen,202,167,5	script	Skia#ep162_n	4_EP16_SKIA,{
+	if (terra_gloria_main < 4) {
+		npctalk "Hmm~ Where on earth is he ...", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 4) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "So far, I haven't seen anyone suspicious!";
+		mes "But I will find him soon.";
+		mes "I don't know why, but I have a strong belief about it.";
+		mes "The belief that he must be here!";
+		close3;
+	}
+	if (terra_gloria_main == 5) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "He must have gone to the slum!";
+		mes "We have to find a way to get there.";
+		next;
+		mes "[Skia]";
+		mes "I will tell Crux. You go after that guy first, please.";
+		close3;
+	}
+	if (terra_gloria_main == 6) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Let's go back to the palace now.";
+		mes "Crux took that Bruno guy.";
+		close3;
+	}
+	cutin "ep16_skia_nerius01.bmp",0;
+	mes "[Skia]";
+	mes "I always wanted to visit this place as a tourist. I never imagined to come here this way.";
+	mes "Wonderful city.";
+	close3;
+}
+
+// Event Top Side
+lighthalzen,177,294,5	duplicate(dummy_cloaked_npc)	Man#ep162_01	1_M_01
+lighthalzen,179,293,1	duplicate(dummy_cloaked_npc)	Scientist#ep162_01	4_LGTSCIENCE
+
+lighthalzen,186,293,0	script	#ep162_evt01	HIDDEN_WARP_NPC,2,2,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 4) {
+		setpcblock PCBLOCK_NPC, true;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : .....! Those people?!", bc_self;
+		sleep2 1000;
+		cloakoffnpc "Man#ep162_01", getcharid(0);
+		cloakoffnpc "Scientist#ep162_01", getcharid(0);
+		npctalk "Haven't we completed our business already?", "Scientist#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "Why did you come all the way here and call me out?", "Scientist#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "... I just did it for money, but I faced an unexpected situation.", "Man#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "I am struggling now. You don't want me to get captured. Do you?", "Man#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "... Let me give you more money. If money is what you want.", "Scientist#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "That's it. From now on, I cannot live in Schwaltzvalt or Rune Midgarts.", "Man#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "... So I need to take some more money. Thank you for understanding.", "Man#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "Since there are too many eyes here, wait in the southern slum. I will send someone soon.", "Scientist#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "You have to come yourself.", "Man#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "I see. Go now, before other people see you.", "Scientist#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "I will wait.", "Man#ep162_01", bc_self;
+		sleep2 1000;
+		cloakonnpc "Man#ep162_01", getcharid(0);
+		sleep2 1000;
+		npctalk "Hey, get rid of him.", "Scientist#ep162_01", bc_self;
+		sleep2 2000;
+		npctalk "Yes", "Man#ep162_01", bc_self;
+		sleep2 1000;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : (Who was that person? I only heard a voice.)", bc_self;
+		sleep2 2000;
+		npctalk "... He should have stayed in line. Too much is as bad as too little.", "Scientist#ep162_01", bc_self;
+		erasequest 7732;// Searching the suspect
+		setquest 7733;// Pursuit!
+		terra_gloria_main = 5;
+		sleep2 3000;
+		setpcblock PCBLOCK_NPC, false;
+		cloakonnpc "Scientist#ep162_01", getcharid(0);
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I must tell Skia about this and head to the slum right away!", bc_self;
+		end;
+	}
+}
+
+// Event Right Side
+lighthalzen,307,265,5	duplicate(dummy_cloaked_npc)	Suspicious mercenary#ep	3454
+lighthalzen,305,264,6	duplicate(dummy_cloaked_npc)	Crux#ep162_02	4_EP16_CRUX
+
+lighthalzen,306,267,5	script	Skia#ep162_04	4_EP16_SKIA,{
+	if (terra_gloria_main == 6) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Let's go back to the palace.";
+		mes "Crux will take care of Bruno.";
+		mes "Then we will get ready for the investigation, right?";
+		next;
+		mes "[Skia]";
+		mes "I have to tell Nihil about this.";
+		mes "Let's go back.";
+		close3;
+	}
+	end;
+
+OnInit:
+	cloakonnpc "Skia#ep162_04";
+	end;
+}
+
+lighthalzen,309,263,3	script	Man#ep162_02	1_M_01,{
+	if (terra_gloria_main != 5)
+		npctalk "Hey, what are you looking at? Go away!", "", bc_self;
+	else {
+		setpcblock PCBLOCK_NPC, true;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Bruno?", bc_self;
+		sleep2 1000;
+		npctalk "Who are you? Why do you call me?", "", bc_self;
+		sleep2 1000;
+		cloakoffnpc "Suspicious mercenary#ep", getcharid(0);
+		npctalk "We are in trouble.", "Suspicious mercenary#ep", bc_self;
+		sleep2 2000;
+		npctalk ".... Heart ... Heart Hunter! What is a Heart Hunter doing here?!", "", bc_self;
+		sleep2 2000;
+		npctalk ".....", "Suspicious mercenary#ep", bc_self;
+		sleep2 2000;
+		npctalk "Damn! He swindled me! Hey you, save me! I will give you all the money you want.", "", bc_self;
+		sleep2 2000;
+		npctalk "......", "Suspicious mercenary#ep", bc_self;
+		sleep2 2000;
+		npctalk "Now, die.", "Suspicious mercenary#ep", bc_self;
+		sleep2 500;
+		cloakoffnpc "Skia#ep162_04", getcharid(0);
+		cloakoffnpc "Crux#ep162_02", getcharid(0);
+		specialeffect EF_NPC_STOP, AREA, "Suspicious mercenary#ep";
+		specialeffect EF_HIT3, AREA, "Suspicious mercenary#ep";
+		sleep2 300;
+		npctalk "No ... What a shame ...", "Suspicious mercenary#ep", bc_self;
+		npctalk "No!!", "", bc_self;
+		sleep2 300;
+		npctalk "Are you all right?", "Skia#ep162_04", bc_self;
+		npctalk "Who is this guy? I overpowered him.", "Crux#ep162_02", bc_self;
+		sleep2 2000;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I am all right.", bc_self;
+		sleep2 4000;
+		npctalk "This mercenary is same as the last time! If we capture this guy and investigate ...", "Skia#ep162_04", bc_self;
+		npctalk "... Damn, not much I can do.", "Suspicious mercenary#ep", bc_self;
+		sleep2 2000;
+		specialeffect EF_BEGINSPELL, AREA, "Suspicious mercenary#ep";
+		sleep2 500;
+		specialeffect EF_BEGINSPELL, AREA, "Crux#ep162_02";
+		sleep2 500;
+		specialeffect EF_MAGNUMBREAK, AREA, "Suspicious mercenary#ep";
+		specialeffect2 EF_GUARD;
+		specialeffect EF_GUARD, AREA, "Crux#ep162_02";
+		specialeffect EF_GUARD, AREA, "Skia#ep162_04";
+		specialeffect EF_GUARD;
+		sleep2 1000;
+		cloakonnpc "Suspicious mercenary#ep", getcharid(0);
+		monster "lighthalzen",307,265, "Suspicious mercenary", 3454,1, "Man#ep162_02::OnMobDead";
+		killmonster "lighthalzen", "Man#ep162_02::OnMobDead";
+		sleep2 2000;
+		npctalk "What!", "Crux#ep162_02", bc_self;
+		npctalk "What is it? He killed himself?", "Skia#ep162_04", bc_self;
+		sleep2 2000;
+		npctalk "It was a suicide bombing, but he failed. He gave up his life too easily.", "Crux#ep162_02", bc_self;
+		sleep2 3000;
+		npctalk "And ... You must be Bruno?", "Crux#ep162_02", bc_self;
+		sleep2 3000;
+		npctalk "You'd never imagine how long it took for us to get here ...", "Crux#ep162_02", bc_self;
+		sleep2 3000;
+		npctalk "Hmm ... Crux, you take Bruno.", "Skia#ep162_04", bc_self;
+		sleep2 3000;
+		npctalk "Bruno, you'd better cooperate with us.", "Skia#ep162_04", bc_self;
+		sleep2 2500;
+		npctalk "Otherwise you will be chased by those guys for the rest of your life, right? If you help us, we won't kill you.", "Skia#ep162_04", bc_self;
+		sleep2 1000;
+		npctalk "....", "", bc_self;
+		sleep2 3000;
+		npctalk "What? You're not answering?", "Skia#ep162_04", bc_self;
+		sleep2 3000;
+		npctalk "Well. Then I'll count on you, Crux.", "Skia#ep162_04", bc_self;
+		sleep2 2000;
+		npctalk "Yes, lady. See you in the palace.", "Crux#ep162_02", bc_self;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		cloakonnpc "Crux#ep162_02", getcharid(0);
+		cloakonnpc "Man#ep162_02", getcharid(0);
+		erasequest 7733;// Pursuit!
+		setquest 7734;// Arrest
+		terra_gloria_main = 6;
+		npctalk "Hero, shall we go back to the palace too?", "Skia#ep162_04", bc_self;
+	}
+	end;
+
+OnMobDead:
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(7733) == 1" );
+	end;
+}
+
+// Yuno Airport
+y_airport,168,41,3	script	Crux#ep162_04	4_EP16_CRUX,{
+	if (terra_gloria_main < 7) {
+		npctalk "... Ah ... I miss him.", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 7) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "I have been waiting.";
+		mes "Since there has been a change in the schedule, we might miss each other.";
+		next;
+		select("You are escorting Spica, right?");
+		mes "[Crux]";
+		mes "That's what I would like to talk about.";
+		mes "Do you know Lady Skia and I requested a meeting in Yuno earlier?";
+		next;
+		mes "[Crux]";
+		mes "Since there are too many eyes in Yuno as well as the presidential residence, they wanted to meet us in a different location.";
+		next;
+		mes "[Crux]";
+		mes "I thought Lady Spica would draw their attention if she stayed too long in Yuno. So she moved to the appointed place immediately.";
+		next;
+		mes "[Crux]";
+		mes "She disguised herself as a tourist ... and is now in ^4d4dffthe hotel in Lighthalzen^000000.";
+		next;
+		mes "[Crux]";
+		mes "I wanted to send her a note to update the changed schedule. But I thought I would meet her here ... So I've been waiting.";
+		next;
+		cutin "ep16_crux_findel02.bmp",2;
+		mes "[Crux]";
+		mes "... ...";
+		mes "Since we do these things secretly, this happens quite often.";
+		mes "I know it's funny, but I am sorry that your trip was in vain.";
+		next;
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "But the Schwartz government is positive about it.";
+		mes "However, I don't know what kind of card the ladies showed them ...";
+		next;
+		mes "[Crux]";
+		mes "Well, I have to take care of my task.";
+		mes "Then let us go to ^4d4dffLighthalzen^000000.";
+		next;
+		if (select( "I will count on you.", "Wait a minute." ) == 2) {
+			mes "[Crux]";
+			mes "Please tell me when you are ready.";
+			mes "Then we will get going.";
+			close3;
+		}
+		mes "[Crux]";
+		mes "This way ...";
+		erasequest 7735;// Secret Action 2
+		setquest 7736;// Small differences between sightseeing and secret bussiness
+		terra_gloria_main = 8;
+		close2;
+		warp "lhz_airport",185,37;
+		end;
+	}
+	if (terra_gloria_main == 8) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "Let's go to Lighthalzen.";
+		next;
+		if (select( "I will count on you.", "Wait a minute." ) == 2) {
+			mes "[Crux]";
+			mes "Please tell me when you are ready.";
+			mes "Then we will get going.";
+			close3;
+		}
+		mes "[Crux]";
+		mes "This way ...";
+		close2;
+		warp "lhz_airport",185,37;
+		end;
+	}
+	if (terra_gloria_main < 18) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "The appointed place is ^4d4dffEinbroch train station^000000.";
+		mes "An agent named ^4d4dffLazy^000000 is waiting for us.";
+		mes "We have to hurry.";
+		close3;
+	}
+	cutin "ep16_crux_findel01.bmp",2;
+	mes "[Crux]";
+	mes "I never imagined that I would be traveling overseas ... I hope everything goes well.";
+	close3;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(7735) == 1" );
+	end;
+}
+
+// Lighthalzen In
+lhz_in02,238,150,0	script	#ep162_lhz_evt02	HIDDEN_WARP_NPC,1,1,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 8) {
+		cloakoffnpc "Spica Nerius#ep162_02", getcharid(0);
+		cloakoffnpc "Philopontess#ep162_01", getcharid(0);
+		cloakoffnpc "Crux#ep162_05", getcharid(0);
+	}
+	end;
+}
+
+lhz_in02,239,145,3	script	Spica Nerius#ep162_02	4_EP16_SPICA,{
+	if (terra_gloria_main == 8) {
+		cutin "ep16_spica_nerius01.bmp",1;
+		mes "[Spica]";
+		mes "You've arrived on time!";
+		mes "Sorry for what happened in Yuno.";
+		mes "They say we'd better move to another place.";
+		next;
+		select("Who said that?");
+		mes "[Spica]";
+		mes "Let me introduce you this person.";
+		mes "He has been sent by the president of Schwaltzvalt.";
+		mes "From now on, you will talk with him before deciding what to do.";
+		next;
+		mes "[Spica]";
+		mes "Tess will explain.";
+		mes "Let's listen to him.";
+		close3;
+	}
+}
+
+lhz_in02,237,146,6	script	Crux#ep162_05	4_EP16_CRUX,{
+	if (terra_gloria_main == 8) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "Please talk to the representative of the Schwaltzvalt government along with the lady.";
+		close3;
+	}
+	if (terra_gloria_main == 9) {
+		cutin "ep16_crux_findel01.bmp",2;
+		mes "[Crux]";
+		mes "The appointed place is ^4d4dffEinbroch train station^000000.";
+		mes "An agent named Lazy is waiting for you.";
+		mes "We have to hurry.";
+		close3;
+	}
+}
+
+lhz_in02,239,148,4	script	Philopontess#ep162_01	4_M_PHILOFONTES,{
+	if (terra_gloria_main == 8) {
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "My name is Philopontess. You can call me Tess.";
+		mes "Naturally, you have to talk to the president about this ... I am sorry we have to meet you this way.";
+		next;
+		mes "[Tess]";
+		mes "The big picture has already been drawn ...";
+		mes "Do you need a detailed explanation?";
+		next;
+		if (select( "Let us hear it.", "Please tell us what to do from now on." ) == 2) {
+			cutin "ep16_tes01.bmp",2;
+			mes "[Tess]";
+			mes "Thank you ... for your concern.";
+			mes "Saying the same thing again is quite hard.";
+		}
+		else {
+			cutin "ep16_spica_nerius01.bmp",0;
+			mes "[Spica]";
+			mes "Haha, it must be a tough job.";
+			mes "Philopontess? Please go ahead.";
+			npctalk "Please call me Tess.", "Philopontess#ep162_01", bc_self;
+			next;
+			cutin "ep16_tes01.bmp",2;
+			mes "[Tess]";
+			mes "" + strcharinfo(0) + " I'm not sure how much you know about this. The political condition in Schwaltzvalt is not good.";
+			next;
+			mes "[Tess]";
+			mes "If you remember the collapse of the Secret Wing, maybe you will know a lot about it.";
+			mes "But the Secret Wing was not destroyed entirely.";
+			next;
+			mes "[Tess]";
+			mes "Although it's only a small number, there are agents who are working on information warfare.";
+			next;
+			mes "[Tess]";
+			mes "I am one of them. Usually, I work as a secretary.";
+			next;
+			mes "[Tess]";
+			mes "The reason I am involved in this issue is that the case requested by the Nerius family is very special.";
+			mes "As you know, the government does not have a very good relationship with the enterprise. And we need cooperation for the facility of the enterprise.";
+			next;
+			mes "[Tess]";
+			mes "So we are taking this opportunity to execute what we have planned.";
+			next;
+			cutin "ep16_spica_nerius02.bmp",0;
+			mes "[Spica]";
+			mes "That organization was destroyed once, so they must be lacking in armed forces. We will be supporting them.";
+			next;
+			cutin "ep16_spica_nerius01.bmp",0;
+			mes "[Spica]";
+			mes "And you are the key player in that mission.";
+			mes "I will count on you.";
+			next;
+			cutin "ep16_tes01.bmp",2;
+			mes "[Tess]";
+			mes "So this will be a cooperative relationship.";
+			mes "We give you the information and discharge surveillance and legal restriction on the facility.";
+			next;
+			mes "[Tess]";
+			mes "Then we want to disable the Enterprisebeyond repair.";
+			next;
+			mes "[Tess]";
+			mes "To avoid surveillance by the enterprise, our president came here secretly and went back immediately.";
+			mes "His excellency entrusted me with the rest, so you can work with me from now on.";
+		}
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "Now, I will let you know the future plans.";
+		mes "The princess is trying to reclaim the secret treasure of your family, right?";
+		next;
+		mes "[Tess]";
+		mes "We estimate that the one who took it is a trustee of the enterprise. And the facility we have to investigate is the ^4d4dffabandoned factory area near Einbroch^000000.";
+		next;
+		mes "[Tess]";
+		mes "We know a lot about this facility.";
+		mes "It is one of the facilities we were planning to investigate.";
+		next;
+		mes "[Tess]";
+		mes "We can send an official letter to the Enterpriserequesting their cooperation in the investigation. But as far as we are concerned, such an official request would only give them time to hide things.";
+		next;
+		mes "[Tess]";
+		mes "Since the royal family of Rune Midgarts is helping us, we decided to run a random inspection.";
+		next;
+		cutin "ep16_crux_findel03.bmp",1;
+		mes "[Crux]";
+		mes "Sorry to interrupt you, but the only agents who can fight here are the adventurer and me ...";
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "I see. An experienced adventurer and a bodyguard ...";
+		mes "We do realize that we do not have enough armed forces. So we have prepared some other strategies.";
+		next;
+		mes "[Tess]";
+		mes "But here, if necessary, we need the help from the adventurer ... What's your name?";
+		mes "" + strcharinfo(0) + ", your cooperation is required.";
+		next;
+		select("I am all right.");
+		mes "[Tess]";
+		mes "Actually, I have a military group in mind to work with us. I'm sure you know them.";
+		mes "It's ^4d4dffRebellion^000000.";
+		next;
+		mes "[Tess]";
+		mes "After the Mercenary Rebellion, those who opposed the Enterprise allied and established the Rebellion.";
+		mes "They will accept our proposal.";
+		next;
+		cutin "ep16_spica_nerius05.bmp",0;
+		mes "[Spica]";
+		mes "Rebellion? Those guys? Are you serious?";
+		mes "It was the government that ignored the mercenaries who were in trouble.";
+		next;
+		mes "[Spica]";
+		mes "That's why they organized a military group themselves and have grown so far ... Do you really think they will be on our side?";
+		next;
+		cutin "ep16_tes03.bmp",2;
+		mes "[Tess]";
+		mes "You know quite a lot about it.";
+		mes "Of course, I expect some buzz.";
+		mes "That's why we need " + strcharinfo(0) + ".";
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "Since they hate us, there has been no progress in the negotiation. That's the problem.";
+		mes "This time, " + strcharinfo(0) + " and the royal family are with us. So the president thinks that we have a strong chance.";
+		next;
+		cutin "ep16_tes02.bmp",2;
+		mes "[Tess]";
+		mes "If the adventurer talks to them, they will listen.";
+		npctalk "Facing them is not something I would prefer either.", "Philopontess#ep162_01", bc_self;
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "The important thing is that we must get the cooperation of the Rebellion.";
+		mes "We must be able to use the military force of the Rebellion.";
+		next;
+		mes "[Tess]";
+		mes "And inspecting the facility must be through the Rebellion and the organization. Only then can we approve your investigation to reclaim the secret treasure.";
+		next;
+		cutin "ep16_spica_nerius02.bmp",0;
+		mes "[Spica]";
+		mes "You are saying that ... if we don't get help from the Rebellion, you cannot approve the investigation of the facility?";
+		next;
+		mes "[Spica]";
+		mes "You already know that they will hate it if the government contacts them.";
+		mes "Then there is one thing we have to do.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",0;
+		mes "[Spica]";
+		mes "We have to rely on the heroic adventurer to borrow the military force of the Rebellion ...";
+		mes "I got it.";
+		next;
+		mes "[Spica]";
+		mes "After all, what we need is an investigation of the ^4d4dfffacility^000000.";
+		mes "There is nothing more we want. Now let us finish the conversation.";
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "And then, " + strcharinfo(0) + " I would like to explain our schedule ...";
+		next;
+		cutin "ep16_spica_nerius05.bmp",0;
+		mes "[Spica]";
+		mes "We have no other choice.";
+		mes "They say it has to be you. No one else ...";
+		mes "" + strcharinfo(0) + "... Will you help us?";
+		next;
+		select("Once we start, we have to finish it.");
+		cutin "ep16_spica_nerius07.bmp",0;
+		mes "[Spica]";
+		mes "Haha. " + strcharinfo(0) + " you never disappoint me.";
+		mes "But I can't vacate my seat for too long.";
+		mes "I am sorry that I cannot be with you until the end of this mission.";
+		npctalk "But I'm sure that person is doing well ...", "Spica Nerius#ep162_02", bc_self;
+		next;
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "So you are going back, princess.";
+		mes "" + strcharinfo(0) + ". Please meet ^4d4dffLazy^000000 in ^4d4dffEinbroch^000000 and work with him. He is a negotiator who we have prepared.";
+		next;
+		mes "[Tess]";
+		mes "An agent named ^4d4dffLazy^000000 will be waiting for you at the ^4d4dffEinbroch train station^000000.";
+		mes "Please don't forget it.";
+		mes "If possible, please hurry.";
+		next;
+		mes "[Tess]";
+		mes "From now on, this is a race against time.";
+		mes "Thank you for your support in advance.";
+		mes "I will go to the president for a report.";
+		next;
+		cloakonnpc "Philopontess#ep162_01", getcharid(0);
+		cutin "ep16_spica_nerius05.bmp",0;
+		mes "[Spica]";
+		mes "... What a straightforward man.";
+		mes "Let's go back now.";
+		mes "Seems like we have finished our job.";
+		next;
+		cutin "ep16_spica_nerius01.bmp",0;
+		mes "[Spica]";
+		mes "I have to entrust you to meet ^4d4dffLazy in Einbroch^000000... For additional issues, I will go back to the palace and handle them with the prince of the Heine family.";
+		next;
+		mes "[Spica]";
+		mes "Then, " + strcharinfo(0) + ".";
+		mes "I wish you fortune in war.";
+		mes "Crux, let's go back.";
+		erasequest 7736;// Small differences between sightseeing and secret bussiness
+		setquest 7737;// Together with Rebel
+		terra_gloria_main = 9;
+		close2;
+		setpcblock PCBLOCK_NPC, true;
+		npctalk "I will see you later.", "Crux#ep162_05", bc_self;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		cloakonnpc "Spica Nerius#ep162_02", getcharid(0);
+		cloakonnpc "Crux#ep162_05", getcharid(0);
+		cutin "",255;
+		end;
+	}
+	end;
+
+OnInit:
+	cloakonnpc "Spica Nerius#ep162_02";
+	cloakonnpc "Crux#ep162_05";
+	cloakonnpc "Philopontess#ep162_01";
+	end;
+}
+
+
+// Einbroch
+einbroch,239,269,0	script	#16nego15	HIDDEN_WARP_NPC,3,0,{
+	end;
+OnTouch:
+	if (terra_gloria_main > 9)
+		cloakonnpc "Unusual person#16nego01", getcharid(0);
+	end;
+}
+einbroch,226,276,0	duplicate(#16nego15)	#16nego16	HIDDEN_WARP_NPC,3,0
+
+einbroch,239,269,3	script	Unusual person#16nego01	4_M_LAZY,{
+	if (terra_gloria_main < 9) {
+		cutin "16lei_01.bmp",2;
+		mes "[Someone crazy about Yuno]";
+		mes "Yuno~ Visit Yuno~ If you were born as a human, go to Yuno~ If you have come to Schwaltzvalt, go to Yuno~ If you are breathing, go to Yuno~";
+		close3;
+	}
+	if (terra_gloria_main == 9) {
+		cutin "16lei_01.bmp",2;
+		mes "[???]";
+		mes "Yuno~ Visit Yuno~ If you were born as a human, go to Yuno~ If you have come to Schwaltzvalt, go to Yuno~ If you are breathing, go to Yuno~";
+		emotion ET_BLABLA;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "They told me to meet the agent of the Secret Wings. Could it be that person? Well, by no means...";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Looks like every moment will be painful if I am together with him.. It must not be him.", bc_self;
+		next;
+		mes "[???]";
+		mes "Yo! Nice to meet you!";
+		emotion ET_SURPRISE;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "No, it should never be him... Let's ignore him for now.";
+		emotion ET_THINK, playerattached();
+		next;
+		mes "[???]";
+		mes "A heron swallows a fish alone.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Heron wants to drink water?";
+		emotion ET_QUESTION, playerattached();
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[???]";
+		mes "In that case, you should say 'A heron hides its secret in the wings'. Didn't you hear that before leaving?";
+		npctalk "I mean, my code name is Heron.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You must be confusing me with someone else...";
+		next;
+		mes "[???]";
+		mes "" + strcharinfo(0) + " Isn't it you...? It must be you! Why do you pretend as you are not?";
+		emotion ET_QUESTION;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I am " + strcharinfo(0) + " that person. But...";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[???]";
+		mes "Are you sure you don't know anything? My name is ^0000cdLazy^000000. Of course it's not my real name. For now, you can just remember that name.";
+		next;
+		mes "[???]";
+		mes "I have been assigned to this mission with you. We have to ask the Rebellion for cooperation.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "If you are Lazy, you must be the agent of the Secret Wings. Right?";
+		emotion ET_SWEAT, playerattached();
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Pipe down~ You must not say that word in a public place like this! You must always be careful! Remember that we are in the middle of a mission!";
+		npctalk "I taught my code name 'Heron' to them and you don't know that! Who was in charge of this communication? A drug user?", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Yes, Yes.";
+		emotion ET_SWEAT, playerattached();
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Just by looking at you, I know they have brought someone very smart. And the callus in your hand indicates that you are a man of the world.";
+		emotion ET_BEST;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You are also taking someone off his/her guard by pretending to be a little naive. You deserve to be trusted by the royal families of Rune Midgarts.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Please, let my hand go.", bc_self;
+		npctalk "Why is your face glow!", "", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "When I read about you in the report, I thought you would look a bit scary. But by seeing you directly, you seem to be different from what I heard. That's why we have to meet someone directly to know him/her well.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "By the way, how are you? Have you been to Arunafeltz?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Well, yes. Kind of...";
+		next;
+		mes "[Lazy]";
+		mes "Wow- Have you met the Pope? Her highness is great. I really like her.";
+		emotion ET_BIGTHROB;
+		next;
+		mes "[Lazy]";
+		mes "Oh, Pope... !!";
+		npctalk "My heart with the red blood belongs to the Pope...", "", bc_self;
+		emotion ET_CRY;
+		next;
+		mes "[Lazy]";
+		mes "I'd really love to meet the Pope. But I am not mentally ready to see the holy face of her highness. I guess I might black out once I see the Pope. If you have time later on, please take me to the Pope.";
+		emotion ET_SHY;
+		next;
+		mes "[Lazy]";
+		mes "By the way, what are we doing here? Aren't we supposed to meet in ^0000cdEinbech^000000? I have been waiting for a long time and came here. And I found you here.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "They told me to come here.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Hey~ Who? Who said that? There must have been some misunderstanding during the communication. We must go to Einbech.";
+		npctalk "Maybe somebody wanted you to struggle.", "", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Well, since I like a train, it doesn't matter how many times I take it.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Let's hurry up. We have a long way to go.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Where are we going now?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "The most dangerous place.";
+		next;
+		cutin "16lei_02.bmp",2;
+		emotion ET_HUK, playerattached();
+		mes "[Lazy]";
+		mes "Calm down! I'm just kidding. You are too serious. We are just going to the secret base of the Rebellion in Einbech.";
+		npctalk "Your face is pale now. Are you all right? If you want to vomit, you can do it over there.", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "I'm just saying that I feel like it is dangerous. I don't mean it will really be dangerous. Calm down.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "If we are negotiating with the Rebellion, why are we going to Einbech instead of Einbroch?";
+		next;
+		mes "[Lazy]";
+		mes "Have you heard of the mercenary revolt in Schwaltzvalt?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "To tell you briefly, the mercenaries were used as a garrison of the republic. But as the republic developed a Guardian, they were about to be abandoned. Then the mercenaries rose in revolt and were nearly annihilated.";
+		next;
+		mes "[Lazy]";
+		mes "Some of the remnants went to Figel, But the rest of them gathered in Einbech and Einbroch to organize the Rebellion. By the way, Einbroch is a large city where many people live ans pass by. Isn't it?";
+		next;
+		mes "[Lazy]";
+		mes "So the Rebellion put their guild in Einbroch. The rest of them were hiding somewhere else in Einbroch. That's why I suggested you to meet in Einbech..";
+		next;
+		mes "[Lazy]";
+		mes "Anyway, the government was overlooking the remnants for various reasons. I'm sure the government is still uncomfortable about it.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "That's why this negotiation is so important. We are going to asking for help to the guy who's angry at me. It won't be easy.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "We should them a sense of apology and a promise of hope in the future. At the same time, ^0000cdwe have to relax their mind and promise with them to cooperate in future affairs^000000...";
+		npctalk "We have to do it alone.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Just by listening to it, it sounds really difficult.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "The most difficult thing is how to enter the ^0000cdsecret base^000000 rather than talking to them.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Anyway, we will think about the method on our way there. You Just trust me and follow me. Nothing is impossible as long as you trust me. You can trust me in any situation.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I don't have much faith in you.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "It's okay, because I trust myself. Out of all these people in this large world, I am the only one whom I trust. So you just follow me.";
+		emotion ET_BEST;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You have great faith in yourself.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Of course. If I don't feel confident about myself, I can't do this job.";
+		next;
+		mes "[Lazy]";
+		mes "Sometimes I have to face some unpleasant situation, and do things that are not sometimes moral. But for my task and survival, I must not hesitate to make momentary decisions and execute my actions.";
+		next;
+		mes "[Lazy]";
+		mes "And let's say you begin to doubt it. Once your mind starts to shake, the task will be in danger. Unwavering confidence is more important than anything else.";
+		emotion ET_OK;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Of course, you need the capability to support your confidence. You can't trust anything without evidence.";
+		emotion ET_BEST;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "After listening to what you said, I don't fully trust you. But I feel like having to trust you.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "It's quite natural. Very good. Good luck in our mission. My goal is to build a reputation of a fantastic duo with you.";
+		emotion ET_BEST;
+		next;
+		mes "[Lazy]";
+		mes "Let's get going. This way.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "The ticket gate is over there! We have to pay for the train. Are you saying we will walk there?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Yikes! Pipe down!! Of course we are taking a train. In a special place and in a special way.";
+		emotion ET_FRET;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "A free ride? Why?";
+		npctalk "Please don't brand it as a free ride.", "", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "If you want to call it a free ride, go ahead. But do you really want to discount your action as a 'free ride'? You can used the elegant expression 'occupation after closed infiltration'.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Yes. Yes. It sounds great.", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Usually, we can feel buy tickets, say hello to the station staff eat delicious snacks, and enjoy our trip.";
+		next;
+		mes "[Lazy]";
+		mes "But we are in the middle of a mission. It's already begun. It's kind of an emergency. So we have to be tense.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I really don't understand the relationship between being tense and free riding.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Do you really thing I'm just trying to save 200 Zeny? I know what I'm doing. You just follow me without nagging. We are in a hurry.";
+		setquest 14595;// To Einbech train station
+		terra_gloria_main = 10;
+		close2;
+		navigateto( "einbroch",267,268,NAV_NONE,1 );
+		cutin "",255;
+		cloakonnpc "Unusual person#16nego01", getcharid(0);
+		cloakoffnpc "Lazy#16nego06", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 10) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Why aren't you following me? We might miss the train!";
+		close2;
+		navigateto( "einbroch",267,268,NAV_NONE,1 );
+		cutin "",255;
+		cloakonnpc "Unusual person#16nego01", getcharid(0);
+		cloakoffnpc "Lazy#16nego06", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 11) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Long time no see! I'm going to another mission spot. Got it? See you later!";
+		close2;
+		cutin "",255;
+		cloakonnpc "Unusual person#16nego01", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main < 17) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Are you okay to be here now?";
+		close2;
+		cutin "",255;
+		cloakonnpc "Unusual person#16nego01", getcharid(0);
+		end;
+	}
+	cutin "16lei_01.bmp",2;
+	mes "[Lazy]";
+	mes "Long time no see! I'm going to another mission spot. Got it? See you later!";
+	close2;
+	cutin "",255;
+	cloakonnpc "Unusual person#16nego01", getcharid(0);
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(14595) == 0 && isbegin_quest(7737) == 1" );
+	end;
+}
+
+einbroch,270,267,5	script	Very small hole#16nego0	4_CRACK,5,5,{
+	if (terra_gloria_main != 10 && terra_gloria_main != 11) {
+		cloakonnpc "Very small hole#16nego0", getcharid(0);
+		cloakonnpc "Lazy#16nego06", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 10) {
+		mes "It is a small hole where one person can barely pass through.";
+		close;
+	}
+	mes "You passed through the hole where one person can barely enter.";
+	close2;
+	warp "einbech",44,207;
+	end;
+
+OnTouch:
+	if (terra_gloria_main == 10 || terra_gloria_main == 11)
+		cloakoffnpc "Very small hole#16nego0", getcharid(0);
+	end;
+}
+
+einbroch,270,268,3	script	Lazy#16nego06	4_M_LAZY,{
+	if (terra_gloria_main != 10) {
+		cloakonnpc "Lazy#16nego06", getcharid(0);
+		end;
+	}
+	cutin "16lei_01.bmp",2;
+	mes "[Lazy]";
+	mes "We are going to take a train here. Do you see ^0000cdvery small hole^000000 in the sewer down there?";
+	next;
+	mes "[" + strcharinfo(0) + "]";
+	mes "Is this... a ^0000cddoghole^000000? I heard the Secret Wings is an executive office of the President. Why are you so needy?";
+	unittalk getcharid(3), "" + strcharinfo(0) + " : I can't believe it. This is not what I imagined.", bc_self;
+	next;
+	cutin "16lei_03.bmp",2;
+	emotion ET_SWEAT, playerattached();
+	mes "[Lazy]";
+	mes "Shh--- I told you not to mention that name. Be careful from now on. I don't want to be stabbed on my back for something I didn't do. If you really want to say it, call it Heron.";
+	npctalk "Your imagination? Seems like you've read too much novels.", "", bc_self;
+	next;
+	emotion ET_FRET;
+	mes "[" + strcharinfo(0) + "]";
+	mes "I mean, why do you have to go through a place like this? Don't they pay you any activity cost? Maybe his excellency doesn't care for all your comfort.";
+	next;
+	cutin "16lei_02.bmp",2;
+	mes "[Lazy]";
+	mes "It's not true. We receive a free pass to use all means of transportation in this continent. They includes airship, train and teleporting, etc.";
+	next;
+	mes "[" + strcharinfo(0) + "]";
+	mes "Then why do you have to go through a place like this?";
+	next;
+	cutin "16lei_01.bmp",2;
+	mes "[Lazy]";
+	mes "Because we don't want to leave the records. We must not be detected by others. Although we get captured, our moving route must be hidden. The moving routes can be a great clue.";
+	next;
+	mes "[Lazy]";
+	mes "No wonder we have the word 'secret' in our name. That's why I move so carefully during my mission.";
+	next;
+	mes "[Lazy]";
+	mes "To avoid being detected, duck yourself and follow me.";
+	terra_gloria_main = 11;
+	close2;
+	cutin "",255;
+	cloakonnpc "Lazy#16nego06", getcharid(0);
+	end;
+
+OnInit:
+	cloakonnpc "Lazy#16nego06";
+	end;
+}
+
+// Einbech
+einbech,44,207,0	script	#16negobok06	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 10 || terra_gloria_main == 11)
+		end;
+	cloakonnpc "Lazy#16nego01", getcharid(0);
+	end;
+}
+einbech,66,208,0	duplicate(#16negobok06)	#16negobok13	HIDDEN_WARP_NPC,5,5
+einbech,90,218,0	duplicate(#16negobok06)	#16negobok14	HIDDEN_WARP_NPC,5,5
+
+einbech,46,208,3	script	Lazy#16nego01	4_M_LAZY,{
+	if (terra_gloria_main < 9) {
+		cutin "16lei_01.bmp",2;
+		mes "[Someone crazy about Yuno]";
+		mes "Yuno~ Visit Yuno~ If you were born as a human, go to Yuno~ If you have come to Schwaltzvalt, go to Yuno~ If you are breathing, go to Yuno~";
+		close3;
+	}
+	if (terra_gloria_main == 9) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "He told me he'd come here. Maybe he's still in Einbroch train station? I have to go there again.";
+		close2;
+		cutin "",255;
+		cloakonnpc "Lazy#16nego01", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 10 || terra_gloria_main == 11) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "This is Einbech. The last time I came here, I was being chased by 17 pursuers.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "I'm sorry I can't tell more than that. It's confidential.";
+		npctalk "It's a national secret.", "", bc_self;
+		next;
+		emotion ET_SWEAT, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "......";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Hey! I just cracked a joke before starting on the mission. You can't even accept?";
+		npctalk "Look at your face now! Don't look at me like that~", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I'm a little nervous. A negotiation...";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You don't have to be nervous. I'm going to be in charge of talking to them. You just add several words beside me.";
+		npctalk "Being nervous? You are cuter than I thought.", "", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "In this mission, the trust is important. There is a reason why the government assigned you to this mission in addition to me, a professional negotiator.";
+		npctalk "It is extremely hard to build trust again. But what else can we do? They want us to stick the broken parts.", "", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "You are known as a hero in this Midgard continent and a symbol of trust. If you come with me, the Rebellion will be less stubborn to us. Once we get trusted by them, everything will work out.";
+		next;
+		emotion ET_BEST;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Talking like that in that clothes, you don't look very persuasive.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "This is my critical costume I prepared for this mission. Who would ever find a tourist suspicious?";
+		npctalk "And these are mt special sunglasses.", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "As I mentioned before, our greatest challenge is to enter the Rebellion's secret base without any armed conflict. This costume is for that purpose.";
+		next;
+		mes "[Lazy]";
+		mes "And Yuno is such a nice place. I have a dream to buy a building there after retirement and spend my golden years comfortably.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Don't they normally choose a resort like Comodo for golden years?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Oh, I don't like a beach. I saw the sea every single day when I was young. Now I'm sick of its salty smell. To leave the sea, I used to have a dream to become a captain of airship.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "If you wanted to become a pilot, why did you become a secret agent?";
+		next;
+		mes "[Lazy]";
+		mes "I can't tell you. It's confidential.";
+		next;
+		emotion ET_SWEAT, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "I see.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I never expected.", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Oh, when you get back after the mission, you can purchase a train ticket and show it to the employee in the train station. But it's free for me.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I have a favor to ask of you. Please let me hit you once.", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Well, where should we go now?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "We have go somewhere deep inside the village. From here on, just trust me and follow me. Since the path is a little complicated, I will leave ^0000cdtraces^000000. Make sure you catch them up.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I can smell something from the traces.", bc_self;
+		erasequest 14595;// To Einbech train station
+		setquest 14596;// Follow the trails
+		terra_gloria_main = 12;
+		close2;
+		cutin "",255;
+		viewpoint 1,74,129,1,0x4D4DFF00;
+		navigateto( "einbech",74,129,NAV_NONE,1 );
+		cloakonnpc "Lazy#16nego01", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 12) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "What are you doing? I told you to follow me.";
+		close2;
+		cutin "",255;
+		viewpoint 1,74,129,1,0x4D4DFF00;
+		navigateto( "einbech",74,129,NAV_NONE,1 );
+		cloakonnpc "Lazy#16nego01", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main < 17) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "We are not supposed to be here now.";
+		mes "We must go to the rebellion.";
+		close2;
+		cutin "",255;
+		cloakonnpc "Lazy#16nego01", getcharid(0);
+		end;
+	}
+	cutin "16lei_01.bmp",2;
+	mes "[Lazy]";
+	mes "Long time no see! I'm going to another mission spot. Got it? See you later!";
+	close2;
+	cutin "",255;
+	cloakonnpc "Lazy#16nego01", getcharid(0);
+	end;
+}
+
+// Main event - Collapsed person
+einbech,94,127,0	script	#16negobok08	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 12) {
+		cloakoffnpc "Lazy#16nego02", getcharid(0);
+		cloakoffnpc "Enormous stack#16nego01", getcharid(0);
+	}
+	end;
+}
+einbech,92,139,0	duplicate(#16negobok08)	#16negobok07	HIDDEN_WARP_NPC,5,5
+einbech,88,114,0	duplicate(#16negobok08)	#16negobok09	HIDDEN_WARP_NPC,5,5
+einbech,76,111,0	duplicate(#16negobok08)	#16negobok10	HIDDEN_WARP_NPC,5,5
+
+einbech,74,130,5	duplicate(dummy_cloaked_npc)	Enormous stack#16nego01	4_SOIL
+einbech,74,130,5	duplicate(dummy_cloaked_npc)	Collapsed person#16nego	4_M_FALLENGONY
+
+einbech,76,131,3	script	Lazy#16nego02	4_M_LAZY,{
+	if (terra_gloria_main == 12) {
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Wait. Stop right there. Somebody is lying down here. Don't step on it. Hey, watch out!";
+		next;
+		emotion ET_HUK, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "Is this a human?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : How come?", bc_self;
+		next;
+		cutin "",255;
+		mes "[Lazy]";
+		mes "If I get rid of this and that...!";
+		npctalk "Come and help me!", "", bc_self;
+		next;
+		cloakonnpc "Enormous stack#16nego01", getcharid(0);
+		cloakoffnpc "Collapsed person#16nego", getcharid(0);
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Wow... I think today is a lucky day. This mission is going to be easier than we thought.";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "What are you talking about?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "What's written on the bottom? Dying message? Are they words? How come he never practiced writing even if he was a Gunslinger?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Hello? Would you please listen to me?", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Adventurer, try to heal this man. Although he has an injury, it's not so serious. Since he's collapsed due to an exhaustion, he'll probably recover himself by a simple treatment. Once he wakes up, I will take all the information from him.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : All of a sudden?", bc_self;
+		sleep2 800;
+		npctalk "Every single moment is unexpected. Do it now.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I don't know how to heal.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Aren't you an adventurer?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Adventurer is not almighty.";
+		npctalk "My god. You're the least powerful adventurer I've ever met.", "", bc_self;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Would you think about it only inside out?", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Well, I have no other choice.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Odin, Freyja, Thor and a god of exhausted traveler. Please show us a mercy!";
+		next;
+		emotion ET_CRY;
+		specialeffect EF_DEVOTION, AREA, "Lazy#16nego02";
+		sleep2 800;
+		specialeffect EF_RESURRECTION, AREA, "Collapsed person#16nego";
+		sleep2 1000;
+		specialeffect EF_REVIVE, AREA, "Collapsed person#16nego";
+		sleep2 1000;
+		specialeffect EF_HO_UP, AREA, "Collapsed person#16nego";
+		mes "[" + strcharinfo(0) + "]";
+		mes "Wow... You're a secret agent and you also know how to heal?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Now you look different.", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Oh, after experiencing so many things, you should do it all.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "I'am so good at various arts and craft. I am such a great person.";
+		npctalk "I'm so lovely~", "", bc_self;
+		emotion ET_CHUP;
+		specialeffect EF_HEARTCASTING, AREA, "Lazy#16nego02";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "He won't wake up immediately, but he'll save his life anyway. If we were too late, he would have died.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "What are you doing? Carry him.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Should I do that?", bc_self;
+		sleep2 500;
+		npctalk "Then should I? Since you're an adventurer who carries 30,000 various items in your bag, you should carry him.", "", bc_self;
+		sleep2 500;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Where did you hear that false rumor...", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Are we carrying him? I thought we were on a secret mission.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "We ^0000cdmust bring^000000 him. No matter what happens, we must bring this man. He will be our ticket to the base.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Ticket?", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Who's this man?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Good question. But since we don't have enough time, let me explain later. We must deliver him before he dies.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : So you just kept him barely alive?", bc_self;
+		erasequest 14596;// Follow the trails
+		setquest 14597;// Corner of Einbech
+		terra_gloria_main = 13;
+		viewpoint 1,217,82,1,0x4D4DFF00;
+		close2;
+		cutin "",255;
+		navigateto( "einbech",217,82,NAV_NONE,1 );
+		cloakonnpc "Lazy#16nego02", getcharid(0);
+		cloakonnpc "Collapsed person#16nego", getcharid(0);
+		end;
+	}
+	if (terra_gloria_main == 13) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "What are you doing? I told you to follow me.";
+		close2;
+		cutin "",255;
+		viewpoint 1,217,82,1,0x4D4DFF00;
+		navigateto( "einbech",217,82,NAV_NONE,1 );
+		cloakonnpc "Lazy#16nego02", getcharid(0);
+		cloakonnpc "Collapsed person#16nego", getcharid(0);
+		end;
+	}
+	end;
+
+OnInit:
+	cloakonnpc "Lazy#16nego02";
+	end;
+}
+
+einbech,200,79,0	script	#16negobok12	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 13)
+		cloakoffnpc "Lazy#16nego03", getcharid(0);
+	end;
+}
+
+einbech,218,82,5	script	Gonie#16nego02	4_M_FALLENGONY,{
+	cutin "16go_01.bmp",2;
+	mes "[??]";
+	mes "......";
+	close3;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+einbech,217,82,3	script	Lazy#16nego03	4_M_LAZY,{
+	if (terra_gloria_main == 13) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Are you here now?";
+		npctalk "You are slower than I expected.", "", bc_self;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Hey! I have been carrying an unconscious person!", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "Put down what you have carried.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Arrgh...";
+		cloakoffnpc "Gonie#16nego02", getcharid(0);
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Oh, I feel alive now.", bc_self;
+		npctalk "You are exaggerating your pain.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Where am I? There's nobody here.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "You can see as much as you know. That's why I'm always tired. People all want me to look at them.";
+		npctalk "I will look at them later.", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Anyway, let's get in here.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "So, where am I?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "You talk too much! I told you we don't have much time. You can listen to my explanation later. Someone who was standing in front of this detected me already and went inside. We don't know what they will prepare.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Well, you are type of a guy who really loves explaining things later on!", bc_self;
+		next;
+		emotion ET_SWEAT, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "Wait, are we going to leave him here?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Yeah. Is there any problem? Is it a problem? Could it be a problem?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You said that we should bring the injured man. Then you told me to carry him all the way here. Now you are abandoning him here?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I, CARRIED, HIM, ALL THE WAY HERE. DIDN'T I?", bc_self;
+		sleep2 300;
+		npctalk "You can say all you want. I'm not afraid of you.", "", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Don't worry about him. He's not going to die. Humans do not die so easily. The fact I'm still alive is the evidence.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : What kind of life was it...?", bc_self;
+		next;
+		emotion ET_SWEAT, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "That's not the issue here.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Come on, let's get in. We don't have much time. Let's talk inside. Aren't you curious to know what's in there?";
+		npctalk "I'm curious! I'm curious! I want to know!", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "We have to see something to get in there.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Look at this. There's an entrance here. This is ^0000cdan entrance hidden in the wall of the beach^000000. It is so fishy. Let's get inside and check what's there.";
+		erasequest 14597;// Corner of Einbech
+		setquest 14598;// Invisible entrance
+		terra_gloria_main = 14;
+		close2;
+		cloakonnpc "Lazy#16nego03", getcharid(0);
+		cutin "",255;
+		end;
+	}
+	if (terra_gloria_main == 14) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "What are you doing? Come in!";
+		close2;
+		cutin "",255;
+		cloakonnpc "Lazy#16nego03", getcharid(0);
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+// rebel_in
+rebel_in,27,45,3	script	Eri#16nego01	4_F_01,{
+	if (terra_gloria_main < 15) {
+		mes "[Eri]";
+		mes "Oh, welcome. This is a weapon store, Clana Nemieri.";
+		close;
+	}
+	mes "[Eri]";
+	mes "In this store, even a small sound creates a huge resonant due to its structure. Please be quite when entering here.";
+	close2;
+	warp "rebel_in",40,43;
+	end;
+}
+
+rebel_in,24,45,3	script	Nemi#16nego01	4_M_MIDDLE,{
+	if (terra_gloria_main < 15) {
+		mes "[Nemi]";
+		mes "A real customer!! We have a customer in this period...";
+		close;
+	}
+	mes "[Nemi]";
+	mes "Be quite when entering.";
+	close2;
+	warp "rebel_in",40,43;
+	end;
+}
+
+rebel_in,21,41,0	script	#16negobok05	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (terra_gloria_main != 14)
+		cloakonnpc "Lazy#16nego04", getcharid(0);
+	end;
+}
+
+rebel_in,23,43,5	script	Gonie#16nego03	4_M_FALLENGONY,{
+	cutin "16go_01.bmp",2;
+	mes "[??]";
+	mes "......";
+	close2;
+	cutin "",255;
+	cloakonnpc "Gonie#16nego03", getcharid(0);
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+rebel_in,23,42,3	script	Lucky#16nego01	4_M_ROOKIE,{
+	if (terra_gloria_main < 15) {
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "Who are you? This is not a place where anyone can come in. Please leave.";
+		close2;
+		warp "einbech",215,80;
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+rebel_in,21,45,5	script	Lazy#16nego04	4_M_LAZY,{
+	if (terra_gloria_main == 14) {
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Ouch! The store looks smaller that it looks from outside. Is there a space behind the pillar?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Is this a firearm store?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Why are we in a firearm store..? I already have a weapon.", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "A real customer?";
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		npctalk "I told you there would be a customer.", "Nemi#16nego01", bc_self;
+		sleep2 300;
+		npctalk "I thought it was someone who stopped to ask the way.", "Eri#16nego01", bc_self;
+		next;
+		cutin "",255;
+		mes "[Shopkeeper]";
+		mes "Welcome. This is ^0000cdClana Nemieri^000000 and we handle various firearms.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Take a look around and tell me if there is anything you are looking for.";
+		npctalk "Don't we have to call inside?", "Nemi#16nego01", bc_self;
+		sleep2 300;
+		npctalk "Calm down. Be cool.", "Eri#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Yeah.. I hope we have what you're looking for.";
+		next;
+		mes "[Shopkeeper]";
+		mes "By the way... How did you find us? This is a small store that only limited people visit.";
+		npctalk "What are you saying?", "Eri#16nego01", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "I wanted to buy a self-defense gun. And someone recommended me this store.";
+		next;
+		emotion ET_SWEAT, getnpcid(0, "Nemi#16nego01");
+		mes "[Shopkeeper]";
+		mes "Who.. was it?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "What would you do if I tell you who that person is?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Wow, this looks cool. Is this the way you hold it?";
+		next;
+		mes "[Shopkeeper]";
+		mes "Sir. That stuff is quite sensitive and you shouldn't tough it inconsiderately.";
+		npctalk "Please take your hands away from there.", "Eri#16nego01", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Didn't you tell me to look all I want? This is so small! Can it ever fire a bullet? Look at the dust here. I guess you're out of business here.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Oh.. That's one of the most popular products in our store.";
+		emotion ET_ANGER, getnpcid(0, "Nemi#16nego01");
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Is this a popular product? I can imagine the quality of this store.";
+		next;
+		mes "[Shopkeeper]";
+		mes "What did you say? Are you insulting my gun now?";
+		npctalk "I won't take it any more! Leave me alone!", "Nemi#16nego01", bc_self;
+		emotion ET_ANGER, getnpcid(0, "Nemi#16nego01");
+		next;
+		mes "[Lazy]";
+		mes "No, I don't mean it. But if you heard it that way, then it's an insult.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Calm down, Nemi. He's a customer.";
+		npctalk "Sir.", "Eri#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Hmm... This looks quite good. How much is it?";
+		next;
+		mes "[Shopkeeper]";
+		mes "3.4 million Zeny.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "That's the price of a snack. Give me one.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Which snack is that expensive?", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "Since it is a display product, we have to place an order. There are too many orders and you have to wait for eight months. Can you wait?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "I'm not the one who's short-tempered. I guess it's you.";
+		npctalk "I can wait for eight months.", "", bc_self;
+		sleep2 300;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Are you conducting psychological warfare?", bc_self;
+		next;
+		emotion ET_ANGER, getnpcid(0, "Nemi#16nego01");
+		mes "[Shopkeeper]";
+		mes "Calm down, Nemi.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Rather than these, show me what you actually sell here. For example, ^0000cdFast Grinder Cutting through the Wind^000000?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Is 'Grinder' the name of a bullet?", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "Hey, who the hell are you?";
+		npctalk "I recognized it at once!", "Nemi#16nego01", bc_self;
+		sleep2 300;
+		npctalk "Calm down! We shouldn't look suspicious!", "Eri#16nego01", bc_self;
+		sleep2 500;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : By looking at your response, it doesn't look the name of a bullet.", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Can't you see? I am a tourist and this is my secretary.";
+		next;
+		emotion ET_SWEAT, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "Sec, secretary...?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Am I your secretary..!!?", bc_self;
+		sleep2 300;
+		npctalk "If you don't like that word, what about a slave?", "", bc_self;
+		sleep2 500;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Hey, you're going too far!", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "Which tourist comes all the way to the weapon store in a mining village where there is nothing to see? Where do you come from?";
+		next;
+		mes "[Lazy]";
+		mes "I just arrived from Yuno. I went there and it was so~ wonderful.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Go back. We don't have what you want.";
+		npctalk "Even if we had one, we would not sell it to you.", "Nemi#16nego01", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "So you're kicking us out? Mr. Nemieri. You can't do this.";
+		emotion ET_HNG;
+		next;
+		mes "[Shopkeeper]";
+		mes "Why can't I kick you out? Go away before call someone.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "You'd better take a look who's out there. His name was... ^0000cdGonie^000000. Right?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Who?", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "What are you talking about?";
+		emotion ET_QUESTION, getnpcid(0, "Nemi#16nego01");
+		next;
+		mes "[Lazy]";
+		mes "Just go outside and check it yourself.";
+		next;
+		mes "[Shopkeeper]";
+		mes "I won't tolerate you if you're playing shallow tricks.";
+		cloakonnpc "Nemi#16nego01", getcharid(0);
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Can he carry him alone?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Is the collapsed guy from here?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : How do you know his name?", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Didn't you know? That's why we struggled to bring him all the way here. Now look. He will use a magic after a short while.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Was he a magician?", bc_self;
+		sleep2 300;
+		npctalk "Now it turns out that you... No, never mind.", "", bc_self;
+		sleep2 500;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : What! What is it? Why did you stop talking?", bc_self;
+		next;
+		cloakoffnpc "Nemi#16nego01", getcharid(0);
+		cloakoffnpc "Gonie#16nego03", getcharid(0);
+		mes "[Shopkeeper]";
+		mes "Arrgh...";
+		next;
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		mes "[Shopkeeper]";
+		mes "Oh, my goodness. Gonie! What happened!";
+		next;
+		mes "[Shopkeeper]";
+		mes "Eri. Go and bring ^0000cdLucky^000000.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Lucky?";
+		emotion ET_QUESTION;
+		next;
+		cloakonnpc "Eri#16nego01", getcharid(0);
+		mes "[Shopkeeper]";
+		mes "Hey, what did you to this guy?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Well, we did something. He was nearly dead and we brought him all the way here by keeping him alive. That was a great job.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Didn't you hurt him to take him as a hostage?";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : What kind of thug do you take me for!", bc_self;
+		sleep2 300;
+		npctalk "Adventurer, calm down. Let me take of this. Save your strength.", "", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Why would I hand over the person I took hostage to you? If you really don't know what happened, wake him up and ask him. What would you do if we didn't hurt him?";
+		next;
+		mes "[Lazy]";
+		mes "You'll be so embarrassed, sorry and ashamed. Would you even lift your head up?";
+		next;
+		cutin "16lei_03.bmp",2;
+		emotion ET_STARE;
+		mes "[Lazy]";
+		mes "Why are you doubting us so much? Enough is enough. Not many villains try to swindle with an injured person.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Right!", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "This is unfair. I've been victimized! Father! Mother!!";
+		emotion ET_CRY;
+		next;
+		cutin "16loo_01.bmp",0;
+		cloakoffnpc "Eri#16nego01", getcharid(0);
+		cloakoffnpc "Lucky#16nego01", getcharid(0);
+		mes "[Lucky]";
+		mes "Nemi, what happened? Is Gonie dead?";
+		emotion ET_STARE_ABOUT, getnpcid(0, "Lucky#16nego01");
+		npctalk "Dead? What a gossip.", "", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "No, he's not.";
+		emotion ET_SCRATCH, getnpcid(0, "Nemi#16nego01");
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "He was nearly dead and we brought him all the way here by keeping him alive~ It was so tough~~";
+		npctalk "I saved his life!", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "He's not doing very well. We have to take him there and lay him down. Wake up, Gonie. Can you walk?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "It will be difficult now. You will have to carry him. If it is hard for you, you can order my strong secretary to lift him~";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Why me again!", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "Arrgh, yeah!!";
+		next;
+		cutin "",255;
+		mes "Bump!";
+		specialeffect EF_QUAKEBODY2, AREA, "Gonie#16nego03";
+		specialeffect EF_GRAVITATION, AREA, "Gonie#16nego03";
+		next;
+		emotion ET_PROFUSELY_SWAT;
+		emotion ET_PROFUSELY_SWAT, playerattached();
+		emotion ET_HUK, getnpcid(0, "Nemi#16nego01");
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		cutin "16go_01.bmp",1;
+		mes "[Gonie]";
+		mes "....!";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Oh, dear! You dropped him. Maybe you have been overworking.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : That must hurt...", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "He opened his eyes! Looks like he is conscious!";
+		next;
+		mes "[Lazy]";
+		mes "No, he opened his eyes instinctively due to the impact. He's still unconscious.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Is that possible?", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "Gonie! Are you all right? Stand up.";
+		next;
+		cutin "",255;
+		mes "Bump!";
+		specialeffect EF_QUAKEBODY2, AREA, "Gonie#16nego03";
+		specialeffect EF_GRAVITATION, AREA, "Gonie#16nego03";
+		next;
+		emotion ET_PROFUSELY_SWAT;
+		emotion ET_PROFUSELY_SWAT, playerattached();
+		emotion ET_HUK, getnpcid(0, "Nemi#16nego01");
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		cutin "16go_01.bmp",1;
+		mes "[Gonie]";
+		mes "....!";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "My god! You dropped him again. Don't work too hard.";
+		npctalk "Shouldn't you go and help?", "Eri#16nego01", bc_self;
+		sleep2 300;
+		npctalk "Oh.. Should I?", "Nemi#16nego01", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "Gonie! What happened to you? Stand up again.";
+		next;
+		cutin "",255;
+		mes "Bump!";
+		specialeffect EF_QUAKEBODY2, AREA, "Gonie#16nego03";
+		specialeffect EF_GRAVITATION, AREA, "Gonie#16nego03";
+		next;
+		emotion ET_PROFUSELY_SWAT;
+		emotion ET_PROFUSELY_SWAT, playerattached();
+		emotion ET_HUK, getnpcid(0, "Nemi#16nego01");
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		cutin "16go_01.bmp",1;
+		mes "[Gonie]";
+		mes "......!!";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Gosh, why is your arm you so weak? Seems like this place is in trouble. You have no manpower so you hired such a weak person? My god.";
+		npctalk "Look at that. Gonie might die.", "Eri#16nego01", bc_self;
+		sleep2 300;
+		npctalk "This time, he could really die.", "Eri#16nego01", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "I don't know who you are. But I hear what you're saying!";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Hear what? I was just speaking inside!";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : As I told you earlier, your big mouth is always a problem.", bc_self;
+		next;
+		cutin "",255;
+		mes "Bump!";
+		specialeffect EF_QUAKEBODY2, AREA, "Gonie#16nego03";
+		specialeffect EF_GRAVITATION, AREA, "Gonie#16nego03";
+		next;
+		specialeffect EF_DEATHSUMMON, AREA, "Gonie#16nego03";
+		emotion ET_PROFUSELY_SWAT;
+		emotion ET_PROFUSELY_SWAT, playerattached();
+		emotion ET_HUK, getnpcid(0, "Nemi#16nego01");
+		emotion ET_HUK, getnpcid(0, "Eri#16nego01");
+		next;
+		cutin "16go_02.bmp",1;
+		mes "[Gonie]";
+		mes "....!!!! ....";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[??]";
+		mes "Gonie! Why are you so bloody? Did they attack you?";
+		npctalk "I wanted to deal with customers. But I have no choice now.", "Nemi#16nego01", bc_self;
+		next;
+		emotion ET_ANGER, getnpcid(0, "Nemi#16nego01");
+		mes "[Shopkeeper]";
+		mes "you! It's because of you! You just can't lift him! Come on. Let's carry him together. You are so weak that you cannot lift anything heavier than a spoon.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Don't give Lucky too much pressure.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "I barely saved his life and now you're trying to kill him. It's a fortune that he is unconscious and cannot feel the pain.";
+		npctalk "Bye the way, he is so dull that he doesn't wake up in this situation.", "", bc_self;
+		sleep2 300;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Perhaps... Is he nearly dead?", bc_self;
+		sleep2 500;
+		npctalk "Maybe.", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "Thanks, Nemi. Arrgh. Let's bring him and lay him down.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Hey. Don't you have anything to tell us?";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[??]";
+		mes "Oh, I heard about you briefly. Thank you very much for saving my friend and taking him all the way here. The shop owner will compensate you.";
+		next;
+		mes "[??]";
+		mes "See you later.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Wait! They're sending us away like this? Seems like they are. Did I get it wrong?";
+		cloakonnpc "Nemi#16nego01", getcharid(0);
+		cloakonnpc "Lucky#16nego01", getcharid(0);
+		cloakonnpc "Gonie#16nego03", getcharid(0);
+		next;
+		mes "[Lazy]";
+		mes "Oops? They went inside! Come on!";
+		next;
+		mes "[Lazy]";
+		mes "You are sending us back after giving some money? You can't do this! At least, you should give me a cup of tea!";
+		next;
+		emotion ET_ANGER;
+		mes "[Shopkeeper]";
+		mes "Please, customer. You shouldn't do this.";
+		next;
+		emotion ET_FRET;
+		mes "[Lazy]";
+		mes "Then tell them to come out! Come out now! Come out! Come out!";
+		npctalk "Why can't you!!", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Hmm, Lazy. This is a little embarrassing. Let's go back now. We have a mission.";
+		next;
+		emotion ET_ANGER;
+		mes "[Lazy]";
+		mes "Never! I am impervious to shame so I will keep shouting until they come out! Hey! Rookie! Come out! Come out!";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I'm feeling ashamed...";
+		npctalk "Are you ashamed of me?", "", bc_self;
+		next;
+		mes "[Shopkeeper]";
+		mes "Be quiet. If you keep making a fuss, I will call someone to get you out of here.";
+		next;
+		emotion ET_FRET;
+		mes "[Lazy]";
+		mes "Who kicks me out! That's impossible! I will lie down here! Come out!";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I am so ashamed...", bc_self;
+		next;
+		cloakoffnpc "Nemi#16nego01", getcharid(0);
+		cloakoffnpc "Lucky#16nego01", getcharid(0);
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "Phew...";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "He's here!!!";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "Your voice is so loud that it hurts my ears. Normally, stupid people have huge voices.";
+		npctalk "Who's stupid? Me?", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		emotion ET_SMILE;
+		mes "[Lazy]";
+		mes "I can do something worse.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Lazy, please calm down!", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "I see. Come in. We can give you a cup of tea as you wish.";
+		next;
+		mes "[Shopkeeper]";
+		mes "Are you sure it's okay?";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "Look at him. He can't even hurt us.";
+		next;
+		cutin "16lei_01.bmp",2;
+		emotion ET_OK;
+		mes "[Lazy]";
+		mes "I feel weird, but I will skip it. Oh! I'm so thirsty~";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Really? Are you sure we are going in there?", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "Follow me. It's this way.";
+		cloakonnpc "Lucky#16nego01", getcharid(0);
+		cloakonnpc "Lazy#16nego04", getcharid(0);
+		erasequest 14598;// Invisible entrance
+		setquest 14599;// A glass of tea gratitude
+		terra_gloria_main = 15;
+		close2;
+		cutin "",255;
+		warp "rebel_in",40,43;
+		end;
+	}
+}
+
+rebel_in,42,43,0	script	#16negobok01	HIDDEN_WARP_NPC,5,1,{
+	end;
+OnTouch:
+	npctalk "Thanks again!", "", bc_self;
+	end;
+}
+
+rebel_in,48,43,0	script	#16negobok02	HIDDEN_WARP_NPC,5,1,{
+	end;
+OnTouch:
+	npctalk "Whenever you come in, be aware of a tail!", "", bc_self;
+	end;
+}
+
+rebel_in,54,43,0	script	#16negobok03	HIDDEN_WARP_NPC,5,1,{
+	end;
+OnTouch:
+	npctalk "Brush the dirt out of your shoes before coming in.", "", bc_self;
+	end;
+}
+
+rebel_in,60,43,0	script	#16negobok04	HIDDEN_WARP_NPC,5,1,{
+	end;
+OnTouch:
+	npctalk "Since the sound echoes here, walk silently. Don't run.", "", bc_self;
+	end;
+}
+
+rebel_in,62,44,5	duplicate(dummy_cloaked_npc)	Philopontess#ep162_02	4_M_PHILOFONTES
+
+rebel_in,65,46,5	script	Rebellion Squadder#ep16	4_M_GUNSLINGER2,3,3,{
+	if (terra_gloria_main < 17) {
+		mes "[Squadder]";
+		mes "These guys are quite loud.";
+		mes "I would never be bored.";
+		close;
+	}
+	if (terra_gloria_main == 17) {
+		mes "[Squadder]";
+		mes "Someone has come, and I think he is looking for you.";
+		mes "I let him come in, even though I had a bad feeling about it.";
+		next;
+		cloakoffnpc "Philopontess#ep162_02", getcharid(0);
+		npctalk "Hoo ...", "Philopontess#ep162_02", bc_self;
+		mes "[Tess]";
+		mes "These people are really rude.";
+		mes "... How can they ever put a visitor outside like this?";
+		cutin "ep16_tes03.bmp",0;
+		next;
+		cutin "",255;
+		mes "[Squadder]";
+		mes "Hey, dude. You talk very politely, don't you?";
+		mes "Without this case, we would never cooperate with the government guys!";
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "There is a visitor from Rune Midgarts. I escorted the visitor to ^4d4dffthe Einbroch hotel^000000.";
+		mes "I don't know how things are going on here.";
+		npctalk "Hey, dude! Are you ignoring me?", "", bc_self;
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "Since I was able to come in here, I guess the negotiation was successful.";
+		mes "... Where is the field of operations?";
+		npctalk "Oh~~ Man!!", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[Squadder]";
+		mes "That's what I was about to tell you!";
+		mes "Without you, I've already told him all about it!";
+		next;
+		mes "[Squadder]";
+		mes "Well, I don't know if you are a visitor or not. But you're going to Einbroch? It's good.";
+		mes "We are going to Einbroch, too.";
+		next;
+		mes "[Squadder]";
+		mes "Einbroch hotel? Nice.";
+		mes "If you take a train here, you will arrive at Einbroch in a moment.";
+		next;
+		select("The heron ...");
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "The heron? Oh, Lazy?";
+		mes "I'm sure he will take care of getting himself there.";
+		next;
+		mes "[Tess]";
+		mes "See you at ^4d4dffEinbroch hotel^000000.";
+		next;
+		cutin "",255;
+		mes "[Squadder]";
+		mes "Well, let me escort you to the train station.";
+		mes "Shall we depart now?";
+		erasequest 7737;// Together with Rebel
+		setquest 7738;// Next operation plan
+		completequest 14615;// Between negotiation and deception
+		terra_gloria_main = 18;
+		next;
+		.@s = select( "Yes!", "We will go on our own." );
+		mes "[Squadder]";
+		mes "From Einbech station to Einbroch, you go on your own.";
+		mes "Now you know the direction.";
+		npctalk "I will be waiting in the hotel.", "Philopontess#ep162_02", bc_self;
+		close2;
+		cloakonnpc "Philopontess#ep162_02", getcharid(0);
+		if (.@s == 1)
+			warp "einbech",68,208;
+		end;
+	}
+	if (terra_gloria_main == 18) {
+		mes "[Squadder]";
+		mes "You said it is ^4d4dffEinbroch hotel^000000.";
+		mes "We will send someone you might know well.";
+		close;
+	}
+	mes "[Squadder]";
+	mes "Maybe it's our chance to give a huge gift to the enterprise~";
+	close;
+
+OnTouch:
+	if (terra_gloria_main == 17)
+		npctalk "Hey, man, this way.", "", bc_self;
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(14615) == 1" );
+	end;
+}
+
+// Main - Einbroch Inn
+function	script	F_Terra_Gloria_Inn	{
+	if (countitem(25179) < 1) {	// no way to retrieve the item ?
+		mes "Since you do not have the ^00ffff" + getitemname(25179) + "^000000, you cannot proceed any further.";
+		close;
+	}
+	mes "[Tess]";
+	mes "......";
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	mes "[Nihil]";
+	mes ".......";
+	next;
+	cutin "ep16_skia_nerius01.bmp",0;
+	mes "[Skia]";
+	mes "What is going on here?";
+	mes "There's something in the air.";
+	next;
+	cutin "ep16_tes03.bmp",1;
+	mes "[Tess]";
+	mes "Well, I have to hand it to you.";
+	mes "I've never stepped back before.";
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	mes "[Nihil]";
+	mes "It's not a big deal, is it?";
+	mes "We are doing this for our mutual benefit.";
+	mes "It's not so definite yet";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "The president will make the final decision anyway.";
+	mes "... But I believe his excellency will accept it without any opposition.";
+	next;
+	cutin "ep16_tes03.bmp",1;
+	mes "[Tess]";
+	mes "But I am still upset.";
+	mes "... It's just a personal feeling.";
+	next;
+	cutin "ep16_skia_nerius02.bmp",0;
+	mes "[Skia]";
+	mes "Would you please let me know what you have been talking about?";
+	next;
+	cutin "ep16_nihi_miseria_heine02.bmp",2;
+	mes "[Nihil]";
+	mes "It's not so serious.";
+	mes "We have been discussing diplomatic issues that could arise during our operation. Also, we talked about the relationship with the Enterpriseand other plans.";
+	next;
+	mes "[Nihil]";
+	mes "We also talked about the possible gains and losses for our two sides during this cooperation ...";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "... Although it was committed by the enterprise, we cannot deny that it happened in our country. So we have to take some responsibility.";
+	next;
+	cutin "ep16_nihi_miseria_heine04.bmp",2;
+	mes "[Nihil]";
+	mes "Yes. That's it.";
+	mes "But I'm not sure whether they could feel more comfortable with this kind compensation or contract ...";
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	select("They?");
+	cutin "ep16_nihi_miseria_heine04.bmp",2;
+	mes "[Nihil]";
+	mes "Once we sent delegates to Schwaltzvalt.";
+	mes "... And they never came back.";
+	npctalk "........", "Philopontess#ep162_03", bc_self;
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	mes "[Nihil]";
+	mes "Come to think of it, you must have cleared your mission.";
+	next;
+	select("Give him the Blessing Star.");
+	mes "[Nihil]";
+	mes "... Terra Gloria, the surface is gone.";
+	mes "Only the star is remaining.";
+	next;
+	select("Is there any problem?");
+	mes "[Nihil]";
+	mes "No, the surface is just a means to cover the star.";
+	mes "What matters is the star.";
+	mes "You have brought the right stuff.";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "Hmm? It's just a gem, isn't it?";
+	mes "Why on earth did they steal this?";
+	next;
+	cutin "ep16_skia_nerius01.bmp",0;
+	mes "[Skia]";
+	mes "Because it is like a fine magic stone.";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes ".. Now they steal the materials for experiments?";
+	mes "There are several more facilities that are presumed to have secret laboratories like this.";
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	mes "[Nihil]";
+	mes "Are you freaking out about the future?";
+	mes "We have already finished talking about it.";
+	mes "I told you that I would support you if you need it.";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "... That was in reference to the mutual agreement. So please don't take the credit for yourself.";
+	next;
+	cutin "ep16_nihi_miseria_heine02.bmp",2;
+	mes "[Nihil]";
+	mes "Credit? I was just telling the truth.";
+	mes "Now, I don't have to be here anymore.";
+	next;
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "You are so cold.";
+	mes "Are you leaving right after obtaining what you want?";
+	next;
+	cutin "ep16_nihi_miseria_heine02.bmp",2;
+	mes "[Nihil]";
+	mes "We will meet again, if necessary.";
+	mes "Tess, if you visit Prontera, you will be more than welcome.";
+	next;
+	cutin "ep16_nihi_miseria_heine01.bmp",2;
+	mes "[Nihil]";
+	mes "Besides, I don't have much time.";
+	mes "I have many things to handle when I get back.";
+	next;
+	mes "[Nihil]";
+	mes "" + strcharinfo(0) + ".";
+	mes "Go back to the palace and wait in your room.";
+	mes "I will make sure that you get enough compensation.";
+	next;
+	cutin "ep16_skia_nerius01.bmp",0;
+	mes "[Skia]";
+	mes "Are we going back now?";
+	mes "I have a Scroll of Movement made by Nilem, the palace magician. Shall I use it?";
+	next;
+	select("Let me join you!!");
+	cutin "ep16_tes01.bmp",1;
+	mes "[Tess]";
+	mes "No, " + strcharinfo(0) + ", please talk to me for a while.";
+	mes "I would like to get some more!";
+	next;
+	cutin "ep16_nihi_miseria_heine02.bmp",2;
+	mes "[Nihil]";
+	mes "Skia, activate it.";
+	next;
+	cutin "ep16_skia_nerius04.bmp",0;
+	mes "[Skia]";
+	mes "Yes~";
+	mes "Mr. Philopontess, so long!";
+	delitem 25179,1;	// Blessing_Star
+	erasequest 7740;// Star of Blessing obtained
+	setquest 7741;// Let's return
+	terra_gloria_main = 23;
+	close2;
+	warp "prontera",155,280;
+	end;
+}
+
+ein_in01,273,275,0	script	#ep162_evt04	HIDDEN_WARP_NPC,1,1,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 18) {
+		setpcblock PCBLOCK_NPC, true;
+		cloakoffnpc "Nihil#ep162_02", getcharid(0);
+		cloakoffnpc "Philopontess#ep162_03", getcharid(0);
+		cloakoffnpc "Skia#ep162_05", getcharid(0);
+		cloakoffnpc "Rookie#ep162_01", getcharid(0);
+		cloakoffnpc "Lazy#ep162_01", getcharid(0);
+		npctalk "Mr. Lazy, was that a joke?", "Philopontess#ep162_03", bc_self;
+		sleep2 2000;
+		npctalk "Uhm? Break-in or ambush ...", "Lazy#ep162_01", bc_self;
+		sleep2 3000;
+		npctalk "... That's not the issue here. We cannot just go there and knock the door!", "Philopontess#ep162_03", bc_self;
+		sleep2 3000;
+		npctalk "Unless we block the area first, they will shut down the laboratory in a flash and escape.", "Philopontess#ep162_03", bc_self;
+		sleep2 3000;
+		npctalk "I see, drug user. So you're saying ... We have a visitor.", "Lazy#ep162_01", bc_self;
+		sleep2 1000;
+		npctalk "Did you say 'drug user'?!", "Philopontess#ep162_03", bc_self;
+		sleep2 2000;
+		npctalk "Here comes the person our welcome visitors have been waiting for, right?", "Lazy#ep162_01", bc_self;
+		sleep2 2000;
+		npctalk "This way.", "Nihil#ep162_02", bc_self;
+		sleep2 2000;
+		setpcblock PCBLOCK_NPC, false;
+		npctalk "Welcome, adventurer!", "Skia#ep162_05", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 22) {
+		cloakoffnpc "Nihil#ep162_02", getcharid(0);
+		cloakoffnpc "Philopontess#ep162_03", getcharid(0);
+		cloakoffnpc "Skia#ep162_05", getcharid(0);
+	}
+	end;
+}
+
+ein_in01,269,285,5	script	Nihil#ep162_02	4_EP16_NIHIL,{
+	if (terra_gloria_main == 18) {
+		mes "[Nihil]";
+		mes "Good to see you again.";
+		mes "I am glad you are safe.";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "This happened because of me. So I came to resolve the crisis myself.";
+		mes "... It would be shameful of me to keep relying on others.";
+		cutin "ep16_nihi_miseria_heine04.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "... Although I cannot help you physically,";
+		mes "I can take care of the information analysis and diplomatic affairs.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		select("Have you been released from confinement?");
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Hmm~ Unfortunately, no.";
+		mes "I reported to the elders of our royal family about this affair. I was scolded and barely got permission to come here.";
+		next;
+		mes "[Nihil]";
+		mes "In the process, I took advantage of your name.";
+		mes "Officially, you are the key person resolving this crisis and I am the one who takes the responsibility. And Lady Skia is observing me.";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "Since they all know about you, everyone is expecting you resolve this by any means.";
+		mes "I apologize for having taken advantage of your name without informing you earlier.";
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Without it, they would never have approved you.";
+		mes "They would have claimed that you had made things worse.";
+		next;
+		mes "[Nihil]";
+		mes "Let's talk about the operation ... Is your name Philopontess?";
+		mes "We are cooperating now, so may I tell you my opinion?";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "Of course.";
+		mes "And please call me Tess.";
+		mes "The Rebellion will be in charge of the military operation. But ...";
+		next;
+		mes "[Tess]";
+		mes "In terms of strategy, we are superior.";
+		mes "And we only have a single chance. So you are welcome to give us a good idea.";
+		npctalk "Unless you are a useless idiot.", "Philopontess#ep162_03", bc_self;
+		next;
+		cutin "16loo_02.bmp",1;
+		mes "[Rookie]";
+		mes "Wow, he sure has a big mouth~";
+		mes "If my sister Elena heard it, she might have shot him in the head!";
+		next;
+		cutin "16loo_01.bmp",1;
+		mes "[Rookie]";
+		mes "We've picked out the combatants. Since this operation is confidential, we selected those who we can fully trust.";
+		mes "And the investigation of the buildings and geographical features?";
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "Of course, we have provided it.";
+		mes "We have been investigating this place for quite a long time.";
+		next;
+		mes "[Nihil]";
+		mes "I read the document.";
+		mes "The funny thing is here ... I don't know why. But there is";
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		next;
+		mes "[Nihil]";
+		mes "no retreat path in the area where the facility is located.";
+		npctalk "No retreat path.", "Philopontess#ep162_03", bc_self;
+		next;
+		cutin "16loo_01.bmp",1;
+		mes "[Rookie]";
+		mes "Hmm. Then all we have to do is get in there and block the only entrance?";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "They might have installed a gate for teleport. We must disable it first.";
+		npctalk "... You mean they use magic?", "Philopontess#ep162_03", bc_self;
+		next;
+		mes "[Nihil]";
+		mes "We must do it quickly, so that the enemy cannot take any countermeasures even if they recognize it.";
+		npctalk "That's quite possible.", "Philopontess#ep162_03", bc_self;
+		next;
+		cutin "16loo_01.bmp",1;
+		mes "[Rookie]";
+		mes "Leave it to us!";
+		mes "The Rebellion hasn't just been napping.";
+		mes "Then the rest here are all surplus manpower?";
+		next;
+		cutin "ep16_tes02.bmp",0;
+		mes "[Tess]";
+		mes "Did you say 'surplus'!?";
+		mes "Have you already forgotten who provided this information?";
+		next;
+		cutin "",255;
+		mes "... The meeting is getting too long.";
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "Hmm ... It's boring, isn't it?";
+		mes "Things have been decided to some degree.";
+		mes "I won't be able to help you directly.";
+		mes "I'm here to watch Nihil.";
+		next;
+		mes "[Skia]";
+		mes "What you have to concentrate on in this facility is the central room.";
+		npctalk "That's correct.", "Philopontess#ep162_03", bc_self;
+		next;
+		cutin "ep16_tes01.bmp",1;
+		mes "[Tess]";
+		mes "What you are looking for might be in the place called the ^4d4dffcentral room^000000.";
+		next;
+		cutin "ep16_nihi_miseria_heine01.bmp",2;
+		mes "[Nihil]";
+		mes "I stepped in to ensure a safe, successful procedure. But actually, we had already provided you with everything we can.";
+		next;
+		mes "[Nihil]";
+		mes "" + strcharinfo(0) + ", once the Rebellion occupies the laboratory, you have to rush to the central room faster than anyone else.";
+		next;
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		mes "[Nihil]";
+		mes "And there ... you will find it.";
+		mes "I have a strong feeling that it is here.";
+		mes "I am counting on you.";
+		next;
+		cutin "16loo_01.bmp",1;
+		mes "[Rookie]";
+		mes "Now let's get going.";
+		mes "It will be dark soon.";
+		mes "It's the end of the week, so security might not be so tight.";
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "The location is ^4d4dffOperation Spot in one o'clock, Northern field in Einbroch^000000.";
+		mes "In the field, please cooperate with the Rebellion.";
+		next;
+		cutin "16loo_01.bmp",1;
+		mes "[Rookie]";
+		mes "The exact ^4d4dffcoordinates of the operation spot are 280, 332^000000. The person in charge of the operation may be ... ^4d4dffJulian^000000.";
+		next;
+		mes "[Rookie]";
+		mes "Go find Julian!";
+		mes "Of course I'm going too.";
+		next;
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		mes "[Nihil]";
+		mes "... Don't forget.";
+		mes "You absolutely must reach the central room and find the ^4d4dffTerra Gloria^000000.";
+		mes "I wish you fortune in war.";
+		next;
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "I will take a chance and participate.";
+		mes "Take care of yourself!";
+		erasequest 7738;// Next operation plan
+		setquest 7739;// Find Star of Blessing!
+		terra_gloria_main = 19;
+		close3;
+	}
+	if (terra_gloria_main == 19) {
+		mes "[Nihil]";
+		mes "... Don't forget.";
+		mes "You absolutely must reach the central room and find the ^4d4dffTerra Gloria^000000.";
+		mes "I wish you fortune in war.";
+		cutin "ep16_nihi_miseria_heine02.bmp",2;
+		next;
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "The location is ^4d4dffOperation Spot in one o'clock, Northern field in Einbroch^000000.";
+		mes "In the field, please cooperate with the Rebellion.";
+		close3;
+	}
+	if (terra_gloria_main == 22)
+		callfunc( "F_Terra_Gloria_Inn" );
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+ein_in01,274,278,3	script	Lazy#ep162_01	4_M_LAZY,{
+	if (terra_gloria_main == 18) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Well, it seems like everyone is here. Maybe I can step out?";
+		mes "From now on, Rookie, the heron emeritus agent, will handle it!";
+		close3;
+	}
+	if (terra_gloria_main == 19) {
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "I've done my job~";
+		mes "Now I'm counting on Rookie!";
+		mes "I'm on vacation from now on!";
+		close3;
+		cutin "",255;
+		npctalk "Who says that?!", "Philopontess#ep162_03", bc_self;
+		npctalk "Hey, Lazy! You are irresponsible!", "Rookie#ep162_01", bc_self;
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+ein_in01,272,282,3	script	Rookie#ep162_01	4_M_ROOKIE,{
+	if (terra_gloria_main == 18) {
+		npctalk "Adventurer, you're late.", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 19) {
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Most of the squadron will be standing by in the operation spot.";
+		mes "They will take a chance to start it, right?";
+		mes "I think they will get in when it gets dark ...";
+		next;
+		mes "[Rookie]";
+		mes "Let's get there before it's too late.";
+		close3;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+ein_in01,271,284,3	script	Skia#ep162_05	4_EP16_SKIA,{
+	if (terra_gloria_main == 18) {
+		npctalk "Please listen to Nihil first.", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 19) {
+		cutin "ep16_skia_nerius01.bmp",0;
+		mes "[Skia]";
+		mes "I will be in the shade.";
+		mes "Oh~ I'm excited to use a sword after such a long time!";
+		close3;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+ein_in01,269,282,1	script	Philopontess#ep162_03	4_M_PHILOFONTES,{
+	if (terra_gloria_main == 18) {
+		npctalk "... Please talk to the Prince first.", "", bc_self;
+		end;
+	}
+	if (terra_gloria_main == 19) {
+		mes "[Tess]";
+		mes "The location is ^4d4dffOperation Spot in one o'clock, Northern field in Einbroch^000000.";
+		mes "In the field, please cooperate with the Rebellion.";
+		close;
+	}
+	if (terra_gloria_main == 22)
+		callfunc( "F_Terra_Gloria_Inn" );
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+
+// Einbroch Field - instance
+ein_fild04,284,332,3	script	Rookie#ep162_02	4_M_ROOKIE,{
+	if (terra_gloria_main < 19) {
+		mes "[Rookie]";
+		mes "... I really hate training ...";
+		close;
+	}
+	if (terra_gloria_main == 19) {
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "^4d4dffJulian^000000 is the person in charge of the operation here.";
+		mes "Please go and ask him.";
+		close3;
+	}
+	if (terra_gloria_main == 20) {// First instance completed
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "They are like rats in a trap. All we have to do is the cleanup~ I'm going in, too.";
+		next;
+		select("Good. I'm counting on you.");
+		mes "[Rookie]";
+		mes "It's natural.";
+		mes "You haven't found that thing you were looking for yet.";
+		mes "I will let you go. Could you just find that thing?";
+		close2;
+		warp "que_swat",155,50;
+		end;
+	}
+	cutin "16loo_01.bmp",2;
+	mes "[Rookie]";
+	mes "As they occupied this place, they are remodeling some of the routes to make a training camp.";
+	mes "... Oh ... I hate it already.";
+	next;
+	if (select( "Enter the military base.", "Good. I'm counting on you." ) == 2) {
+		mes "[Rookie]";
+		mes "Oh ... arg ...";
+		close3;
+	}
+	mes "[Rookie]";
+	mes "There are still come remnants inside the research facilities.";
+	mes "Actually ... they are more like monsters.";
+	mes "Anyway, take care of yourself.";
+	close2;
+	warp "que_swat",155,50;
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(12374) == 0 && isbegin_quest(7739) == 1" );
+	end;
+}
+
+que_swat,147,57,5	duplicate(dummy_cloaked_npc)	Skia#ep162_07	4_EP16_SKIA
+
+que_swat,150,58,3	script	Rookie#ep162_03	4_M_ROOKIE,{
+	if (checkweight(501,1) == 0) {
+		mes "- Cannot progress with quest because you have too many items in your possession. -";
+		close;
+	}
+	if (terra_gloria_main < 22) {
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "The ^4d4dffcentral area^000000 seems to be located in this laboratory, ^4d4dffdeep inside the building's basement^000000.";
+		mes "Since we, the Rebellion, have completely occupied this place, please feel free to go there.";
+		next;
+		mes "[Rookie]";
+		mes "Teleport?";
+		mes "They cannot use it.";
+		mes "We have blocked it.";
+		mes "Actually, it's something we had never thought of ...";
+		npctalk "You are the exception! Use it whenever you want!", "", bc_self;
+		next;
+		mes "[Rookie]";
+		mes "The man with shiny blonde hair told me to block magic related to movement as well.";
+		mes "Well, I know that the magic is more common in Rune Midgarts. Isn't it?";
+		next;
+		mes "[Rookie]";
+		mes "After all, I hope you will find what you are looking for as soon as possible.";
+		close3;
+	}
+	if (terra_gloria_main == 22) {
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Wow, welcome back.";
+		cloakoffnpc "Skia#ep162_07", getcharid(0);
+		npctalk "Hero!", "Skia#ep162_07", bc_self;
+		next;
+		mes "[Skia]";
+		mes "I heard a loud sound inside the central room. I tried to get in there, but it had already been blocked.";
+		next;
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Right. I was bounced out by an unknown force and could not defend the entrance until the end.";
+		mes "I am sorry.";
+		next;
+		mes "[Skia]";
+		mes "... What on earth was it?";
+		next;
+		mes "[Skia]";
+		mes "On my god ... Seyren Windsor?";
+		mes "And you've found it?";
+		next;
+		mes "[Skia]";
+		mes "Then we must go back quickly.";
+		mes "Our mission is completed.";
+		mes "Let's go back to the hotel first.";
+		next;
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Yeah. The rest of it is our task.";
+		mes "There are still plenty of monster experimental subjects inside, but";
+		mes "That's what we have to contend with.";
+		next;
+		mes "[Rookie]";
+		mes "Damn, go away!";
+		close2;
+		cloakonnpc "Skia#ep162_07", getcharid(0);
+		warp "ein_fild04",279,339;
+		end;
+	}
+	if (terra_gloria_main == 23) {
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Oh, I hate it here.";
+		mes "I want to go back to our hidout soon.";
+		mes "Shall we get out of here?";
+		next;
+		if (select( "Leave.", "Stay." ) == 2) {
+			mes "[Rookie]";
+			mes "Hmm, are you the type of person who looks for trouble?";
+			mes "Well, we appreciate it if you help us clean up the remnants.";
+			close3;
+		}
+		mes "[Rookie]";
+		mes "Follow me, then.";
+		close2;
+		warp "ein_fild04",279,339;
+		end;
+	}
+	if (terra_gloria_main == 24) {
+		npctalk "... Shall I go in now?", "", bc_self;
+		end;
+	}
+	mes "[Rookie]";
+	mes "Shall we leave now?";
+	cutin "16loo_01.bmp",2;
+	next;
+	switch( select( "About the monster in the central room", "Leave.", "Stay.", "About YSF01" ) ) {
+	case 1:
+		break;
+	case 2:
+		mes "[Rookie]";
+		mes "Follow me, then.";
+		close2;
+		warp "ein_fild04",279,339;
+		end;
+	case 3:
+		mes "[Rookie]";
+		mes "Since this fuss is likely to continue for a while, we'd be glad if you would stay here and help us~";
+		close3;
+	case 4:
+		mes "[Rookie]";
+		mes "Why did Werner do that?";
+		mes "I don't understand.";
+		mes "... No. Maybe it's weird to understand a lunatic.";
+		next;
+		mes "[Rookie]";
+		mes "Anyways, We have to observe the central room's core.";
+		mes "As long as there are magic inside, the same thing will happen again.";
+		close3;
+	}
+	switch( checkquest(7743,PLAYTIME) ) {
+	case -1:
+		switch( checkquest(7742,HUNTING) ) {
+		case -1:
+			mes "[Rookie]";
+			mes "Welcome.";
+			mes "Without any further ado,";
+			mes "We would like to hunt the ^4d4dffpet child^000000 guy. Will you join us?";
+			next;
+			if (select( "I am the pet child hunter!", "Reject!" ) == 2) {
+				mes "[Rookie]";
+				mes "No, why?";
+				mes "It's just a monster!";
+				mes "We just have to kill it!";
+				mes "Then who should we ask to do it?";
+				close;
+			}
+			mes "[Rookie]";
+			mes "Let's reveal its secret!";
+			mes "Let's find out why it keeps showing up!";
+			setquest 7742;// Sweeping the remnants
+			close3;
+		case 0:
+		case 1:
+			mes "[Rookie]";
+			mes "It's in the central room. The place full of strange spirits in the middle of the central room.";
+			mes "Let me open the door for you first.";
+			close3;
+		case 2:
+			mes "[Rookie]";
+			mes "Great! You're so cool!";
+			mes "Was it a replication of the former experimental subject? Self-replication?";
+			mes "They haven't found out the exact mechanism yet.";
+			next;
+			mes "[Rookie]";
+			mes "Anyhow, thank you for your support.";
+			mes "We will count on you again next time.";
+			erasequest 7742;// Sweeping the remnants
+			setquest 7743;// Sweeping the remnants (Standby)
+			getitem 25155,3;	// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		}
+		end;
+	case 0:
+	case 1:
+		mes "[Rookie]";
+		mes "The same monster is regenerated every single day. Isn't it a bit odd?";
+		next;
+		cutin "16loo_02.bmp",2;
+		mes "[Rookie]";
+		mes "Maybe this guy is one of the objects that were split by transplanting the hearts of Ymir ...";
+		next;
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Anyway, let's see if that guy shows up again.";
+		mes "It's so~ interesting.";
+		close3;
+	case 2:
+		erasequest 7743;// Sweeping the remnants (Standby)
+		mes "[Rookie]";
+		mes "Did you call it a pet child?";
+		mes "Seems like they are completely leaving that guy to the adventurer";
+		next;
+		mes "[Rookie]";
+		mes "If you want, do not hesitate to tell me any time.";
+		mes "I will give you a mission to kill the pet child.";
+		close3;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(7742,HUNTING) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main > 24 && (checkquest(7743,PLAYTIME) == -1 || checkquest(7743,PLAYTIME) == 2) && (checkquest(7742,HUNTING) == -1 || checkquest(7742,HUNTING) == 2)" );
+	end;
+}
+
+que_swat,141,57,5	script	Rebellion squadder#ep16	4_M_GUNSLINGER2,{
+	mes "[Rebellion squadder]";
+	mes "Do you want me to send you out of the operation zone?";
+	next;
+	if (select( "Leave.", "No." ) == 2) {
+		mes "[Rebellion squadder]";
+		mes "Well, good luck.";
+		close;
+	}
+	warp "ein_fild04",279,339;
+	end;
+}
+
+que_swat,145,57,3	script	Philopontess#ep162_04	4_M_PHILOFONTES,{
+	if (checkweight(501,1) == 0) {
+		mes "- Cannot progress with quest because you have too many items in your possession. -";
+		close;
+	}
+	if (terra_gloria_main < 24) {
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "... How many more facilities like this are there in Schwaltzvalt?";
+		mes "Haa ...";
+		close3;
+	}
+	if (terra_gloria_main == 24) {
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "Fortunately, the letter seems to have arrived.";
+		mes "There is a reward that we prepared for you but we have not given it to you yet. So I sent this letter to invite you.";
+		next;
+		mes "[Tess]";
+		mes "And our president said that his excellency would grant you enough compensation if you continue to help us get rid of the unwanted experimental subjects.";
+		next;
+		mes "[Tess]";
+		mes "As you helped our republic, his excellency is trying to get you some useful stuff for adventurers.";
+		next;
+		mes "[Tess]";
+		mes "The ^4d4dffSchwartz Honor Token^000000 that I am about to give you is a sort of reward currency used in the Rebellion as well.";
+		next;
+		mes "[Tess]";
+		mes "Since you are an adventurer, we thought it would be helpful for you.";
+		mes "You can exchange it for an item you need.";
+		next;
+		mes "[Tess]";
+		mes "You may have received it already through the Rebellion.";
+		mes "Since this token is a prize for someone who did a job for Schwaltzvalt ...";
+		next;
+		mes "[Tess]";
+		mes "If you want, you can receive them by continuing to help us.";
+		next;
+		mes "[Tess]";
+		mes "So, we would like to give you simple requests or missions.";
+		mes "This kind of association is likely to continue for a while.";
+		next;
+		mes "[Tess]";
+		mes "Thank you for your support in advance.";
+		getitem 25155,10;	// Swz_Honor_Token
+		getexp 500000,500000;
+		terra_gloria_main = 25;
+		questinfo_refresh();
+		close2;
+		npctalk "Oh, please come here for a moment.", "Rookie#ep162_03", bc_self;
+		end;
+	}
+	switch( checkquest(7745,PLAYTIME) ) {
+	case -1:
+		switch( isbegin_quest(7744) ) {
+		case 0:
+			cutin "ep16_tes01.bmp",2;
+			mes "[Tess]";
+			mes "Since there are still some researchers hiding inside the laboratory, we plan to investigate it.";
+			next;
+			mes "[Tess]";
+			mes "Please take charge of the investigation.";
+			mes "If you do this for us, we will give you the Schwartz Honor Token.";
+			next;
+			if (select( "Accept.", "Reject." ) == 2) {
+				mes "[Tess]";
+				mes "Not now?";
+				mes "Then get some rest and come back please.";
+				close;
+			}
+			mes "[Tess]";
+			mes "Since we don't know where they are hiding, start looking in corners such as cabinets and boxes.";
+			next;
+			mes "[Tess]";
+			mes "After finding researchers, please hand them over to a Rebellion squad member near you.";
+			mes "Thank you for your support in advance.";
+			setquest 7744;// Hiding Researcher
+			close3;
+		case 1:
+		case 2:
+			break;
+		}
+		switch( isbegin_quest(7760) ) {
+		case 0:
+			cutin "ep16_tes01.bmp",2;
+			mes "[Tess]";
+			mes "Inside the laboratory, there are still some researchers hiding somewhere.";
+			mes "Please find them and hand them over to a Rebellion squad member.";
+			next;
+			mes "[Tess]";
+			mes "Thank you for your support in advance.";
+			close3;
+		case 1:
+		case 2:
+			mes "[Tess]";
+			mes "We already heard of your performance from the Rebellion.";
+			mes "Thank you for cooperating with the republic.";
+			setquest 7745;		// Hiding Researcher (Standby)
+			erasequest 7760;	// Well hidden
+			erasequest 7744;	// Hiding Researcher
+			getitem 25155,3;	// Swz_Honor_Token
+			getexp 200000,200000;
+			next;
+			mes "[Tess]";
+			mes "We attacked them all of a sudden, and we expect more of them are still hiding. But we will find them sooner or later.";
+			close;
+		}
+	case 0:
+	case 1:
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "We attacked them all of a sudden, and we expect more of them are still hiding.";
+		mes "We will try to find those guys for now.";
+		close2;
+		npctalk "This is really tough.", "", bc_self;
+		cutin "",255;
+		end;
+	case 2:
+		erasequest 7745;// Hiding Researcher (Standby)
+		cutin "ep16_tes01.bmp",2;
+		mes "[Tess]";
+		mes "If possible, I would ask you to investigate again.";
+		next;
+		if (select( "Leave it to me.", "No thank you." ) == 2) {
+			mes "[Tess]";
+			mes ".......";
+			mes "Then we cannot afford it.";
+			mes "... No, no.";
+			close3;
+		}
+		mes "[Tess]";
+		mes "You're so cool, as usual.";
+		mes "Then could you please find the dregs hiding deep inside the laboratory and shaking like leaves?";
+		mes "I mean, the researchers.";
+		next;
+		mes "[Tess]";
+		mes "As usual, please find the researchers who are hiding and hand them over to a Rebellion squad member.";
+		setquest 7744;// Hiding Researcher
+		close3;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main == 24" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main > 24 && isbegin_quest(7744) == 0 && (checkquest(7745,PLAYTIME) == -1 || checkquest(7745,PLAYTIME) == 2)" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(7760) > 0" );
+	end;
+}
+
+que_swat,159,53,5	script	Yudmil#ep162_2	4_M_GUNSLINGER2,{
+	mes "[Yudmil]";
+	mes "No ... why did I volunteer for this?";
+	next;
+	select("What's wrong with the Gunslinger?");
+	mes "[Yudmil]";
+	mes "Gunslinger is a place made by the Rebellion to train the upcoming generation, so they have a close relationship.";
+	next;
+	mes "[Yudmil]";
+	mes "I heard that there was special training with the Rebellion so I volunteered. And what am I doing now?";
+	mes "I never imagined that I would be sent to this laboratory full of monsters!";
+	next;
+	mes "[Yudmil]";
+	mes "Arrrgh, especially Ms. Elena ... She makes us suffer ...";
+	close;
+}
+
+que_swat,161,53,3	script	Yuslan#ep162_1	4_M_GUNSLINGER3,{
+	if (checkweight(501,1) == 0) {
+		mes "- Cannot progress with quest because you have too many items in your possession. -";
+		close;
+	}
+	if (terra_gloria_main < 20)
+		end;
+	switch( checkquest(7762,PLAYTIME) ) {
+	case -1:
+		switch( checkquest(7761,HUNTING) ) {
+		case -1:
+			mes "[Yuslan]";
+			mes "Inside the laboratory, there is pandemonium due to the experimental subjects that broke out.";
+			mes "Although we kill them, more of them come out from somewhere. I came out rest for a while.";
+			next;
+			if (select( "Help him defeat Chimeras.", "Wish him good luck." ) == 2) {
+				mes "[Yuslan]";
+				mes "Well ... Yeah. This is a part of training, too. Phew.";
+				close;
+			}
+			mes "[Yuslan]";
+			mes "Then, please kill 10 of each";
+			mes "^4d4dffMaterial type Chimeras^000000 and";
+			mes "^4d4dffHuman type Chimeras^000000";
+			mes "wandering around in the laboratory!";
+			next;
+			mes "[Yuslan]";
+			mes "Thanks to your support, we can pause for breath!";
+			mes "Cheer up, Adventurer!";
+			setquest 7761;// Make Chimeras rest in peace
+			close;
+		case 0:
+		case 1:
+			mes "[Yuslan]";
+			mes "Just defeat 10 of each type. That's all I ask.";
+			mes "They are ^4d4dffMaterial type Chimeras and Human type Chimeras.^000000";
+			next;
+			mes "[Yuslan]";
+			mes "... The In Vivo Experiment is really horrible.";
+			close;
+		case 2:
+			mes "[Yuslan]";
+			mes "Wow, you did a great job for us!";
+			mes "Thank you.";
+			mes "Thanks to your support, we managed to get a good rest.";
+			next;
+			mes "[Yuslan]";
+			mes "Please be with us next time!";
+			erasequest 7761;// Make Chimeras rest in peace
+			setquest 7762;// Make Chimeras rest in peace (Standby)
+			getitem 25155,3;	// Swz_Honor_Token
+			getexp 300000,300000;
+			close;
+		}
+	case 0:
+	case 1:
+		mes "[Yuslan]";
+		mes "Hey, thank you for your great job.";
+		mes "But there are still more monsters inside.";
+		mes "We are trying our best to get rid of them. But honestly, it's tough.";
+		next;
+		mes "[Yuslan]";
+		mes "Where do all of these experimental subjects come from?";
+		close;
+	case 2:
+		erasequest 7762;// Make Chimeras rest in peace (Standby)
+		mes "[Yuslan]";
+		mes "They come out continuously. I can't imagine how many experiments they conducted.";
+		mes "I mean, Chimeras.";
+		next;
+		mes "[Yuslan]";
+		mes "I never imagined that Chimeras would be tougher than Heart Hunters ...";
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main > 19 && (checkquest(7761,HUNTING) == -1 || checkquest(7761,HUNTING) == 2) && (checkquest(7762,PLAYTIME) == -1 || checkquest(7762,PLAYTIME) == 2)" );
+	end;
+}
+
+// Part Elena - Fight
+rebel_in,70,78,3	script	Elena Bolkova#16.2rm	4_F_ELENA,{
+	if (terra_gloria_main < 16) {
+		cutin "162elena_01.bmp",2;
+		mes "[USU commander Elena]";
+		mes "Don't pick a fight with USU recklessly.";
+		mes "When people start fighting, I'll be the only one who feels annoyed.";
+		next;
+		emotion ET_FRET;
+		mes "[USU commander Elena]";
+		mes "Although I leashed them, they keep thinking about running out ...";
+		mes "Maybe their brains are filled with gunpowder. Silly weirdos.";
+		close3;
+	}
+
+	// twins daily quest
+	if (isbegin_quest(16031) == 1) {
+		cutin "162elena_01.bmp",2;
+		mes "[USU commander Elena]";
+		mes "Cookie? I don't like sweets.";
+		next;
+		mes "[USU commander Elena]";
+		mes "Lebedev guys baked it...";
+		mes "Then, I have no choice but to taste it. Give it to me.";
+		next;
+		if (countitem(25161) < 1) {
+			mes "[USU commander Elena]";
+			mes "...Why are you empty-handed? Where is the cookie?";
+			close;
+		}
+		emotion ET_DELIGHT;
+		mes "[USU commander Elena]";
+		mes "It smells good.";
+		mes "Seems like they gave a great effort. Tell them thanks.";
+		completequest 16031;// Service: Cookies delivery
+		delitem 25161,1;// Handmade_cookie2
+		close3;
+	}
+
+	if (terra_gloria_main == 16 && isbegin_quest(14602) == 1) {
+		switch( isbegin_quest(16060) ) {
+		case 0:
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Wait, who are you?";
+			next;
+			mes "[USU commander Elena]";
+			mes "I haven't seen you before.";
+			mes "You can't be in this place. Strangers like you are not supposed to be here.";
+			mes "^FF0000>>>Snap<<<^000000";
+			next;
+			mes "[USU commander Elena]";
+			mes "Tell me exactly how you got here and where you came from unless you want to die. ";
+			sleep2 300;
+			npctalk "Elena Bolkova: Otherwise I will have some fun and you won't.", "", bc_self;
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I am... You revealed you're an adventurer who came to help Secret Wings and requested cooperation to the Rebellion.";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Secret Wings? They are just rookies. All they do is suck up to the president.";
+			mes "You're so brave. Who told you to visit me?";
+			mes "I don't want to dance to chicks flapping their wings. Just go away.";
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "No, wait please. In fact, I... no, my companion...";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Your companion saved Gonie?";
+			mes "...... So? You want a reward?";
+			mes "I really hate those who try to use other's lives as they please.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Well... I have a better idea.";
+			mes "Unlike the wimp chatting downstairs, you look quite interesting.";
+			next;
+			cutin "162elena_02.bmp",2;
+			mes "[USU commander Elena]";
+			mes "You said you were just an adventurer, didn't you?";
+			mes "Great. If you defeat me in a fight, I will listen to your story.";
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Pardon?";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Let's fight! I will listen to someone who fights me.";
+			mes "Talk to me when you are ready. Then I will let you enter the waiting room of the arena.";
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Should I fight you all of a sudden? Well, I don't feel like...";
+			next;
+			cutin "162elena_01.bmp",2;
+			emotion ET_HNG;
+			mes "[USU commander Elena]";
+			mes "If you don't want to fight, I guess you don't need any cooperation. Go back.";
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(I'm in trouble. What shall I do?)";
+			next;
+			if (select( "Fight Elena.", "I don't listen to someone weaker than me." ) == 1) {
+				mes "[" + strcharinfo(0) + "]";
+				mes "(I have no choice. Let's prepare for the fight and talk to Elena Bolkova again.)";
+				setquest 16060;	// Fighting is the language of warmonger
+				setquest 16061;	// Fair and equitable result
+				close3;
+			}
+			mes "[" + strcharinfo(0) + "]";
+			mes "I don't listen to someone weaker than m...";
+			next;
+			cutin "162elena_01.bmp",2;
+			emotion ET_SMILE;
+			mes "[USU commander Elena]";
+			mes "Hmm? I misheard something. Haha, could you repeat it?";
+			npctalk "Elena Bolkova: Well, it should have been some dogs barking.", "", bc_self;
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Yes... I'll do it.";
+			next;
+			cutin "162elena_02.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Great. Tell me when you are ready.";
+			setquest 16060;	// Fighting is the language of warmonger
+			setquest 16061;	// Fair and equitable result
+			close3;
+		case 1:
+		case 2:
+			switch( isbegin_quest(16011) ) {
+			case 0:
+				cutin "162elena_01.bmp",2;
+				mes "[USU commander Elena]";
+				mes "Are you ready?";
+				mes "Shall we go to the waiting room now?";
+				next;
+				switch( select( "Go to the waiting room", "Don't go to the waiting room." ) ) {
+				case 1:
+					if (BaseJob != Job_Priest) {
+						mes "[USU commander Elena]";
+						mes "In the waiting room, there is ^0000CDIvan, the person in charge of entrance in arena^000000.";
+						mes "Enter the arena according to the order in reference to Ivan's guide.";
+						next;
+						mes "[USU commander Elena]";
+						mes "You have two minutes. If you defeat me during two minutes, you win.";
+						next;
+						mes "[USU commander Elena]";
+						mes "If you want to surrender during the fight, tell ^0000CDSorita^000000 beside Ivan.";
+						mes "Then you're going to be told off.";
+						setquest 16011;// Arena entrance
+						close2;
+						warp "rebel_in",184,28;
+						end;
+					}
+					mes "[USU commander Elena]";
+					mes "Hmm... By the way, are you really going to fight me?";
+					mes "I am an expert in killing people. And fighting is not your main occupation. You cannot beat me.";
+					next;
+					if (select( "But I will fight.", "I agree with you. I give up." ) == 2) {
+						cutin "162elena_02.bmp",2;
+						mes "[USU commander Elena]";
+						mes "Good. Knowing one's limit is wise.";
+						close3;
+					}
+					mes "[USU commander Elena]";
+					mes "You're a cleric. Fighting is not your duty. I'm sure your companion also knows that.";
+					next;
+					mes "[USU commander Elena]";
+					mes "Besides, you're just an adventurer. You have no business with us and those guys either. I'm afraid you might get hurt.";
+					next;
+					if (select( "No, I will fight.", "...I think you're right. I give up." ) == 2) {
+						cutin "162elena_02.bmp",2;
+						mes "[USU commander Elena]";
+						mes "You're wise. You don't have to get hurt yourself being nosy.";
+						close3;
+					}
+					mes "[USU commander Elena]";
+					mes "You must a fool who doesn't know what's going on.";
+					mes "Do you think I'm kidding? Or your life is too heavy and you'd like to put everything down?";
+					next;
+					mes "[USU commander Elena]";
+					mes "This is the final warning. You stay out of this.";
+					mes "Tell the guy downstairs that you had no choice because I intimidated you.";
+					next;
+					if (select( "This is my problem too.", "Since I don't want to die, I give up." ) == 2) {
+						cutin "162elena_02.bmp",2;
+						mes "[USU commander Elena]";
+						mes "You're wise. Life is important, especially when it's mine.";
+						close3;
+					}
+					mes "[USU commander Elena]";
+					mes "...Why is this your problem?";
+					mes "That talkative guy is a stooge of the President. But you're an adventurer who can just leave.";
+					next;
+					if (select( "This is the problem of those who trust me.", "I guess I'd better go." ) == 2) {
+						cutin "162elena_02.bmp",2;
+						mes "[USU commander Elena]";
+						mes "You're wise. Enjoy your adventure in a safer place.";
+						close3;
+					}
+					cutin "162elena_02.bmp",2;
+					mes "[USU commander Elena]";
+					mes "Well, well, well.";
+					mes "Haha, you are so obstinate.";
+					mes "I like your spirit. You said you need a cooperation? Why not? I agree.";
+					next;
+					cutin "",255;
+					mes "[" + strcharinfo(0) + "]";
+					mes "Oh... Pardon?!";
+					next;
+					cutin "162elena_01.bmp",2;
+					mes "[USU commander Elena]";
+					mes "You said you needed my approval to persuade us. So I approve it.";
+					mes "I like spunky fellows. It's fun to fight with them.";
+					next;
+					mes "[USU commander Elena]";
+					mes "Ah, don't misunderstand it. I'm not saying I will fight you. I'm saying that I will be on your side.";
+					mes "I didn't mean to fight you anyway.";
+					next;
+					mes "[USU commander Elena]";
+					mes "I don't mess with clerics. I don't feel good after fighting them.";
+					npctalk "Elena Bolkova: My mom told me I shouldn't beat a cleric.", "Elena Bolkova#16.2rm"; // 116
+					next;
+					mes "[USU commander Elena]";
+					mes "So I'll support the cooperation with the Secret Wings. Do you need my signature?";
+					next;
+					cutin "",255;
+					mes "[" + strcharinfo(0) + "]";
+					mes "No, you don't have to. Please show your opinion in front of others next time.";
+					next;
+					cutin "162elena_01.bmp",2;
+					mes "[USU commander Elena]";
+					mes "No problem.";
+					mes "Since you are our cooperator now, go around and see if there is anyone who has any problem.";
+					next;
+					mes "[USU commander Elena]";
+					mes "Who knows? If you keep helping them, they might have good feeling about you.";
+					next;
+					mes "[USU commander Elena]";
+					mes "While we never forget the blood that we must take a revenge for, we do not forget the gratitude either.";
+					mes "If you help them, they will give you a token proving your honor.";
+					next;
+					mes "[USU commander Elena]";
+					mes "Just like the one I'm giving you now.";
+					mes "If you want to know what this is for, ask the stubborn guy named 'Strasse' below the stairs.";
+					erasequest 16060;	// Fighting is the language of warmonger
+					erasequest 16061;	// Fair and equitable result
+					setquest 16010;// Battle in great condition
+					completequest 14602;// Hunter on second floor
+					getitem 25155,10;	// Swz_Honor_Token
+					close3;
+				case 2:
+					mes "[USU commander Elena]";
+					mes "Aren't you going to fight me?";
+					mes "Haven't you come here to ask for the cooperation between the Secret Wings and Rebellion?";
+					next;
+					mes "[USU commander Elena]";
+					mes "Will you give up the fight?";
+					next;
+					if (select( "Give up the fight.", "Do not give up the fight." ) == 2) {
+						mes "[USU commander Elena]";
+						mes "Good. I will wait for you.";
+						mes "Tell me when you feel like fighting.";
+						close3;
+					}
+					emotion ET_THINK;
+					mes "[USU commander Elena]";
+					mes "...... Hmm.";
+					next;
+					mes "[USU commander Elena]";
+					mes "A coward who's scared at me won't be helpful for the Rebellion at all.";
+					mes "Get lost.";
+					erasequest 16060;	// Fighting is the language of warmonger
+					erasequest 16061;	// Fair and equitable result
+					close3;
+				}
+				end;
+			case 1:
+			case 2:
+				if (isbegin_quest(16061) != 2) {
+					cutin "162elena_01.bmp",2;
+					mes "[USU commander Elena]";
+					mes "... Hmm. So this is it.";
+					mes "If you want to fight me again, I will give you another chance.";
+					next;
+					if (select( "Enter the waiting room.", "Do not enter the waiting room." ) == 1) {
+						mes "[USU commander Elena]";
+						mes "Great. You have guts.";
+						mes "Ivan will guide you inside.";
+						mes "If you want to surrender during a fight, tell Sorita.";
+						mes "Let's do it!";
+						close2;
+						warp "rebel_in",184,28;
+						end;
+					}
+					mes "[USU commander Elena]";
+					mes "Aren't you going to fight me?";
+					mes "Haven't you come here to ask for the cooperation with the Rebellion?";
+					next;
+					mes "[USU commander Elena]";
+					mes "Will you give up the fight?";
+					next;
+					if (select( "Give up the fight.", "Do not give up the fight." ) == 2) {
+						mes "[USU commander Elena]";
+						mes "Good. I will wait for you.";
+						mes "Tell me when you feel like fighting.";
+						close3;
+					}
+					emotion ET_THINK;
+					mes "[USU commander Elena]";
+					mes "...... Hmm.";
+					next;
+					mes "[USU commander Elena]";
+					mes "A coward who's scared at me won't be helpful for the Rebellion at all.";
+					mes "Get lost.";
+					erasequest 16011;// Arena entrance
+					erasequest 16061;	// Fair and equitable result
+					close3;
+				}
+				cutin "162elena_02.bmp",2;
+				emotion ET_DELIGHT;
+				mes "[USU commander Elena]";
+				mes "Haha! I lost.";
+				mes "My feeling was right. It was such a thrilling fight after a long time!";
+				next;
+				cutin "162elena_01.bmp",2;
+				mes "[USU commander Elena]";
+				mes "As I promised, I will listen to you. Go ahead.";
+				next;
+				cutin "",255;
+				mes "[" + strcharinfo(0) + "]";
+				mes "(So she's listening to me now. Persuading her will be much more difficult.)";
+				next;
+				mes "[" + strcharinfo(0) + "]";
+				mes "Yes. I have come to request a cooperation between the Secret Wings and the Rebellion.";
+				mes "In order to persuade the people of Rebellions, I would like to ask you for help...";
+				next;
+				cutin "162elena_01.bmp",2;
+				mes "[USU commander Elena]";
+				mes "Okay. I will help you.";
+				mes "What should I do?";
+				next;
+				cutin "",255;
+				mes "[" + strcharinfo(0) + "]";
+				mes "Pardon? You haven't heard my story yet...";
+				next;
+				cutin "162elena_02.bmp",2;
+				emotion ET_SMILE;
+				mes "[USU commander Elena]";
+				mes "You don't have to tell me the story. You've already told me the story physically. If I can fight on the same side with you, I will welcome whatever it is.";
+				mes "So I support the cooperation with the Secret Wings. Do you need my signature?";
+				next;
+				cutin "",255;
+				mes "[" + strcharinfo(0) + "]";
+				mes "No, you don't have to. Please show your opinion in front of others next time.";
+				next;
+				cutin "162elena_01.bmp",2;
+				mes "[USU commander Elena]";
+				mes "Good. ...... By the way,";
+				mes "If you have time, visit the arena any time.";
+				mes "I will fight you even if you come every day.";
+				npctalk "Elena Bolkova: Make sure you come back here.", "", bc_self;
+				next;
+				mes "[USU commander Elena]";
+				mes "Since you are our cooperator now, go around and see if there is anyone who has any problem.";
+				next;
+				mes "[USU commander Elena]";
+				mes "Who knows? If you keep helping them, they might have good feeling about you.";
+				next;
+				mes "[USU commander Elena]";
+				mes "While we never forget the blood that we must take a revenge for, we do not forget the gratitude either.";
+				mes "If you help them, they will give you a token proving your honor.";
+				next;
+				mes "[USU commander Elena]";
+				mes "Just like the one I'm giving you now.";
+				mes "If you want to know what this is for, ask the stubborn guy named 'Strasse' below the stairs.";
+				erasequest 16011;// Arena entrance
+				erasequest 16060;	// Fighting is the language of warmonger
+				erasequest 16061;	// Fair and equitable result
+				setquest 16010;// Battle in great condition
+				completequest 14602;// Hunter on second floor
+				getexp 200000,200000;
+				getitem 25155,10;	// Swz_Honor_Token
+				close3;
+			}
+		}
+	}
+	cutin "162elena_01.bmp",2;
+	mes "[USU commander Elena]";
+	if (BaseJob == Job_Priest) {
+		mes "Hi. What is it now?";
+		mes "Have you met our members?";
+	}
+	else {
+		mes "Hi. What is it now?";
+		mes "A fight? Welcome!";
+	}
+	next;
+
+	switch( isbegin_quest(16009) ) {
+	case 0:
+		.@menu$[0] = "I have come to fight.";
+		break;
+	case 1:
+	case 2:
+		switch( isbegin_quest(16011) ) {
+		case 0:
+			.@menu$[0] = "I am ready.";
+			break;
+		case 1:
+		case 2:
+			.@menu$[0] = "...This is it.";
+			break;
+		}
+		if (isbegin_quest(16061) == 2)	// official twisted way to build the menu..
+			.@menu$[0] = "How was the result of the fight?";
+		break;
+	}
+
+	if (lebedev_quest_16_2 == 0 || lebedev_quest_16_2 == 11)
+		.@menu$[1] = "I am not busy today, I stopped by.";
+	else if (lebedev_quest_16_2 == 10)
+		.@menu$[1] = "I have brought Lebedev sisters.";
+	else
+		.@menu$[1] = "Tell her about Lebedev twins.";
+
+	switch( select( .@menu$[0], .@menu$[1] ) ) {
+	case 1:
+		switch( checkquest(16010,PLAYTIME) ) {
+		case -1:
+			break;
+		case 0:
+		case 1:
+			mes "[USU commander Elena]";
+			mes "...... Hmm.";
+			if (BaseJob == Job_Priest) {
+				mes "Are you sure you have to fight me now?";
+				mes "If you really think so, come back tomorrow. I called it a day now.";
+			}
+			else {
+				mes "No. Not now.";
+				mes "I would like to fight you when you are in the top condition. Come back tomorrow.";
+			}
+			close3;
+		case 2:
+			erasequest 16010;// Battle in great condition
+			break;
+		}
+		switch( isbegin_quest(16009) ) {
+		case 0:
+			if (BaseJob != Job_Priest) {
+				cutin "162elena_02.bmp",2;
+				mes "[USU commander Elena]";
+				mes "Oh, great!";
+				mes "Tell me when you are fully ready. I will go to the waiting room.";
+				setquest 16009;// Fighting is the language of warmonger
+				setquest 16061;	// Fair and equitable result
+				close3;
+			}
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Hmm...?";
+			mes "I told you. I don't fight clerics.";
+			next;
+			cutin "",255;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I would like to fight you! Please allow me!";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Oh, every time I beat the hell out of a cleric, I become quite unlucky on that day. It's true.";
+			mes "So I'd rather not fight a cleric...";
+			next;
+			mes "[USU commander Elena]";
+			mes "............";
+			next;
+			mes "[USU commander Elena]";
+			mes "...Huh, look at your eyes. I have no choice but to fight you.";
+			mes "But I will ^0000CDgo very easy on^000000 you. Don't make drama after you defeat me.";
+			setquest 16009;// Fighting is the language of warmonger
+			setquest 16061;	// Fair and equitable result
+			close3;
+		case 1:
+		case 2:
+			break;
+		}
+		switch( isbegin_quest(16011) ) {
+		case 0:
+			mes "[USU commander Elena]";
+			mes "Are you ready?";
+			mes "Shall we go to the waiting room now?";
+			next;
+			if (select( "Go to the waiting room", "Don't go to the waiting room." ) == 1) {
+				mes "[USU commander Elena]";
+				mes "In the waiting room, there is ^0000CDIvan, the person in charge of entrance in arena^000000.";
+				mes "Enter the arena according to the order in reference to Ivan's guide.";
+				next;
+				mes "[USU commander Elena]";
+				mes "You have two minutes. If you defeat me during two minutes, you win.";
+				next;
+				mes "[USU commander Elena]";
+				mes "If you want to surrender during the fight, tell ^0000CDSorita^000000 beside Ivan.";
+				mes "Then you're going to be told off.";
+				setquest 16011;// Arena entrance
+				close2;
+				warp "rebel_in",184,28;
+				end;
+			}
+			mes "[USU commander Elena]";
+			mes "Aren't you going to fight me?";
+			mes "Hm...";
+			next;
+			mes "[USU commander Elena]";
+			mes "Will you give up the fight?";
+			next;
+			if (select( "Give up the fight.", "Do not give up the fight." ) == 2) {
+				if (BaseJob != Job_Priest) {
+					mes "[USU commander Elena]";
+					mes "Great, I will be waiting.";
+					mes "I enjoy fighting you.";
+					close3;
+				}
+				mes "[USU commander Elena]";
+				mes "As I told you, you don't have to do this... You're so persistent.";
+				mes "Well, I remember I told you that I like it.";
+				close3;
+			}
+			mes "[USU commander Elena]";
+			if (BaseJob != Job_Priest)
+				mes "...You made me expect it. And what are you doing now?";
+			else
+				mes "Good idea. You'll be quite sad if you are beat up without having done anything wrong. Won't you?";
+			erasequest 16009;// Fighting is the language of warmonger
+			erasequest 16061;	// Fair and equitable result
+			close3;
+		case 1:
+		case 2:
+			if (isbegin_quest(16061) != 2) {
+				mes "[USU commander Elena]";
+				if (BaseJob == Job_Priest)
+					mes "Don't you think you've had enough of it by now? If you want to quit, tell me any time.";
+				else {
+					mes "...Hmm. You're not in a top condition?";
+					mes "If you want to do this again, welcome.";
+				}
+				next;
+				if (select( "Enter the waiting room.", "Do not enter the waiting room." ) == 1) {
+					mes "[USU commander Elena]";
+					if (BaseJob == Job_Priest)
+						mes "Ho, you have the guts.";
+					else
+						mes "I like it.";
+					mes "Ivan will guide you inside.";
+					mes "If you want to surrender, tell Sorita.";
+					mes "Let's do it!";
+					close2;
+					warp "rebel_in",184,28;
+					end;
+				}
+				mes "[USU commander Elena]";
+				if (BaseJob == Job_Priest) {
+					mes "You're not in a top condition? Go inside and take some rest.";
+					mes "Shall we stop?";
+				}
+				else {
+					mes "You're not in a top condition?";
+					mes "Take care of yourself.";
+				}
+				next;
+				mes "[USU commander Elena]";
+				mes "Don't make me feel sorry for you.";
+				next;
+				if (select( "Give up the fight.", "Do not give up the fight." ) == 2) {
+					mes "[USU commander Elena]";
+					if (BaseJob == Job_Priest)
+						mes "Hey, you don't have to do this...";
+					else {
+						mes "Great, I will be waiting.";
+						mes "I enjoy fighting you.";
+					}
+					close3;
+				}
+				mes "[USU commander Elena]";
+				if (BaseJob == Job_Priest)
+					mes "Right. Let's stop the fight.";
+				else
+					mes "...We have no choice. Come back later.";
+				erasequest 16009;// Fighting is the language of warmonger
+				erasequest 16011;// Arena entrance
+				erasequest 16061;	// Fair and equitable result
+				close3;
+			}
+			if (BaseJob == Job_Priest) {
+				cutin "162elena_01.bmp",2;
+				mes "[USU commander Elena]";
+				mes "I told you that I'd ^0000CDgo easy on you^000000. Although won the fight, you didn't actually win it. Got it?";
+				next;
+				emotion ET_DELIGHT;
+				mes "[USU commander Elena]";
+				mes "...Being mean is not my character. This is why I don't want to be entangled with clerics...";
+				mes "Hey, pronounce the benediction for me before leaving.";
+			}
+			else {
+				cutin "162elena_02.bmp",2;
+				emotion ET_DELIGHT;
+				mes "[USU commander Elena]";
+				mes "Hahaha, great fight!";
+				mes "What a pity. I wanted to win today...";
+				next;
+				mes "[USU commander Elena]";
+				mes "I'm glad that you are becoming stronger.";
+				mes "I can see the result of steady training.";
+				next;
+				mes "[USU commander Elena]";
+				mes "Come back. I can fight you everyday.";
+			}
+			erasequest 16009;// Fighting is the language of warmonger// Fighting is the language of warmonger
+			erasequest 16011;// Arena entrance
+			erasequest 16061;	// Fair and equitable result
+			setquest 16010;// Battle in great condition
+			getexp 400000,400000;
+			getitem 25155,3;// Swz_Honor_Token
+			close3;
+		}
+		end;
+	case 2:
+		if (terra_gloria_main < 17) {
+			cutin "162elena_02.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Not busy? That's good.";
+			mes "Enjoy it while you can.";
+			close3;
+		}
+		if (lebedev_quest_16_2 == 0) {
+			mes "[USU commander Elena]";
+			mes "Not busy? That's a good news.";
+			mes "Apart from fighting... I would like to ask you for a favor.";
+			next;
+			mes "[USU commander Elena]";
+			mes "I'm not sure if I can say this to an outsider... But you are close to the Rebellion now.";
+			mes "Will you keep the secret?";
+			next;
+			if (select( "Yes, I will.", "It will be difficult." ) == 2) {
+				mes "[USU commander Elena]";
+				mes "... Then I can't tell you.";
+				mes "Forget what I've said.";
+				close3;
+			}
+			mes "[USU commander Elena]";
+			mes "Yes. Make sure you keep the secret.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Good. First of all... do you know about USU that I am commanding?";
+			next;
+			if (select( "Superior... unit?", "Isn't it where you isolated problem children?" ) == 1) {
+				mes "[USU commander Elena]";
+				mes "... No. It's not true.";
+				mes "It's actually the opposite.";
+			}
+			else {
+				mes "[USU commander Elena]";
+				mes "... What?";
+				next;
+				cutin "162elena_02.bmp",2;
+				mes "[USU commander Elena]";
+				mes "Haha... Kaka. Right. You know very well about it.";
+				mes "But don't say that in front of the troops. They might shoot you.";
+			}
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "USU stands for ^0000CDUnder Seal Unit^000000. It's a group of weirdos who did some crazy things.";
+			mes "Since they had done great job for the Rebellion, we isolate them with lead on their neck rather than death penalty or discharging.";
+			next;
+			mes "[USU commander Elena]";
+			mes "As I told you, it's a unit outside our regulation. So I can't tell you about it in detail. But we do several things that Rebellions don't do.";
+			mes "You can imagine all you want, including murder or violence. It will be worse than that.";
+			next;
+			mes "[USU commander Elena]";
+			mes "But we still have a absolute rule. We don't mess up with other Rebellions.";
+			mes "Although we let them do whatever they want outside, we teach them who's holding their lead.";
+			next;
+			mes "[USU commander Elena]";
+			mes "And there are new members... ^0000CDJana Levedeva^000000 and ^0000CDIlya Lebedev^000000. They are twins and still young.";
+			mes "Although they are young, their ability is outstanding. The problem is that they are out of control.";
+			next;
+			mes "[USU commander Elena]";
+			mes "They skip the training and hurt a squadder by causing an accident during training... Recently, they tried to run away from the unit and got caught. So the duty manager and I had a hard time.";
+			next;
+			mes "[USU commander Elena]";
+			mes "According to the regulation, we have to discharge them.";
+			mes "... But they are still under age. According to the commander of their former unit, they don't have parents.";
+			next;
+			mes "[USU commander Elena]";
+			mes "If we kick out these guys, they might become hooligans. At the worst, they will be involved in crime.";
+			mes "It sounds funny that I'm saying this as a commander of USU...";
+			next;
+			emotion ET_THINK;
+			mes "[USU commander Elena]";
+			mes "At least I don't want to see kids disgracing themselves.";
+			mes "But by looking at what they are doing, they will live as animals with lead in USU at best.";
+			next;
+			mes "[USU commander Elena]";
+			mes "... Maybe they are already regarding me as an enemy. So they won't listen to me.";
+			mes "I know how to make them listen to me. But it will only make the situation worse.";
+			next;
+			mes "[USU commander Elena]";
+			mes "So I request you to check their problem and solve it, adventurer.";
+			mes "If they don't say anything, ask other fellows around them.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Would you help me?";
+			next;
+			if (select( "I will help.", "No." ) == 2) {
+				mes "[USU commander Elena]";
+				mes "I don't want to demand you to do this.";
+				mes "It's a problem inside our unit. So we'd better handle ourselves.";
+				next;
+				mes "[USU commander Elena]";
+				mes "Forget what I told you.";
+				close3;
+			}
+			mes "[USU commander Elena]";
+			mes "Thanks.";
+			mes "^0000CDYana and Ilya twins^000000 are in the lobby.";
+			mes "They have bright silver hairs and they're always together. You'll find them easily.";
+			next;
+			mes "[USU commander Elena]";
+			mes "In case you don't get any outcome after talking to them, talk to other fellows.";
+			mes "The mess personnel... and another fellow in the outside store seems to want to say something.";
+			npctalk "Elena Bolkova: Are they it Mason and Milo in Clana Nemieri..?", "", bc_self;
+			setquest 16012;// Troublesome twin
+			lebedev_quest_16_2 = 1;
+			questinfo_refresh();
+			close3;
+		}
+		if (lebedev_quest_16_2 == 1) {
+			mes "[USU commander Elena]";
+			mes "So, you talked to them?";
+			mes "Hmm, not yet...";
+			next;
+			mes "[USU commander Elena]";
+			mes "You are the only one I can trust now.";
+			mes "I'll count on you, adventurer.";
+			close3;
+		}
+		if (lebedev_quest_16_2 < 5) {
+			mes "[USU commander Elena]";
+			mes "Did you talk to them?";
+			next;
+			mes "[USU commander Elena]";
+			mes "If you cannot judge it easily, you can talk to ^0000CDother fellows around them^000000.";
+			npctalk "Elena Bolkova: Seems like Milo and Mason have many things to say.", "", bc_self;
+			close3;
+		}
+		if (lebedev_quest_16_2 == 5) {
+			mes "[USU commander Elena]";
+			mes "So, how is it going?";
+			next;
+			emotion ET_THINK;
+			mes "[USU commander Elena]";
+			mes "Hmm... Not at all?";
+			mes "I though they might open their mind to a stranger. But I was wrong.";
+			next;
+			mes "[USU commander Elena]";
+			mes "...There's someone you should talk to lastly.";
+			mes "I didn't want to do this.";
+			npctalk "Elena Bolkova: I wanted to solve this problem myself if possible.", "", bc_self;
+			next;
+			mes "[USU commander Elena]";
+			mes "Go downstairs and find ^0000CDEricsson Adler, commander of a detached force^000000. He must be nearby the fireplace.";
+			mes "He's middle-aged man... and a former boss of the twins.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Since the guys have been assigned to my unit, I wanted to take care of them here. But they're not helping us.";
+			mes "If I ask Adler about the guys, it won't look so good. That's why I am requesting you. Please.";
+			erasequest 16015;// The cause of failure is a careless attempt
+			setquest 16016;// Borrowing wisdom of the experts
+			lebedev_quest_16_2 = 6;
+			questinfo_refresh();
+			close3;
+		}
+		if (lebedev_quest_16_2 == 6) {
+			mes "[USU commander Elena]";
+			mes "^0000CDEricsson Adler, commander of a detached force^000000 must be nearby the fireplace.";
+			next;
+			mes "[USU commander Elena]";
+			mes "He's a former boss of the twins.";
+			npctalk "Elena Bolkova: I didn't want to do this.", "", bc_self;
+			close3;
+		}
+		if (lebedev_quest_16_2 == 7) {
+			mes "[USU commander Elena]";
+			mes "How's it going on now?";
+			close3;
+		}
+		if (lebedev_quest_16_2 == 8) {
+			cutin "",255;
+			mes "You told Elena Bolkova what Lebedev twins told you.";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "So... That was the reason.";
+			mes "I had already heard about that accident.";
+			next;
+			mes "[USU commander Elena]";
+			mes "But I had no idea they were feeling such a burden.";
+			mes "Since they were out of control... there was no way for me to recognize it.";
+			next;
+			emotion ET_THINK;
+			mes "[USU commander Elena]";
+			mes "Well, they're still kids after all. Since they have great ability, Me and other squadders treated them as adults.";
+			mes "We should not have done it...";
+			next;
+			mes "[USU commander Elena]";
+			mes "And I should have talked to Adler beforehand.";
+			mes "Thanks, " + strcharinfo(0) + ". You helped me so much.";
+			next;
+			mes "[USU commander Elena]";
+			mes "I guess I have to tell them something anyway.";
+			mes "Will you help me once again? Tell them that I'm looking for them. And you come with them please.";
+			erasequest 16017;// Twin's sincere confession
+			setquest 16018;// Encourage instead of punishment
+			lebedev_quest_16_2 = 9;
+			questinfo_refresh();
+			close3;
+		}
+		if (lebedev_quest_16_2 == 9) {
+			mes "[USU commander Elena]";
+			mes "The twins will be nearby the place where they've always been.";
+			mes "Tell them about me and come back with them.";
+			close3;
+		}
+		if (lebedev_quest_16_2 == 10) {
+			mes "[USU commander Elena]";
+			mes "So you're all here? I've heard the whole story.";
+			next;
+			cloakoffnpc "Ilya Lebedev#16.2rms", getcharid(0);
+			cloakoffnpc "Jana Levedeva#16.2rms", getcharid(0);
+			cutin "",255;
+			mes "[Ilya Lebedev]";
+			mes "Yes.";
+			next;
+			mes "[Jana Levedeva]";
+			mes "......Yes...";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Jana Levedeva and Ilya Lebedev! Attention!";
+			npctalk "Jana Levedeva: Yes!", "Jana Levedeva#16.2rms", bc_self;
+			npctalk "Ilya Lebedev: Yes! Yep!", "Ilya Lebedev#16.2rms", bc_self;
+			next;
+			emotion ET_ANGER, getnpcid(0, "Elena Bolkova#16.2rm");
+			mes "[USU commander Elena]";
+			mes "Are you insane? You ran away from the unit for a private reason. And you hurt your companion!";
+			next;
+			mes "[USU commander Elena]";
+			mes "This may look like a mercenary group like a piece of garbage. But we deal with people's life. We have disciplines that you must abide by.";
+			next;
+			cutin "",255;
+			mes "[Lebedev twins]";
+			mes "......";
+			next;
+			mes "[Lebedev twins]";
+			mes "......We're sorry...";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "But before I scold you about it...";
+			mes "I am sorry.";
+			npctalk "Jana Levedeva: Pardon...?", "Jana Levedeva#16.2rms", bc_self;
+			npctalk "Ilya Lebedev: Sorry...?", "Ilya Lebedev#16.2rms", bc_self;
+			next;
+			mes "[USU commander Elena]";
+			mes "I didn't know that you had been forced so much and could not consider it. And I wasn't there for counseling even though I was your boss.";
+			next;
+			mes "[USU commander Elena]";
+			mes "This is totally my fault and my mistake.";
+			mes "I apologize. You had a rough time of it.";
+			npctalk "Elena Bolkova: I sincerely apologize.", "", bc_self;
+			next;
+			cutin "",255;
+			mes "[Lebedev twins]";
+			mes "......No, no... We have to apologize.";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "From now on, I will pay more attention to you.";
+			mes "Would you please try to make sure this never happens again?";
+			next;
+			cutin "",255;
+			mes "[Jana Levedeva]";
+			mes "...No... We are the ones who should apologize.";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "It will never happen again...";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Since this is a military group, you have regulations to abide by.";
+			mes "But since you are minors, I would like to give you an opportunity to grow as much as possible.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Jana Levedeva and Ilya Lebedev. I will exclude you from the real fight for some time.";
+			mes "Instead, feel free to do the works that you can do inside the unit.";
+			next;
+			mes "[USU commander Elena]";
+			mes "You can make new friends, start a hobby or enhance your shooting ability. You can even do things that I cannot expect.";
+			mes "Do what you want to do. Make sure you abide by the regulations.";
+			next;
+			cutin "",255;
+			mes "[Jana Levedeva]";
+			mes "So we're... not being kicked out?";
+			next;
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Don't make me say it twice. I told you I was responsible for what happened.";
+			next;
+			cutin "",255;
+			mes "[Ilya Lebedev]";
+			mes "Oh... Thank you so much!";
+			mes "And... Sorry.";
+			npctalk "Ilya Lebedev: I'm sorry... Commander Bolkova...", "Ilya Lebedev#16.2rms", bc_self;
+			next;
+			mes "[Jana Levedeva]";
+			mes "Thank you, commander...!";
+			npctalk "Jana Levedeva: I am sorry...", "Jana Levedeva#16.2rms", bc_self;
+			next;
+			cutin "162elena_02.bmp",2;
+			mes "[USU commander Elena]";
+			mes "That's all about it. You can go back now. There's something I'd like to discuss with the adventurer.";
+			mes "And if you need anything, talk to me any time.";
+			next;
+			cutin "",255;
+			mes "[Lebedev twins]";
+			mes "Yes!";
+			next;
+			cloakonnpc "Ilya Lebedev#16.2rms", getcharid(0);
+			cloakonnpc "Jana Levedeva#16.2rms", getcharid(0);
+			cutin "162elena_01.bmp",2;
+			mes "[USU commander Elena]";
+			mes "Phew...";
+			mes "Great job, " + strcharinfo(0) + ".";
+			mes "Thanks to your support and concern, we managed to do this.";
+			next;
+			mes "[USU commander Elena]";
+			mes "Ha... I told them to do what they want. And they will wonder what to do for a while.";
+			mes "For those guys to do what they want, they'll need your help again.";
+			mes "Please help them at that time.";
+			next;
+			cutin "162elena_02.bmp",2;
+			mes "[USU commander Elena]";
+			mes "......Thanks.";
+			mes "I will count on you in the future.";
+			completequest 16019;// Elena Volkova's Solution
+			getexp 200000,200000;
+			getitem 25155,10;// Swz_Honor_Token
+			lebedev_quest_16_2 = 11;
+			questinfo_refresh();
+			close3;
+		}
+		mes "[USU commander Elena]";
+		mes "Are you taking care of them well?";
+		mes "Wow, I am relieved that they have a babysitter now.";
+		next;
+		cutin "162elena_02.bmp",2;
+		mes "[USU commander Elena]";
+		mes "Haha! Just kidding. Thank you for your support. You're so reliable.";
+		mes "Take care of the guys please.";
+		close3;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16011) == 0 && isbegin_quest(14602) == 1" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16061) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(16010,PLAYTIME) == 2" );
+
+	// twin quest main
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main > 16 && (lebedev_quest_16_2 == 0 || lebedev_quest_16_2 == 5 || lebedev_quest_16_2 == 8 || lebedev_quest_16_2 == 10)" );
+
+	// twins daily quest : "Service: Cookies delivery"
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16031) == 1 && countitem(25161) > 0" );
+	end;
+}
+
+rebel_in,177,30,3	script	Sorita Doritas#16.2rm	4_M_GUNSLINGER3,{
+	mes "[Tough Guy Sorita]";
+	mes "What is it now?";
+	next;
+	if (select( "I want to go out.", "Nothing." ) == 2) {
+		mes "[Tough Guy Sorita]";
+		mes "Do not talk to me when you have nothing to say.";
+		close;
+	}
+	mes "[Tough Guy Sorita]";
+	mes "What are you talking about? So you're telling me you would like to run away without fighting? Aren't you?";
+	next;
+	mes "[Tough Guy Sorita]";
+	mes "You must be kidding. What kind of nonsense is this! Why did you come here in the first place and annoy me?";
+	next;
+	emotion ET_FRET;
+	mes "[Tough Guy Sorita]";
+	mes "Dang, I have been quite upset after the commander gave me this useless work. And you make me even more upset. Get the hell out of here!";
+	close2;
+	warp "rebel_in",68,76;
+	end;
+}
+
+// rebel_in,177,28,5	script	Ivan Ivanov#16.2rm	4_M_REBELLION2,10,10,{
+// rebel_in,177,28,3	script	Ivan Ivanov#16.2rmA	HIDDEN_NPC,{
+rebel_in,177,28,5	script	Ivan Ivanov#16.2rm	4_M_REBELLION2,{
+	end;
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16061) == 1" );
+	waitingroom "Enter Rebellion arena",20,"Ivan Ivanov#16.2rm::OnEvent",1;
+	end;
+OnEvent:
+	if (.event_start == 0) {
+		.event_start = 1;
+		cloakoffnpc "#job_rmA";
+		warpwaitingpc "rebel_in",201,19;
+	}
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer3000:
+	stopnpctimer;
+	disablenpc "Naga#16.2rmA";
+	areawarp "rebel_in",192,12,207,27,"rebel_in",68,76;
+	.event_start = 0;
+	if (getwaitingroomstate(33) == true)	// warp next player in waitingroom
+		donpcevent "Ivan Ivanov#16.2rm::OnEvent";
+	end;
+}
+
+rebel_in,200,19,0	script	#job_rmA	HIDDEN_WARP_NPC,12,12,{
+	end;
+OnTouch:
+	cloakonnpc "#job_rmA";
+	donpcevent "Milo River#16.2rmA::OnStart";
+	.base_job = BaseJob;
+	end;
+OnStart:
+	monster "rebel_in",201,19, "Elena Bolkova",3630,1, "#job_rmA::OnMobDead";	// EP16_2_E_BOLKOBA
+	if (.base_job == Job_Priest)
+		setunitdata $@mobid[0], UMOB_HP, 19000;
+	else
+		setunitdata $@mobid[0], UMOB_HP, 1100000;
+	end;
+OnMobDead:
+	stopnpctimer;
+	completequest 16061;	// Fair and equitable result
+	npctalk "Milo River: " + strcharinfo(0) + ", you win! You can go out and magnify yourself. You are moving to the lobby in three seconds.";
+	donpcevent "Ivan Ivanov#16.2rm::OnStart";
+	enablenpc "Naga#16.2rmA";
+	end;
+OnInit:
+	cloakonnpc "#job_rmA";
+	end;
+}
+
+rebel_in,204,19,3	script	Milo River#16.2rmA	4_M_GUNSLINGER2,{
+	end;
+OnStart:
+	initnpctimer;
+	end;
+OnTimer4000:
+	npctalk "Milo River: Hel, hello. I am Milo River, the referee of this fight.";
+	end;
+OnTimer6000:
+	npctalk "Milo River: The fight starts after 10 seconds. If you defeat commander Bolkova in two minutes, you win.";
+	end;
+OnTimer11000:
+	npctalk "Milo River: Five more seconds.";
+	end;
+OnTimer12000:
+	npctalk "Milo River: Four more seconds.";
+	end;
+OnTimer13000:
+	npctalk "Milo River: Three more seconds.";
+	end;
+OnTimer14000:
+	npctalk "Milo River: Two more seconds.";
+	end;
+OnTimer15000:
+	npctalk "Milo River: One more second.";
+	end;
+OnTimer16000:
+	npctalk "Milo River: Let the match begin!";
+	donpcevent "#job_rmA::OnStart";
+	end;
+OnTimer18000:
+	npctalk "Milo River: Sometimes she doesn't fight so hard according to her mood. Just hope that she is feeling good today.";
+	end;
+OnTimer126000:
+	npctalk "Milo River: The fight will end in 10 seconds.";
+	end;
+OnTimer131000:
+	npctalk "Milo River: The fight will end in five seconds.";
+	end;
+OnTimer132000:
+	npctalk "Milo River: Four more seconds.";
+	end;
+OnTimer133000:
+	npctalk "Milo River: Three more seconds.";
+	end;
+OnTimer134000:
+	npctalk "Milo River: Two more seconds.";
+	end;
+OnTimer135000:
+	npctalk "Milo River: One more second.";
+	end;
+OnTimer136000:
+	stopnpctimer;
+	killmonster "rebel_in", "#job_rmA::OnMobDead";
+	npctalk "Milo River: The fight is over. Due to the timeout, our commander wins. We will move to the lobby in three seconds.";
+	donpcevent "Ivan Ivanov#16.2rm::OnStart";
+	end;
+}
+
+rebel_in,200,19,0	script	Naga#16.2rmA	HIDDEN_WARP_NPC,12,12,{
+	end;
+OnTouch:
+	setpcblock PCBLOCK_NPC, true;
+	sleep2 3000;	// player attached
+	setpcblock PCBLOCK_NPC, false;
+	end;
+}
+
+// Square Leader - start the Old Lady part
+rebel_in,122,71,3	script	Rebellion leader#162gmb	4_M_RUPERT,{
+	if (terra_gloria_main < 16) {
+		mes "[Rebellion leader]";
+		mes "Who are you?";
+		next;
+		mes "[Rebellion leader]";
+		mes "If you are lost, go downstairs and talk to others.";
+		mes "They will let you know how to get out of here.";
+		close;
+	}
+	if (terra_gloria_lady_part == 0) {
+		mes "[Rebellion leader]";
+		mes "Who are you?";
+		next;
+		mes "[Rebellion leader]";
+		mes "If you are lost, go downstairs and talk to the others.";
+		mes "They will let you know how to get out of here.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Hey, you two there!";
+		npctalk "Rebellion leader: Hey, you two there!", "", bc_self;
+		next;
+		mes "[Young Rebellion]";
+		mes "Yes!!! Yep!!!";
+		emotion ET_SURPRISE, getnpcid(0, "Young Rebellion#162gmbs1");
+		emotion ET_SURPRISE, getnpcid(0, "Young Rebellion#162gmbs2");
+		npctalk "Young Rebellion : Yes Sir!!!", "Young Rebellion#162gmbs1", bc_self;
+		npctalk "Young Rebellion : Yes Sir!!!", "Young Rebellion#162gmbs2", bc_self;
+		next;
+		mes "[Rebellion leader]";
+		mes "Escort this adventurer safely downstairs.";
+		mes "Seems like he has lost his way.";
+		next;
+		mes "[Young Rebellion]";
+		mes "Yes! I will!!!!";
+		emotion ET_OK, getnpcid(0, "Young Rebellion#162gmbs1");
+		emotion ET_OK, getnpcid(0, "Young Rebellion#162gmbs2");
+		npctalk "Young Rebellion : Yes! I will!!!!", "Young Rebellion#162gmbs1", bc_self;
+		npctalk "Young Rebellion : Yes! I will!!!!", "Young Rebellion#162gmbs2", bc_self;
+		next;
+		mes "[Rebellion leader]";
+		mes "And if by any chance...... Well, I guess you already know that part. I will hand it to you.";
+		npctalk "Rebellion leader : Do you understand what I'm saying?", "", bc_self;
+		next;
+		mes "[Young Rebellion]";
+		mes "Oh.. Yes Sir!";
+		emotion ET_AHA, getnpcid(0, "Young Rebellion#162gmbs1");
+		emotion ET_AHA, getnpcid(0, "Young Rebellion#162gmbs2");
+		next;
+		mes "[Young Rebellion]";
+		mes "Please follow me, this way.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Wait!";
+		next;
+		mes "[Rebellion leader]";
+		mes "Is there anything else?";
+		next;
+		select("Tell the leader about having saved Gonie.");
+		mes "[Rebellion leader]";
+		mes "Oh!";
+		mes "I see!";
+		mes "Thank you so much for helping our youngster.";
+		emotion ET_BEST;
+		next;
+		mes "[Rebellion leader]";
+		mes "Hmm.. As I expected......";
+		mes "Gonie......";
+		emotion ET_THINK;
+		next;
+		mes "[Young Rebellion]";
+		mes "The one who went to Einbroch not long ago......";
+		next;
+		mes "[Rebellion leader]";
+		mes "Ah!";
+		mes "That guy?";
+		emotion ET_AHA;
+		next;
+		mes "[Rebellion leader]";
+		mes "Haha!";
+		mes "This fellow is full of chivalry! It's difficult to find people like this nowadays.";
+		mes "Normally they just pass by......";
+		next;
+		mes "[Rebellion leader]";
+		mes "Especially after finding that he was wearing a Rebellion suit.";
+		next;
+		mes "[Rebellion leader]";
+		mes "What do you say?";
+		next;
+		mes "[Rebellion leader]";
+		mes "By looking at your eyes, I see you haven't come to hear gratitude from us.";
+		emotion ET_SCRATCH;
+		next;
+		mes "[Rebellion leader]";
+		mes "The man called Lazy who came with you...";
+		mes "He's been wandering around here.";
+		next;
+		mes "[Rebellion leader]";
+		mes "You helped Gonie by chance. But you didn't come here by chance. Did you?";
+		next;
+		mes "[Rebellion leader]";
+		mes "You'd better think twice before you answer.";
+		emotion ET_PROFUSELY_SWAT, playerattached();
+		next;
+		if (select( "Talk about cooperation.", "Go back." ) == 2) {
+			mes "[Rebellion leader]";
+			mes "Be careful on your way home.";
+			mes "The public order is not so good in this area.";
+			close;
+		}
+		mes "[Rebellion leader]";
+		mes "Help?";
+		emotion ET_QUESTION;
+		next;
+		mes "[Rebellion leader]";
+		mes "Ha...";
+		mes "I think you are misunderstanding something.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Surely, I want to express my gratitude for what you did for Gonie.";
+		next;
+		mes "[Rebellion leader]";
+		mes "But!";
+		mes "What you are saying now is a totally different issue.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Secret Wings?";
+		mes "Ha! Don't make me laugh!";
+		mes "The fact you say it now shows that you know something about the relationship between us and them. Am I right?";
+		emotion ET_FRET;
+		next;
+		mes "[Rebellion leader]";
+		mes "If you don't, that means you are just being exploited. Then you just have to go back gently.";
+		next;
+		mes "[Rebellion leader]";
+		mes "This is all I can tell you.";
+		mes "Please leave now.";
+		emotion ET_GO;
+		next;
+		mes "[Young Rebellion]";
+		mes "Please follow me, this way.";
+		emotion ET_CRY, getnpcid(0, "Young Rebellion#162gmbs1");
+		next;
+		mes "[Rebellion leader]";
+		mes "Leave the adventurer alone.";
+		npctalk "He will go out on his own, unless he wants to die.", "", bc_self;
+		next;
+		mes "[Rebellion leader]";
+		mes "He must know his position better than anyone else.";
+		mes "The man called Lazy, too.";
+		terra_gloria_lady_part = 1;
+		setquest 11454;// Doubt
+		close;
+	}
+	if (terra_gloria_lady_part < 5) {
+		mes "[Rebellion leader]";
+		mes "Secret Wings?";
+		mes "Ha! Don't make me laugh!";
+		mes "The fact you say it now shows that you know something about the relationship between us and them. Am I right?";
+		emotion ET_FRET;
+		next;
+		mes "[Rebellion leader]";
+		mes "If you don't, that means you are just being exploited. Then you just have to go back gently.";
+		next;
+		mes "[Rebellion leader]";
+		mes "This is all I can tell you.";
+		mes "Please leave now.";
+		emotion ET_GO;
+		close;
+	}
+	if (terra_gloria_lady_part == 5) {
+		mes "[Rebellion leader Rupert]";
+		mes "What is it?";
+		mes "Are you still here?";
+		emotion ET_FRET;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "If I didn't see a ghost, you are living a pretty long life. Aren't you?";
+		next;
+		cloakoffnpc "Rebellion Guard leader#4", getcharid(0);
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Sir!";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Ah!";
+		mes "Guard leader!";
+		mes "Good that you're here.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Take this fellow out, now.";
+		mes "I thought you would leave on your own, if you cared for your life. But you are still hanging around here.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "It's so annoying to see this rat wandering around in my space.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "There's something more important now. Here's a letter from Dien.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "A letter from Dien?";
+		emotion ET_HUK;
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Yes. Here it is...";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#4");
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "It's quite unusual to receive a letter from her.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Let me see... I agree. Do you agree, too?";
+		emotion ET_QUESTION;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Hmm?";
+		mes "Agree with what?";
+		emotion ET_QUESTION;
+		next;
+		select("Talk about cooperation.");
+		mes "[Rebellion leader Rupert]";
+		mes "Hmm..........";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Guard leader...";
+		mes "I think I have seen a phantom. Would you like to read it?";
+		emotion ET_HUM;
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Yeah?";
+		mes "Yes! Sir!";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#4");
+		erasequest 11458;// Doubt
+		setquest 11459;// Doubt
+		terra_gloria_lady_part = 6;
+		close;
+	}
+	if (terra_gloria_lady_part == 6) {
+		mes "[Rebellion leader Rupert]";
+		mes "Hmm.........";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Guard leader...";
+		mes "I think I have seen a phantom. Would you like to read it?";
+		emotion ET_HUM;
+		next;
+		cloakoffnpc "Rebellion Guard leader#4", getcharid(0);
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Yeah?";
+		mes "Yes! Sir!";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#4");
+		close;
+	}
+	if (terra_gloria_lady_part == 7) {
+		mes "[Rebellion leader Rupert]";
+		mes "What?";
+		mes "The commander?";
+		emotion ET_HUK;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "What the hell... Is that jerk still alive after sending this letter to the commander?";
+		emotion ET_HUK;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "What did the commander say?";
+		mes "He is not the type of a man who would just sit down after listening to it. Is he?";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Erst agrees with it, too.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "What?";
+		emotion ET_HUK;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Ha!";
+		mes "This is nonsense.";
+		emotion ET_CONFUSE;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "I cannot accept this.";
+		mes "I don't know what you did to them. But I will talk to them again.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Guard leader!";
+		mes "Where is Dien?";
+		mes "In the room?";
+		next;
+		mes "[Dien]";
+		mes "You don't have to come in, Rupert.";
+		mes "It was so noisy outside, so I came out. It was you.";
+		emotion ET_HNG, getnpcid(0, "Dien#162gmbs2");
+		cloakoffnpc "Dien#162gmbs2", getcharid(0);
+		erasequest 11460;// Doubt
+		setquest 11461;// Doubt
+		terra_gloria_lady_part = 8;
+		close;
+	}
+	if (terra_gloria_lady_part == 8) {
+		mes "[Rebellion leader Rupert]";
+		mes "I cannot accept this.";
+		mes "I don't know what you did to them. But I will talk to them again.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Guard leader!";
+		mes "Where is Dien?";
+		mes "In the room?";
+		next;
+		cloakoffnpc "Dien#162gmbs2", getcharid(0);
+		mes "[Dien]";
+		mes "You don't have to come in, Rupert.";
+		mes "It was so noisy outside, so I came out. It was you.";
+		emotion ET_HNG, getnpcid(0, "Dien#162gmbs2");
+		close;
+	}
+	if (terra_gloria_lady_part == 9 || terra_gloria_lady_part == 10) {
+		cloakoffnpc "Dien#162gmbs2", getcharid(0);
+		if (terra_gloria_lady_part == 9) {
+			cloakoffnpc "Rebellion Guard leader#4", getcharid(0);
+			mes "[Rebellion leader Rupert]";
+			mes "Guard leader!";
+			mes "What are you doing!";
+			mes "Escort Dien to the room.";
+			emotion ET_FRET, getnpcid(0, "Dien#162gmbs2");
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "You and I just do not appear to communicate.";
+			mes "I didn't know you were so stubborn...";
+			cutin "ep162_dn03.bmp",2;
+			next;
+			cutin "",255;
+			mes "[Rebellion leader Rupert]";
+			mes "It's all because of you, Dien.";
+			mes "I still remember you telling me a story about them. You were so angry with them. Now you make this choice.";
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "As you put on years, your memory and judgment are not as good as they used to be.";
+			npctalk "Rebellion leader : Dang!", "", bc_self;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "What!";
+			mes "What have you just said!!!";
+			npctalk "Dien : Are you trying to insult me?", "Dien#162gmbs2", bc_self;
+			emotion ET_FRET, getnpcid(0, "Dien#162gmbs2");
+			emotion ET_HUK;
+			emotion ET_HUK, getnpcid(0, "Rebellion Guard leader#4");
+			emotion ET_HUK, getnpcid(0, "Young Rebellion#162gmbs1");
+			emotion ET_HUK, getnpcid(0, "Young Rebellion#162gmbs2");
+			emotion ET_HUK, playerattached();
+			cutin "ep162_dr_cut.bmp",4;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "At that time, you were just an infant in diapers. How do you happen to know so much about them?";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Did you experience that incident yourself?";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "I'm the one who saved your life during the ravage of war.";
+			mes "And just look at your big mouth now!";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Is it the way I taught you?";
+			mes "Come on, say that again!";
+			npctalk "Dien : Ugh!! I should have never brought you up!", "Dien#162gmbs2", bc_self;
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Arrggh!!!";
+			mes "What the hell are you doing!";
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Just release your hold.";
+			npctalk "Rebellion leader : Arrggh!!!! My beard!!!!", "", bc_self;
+			next;
+			mes "[Rebellion Guard leader Larcis]";
+			mes "Dien! Please calm down!";
+			mes "You shouldn't do this here!";
+			emotion ET_HUK, getnpcid(0, "Rebellion Guard leader#4");
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "You just shut up!";
+			next;
+			mes "[Rebellion Guard leader Larcis]";
+			mes "Ha...";
+			emotion ET_CHAT_PROHIBIT, getnpcid(0, "Rebellion Guard leader#4");
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Whatever you say, I'm against it!";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "You are still chattering with the big mouth!";
+			mes "Aren't you?";
+			emotion ET_FRET, getnpcid(0, "Dien#162gmbs2");
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Arrggh!!!";
+			mes "Come on, it hurts!";
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "What are you doing! They are all looking at you!!!!";
+			emotion ET_CRY;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Well, I don't care who's looking at me.";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "What have you done so far with that vengeance alone?";
+			npctalk "Dien : For how many years have we been planning it!", "Dien#162gmbs2", bc_self;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Are you going to hate them forever, doing nothing until I die?";
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "How many years do you think I have ahead!!!";
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "By looking at you now, I'm sure you can live for 100 more years!";
+			npctalk "Rebellion leader : Just don't say that!", "", bc_self;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Great!";
+			mes "Let me live for 100 more years and pull out your beard!";
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Arrgh!!!!";
+			mes "Stop it!";
+			emotion ET_KEK;
+			next;
+			mes "[Rebellion leader Rupert]";
+			mes "Ah!";
+			mes "Okay! I got it!";
+			mes "Do as you wish!";
+			emotion ET_OTL;
+			cutin "",255;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "Here you go.";
+			emotion ET_HNG, getnpcid(0, "Dien#162gmbs2");
+			cutin "ep162_dn03.bmp",2;
+			next;
+			cutin "",255;
+			mes "[Rebellion leader Rupert]";
+			mes "But you will to have to face the consequences. Be prepared!";
+			npctalk "Rebellion leader : It's not such a simple decision.", "", bc_self;
+			next;
+			mes "[Rebellion senior Dien]";
+			mes "That's exactly what I was hoping for.";
+			npctalk "Dien : Do you think I started this without being fully ready for it?", "Dien#162gmbs2", bc_self;
+			cutin "ep162_dn01.bmp",2;
+			next;
+			cutin "",255;
+			cloakonnpc "Rebellion Guard leader#4", getcharid(0);
+		}
+		mes "[Rebellion leader Rupert]";
+		mes "No...";
+		mes "Guard leader!";
+		mes "Tell each senior and commander to gather now.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Let me make this clear.";
+		mes "We will help you. But don't expect too much help.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "There is no reason why we have to sacrifice for you.";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Hey! You are saying this again!";
+		emotion ET_HNG, getnpcid(0, "Dien#162gmbs2");
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Since you got the approval from Rupert, " + strcharinfo(0) + " why don't you go back for report?";
+		npctalk "Dien : The man who came with you.. Is his name Lazy?", "Dien#162gmbs2", bc_self;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "It seems like the youngsters will be busy for a while. Please help the old people, whenever you have time.";
+		cutin "ep162_dn02.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Ah!! Rupert!";
+		mes "Talk to me before the meeting.";
+		npctalk "Dien : It's so important... It won't take long.", "Dien#162gmbs2", bc_self;
+		emotion ET_COMEON, getnpcid(0, "Dien#162gmbs2");
+		cutin "ep162_dn03.bmp",2;
+		cloakonnpc "Dien#162gmbs2", getcharid(0);
+		if (terra_gloria_lady_part == 9) {
+			getitem 25155,10;	// Swz_Honor_Token
+			getexp 200000,200000;
+			completequest 14600;// Gentleman on second floor
+			completequest 11462;// Doubt
+			terra_gloria_lady_part = 10;
+			questinfo_refresh();
+		}
+		close3;
+	}
+	mes "[Rebellion leader Rupert]";
+	mes "Let me make this clear.";
+	mes "We will help you. But don't expect too much help.";
+	next;
+	mes "[Rebellion leader Rupert]";
+	mes "There is no reason why we have to sacrifice for you.";
+	close;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main >= 16 && terra_gloria_lady_part == 0" );
+	end;
+}
+
+rebel_in,119,68,7	script	Rebellion Guard leader#4	4_M_REBELLION,{
+	if (terra_gloria_lady_part == 6 || terra_gloria_lady_part == 7) {
+		mes "[Rebellion Guard leader Larcis]";
+		mes "I read it, too. What you have said just now was written there.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "The same thing was written in the letter that I handed to Erst.";
+		if (terra_gloria_lady_part == 6) {
+			erasequest 11459;// Doubt
+			setquest 11460;// Doubt
+			terra_gloria_lady_part = 7;
+		}
+		close;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+rebel_in,121,69,8	script	Dien#162gmbs2	4_F_DIENE,{
+	if (terra_gloria_lady_part == 8) {
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Dien!";
+		mes "It's dangerous outside. There are outsiders there.";
+		next;
+		mes "[Dien]";
+		mes "It's alright. Larcis.";
+		mes "They are not so dangerous.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "Dien!";
+		mes "I was about to visit you.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Your letter... What does it mean?";
+		npctalk "Rebellion leader: I really don't get it.", "Rebellion leader#162gmb", bc_self;
+		next;
+		mes "[Dien]";
+		mes "As written in the letter.";
+		npctalk "Dien: Wasn't it so simple that even a three-year-old child can understand it?", "", bc_self;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "Are you saying that you agreed to help the Secret Wings?";
+		npctalk "Rebellion leader : Unless there is a problem with my eyes.", "Rebellion leader#162gmb", bc_self;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Yes.";
+		mes "As I wrote in the letter.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Ridsh, Cotnes and I will agree to help the Secret Wings.";
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "Even Ridsh and Cotnes...? No. I can't believe that you agree to it, even after I have heard it from you personally.";
+		npctalk "Rebellion leader : You're kidding. Aren't you?", "Rebellion leader#162gmb", bc_self;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "I heard Erst agrees as well.";
+		mes "Since there are so many people who agree to it, you should not resist it alone.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "I can't laugh it off this time.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "You are the one who knows how silly this is more than anyone else.";
+		next;
+		mes "[Dien]";
+		mes "Of course I do.";
+		mes "That's why I accepted it.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "Why!!!";
+		next;
+		mes "[Dien]";
+		mes "The time is passing. Rupert.";
+		mes "We cannot stick on the same spot forever.";
+		npctalk "Dien : My time... has already passed.", "", bc_self;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		cutin "",255;
+		mes "[Rebellion leader Rupert]";
+		mes "Although the time passes, it doesn't mean that the past goes away!";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "We sacrificed too much to forget it!";
+		npctalk "Rebellion leader : We have lost everything!", "Rebellion leader#162gmb", bc_self;
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Regarding this issue, I, as the person in charge here, will decide on it.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Trying to respect you as a senior, I have overlooked your behavior so far. However, this time, you crossed the line.";
+		next;
+		mes "[Rebellion leader Rupert]";
+		mes "Now! Please go back to your room and enjoy your tea party.";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Wait!";
+		mes "I can't ignore what you've just said.";
+		mes "Are you trying to neglect my opinion, and myself as well?";
+		cutin "ep162_dn03.bmp",2;
+		erasequest 11461;// Doubt
+		setquest 11462;// Doubt
+		terra_gloria_lady_part = 9;
+		close3;
+	}
+	if (terra_gloria_lady_part == 9) {
+		mes "[Rebellion senior Dien]";
+		mes "Wait!";
+		mes "I can't ignore what you've just said.";
+		mes "Are you trying to neglect my opinion, and myself as well?";
+		cutin "ep162_dn03.bmp",2;
+		close3;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+rebel_in,118,70,3	script	Young Rebellion#162gmbs1	4_F_GUNSLINGER,{
+	mes "[Young Rebellion]";
+	mes "I joined the Rebellion, because their shooting looked so cool to me. But now I am so busy handling the documents that I have no time to get my hands on a gun.";
+	next;
+	mes "[Young Rebellion]";
+	mes "The problem is that I feel like this work suits me.";
+	close;
+}
+
+rebel_in,114,75,5	script	Young Rebellion#162gmbs2	4_F_REBELLION,{
+	mes "[Young Rebellion]";
+	mes "When I'm lucky, I can get some snacks from seniors.";
+	next;
+	mes "[Young Rebellion]";
+	mes "It's amazing that the taste is different when I purchase the snacks myself.";
+	npctalk "Young Rebellion : It's always good to take something good from someone else. It's so exciting.", "", bc_self;
+	close;
+}
+// Main story
+rebel_in,91,60,3	duplicate(dummy_cloaked_npc)	Senior#16nego01	4_M_EINOLD
+rebel_in,84,60,7	duplicate(dummy_cloaked_npc)	Senior#16nego02	4_M_HUGRANFA
+rebel_in,87,58,8	duplicate(dummy_cloaked_npc)	Senior#16nego03	4_M_HUOLDARMY
+rebel_in,88,58,1	duplicate(dummy_cloaked_npc)	Senior#16nego04	4_M_SEAMAN
+
+rebel_in,86,61,5	script	Lazy#16nego05	4_M_LAZY,{
+	if (checkweight(501,1) == 0) {
+		mes "[Lazy]";
+		mes "Why do you have so many things here? Your bag has to be light to carry a lot of new stuff.";
+		close;
+	}
+	if ((MaxWeight - Weight) < 1000) {
+		mes "[Lazy]";
+		mes "Why do you have so many things here? Your bag has to be light to carry a lot of new stuff.";
+		close;
+	}
+	if (terra_gloria_main == 15) {
+		cutin "16lei_01.bmp",2;
+		emotion ET_SMILE;
+		mes "[Lazy]";
+		mes "Oh~ It's wonderful here. It's so cozy. ^0000cdWhat is this place for^000000? I want to stay here for a day.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I never imagined there would be a place like this behind the store... What's this?";
+		npctalk "Exactly. I told you there would be a space behind the pillar. Didn't I?", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "A sanatorium that looks after novices and senior citizens. There is nothing to see here. And it's too cold in here and your mouth might be twisted if you sleep here. That's why you'd better leave after drinking the tea.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "You are too stingy. How can you do this to me after I saved his life?";
+		next;
+		cutin "16loo_03.bmp",0;
+		emotion ET_QUESTION, getnpcid(0, "Rookie#16nego02");
+		mes "[Lucky]";
+		mes "I gave you a cup of tea and I promised you to compensate. What else do you need?";
+		npctalk "If you wish too much, you may get bold.", "Rookie#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Are you laying a curse on me? Please! Don't make me bold!", "", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "There are things you cannot buy.";
+		emotion ET_MONEY;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "Well, then, you're leaving me with my gratitude.";
+		npctalk "Sounds good. We can save money.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "No. According to my experience so far, everything that I cannot buy is useless.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "I can't figure out what you want. Have a sit there anyway. I will give you a cup of tea that you desired.";
+		next;
+		cloakoffnpc "Magenta#16nego01", getcharid(0);
+		mes "[Magenta]";
+		mes "Lucky~~~ Where have you been!! I've been waiting for a while! I'm going out for a mission and wish me a good luck.";
+		npctalk "Come on. The spell of fortune~", "Magenta#16nego01", bc_self;
+		next;
+		cloakoffnpc "Denny#16nego03", getcharid(0);
+		mes "[Denny]";
+		mes "Rookie!!!! Help me arrange the warehouse quickly. There are bunch of them and I can't do it alone. Hurry up.";
+		npctalk "Hurry up! Lend me your magical hand!", "Denny#16nego03", bc_self;
+		next;
+		mes "[Magenta]";
+		mes "Hey, I came before you. Didn't I?";
+		next;
+		mes "[Denny]";
+		mes "But I'm in a hurry!";
+		npctalk "If you're in a hurry, you should have come earlier!", "Magenta#16nego01", bc_self;
+		npctalk "I'm not free like you. A superstar is always busy.", "Denny#16nego03", bc_self;
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Lucky]";
+		mes "I have a customer. I will get to you after giving them cups of tea. Both of you, please wait a minute.";
+		npctalk "You can wait. Right?", "Rookie#16nego02", bc_self;
+		next;
+		mes "[Denny]";
+		mes "I'm in a hurry...";
+		next;
+		mes "[Magenta]";
+		mes "I can wait! I cannot put pressure on Lucky.";
+		next;
+		mes "[Denny]";
+		mes "I can wait too!";
+		npctalk "Didn't you say you were in a hurry?", "Magenta#16nego01", bc_self;
+		sleep2 300;
+		npctalk "He says he's busy now! I will leave first so you have to come to me first!", "Denny#16nego03", bc_self;
+		cloakonnpc "Denny#16nego03", getcharid(0);
+		npctalk "Lucky! Me first!!!", "Magenta#16nego01", bc_self;
+		cloakonnpc "Magenta#16nego01", getcharid(0);
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "They are looking for you everywhere. You are so popular. Aren't you?";
+		npctalk "Maybe that's why your name is Lucky?", "", bc_self;
+		next;
+		cutin "",255;
+		cloakoffnpc "Senior#16nego01", getcharid(0);
+		cloakoffnpc "Senior#16nego04", getcharid(0);
+		mes "[Senior]";
+		mes "Rookie, where have you been? Everyone's looking for you.";
+		next;
+		mes "[Senior]";
+		mes "He has healthy legs, so he can go around.";
+		sleep2 300;
+		npctalk "What? He is on a desk job. He's supposed to be on his position!", "Senior#16nego01", bc_self;
+		sleep2 500;
+		npctalk "Don't you know Rookie is the busiest person here?", "Senior#16nego04", bc_self;
+		next;
+		cloakoffnpc "Senior#16nego02", getcharid(0);
+		mes "[Senior]";
+		mes "Lucky, bring a cup of tea.";
+		npctalk "Mine too.", "Senior#16nego01", bc_self;
+		sleep2 300;
+		npctalk "Look. You give him too much work.", "Senior#16nego04", bc_self;
+		sleep2 300;
+		npctalk "What? You, step outside.", "Senior#16nego01", bc_self;
+		next;
+		cloakoffnpc "Senior#16nego03", getcharid(0);
+		mes "[Senior]";
+		mes "Lucky, they are strangers. Who are they?";
+		npctalk "A cup of tea for me too.", "Senior#16nego03", bc_self;
+		npctalk "Why should I follow you?", "Senior#16nego04", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "They saved Gonie's life. They came to this quiet Einbech. They found injured Gonie ^0000cdaccidentally^000000 and healed him. Then they brought him ^0000cdright^000000 here.";
+		npctalk "Let me give you a lesson today!", "Senior#16nego01", bc_self;
+		sleep2 300;
+		npctalk "You guys are fighting again?", "Senior#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Yes. I did it. I did it!";
+		npctalk "I see. I see. Let me drink the tea first. Okay? Can you wait?", "Senior#16nego04", bc_self;
+		sleep2 300;
+		npctalk "You always give a lesson from your teeth outward.", "Senior#16nego03", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You take too much credit to yourself after helping someone.";
+		npctalk "And who are they?", "Senior#16nego01", bc_self;
+		npctalk "They don't seem to be our kids.", "Senior#16nego04", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "You have to exaggerate your performance. That's the way to be appreciated by others.";
+		npctalk "I get it when I see it, too.", "Senior#16nego01", bc_self;
+		npctalk "They look like Lucky's customers.", "Senior#16nego03", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "So, why did you come here? By the way, who are you?";
+		npctalk "Rookie doesn't know them either.", "Senior#16nego02", bc_self;
+		sleep2 500;
+		npctalk "Then who invited them?", "Senior#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Me? Lazy. Although it's not my real name, call me Lazy now.";
+		next;
+		mes "[Lazy]";
+		mes "I am an, ^0000cdagent of Secret Wings^000000, an institution directly responsible to the President of Schwaltzvalt.";
+		npctalk "What?", "Senior#16nego03", bc_self;
+		next;
+		emotion ET_HUK, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "Hey! Why did you tell them who you are all of a sudden? You kept telling me not even to mention it. And you revealed it officially!";
+		npctalk "I think I misheard something now.", "Senior#16nego04", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "It's all right. This is our destination. ^0000cdClana Nemieri^000000, the stronghold of Rebellions.";
+		npctalk "He said he is an agent of Secret Wings, an institution directly responsible to the President of Schwaltzvalt! I heard everything!", "Senior#16nego01", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Then the store outside the door was a ^0000cdtrickery^000000. The collapsed man is a member of ^0000cdRebellion^000000... That's why...";
+		npctalk "You mean, the crows?", "Senior#16nego02", bc_self;
+		next;
+		cutin "",255;
+		mes "Clank.";
+		emotion ET_HUK, playerattached();
+		next;
+		mes "Clank.";
+		mes "Clank.";
+		emotion ET_HUK, playerattached();
+		next;
+		mes "Clank.";
+		mes "Clank.";
+		mes "Clank.";
+		emotion ET_HUK, playerattached();
+		next;
+		mes "Clank.";
+		mes "Clank.";
+		mes "Clank.";
+		mes "Clank.";
+		emotion ET_HUK, playerattached();
+		next;
+		mes "[Senior]";
+		mes "Get out of here now!";
+		npctalk "Do you even know where you are?", "Senior#16nego01", bc_self;
+		sleep2 300;
+		npctalk "Freeze!!", "Senior#16nego02", bc_self;
+		next;
+		mes "[Senior]";
+		mes "We get rid of them!";
+		npctalk "Call for a backup!", "Senior#16nego04", bc_self;
+		sleep2 300;
+		npctalk "We don't need to. We can defeat them by ourselves!", "Senior#16nego02", bc_self;
+		emotion ET_HUK, playerattached();
+		emotion ET_SWEAT;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Lucky]";
+		mes "Hey, calm down please! Put your guns in! No wonder you are hot headed elders!!";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "Although they have come here with a fishy purpose, it's true that they carried injured Gonie all the way here. Behave yourself, old men.";
+		npctalk "Fishy prupose!", "", bc_self;
+		npctalk "Why should we behave ourselves!", "Senior#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You are not surprised? So you knew it.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Lucky]";
+		mes "I didn't know who you were. But I knew you had a certain purpose. I had not told you my name but you were shouting 'Come out Rookie'. So I had a clue.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "I heard that the brain of a Rebellion is filled with bullets, but maybe not every Rebellion! So, is your name Lucky, or Rookie?";
+		npctalk "Did he just insult us?", "Senior#16nego03", bc_self;
+		npctalk "Be quite. Let's listen to what they say.", "Senior#16nego02", bc_self;
+		sleep2 500;
+		npctalk "Why should we listen to this nonsense? Get them out of here!", "Senior#16nego01", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "^0000cdRookie^000000. Lucky is my nickname.";
+		next;
+		mes "[Senior]";
+		mes "Rookie! You already knew who he was, and you..!!";
+		npctalk "Take him out first!!!", "Senior#16nego01", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "I told you! Old men, are you deaf now? I didn't know who they were! This is unfair!";
+		emotion ET_CRY, getnpcid(0, "Rookie#16nego02");
+		npctalk "He says he didn't know.", "Senior#16nego04", bc_self;
+		sleep2 300;
+		npctalk "Then why did you bring them in?", "Senior#16nego02", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "If they had an intention to attack us, they would have done it already, rather than asking for tea. And what can these two do against many of us?";
+		npctalk "They don't look so strong.", "Rookie#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Your comments are misleading, but I'm not going to correct them right now.", "", bc_self;
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Rookie]";
+		mes "Whatever they do, you are going to handle them. Aren't you? You are legends of the Rebellion.";
+		emotion ET_SMILE, getnpcid(0, "Rookie#16nego02");
+		npctalk "Well.. It's true.", "Senior#16nego03", bc_self;
+		sleep2 300;
+		npctalk "That's why we are doing this now.", "Senior#16nego02", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "I don't know where they come from. But by the time they came all the way here, perhaps they need to talk to the seniors. I will bring the tea and enjoy the talk.";
+		npctalk "Where are you going!", "Senior#16nego01", bc_self;
+		npctalk "That guy has a great sense and wits.", "", bc_self;
+		next;
+		cloakonnpc "Rookie#16nego02", getcharid(0);
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Hahaha! Nice to meet you. Did I surprise you by coming in all of a sudden in leisure hours?";
+		next;
+		mes "[Lazy]";
+		mes "But I am not a dangerous person, so please relax. And this adventurer is much less dangerous.";
+		emotion ET_SMILE;
+		npctalk "You don't need to talk to us!", "Senior#16nego01", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "This person is an adventurer who settled various problems of the continent, including Schwaltzvalt. The adventurer is currently under the protection of Rune Midgarts Kingdom." + strcharinfo(0) + "";
+		emotion ET_BEST;
+		npctalk " Adventurer " + strcharinfo(0) + "? You must be that person in the royal palace in Rune Midgarts...", "Senior#16nego02", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "And I am a member of Secret Wings, an institution directly responsible to the President of Schwaltzvalt Republic. Since the President guarantees my identification, you don't have to worry.";
+		emotion ET_BEST;
+		npctalk "Ha!!! That's nonsense!!", "Senior#16nego03", bc_self;
+		next;
+		mes "[Senior]";
+		mes "How can I trust you?";
+		npctalk "How can I trust you?", "Senior#16nego04", bc_self;
+		next;
+		mes "[Senior]";
+		mes "You are the most dangerous guy here!";
+		npctalk "How dare you! Do you know where you are?", "Senior#16nego01", bc_self;
+		next;
+		mes "[Senior]";
+		mes "President? Since I heard that unpleasant word, let me wash my ears!";
+		npctalk "I am precious, so I should see and listen to good things.", "Senior#16nego04", bc_self;
+		sleep2 300;
+		cloakonnpc "Senior#16nego04", getcharid(0);
+		next;
+		mes "[Senior]";
+		mes "What is a spoiled crow of the President doing here?";
+		npctalk "What? Spoiled...?", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "That's what I am about to tell you now. Haha. So please put your guns down... Let's sit down first.";
+		next;
+		emotion ET_PROFUSELY_SWAT;
+		mes "[Senior]";
+		mes "Hey, you are standing up too!";
+		npctalk "Is it a dirty trick?", "Senior#16nego02", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		emotion ET_PROFUSELY_SWAT;
+		mes "[Lazy]";
+		mes "Ahaha. I've got a disease that I can't sit down. By the way... As a guest, I couldn't come here with empty hands. This is a specialty good of Yuno... Please have some.";
+		next;
+		cutin "",255;
+		mes "[Senior]";
+		mes "Guest? You're just a jerk.";
+		npctalk "Guest? You're just a jerk.", "Senior#16nego01", bc_self;
+		npctalk "Hey, look at your language!", "Senior#16nego03", bc_self;
+		next;
+		mes "[Senior]";
+		mes "What do you mean by guest? We never invited you.";
+		npctalk "Not every visitor is a guest.", "Senior#16nego02", bc_self;
+		sleep2 300;
+		npctalk "You are right!", "Senior#16nego01", bc_self;
+		next;
+		mes "[Senior]";
+		mes "We never know what you put on this food! There is nothing we would like to hear from you. So get out of here!";
+		npctalk "Please... Let's just talk...", "", bc_self;
+		next;
+		cutin "16loo_02.bmp",0;
+		cloakoffnpc "Rookie#16nego02", getcharid(0);
+		mes "[Rookie]";
+		mes "Drink tea, please.";
+		next;
+		mes "[Senior]";
+		mes "As soon as you drink the tea, leave at once~ We won't see you off!";
+		npctalk "Let us go now.", "Senior#16nego01", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Where are you going? I brought the tea in reference to the number of people here.";
+		next;
+		mes "[Senior]";
+		mes "I don't drink tea in uncomfortable place. I don't want to have an upset stomach while drinking tea.";
+		npctalk "If you have an upset stomach while drinking tea, there is no cure.", "Senior#16nego02", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "Come on, what's wrong with you~ You can drink it so quickly. It's not good after it gets cold. Your stomach must have got cold by now. You're not so healthy either.";
+		next;
+		mes "[Rookie]";
+		mes "Can't you just drink the tea before leaving? I struggled to get this tea... You also liked it...";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "And if we feel uncomfortable, they also feel uncomfortable. So it's not such a bad condition. Come on. Drinking a cup of tea is not a hard thing to do.";
+		npctalk "Come to think of it, you're right.", "Senior#16nego03", bc_self;
+		next;
+		emotion ET_SWEAT, getnpcid(0, "Senior#16nego01");
+		mes "[Senior]";
+		mes "I mean, the spoiled crow of the President-";
+		npctalk "The crow is sorry to hear that.", "", bc_self;
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Rookie]";
+		mes "Please. The tea is innocent. have a peaceful tea time. Never fight in front of food. You taught me all these words. Didn't you?";
+		next;
+		mes "[Senior]";
+		mes "Ahem, ahem.";
+		npctalk "Then I'm leaving after drinking the tea.", "Senior#16nego02", bc_self;
+		sleep2 300;
+		npctalk "It's delicious.", "Senior#16nego03", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Wow~ This tea is great. It matches well with this specialty good. Try it. The President prepared it for you.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Please listen to me. I'm here to ask you a very difficult request.";
+		npctalk "I'm here to ask you a very difficult request.", "", bc_self;
+		next;
+		mes "[Senior]";
+		mes "Why should we accept a difficult request?";
+		npctalk "Right! If you know it's difficult, don't ask us!", "Senior#16nego02", bc_self;
+		npctalk "Hoho- It's delicious.", "Senior#16nego03", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		emotion ET_SPARK;
+		mes "[Lazy]";
+		mes "That's why I came here. This mission cannot be accomplished by anyone except Rebellion. So the President sent me here.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "I think it will be such a confidential and cautious story. Please take this...";
+		npctalk "It will match well with the tea.", "", bc_self;
+		next;
+		mes "[Senior]";
+		mes "Just tell us your point.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Yes! Although you pretend not to know, it's the story you all know.";
+		npctalk "I will explain it rapidly.", "", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "The President certainly regrets what happened in the past. His excellency has always been thinking about you and wanted to start a talk.";
+		next;
+		mes "[Lazy]";
+		mes "Upon your approval, his excellency wants to meet you in person, apologize, and wants to have an opportunity to harmonize with you.";
+		next;
+		mes "[Lazy]";
+		mes "I was also extremely sad to hear what happened to you. And I was looking for a chance to meet you and talk to you.";
+		emotion ET_CRY;
+		next;
+		mes "[Senior]";
+		mes "Tell us your point!";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You are so cool. I like it. Then I will get down to the business.";
+		emotion ET_BEST;
+		npctalk "You are so cool. I like it.", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[Lazy began to talk about what happened recently and the request of the President.]";
+		next;
+		mes "[Senior]";
+		mes "I see. But it's your business and I don't get why we should help you. Do I?";
+		emotion ET_ANGER, getnpcid(0, "Senior#16nego01");
+		npctalk "I don't get why we should help you. Do I?", "Senior#16nego01", bc_self;
+		next;
+		mes "[Senior]";
+		mes "You ignored us when we were in trouble. And you are asking for help now? How can you do that?";
+		emotion ET_FRET, getnpcid(0, "Senior#16nego02");
+		npctalk "You used to ignore us and you are asking for help now? How can you do that?", "Senior#16nego02", bc_self;
+		next;
+		mes "[Senior]";
+		mes "Sounds like a bunch of nonsense. I don't want to listen any more.";
+		emotion ET_ANGER, getnpcid(0, "Senior#16nego03");
+		npctalk "We don't need to listen any more.", "Senior#16nego03", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "That won't harm you under any circumstances!";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "The adventurer approved by the royal family of Rune Midgarts is together with us in this mission.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "With the cooperation of Schwaltzvalt President and Rune Midgarts Kingdom, you can now use the power of the adventurer.";
+		npctalk "Although you don't trust me, please trust the adventurer!", "", bc_self;
+		next;
+		mes "[Senior]";
+		mes "Why would we need the power of the adventurer?";
+		npctalk "We are all right with our power only.", "Senior#16nego03", bc_self;
+		next;
+		mes "[Senior]";
+		mes "How can we trust a stranger? Are you going to stab us in the back again?";
+		npctalk "You did it once. How can we believe that you won't do it again?", "Senior#16nego01", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "This is your opportunity. Along with this cooperation, you can eliminate the dishonor!";
+		sleep2 300;
+		npctalk "Do we have any dishonor?", "Senior#16nego02", bc_self;
+		sleep2 500;
+		npctalk "What the hell is he talking about?", "Senior#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "If you cannot trust the President, please trust the adventurer and the royal family of Rune Midgarts. They have already promised a full support.";
+		next;
+		mes "[Lazy]";
+		mes "Come on, say somthing.";
+		npctalk "Have a sense!", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[" + strcharinfo(0) + "]";
+		mes "That's right! If you need my help, I will support you actively.";
+		emotion ET_OK, playerattached();
+		unittalk getcharid(3), "" + strcharinfo(0) + " : You can utilize everything I have!", bc_self;
+		next;
+		mes "[Senior]";
+		mes "This is not a matter of benefits. It's about our feeling!";
+		next;
+		mes "[Senior]";
+		mes "Lucky, thanks for the tea. Send them now. Let the crow go back to its nest.";
+		npctalk "Make sure they never come back!!", "Senior#16nego01", bc_self;
+		next;
+		cloakonnpc "Senior#16nego01", getcharid(0);
+		mes "[Senior]";
+		mes "We will never see them again. So send them gently. Rookie.";
+		npctalk "Do not make any fuss.", "Senior#16nego02", bc_self;
+		next;
+		cloakonnpc "Senior#16nego02", getcharid(0);
+		sleep2 1000;
+		cloakonnpc "Senior#16nego03", getcharid(0);
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Please, you can't leave like this...!!!";
+		next;
+		mes "[Lazy]";
+		mes "Hmm... I knew it would be difficult. But I'm surprised that they are not even listening to me.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "Phew. These old men will never change.";
+		emotion ET_HNG, getnpcid(0, "Rookie#16nego02");
+		npctalk "Perhaps an inconvenience is their motto.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Your name is Rookie. Right?";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "You know it already. Why do you ask?";
+		npctalk "You have a strange habit.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Sorry. I guess I made a wrong judgment. I should have collected more accurate information.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "What's wrong with you? You make me nervous.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Where's your confidence!", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "Before I came here, I knew people who were sitting here had the authority, but I now realize that it is a little different.";
+		next;
+		mes "[Lazy]";
+		mes "Unless you live here, it's hard to find out who has the authority.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "I don't know what you are talking about. If you finished drinking the tea, please leave.";
+		npctalk "I have so many things to do.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Rookie, please help us. If you think about it, you can tell that it's a win-win proposition. You don't want to hide yourself in this corner of the woods forever, do you?";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "You know that this is the opportunity to take advantage of the government's support and compassion for you. It will provide better fundamentals for Rebellions.";
+		next;
+		mes "[Lazy]";
+		mes "If this works well. you'll be free to work in Schwaltzvalt and Rune Midgarts.";
+		next;
+		mes "[Lazy]";
+		mes "Look at this place. It's just a tiny shop. Can you call it headquarters? Don't you want to reclaim your glory?";
+		npctalk "It's frustrating to live like this. Isn't it?", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "And when we are in trouble, you'll abandon us again. There are still many people who haven't washed the wound from what happened in the past. Do you really think they'll help you?";
+		npctalk "Although I wasn't directly involved in it, I don't want to help you either.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "That's why I am asking for your help. I guess you can change their mind by persuading them.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "Who? Me?";
+		npctalk "Who else is here?", "", bc_self;
+		sleep2 300;
+		npctalk "Adventurer?", "Rookie#16nego02", bc_self;
+		sleep2 500;
+		npctalk "Hahaha. You have a great sense of humor. Hahaha.", "", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "In every place, there is a hidden key person who moves the whole group even though you cannot that person easily. Here, it's you.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Well, I guess you are overrating me. They regard me as an unimportant guy here. I dont't take any important mission. All I do is errands and clean-ups. Do you honestly think I'm a key person?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "No, no. That's not what I am talking about. Normally they call it a mood maker.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "A while ago, you convinced the old men to listen to me. That's what I am talking about. You have such abilities.";
+		npctalk "Lucky Rookie. That's why they call you 'Lucky'. Right?", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "I don't know what you mean by 'such abilities'. But I guess you have nothing to talk about by now. The seniors are gone.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "That's why I'm trying to help you. Please convince others.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "I have nowhere else to go. Neither does everyone else here. We cannot just help you trusting your promise.";
+		npctalk "You are asking too much.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "It may be a matter of cooperation for you. But for us, it's a matter of survival.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Please. We are also desperate. The fates of the royal family of a country and another country are in danger.";
+		next;
+		mes "[Lazy]";
+		mes "But if you help us, we can sort it out. That's something only you can do. We really need your help.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "If you really need help, go to someone else.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "You are as cold as ice. How merciless. Please show some mercy and help us.";
+		emotion ET_CRY;
+		npctalk "Please don't be so mean.", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "The people who were sitting here are seniors. They are anchors and symbols of Rebellions.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "But as they got old, they retired from the front line. Now they drink tea and watch the junior Rebellions grow up.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "So other people are responsible for all the inside jobs. They are the ones ^0000cdwho move the Rebellion practically^000000. They are decision makers.";
+		npctalk "Yeah, so?", "", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "If you convince them, the public opinion change. Once the public opinion changes, what can seniors do about it?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Thank you. I prefer those who are wise and smart like you.";
+		emotion ET_BIGTHROB;
+		npctalk "So we've been talking to the wrong people.", "", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "In my opinion, I think it's better for us to be accepted in a wide world rather than living here like this.";
+		npctalk "We will be competitive anywhere we go.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Adventurer, it's time for you to take an action. Please persuade them.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Should I?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Did you seen the response from the seniors? Once I introduce myself, they might shoot at me make dozens of holes in my body.";
+		npctalk "I was so scared.", "", bc_self;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : But you looked so calm!", bc_self;
+		sleep2 900;
+		npctalk "I'm serious. You'd never imagine how nervous I was.", "", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Since those seniors were relatively rational, we are alive and talking like this. If only there was one person with a short-temper... Phew...";
+		npctalk "That's right. You are lucky that the person with a real short temper is in the upstairs now.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Adventurer. You are a symbol of faith. Please go and show them your faith. That will take care of everything. Did you see what I did a moment ago? Do as I did.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Well, maybe...";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "They are in the ^0000cdroom in the 2nd floor2^000000. You can go up and meet them.";
+		npctalk "As long as you behave yourself, they won't be mad at you. ... Maybe.", "Rookie#16nego02", bc_self;
+		next;
+		mes "[Rookie]";
+		mes "Do you see the rooms on the 2nd floor? I don't know how many of them are there. But you only have to meet the most important people.";
+		next;
+		mes "[Rookie]";
+		mes "Let's see... You meet ^0000cdRupert^000000, the strict gentleman and ^0000cdElena^000000, the hunting dog first.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "By the way, never call Elena 'hunting dog' in front of her. She's going to disintegrate you.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Anyone else...? Oh, the next one is the good-hearted ^0000cdold women, I mean ladies^000000. Then you meet the Special Force commander ^0000cdErst^000000...";
+		npctalk "They are too many!", "", bc_self;
+		sleep2 300;
+		npctalk "This is a huge system that cannot be operated by one or two members. And there is no one else.", "Rookie#16nego02", bc_self;
+		next;
+		mes "[Rookie]";
+		mes "You can meet these ^0000cdfour teams^000000 and talk to them. As I told you earlier, be careful when you talk. Some of them are short-tempered.";
+		npctalk "I hope you won't have a hole in your head...", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Adventurer, good luck! I will be talking to Rookie. Cheer up.";
+		npctalk "Come back alive!", "", bc_self;
+		erasequest 14599;// A glass of tea gratitude
+		setquest 14600;// Gentleman on second floor
+		setquest 14601;// Ladies on second floor
+		setquest 14602;// Hunter on second floor
+		setquest 14613;// Erst on second floor
+		setquest 14614;// Convince the leaders
+		terra_gloria_main = 16;
+		close3;
+	}
+	if (terra_gloria_main == 16) {
+		if (isbegin_quest(14602) != 2 || terra_gloria_lady_part < 10) {
+			cutin "16lei_01.bmp",2;
+			mes "[Lazy]";
+			mes "Adventurer! How was it? You met all of them and persuaded them? Not yet? I guess not. If you go to the 2nd floor, you can meet all of them.";
+			next;
+			mes "[Lazy]";
+			mes "I will be cheering for you. Go, adventurer!";
+			close3;
+		}
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You're back! So, have you met them? Are they going to help us?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Yes... Several things happened, but they were not bad.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "No wonder you are a symbol of faith!! Now, we can wait for seniors and staffs. Right?";
+		next;
+		mes "[Lazy]";
+		mes "Come on. Sit here and listen to Rookie's story. It's so interesting.";
+		npctalk "I know you've talked so much that you lost a lot of moisture. Drink some tea.", "", bc_self;
+		next;
+		mes "[Lazy]";
+		mes "So, why did you leave your home?";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "It's quite obvious. My family had a secondhand store. As you know, the amount iron consumption is so great in this area. Some people joke that they steal your spoon while your eyes are closed.";
+		npctalk "But it's a joke. They don't actually steal anything.", "Rookie#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Yeah, I know.", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Normally they use the iron dug from mines. But since it cannot meet the demands, a lot of used iron is also consumed. Our family bought the iron and resold it.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "And you were not able to help them?";
+		npctalk "That's right.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "My brothers helped my parents. As you see, I'm so small and used to be sick when I was a kid.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Oh, so they regarded you as a useless kid?";
+		npctalk "Have you been to my house? How do you know it so well?", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "I had no other choice.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "I don't agree with you. Everyone has different ability and you must be good at something. You just didn't find it earlier. Anyway, what happened next?";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "As my family ignored me, I decided to leave the house to find something I am capable of.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Well done. If you stayed there, you would have become such a useless person.";
+		npctalk "You are so smart and wise.", "", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "Then I met Gonie and came here. But I found that there's nothing I could do here as well.";
+		npctalk "Gonie? The guy who was bloody?", "", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Everyone is a monster here. Look at Gonie. He was bleeding and almost dead. But He was still alive. The truth is that other guys are extraordinary and you are normal.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "But I'm not at the level they require here. Whenever I get a gun in my hand, my eyes are sore and my hands are shaking. I can't aim a target properly...";
+		npctalk "It's a lack of self-confidence.", "", bc_self;
+		npctalk "I guess so. While I train, I have no problem.", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "So you are in charge of the housekeeping here?";
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Rookie]";
+		mes "Not a housekeeping. A sort of cleaning-up?";
+		next;
+		cutin "",255;
+		cloakoffnpc "Senior#16nego01", getcharid(0);
+		cloakoffnpc "Senior#16nego02", getcharid(0);
+		cloakoffnpc "Senior#16nego03", getcharid(0);
+		cloakoffnpc "Senior#16nego04", getcharid(0);
+		mes "[Senior]";
+		mes "Hey Rookie. Why did you bring those jerks in here? They are wandering around and humiliating us! Rookie, are you a spy from the government?";
+		emotion ET_FRET, getnpcid(0, "Senior#16nego01");
+		npctalk "They've been everywhere!", "Senior#16nego01", bc_self;
+		next;
+		mes "[Senior]";
+		mes "The government ignored us when we were dying! We can never help them!";
+		emotion ET_ANGER, getnpcid(0, "Senior#16nego02");
+		npctalk "Over my dead body!", "Senior#16nego02", bc_self;
+		next;
+		mes "[Senior]";
+		mes "Have you forgotten why we are hiding here?";
+		emotion ET_FRET, getnpcid(0, "Senior#16nego03");
+		npctalk "I can never forget that day!", "Senior#16nego03", bc_self;
+		next;
+		mes "[Senior]";
+		mes "The government caused this tragedy!";
+		emotion ET_FRET, getnpcid(0, "Senior#16nego04");
+		npctalk "The government caused this tragedy!", "Senior#16nego04", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Fine. You live forever in this isolated place! But what about the children who don't know anything about it?";
+		next;
+		mes "[Senior]";
+		mes "Hey kid! Do you know how much pain we had on that day?";
+		emotion ET_ANGER, getnpcid(0, "Senior#16nego04");
+		npctalk "Even children must know the truth!", "Senior#16nego04", bc_self;
+		next;
+		mes "[Rookie]";
+		mes "I don't know! However, no one else will know it unless we talk about it. Go out there and ask anyone.";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "Ask them if they know that happened on that day. I bet nobody does. Unless we talk about it, how can anyone ever find it out?";
+		npctalk "What does it mean for us to live like this?", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "You hate to help the government that once abandoned us? It shows that we used to be nothing for them, but now they our help. Does that mean some compensation for us?";
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "If they need our help, we can just use them. We are not as weak as we used to.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "If you want a revenge, maybe this is the opportunity! A revenge doesn't always mean an armed revenge.";
+		next;
+		mes "[Senior]";
+		mes "You are young and not wise enough. No matter what happens, we are never helping the government. Never!";
+		npctalk "This is a chance to kick out the guys with threatening ideology!", "Senior#16nego01", bc_self;
+		npctalk "If you don't like it, why are you living here with us?", "Senior#16nego02", bc_self;
+		sleep2 500;
+		npctalk "Get them out.", "Senior#16nego03", bc_self;
+		next;
+		cloakoffnpc "Gonie#16nego04", getcharid(0);
+		cutin "16go_03.bmp",2;
+		mes "[Gonie]";
+		mes "......";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Gonie?";
+		next;
+		cutin "16go_03.bmp",2;
+		mes "[Gonie]";
+		mes "......";
+		npctalk "That's true...", "Rookie#16nego02", bc_self;
+		next;
+		cutin "",255;
+		mes "[Senior]";
+		mes "What the hell is he saying after showing up all of a sudden?";
+		next;
+		mes "[Senior]";
+		mes "Are you still doing the silent meditation?";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "For the favor...";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Did you hear that? He is in the middle of a silent meditation. How spiteful!";
+		npctalk "Ha... This place is full of monsters.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Be quiet. I hear it all.";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "... Gonie says we have to pay for the favor they did to him.";
+		next;
+		mes "[Senior]";
+		mes "Well. They did the favor for you, not for us.";
+		npctalk "We don't owe you anything.", "Senior#16nego02", bc_self;
+		sleep2 300;
+		npctalk "They are the ones who owe you.", "Senior#16nego03", bc_self;
+		next;
+		mes "[Senior]";
+		mes "If you want to help them so badly, you two go and help them. But make sure you take the clothes off!";
+		npctalk "Don't tell anyone that you are a member of the Rebellion!", "Senior#16nego01", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Did you hear that? They are so cool.";
+		npctalk "I like them!", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I hear it all.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : And it's not like that.", bc_self;
+		next;
+		cutin "16go_03.bmp",2;
+		mes "[Gonie]";
+		mes "......";
+		npctalk "Really? I thought so.", "Rookie#16nego02", bc_self;
+		next;
+		mes "[Senior]";
+		mes "What did that guy say?";
+		npctalk "How does he understand it?", "Senior#16nego02", bc_self;
+		npctalk "Rookie has a great ability.", "Senior#16nego03", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "He says everyone on the 2nd floor decided to help them.";
+		next;
+		mes "[Senior]";
+		mes "What? The ladies and Rupert as well?";
+		npctalk "Erst and Elena? That's impossible!", "Senior#16nego04", bc_self;
+		next;
+		cutin "16loo_03.bmp",0;
+		mes "[Rookie]";
+		mes "If you are curious, go upstairs and check it. They might slap you on the back.";
+		npctalk "Sounds like everybody here is cool.", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Seems like most of us agree. I don't think anything good will happen if you're still against it.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Phew... Sir, what would you do now? Hehe.";
+		emotion ET_SMILE;
+		npctalk "Seems like the decision has been made.", "", bc_self;
+		sleep2 300;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Did you just say 'hehe'?", bc_self;
+		next;
+		cutin "",255;
+		mes "[Senior]";
+		mes "Oops... We have no other choice if the ladies and Rupert agreed with them...";
+		npctalk "Oops... We have no other choice...", "Senior#16nego04", bc_self;
+		npctalk "If everyone thinks that way...", "Senior#16nego03", bc_self;
+		sleep2 500;
+		npctalk "Why is everyone persuaded so easily?", "Senior#16nego01", bc_self;
+		next;
+		mes "[Senior]";
+		mes "But I will never trust you guys! I will keep my eyes on you!!!";
+		next;
+		cutin "16lei_02.bmp",2;
+		cloakonnpc "Senior#16nego01", getcharid(0);
+		mes "[Lazy]";
+		mes "Oh, what a passionate propose. I've never had anything like this in my life. I feel a little shy.";
+		npctalk "That's so cool.", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[Senior]";
+		mes "I'm not leaving until I close his big mouth! I'm not leaving!";
+		npctalk "I'm not leaving!", "Senior#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Hey, behave yourself and let's go back. We have to set up a countermeasure.", "Senior#16nego03", bc_self;
+		sleep2 500;
+		npctalk "Well, I have to carry him.", "Senior#16nego04", bc_self;
+		next;
+		cloakonnpc "Senior#16nego02", getcharid(0);
+		cloakonnpc "Senior#16nego03", getcharid(0);
+		cloakonnpc "Senior#16nego04", getcharid(0);
+		cutin "16go_03.bmp",2;
+		mes "[Gonie]";
+		mes "......";
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Rookie]";
+		mes "Yes. Let me handle this place. You go inside and get ready.";
+		next;
+		cutin "16lei_01.bmp",0;
+		cloakonnpc "Gonie#16nego04", getcharid(0);
+		mes "[Lazy]";
+		mes "I've never imagined that this would be done so perfectly. I owe you for this. Thanks.";
+		npctalk "The happiness is always with me.", "", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Please go and send them a message. Tell them 'The Heron spread its wings' and they will understand.";
+		npctalk "What is that? Heron?", "Rookie#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Curious? Are you really curious?", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Should I go alone? Don't you have to send the message directly?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "I am staying here. Hahaha. I really like this fellow and we can work together.";
+		npctalk "What do you think? You like it. Don't you?", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Work with me? I don't think I can do anything useful for you.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "Exactly. That's something you should change. Self-confidence. In your case, the lack of confidence caused the lack of self-confidence.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Confidence can be obtained by yourself, through an achievement or by being approved by someone else a person. It's impossible here. This place is like a suit that does not fit for you.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "As long as there is just one person who trusts you, you can grow to infinity.";
+		next;
+		mes "[Lazy]";
+		mes "You may not have realized it. But you are already doing it to everyone here. They all counting on you. Just trust yourself a little more.";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "If you don't get it, trust me. Because I trust you.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : This is called 'infinite confidence'.", bc_self;
+		next;
+		cutin "16lei_03.bmp",2;
+		emotion ET_BEST;
+		mes "[Lazy]";
+		mes "Now the generation has shifted. Today is the last day for the old generation and the first day for the new generation. And you are the link.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "You're too good to waste your talent here.";
+		next;
+		cutin "16lei_03.bmp",2;
+		mes "[Lazy]";
+		mes "First, you had the ability to find out that I had a certain purpose. You were also able to find out what's helpful for Rebellions. Then you had the guts to implement it. You also have the humanity...";
+		next;
+		mes "[Lazy]";
+		mes "Just a little polishing will help you spread your wings. You're supposed to use your brain. Why do you suffer by working physically?";
+		npctalk "Wings? So it's what you meant when you mentioned Heron?", "Rookie#16nego02", bc_self;
+		sleep2 300;
+		npctalk "Strictly speaking, no. But let's say it is similar.", "", bc_self;
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "If you want, I can help you. What do you think? I need a partner and I'm sure we can make a great duo.";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : You said you'd make a duo with me.", bc_self;
+		sleep2 300;
+		npctalk "Adventurer. I know you'd leave me soon.", "", bc_self;
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Oh, could you be explain it to me in detail?";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Sure. I have plenty of time. By the way, is it okay for me to stay here continuously?";
+		emotion ET_BEST;
+		next;
+		cutin "16loo_02.bmp",0;
+		mes "[Rookie]";
+		mes "We are now cooperating, aren't we?";
+		emotion ET_BEST, getnpcid(0, "Rookie#16nego02");
+		npctalk "We? Did you say 'we'? You people are so cool.", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Don't you think you're scouting him too plainly in someone else's house?";
+		next;
+		cutin "16lei_02.bmp",2;
+		mes "[Lazy]";
+		mes "Is there anything wrong with it? You have this talented guy but you are not utilizing his ability. Are you? He's so talented!";
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I think you are regarding him as an item.", bc_self;
+		next;
+		cutin "16go_03.bmp",2;
+		cloakoffnpc "Gonie#16nego04", getcharid(0);
+		mes "[Gonie]";
+		mes "......";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "Gonie?";
+		next;
+		mes "[Gonie]";
+		mes "......";
+		npctalk "Already?", "Rookie#16nego02", bc_self;
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "What did he say?";
+		next;
+		cutin "16loo_01.bmp",0;
+		mes "[Rookie]";
+		mes "He says we have prepared someone to proceed the cooperation. If you go to the passage to the store, you can meet that person.";
+		npctalk "Thanks.", "Rookie#16nego02", bc_self;
+		cloakonnpc "Gonie#16nego04", getcharid(0);
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Yes. I will meet that person and listen.";
+		next;
+		cutin "16lei_01.bmp",2;
+		mes "[Lazy]";
+		mes "Adventurer, I need to have a long talk from now on. So I'm counting on you. When you go there, don't forget to use that place. I mean 'that place'.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Pardon? I see.. See you later.";
+		next;
+		mes "[Lazy]";
+		mes "Yikes! Wait a minute! I almost forgot. This is the reward specially prepared for this mission. I am giving all of them to you. You can exchange this with something useful.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Token of honor?";
+		next;
+		mes "[Lazy]";
+		mes "Seems like the dull middle-aged person standing beside the stairs receives the tokens. His name is Strasse. If you are interested, go.";
+		next;
+		mes "[Lazy]";
+		mes "I gave you everything. Bye now. Say hello to the President!!";
+		npctalk "Tell his excellency to wait for a while even if his excellency misses me.", "", bc_self;
+		sleep2 300;
+		npctalk "Please visit us again, adventurer.", "Rookie#16nego02", bc_self;
+		erasequest 14614;// Convince the leaders
+		setquest 14615;// Between negotiation and deception
+		getitem 25155,10;	// Swz_Honor_Token
+		getexp 1000000,500000;
+		terra_gloria_main = 17;
+		questinfo_refresh();
+		close3;
+	}
+	cutin "16lei_01.bmp",2;
+	mes "[Lazy]";
+	mes "Yo! Welcome! Do you want a cup of tea? Did you send the message properly?";
+	close3;
+
+OnInit:
+	// questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(14614) == 0 && isbegin_quest(14599) == 1" );	// no questinfo
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(14615) == 0 && isbegin_quest(14602) == 2 && isbegin_quest(11462) == 2" );
+	end;
+}
+// Old Lady Room - Outside
+rebel_in,121,43,5	duplicate(dummy_cloaked_npc)	Rebellion Guard leader#1	4_M_REBELLION
+
+function	script	F_TerraGloria_Lady	{
+	if (terra_gloria_main < 16 || terra_gloria_lady_part == 0) {
+		mes "[Rebellion guard]";
+		mes "I'm sorry.";
+		mes "You cannot enter here.";
+		close;
+	}
+	if (terra_gloria_main == 16 && terra_gloria_lady_part == 1) {
+		mes "[Rebellion guard]";
+		mes "I'm sorry.";
+		mes "You cannot enter here.";
+		next;
+		select("Tell the guard that Rookie sent you.");
+		mes "[Rebellion guard]";
+		mes "Rookie?";
+		npctalk "Rebellion guard : Rookie?", "Rebellion guard#162gmbs1", bc_self;
+		npctalk "Rebellion guard : Rookie?", "Rebellion guard#162gmbs2", bc_self;
+		next;
+		mes "[Rebellion guard]";
+		mes "What's wrong with that guy?";
+		mes "Although he sent you here, you cannot enter.";
+		mes "Please go back.";
+		next;
+		cloakoffnpc "Rebellion Guard leader#1", getcharid(0);
+		mes "[Rebellion Guard leader]";
+		mes "Why is it so noisy here?";
+		npctalk "Rebellion Guard leader : Be quiet!", "Rebellion Guard leader#1", bc_self;
+		emotion ET_FRET, getnpcid(0, "Rebellion Guard leader#1");
+		next;
+		mes "[Rebellion guard]";
+		mes "I'm sorry!!!!";
+		npctalk "Rebellion guard : I'm sorry!!!!", "Rebellion guard#162gmbs1", bc_self;
+		npctalk "Rebellion guard : I'm sorry!!!!", "Rebellion guard#162gmbs2", bc_self;
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "Shut up!";
+		mes "How many times do you think I told you to be quiet!";
+		next;
+		mes "[Rebellion guard]";
+		mes "I am sorry..";
+		mes "This person wants to go inside, claiming that Rookie sent him/her.";
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "Rookie?";
+		npctalk "Rebellion Guard leader : Rookie?", "Rebellion Guard leader#1", bc_self;
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "Arrrgh... That kid?";
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "The kid sent you. So, what about it?";
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "You...... You're the one who made a fuss downstairs a moment ago.";
+		npctalk "Guard leader : You came here with the lazy-looking guy.", "Rebellion Guard leader#1", bc_self;
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "I have no idea what brought you here. But I can't let you in.";
+		mes "Do not make a fuss. Go back!";
+		next;
+		select("Ask him again.");
+		mes "[Rebellion Guard leader]";
+		mes "You cannot change anything by asking me for a favor.";
+		mes "No.";
+		next;
+		select("Ask him again.");
+		mes "[Rebellion Guard leader]";
+		mes "I said no!";
+		mes "You're so annoying!";
+		npctalk "Rebellion Guard leader : I said no. And that's it!", "Rebellion Guard leader#1", bc_self;
+		next;
+		mes "[Rebellion Guard leader]";
+		mes "If it hadn't been for the order of our leader, I could just knock you out right here......";
+		next;
+		mes "[???]";
+		mes "...... It's noisy outside.";
+		mes "What's going on? Larcis.";
+		emotion ET_HUK, getnpcid(0, "Rebellion Guard leader#1");
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Nothing.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Hey, leave now.";
+		mes "You will be in trouble, if you keep making a fuss.";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#1");
+		next;
+		if (select( "Shout at him.", "Go back." ) == 2) {
+			mes "[Rebellion Guard leader Larcis]";
+			mes "A good idea.";
+			mes "The exit is downstairs. Go there.";
+			npctalk "Rebellion Guard leader : Hey~ Hey~ Go away!", "Rebellion Guard leader#1", bc_self;
+			cloakonnpc "Rebellion Guard leader#1", getcharid(0);
+			close;
+		}
+		mes "[Rebellion Guard leader Larcis]";
+		mes "What the hell was that!";
+		mes "You're so rude!";
+		mes "Do you want to die right now?";
+		emotion ET_HUK, getnpcid(0, "Rebellion Guard leader#1");
+		npctalk "Rebellion Guard leader : Hey!! Pipe down!!!!!", "Rebellion Guard leader#1", bc_self;
+		next;
+		mes "[???]";
+		mes "Oops!";
+		mes "This is the voice I've never heard before. Is it the adventurer who helped that kid?";
+		next;
+		select("Say yes.");
+		mes "[???]";
+		mes "Larcis.";
+		mes "We cannot leave our savior outside. Let the adventurer come in.";
+		mes "Let me give him/her a cup of tea.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "But.. Dien!!!";
+		next;
+		mes "[Dien]";
+		mes "......";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "...... I see.";
+		mes "Follow me.";
+		npctalk "Rebellion Guard leader : Ha... I'll be scolded by the leader..", "Rebellion Guard leader#1", bc_self;
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "If you behave rudely, you won't go back alive.";
+		npctalk "Rebellion Guard leader : If anything goes wrong, we will die together!", "Rebellion Guard leader#1", bc_self;
+		cloakonnpc "Rebellion Guard leader#1", getcharid(0);
+		erasequest 11454;// Doubt
+		setquest 11455;// Doubt
+		terra_gloria_lady_part = 2;
+		close2;
+		warp "rebel_in",158,83;
+		end;
+	}
+	return;
+}
+
+rebel_in,125,44,3	script	Rebellion guard#162gmbs1	4_F_REBELLION3,{
+	callfunc("F_TerraGloria_Lady");
+	end;
+}
+rebel_in,125,39,3	duplicate(Rebellion guard#162gmbs1)	Rebellion guard#162gmbs2	4_M_REBELLION3
+
+rebel_in,126,41,0	script	#162gmroom_2	WARPNPC,1,1,{
+	end;
+OnTouch:
+	callfunc("F_TerraGloria_Lady");
+	if (terra_gloria_lady_part == 8 || terra_gloria_lady_part == 9) {
+		mes "- The door seems to be locked -";
+		close;
+	}
+	if (terra_gloria_lady_part == 10) {
+		mes "- You hear the conversation from inside the room. -";
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "... So I was thinking that you were having dementia.";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "I'm not that old yet.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Come to think of it, you should make yourself up!";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "This is why you look older!";
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Sometimes you look older than Cotnes!";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Oops, really?";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Cotnes]";
+		mes "Phew!";
+		mes "Not so old!";
+		cutin "ep162_ctn01.bmp",2;
+		next;
+		mes "[Rebellion senior Cotnes]";
+		mes "It seems like you have more wrinkles these days.";
+		mes "Why don't you put on some anti-wrinkle cream?";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "This all is because of the air here!";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "You're right!";
+		mes "This type of air is critical to the dry skin like yours!";
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Come to think of it, remember that kid who came here before?";
+		mes "Tell him to buy some cosmetics from Rune-Midgarts!";
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "I have heard there's a fascinating cosmetic shop there.";
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "It's difficult for our kids to go all the way there to buy cosmetics.";
+		mes "There is a problem with the position as well...";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "That kid? Who are you talking about?";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "The kid from the Secret Wings~";
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Oh!";
+		mes "I remember I asked him for an errand. Will he be back here?";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "It's like you solved the whole problem. And they won't get past you.";
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Of course, we have some important thoughts~";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "You're so great. How can you think of such an idea in that short moment?";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Not to mention the president, Heart Hunters are irritating to us as well.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Although they are all novices, they can be an obstacle for us in defeating the Secret Wings.";
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "That's true.";
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Let's say we attack the Secret Wings recklessly and Heart Hunters takes the chance to attack us. We'll collapse in a minute.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "So we will pretend to cooperate with the Secret Wings and get rid of the annoying ones first.";
+		cutin "ep162_dn04.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Let's finish them before they realize we have a plan to attack them.";
+		cutin "ep162_rds05.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "We're Rebellions. And we are at the end of guns.";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Let me finish my karma in my generation.";
+		mes "I don't want to leave it to youngsters.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "This is good to have this opportunity before I die.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "Come on, sister!";
+		mes "Don't talk about dying!";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "I saw Rupert crying after you said that.";
+		cutin "ep162_rds04.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "He's not cute anymore, he is just a middle-aged man. But to him, you're like mother.";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "And to me...";
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "Yes, I see.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Rebellion senior Dien]";
+		mes "What we have now is a pleasant party. I'm looking forward to it.";
+		mes "Hahaha.";
+		cutin "ep162_dn04.bmp",2;
+		next;
+		mes "[Rebellion senior Ridsh]";
+		mes "I'm expecting it so much!";
+		cutin "ep162_rds05.bmp",0;
+		next;
+		mes "[Rebellion senior Cotnes]";
+		mes "Then I'll fix the party accessories in advance.";
+		mes "Hohohoho.";
+		cutin "ep162_ctn02.bmp",2;
+		terra_gloria_lady_part = 11;
+		setquest 11463;// You said the party is ready?
+		close3;
+	}
+	warp "rebel_in",158,83;
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_lady_part == 10" );
+	end;
+}
+
+
+// Old Lady Room - Inside
+rebel_in,166,88,3	script	Cotnes#162gmbs	4_F_COATNEIS,{
+	if (terra_gloria_lady_part < 3) {
+		cutin "ep162_ctn01.bmp",2;
+		mes "[Cotnes]";
+		mes "Nice to meet you.";
+		mes "Take a seat and have some cookies.";
+		close3;
+	}
+	if (terra_gloria_lady_part < 7) {
+		cutin "ep162_ctn01.bmp",2;
+		mes "[Cotnes]";
+		mes "Phew.. It sounds so serious.";
+		mes "It's dangerous to be excited at our age...";
+		close3;
+	}
+	// if (terra_gloria_lady_part >= 11) {// to 13
+	cutin "ep162_ctn01.bmp",2;
+	mes "[Rebellion senior Cotnes]";
+	mes "Oops! Welcome.";
+	mes "We have been talking about the party that will be held soon.";
+	close3;
+}
+
+rebel_in,166,86,3	script	Ridsh#162gmbs	4_F_LEEDSH,{
+	if (terra_gloria_lady_part < 3) {
+		cutin "ep162_rds01.bmp",0;
+		mes "[Ridsh]";
+		mes "It's been a long time since an outsider came in here for the last time.";
+		close3;
+	}
+	if (terra_gloria_lady_part < 7) {
+		cutin "ep162_rds02.bmp",0;
+		mes "[Ridsh]";
+		mes "If you do not want me to make a nice hole in your head, leave now.";
+		npctalk "Ridsh : You'll feel a cool breeze in your head!", "", bc_self;
+		close3;
+	}
+	// if (terra_gloria_lady_part >= 11) {// to 13
+	cutin "ep162_rds03.bmp",0;
+	mes "[Rebellion senior Ridsh]";
+	mes "Don't be so panic.";
+	mes "I talked it out with my sister.";
+	npctalk "Ridsh : I am not such a scary person~", "", bc_self;
+	close3;
+}
+
+rebel_in,164,88,5	script	Dien#162gmbs	4_F_DIENE,4,4,{
+	if (terra_gloria_lady_part < 3) {
+		cutin "ep162_dn01.bmp",2;
+		mes "[Dien]";
+		mes "Welcome.";
+		next;
+		mes "[Dien]";
+		mes "Don't just be standing there. Sit down here.";
+		emotion ET_COMEON;
+		close3;
+	}
+	if (terra_gloria_lady_part == 3) {
+		mes "[Dien]";
+		mes "Good.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "Let me persuade the people who are against this.";
+		next;
+		mes "[Ridsh]";
+		mes "What!!!!!!!!!!!!!";
+		mes "Sister!";
+		mes "Are you crazy?";
+		mes "What the hell are you saying!";
+		cutin "ep162_rds04.bmp",0;
+		emotion ET_HUK, getnpcid(0, "Ridsh#162gmbs");
+		next;
+		mes "[Ridsh]";
+		mes "That's the request from the president!";
+		mes "The guy who destroyed us!";
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Calm down, Ridsh.";
+		npctalk "Dien : I thought about it a lot.", "", bc_self;
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "I will never accept it!";
+		cutin "ep162_rds04.bmp",0;
+		next;
+		mes "[???]";
+		mes "Well... If Dien agrees, I will agree, too.";
+		cutin "ep162_ctn01.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "What's wrong with you, Cotnes!";
+		mes "This is the request from those guys!";
+		mes "Those guys who destroyed us!";
+		npctalk "Ridsh : Have you forgotten how much we suffered because of it?", "Ridsh#162gmbs", bc_self;
+		emotion ET_HUK, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds04.bmp",0;
+		next;
+		mes "[Cotnes]";
+		mes "Dien must have some thoughts about it.";
+		emotion ET_HUM, getnpcid(0, "Cotnes#162gmbs");
+		cutin "ep162_ctn01.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "Although you are my sister, I will never accept this!";
+		emotion ET_STARE, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "... You'd better go out now.";
+		mes "If you stay here longer, you might get an air hole in your head.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "I know you've met Rupert. Have you met ^ff0000Erst^000000?";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "Larcis. Go with this adventurer and hand them this letter.";
+		next;
+		mes "[Dien]";
+		mes "And tell the kids in front of the door not to enter here until Ridsh calms down.";
+		next;
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Yes, I will.";
+		emotion ET_OK, getnpcid(0, "Rebellion Guard leader#2");
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Follow me. We are going to commander Erst first.";
+		emotion ET_GO, getnpcid(0, "Rebellion Guard leader#2");
+		npctalk "Rebellion Guard leader : To find commander Erst's room, go out of this room and walk through the left corridor.", "Rebellion Guard leader#2", bc_self;
+		erasequest 11456;// Doubt
+		setquest 11457;// Doubt
+		completequest 14601;// Ladies on second floor
+		terra_gloria_lady_part = 4;
+		close;
+	}
+	if (terra_gloria_lady_part == 4) {
+		mes "[Dien]";
+		mes "... You'd better go out now.";
+		mes "If you stay here longer, you might get an air hole in your head.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "I know you've met Rupert. Have you met Erst?";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "Larcis. Go with this adventurer and hand them this letter.";
+		next;
+		mes "[Dien]";
+		mes "And tell the kids in front of the door not to enter here until Ridsh calms down.";
+		next;
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Yes, I will.";
+		emotion ET_OK, getnpcid(0, "Rebellion Guard leader#2");
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Follow me. We are going to commander Erst first.";
+		npctalk "Rebellion Guard leader : To find commander Erst's room, go out of this room and walk through the left corridor.", "Rebellion Guard leader#2", bc_self;
+		close;
+	}
+	if (terra_gloria_lady_part < 7) {
+		mes "[Dien]";
+		mes "I'm surprised that Erst accepted it so easily.";
+		npctalk "Dien : I thought there would a disaster.", "Dien#162gmbs", bc_self;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "Without further delay, meet Rupert again.";
+		npctalk "Dien : If all of us agree, he cannot help but approve it.", "Dien#162gmbs", bc_self;
+		close3;
+	}
+	// if (terra_gloria_lady_part == 11) {// 12 - 13
+	mes "[Rebellion senior Dien]";
+	mes "Welcome.";
+	mes "Since most of the kids are busy these days, I feel somewhat bored.";
+	npctalk "Dien : I have many things to prepare.", "Dien#162gmbs", bc_self;
+	cutin "ep162_dn01.bmp",2;
+	next;
+	mes "[Rebellion senior Dien]";
+	mes "By the way, what brought you here? I thought you finished your business.";
+	mes "I guess I answered your question...";
+	next;
+	mes "[Rebellion senior Dien]";
+	mes "Oops!";
+	mes "You haven't forgotten about the errand?";
+	next;
+	mes "[Rebellion senior Dien]";
+	mes "I didn't really mean to ask you for a favor. It's so kind of you to remember it!";
+	npctalk "Dien : What a sensation!", "Dien#162gmbs", bc_self;
+	next;
+	mes "[Rebellion senior Dien]";
+	mes "We were talking about the party we are planning soon.";
+	mes "It was nearly over. But several ingredients are missing.";
+	npctalk "Dien : It's such an important party.", "Dien#162gmbs", bc_self;
+	next;
+	mes "[Rebellion senior Dien]";
+	mes "Since Larcis is in charge of our business, please ask him. He will tell you what we need.";
+	if (terra_gloria_lady_part == 11) {
+		erasequest 11463;// You said the party is ready?
+		setquest 11464;// You said the party is ready?
+		terra_gloria_lady_part = 12;
+		getexp 200000,200000;
+	}
+	close3;
+
+OnTouch:
+	if (terra_gloria_lady_part == 2) {
+		mes "[Dien]";
+		mes "Well...... I heard what they said about you.";
+		mes "Did you help the kid when he fell on the ground?";
+		cutin "ep162_dn02.bmp",2;
+		next;
+		mes "[???]";
+		mes "Sister, he is Gonie.";
+		emotion ET_OHNO, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Oops.";
+		mes "Is his name Gonie?";
+		emotion ET_AHA;
+		cutin "ep162_dn01.bmp",2;
+		npctalk "Dien : There are so many kids....", "", bc_self;
+		next;
+		mes "[???]";
+		mes "You know, that tall guy who doesn't talk much.";
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Oh!";
+		emotion ET_THROB;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[???]";
+		mes "He bought some expensive cookies for us on his way to Lighthalzen.";
+		npctalk "??? : That cookie must cost a fortune.", "Ridsh#162gmbs", bc_self;
+		emotion ET_BLABLA, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Oh! Right!";
+		mes "Yes!";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "It was so delicious.";
+		mes "Have we finished it all?";
+		emotion ET_BIGTHROB;
+		next;
+		mes "[???]";
+		mes "It was so delicious and we finished it that day. Didn't we?";
+		mes "The quantity was so small.";
+		npctalk "??? : I will tell him to buy it again next time.", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Did we finish it?";
+		mes "It would have been better if we saved it for visitors.";
+		npctalk "A dessert is essential for teatime.", "", bc_self;
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[???]";
+		mes "If you save it, there will be mold on it.";
+		npctalk "??? : Well... Since it's too dry here, it might become more crispy.", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[???]";
+		mes "By the way, what happened to Gonie that time?";
+		cutin "ep162_rds01.bmp",0;
+		next;
+		cutin "",255;
+		select("Explain the situation.");
+		mes "[Dien]";
+		mes "Oh, my goodness! Really?";
+		cutin "ep162_dn01.bmp",2;
+		emotion ET_HUK;
+		emotion ET_HUK, getnpcid(0, "Ridsh#162gmbs");
+		emotion ET_HUK, getnpcid(0, "Cotnes#162gmbs");
+		next;
+		mes "[Dien]";
+		mes "Oh!";
+		mes "I was lucky to find him early.";
+		npctalk "Dien : Lying down somewhere like that can be really dangerous.", "", bc_self;
+		next;
+		mes "[???]";
+		mes "I heard what they were saying.";
+		mes "It sounds like he has been cured and is all right now.";
+		npctalk "??? : A moment ago, there was a fuss.", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds01.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Is that so?";
+		mes "What a relief.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "Ah~";
+		mes "The kids are struggling......";
+		next;
+		mes "[Dien]";
+		mes "I hope they don't get hurt.";
+		mes "Every time they leave the base, I'm afraid they might get hurt.";
+		next;
+		mes "[???]";
+		mes "Oh, sister!";
+		mes "You worry too much!";
+		mes "They are adults, not babies. They can take care of themselves.";
+		emotion ET_SCRATCH, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds03.bmp",0;
+		next;
+		mes "[???]";
+		mes "By the way, what are you doing here?";
+		next;
+		mes "[???]";
+		mes "I don't think you came here for tea and chatting with us.";
+		next;
+		cutin "",255;
+		select("Talk about cooperation.");
+		mes "[???]";
+		mes "What?!";
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[???]";
+		mes "Hey!";
+		mes "Get out of here!";
+		cutin "ep162_rds04.bmp",0;
+		next;
+		mes "[???]";
+		mes "Where do you think you are? That's sheer nonsense!";
+		npctalk "??? : Ha! It's shocking!", "Ridsh#162gmbs", bc_self;
+		next;
+		mes "[Dien]";
+		mes "Calm down, Ridsh!";
+		mes "Do not make a fuss.";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "How can I calm down on hearing that?";
+		npctalk "Ridsh : You have also heard what the adventurer has said just now!", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Ridsh]";
+		mes "No wonder they started talking about Gonie. It seemed like they were hiding something from the beginning!";
+		next;
+		mes "[Ridsh]";
+		mes "If you do not want me to make a nice hole in your head, leave now.";
+		next;
+		mes "[Ridsh]";
+		mes "And tell them!";
+		npctalk "Tell the fools who sent you here!", "Ridsh#162gmbs", bc_self;
+		next;
+		mes "[Ridsh]";
+		mes "Before we kill you all, there's no chance in hell we can ever cooperate with you!";
+		next;
+		mes "[Ridsh]";
+		mes "How dare you....";
+		next;
+		mes "[Dien]";
+		mes "......";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "You expected this before you came here, right?";
+		npctalk "Dien : You didn't think we would accept it easily. Did you?", "", bc_self;
+		next;
+		mes "[Dien]";
+		mes "But we like your courage. So we will listen to you first.";
+		cutin "ep162_dn01.bmp",2;
+		next;
+		mes "[Dien]";
+		mes "You must have been ready to die by the time you came here. So I will say this is the price of your life.";
+		npctalk "Dien We are not so mean.", "", bc_self;
+		next;
+		mes "[Ridsh]";
+		mes "Sister!";
+		mes "Don't even listen!";
+		npctalk "Ridsh : Whatever it is, it's nonsense!", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Dien]";
+		mes "Ridsh!";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "...";
+		emotion ET_CHAT_PROHIBIT, getnpcid(0, "Ridsh#162gmbs");
+		cutin "ep162_rds03.bmp",0;
+		next;
+		cutin "",255;
+		select("Explain the situation.");
+		mes "[Dien]";
+		mes "Wow... Heart Hunters...";
+		cutin "ep162_dn03.bmp",2;
+		next;
+		mes "[Ridsh]";
+		mes "What!";
+		mes "Whatever it is, it is none of our business!";
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Ridsh]";
+		mes "Why do we have to help you?";
+		next;
+		mes "[Ridsh]";
+		mes "You are the ones who abandoned us in suffering!";
+		next;
+		mes "[Ridsh]";
+		mes "Rune-Midgarts?";
+		mes "I don't care what happens to their royal family!";
+		next;
+		mes "[Ridsh]";
+		mes "For Schwartz?";
+		mes "The biggest wish of my life is the collapse of Schwartz!";
+		npctalk "Ridsh : You make me laugh!", "Ridsh#162gmbs", bc_self;
+		cutin "ep162_rds04.bmp",0;
+		next;
+		mes "[Ridsh]";
+		mes "You can't handle Heart Hunter kids and ask us for help!";
+		cutin "ep162_rds02.bmp",0;
+		next;
+		mes "[Ridsh]";
+		mes "Where is the arrogance you showed us when you abandoned us?";
+		npctalk "Ridsh : You guys said that we were useless. And now you ask us for help...?", "Ridsh#162gmbs", bc_self;
+		next;
+		mes "[Ridsh]";
+		mes "It serves you right!";
+		mes "Fools!";
+		npctalk "Ridsh : You will fall to ruin!", "Ridsh#162gmbs", bc_self;
+		next;
+		mes "[Dien]";
+		mes "... That's enough!";
+		mes "Can you give us some time to think about it?";
+		mes "It's not an easy decision.";
+		cutin "ep162_dn03.bmp",2;
+		erasequest 11455;// Doubt
+		setquest 11456;// Doubt
+		terra_gloria_lady_part = 3;
+		close3;
+	}
+	end;
+}
+
+rebel_in,162,87,5	script	Rebellion Guard leader#2	4_M_REBELLION,{
+	if (checkweight(501,1) == 0 || (MaxWeight - Weight) < 1000) {
+		mes "- You have too many items in your inventory.";
+		mes "Please arrange your inventory and try again. -";
+		close;
+	}
+	disable_items;
+	if (terra_gloria_lady_part < 12) {
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Quiet inside!!";
+		close;
+	}
+	if (terra_gloria_lady_part == 12) {
+		mes "[Rebellion Guard leader Larcis]";
+		mes "What's going on here?";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Preparation for the party?";
+		mes "She has never told me anything about party!";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Oh! I remember she told me to bring something suspicious.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "High Class Tea for Dien, Old Letter for Ridsh and Very Shining Ring for Cotnes.";
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "At first sight, they don't look strange. But their locations are quite suspicious... They are in the northeastern corner of Einbroch. I have no idea how we can get them in such a place...";
+		npctalk "Guard leader : It sounds dangerous...", "", bc_self;
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "But... they told us to bring them. So we have to go and get them.";
+		npctalk "Rebellion Guard leader : An order is an order... I can't reject it.", "", bc_self;
+		next;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "If you're willing to go, tell me!";
+		mes "Of course, we will compensate you.";
+		completequest 11464;// You said the party is ready?
+		terra_gloria_lady_part = 13;
+		close;
+	}
+	mes "[Rebellion Guard leader Larcis]";
+	mes "You're here!";
+	mes "Then would you please have a look at the tasks given by Dien, Ridsh and Cotnes?";
+	next;
+	setarray .@quest_id[0], 11465, 11467, 11469;
+	setarray .@item_id[0], 25165, 25167, 25166;
+	setarray .@amount[0], 1, 1, 4;
+	while(true) {
+		setarray .@menu$[0], "Dien's High Class Tea", "Ridsh's Old Letter", "Cotnes's Very Shining Ring", "Don't do it.";
+		for ( .@i = 0; .@i < 3; ++.@i ) {
+			switch( checkquest(.@quest_id[.@i],HUNTING) ) {
+			case -1:
+				switch( checkquest(.@quest_id[.@i]+1,PLAYTIME) ) {
+				case -1:
+					.@quest_status[.@i] = 0;
+					break;
+				case 0:
+				case 1:
+					.@menu$[.@i] = "^8C8C8C" + .@menu$[.@i] + " (standing by)^000000";
+					.@quest_status[.@i] = 2;
+					break;
+				case 2:
+					.@quest_status[.@i] = 0;
+					break;
+				}
+				break;
+			case 0:
+			case 1:
+				.@menu$[.@i] = "^8C8C8C" + .@menu$[.@i] + " (doing now)^000000";
+				.@quest_status[.@i] = 1;
+				break;
+			case 2:
+				if (countitem(.@item_id[.@i]) >= .@amount[.@i])
+					.@quest_status[.@i] = 3;
+				else {
+					.@menu$[.@i] = "^8C8C8C" + .@menu$[.@i] + " (doing now)^000000";
+					.@quest_status[.@i] = 1;
+				}
+				break;
+			}
+		}
+		.@s = select( .@menu$[0], .@menu$[1], .@menu$[2], "Don't do it." ) - 1;
+		if (.@s == 3) {
+			mes "[Rebellion Guard leader Larcis]";
+			mes "Well.. I do not force you.";
+			close;
+		}
+		switch( .@quest_status[.@s] ) {
+		case 0:
+			if (isbegin_quest(.@quest_id[.@s]+1) == 1)
+				erasequest (.@quest_id[.@s]+1);
+
+			if (.@s == 0)
+				setarray .@string$[0], "Dien", "the item", "a Heart Hunter Ebel and get one High Class Tea";
+			else if (.@s == 1)
+				setarray .@string$[0], "Ridsh", "Old Letter", "Heart Hunter and get the Old Letter";
+			else
+				setarray .@string$[0], "Cotnes", "Very Shining Ring", "five Heart Hunter Guards and bring four Very Shining Rings";
+			mes "[Rebellion Guard leader Larcis]";
+			mes "This is "+ .@string$[1] + " "+ .@string$[0] + " asked you for.";
+			mes "If you meet Julian in the northeastern corner of the northern field in Einbroch, he will let you in.";
+			next;
+			mes "[Rebellion Guard leader Larcis]";
+			mes "Right there, defeat " + .@string$[2] + ".";
+			mes "I don't know what's going on. But since it's order of "+ .@string$[0] + ", we have to do it.";
+			next;
+			if (select( "Accept.", "Look at other requests." ) == 1) {
+				mes "[Rebellion Guard leader Larcis]";
+				mes "Take care of yourself!";
+				setquest .@quest_id[.@s];
+				next;
+			}
+			continue;
+		case 1:
+			mes "A request you are currently doing.";
+			next;
+			continue;
+		case 2:
+			mes "A request you have already completed.";
+			next;
+			continue;
+		case 3:
+			switch( .@s ) {
+			case 0:
+				mes "[Rebellion Guard leader Larcis]";
+				mes "This is the High Class Tea Dien told me about... But why was it located in such a place?";
+				mes "... Anyway, you did a great job.";
+				next;
+				mes "[Rebellion Guard leader Larcis]";
+				mes "If you bring this token to Strasse at the stairs at 10 o'clock in the corridor of the 2nd floor, you will receive something useful in return.";
+				delitem 25165,1;// High_Class_Tea
+				erasequest 11465;// Dien's High Class Tea
+				setquest 11466;// Dien's High Class Tea
+				getitem 25155,3;// Swz_Honor_Token
+				getexp 150000,150000;
+				break;
+			case 1:
+				mes "[Rebellion Guard leader Larcis]";
+				mes "Well done.";
+				mes "This is the Old Letter Ridsh talked about... By the way, why does she need this letter...?";
+				mes "There must be a reason, as Ridsh told us to bring it...";
+				next;
+				mes "[Rebellion Guard leader Larcis]";
+				mes "If you bring this token to Strasse at the stairs at 10 o'clock in the corridor of the 2nd floor, you will receive something useful in return.";
+				delitem 25167,1;// Old_Letter
+				erasequest 11467;// Ridsh's Old Letter
+				setquest 11468;// Ridsh's Old Letter
+				getitem 25155,3;// Swz_Honor_Token
+				getexp 150000,150000;
+				break;
+			case 2:
+				mes "[Rebellion Guard leader Larcis]";
+				mes "Well done.";
+				mes "This is the Very Shining Ring Cotnes talked about... As an accessory, it looks tremendous, doesn't it?";
+				mes "Cotnes said it's a ring. Then it's a ring...";
+				next;
+				mes "[Rebellion Guard leader Larcis]";
+				mes "If you bring this token to Strasse at the stairs at 10 o'clock in the corridor of the 2nd floor, you will receive something useful in return.";
+				delitem 25166,4;	// Very_Shining_Ring
+				getitem 25155,3;	// Swz_Honor_Token
+				erasequest 11469;// Cotness's Shiny Ring
+				setquest 11470;// Cotness's Shiny Ring
+				getexp 150000,150000;
+				break;
+			}
+			next;
+		}
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(11465) == 0 && (checkquest(11466,PLAYTIME) == -1 || checkquest(11466,PLAYTIME) == 2) && isbegin_quest(11464) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(11467) == 0 && (checkquest(11468,PLAYTIME) == -1 || checkquest(11468,PLAYTIME) == 2) && isbegin_quest(11464) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(11469) == 0 && (checkquest(11470,PLAYTIME) == -1 || checkquest(11470,PLAYTIME) == 2) && isbegin_quest(11464) == 2" );
+
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(11465,HUNTING) == 2 && countitem(25165) > 0 && isbegin_quest(11464) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(11467,HUNTING) == 2 && countitem(25167) > 0 && isbegin_quest(11464) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(11469,HUNTING) == 2 && countitem(25166) > 3 && isbegin_quest(11464) == 2" );
+	end;
+}
+
+// Room Commander
+rebel_in,210,89,5	script	Special Force commander	4_F_ESTLOVELOY,{
+	if (terra_gloria_lady_part < 4) {
+		cutin "ep162_est01.bmp",2;
+		mes "[Rebellion Special Force commander]";
+		mes "Who are you?";
+		npctalk "Special Force commander : Who are you?", "", bc_self;
+		next;
+		mes "[Rebellion Special Force commander]";
+		mes "Get lost.";
+		npctalk "Special Force commander : Get lost.", "", bc_self;
+		emotion ET_FRET;
+		close2;
+		warp "rebel_in",87,75;
+		end;
+	}
+	if (terra_gloria_lady_part == 4) {
+		cutin "ep162_est01.bmp",2;
+		mes "[Special Force commander Erst]";
+		mes "What is it?";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "And who's the guy beside you?";
+		mes "I haven't seen you before.";
+		emotion ET_FRET;
+		next;
+		cloakoffnpc "Rebellion Guard leader#3", getcharid(0);
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Ah.. that is....";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#3");
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Ssssh!";
+		emotion ET_FRET;
+		npctalk "Special Force commander : Ssssh!", "", bc_self;
+		cutin "ep162_est03.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Stop stalling...";
+		emotion ET_FRET;
+		npctalk "Special Force commander : Answer quickly!", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "I am sorry!";
+		mes "Dien sent you a letter!";
+		emotion ET_PROFUSELY_SWAT, getnpcid(0, "Rebellion Guard leader#3");
+		next;
+		mes "[Special Force commander Erst]";
+		mes "What?";
+		mes "What did that grandma send?";
+		cutin "ep162_est01.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Show it to me.";
+		npctalk "Special Force commander : What kind of plot is it?", "", bc_self;
+		next;
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "Here..";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Let's see..";
+		cutin "ep162_est01.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "I agree. Do you agree, too?";
+		mes "What the hell is this nonsense?";
+		cutin "ep162_est03.bmp",2;
+		next;
+		cutin "",255;
+		select("Explain him.");
+		mes "[Special Force commander Erst]";
+		mes "What?";
+		mes "Are you kidding me?";
+		cutin "ep162_est03.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Finally, that old woman is out of her mind.";
+		npctalk "Special Force commander : Normally she goes crazy, even after hearing the word 'Secret Wings'.", "", bc_self;
+		cutin "ep162_est01.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Hey!";
+		mes "Larcis.";
+		mes "Are you sure she wrote this?";
+		cutin "ep162_est03.bmp",2;
+		emotion ET_HUK, getnpcid(0, "Rebellion Guard leader#3");
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Regardless of the old women, the vixen will not be quiet.";
+		emotion ET_OHNO;
+		next;
+		cutin "",255;
+		mes "[Rebellion Guard leader Larcis]";
+		mes "It's clear that Dien wrote this!";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Well, that's why she sent you here.";
+		cutin "ep162_est01.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "......";
+		emotion ET_THINK;
+		cutin "ep162_est03.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Alright.";
+		cutin "ep162_est02.bmp",2;
+		next;
+		mes "[Special Force commander Erst]";
+		mes "This could be the last wish of the old lady.";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Let's agree with it.";
+		mes "For now.";
+		cloakonnpc "Rebellion Guard leader#3", getcharid(0);
+		erasequest 11457;// Doubt
+		setquest 11458;// Doubt
+		completequest 14613;// Erst on second floor
+		terra_gloria_lady_part = 5;
+		close3;
+	}
+	if (terra_gloria_lady_part == 5) {
+		cutin "ep162_est02.bmp",2;
+		mes "[Special Force commander Erst]";
+		mes "Alright.";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "This could be the last wish of the old lady.";
+		next;
+		mes "[Special Force commander Erst]";
+		mes "Let's agree with it.";
+		mes "For now.";
+		close3;
+	}
+	mes "[Special Force commander Erst]";
+	mes "What is it?";
+	mes "Stop wandering around and get lost now.";
+	cutin "ep162_est02.bmp",2;
+	close2;
+	warp "rebel_in",87,75;
+	end;
+}
+
+rebel_in,207,84,7	duplicate(dummy_cloaked_npc)	Rebellion Guard leader#3	4_M_REBELLION
+
+rebel_in,213,81,3	script	Rebellion#162gmbs2	4_F_REBELLION2,{
+	mes "[Rebellion]";
+	mes "Our commander is a great person!";
+	mes "There are no words to describe... how great he is!";
+	npctalk "Rebellion : Hahahaha!!!", "", bc_self;
+	close;
+}
+
+rebel_in,213,83,7	script	Rebellion#162gmbs1	4_M_REBELLION2,{
+	mes "[Rebellion]";
+	mes "Make sure you properly maintain your weapons.";
+	mes "Although there is dust on your shoes, your gun must always be shiny... That's what they call 'hard-boiled'!";
+	npctalk "Rebellion : Gasp...", "", bc_self;
+	close;
+}
+
+rebel_in,205,89,3	script	Rebellion#162gmbs4	4_M_REBELLION3,{
+	mes "[Rebellion]";
+	mes "Do you know the meaning of this position?";
+	mes "Huhuhuhuhu";
+	npctalk "Rebellion : Commander! I will always follow you!!!!", "", bc_self;
+	close;
+}
+
+rebel_in,212,90,5	script	Rebellion#162gmbs3	4_M_REBELLION2,{
+	mes "[Rebellion]";
+	mes "To become strong, you need an opportunity.";
+	mes "If your determination is not strong enough, you will always be in the same place.";
+	npctalk "Rebellion : Commander! I will always follow you!!!!", "", bc_self;
+	close;
+}
+
+rebel_in,82,68,2	script	Arinoa Yurhik#TFQ01	4_F_GUNSLINGER,{
+	if (checkweight(501,1) == 0 || (MaxWeight - Weight) < 1000) {
+		mes "- Cannot progress, because you have too many items in your possession. -";
+		close;
+	}
+	if (terra_gloria_main < 17) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		close;
+	}
+	if (yurhik_quest == 0) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		switch( checkquest(5727,PLAYTIME) ) {
+		case -1:
+			cloakoffnpc "Arivero Yurhik#TFQ02", getcharid(0);
+			npctalk "Are you the adventurer who is making a fuss in Clana Nemieri?", "Arivero Yurhik#TFQ02", bc_self;
+			mes "[Strange man]";
+			mes "Are you the adventurer who is making a fuss in Clana Nemieri?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "???";
+			next;
+			mes "You heard a voice of the man who showed up all of a sudden. Where on earth did he appear from?";
+			close;
+		case 0:
+		case 1:
+			mes "The man named Vero has not shown up. It seems like they are not ready yet.";
+			close;
+		case 2:
+			mes "It is time. Let me talk to them now.";
+			next;
+			cloakoffnpc "Arivero Yurhik#TFQ02", getcharid(0);
+			npctalk "Oops?! Here are you. Have you arrived already?", "Arivero Yurhik#TFQ02", bc_self;
+			mes "[Arivero Yurhik]";
+			mes "Oops?! Here are you. Have you arrived already?";
+			close;
+		}
+	}
+	if (yurhik_quest == 1) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		cloakoffnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		npctalk "You have to talk to me. Not to the elder sister.", "Arivero Yurhik#TFQ02", bc_self;
+		mes "[Arivero Yurhik]";
+		mes "You have to talk to me. Not to the elder sister.";
+		close;
+	}
+	if (yurhik_quest == 2) {
+		mes "You are to meet Vero in Einbech. Let's go to Einbech.";
+		close;
+	}
+	if (yurhik_quest == 4 || yurhik_quest == 6) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		cloakoffnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		npctalk "Kahaha. Welcome, pal.", "Arivero Yurhik#TFQ02", bc_self;
+		mes "[Arivero Yurhik]";
+		mes "Kahaha. Welcome, pal.";
+		close;
+	}
+	if (yurhik_quest == 5) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		mes "I promised to meet Vero at Lighthalzen. Let's go to Lighthalzen.";
+		close;
+	}
+	if (yurhik_quest == 7) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		cloakoffnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		npctalk "Have you brought the Star Crumb?", "Arivero Yurhik#TFQ02", bc_self;
+		mes "[Arivero Yurhik]";
+		mes "Have you brought the Star Crumb?";
+		close;
+	}
+	if (yurhik_quest == 8) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+		next;
+		mes "It seems like Vero has already departed.";
+		mes "Let's go to Yuno quickly.";
+		close;
+	}
+	if (yurhik_quest == 10) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl is looking at books and documents, as usual.";
+		next;
+		cloakoffnpc "Rebellion leader#TFQ15", getcharid(0);
+		npctalk "I have seen you talking to that kid lately.";
+		mes "[Rebellion leader]";
+		mes "I have seen you talking to that kid lately. Do you care about her?";
+		close;
+	}
+	if (yurhik_quest == 11) {
+		emotion ET_THINK;
+		mes "The poker-faced Gunslinger girl is looking at books and documents, as usual. Shall I say hello?";
+		next;
+		if (select( "Say hello.", "No." ) == 2) {
+			mes "The Gunslinger girl is not interested in what's happening here and goes on with her business.";
+			close;
+		}
+		mes "What shall I say to the Gunslinger girl?";
+		next;
+		input .@string$;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : " + .@string$, bc_self;
+		mes "[" + strcharinfo(0) + "]";
+		mes "" + .@string$ + "";
+		next;
+		mes "The poker-faced Gunslinger girl stole a glance at me and resumed fishing around books and documents again.";
+		close;
+	}
+	emotion ET_THINK;
+	mes "The poker-faced Gunslinger girl who was fishing around books and documents stole a glance at me. Then she resumed fishing around books and documents again.";
+	close;
+}
+
+rebel_in,78,66,6	script	Arivero Yurhik#TFQ02	4_M_GUNSLINGER,{
+	if (terra_gloria_main < 17)
+		end;
+	if (yurhik_quest == 0) {
+		switch( checkquest(5727,PLAYTIME) ) {
+		case -1:
+			emotion ET_SMILE;
+			mes "[Arivero Yurhik]";
+			mes "Hahaha, I'm here, sister.";
+			next;
+			emotion ET_FRET;
+			mes "[Arivero Yurhik]";
+			mes "So it was you.";
+			mes "The hottest fellow in Clana Nemieri, right? I hate to admit that you're hotter than me. Being hot has always been my part here.";
+			next;
+			mes "[Strange man]";
+			mes "Oh~! Now I have to introduce myself.";
+			mes "I am Arivero Yurhik.";
+			next;
+			emotion ET_SMILE;
+			mes "[Arivero Yurhik]";
+			mes "We have met today for the first time, but I guess we will be friends from now on. So you can just call me Vero.";
+			mes "Only my close friends call me Vero. Hahaha. So you are honored.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "And the lady here who is passionately interested in you is my elder sister, Arinoa Yurhik. You can see it from the name. We are siblings!";
+			next;
+			emotion ET_QUESTION, playerattached();
+			mes "[" + strcharinfo(0) + "]";
+			mes "Interested in me?";
+			next;
+			mes "It's strange. The lady has been looking at the documents, without showing any interest in me.";
+			mes "The man who has been speaking loudly became serious all of a sudden. He started talking to himself.";
+			next;
+			emotion ET_HUK;
+			mes "[Arivero Yurhik]";
+			mes "You are showing such a great interest in him..? Sister, perhaps you are trying to give the mission to this fellow?";
+			next;
+			mes "Since I was looking at her continuously, I knew that the lady did not speak or act. But the man named Vero seemed to understand what she was thinking and continued speaking.";
+			next;
+			emotion ET_SMILE;
+			mes "[Arivero Yurhik]";
+			mes "Yeah.. Really? Hahaha. I knew we'd become friends.";
+			mes "Hey friend. We have a task to work on together.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "It's not a hard job. All we need is to go to about four places and destroy several things.";
+			mes "You'll do it. Right?";
+			next;
+			select( "Do it.", "Do it without hesitation.", "Do it at all events.", "Since you are being forced, do it." );
+			emotion ET_OHNO, playerattached();
+			mes "[Arivero Yurhik]";
+			mes "When I saw you for the first time, I knew you were faithful. Oh! Right.";
+			mes "What is your name?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "" + strcharinfo(0) + " is my name.";
+			next;
+			emotion ET_SCRATCH;
+			mes "[Arivero Yurhik]";
+			mes "" + strcharinfo(0) + "?";
+			mes "Hmm, what an arrogant name. But it's the name that deserves to be hot. Now I have to acknowledge you..";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "I have several things to prepare. I believe you also need some time to get ready before departing, don't you?";
+			next;
+			setquest 5727;	// Suddenly in charge
+			mes "[Arivero Yurhik]";
+			mes "I will be fully ready after 4:00 am tomorrow. Once you are ready after that time, tell my elder sister. Then I will get here quickly.";
+			close2;
+			cloakonnpc "Arivero Yurhik#TFQ02", getcharid(0);
+			end;
+		case 0:
+		case 1:
+			end;
+		case 2:
+			emotion ET_COOL;
+			mes "[Arivero Yurhik]";
+			mes "You are not only faithful, but diligent as well!";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Great! The preparation is finished and you have arrived here. So let me give you a briefing on what we are going to do.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Teleporting is not available in the Schwaltzvalt area. I'm sure you know that.";
+			next;
+			if (select( "I know.", "I didn't know." ) == 1) {
+				mes "[Arivero Yurhik]";
+				mes "Good. Actually, you don't need to know that.";
+			}
+			else {
+				mes "[Arivero Yurhik]";
+				mes "I like your honesty. You don't actually need to know that.";
+			}
+			mes "It's not that important.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "According to the government of Schwaltzvalt, the use of teleport in the village is prohibited to prevent the overuse of magic. But it's just nonsense.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "There was an incident called 'Magic overuse'. Due to this incident, they passed the law to prohibit teleporting. In my opinion, 'Magic overuse' was manipulated by the government of Schwaltzvalt.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "We think the Schwaltzvalt government installed the equipment to limit teleporting to protect the secret research of the Rekenber enterprise.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Looking at the series of incidents that happened after the equipment was installed, our conviction has become stronger.";
+			next;
+			emotion ET_QUESTION, playerattached();
+			mes "[" + strcharinfo(0) + "]";
+			mes "Series of incidents?";
+			next;
+			emotion ET_QUESTION;
+			mes "[Arivero Yurhik]";
+			mes "Haven't you heard of the mysterious disappearance in the slum?";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Since it's an incident that has already happened and it is not important now, I will skip the explanation. If you are curious about it, you can search it later on.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "In any case, we will destroy all the 'Teleport prohibition equipment' installed in Schwaltzvalt.";
+			next;
+			emotion ET_HUM, playerattached();
+			mes "[" + strcharinfo(0) + "]";
+			mes "Do you know its location?";
+			next;
+			emotion ET_HUK;
+			mes "[Arivero Yurhik]";
+			mes "Wow~ That's so sharp..";
+			mes "What a sharp question.";
+			mes "You deserve to be a hot person.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "That's the problem we face now. This equipment is being hidden and protected by various technologies, including magic.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Hahahaha. But you don't have to worry.";
+			mes "At least, I know the location of one part of the equipment.";
+			mes "Do you know 'Einbech, the mining village'?";
+			next;
+			emotion ET_SMILE;
+			mes "[Arivero Yurhik]";
+			mes "Hahaha. Of course you do, this area, Clana Nemieri, is also in Einbech.";
+			next;
+			emotion ET_SURPRISE;
+			mes "[Arivero Yurhik]";
+			mes "Anyway, our agent in Einbech reported that a suspicious device showed up at the end of a freight train and disappeared quickly. The problem is..";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "There is no way to reveal the hidden and protected device for us to destroy..";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "In this case, we can revise the incident step by step from the beginning, right?";
+			mes "Maybe we can find something we missed.";
+			next;
+			emotion ET_OK, playerattached();
+			mes "[" + strcharinfo(0) + "]";
+			mes "Do you agree?";
+			next;
+			erasequest 5727;	// Suddenly in charge
+			setquest 5728;	// Headache
+			yurhik_quest = 1;
+			emotion ET_CONFUSE;
+			mes "[Arivero Yurhik]";
+			mes "It's been a long time since I used my head for the last time. Let's take a break to clear our minds.";
+			close;
+		}
+	}
+	if (yurhik_quest == 1) {
+		mes "[Arivero Yurhik]";
+		mes "Great! It's high time to use my head, after a long while.";
+		mes "I will tell you the situation step by step from the moment when the agent found an unusual device. Once you find anything abnormal, tell me.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "One day, our agent H in Einbech came out of the guardroom for the usual night patrol with a torch and club in each hand. H was wearing guard clothes.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "H finished the patrol following the usual order. Finally, H went to the end of the freight train where he found an abnormal device.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Normally, there is a strong wind every now and then. But, on that day, the wind was strong enough to turn off the light. Then..";
+		mes "H said that a suspicious device appeared for a moment and disappeared quickly.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "That's it..";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "The only information we have is the statement by the agent.. After listening to this story, did you find anything unusual?";
+		while( true ) {
+			next;
+			switch( select( "Guard clothes", "Club", "The way H patrolled", "Freight train", "A strong wind", "The turned-off torch" ) ) {
+			case 1:
+				mes "[Arivero Yurhik]";
+				mes "He was wearing neat guard clothes cleaned and ironed by his daughter. But it's not unusual to wear neat guard clothes";
+				continue;
+			case 2:
+				mes "[Arivero Yurhik]";
+				mes "H says he carries a club every time he patrols, to prepare for some unexpected situations. This is not unusual either.";
+				continue;
+			case 3:
+				mes "[Arivero Yurhik]";
+				mes "H patrols through the same course every day. He says it's written in the guard manual. I find nothing strange about it. Do you?";
+				continue;
+			case 4:
+				mes "[Arivero Yurhik]";
+				mes "It was a train that carried coal from the mine. Since it was night, the train stopped. Well, they say the train is not operated a lot these days due to a great deal of monsters in the mine.";
+				continue;
+			case 5:
+				mes "[Arivero Yurhik]";
+				mes "Since it is a mountainous area, there is occasionally a strong wind, even in normal times.. It happens every day, so I don't find it strange.";
+				continue;
+			case 6:
+				mes "[Arivero Yurhik]";
+				mes "A strong wind.. The turned-off torch..";
+				mes "Oh?! I think I have found it.";
+				break;
+			}
+			break;
+		}
+		next;
+		emotion ET_SMILE;
+		mes "[Arivero Yurhik]";
+		mes "Hahahahaha. You are a genius. Thanks to your support, the puzzle is solved. Now we have a reliable theory and let's test it.";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "What kind of theory is it?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Hmm? You haven't noticed yet? I thought you noticed it already and then gave me a hint.";
+		mes "It's not that important.";
+		next;
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "The Turned-off torch.. Fire!! Yes, it's the fire. Since Einbech is a mountainous area, there is occasionally a strong wind there, even in normal times. What was different from usual was that the torch was turned off.";
+		next;
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "Normally they say the fire is the strongest right before being turned off. So my theory focused on the fact that the device appeared for a while and disappeared quickly right before the torch was gone.";
+		next;
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "The very moment when the fire is strong and disappears!! That is the condition for the device to appear.";
+		next;
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "What do you think about my theory? Isn't it worth trying?";
+		next;
+		emotion ET_SCRATCH, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "You seem so excited and I really don't get what you are saying. But if you are so positive about it, let's try. Trying won't hurt. Would it?";
+		next;
+		emotion ET_SMILE;
+		mes "[Arivero Yurhik]";
+		mes "Since you are a hot person, your answer is also hot. Great! Let's go and try it. It's in this village anyway.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "You come to the very end of the freight train with the items with full of fire attributes.";
+		next;
+		erasequest 5728;	// Headache
+		setquest 5729;	// To Einbech
+		yurhik_quest = 2;
+		mes "[Arivero Yurhik]";
+		mes "See you at the end of the freight train.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		end;
+	}
+	if (yurhik_quest == 4) {
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "You were awesome. You deserve to be the hottest fellow in Clana Nemieri these days.";
+		next;
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "Hey look! My elder sister is so glad to hear that the equipment was destroyed.";
+		next;
+		mes "His elder sister was just fishing around books and documents that she was looking at. But Arivero didn't seem to care about it and continued to speak in excitement.";
+		next;
+		emotion ET_SURPRISE;
+		mes "[Arivero Yurhik]";
+		mes "Oh! I almost forgot.";
+		mes "Since we revealed the secret of teleport prohibition equipment, our agent in Lighthalzen was able to spot the location and attributes of the equipment.";
+		next;
+		emotion ET_SCRATCH;
+		mes "[Arivero Yurhik]";
+		mes "Hmm..";
+		mes "The location is inside the mansion. The attribute is water. This information is too simple. Can we find it with this?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Water on four sides.. Water attribute..";
+		mes "What kind of relationship is there between its installed location and the attribute of teleport prohibition device?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "It gives me a headache. Let me think about it later.";
+		mes "What do we need here? We need one Mystic Frozen to reveal the device.";
+		next;
+		emotion ET_QUESTION;
+		mes "[Arivero Yurhik]";
+		mes "Is Wind strong against Water? Hey pal. What is the attribute stone for wind attribute? Do you know?";
+		while(true) {
+			next;
+			switch( select( "Flame Heart", "Mystic Frozen", "Rough Wind", "Great Nature" ) ) {
+			case 1:
+				mes "[Arivero Yurhik]";
+				mes "Not Flame Heart. It's a fire attribute stone that revealed the device in Einbech.";
+				continue;
+			case 2:
+				mes "[Arivero Yurhik]";
+				mes "And Mystic Frozen is a water attribute stone required to reveal the device in Lighthalzen.";
+				continue;
+			case 3:
+				mes "[Arivero Yurhik]";
+				mes "Yes, it is! Rough Wind! This is the attribute stone of Wind attribute.";
+				break;
+			case 4:
+				mes "[Arivero Yurhik]";
+				mes "Great Nature? Isn't it for the Ground attribute? I don't think we need it right now.";
+				continue;
+			}
+			break;
+		}
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Great! Bring me one Mystic Frozen and three Rough Winds.";
+		mes "See you in Lighthalzen.";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "It's strange. Why are you in such a hurry?";
+		mes "Is there anything urgent?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Oh, did I look like that? We already have the information and I was trying to destroy the equipment quickly before they become aware of it.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Ah! I see.";
+		mes "It is a great idea.";
+		next;
+		erasequest 5731;	// Clana Namieri
+		setquest 5732;	// To Lighthalzen
+		yurhik_quest = 5;
+		mes "[Arivero Yurhik]";
+		mes "As I told you, I used to be the hottest person in Clana Nemieri before you showed up!";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Oh!";
+		mes "Hey, let's get down to the business. Bring the materials and see you in Lighthalzen.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		end;
+	}
+	if (yurhik_quest == 6) {
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "You were marvelous in Lighthalzen. No wonder you're such a hot person.";
+		mes "Look at her! My elder sister is even more pleased than before.";
+		next;
+		mes "Upon any consideration, I think Vero is misunderstanding something. The poker-faced lady he calls his sister is still fishing around books and documents. And why is he saying that she is pleased? Why does he say that?";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "I wanted to ask you about this. Is she really pleased?";
+		mes "Look at her. She's not even looking here.";
+		next;
+		emotion ET_QUESTION;
+		mes "[Arivero Yurhik]";
+		mes "What?! Can't you see her being pleased? Look at her now. She is pretending to ignore us, because she is shy. But the glow around her cheeks shows that she is pleased. Got it?";
+		next;
+		mes "Well, I don't get it. But I will just accept it, as her younger brother says so.";
+		next;
+		emotion ET_OTL;
+		mes "[Arivero Yurhik]";
+		mes "Hey! Friend!! There's something more important than it.";
+		mes "We have a problem. According to our schedule, we were planning to destroy the equipment in Yuno right after destroying the equipment in Lighthalzen..";
+		next;
+		emotion ET_QUESTION;
+		mes "[Arivero Yurhik]";
+		mes "Remember the device that prevented the prohibition equipment from disappearance?";
+		mes "You know that stuff? That is out of order now.";
+		mes "So we have to fix it before leaving.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You are dragging on.. You have something to ask me for, don't you?";
+		next;
+		emotion ET_SMILE;
+		mes "[Arivero Yurhik]";
+		mes "Hahaha. You figured it out? We are lucky to have all the materials to repair it, except for one core material. As usual, core materials are always a problem.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "So please bring one Star Crumb, the core material. Once you bring it to me, we can repair it and leave right away. I will be ready for it.";
+		next;
+		erasequest 5733;	// Clana Namieri
+		setquest 5734;	// Core materials are always a problem
+		yurhik_quest = 7;
+		mes "[Arivero Yurhik]";
+		mes "All we have to do is to insert the Star Crumb. So once you bring it, we can leave right away.";
+		mes "Regarding the location and required attribute stone, I will inform you then. I haven't finished collecting the information yet. I will count on you.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		end;
+	}
+	if (yurhik_quest == 7) {
+		mes "[Arivero Yurhik]";
+		mes "The basic repair is all over.";
+		mes "Now let me insert a Star Crumb, the core material..";
+		next;
+		if (countitem(1000) < 1) {
+			emotion ET_HUM;
+			mes "[Arivero Yurhik]";
+			mes "The basic repairing is all over. But you haven't brought the Star Crumb yet. Please bring it soon.";
+			mes "Let's complete this operation quickly.";
+			mes "I will count on you.";
+			close;
+		}
+		emotion ET_CONGRATULATION;
+		mes "[Arivero Yurhik]";
+		mes "The repairing is nearly over. Oh! You've brought it.";
+		mes "Now let me insert a Star Crumb on the device. It's the end of repairing!!";
+		next;
+		mes "It's quite suspicious that Vero is not looking straight into my eyes. Maybe all he needed was the Star Crumb from the beginning. Shall I ask him about this?";
+		next;
+		if (select( "Just laugh it off.", "Ask him." ) == 1)
+			mes "Phew.. Let's just laugh it off. Fair is fair after all.";
+		else {
+			emotion ET_STARE, playerattached();
+			mes "[" + strcharinfo(0) + "]";
+			mes "This is suspicious. Tell me honestly.";
+			mes "I won't be mad. All you needed was the Star Crumb from the beginning, right?";
+			next;
+			emotion ET_PROFUSELY_SWEAT;
+			mes "[Arivero Yurhik]";
+			mes "No! What kind of jerk do you take me for? Just look into my eyes!";
+			next;
+			mes "It's very suspicious of him to be mad like it. But I decided to laugh it off.";
+		}
+		next;
+		emotion ET_KIK;
+		mes "[Arivero Yurhik]";
+		mes "Although there has been a minor incident, now we have two more prohibition equipment devices to destroy.";
+		mes "But since we found the location and attribute of the prohibition equipment installed in Yuno, we can leave right now.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "The coordinates of Yuno's prohibition equipments are 206 224";
+		mes "It has a Wind attribute. Our agent will give us a Rough Wind, so we will be able to destroy it once we get there.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Please get four Great Natures and come to Yuno. They have opposite attributes to the Wind attribute.";
+		next;
+		delitem 1000,1;// Star Crumb
+		erasequest 5734;	// Core materials are always a problem
+		setquest 5735;	// To Yuno
+		yurhik_quest = 8;
+		mes "[Arivero Yurhik]";
+		mes "See you in Yuno.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ02", getcharid(0);
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+rebel_in,78,63,6	script	Rebellion leader#TFQ15	4_M_RUPERT,{
+	if (yurhik_quest == 10) {
+		mes "[" + strcharinfo(0) + "]";
+		mes "Ah! Sir, that's not what I am talking about.. You briefly reported to the Rebellion leader regarding what you did with Vero.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Have you been doing such a great mission?";
+		mes "But it's strange. I've never been reported that there's been such a mission lately.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "No mission? Then what happened to the mission I did?";
+		next;
+		mes "[Rebellion leader]";
+		mes "I'm curious about it, too. I know you are exhausted after coming back from your mission. But please tell me about your mission in detail.";
+		next;
+		mes "You told the Rebellion leader about what happened during your mission to eliminate Teleport prohibition equipment of Schwaltzvalt with Vero.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Arivero Yurhik.. As you said, that Gunslinger's surname seems to be same with that of Noa here.";
+		next;
+		mes "[Rebellion leader]";
+		mes "But as far as I can remember, there is no Gunslinger named Arivero Yurhik in Clana Nemieri..";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Oops?! I don't get it.. Although he disappeared in Einbroch all of a sudden, he was certainly doing the mission with me..";
+		next;
+		mes "[Rebellion leader]";
+		mes "Wait! Calm down and listen to me.";
+		mes "The young man named Arivero told you he's a younger brother of Noa. Right?";
+		next;
+		mes "I nodded.";
+		next;
+		mes "[Rebellion leader]";
+		mes "I have a strong feeling that Arivero guy you met is Noa's brother, even if Noa's younger brother died in an accident when he was young.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Really?! Did you say he died..?";
+		next;
+		mes "[Rebellion leader]";
+		mes "In this world, there are so many things that we cannot identify.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Well! That's all about it.";
+		next;
+		mes "[Rebellion leader]";
+		mes "I can't tell you any further, because it is Noa's personal information. Let's not talk about this anymore. By the way..";
+		next;
+		mes "[Rebellion leader]";
+		mes "You did a great job. Maybe, two of you?";
+		mes "You two destroyed all Teleport prohibition equipment of Schwaltzvalt.";
+		mes "Although the mission started unusually, it is surely a remarkable achievement.";
+		next;
+		mes "[Rebellion leader]";
+		mes "Since it was not an official mission, I cannot give you a huge reward. But it's still a remarkable achievement.";
+		next;
+		completequest 5737;	// Clana Namieri
+		getitem 25155,10;// Swz_Honor_Token
+		getexp 1000000,4000000;
+		yurhik_quest = 11;
+		mes "[Rebellion leader]";
+		mes "Let's say this is a small compensation for your great work.";
+		next;
+		cloakonnpc "Rebellion leader#TFQ15", getcharid(0);
+		mes "The Rebellion leader disappeared like that.";
+		mes "What the hell happened to me?";
+		mes "I will remember this as a mission with various questions remaining.";
+		close;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+
+einbech,212,212,6	script	Arivero Yurhik#TFQ04	4_M_GUNSLINGER,{
+	if (yurhik_quest == 2) {
+		if (countitem(994) < 1) {
+			mes "[Arivero Yurhik]";
+			mes "Welcome, pal. Have you brought the item full of fire attributes that I asked you for?";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Not yet? Please bring an item full of Fire attributes.";
+			close;
+		}
+		mes "[Arivero Yurhik]";
+		mes "Welcome, pal. Have you brought the item full of fire attributes that I asked you for?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Flame Heart?";
+		mes "Oh, Flame Heart? I heard it's an item with a strong fire attribute.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Shall I try? Let's see. This seems to be the place the agent told us about. Now we have to break the Flame Heart you brought into pieces..";
+		next;
+		cloakoffnpc "Teleport Prohibition equipment#1", getcharid(0);
+		specialeffect EF_FLAMELAUNCHER, AREA, "Teleport Prohibition equipment#1";
+		mes "[Arivero Yurhik]";
+		mes "Yeah~ Great. It's a success.";
+		mes "The equipment showed up. Yikes! Turn on the device you brought before the equipment disappears..";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "It was a vague theory, but it succeeded.";
+		mes "Shall we destroy it, pal?";
+		next;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		mes "[Arivero Yurhik]";
+		mes "What? Why is it unscathed?";
+		mes "I thought the attack was strong enough..";
+		next;
+		emotion ET_THINK;
+		mes "[Arivero Yurhik]";
+		mes ". . . . . .";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Oh! Perhaps..? Hey, pal. This equipment has a Fire attribute. What is the attribute opposite to Fire?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Water.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "That's it!! Water!! A water attribute.";
+		mes "If we attack it using a Water attribute, the equipment will be destroyed. Hey, pal. Bring an item with a strong Water attribute.";
+		next;
+		delitem 994,1;// Flame Heart
+		erasequest 5729;	// To Einbech
+		setquest 5730;	// Things that can destroy the device
+		yurhik_quest = 3;
+		mes "[Arivero Yurhik]";
+		mes "Obviously we will need more than one. Please bring me several of those. I will be guarding here to prevent the equipment from disappearing.";
+		close;
+	}
+	if (yurhik_quest == 3) {
+		emotion ET_QUESTION;
+		mes "[Arivero Yurhik]";
+		mes "Welcome, pal. Have you brought the item full of Water attributes that I asked you for?";
+		next;
+		if (countitem(995) < 1) {
+			mes "[Arivero Yurhik]";
+			mes "Not yet?";
+			mes "We need an item that has a strong Water attribute.";
+			close;
+		}
+		if (countitem(995) < 3) {
+			mes "[Arivero Yurhik]";
+			mes "Mystic Frozen? Certainly it's an item that has a strong Water attribute. Right. Mystic Frozen will be the equipment strong enough for our purpose. But one or two will not be enough.";
+			mes "I think we need at least three of them.";
+			close;
+		}
+		mes "[Arivero Yurhik]";
+		mes "Mystic Frozen? Certainly it's an item that has a strong Water attribute. Right. Mystic Frozen will be the equipment strong enough for our purpose. Let's try it.";
+		next;
+		specialeffect EF_FROSTWEAPON;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_FROSTWEAPON;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_FROSTWEAPON;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#1";
+		npctalk "Bang!", "Teleport Prohibition equipment#1", bc_self;
+		sleep2 2000;
+		specialeffect EF_LORD, AREA, "Teleport Prohibition equipment#1";
+		cloakonnpc "Teleport Prohibition equipment#1", getcharid(0);
+		sleep2 1000;
+		mes "[Arivero Yurhik]";
+		mes "Great! We destroyed the equipment.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Good job, pal.";
+		mes "Although we destroyed the equipment, there is some magic power remaining. Therefore, teleporting will not be possible in this area for a while.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "But, eventually, teleporting will become possible.";
+		next;
+		delitem 995,3;// Mystic Frozen
+		erasequest 5730;	// // Things that can destroy the device
+		setquest 5731;	// // Clana Namieri
+		yurhik_quest = 4;
+		mes "[Arivero Yurhik]";
+		mes "We destroyed the prohibition equipment. Now let's go back to Clana Nemieri.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ04", getcharid(0);
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+einbech,215,210,0	script	Einbech Prohibition equipment	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (yurhik_quest < 4)
+		cloakoffnpc "Arivero Yurhik#TFQ04", getcharid(0);
+	if (yurhik_quest == 3)
+		cloakoffnpc "Teleport Prohibition equipment#1", getcharid(0);
+	end;
+}
+
+einbech,215,210,4	duplicate(dummy_cloaked_npc)	Teleport Prohibition equipment#1	2_MONEMUS
+
+
+lighthalzen,135,233,6	script	Arivero Yurhik#TFQ07	4_M_GUNSLINGER,{
+	if (yurhik_quest == 5) {
+		if (countitem(995) < 1 || countitem(996) < 3) {
+			mes "[Arivero Yurhik]";
+			mes "Sorry! Sorry! As a matter of fact, I arrived here early. But I had to talk to the agent to get the right location. I should have arrived and called you in advance. Sorry to make you come here alone.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "You're so great!";
+			mes "Coming all the way here only with that information! I could not find this, so I had to meet the agent.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "The important thing is that we both arrived here safely. Remember I asked you to bring one Mystic Frozen and three Rough Winds. Right?";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Where are the items I asked you for?";
+			mes "We must destroy this before they realize that the equipment items are being destroyed one by one. Bring them quickly.";
+			next;
+			mes "[Arivero Yurhik]";
+			mes "Oops! There's someone passing by.";
+			mes "I might look suspicious, so I will hide myself.";
+			close2;
+			cloakonnpc "Arivero Yurhik#TFQ07", getcharid(0);
+			end;
+		}
+		mes "[Arivero Yurhik]";
+		mes "Sorry! Sorry! As a matter of fact, I arrived here early. But I had to talk to the agent to get the right location. I should have arrived and called you in advance. Sorry to make you come here alone.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "You're so great!";
+		mes "Coming all the way here only with that information! I could not find this, so I had to meet the agent.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "The important thing is that we both arrived here safely. Remember I asked you to bring one Mystic Frozen and three Rough Winds. Right?";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Mystic Frozen. The location is clear, because I checked it with our agent. If we break the Mystic Frozen you brought into pieces..";
+		next;
+		specialeffect EF_FROSTWEAPON, AREA, "Teleport Prohibition equipment#2";
+		mes "[Arivero Yurhik]";
+		mes "Good! The equipment has showed up..";
+		mes "And we installed the device we brought..";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Great. Now we can destroy it. Prepare the Rough Wind.";
+		next;
+		specialeffect EF_LIGHTNINGLOADER;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#2";
+		npctalk "Bang!", "Teleport Prohibition equipment#2", bc_self;
+		sleep2 1000;
+		specialeffect EF_LIGHTNINGLOADER;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#2";
+		npctalk "Bang!", "Teleport Prohibition equipment#2", bc_self;
+		sleep2 1000;
+		specialeffect EF_LIGHTNINGLOADER;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#2";
+		npctalk "Bang!", "Teleport Prohibition equipment#2", bc_self;
+		sleep2 1000;
+		specialeffect EF_LORD, AREA, "Teleport Prohibition equipment#2";
+		cloakonnpc "Teleport Prohibition equipment#2", getcharid(0);
+		sleep2 1000;
+		mes "[Arivero Yurhik]";
+		mes "Nevertheless, the first one is always tough and it is easier from the second one. Now let us disappear with teleporting..";
+		next;
+		emotion ET_THINK;
+		mes "[Arivero Yurhik]";
+		mes ". . . . . .";
+		next;
+		emotion ET_SHY;
+		mes "[Arivero Yurhik]";
+		mes "Yikes! I almost forgot.";
+		mes "We cannot teleport immediately after destroying it. I told you about it and I forgot it myself! What a shame.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Ha! In the past, due to the magic power of this prohibition equipment.. Oh! It's nothing.";
+		mes "We cannot help walking.";
+		next;
+		delitem 995,1;// Mystic Frozen
+		delitem 996,3;// Rough Wind
+		erasequest 5732;	// To Lighthalzen
+		setquest 5733;	// Clana Namieri
+		yurhik_quest = 6;
+		mes "[Arivero Yurhik]";
+		mes "To avoid getting caught, let's scatter.";
+		mes "See you in Clana Nemieri.";
+		close2;
+		cloakonnpc "Arivero Yurhik#TFQ07", getcharid(0);
+		end;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+lighthalzen,137,231,0	script	Rihrtarzen Prohibition equipment 	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (yurhik_quest == 5) {
+		cloakoffnpc "Teleport Prohibition equipment#2", getcharid(0);
+		mes "Is this it? The mansion surrounded by water? According to the condition, it seems like it.";
+		next;
+		cloakoffnpc "Arivero Yurhik#TFQ07", getcharid(0);
+		npctalk "Oops?! My hot friend has already arrived.", "Arivero Yurhik#TFQ07", bc_self;
+		mes "[Arivero Yurhik]";
+		mes "Oops?! My hot friend has already arrived.";
+		close;
+	}
+	end;
+}
+
+lighthalzen,137,231,0	duplicate(dummy_cloaked_npc)	Teleport Prohibition equipment#2	2_MONEMUS
+
+
+yuno,204,226,6	script	Arivero Yurhik#TFQ10	4_M_GUNSLINGER,{
+	if (yurhik_quest == 8) {
+		mes "[Arivero Yurhik]";
+		mes "Welcome, pal! I have just arrived now. I summoned the equipment and mounted it to prevent from disappearing.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Have you brought Great Nature?";
+		next;
+		if (countitem(997) < 3) {
+			mes "[Arivero Yurhik]";
+			mes "Not yet. I will be guarding this here. Please bring it quickly.";
+			mes "According to our agent, Rekenber and the government are serious now.";
+			mes "I will count on you.";
+			close;
+		}
+		mes "[Arivero Yurhik]";
+		mes "You are a reliable friend of mine.";
+		mes "Since we don't have enough time, let's destroy the equipment quickly and go to Einbroch. According to our agent, Rekenber and the government are serious now.";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "I will destroy the equipment right now.";
+		mes "Prepare Great Nature.";
+		next;
+		specialeffect EF_SEISMICWEAPON;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#3";
+		npctalk "Bang!", "Teleport Prohibition equipment#3", bc_self;
+		sleep2 1000;
+		specialeffect EF_SEISMICWEAPON;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#3";
+		npctalk "Bang!", "Teleport Prohibition equipment#3", bc_self;
+		sleep2 1000;
+		specialeffect EF_SEISMICWEAPON;
+		sleep2 500;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#3";
+		npctalk "Bang!", "Teleport Prohibition equipment#3", bc_self;
+		sleep2 1000;
+		specialeffect EF_LORD, AREA, "Teleport Prohibition equipment#3";
+		cloakonnpc "Teleport Prohibition equipment#3", getcharid(0);
+		mes "[Arivero Yurhik]";
+		mes "We destroyed the prohibition equipment and there appear to be.. no eyewitnesses. Just in case, let's scatter and move to Einbroch.";
+		next;
+		delitem 997,3;// Great Nature
+		erasequest 5735;	// To Yuno
+		setquest 5736;	// To Einbroch
+		yurhik_quest = 9;
+		emotion ET_HUK;
+		mes "[Arivero Yurhik]";
+		mes "Oh! I haven't told you the location.";
+		mes "It is the place where Einbroch Wind turbine is located. You bring three Flame Hearts and one remaining Great Nature. We will use them to destroy the equipment.";
+		next;
+		cloakonnpc "Arivero Yurhik#TFQ10", getcharid(0);
+		mes "Vero disappeared in a hurry, as if he was being chased by something. Take three Flame Hearts and one Great Nature and go to Einbroch.";
+		close;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+yuno,206,224,0	script	Yuno Prohibition equipment	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (yurhik_quest == 8) {
+		cloakoffnpc "Arivero Yurhik#TFQ10", getcharid(0);
+		cloakoffnpc "Teleport Prohibition equipment#3", getcharid(0);
+	}
+	end;
+}
+
+yuno,206,224,0	duplicate(dummy_cloaked_npc)	Teleport Prohibition equipment#3	2_MONEMUS
+
+
+einbroch,262,42,4	script	Arivero Yurhik#TFQ13	4_M_GUNSLINGER,{
+	if (yurhik_quest == 9) {
+		mes "[Arivero Yurhik]";
+		mes "have you brought three Flame Hearts and one Great Nature?";
+		next;
+		mes "Vero is pressing me, as if he does not have much time left. Something is fish. But I'm not asking him, as I know he won't tell me.";
+		next;
+		if (countitem(994) < 3 || countitem(997) < 1) {
+			mes "[Arivero Yurhik]";
+			mes "Please. And the last one is...";
+			mes "No! Nothing. Please bring it here as soon as possible.";
+			close;
+		}
+		mes "[Arivero Yurhik]";
+		mes "Great! Destroy the Great Nature now, so that the equipment will show up!!";
+		next;
+		mes "His voice betrays his panic. And he also asked me to do the job that he had been doing by himself. Is there something wrong? I was curious. I broke the Great Nature into pieces as he asked.";
+		next;
+		specialeffect EF_SEISMICWEAPON, AREA, "Teleport Prohibition equipment#4";
+		cloakoffnpc "Teleport Prohibition equipment#4", getcharid(0);
+		emotion ET_BLABLA;
+		mes "[Arivero Yurhik]";
+		mes "Now! Time to use the Flame Heart!";
+		next;
+		mes "As Vero asked me, I smashed the Teleport Prohibition equipment with the Flame Heart.";
+		next;
+		specialeffect2 EF_FLAMELAUNCHER;
+		sleep2 200;
+		npctalk "Bang!", "Teleport Prohibition equipment#4", bc_self;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#4";
+		specialeffect EF_MAGICCRASHER2;
+		sleep2 2000;
+		specialeffect2 EF_FLAMELAUNCHER;
+		sleep2 200;
+		npctalk "Bang!", "Teleport Prohibition equipment#4", bc_self;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#4";
+		specialeffect EF_MAGICCRASHER2;
+		sleep2 2000;
+		specialeffect2 EF_FLAMELAUNCHER;
+		sleep2 200;
+		npctalk "Bang!", "Teleport Prohibition equipment#4", bc_self;
+		specialeffect EF_SUI_EXPLOSION, AREA, "Teleport Prohibition equipment#4";
+		sleep2 200;
+		specialeffect EF_SOULBURN;
+		sleep2 200;
+		npctalk "Arrggh.. I can only go this far......", "", bc_self;
+		sleep2 1000;
+		specialeffect EF_LORD, AREA, "Teleport Prohibition equipment#4";
+		cloakonnpc "Teleport Prohibition equipment#4", getcharid(0);
+		sleep2 1000;
+		mes "The equipment was destroyed quickly. Then I realized that Vero looked a bit abnormal. Is he sick or something?";
+		next;
+		emotion ET_SORRY;
+		mes "[Arivero Yurhik]";
+		mes "Hey, pal! I know I have been naughty. But, thanks to your support, I managed to eliminate every Teleport Prohibition equipment in Schwaltzvalt.";
+		mes "Thank you for helping me. This was my wish.";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "What.. Why are you saying that?";
+		mes "As if you were going far away?";
+		next;
+		emotion ET_SMILE;
+		mes "[Arivero Yurhik]";
+		mes "What's that look? Hahaha. I would like to take a photo of you. Well..";
+		next;
+		specialeffect EF_MAGICCRASHER2;
+		mes "[Arivero Yurhik]";
+		mes "I must be showing my gratitude now. But I have to ask you for one more favor. Please talk to my elder sister once in a while. She is lonely quite often..";
+		next;
+		mes "[Arivero Yurhik]";
+		mes "Oh.. It's time.. Bye.. Thanks..";
+		next;
+		specialeffect EF_MAPPILLAR;
+		sleep2 4000;
+		npctalk "Oh..", "Arivero Yurhik#TFQ13", bc_self;
+		cloakonnpc "Arivero Yurhik#TFQ13", getcharid(0);
+		delitem 997,1;// Great Nature
+		delitem 994,3;// Flame Heart
+		erasequest 5736;	// To Einbroch
+		setquest 5737;	// Clana Namieri
+		yurhik_quest = 10;
+		mes "Vero disappeared all of a sudden after saying goodbye. What's going on here? Has he been summoned for an urgent mission?";
+		mes "Vero's gone. Shall I go back to Clana Nemieri?";
+		close;
+	}
+	end;
+OnInit:
+	cloakonnpc strnpcinfo(0);
+	end;
+}
+
+einbroch,260,40,0	script	Einbroch Prohibition equipment	HIDDEN_WARP_NPC,5,5,{
+	end;
+OnTouch:
+	if (yurhik_quest == 9) {
+		cloakoffnpc "Arivero Yurhik#TFQ13", getcharid(0);
+		npctalk "Friend! You've arrived!", "Arivero Yurhik#TFQ13", bc_self;
+	}
+	end;
+}
+
+einbroch,260,40,0	duplicate(dummy_cloaked_npc)	Teleport Prohibition equipment#4	2_MONEMUS
+
+
+rebel_in,91,67,3	script	Ericsson Adler#16.2rm	4_MAL_CAPTAIN,{
+	if (terra_gloria_main < 17) {
+		mes "[Detached Force commander Ericsson]";
+		mes "You...?";
+		close;
+	}
+	if (lebedev_quest_16_2 == 6) {
+		mes "[Detached Force commander Ericsson]";
+		mes "You... You're the adventurer who showed up with the Secret Wings.";
+		mes "What can I do for you?";
+		next;
+		mes "You told him what you heard from Elena Bolkova and asked him for a consultation.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "If it was about the Secret Wings, I would not have mentioned anything. But for that issue, I will help you.";
+		mes "As commander Bolkova said, I brought those kids.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "...I heard what happened to them lately. But I didn't know they were suffering like that.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "I want to talk to Lebedev twins myself. But it is an arrogation and it will be bad for Commander Bolkova.";
+		mes "Commander Bolkova knows that too. That's why she sent you.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "There are some people who do not like commander Bolkova.";
+		mes "Her unit is USU. The commander didn't manage to take care of her squadders so the squadders talked to their former commander? It's a bad scenario.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "Let me give you this. Eat them together with the twins. And tell them to trust me and tell their problems to you.";
+		mes "Forget advices or recommendations and just listen to them for a while. They are good kids and they will definitely understand you. Got it?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(......Cookies...?)";
+		erasequest 16016;// Borrowing wisdom of the experts
+		setquest 16033;// Bring dessert and listen the story
+		getitem 25161,1;// Handmade_cookie2
+		lebedev_quest_16_2 = 7;
+		questinfo_refresh();
+		close;
+	}
+	if (lebedev_quest_16_2 == 7 && countitem(25161) < 1) {
+		mes "[Detached Force commander Ericsson]";
+		mes "You're back! Don't be so nervous. They are good kids. Go speak to them.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "Don't preach at them too much. If they have problems, listen to them. Make sure you give them cookies.";
+		getitem 25161,1;// Handmade_cookie2
+		close;
+	}
+	// twins daily quest
+	if (isbegin_quest(16030) == 1) {
+		mes "[Detached Force commander Ericsson]";
+		mes "Cookies? Lebedev twins made them?";
+		mes "Then I have no choice but to eat them. Give them to me.";
+		next;
+		if (countitem(25161) < 1) {
+			mes "[Detached Force commander Ericsson]";
+			mes "You said there were cookies. Where are they?";
+			close;
+		}
+		mes "[Detached Force commander Ericsson]";
+		mes "Smells good. Of course it's not as good as Lucy's...";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "Hmm, good! Tell them thanks.";
+		completequest 16030;// Service: Cookies delivery
+		delitem 25161,1;// Handmade_cookie2
+		close;
+	}
+
+	// Veteran's small memorial service quest
+	switch( checkquest(16049,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Detached Force commander Ericsson]";
+		mes "I'm happy, thank you. One bouquet for today is enough.";
+		next;
+		mes "[Detached Force commander Ericsson]";
+		mes "You must have other things to do, come back tomorrow.";
+		close;
+	case 2:
+		erasequest 16049;// Quiet dawn
+		break;
+	}
+	switch( isbegin_quest(16050) ) {
+	case 0:// first time
+		switch( isbegin_quest(16045) ) {
+		case 0:
+			mes "[Detached Force commander Ericsson]";
+			mes "...?";
+			mes "You...";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "You are the adventurer who created a huge noise in our hideout.";
+			mes "By the way, ... Hmm, no. Never mind.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(... Seems like he wants to say something.)";
+			next;
+			if (select( "Would you like to say anything?", "See you." ) == 2) {
+				mes "[Detached Force commander Ericsson]";
+				mes "Oops, sorry. See you later.";
+				close;
+			}
+			mes "[Detached Force commander Ericsson]";
+			mes "Oh, actually... I wanted to ask you for a little favor.";
+			mes "You'll have to visit Einbroch for a while. Would you accept it?";
+			next;
+			if (select( "I will help you.", "Sorry, I'm busy." ) == 2) {
+				mes "[Detached Force commander Ericsson]";
+				mes "Sorry for this inconvenience.";
+				close;
+			}
+			mes "[Detached Force commander Ericsson]";
+			mes "Thanks. It's not a tough job.";
+			mes "If you go south from the Einbroch observatory, you will find a ^0000CDflower girl^000000.";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "Could you buy a Bunch Of Flowers from that kid and lay it beneath the tree beside her?";
+			mes "There is a small sign below the tree, so you will find it easily.";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "I will count on you. Come back and report, I mean... tell me.";
+			setquest 16045;// Veteran's small memorial service
+			close;
+		case 1:
+			mes "[Detached Force commander Ericsson]";
+			mes "Buy a Bunch Of Flowers from ^0000CDflower girl^000000 and lay it beneath the tree.";
+			mes "If you go south from the Einbroch observatory, you will find it.";
+			close;
+		case 2:
+			break;
+		}
+		switch( isbegin_quest(16048) ) {
+		case 0:
+			mes "[Detached Force commander Ericsson]";
+			mes "Buy a Bunch Of Flowers from ^0000CDflower girl^000000 and lay it beneath the tree.";
+			mes "If you go south from the Einbroch observatory, you will find it.";
+			close;
+		case 1:
+			mes "[Detached Force commander Ericsson]";
+			mes "Oh, it's you.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I've spoken with Lucy.";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "Good. How was her health?";
+			next;
+			if (select( "She was fine.", "She was talking about you." ) == 1) {
+				mes "[Detached Force commander Ericsson]";
+				mes "Really? That's good. Didn't she say anything else to you?";
+				mes "Great. Please don't tell about it anyone else except Lebedev twins.";
+				next;
+				mes "[Detached Force commander Ericsson]";
+				mes "They used to help me for this. But I cannot request them now.";
+			}
+			else {
+				mes "[Detached Force commander Ericsson]";
+				mes "I see. What did she say?";
+				next;
+				mes "You told him what you heard from Lucy.";
+				next;
+				mes "[Detached Force commander Ericsson]";
+				mes "...Perhaps there must have been a huge misunderstanding.";
+				mes "Please don't tell about it anyone else in the Rebellion, except Lebedev twins.";
+				next;
+				mes "[Detached Force commander Ericsson]";
+				mes "If only she was alive...";
+				next;
+				mes "[Detached Force commander Ericsson]";
+				mes "No, I shouldn't think like that.";
+			}
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "Thank you for going.";
+			mes "If you do not mind, will you stop by sometimes and put down some flowers?";
+			completequest 16048;// Traces of old story
+			setquest 16049;// Quiet dawn
+			getitem 25155,10;// Swz_Honor_Token
+			getexp 200000,200000;
+			close;
+		case 2:	// daily
+			break;
+		}
+		// fall through
+	case 1:// daily
+		mes "[Detached Force commander Ericsson]";
+		mes "Will you stop by Einbroch again and offer flowers?";
+		next;
+		if (select( "I will help you.", "Sorry, I'm busy." ) == 2) {
+			mes "[Detached Force commander Ericsson]";
+			mes "Is that so.";
+			mes "I'm sorry. It's not fun anyway.";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "I hope you can stop by later when you have time.";
+			close;
+		}
+		mes "[Detached Force commander Ericsson]";
+		mes "There is a tree on the south side from the Einbroch observatory. You will find a ^0000CDflower girl^000000 nearby.";
+		mes "Thank you very much.";
+		if (isbegin_quest(16050) == 0)
+			setquest 16050;// Tribute hour
+		close;
+	case 2:
+		if (isbegin_quest(16053) == 1) {
+			mes "I've been to Einbroch.";
+			next;
+			mes "[Detached Force commander Ericsson]";
+			mes "Thank you for going. I'd have to stop by myself, but I seldom have time.";
+			mes "Because these are busy times.";
+			erasequest 16053;// Ongoing old story
+			erasequest 16050;// Tribute hour
+			setquest 16049;// Quiet dawn
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 170000,200000;
+			close;
+		}
+		mes "[Detached Force commander Ericsson]";
+		mes "Buy a Bunch Of Flowers from ^0000CDflower girl^000000 and lay it beneath the tree.";
+		mes "If you go south from the Einbroch observatory, you will find it.";
+		close;
+	}
+	end;
+
+OnInit:
+	// Ericsson daily
+	.@terra_main$ = "terra_gloria_main > 16";
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && checkquest(16049,PLAYTIME) == -1 && isbegin_quest(16045) == 0") );
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && checkquest(16049,PLAYTIME) == 2") );
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && isbegin_quest(16048) == 1") );
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && isbegin_quest(16053) == 1") );
+
+	// twins main quest
+	questinfo( QTYPE_QUEST, QMARK_NONE, "lebedev_quest_16_2 == 6" );
+	end;
+
+	// twins daily quest : "Service: Cookies delivery"
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16030) == 1 && countitem(25161) > 0" );
+	end;
+}
+
+einbroch,167,160,3	script	Flower Girl#16.2rm	1_M_SIZ,{
+	if (isbegin_quest(16045) == 1) {
+		mes "[Flower Girl]";
+		mes "Hello. How about a flower?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Please bring me a bouquet.";
+		next;
+		mes "[Flower Girl]";
+		mes "Yes, I understand!";
+		mes "Oh, what should I do...";
+		next;
+		mes "[Flower Girl]";
+		mes "I have the flowers, but I ran out of paper to make a bouquet.";
+		mes "The shop I usually buy the paper from is closed...";
+		mes "I cannot go very far alone.";
+		next;
+		mes "[Flower Girl]";
+		mes "Please.";
+		mes "If you bring ^0000CD3 Slick Paper^000000, I will make a bouquet for you without having to pay for the flowers.";
+		completequest 16045;// Veteran's small memorial service
+		setquest 16046;// DIY obtaining bouquet materials
+		close;
+	}
+	if (isbegin_quest(16046) == 1 || isbegin_quest(16051) == 1) {
+		mes "[Flower Girl]";
+		mes "Did you bring ^0000CD3 Slick Paper^000000?";
+		mes "If you bring, I will make a bouquet for you without having to pay for the flowers.";
+		if (countitem(7111) < 3)
+			close;
+		next;
+		if (select( "Hand over the slick paper.", "Do not give the paper." ) == 2) {
+			mes "[Flower Girl]";
+			mes "Oh, I'm sorry... Didn't you need a bouquet?";
+			close;
+		}
+		mes "[Flower Girl]";
+		mes "Here, this bouquet is beautiful.";
+		delitem 7111,3;// Smooth_Paper
+		getitem 25152,1;// Cherish_Bouquet
+		if (isbegin_quest(16046) == 1) {
+			erasequest 16046;// DIY obtaining bouquet materials
+			setquest 16047;// Quiet memorial ceremony
+		}
+		else if (isbegin_quest(16051) == 1) {
+			erasequest 16051;// DIY obtaining bouquet materials
+			setquest 16052;// Quiet memorial ceremony
+		}
+		close;
+	}
+	if (isbegin_quest(16047) == 1 || isbegin_quest(16052) == 1) {
+		if (countitem(25152) < 1) {
+			mes "[Flower Girl]";
+			mes "Hello, welcome back. Which flower do you need?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Could you make me a Bunch Of Flowers with carnations?";
+			next;
+			mes "[Flower Girl]";
+			mes "Oops... As you know, I still don't have enough paper to wrap the flower.";
+			mes "If you bring me ^0000CDthree smooth paper^000000, I will make it for you.";
+			next;
+			if (select( "Hand over the slick paper.", "Do not give the paper." ) == 2) {
+				mes "[Flower Girl]";
+				mes "Oops! Sorry. A Bunch Of Flowers... Don't you need it?";
+				close;
+			}
+			if (countitem(7111) < 3) {
+				mes "[Flower Girl]";
+				mes "Sorry. If I don't have enough smooth paper, I cannot make a Bunch Of Flowers...";
+				close;
+			}
+			mes "[Flower Girl]";
+			mes "Here, this bouquet is beautiful.";
+			delitem 7111,3;// Smooth_Paper
+			getitem 25152,1;// Cherish_Bouquet
+			close;
+		}
+		mes "[Flower Girl]";
+		mes "Flower quickly wither, but they are beautiful when they bloom.";
+		close;
+	}
+	if (isbegin_quest(16050) == 1) {
+		mes "[Flower Girl]";
+		mes "Hello, you're here again. What flowers do you need?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Can you make a bouquet of carnations?";
+		next;
+		mes "[Flower Girl]";
+		mes "Oh my... I'm sorry, I still don't have enough paper to make a bouquet...";
+		mes "If you bring 3 pieces of ^0000CD smooth paper ^000000, I will make it.";
+		completequest 16050;// Tribute hour
+		setquest 16051;// DIY obtaining bouquet materials
+		close;
+	}
+	mes "[Flower Girl]";
+	mes "Flowers, buy some flowers.";
+	mes "Phew... The air is so hazy that the flowers wither quickly...";
+	close;
+
+OnInit:
+	questinfo( QTYPE_QUEST,QMARK_YELLOW, " isbegin_quest(16045) == 1 " );
+	questinfo( QTYPE_QUEST,QMARK_YELLOW, "(isbegin_quest(16046) == 1 || isbegin_quest(16051) == 1) && countitem(7111) > 2" );
+	questinfo( QTYPE_QUEST,QMARK_YELLOW, " isbegin_quest(16050) == 1 " );
+	end;
+}
+
+einbroch,162,153,3	script	Huge Tree#16.2rm	4_BULLETIN_BOARD2,{
+	if (isbegin_quest(16047) == 1) {
+		if (countitem(25152) < 1) {
+			mes "You searched through your back.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Where did I put the flower...?";
+			mes "It's not there. Maybe I should buy another one...";
+			close;
+		}
+		mes "[Strange Voice]";
+		mes "There is a small sign in front of the tree.";
+		mes " ";
+		mes " - Here lies a kind " + (Sex ? "boy" : "girl") + " -";
+		mes " ";
+		mes "Should I put the bouquet down?";
+		next;
+		if (select( "Put the bouquet down.", "Don't put the bouquet down." ) == 2) {
+			mes "Before laying the flower, you checked whether that tree was the right one.";
+			close;
+		}
+		mes "I put down the Cherished Bouquet and took a moment of silence.";
+		next;
+		mes "[Strange Voice]";
+		mes "Who's there?";
+		next;
+		mes "Beside the tree, a small grandmother held out her hand.";
+		next;
+		mes "[Grandma]";
+		mes "Do you... know who it is? did you know Irene??";
+		mes "Looking at the clothes, I think you're a traveler. My memory is fading.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I came here out of a favor.";
+		next;
+		mes "[Grandma]";
+		mes "A favor? Adler's and that?";
+		mes "I'm Irene's grandmother who fell asleep here. My name is Lucy.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "At this time of year, Adler is the children who come to me always at this time of year, but this year I will not be able to candles.";
+		next;
+		if (select( "Goodbye.", "Report on Commander Ericsson and Mrs. Irene." ) == 1) {
+			mes "[Grandma Lucy]";
+			mes "Bye. Thank you for coming all the way to this countryside.";
+			next;
+			mes "[Grandma Lucy]";
+			mes "Irene will thank you. Bye...";
+			erasequest 16047;// Quiet memorial ceremony
+			setquest 16048;// Traces of old story
+			delitem 25152,1;// Cherish_Bouquet
+			close;
+		}
+		mes "[" + strcharinfo(0) + "]";
+		mes "How did commander Adler know Irene?";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Commander?";
+		mes "...So it was true. Mr. Adler was a soldier with high position after all.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Although it's a long story to tell a stranger, I will tell you. And you've been sent by Mr. Adler..";
+		next;
+		mes "[Grandma Lucy]";
+		mes "I've been living in Einbech with Irene for a long time.";
+		mes "Irene's mom and dad left the house seeking a better job. It's been more than 10 years since we lost contact.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "As you know, there are many accidents in Einbech.";
+		mes "There were only old people left in the village. So it must have been boring for Irene. But she didn't want to move to another village because she believed that her parents would come back one day.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "And... About this time that year, it was when the mine was not closed yet. I heard a rumor that there were bad guys called rebel forces deep inside the mine.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "She would go to the mine every day to sell some food. And on that day, I told her not to go there.";
+		mes "But she said it would be okay and went to the mine...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(Grandma Lucy started to shed tears and you handed her your handkerchief)";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Thank you... There was an accident on that day... One of the tunnels was collapsed and some people never came back.";
+		mes "Irene was one of them...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You must have been devastated...";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Although they said it was an accident, there was a rumor.";
+		mes "People told me that there were bad guys hiding in the mine and soldiers came to get them.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "But it was not important to me at all.";
+		mes "I just felt devastated to lose my son, daughter-in-law and granddaughter. I was absent-minded and did not find any reason to live on...";
+		next;
+		mes "[Grandma Lucy]";
+		mes "That's when Mr. Adler visited me.";
+		mes "I was so surprised when he knocked the door of my house...He came in and bowed down to me all of a sudden.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "I was surprised again and asked him why. Then he told me about Irene.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "He said that Irene's death was his fault and apologized knocking his head on the floor...";
+		mes "I didn't know what was going on and just told him to stop it.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "He didn't tell me a detailed story. He left the house and came back later. Then he would send flowers and money to me.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Thanks to his support, I recovered myself. Then I moved to Einbroche and planted this tree to remember Irene.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Every time he gave me flowers or money, I always refused. But he insisted to give them to me...";
+		mes "I wondered why he was doing this. Nevertheless, he was a high-ranking soldier...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes ".........";
+		mes "Thank you very much for telling me the hard story.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Welcome. Thanks to you, I heard the story about Mr. Adler. It makes me feel much better now.";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Thank you. If you don't mind, please stop by my house occasionally and talk to this old woman...";
+		erasequest 16047;// Quiet memorial ceremony
+		setquest 16048;// Traces of old story
+		delitem 25152,1;// Cherish_Bouquet
+		close;
+	}
+	if (isbegin_quest(16052) == 1) {
+		if (countitem(25152) < 1) {
+			mes "You searched through your back.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Where did I put the flower...?";
+			mes "It's not there. Maybe I should buy another one...";
+			close;
+		}
+		mes "You dedicated the Bunch Of Flowers and paid a silent tribute briefly.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Rest in peace, Irene...";
+		next;
+		mes "[Grandma Lucy]";
+		mes "Traveler. You came again. Thank you.";
+		mes "If you see Mr. Adler, please send him my gratitude.";
+		next;
+		mes "Just then, you met grandma Lucy near the tree and said hello to her.";
+		erasequest 16052;// Quiet memorial ceremony
+		setquest 16053;// Ongoing old story
+		delitem 25152,1;// Cherish_Bouquet
+		close;
+	}
+	mes "[Huge Tree]";
+	mes "There is a small sign in front of the tree.";
+	mes "- Here lies a kind girl -";
+	close;
+
+OnInit:
+	questinfo( QTYPE_QUEST,QMARK_YELLOW, " isbegin_quest(16047) == 1 && countitem(25152) > 0 " );
+	questinfo( QTYPE_QUEST,QMARK_YELLOW, " isbegin_quest(16052) == 1 && countitem(25152) > 0 " );
+	end;
+}
+
+
+// Daily Quest - Mason Bender Business
+rebel_in,19,48,5	script	Mason Bender#16.2rm	4_M_KHMAN,{
+	if (terra_gloria_main < 17) {
+		mes "[Mason Bender]";
+		mes "Welcome. This is a weapon store, Clana Nemieri.";
+		next;
+		mes "[Mason Bender]";
+		mes "We have various weapons including firearms, gunpowder, cannon, mortar and Molotov cocktails. Please visit us often.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "... Oh, you only have firearms!";
+		next;
+		mes "[Mason Bender]";
+		mes "Firearms are the tres... Sorry? Nemi? We are closed today?";
+		next;
+		mes "[Mason Bender]";
+		mes "Ah.. Yes. We are closed today. Please visit us later.";
+		close;
+	}
+
+	// Lebedev twins quest
+	if (lebedev_quest_16_2 == 2 || lebedev_quest_16_2 == 3) {
+		if (isbegin_quest(16014) == 1) {
+			emotion ET_FRET;
+			mes "[Mason Bender]";
+			mes "About the twins in our unit? You are an adventurer. Why do you ask me such a thing?";
+			mes "I am not interested in you and the noisy tourist either.";
+			next;
+			mes "[Mason Bender]";
+			mes "......Phew, a request from commander Bolkova... I have no choice but to answer you. But I can only tell you negative things about those kids.";
+			next;
+			mes "[Mason Bender]";
+			mes "There's nothing they can do properly. Plus, they don't even listen to us.";
+			mes "They are the worst kids. I don't know why we have to keep them here.";
+			next;
+			mes "[Mason Bender]";
+			mes "Can you see the bandage here? I got this injury by the stray bullet shot by the boy.";
+			mes "They are idiots who cannot even hit an automatic target. They were terrible as if they did not hit it on purpose.";
+			next;
+			mes "[Mason Bender]";
+			mes "That's why I had to move to here, Clana Nemieri.";
+			next;
+			mes "[Mason Bender]";
+			mes "Well, this job fits in my talents...";
+			mes "The fact I dislike those kids is a different story.";
+			next;
+			mes "[Mason Bender]";
+			mes "After being deployed in the actual battle, they made trouble and run away. I don't know why they call them genius. Someone like me can be called genius.";
+			next;
+			mes "[Mason Bender]";
+			mes "People were just excited about small kids shooting guns.";
+			completequest 16014;// Testimony: Sniper's story
+			lebedev_quest_16_2++;
+			questinfo_refresh();
+			close;
+		}
+	}
+	// twin daily quest
+	if (isbegin_quest(16028) == 1) {
+		mes "[Mason Bender]";
+		mes "Cookies? Hmm, let me see. Where did you get these?";
+		next;
+		mes "[Mason Bender]";
+		mes "......Made by those kids?";
+		next;
+		mes "[Mason Bender]";
+		mes "No, no. I don't have any prejudice against them any more.";
+		mes "Please give it to me. Let me judge it with my talented taste!";
+		next;
+		if (countitem(25161) < 1) {
+			mes "[Mason Bender]";
+			mes "Why aren't you giving me the cookie?";
+			next;
+			mes "[Mason Bender]";
+			mes "Please give it to me. I won't be too harsh.";
+			mes "You don't have them?";
+			close;
+		}
+		mes "[Mason Bender]";
+		mes "...Hmm... Yum yum...";
+		mes "Well, not bad.";
+		next;
+		mes "[Mason Bender]";
+		mes "It is dry and I feel like it's not fully baked. It's too sweet and the shapes are not consistent. But...";
+		next;
+		mes "[Mason Bender]";
+		mes "I can see how much effort they gave to make them. It's delicious.";
+		completequest 16028;// Service: Cookies delivery
+		delitem 25161,1;// Handmade_cookie2
+		close;
+	}
+
+	switch( checkquest(16058,PLAYTIME) ) {
+	case -1:
+		switch( isbegin_quest(16054) ) {
+		case 0:
+			mes "[Mason Bender]";
+			mes "Welcome. This is a weapon store, Clana Nemieri.";
+			next;
+			mes "[Mason Bender]";
+			mes "Phew... Oh, sorry.";
+			next;
+			mes "[Mason Bender]";
+			mes "You... Yeah. You're the one who made a fuss in there, aren't you?";
+			mes "It's good. I would like to ask you for a favor. Will you accept it?";
+			next;
+			mes "[Mason Bender]";
+			mes "I will give you an opportunity to be in charge of one wing of my talented work.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "... Talented work?";
+			next;
+			mes "[Mason Bender]";
+			mes "Well, it's a figure of speech. Haha...";
+			mes "Can you help me?";
+			next;
+			if (select( "Help him.", "I don't feel good about him. Ignore him." ) == 2) {
+				mes "[Mason Bender]";
+				mes "...";
+				next;
+				emotion ET_DELIGHT;
+				mes "[Mason Bender]";
+				mes "Phew... You have been stimulated by my talented eloquence. That's why you cannot even respond. Of course I understand it...";
+				next;
+				mes "[Mason Bender]";
+				mes "Please calm down and talk to me again. Huhu...";
+				next;
+				mes "[" + strcharinfo(0) + "]";
+				mes "... Not even close!";
+				close;
+			}
+			mes "[Mason Bender]";
+			mes "Great. You've been persuaded by my talented eloquence.";
+			mes "So here's my request.";
+			next;
+			mes "[Mason Bender]";
+			mes "This is the leaflet of our weapon store that I prepared with my talented writing skill.";
+			next;
+			mes "[Mason Bender]";
+			mes "Any who reads this will definitely come to this store and buy 81mm mortar.";
+			npctalk "Mason Bender: Talented business sense and talented marketing skill~ Hoho~", "", bc_self;
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(Who's going to buy such a stuff?!)";
+			next;
+			mes "[Mason Bender]";
+			mes "But I have a slight problem.";
+			mes "Although I bring these to the village bench or plaza, none of the villagers take the leaflet.";
+			next;
+			mes "[Mason Bender]";
+			mes "Therefore! You bring this yourself! And give the leaflets kindly to each person. Make sure you pass it on someone's hand with a kind smlie on your face.";
+			next;
+			mes "[Mason Bender]";
+			mes "Nemi has been angry about this malignity stock. If you do that, they will surely be sold well. Huhu...";
+			next;
+			mes "[Mason Bender]";
+			mes "Now! I will give you the leaflets. See you!";
+			setquest 16054;	// Differentiated advertising strategy
+			setquest 16055;	// Advertising: Dou you want a clean city?
+			setquest 16056;	// Advertising: Then blow it all away!
+			setquest 16057;	// Advertising: Suitable revenge for old age!
+			getitem 25163,3;	// Arms_Shop_AD
+			close;
+		case 1:
+			if (isbegin_quest(16055) != 2 || isbegin_quest(16056) != 2 || isbegin_quest(16057) != 2) {
+				if (countitem(25163) < 1) {
+					mes "[Mason Bender]";
+					mes "Now, I count on you.";
+					mes "In the meantime, I will get ready to receive customers.";
+					next;
+					mes "[Mason Bender]";
+					mes "Whoops... Have you lost the leaflets?";
+					next;
+					mes "[Mason Bender]";
+					mes "Please don't mistreat the leaflets. This time, I will give them to you again.";
+					.@count = (isbegin_quest(16055) != 2) + (isbegin_quest(16056) != 2) + (isbegin_quest(16057) != 2);
+					getitem 25163,.@count;	// Arms_Shop_AD
+					close;
+				}
+				mes "[Mason Bender]";
+				mes "Now! There you go!";
+				mes "You will be spreading my talented writing in the entire village!";
+				close;
+			}
+			mes "[Mason Bender]";
+			mes "Welcome back! How did they respond?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Well... Just so so...";
+			next;
+			mes "[Mason Bender]";
+			mes "Oh? Really?!";
+			next;
+			mes "[Mason Bender]";
+			mes "... Oh, I see. My pink brain cells finished the deduction!";
+			mes "They haven't read my leaflets yet!";
+			next;
+			emotion ET_SURPRISE;
+			mes "[Mason Bender]";
+			mes "They were fascinated by my talented opening so they forgot to read the rest of the leaflet!";
+			next;
+			mes "[Mason Bender]";
+			mes "Huhu... I can't do anything about it. Let us wait evenly.";
+			next;
+			mes "[Mason Bender]";
+			mes "There will be so many people visiting us tomorrow. So I will ask Eri about how to receive many customers.";
+			next;
+			mes "[Mason Bender]";
+			mes "If you don't mind, could you please come back tomorrow and help me receiving customers? Huhu...";
+			completequest 16054;	// Differentiated advertising strategy
+			erasequest 16055;	// Advertising: Dou you want a clean city?
+			erasequest 16056;	// Advertising: Then blow it all away!
+			erasequest 16057;	// Advertising: Suitable revenge for old age!
+			setquest 16058;	// Slow advertising effect
+			getexp 100000,100000;
+			getitem 25155,10;	// Swz_Honor_Token
+			close;
+		case 2:
+			break;
+		}
+		break;
+	case 0:
+	case 1:
+		mes "[Mason Bender]";
+		mes "Welcome! Glad to meet you! Have you come to buy the mortar... Oh?";
+		mes "... It's you, adventurer. Welcome.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Wait. Were you disappointed! You were!";
+		mes "Seems like your business is in trouble.";
+		next;
+		mes "[Mason Bender]";
+		mes "No! The buyers are strategically judging the situation. In other words, they are warming up.";
+		next;
+		mes "[Mason Bender]";
+		mes "Soon they will realize that buying this mortar will bring them great profit and rush to Clana Nemieri! Come on, if you are not buying anything, please leave! Come back later!";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "How many of them did you sell!";
+		next;
+		emotion ET_SWEAT;
+		mes "[Mason Bender]";
+		mes "^FF0000Please leave!!!^000000";
+		next;
+		mes "[Nemi]";
+		mes "How many of them? Not a single mortar.";
+		next;
+		mes "[Nemi]";
+		mes "Mason is an excellent sniper and people called him genius. After he got injured, he volunteered here provisionally and now he loves this job.";
+		next;
+		mes "[Nemi]";
+		mes "Although he does not have any talent in commerce, he is misunderstanding something by chance. Now he is so excited and has too many irons in the fire.";
+		next;
+		mes "[Eri]";
+		mes "I guess we have to stop him as soon as possible.";
+		mes "Otherwise the store might be completely ruined.";
+		next;
+		mes "[Eri]";
+		mes "I apologize on behalf of Mason that he kicked you out. Please come back tomorrow and give him a valuable advice so that he can rouse himself.";
+		close;
+	case 2:
+		erasequest 16058;	// Slow advertising effect
+		break;
+	}
+	if (isbegin_quest(16059) == 0) {
+		mes "[Mason Bender]";
+		mes "Welcome! Clana Nemieri... Oh?";
+		next;
+		mes "[Mason Bender]";
+		mes "...Oh, what is it? " + strcharinfo(0) + ", it was you. I thought it was a customer...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Did you sell your cannons?";
+		next;
+		mes "[Mason Bender]";
+		mes "They are mortars, not cannons. I thought they would be sold today...";
+		next;
+		emotion ET_SWEAT;
+		mes "[Mason Bender]";
+		mes "This is strange. According to my calculation, these mortars should have been sold today... And four days later, we are supposed to reach the break-even point. After that, we will begin the turnaround.";
+		next;
+		mes "[Mason Bender]";
+		mes "I don't know why. Hmm..";
+		mes "While I analyze the phenomenon, " + strcharinfo(0) + " could you please hand out the leaflets to villagers once again?";
+		next;
+		mes "[Mason Bender]";
+		mes "Go to the village and find three people who seem to need the mortar earnestly. And give them these leaflets.";
+		next;
+		if (select( "I will do it.", "Sorry. I won't do it." ) == 2) {
+			mes "[Mason Bender]";
+			mes "Come on... Why aren't you helping me?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Well, nobody needs a mortar here.";
+			next;
+			mes "[Mason Bender]";
+			mes "If you can only sell something to someone who needs it, you are a newbie. I will sell something to some people, and they will need it just because they bought it!";
+			next;
+			mes "[Mason Bender]";
+			mes "I will sell electric heaters to the people of Moroc. And I will sell refrigerators in Manuc!";
+			next;
+			mes "[Eri]";
+			mes "...I hope he uses that passion elsewhere.";
+			close;
+		}
+		mes "[Mason Bender]";
+		mes "My brain cells already knew that you would accept it.";
+		mes "Three sheets of leaflets. I will count on you.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(I don't think there will be anyone who seem to need the mortar earnestly)";
+		setquest 16059;	// Differentiated advertising strategy
+		setquest 16055;	// Advertising: Dou you want a clean city?
+		setquest 16056;	// Advertising: Then blow it all away!
+		setquest 16057;	// Advertising: Suitable revenge for old age!
+		getitem 25163,3;	// Arms_Shop_AD
+		close;
+	}
+	if (isbegin_quest(16055) != 2 || isbegin_quest(16056) != 2 || isbegin_quest(16057) != 2) {
+		if (countitem(25163) < 1) {
+			mes "[Mason Bender]";
+			mes "Now, I count on you.";
+			mes "In the meantime, I will get ready to receive customers.";
+			next;
+			mes "[Mason Bender]";
+			mes "Whoops... Have you lost the leaflets?";
+			next;
+			mes "[Mason Bender]";
+			mes "Please don't mistreat the leaflets. This time, I will give them to you again.";
+			.@count = (isbegin_quest(16055) != 2) + (isbegin_quest(16056) != 2) + (isbegin_quest(16057) != 2);
+			getitem 25163,.@count;	// Arms_Shop_AD
+			close;
+		}
+		mes "[Mason Bender]";
+		mes "Now, I count on you.";
+		mes "In the meantime, I will get ready to receive customers.";
+		close;
+	}
+	mes "[Mason Bender]";
+	mes "Welcome back! How did they respond?";
+	next;
+	mes "[" + strcharinfo(0) + "]";
+	mes "Well... Just so so...";
+	next;
+	mes "[Mason Bender]";
+	mes "Oh? Really?!";
+	mes "If I were you, I would have read the strong desire and flutter toward mortars in their eyes using my talented intuition.";
+	next;
+	mes "[Mason Bender]";
+	mes "Then I will get ready to receive customers again!";
+	mes "I will be busy tomorrow. If you want to visit us, make a reservation in advance.";
+	erasequest 16055;	// Advertising: Dou you want a clean city?
+	erasequest 16056;	// Advertising: Then blow it all away!
+	erasequest 16057;	// Advertising: Suitable revenge for old age!
+	erasequest 16059;	// Differentiated advertising strategy
+	setquest 16058;	// Slow advertising effect
+	getexp 100000,100000;
+	getitem 25155,3;// Swz_Honor_Token
+	close;
+
+OnInit:
+	// Mason Bender Business
+	questinfo( QTYPE_QUEST, QMARK_NONE, "terra_gloria_main > 16 && isbegin_quest(16054) == 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16055) == 2 && isbegin_quest(16056) == 2 && isbegin_quest(16057) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16059) == 0 && isbegin_quest(16054) == 2 && (checkquest(16058,PLAYTIME) == -1 || checkquest(16058,PLAYTIME) == 2)" );
+
+	// Lebedev twins quest
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16014) == 1" );
+
+	// twins daily quest : "Service: Cookies delivery"
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16028) == 1 && countitem(25161) > 0" );
+	end;
+}
+
+einbech,71,168,1	script	Tired Looking Man#16.2r	4_M_SEAMAN,{
+	switch( isbegin_quest(16055) ) {
+	case 0:
+		mes "[Tired Looking Man]";
+		mes "After working hard all day long, I enjoy watching the railway and smoking a cigarette. That's the pleasure of my life.";
+		next;
+		mes "[Tired Looking Man]";
+		mes "I call it a pleasure... What's wrong with my life?";
+		close;
+	case 1:
+		if (countitem(25163) < 1) {
+			mes "[Tired Looking Man]";
+			mes "Oh, I won't buy it. Besides, you're empty-handed.";
+			mes "I'm so tired after a hard work. Don't annoy me and just leave.";
+			close;
+		}
+		mes "You handed him the leaflet.";
+		next;
+		mes "[Tired Looking Man]";
+		mes "What's this? A leaflet? I'm not interested... What the hell do you sell there?";
+		next;
+		mes "[Tired Looking Man]";
+		mes "Mortar? Are we having a war? Why would I buy it?";
+		delitem 25163,1;	// Arms_Shop_AD
+		completequest 16055;	// Advertising: Dou you want a clean city?
+		close;
+	case 2:
+		mes "[Tired Looking Man]";
+		mes "Oh, no. I won't buy it.";
+		mes "I'm so tired after a hard work. Don't annoy me and just leave.";
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(16055) == 1" );
+	end;
+}
+
+einbech,79,100,3	script	Tired Looking Old man#1	4_M_BARYO_OLD,{
+	switch( isbegin_quest(16056) ) {
+	case 0:
+		mes "[Tired Looking Old man]";
+		mes "Look at the muddy water that does not reflect anything.";
+		next;
+		mes "[Tired Looking Old man]";
+		mes "Not a single fish lives here. What's going to happen to this village after the remaining old men are gone?";
+		close;
+	case 1:
+		if (countitem(25163) < 1) {
+			mes "[Tired Looking Old man]";
+			mes "No. I don't need a cannon.";
+			mes "No matter how much you suggest it to me, I don't need it.";
+			close;
+		}
+		mes "You handed him the leaflet.";
+		next;
+		mes "[Tired Looking Old man]";
+		mes "What is this... What do you ask me to buy? A cannon? Why would I need it?";
+		next;
+		mes "[Tired Looking Old man]";
+		mes "I will take the leaflets if you give me... But I only need a little amount of gunpowder in the mine.";
+		delitem 25163,1;	// Arms_Shop_AD
+		completequest 16056;	// Advertising: Then blow it all away!
+		close;
+	case 2:
+		mes "[Tired Looking Old man]";
+		mes "No. I don't need a cannon.";
+		mes "No matter how much you suggest it to me, I don't need it.";
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(16056) == 1" );
+	end;
+}
+
+einbech,170,143,3	script	Sleepy Looking Old woman	4_F_BARYO_OLD,{
+	switch( isbegin_quest(16057) ) {
+	case 0:
+		mes "[Sleepy Looking Old woman]";
+		mes "At my age... The only pleasure is to be bathed in the sun sitting in a warm place.";
+		next;
+		mes "[Sleepy Looking Old woman]";
+		mes "I cannot see and hear well. But listen carefully and don't worry.";
+		close;
+	case 1:
+		if (countitem(25163) < 1) {
+			mes "[Sleepy Looking Old woman]";
+			mes "What? Lunch? I've had it already. By the way, you didn't even bring any food.";
+			close;
+		}
+		mes "You handed her the leaflet.";
+		next;
+		mes "[Sleepy Looking Old woman]";
+		mes "What is this? I can't see it properly. Is it a baked chestnut? Looks like a sheet of paper to me.";
+		next;
+		mes "[Sleepy Looking Old woman]";
+		mes "Dried filefish fillet? Are you selling it? Oh, I don't have tooth so I can't eat it.";
+		delitem 25163,1;	// Arms_Shop_AD
+		completequest 16057;	// Advertising: Suitable revenge for old age!
+		close;
+	case 2:
+		mes "[Sleepy Looking Old woman]";
+		mes "What? Lunch? I've had it already. Hehe...";
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_YELLOW, "isbegin_quest(16057) == 1" );
+	end;
+}
+
+// Milo Quests
+rebel_in,108,27,3	script	Milo River#16.2rm	4_M_GUNSLINGER2,{
+	if (terra_gloria_main < 17) {
+		mes "[Milo River]";
+		mes "It's not my fault that our meals are terrible.";
+		mes "If they give me more time and budget, I can cook much better food.";
+		next;
+		mes "[Milo River]";
+		mes "Phew, what should I serve the gluttons today? What would they like...?";
+		close;
+	}
+
+	// Lebedev twins quest
+	if (lebedev_quest_16_2 == 2 || lebedev_quest_16_2 == 3) {
+		if (isbegin_quest(16013) == 1) {
+			mes "[Milo River]";
+			mes "The reputation of the twins in USU? You're an adventurer. Why do you ask such a thing?";
+			next;
+			mes "[Milo River]";
+			mes "You have been requested by that unit... Then I should tell you.";
+			next;
+			mes "[Milo River]";
+			mes "Several years ago, commander Ericsson brought them here.";
+			mes "Sounds like he brought them from an orphanage.";
+			next;
+			mes "[Milo River]";
+			mes "They took the training without any problem and excelled in shooting. They quickly were able to play a role of a Rebellion.";
+			next;
+			mes "[Milo River]";
+			mes "They have been trainees for a while and several month ago, they went on the real mission for the first time. That's when they stirred up trouble.";
+			mes "Some people said that the younger sister threw a grenade at the civilian zone. But I don't know the exact story.";
+			next;
+			mes "[Milo River]";
+			mes "After that, they were moved to USU, became more educated, etc. There was a fuss.";
+			mes "That's when they began to disobey their seniors.";
+			mes "I think I heard that's what they've been doing... ever since.";
+			next;
+			mes "[Milo River]";
+			mes "Before that, they were trainees and had more free time than other squadders. They would visit the mess once in a while, receive some snacks and chat with us.";
+			next;
+			mes "[Milo River]";
+			mes "After that incident, they never came. Just by hearing the stories about them, I don't feel like they are the same kids I used to know.";
+			mes "They used to be better than this... I hope you can take cake of them.";
+			next;
+			mes "[Milo River]";
+			mes "This is all I can tell you.";
+			completequest 16013;// Testimony: Chef's story
+			lebedev_quest_16_2++;
+			questinfo_refresh();
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(I heard a similar story from others...";
+			mes "Maybe the keyword is the incident that happened at the real mission.";
+			mes "I should go back to the twins and ask them about it.)";
+			close;
+		}
+	}
+	// twins daily quest
+	if (isbegin_quest(16027) == 1) {
+		mes "[Milo River]";
+		mes "Cookies? Made by the twins?";
+		mes "Oh... Those kids. They visited the mess and asked me for several things. Is this the outcome?";
+		next;
+		emotion ET_HUK;
+		mes "[Milo River]";
+		mes "I hope they are not trying to poison me...";
+		next;
+		mes "[Milo River]";
+		mes "Hey, I'm just kidding. Don't look at me like that.";
+		mes "They seem to have found their former character. That's good. You did a great job.";
+		next;
+		if (countitem(25161) < 1) {
+			mes "[Milo River]";
+			mes "...By the way, where are the cookies?";
+			mes "You don't have anything for me? What a shame! Well~ I like cookies too~";
+			close;
+		}
+		mes "[Milo River]";
+		mes "So don't look at me like that!!";
+		mes "Just give me the cookies!";
+		completequest 16027;// Service: Cookies delivery
+		delitem 25161,1;// Handmade_cookie2
+		close;
+	}
+
+	mes "[Milo River]";
+	mes "Hey, you! Adventurer?";
+	mes "What's the matter?";
+	next;
+	switch( select( "Refreshments for seniors", "Take care of the cat please", "You don't have to know." ) ) {
+	case 1:
+		switch( checkquest(16034,PLAYTIME) ) {
+		case -1:
+			break;
+		case 0:
+		case 1:
+			mes "[Milo River]";
+			mes "Yo! Thanks to your support, I'm sure our seniors will enjoy the tea time today!";
+			next;
+			mes "[Milo River]";
+			mes "Oops... Again?";
+			mes "No thanks. Our seniors don't eat tea and snacks for every meal! Once a day is enough.";
+			next;
+			mes "[Milo River]";
+			mes "But thank you for your kindness. Haha!";
+			close;
+		case 2:
+			erasequest 16034;// Sweet cookies once a day
+			mes "[Milo River]";
+			mes "Wow! You came again! may I ask you to get the snacks for our seniors?";
+			next;
+			break;
+		}
+		if (isbegin_quest(16032) == 0) {
+			mes "[Milo River]";
+			mes "How did I know you are an adventurer? It's simple.";
+			next;
+			mes "[Milo River]";
+			mes "A stranger rarely visits this place. So someone like you draws everybody's attention.";
+			next;
+			mes "[Milo River]";
+			mes "These people must return quickly in emergency, so they cannot go too far from here.";
+			next;
+			mes "[Milo River]";
+			mes "Therefore, I would like to ask you for a favor... Actually for several. Because it has to be done outside.";
+			next;
+			mes "[Milo River]";
+			mes "I am very busy because I have to feed the gluttons~ Well now~ I hope you can do something for me~";
+			next;
+			if (select( "I will do it.", "No. I'm busy." ) == 2) {
+				emotion ET_HUK;
+				mes "[Milo River]";
+				mes "Oh~ You're so mean. What a shame.";
+				mes "This is why we should never talk to outsiders. Am I right? Charity~";
+				next;
+				mes "[Milo River]";
+				mes "... Where did my lovely and sweet cat go...?";
+				mes "Oh, I am so gloomy and lonely!! The adventurer rejected my request!!";
+				close;
+			}
+			emotion ET_DELIGHT;
+			mes "[Milo River]";
+			mes "Oh, Thank you! The adventurer is so cool!";
+			mes "I would like to ask you to get some snacks.";
+			next;
+			mes "[Milo River]";
+			mes "No, no. Don't look at me like that. They are not for me.";
+			mes "Do you know our seniors who live on the 2nd floor? Have you met them?";
+			next;
+			mes "[Milo River]";
+			mes "They enjoy tea time every day.";
+			mes "So I try to get prepare the best tea and snacks... But it's hard to find them in this out-of-the-way place.";
+			next;
+			mes "[Milo River]";
+			mes "Since I have to cook for our gluttons, I cannot go out too far. So I am sorry that I haven't been able to prepare something delicious.";
+			next;
+			mes "[Milo River]";
+			mes "You are an adventurer who travels around the whole world! Please bring something delicious for our seniors and me!";
+			next;
+			mes "[Milo River]";
+			mes "If the food is too expensive, it might me troublesome for you to get it. Please bring one of the following list.";
+			next;
+			mes "[Milo River]";
+			mes "Let's see. ^0000CDGrape Herb Tea^000000, ^0000CDOrchid Black Tea^000000, ^0000CDHoney Herb Tea^000000, ^0000CDChocolate Mousse Cake^000000... or ^0000CDFruits Mix^000000.";
+			next;
+			mes "[Milo River]";
+			mes "If you bring one of them, our seniors will be happy.";
+			mes "I am not asking you to get all of them. Just one of them will be fine.";
+			next;
+			mes "[Milo River]";
+			mes "It doesn't matter whether you make it on your own or not. I count on you~";
+			setquest 16032;// Hospitality to senior
+			close;
+		}
+		mes "[Milo River]";
+		mes "What have you brought? I will read the list.";
+		mes "Tell me what you brought!";
+		next;
+		setarray .@item_id[0],12046,12047,12048,12062,12063;
+		//.@s = select( "Grape Herb Tea", "Autumn Red Tea", "Honey Herb Tea", "Chocolate Mousse Cake", "Fruits Mix", "I don't have any." ) - 1;
+		.@s = select( getitemname(.@item_id[0]), getitemname(.@item_id[1]), getitemname(.@item_id[2]), getitemname(.@item_id[3]), getitemname(.@item_id[4]), "I don't have any." ) - 1;
+		if (.@s == 5) {
+			mes "[Milo River]";
+			mes "Well, I see. Although you are an adventurer, they are not easy to get. Aren't they?";
+			next;
+			mes "[Milo River]";
+			mes "All I can get around this place are butter with an unpleasant smell and withered herbs. I can't make anything nice with them.";
+			mes "It's just a lack of my ability, haha!";
+			close;
+		}
+		if (countitem(.@item_id[.@s]) < 1) {
+			mes "[Milo River]";
+			mes "Well! Haha, thank you for your kindness!";
+			next;
+			mes "[Milo River]";
+			mes "Give it to me!";
+			mes "... What, you haven't brought any of them?";
+			close;
+		}
+		switch( .@s ) {
+		case 0:
+			callsub( S_Item, .@item_id[.@s], "cup", "are old raisins" );
+		case 1:
+			callsub( S_Item, .@item_id[.@s], "cup", "are tea leaves with unpleasant smell" );
+		case 2:
+			callsub( S_Item, .@item_id[.@s], "cup", "are withered herbs" );
+		case 3:
+			callsub( S_Item, .@item_id[.@s], "piece", "is butter with an unpleasant smell" );
+		case 4:
+			callsub( S_Item, .@item_id[.@s], "bowl", "are unripe fruits" );
+		}
+		end;
+	case 2:
+		switch( checkquest(16042,PLAYTIME) ) {
+		case -1:
+			break;
+		case 0:
+		case 1:
+			mes "[Milo River]";
+			mes "Oh, it's been a long time since Charity went out. She ate all the forage!";
+			mes "Maybe she will come back after enjoying her stroll. If she doesn't come back, please find her again!";
+			close;
+		case 2:
+			erasequest 16042;// Charity temporarily stays
+			break;
+		}
+		switch( isbegin_quest(16044) ) {
+		case 0:
+			switch( isbegin_quest(16041) ) {
+			case 0:	// first time
+				mes "[Milo River]";
+				mes "Hey, adventurer. Do you know the idol of our unit?";
+				mes "Aigu? Hehe. Aigu is everyone's idol.";
+				next;
+				mes "[Milo River]";
+				mes "It is the beautiful cat who stays right here! Inside the basket beneath this stairway.";
+				next;
+				mes "[Milo River]";
+				mes "It's name is Charity! Some guys say it is Arunafeltz Purebred Laherin Shorthair. Actually she just came to us and started living together. So we don't know her breed or age.";
+				next;
+				emotion ET_THROB;
+				mes "[Milo River]";
+				mes "The important thing is, Charity is so lovely and cute!";
+				next;
+				mes "[Milo River]";
+				mes "By the way... Charity loves strolling and she spends about half of the day wandering outside. Look at this. I gave her forage this morning and she hasn't eaten half of it yet.";
+				next;
+				mes "[Milo River]";
+				mes "Perhaps somebody is feeding her outside... But I want to feed her good forage. If somebody gives her rotten food... It must not happen.";
+				next;
+				mes "[Milo River]";
+				mes "She shouldn't be fay away. Could you please find Charity in Einbech?";
+				next;
+				mes "[Milo River]";
+				mes "These Anchovy cookies are Charity's favorite snack. Put the cookies on ^0000CDbenches in various places of the village^000000 and call Charity. If she comes out, please bring her to me.";
+				next;
+				mes "[Milo River]";
+				mes "If she doesn't come out... You can go somewhere else to find her. Maybe she cannot hear you at once. In that case, put Anchovy cookies on the bench and call Charity again.";
+				next;
+				mes "[Milo River]";
+				mes "I have to prepare the meal for gluttons... Could you go bring Charity?";
+				next;
+				if (select( "Say yes.", "Reject." ) == 2) {
+					mes "[Milo River]";
+					mes "Charity... You're getting late. I hope nothing happened to you.";
+					mes "I'm sure people will stop her from rushing to the train of entering the mine. Right?";
+					next;
+					mes "[Milo River]";
+					mes "Hey! Please say yes. Am I right? People like you will protect her, won't they?";
+					close;
+				}
+				mes "[Milo River]";
+				mes "Thank you! I will give you enough Anchovy cookies.";
+				mes "They are for cats. Give them to Charity and bring back the rest of them. Make sure you don't eat them.";
+				getitem 25162,1;	// Anchovy_cookie
+				setquest 16041;// Investigation: Capture strolling cat operation
+				close;
+			case 1:
+				if (countitem(25162) < 1) {
+					mes "[Milo River]";
+					mes "Oops? You've come back in empty hands. Where are your Anchovy cookies? Have you run out of them already?";
+					next;
+					emotion ET_SWEAT;
+					mes "[Milo River]";
+					mes "...Don't tell me you ate them all.";
+					mes "I never thought that you'd actually eat them. Did you eat them?";
+					next;
+					mes "[Milo River]";
+					mes "Oh, I'm kidding. Did Charity steal them from you? She's so fast and she can do that.";
+					next;
+					mes "[Milo River]";
+					mes "Anyway, I'll give you the Anchovy cookies again. Please keep them safe. This time, you return with Charity and Anchovy cookies!";
+					getitem 25162,1;	// Anchovy_cookie
+					close;
+				}
+				mes "[Milo River]";
+				mes "Have you found Charity? If she doesn't show up, call her several times on the same spot.";
+				mes "Who knows? She might be afraid of you because you are a stranger. Charity is a smart cat. Show her that you are harmless.";
+				close;
+			case 2:	// daily
+				switch( isbegin_quest(16043) ) {
+				case 0:
+					mes "[Milo River]";
+					mes "Hmm... It's been a while since Charity went out...";
+					mes "But not such a long time for us to worry about her.";
+					next;
+					emotion ET_HUK;
+					mes "[Milo River]";
+					mes "To tell the truth!! I want to see Charity!! I want to pet her!! I miss her so much!";
+					next;
+					mes "[Milo River]";
+					mes "...So, let me give you Anchovy cookies again. Please find Charity.";
+					mes "Put them on ^0000CDVillage Bench^000000 in Einbech and call Charity. Will you help me?";
+					next;
+					if (select( "Help him.", "Don't help him." ) == 2) {
+						mes "[Milo River]";
+						mes "Charity... Charity...";
+						mes "Arrgh... Charity... I hope they write on my tombstone that I died while missing Charity so much...";
+						next;
+						mes "[Milo River]";
+						mes "Please, adventurer... Will you write it on it? Please say yes...";
+						close;
+					}
+					mes "[Milo River]";
+					mes "Thanks! Go and get her please.";
+					mes "Oh... I'm suffering from withdrawal symptoms... Charity... I should pet her as soon as possible to recover...";
+					next;
+					mes "[Milo River]";
+					mes "Use the Anchovy cookies to find Charity and bring the rest of them!";
+					mes "Make sure you don't eat them. Got it?";
+					getitem 25162,1;// Crispy Anchovy
+					setquest 16043;// Investigation: Capture someone's craving operation
+					close;
+				case 1:
+					if (countitem(25162) < 1) {
+						mes "[Milo River]";
+						mes "Oops? You've come back in empty hands. Where are your Anchovy cookies? Have you run out of them already?";
+						next;
+						emotion ET_HUK;
+						mes "[Milo River]";
+						mes "...Don't tell me you ate them all.";
+						mes "I never thought that you'd actually eat them. Did you eat them?";
+						next;
+						mes "[Milo River]";
+						mes "Oh, I'm kidding. Did Charity steal them from you? Phew, she is too fast...";
+						next;
+						mes "[Milo River]";
+						mes "Anyway, I'll give you the Anchovy cookies again. Please keep them safe. This time, you return with Charity and Anchovy cookies!";
+						getitem 25162,1;// Crispy Anchovy
+						close;
+					}
+					mes "[Milo River]";
+					mes "Have you found Charity? If she doesn't show up, call her several times on the same spot.";
+					close;
+				case 2:
+					end;
+				}
+			}
+		case 1:
+			cloakoffnpc "Charity#16.2rm", getcharid(0);
+			mes "[Charity]";
+			mes "Meow~";
+			if (isbegin_quest(16041) == 1) {// daily
+				cloakoffnpc "Morana Rudel#16.2rm", getcharid(0);
+				npctalk "Miss Charity! She's ruturned!", "Morana Rudel#16.2rm", bc_self;
+				sleep2 1000;
+				cloakoffnpc "Nice Looking Gun#16.2rm", getcharid(0);
+				npctalk "Miss Charity! You are beautiful as usual!", "Nice Looking Gun#16.2rm", bc_self;
+				sleep2 1000;
+				npctalk "Miss Charity! I love you!!!", "Morana Rudel#16.2rm", bc_self;
+				next;
+				mes "[Milo River]";
+				mes "Oh . . . ! !";
+				mes "Charity! I'm so glad you are all right! Look at her soft hairs! Charity!!";
+				next;
+				sleep2 500;
+				npctalk "Miss Charity looked at me!", "Nice Looking Gun#16.2rm", bc_self;
+				sleep2 1000;
+				npctalk "No, fool! She must have looked at the water!", "Morana Rudel#16.2rm", bc_self;
+				sleep2 1000;
+				npctalk "No! She did look at me with her brilliant and shiny eyes!", "Nice Looking Gun#16.2rm", bc_self;
+				mes "[" + strcharinfo(0) + "]";
+				mes "I'm the one who brought her and he doesn't seem to care about me...";
+				next;
+				emotion ET_BIGTHROB;
+				mes "[Milo River]";
+				mes "Miss Charity! You must have been exhausted after being brought by this dusty adventurer.. Shall I prepare the bathwater? Or your meal first? Or... Can I pet you first?!";
+				npctalk "Stop it! I will pet her!!", "Nice Looking Gun#16.2rm", bc_self;
+				sleep2 1000;
+				npctalk "Let me pet Charity... Oh, I can't stand it any more!", "Morana Rudel#16.2rm", bc_self;
+				next;
+				mes "[" + strcharinfo(0) + "]";
+				mes "Are they doing this on purpose?";
+				sleep2 1000;
+				npctalk "I love you Charity! Beautiful Charity!", "Morana Rudel#16.2rm", bc_self;
+				sleep2 1000;
+				npctalk "Charity forever! Oh, please take my soul to Cat Heaven!!!", "Nice Looking Gun#16.2rm", bc_self;
+				sleep2 1000;
+				completequest 16041;// Investigation: Capture strolling cat operation
+			}
+			else {
+				npctalk "Ho, Miss Charity, you are beautiful as usual! Look at that!";
+				sleep2 1000;
+				npctalk "Miss Charity! Look at her elegant eyes! My god! She washed her face!";
+				sleep2 1000;
+				npctalk "Her hairs are like a black pearl! Her eyes are sapphire! She is a jewel by herself!";
+				next;
+				mes "[Milo River]";
+				mes "Oh . . . ! !";
+				mes "Miss Charity! I'm glad you are all right! You are beautiful as usual, Charity!!";
+				next;
+				npctalk "Today... I will give the best Anchovy cookie to Charity!";
+				sleep2 1000;
+				npctalk "How dare do you try to touch Charity with your dirty hands!!";
+				sleep2 500;
+				emotion ET_DELIGHT;
+				sleep2 500;
+				npctalk "No!! My hands may be dirty. But my mind for Charity is so clean!";
+				sleep2 1000;
+				npctalk "Anyway, you will be touching her with your hand!";
+				mes "[" + strcharinfo(0) + "]";
+				mes "I'm the one who brought her and he doesn't seem to care about me...";
+				next;
+				emotion ET_BIGTHROB;
+				mes "[Milo River]";
+				mes "Miss Charity! You must have been exhausted after being brought by this dusty adventurer.. Shall I prepare the bathwater? Or... Can I pet you first?";
+				npctalk "What? I'm going to touch her! It's my turn!";
+				sleep2 1000;
+				npctalk "Please... Let me pet you, Charity.";
+				next;
+				mes "[" + strcharinfo(0) + "]";
+				mes "Well, I guess that's the way they live.";
+				npctalk "Unless I see Miss Charity everyday, there will be cat hairs growing in my eyes!";
+				sleep2 1000;
+				npctalk "Oh, Miss Charity. Look at her shape and voice. She is great!";
+			}
+			cloakonnpc "Morana Rudel#16.2rm", getcharid(0);
+			cloakonnpc "Nice Looking Gun#16.2rm", getcharid(0);
+			if (countitem(25162) > 0)
+				delitem 25162,1;	// Anchovy_cookie
+			erasequest 16044;// In charge of Charity
+			setquest 16042;// Charity temporarily stays
+			getexp 100000,100000;
+			getitem 25155,10;	// Swz_Honor_Token
+			next;
+			mes "[Charity]";
+			mes "Meow~";
+			cloakonnpc "Charity#16.2rm", getcharid(0);
+			close;
+		case 2:
+			end;
+		}
+	case 3:
+		mes "[Milo River]";
+		mes "Hey, she's quite mean.";
+		mes "...... What a cat.";
+		next;
+		emotion ET_SMILE;
+		mes "[Milo River]";
+		mes "You didn't have a meal? As far as I know, every creature including humans and cats become aggressive when they are hungry~";
+		mes "Do you want a warm meal? Well, I cannot guarantee the taste.";
+		close;
+	}
+	end;
+
+S_Item:
+	mes "[Milo River]";
+	mes "You brought it as you promised! A " + getarg(1) + " of " + getitemname(getarg(0)) + ". Will you give it to me now?";
+	next;
+	if (select( "Give it to him.", "Do not give it to him." ) == 2) {
+		mes "[Milo River]";
+		mes "Well, I see. Although you are an adventurer, they are not easy to get. Aren't they?";
+		mes "All I can get around this place " + getarg(2) + ". I can't make anything nice with them.";
+		mes "It's just a lack of my ability, haha!";
+		close;
+	}
+	mes "[Milo River]";
+	mes "It looks delicious! Thank you for your kindness!";
+	next;
+	emotion ET_DELIGHT;
+	mes "[Milo River]";
+	mes "Thank you so much for making our seniors happy!";
+	mes "I have to prepare for the tea time tomorrow as well... If you don't mind, could you bring it again tomorrow?";
+	delitem getarg(0),1;
+	if (isbegin_quest(16032) == 1)
+		completequest 16032;// Hospitality to senior
+	setquest 16034;// Sweet cookies once a day
+	getexp 200000,200000;
+	getitem 25155,3;// Swz_Honor_Token
+	close;
+
+OnInit:
+	.@terra_main$ = "terra_gloria_main > 16";
+	questinfo( QTYPE_QUEST, QMARK_NONE, .@terra_main$ + " && isbegin_quest(16032) == 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, .@terra_main$ + " && isbegin_quest(16041) == 0 && isbegin_quest(16044) == 0 && (checkquest(16042,PLAYTIME) == -1 || checkquest(16042,PLAYTIME) == 2)" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, .@terra_main$ + " && isbegin_quest(16043) == 0 && isbegin_quest(16041) == 2 && isbegin_quest(16044) == 0 && (checkquest(16042,PLAYTIME) == -1 || checkquest(16042,PLAYTIME) == 2)" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, .@terra_main$ + " && isbegin_quest(16044) == 1" );
+
+	// Lebedev twins quest
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16013) == 1" );
+
+	// twins daily quest : "Service: Cookies delivery"
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16027) == 1 && countitem(25161) > 0" );
+	end;
+}
+
+// Milo River - Cat Event
+rebel_in,105,28,5	duplicate(dummy_cloaked_npc)	Morana Rudel#16.2rm	4_F_REBELLION2
+rebel_in,104,24,7	duplicate(dummy_cloaked_npc)	Nice Looking Gun#16.2rm	4_M_REBELLION3
+rebel_in,106,25,3	duplicate(dummy_cloaked_npc)	Charity#16.2rm	4_CAT
+
+// Milo - Cat
+einbech,34,209,3	script	Empty bench#16.2rm2	HIDDEN_NPC,{
+	if (isbegin_quest(16041) == 1 || isbegin_quest(16043) == 1) {
+		if (countitem(25162) < 1) {
+			mes "No more Anchovy cookie. Let's go back to Milo and get some more.";
+			close;
+		}
+		mes "It's an empty bench. Take out several Anchovy cookies and...";
+		next;
+		if (select( "Put them on the bench.", "Eat them." ) == 2) {
+			mes "[" + strcharinfo(0) + "]";
+			mes "Yuck! This is so fishy. What kind of food is this...!!";
+			close;
+		}
+		if (rand(100) < 10) {
+			mes "But nothing happened.";
+			next;
+			mes "After waiting for a while, you reclaimed the Anchovy cookies.";
+			mes "Go to another bench or wait for a while.";
+			initnpctimer;
+			disablenpc strnpcinfo(0);
+			close;
+		}
+		if (strnpcinfo(0) == "Empty bench#16.2rm2")
+			cloakoffnpc "Charity#16.2rmb2", getcharid(0);
+		else
+			cloakoffnpc "Charity#16.2rmb3", getcharid(0);
+		mes "[Charity]";
+		mes "Meow~";
+		next;
+		mes "Charity is here!";
+		mes "You lured her with the Anchovy cookie and held her.";
+		if (isbegin_quest(16041) == 1)
+			completequest 16041;// Investigation: Capture strolling cat operation
+		else
+			erasequest 16043;// Investigation: Capture someone's craving operation
+		setquest 16044;// In charge of Charity
+		close2;
+	}
+	if (strnpcinfo(0) == "Empty bench#16.2rm2")
+		cloakonnpc "Charity#16.2rmb2", getcharid(0);
+	else
+		cloakonnpc "Charity#16.2rmb3", getcharid(0);
+	end;
+
+OnTimer30000:
+	stopnpctimer;
+	enablenpc strnpcinfo(0);
+	end;
+}
+einbech,144,98,3	duplicate(Empty bench#16.2rm2)	Empty bench#16.2rm3	HIDDEN_NPC
+
+einbech,34,203,7	duplicate(dummy_cloaked_npc)	Charity#16.2rmb2	4_CAT
+einbech,141,98,5	duplicate(dummy_cloaked_npc)	Charity#16.2rmb3	4_CAT
+
+rebel_in,90,51,5	script	Rachel Smith#16.2rm	4_F_GUNSLINGER2,{
+	if (terra_gloria_main < 17) {
+		mes "[Rachel Smith]";
+		mes "I'm charge of repairing here. The supply is handled there.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Firearms are actually consumables. If someone shoots them, someone has to maintain them.";
+		close;
+	}
+	// twins daily quest
+	if (isbegin_quest(16029) == 1) {
+		mes "[Rachel Smith]";
+		mes "Cookies? Where did you get them? Aha... Made by Lebedev kids?";
+		mes "Well. Thank you!";
+		next;
+		if (countitem(25161) < 1) {
+			mes "[Rachel Smith]";
+			mes "Hmm? Where is the cookie?";
+			close;
+		}
+		emotion ET_DELIGHT;
+		mes "[Rachel Smith]";
+		mes "Smells nice... I will ask them the recipe later.";
+		completequest 16029;// Service: Cookies delivery
+		delitem 25161,1;// Handmade_cookie2
+		close;
+	}
+
+	if (rachel_quest_16_2 == 0) {
+		mes "[Rachel Smith]";
+		mes "Again? If you broke your weapon and are pretending that you lost it, don't even think about it.";
+		next;
+		mes "[Rachel Smith]";
+		mes "...... Oops? Oh, sorry. Who are you?";
+		mes "I had three guys today who lied to me that they lost their weapons after breaking them. So I thought you would probably say the same thing.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Aha, you are an advanturer.";
+		mes "Come to think of it, you must be that adventurer who had a sparring with commander Elena of USU. You're so brave.";
+		next;
+		mes "[Rachel Smith]";
+		mes "I'm Rachel Smith. I'm a Blacksmith and I assist repairing weapons and maintenance.";
+		mes "Would you like to show me your weapon? By looking at many weapon, I can study them.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Hmm... This is a nice weapon. You ran it in properly.";
+		mes "It's interesting. Although they are same weapons, they have different tendencies according to what the owner focuses on.";
+		next;
+		mes "[Rachel Smith]";
+		mes "... But it doesn't happen to the weapons that I repaired. I don't know why.";
+		next;
+		emotion ET_PROFUSELY_SWAT;
+		mes "[Rachel Smith]";
+		mes "Oh, sorry. I'm worried about something recently. Those weapons I have repaired lately have a high defect rate.";
+		mes "The people are struggling in the field because of that.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Fortunately, nothing bad has happened so far. But I'm so nervous.";
+		mes "Every night I have a nightmare in which the weapon explodes in the hands of our squadders...";
+		next;
+		mes "[Rachel Smith]";
+		mes "Although I'm not an expert yet, I would like to solve the problems without worrying the Master or squadders.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Hey adventurer. Could you please do me a favor?";
+		mes "Could you show the weapon that I repaired to Blacksmith guild and ask them for some advice?";
+		next;
+		if (select( "Say yes.", "Reject." ) == 2) {
+			mes "[Rachel Smith]";
+			mes "Oh... I see.";
+			close;
+		}
+		mes "[Rachel Smith]";
+		mes "Thank you for your help. I can count on you.";
+		next;
+		mes "[Rachel Smith]";
+		mes "If the weapon repaired by me hurts our people, and not the enemy, it will be a tragedy. I would like to prevent that from happening.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Bring this revolver to Einbroch Blacksmith guild and show it to them. Since I am a member of that guild, they will recognize it when they see the revolver repaired by me. I am counting on you.";
+		setquest 16035;// Delivery: Explosive revolver materials
+		getitem 25151,1;	// Rachels_Revolver
+		rachel_quest_16_2 = 1;
+		close;
+	}
+	if (rachel_quest_16_2 == 1) {
+		if (countitem(25151) < 1) {
+			mes "[Rachel Smith]";
+			mes "Hmm... Where is my revolver?";
+			mes "This is irresponsible. I will give you another gun. Don't do this again.";
+			getitem 25151,1;// Rachels_Revolver
+			close;
+		}
+		mes "[Rachel Smith]";
+		mes "Bring my gun to Einbroch Blacksmith guild and show it to them. I am counting on you.";
+		close;
+	}
+	if (rachel_quest_16_2 == 2) {
+		mes "[Rachel Smith]";
+		mes "Welcome back. What did they say?";
+		next;
+		mes "[Rachel Smith]";
+		mes "So... it's the material. Hmm...";
+		mes "As a matter of fact, I estimated it a little.";
+		next;
+		mes "[Rachel Smith]";
+		mes "But I had no other choice. Due to the lack of budget, I could not get better materials.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Moreover, our Master brilliantly repairs weapons with these materials. But I keep breaking them..";
+		next;
+		mes "[Rachel Smith]";
+		mes "So I was trying to improve it by myself. But I changed my mind after listening to you.";
+		next;
+		mes "[Rachel Smith]";
+		mes "My mistake is not only mine. It can also put every squadder in danger. Everyone's safety is more important than my personal pride.";
+		next;
+		mes "[Rachel Smith]";
+		mes "Therefore.. Adventurer, I would like to ask you for a favor. Could you please bring me the materials that I require?";
+		mes "Whenever you think of it... Once a day would be perfect. If you bring them occasionally, it's also good.";
+		next;
+		mes "[Rachel Smith]";
+		mes "I cannot give you money for that. But I will compensate you with something else. What do you think?";
+		next;
+		if (select( "Grant her favor.", "Reject her favor." ) == 1) {
+			// note: always iron
+			mes "[Rachel Smith]";
+			mes "Thank you, adventurer.";
+			mes "Hmm... The most important item is.. Let me see. Today.. I need some Iron.";
+			mes "Five Iron. Could you please bring them to me?";
+			next;
+			completequest 16036;// Expert's keen eye
+			setquest 16040;// Collect 5 Irons
+			getitem 25155,7;// Swz_Honor_Token
+			rachel_quest_16_2 = 3;
+			close;
+		}
+		mes "[Rachel Smith]";
+		mes "Yes. I will.";
+		mes "I have no other choice.";
+		completequest 16036;// Expert's keen eye
+		getitem 25155,7;// Swz_Honor_Token
+		rachel_quest_16_2 = 3;
+		close;
+	}
+	switch( checkquest(16037,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Rachel Smith]";
+		mes "I think I can sort it out with the Ore that you have brought.";
+		next;
+		mes "[Rachel Smith]";
+		mes "If you can help me again... Could you come back tomorrow? I might need other Ore.";
+		close;
+	case 2:
+		erasequest 16037;// Material collection once a day
+		break;
+	}
+	if (isbegin_quest(16038) == 1)		callsub( S_Quest, 16038, 984,2, "two" );	// Oridecon
+	else if (isbegin_quest(16039) == 1) callsub( S_Quest, 16039, 985,2, "two" );	// Elunium
+	else if (isbegin_quest(16040) == 1) callsub( S_Quest, 16040, 998,5, "five" );	// Iron
+	else {
+		mes "[Rachel Smith]";
+		mes "Welcome, adventurer. Thanks to your help last time, I was able to work without difficulty.";
+		mes "Is it okay if I ask you for a favor again?";
+		next;
+		if (select( "Of course it's okay.", "I am busy today." ) == 2) {
+			mes "[Rachel Smith]";
+			mes "Hmm.. I see. But thank you for your help last time.";
+			mes "Thank you coming again.";
+			next;
+			mes "[Rachel Smith]";
+			mes "Apart from the materials...";
+			mes "Can you come here to meet me once in a while?";
+			close;
+		}
+		switch( rand(16038,16040) ) {
+		case 16038:
+			mes "[Rachel Smith]";
+			mes "To enhance the gun barrel, I need Oridecon.";
+			mes "Please bring me two Oridecon.";
+			setquest 16038;// Collect 2 Oridecons
+			close;
+		case 16039:
+			mes "[Rachel Smith]";
+			mes "Today I don't have enough Elunium. Could you please bring me two Elunium?";
+			mes "I will count on you, adventurer.";
+			setquest 16039;// Collect 2 Eluniums
+			close;
+		case 16040:
+			mes "[Rachel Smith]";
+			mes "Iron is the most basic material for every weapon. Without it, I cannot do anything only with other enhancing materials.";
+			mes "So please bring me five Iron";
+			setquest 16040;// Collect 5 Irons
+			close;
+		}
+	}
+	end;
+
+S_Quest:
+	.@quest_id = getarg(0);
+	.@item_req = getarg(1);
+	.@count_req = getarg(2);
+	.@count_req_string$ = getarg(3);
+	switch( .@quest_id ) {
+	case 16038:
+		if (countitem(.@item_req) < .@count_req) {
+			mes "[Rachel Smith]";
+			mes "If the gun barrel is not hard enough, the inner barrel will be melt after several shots. After all, it will be worn out soon.";
+			mes "To prevent it, we need high quality Oridecon. Please bring two.";
+			close;
+		}
+		break;
+	case 16039:
+		if (countitem(.@item_req) < .@count_req) {
+			mes "[Rachel Smith]";
+			mes "The blacksmiths in large cities exchange Elunium Ore with Elunium... Please bring me two Elunium.";
+			mes "If I had a better skill, it would have been enough with Ore. I'm ashamed...";
+			close;
+		}
+		break;
+	case 16040:
+		if (countitem(.@item_req) < .@count_req) {
+			mes "[Rachel Smith]";
+			mes "We always don't have enough Iron. Bring five Iron please.";
+			mes "Thank you so much, adventurer.";
+			close;
+		}
+		break;
+	}
+	mes "[Rachel Smith]";
+	mes "You have brought " + .@count_req_string$ + " " + getitemname(.@item_req) + " that I asked you for? Thank you very much!";
+	mes "Are you sure you are giving them to me?";
+	next;
+	if (select( "Of course.", "Sorry. I need it." ) == 2) {
+		mes "[Rachel Smith]";
+		mes "Yeah. I am just requesting you.";
+		mes "If you have more important thing to do, don't worry about me.";
+		close;
+	}
+	mes "[Rachel Smith]";
+	mes "Thank you, adventurer...";
+	mes "Although I cannot give you money, let me give you this.";
+	mes "If possible, I would like to ask you for a favor tomorrow too.";
+	erasequest .@quest_id;
+	delitem .@item_req, .@count_req;
+	setquest 16037;// Material collection once a day
+	getexp 200000,200000;
+	getitem 25155,3;// Swz_Honor_Token
+	close;
+
+OnInit:
+	.@terra_main$ = "terra_gloria_main > 16";
+	.@has_item$ = 
+		"(isbegin_quest(16038) == 1 && countitem(984) > 1) || " +
+		"(isbegin_quest(16039) == 1 && countitem(985) > 1) || " +
+		"(isbegin_quest(16040) == 1 && countitem(998) > 4)";
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && isbegin_quest(16035) == 0 && (isbegin_quest(16036) == 0 || isbegin_quest(16036) == 1)") );
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && ((checkquest(16037,PLAYTIME) == -1 && (" + .@has_item$ + ")) || checkquest(16037,PLAYTIME) == 2)") );
+
+	// twins daily quest : "Service: Cookies delivery"
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16029) == 1 && countitem(25161) > 0" );
+	end;
+}
+
+ein_in01,38,21,3	script	Blacksmith Jack#16.2rm	4_M_MIDDLE1,{
+	if (rachel_quest_16_2 == 1) {
+		mes "[Blacksmith Jack]";
+		mes "Seems like you are looking for someone. What is it?";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "An advice for repairing weapons? Well, but you are not a Blacksmith, are you?";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "Oh, you have come here after being requested by the member of our guild. Let me see it.";
+		next;
+		if (countitem(25151) < 1) {
+			mes "[Blacksmith Jack]";
+			mes "Come on. I have to look at the weapon to give you an advice.";
+			mes "I am a Blacksmith, not a psychic.";
+			close;
+		}
+		mes "[Blacksmith Jack]";
+		mes "Hmm. This is definitely the skill of our guild member. She has developed the method we taught her.";
+		mes "Her skill is good. Hmm, but...";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "This is... Hmm, I see...";
+		next;
+		mes "Jack is scrutinizing Rachel's revolver.";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "This is not a matter of her skill. It's the materials.";
+		mes "Since there are so many impurities mixed in the metal, it mush have been hard for her to handle this. But she barely did it.";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "Go back and tell her she must use the metal with higher purity.";
+		mes "This is not the problem of someone who handles it. I won't be surprised if it exploded while she was repairing it.";
+		next;
+		mes "[Blacksmith Jack]";
+		mes "Go back and tell her. It might be exploded in the meantime...";
+		delitem 25151,1;// Rachels_Revolver
+		erasequest 16035;// Delivery: Explosive revolver materials
+		setquest 16036;// Expert's keen eye
+		rachel_quest_16_2 = 2;
+		close;
+	}
+	mes "[Blacksmith Jack]";
+	mes "An experienced Blacksmith can recognize the status of the weapon just by feeling the vibration on the arm when he/she smashes that weapon with a hammer.";
+	next;
+	mes "[Blacksmith Jack]";
+	mes "In addition to that, The real master must check it with eyes and ears as well.";
+	close;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16035) == 1" );
+	end;
+}
+
+// Misc npcs
+rebel_in,72,32,7	script	Danae#16nego01	4_F_REBELLION2,{
+	mes "[Danae]";
+	mes "This is delicious. No mission yet?";
+	next;
+	mes "[Tommy]";
+	mes "Yeah. They told me to stand by.";
+	next;
+	mes "[Danae]";
+	mes "Oh, I'm waiting for my off-duty day. I will go to Yuno to eat something delicious.";
+	close;
+}
+
+rebel_in,72,29,5	script	Grinder#16nego01	4_M_REBELLION,{
+	mes "[Grinder]";
+	mes "Oh, it was so hard. Wasn't it?";
+	next;
+	mes "[Fang]";
+	mes "Not that hard. Did I tell you the story when I went to Hermes Fletue?";
+	next;
+	mes "[Grinder]";
+	mes "Yes, you did. More than thousand times.";
+	next;
+	mes "[Fang]";
+	mes "I told you not to drink the tea while you are holding the gun. What if you spill it on it?";
+	next;
+	mes "[Grinder]";
+	mes "Yeah, I will finish drinking first.";
+	close;
+}
+
+rebel_in,75,31,3	script	Tommy#16nego01	4_M_GUNSLINGER2,{
+	mes "[Tommy]";
+	mes "Why do you keep wiping it?";
+	next;
+	mes "[Danae]";
+	mes "I always have to take care of it.";
+	next;
+	mes "[Tommy]";
+	mes "You're so diligent.";
+	close;
+}
+
+rebel_in,72,27,5	script	Fang#16nego01	4_F_REBELLION3,{
+	mes "[Fang]";
+	mes "I'm so tired. I will sleep after drinking a cup of tea.";
+	next;
+	mes "[Grinder]";
+	mes "You said No.1 priority is reporting and No.2 is the gun, after the mission. Didn't you?";
+	next;
+	mes "[Fang]";
+	mes "I will do it after sleeping.";
+	next;
+	mes "[Grinder]";
+	mes "Oh? You once told me I must die after those No.1 and No.2 jobs!";
+	next;
+	mes "[Fang]";
+	mes "That's only for newbies. Not for me.";
+	close;
+}
+
+rebel_in,75,26,3	script	Ben#16nego01	4_M_REBELLION,{
+	mes "[Ben]";
+	mes "Ah, I'm so hungry. Nothing happened during my patrol today.";
+	next;
+	mes "[Ben]";
+	mes "What was for the dinner?";
+	close;
+}
+
+rebel_in,75,23,3	script	Markman#16nego01	4_M_TELEPORTER,{
+	mes "[Markman]";
+	mes "I love reading books during my night duty. Where is the episode 3?";
+	next;
+	mes "[Markman]";
+	mes "Rookie! Where is the episode 3? Rookie! Rookie!!";
+	close;
+}
+
+rebel_in,82,33,3	script	Tott#16nego01	4_F_03,{
+	mes "[Tott]";
+	mes "Night fishing is the best fishing of all. The sound of water, small light and the feeling of being alone at night.";
+	next;
+	mes "[Tott]";
+	mes "So I come out here quite often. The water is so dirty here that there is no fish here. I just enjoy the feeling.";
+	close;
+}
+
+rebel_in,90,24,5	script	Maymay#16nego01	4_F_02,{
+	mes "[Maymay]";
+	mes "Oh, I have to finish this.... zzzz";
+	close;
+}
+
+rebel_in,97,24,5	script	Corona#16nego01	4_M_SCIENCE,{
+	mes "[Corona]";
+	mes "This light, so beautiful. It's perfect!";
+	next;
+	mes "[Corona]";
+	mes "Look at this. Isn't this light beautiful? It's glanced on the lamp.";
+	next;
+	mes "[Corona]";
+	mes "Ha.. This is perfect. I will wipe it more so that there will be more brilliant light.";
+	close;
+}
+
+// Enchants
+rebel_in,90,40,5	script	Hogar#pa0829	4_M_MASKMAN,{
+	disable_items;
+	if (checkweight(501,1) == 0) {
+		mes "Seems like you have too many belongings. Let's try it again after you remove some.";
+		close;
+	}
+	if ((MaxWeight - Weight) < 1000) {
+		mes "Your belongings are too heavy. Let's try it again after you reduce the weight.";
+		close;
+	}
+	if (isbegin_quest(12376) != 2) {
+		mes "[Hogar]";
+		mes "A customer? I wasn't going to do business today. I'm too tired.";
+		next;
+		select("I heard similar words somewhere.");
+		mes "[Hogar]";
+		mes "It's just your imagination. There is no one like me in the world.";
+		next;
+		mes "^0000ffBut he still looks familiar.^000000";
+		next;
+		if (select( "It's a waste of time", "Tell me what you sell" ) == 1) {
+			mes "[Hogar]";
+			mes "Huh, go away.";
+			close;
+		}
+		mes "[Hogar]";
+		mes "Schwartz Honor Token, an item issued by the nation and whose transaction between individuals is prohibited. I take those items from people and upgrade their gear.";
+		next;
+		mes "[Hogar]";
+		mes "After betraying a rival in the same field, I got the secret method of upgrading. Since then, I have been working in the shadows like this ... Oh, forget it. This is not a pleasant story.";
+		next;
+		select("(He DOES look familiar ...)");
+		mes "[Hogar]";
+		mes "Anyway, if you have bunch of tokens and do not just throw them away, visit me. We can make a good trade.";
+		next;
+		select("What kind of trade?");
+		mes "[Hogar]";
+		mes "I provide a special upgrade for Agenda Robes, Consultation Robes and Mercenary Rings type A and B. In return, I take Schwartz Honor Tokens.";
+		next;
+		mes "[Hogar]";
+		mes "Well, I don't have to continue nagging like this. Just bring me the tokens when there is gear that you would like to upgrade. Then we can talk about the trade in detail.";
+		setquest 12376;// First transaction
+		completequest 12376;// First transaction
+		close;
+	}
+	mes "[Hogar]";
+	mes "Have you come for the trade? Tell me what you need.";
+	next;
+	switch( select( "Tell me the terms of the trade", "Upgrade my robe", "Upgrade my ring", "Initialize the upgraded capacity level of my robe", "Initialize the upgraded capacity level of my ring" ) ) {
+	case 1:
+		mes "[Hogar]";
+		mes "Listen. I won't say it twice.";
+		next;
+		mes "[Hogar]";
+		mes "I take 20 Schwartz Honor Token to upgrade the slot of an Agenda Robe or Consultation Robe. The maximum slots for the upgrade are two. And I will take 10 Schwartz Honor Token for initialization. Do you understand?";
+		next;
+		mes "[Hogar]";
+		mes "Then it's Mercenary Ring type A and B. I take five tokens for upgrading a slot. The maximum slots for the upgrade are two. And I will take 10 tokens for initialization.";
+		next;
+		mes "[Hogar]";
+		mes "The initialization cannot be conducted at any time. I will only do it after you are granted two effects and cannot upgrade the gear any more. And ... then ...";
+		next;
+		mes "[Hogar]";
+		mes "There is a slight problem. Mercenary Ring type A and B might be destroyed during the initialization. The probability is about 20 percent. Since they are small items, there are serious side effects when eliminating the upgraded effect.";
+		next;
+		mes "[Hogar]";
+		mes "I look forward to having a good business relationship with you, fellow.";
+		close;
+	case 2:
+		mes "[Hogar]";
+		mes "For the Consultation Robe and Agenda Robe, you need 20 Schwartz Honor Tokens for each slot. Are you sure you want to upgrade it?";
+		next;
+		if (select( "No", "Let's do it" ) == 1) {
+			mes "[Hogar]";
+			mes "Since I am busy, do not talk to me pointlessly from now on.";
+			close;
+		}
+		.@equip_id = getequipid(EQI_ARMOR);
+		setarray .@card[0],
+			getequipcardid(EQI_ARMOR,0),
+			getequipcardid(EQI_ARMOR,1),
+			getequipcardid(EQI_ARMOR,2),
+			getequipcardid(EQI_ARMOR,3);
+		.@refine = getequiprefinerycnt(EQI_ARMOR);
+
+		switch( .@equip_id ) {
+		case -1:
+			mes "[Hogar]";
+			mes "You are taking off your gear.";
+			close;
+		case 15163:
+		case 15164:
+			break;
+		default:
+			mes "[Hogar]";
+			mes "Hey, grow up. If you want to upgrade your gear, you must put it on properly first.";
+			close;
+		}
+		if (.@card[2] > 0 && .@card[3] > 0) {
+			mes "[Hogar]";
+			mes "No more upgrade is possible on this gear. Do you have anything else?";
+			close;
+		}
+		if (countitem(25155) < 20) {
+			mes "[Hogar]";
+			mes "Listen, fellow. If you don't have any " + getitemname(25155) + ", you cannot trade with me.";
+			close;
+		}
+
+		// unknown rates
+		setarray .@enhance[0],
+			4994,	// Rune of Strength Lv 1
+			4997,	// Rune of Agility Lv 1
+			29009,	// Rune of Vitality Lv 1
+			29000,	// Rune of Intellect Lv 1
+			29003,	// Rune of Dexterity Lv 1
+			29006,	// Rune of Luck Lv 1
+			4995,	// Rune of Strength Lv 2
+			4998,	// Rune of Agility Lv 2
+			29010,	// Rune of Vitality Lv 2
+			29001,	// Rune of Intellect Lv 2
+			29004,	// Rune of Dexterity Lv 2
+			29007,	// Rune of Luck Lv 2
+			4996,	// Rune of Strength Lv 3
+			4999,	// Rune of Agility Lv 3
+			29011,	// Rune of Vitality Lv 3
+			29002,	// Rune of Intellect Lv 3
+			29005,	// Rune of Dexterity Lv 3
+			29008;	// Rune of Luck Lv 3
+		.@size = getarraysize(.@enhance);
+
+		if (.@card[3] == 0)
+			.@card[3] = .@enhance[ rand(.@size) ];
+		else if (.@card[2] == 0)
+			.@card[2] = .@enhance[ rand(.@size) ];
+
+		delitem 25155,20;	// Swz_Honor_Token
+		delequip EQI_ARMOR;
+		getitem2 .@equip_id,1,1,.@refine,0,.@card[0],.@card[1],.@card[2],.@card[3];
+		specialeffect2 EF_REPAIRWEAPON;
+		mes "[Hogar]";
+		mes "Hmm, it's been done well. Check your item.";
+		close;
+	case 3:
+		mes "[Hogar]";
+		mes "You need five Schwartz Honor Tokens to upgrade a slot of Mercenary Ring type A and B equipped on your left slot. Are you sure you want to upgrade it?";
+		next;
+		if (select( "No", "Let's do it" ) == 1) {
+			mes "[Hogar]";
+			mes "Since I am busy, do not talk to me pointlessly from now on.";
+			close;
+		}
+		.@equip_id = getequipid(EQI_ACC_L);
+		setarray .@card[0],
+			getequipcardid(EQI_ACC_L,0),
+			getequipcardid(EQI_ACC_L,1),
+			getequipcardid(EQI_ACC_L,2),
+			getequipcardid(EQI_ACC_L,3);
+
+		switch( .@equip_id ) {
+		case -1:
+			mes "[Hogar]";
+			mes "I forgot to tell you something. I only upgrade accessories equipped on the left slot. Equip it on your left slot first and then let me upgrade it.";
+			close;
+		case 28425:
+		case 28426:
+			break;
+		default:
+			mes "[Hogar]";
+			mes "Hey, grow up. If you want to upgrade your Mercenary Ring, you must put it on properly first.";
+			close;
+		}
+		if (.@card[2] > 0 && .@card[3] > 0) {
+			mes "[Hogar]";
+			mes "No more upgrade is possible on this gear. Do you have anything else?";
+			close;
+		}
+		if (countitem(25155) < 5) {
+			mes "[Hogar]";
+			mes "Listen, fellow. If you don't have any " + getitemname(25155) + ", you cannot trade with me.";
+			close;
+		}
+
+		// unknown rates
+		setarray .@enhance[0],
+			4710,	// INT+1
+			4730,	// AGI+1
+			4740,	// VIT+1
+			4720,	// DEX+1
+			4750,	// LUK+1
+			4700,	// STR+1
+			4711,	// INT+2
+			4721,	// DEX+2
+			4701,	// STR+2
+			4731,	// AGI+2
+			4751,	// LUK+2
+			4741;	// VIT+2
+		.@size = getarraysize(.@enhance);
+
+		if (.@card[3] == 0)
+			.@card[3] = .@enhance[ rand(.@size) ];
+		else if (.@card[2] == 0)
+			.@card[2] = .@enhance[ rand(.@size) ];
+
+		delitem 25155,5;	// Swz_Honor_Token
+		delequip EQI_ACC_L;
+		getitem2 .@equip_id,1,1,0,0,.@card[0],.@card[1],.@card[2],.@card[3];
+		specialeffect2 EF_REPAIRWEAPON;
+		mes "[Hogar]";
+		mes "Hmm, it's been done well. Check your item.";
+		close;
+	case 4:
+		mes "[Hogar]";
+		mes "To initialize the Consultation Robe or Agenda Robe, you need 10 Schwartz Honor Tokens. The gear itself will not be destroyed. The card you already inserted and its smelting level will be safe as well.";
+		next;
+		if (select( "No", "Let's do it" ) == 1) {
+			mes "[Hogar]";
+			mes "Since I am busy, do not talk to me pointlessly from now on.";
+			close;
+		}
+		.@equip_id = getequipid(EQI_ARMOR);
+		setarray .@card[0],
+			getequipcardid(EQI_ARMOR,0),
+			getequipcardid(EQI_ARMOR,1),
+			getequipcardid(EQI_ARMOR,2),
+			getequipcardid(EQI_ARMOR,3);
+		.@refine = getequiprefinerycnt(EQI_ARMOR);
+
+		switch( .@equip_id ) {
+		case -1:
+			mes "[Hogar]";
+			mes "You are taking off your gear.";
+			close;
+		case 15163:
+		case 15164:
+			break;
+		default:
+			mes "[Hogar]";
+			mes "Whoops, this item has not been fully upgraded. The initialization is not possible yet.";
+			close;
+		}
+		if (.@card[2] == 0 || .@card[3] == 0) {
+			mes "[Hogar]";
+			mes "Whoops, this item has not been fully upgraded. The initialization is not possible yet.";
+			close;
+		}
+		if (countitem(25155) < 10) {
+			mes "[Hogar]";
+			mes "Listen, fellow. If you don't have any " + getitemname(25155) + ", you cannot trade with me.";
+			close;
+		}
+		delitem 25155,10;	// Swz_Honor_Token
+		delequip EQI_ARMOR;
+		getitem2 .@equip_id,1,1,.@refine,0,.@card[0],0,0,0;
+		specialeffect2 EF_REPAIRWEAPON;
+		mes "[Hogar]";
+		mes "Hmm, it's been done well. Check your item.";
+		close;
+	case 5:
+		mes "[Hogar]";
+		mes "You need 10 Schwartz Honor Tokens to upgrade Mercenary Ring type A and B equipped on your left slot.";
+		next;
+		mes "[Hogar]";
+		mes "As I explained before, the initialization of rings is quite hard. ^ff0000The success rate is 80 percent.^000000 If it fails, the item is gone. Are you sure you want to do this?";
+		next;
+		if (select( "No", "Let's do it" ) == 1) {
+			mes "[Hogar]";
+			mes "Since I am busy, do not talk to me pointlessly from now on.";
+			close;
+		}
+		mes "[Hogar]";
+		mes "I am telling you in advance. Every time you initialize the ring, there is a 20 percent probability of destruction. Are you sure you want to continue?";
+		next;
+		if (select( "Stop", "Continue" ) == 1) {
+			mes "[Hogar]";
+			mes "Yes. Good idea.";
+			close;
+		}
+		.@equip_id = getequipid(EQI_ACC_L);
+		setarray .@card[0],
+			getequipcardid(EQI_ACC_L,0),
+			getequipcardid(EQI_ACC_L,1),
+			getequipcardid(EQI_ACC_L,2),
+			getequipcardid(EQI_ACC_L,3);
+
+		switch( .@equip_id ) {
+		case -1:
+			mes "[Hogar]";
+			mes "I forgot to tell you something. I only initialize accessories equipped on the left slot. Equip it on your left slot first and then let me initialize it.";
+			close;
+		case 28425:
+		case 28426:
+			break;
+		default:
+			mes "[Hogar]";
+			mes "Whoops, this item has not been fully upgraded. The initialization is not possible yet.";
+			close;
+		}
+		if (.@card[2] == 0 || .@card[3] == 0) {
+			mes "[Hogar]";
+			mes "Whoops, this item has not been fully upgraded. The initialization is not possible yet.";
+			close;
+		}
+		if (countitem(25155) < 10) {
+			mes "[Hogar]";
+			mes "Listen, fellow. If you don't have any " + getitemname(25155) + ", you cannot trade with me.";
+			close;
+		}
+		delitem 25155,10;	// Swz_Honor_Token
+		delequip EQI_ACC_L;
+		if (rand(100) < 20) {
+			specialeffect2 EF_LORD;
+			mes "[Hogar]";
+			mes "Oh, you are unlucky today. Your gear has been badly damaged.";
+			close;
+		}
+		getitem2 .@equip_id,1,1,0,0,.@card[0],0,0,0;
+		specialeffect2 EF_REPAIRWEAPON;
+		mes "[Hogar]";
+		mes "Hmm, it's been done well. Check your item.";
+		close;
+	}
+}
+
+// Exchanges
+rebel_in,74,67,5	script	Strasse#rebel_in	4_M_TATIO,{
+	disable_items;
+	if (checkweight(501,1) == 0) {
+		mes "[Strasse]";
+		mes "You have too much in your inventory.";
+		mes "Please make it lighter and come back.";
+		close;
+	}
+	if ((MaxWeight - Weight) < 1000) {
+		mes "[Strasse]";
+		mes "You have too much in your inventory.";
+		mes "Please make it lighter and come back.";
+		close;
+	}
+	mes "[Strasse]";
+	mes "Hello. How may I help you?";
+	next;
+	if (countitem(25155) < 1) {
+		mes "[Strasse]";
+		mes "Hmm... You don't have any Schwartz Honor Tokens.";
+		mes "Please come back after taking care of other tasks.";
+		close;
+	}
+	mes "[Strasse]";
+	mes "Oh, you brought the Schwartz Honor Tokens.";
+	mes "I always thank you for your help.";
+	mes "We have to show you our gratitude in return.";
+	next;
+	mes "[Strasse]";
+	mes "For our cooperators who brought certain amount of tokens, we will grant gifts. Please choose items you require.";
+	next;
+	mes "[Strasse]";
+	mes "Which one would you like to select?";
+	next;
+
+	setarray .@item[0],
+		15163, 1000,	// Agenda_Robe
+		15164, 1000,	// Consultation_Robe
+		20456, 1500,	// C_Combat_Vestige
+		19115, 2500,	// Republic_Hat
+		28425, 1500,	// Mercenary_Ring_A
+		28426, 1500;	// Mercenary_Ring_B
+
+	.@s = (select( "Agenda Robe", "Consultation Robe", "Costume Combat Vestige", "Hat of Republic", "Mercenary Ring A type", "Mercenary Ring B type" ) - 1) * 2;
+	mes "[Strasse]";
+	mes "<ITEM>" + getitemname(.@item[.@s]) + "<INFO>" + .@item[.@s] + "</INFO></ITEM>? I got it.";
+	mes "You need " + .@item[.@s+1] + " Schwartz Honor Tokens.";
+	mes "Are you sure you want this?";
+	next;
+	if (select( "Yes", "No" ) == 2) {
+		mes "[Strasse]";
+		mes "Please come back after you decided.";
+		close;
+	}
+	if (countitem(25155) < .@item[.@s+1]) {// Swz_Honor_Token
+		mes "[Strasse]";
+		mes "You don't have enough tokens...";
+		mes "Please collect some more.";
+		close;
+	}
+	// custom text
+	mes "[Strasse]";
+	mes "Here is your <ITEM>" + getitemname(.@item[.@s]) + "<INFO>" + .@item[.@s] + "</INFO></ITEM>.";
+	delitem 25155, .@item[.@s+1];
+	getitem .@item[.@s],1;
+	close;
+}
+
+rebel_in,89,46,3	script	Rotten#16nego01	4_M_SITDOWN,{
+	mes "[Rotten]";
+	mes "Ah, I hate cleaning. Why don't they develop a machine that does the cleaning automatically?";
+	close;
+}
+
+rebel_in,104,37,5	duplicate(dummy_cloaked_npc)	Daryl#16nego01	4_M_REBELLION2
+rebel_in,103,37,7	duplicate(dummy_cloaked_npc)	Trainee#16nego01	4_F_GUNSLINGER3
+rebel_in,104,39,5	duplicate(dummy_cloaked_npc)	Trainee#16nego02	4_M_GUNSLINGER3
+
+rebel_in,108,36,3	script	Master#16nego02	4_F_HUWOMAN,{
+	if (checkweight(25155,3) == 0 || (MaxWeight - Weight) < 1000) {
+		emotion ET_OHNO;
+		mes "[Master]";
+		mes "You have too many items in your inventory. Why don't you come back after making it lighter? It looks too heavy.";
+		close;
+	}
+	if (terra_gloria_main < 17) {
+		mes "[Master]";
+		mes "Authorized Personnel Only. Stay away.";
+		close;
+	}
+	switch( checkquest(14612,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Master]";
+		mes "Adventurer, please take a good rest today. You must take of yourself.";
+		next;
+		mes "[Master]";
+		mes "I will see you tomorrow.";
+		close;
+	case 2:
+		mes "[Master]";
+		mes "Welcome back, adventurer. Did you have a good rest mentally and physically?";
+		next;
+		mes "[Master]";
+		mes "Last night, many weapons were not returned. I really have to teach these guys some lesson...";
+		next;
+		mes "[Master]";
+		mes "Anyway, I will count on you. ^0000cdGo down from Einbech and find Suspicious Heap of Earth^000000 and investigate it. Then ^0000cdbring about three broken guns^000000 please.";
+		erasequest 14612;// Time for repair
+		setquest 14611;// Gun recycling
+		close;
+	}
+
+	// daily quest
+	switch( isbegin_quest(14611) ) {
+	case 0:
+		break;
+	case 1:
+		mes "[Master]";
+		mes "Ha........... There are so many guys who did not return their weapons.";
+		next;
+		emotion ET_OHNO;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Well...";
+		next;
+		mes "[Master]";
+		mes "Welcome, adventurer. You came back earlier than we expected. Didn't the Grudges attack you?";
+		next;
+		mes "[Master]";
+		mes "So you've brought what I told you? Let's see...";
+		next;
+		if (countitem(25153) < 3) {
+			mes "[Master]";
+			mes "Hmm.. Not enough. I asked you to bring ^0000cdthree Broken Gun^000000.";
+			next;
+			mes "[Master]";
+			mes "^0000cdGo down from Einbech^000000 and investigate ^0000cdSuspicious Heap of earth^000000 in several places. Then you can find them.";
+			next;
+			mes "[Master]";
+			mes "Since there are Grudges, I know it's not easy. But we will count on you.";
+			close;
+		}
+		if (checkquest(14611,HUNTING) != 2) {
+			mes "[Master]";
+			mes "You've brought enough broken guns. But we cannot use them.";
+			next;
+			mes "[Master]";
+			mes "I guess you have to search at least five Heap of Earth and defeat about five Grudge.";
+			next;
+			mes "[Master]";
+			mes "I know you worked hard for us to bring them. Sorry to ask you once again.";
+			close;
+		}
+		mes "[Master]";
+		mes "My god... It's amazing. You've reclaimed all these weapons in that short time. They've been hiding so many weapons everywhere.";
+		next;
+		mes "[Master]";
+		mes "Adventurer, you must be tired today. Take a rest and come back after the ^0000cddawn^000000 tomorrow.";
+		next;
+		mes "[Master]";
+		mes "Thank you so much.";
+		erasequest 14611;// Gun recycling
+		delitem 25153,3;// Broken_Gun_Wreck
+		setquest 14612;// Time for repair
+		getitem 25155,3;// Swz_Honor_Token
+		getexp 200000,200000;
+		close;
+	case 2:
+		end;
+	}
+
+	// first time
+	switch( isbegin_quest(14610) ) {
+	case 0:
+		mes "[" + strcharinfo(0) + "]";
+		mes "Hello? can I take a look around?";
+		next;
+		mes "[Master]";
+		mes "Oh, you are the famous adventurer.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "What am I famous for?";
+		next;
+		mes "[Master]";
+		mes "They say we had an outsider after a long time. And the outsider persuaded us to cooperate with the government.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I haven't done so much.";
+		next;
+		mes "[Master]";
+		mes "But that's what I heard.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "By the way, what is this place? Since there are so many guns, I guess this is an armory.";
+		next;
+		mes "[Master]";
+		mes "Sort of. We lend weapons for Rebellions here.";
+		next;
+		emotion ET_QUESTION, playerattached();
+		mes "[" + strcharinfo(0) + "]";
+		mes "They have their own weapons. And you lend them more?";
+		next;
+		mes "[Master]";
+		mes "You are right. But according to the task and circumstance, sometimes we need additional weapons";
+		next;
+		mes "[Master]";
+		mes "And for newbies, we don't know which gun is suitable for each of them. So they have to try many different guns.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "So they can borrow them here.";
+		next;
+		mes "[Master]";
+		mes "Yes. They must write down the period, names and the purpose on the ledger. When returning them, they only have to sign.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "It's inconvenient. I thought you would just lend them without any procedure.";
+		next;
+		mes "[Master]";
+		mes "Originally, they used to borrow and returned guns without having to write anything. But almost nobody returned them. We have limited resources so we cannot just keep producing and purchasing our weapons.";
+		next;
+		mes "[Master]";
+		mes "That's how we developed a system like this. It's due to the guys living here.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "This is the ledger...";
+		next;
+		mes "[Master]";
+		mes "Don't scrutinize it. Just in case you forgot, you are an outsider.";
+		next;
+		mes "[Master]";
+		mes "Please keep in mind that we have been the most mysterious and exclusive organization in Schwaltzvalt lately.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "It's amazing. What are these red lines?";
+		next;
+		mes "[Master]";
+		mes "Ha.......................................";
+		emotion ET_OTL;
+		next;
+		mes "[Master]";
+		mes "Those who did not return weapons.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "So many of them.. Even if you manage it thoroughly?";
+		next;
+		mes "[Master]";
+		mes "Since these are not their private firearms, they handle them carelessly. They don't realize that they have to handle things with care.";
+		next;
+		mes "[Master]";
+		mes "Once they are broken, they must bring them here to repair. But they just throw them away. They don't bring them back here even though we give them penalty, claiming that they lost them.";
+		next;
+		mes "[Master]";
+		mes "Oh! Great! Adventurer, if you have time, could you help us?";
+		next;
+		if (select( "I always like working.", "Sorry. I can't" ) == 2) {
+			mes "[" + strcharinfo(0) + "]";
+			mes "All of a sudden? Maybe not now...";
+			next;
+			mes "[Master]";
+			mes "Well, it's not urgent. Please find them when you have time.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Yes. I will.";
+			close;
+		}
+		mes "[" + strcharinfo(0) + "]";
+		mes "All of a sudden? Well, I always like working.";
+		next;
+		mes "[Master]";
+		mes "It's good attitude. Please take a look the guys with red lines. And reclaim those weapons that they threw away.";
+		next;
+		mes "[Master]";
+		mes "While they are on mission, most of them reclaim their weapons once they are broken. By the time they arrive at Einbech, they think of me who scolds them and just throw the weapons away.";
+		next;
+		mes "[Master]";
+		mes "Sometimes I reclaim them when I have time. Sometimes I send newbies to bring the. But as you see, we have been quite busy lately.";
+		next;
+		mes "[Master]";
+		mes "And once you touch the wreckage...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "What happens?";
+		next;
+		emotion ET_KEK;
+		mes "[Master]";
+		mes "Oh... Grudges of guns come out and attack you. You have to see them yourself. Seeing is believing.";
+		next;
+		mes "[Master]";
+		mes "Go around ^0000cdseveral places in the field below Einbech ^000000 and reclaim ^0000cdBroken Guns^000000 inside Suspicious Heap of Earth.";
+		next;
+		mes "[Master]";
+		mes "Let me see from the newest one... Bring ^0000cdabout three of them^000000 please. If you bring too many of them, it will be hard to repair.";
+		setquest 14610;// Gun recycling
+		close;
+	case 1:
+		mes "[Master]";
+		mes "Welcome back. Have you brought what I ask you for?";
+		next;
+		if (countitem(25153) < 3) {
+			mes "[Master]";
+			mes "Hmm.. Not enough. I asked you to bring three Broken Gun.";
+			next;
+			mes "[Master]";
+			mes "Go down from Einbech and investigate Suspicious Heap of Earth in several places. Then you can find them.";
+			next;
+			mes "[Master]";
+			mes "Since there are Grudges, I know it's not easy. But we will count on you.";
+			close;
+		}
+		if (checkquest(14610,HUNTING) != 2) {
+			mes "[Master]";
+			mes "You've brought enough broken guns. But we cannot use them.";
+			next;
+			mes "[Master]";
+			mes "I guess you have to search at least five Heap of Earth and defeat about five Grudge.";
+			next;
+			mes "[Master]";
+			mes "I know you worked hard for us to bring them. Sorry to ask you once again.";
+			close;
+		}
+		mes "[Master]";
+		mes "You have brought enough amount. Thank you so much.";
+		next;
+		mes "[Master]";
+		mes "By the way, he should be here now.";
+		next;
+		cloakoffnpc "Daryl#16nego01", getcharid(0);
+		mes "[Daryl]";
+		mes "I'm here.";
+		next;
+		mes "[Master]";
+		mes "And your weapon?";
+		next;
+		mes "[Daryl]";
+		mes "I don't have it.";
+		next;
+		mes "[Master]";
+		mes "Why not?";
+		next;
+		mes "[Daryl]";
+		mes "I lost it.";
+		next;
+		mes "[Master]";
+		mes "Heck, good job.";
+		next;
+		mes "[Daryl]";
+		mes "Well, not such a good job.";
+		next;
+		emotion ET_OK;
+		mes "[Master]";
+		mes "You did a great job. So you'll lose your weapon again, won't you?";
+		next;
+		mes "[Daryl]";
+		mes "No.";
+		next;
+		mes "[Master]";
+		mes "What did I tell you? You can lost yourself, but never lose your weapon!";
+		next;
+		mes "[Daryl]";
+		mes "Sorry.";
+		emotion ET_SORRY, getnpcid(0, "Daryl#16nego01");
+		next;
+		mes "[Master]";
+		mes "It doesn't look like an attitude of someone who's sorry. You lost something you borrowed. Now give me yours.";
+		next;
+		mes "[Daryl]";
+		mes "No! Never! Don't touch me! Yikes!";
+		emotion ET_HELP, getnpcid(0, "Daryl#16nego01");
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Well... Can I leave now?";
+		next;
+		mes "[Daryl]";
+		mes "No, you can't! I don't know who you are. But please save me!";
+		next;
+		mes "[Master]";
+		mes "Right! We have to compensate you. First, let's see who threw this away.";
+		next;
+		mes "[Master]";
+		mes "Let's see... Who threw this away..? The serial numbers are...";
+		next;
+		mes "[Master]";
+		mes "... Daryl?";
+		next;
+		mes "[Daryl]";
+		mes "Yeah, huh?";
+		next;
+		mes "[Master]";
+		mes "The weapon you borrowed last time.. You said you lost it, didn't you?";
+		next;
+		emotion ET_SCRATCH, getnpcid(0, "Daryl#16nego01");
+		mes "[Daryl]";
+		mes "My god. Why is it there...";
+		next;
+		mes "[Master]";
+		mes "You begged me for the weapon!! Just because it's not yours, you broke it like this and threw it away? Why didn't you do this to your own weapon?";
+		next;
+		mes "[Daryl]";
+		mes "My Lady!! I have to treasure it!!!";
+		next;
+		mes "[Master]";
+		mes "This is not the first time and I have the smoking gun here. You have nothing to say now!";
+		next;
+		mes "[Master]";
+		mes "We will keep your Lady for a while. You reflect on yourself in the training room for some time!";
+		next;
+		cloakoffnpc "Trainee#16nego01", getcharid(0);
+		cloakoffnpc "Trainee#16nego02", getcharid(0);
+		mes "[Master]";
+		mes "Trainees!!!";
+		npctalk "Yes!!", "Trainee#16nego01", bc_self;
+		npctalk "Yes!!", "Trainee#16nego02", bc_self;
+		next;
+		mes "[Master]";
+		mes "Come and drag him out!";
+		next;
+		mes "[Daryl]";
+		mes "What???";
+		next;
+		mes "[Daryl]";
+		mes "No! Not the target please! I don't want to die yet!!! I'm sorry! It's my fault! I'll never do it again!";
+		emotion ET_CRY, getnpcid(0, "Daryl#16nego01");
+		npctalk "Let's go.", "Trainee#16nego01", bc_self;
+		npctalk "This time, I will make no mistake in shooting.", "Trainee#16nego02", bc_self;
+		next;
+		cloakonnpc "Trainee#16nego01", getcharid(0);
+		cloakonnpc "Trainee#16nego02", getcharid(0);
+		cloakonnpc "Daryl#16nego01", getcharid(0);
+		mes "[Master]";
+		mes "You must be so tired by now. Take some rest. Can we count on you tomorrow? If you are interested, come back to us after the dawn.";
+		emotion ET_SWEAT, playerattached();
+		next;
+		mes "[Master]";
+		mes "Thank you so much.";
+		erasequest 14610;// Gun recycling
+		setquest 14612;// Time for repair
+		delitem 25153,3;// Broken_Gun_Wreck
+		getitem 25155,3;// Swz_Honor_Token
+		getexp 200000,200000;
+		close;
+	case 2:
+		end;
+	}
+	end;
+
+OnInit:
+	.@terra_main$ = "terra_gloria_main > 16";
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && (checkquest(14610,HUNTING) == -1 || (checkquest(14610,HUNTING) == 2 && countitem(25153) > 2)) && checkquest(14612,PLAYTIME) == -1 && isbegin_quest(14611) == 0") );
+	questinfo( QTYPE_QUEST, QMARK_NONE, (.@terra_main$ + " && (checkquest(14612,PLAYTIME) == 2 || (checkquest(14611,HUNTING) == 2 && countitem(25153) > 2))") );
+	end;
+}
+
+ein_fild09,70,175,5	script	Suspicious Heap of Earth#1	4_SOIL,{
+	if (isbegin_quest(14610) == 0 && isbegin_quest(14611) == 0)
+		end;
+	if (countitem(25153) >= 3) {	// what if true but hunting not completed?
+		mes "[" + strcharinfo(0) + "]";
+		mes "You've reclaimed enough of them. Let's go back to the Master.";
+		close;
+	}
+	setpcblock PCBLOCK_NPC, true;
+	npctalk "It's the Heap of Earth where Broken Guns have been buried. Let's dig it and reclaim the guns.", "", bc_self;
+	sleep2 1000;
+	setpcblock PCBLOCK_NPC, false;
+	npctalk "As you attempted to reclaim the Broken Gun, the Heap of Earth moved and something popped out suddenly.", "", bc_self;
+	getmapxy .@map$,.@x,.@y, BL_NPC;
+	monster .@map$,.@x,.@y,"Grudge of Broken Gun",3629,1;
+	.@r = rand(9);	// incomplete?
+	if (.@r == 0) unittalk $@mobid[0], "Just leave me alone!";
+	else if (.@r == 1) unittalk $@mobid[0], "Why did you abandon me!";
+	else if (.@r == 2) unittalk $@mobid[0], "I will follow you till the end!!!!";
+	else if (.@r == 3) unittalk $@mobid[0], "I can never forgive you who abandoned me!!!";
+	else if (.@r == 4) unittalk $@mobid[0], "Let me show you what a biller grudge is all about!";
+	else if (.@r == 5) unittalk $@mobid[0], "I knew we would meet again. I've waiting for this day to kill you.";
+	else if (.@r == 6) unittalk $@mobid[0], "You said you needed me!!! Why did you abandon me!!";
+	else if (.@r == 7) unittalk $@mobid[0], "So you are abandoning me again? Then let me kill you first!";
+	else if (.@r == 8) unittalk $@mobid[0], "It's been cold and I was lonely waiting for you... Let us die together.";
+	initnpctimer;
+	disablenpc strnpcinfo(0);
+	end;
+OnTimer300000:
+	stopnpctimer;
+	enablenpc strnpcinfo(0);
+	end;
+}
+ein_fild09,136,157,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#2	4_SOIL
+ein_fild09,87,192,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#3	4_SOIL
+ein_fild09,95,234,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#4	4_SOIL
+ein_fild09,179,248,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#5	4_SOIL
+ein_fild09,127,276,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#6	4_SOIL
+ein_fild09,89,289,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#7	4_SOIL
+ein_fild09,103,352,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#8	4_SOIL
+ein_fild09,164,290,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#9	4_SOIL
+ein_fild09,256,320,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#10	4_SOIL
+ein_fild09,256,282,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#11	4_SOIL
+ein_fild09,335,239,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#12	4_SOIL
+ein_fild09,332,216,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#13	4_SOIL
+ein_fild09,135,305,5	duplicate(Suspicious Heap of Earth#1)	Suspicious Heap of Earth#14	4_SOIL
+
+rebel_in,90,60,3	duplicate(dummy_cloaked_npc)	Magenta#16nego01	4_M_GUNSLINGER2
+rebel_in,90,62,3	duplicate(dummy_cloaked_npc)	Gonie#16nego04	4_M_GONY
+rebel_in,94,71,5	duplicate(dummy_cloaked_npc)	Denny#16nego01	4_M_REBELLION3
+rebel_in,95,65,3	duplicate(dummy_cloaked_npc)	Denny#16nego02	4_M_REBELLION3
+rebel_in,90,62,3	duplicate(dummy_cloaked_npc)	Denny#16nego03	4_M_REBELLION3
+rebel_in,90,66,3	duplicate(dummy_cloaked_npc)	Cyan#16nego01	4_F_REBELLION3
+rebel_in,90,59,3	duplicate(dummy_cloaked_npc)	Cyan#16nego02	4_F_REBELLION3
+
+rebel_in,87,68,5	duplicate(dummy_cloaked_npc)	#16negofire	CLEAR_NPC
+
+rebel_in,88,61,5	script	Rookie#16nego02	4_M_ROOKIE,{
+	if (checkweight(501,1) == 0) {
+		mes "[Rookie]";
+		mes "Why do you carry so many stuffs? Unless you want to give them away, make your bag lighter and come back.";
+		close;
+	}
+	if ((MaxWeight - Weight) < 1000) {
+		mes "[Rookie]";
+		mes "Why do you carry so many stuffs? Unless you want to give them away, make your bag lighter and come back.";
+		close;
+	}
+	if (terra_gloria_main < 16) {
+		cutin "16loo_03.bmp",2;
+		mes "[Rookie]";
+		mes "If you value your life, don't stimulate the people here. Many of them are short-tempered.";
+		next;
+		mes "[Rookie]";
+		mes "As you promised me, just drink a cup of tea and go back.";
+		close3;
+	}
+	if (terra_gloria_main == 16) {
+		if (isbegin_quest(14602) != 2 || terra_gloria_lady_part < 14) {
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Did you meet all of them? They must be on the 2nd floor.";
+			next;
+			mes "[Rookie]";
+			mes "Can you see the doors on the 2nd floor? Just visit four of them.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "As long as you behave yourself... nothing bad will happen. Maybe...?";
+			close3;
+		}
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Did you meet everyone on the 2nd floor? Great job. It must have been frightening.";
+		next;
+		mes "[Rookie]";
+		mes "Although they are quite frightening... they are all good people.";
+		next;
+		mes "[Rookie]";
+		mes "Don't you have to report to Lazy now?";
+		close3;
+	}
+	.@playtime_14609 = checkquest(14609,PLAYTIME);
+	switch( .@playtime_14609 ) {
+	case -1:
+		setarray .@quest_list[0],14603,14604,14605,14606,14607,14608;
+		.@size = getarraysize( .@quest_list );
+		for ( .@i = 0; .@i < .@size && isbegin_quest(.@quest_list[.@i]) == 0; .@i++ )
+			continue;
+		if (.@i != .@size)
+			.@quest_id = .@quest_list[.@i];
+		else {
+			mes "[" + strcharinfo(0) + "]";
+			mes "Rookie, how have you been?";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Adventurer, how was your business? Lazy told me that I could fully trust you.";
+			npctalk "But I was still worried about sending you alone...", "", bc_self;
+			sleep2 300;
+			npctalk "Hey! The adventurer is a hero who saved a nation without anybody's help. Trust me!", "Lazy#16nego05", bc_self;
+			next;
+			mes "[Rookie]";
+			mes "All of us are also eager and preparing many things. We should not disappoint that person~";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I will do my best. Rookie, what have you been doing recently? How was your talk with Lazy?";
+			next;
+			cutin "16lei_01.bmp",0;
+			mes "[Lazy]";
+			mes "I'm still here. This fellow cannot leave immediately. Neither can I.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "What I've been doing recently?";
+			next;
+			.@quest_id = rand(14603,14605);
+		}
+		break;
+	case 0:
+	case 1:
+		cutin "16loo_01.bmp",2;
+		mes "[Rookie]";
+		mes "Adventurer? I told you to take a good rest. Didn't I?";
+		next;
+		mes "[Rookie]";
+		mes "At this time of the day, everyone is taking a rest. Please go back and rest.";
+		next;
+		cutin "16loo_03.bmp",2;
+		mes "[Rookie]";
+		mes "I'm afraid you will collapse from overwork. The health is the most important. Please take some rest.";
+		close3;
+	case 2:
+		.@quest_id = rand(14606,14608);
+		break;
+	}
+	switch( .@quest_id ) {
+	case 14603:	// Denny
+		switch( isbegin_quest(14603) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "...You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Denny#16nego01", getcharid(0);
+			mes "[Denny]";
+			mes "Here come Denny again, the superstar!!!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Well, speak of the devil.";
+			next;
+			cloakonnpc "Denny#16nego01", getcharid(0);
+			cloakoffnpc "Denny#16nego02", getcharid(0);
+			mes "[Denny]";
+			mes "Yikes! It's cold!";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "My job is to prevent such a fool from doing silly things.";
+			next;
+			emotion ET_ANGER, getnpcid(0, "Denny#16nego02");
+			mes "[Denny]";
+			mes "Oh, come on! Who keeps putting the bucket here? Every time I take it away, somebody puts it here again! Who is it? Is it a pervert who enjoys watching other people's feet getting wet?";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "It's me.";
+			next;
+			cloakonnpc "Denny#16nego02", getcharid(0);
+			cloakoffnpc "Denny#16nego03", getcharid(0);
+			mes "[Denny]";
+			mes "Hey! How can you do this to me?";
+			emotion ET_FRET, getnpcid(0, "Denny#16nego03");
+			next;
+			mes "[Rookie]";
+			mes "As long as you ^0000cdwalk on the pipe^000000 instead of the stairs, it's your fault. The pipe is innocent. How can you do that to the pipe!";
+			next;
+			mes "[Denny]";
+			mes "Look. There are four walls and four corners. So there must be four stairs. There are only two stairs and it's so inconvenient on the sides where there are no stairs!";
+			emotion ET_ANGER, getnpcid(0, "Denny#16nego03");
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Do not complain it to me. Talk to the one who designed this place.";
+			next;
+			mes "[Denny]";
+			mes "Where is that person!";
+			next;
+			mes "[Rookie]";
+			mes "He's dead. Not here.";
+			next;
+			emotion ET_CRY, getnpcid(0, "Denny#16nego03");
+			mes "[Denny]";
+			mes "...... You are doing this to me on purpose, aren't you? Why do you hate mu so much?";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Why do you think I put this bucket here?";
+			next;
+			emotion ET_HNG, getnpcid(0, "Denny#16nego03");
+			mes "[Denny]";
+			mes "Because you like to see my feet get wet.";
+			next;
+			mes "[Rookie]";
+			mes "Hey!!! Are you saying I'm a pervert? You keep walking on the pipe every day with that huge boday. As a result, this skinny pipe is damaged! There! And there! Can you see the water leakage?";
+			next;
+			emotion ET_ANGER, getnpcid(0, "Rookie#16nego02");
+			mes "[Denny]";
+			mes "Oh, it's true.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "I put the bucket there to receive the leaking water! Once the pipe is entirely broken, there will be a flood in this place! Don't you have the brain to think of it?";
+			next;
+			mes "[Denny]";
+			mes "Well, I didn't think about it. Why don't you repair the pipe?";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "That's why I've been waiting here!";
+			next;
+			mes "[Denny]";
+			mes "Oh~ I see. Then I'll count on you! Make it solid! If you have enough time, please make something I can hold on.";
+			next;
+			cutin "16loo_01.bmp",2;
+			emotion ET_OK, getnpcid(0, "Denny#16nego03");
+			mes "[Rookie]";
+			mes "No. I will just supervise it.";
+			next;
+			mes "[Denny]";
+			mes "Then who's going to repair it? There's nobody here.";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Are you sure there's nobody here?";
+			next;
+			mes "[Denny]";
+			mes "Adventurer?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "No, I can't make our guest work.";
+			next;
+			mes "[Denny]";
+			mes "Then?";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Do you know who it is?";
+			next;
+			mes "[Denny]";
+			mes "Oh... me?";
+			next;
+			emotion ET_SCRATCH, getnpcid(0, "Denny#16nego03");
+			mes "[Rookie]";
+			mes "Exactly! As a reward, I will give you an opportunity to bring the parts to repair the pipe.";
+			next;
+			mes "[Denny]";
+			mes "Well, I'm quite busy...";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "I know you are off-duty today.";
+			next;
+			mes "[Denny]";
+			mes "I'm so hungry and have to eat... I should take care of my kitty... And...";
+			next;
+			mes "[Rookie]";
+			mes "You are the one who damaged it. So you must repair it.";
+			next;
+			mes "[Denny]";
+			mes "Please, please! To repair this, we need some metal things. To get them, I have to enter the mine!!";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "That's correct! Go get them now.";
+			next;
+			mes "[Denny]";
+			mes "I'm afraid of the mine. Please don't send me to the mine. Please... Brother, please...";
+			next;
+			emotion ET_CRY, getnpcid(0, "Denny#16nego03");
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Ouch, you are right. Then what shall we do...? We need to repair it as soon as possible.";
+			next;
+			mes "[Denny]";
+			mes "What if someone else brings the parts and I repair it?";
+			next;
+			mes "[Denny]";
+			mes "Please do this for me, adventurer.";
+			emotion ET_SWEAT, playerattached();
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Hey! How can you say that to the guest!";
+			next;
+			mes "[Denny]";
+			mes "Hey, why! Adventurers normally carry about 30,000 metal things in their pockets! That's what I found from most adventurers!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Is that... true?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "No, I never bring that many.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Hey, look at that!";
+			next;
+			mes "[Denny]";
+			mes "But you can get them so easily! Since we have only handled stuffs like guns, it's hard for us to get them. I've seen many adventures who get those items quite easily.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Is that... true?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "No, it isn't...";
+			next;
+			mes "[Denny]";
+			mes "Everyone says no to this question. But they still get them like a piece of cake! I saw them!";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Adventurer, I don't know whether it is true or not. But would you mind bringing them for us?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "This pipe will be destroyed completely. Then there will be flood here. Since this place is a hideout, it will be revealed once it is flooded. Then... We will...";
+			next;
+			mes "[Denny]";
+			mes "I'm so sad.";
+			emotion ET_CRY, getnpcid(0, "Denny#16nego03");
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "We really have to repair it urgently. But this guy cannot go to the mine due to a certain reason. Also, I cannot go to the mine for other job. We will certainly compensate for your support.";
+			next;
+			mes "[Denny]";
+			mes "Compensate? You never told me about it! Let me do it!";
+			next;
+			mes "[Rookie]";
+			mes "So you're going to the mine?";
+			next;
+			mes "[Denny]";
+			mes "No...";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Now that you mention it... I will go. What do you need?";
+			next;
+			mes "[Rookie]";
+			mes "We need ^0000cdfive Steel and 15 Old Steel Plate^000000.";
+			next;
+			mes "[Denny]";
+			mes "And please ^0000cddefeat Scrap Heaters^000000. About 10 of them! This is my personal request!";
+			next;
+			if (select( "Accept.", "Reject." ) == 1) {
+				mes "[" + strcharinfo(0) + "]";
+				mes "It will be difficult for me. I'm sorry that you have to find someone else.";
+				next;
+				mes "[Denny]";
+				mes "Oh, why!!!";
+				next;
+				mes "[Denny]";
+				mes "I'm so sad!!!!!!";
+				next;
+				cloakonnpc "Denny#16nego03", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Phew, he's so rude. We have no choice. I will look for someone else to do it. You don't have to worry about this.";
+				close3;
+			}
+			mes "[" + strcharinfo(0) + "]";
+			mes "I can do that.";
+			next;
+			mes "[Denny]";
+			mes "Look! What did I say? Every adventurer is strong!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Hey, would you reject it in front of someone? Adventurer? You don't have to do this.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Welcome. See you soon.";
+			next;
+			mes "[Denny]";
+			mes "Yes! We will be waiting!";
+			next;
+			cloakonnpc "Denny#16nego03", getcharid(0);
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Be careful!";
+			setquest 14603;// Pipe repair materials
+			close3;
+		case 1:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Great job, adventurer. I must have been hard for you to take that job all of a sudden.";
+			next;
+			cloakoffnpc "Denny#16nego01", getcharid(0);
+			mes "[Denny]";
+			mes "Here come Denny again, the superstar!!!";
+			next;
+			cloakonnpc "Denny#16nego01", getcharid(0);
+			cloakoffnpc "Denny#16nego03", getcharid(0);
+			mes "[Denny]";
+			mes "Adventurer! Have you brought them all? Let me see.";
+			next;
+			if (countitem(999) < 5 || countitem(7319) < 15) {
+				mes "[Denny]";
+				mes "Well... As I told you, please bring ^0000cdfive Steel and 15 Old Steel Plate^000000. We need them to repair the pipe.";
+				next;
+				mes "[Denny]";
+				mes "Adventurer, you know how to take shortcuts. I like it.";
+				next;
+				mes "[Denny]";
+				mes "But I really need them. So please bring them to me. Will you?";
+				next;
+				mes "[Denny]";
+				mes "Superstar Denny is going home now!";
+				next;
+				cloakonnpc "Denny#16nego03", getcharid(0);
+				cutin "16loo_01.bmp",2;
+				mes "[Rookie]";
+				mes "What kind of superstar is that? After all, we are counting on you. He is more persistent than he looks. So I am saying this for you.";
+				close3;
+			}
+			if (checkquest(14603,HUNTING) != 2) {
+				mes "[Denny]";
+				mes "You have brought the Steel and Old Steel Plates...";
+				next;
+				mes "[Denny]";
+				mes "Apparently, you did not defeat ^0000cd10 Waste Stoves^000000. I cannot smell the iron.";
+				next;
+				mes "[Denny]";
+				mes "Although it is my private request, I wish you could do it for me.";
+				next;
+				mes "[Denny]";
+				mes "Superstar Denny is going home now!";
+				next;
+				cloakonnpc "Denny#16nego03", getcharid(0);
+				cutin "16loo_01.bmp",2;
+				mes "[Rookie]";
+				mes "What kind of superstar is that? After all, we are counting on you. He is more persistent than he looks. So I am saying this for you.";
+				close3;
+			}
+			mes "[Denny]";
+			mes "Wow~~~ Great! You never disappoint me!";
+			next;
+			mes "[Denny]";
+			mes "Let me spread your legendary story around the entire continent! Everyone needs to know that!";
+			next;
+			mes "[Denny]";
+			mes "Then I will go and prepare for repairing! I will count on you again!";
+			next;
+			cloakonnpc "Denny#16nego03", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "He went back only after saying what he wants. How spoiled! But I didn't educate him like that.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Please take a good rest today. We will count on you again tomorrow. You must be exhausted.";
+			erasequest 14603;// Pipe repair materials
+			delitem 999,5;// Steel
+			delitem 7319,15;// Old_Steel_Plate
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		case 2:
+			end;
+		}
+	case 14604:	// Cyan
+		switch( isbegin_quest(14604) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "...You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			mes "[Cyan]";
+			mes "Yikes, it's so cold!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "I have to listen to complaints of all the people. That's a problem.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "What's so cold? It's the same as yesterday";
+			next;
+			mes "[Cyan]";
+			mes "Hey, my feeling is so accurate. It's colder today. Look. You put on more clothes.";
+			next;
+			mes "[Rookie]";
+			mes "Oh! When did I get dressed like this!";
+			emotion ET_HUK;
+			next;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			cloakoffnpc "Cyan#16nego01", getcharid(0);
+			mes "[Cyan]";
+			mes "Let's see... I thought so. The fireplace is weaker now. No firewood?";
+			next;
+			mes "[Rookie]";
+			mes "Well, it's true.";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			cloakonnpc "Cyan#16nego01", getcharid(0);
+			mes "[Cyan]";
+			mes "Once this last firewood is burnt out, I will die... Last... firewood...";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Who told you that you'd die? You're so healthy!";
+			next;
+			emotion ET_ANGER;
+			mes "[Cyan]";
+			mes "Come on, Just echo my words while I'm sentimental!!";
+			emotion ET_FRET;
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Oh, don't die. If you die, who's going to take care of those 12 kids. Please don't die.";
+			next;
+			mes "[Cyan]";
+			mes "Hey! Who are my kids! And why do I have to feed them? What happened?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Your spouse... died during a mission.";
+			next;
+			mes "[Cyan]";
+			mes "My god! So who's my spouse?";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Well... The Teddy bear?";
+			next;
+			mes "[Cyan]";
+			mes "Oops! No! Let's say this adventurer is my spouse.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Hey! That's rude!";
+			next;
+			mes "[Cyan]";
+			mes "Adventurer~ Aren't isn't it cold now?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Well. Not really...";
+			next;
+			mes "[Cyan]";
+			mes "Oh, this jacket looks good. That's why you don't feel cold. We always receive cheap clothes so we can easily fell the cold.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "The adventurer is busy now. What are you talking about?";
+			next;
+			mes "[Cyan]";
+			mes "Listen to me and look around here. This place is a cold building made of iron and stone.";
+			next;
+			mes "[Cyan]";
+			mes "And since we are in a place located nearly underground, it's always cold and damp. You know the feeling? The cold and damp air kills us.";
+			next;
+			mes "[Cyan]";
+			mes "That's why we always make a fire in the fireplace to warm the air, boil the tea and bake some sweet potatoes...";
+			next;
+			mes "[Cyan]";
+			mes "In any case, that fireplace is a blessing that grants us so many things. But the fire is about to go out due to the lack of firewood.";
+			next;
+			mes "[Cyan]";
+			mes "Since it's too cold, I can't go out. So would you please bring me some firewood, my dear?";
+			emotion ET_THROB;
+			next;
+			cutin "16loo_01.bmp",2;
+			emotion ET_PROFUSELY_SWEAT, playerattached();
+			mes "[Rookie]";
+			mes "Hey! You're being rude to the adventurer! Just distinguish the reality and fantasy!";
+			next;
+			mes "[Cyan]";
+			mes "Well, I distinguish them too well. Rather than living in this cold stony room, I would like to jump into the river!";
+			next;
+			if (select( "Do you need the fuel?", "I have to leave now." ) == 2) {
+				mes "[" + strcharinfo(0) + "]";
+				mes "Can I leave now?";
+				next;
+				mes "[Cyan]";
+				mes "My dear, are you leaving me? I'm suffering from the cold weather!";
+				next;
+				emotion ET_CRY;
+				mes "[Rookie]";
+				mes "Adventurer, don't worry about Cyon. I will take care of this fellow.";
+				next;
+				mes "[Cyan]";
+				mes "My dear, come back if you miss me!";
+				next;
+				cloakonnpc "Cyan#16nego02", getcharid(0);
+				mes "[" + strcharinfo(0) + "]";
+				mes "Yes. I will.";
+				close3;
+			}
+			mes "[" + strcharinfo(0) + "]";
+			mes "I see! I got it! So you won't commit a suicide if I bring the fuel?";
+			next;
+			mes "[Cyan]";
+			mes "Oh dear, you are so kind and lovely.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "You've dont it again. I've gotta hand it to you.";
+			next;
+			emotion ET_SWEAT;
+			mes "[Cyan]";
+			mes "I need some Burnt Trees, about 10 of them. Since they are well-dried, they will be burnt well. And there's better coal to keep the fire long. Bring some coal please, three of them.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Coal? Why? It leaves too much ash.";
+			next;
+			mes "[Cyan]";
+			mes "To me, the efficiency is the most important! The warmest is the best!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I see. Please stop fighting. I will bring them. 10 Burnt Tree and three coal. Right?";
+			next;
+			mes "[Cyan]";
+			mes "Oops! And defeat 10 Waste Stoves!";
+			next;
+			mes "[Rookie]";
+			mes "Why?";
+			next;
+			mes "[Cyan]";
+			mes "You need to defeat them to get coal!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Come on. The adventurer knows it already.";
+			next;
+			mes "[Cyan]";
+			mes "Be careful, my dear~";
+			next;
+			cutin "16loo_01.bmp",2;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			emotion ET_PROFUSELY_SWEAT, playerattached();
+			mes "[Rookie]";
+			mes "Phew... We will count on you anyway. Regardless of what that fellow told you, everyone will get a cold once the fire goes out.";
+			setquest .@quest_id;
+			close3;
+		case 1:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Adventurer, seems like you gave so much effort!";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			mes "[Cyan]";
+			mes "Welcome back, dear!!! Have you got them all for me? Right?";
+			next;
+			if (countitem(7068) < 10 || countitem(1003) < 3) {
+				mes "[Cyan]";
+				mes "Oh, it's not there. And it's not enough... Perhaps you forgot what we told you to bring?";
+				next;
+				mes "[Cyan]";
+				mes "10 Burnt Tree and three coal. I feel so cold. See you, dear.";
+				next;
+				mes "[Cyan]";
+				mes "And don't forget to defeat about 10 Waste Stoves! I will be sleeping in by bed. It's so cold!";
+				next;
+				cloakonnpc "Cyan#16nego02", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "That's so spoiled. Adventurer, We will count on you again. If you don't bring them, Cyan will pester you all day long.";
+				close3;
+			}
+			if (checkquest(14604,HUNTING) != 2) {
+				mes "[Cyan]";
+				mes "Oh, you have the firewood... What about Waste Stoves? You didn't defeat them?";
+				next;
+				mes "[Cyan]";
+				mes "You must get them, dear. Waste Stoves release the fine firewood only after they are shaken about 1,000 times.";
+				next;
+				mes "[Cyan]";
+				mes "Defeat ^0000cd10 Waste Stoves^000000. I will be sleeping in by bed. It's so cold!";
+				next;
+				cloakonnpc "Cyan#16nego02", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "That's so spoiled. Adventurer, We will count on you again. If you don't bring them, Cyan will pester you all day long.";
+				close3;
+			}
+			mes "[Cyan]";
+			mes "Wow! You've brought all of them! My dear, you are so reliable!";
+			next;
+			cloakoffnpc "#16negofire", getcharid(0);
+			mes "[Cyan]";
+			mes "Okay. Put the wood and coal in... Fire!!!!!!!!";
+			specialeffect EF_FIREWALL, AREA, "#16negofire";
+			next;
+			mes "[Cyan]";
+			mes "Oh, it's warm now. As warm as your love~";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Could you please stop saying 'dear'? You are repeating my joke too much.";
+			next;
+			mes "[Cyan]";
+			mes "Hey! You started!";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "It was a joke. Joke! Joke! Joke!";
+			next;
+			mes "[Cyan]";
+			mes "Anyway, I like the adventurer! I won't let the adventurer go! Never!";
+			next;
+			mes "[Cyan]";
+			mes "So my dear, will you come back tomorrow?";
+			next;
+			mes "[Rookie]";
+			mes "Not again!!!";
+			next;
+			mes "[Cyan]";
+			mes "These are only enough for today. Of course we must make a fire every single day!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Oh, I see. Stop fighting. I will come back tomorrow if I remember.";
+			next;
+			mes "[Cyan]";
+			mes "My dear, you are so kind! But I may not be here tomorrow for a mission. Please don't be disappointed!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "I don't think the adventurer will ever be disappointed.";
+			next;
+			mes "[Cyan]";
+			mes "Now I will go in and sleep. See you!";
+			next;
+			cloakonnpc "#16negofire", getcharid(0);
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			mes "[Rookie]";
+			mes "Phew, I am exhausted as well. Please take a good rest now and come back after the ^0000cddawn^000000.";
+			erasequest 14604;// National Fuel Solar Fuel
+			delitem 7068,10;// Burn_Tree
+			delitem 1003,3;// Coal
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		case 2:
+			end;
+		}
+	case 14605:	// Magenta
+		switch( isbegin_quest(14605) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "... You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Magenta#16nego01", getcharid(0);
+			mes "[Magenta]";
+			mes "Twinkle twinkle little star~ My shooting star, you are still beautiful.";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "It's to make those kids quiet.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Are you fumbling it again! It might run down!";
+			next;
+			mes "[Magenta]";
+			mes "It was you who told me to possess it all the time!";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "I didn't mean to wash it every hour! You're so stubborn!";
+			next;
+			mes "[Magenta]";
+			mes "By the way, that's not important. I think there is something terribly wrong with my shooting star.";
+			next;
+			emotion ET_HUK;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "What? Flaw? Talk to the master there...";
+			next;
+			mes "[Magenta]";
+			mes "No. That's not the flaw I am talking about. Although its name is Shooting Star, it doesn't twinkle at all.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "What kind of flaw is that? It doesn't matter how it looks! The performance more important!";
+			next;
+			mes "[Magenta]";
+			mes "Oh, Lucky... Lucky, Lucky! Although you live in a place like this, your sense has to be youthful. That's the way you stay young. It's as important as being physically healthy.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Why is it so important?";
+			next;
+			mes "[Magenta]";
+			mes "Okay. Here's an item with a good performance and dull outward. And here's another one with a good performance and good outward. Which one would you choose?";
+			next;
+			mes "[Rookie]";
+			mes "I like something dull.";
+			next;
+			mes "[Magenta]";
+			mes "Look at your taste... You really don't know the trend, do you?";
+			next;
+			mes "[Rookie]";
+			mes "Regardless of the trend, it's my constant taste.";
+			next;
+			emotion ET_OK, getnpcid(0, "Magenta#16nego01");
+			mes "[Magenta]";
+			mes "Yes, I see. I respect your taste. Then please respect my taste too.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "... Right.";
+			next;
+			mes "[Magenta]";
+			mes "Oh, what can I do? This part has to be thin... Right! I want to add some glitters to ammunitions.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Why do you need them for ammunitions?";
+			next;
+			mes "[Magenta]";
+			mes "Since it's Shooting Star, it must twinkle! The Shooting Start that generates its last light by burning itself! The glitters will be spread... Just by imagining it, it's so beautiful.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "If you do that, you will get tracked.";
+			next;
+			emotion ET_SPARK, getnpcid(0, "Magenta#16nego01");
+			mes "[Magenta]";
+			mes "It's okay. I can publicize myself through the entire Continent. Let me grinder something hard and put it...";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Well. Do as you wish. If you like converting so much, why don't you become an assistant of the master there?";
+			next;
+			mes "[Magenta]";
+			mes "I prefer being on active duty. By the way... How do I get them?";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "What are you talking about? You have to go out and get them yourself.";
+			next;
+			mes "[Magenta]";
+			mes "No. I have these many stuffs to look after. Besides, I don't have enough time. Oh, adventurer! Wait please! Talk to me for a minute!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Me?";
+			next;
+			mes "[Magenta]";
+			mes "Yes! Yes! I really need your help now! I'm glad you are here so that I can ask you for a favor.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "May I ask you what it is...?";
+			next;
+			mes "[Magenta]";
+			mes "Do you have any hard and glittering stone?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I don't have any.";
+			next;
+			mes "[Magenta]";
+			mes "So it was a false rumor that adventurers bring about 30,000 gems in their bags.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I don't know where you heard that rumor from.";
+			next;
+			mes "[Magenta]";
+			mes "My friend told me. Hmm.. What can I do? Can I ask you for a favor, adventurer?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Oh, you shouldn't be asking such a thing. The adventurer is our guest.";
+			next;
+			if (select( "What is it?", "I'm quite busy..." ) == 2) {
+				mes "[" + strcharinfo(0) + "]";
+				mes "I'm quite busy...";
+				next;
+				cutin "16loo_01.bmp",2;
+				mes "[Rookie]";
+				mes "The adventure is busy! You shouldn't be asking such a thing!";
+				next;
+				mes "[Magenta]";
+				mes "I see... Please come back if you remember it later on. I will be waiting for you. Bye... then.";
+				next;
+				cloakonnpc "Magenta#16nego01", getcharid(0);
+				mes "[Rookie]";
+				mes "See you later. Be careful.";
+				close3;
+			}
+			mes "[" + strcharinfo(0) + "]";
+			mes "That's all right. What would you like to request?";
+			next;
+			mes "[Magenta]";
+			mes "So it's true that adventurers are kind!";
+			next;
+			mes "[Magenta]";
+			mes "I need some glittering stuffs to decorate my Shooting Star. Let me see... I need pieces of crystal and black crystal that twinkle transparently.";
+			next;
+			mes "[Magenta]";
+			mes "I wish I can go by myself and pick up good crystals one by one. But since I have to look after these stuffs, I cannot. I need so much time to clean and assemble them... Phew...";
+			next;
+			mes "[Magenta]";
+			mes "Of course I will compensate you for your support. Please help me.";
+			next;
+			mes "[Magenta]";
+			mes "Please bring ^0000cd 10 pieces of crystal and 10 pieces of black crystal^000000. You can get them by defeating ^0000cdObsidians and Minerals^000000. Be careful!";
+			next;
+			cloakonnpc "Magenta#16nego01", getcharid(0);
+			mes "[Rookie]";
+			mes "Phew. He's so loud. I will count on you, adventurer.";
+			setquest 14605;// Sparkling things
+			close3;
+		case 1:
+		case 2:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome back, adventurer. I know you are suffering from the weird guy.";
+			next;
+			cloakoffnpc "Magenta#16nego01", getcharid(0);
+			mes "[Magenta]";
+			mes "You've come! Have you brought everything I asked for? Let me see!";
+			next;
+			if (countitem(7321) < 10 || countitem(7315) < 10) {
+				mes "[Magenta]";
+				mes "Ah!!!! Not enough quantity!!! Adventurer, I thank you for helping us. But this is not enough!";
+				next;
+				mes "[Magenta]";
+				mes "We need ^0000cd10 pieces of crystal and 10 pieces of black crystal^000000. Please don't forget it this time!";
+				next;
+				mes "[Magenta]";
+				mes "You can get them from ^0000cdObsidians and Mineral^000000. So defeat them. I have to go now. See you!";
+				next;
+				cloakonnpc "Magenta#16nego01", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Phew, so complicated. We will count on you. That fellow is so persistent.";
+				close3;
+			}
+			if (checkquest(14605,HUNTING) != 2) {
+				mes "[Magenta]";
+				mes "Well, well.... You've brought the pieces of crystal... But you didn't defeat enough Obsidians and Minerals.";
+				next;
+				mes "[Magenta]";
+				mes "We need a special vibration generated when Obsidians and Minerals die. That vibration enables the crystal to get broken into smaller pieces...";
+				next;
+				mes "[Magenta]";
+				mes "Sorry to request you again, adventurer. Please defeat ^0000cd10 Obsidians and 10 Minerals^000000. I will count on you.";
+				next;
+				cloakonnpc "Magenta#16nego01", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Phew, so complicated. We will count on you. That fellow is so persistent.";
+				close3;
+			}
+			mes "[Magenta]";
+			mes "Oh, you brought them all!";
+			next;
+			mes "[Magenta]";
+			mes "So it is true that adventurers are so talented. I was a bit worried when I was requesting.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Where did you pick up that story?";
+			next;
+			mes "[Magenta]";
+			mes "Pick up that story? Are you saying the adventurer is not talented? After seeing with your eyes?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "No, I mean...";
+			next;
+			mes "[Magenta]";
+			mes "Sorry. Lucky has so many things to do... I apologize on behalf of him.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "No. It's okay.";
+			next;
+			mes "[Magenta]";
+			mes "By the way, it's so beautiful, What a brilliant light... I would like to start working now.";
+			next;
+			mes "[Magenta]";
+			mes "Oh, come to think of it... Adventurer! Can you bring them tomorrow? They are so beautiful and I would like to try everything.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "The adventurer is busy.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I will come back if I remember it.";
+			next;
+			mes "[Magenta]";
+			mes "I'm so glad!!! But I might be outside for a mission. In that case, don't panic and come back next time.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I will.";
+			next;
+			mes "[Magenta]";
+			mes "Thank you so much! I should start working. Be careful!";
+			next;
+			cloakonnpc "Magenta#16nego01", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "That fellow is really loud, isn't he? I apologize on behalf of him. Please take a good rest and come back ^0000cdafter the dawn^000000.";
+			erasequest 14605;// Sparkling things
+			delitem 7321,10;// Fragment_Of_Crystal
+			delitem 7315,10;// Dark_Crystal_Fragment
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		}
+	case 14606:	// Denny
+		switch( isbegin_quest(14606) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "...You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Denny#16nego01", getcharid(0);
+			mes "[Denny]";
+			mes "Here come Denny again, the superstar!!!";
+			next;
+			mes "[Rookie]";
+			mes "Can't you please skip that performance?";
+			next;
+			mes "[Denny]";
+			mes "Adventurer, did you rest well? I rested well after completing the repair. I know you are not curious about it, but I'm telling you before you ask me.";
+			next;
+			mes "[Denny]";
+			mes "But there's still some water leakage in the pipe. Once I repair one of them, there's another water leakage in another pipe.. I wish we could replace them with brand new pipes.";
+			next;
+			mes "[Denny]";
+			mes "That's why need Steel and Old Steel Plate.";
+			next;
+			mes "[Denny]";
+			mes "Please defeat the ^0000cdScrap Heater^000000 and bring ^0000cdfive Steel and 15 Old Steel Plate^000000!";
+			next;
+			mes "[Denny]";
+			mes "Cheer up!";
+			next;
+			cloakonnpc "Denny#16nego03", getcharid(0);
+			mes "[Rookie]";
+			mes "Ouch, I'm so busy. Sorry to request you again. Go, adventurer!";
+			erasequest 14609;// Quiet time
+			setquest 14606;// Pipe repair materials
+			close3;
+		case 1:
+		case 2:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome back, adventurer. Thank you for your support. Our silly kid gave you some trouble.";
+			next;
+			cloakoffnpc "Denny#16nego01", getcharid(0);
+			mes "[Denny]";
+			mes "The adventurer is here?";
+			next;
+			mes "[Denny]";
+			mes "Here come Denny again, the superstar!!!";
+			next;
+			cloakonnpc "Denny#16nego01", getcharid(0);
+			cloakoffnpc "Denny#16nego03", getcharid(0);
+			mes "[Denny]";
+			mes "Adventurer! Have you brought them all? Let me see.";
+			next;
+			if (countitem(999) < 5 || countitem(7319) < 15) {
+				mes "[Denny]";
+				mes "Well... As I told you, please bring ^0000cdfive Steel and 15 Old Steel Plate^000000. We need them to repair the pipe.";
+				next;
+				mes "[Denny]";
+				mes "Adventurer, you know how to take shortcuts. I like it.";
+				next;
+				mes "[Denny]";
+				mes "But I really need them. So please bring them to me. Will you?";
+				next;
+				mes "[Denny]";
+				mes "Superstar Denny is going home now!";
+				next;
+				cloakonnpc "Denny#16nego03", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "What a spoiled kid. I apologize on behalf of him. We will count on you for the rest items.";
+				close3;
+			}
+			if (checkquest(14606,HUNTING) != 2) {
+				mes "[Denny]";
+				mes "You have brought the Steel and Old Steel Plates...";
+				next;
+				mes "[Denny]";
+				mes "Apparently, you did not defeat ^0000cd10 Waste Stoves^000000. I cannot smell the iron.";
+				next;
+				mes "[Denny]";
+				mes "Although it is my private request, I wish you could do it for me.";
+				next;
+				mes "[Denny]";
+				mes "Superstar Denny is going home now!";
+				next;
+				cloakonnpc "Denny#16nego03", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "What a spoiled kid. I apologize on behalf of him. We will count on you for the rest items.";
+				close3;
+			}
+			mes "[Denny]";
+			mes "Wow~~~ Great! You never disappoint me!";
+			next;
+			mes "[Denny]";
+			mes "Let me spread your legendary story around the entire continent! Everyone needs to know that!";
+			next;
+			mes "[Denny]";
+			mes "Then I will go and prepare for repairing! I will count on you again!";
+			next;
+			cloakonnpc "Denny#16nego03", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "He went back only after saying what he wants. How spoiled! But I didn't educate him like that.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Please take a good rest today. We will count on you again tomorrow. You must be exhausted.";
+			erasequest 14606;// Pipe repair materials
+			delitem 999,5;// Steel
+			delitem 7319,15;// Old_Steel_Plate
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		}
+	case 14607:	// Cyan
+		switch( isbegin_quest(14607) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "...You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			mes "[Cyan]";
+			mes "Yikes, it's so cold!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "I have to listen to complaints of all the people. That's a problem.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "What's so cold? It's the same as yesterday";
+			next;
+			mes "[Cyan]";
+			mes "Hey, my feeling is so accurate. It's colder today. Look. You put on more clothes.";
+			next;
+			mes "[Rookie]";
+			mes "Oh! When did I get dressed like this!";
+			emotion ET_HUK;
+			next;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			cloakoffnpc "Cyan#16nego01", getcharid(0);
+			mes "[Cyan]";
+			mes "Let's see... I thought so. The fireplace is weaker now. No firewood?";
+			next;
+			mes "[Rookie]";
+			mes "Well, it's true.";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			cloakonnpc "Cyan#16nego01", getcharid(0);
+			mes "[Cyan]";
+			mes "Once this last firewood is burnt out, I will die... Last... firewood...";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Who told you that you'd die? You're so healthy!";
+			next;
+			emotion ET_ANGER;
+			mes "[Cyan]";
+			mes "Come on, Just echo my words while I'm sentimental!!";
+			next;
+			cutin "16loo_01.bmp",2;
+			emotion ET_FRET, getnpcid(0, "Cyan#16nego02");
+			mes "[Rookie]";
+			mes "Oh, don't die. If you die, who's going to take care of those 12 kids. Please don't die.";
+			next;
+			mes "[Cyan]";
+			mes "Hey! Who are my kids! And why do I have to feed them? What happened?";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Your spouse... died during a mission.";
+			next;
+			mes "[Cyan]";
+			mes "My god! So who's my spouse?";
+			next;
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Well... The Teddy bear?";
+			next;
+			mes "[Cyan]";
+			mes "Oops! No! Let's say this adventurer is my spouse.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Hey! That's rude!";
+			next;
+			mes "[Cyan]";
+			mes "Adventurer~ Aren't isn't it cold now?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Well. Not really...";
+			next;
+			mes "[Cyan]";
+			mes "Oh, this jacket looks good. That's why you don't feel cold. We always receive cheap clothes so we can easily fell the cold.";
+			next;
+			mes "[Rookie]";
+			mes "The adventurer is busy now. What are you talking about?";
+			next;
+			mes "[Cyan]";
+			mes "Listen to me and look around here. This place is a cold building made of iron and stone.";
+			next;
+			mes "[Cyan]";
+			mes "And since we are in a place located nearly underground, it's always cold and damp. You know the feeling? The cold and damp air kills us.";
+			next;
+			mes "[Cyan]";
+			mes "That's why we always make a fire in the fireplace to warm the air, boil the tea and bake some sweet potatoes...";
+			next;
+			mes "[Cyan]";
+			mes "In any case, that fireplace is a blessing that grants us so many things. But the fire is about to go out due to the lack of firewood.";
+			next;
+			mes "[Cyan]";
+			mes "Since it's too cold, I can't go out. So would you please bring me some firewood, my dear?";
+			emotion ET_THROB, getnpcid(0, "Cyan#16nego02");
+			next;
+			emotion ET_SWEAT, playerattached();
+			mes "[Rookie]";
+			mes "Hey! You're being rude to the adventurer! Just distinguish the reality and fantasy!";
+			next;
+			mes "[Cyan]";
+			mes "Well, I distinguish them too well. Rather than living in this cold stony room, I would like to jump into the river!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I see! I got it! So you won't commit a suicide if I bring the fuel?";
+			next;
+			mes "[Cyan]";
+			mes "Oh dear, you are so kind and lovely.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "You've dont it again. I've gotta hand it to you.";
+			emotion ET_SWEAT;
+			next;
+			mes "[Cyan]";
+			mes "I need some Burnt Tree. About 10 of them. Since they are well-dried, they will be burnt well. And there's better than coal to keep the fire long. Bring some coal please. Three of them.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Coal? Why? It leaves too much ash.";
+			next;
+			mes "[Cyan]";
+			mes "To me, the efficiency is the most important! The warmest is the best!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I see. Please stop fighting. I will bring them. ^0000cd10 Burnt Tree and three coal^000000. Right?";
+			next;
+			mes "[Cyan]";
+			mes "Oops! And defeat ^0000cd10 Waste Stoves^000000!";
+			next;
+			mes "[Rookie]";
+			mes "Why?";
+			next;
+			mes "[Cyan]";
+			mes "You need to defeat them to get coal!";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Come on. The adventurer knows it already.";
+			next;
+			mes "[Cyan]";
+			mes "Be careful, my dear~";
+			next;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			emotion ET_SWEAT, playerattached();
+			mes "[Rookie]";
+			mes "Phew... We will count on you anyway. Regardless of what that fellow told you, everyone will get a cold once the fire goes out.";
+			erasequest 14609;// Quiet time
+			setquest 14607;// National Fuel Solar Fuel
+			close3;
+		case 1:
+		case 2:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome back, adventurer. Thank you for your support. Our silly kid gave you some trouble.";
+			next;
+			mes "[Cyan]";
+			mes "What? Adventurer? My dear?";
+			next;
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			mes "[Cyan]";
+			mes "My dear~~~ You're late! I've been waiting for you for a long time! Have you brought the right one again? I mean, the firewood.";
+			next;
+			if (countitem(7068) < 10 || countitem(1003) < 3) {
+				mes "[Cyan]";
+				mes "Oh, it's not there. And it's not enough... Perhaps you forgot what we told you to bring?";
+				next;
+				mes "[Cyan]";
+				mes "10 Burnt Tree and three coal. I feel so cold. See you, dear.";
+				next;
+				mes "[Cyan]";
+				mes "And don't forget to defeat about 10 Waste Stoves! I will be sleeping in by bed. It's so cold!";
+				next;
+				cloakonnpc "Cyan#16nego02", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Sorry. Some of our kids are spoiled... We will count on you.";
+				close3;
+			}
+			if (checkquest(14607,HUNTING) != 2) {
+				mes "[Cyan]";
+				mes "Oh, you have the firewood... What about Waste Stoves? You didn't defeat them?";
+				next;
+				mes "[Cyan]";
+				mes "You must get them, dear. Waste Stoves release the fine firewood only after they are shaken about 1,000 times.";
+				next;
+				mes "[Cyan]";
+				mes "Defeat ^0000cd10 Waste Stoves^000000. I will be sleeping in by bed. It's so cold!";
+				next;
+				cloakonnpc "Cyan#16nego02", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Sorry. Some of our kids are spoiled... We will count on you.";
+				close3;
+			}
+			mes "[Cyan]";
+			mes "Burnt Tree and coal, you have everything! That's why I like you, dear!";
+			next;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			cloakoffnpc "Cyan#16nego01", getcharid(0);
+			cloakoffnpc "#16negofire", getcharid(0);
+			mes "[Cyan]";
+			mes "Okay. Put the wood and coal in... Fire!!!!!!!!";
+			specialeffect EF_FIREWALL, AREA, "#16negofire";
+			next;
+			mes "[Cyan]";
+			mes "Oh, it's warm now. As warm as your love~";
+			next;
+			cloakonnpc "Cyan#16nego01", getcharid(0);
+			cloakoffnpc "Cyan#16nego02", getcharid(0);
+			cloakonnpc "#16negofire", getcharid(0);
+			next;
+			mes "[Cyan]";
+			mes "Thank you so much! I will count you again later on! MY DEAR!";
+			next;
+			cloakonnpc "Cyan#16nego02", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "There he leaves again without saying goodbye to you. Sorry about him. Some of our kids are spoiled. But not every Rebellion is like that.";
+			next;
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Please take a good rest today. We will count on you again tomorrow.";
+			erasequest 14607;// National Fuel Solar Fuel
+			delitem 7068,10;// Burn_Tree
+			delitem 1003,3;// Coal
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 200000,200000;
+			close3;
+		}
+	case 14608:	// Magenta
+		switch( isbegin_quest(14608) ) {
+		case 0:
+			cutin "16loo_01.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome, adventurer.";
+			next;
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Although you didn't have to come here, you took the trouble. I mean... Thanks.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "...You told me I had to come here, didn't you?";
+			next;
+			cloakoffnpc "Magenta#16nego01", getcharid(0);
+			mes "[Magenta]";
+			mes "Wait!!! Adventurer! Please talk to me!";
+			next;
+			mes "[Magenta]";
+			mes "I would be so sad if you leave without seeing me. I thought of a perfect design last night.";
+			next;
+			mes "[Magenta]";
+			mes "And I made various stuffs and now I ran out of crystals... Would you mind if I ask you to get them?";
+			next;
+			mes "[Magenta]";
+			mes "Defeat ^0000cdObsidian and Mineral^000000. Then bring me ^0000cd10 pieces of crystal and 10 pieces of black crystal^000000 please.";
+			next;
+			mes "[Magenta]";
+			mes "Eee you later! I have to go and arrange the stuffs I made. I will count on you!";
+			next;
+			cloakonnpc "Magenta#16nego01", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "Ouch, Sorry to request you again. It must be tough for you now.";
+			erasequest 14609;// Quiet time
+			setquest 14608;// Sparkling things
+			close3;
+		case 1:
+		case 2:
+			cutin "16loo_02.bmp",2;
+			mes "[Rookie]";
+			mes "Welcome back, adventurer. Thank you for your support. That flake gave you some trouble.";
+			next;
+			cloakoffnpc "Magenta#16nego01", getcharid(0);
+			mes "[Magenta]";
+			mes "You've come! Have you brought everything I asked for? Let me see!";
+			next;
+			if (countitem(7321) < 10 || countitem(7315) < 10) {
+				mes "[Magenta]";
+				mes "Ah!!!! Not enough quantity!!! Adventurer, I thank you for helping us. But this is not enough!";
+				next;
+				mes "[Magenta]";
+				mes "We need ^0000cd10 pieces of crystal and 10 pieces of black crystal^000000. Please don't forget it this time!";
+				next;
+				mes "[Magenta]";
+				mes "You can get them from ^0000cdObsidians and Mineral^000000. So defeat them. I have to go now. See you!";
+				next;
+				cloakonnpc "Magenta#16nego01", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Sorry. Some of our kids are spoiled... We will count on you.";
+				close3;
+			}
+			if (checkquest(14608,HUNTING) != 2) {
+				mes "[Magenta]";
+				mes "Well, well.... You've brought the pieces of crystal... But you didn't defeat enough Obsidians and Minerals.";
+				next;
+				mes "[Magenta]";
+				mes "We need a special vibration generated when Obsidians and Minerals die. That vibration enables the crystal to get broken into smaller pieces...";
+				next;
+				mes "[Magenta]";
+				mes "Sorry to request you again, adventurer. Please defeat ^0000cd10 Obsidians and 10 Minerals^000000. I will count on you.";
+				next;
+				cloakonnpc "Magenta#16nego01", getcharid(0);
+				cutin "16loo_03.bmp",2;
+				mes "[Rookie]";
+				mes "Sorry. Some of our kids are spoiled... We will count on you.";
+				close3;
+			}
+			mes "[Magenta]";
+			mes "You brought them all again!!! I'm beginning to respect you!";
+			next;
+			mes "[Magenta]";
+			mes "Thank you so much! Can I ask you for a favor again next time? This is great!!!";
+			next;
+			cloakonnpc "Magenta#16nego01", getcharid(0);
+			cutin "16loo_03.bmp",2;
+			mes "[Rookie]";
+			mes "There he leaves again without saying goodbye to you. Sorry about him. Some of our kids are spoiled. But not every Rebellion is like that.";
+			next;
+			mes "[Rookie]";
+			mes "Please take a good rest today. We will count on you again tomorrow.";
+			erasequest 14608;// Sparkling things
+			delitem 7321,10;// Fragment_Of_Crystal
+			delitem 7315,10;// Dark_Crystal_Fragment
+			setquest 14609;// Quiet time
+			getitem 25155,3;// Swz_Honor_Token
+			getexp 0,300000;
+			close3;
+		}
+	}
+	end;
+
+OnInit:
+	.@conditions$ =
+		"terra_gloria_main > 16 && (checkquest(14609,PLAYTIME) == -1 || checkquest(14609,PLAYTIME) == 2)" +
+		" && isbegin_quest(14603) == 0 && isbegin_quest(14604) == 0 && isbegin_quest(14605) == 0 && isbegin_quest(14606) == 0 && isbegin_quest(14607) == 0 && isbegin_quest(14608) == 0";
+	questinfo( QTYPE_QUEST, QMARK_NONE, .@conditions$ );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14603,HUNTING) == 2 && countitem(999) > 4 && countitem(7319) > 14");
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14604,HUNTING) == 2 && countitem(7068) > 9 && countitem(1003) > 2");
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14605,HUNTING) == 2 && countitem(7321) > 9 && countitem(7315) > 9");
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14606,HUNTING) == 2 && countitem(999) > 4 && countitem(7319) > 14");
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14607,HUNTING) == 2 && countitem(7068) > 9 && countitem(1003) < 3");
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(14608,HUNTING) == 2 && countitem(7321) > 9 && countitem(7315) > 9");
+	end;
+}
+
+slabw01,235,137,3	script	Suspicious cabinet#hide01	4_ENERGY_WHITE,{
+	if (isbegin_quest(7744) == 0 || isbegin_quest(7760) > 0) {
+		unittalk getcharid(3), "" + strcharinfo(0) + " : Nothing special now.", bc_self;
+		end;
+	}
+	.@num = atoi( replacestr(strnpcinfo(2), "hide", "") );
+	.@quest_id = 7752 - 1 + .@num;// Well hidden
+	if (isbegin_quest(.@quest_id) > 0) {
+		unittalk getcharid(3), "" + strcharinfo(0) + " : I have already searched here.", bc_self;
+		end;
+	}
+	unittalk getcharid(3), "" + strcharinfo(0) + " : .. This looks suspicious!", bc_self;
+	progressbar "000000",3;
+	disablenpc strnpcinfo(0);
+	enablenpc "Hiding researcher#" + strnpcinfo(2);
+	npctalk "Arrrgh!", "Hiding researcher#" + strnpcinfo(2);
+	cutin "16loo_02.bmp",0;
+	mes "[Rookie]";
+	mes "Let me take him out!";
+	mes "Seems like there are still some researchers hiding like this.";
+	setquest .@quest_id;
+	initnpctimer;
+	for ( .@quest_id = 7752; .@quest_id < 7760 && .@quest_count < 3; .@quest_id++ )
+		.@quest_count += isbegin_quest(.@quest_id);
+	if (.@quest_count < 3)
+		mes "Please do us another little favor!";
+	else {
+		mes "^4d4dffYou can stop searching and take a rest!^000000";
+		mes "We will search for the rest of them.";
+		setquest 7760;	// Well hidde
+		for ( .@quest_id = 7752; .@quest_id < 7760; .@quest_id++ ) {
+			if (isbegin_quest(.@quest_id) == 1)
+				erasequest .@quest_id;
+		}
+	}
+	close2;
+	disablenpc "Hiding researcher#" + strnpcinfo(2);
+	cutin "",255;
+	end;
+OnTimer30000:
+	enablenpc strnpcinfo(0);
+	disablenpc "Hiding researcher#" + strnpcinfo(2);
+	stopnpctimer;
+	end;
+}
+
+slabw01,235,137,3	script	Hiding researcher#hide01	4_M_ALCHE_A,{
+	end;
+OnInit:
+	disablenpc strnpcinfo(0);
+	end;
+}
+
+slabw01,254,131,3	duplicate(Suspicious cabinet#hide01)	Suspicious cabinet#hide02	4_ENERGY_WHITE
+slabw01,254,131,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide02	4_M_ALCHE_A
+
+slabw01,247,111,3	duplicate(Suspicious cabinet#hide01)	Suspicious gap#hide03	4_ENERGY_WHITE
+slabw01,247,111,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide03	4_M_ALCHE_A
+
+slabw01,255,63,3	duplicate(Suspicious cabinet#hide01)	Suspicious gap#hide04	4_ENERGY_WHITE
+slabw01,255,63,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide04	4_M_ALCHE_A
+
+slabw01,179,58,3	duplicate(Suspicious cabinet#hide01)	Suspicious desk#hide05	4_ENERGY_WHITE
+slabw01,180,57,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide05	4_M_ALCHE_A
+
+slabw01,143,100,3	duplicate(Suspicious cabinet#hide01)	Suspicious test_tube#hide06	4_ENERGY_WHITE
+slabw01,143,100,3	duplicate(Hiding researcher#hide01)	Researcher inside a test#hide06	4_M_ALCHE_A
+
+slabw01,247,34,3	duplicate(Suspicious cabinet#hide01)	Suspicious bookshelf#hide07	4_ENERGY_WHITE
+slabw01,247,34,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide07	4_M_ALCHE_A
+
+slabw01,231,125,3	duplicate(Suspicious cabinet#hide01)	Suspicious trash can#hide08	4_ENERGY_WHITE
+slabw01,231,124,3	duplicate(Hiding researcher#hide01)	Hiding researcher#hide08	4_M_ALCHE_A
+
+
+slabw01,103,66,3	script	Ben#16nego02	4_M_REBELLION,5,5,{
+	end;
+OnTouch:
+	npctalk "Be careful when you pass there. There is some high-voltage current.";
+	end;
+}
+
+slabw01,79,97,3	script	Maymay#16nego02	4_F_REBELLION3,{
+	npctalk "That rail looks live a backbone of a huge creature.";
+	end;
+}
+
+slabw01,143,138,7	script	Grinder#16nego02	4_M_REBELLION,{
+	npctalk "Look at this mark. What happened?";
+	sleep2 2000;
+	npctalk "Don't think about it.", "Fang#16nego02";
+	sleep2 2000;
+	npctalk "I guess it will appear in my dream forever.";
+	sleep2 2000;
+	npctalk "Focus! Focus during the mission!", "Fang#16nego02";
+	end;
+}
+
+slabw01,144,139,5	script	Fang#16nego02	4_F_REBELLION3,{
+	npctalk "Anything special?";
+	sleep2 2000;
+	npctalk "Yes. I've checked this place lately.", "Grinder#16nego02";
+	sleep2 2000;
+	npctalk "Good. Stand by here until you receive the next order.";
+	end;
+}
+
+slabw01,214,139,5	script	Danae#16nego02	4_F_REBELLION2,{
+	npctalk "A restaurant in such a place. I wonder if they ever managed to swallow food.";
+	sleep2 2000;
+	npctalk "Oh... it doesn't sound very nice.";
+	end;
+}
+
+slabw01,245,74,3	script	Denny#16nego04	4_M_REBELLION3,{
+	npctalk "They must have been in a hurry. Everything is left here.";
+	sleep2 2000;
+	npctalk "This place has been occupied by Superstar Denny. Go somewhere else!";
+	end;
+}
+
+slabw01,229,47,7	script	Cyan#16nego03	4_F_REBELLION3,{
+	npctalk "Arrgh... Every single part of my body is sore.";
+	sleep2 2000;
+	npctalk "As they told me to stand by, I can sit here.";
+	end;
+}
+
+slabw01,217,56,5	script	Magenta#16nego02	4_M_GUNSLINGER2,{
+	npctalk "They are so bad. But I feel sympathy at the same time.";
+	end;
+}
+
+slabw01,194,91,3	script	Tommy#16nego02	4_M_GUNSLINGER2,{
+	npctalk "Seems like the situation has been settled here. Shall we take a look around?";
+	sleep2 2000;
+	npctalk "Although we look around, we know nothing.";
+	end;
+}
+
+
+// twin quests
+rebel_in,105,54,5	script	Ilya Lebedev#16.2rm	4_M_ILYA,{
+	if (lebedev_quest_16_2 < 11) {
+		switch( rand(4) ) {
+		case 0:
+			mes "The boy with silver hairs looked at me. He frowned and turned his head.";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "......";
+			next;
+			mes "Although you talk to him, he would not listen at all.";
+			mes "Seems like it's easier to talk to the girl.";
+			close;
+		case 1:
+			mes "[Ilya Lebedev]";
+			mes ".........";
+			next;
+			mes "[Ilya Lebedev]";
+			mes ".....................";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "...................................................";
+			next;
+			mes "He held his lips tight and looking at me.";
+			mes "Seems like it's easier to talk to the girl.";
+			close;
+		case 2:
+			mes "[Ilya Lebedev]";
+			mes "......Don't talk to Jana.";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "......";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "Don't talk to me either.";
+			next;
+			mes "He held his lips tight with a stubborn face..";
+			mes "Seems like it's easier to talk to the girl.";
+			close;
+		case 3:
+			mes "[Ilya Lebedev]";
+			mes "Jana... You're cute even when you're breathing...";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "...?!!!";
+			mes "Why did you overhear me?";
+			next;
+			mes "He is furious. But he's the one who said that loud...";
+			mes "Seems like it's easier to talk to the girl.";
+			close;
+		}
+	}
+	switch( rand(4) ) {
+	case 0:
+		mes "[Ilya Lebedev]";
+		mes "Adventurer, could you please ask Jana?";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "I mean.... how much she likes her older brother...";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Ilya, I heard that.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Gosh! No, no... I was just...!!";
+		close;
+	case 1:
+		mes "[Ilya Lebedev]";
+		mes "I made cookies together with Jana. Yesterday, we read a book together. Tomorrow we will explore the dead mine...";
+		next;
+		mes "Ilya Lebedev is be excited and boasting about what happened.";
+		close;
+	case 2:
+		mes "[Ilya Lebedev]";
+		mes "I want to be called by my first name, Ilya...";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "I mean... by Jana. Not by you.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Sometimes I wish she calls me 'brother'...";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Jana calls you Older " + ( Sex ? "brother" : "sister" ) + ". And why does she call me Ilya...?!";
+		close;
+	case 3:
+		mes "[Ilya Lebedev]";
+		mes "Shooting? I like it. But it's not the only reason I practice it.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Because I have to support Jana. I will shoot anyone who puts a hand on Jana.";
+		next;
+		mes "Ilya Lebedev looks quite excited.";
+		close;
+	}
+}
+
+rebel_in,109,54,3	script	Jana Levedeva#16.2rm	4_F_ANYA,{
+	if (lebedev_quest_16_2 == 0) {
+		mes "[Jana Levedeva]";
+		mes "I don't want to be treated as a child.";
+		mes "Do not stroke my head.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Ilya is the only one who can call me Jana.";
+		mes "Call me Lebedeva.";
+		close;
+	}
+	if (lebedev_quest_16_2 == 1) {
+		mes "[Jana Levedeva]";
+		mes "......Who are you?";
+		mes "You don't look like Rebellion.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You are right. I'm an adventurer.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "How did an adventurer come in here?";
+		next;
+		npctalk "Jana Levedeva: Oops, you are...", "", bc_self;
+		mes "[Jana Levedeva]";
+		mes "Are you the adventurer who defeated our commander?";
+		mes "So you're the one from the Secret Wings, aren't you?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Huhu, the old guys here hate the Secret Wings, but we don't care.";
+		mes "Since we want to fight hard in a mission, we welcome your proposal.";
+		next;
+		npctalk "Ilya Lebedev: Me too!", "Ilya Lebedev#16.2rm", bc_self;
+		mes "[Ilya Lebedev]";
+		mes "Whatever Jana likes, I like it too.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Have you brought any story filled with gunpowder?";
+		mes "...Well, we cannot be involved in the mission anyway.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "You are still young.";
+		next;
+		emotion ET_FRET;
+		mes "[Jana Levedeva]";
+		mes "...We'll become adults in the near future.";
+		mes "We are not that much younger compared to other people here. Does putting on several years make any diffrence?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "They all know that we have better abilities than adults.";
+		mes "If it wasn't for one thing... No, never mind.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "It's so annoying...";
+		mes "Ilya, tell the adventurer to go away.";
+		next;
+		npctalk "Ilya Lebedev: Don't worry, Jana.", "Ilya Lebedev#16.2rm", bc_self;
+		mes "[Ilya Lebedev]";
+		mes "Please leave.";
+		mes "We don't want to talk to you any more.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(So they started to hate me pretty early... What should I do?";
+		mes "Maybe I have to listen to ^0000CDRebellions around them^000000.)";
+		erasequest 16012;// Troublesome twin
+		setquest 16013;// Testimony: Chef's story
+		setquest 16014;// Testimony: Sniper's story
+		lebedev_quest_16_2 = 2;
+		close;
+	}
+	if (lebedev_quest_16_2 == 2 || lebedev_quest_16_2 == 3) {
+		emotion ET_FRET;
+		mes "[Jana Levedeva]";
+		mes "Ah, Ilya. That person keeps irritating me.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Please leave.";
+		mes "I won't forgive you if you distress Jana.";
+		close;
+	}
+	if (lebedev_quest_16_2 == 4) {
+		mes "[Jana Levedeva]";
+		mes "You're here again?";
+		mes "We don't want to talk.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(Ask them about the incident that happened in the past...)";
+		next;
+		if (select( "Ask them directly.", "Beat around the bush." ) == 1) {
+			mes "[" + strcharinfo(0) + "]";
+			mes "Did you throw a grenade to the civilian zone during your actual mission?";
+			mes "Why did you do that?";
+			next;
+			mes "[Jana Levedeva]";
+			mes "What...!!";
+			next;
+			npctalk "Ilya Lebedev: ...What, what the hell!", "Ilya Lebedev#16.2rm", bc_self;
+			mes "[Ilya Lebedev]";
+			mes "Where did you hear this story!";
+			mes "Hey, why are you saying that?";
+			next;
+			npctalk "Jana Levedeva: Well, that was...";
+			emotion ET_ANGER, getnpcid(0, "Ilya Lebedev#16.2rm");
+			mes "[Ilya Lebedev]";
+			mes "Get lost! Stay away from Jana!";
+			emotion ET_SMILE;
+			npctalk "Jana Levedeva: I, I...";
+			npctalk "Ilya Lebedev: Don't listen, Jaja...!!", "Ilya Lebedev#16.2rm", bc_self;
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(......Looks like a huge mistake. Let's go back to ^0000CDElena Bolkova^000000.)";
+		}
+		else {
+			mes "[" + strcharinfo(0) + "]";
+			mes "There's something I would like to ask you.";
+			mes "I asked others and they say you were...";
+			next;
+			mes "[Jana Levedeva]";
+			mes "...Why do you pry into our private affairs?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I didn't pry into anything. I mean, they told me you look very tired these days...";
+			next;
+			mes "[Jana Levedeva]";
+			mes "We are tired because someone is irritating us.";
+			npctalk "Ilya Lebedev: ......", "Ilya Lebedev#16.2rm", bc_self;
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(......This is getting difficult. Let's go back to ^0000CDElena Bolkova^000000.)";
+		}
+		setquest 16015;// The cause of failure is a careless attempt
+		lebedev_quest_16_2 = 5;
+		questinfo_refresh();
+		close;
+	}
+	if (lebedev_quest_16_2 == 5 || lebedev_quest_16_2 == 6) {
+		mes "[Jana Levedeva]";
+		mes "We don't want to talk to you. Just leave.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(...I guess they really hate me now.)";
+		close;
+	}
+	if (lebedev_quest_16_2 == 7) {
+		if (countitem(25161) < 1) {
+			mes "[Jana Levedeva]";
+			mes "You're here again?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "( I did take the cookie... Where is it?";
+			mes "Let's go back to Ericsson and talk to him.)";
+			close;
+		}
+		mes "[" + strcharinfo(0) + "]";
+		mes "Hello, guys?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "...Do you have so much free time? Why do you keep stalking us?";
+		next;
+		if (select( "There's something I would like to tell you.", "Want some cookie?" ) == 1) {
+			mes "[Jana Levedeva]";
+			mes "I don't want to hear it.";
+			mes "Unless you pay us 1 million Zeny for listening to your story, leave now.";
+			close;
+		}
+		mes "[Jana Levedeva]";
+		mes "I don't know what you are up to. But we...";
+		mes "...Wait, where did you get this cookie?";
+		npctalk "Jana Levedeva: This cookie basket, grandma Lucy...?", "", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Someone you know well told me to give this to you.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "......Commander Adler?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "And he also said this.";
+		mes "Trust me. And tell the adventurer if you have any problem.";
+		mes "This is my request. Could you please tell me?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "......What...";
+		mes "That.. is a lie. How can I trust an adventurer...?";
+		npctalk "Jana Levedeva: Do you think you can lure us with a cookie?", "", bc_self;
+		npctalk "Ilya Lebedev: Jana...", "Ilya Lebedev#16.2rm", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "As I told you earlier, please think about commander Adler.";
+		mes "He's so worried about you. So am I, and so is commander Bolkova.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "We...";
+		mes "No. We won't tell you.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Please tell me one thing.";
+		mes "I heard you didn't ruin yourself like this before.";
+		mes "Why do you keep hurting yourself?";
+		next;
+		mes "[Jana Levedeva]";
+		npctalk "Jana Levedeva: Oh...", "", bc_self;
+		mes "Why do you say that? What do you know about us?";
+		mes "You know nothing!";
+		next;
+		mes "[Jana Levedeva]";
+		mes "...I was so..";
+		mes "scared...... so...";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Scared...?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "And then... I got out of shape...";
+		mes "So I was scared... I did so... on purpose... sniffle.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "......";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "I'm sure you know what happened during our first mission... not long ago.";
+		mes "After that. Jana had such a hard time.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Because Jana and I had been so confident that we would do well.";
+		mes "Then it happened... and we... were so miserable.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Sniffle. We didn't throw the grenade on purpose and we didn't enjoy it either. It's out fault. But, but...";
+		next;
+		mes "[Jana Levedeva]";
+		mes "We were punished and moved to USU... Then we felt that everyone else regards us as horrible kids.";
+		npctalk "Jana Levedeva: Actually, we heard some people saying so. Even some people who don't know us said such things.", "", bc_self;
+		next;
+		mes "[Ilya Lebedev]";
+		mes "We wanted to talk to commander Ericsson. But we couldn't, because we were assigned to another unit.";
+		next;
+		mes "[Jana Levedeva]";
+		mes "We had no idea what to do. We just wanted to run away. Because everyone was blaming us and disappointed at us...";
+		mes "But we liked our unit and commander Ericsson...";
+		next;
+		mes "[Jana Levedeva]";
+		mes "We thought that we had already ruined everything.";
+		mes "As everyone was already disappointed at us, we thought we could do whetever...";
+		npctalk "Ilya Lebedev: That's why we acted at our pleasure, thinking that we would be discharged soon.", "Ilya Lebedev#16.2rm", bc_self;
+		next;
+		mes "[Jana Levedeva]";
+		mes "As we acted at our pleasure, things got worse and worse... So we were sacred...";
+		mes "Then we began to believe that we were the worst and hopeless kids...";
+		npctalk "Ilya Lebedev: So we thought that we would be left away again...", "Ilya Lebedev#16.2rm", bc_self;
+		next;
+		mes "[Ilya Lebedev]";
+		mes "It's just our excuse that nobody stopped us...";
+		mes "I'm sorry to have troubled you...";
+		next;
+		mes "[Jana Levedeva]";
+		mes "I'm... sorry too...";
+		npctalk "Ilya Lebedev: And thank you....", "Ilya Lebedev#16.2rm", bc_self;
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "That's what happened... Now I know you suffered a lot.";
+		mes "Can I tell this to your commander?";
+		mes "Of course I won't tell anyone else.";
+		next;
+		npctalk "Ilya Lebedev: Yes. please.", "Ilya Lebedev#16.2rm", bc_self;
+		npctalk "Jana Levedeva: Yes...", "", bc_self;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(You heard their story. Let's go to ^0000CDElena Bolkova^000000 and tell her.)";
+		lebedev_quest_16_2 = 8;
+		delitem 25161,1;// Handmade_cookie2
+		erasequest 16033;// Bring dessert and listen the story
+		setquest 16017;// Twin's sincere confession
+		close;
+	}
+	if (lebedev_quest_16_2 == 8) {
+		mes "[Jana Levedeva]";
+		mes "......";
+		mes "We'll be scolded...";
+		mes "But we have no choice. It's our fault. Please report to our commander.";
+		npctalk "Jana Levedeva: What if she tells us to leave this unit...?", "", bc_self;
+		close;
+	}
+	if (lebedev_quest_16_2 == 9) {
+		mes "[Jana Levedeva]";
+		mes "Call from USU commander?";
+		mes "She will tell us that story...";
+		next;
+		emotion ET_THINK;
+		mes "[Jana Levedeva]";
+		mes "We'll be kicked out...?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I'm coming with you. I will defend you.";
+		next;
+		mes "[Ilya Lebedev]";
+		mes "Thank you...";
+		mes "...I hope Jana cheers up.";
+		erasequest 16018;// Encourage instead of punishment
+		setquest 16019;// Elena Volkova's Solution
+		lebedev_quest_16_2 = 10;
+		questinfo_refresh();
+		close;
+	}
+	if (lebedev_quest_16_2 == 10) {
+		mes "[Jana Levedeva]";
+		mes "Yes, I'm coming!";
+		next;
+		mes "[Jana Levedeva]";
+		mes "I'm scared what she's going to tell us... But we will still meet her.";
+		npctalk "Ilya Lebedev: It's all our fault anyway.", "Ilya Lebedev#16.2rm", bc_self;
+		close;
+	}
+	.@genre$ = Sex ? "brother" : "sister";
+	switch( checkquest(16020,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		mes "[Jana Levedeva]";
+		mes "Oh, It's Older " + .@genre$ + " " + strcharinfo(0) + " !";
+		mes "By the way, we are quite sleepy now after wandering around all day long...";
+		mes "I wonder it's already time for us to be sleepy. Let's play together tomorrow...Zzz";
+		close;
+	case 2:
+		erasequest 16020;// Daily babysitting
+		break;
+	}
+	setarray .@quest_id[0], 16021, 16023, 16025, 16026, 16027;
+	setarray .@quest_list[0], 16021, 16023, 16024, 16025, 16026, 16027;
+
+	.@size_quest_list = getarraysize( .@quest_list );
+	for ( .@i = 0; .@i < .@size_quest_list && isbegin_quest(.@quest_list[.@i]) == 0; .@i++ )
+		continue;
+	if (.@i == .@size_quest_list) {
+		mes "[Jana Levedeva]";
+		mes "Oh, It's Older " + .@genre$ + " " + strcharinfo(0) + " !";
+		mes "Have you come to play with us? Or for another business?";
+		next;
+		if (select( "I have come to play with you!", "I have come for another business. But I wanted to say hello." ) == 2) {
+			mes "[Jana Levedeva]";
+			mes "I see... If you are busy, we shouldn't bother you.";
+			mes "But please don't go away without coming back to us.";
+			close;
+		}
+		emotion ET_SMILE;
+		mes "[Jana Levedeva]";
+		mes "Wow! Really?";
+		mes "But Older " + .@genre$ + " the truth is that you are not playing with us. Older " + .@genre$ + " we are playing with you. Haha!";
+		mes "Hmm... What are we going to do?";
+		next;
+		.@r = rand( getarraysize( .@quest_id ) );
+		switch( .@quest_id[.@r] ) {
+		case 16021:
+			mes "[Jana Levedeva]";
+			mes "Hmm.. Commander Elena told us to make a hobby.";
+			mes "I guess reading is a fine hobby. Isn't it?";
+			next;
+			mes "[Jana Levedeva]";
+			mes "Please borrow a book for us from the juvenile section of Prontera library.";
+			mes "The book's name is... ^0000CDIt's dizzy after being shaken 1,000 times^000000. Please borrow this for me.";
+			npctalk "Ilya Lebedev: They say it's such a famous book.", "Ilya Lebedev#16.2rm", bc_self;
+			setquest 16021;// Service: Book lending agent
+			next;
+			mes "[Jana Levedeva]";
+			mes "The juvenile corner of the Prontera library has designated rental system. You can ask the ^0000CDlibrarian in charge of juveniles^000000.";
+			close;
+		case 16022:
+			mes "[Jana Levedeva]";
+			mes "Hmm.. Commander Elena told us to make a hobby.";
+			mes "I guess reading is a fine hobby. Isn't it?";
+			next;
+			mes "[Jana Levedeva]";
+			mes "Please rent a book for us from the juvenile section of Prontera Library.";
+			mes "The book's name is... ^0000CDRebellion, the history of liberty^000000. Please borrow this book for me.";
+			npctalk "Ilya Lebedev: After looking at its name, I feel like I must read it.", "Ilya Lebedev#16.2rm", bc_self;
+			setquest 16022;// Service: Book lending agent
+			next;
+			mes "[Jana Levedeva]";
+			mes "The juvenile corner of the Prontera library has designated rental system. You can ask the ^0000CDlibrarian in charge of juveniles^000000.";
+			close;
+		case 16023:
+			mes "[Jana Levedeva]";
+			mes "Hmm.. Commander Elena told us to make a hobby.";
+			mes "I guess reading is a fine hobby. Isn't it?";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "I would be glad if borrow a book for me from the juvenile section of Prontera library.";
+			mes "The book's name is... ^0000CDNorgroad Horizon^000000.";
+			npctalk "Ilya Lebedev: It's about the great adventurer who explores Norgroad.", "Ilya Lebedev#16.2rm", bc_self;
+			setquest 16023;// Service: Book lending agent
+			next;
+			mes "[Jana Levedeva]";
+			mes "The juvenile corner of the Prontera library has designated rental system. You can ask the ^0000CDlibrarian in charge of juveniles^000000.";
+			close;
+		case 16025:
+			mes "[Jana Levedeva]";
+			mes "Today, we would like to go to Einbech mine to research explosives. But I guess it would be dangerous if only two of us go there.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "You mean, you're dangerous for the mine? Right?";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "No! How can you say that? There are so many dangerous monsters in the mine!";
+			mes "And Jana says she's curious to see if there are materials suitable for our research...";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "Therefore Older " + .@genre$ + " please implement a previous exploration for us.";
+			mes "Please defeat 30 Pitman in Einbech mine and bring us a Gun Powder.";
+			mes "Older " + .@genre$ + " I'm sure this is a piece of cake for you. We will count on you!";
+			npctalk "Ilya Lebedev: We will count on you!", "Ilya Lebedev#16.2rm", bc_self;
+			setquest 16026;// Service: Exploring the Mine Dungeon
+			close;
+		case 16026:
+			mes "[Jana Levedeva]";
+			mes "Today, we would like to go to Einbech mine to research explosives. But I guess it would be dangerous if only two of us go there.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "You mean, you're dangerous for the mine? Right?";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "No! How can you say that? There are so many dangerous monsters in the mine!";
+			mes "And Jana says she's curious to see if there are materials suitable for our research...";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "So we'd like to request you to implement a previous exploration.";
+			mes "Please defeat 20 Venomous and 20 Noxious in Einbech mine and bring us one Explosive Powder.";
+			mes "I know this will be cumbersome. But we will count on you.";
+			npctalk "Jana Levedeva: Please!";
+			setquest 16026;// Service: Exploring the Mine Dungeon
+			close;
+		case 16027:
+			emotion ET_DELIGHT;
+			mes "[Jana Levedeva]";
+			mes "Older " + .@genre$ + ", Older " + .@genre$ + "! We made some cookies!";
+			mes "Of course we didn't do the entire cooking... Milo prepared ingredients and the cooking space.";
+			next;
+			mes "[Jana Levedeva]";
+			mes "It tastes good! Certainly not better than those cooked by grandma Lucy. But it's still wonderful.";
+			next;
+			npctalk "I prefer the cookies of Lucy, but I should start eating these.";
+			mes "[Jana Levedeva]";
+			mes "Older " + .@genre$ + " Please have some! Older " + .@genre$ + " This is for you... And could you please these five bundles to people around you?";
+			next;
+			mes "[Jana Levedeva]";
+			mes "To Milo, Mason and Rachel.";
+			mes "And to commander Adler and commander Elena as well, please.";
+			mes "Make sure you tell them we made these.";
+			if (checkweight(25161,5) == 0) {
+				next;
+				mes "[Jana Levedeva]";
+				mes "You don't have enough space in your bag.";
+				mes "Please make some space. We don't want the cookies to get broken.";
+				close;
+			}
+			getitem 25161,5;// Handmade_cookie2
+			setquest 16027;// Service: Cookies delivery
+			setquest 16028;// Service: Cookies delivery
+			setquest 16029;// Service: Cookies delivery
+			setquest 16030;// Service: Cookies delivery
+			setquest 16031;// Service: Cookies delivery
+			close;
+		}
+		end;
+	}
+	switch( .@quest_list[.@i] ) {
+	case 16021:
+		mes "[Jana Levedeva]";
+		mes "Did you forget what I asked you to borrow? It's dizzy after being shaken 1,000 times!";
+		mes "Last time I went there with Ilya, the librarian at juvenile section found it for me...";
+		close;
+	case 16022:
+		mes "[Jana Levedeva]";
+		mes "Did you forget what I asked you to borrow? 'Rebellion, the history of liberty'!";
+		mes "Last time I went there with Ilya, the librarian at juvenile section found it for me...";
+		close;
+	case 16023:
+		mes "[Ilya Lebedev]";
+		mes "Norgroad Horizon, please.";
+		mes "If you tell the book name to the librarian, he/she will hand it you.";
+		close;
+	case 16024:
+		if (countitem(25160) < 1) {
+			mes "[Jana Levedeva]";
+			mes "Oh, you're back? Please give the book!";
+			mes "The book... You don't have it? Don't tell me you lost it.";
+			next;
+			mes "[Jana Levedeva]";
+			mes "If you lost it... You have to go to the library and report of the loss of that book.";
+			close;
+		}
+		mes "[" + strcharinfo(0) + "]";
+		mes "I'm back. Here's the book.";
+		mes "So you'll return it yourself?";
+		next;
+		mes "[Jana Levedeva]";
+		mes "Wow! I wanted to read this!";
+		mes "Thank you, Older " + .@genre$ + "! Older " + .@genre$ + " do you want me to read this book for you? This must be exciting!";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(Hmm, she's not mentioning about returning it.)";
+		erasequest 16024;// Service: Loaned book delivery
+		setquest 16020;// Daily babysitting
+		delitem 25160,1;// Borrow_Book
+		getexp 200000,200000;
+		getitem 25155,3;// Swz_Honor_Token
+		close;
+	case 16025:
+		if (checkquest(.@quest_list[.@i],HUNTING) != 2 || countitem(6244) < 1) {
+			mes "[Jana Levedeva]";
+			mes "Oh! We're going to Einbech mine. Please implement a previous exploration for us.";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "Please defeat 30 Pitman in Einbech mine and bring us a Gun Powder.";
+			mes "We are about to experiment the degree of firepower in reference to the amount of Gun Powder!";
+			close;
+		}
+		mes "[Ilya Lebedev]";
+		mes "Thank you for doing us a favor!";
+		mes "About the result, I will inform you later!";
+		delitem 6244,1;// Gun_Powder
+		erasequest 16025;// Service: Exploring the Mine Dungeon
+		setquest 16020;// Daily babysitting
+		getexp 200000,200000;
+		getitem 25155,3;// Swz_Honor_Token
+		close;
+	case 16026:
+		if (checkquest(.@quest_list[.@i],HUNTING) != 2 || countitem(6213) < 1) {
+			mes "[Jana Levedeva]";
+			mes "Oh! We're going to Einbech mine. Please implement a previous exploration for us.";
+			next;
+			mes "[Ilya Lebedev]";
+			mes "Please defeat 20 Venomous and 20 Noxious in Einbech mine and bring us one Explosive Powder.";
+			mes "Jana is researching whether we can apply the Explosive Powder to grenades.";
+			close;
+		}
+		mes "[Ilya Lebedev]";
+		mes "Thank you for doing us a favor!";
+		mes "Jana says she will inform you about the result after the experiment!!";
+		delitem 6213,1;// Explosive_Powder
+		erasequest 16026;// Service: Exploring the Mine Dungeon
+		setquest 16020;// Daily babysitting
+		getexp 200000,200000;
+		getitem 25155,3;// Swz_Honor_Token
+		close;
+	case 16027:
+		for ( .@i = 16027; .@quest_id <= 16031; .@quest_id++ ) {
+			if (isbegin_quest(.@quest_id) == 1)
+				.@cookie++;
+		}
+		if (.@cookie > 0) {
+			mes "[Jana Levedeva]";
+			mes "Please bring them to the five people I mentioned.";
+			mes "They are Milo, Mason, Rachel, commander Ericsson and commander Elena.";
+			if (countitem(25161) < 1) {
+				next;
+				mes "[Jana Levedeva]";
+				mes "Oh, did you eat all those cookies?";
+				mes "You liked them, didn't you?";
+				mes "Oh, come on. How can you eat all of them!";
+				next;
+				mes "[Jana Levedeva]";
+				mes "We will give you some more. Make sure you bring them to those five people please.";
+				mes "Glutton " + strcharinfo(0) + " Older " + .@genre$ + " we will make you more cookies for you next time!";
+				getitem 25161, .@cookie;// Handmade_cookie2
+			}
+			close;
+		}
+		mes "[Jana Levedeva]";
+		mes "What did they say?";
+		mes "Did they like them? Huhu.";
+		mes "Don't you think I'm good at cooking?";
+		erasequest 16027;// Service: Cookies delivery
+		erasequest 16028;// Service: Cookies delivery
+		erasequest 16029;// Service: Cookies delivery
+		erasequest 16030;// Service: Cookies delivery
+		erasequest 16031;// Service: Cookies delivery
+		setquest 16020;// Daily babysitting
+		getexp 200000,200000;
+		getitem 25155,3;// Swz_Honor_Token
+		close;
+	}
+	end;
+
+OnInit:
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16012) == 1" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "lebedev_quest_16_2 == 4" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "lebedev_quest_16_2 == 7 && countitem(25161) > 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16018) == 1" );
+
+	// daily
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(16020,PLAYTIME) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "lebedev_quest_16_2 > 10 && checkquest(16020,PLAYTIME) == -1 && isbegin_quest(16021) == 0 && isbegin_quest(16023) == 0 && isbegin_quest(16024) == 0 && isbegin_quest(16025) == 0 && isbegin_quest(16026) == 0 && isbegin_quest(16027) == 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16027) == 2 && isbegin_quest(16028) == 2 && isbegin_quest(16029) == 2 && isbegin_quest(16030) == 2 && isbegin_quest(16031) == 2" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "isbegin_quest(16024) == 1 && countitem(25160) > 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(16025,HUNTING) == 2 && countitem(6244) > 0" );
+	questinfo( QTYPE_QUEST, QMARK_NONE, "checkquest(16026,HUNTING) == 2 && countitem(6213) > 0" );
+	end;
+}
+
+rebel_in,70,75,1	duplicate(dummy_cloaked_npc)	Ilya Lebedev#16.2rms	4_M_ILYA
+rebel_in,69,75,1	duplicate(dummy_cloaked_npc)	Jana Levedeva#16.2rms	4_F_ANYA
+
+prt_in,165,89,1	script	Librarian in charge of juveniles 	1_F_LIBRARYGIRL,{
+	setarray .@quest_id[0], 16021,16022,16023;
+	.@size = getarraysize(.@quest_id);
+	for ( .@i = 0; .@i < .@size && isbegin_quest(.@quest_id[.@i]) == 0; .@i++ )
+		continue;
+
+	if (.@i == .@size) {
+		mes "[Librarian in charge of juveniles]";
+		mes "Hello. Welcome to Prontera library.";
+		mes "For juvenile books, only designated rental service is available.";
+		close;
+	}
+	if (isbegin_quest(16024) == 1 && countitem(25160) < 1) {
+		mes "[Librarian in charge of juveniles]";
+		mes "Have you lost the book you borrowed?";
+		mes "Yes... We accept your report of a loss.";
+		next;
+		mes "[Librarian in charge of juveniles]";
+		mes "Please be careful next time.";
+		mes "If you lose the book more than once or damage it, we may forbidthe lending to you.";
+		erasequest 16024;// Service: Loaned book delivery
+		setquest 16020;// Daily babysitting
+		close;
+	}
+	mes "[Librarian in charge of juveniles]";
+	mes "Hello. Welcome to Prontera library.";
+	mes "For juvenile books, only designated rental service is available. Which book are you looking for?";
+	next;
+	.@r = rand(3);
+	if (.@r == 0)
+		setarray .@menu$[0], "A story of 101 cookies", "No Gun No Life", "Linsa, the Owl of Wizard";
+	else if (.@r == 1)
+		setarray .@menu$[0], "My younger sister is so cute", "Record of my travel to Kunrun by foot", "The secret of the business told by Babayaga";
+	else if (.@r == 3)
+		setarray .@menu$[0], "Guidebook for food materials in Dungeon", "Famous Lasagna Restaurants", "Hair&Beauty - Fairy's edition";
+
+	switch( .@quest_id[.@i] ) {
+	case 16021:
+		.@right_answer = 0;
+		.@menu$[0] = "It's dizzy after being shaken 1,000 times.";
+		break;
+	case 16022:
+		.@right_answer = 1;
+		.@menu$[1] = "Rebellion, the history of liberty";
+		break;
+	case 16023:
+		.@right_answer = 2;
+		.@menu$[2] = "Norgroad Horizon";
+		break;
+	}
+
+	.@s = select( .@menu$[0], .@menu$[1], .@menu$[2], "Nothing." ) - 1;
+	if (.@s == 3) {
+		mes "[Librarian in charge of juveniles]";
+		mes "Prontera library always welcomes juveniles who read books.";
+		close;
+	}
+	if (.@s != .@right_answer) {
+		mes "[Librarian in charge of juveniles]";
+		mes "" + .@menu$[.@s] + ", That book? Please wait a minute.";
+		next;
+		mes "[Librarian in charge of juveniles]";
+		mes "The book you wanted is out on loan now. Please use another book.";
+		close;
+	}
+	mes "[Librarian in charge of juveniles]";
+	mes "" + .@menu$[.@right_answer] + "? Please wait a minute.";
+	next;
+	mes "[Librarian in charge of juveniles]";
+	mes "Yes. Here it is. Please abide by the deadline.";
+	erasequest .@quest_id[.@i];
+	setquest 16024;// Service: Loaned book delivery
+	getitem 25160,1;// Borrow_Book
+	close;
+}
+
+// Items Quests given by Small Leather Bag (ID: 23087) - not repeatable
+prt_in,177,26,6	script	Knight Windsor#ep162	4_M_JOB_KNIGHT1,{
+	switch( isbegin_quest(7746) ) {
+	case 0:
+		if (countitem(25180) < 1)
+			break;
+		mes "[Benedict Windsor]";
+		mes "What is it?";
+		next;
+		if (select( "Give him the ring.", "Do you come here often?" ) == 2) {
+			mes "[Benedict Windsor]";
+			mes "Teaching juniors after retirement, I think of my son every now and then.";
+			next;
+			mes "[Benedict Windsor]";
+			mes "... And my wife who passed away, too.";
+			mes "I also think of my daughter.";
+			next;
+			mes "You gave him the ring.";
+			next;
+		}
+		mes "[Benedict Windsor]";
+		mes "... This ... ring is ...";
+		next;
+		mes "[Benedict Windsor]";
+		mes "Poor fellow.";
+		mes "In the end, this is the way you come back.";
+		next;
+		mes "[Benedict Windsor]";
+		mes "I was expecting this.";
+		mes "When I found his Pecopeco, I knew something was wrong.";
+		next;
+		mes "[Benedict Windsor]";
+		mes "But as I didn't see it with my eyes,";
+		mes "I had a slight hope in my mind.";
+		next;
+		mes "[Benedict Windsor]";
+		mes "....";
+		mes "... Should I welcome you, to see you again like this?";
+		next;
+		mes "[Benedict Windsor]";
+		mes "... Thanks.";
+		mes "...";
+		delitem 25180,1;// Old_Couple_Ring
+		setquest 7746;// A pair of old rings
+		completequest 7746;// A pair of old rings
+		getexp 100000,100000;
+		close;
+	case 1:
+	case 2:
+		break;
+	}
+	switch( isbegin_quest(7747) ) {
+	case 0:
+		if (countitem(25185) < 1)
+			break;
+		mes "[Benedict Windsor]";
+		mes "... That rocket belongs to Cheiron.";
+		mes "When they told me they would take them to Geffen's Magic_tower ...";
+		next;
+		mes "[Benedict Windsor]";
+		mes "I thought they would take good care of them.";
+		mes "... Why should my children end up like this?";
+		next;
+		mes "[Benedict Windsor]";
+		mes "What should I do now?";
+		mes "My wife and children have passed away.";
+		mes "What can I do ...";
+		next;
+		mes "[Benedict Windsor]";
+		mes "You ...";
+		mes "......";
+		delitem 25185,1;// Locket_Pendant
+		setquest 7747;// Locket Pendant
+		completequest 7747;// Locket Pendant
+		getexp 100000,100000;
+		close2;
+		npctalk "... Please be alive.", "", bc_self;
+		end;
+	case 1:
+	case 2:
+		npctalk "I wish it had been a dream ...", "", bc_self;
+		end;
+	}
+	end;
+}
+
+prt_monk,93,254,3	script	Sister Margaret#ep162	1_F_PRIEST,{
+	switch( isbegin_quest(7748) ) {
+	case 0:
+		if (countitem(25181) < 1) {
+			mes "[Margaret]";
+			mes "Shrines and convents have a very close relationship.";
+			mes "They come to help us like this frequently.";
+			close;
+		}
+		mes "[Margaret]";
+		mes "What brings you here?";
+		next;
+		select("Hands Rosary.");
+		mes "[Margaret]";
+		mes "I know this stuff.";
+		mes "This is the Rosary that she was holding tightly in her small hand when she first came to this convent.";
+		next;
+		mes "[Margaret]";
+		mes "I can faintly feel the spirit of that girl, Sorin.";
+		mes "She's grown up a lot.";
+		next;
+		mes "[Margaret]";
+		mes "She was a tomboy. But since she met Seyren, she often pretended to be modest.";
+		next;
+		mes "[Margaret]";
+		mes "Jooshin loved the girl a lot, and she was taken so early.";
+		mes "....";
+		next;
+		mes "[Margaret]";
+		mes "... Thank you very much for giving this to me.";
+		mes "May the blessing of Jooshin be with you forever.";
+		delitem 25181,1;// Wood Rosary
+		setquest 7748;// Wooden Rosary
+		completequest 7748;// Wooden Rosary
+		getexp 100000,100000;
+		close;
+	case 1:
+	case 2:
+		mes "[Margaret]";
+		mes "I used to visit the Capitolina convent with Sorin quite often.";
+		mes "With her high-spirited personality, she got along quite well with the monks.";
+		next;
+		mes "[Margaret]";
+		mes "She also came here to relax when she needed some rest ...";
+		next;
+		mes "[Margaret]";
+		mes "... even though the path is quite rough.";
+		mes "If you are going back now, do you want me to send you to Prontera?";
+		next;
+		if (select( "Yes, please.", "No thank you." ) == 2) {
+			mes "[Margaret]";
+			mes "If you need it later, do not hesitate to tell me.";
+			close;
+		}
+		mes "[Margaret]";
+		mes "... Bye.";
+		close2;
+		warp "prontera",156,119;
+		end;
+	}
+}
+
+yuno_in01,163,31,3	script	Blacksmith Cleaver#ep16	4_TOWER_17,{
+	switch( isbegin_quest(7749) ) {
+	case 0:
+		if (countitem(25183) < 1) {
+			mes "[Cleaver]";
+			mes "You can smelt your gears over there.";
+			mes "I don't take requests for personal production or smelting.";
+			close;
+		}
+		mes "[Cleaver]";
+		mes "Who's there? A shopper?";
+		mes "I don't accept personal production requests.";
+		next;
+		mes "[Cleaver]";
+		mes "Wait, can I see that Thimble Of Archer?";
+		mes "This decoration is ...";
+		next;
+		mes "[Cleaver]";
+		mes "Hey! What happened to Alt?";
+		mes "He made this decoration for the Thimble Of Archer when he visited here for the last time.";
+		next;
+		mes "[Cleaver]";
+		mes "A jewel decoration on a Thimble Of Archer! I know it sounds crazy. But it took him several days ? he didn't even sleep!";
+		next;
+		mes "[Cleaver]";
+		mes "Since he was having a hard time making it, I was willing to help him. But he still made this Thimble Of Archer alone ...";
+		next;
+		mes "[Cleaver]";
+		mes "Why do you have this?";
+		next;
+		select("It's a relic.");
+		mes "[Cleaver]";
+		mes "... What?";
+		mes "No ... Wait ... Wait a minute";
+		mes "I heard some rumors. I did ...";
+		next;
+		mes "[Cleaver]";
+		mes "But I still believed that no news is good news ...";
+		mes "In this way, all of a sudden ...";
+		next;
+		mes "[Cleaver]";
+		mes "... What ... What a fool.";
+		mes "Why did he make a gift that he cannot even deliver?";
+		next;
+		mes "[Cleaver]";
+		mes "... Haa ...";
+		mes "Eventually, this is how it ends ...";
+		next;
+		mes "[Cleaver]";
+		mes "Thank you ... for coming all the way here.";
+		mes "I have to delay my work for a while.";
+		mes "....";
+		delitem 25183,1;// Deco_Thimble_Archer
+		setquest 7749;// Bow Thimble Decoration
+		completequest 7749;// Bow Thimble Decoration
+		getexp 100000,100000;
+		close;
+	case 1:
+	case 2:
+		mes "[Cleaver]";
+		mes "Alt has an older brother.";
+		mes "... I will give this to him.";
+		mes "Since he is in a critical moment now, I will look for a chance to give it to him.";
+		next;
+		mes "[Cleaver]";
+		mes "... Damn.";
+		mes "I cannot resume my work.";
+		close;
+	}
+}
+
+que_job01,89,91,1	script	Guile Marovitz#ep162	1_M_JOBTESTER,{
+	switch( isbegin_quest(7750) ) {
+	case 0:
+		if (countitem(25182) < 1) {
+			mes "[Guile Marovitz]";
+			mes "... If you want to become an Assassin, go east of the desert.";
+			close;
+		}
+		mes "[Guile Marovitz]";
+		mes "It's quite unusual.";
+		mes "What brought you here?";
+		next;
+		mes "[Guile Marovitz]";
+		mes "This dagger is ...";
+		mes "Right. Eremes ...";
+		mes "has finally returned.";
+		next;
+		mes "[Guile Marovitz]";
+		mes "It's been a long time since I dispatched him ... He returned too late.";
+		npctalk "......", "", bc_self;
+		next;
+		mes "[Guile Marovitz]";
+		mes "Is this mission failure or success?";
+		mes "... He is the type of guy who hates to have a mission fail.";
+		next;
+		mes "[Guile Marovitz]";
+		mes "I like guys who are serious about completing their missions. But in this case ... I wish he had just abandoned his mission and taken a vacation.";
+		next;
+		mes "[Guile Marovitz]";
+		mes "I will take him ... well.";
+		mes "Thank you.";
+		delitem 25182,1;// Assassin_PT_Dagger
+		setquest 7750;// Assassin Dagger with Glyph
+		erasequest 7750;// Assassin Dagger with Glyph
+		getexp 100000,100000;
+		close;
+	case 1:
+	case 2:
+		mes "[Guile Marovitz]";
+		mes "In this field, it is quite common to not have your companion come back after a mission.";
+		next;
+		mes "[Guile Marovitz]";
+		mes "Some lucky guys come back like this.";
+		mes "And he was quite lucky.";
+		next;
+		mes "[Guile Marovitz]";
+		mes "There's no need to be sad.";
+		mes "But it's just regrettable.";
+		mes "That's all.";
+		close;
+	}
+}
+
+payon_in03,194,39,3	script	Hunter Sherine#ep162	4_F_JOB_HUNTER,{
+	switch( isbegin_quest(7751) ) {
+	case 0:
+		if (countitem(25184) < 1) {
+			mes "[Sherine]";
+			mes "In the past, the Hunter guild was in the Payon Forest.";
+			mes "And I grew up in Payon.";
+			next;
+			mes "[Sherine]";
+			mes "That's why I visit Payon once in a while.";
+			mes "....";
+			close;
+		}
+		npctalk "......", "", bc_self;
+		unittalk getcharid(3), "" + strcharinfo(0) + " : ....", bc_self;
+		mes "[Sherine]";
+		mes "For some reason, I felt like coming here today.";
+		mes "Maybe it was for this.";
+		next;
+		mes "[Sherine]";
+		mes "My silly sister.";
+		mes "... As a matter of fact, she cannot sew well.";
+		next;
+		mes "[Sherine]";
+		mes "She can barely sew on a button.";
+		mes ".......";
+		next;
+		mes "[Sherine]";
+		mes "One day, she asked me.";
+		mes "Would it be better for me to act more like a girl?";
+		next;
+		mes "[Sherine]";
+		mes "Maybe I can just sew on a single button?";
+		next;
+		mes "[Sherine]";
+		mes "So I gave her this sewing box.";
+		mes "I don't know who she was thinking about when she took this.";
+		next;
+		mes "[Sherine]";
+		mes ".........";
+		mes "The spare button is missing.";
+		mes "... Would she have sewn it on well?";
+		next;
+		mes "[Sherine]";
+		mes "I expected this, but I never imagined this thing would come back.";
+		mes "... Since it was her choice ... I must accept this ... But ...";
+		next;
+		mes "Sherine is holding back her tears.";
+		mes "Leave her alone.";
+		next;
+		mes "[Sherine]";
+		mes "... Thank ... you ...";
+		delitem 25184,1;// Portable_Sewingbox
+		setquest 7751;// Portable Sewing Kit
+		erasequest 7751;// Portable Sewing Kit
+		getexp 100000,100000;
+		close;
+	case 1:
+	case 2:
+		mes "[Sherine]";
+		mes "... Please leave me alone.";
+		mes "... I'm sorry.";
+		close;
+	}
+}

+ 10 - 1
npc/re/scripts_athena.conf

@@ -2,6 +2,10 @@
 // -                    Renewal Core Scripts                    -
 // --------------------------------------------------------------
 
+// Utilitarian functions used by many scripts.
+npc: npc/re/other/Global_Functions.txt
+npc: npc/re/other/global_npcs.txt
+
 // -------------------------- Airport ---------------------------
 npc: npc/re/airports/izlude.txt
 
@@ -63,12 +67,14 @@ npc: npc/re/instances/BakonawaLake.txt
 npc: npc/re/instances/BangungotHospital.txt
 npc: npc/re/instances/BuwayaCave.txt
 npc: npc/re/instances/CentralLaboratory.txt
+npc: npc/re/instances/CharlestonCrisis.txt
 npc: npc/re/instances/DevilTower.txt
 npc: npc/re/instances/EclageInterior.txt
 npc: npc/re/instances/FacewormsNest.txt
 npc: npc/re/instances/GhostPalace.txt
 npc: npc/re/instances/HazyForest.txt
 npc: npc/re/instances/HorrorToyFactory.txt
+npc: npc/re/instances/HeartHunterWarBase.txt
 npc: npc/re/instances/IsleOfBios.txt
 npc: npc/re/instances/LastRoom.txt
 npc: npc/re/instances/MalangdoCulvert.txt
@@ -80,6 +86,7 @@ npc: npc/re/instances/RitualOfBlessing.txt
 npc: npc/re/instances/RoomOfConsciousness.txt
 npc: npc/re/instances/SarahAndFenrir.txt
 npc: npc/re/instances/SaraMemory.txt
+npc: npc/re/instances/WernerLaboratoryCentralRoom.txt
 npc: npc/re/instances/WolfchevLaboratory.txt
 //npc: npc/custom/official/GeffenMagicTournament.txt
 
@@ -106,6 +113,7 @@ npc: npc/re/merchants/enchan_ko.txt
 npc: npc/re/merchants/enchan_mal.txt
 npc: npc/re/merchants/enchan_mora.txt
 npc: npc/re/merchants/enchan_rockridge.txt
+npc: npc/re/merchants/enchan_verus.txt
 npc: npc/re/merchants/flute.txt
 npc: npc/re/merchants/gld_mission_exchange.txt
 npc: npc/re/merchants/guild_warehouse.txt
@@ -115,6 +123,7 @@ npc: npc/re/merchants/inn.txt
 npc: npc/re/merchants/malangdo_costume.txt
 npc: npc/re/merchants/moro_cav_exchange.txt
 npc: npc/re/merchants/nightmare_biolab.txt
+npc: npc/re/merchants/novice_vending_machine.txt
 npc: npc/re/merchants/OldGlastHeim_merchants.txt
 npc: npc/re/merchants/pet_trader.txt
 npc: npc/re/merchants/quivers.txt
@@ -133,7 +142,6 @@ npc: npc/re/merchants/eden_market.txt
 npc: npc/re/other/achievements.txt
 npc: npc/re/other/adven_boards.txt
 npc: npc/re/other/bulletin_boards.txt
-npc: npc/re/other/Global_Functions.txt
 npc: npc/re/other/clans.txt
 npc: npc/re/other/dimensional_gap.txt
 npc: npc/re/other/item_merge.txt
@@ -188,6 +196,7 @@ npc: npc/re/quests/quests_14_3_bis.txt
 npc: npc/re/quests/quests_15_1.txt
 npc: npc/re/quests/quests_15_2.txt
 npc: npc/re/quests/quests_16_1.txt
+npc: npc/re/quests/quests_16_2.txt
 npc: npc/re/quests/quests_aldebaran.txt
 npc: npc/re/quests/quests_brasilis.txt
 npc: npc/re/quests/quests_dewata.txt

+ 1 - 0
npc/re/scripts_monsters.conf

@@ -54,6 +54,7 @@ npc: npc/re/mobs/dungeons/prt_q.txt
 npc: npc/re/mobs/dungeons/prt_sew.txt
 npc: npc/re/mobs/dungeons/ra_san.txt
 npc: npc/re/mobs/dungeons/rockridge.txt
+npc: npc/re/mobs/dungeons/slabw01.txt
 npc: npc/re/mobs/dungeons/teg_dun.txt
 npc: npc/re/mobs/dungeons/tha_t.txt
 npc: npc/re/mobs/dungeons/thor_v.txt

+ 3 - 0
npc/re/scripts_warps.conf

@@ -7,6 +7,8 @@ npc: npc/re/warps/cities/brasilis.txt
 npc: npc/re/warps/cities/dewata.txt
 npc: npc/re/warps/cities/dicastes.txt
 npc: npc/re/warps/cities/eclage.txt
+npc: npc/re/warps/cities/einbech.txt
+npc: npc/re/warps/cities/einbroch.txt
 npc: npc/re/warps/cities/izlude.txt
 npc: npc/re/warps/cities/malangdo.txt
 npc: npc/re/warps/cities/malaya.txt
@@ -23,6 +25,7 @@ npc: npc/re/warps/dungeons/harboro2.txt
 npc: npc/re/warps/dungeons/iz_dun.txt
 npc: npc/re/warps/dungeons/moc_pryd.txt
 npc: npc/re/warps/dungeons/rockmi1.txt
+npc: npc/re/warps/dungeons/slabw01.txt
 
 // --------------------------- Fields ---------------------------
 npc: npc/re/warps/fields/bif_fild.txt

+ 30 - 0
npc/re/warps/cities/einbech.txt

@@ -0,0 +1,30 @@
+//===== rAthena Script ======================================= 
+//= Einbech Warp Script
+//===== Description: =========================================
+//= Warp Points for Einbech
+//===== Changelogs: ==========================================
+//= 1.0 Added warps for ep16.2 [Capuche]
+//============================================================
+
+// rebel_in entrance
+einbech,215,84,0	script	nemi	WARPNPC,1,1,{
+	end;
+OnTouch:
+	if (terra_gloria_main < 14) {
+		mes "You only see a cold and hard wall.";
+		close;
+	}
+	warp "rebel_in",21,41;
+	end;
+}
+
+// Clana Nemieri
+rebel_in,34,43,0	warp2	#negoin02	5,2,rebel_in,21,41
+rebel_in,18,43,0	warp2	einbech_south	1,1,einbech,215,80
+
+// (Commander Room)
+rebel_in,88,80,0	warp2	#162gmroom2_1	1,1,rebel_in,209,82
+rebel_in,209,77,0	warp2	#162gmroom2_2	1,1,rebel_in,87,75
+
+// (Ladies Room)
+rebel_in,155,84,0	warp2	#162gmroom2_3	1,1,rebel_in,119,41

+ 21 - 0
npc/re/warps/cities/einbroch.txt

@@ -0,0 +1,21 @@
+//===== rAthena Script ======================================= 
+//= Einbroch Warp Script
+//===== Description: =========================================
+//= Warp Points for Einbroch
+//===== Changelogs: ==========================================
+//= 1.0 Some warps have been changed in renewal ep16.2 [Capuche]
+//============================================================
+
+ein_in01,274,246,0	script	#ep162_warp01	WARPNPC,1,1,{
+	end;
+OnTouch:
+	if (terra_gloria_main == 18 || terra_gloria_main == 22) {
+		cutin "ep16_tes01.bmp",0;
+		mes "[Tess]";
+		mes "Welcome. Please come in.";
+		close2;
+	}
+	warp "ein_in01",273,276;
+	end;
+}
+ein_in01,273,273,0	warp	roomB_roomBGate	1,1,ein_in01,274,243

+ 8 - 0
npc/re/warps/dungeons/slabw01.txt

@@ -0,0 +1,8 @@
+//===== rAthena Script ======================================= 
+//= Werner Laboratory dungeon warps script
+//===== Changelogs: ==========================================
+//= 1.0 First version. [Capuche]
+//============================================================
+
+que_swat,155,61,0	warp	#in_slbw	1,1,slabw01,14,88
+slabw01,10,88,0	warp	#out_slbw	1,1,que_swat,155,58

+ 0 - 2
npc/warps/cities/einbroch.txt

@@ -50,8 +50,6 @@ ein_in01,211,216,0	warp	ein_h02	1,1,ein_in01,274,218
 ein_in01,271,218,0	warp	ein_h02a	1,1,ein_in01,208,216
 ein_in01,211,232,0	warp	ein_h03	1,1,ein_in01,274,232
 ein_in01,271,232,0	warp	ein_h03a	1,1,ein_in01,208,232
-ein_in01,274,246,0	warp	ein_h04	1,1,ein_in01,273,276
-ein_in01,273,273,0	warp	ein_h04a	1,1,ein_in01,274,243
 ein_in01,264,246,0	warp	ein_h05	1,1,ein_in01,231,276
 ein_in01,231,273,0	warp	ein_h05a	1,1,ein_in01,264,243
 ein_in01,274,203,0	warp	ein_h06	1,1,ein_in01,274,173

+ 258 - 94
sql-files/item_db_re.sql

@@ -1109,7 +1109,7 @@ REPLACE INTO `item_db_re` VALUES (1719,'Bow_Of_Roguemaster','Roguemaster\'s Bow'
 REPLACE INTO `item_db_re` VALUES (1720,'Bow_Of_Rudra','Rudra Bow',5,20,NULL,1200,'150',NULL,5,0,0x000A0808,63,2,34,4,'48',1,11,'bonus bAtkEle,Ele_Holy; bonus bInt,5; skill "AL_CURE",1; skill "AL_HEAL",1; bonus2 bResEff,Eff_Poison,5000; bonus2 bResEff,Eff_Curse,5000; bonus2 bResEff,Eff_Silence,5000; bonus2 bResEff,Eff_Confusion,5000; bonus2 bResEff,Eff_Blind,5000;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1721,'Repeting_CrossBow','Repeating Crossbow',5,89000,NULL,2000,'95',NULL,9,1,0x00020840,63,2,34,3,'65',1,11,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1722,'Balistar','Ballista',5,124000,NULL,3500,'145',NULL,5,0,0x00080800,63,2,34,4,'77',1,11,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (1723,'Luna_Bow','Luna Bow',5,20,NULL,2000,'100',NULL,5,2,0x00000800,63,2,34,3,'30',1,11,'.@r = getrefine(); bonus bDef,2+3*(.@r>5)+2*(.@r>8);',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (1723,'Luna_Bow','Luna Bow',5,20,NULL,2000,'100',NULL,5,2,0x00000800,63,2,34,3,'30',1,11,'.@r = getrefine(); bonus bDef,2+3*(.@r>5)+5*(.@r>8);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1724,'Dragon_Wing','Dragon Wing',5,20,NULL,1200,'100',NULL,5,0,0x000A0848,63,2,34,4,'60',1,11,'bonus3 bAddMonsterDropItem,1765,RC_Dragon,300; bonus bIgnoreDefRace,RC_Dragon;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1725,'Bow_Of_Minstrel','Minstrel Bow',5,20,NULL,1700,'120',NULL,5,1,0x00080800,63,2,34,4,'70',1,11,'bonus bInt,2; bonus bSPrecovRate,10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1726,'Hunter_Bow_','Hunter Bow',5,64000,NULL,1500,'125',NULL,5,1,0x00000800,63,2,34,3,'33',1,11,NULL,NULL,NULL);
@@ -1129,7 +1129,7 @@ REPLACE INTO `item_db_re` VALUES (1739,'BF_Bow2','Brave Battle CrossBow',5,20,NU
 REPLACE INTO `item_db_re` VALUES (1740,'Nepenthes_Bow','Nepenthes Bow',5,20,NULL,1000,'105',NULL,5,2,0x00000800,18,2,34,4,'60',1,11,'bonus4 bAutoSpellOnSkill,"AC_DOUBLE","AC_CHARGEARROW",1,20;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1741,'Cursed_Lyre','Cursed Lyre',5,20,NULL,1250,'125',NULL,5,1,0x00080800,18,2,34,4,'80',1,11,'bonus bLuk,-2; bonus2 bAddEff,Eff_Curse,400;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1742,'N_Composite_Bow','Novice Composite Bow',5,1,NULL,0,'49',NULL,5,3,0x000A0848,63,2,34,1,'4',0,11,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (1743,'Krieger_Bow1','Glorious Hunter Bow',5,0,NULL,0,'100',NULL,5,0,0x001A0848,63,2,34,4,'80',1,11,'bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; .@r = getrefine(); bonus bCritAtkRate,.@r * 2; bonus bUnbreakableWeapon; if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) bonus2 bSkillAtk,"AC_DOUBLE",20;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (1743,'Krieger_Bow1','Glorious Hunter Bow',5,0,NULL,0,'100',NULL,5,0,0x001A0848,63,2,34,4,'80',1,11,'bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; .@r = getrefine(); bonus bCritAtkRate,min(10,.@r)*2; bonus bUnbreakableWeapon; if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) bonus2 bSkillAtk,"AC_DOUBLE",20;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1744,'Bow_Of_Evil','Bow Of Evil',5,20,NULL,0,'170',NULL,5,0,0x000A0848,63,2,34,4,'1',0,11,'bonus2 bSkillAtk,"AC_DOUBLE",25; bonus bDex,2;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1745,'Falken_Blitz','Falken Blitz',5,20,NULL,1000,'100',NULL,5,2,0x00000800,18,2,34,3,'50',1,11,'bonus2 bSkillAtk,"SN_SHARPSHOOTING",10; bonus2 bSkillAtk,"AC_DOUBLE",10; bonus2 bSkillAtk,"AC_CHARGEARROW",10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1746,'Elven_Bow','Elven Bow',5,20,NULL,1500,'160',NULL,5,1,0x00080800,63,2,34,3,'100',1,11,'bonus bDex,2;',NULL,NULL);
@@ -3189,28 +3189,28 @@ REPLACE INTO `item_db_re` VALUES (4966,'Scorpio','Scorpio',6,0,NULL,0,NULL,NULL,
 REPLACE INTO `item_db_re` VALUES (4967,'Leo','Leo',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bAspdRate,3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (4968,'Virgo','Virgo',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal,.@skills$[.@i],1; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (4969,'Libra','Libra',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal2,.@skills$[.@i],1; } /* TODO: Depending on some recovery items HP recovery amount + 1% */',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4970,'Fire_Property_Reactor','Fire Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Fire;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4971,'Water_Property_Reactor','Water Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Water;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4972,'Earth_Property_Reactor','Earth Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Earth;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4973,'Wind_Property_Reactor','Wind Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Wind;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4974,'Fire_Resistance_Reactor','Fire Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Fire,25; bonus2 bSubEle,Ele_Water,-25;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4975,'Water_Resistance_Reactor','Water Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Water,25; bonus2 bSubEle,Ele_Wind,-25;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4976,'Earth_Resistance_Reactor','Earth Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Earth,25; bonus2 bSubEle,Ele_Fire,-25;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4977,'Wind_Resistance_Reactor','Wind Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Wind,25; bonus2 bSubEle,Ele_Earth,-25;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4978,'Recovery_Reactor_101','Recovery Reactor 101',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus2 bHPRegenRate,100,5000; else bonus2 bHPRegenRate,50,5000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4979,'Recovery_Reactor_102','Recovery Reactor 102',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus2 bSPRegenRate,5,5000; else bonus2 bHPRegenRate,3,5000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4980,'Recovery_Reactor_201','Recovery Reactor 201',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus bHPrecovRate,100; else bonus bHPrecovRate,50;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4981,'Recovery_Reactor_202','Recovery Reactor 202',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus bSPrecovRate,100; else bonus bSPrecovRate,50;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4982,'STR_Supplement_Reactor','STR Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) { .@bonus = 10; } bonus bBaseAtk,.@bonus + 5*(readparam(bStr)/10);',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4983,'INT_Supplement_Reactor','INT Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) { .@bonus = 10; } bonus bMatk,.@bonus + 5*(readparam(bInt)/10);',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4984,'DEF_Supplement_Reactor','DEF SupplementReactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDef,100;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4985,'PD_Supplement_Reactor','PD Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bFlee2,3;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4986,'Attack_Supplement_Reactor','Attack Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bBaseAtk,20;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4987,'Magic_Supplement_Reactor','Magic Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMatk,20;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4988,'HP_Supplement_Reactor','HP Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMaxHPrate,5;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4989,'SP_Supplement_Reactor','SP Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMaxSPrate,3;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4990,'Frozen_Supplement_Reactor','Frozen Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bResEff,Eff_Freeze,10000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (4991,'ASPD_Supplement_Reactor','ASPD Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bAspd,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4970,'Reactor_P_FIRE','Fire Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Fire;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4971,'Reactor_P_WATER','Water Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Water;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4972,'Reactor_P_GROUND','Earth Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Earth;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4973,'Reactor_P_WIND','Wind Property Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDefEle,Ele_Wind;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4974,'Reactor_T_FIRE','Fire Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Fire,25; bonus2 bSubEle,Ele_Water,-25;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4975,'Reactor_T_WATER','Water Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Water,25; bonus2 bSubEle,Ele_Wind,-25;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4976,'Reactor_T_GROUND','Earth Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Earth,25; bonus2 bSubEle,Ele_Fire,-25;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4977,'Reactor_T_WIND','Wind Resistance Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubEle,Ele_Wind,25; bonus2 bSubEle,Ele_Earth,-25;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4978,'Reactor_Cure_101','Recovery Reactor 101',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus2 bHPRegenRate,100,5000; else bonus2 bHPRegenRate,50,5000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4979,'Reactor_Cure_102','Recovery Reactor 102',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus2 bSPRegenRate,5,5000; else bonus2 bHPRegenRate,3,5000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4980,'Reactor_Cure_201','Recovery Reactor 201',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus bHPrecovRate,100; else bonus bHPrecovRate,50;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4981,'Reactor_Cure_202','Recovery Reactor 202',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) bonus bSPrecovRate,100; else bonus bSPrecovRate,50;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4982,'Reactor_A_STR','STR Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) { .@bonus = 10; } bonus bBaseAtk,.@bonus + 5*(readparam(bStr)/10);',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4983,'Reactor_A_INT','INT Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'if (getrefine()>=7) { .@bonus = 10; } bonus bMatk,.@bonus + 5*(readparam(bInt)/10);',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4984,'Reactor_A_DEF','DEF SupplementReactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bDef,100;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4985,'Reactor_A_AVOI','PD Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bFlee2,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4986,'Reactor_A_ATK','Attack Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bBaseAtk,20;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4987,'Reactor_A_MATK','Magic Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMatk,20;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4988,'Reactor_A_MHP','HP Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMaxHPrate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4989,'Reactor_A_MSP','SP Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMaxSPrate,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4990,'Reactor_A_FROZ','Frozen Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bResEff,Eff_Freeze,10000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (4991,'Reactor_A_ASPD','ASPD Supplement Reactor',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bAspd,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (4992,'HPdrain1','HP Absorb 1',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bHPDrainRate,10,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (4993,'SPdrain1','SP Absorb 1',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSPDrainRate,10,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (4994,'Rune_of_Strength_Lv_1','Rune of Strength Lv 1',6,20,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'.@r = getrefine(); if (.@r>=7) { bonus bStr,5; } if (.@r>=10) { bonus2 bAddClass,Class_All,5; }',NULL,NULL);
@@ -4119,6 +4119,7 @@ REPLACE INTO `item_db_re` VALUES (5937,'Flying_Helmet','Flying Helmet',4,1,NULL,
 REPLACE INTO `item_db_re` VALUES (5938,'Octopus_Hat_','Octopus Hat',4,20,NULL,880,NULL,8,NULL,1,0xFFFFFFFF,63,2,256,NULL,'60',1,538,'bonus bMdef,8; bonus bUnbreakableHelm,1; bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; .@r = getrefine(); if (.@r>=5) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; } if (.@r>=6) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; } if (.@r>=7) { bonus2 bAddItemHealRate,579,50; bonus2 bAddItemHealRate,544,125; bonus2 bAddItemHealRate,551,125; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (5943,'Owlviscount_Silk_Hat','Owl Viscount Silk Hat',4,0,NULL,500,NULL,15,NULL,1,0xFFFFFFFF,63,2,256,NULL,'70',1,1323,'bonus bInt,1; bonus bAspdRate,10; .@r = getrefine(); bonus bMatk,7*.@r; autobonus "{ .@r = getrefine(); bonus bAspdRate,(.@r >= 9 ? 40 : ((.@r >= 7) ? 10 : ((.@r >= 5) ? 5 : 1))); }",.@r*20,30000,BF_MAGIC,"{ specialeffect2 EF_SPELLBREAKER; }";',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (5945,'Well_Chewed_Pencil','Well-Chewed Pencil',4,20,NULL,300,NULL,0,NULL,0,0xFFFFFFFF,63,2,1,NULL,'30',0,931,'bonus bStr,1; autobonus "{ bonus bAtkEle,Ele_Fire; }",50,60000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; /* Unknow rate and specialeffect */',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (5965,'_Riot_Chip','Riot Chip',4,0,NULL,300,NULL,NULL,NULL,1,0xFFFFFFFF,63,2,256,NULL,'100',1,1201,'bonus bFixedCastrate,-50; .@r = getrefine(); bonus2 bAddClass,Class_All,.@r; bonus2 bMagicAddClass,Class_All,.@r;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (5966,'KarduiEar','KarduiEar',4,0,NULL,300,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,512,NULL,'70',0,1357,'.@dex = readparam(bDex); bonus bMatk,(.@dex > 10) ? .@dex/10*2 : 0; if (.@dex > 107) { bonus bVariableCastrate,-10; bonus bMatk,60; } if (.@dex > 119) { bonus bVariableCastrate,-5; bonus bMatk,100; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (5967,'FlyingGalapago','Flying Galapago',4,0,NULL,500,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1,NULL,'110',0,1358,'set .@bblvl,max(getskilllv("HT_BLITZBEAT"),1); set .@luk,min(readparam(bLuk),120); bonus bAgi,1; bonus3 bAutoSpell,"HT_BLITZBEAT",.@bblvl,50 + (.@luk / 3) + (.@bblvl * 2); bonus2 bSkillAtk,"HT_BLITZBEAT",getskilllv("HT_STEELCROW") * 40;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (5968,'DVAngelNurseCap','DVAngelNurseCap',4,0,NULL,500,NULL,10,NULL,1,0xFFFFFFFF,63,2,256,NULL,'50',1,1359,'if (BaseClass == Job_Acolyte) bonus bHealPower,3; bonus bNoCastCancel; .@r = getrefine(); bonus bHealPower,(.@r > 8) ? 12 : ((.@r > 6) ? 9 : ((.@r > 4) ? 6 : 0));',NULL,NULL);
@@ -4965,7 +4966,7 @@ REPLACE INTO `item_db_re` VALUES (6914,'Black_Horn','Black Horn',3,10,NULL,0,NUL
 REPLACE INTO `item_db_re` VALUES (6915,'Captured_Soul','Captured Soul',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6916,'Piece_Of_Soul_Monkey','Piece Of Soul Monkey',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6917,'Piece_Of_Soul_Chicken','Piece Of Soul Chicken',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6919,'Honor_Proof','Honor Token',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6919,'TokenOfHonor','Honor Token',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6920,'Rune_Magic_Powder','Rune Magic Powder',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6921,'Dehumidifiers','Dehumidifiers',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6922,'Sandpaper','Sandpaper',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
@@ -5005,33 +5006,32 @@ REPLACE INTO `item_db_re` VALUES (6956,'Captured_Sheep','Captured Sheep',3,10,NU
 REPLACE INTO `item_db_re` VALUES (6957,'Lamb_Fleece','Lamb Fleece',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6958,'Lamb_Horns','Lamb Horns',3,10,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6960,'Air_Stronghold_Key','Sky Fortress Key',3,10,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6961,'Huge_Metal_Scrap','Huge Metal Scrap',3,10,0,1000,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6962,'Old_Fuel','Old Fuel',3,10,0,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6961,'LargeScrap','Huge Metal Scrap',3,10,0,1000,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6962,'OldTank','Old Fuel',3,10,0,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6963,'HPdrainStone_Robe','HP Absorption Stone (Garment)',3,10,NULL,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6964,'SPdrainStone_Robe','SP Absorption Stone (Garment)',3,10,NULL,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-
-REPLACE INTO `item_db_re` VALUES (6965,'Fire_Property_Reactor_Blueprint','Fire Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6966,'Water_Property_Reactor_Blueprint','Water Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6967,'Earth_Property_Reactor_Blueprint','Earth Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6968,'Wind_Property_Reactor_Blueprint','Wind Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6969,'Fire_Res_Reactor_Blueprint','Fire Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6970,'Water_Res_Reactor_Blueprint','Water Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6971,'Earth_Res_Reactor_Blueprint','Earth Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6972,'Wind_Res_Reactor_Blueprint','Wind Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6973,'Recovery101_Reactor_Blueprint','Recovery101 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6974,'Recovery102_Reactor_Blueprint','Recovery102 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6975,'Recovery201_Reactor_Blueprint','Recovery201 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6976,'Recovery202_Reactor_Blueprint','Recovery202 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6977,'STR_Reactor_Blueprint','STR Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6978,'INT_Reactor_Blueprint','INT Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6979,'DEF_Reactor_Blueprint','DEF Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6980,'PD_Reactor_Blueprint','Perfect Dodge Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6981,'ATK_Reactor_Blueprint','Attack Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6982,'MATK_Reactor_Blueprint','Magical Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6983,'HP_Reactor_Blueprint','HP Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6984,'SP_Reactor_Blueprint','SP Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6985,'Frozen_Reactor_Blueprint','Frozen Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (6986,'ASPD_Reactor_Blueprint','ASPD Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6965,'Reactor_P_FIRE_','Fire Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6966,'Reactor_P_WATER_','Water Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6967,'Reactor_P_GROUND_','Earth Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6968,'Reactor_P_WIND_','Wind Property Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6969,'Reactor_T_FIRE_','Fire Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6970,'Reactor_T_WATER_','Water Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6971,'Reactor_T_GROUND_','Earth Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6972,'Reactor_T_WIND_','Wind Resistance Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6973,'Reactor_Cure_101_','Recovery101 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6974,'Reactor_Cure_102_','Recovery102 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6975,'Reactor_Cure_201_','Recovery201 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6976,'Reactor_Cure_202_','Recovery202 Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6977,'Reactor_A_STR_','STR Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6978,'Reactor_A_INT_','INT Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6979,'Reactor_A_DEF_','DEF Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6980,'Reactor_A_AVOI_','Perfect Dodge Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6981,'Reactor_A_ATK_','Attack Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6982,'Reactor_A_MATK_','Magical Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6983,'Reactor_A_MHP_','HP Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6984,'Reactor_A_MSP_','SP Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6985,'Reactor_A_FROZ_','Frozen Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (6986,'Reactor_A_ASPD_','ASPD Reactor Blueprint',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (6999,'HPdrainStone_Top','HP Absorption Stone (Upper)',3,10,NULL,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 
 #
@@ -7461,12 +7461,12 @@ REPLACE INTO `item_db_re` VALUES (13116,'Novice_Revolver','Novice Revolver',5,0,
 REPLACE INTO `item_db_re` VALUES (13117,'TE_Woe_Pistol','TE Woe Pistol',5,0,NULL,0,'60',NULL,7,0,0x41000000,63,2,34,3,'40',1,17,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Curse,3000;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13118,'Tiny_Flame','Fading Flame',5,1,NULL,100,'0',NULL,7,0,0x41000000,63,2,34,1,'1',1,17,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13119,'Freedom_Flame','Freedom Flame',5,1,NULL,100,'100',NULL,7,2,0x41000000,63,2,34,3,'99',1,17,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13120,'H_FEATHER_H_FIRE','Heaven\'s Feather & Hell\'s Fire',5,1200000,NULL,800,'150',NULL,9,1,0x41000000,63,2,34,3,'99',1,17,'bonus2 bSkillAtk,"GS_DESPERADO",20; bonus2 bSkillAtk,"RL_FALLEN_ANGEL",20;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13122,'ALTAIR_ARES','Altair & Ares',5,1450000,NULL,1000,'200',NULL,9,0,0x40000000,63,2,34,3,'140',1,17,'bonus bHit,5; bonus bDelayrate,10; bonus bLongAtkRate,30;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13124,'ALTAIR_ARES_','Altair & Ares',5,1450000,NULL,1000,'200',NULL,9,1,0x40000000,63,2,34,3,'140',1,17,'bonus bHit,5; bonus bDelayrate,10; bonus bLongAtkRate,30;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13125,'Metal_Revolver','Metal Revolver',5,0,NULL,0,'30',NULL,7,1,0x41000000,63,2,34,3,'1',1,17,'bonus bBaseAtk,getrefine(); bonus bLongAtkRate,1; if (BaseLevel >= 20 && BaseLevel <= 120) { bonus bBaseAtk,3*(BaseLevel/10); }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13120,'H_FEATHER_H_FIRE','Heaven\'s Feather & Hell\'s Fire',5,1200000,NULL,800,'150',NULL,9,1,0x41000000,63,2,34,3,'99',1,17,'bonus2 bSkillAtk,"GS_DESPERADO",20; bonus2 bAddEff,Eff_Burning,200;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13122,'ALTAIR_ARES','Altair & Ares',5,1450000,NULL,1000,'200',NULL,9,0,0x40000000,63,2,34,3,'140',1,17,'bonus bHit,5; bonus bAspdRate,10; bonus bLongAtkRate,30;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13124,'ALTAIR_ARES_','Altair & Ares',5,1450000,NULL,1000,'200',NULL,9,1,0x40000000,63,2,34,3,'140',1,17,'bonus bHit,5; bonus bAspdRate,10; bonus bLongAtkRate,30;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13125,'Metal_Revolver','Metal Revolver',5,0,NULL,0,'30',NULL,7,1,0x41000000,63,2,34,3,'1',1,17,'.@r = getrefine(); bonus bBaseAtk,3*.@r; bonus bLongAtkRate,1; if (BaseLevel >= 20) { bonus bBaseAtk,3*(min(BaseLevel,120)/10); }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13126,'Infinity_Pistol','Infinity Pistol',5,10,NULL,500,'175',NULL,7,1,0x40000000,63,2,34,4,'100',0,17,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13127,'Crimson_Revolver','Crimson Revolver',5,20,NULL,1000,'100',NULL,7,2,0x41000000,63,2,34,3,'70',1,17,'.@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225);',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13127,'Crimson_Revolver','Crimson Revolver',5,20,NULL,1000,'100',NULL,7,2,0x41000000,63,2,34,3,'70',1,17,'.@r = getrefine(); bonus bBaseAtk,(.@r<=15?pow(.@r,2):225); if(BaseLevel>=70){ bonus bBaseAtk,(BaseLevel/10)*5; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13128,'Revolver_of_Vicious_Mind','Revolver of Vicious Mind',5,20,NULL,1500,'150',NULL,7,1,0x41000000,63,2,34,4,'160',1,17,'bonus bAtk,pow(min(getrefine(),15),2);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13129,'Unity_Revolver','Unity Revolver',5,20,NULL,500,'95',NULL,7,1,0x41000000,63,2,34,3,'1',1,17,'bonus bBaseAtk,pow(getrefine(),2)*125/100;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13138,'Dark_Rose','Dark Rose',5,20,NULL,1800,'150',NULL,7,2,0x40000000,63,2,34,3,'120',1,17,'.@r = getrefine(); bonus bAspdRate,10; if (.@r >= 7) { bonus bLongAtkRate,15; if (.@r >= 9) { bonus bAspd,1; } }',NULL,NULL);
@@ -7498,23 +7498,23 @@ REPLACE INTO `item_db_re` VALUES (13173,'BF_Shotgun1','Soldier Shotgun',5,0,NULL
 REPLACE INTO `item_db_re` VALUES (13174,'BF_Launcher1','Soldier Grenade Launcher',5,0,NULL,0,'300',NULL,9,0,0x41000000,63,2,34,3,'80',1,21,'bonus bDex,2; bonus bSplashRange,1; bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; autobonus "{ bonus bBaseAtk,300; bonus2 bHPLossRate,120,1000; }",30,9000,BF_WEAPON,"{ specialeffect2 EF_BASH3D; }"; bonus bUnbreakableWeapon;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13175,'Lever_Action_Rifle_C','Lever Action Rifle',5,20,NULL,0,'170',NULL,9,0,0x41000000,63,2,34,3,'1',0,18,'bonus bHit,20; bonus bCritical,50; bonus bAspdRate,-5; bonus2 bAddClass,Class_All,40;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13176,'Krieger_Rifle1','Glorious Rifle',5,0,NULL,0,'90',NULL,9,0,0x41000000,63,2,34,4,'80',1,18,'bonus2 bAddRace,RC_DemiHuman,75; bonus2 bAddRace,RC_Player_Human,75; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(14,.@r)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(14,.@r)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bVariableCastrate,"GS_TRACKING",25; bonus2 bSkillAtk,"GS_TRACKING",.@r * 3; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13177,'Krieger_Gatling1','Glorious Gatling Gun',5,0,NULL,0,'90',NULL,9,0,0x41000000,63,2,34,4,'80',1,19,'bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bAddClass,Class_All,.@r; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13178,'Krieger_Shotgun1','Glorious Shotgun',5,0,NULL,0,'110',NULL,9,0,0x41000000,63,2,34,4,'80',1,20,'bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus bSplashRange,1; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_SPREADATTACK",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13179,'Krieger_Launcher1','Glorious Grenade Launcher',5,0,NULL,0,'330',NULL,9,0,0x41000000,63,2,34,4,'80',1,21,'bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,10)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,10)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_GROUNDDRIFT",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; autobonus "{ bonus bAspdRate,20; }",200,20000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; }"; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13180,'Novice_Rifle','Novice Rifle',5,0,NULL,500,'50',NULL,9,3,0x41000000,1,2,34,4,'1',0,18,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13181,'Novice_Shotgun','Novice Shotgun',5,0,NULL,1000,'80',NULL,9,0,0x41000000,1,2,34,4,'1',0,20,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13182,'Novice_Gatling','Novice Gatling',5,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,4,'1',0,19,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13183,'Novice_Grenade_Launcher','Novice Grenade Launcher',5,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,4,'1',0,21,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13184,'TE_Woe_Rifle','TE Woe Rifle',5,0,NULL,0,'80',NULL,9,0,0x41000000,63,2,34,3,'40',1,18,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Silence,3000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13185,'TE_Woe_Gatling','TE Woe Gatling',5,0,NULL,0,'100',NULL,7,0,0x41000000,63,2,34,3,'40',1,19,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Stun,3000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13186,'TE_Woe_Shotgun','TE Woe Shotgun',5,0,NULL,0,'100',NULL,7,0,0x41000000,63,2,34,3,'40',1,20,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Poison,3000;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13187,'TE_Woe_Grenade','TE Woe Grenade',5,0,NULL,0,'100',NULL,9,0,0x41000000,63,2,34,3,'40',1,21,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Blind,3000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13177,'Krieger_Gatling1','Glorious Gatling Gun',5,0,NULL,0,'90',NULL,9,0,0x41000000,63,2,34,4,'80',1,19,'bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bAddClass,Class_All,.@r; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13178,'Krieger_Shotgun1','Glorious Shotgun',5,0,NULL,0,'110',NULL,9,0,0x41000000,63,2,34,4,'80',1,20,'bonus2 bAddRace,RC_DemiHuman,55; bonus2 bAddRace,RC_Player_Human,55; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus bSplashRange,1; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_SPREADATTACK",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13179,'Krieger_Launcher1','Glorious Grenade Launcher',5,0,NULL,0,'330',NULL,9,0,0x41000000,63,2,34,4,'80',1,21,'bonus2 bAddRace,RC_DemiHuman,35; bonus2 bAddRace,RC_Player_Human,35; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,20; bonus2 bIgnoreDefRaceRate,RC_Player_Human,20; bonus2 bSkillAtk,"GS_TRIPLEACTION",30; bonus bUnbreakableWeapon; .@r = getrefine(); if(.@r>5) { bonus2 bAddRace,RC_DemiHuman,pow(min(.@r,14)-4,2); bonus2 bAddRace,RC_Player_Human,pow(min(.@r,14)-4,2); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player_Human,5; } if(.@r>8) { bonus2 bSkillAtk,"GS_GROUNDDRIFT",.@r * 2; bonus3 bAddEffOnSkill,"GS_SPREADATTACK",Eff_Stun,2000; autobonus "{ bonus bAspdRate,20; }",200,20000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; }"; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13180,'Novice_Rifle','Novice Rifle',5,0,NULL,500,'50',NULL,9,3,0x41000000,1,2,34,1,'1',0,18,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13181,'Novice_Shotgun','Novice Shotgun',5,0,NULL,1000,'80',NULL,9,0,0x41000000,1,2,34,1,'1',0,20,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13182,'Novice_Gatling','Novice Gatling',5,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,1,'1',0,19,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13183,'Novice_Grenade_Launcher','Novice Grenade Launcher',5,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,1,'1',0,21,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13184,'TE_Woe_Rifle','TE Woe Rifle',5,0,NULL,0,'80',NULL,9,0,0x41000000,63,2,34,3,'40',1,18,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Silence,1000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13185,'TE_Woe_Gatling','TE Woe Gatling',5,0,NULL,0,'100',NULL,7,0,0x41000000,63,2,34,3,'40',1,19,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Stun,1000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13186,'TE_Woe_Shotgun','TE Woe Shotgun',5,0,NULL,0,'100',NULL,7,0,0x41000000,63,2,34,3,'40',1,20,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Poison,1000;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13187,'TE_Woe_Grenade','TE Woe Grenade',5,0,NULL,0,'100',NULL,9,0,0x41000000,63,2,34,3,'40',1,21,'bonus2 bAddRace,RC_Player_Human,40; bonus2 bAddEff,Eff_Blind,1000;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13189,'COLORSCOPE','Color Scope',5,1350000,NULL,1200,'240',NULL,9,2,0x40000000,63,2,34,3,'105',1,18,'bonus bHit,20; bonus bCriticalRate,30;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13190,'RAG203_','RAG203',5,1800000,NULL,1300,'260',NULL,9,1,0x40000000,63,2,34,3,'140',1,18,'bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,500,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13190,'RAG203_','RAG203',5,1800000,NULL,1300,'260',NULL,9,1,0x40000000,63,2,34,3,'140',1,18,'bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,30,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13192,'DEATHFIRE','Death Fire',5,1250000,NULL,2000,'400',NULL,9,1,0x40000000,63,2,34,3,'108',1,20,'bonus bSplashRange,1; bonus bAtkRange,5; bonus bHit,-50; bonus bAspdRate,-10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13193,'R_THUNDER','Rolling Thunder',5,1350000,NULL,1800,'280',NULL,9,1,0x40000000,63,2,34,3,'120',1,20,'bonus bSplashRange,1; bonus bHit,-10; bonus bAspdRate,-10; bonus3 bAutoSpell,"MG_THUNDERSTORM",5,30;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13194,'P_BREAKER','Peace Breaker',5,1950000,NULL,1400,'250',NULL,9,0,0x41000000,63,2,34,3,'140',1,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13195,'RAG203','RAG203',5,1800000,NULL,1300,'260',NULL,9,0,0x40000000,63,2,34,3,'140',1,18,'bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,10,1;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13195,'RAG203','RAG203',5,1800000,NULL,1300,'260',NULL,9,0,0x40000000,63,2,34,3,'140',1,18,'bonus bHit,10; bonus bCriticalRate,15; bonus4 bAutoSpell,"AL_DECAGI",1,30,1;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13196,'P_BREAKER_','Peace Breaker',5,1950000,NULL,1400,'250',NULL,9,1,0x41000000,63,2,34,3,'140',1,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13197,'MINIMAY','Mini Mei',5,1600000,NULL,2500,'220',NULL,9,2,0x41000000,63,2,34,2,'106',1,19,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13198,'TEMPEST','Tempest',5,2200000,NULL,2500,'250',NULL,9,0,0x41000000,63,2,34,4,'140',1,19,'bonus bHit,-25; bonus bCritical,10; bonus bLongAtkRate,20;',NULL,NULL);
@@ -7695,7 +7695,7 @@ REPLACE INTO `item_db_re` VALUES (13456,'Unity_Sword','Unity Sword',5,20,NULL,42
 REPLACE INTO `item_db_re` VALUES (13457,'Unity_Dagger','Unity Dagger',5,20,NULL,270,'52',NULL,1,1,0x028F5EEF,63,2,2,3,'1',1,1,'bonus bBaseAtk,pow(getrefine(),2)*125/100;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13460,'Sealed_Magic_Sword','Sealed Magic Sword',5,0,NULL,1500,'100',NULL,1,2,0x00065480,58,2,2,4,'100',1,2,'.@r = getrefine(); .@sp = -100; bonus3 bAutoSpell,"MG_FIREBOLT",5,100; if (.@r >= 7) { .@sp += 50; .@matk = 85; if (.@r >= 10) { bonus bAspd,1; .@sp += 50; .@matk += 45; } bonus bMatk,.@matk; } bonus bMaxSP,.@sp;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13461,'Sealed_Evil_Sword','Sealed Evil Sword',5,0,NULL,1500,'100',NULL,1,2,0x00065480,58,2,2,4,'100',1,2,'.@r = getrefine(); .@def = -50; .@mdef = -10; bonus3 bAutoSpell,"WZ_FROSTNOVA",5,100; if (.@r >= 7) { .@crit = 30; .@mdef += 10; if (.@r >= 10) { bonus bAspd,1; .@crit += 20; .@def += 50; } bonus bCritical,.@crit; } bonus bDef,.@def; bonus bMdef,.@mdef;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (13462,'Sealed_Maximum_Sword','Sealed Maximum Sword',5,0,NULL,1500,'100',NULL,1,2,0x00065480,58,2,2,4,'100',1,2,'.@r = getrefine(); .@hp = -1000; bonus3 bAutoSpell,"MG_COLDBOLT",5,100; if (.@r >= 7) { .@atk = 65; .@hp += 500; if (.@r >= 10) { bonus bAspd,1; .@atk += 45; .@hp += 500; } bonus bBaseAtk,.@atk; } if (.@hp) { bonus bMaxHP,.@hp; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (13462,'Sealed_Max_Sword','Sealed Maximum Sword',5,0,NULL,1500,'100',NULL,1,2,0x00065480,58,2,2,4,'100',1,2,'.@r = getrefine(); .@hp = -1000; bonus3 bAutoSpell,"MG_COLDBOLT",5,100; if (.@r >= 7) { .@atk = 65; .@hp += 500; if (.@r >= 10) { bonus bAspd,1; .@atk += 45; .@hp += 500; } bonus bBaseAtk,.@atk; } if (.@hp) { bonus bMaxHP,.@hp; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13469,'Illusion_Immaterial_Sword','Illusion Immaterial Sword',5,0,NULL,900,'180',NULL,1,2,0x000654E2,63,2,2,4,'120',1,2,'.@r = getrefine(); bonus bSPDrainValue,-1; bonus bUnbreakableWeapon; if (.@r >= 12) { .@val = 20; } bonus2 bSPVanishRate,(80+(20*.@r)),(30+.@val);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (13493,'Cannon_Rapier-OS','Cannon Rapier-OS',5,20,NULL,800,'160:150',NULL,1,2,0x000654E3,63,2,2,4,'130',1,2,'.@r = getrefine(); bonus3 bAutoSpell,"MG_FIREBALL",min(.@r,10),1; /* unknown rate */ if (.@r >= 7) { bonus bAspdRate,7; if (.@r >= 9) { bonus2 bSkillAtk,"MG_FIREBALL",30; if (.@r >= 11) { bonus3 bAutoSpell,"WL_HELLINFERNO",3,1; /* unknown rate */ } } }',NULL,NULL);
 #===================================================================
@@ -8889,7 +8889,7 @@ REPLACE INTO `item_db_re` VALUES (15154,'Unity_Suit','Unity Suit',4,10,NULL,300,
 REPLACE INTO `item_db_re` VALUES (15155,'Unity_Robe','Unity Robe',4,10,NULL,300,NULL,45,NULL,1,0xFFFFFFFF,63,2,16,NULL,'1',1,0,'.@r = getrefine(); if(BaseLevel<100) { bonus2 bExpAddRace,RC_All,4; bonus bInt,2; bonus bUseSPrate,-(.@r/2); }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15156,'Elegant_Doram_Suit','Elegant Doram Suit',4,20,NULL,900,NULL,120,NULL,1,0x80000000,7,2,16,NULL,'175',1,NULL,'bonus bMaxHPrate,15; bonus bMaxSPrate,15; .@r = getrefine(); bonus bDex,.@r; bonus bInt,.@r; if(.@r > 9) bonus bUseSPrate,-5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15162,'Lounge_Suit','Lounge Suit',4,20,NULL,300,NULL,40,NULL,1,0xFFFFFFFE,63,2,16,NULL,'80',1,NULL,'bonus bAspdRate,3; bonus bCastrate,-3; bonus bDelayrate,-3; if(getrefine() > 6) { bonus bAspdRate,2; bonus bCastrate,-2; bonus bDelayrate,-2; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (15163,'Fictitious_Robe','Agenda Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'skill "SA_SPELLBREAKER",1; if (BaseLevel >= 140) { .@val = 14; } else if (BaseLevel >= 120) { .@val = 9; } else { .@val = 5; } bonus bMatkRate,.@val;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (15163,'Agenda_Robe','Agenda Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'skill "SA_SPELLBREAKER",1; if (BaseLevel >= 140) { .@val = 14; } else if (BaseLevel >= 120) { .@val = 9; } else { .@val = 5; } bonus bMatkRate,.@val;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15164,'Consultative_Robe','Consultation Robe',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,.@r*3; bonus2 bSubEle,Ele_Fire,.@r*3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15165,'Pure_White_Marching_Hat','Pure White Marching Hat',4,20,NULL,300,NULL,0,NULL,1,0xFFFFFFFF,63,2,256,NULL,'60',1,1470,'.@r = getrefine(); bonus bStr,2; autobonus "{ bonus bAtkEle,Ele_Ghost; }",5+.@r,60000,BF_WEAPON,"{ specialeffect2 EF_ENHANCE; }"; /* Unknow Rates */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (15166,'Rosary_Necklace','Rosary Necklace',4,20,NULL,300,NULL,0,NULL,0,0xFFFFFFFF,63,2,1,NULL,'60',0,1471,'bonus bFlee2,2; bonus bHealPower,3;',NULL,NULL);
@@ -11649,9 +11649,9 @@ REPLACE INTO `item_db_re` VALUES (23046,'S_Mystic_Powder','[Sale] Mystic Powder'
 REPLACE INTO `item_db_re` VALUES (23047,'S_Blessing_Tyr','[Sale] Blessing of Tyr',2,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_FLEEFOOD,300000,30; sc_start SC_HITFOOD,300000,30; sc_start SC_ATKPOTION,300000,20; sc_start SC_MATKPOTION,300000,20;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (23048,'S_Resilience_Potion','[Sale] Resilience Enhancement Potion',2,NULL,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'bonus_script "bonus bAddItemHealRate,20;",1800,9; /* fix me: unknown flag and specialeffect */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (23058,'Enchant_Stone_Box9','Costume Enchantment Stone Box 9',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,'1',NULL,NULL,'getgroupitem(IG_Enchant_Stone_Box9);',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (23076,'Build_Up_Potion_SS','Build Up Potion SS',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bAspd,10; }",10; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (23077,'Build_Up_Potion_SC','Build Up Potion SC',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bCritical,30; }",10; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (23078,'Build_Up_Potion_AC','Build Up Potion AC',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { bonus_script "{ bonus bVariableCastrate,-80; }",10; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23076,'Build_Up_Potion_SS','Build Up Potion SS',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_SS,10000,0; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23077,'Build_Up_Potion_SC','Build Up Potion SC',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_SC,10000,0; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (23078,'Build_Up_Potion_AC','Build Up Potion AC',2,10,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'if (strcharinfo(3) == "slabw01") { sc_start SC_EP16_2_BUFF_AC,10000,0; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (23080,'Cursed_Crystal','Cursed Crystal',2,1,NULL,500,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'callfunc("F_Cursed_Crystal");',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (23086,'Enchant_Stone_Box10','Costume Enchantment Stone Box 10',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,'1',NULL,NULL,'getgroupitem(IG_Enchant_Stone_Box10);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (23087,'Small_Leather_Bag','Small Leather Bag',2,0,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'getitem 25180,1; getitem 25181,1; getitem 25182,1; getitem 25183,1; getitem 25184,1; getitem 25185,1;',NULL,NULL);
@@ -12178,19 +12178,19 @@ REPLACE INTO `item_db_re` VALUES (25147,'Well_Eatenl_Rabbit_Doll','Well Eatenl R
 REPLACE INTO `item_db_re` VALUES (25148,'Cute_Starved_Demon_Doll','Cute Starved Demon Doll',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25149,'Doll_With_Warm_Scarf','Doll With Warm Scarf',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25150,'Hugging_Alice_Pilow','Hugging Alice Pilow',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25151,'Rachel\'s_Revolver','Rachel\'s Revolver',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25152,'Cherished_Bouquet','Cherished Bouquet',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25151,'Rachels_Revolver','Rachel\'s Revolver',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25152,'Cherish_Bouquet','Cherished Bouquet',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25153,'Broken_Gun_Wreck','Broken Gun Wreck',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25154,'Antique_Gunpowder','Antique Gunpowder',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25155,'Schwartz\'s_Honor_Token','Schwarz\'s Honor Token',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25156,'Piece_of_Chimera','Piece of Chimera',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25154,'Antique_Powder','Antique Gunpowder',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25155,'Swz_Honor_Token','Schwarz\'s Honor Token',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25156,'Piece_Of_Chimera','Piece of Chimera',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25157,'Fallen_Leaves_Branch','Fallen Leaves Branch',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25158,'Core_Jelly','Core Jelly',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25159,'Heart_Hunter_Seal','Heart Hunter\'s Seal',3,0,NULL,10,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25160,'Borrowed_Book','Borrowed Book',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25161,'Delicious_Handmade_Cookie','Delicious Handmade Cookie',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25162,'Crispy_Anchovy','Crispy Anchovy',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25163,'Arms_Shop_Ad','Arms Shop Ad',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25160,'Borrow_Book','Borrowed Book',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25161,'Handmade_cookie2','Delicious Handmade Cookie',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25162,'Anchovy_cookie','Crispy Anchovy',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25163,'Arms_Shop_AD','Arms Shop Ad',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25164,'Fresh_Tea_Leaves','Fresh Tea Leaves',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25165,'High_Class_Tea','High Class Tea',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25166,'Very_Shining_Ring','Very Shining Ring',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
@@ -12205,10 +12205,10 @@ REPLACE INTO `item_db_re` VALUES (25176,'BlueAuraEffect_Middle','Blue Aura Effec
 REPLACE INTO `item_db_re` VALUES (25177,'ShadowEffect_Middle','Shadow Effect (Middle)',3,20,NULL,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25178,'PinkGlowEffect_Middle','Pink Glow Effect (Middle)',3,20,NULL,100,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25179,'Blessing_Star','Blessing Star',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25180,'Old_Rings','Old Rings',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25180,'Old_Couple_Ring','Old Rings',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25181,'Wood_Rosary','Wood Rosary',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25182,'Assassin\'s_Mark_Dagger','Assassin\'s Mark Dagger',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (25183,'Decorated_Archer\'s_Thimble','Decorated Archer\'s Thimble',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25182,'Assassin_PT_Dagger','Assassin\'s Mark Dagger',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (25183,'Deco_Thimble_Archer','Decorated Archer\'s Thimble',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25184,'Portable_Sewingbox','Portable Sewingbox',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25185,'Locket_Pendant','Locket Pendant',3,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (25187,'Slug_Bullet','Slug Bullet',3,1200,NULL,1200,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
@@ -12346,7 +12346,7 @@ REPLACE INTO `item_db_re` VALUES (26110,'CandyCaneRod','Candy Cane Rod',5,20,NUL
 REPLACE INTO `item_db_re` VALUES (26138,'Hellfire_Staff','Hellfire Staff',5,20,NULL,800,'110:180',NULL,1,2,0x00818314,63,2,2,4,'175',1,23,'.@r = getrefine; bonus bInt,5; bonus bMatk,15*(.@r/2); bonus bUnbreakableWeapon; if (.@r>=9) .@val = 15; else if (.@r>=7) .@val = 5; bonus2 bMagicAtkEle,Ele_Fire,.@val; bonus2 bMagicAtkEle,Ele_Earth,.@val;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26139,'Icicle_Staff','Icicle Staff',5,20,NULL,800,'110:180',NULL,1,2,0x00818314,63,2,2,4,'175',1,23,'.@r = getrefine; bonus bInt,5; bonus bMatk,15*(.@r/2); bonus bUnbreakableWeapon; if (.@r>=9) .@val = 15; else if (.@r>=7) .@val = 5; bonus2 bMagicAtkEle,Ele_Water,.@val; bonus2 bMagicAtkEle,Ele_Holy,.@val;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26151,'Rutilus_Stick-OS','Rutilus Stick-OS',5,20,NULL,900,'80:175',NULL,1,2,0x00818315,63,2,2,4,'130',1,10,'.@r = getrefine(); bonus bUnbreakableWeapon; bonus2 bMagicAddEle,Ele_Neutral,5; bonus2 bMagicAddEle,Ele_Earth,5; if (.@r >= 7) { bonus bVariableCastrate,-7; if (.@r >= 9) { autobonus "{ bonus2 bMagicAtkEle,Ele_Fire,30; }",5,10000,BF_MAGIC; /* unknown rate */ if (.@r >= 11) { bonus bDelayrate,-10; } } }',NULL,NULL);
-#REPLACE INTO `item_db_re` VALUES (26154,'Spirit_Plumb','Spirit Plumb',5,20,NULL,1100,'70:160',NULL,1,2,0x00000000,63,2,2,4,'100',1,10,'.@r = getrefine(); bonus bMatk,10*(.@r/2); bonus bMaxSPrate,2*(.@r/3); if (.@r >= 7) { bonus2 bSkillAtk,"SP_SPA",15; if (.@r >= 9) { bonus bVariableCastrate,-10; if (.@r >= 11) { bonus2 bSkillAtk,"SP_SWHOO",20; } } }',NULL,NULL);
+#REPLACE INTO `item_db_re` VALUES ( 26154,'Spirit_Plumb','Spirit Plumb',5,20,NULL,1100,'70:160',NULL,1,2,0x00000000,63,2,2,4,'100',1,10,'.@r = getrefine(); bonus bMatk,10*(.@r/2); bonus bMaxSPrate,2*(.@r/3); if (.@r >= 7) { bonus2 bSkillAtk,"SP_SPA",15; if (.@r >= 9) { bonus bVariableCastrate,-10; if (.@r >= 11) { bonus2 bSkillAtk,"SP_SWHOO",20; } } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26155,'Meowmeow_Foxtail','Meowmeow Foxtail',5,20,NULL,1100,'300:300',NULL,1,2,0x80000000,7,2,2,4,'100',1,10,'.@r = getrefine(); bonus bMatk,10*(.@r/2); bonus bBaseAtk,10*(.@r/2); bonus2 bAddClass,Class_All,2*(.@r/3); bonus bMatkRate,2*(.@r/3); if (.@r >= 7) { bonus2 bSkillAtk,"SU_LUNATICCARROTBEAT",15; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",15; if (.@r >= 9) { bonus bVariableCastrate,-10; bonus bAspdRate,10; if (.@r >= 11) { bonus2 bSkillAtk,"SU_PICKYPECK",15; bonus2 bSkillAtk,"SU_CN_METEOR",15; } } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26158,'Crimson_Rose_Stick','Crimson Rose Stick',5,20,NULL,700,'100:180',NULL,1,2,0x00000200,56,2,2,4,'170',1,10,'.@r = getrefine(); bonus bMatk,4*.@r; bonus bUnbreakableWeapon; bonus2 bMagicAtkEle,Ele_Fire,5; bonus2 bMagicAtkEle,Ele_Dark,5; if (.@r >= 9) { bonus2 bSkillAtk,"WL_HELLINFERNO",30; } if (.@r >= 11) { bonus2 bSkillCooldown,"WL_CRIMSONROCK",-1000; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (26159,'Psychic_Spear_Rod','Psychic Spear Rod',5,20,NULL,800,'120:180',NULL,1,2,0x00010000,56,2,2,4,'170',1,10,'.@r = getrefine(); bonus bMatk,4*.@r; bonus bUnbreakableWeapon; bonus2 bMagicAtkEle,Ele_Wind,5; bonus2 bMagicAtkEle,Ele_Neutral,5; if (.@r >= 9) { bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",30; } if (.@r >= 11) { bonus2 bSkillCooldown,"SO_VARETYR_SPEAR",-2000; }',NULL,NULL);
@@ -12575,10 +12575,10 @@ REPLACE INTO `item_db_re` VALUES (28201,'Southern_Cross_R','Southern Cross',5,28
 REPLACE INTO `item_db_re` VALUES (28202,'Southern_Cross_R_','Southern Cross',5,2800000,NULL,2000,'480',NULL,9,1,0x40000000,63,2,34,4,'141',1,21,'bonus3 bAutoSpell,"GC_CROSSIMPACT",1,50;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28203,'Half_BF_Rifle1','Half BF Rifle1',5,0,NULL,0,'50',NULL,9,0,0x41000000,63,2,34,3,'80',1,18,'bonus bDex,2; bonus bHit,8; bonus bCritical,8; bonus2 bAddRace,RC_DemiHuman,30; bonus2 bAddRace,RC_Player_Human,30; bonus2 bVariableCastrate,"GS_TRACKING",-20; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player_Human,10; bonus bUnbreakableWeapon;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28204,'Half_BF_Shotgun1','Half BF Shotgun1',5,0,NULL,0,'100',NULL,9,0,0x41000000,63,2,34,3,'80',1,20,'bonus bDex,2; bonus bSplashRange,1; bonus2 bAddRace,RC_DemiHuman,30; bonus2 bAddRace,RC_Player_Human,30; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player_Human,10; autobonus "{ bonus bBaseAtk,80; bonus2 bHPLossRate,100,1000; }",30,6000,BF_WEAPON,"{ specialeffect2 EF_BASH3D; }"; bonus bUnbreakableWeapon;',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28223,'Finisher','Finisher',5,20,NULL,2000,'200',NULL,9,2,0x40000000,63,2,34,3,'120',1,18,'.@r = getrefine(); bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_AM_BLAST",30; bonus2 bSkillAtk,"RL_MASS_SPIRAL",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_AM_BLAST",-1000; } }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28224,'Dustfire','Dustfire',5,20,NULL,1300,'300',NULL,9,2,0x40000000,63,2,34,3,'120',1,20,'bonus bSplashRange,1; bonus2 bAddEff,Eff_Blind,50; if (.@r >= 7) { bonus2 bSkillAtk,"RL_S_STORM",15; if (.@r >= 9) { bonus2 bSkillAtk,"RL_BANISHING_BUSTER",15; } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28223,'Just_Finish','Finisher',5,20,NULL,2000,'200',NULL,9,2,0x40000000,63,2,34,3,'120',1,18,'.@r = getrefine(); bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_AM_BLAST",30; bonus2 bSkillAtk,"RL_MASS_SPIRAL",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_AM_BLAST",-1000; } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28224,'Dust_Fire','Dustfire',5,20,NULL,1300,'300',NULL,9,2,0x40000000,63,2,34,3,'120',1,20,'bonus bSplashRange,1; bonus2 bAddEff,Eff_Blind,50; if (.@r >= 7) { bonus2 bSkillAtk,"RL_S_STORM",15; if (.@r >= 9) { bonus2 bSkillAtk,"RL_BANISHING_BUSTER",15; } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28225,'Burning_Rose','Burning Rose',5,20,NULL,2500,'200',NULL,9,2,0x40000000,63,2,34,3,'120',1,19,'bonus bLongAtkRate,15; if (.@r >= 7) { bonus2 bSkillAtk,"RL_FIRE_RAIN",30; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_FIRE_RAIN",-1000; } }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28226,'Avenger','Avenger',5,20,NULL,1800,'350',NULL,9,2,0x40000000,63,2,34,3,'120',1,21,'bonus bLongAtkRate,20; if (.@r >= 7) { bonus2 bSkillAtk,"RL_D_TAIL",15; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_H_MINE",-1000; } }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28226,'Revenger','Avenger',5,20,NULL,1800,'350',NULL,9,2,0x40000000,63,2,34,3,'120',1,21,'bonus bLongAtkRate,20; if (.@r >= 7) { bonus2 bSkillAtk,"RL_D_TAIL",15; if (.@r >= 9) { bonus2 bSkillCooldown,"RL_H_MINE",-1000; } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28240,'Calf_Kingcobra','Calf Kingcobra',5,0,0,900,'230',NULL,9,2,0x40000000,63,2,34,4,'150',1,18,'.@r = getrefine(); bonus bAspdRate,10 + (.@r > 6 ? 5 : 0); bonus bLongAtkRate,(.@r/2)*5 + (.@r > 11 ? 5 : 0); if(.@r > 8){ bonus bCritAtkRate,15; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28241,'Calf_Diamondback','Calf Diamondback',5,0,NULL,3000,'220',NULL,9,2,0x40000000,63,2,34,4,'150',1,19,'.@r = getrefine(); bonus bDex,2; bonus2 bAddClass,Class_All,2; bonus bLongAtkRate,(.@r/2)*5 + (.@r > 11 ? 5 : 0); if(.@r > 6){ bonus2 bSkillAtk,"RL_R_TRIP",20; } if(.@r > 8){ bonus2 bSkillUseSPrate,"RL_R_TRIP",5; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28242,'Calf_Anaconda','Calf Anaconda',5,10,NULL,1400,'305',NULL,9,2,0x40000000,63,2,34,4,'150',1,20,'.@r = getrefine(); bonus bSplashRange,1; bonus bMaxSPrate,2; bonus bLongAtkRate,(.@r/2)*5 + (.@r > 8 ? 5 : 0); if(.@r > 6){ bonus2 bSkillAtk,"RL_BANISHING_BUSTER",20; } if(.@r > 11){ bonus2 bSkillUseSPrate,"RL_BANISHING_BUSTER",15; }',NULL,NULL);
@@ -12620,6 +12620,8 @@ REPLACE INTO `item_db_re` VALUES (28356,'Prontera_Badge','Prontera Badge',4,0,NU
 REPLACE INTO `item_db_re` VALUES (28357,'Vesper_Gear_03','Vesper Gear 03',4,20,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,136,NULL,'90',0,0,'bonus bMdef,3; bonus bFlee,10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28358,'Cursed_Lucky_Clover','Cursed Lucky Clover',4,0,NULL,100,NULL,NULL,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,NULL,'bonus bLuk,2; bonus bFlee,3; bonus2 bAddEff2,Eff_Curse,5;',NULL,'sc_end SC_CLOAKING; /*FIXME: Because the combo has Cloaking skill*/');
 REPLACE INTO `item_db_re` VALUES (28359,'Vesper_Gear_04','Vesper Gear 04',4,20,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,136,NULL,'90',0,0,'bonus bMdef,3; bonus bHit,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28370,'Broken_Chip_Green','Broken Chip (Green)',4,0,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus2 bAddClass,Class_All,5; bonus bDelayrate,-5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28371,'Broken_Chip_Red','Broken Chip (Red)',4,0,NULL,100,NULL,1,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus2 bMagicAddClass,Class_All,5; bonus bVariableCastrate,-10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28372,'Imperial_Ring','Imperial Ring',4,0,NULL,500,NULL,3,NULL,1,0xFFFFFFFF,63,2,136,NULL,'50',0,NULL,'bonus bStr,1; bonus bInt,1; bonus bMaxHPRate,3; bonus bMaxSPRate,3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28374,'Foxtail_Ring','Foxtail Ring',4,20,NULL,100,NULL,0,NULL,0,0x80000000,7,2,136,NULL,'1',0,NULL,'bonus2 bExpAddRace,RC_All,5; .@lvl = min(BaseLevel/5,10); bonus bAtk,2*.@lvl; bonus bMatk,2*.@lvl; bonus bMaxHP,10*.@lvl; bonus bMaxSP,5*.@lvl;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28377,'Magical_Ring','Magical Ring',4,0,NULL,100,NULL,NULL,NULL,1,0xFFFFFFFF,63,2,136,NULL,'20',0,NULL,'bonus2 bMagicAtkEle,Ele_Fire,5; bonus2 bMagicAtkEle,Ele_Water,5; bonus2 bMagicAtkEle,Ele_Earth,5; bonus2 bMagicAtkEle,Ele_Wind,5; if (BaseLevel > 4) { bonus2 bSkillAtk,"MG_FIREBOLT",BaseLevel/5; bonus2 bSkillAtk,"MG_COLDBOLT",BaseLevel/5; bonus2 bSkillAtk,"MG_LIGHTNINGBOLT",BaseLevel/5; bonus2 bSkillAtk,"WZ_EARTHSPIKE",BaseLevel/5; }',NULL,NULL);
@@ -12644,8 +12646,8 @@ REPLACE INTO `item_db_re` VALUES (28421,'Greater_Rabbit_Talisman','Greater Rabbi
 REPLACE INTO `item_db_re` VALUES (28422,'Shiny_Branch_Talisman','Shiny Branch Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_SV_STEMSPEAR",-50; bonus2 bSkillAtk,"SU_SV_STEMSPEAR",(readparam(bInt)/2)+(20 * getskilllv("SU_SV_STEMSPEAR")); /* Need to confirm damage formula */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28423,'Fresh_Tuna_Talisman','Fresh Tuna Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bSkillCooldown,"SU_TUNAPARTY",-5000; bonus3 bAutoSpellWhenHit,"SU_TUNAPARTY",max(1,getskilllv("SU_TUNAPARTY")),10;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28424,'Chubby_Worm_Talisman','Chubby Worm Talisman',4,0,NULL,100,NULL,1,NULL,1,0x80000000,63,2,136,NULL,'100',NULL,NULL,'bonus2 bVariableCastrate,"SU_PICKYPECK",-50; bonus2 bSkillAtk,"SU_PICKYPECK",(readparam(bDex)/2)+(20 * getskilllv("SU_PICKYPECK")); /* Need to confirm damage formula */',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28425,'Mercenary_Ring_Type_A','Mercenary Ring Type A',4,20,NULL,200,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'99',0,0,'bonus bVit,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bMaxHP,1000; bonus bMaxSP,200; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28426,'Mercenary_Ring_Type_B','Mercenary Ring Type B',4,20,NULL,200,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'99',0,0,'bonus bInt,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bVariableCastrate,-30; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28425,'Mercenary_Ring_A','Mercenary Ring Type A',4,20,NULL,200,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'99',0,0,'bonus bVit,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bMaxHP,1000; bonus bMaxSP,200; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28426,'Mercenary_Ring_B','Mercenary Ring Type B',4,20,NULL,200,NULL,0,NULL,0,0xFFFFFFFF,63,2,136,NULL,'99',0,0,'bonus bInt,3; if (BaseClass == Job_Gunslinger || BaseJob == Job_Novice || BaseJob == Job_SuperNovice || BaseClass == Job_Ninja || BaseClass == Job_Taekwon) { bonus bVariableCastrate,-30; }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28429,'Arquien\'s_Necklace','Arquien\'s Necklace',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'20',0,0,'bonus2 bSkillAtk,"MC_CARTREVOLUTION",Baselevel; bonus2 bSkillAtk,"NC_AXETORNADO",(Baselevel/3); bonus2 bSkillAtk,"NC_POWERSWING",(Baselevel/5); bonus2 bSkillUseSP,"NC_POWERSWING",2; bonus2 bAddMonsterDropItem,529,2000; bonus2 bAddMonsterDropItem,530,2000; bonus2 bAddMonsterDropItem,573,500; bonus2 bAddItemHealRate,529,100; bonus2 bAddItemHealRate,530,100; /* Unknow drop rates */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28430,'Arch_Bishop_Ring','Arch Bishop Ring',4,20,NULL,400,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'90',0,0,'bonus bLuk,2; bonus bFlee2,5; bonus bUseSPrate,-5; bonus bHealPower,15; bonus bAddItemHealRate,15;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28433,'Luminous_Blue_Stone','Luminous Blue Stone',4,20,NULL,400,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'90',0,0,'bonus bAgi,2; bonus bCritical,5; bonus bAspdRate,5; bonus bCritAtkRate,2; skill "MG_SIGHT",1; if (readparam(bLuk)>=100) { bonus bCritical,10; bonus bCritAtkRate,10; }',NULL,NULL);
@@ -12729,7 +12731,7 @@ REPLACE INTO `item_db_re` VALUES (28618,'Book_of_the_Sun_God','Book of the Sun G
 REPLACE INTO `item_db_re` VALUES (28619,'Prisoner_Diary','Prisoner\'s Diary',5,20,NULL,800,'210',NULL,1,2,0x00410100,63,2,2,3,'175',1,15,'.@r = getrefine(); bonus bMaxHPrate,5; bonus bMaxSPrate,5; bonus bBaseAtk,20*(.@r/2); if (.@r>=9) .@val = 25; else if (.@r>=7) .@val = 10; if (.@r>=11) { bonus2 bAddEle,Ele_Dark,15; bonus2 bMagicAddEle,Ele_Dark,15; bonus2 bAddEle,Ele_Undead,15; bonus2 bMagicAddEle,Ele_Undead,15; } bonus2 bAddRace,RC_Demon,.@val; bonus2 bAddRace,RC_Undead,.@val; bonus2 bMagicAddRace,RC_Demon,.@val; bonus2 bMagicAddRace,RC_Undead,.@val;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28626,'Illusion_Tablet','Illusion Tablet',5,0,NULL,800,'170',NULL,1,2,0x00410100,63,2,2,4,'100',1,15,'.@val = 10 + 10*(min(getrefine(),10)/3); bonus2 bAddEle,Ele_Dark,.@val; bonus2 bAddEle,Ele_Undead,.@val; bonus2 bAddEle,Ele_Poison,.@val; bonus2 bAddEle,Ele_Ghost,.@val; bonus2 bSubDefEle,Ele_Dark,-30;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28629,'Circuit_Board-OS','Circuit Board-OS',5,20,NULL,1200,'180',NULL,1,2,0x00410100,63,2,2,4,'130',1,15,'.@r = getrefine(); bonus2 bAddClass,Class_All,3; if (.@r >= 7) { bonus bAspdRate,7; if (.@r >= 9) { bonus2 bAddSize,Size_Small,20; bonus2 bAddSize,Size_Medium,20; if (.@r >= 11) { bonus bCritAtkRate,20; } } }',NULL,NULL);
-#REPLACE INTO `item_db_re` VALUES (28631,'Thousand_Sun','Thousand Sun',5,20,NULL,900,'160',NULL,1,2,0x00000000,63,2,2,4,'100',1,15,'.@r = getrefine(); bonus bBaseAtk,10*(.@r/2); bonus bMaxSPrate,2*(.@r/3); if (.@r >= 7) { bonus2 bSkillAtk,"SJ_PROMINENCEKICK",15; if (.@r >= 9) { bonus bAspdRate,10; if (.@r >= 11) { bonus2 bSkillAtk,"SJ_SOLARBURST",20; } } }',NULL,NULL);
+#REPLACE INTO `item_db_re` VALUES ( 28631,'Thousand_Sun','Thousand Sun',5,20,NULL,900,'160',NULL,1,2,0x00000000,63,2,2,4,'100',1,15,'.@r = getrefine(); bonus bBaseAtk,10*(.@r/2); bonus bMaxSPrate,2*(.@r/3); if (.@r >= 7) { bonus2 bSkillAtk,"SJ_PROMINENCEKICK",15; if (.@r >= 9) { bonus bAspdRate,10; if (.@r >= 11) { bonus2 bSkillAtk,"SJ_SOLARBURST",20; } } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28633,'Boltijin','Boltijin',5,20,NULL,800,'120:175',NULL,1,2,0x00010000,56,2,2,4,'170',1,15,'.@r = getrefine(); bonus bMatk,4*.@r; if (.@r>=9) .@val = 30; if (.@r>=11) { bonus2 bSkillAtk,"WZ_EARTHSPIKE",50; bonus2 bSkillAtk,"WZ_HEAVENDRIVE",50; } bonus2 bSkillAtk,"MG_FIREBOLT",20+.@val; bonus2 bSkillAtk,"MG_COLDBOLT",20+.@val; bonus2 bSkillAtk,"MG_LIGHTNINGBOLT",20+.@val;',NULL,NULL);
 #===================================================================
 # More daggers
@@ -12766,7 +12768,7 @@ REPLACE INTO `item_db_re` VALUES (28907,'Shield_Of_Gust','Shield Of Gust',4,0,NU
 REPLACE INTO `item_db_re` VALUES (28908,'Shield_Of_Water','Shield Of Water',4,0,NULL,500,NULL,80,NULL,1,0xFFFFFFFF,63,2,32,NULL,'90',1,1,'bonus2 bSubEle,Ele_Water,25; .@r = getrefine(); if(.@r > 4) { bonus bAspd,1+((.@r > 6) ? 1 : 0); }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28909,'Shield_Of_Earth','Shield Of Earth',4,0,NULL,500,NULL,80,NULL,1,0xFFFFFFFF,63,2,32,NULL,'90',1,1,'bonus2 bSubEle,Ele_Earth,25; .@r = getrefine(); if(.@r > 4) { bonus bAspd,1+((.@r > 6) ? 1 : 0); }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28910,'Rectangular_Large_Sleeve','Rectangular Large Sleeve',4,20,NULL,800,NULL,80,NULL,1,0xFFFFFFFF,63,2,32,NULL,'100',1,1,'bonus bLongAtkDef,5; .@r = getrefine(); if(.@r>=5) { bonus bLongAtkDef,5; } if(.@r>=7) { bonus bLongAtkDef,10; } if(.@r>=9) { bonus bLongAtkDef,15; }',NULL,NULL);
-REPLACE INTO `item_db_re` VALUES (28913,'Ultralight_Magic_Shield','Ultralight Magic Shield',4,0,NULL,100,NULL,50,NULL,1,0xFFFFFFFF,63,2,32,NULL,'100',1,1,'.@r = getrefine(); .@val = 5; bonus2 bIgnoreDefClassRate,Class_Normal,10; if (.@r >= 9) { .@val += 5; } else if (.@r >= 7) { .@val += 2; } bonus bAspdRate,.@val; bonus2 bSubEle,Ele_Neutral,.@val;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (28913,'Ultra_Light_MShield','Ultralight Magic Shield',4,0,NULL,100,NULL,50,NULL,1,0xFFFFFFFF,63,2,32,NULL,'100',1,1,'.@r = getrefine(); .@val = 5; bonus2 bIgnoreDefClassRate,Class_Normal,10; if (.@r >= 9) { .@val += 5; } else if (.@r >= 7) { .@val += 2; } bonus bAspdRate,.@val; bonus2 bSubEle,Ele_Neutral,.@val;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28915,'Bunker_Shield','Bunker Shield',4,20,NULL,3500,NULL,90,NULL,1,0xFFFFFFFF,63,2,32,NULL,'50',1,1,'.@r = getrefine(); if(.@r >= 5) { .@dmg = .@r - 4; } bonus2 bAddClass,Class_All,(4+.@dmg); bonus bAspdRate,-5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28916,'Gaia_Shield','Gaia Shield',4,20,NULL,2000,NULL,150,NULL,1,0xFFFFFFFF,63,2,32,NULL,'90',1,1,'bonus bMdef,10; bonus2 bSubEle,Ele_Earth,10; bonus2 bAddEle,Ele_Earth,5; bonus2 bMagicAddEle,Ele_Earth,5; .@r = getrefine(); if(.@r>=6) { bonus2 bSubEle,Ele_Earth,15; bonus2 bAddEle,Ele_Earth,10; bonus2 bMagicAddEle,Ele_Earth,10; } if(.@r>=8) { if(readparam(bStr)>=90) { bonus bBaseAtk,50; } if(readparam(bAgi)>=90) { bonus bAspdRate,5; } if(readparam(bVit)>=90) { bonus bHealPower2,10; bonus bAddItemHealRate,10; } if(readparam(bInt)>=90) { bonus bMatk,30; } if(readparam(bDex)>=90) { bonus bVariableCastrate,-5; } if(readparam(bLuk)>=90) { bonus bCritAtkRate,5; } }',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (28918,'Shield_of_Chaos','Shield of Chaos',4,20,NULL,500,NULL,80,NULL,1,0xFFFFFFFF,63,2,32,NULL,'90',1,1,'.@r = getrefine(); bonus bMdef,5; bonus2 bSubEle,Ele_Dark,25; if (.@r>=5) bonus bAspd,1; if (.@r>=7) bonus bAspd,1;',NULL,NULL);
@@ -12914,6 +12916,16 @@ REPLACE INTO `item_db_re` VALUES (29159,'EXP2TOP','Experience + 2%',6,0,NULL,0,N
 REPLACE INTO `item_db_re` VALUES (29160,'BlueAura_Effect','Blue Aura Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'/* todo */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29161,'Pink_Glow_Effect','Pink Glow Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'/* todo */',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29162,'Shadow_Effect','Shadow Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'/* todo */',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29166,'A-Tolerance','A-Tolerance',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus2 bSubClass,Class_All,1; .@r = getrefine(); bonus2 bSubRace,RC_DemiHuman,.@r/3; bonus2 bSubRace,RC_Formless,.@r/3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29167,'A-Hit','A-Hit',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bHit,20; .@r = getrefine(); if(.@r>=7){ bonus bHit,10; } if(.@r>=8){ bonus bHit,10; } if(.@r>=9){ bonus bHit,10; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29168,'A-Flee','A-Flee',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bFlee,20; .@r = getrefine(); if(.@r>=7){ bonus bFlee,10; } if(.@r>=8){ bonus bFlee,10; } if(.@r>=9){ bonus bFlee,10; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29169,'A-Mdef','A-Mdef',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMdef,2; .@r = getrefine(); if(.@r>=6){ bonus bMdef,4; } if(.@r>=8){ bonus bMdef,8; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29170,'S-Atk','S-Atk',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bBaseAtk,50; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bBaseAtk,150; }",.@c,.@t;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29171,'S-Matk','S-Matk',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMatk,100; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bMatk,150; }",.@c,.@t,BF_MAGIC;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29172,'S-Avoid','S-Avoid',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bFlee2,5; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bFlee2,100; }",.@c,.@t;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29173,'S-MaxHP','S-MaxHP',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bMaxHP,2500; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bMaxHP,7500; }",.@c,.@t;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29174,'S-Quick','S-Quick',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bVariableCastrate,-10; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bVariableCastrate,-100; bonus bDelayrate,-100; }",.@c,.@t,BF_MAGIC;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29175,'S-Cri','S-Cri',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bCritical,10; .@r = getrefine(); .@c = 100; .@t = 3000; if(.@r>=8){ .@t += 1000; } if(.@r>=9){ .@c += 100; .@t += 1000; } autobonus2 "{ bonus bCritical,100; }",.@c,.@t;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29224,'WhiteBody_Effect','White Body Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'hateffect HAT_EF_WHITEBODY,true;',NULL,'hateffect HAT_EF_WHITEBODY,false;');
 REPLACE INTO `item_db_re` VALUES (29225,'WaterField_Effect','Water Field Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'hateffect HAT_EF_WATER_BELOW2,true;',NULL,'hateffect HAT_EF_WATER_BELOW2,false;');
 REPLACE INTO `item_db_re` VALUES (29226,'ExplodingWave_Effect','Crimson Wave Effect',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'/* todo */',NULL,NULL);
@@ -12973,6 +12985,13 @@ REPLACE INTO `item_db_re` VALUES (29359,'Fatal_Top','Fatal (Upper)',6,0,NULL,0,N
 REPLACE INTO `item_db_re` VALUES (29360,'Fatal_Bottom','Fatal (Lower)',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bCritAtkRate,3;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29361,'Fatal_Robe','Fatal (Garment)',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bCritAtkRate,20;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29362,'DoubleAttack','Double Attack',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'skill "TF_DOUBLE",3; bonus bDoubleRate,15;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29438,'Z-Knockback','Z-Knockback',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bNoKnockback;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29439,'Z-Immortal','Z-Immortal',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bUnbreakableHelm; /* fix me */',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29440,'Z-Killgain','Z-Killgain',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bSPGainValue,2; .@r = getrefine(); if(.@r>=7){ bonus bSPGainValue,3; } if(.@r>=8){ bonus bSPGainValue,5; } if(.@r>=9){ bonus bSPGainValue,10; }',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29441,'Z-Reincarnation','Z-Reincarnation',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bRestartFullRecover;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29442,'Z-NoDispell','Z-NoDispell',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bNoCastCancel2;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29443,'Z-Clairvoyance','Z-Clairvoyance',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bIntravision;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (29444,'Z-Cast_Fixed','Z-Cast Fixed',6,0,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'bonus bFixedCastrate,-50;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29579,'Racing_SG_1','Racing (Star Gladiator) 1Lv',6,20,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29580,'Racing_SG_2','Racing (Star Gladiator) 2Lv',6,20,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (29581,'Racing_SG_3','Racing (Star Gladiator) 3Lv',6,20,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
@@ -13666,7 +13685,7 @@ REPLACE INTO `item_db_re` VALUES (32108,'Antique_Cello','Antique Cello',5,0,NULL
 #===================================================================
 # More Accessories
 #===================================================================
-REPLACE INTO `item_db_re` VALUES (32203,'Accelerator_Chip','Accelerator Chip',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus2 bAddClass,Class_All,5; bonus bMatkRate,5; bonus bAspdRate,5; /* Combo with Riot Chip not implemented yet. */',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (32203,'Accelerator_Chip','Accelerator Chip',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus2 bAddClass,Class_All,5; bonus bMatkRate,5; bonus bAspdRate,5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (32204,'Immortal_Dog_Tag','Immortal Dog Tag',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus bBaseAtk,50; bonus bMatk,50; bonus2 bSubRace,RC_Undead,4;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (32206,'Prontera_Militia_Glove','Prontera Militia Glove',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,136,NULL,'100',0,0,'bonus bVit,5; bonus bMdef,5; bonus bAspdRate,5; bonus2 bSubRace,RC_DemiHuman,3; bonus2 bSubRace,RC_Player_Human,3; bonus2 bSubEle,Ele_Water,5; bonus2 bSubEle,Ele_Earth,5; bonus2 bSubEle,Ele_Wind,5; bonus2 bSubEle,Ele_Fire,5;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (32207,'Illusion_Booster_R','Illusion Booster R',4,20,NULL,100,NULL,0,NULL,1,0xFFFFFFFF,63,2,8,NULL,'130',0,0,'bonus2 bAddClass,Class_All,5;',NULL,NULL);
@@ -13716,15 +13735,160 @@ REPLACE INTO `item_db_re` VALUES (100073,'WL_MB_CM','Spell Book (Comet)',11,0,NU
 REPLACE INTO `item_db_re` VALUES (100074,'WL_MB_TV','Spell Book (Tetra Vortex)',11,0,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemskill "WL_READING_SB_READING",10;',NULL,NULL);
 
 #REPLACE INTO `item_db_re` VALUES (100202,'Enchant_Stone_Box20','Costume Enchantment Stone Box 20',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,'1',NULL,NULL,'getgroupitem(IG_Enchant_Stone_Box20);',NULL,NULL);
+
 REPLACE INTO `item_db_re` VALUES (100231,'Ref_T_Potion','Golden X',0,10,NULL,30,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_REF_T_POTION,30000,0;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (100232,'Add_Atk_Potion','Red Herb Activator',0,10,NULL,30,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ADD_ATK_DAMAGE,500000,15;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (100233,'Add_Matk_Potion','Blue Herb Activator',0,10,NULL,30,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'sc_start SC_ADD_MATK_DAMAGE,500000,15;',NULL,NULL);
+
 #REPLACE INTO `item_db_re` VALUES (100314,'Enchant_Stone_Box21','Costume Enchantment Stone Box 21',2,10,NULL,10,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,NULL,NULL,'1',NULL,NULL,'getgroupitem(IG_Enchant_Stone_Box21);',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100128,'Noblesses_Refine_Ticket','Noblesses Refine Ticket',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'100',NULL,NULL,'/*upgradeui 100128;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100129,'Imperial_Refine_Ticket','Imperial Refine Ticket',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'125',NULL,NULL,'/*upgradeui 100129;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100130,'Grace_Refine_Ticket','Grace Refine Ticket',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'150',NULL,NULL,'/*upgradeui 100130;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100131,'Imperial_P_Mo_Garment','Imperial Physical Modification Permit (Garment)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'125',NULL,NULL,'/*upgradeui 100131;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100132,'Imperial_M_Mo_Garment','Imperial Magical Modification Permit (Garment)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'125',NULL,NULL,'/*upgradeui 100132;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100133,'Grace_P_Mo_Garment','Grace Physical Modification Permit (Garment)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'150',NULL,NULL,'/*upgradeui 100133;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100134,'Grace_M_Mo_Garment','Grace Magical Modification Permit (Garment)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'150',NULL,NULL,'/*upgradeui 100134;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100135,'Imperial_P_Mo_Armor','Imperial Physical Modification Permit (Armor)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'125',NULL,NULL,'/*upgradeui 100135;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100136,'Imperial_M_Mo_Armor','Imperial Magical Modification Permit (Armor)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'125',NULL,NULL,'/*upgradeui 100136;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100137,'Grace_P_Mo_Armor','Grace Physical Modification Permit (Armor)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'150',NULL,NULL,'/*upgradeui 100137;*/',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (100138,'Grace_M_Mo_Armor','Grace Magical Modification Permit (Armor)',11,20,NULL,0,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'150',NULL,NULL,'/*upgradeui 100138;*/',NULL,NULL);
 # Costumes
 #REPLACE INTO `item_db_re` VALUES (400020,'C_BeachBall','Costume Beachball',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,1024,NULL,'1',0,1918,NULL,NULL,NULL);
 #REPLACE INTO `item_db_re` VALUES (440000,'C_SharkHead','Costume Shark Hat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,5120,NULL,'1',0,1919,NULL,NULL,NULL);
 #REPLACE INTO `item_db_re` VALUES (440002,'C_Happy_Cat_TW','Costume Happy Cat',4,0,NULL,0,NULL,NULL,NULL,0,0xFFFFFFFF,63,2,7168,NULL,'1',0,1980,NULL,NULL,NULL);
+# New Armor
+REPLACE INTO `item_db_re` VALUES (450018,'Noblesse_Breath_Armor','Noblesse Breath Armor',4,20,NULL,0,NULL,100,NULL,1,0x00000080,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMaxHPrate,5; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bMaxHPrate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450019,'Noblesse_Knight_Armor','Noblesse Knight Armor',4,20,NULL,0,NULL,100,NULL,1,0x00000080,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450020,'Noblesse_Spear_Armor','Noblesse Spear Armor',4,20,NULL,0,NULL,100,NULL,1,0x00004000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450021,'Noblesse_Genesis_Armor','Noblesse Genesis Armor',4,20,NULL,0,NULL,100,NULL,1,0x00004000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450022,'Noblesse_Sharp_Suit','Noblesse Sharp Suit',4,20,NULL,0,NULL,70,NULL,1,0x00000800,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450023,'Noblesse_Aimed_suit','Noblesse Aimed suit',4,20,NULL,0,NULL,70,NULL,1,0x00000800,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450024,'Noblesse_Severe_Suit','Noblesse Severe Suit',4,20,NULL,0,NULL,70,NULL,1,0x00080000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450025,'Noblesse_Reverb_Suit','Noblesse Reverb Suit',4,20,NULL,0,NULL,70,NULL,1,0x00080000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450026,'Noblesse_Adora_Robe','Noblesse Adora Robe',4,20,NULL,0,NULL,70,NULL,1,0x00000100,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450027,'Noblesse_Duple_Robe','Noblesse Duple Robe',4,20,NULL,0,NULL,70,NULL,1,0x00000100,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450028,'Noblesse_Tornado_Armor','Noblesse Tornado Armor',4,20,NULL,0,NULL,70,NULL,1,0x00000400,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450029,'Noblesse_Vulcan_Armor','Noblesse Vulcan Armor',4,20,NULL,0,NULL,70,NULL,1,0x00000400,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450030,'Noblesse_Cart_Cannon_Suit','Noblesse Cart Cannon Suit',4,20,NULL,0,NULL,70,NULL,1,0x00040000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450031,'Noblesse_Cart_Tornado_Suit','Noblesse Cart Tornado Suit',4,20,NULL,0,NULL,70,NULL,1,0x00040000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450032,'Noblesse_Rolling_Suit','Noblesse Rolling Suit',4,20,NULL,0,NULL,70,NULL,1,0x00001000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450033,'Noblesse_Assassin_Suit','Noblesse Assassin Suit',4,20,NULL,0,NULL,70,NULL,1,0x00001000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bCritAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450034,'Noblesse_Fatal_Suit','Noblesse Fatal Suit',4,20,NULL,0,NULL,70,NULL,1,0x00020000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddSize,Size_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450035,'Noblesse_Stalker_Suit','Noblesse Stalker Suit',4,20,NULL,0,NULL,70,NULL,1,0x00020000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450036,'Noblesse_Picky_Robe','Noblesse Picky Robe',4,20,NULL,0,NULL,70,NULL,1,0x80000000,7,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450037,'Noblesse_Catnip_Robe','Noblesse Catnip Robe',4,20,NULL,0,NULL,70,NULL,1,0x80000000,7,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450038,'Noblesse_Trip_Suit','Noblesse Trip Suit',4,20,NULL,0,NULL,70,NULL,1,0x40000000,63,2,16,NULL,'100',0,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450039,'Noblesse_Fire_Rain_Suit','Noblesse Fire Rain Suit',4,20,NULL,0,NULL,70,NULL,1,0x40000000,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450040,'Noblesse_Crimson_Robe','Noblesse Crimson Robe',4,20,NULL,0,NULL,70,NULL,1,0x00000200,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450041,'Noblesse_Frost_Robe','Noblesse Frost Robe',4,20,NULL,0,NULL,70,NULL,1,0x00000200,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450042,'Noblesse_Psychic_Robe','Noblesse Psychic Robe',4,20,NULL,0,NULL,70,NULL,1,0x00010000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450043,'Noblesse_Dust_Robe','Noblesse Dust Robe',4,20,NULL,0,NULL,70,NULL,1,0x00010000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450044,'Noblesse_Sun_Suit','Noblesse Sun Suit',4,20,NULL,0,NULL,70,NULL,1,0x00400000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus2 bAddClass,Class_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450045,'Noblesse_Moon_Suit','Noblesse Moon Suit',4,20,NULL,0,NULL,70,NULL,1,0x00400000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddSize,Size_All,5; if(.@r>=9) bonus2 bAddClass,Class_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450046,'Noblesse_Ninja_Suit','Noblesse Ninja Suit',4,20,NULL,0,NULL,70,NULL,1,0x20000000,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bVariableCastrate,-10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450047,'Noblesse_Kunai_Suit','Noblesse Kunai Suit',4,20,NULL,0,NULL,70,NULL,1,0x20000000,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus2 bAddClass,Class_All,5; if(.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450048,'Noblesse_Eswhoo_Robe','Noblesse Eswhoo Robe',4,20,NULL,0,NULL,70,NULL,1,0x00800000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450049,'Noblesse_Explosion_Robe','Noblesse Explosion Robe',4,20,NULL,0,NULL,70,NULL,1,0x00800000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450050,'Noblesse_Knuckle_Suit','Noblesse Knuckle Suit',4,20,NULL,0,NULL,70,NULL,1,0x00008000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bMaxSPrate,10; if(.@r>=9) bonus2 bAddSize,Size_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450051,'Noblesse_Tiger_Suit','Noblesse Tiger Suit',4,20,NULL,0,NULL,70,NULL,1,0x00008000,56,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMaxSPrate,5; if(.@r>=7) bonus bMaxHPrate,3; if(.@r>=9) bonus bMaxHPrate,3;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450052,'Imperial_Breath_Armor','Imperial Breath Armor',4,20,NULL,0,NULL,120,NULL,1,0x00000080,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMaxHPrate,7; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bMaxHPrate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450053,'Imperial_Knight_Armor','Imperial Knight Armor',4,20,NULL,0,NULL,120,NULL,1,0x00000080,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450054,'Imperial_Spear_Armor','Imperial Spear Armor',4,20,NULL,0,NULL,120,NULL,1,0x00004000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450055,'Imperial_Genesis_Armor','Imperial Genesis Armor',4,20,NULL,0,NULL,120,NULL,1,0x00004000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450056,'Imperial_Sharp_Suit','Imperial Sharp Suit',4,20,NULL,0,NULL,90,NULL,1,0x00000800,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450057,'Imperial_Aimed_Suit','Imperial Aimed Suit',4,20,NULL,0,NULL,90,NULL,1,0x00000800,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450058,'Imperial_Severe_Suit','Imperial Severe Suit',4,20,NULL,0,NULL,90,NULL,1,0x00080000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450059,'Imperial_Reverb_Suit','Imperial Reverb Suit',4,20,NULL,0,NULL,90,NULL,1,0x00080000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450060,'Imperial_Adora_Robe','Imperial Adora Robe',4,20,NULL,0,NULL,90,NULL,1,0x00000100,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450061,'Imperial_Duple_Robe','Imperial Duple Robe',4,20,NULL,0,NULL,90,NULL,1,0x00000100,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450062,'Imperial_Knuckle_Suit','Imperial Knuckle Suit',4,20,NULL,0,NULL,90,NULL,1,0x00008000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bMaxSPrate,15; if(.@r>=9) bonus2 bAddSize,Size_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450063,'Imperial_Tiger_Suit','Imperial Tiger Suit',4,20,NULL,0,NULL,90,NULL,1,0x00008000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMaxSPrate,7; if(.@r>=7) bonus bMaxHPrate,4; if(.@r>=9) bonus bMaxHPrate,4;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450064,'Imperial_Tornado_Armor','Imperial Tornado Armor',4,20,NULL,0,NULL,90,NULL,1,0x00000400,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450065,'Imperial_Vulcan_Armor','Imperial Vulcan Armor',4,20,NULL,0,NULL,90,NULL,1,0x00000400,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450066,'Imperial_Cart_Cannon_Suit','Imperial Cart Cannon Suit',4,20,NULL,0,NULL,90,NULL,1,0x00040000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450067,'Imperial_Cart_Tornado_Suit','Imperial Cart Tornado Suit',4,20,NULL,0,NULL,90,NULL,1,0x00040000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450068,'Imperial_Rolling_Suit','Imperial Rolling Suit',4,20,NULL,0,NULL,90,NULL,1,0x00001000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450069,'Imperial_Assassin_Suit','Imperial Assassin Suit',4,20,NULL,0,NULL,90,NULL,1,0x00001000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bCritAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450070,'Imperial_Fatal_Suit','Imperial Fatal Suit',4,20,NULL,0,NULL,90,NULL,1,0x00020000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddSize,Size_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450071,'Imperial_Stalker_Suit','Imperial Stalker Suit',4,20,NULL,0,NULL,90,NULL,1,0x00020000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450072,'Imperial_Picky_Robe','Imperial Picky Robe',4,20,NULL,0,NULL,90,NULL,1,0x80000000,7,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450073,'Imperial_Catnip_Robe','Imperial Catnip Robe',4,20,NULL,0,NULL,90,NULL,1,0x80000000,7,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450074,'Imperial_Trip_Suit','Imperial Trip Suit',4,20,NULL,0,NULL,90,NULL,1,0x40000000,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450075,'Imperial_Fire_Rain_Suit','Imperial Fire Rain Suit',4,20,NULL,0,NULL,90,NULL,1,0x40000000,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450076,'Imperial_Crimson_Robe','Imperial Crimson Robe',4,20,NULL,0,NULL,90,NULL,1,0x00000200,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450077,'Imperial_Frost_Robe','Imperial Frost Robe',4,20,NULL,0,NULL,90,NULL,1,0x00000200,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450078,'Imperial_Psychic_Robe','Imperial Psychic Robe',4,20,NULL,0,NULL,90,NULL,1,0x00010000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450079,'Imperial_Dust_Robe','Imperial Dust Robe',4,20,NULL,0,NULL,90,NULL,1,0x00010000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450080,'Imperial_Sun_Suit','Imperial Sun Suit',4,20,NULL,0,NULL,90,NULL,1,0x00400000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus2 bAddClass,Class_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450081,'Imperial_Moon_Suit','Imperial Moon Suit',4,20,NULL,0,NULL,90,NULL,1,0x00400000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddSize,Size_All,7; if(.@r>=9) bonus2 bAddClass,Class_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450082,'Imperial_Ninja_Suit','Imperial Ninja Suit',4,20,NULL,0,NULL,90,NULL,1,0x20000000,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bVariableCastrate,-15; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450083,'Imperial_Kunai_Suit','Imperial Kunai Suit',4,20,NULL,0,NULL,90,NULL,1,0x20000000,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus2 bAddClass,Class_All,7; if(.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450084,'Imperial_Eswhoo_Robe','Imperial Eswhoo Robe',4,20,NULL,0,NULL,90,NULL,1,0x00800000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450085,'Imperial_Explosion_Robe','Imperial Explosion Robe',4,20,NULL,0,NULL,90,NULL,1,0x00800000,56,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450086,'Grace_Breath_Armor','Grace Breath Armor',4,20,NULL,0,NULL,130,NULL,1,0x00000080,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMaxHPrate,10; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bMaxHPrate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450087,'Grace_Knight_Armor','Grace Knight Armor',4,20,NULL,0,NULL,130,NULL,1,0x00000080,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450088,'Grace_Spear_Armor','Grace Spear Armor',4,20,NULL,0,NULL,130,NULL,1,0x00004000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450089,'Grace_Genesis_Armor','Grace Genesis Armor',4,20,NULL,0,NULL,130,NULL,1,0x00004000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450090,'Grace_Sharp_Suit','Grace Sharp Suit',4,20,NULL,0,NULL,100,NULL,1,0x00000800,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450091,'Grace_Aimed_Suit','Grace Aimed Suit',4,20,NULL,0,NULL,100,NULL,1,0x00000800,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450092,'Grace_Severe_Suit','Grace Severe Suit',4,20,NULL,0,NULL,100,NULL,1,0x00080000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450093,'Grace_Reverb_Suit','Grace Reverb Suit',4,20,NULL,0,NULL,100,NULL,1,0x00080000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Neutral,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450094,'Grace_Adora_Robe','Grace Adora Robe',4,20,NULL,0,NULL,100,NULL,1,0x00000100,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Holy,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Holy,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450095,'Grace_Duple_Robe','Grace Duple Robe',4,20,NULL,0,NULL,100,NULL,1,0x00000100,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450096,'Grace_Knuckle_Suit','Grace Knuckle Suit',4,20,NULL,0,NULL,100,NULL,1,0x00008000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bMaxSPrate,20; if(.@r>=9) bonus2 bAddSize,Size_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450097,'Grace_Tiger_Suit','Grace Tiger Suit',4,20,NULL,0,NULL,100,NULL,1,0x00008000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMaxSPrate,10; if(.@r>=7) bonus bMaxHPrate,5; if(.@r>=9) bonus bMaxHPrate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450098,'Grace_Tornado_Armor','Grace Tornado Armor',4,20,NULL,0,NULL,100,NULL,1,0x00000400,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450099,'Grace_Vulcan_Armor','Grace Vulcan Armor',4,20,NULL,0,NULL,100,NULL,1,0x00000400,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450100,'Grace_Cart_Cannon_Suit','Grace Cart Cannon Suit',4,20,NULL,0,NULL,100,NULL,1,0x00040000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450101,'Grace_Cart_Tornado_Suit','Grace Cart Tornado Suit',4,20,NULL,0,NULL,100,NULL,1,0x00040000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450102,'Grace_Rolling_Suit','Grace Rolling Suit',4,20,NULL,0,NULL,100,NULL,1,0x00001000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450103,'Grace_Assassin_Suit','Grace Assassin Suit',4,20,NULL,0,NULL,100,NULL,1,0x00001000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bCritAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450104,'Grace_Fatal_Suit','Grace Fatal Suit',4,20,NULL,0,NULL,100,NULL,1,0x00020000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddSize,Size_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450105,'Grace_Stalker_Suit','Grace Stalker Suit',4,20,NULL,0,NULL,100,NULL,1,0x00020000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450106,'Grace_Picky_Robe','Grace Picky Robe',4,20,NULL,0,NULL,100,NULL,1,0x80000000,7,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450107,'Grace_Catnip_Robe','Grace Catnip Robe',4,20,NULL,0,NULL,100,NULL,1,0x80000000,7,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450108,'Grace_Trip_Suit','Grace Trip Suit',4,20,NULL,0,NULL,100,NULL,1,0x40000000,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450109,'Grace_Fire_Rain_Suit','Grace Fire Rain Suit',4,20,NULL,0,NULL,100,NULL,1,0x40000000,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450110,'Grace_Crimson_Robe','Grace Crimson Robe',4,20,NULL,0,NULL,100,NULL,1,0x00000200,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Fire,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450111,'Grace_Frost_Robe','Grace Frost Robe',4,20,NULL,0,NULL,100,NULL,1,0x00000200,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450112,'Grace_Psychic_Robe','Grace Psychic Robe',4,20,NULL,0,NULL,100,NULL,1,0x00010000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Neutral,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450113,'Grace_Dust_Robe','Grace Dust Robe',4,20,NULL,0,NULL,100,NULL,1,0x00010000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Water,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450114,'Grace_Sun_Suit','Grace Sun Suit',4,20,NULL,0,NULL,100,NULL,1,0x00400000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus2 bAddClass,Class_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450115,'Grace_Moon_Suit','Grace Moon Suit',4,20,NULL,0,NULL,100,NULL,1,0x00400000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddSize,Size_All,10; if(.@r>=9) bonus2 bAddClass,Class_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450116,'Grace_Ninja_Suit','Grace Ninja Suit',4,20,NULL,0,NULL,100,NULL,1,0x20000000,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bVariableCastrate,-20; if(.@r>=9) bonus2 bMagicAtkEle,Ele_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450117,'Grace_Kunai_Suit','Grace Kunai Suit',4,20,NULL,0,NULL,100,NULL,1,0x20000000,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus2 bAddClass,Class_All,10; if(.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450118,'Grace_Eswhoo_Robe','Grace Eswhoo Robe',4,20,NULL,0,NULL,100,NULL,1,0x00800000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450119,'Grace_Explosion_Robe','Grace Explosion Robe',4,20,NULL,0,NULL,100,NULL,1,0x00800000,56,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus2 bMagicAtkEle,Ele_Dark,10; if(.@r>=9) bonus2 bMagicAtkEle,Ele_Dark,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450121,'Noblesse_Super_Novice_Suit','Noblesse Super Novice Suit',4,20,NULL,0,NULL,70,NULL,1,0x00000001,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bBaseAtk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bMaxHPrate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450122,'Noblesse_Super_Novice_Robe','Noblesse Super Novice Robe',4,20,NULL,0,NULL,70,NULL,1,0x00000001,63,2,16,NULL,'100',1,NULL,'.@r = getrefine(); bonus bMatk,50; if(.@r>=7) bonus bAspdRate,3; if(.@r>=9) bonus bMaxHPrate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450123,'Imperial_Super_Novice_Suit','Imperial Super Novice Suit',4,20,NULL,0,NULL,90,NULL,1,0x00000001,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bBaseAtk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bMaxHPrate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450124,'Imperial_Super_Novice_Robe','Imperial Super Novice Robe',4,20,NULL,0,NULL,90,NULL,1,0x00000001,63,2,16,NULL,'125',1,NULL,'.@r = getrefine(); bonus bMatk,75; if(.@r>=7) bonus bAspdRate,5; if(.@r>=9) bonus bMaxHPrate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450125,'Grace_Super_Novice_Suit','Grace Super Novice Suit',4,20,NULL,0,NULL,100,NULL,1,0x00000001,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bBaseAtk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bMaxHPrate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (450126,'Grace_Super_Novice_Robe','Grace Super Novice Robe',4,20,NULL,0,NULL,100,NULL,1,0x00000001,63,2,16,NULL,'150',1,NULL,'.@r = getrefine(); bonus bMatk,100; if(.@r>=7) bonus bAspdRate,7; if(.@r>=9) bonus bMaxHPrate,10;',NULL,NULL);
+# New Shoes
+REPLACE INTO `item_db_re` VALUES (470016,'Noblesse_Attack_Boots','Noblesse Attack Boots',4,0,NULL,0,NULL,20,NULL,1,0xFFFFFFFF,63,2,64,NULL,'100',1,0,'.@r = getrefine(); bonus bBaseAtk,10; bonus bHit,10; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (470017,'Noblesse_Magic_Boots','Noblesse Magic Boots',4,0,NULL,0,NULL,20,NULL,1,0xFFFFFFFF,63,2,64,NULL,'100',1,0,'.@r = getrefine(); bonus bMatk,10; bonus bFlee,10; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (470018,'Imperial_Attack_Boots','Imperial Attack Boots',4,0,NULL,0,NULL,25,NULL,1,0xFFFFFFFF,63,2,64,NULL,'125',1,0,'.@r = getrefine(); bonus bBaseAtk,15; bonus bHit,15; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (470019,'Imperial_Magic_Boots','Imperial Magic Boots',4,0,NULL,0,NULL,25,NULL,1,0xFFFFFFFF,63,2,64,NULL,'125',1,0,'.@r = getrefine(); bonus bMatk,15; bonus bFlee,15; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (470020,'Grace_Attack_Boots','Grace Attack Boots',4,0,NULL,0,NULL,30,NULL,1,0xFFFFFFFF,63,2,64,NULL,'150',1,0,'.@r = getrefine(); bonus bBaseAtk,20; bonus bHit,20; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus bLongAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (470021,'Grace_Magic_Boots','Grace Magic Boots',4,0,NULL,0,NULL,30,NULL,1,0xFFFFFFFF,63,2,64,NULL,'150',1,0,'.@r = getrefine(); bonus bMatk,20; bonus bFlee,20; if (.@r>=7) bonus bFixedCast,-500; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,10;',NULL,NULL);
+# New Garment
+REPLACE INTO `item_db_re` VALUES (480012,'Noblesse_Attack_Manteau','Noblesse Attack Manteau',4,NULL,NULL,0,NULL,20,NULL,1,0xFFFFFFFF,63,2,4,NULL,'100',1,NULL,'.@r = getrefine(); bonus bAspdRate,3; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (480014,'Noblesse_Magic_Manteau','Noblesse Magic Manteau',4,NULL,NULL,0,NULL,20,NULL,1,0xFFFFFFFF,63,2,4,NULL,'100',1,NULL,'.@r = getrefine(); bonus bVariableCastrate,-5; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (480016,'Imperial_Attack_Manteau','Imperial Attack Manteau',4,NULL,NULL,0,NULL,25,NULL,1,0xFFFFFFFF,63,2,4,NULL,'125',1,NULL,'.@r = getrefine(); bonus bAspdRate,5; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (480017,'Imperial_Magic_Manteau','Imperial Magic Manteau',4,NULL,NULL,0,NULL,25,NULL,1,0xFFFFFFFF,63,2,4,NULL,'125',1,NULL,'.@r = getrefine(); bonus bVariableCastrate,-7; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (480018,'Grace_Attack_Manteau','Grace Attack Manteau',4,NULL,NULL,0,NULL,30,NULL,1,0xFFFFFFFF,63,2,4,NULL,'150',1,NULL,'.@r = getrefine(); bonus bAspdRate,7; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bAddSize,Size_All,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (480019,'Grace_Magic_Manteau','Grace Magic Manteau',4,NULL,NULL,0,NULL,30,NULL,1,0xFFFFFFFF,63,2,4,NULL,'150',1,NULL,'.@r = getrefine(); bonus bVariableCastrate,-10; if (.@r>=7) bonus bDelayrate,-5; if (.@r>=9) bonus2 bMagicAtkEle,Ele_All,10;',NULL,NULL);
+# New Accessory
+REPLACE INTO `item_db_re` VALUES (490014,'Noblesse_Attack_Ring','Noblesse Attack Ring',4,0,NULL,0,NULL,5,NULL,1,0xFFFFFFFF,63,2,8,NULL,'100',0,0,'bonus bAspdRate,3; bonus bVariableCastrate,-5; bonus bCritAtkRate,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (490015,'Noblesse_Magic_Ring','Noblesse Magic Ring',4,0,NULL,0,NULL,5,NULL,1,0xFFFFFFFF,63,2,8,NULL,'100',0,0,'bonus bAspdRate,3; bonus bVariableCastrate,-5; bonus2 bMagicAddEle,Ele_All,5;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (490017,'Imperial_Attack_Ring','Imperial Attack Ring',4,0,NULL,50,NULL,0,NULL,1,0xFFFFFFFF,63,2,8,NULL,'125',0,0,'bonus bAspdRate,5; bonus bVariableCastrate,-7; bonus bCritAtkRate,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (490018,'Imperial_Magic_Ring','Imperial Magic Ring',4,0,NULL,50,NULL,0,NULL,1,0xFFFFFFFF,63,2,8,NULL,'125',0,0,'bonus bAspdRate,5; bonus bVariableCastrate,-7; bonus2 bMagicAddEle,Ele_All,7;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (490019,'Grace_Attack_Ring','Grace Attack Ring',4,0,NULL,50,NULL,0,NULL,1,0xFFFFFFFF,63,2,8,NULL,'150',0,0,'bonus bAspdRate,7; bonus bVariableCastrate,-10; bonus bCritAtkRate,10;',NULL,NULL);
+REPLACE INTO `item_db_re` VALUES (490020,'Grace_Magic_Ring','Grace Magic Ring',4,0,NULL,50,NULL,0,NULL,1,0xFFFFFFFF,63,2,8,NULL,'150',0,0,'bonus bAspdRate,7; bonus bVariableCastrate,-10; bonus2 bMagicAddEle,Ele_All,10;',NULL,NULL);
+
 REPLACE INTO `item_db_re` VALUES (1100003,'Concentrated_R_P','Concentrated Red Potion',0,10,NULL,2,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'120',NULL,NULL,'itemheal rand(655,675),0;',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1100004,'Concentrated_B_P','Concentrated Blue Potion',0,10,NULL,2,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'120',NULL,NULL,'itemheal 0,rand(340,360);',NULL,NULL);
 REPLACE INTO `item_db_re` VALUES (1100005,'Concentrated_G_P','Concentrated Gold Potion',0,10,NULL,2,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,'180',NULL,NULL,'itemheal rand(2730,2750),0;',NULL,NULL);
 
+

+ 14 - 14
sql-files/mob_db_re.sql

@@ -2385,7 +2385,7 @@ REPLACE INTO `mob_db_re` VALUES (3157,'RUIN_BELIEVER1','Ruin Grace Believer','Ru
 REPLACE INTO `mob_db_re` VALUES (3158,'RUIN_BELIEVER2','Ruin Grace Believer','Ruin Grace Believer',100,61350,1,4666,3874,1,993,250,91,50,88,61,51,62,136,60,10,12,1,7,40,0x0000085,200,800,2112,768,0,0,0,0,0,0,0,6753,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);
 REPLACE INTO `mob_db_re` VALUES (3159,'ILLEGAL_PROMOTION','Illegal Promotion','Illegal Promotion',100,10,1,0,0,1,1,1,1,50,1,1,1,1,1,1,10,12,0,0,40,0x0370020,200,800,2112,768,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);
 #3160,BOILED_RICE_DUANWU
-#3161,BOMB
+REPLACE INTO `mob_db_re` VALUES (3161,'BOMB','Bomb','Bomb',130,60250,0,0,0,1,1028,144,92,82,126,127,62,57,109,34,10,12,0,0,67,0x0,150,500,360,360,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);
 #3162,ELEPHANT
 #3163,GORILLA
 #3164,LION
@@ -2848,19 +2848,19 @@ REPLACE INTO `mob_db_re` VALUES (3508,'DR_EGGRING_G','Eggring','Eggring',20,220,
 #3618,V_G_ALPHOCCIO_
 #3619,V_G_TRENTINI_
 #3620,NYANGPORING
-#3621,EP16_2_MM_CUTIE
-#3622,EP16_2_MM_S_GUARDS
-#3623,EP16_2_MM_U_ENERGY_R
-#3624,EP16_2_MM_U_ENERGY_G
-#3625,EP16_2_MM_U_ENERGY_B
-#3626,EP16_2_H_HUNTER_V
-#3627,EP16_2_H_HUNTER_MD
-#3628,EP16_2_H_HUNTER_EV
-#3629,EP16_2_BROKEN_GUN
-#3630,EP16_2_E_BOLKOBA
-#3631,EP16_2_HUMAN_KIMERA
-#3632,EP16_2_MATTER_KIMERA
-#3633,EP16_2_VENOM_KIMERA
+REPLACE INTO `mob_db_re` VALUES (3621,'EP16_2_MM_CUTIE','Pet Child','Pet Child',120,3500000,1,1200000,600000,2,3400,1900,220,150,160,70,100,40,240,50,10,12,2,2,67,0x6283695,150,864,1268,480,5000,603,5000,617,5000,607,5000,28913,10,7444,500,617,500,603,500,607,500,6223,500,6224,500,0,0,0,0,27152,1);
+REPLACE INTO `mob_db_re` VALUES (3622,'EP16_2_MM_S_GUARDS','Special Guard','Special Guard',100,21914,1,242,227,1,725,170,80,90,108,64,57,62,150,42,10,12,1,7,23,0x3885,200,1000,780,420,0,0,0,0,0,0,0,990,10,999,10,715,10,603,3,608,3,756,15,984,8,0,0,0,0,0,0);
+REPLACE INTO `mob_db_re` VALUES (3623,'EP16_2_MM_U_ENERGY_R','Plasma R','Plasma R',1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,23,0x6370000,2000,1,1,1,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);
+REPLACE INTO `mob_db_re` VALUES (3624,'EP16_2_MM_U_ENERGY_G','Plasma G','Plasma G',1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,22,0x6370000,2000,1,1,1,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);
+REPLACE INTO `mob_db_re` VALUES (3625,'EP16_2_MM_U_ENERGY_B','Plasma B','Plasma B',1,30,0,0,0,1,1,1,100,99,0,0,0,0,0,0,7,12,0,0,21,0x6370000,2000,1,1,1,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);
+REPLACE INTO `mob_db_re` VALUES (3626,'EP16_2_H_HUNTER_V','Upgraded Heart Hunter','Upgraded Heart Hunter',110,51785,1,5889,6003,1,2461,623,172,98,108,150,90,66,190,15,10,12,2,7,47,0x3885,400,1296,1902,480,0,0,0,0,0,0,0,25159,500,757,15,985,8,28224,20,28225,20,28226,20,0,0,0,0,0,0,27149,1);
+REPLACE INTO `mob_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD','Heart Hunter Guard','Heart Hunter Guard',105,41428,1,4908,5002,1,1055,267,73,42,72,106,64,44,145,10,10,12,1,7,47,0x3885,200,864,1268,480,0,0,0,0,0,0,0,25159,500,999,10,998,10,603,3,608,3,13138,3,28223,3,0,0,0,0,27149,1);
+REPLACE INTO `mob_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV','Heart Hunter Ebel','Heart Hunter Ebel',110,2800000,1,800000,400000,1,1700,1000,100,100,100,70,100,30,240,80,10,12,1,7,47,0x6283695,150,432,1268,480,5000,603,5000,617,5000,607,5000,25159,1000,7444,500,617,500,603,500,607,500,13462,10,13461,10,13460,10,0,0,27151,1);
+REPLACE INTO `mob_db_re` VALUES (3629,'EP16_2_BROKEN_GUN','Grudge of Broken Gun','Grudge of Broken Gun',110,24911,1,3908,3908,5,770,99,95,20,117,68,65,53,144,37,10,12,1,1,48,0x3885,200,576,720,432,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);
+REPLACE INTO `mob_db_re` VALUES (3630,'EP16_2_E_BOLKOBA','Elena Bolkova','Elena Bolkova',115,2000000,1,300000,150000,7,1200,300,120,70,80,120,66,50,250,60,10,12,1,7,64,0x3885,150,864,1268,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);
+REPLACE INTO `mob_db_re` VALUES (3631,'EP16_2_HUMAN_KIMERA','Human Kimera','Human Kimera',100,36968,1,3798,3298,1,1441,207,80,100,50,50,100,100,140,1,10,12,1,2,40,0x3885,250,772,672,360,0,0,0,0,0,0,0,25157,1000,23078,200,23077,200,603,30,608,30,756,150,984,80,23076,200,0,0,27147,1);
+REPLACE INTO `mob_db_re` VALUES (3632,'EP16_2_MATTER_KIMERA','Material Kimera','Material Kimera',100,36968,1,3798,3289,1,1441,207,120,50,100,50,100,50,140,1,10,12,1,2,43,0x3885,250,772,672,360,0,0,0,0,0,0,0,25158,1000,23078,200,23077,200,603,30,608,30,756,150,984,80,23076,200,0,0,27148,1);
+REPLACE INTO `mob_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA','Venomous Chimera','Venomous Chimera',110,2800000,1,800000,400000,1,2160,1000,150,150,113,75,150,113,250,1,10,12,2,2,85,0x6283695,150,772,672,360,5000,12246,5000,617,5000,607,5000,25156,1000,7444,500,617,500,603,500,607,500,6223,500,1447,10,0,0,0,0,27150,1);
 #3634,MYSTCASE_GIANT
 #3635,EVENT_KOBOLD
 REPLACE INTO `mob_db_re` VALUES (3636,'LITTLE_ISIS','Little Isis','Little Isis',59,2092,1,531,597,1,192,229,83,5,58,43,22,5,39,15,10,12,2,6,27,0x2003095,200,1384,768,336,0,0,0,0,0,0,0,936,5335,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);

+ 48 - 1
sql-files/mob_skill_db_re.sql

@@ -11910,6 +11910,8 @@ REPLACE INTO `mob_skill_db_re` VALUES (3125,'STEP@SM_BASH','attack',5,5,1000,0,5
 REPLACE INTO `mob_skill_db_re` VALUES (3126,'ROCK_STEP@BS_HAMMERFALL','attack',110,5,1000,1000,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3127,'KICK_STEP@ASC_BREAKER','attack',379,5,1000,0,5000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3128,'KICK_AND_KICK@NPC_STUNATTACK','attack',179,3,500,1000,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3161,'BOMB@NPC_SELFDESTRUCTION','idle',173,1,10000,3000,0,'no','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3161,'BOMB@NPC_SELFDESTRUCTION','attack',173,1,10000,3000,5000,'no','self','myhpltmaxrate','99',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3253,'SYS_MSG@AL_HEAL','attack',28,11,5000,500,5000,'yes','friend','friendhpltmaxrate','50',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3253,'SYS_MSG@AL_HEAL','chase',28,11,5000,500,5000,'yes','friend','friendhpltmaxrate','50',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3253,'SYS_MSG@AL_HEAL','idle',28,11,5000,500,5000,'yes','friend','friendhpltmaxrate','50',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
@@ -11925,4 +11927,49 @@ REPLACE INTO `mob_skill_db_re` VALUES (3254,'T_W_O@NPC_CRITICALWOUND','attack',6
 REPLACE INTO `mob_skill_db_re` VALUES (3505,'DR_BIG_EGGRING@NPC_SUMMONSLAVE','attack',196,4,10000,2000,10000,'no','self','slavele','3',3508,NULL,NULL,NULL,NULL,NULL,NULL);
 REPLACE INTO `mob_skill_db_re` VALUES (3505,'DR_BIG_EGGRING@NPC_SUMMONSLAVE','idle',196,4,10000,2000,10000,'no','self','slavele','3',3508,NULL,NULL,NULL,NULL,NULL,NULL);
 
-
+# ep16.2
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_AGIUP','attack',350,1,10000,0,20000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_MENTALBREAKER','attack',159,2,10000,1000,30000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_WIDESIGHT','attack',669,1,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_BLEEDING','attack',660,5,10000,0,40000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_DARKNESSBREATH','attack',658,5,500,3000,10000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_VAMPIRE_GIFT','attack',679,1,10000,300,20000,'no','self','myhpltmaxrate','50',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3621,'EP16_2_MM_CUTIE@NPC_BLOODDRAIN','attack',199,1,10000,300,10000,'no','target','myhpltmaxrate','30',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3622,'EP16_2_MM_S_GUARDS@MG_FIREBOLT','chase',19,5,10000,0,10000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3622,'EP16_2_MM_S_GUARDS@MG_FIREBALL','attack',17,5,2000,500,1000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3622,'EP16_2_MM_S_GUARDS@NPC_FIREATTACK','attack',186,3,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3626,'EP16_2_H_HUNTER_V@SM_ENDURE','idle',8,1,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3626,'EP16_2_H_HUNTER_V@NPC_CRITICALSLASH','chase',170,1,3000,0,5000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3626,'EP16_2_H_HUNTER_V@NPC_PIERCINGATT','attack',158,5,2000,500,3000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD@MO_BODYRELOCATION','attack',264,1,1000,0,10000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD@AL_INCAGI','attack',29,1,1000,0,10000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD@NPC_POWERUP','idle',349,2,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD@SM_BASH','attack',5,5,2000,500,1000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3627,'EP16_2_H_HUNTER_MD@KN_BOWLINGBASH','attack',62,3,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_AGIUP','attack',350,1,5000,0,20000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@MO_BODYRELOCATION','chase',264,1,2000,0,10000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_BLEEDING','attack',660,5,2000,500,10000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_CRITICALWOUND','attack',673,3,1000,500,20000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_WIDESIGHT','attack',669,1,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_WEAPONBRAKER','attack',343,1,10000,0,40000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3628,'EP16_2_H_HUNTER_EV@NPC_DARKBREATH','attack',202,5,2000,3000,10000,'no','target','myhpltmaxrate','60',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3629,'EP16_2_BROKEN_GUN@NPC_COMBOATTACK','attack',171,5,2000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_AGIUP','chase',350,1,10000,0,20000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_CRITICALWOUND','attack',673,5,500,1000,30000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_STUNATTACK','attack',179,1,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_WIDESIGHT','attack',669,1,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_PULSESTRIKE','attack',661,1,500,2000,5000,'no','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3630,'EP16_2_E_BOLKOBA@NPC_MAGICMIRROR','attack',671,10,2000,3000,20000,'no','self','myhpltmaxrate','20',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3631,'EP16_2_HUMAN_KIMERA@NPC_AGIUP','idle',350,1,10000,0,60000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3631,'EP16_2_HUMAN_KIMERA@NPC_COMBOATTACK','chase',171,1,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3631,'EP16_2_HUMAN_KIMERA@NPC_RANDOMATTACK','attack',183,1,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3632,'EP16_2_MATTER_KIMERA@NPC_POWERUP','idle',349,1,10000,0,60000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3632,'EP16_2_MATTER_KIMERA@NPC_COMBOATTACK','chase',171,1,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3632,'EP16_2_MATTER_KIMERA@NPC_FIREATTACK','attack',186,1,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_POWERUP','attack',349,5,10000,0,20000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_AGIUP','attack',350,5,10000,0,20000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_POISON','attack',176,5,1000,500,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_POISONATTACK','attack',188,3,1000,0,5000,'yes','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_WIDESIGHT','attack',669,1,10000,0,30000,'yes','self','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@NPC_ACIDBREATH','attack',657,6,10000,3000,25000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+REPLACE INTO `mob_skill_db_re` VALUES (3633,'EP16_2_VENOM_KIMERA@RG_STRIPARMOR','attack',217,5,500,1000,5000,'no','target','always','0',NULL,NULL,NULL,NULL,NULL,NULL,NULL);

+ 0 - 0
sql-files/upgrades/upgrade_20200505.sql → sql-files/upgrades/upgrade_20200808b.sql


+ 2 - 0
sql-files/upgrades/upgrade_20200821.sql

@@ -0,0 +1,2 @@
+DELETE s FROM `skill` s, `char` c WHERE `s`.char_id = `c`.char_id AND (`c`.class = 4218 OR `c`.class = 4220) AND `c`.job_level > 60;
+UPDATE `char` c SET `c`.job_level = 60, `c`.skill_point = 59 WHERE (`c`.class = 4218 OR `c`.class = 4220) AND `c`.job_level > 60;

+ 1 - 1
src/char/char_logif.cpp

@@ -839,7 +839,7 @@ void chlogif_on_ready(void)
 	chlogif_send_acc_tologin(INVALID_TIMER, gettick(), 0, 0);
 
 	// if no map-server already connected, display a message...
-	ARR_FIND( 0, ARRAYLENGTH(map_server), i, map_server[i].fd > 0 && map_server[i].map[0] );
+	ARR_FIND( 0, ARRAYLENGTH(map_server), i, map_server[i].fd > 0 && !map_server[i].map.empty() );
 	if( i == ARRAYLENGTH(map_server) )
 		ShowStatus("Awaiting maps from map-server.\n");
 }

+ 32 - 1
src/map/atcommand.cpp

@@ -4021,9 +4021,18 @@ ACMD_FUNC(reload) {
 			pc_close_npc(pl_sd,1);
 			clif_cutin(pl_sd, "", 255);
 			pl_sd->state.block_action &= ~(PCBLOCK_ALL ^ PCBLOCK_IMMUNE);
+			bg_queue_leave(pl_sd);
 		}
 		mapit_free(iter);
 
+		for (auto &bg : bg_queues) {
+				for (auto &bg_sd : bg->teama_members)
+					bg_team_leave(bg_sd, false, false); // Kick Team A from battlegrounds
+				for (auto &bg_sd : bg->teamb_members)
+					bg_team_leave(bg_sd, false, false); // Kick Team B from battlegrounds
+				bg_queue_clear(bg, true);
+		}
+
 		flush_fifos();
 		map_reloadnpc(true); // reload config files seeking for npcs
 		script_reload();
@@ -8744,16 +8753,37 @@ ACMD_FUNC(request)
 }
 
 /*==========================================
- * Feel (SG save map) Reset [HiddenDragon]
+ * Feel (SG designated maps) Reset [HiddenDragon]
  *------------------------------------------*/
 ACMD_FUNC(feelreset)
 {
+	if ((sd->class_&MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {
+		clif_displaymessage(sd->fd,msg_txt(sd,35));	// You can't use this command with this class.
+		return -1;
+	}
+
 	pc_resetfeel(sd);
 	clif_displaymessage(fd, msg_txt(sd,1324)); // Reset 'Feeling' maps.
 
 	return 0;
 }
 
+/*==========================================
+ * Hate (SG designated monsters) Reset
+ *------------------------------------------*/
+ACMD_FUNC(hatereset)
+{
+	if ((sd->class_&MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {
+		clif_displaymessage(sd->fd,msg_txt(sd,35));	// You can't use this command with this class.
+		return -1;
+	}
+
+	pc_resethate(sd);
+	clif_displaymessage(fd, msg_txt(sd,1515)); // Reset 'Hatred' monsters.
+
+	return 0;
+}
+
 /*==========================================
  * AUCTION SYSTEM
  *------------------------------------------*/
@@ -10514,6 +10544,7 @@ void atcommand_basecommands(void) {
 		ACMD_DEF(homshuffle),
 		ACMD_DEF(showmobs),
 		ACMD_DEF(feelreset),
+		ACMD_DEF(hatereset),
 		ACMD_DEF(auction),
 		ACMD_DEF(mail),
 		ACMD_DEF2("noks", ksprotection),

+ 24 - 19
src/map/battle.cpp

@@ -1283,10 +1283,12 @@ bool battle_status_block_damage(struct block_list *src, struct block_list *targe
 	if ((sce = sc->data[SC_PARRYING]) && flag&BF_WEAPON && skill_id != WS_CARTTERMINATION && rnd() % 100 < sce->val2) {
 		clif_skill_nodamage(target, target, LK_PARRYING, sce->val1, 1);
 
-		unit_data *ud = unit_bl2ud(target);
+		if (skill_id == LK_PARRYING) {
+			unit_data *ud = unit_bl2ud(target);
 
-		if (ud) // Delay the next attack
-			ud->attackabletime = gettick() + skill_get_time2(LK_PARRYING, sce->val1);
+			if (ud != nullptr) // Delay the next attack
+				ud->attackabletime = gettick() + status_get_adelay(target);
+		}
 		return false;
 	}
 
@@ -3333,26 +3335,25 @@ static void battle_calc_skill_base_damage(struct Damage* wd, struct block_list *
 				if (index >= 0 &&
 					sd->inventory_data[index] &&
 					sd->inventory_data[index]->type == IT_WEAPON)
-					wd->equipAtk += sd->inventory_data[index]->weight/20; // weight from spear is treated as equipment ATK on official [helvetica]
+					wd->equipAtk += sd->inventory_data[index]->weight*7/100; // weight from spear is treated as equipment ATK on official [helvetica]
 
 				battle_calc_damage_parts(wd, src, target, skill_id, skill_lv);
 				wd->masteryAtk = 0; // weapon mastery is ignored for spiral
+				
+				switch (tstatus->size) { //Size-fix. Is this modified by weapon perfection?
+					case SZ_SMALL: //Small: 115%
+						ATK_RATE(wd->damage, wd->damage2, 115);
+						RE_ALLATK_RATE(wd, 115);
+						break;
+					//case SZ_MEDIUM: //Medium: 100%
+					case SZ_BIG: //Large: 85%
+						ATK_RATE(wd->damage, wd->damage2, 85);
+						RE_ALLATK_RATE(wd, 85);
+						break;
+				}
 			} else {
 				wd->damage = battle_calc_base_damage(src, sstatus, &sstatus->rhw, sc, tstatus->size, 0); //Monsters have no weight and use ATK instead
 			}
-
-			switch (tstatus->size) { //Size-fix. Is this modified by weapon perfection?
-				// !TODO: Confirm new size modifiers
-				case SZ_SMALL: //Small: 125%
-					ATK_RATE(wd->damage, wd->damage2, 125);
-					RE_ALLATK_RATE(wd, 125);
-					break;
-				//case SZ_MEDIUM: //Medium: 100%
-				case SZ_BIG: //Large: 75%
-					ATK_RATE(wd->damage, wd->damage2, 75);
-					RE_ALLATK_RATE(wd, 75);
-					break;
-			}
 #else
 		case NJ_ISSEN:
 			wd->damage = 40 * sstatus->str + sstatus->hp * 8 * skill_lv / 100;
@@ -7304,8 +7305,12 @@ int64 battle_calc_return_damage(struct block_list* bl, struct block_list *src, i
 				return 0;
 	}
 
-	if (ssc && (ssc->data[SC_REF_T_POTION] || ssc->data[SC_HELLS_PLANT]))
-		return 0;
+	if (ssc) {
+		if (ssc->data[SC_HELLS_PLANT])
+			return 0;
+		if (ssc->data[SC_REF_T_POTION])
+			return 1; // Returns 1 damage
+	}
 
 	if (flag & BF_SHORT) {//Bounces back part of the damage.
 		if ( (skill_get_inf2(skill_id, INF2_ISTRAP) || !status_reflect) && sd && sd->bonus.short_weapon_damage_return ) {

+ 2 - 2
src/map/battleground.cpp

@@ -538,8 +538,8 @@ int bg_team_leave(struct map_session_data *sd, bool quit, bool deserter)
 			auto member = bgteam->members.begin();
 
 			while (member != bgteam->members.end()) {
-				if (member->sd == sd && member->entry_point.map != 0) {
-					if (!map_getmapflag(map_mapindex2mapid(member->entry_point.map), MF_NOSAVE))
+				if (member->sd == sd) {
+					if (member->entry_point.map != 0 && !map_getmapflag(map_mapindex2mapid(member->entry_point.map), MF_NOSAVE))
 						pc_setpos(sd, member->entry_point.map, member->entry_point.x, member->entry_point.y, CLR_TELEPORT);
 					else
 						pc_setpos(sd, sd->status.save_point.map, sd->status.save_point.x, sd->status.save_point.y, CLR_TELEPORT); // Warp to save point if the entry map has no save flag.

+ 5 - 2
src/map/clif.cpp

@@ -16156,7 +16156,7 @@ void clif_parse_Mail_return(int fd, struct map_session_data *sd){
 /// 0a04 <index>.W <amount>.W (CZ_REQ_ADD_ITEM_TO_MAIL)
 void clif_parse_Mail_setattach(int fd, struct map_session_data *sd){
 	struct s_packet_db* info = &packet_db[RFIFOW(fd,0)];
-	int idx = RFIFOW(fd,info->pos[0]);
+	uint16 idx = RFIFOW(fd,info->pos[0]);
 #if PACKETVER < 20150513
 	int amount = RFIFOL(fd,info->pos[1]);
 #else
@@ -16166,7 +16166,10 @@ void clif_parse_Mail_setattach(int fd, struct map_session_data *sd){
 
 	if( !chrif_isconnected() )
 		return;
-	if (idx < 0 || amount < 0 || idx >= MAX_INVENTORY)
+	if (amount < 0 || server_index(idx) >= MAX_INVENTORY)
+		return;
+
+	if (sd->inventory_data[server_index(idx)] == nullptr)
 		return;
 
 	flag = mail_setitem(sd, idx, amount);

+ 2 - 2
src/map/npc.cpp

@@ -1142,8 +1142,8 @@ int npc_touch_areanpc(struct map_session_data* sd, int16 m, int16 x, int16 y, st
 		if (npc_ontouch_event(sd, nd) > 0 && npc_ontouch2_event(sd, nd) > 0) { // failed to run OnTouch event, so just click the npc
 			if (!util::vector_exists(sd->areanpc, nd->bl.id))
 				sd->areanpc.push_back(nd->bl.id);
-
-			npc_click(sd, nd);
+			if (sd->npc_id == 0)
+				npc_click(sd, nd);
 		}
 		break;
 	}

+ 2 - 1
src/map/pc.cpp

@@ -9297,8 +9297,9 @@ bool pc_jobchange(struct map_session_data *sd,int job, char upper)
 	}
 
 	if( (sd->class_&MAPID_UPPERMASK) == MAPID_STAR_GLADIATOR && (b_class&MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR) {
-		/* going off star glad lineage, reset feel to not store no-longer-used vars in the database */
+		/* going off star glad lineage, reset feel and hate to not store no-longer-used vars in the database */
 		pc_resetfeel(sd);
+		pc_resethate(sd);
 	}
 
 	// Reset body style to 0 before changing job to avoid

+ 38 - 0
src/map/script.cpp

@@ -12155,6 +12155,32 @@ BUILDIN_FUNC(resetskill)
 	return SCRIPT_CMD_SUCCESS;
 }
 
+/**
+ * Reset SG designated maps
+ * resetfeel({<char_id>});
+ **/
+BUILDIN_FUNC(resetfeel)
+{
+	TBL_PC *sd;
+	if (!script_charid2sd(2,sd) || (sd->class_&MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR)
+		return SCRIPT_CMD_FAILURE;
+	pc_resetfeel(sd);
+	return SCRIPT_CMD_SUCCESS;
+}
+
+/**
+ * Reset SG designated monsters
+ * resethate({<char_id>});
+ **/
+BUILDIN_FUNC(resethate)
+{
+	TBL_PC *sd;
+	if (!script_charid2sd(2,sd) || (sd->class_&MAPID_UPPERMASK) != MAPID_STAR_GLADIATOR)
+		return SCRIPT_CMD_FAILURE;
+	pc_resethate(sd);
+	return SCRIPT_CMD_SUCCESS;
+}
+
 /**
  * Counts total amount of skill points.
  * skillpointcount({<char_id>})
@@ -19944,6 +19970,11 @@ BUILDIN_FUNC(waitingroom2bg_single)
 		x = bg->cemetery.x;
 		y = bg->cemetery.y;
 	}
+	if (!map_getmapflag(map_mapindex2mapid(mapindex), MF_BATTLEGROUND)) {
+		ShowWarning("buildin_waitingroom2bg_single: Map %s requires the mapflag MF_BATTLEGROUND.\n", mapindex_id2name(mapindex));
+		script_pushint(st, false);
+		return SCRIPT_CMD_FAILURE;
+	}
 
 	nd = npc_name2id(script_getstr(st,6));
 
@@ -20029,6 +20060,11 @@ BUILDIN_FUNC(bg_join) {
 		script_pushint(st, false);
 		return SCRIPT_CMD_FAILURE;
 	}
+	if (!map_getmapflag(map_mapindex2mapid(mapindex), MF_BATTLEGROUND)) {
+		ShowWarning("buildin_bg_join: Map %s requires the mapflag MF_BATTLEGROUND.\n", mapindex_id2name(mapindex));
+		script_pushint(st, false);
+		return SCRIPT_CMD_FAILURE;
+	}
 
 	if (bg_team_join(bg_id, sd, false) && pc_setpos(sd, mapindex, x, y, CLR_TELEPORT) == SETPOS_OK)
 	{
@@ -25062,6 +25098,8 @@ struct script_function buildin_func[] = {
 	BUILDIN_DEF(resetlvl,"i?"),
 	BUILDIN_DEF(resetstatus,"?"),
 	BUILDIN_DEF(resetskill,"?"),
+	BUILDIN_DEF(resetfeel,"?"),
+	BUILDIN_DEF(resethate,"?"),
 	BUILDIN_DEF(skillpointcount,"?"),
 	BUILDIN_DEF(changebase,"i?"),
 	BUILDIN_DEF(changesex,"?"),

+ 3 - 0
src/map/script_constants.hpp

@@ -1590,6 +1590,9 @@
 	export_constant(SC_LUXANIMA);
 	export_constant(SC_REUSE_LIMIT_LUXANIMA);
 	export_constant(SC_ENSEMBLEFATIGUE);
+	export_constant(SC_EP16_2_BUFF_SS);
+	export_constant(SC_EP16_2_BUFF_SC);
+	export_constant(SC_EP16_2_BUFF_AC);
 	export_constant(SC_BLOCKING_PLAY);
 #ifdef RENEWAL
 	export_constant(SC_EXTREMITYFIST2);

+ 10 - 3
src/map/skill.cpp

@@ -2027,6 +2027,7 @@ int skill_additional_effect(struct block_list* src, struct block_list *bl, uint1
 					case SC_LHZ_DUN_N1:		case SC_LHZ_DUN_N2:			case SC_LHZ_DUN_N3:			case SC_LHZ_DUN_N4:
 					case SC_ENTRY_QUEUE_APPLY_DELAY:	case SC_ENTRY_QUEUE_NOTIFY_ADMISSION_TIME_OUT:
 					case SC_REUSE_LIMIT_LUXANIMA:	case SC_LUXANIMA:	case SC_SOULENERGY:
+					case SC_EP16_2_BUFF_SS:		case SC_EP16_2_BUFF_SC:	case SC_EP16_2_BUFF_AC:
 					case SC_BLOCKING_PLAY:
 						continue;
 					case SC_WHISTLE:		case SC_ASSNCROS:		case SC_POEMBRAGI:
@@ -8476,6 +8477,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
 					case SC_DRESSUP:		case SC_HANBOK:			case SC_OKTOBERFEST:
 					case SC_LHZ_DUN_N1:		case SC_LHZ_DUN_N2:			case SC_LHZ_DUN_N3:			case SC_LHZ_DUN_N4:
 					case SC_REUSE_LIMIT_LUXANIMA:	case SC_LUXANIMA:	case SC_SOULENERGY:
+					case SC_EP16_2_BUFF_SS:		case SC_EP16_2_BUFF_SC:	case SC_EP16_2_BUFF_AC:
 					case SC_BLOCKING_PLAY:
 						continue;
 					case SC_WHISTLE:
@@ -9970,6 +9972,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
 					case SC_LHZ_DUN_N1:		case SC_LHZ_DUN_N2:			case SC_LHZ_DUN_N3:			case SC_LHZ_DUN_N4:
 					case SC_ENTRY_QUEUE_APPLY_DELAY:	case SC_ENTRY_QUEUE_NOTIFY_ADMISSION_TIME_OUT:
 					case SC_REUSE_LIMIT_LUXANIMA:		case SC_LUXANIMA:	case SC_SOULENERGY:
+					case SC_EP16_2_BUFF_SS:		case SC_EP16_2_BUFF_SC:	case SC_EP16_2_BUFF_AC:
 					case SC_BLOCKING_PLAY:
 					continue;
 				case SC_ASSUMPTIO:
@@ -11957,7 +11960,7 @@ TIMER_FUNC(skill_castend_id){
 		else
 			skill_castend_damage_id(src,target,ud->skill_id,ud->skill_lv,tick,flag);
 
-		if( sd && sd->skill_keep_using.skill_id == ud->skill_id ){
+		if( sd && sd->skill_keep_using.skill_id > 0 && sd->skill_keep_using.skill_id == ud->skill_id && !skill_isNotOk(ud->skill_id, sd) && skill_check_condition_castbegin(sd, ud->skill_id, ud->skill_lv) ){
 			sd->skill_keep_using.tid = add_timer( sd->ud.canact_tick + 100, skill_keep_using, sd->bl.id, 0 );
 		}
 
@@ -12039,8 +12042,10 @@ TIMER_FUNC(skill_castend_id){
 		sd->skillitem = sd->skillitemlv = sd->skillitem_keep_requirement = 0;
 		if (sd->skill_keep_using.skill_id > 0) {
 			sd->skill_keep_using.skill_id = 0;
-			delete_timer(sd->skill_keep_using.tid, skill_keep_using);
-			sd->skill_keep_using.tid = INVALID_TIMER;
+			if (sd->skill_keep_using.tid != INVALID_TIMER) {
+				delete_timer(sd->skill_keep_using.tid, skill_keep_using);
+				sd->skill_keep_using.tid = INVALID_TIMER;
+			}
 		}
 	} else if (md)
 		md->skill_idx = -1;
@@ -17344,6 +17349,8 @@ int skill_vfcastfix(struct block_list *bl, double time, uint16 skill_id, uint16
 			VARCAST_REDUCTION(sc->data[SC_TELEKINESIS_INTENSE]->val2);
 		if (sc->data[SC_SOULFAIRY])
 			VARCAST_REDUCTION(sc->data[SC_SOULFAIRY]->val3);
+		if (sc->data[SC_EP16_2_BUFF_AC])
+			VARCAST_REDUCTION(80);
 		// Multiplicative Fixed CastTime values
 		if (sc->data[SC_SECRAMENT])
 			fixcast_r = max(fixcast_r, sc->data[SC_SECRAMENT]->val2);

+ 17 - 0
src/map/status.cpp

@@ -1393,6 +1393,11 @@ void initChangeTables(void)
 	StatusIconChangeTable[SC_USE_SKILL_SP_SPA] = EFST_USE_SKILL_SP_SPA;
 	StatusIconChangeTable[SC_USE_SKILL_SP_SHA] = EFST_USE_SKILL_SP_SHA;
 
+	// ep16.2
+	StatusIconChangeTable[SC_EP16_2_BUFF_SS] = EFST_EP16_2_BUFF_SS;
+	StatusIconChangeTable[SC_EP16_2_BUFF_SC] = EFST_EP16_2_BUFF_SC;
+	StatusIconChangeTable[SC_EP16_2_BUFF_AC] = EFST_EP16_2_BUFF_AC;
+
 	StatusIconChangeTable[SC_BLOCKING_PLAY] = EFST_BLOCKING_PLAY;
 
 	/* Other SC which are not necessarily associated to skills */
@@ -1571,6 +1576,11 @@ void initChangeTables(void)
 	StatusChangeFlagTable[SC_ENSEMBLEFATIGUE] |= SCB_SPEED|SCB_ASPD;
 	StatusChangeFlagTable[SC_MISTY_FROST] |= SCB_NONE;
 
+	// ep16.2
+	StatusChangeFlagTable[SC_EP16_2_BUFF_SS] |= SCB_ASPD;
+	StatusChangeFlagTable[SC_EP16_2_BUFF_SC] |= SCB_CRI;
+	StatusChangeFlagTable[SC_EP16_2_BUFF_AC] |= SCB_NONE;
+
 #ifdef RENEWAL
 	// renewal EDP increases your weapon atk
 	StatusChangeFlagTable[SC_EDP] |= SCB_WATK;
@@ -6788,6 +6798,8 @@ static signed short status_calc_critical(struct block_list *bl, struct status_ch
 
 	if (sc->data[SC_INCCRI])
 		critical += sc->data[SC_INCCRI]->val2;
+	if (sc->data[SC_EP16_2_BUFF_SC])
+		critical += 300;// crit +30
 	if (sc->data[SC_CRIFOOD])
 		critical += sc->data[SC_CRIFOOD]->val1;
 	if (sc->data[SC_EXPLOSIONSPIRITS])
@@ -7663,6 +7675,8 @@ static short status_calc_fix_aspd(struct block_list *bl, struct status_change *s
 		aspd -= 10 * sc->data[SC_SOULSHADOW]->val2;
 	if (sc->data[SC_HEAT_BARREL])
 		aspd -= sc->data[SC_HEAT_BARREL]->val1 * 10;
+	if (sc->data[SC_EP16_2_BUFF_SS])
+		aspd -= 100; // +10 ASPD
 
 	return cap_value(aspd, 0, 2000); // Will be recap for proper bl anyway
 }
@@ -15064,6 +15078,9 @@ void status_change_clear_buffs(struct block_list* bl, uint8 type)
 			case SC_REUSE_LIMIT_LUXANIMA:
 			case SC_LUXANIMA:
 			case SC_SOULENERGY:
+			case SC_EP16_2_BUFF_SS:
+			case SC_EP16_2_BUFF_SC:
+			case SC_EP16_2_BUFF_AC:
 			case SC_BLOCKING_PLAY:
 			// Clans
 			case SC_CLAN_INFO:

+ 5 - 0
src/map/status.hpp

@@ -932,6 +932,11 @@ enum sc_type : int16 {
 	SC_MISTY_FROST,
 	SC_MAGIC_POISON,
 
+	// ep16.2
+	SC_EP16_2_BUFF_SS,
+	SC_EP16_2_BUFF_SC,
+	SC_EP16_2_BUFF_AC,
+
 	SC_BLOCKING_PLAY,
 
 #ifdef RENEWAL