Bläddra i källkod

Merge branch 'master' into hotfix/issue2173

Aleos 6 år sedan
förälder
incheckning
23d1183927
100 ändrade filer med 6219 tillägg och 4687 borttagningar
  1. 24 0
      .editorconfig
  2. 3 0
      .gitignore
  3. 1 1
      .mailmap
  4. 28 4
      .travis.yml
  5. 8 1
      3rdparty/mysql/CMakeLists.txt
  6. 9 2
      3rdparty/pcre/CMakeLists.txt
  7. 9 2
      3rdparty/zlib/CMakeLists.txt
  8. 4 7
      CMakeLists.txt
  9. 8 0
      conf/battle/battle.conf
  10. 9 2
      conf/battle/feature.conf
  11. 9 3
      conf/battle/items.conf
  12. 2 0
      conf/battle/player.conf
  13. 8 0
      conf/battle/skill.conf
  14. 2 0
      conf/groups.conf
  15. 1 0
      conf/help.txt
  16. 3 1
      conf/map_athena.conf
  17. 17 1
      conf/msg_conf/map_msg.conf
  18. 384 319
      conf/msg_conf/map_msg_por.conf
  19. 1 0
      db/guild_skill_tree.txt
  20. 3 0
      db/import-tmpl/attendance.yml
  21. 4 0
      db/import-tmpl/mob_mission.txt
  22. 1 1
      db/import-tmpl/skill_db.txt
  23. 350 0
      db/mob_mission.txt
  24. 3 0
      db/pre-re/attendance.yml
  25. 7 3
      db/pre-re/item_db.txt
  26. 88 81
      db/pre-re/skill_db.txt
  27. 1 1
      db/pre-re/skill_require_db.txt
  28. 0 3
      db/pre-re/skill_tree.txt
  29. 1 1
      db/pre-re/skill_unit_db.txt
  30. 61 0
      db/re/attendance.yml
  31. 2 2
      db/re/instance_db.txt
  32. 64 3
      db/re/item_combo_db.txt
  33. 215 37
      db/re/item_db.txt
  34. 1 0
      db/re/item_delay.txt
  35. 3 0
      db/re/item_misc.txt
  36. 17 17
      db/re/item_package.txt
  37. 33 2
      db/re/item_trade.txt
  38. 134 42
      db/re/mob_db.txt
  39. 11 24
      db/re/mob_skill_db.txt
  40. 192 2
      db/re/quest_db.txt
  41. 4 0
      db/re/skill_cast_db.txt
  42. 90 87
      db/re/skill_db.txt
  43. 5 5
      db/re/skill_require_db.txt
  44. 6 3
      db/re/skill_tree.txt
  45. 1 1
      db/re/skill_unit_db.txt
  46. 9 9
      db/skill_damage_db.txt
  47. 14 17
      doc/mapflags.txt
  48. 65 65
      doc/packet_interserv.txt
  49. 24 9
      doc/sample/gstorage_test.txt
  50. 3 3
      doc/sample/npc_extend_shop.txt
  51. 4 4
      doc/sample/npc_live_dialogues.txt
  52. 26 26
      doc/sample/npc_shop_test.txt
  53. 4 5
      doc/sample/npc_test_duplicate.txt
  54. 3 3
      doc/sample/npc_test_npctimer2.txt
  55. 68 30
      doc/script_commands.txt
  56. 7 1
      npc/battleground/bg_common.txt
  57. 4 2
      npc/battleground/tierra/tierra01.txt
  58. 4 2
      npc/battleground/tierra/tierra02.txt
  59. 2 7
      npc/cities/lutie.txt
  60. 2 1
      npc/custom/battleground/unofficial/bg_tierra_01.txt
  61. 2 1
      npc/custom/battleground/unofficial/bg_tierra_02.txt
  62. 35 24
      npc/custom/events/mushroom_event.txt
  63. 25 5
      npc/custom/quests/quest_shop.txt
  64. 3 1
      npc/guild2/agit_main_se.txt
  65. 2 2
      npc/jobs/2-1/blacksmith.txt
  66. 4 38
      npc/jobs/2-2/crusader.txt
  67. 0 3
      npc/mapflag/skill_damage.txt
  68. 2 1
      npc/merchants/advanced_refiner.txt
  69. 9 5
      npc/merchants/refine.txt
  70. 2 9
      npc/merchants/shops.txt
  71. 0 1
      npc/merchants/socket_enchant2.txt
  72. 1 0
      npc/other/card_trader.txt
  73. 11 0
      npc/pre-re/cities/lutie.txt
  74. 65 0
      npc/pre-re/jobs/2-2/crusader.txt
  75. 19 1
      npc/pre-re/merchants/shops.txt
  76. 18 0
      npc/pre-re/merchants/socket_enchant2.txt
  77. 13 0
      npc/pre-re/quests/cooking_quest.txt
  78. 9 0
      npc/pre-re/quests/first_class/tu_archer.txt
  79. 5 0
      npc/pre-re/quests/quests_13_1.txt
  80. 3570 0
      npc/pre-re/quests/quests_morocc.txt
  81. 194 0
      npc/pre-re/quests/seals/brisingamen_seal.txt
  82. 11 0
      npc/pre-re/quests/seals/megingard_seal.txt
  83. 12 0
      npc/pre-re/quests/the_sign_quest.txt
  84. 9 0
      npc/pre-re/scripts_athena.conf
  85. 2 0
      npc/pre-re/scripts_jobs.conf
  86. 2 0
      npc/pre-re/scripts_warps.conf
  87. 38 0
      npc/pre-re/warps/cities/prontera.txt
  88. 10 0
      npc/pre-re/warps/guildcastles.txt
  89. 5 4
      npc/quests/cooking_quest.txt
  90. 7 4
      npc/quests/first_class/tu_archer.txt
  91. 1 1
      npc/quests/newgears/2008_headgears.txt
  92. 5 4
      npc/quests/quests_13_1.txt
  93. 2 1
      npc/quests/quests_13_2.txt
  94. 4 1
      npc/quests/quests_amatsu.txt
  95. 4 3551
      npc/quests/quests_morocc.txt
  96. 2 183
      npc/quests/seals/brisingamen_seal.txt
  97. 3 2
      npc/quests/seals/megingard_seal.txt
  98. 16 2
      npc/quests/seals/mjolnir_seal.txt
  99. 2 1
      npc/quests/the_sign_quest.txt
  100. 29 0
      npc/re/battleground/bg_common.txt

+ 24 - 0
.editorconfig

@@ -0,0 +1,24 @@
+# rAthena EditorConfig file
+# EditorConfig is awesome: https://EditorConfig.org
+# This file should be encoded in UTF-8 with CRLF or LF line endings.
+
+root = true
+
+# Add a blank newline to the end of every file after saving
+# Trim trailing whitespace
+[*]
+insert_final_newline = true
+trim_trailing_whitespace = true
+
+# YAML does not support hard tabs.
+[*.{yml,yaml}]
+indent_style = space
+indent_size = 4
+
+# Use tabs in Makefiles
+[Makefile*]
+indent_style = tab
+
+# Scripts should use hard tabs to prevent script header goofs.
+[npc/**.txt]
+indent_style = tab

+ 3 - 0
.gitignore

@@ -56,6 +56,9 @@ Thumbs.db
 /conf/import
 /conf/msg_conf/import
 
+# /lib
+/lib
+
 # /log/
 /log/*.log
 /log/*.leaks

+ 1 - 1
.mailmap

@@ -32,6 +32,7 @@ functor-x <piotr.halaczkiewicz@gmail.com> <gepard1984@54d463be-8e91-2dee-dedb-b6
 functor-x <piotr.halaczkiewicz@gmail.com> <Gepard@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 greenboxal <greenboxal@gmail.com> <greenboxal2@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 jguy1987 <jmish1987@gmail.com> <jmanfffreak@54d463be-8e91-2dee-dedb-b68131a5f0ec>
+jTynne <decadenthearts06@gmail.com> <jtynne@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 j-tkay <joseph.tk.ea@gmail.com> <j-tkay@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 Kenpachi2k13 <Kenpachi.Developer@gmx.de> <kenpachi2k11@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 kisuka <kisuka@kisuka.com> <Kisuka@54d463be-8e91-2dee-dedb-b68131a5f0ec>
@@ -173,7 +174,6 @@ skotlex <skotlex@mailforce.net> <Skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 # Mass <Mass@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 # Sara <Sara@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 # nana <nana@54d463be-8e91-2dee-dedb-b68131a5f0ec>
-# jtynne <jtynne@54d463be-8e91-2dee-dedb-b68131a5f0ec>								https://github.com/jtynne
 # veider <veider@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 # Shinigami <Shinigami@54d463be-8e91-2dee-dedb-b68131a5f0ec>
 # mercurial123 <mercurial123@54d463be-8e91-2dee-dedb-b68131a5f0ec>

+ 28 - 4
.travis.yml

@@ -73,6 +73,17 @@ matrix:
       env:
         - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
         - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
+#   Version 8
+    - os: linux
+      addons:
+        apt:
+          sources:
+            - ubuntu-toolchain-r-test
+          packages:
+            - g++-8
+      env:
+        - MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
+        - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
 # Clang
 #   Version 3.9
     - os: linux
@@ -144,7 +155,20 @@ matrix:
          - mkdir cbuild
          - cd cbuild
          - cmake -G "Unix Makefiles" ..
-         - make
+         - make || travis_terminate 1
+# MariaDB
+    - os: linux
+      addons:
+        mariadb: '10.0'
+        apt:
+          sources:
+            - ubuntu-toolchain-r-test
+          packages:
+            - g++-5
+            - libmariadbclient-dev
+      env:
+         - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
+         - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
 
 before_install:
     - eval "${MATRIX_EVAL}"
@@ -154,10 +178,10 @@ before_script:
   - ./tools/ci/sql.sh
 
 script:
-  - ./configure $CONFIGURE_FLAGS
+  - ./configure $CONFIGURE_FLAGS || travis_terminate 1
   - ./tools/ci/npc.sh
-  - make clean
-  - make server
+  - make clean || travis_terminate 1
+  - make server || travis_terminate 1
   - ./login-server --run-once
   - ./char-server --run-once
   - ./map-server --run-once

+ 8 - 1
3rdparty/mysql/CMakeLists.txt

@@ -7,10 +7,17 @@ message( STATUS "Detecting local MYSQL" )
 find_path( MYSQL_LOCAL_INCLUDE_DIRS "mysql.h"
 	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
 	NO_DEFAULT_PATH )
+if(CMAKE_SIZEOF_VOID_P EQUAL 4)
 find_library( MYSQL_LOCAL_LIBRARIES
 	NAMES libmysql
-	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
 	NO_DEFAULT_PATH )
+else()
+find_library( MYSQL_LOCAL_LIBRARIES
+	NAMES libmysql
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
+	NO_DEFAULT_PATH )
+endif()
 mark_as_advanced( MYSQL_LOCAL_LIBRARIES )
 mark_as_advanced( MYSQL_LOCAL_INCLUDE_DIRS )
 

+ 9 - 2
3rdparty/pcre/CMakeLists.txt

@@ -7,10 +7,17 @@ message( STATUS "Detecting local PCRE" )
 find_path( PCRE_LOCAL_INCLUDE_DIRS "pcre.h"
 	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
 	NO_DEFAULT_PATH )
+if(CMAKE_SIZEOF_VOID_P EQUAL 4)
 find_library( PCRE_LOCAL_LIBRARIES
-	NAMES pcre
-	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
+	NAMES pcre8
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
 	NO_DEFAULT_PATH )
+else()
+find_library( PCRE_LOCAL_LIBRARIES
+	NAMES pcre8
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
+	NO_DEFAULT_PATH )
+endif()
 mark_as_advanced( PCRE_LOCAL_LIBRARIES )
 mark_as_advanced( PCRE_LOCAL_INCLUDE_DIRS )
 

+ 9 - 2
3rdparty/zlib/CMakeLists.txt

@@ -7,10 +7,17 @@ message( STATUS "Detecting local ZLIB" )
 find_path( ZLIB_LOCAL_INCLUDE_DIRS "zlib.h"
 	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
 	NO_DEFAULT_PATH )
+if(CMAKE_SIZEOF_VOID_P EQUAL 4)
 find_library( ZLIB_LOCAL_LIBRARIES
-	NAMES zdll
-	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
+	NAMES zlib
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
 	NO_DEFAULT_PATH )
+else()
+find_library( ZLIB_LOCAL_LIBRARIES
+	NAMES zlib
+	PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
+	NO_DEFAULT_PATH )
+endif()
 mark_as_advanced( ZLIB_LOCAL_LIBRARIES )
 mark_as_advanced( ZLIB_LOCAL_INCLUDE_DIRS )
 

+ 4 - 7
CMakeLists.txt

@@ -145,7 +145,7 @@ message( STATUS "Detecting threads library" )
 set( CMAKE_THREAD_PREFER_PTHREAD 1 )
 find_package(Threads REQUIRED)
 if( CMAKE_THREAD_LIBS_INIT )
-	message( STATUS "Adding global library: ${FUNCTION_FLOOR_LIBRARIES}" )
+	message( STATUS "Adding global library: ${CMAKE_THREAD_LIBS_INIT}" )
 	set_property( CACHE GLOBAL_LIBRARIES  PROPERTY VALUE ${GLOBAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )
 endif()
 message( STATUS "Detecting threads library - done" )
@@ -164,6 +164,7 @@ endif()
 #
 # math library (FreeBSD/Linux/Solaris)
 #
+if( NOT WIN32 )
 message( STATUS "Detecting math library (m)" )
 CHECK_INCLUDE_FILE( math.h HAVE_MATH_H )
 if( NOT HAVE_MATH_H )
@@ -176,6 +177,7 @@ if( FUNCTION_FLOOR_LIBRARIES )
 	set_property( CACHE GLOBAL_LIBRARIES  PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_FLOOR_LIBRARIES} )
 endif()
 message( STATUS "Detecting math library (m) - done" )
+endif()
 
 
 #
@@ -469,10 +471,7 @@ set( DEVELOPMENT_FILES
 	"${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt"
 	"${CMAKE_CURRENT_SOURCE_DIR}/configure"
 	"${CMAKE_CURRENT_SOURCE_DIR}/configure.in"
-	"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-9.sln"
-	"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-10.sln"
-	"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-12.sln"
-	"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-13.sln"
+	"${CMAKE_CURRENT_SOURCE_DIR}/rAthena.sln"
 	)
 set( DEVELOPMENT_DIRECTORIES
 	"3rdparty"
@@ -480,8 +479,6 @@ set( DEVELOPMENT_DIRECTORIES
 	"conf/msg_conf/import-tmpl"
 	"db/import-tmpl"
 	"src"
-	"vcproj-9"
-	"vcproj-10"
 	)
 set( RUNTIME_FILES
 	"${CMAKE_CURRENT_SOURCE_DIR}/athena-start"

+ 8 - 0
conf/battle/battle.conf

@@ -141,6 +141,14 @@ delay_battle_damage: yes
 //     skills should consume ammo when it's acquired via a card or plagiarize)
 arrow_decrement: 1
 
+// Should ammo be unequipped when unequipping a weapon?
+// Official behavior is "yes".
+ammo_unequip: yes
+
+// Should a suitable weapon be equipped when equipping ammo?
+// Official behavior is "yes".
+ammo_check_weapon: yes
+
 // Should the item script bonus 'Autospell' check for range/obstacles before casting?
 // Official behavior is "no", setting this to "yes" will make skills use their defined
 // range. For example, Sonic Blow requires a 2 cell distance before autocasting is allowed.

+ 9 - 2
conf/battle/feature.conf

@@ -61,8 +61,7 @@ feature.autotrade_open_delay: 5000
 
 // Roulette (Note 1)
 // Requires: 2014-10-22bRagexe or later
-// Off by default while test version is out; enable at your own risk.
-feature.roulette: off
+feature.roulette: on
 
 // Achievement (Note 1)
 // Requires: 2015-05-13aRagexe or later
@@ -71,3 +70,11 @@ feature.achievement: on
 // Homunculues Autofeeding (Note 1)
 // Requires: 2017-09-20bRagexeRE or later
 feature.homunculus_autofeed: off
+
+// Attendance System (Note 1)
+// Requires: 2018-03-07bRagexeRE or later
+feature.attendance: off
+
+// Private Airship System (Note 1)
+// Requires: 2018-03-21aRagexeRE or later
+feature.privateairship: off

+ 9 - 3
conf/battle/items.conf

@@ -112,9 +112,12 @@ item_flooritem_check: yes
 default_bind_on_equip: 4
 
 // Allow selling of bound/sell restricted items as Itemshop currency? (Note 3)
-// 0x0 = Bound/sell restricted items are unable to be sold at Itemshops
-// 0x1 = Bound items are able to be sold at Itemshops
-// 0x2 = Sell restricted items are able to be sold at Itemshops
+// 0x0 = Bound/sell restricted items are unable to be sold to Itemshops/Shops
+// 0x1 = Bound items are able to be sold to Itemshops
+// 0x2 = Sell restricted items are able to be sold to Itemshops
+// 0x4 = Bound items are able to be sold to Shops,
+//       because most of trade restricted items are still able to be sold to Shops
+// 0x8 = Only Guild Leader can sell BOUND_GUILD items to Shops or Itemshops (if 0x1 or 0x4 set)
 allow_bound_sell: 0x0
 
 // Turn on event refine chance (see db/{pre-}re/refine_db.yml)
@@ -127,3 +130,6 @@ event_refine_chance: no
 // Note: Players with short names can be fully converted to asterisks if this
 // config value is set high.
 broadcast_hide_name: 2
+
+// Enable to sell rental item to NPC shop? (Note 1)
+rental_transaction: yes

+ 2 - 0
conf/battle/player.conf

@@ -61,7 +61,9 @@ natural_healsp_interval: 8000
 natural_heal_skill_interval: 10000
 
 // The maximum weight for a character to carry when the character stops healing naturally. (in %)
+// For renewal: Requires client 20171025 or newer to display properly
 natural_heal_weight_rate: 50
+natural_heal_weight_rate_renewal: 70
 
 // Maximum atk speed. (Default 190, Highest allowed 199)
 max_aspd: 190

+ 8 - 0
conf/battle/skill.conf

@@ -375,3 +375,11 @@ banana_bomb_duration: 0
 // Official: no
 // Legacy rAthena logic: yes
 skill_drop_items_full: no
+
+// EDP setting: (Note 3)
+// When switching/unequipping a right hand weapon, should EDP be removed? EDP can't be used with bare hand.
+// 0: Disabled (rAthena legacy and pre-renewal behavior).
+// 1: Enabled on pre-renewal.
+// 2: Enabled on renewal.
+// 3: 1+2
+switch_remove_edp: 2

+ 2 - 0
conf/groups.conf

@@ -94,6 +94,7 @@ groups: (
 		can_trade: true
 		can_party: true
 		command_enable: true
+		attendance: true
 	}
 },
 {
@@ -135,6 +136,7 @@ groups: (
 		langtype: true
 	}
 	permissions: {
+		attendance: false
 	}
 },
 {

+ 1 - 0
conf/help.txt

@@ -123,6 +123,7 @@ jobchange: "Params: <job name|ID>\n" "Changes your job.\n"
 	"4229 Baby Rebellion   4241 Baby Star Emperor    4242 Baby Soul Reaper\n"
 	"---- Modes And Others ----\n"
 	" 22 Wedding            26 Christmas          27 Summer           28 Hanbok\n"
+	" 29 Oktoberfest       30 Summer 2\n"
 	" 4048 Star Gladiator (Union)	    4238 Baby Star Glad (Union)\n"
 option: "Params: <param1> <param2>(stackable) <param3>(stackable)\n" "Adds different visual effects on or around your character.\n"
 " <param1>       <param2>        <param3>\n"

+ 3 - 1
conf/map_athena.conf

@@ -105,11 +105,13 @@ minsave_time: 100
 // 32: After successfully submitting an item for auction
 // 64: After successfully get/delete/complete a quest
 // 128: After every bank transaction (deposit/withdraw)
+// 256: After every attendance reward
+// 4095: Always
 // NOTE: These settings decrease the chance of dupes/lost items when there's a
 // server crash at the expense of increasing the map/char server lag. If your 
 // server rarely crashes, but experiences interserver lag, you may want to set
 // these off.
-save_settings: 255
+save_settings: 4095
 
 // Message of the day file, when a character logs on, this message is displayed.
 motd_txt: conf/motd.txt

+ 17 - 1
conf/msg_conf/map_msg.conf

@@ -839,7 +839,23 @@
 784: Baby Star Emperor
 785: Baby Soul Reaper
 
-//786-899 free
+// Guild Storage Expansion Skill
+786: The guild does not have a guild storage.
+787: You do not have permission to use the guild storage.
+
+// Attendance
+// Mail sender: Officer
+788: <MSG>3455</MSG>
+// Mail title: %dday attendance has been paid.
+789: <MSG>3456,%d</MSG>
+// Mail body: %dday attendance has been paid.
+790: <MSG>3456,%d</MSG>
+791: You are not allowed to use the attendance system.
+
+// Private Airship
+792: The private airship system is disabled.
+
+//793-899 free
 
 //------------------------------------
 // More atcommands message

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 384 - 319
conf/msg_conf/map_msg_por.conf


+ 1 - 0
db/guild_skill_tree.txt

@@ -27,3 +27,4 @@
 10012,1,10011,1,0,0,0,0,0,0,0,0	//GD_RESTORE#Restoration#
 10013,1,10000,1,10002,1,10004,5,10010,1,10011,1	//GD_EMERGENCYCALL#Urgent Call#
 10014,1,0,0,0,0,0,0,0,0,0,0	//GD_DEVELOPMENT#Permanent Development#
+10016,5,0,0,0,0,0,0,0,0,0,0	//GD_GUILD_STORAGE#Guild Storage Expansion#

+ 3 - 0
db/import-tmpl/attendance.yml

@@ -0,0 +1,3 @@
+Header:
+  Type: ATTENDANCE_CONF
+  Version: 1

+ 4 - 0
db/import-tmpl/mob_mission.txt

@@ -0,0 +1,4 @@
+// Taekwon Mission Summonable Monsters Database
+//
+// Structure of Database:
+// MobRandomGroupID,MobID,DummyName,Rate

+ 1 - 1
db/import-tmpl/skill_db.txt

@@ -68,7 +68,7 @@
 //    0x00800 - skill range affected by RA_RESEARCHTRAP
 //    0x01000 - skill that does not affect user that has NC_HOVERING active
 //    0x02000 - skill that can be using while riding warg
-//    0x04000 - skill that can't be used while in mado
+//    0x04000 - skill that can be used while on Madogear
 //    0x08000 - skill that can be used to target while under SC__MANHOLE effect
 //    0x10000 - skill that affects hidden targets
 //    0x20000 - skill that affects SC_GLOOMYDAY_SK

+ 350 - 0
db/mob_mission.txt

@@ -0,0 +1,350 @@
+// Taekwon Mission Summonable Monsters Database
+//
+// Structure of Database:
+// MobRandomGroupID,MobID,DummyName,Rate
+
+MOBG_Taekwon_Mission,0,Scorpion,1001
+MOBG_Taekwon_Mission,1001,Scorpion,1
+MOBG_Taekwon_Mission,1002,Poring,1
+MOBG_Taekwon_Mission,1004,Hornet,1
+MOBG_Taekwon_Mission,1005,Familiar,1
+MOBG_Taekwon_Mission,1007,Fabre,1
+MOBG_Taekwon_Mission,1008,Pupa,1
+MOBG_Taekwon_Mission,1009,Condor,1
+MOBG_Taekwon_Mission,1010,Willow,1
+MOBG_Taekwon_Mission,1011,Chonchon,1
+MOBG_Taekwon_Mission,1012,Roda Frog,1
+MOBG_Taekwon_Mission,1013,Wolf,1
+MOBG_Taekwon_Mission,1014,Spore,1
+MOBG_Taekwon_Mission,1015,Zombie,1
+MOBG_Taekwon_Mission,1016,Archer Skeleton,1
+MOBG_Taekwon_Mission,1018,Creamy,1
+MOBG_Taekwon_Mission,1019,Peco Peco,1
+MOBG_Taekwon_Mission,1020,Mandragora,1
+MOBG_Taekwon_Mission,1023,Orc Warrior,1
+MOBG_Taekwon_Mission,1024,Wormtail,1
+MOBG_Taekwon_Mission,1025,Snake,1
+MOBG_Taekwon_Mission,1026,Munak,1
+MOBG_Taekwon_Mission,1028,Soldier Skeleton,1
+MOBG_Taekwon_Mission,1029,Isis,1
+MOBG_Taekwon_Mission,1030,Anacondaq,1
+MOBG_Taekwon_Mission,1031,Poporing,1
+MOBG_Taekwon_Mission,1032,Verit,1
+MOBG_Taekwon_Mission,1033,Elder Willow,1
+MOBG_Taekwon_Mission,1034,Thara Frog,1
+MOBG_Taekwon_Mission,1035,Hunter Fly,1
+MOBG_Taekwon_Mission,1036,Ghoul,1
+MOBG_Taekwon_Mission,1037,Side Winder,1
+MOBG_Taekwon_Mission,1040,Golem,1
+MOBG_Taekwon_Mission,1041,Mummy,1
+MOBG_Taekwon_Mission,1042,Steel Chonchon,1
+MOBG_Taekwon_Mission,1044,Obeaune,1
+MOBG_Taekwon_Mission,1045,Marc,1
+MOBG_Taekwon_Mission,1047,Peco Peco Egg,1
+MOBG_Taekwon_Mission,1048,Thief Bug Egg,1
+MOBG_Taekwon_Mission,1049,Picky,1
+MOBG_Taekwon_Mission,1050,Picky,1
+MOBG_Taekwon_Mission,1051,Thief Bug,1
+MOBG_Taekwon_Mission,1052,Rocker,1
+MOBG_Taekwon_Mission,1053,Thief Bug Female,1
+MOBG_Taekwon_Mission,1054,Thief Bug Male,1
+MOBG_Taekwon_Mission,1055,Muka,1
+MOBG_Taekwon_Mission,1056,Smokie,1
+MOBG_Taekwon_Mission,1057,Yoyo,1
+MOBG_Taekwon_Mission,1058,Metaller,1
+MOBG_Taekwon_Mission,1060,Bigfoot,1
+MOBG_Taekwon_Mission,1061,Nightmare,1
+MOBG_Taekwon_Mission,1062,Santa Poring,1
+MOBG_Taekwon_Mission,1063,Lunatic,1
+MOBG_Taekwon_Mission,1064,Megalodon,1
+MOBG_Taekwon_Mission,1065,Strouf,1
+MOBG_Taekwon_Mission,1066,Vadon,1
+MOBG_Taekwon_Mission,1067,Cornutus,1
+MOBG_Taekwon_Mission,1068,Hydra,1
+MOBG_Taekwon_Mission,1069,Swordfish,1
+MOBG_Taekwon_Mission,1070,Kukre,1
+MOBG_Taekwon_Mission,1071,Pirate Skeleton,1
+MOBG_Taekwon_Mission,1072,Kaho,1
+MOBG_Taekwon_Mission,1073,Crab,1
+MOBG_Taekwon_Mission,1074,Shellfish,1
+MOBG_Taekwon_Mission,1076,Skeleton,1
+MOBG_Taekwon_Mission,1077,Poison Spore,1
+MOBG_Taekwon_Mission,1088,Vocal,1
+MOBG_Taekwon_Mission,1089,Toad,1
+MOBG_Taekwon_Mission,1090,Mastering,1
+MOBG_Taekwon_Mission,1091,Dragon Fly,1
+MOBG_Taekwon_Mission,1092,Vagabond Wolf,1
+MOBG_Taekwon_Mission,1093,Eclipse,1
+MOBG_Taekwon_Mission,1094,Ambernite,1
+MOBG_Taekwon_Mission,1095,Andre,1
+MOBG_Taekwon_Mission,1096,Angeling,1
+MOBG_Taekwon_Mission,1097,Ant Egg,1
+MOBG_Taekwon_Mission,1098,Anubis,1
+MOBG_Taekwon_Mission,1099,Argiope,1
+MOBG_Taekwon_Mission,1100,Argos,1
+MOBG_Taekwon_Mission,1101,Baphomet Jr.,1
+MOBG_Taekwon_Mission,1102,Bathory,1
+MOBG_Taekwon_Mission,1103,Caramel,1
+MOBG_Taekwon_Mission,1104,Coco,1
+MOBG_Taekwon_Mission,1105,Deniro,1
+MOBG_Taekwon_Mission,1106,Desert Wolf,1
+MOBG_Taekwon_Mission,1107,Desert Wolf Baby,1
+MOBG_Taekwon_Mission,1108,Deviace,1
+MOBG_Taekwon_Mission,1109,Deviruchi,1
+MOBG_Taekwon_Mission,1110,Dokebi,1
+MOBG_Taekwon_Mission,1111,Drainliar,1
+MOBG_Taekwon_Mission,1113,Drops,1
+MOBG_Taekwon_Mission,1114,Dustiness,1
+MOBG_Taekwon_Mission,1116,Eggyra,1
+MOBG_Taekwon_Mission,1117,Evil Druid,1
+MOBG_Taekwon_Mission,1118,Flora,1
+MOBG_Taekwon_Mission,1119,Frilldora,1
+MOBG_Taekwon_Mission,1120,Ghostring,1
+MOBG_Taekwon_Mission,1121,Giearth,1
+MOBG_Taekwon_Mission,1122,Goblin,1
+MOBG_Taekwon_Mission,1123,Goblin,1
+MOBG_Taekwon_Mission,1124,Goblin,1
+MOBG_Taekwon_Mission,1125,Goblin,1
+MOBG_Taekwon_Mission,1126,Goblin,1
+MOBG_Taekwon_Mission,1127,Hode,1
+MOBG_Taekwon_Mission,1128,Horn,1
+MOBG_Taekwon_Mission,1129,Horong,1
+MOBG_Taekwon_Mission,1130,Jakk,1
+MOBG_Taekwon_Mission,1131,Joker,1
+MOBG_Taekwon_Mission,1132,Khalitzburg,1
+MOBG_Taekwon_Mission,1133,Kobold,1
+MOBG_Taekwon_Mission,1134,Kobold,1
+MOBG_Taekwon_Mission,1135,Kobold,1
+MOBG_Taekwon_Mission,1138,Magnolia,1
+MOBG_Taekwon_Mission,1139,Mantis,1
+MOBG_Taekwon_Mission,1140,Marduk,1
+MOBG_Taekwon_Mission,1141,Marina,1
+MOBG_Taekwon_Mission,1142,Marine Sphere,1
+MOBG_Taekwon_Mission,1143,Marionette,1
+MOBG_Taekwon_Mission,1144,Marse,1
+MOBG_Taekwon_Mission,1145,Martin,1
+MOBG_Taekwon_Mission,1146,Matyr,1
+MOBG_Taekwon_Mission,1148,Medusa,1
+MOBG_Taekwon_Mission,1149,Minorous,1
+MOBG_Taekwon_Mission,1151,Myst,1
+MOBG_Taekwon_Mission,1152,Orc Skeleton,1
+MOBG_Taekwon_Mission,1153,Orc Zombie,1
+MOBG_Taekwon_Mission,1154,Pasana,1
+MOBG_Taekwon_Mission,1155,Petite,1
+MOBG_Taekwon_Mission,1156,Petite,1
+MOBG_Taekwon_Mission,1158,Phen,1
+MOBG_Taekwon_Mission,1160,Piere,1
+MOBG_Taekwon_Mission,1161,Plankton,1
+MOBG_Taekwon_Mission,1162,Rafflesia,1
+MOBG_Taekwon_Mission,1163,Raydric,1
+MOBG_Taekwon_Mission,1164,Requiem,1
+MOBG_Taekwon_Mission,1165,Sandman,1
+MOBG_Taekwon_Mission,1166,Savage,1
+MOBG_Taekwon_Mission,1167,Savage Babe,1
+MOBG_Taekwon_Mission,1169,Skeleton Worker,1
+MOBG_Taekwon_Mission,1170,Sohee,1
+MOBG_Taekwon_Mission,1174,Stainer,1
+MOBG_Taekwon_Mission,1175,Tarou,1
+MOBG_Taekwon_Mission,1176,Vitata,1
+MOBG_Taekwon_Mission,1177,Zenorc,1
+MOBG_Taekwon_Mission,1178,Zerom,1
+MOBG_Taekwon_Mission,1179,Whisper,1
+MOBG_Taekwon_Mission,1180,Nine Tail,1
+MOBG_Taekwon_Mission,1183,Chonchon,1
+MOBG_Taekwon_Mission,1184,Fabre,1
+MOBG_Taekwon_Mission,1185,Whisper,1
+MOBG_Taekwon_Mission,1186,Giant Whisper,1
+MOBG_Taekwon_Mission,1188,Bongun,1
+MOBG_Taekwon_Mission,1189,Orc Archer,1
+MOBG_Taekwon_Mission,1191,Mimic,1
+MOBG_Taekwon_Mission,1192,Wraith,1
+MOBG_Taekwon_Mission,1193,Alarm,1
+MOBG_Taekwon_Mission,1194,Arclouse,1
+MOBG_Taekwon_Mission,1195,Rideword,1
+MOBG_Taekwon_Mission,1196,Skeleton Prisoner,1
+MOBG_Taekwon_Mission,1197,Zombie Prisoner,1
+MOBG_Taekwon_Mission,1198,Dark Priest,1
+MOBG_Taekwon_Mission,1199,Punk,1
+MOBG_Taekwon_Mission,1201,Rybio,1
+MOBG_Taekwon_Mission,1202,Phendark,1
+MOBG_Taekwon_Mission,1206,Anolian,1
+MOBG_Taekwon_Mission,1207,Sting,1
+MOBG_Taekwon_Mission,1208,Wander Man,1
+MOBG_Taekwon_Mission,1209,Cramp,1
+MOBG_Taekwon_Mission,1211,Brilight,1
+MOBG_Taekwon_Mission,1212,Iron Fist,1
+MOBG_Taekwon_Mission,1213,High Orc,1
+MOBG_Taekwon_Mission,1214,Choco,1
+MOBG_Taekwon_Mission,1215,Stem Worm,1
+MOBG_Taekwon_Mission,1216,Penomena,1
+MOBG_Taekwon_Mission,1219,Knight of Abyss,1
+MOBG_Taekwon_Mission,1248,Cruiser,1
+MOBG_Taekwon_Mission,1249,Myst Case,1
+MOBG_Taekwon_Mission,1250,Chepet,1
+MOBG_Taekwon_Mission,1253,Gargoyle,1
+MOBG_Taekwon_Mission,1254,Raggler,1
+MOBG_Taekwon_Mission,1255,Neraid,1
+MOBG_Taekwon_Mission,1256,Pest,1
+MOBG_Taekwon_Mission,1257,Injustice,1
+MOBG_Taekwon_Mission,1258,Goblin Archer,1
+MOBG_Taekwon_Mission,1260,Dark Frame,1
+MOBG_Taekwon_Mission,1261,Wild Rose,1
+MOBG_Taekwon_Mission,1263,Wind Ghost,1
+MOBG_Taekwon_Mission,1264,Merman,1
+MOBG_Taekwon_Mission,1265,Cookie,1
+MOBG_Taekwon_Mission,1266,Aster,1
+MOBG_Taekwon_Mission,1267,Carat,1
+MOBG_Taekwon_Mission,1269,Clock,1
+MOBG_Taekwon_Mission,1270,Clock Tower Manager,1
+MOBG_Taekwon_Mission,1271,Alligator,1
+MOBG_Taekwon_Mission,1273,Orc Lady,1
+MOBG_Taekwon_Mission,1274,Megalith,1
+MOBG_Taekwon_Mission,1275,Alice,1
+MOBG_Taekwon_Mission,1276,Raydric Archer,1
+MOBG_Taekwon_Mission,1277,Greatest General,1
+MOBG_Taekwon_Mission,1278,Stalactic Golem,1
+MOBG_Taekwon_Mission,1279,Tri Joint,1
+MOBG_Taekwon_Mission,1280,Steam Goblin,1
+MOBG_Taekwon_Mission,1281,Sage Worm,1
+MOBG_Taekwon_Mission,1282,Kobold Archer,1
+MOBG_Taekwon_Mission,1283,Chimera,1
+MOBG_Taekwon_Mission,1285,Archer Guardian,1
+MOBG_Taekwon_Mission,1287,Soldier Guardian,1
+MOBG_Taekwon_Mission,1290,Skeleton General,1
+MOBG_Taekwon_Mission,1291,Wraith Dead,1
+MOBG_Taekwon_Mission,1292,Mini Demon,1
+MOBG_Taekwon_Mission,1293,Creamy Fear,1
+MOBG_Taekwon_Mission,1294,Killer Mantis,1
+MOBG_Taekwon_Mission,1295,Owl Baron,1
+MOBG_Taekwon_Mission,1296,Kobold Leader,1
+MOBG_Taekwon_Mission,1297,Ancient Mummy,1
+MOBG_Taekwon_Mission,1298,Zombie Master,1
+MOBG_Taekwon_Mission,1299,Goblin Leader,1
+MOBG_Taekwon_Mission,1300,Caterpillar,1
+MOBG_Taekwon_Mission,1301,Am Mut,1
+MOBG_Taekwon_Mission,1302,Dark Illusion,1
+MOBG_Taekwon_Mission,1303,Giant Hornet,1
+MOBG_Taekwon_Mission,1304,Giant Spider,1
+MOBG_Taekwon_Mission,1305,Ancient Worm,1
+MOBG_Taekwon_Mission,1306,Leib Olmai,1
+MOBG_Taekwon_Mission,1307,Cat o' Nine Tails,1
+MOBG_Taekwon_Mission,1308,Panzer Goblin,1
+MOBG_Taekwon_Mission,1309,Gajomart,1
+MOBG_Taekwon_Mission,1310,Majoruros,1
+MOBG_Taekwon_Mission,1311,Gullinbursti,1
+MOBG_Taekwon_Mission,1313,Mobster,1
+MOBG_Taekwon_Mission,1314,Permeter,1
+MOBG_Taekwon_Mission,1315,Assaulter,1
+MOBG_Taekwon_Mission,1316,Solider,1
+MOBG_Taekwon_Mission,1317,Fur Seal,1
+MOBG_Taekwon_Mission,1318,Heater,1
+MOBG_Taekwon_Mission,1319,Freezer,1
+MOBG_Taekwon_Mission,1320,Owl Duke,1
+MOBG_Taekwon_Mission,1321,Dragon Tail,1
+MOBG_Taekwon_Mission,1322,Spring Rabbit,1
+MOBG_Taekwon_Mission,1323,Sea Otter,1
+MOBG_Taekwon_Mission,1365,Apocalypse,1
+MOBG_Taekwon_Mission,1366,Lava Golem,1
+MOBG_Taekwon_Mission,1367,Blazer,1
+MOBG_Taekwon_Mission,1368,Geographer,1
+MOBG_Taekwon_Mission,1369,Grand Peco,1
+MOBG_Taekwon_Mission,1370,Succubus,1
+MOBG_Taekwon_Mission,1371,Fake Angel,1
+MOBG_Taekwon_Mission,1372,Goat,1
+MOBG_Taekwon_Mission,1374,Incubus,1
+MOBG_Taekwon_Mission,1375,The Paper,1
+MOBG_Taekwon_Mission,1376,Harpy,1
+MOBG_Taekwon_Mission,1377,Elder,1
+MOBG_Taekwon_Mission,1378,Demon Pungus,1
+MOBG_Taekwon_Mission,1379,Nightmare Terror,1
+MOBG_Taekwon_Mission,1380,Driller,1
+MOBG_Taekwon_Mission,1381,Grizzly,1
+MOBG_Taekwon_Mission,1382,Diabolic,1
+MOBG_Taekwon_Mission,1383,Explosion,1
+MOBG_Taekwon_Mission,1384,Deleter,1
+MOBG_Taekwon_Mission,1385,Deleter,1
+MOBG_Taekwon_Mission,1386,Sleeper,1
+MOBG_Taekwon_Mission,1387,Gig,1
+MOBG_Taekwon_Mission,1388,Archangeling,1
+MOBG_Taekwon_Mission,1390,Violy,1
+MOBG_Taekwon_Mission,1391,Galapago,1
+MOBG_Taekwon_Mission,1392,Rotar Zairo,1
+MOBG_Taekwon_Mission,1400,Karakasa,1
+MOBG_Taekwon_Mission,1401,Shinobi,1
+MOBG_Taekwon_Mission,1402,Poison Toad,1
+MOBG_Taekwon_Mission,1403,Antique Firelock,1
+MOBG_Taekwon_Mission,1404,Miyabi Ningyo,1
+MOBG_Taekwon_Mission,1405,Tengu,1
+MOBG_Taekwon_Mission,1406,Kapha,1
+MOBG_Taekwon_Mission,1408,Bloody Butterfly,1
+MOBG_Taekwon_Mission,1409,Rice Cake Boy,1
+MOBG_Taekwon_Mission,1410,Live Peach Tree,1
+MOBG_Taekwon_Mission,1412,Evil Cloud Hermit,1
+MOBG_Taekwon_Mission,1413,Wild Ginseng,1
+MOBG_Taekwon_Mission,1415,Baby Leopard,1
+MOBG_Taekwon_Mission,1416,Wicked Nymph,1
+MOBG_Taekwon_Mission,1417,Zipper Bear,1
+MOBG_Taekwon_Mission,1493,Dryad,1
+MOBG_Taekwon_Mission,1494,Beetle King,1
+MOBG_Taekwon_Mission,1495,Stone Shooter,1
+MOBG_Taekwon_Mission,1497,Wooden Golem,1
+MOBG_Taekwon_Mission,1498,Wootan Shooter,1
+MOBG_Taekwon_Mission,1499,Wootan Fighter,1
+MOBG_Taekwon_Mission,1500,Parasite,1
+MOBG_Taekwon_Mission,1503,Gibbet,1
+MOBG_Taekwon_Mission,1504,Dullahan,1
+MOBG_Taekwon_Mission,1505,Loli Ruri,1
+MOBG_Taekwon_Mission,1506,Disguise,1
+MOBG_Taekwon_Mission,1507,Bloody Murderer,1
+MOBG_Taekwon_Mission,1508,Quve,1
+MOBG_Taekwon_Mission,1509,Lude,1
+MOBG_Taekwon_Mission,1510,Hylozoist,1
+MOBG_Taekwon_Mission,1512,Hyegun,1
+MOBG_Taekwon_Mission,1513,Civil Servant,1
+MOBG_Taekwon_Mission,1514,Dancing Dragon,1
+MOBG_Taekwon_Mission,1515,Garm Baby,1
+MOBG_Taekwon_Mission,1516,Increase Soil,1
+MOBG_Taekwon_Mission,1517,Li Me Mang Ryang,1
+MOBG_Taekwon_Mission,1519,Chung E,1
+MOBG_Taekwon_Mission,1520,Boiled Rice,1
+MOBG_Taekwon_Mission,1582,Deviling,1
+MOBG_Taekwon_Mission,1584,Tamruan,1
+MOBG_Taekwon_Mission,1585,Mime Monkey,1
+MOBG_Taekwon_Mission,1586,Leaf Cat,1
+MOBG_Taekwon_Mission,1587,Kraben,1
+MOBG_Taekwon_Mission,1588,Christmas Orc,1
+MOBG_Taekwon_Mission,1609,Dancing Dragon,1
+MOBG_Taekwon_Mission,1613,Metaling,1
+MOBG_Taekwon_Mission,1614,Mineral,1
+MOBG_Taekwon_Mission,1615,Obsidian,1
+MOBG_Taekwon_Mission,1616,Pitman,1
+MOBG_Taekwon_Mission,1617,Waste Stove,1
+MOBG_Taekwon_Mission,1618,Ungoliant,1
+MOBG_Taekwon_Mission,1619,Porcellio,1
+MOBG_Taekwon_Mission,1620,Noxious,1
+MOBG_Taekwon_Mission,1621,Venomous,1
+MOBG_Taekwon_Mission,1622,Teddy Bear,1
+MOBG_Taekwon_Mission,1625,Porcellio,1
+MOBG_Taekwon_Mission,1626,Hellion Revenant,1
+MOBG_Taekwon_Mission,1627,Anopheles,1
+MOBG_Taekwon_Mission,1628,Mole,1
+MOBG_Taekwon_Mission,1629,Hill Wind,1
+MOBG_Taekwon_Mission,1631,Chung E,1
+MOBG_Taekwon_Mission,1632,Gremlin,1
+MOBG_Taekwon_Mission,1633,Beholder,1
+MOBG_Taekwon_Mission,1664,Photon Cannon,1
+MOBG_Taekwon_Mission,1665,Photon Cannon,1
+MOBG_Taekwon_Mission,1666,Photon Cannon,1
+MOBG_Taekwon_Mission,1667,Photon Cannon,1
+MOBG_Taekwon_Mission,1668,Archdam,1
+MOBG_Taekwon_Mission,1670,Dimik,1
+MOBG_Taekwon_Mission,1671,Dimik,1
+MOBG_Taekwon_Mission,1672,Dimik,1
+MOBG_Taekwon_Mission,1673,Dimik,1
+MOBG_Taekwon_Mission,1676,Venatu,1
+MOBG_Taekwon_Mission,1677,Venatu,1
+MOBG_Taekwon_Mission,1678,Venatu,1
+MOBG_Taekwon_Mission,1679,Venatu,1
+MOBG_Taekwon_Mission,1680,Hill Wind,1
+MOBG_Taekwon_Mission,1686,Orc Baby,1
+MOBG_Taekwon_Mission,1687,Green Iguana,1

+ 3 - 0
db/pre-re/attendance.yml

@@ -0,0 +1,3 @@
+Header:
+  Type: ATTENDANCE_CONF
+  Version: 1

+ 7 - 3
db/pre-re/item_db.txt

@@ -754,7 +754,7 @@
 1480,Gae_Bolg_,Gae Bolg,5,20,,2000,160,,3,2,0x00004082,7,2,34,4,60,1,5,{ bonus bIgnoreDefRace,RC_Dragon; bonus2 bAddClass,Class_Boss,10; },{},{}
 1481,Zephyrus_,Zephyrus,5,20,,2000,170,,3,3,0x00004082,7,2,34,4,48,1,5,{ bonus bAtkEle,Ele_Wind; bonus2 bAddEff,Eff_Silence,200; bonus3 bAutoSpell,"MG_THUNDERSTORM",3,100; },{},{}
 1482,BF_Lance1,Assaulter Lance,5,,,0,160,,3,0,0x00004082,7,2,34,3,80,1,5,{ bonus bStr,2; bonus2 bAddRace,RC_DemiHuman,25; bonus2 bAddRace,RC_Player,25; bonus bIgnoreDefRace,RC_DemiHuman; bonus bIgnoreDefRace,RC_Player; bonus bUnbreakableWeapon; },{},{}
-1483,Ivory_Lance,Ivory Lance,5,20,,1000,160,,3,1,0x00004082,2,2,34,3,50,1,5,{ bonus bAgi,2; bonus bAspdRate,3; bonus2 bAddEff,Eff_Bleeding,300; bonus3 bAutoSpell,"LK_JOINTBEAT",1,100; skill "KN_SPEARSTAB",5; },{},{}
+1483,Ivory_Lance,Ivory Lance,5,20,,1000,160,,3,1,0x00004082,2,2,34,3,50,1,5,{ bonus bAgi,2; bonus bAspdRate,3; bonus2 bAddEff,Eff_Bleeding,300; bonus3 bAutoSpell,"NPC_CRITICALWOUND",1,30; skill "KN_SPEARSTAB",5; },{},{}
 1484,Cardo,Cardo,5,20,,5600,150,,3,1,0x00000080,2,2,34,4,70,1,5,{ bonus bAspdRate,-10; bonus bDef,getrefine()/2; },{},{}
 1485,Battle_Fork,Battle Fork,5,20,,700,112,,3,4,0x00004082,2,2,34,2,50,1,5,{},{},{}
 1486,Krieger_Twohand_Spear1,Glorious Lance,5,20,,0,220,,3,0,0x00004082,7,2,34,4,80,1,5,{ bonus2 bAddRace,RC_DemiHuman,70; bonus2 bAddRace,RC_Player,70; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,25; bonus2 bIgnoreDefRaceRate,RC_Player,25; bonus bUnbreakableWeapon; if(getrefine()>5) { bonus2 bAddRace,RC_DemiHuman,(getrefine()-4)*(getrefine()-4); bonus2 bAddRace,RC_Player,(getrefine()-4)*(getrefine()-4); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,5; bonus2 bIgnoreDefRaceRate,RC_Player,5; } if(getrefine()>8) { if(BaseJob==Job_Knight) bonus4 bAutoSpellOnSkill,"KN_PIERCE","NPC_CRITICALWOUND",2,200; else if(BaseJob==Job_Crusader) bonus3 bAutoSpell,"PA_PRESSURE",5,200; } },{},{}
@@ -3003,7 +3003,7 @@
 //5825,Badge_Of_Order_Grace,Badge Of Order Grace,4,0,,0,,1,,0,0xFFFFFFFF,7,2,136,,0,0,0,{ bonus bMdef,1; },{},{}
 5826,Valkyrie_Helmet,Valkyrie Helmet,4,0,,0,,10,,0,0xFFFFFFFF,7,2,256,,0,0,225,{ bonus bStr,2; bonus bInt,2; bonus bDex,2; bonus bAgi,2; bonus bMdef,5; },{},{}
 5827,Book_File_Hat,Book File Hat,4,20,,100,,1,,0,0xFFFFFFFF,7,2,256,,1,1,423,{},{},{}
-5828,Honor_Gold_Ring,Honor Gold Ring,4,0,,50,,0,,0,0xFFFFFFFF,7,2,136,,1,1,0,{ bonus bAllStats,1; bonus bMdef,5; },{},{}
+5828,Honor_Gold_Ring,Honor Gold Ring,4,0,,50,,0,,0,0xFFFFFFFF,7,2,136,,1,0,0,{ bonus bAllStats,1; bonus bMdef,5; },{},{}
 //5829,Ordinary_Armor,Ordinary Armor,4,0,,0,,0,,0,0xFFFFFFFF,7,2,16,,30,1,0,{},{},{}
 //5830,Woe_Sahkkat,Woe Sahkkat,4,20,,10,,0,,0,0xFFFFFFFF,7,2,256,,60,1,67,{},{},{}
 //5831,Woe_Big_Sis_Ribbon,Woe Big Sis Ribbon,4,20,,10,,0,,0,0xFFFFFFFF,7,2,256,,60,1,28,{},{},{}
@@ -3019,7 +3019,7 @@
 //5841,Shaman_Hat_,Shaman_Hat,4,20,,100,,1,,1,0xFFFFFFFF,7,2,256,,30,1,596,{ bonus bLuk,2; },{},{}
 //5842,Loyal_Ring1,Loyal Ring1,4,0,,0,,0,,0,0xFFFFFFFF,7,2,136,,1,1,0,{},{},{}
 //5843,Loyal_Ring2,Loyal Ring2,4,0,,0,,0,,0,0xFFFFFFFF,7,2,136,,1,1,0,{ bonus bAllStats,2; },{},{}
-5844,Loyal_Ring3,Loyal Ring3,4,0,,0,,0,,0,0xFFFFFFFF,7,2,136,,1,1,0,{ bonus bAllStats,3; },{},{}
+5844,Loyal_Ring3,Loyal Ring3,4,0,,0,,0,,0,0xFFFFFFFF,7,2,136,,1,0,0,{ bonus bAllStats,3; },{},{}
 //5845,Buzzy_Ball_Board,Buzzy Ball Board,4,50,,400,,0,,0,0xFFFFFFFF,7,2,256,,1,1,641,{},{},{}
 5846,Buzzy_Ball_Gum,Buzzy Ball Gum,4,50,,100,,1,,0,0xFFFFFFFF,7,2,1,,1,0,572,{ bonus bMdef,5; },{},{}
 //5847,Fools_Day_Helmet,Fools Day Helmet,4,0,,0,,0,,0,0xFFFFFFFF,7,2,256,,1,0,647,{ bonus bInt,5; bonus bVit,-3; },{},{}
@@ -5142,6 +5142,7 @@
 12580,Vending_Search_Scroll,Universal Catalog Silver,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ searchstores 10,0; },{},{}
 12581,Vending_Search_Scroll2,Universal Catalog Gold,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ searchstores 10,1; },{},{}
 12591,Uni_Catalog_Bz,Universal Catalog Bronze,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ searchstores 10,1; },{},{}
+12609,Old_Ore_Box,Old Ore Box,2,20,,100,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 12701,Old_Blue_Box_F,Old Blue Box,2,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
 12702,Old_Bleu_Box,Old Navy Box,2,0,,200,,,,,0xFFFFFFFF,7,2,,,,,,{ getrandgroupitem(IG_BleuBox),1; getrandgroupitem(IG_BleuBox),1; },{},{}
 12703,Holy_Egg_2,Holy Egg,11,0,,50,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
@@ -5221,6 +5222,7 @@
 12771,Passion_Hat_Box2,Passion Hat Box2,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
 12772,Cool_Hat_Box2,Cool Hat Box2,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
 12773,Victory_Hat_Box2,Victory Hat Box2,2,0,,0,,,,,0xFFFFFFFF,7,2,,,,,,{},{},{}
+12831,Potion_Box,Potion Box,2,0,,50,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 12848,Falcon_Flute,Falcon Flute,11,0,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ if(getskilllv("HT_FALCON")) { if(!checkoption(Option_Wug) && !checkoption(Option_Wugrider)) setfalcon (!checkfalcon()); } },{},{}
 12900,Battle_Manual_Box,Battle Manual Box,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12208,10; },{},{}
 12901,Insurance_Package,Insurance Package,18,20,,10,,,,,0xFFFFFFFF,7,2,,,,,,{ getitem 12209,10; },{},{}
@@ -6579,3 +6581,5 @@
 19505,T_Cigarette,T Cigarette,4,0,,0,,0,,0,0xFFFFFFFF,7,2,4096,,0,0,54,{},{},{}
 19506,T_Valkyrie_Feather_Band,T Valkyrie Feather Band,4,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,0,1,300,{},{},{}
 19507,Fine_Sun,Clear Sun,4,0,,0,,0,,0,0xFFFFFFFF,7,2,1024,,1,0,654,{},{},{}
+
+22777,Gift_Buff_Set,Gift Buff Set,2,10,,100,,,,0,0xFFFFFFFF,63,2,,,1,,,{},{},{}

+ 88 - 81
db/pre-re/skill_db.txt

@@ -54,26 +54,28 @@
 // 14 attack type (none, weapon, magic, misc)
 // 15 Blowcount (amount of tiles skill knockbacks)
 // 16 inf3 (skill information 3):
-//    0x00001 - skill ignores land protector
-//    0x00002 - free
-//    0x00004 - usable skills while hiding
-//    0x00008 - skill that can be use while in dancing state
-//    0x00010 - skill that could hit emperium
-//    0x00020 - skill ignores SC_STASIS
-//    0x00040 - skill blocked by kagehumi
-//    0x00080 - skill range affected by AC_VULTURE
-//    0x00100 - skill range affected by GS_SNAKEEYE
-//    0x00200 - skill range affected by NJ_SHADOWJUMP
-//    0x00400 - skill range affected by WL_RADIUS
-//    0x00800 - skill range affected by RA_RESEARCHTRAP
-//    0x01000 - skill that does not affect user that has NC_HOVERING active
-//    0x02000 - skill that can be using while riding warg
-//    0x04000 - skill that can't be used while in mado
-//    0x08000 - skill that can be used to target while under SC__MANHOLE effect
-//    0x10000 - skill that affects hidden targets
-//    0x20000 - skill that affects SC_GLOOMYDAY_SK
-//    0x40000 - skill that is affected by SC_DANCEWITHWUG
-//    0x80000 - skill blocked by RA_WUGBITE
+//    0x000001 - skill ignores land protector
+//    0x000002 - free
+//    0x000004 - usable skills while hiding
+//    0x000008 - skill that can be use while in dancing state
+//    0x000010 - skill that could hit emperium
+//    0x000020 - skill ignores SC_STASIS
+//    0x000040 - skill blocked by kagehumi
+//    0x000080 - skill range affected by AC_VULTURE
+//    0x000100 - skill range affected by GS_SNAKEEYE
+//    0x000200 - skill range affected by NJ_SHADOWJUMP
+//    0x000400 - skill range affected by WL_RADIUS
+//    0x000800 - skill range affected by RA_RESEARCHTRAP
+//    0x001000 - skill that does not affect user that has NC_HOVERING active
+//    0x002000 - skill that can be using while riding warg
+//    0x004000 - skill that can be used while on Madogear
+//    0x008000 - skill that can be used to target while under SC__MANHOLE effect
+//    0x010000 - skill that affects hidden targets
+//    0x020000 - skill that affects SC_GLOOMYDAY_SK
+//    0x040000 - skill that is affected by SC_DANCEWITHWUG
+//    0x080000 - skill blocked by RA_WUGBITE
+//    0x100000 - skill is not blocked by SC_AUTOGUARD (physical-skill only)
+//    0x200000 - skill is not blocked by SC_UTSUSEMI or SC_BUNSINJYUTSU (physical-skill only)
 // 17 Name
 // 18 Description
 1,0,0,0,0,0,0,9,0,no,0,0,0,none,0,0x0,		NV_BASIC,Basic Skill
@@ -91,7 +93,7 @@
 //****
 // Mage
 9,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		MG_SRECOVERY,Increase SP Recovery
-10,0,6,4,3,0x3,3,1,1,yes,0,0,0,magic,0,0x4000,		MG_SIGHT,Sight
+10,0,6,4,3,0x3,3,1,1,yes,0,0,0,magic,0,0x0,		MG_SIGHT,Sight
 11,9,6,1,8,0x6,1,10,1,yes,0,0x42000,0,magic,0,0x0,		MG_NAPALMBEAT,Napalm Beat
 12,9,8,2,8,0x1,0,10,1,yes,0,0,0,magic,0,0x0,		MG_SAFETYWALL,Safety Wall
 13,9,8,1,8,0,0,10,1:1:2:2:3:3:4:4:5:5,yes,0,0x2000,0,magic,0,0x0,		MG_SOULSTRIKE,Soul Strike
@@ -110,7 +112,7 @@
 23,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		AL_DEMONBANE,Demon Bane
 24,0,6,4,6,0x3,2,1,1,yes,0,0,0,magic,0,0x0,		AL_RUWACH,Ruwach
 25,9,6,2,0,0x1,0,1,1,yes,0,0,0,magic,0,0x0,		AL_PNEUMA,Pneuma
-26,0,6,4,0,0x1,0,2,1,yes,0,0,0,magic,0,0x40,		AL_TELEPORT,Teleport
+26,0,6,4,0,0x1,0,2,1,yes,0,0,0,magic,0,0x4040,		AL_TELEPORT,Teleport
 27,9,6,2,0,0x1,0,4,1,yes,0,0,3,magic,0,0x0,		AL_WARP,Warp Portal
 28,9,6,16,6,0x21,0,10,1,yes,0,0x2000,0,magic,0,0x0,	AL_HEAL,Heal
 29,9,6,16,0,0x1,0,10,1,yes,0,0,0,magic,0,0x1000,	AL_INCAGI,Increase AGI
@@ -213,13 +215,13 @@
 105,0,0,0,0,0,0,1,0,no,0,0,0,weapon,0,0x0,		BS_HILTBINDING,Hilt Binding
 106,0,0,0,0,0,0,1,0,no,0,0,0,weapon,0,0x0,		BS_FINDINGORE,Ore Discovery
 107,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		BS_WEAPONRESEARCH,Weaponry Research
-108,2,6,16,0,0x1,0,1,1,yes,0,0,0,weapon,0,0x4000,	BS_REPAIRWEAPON,Weapon Repair
+108,2,6,16,0,0x1,0,1,1,yes,0,0,0,weapon,0,0x0,	BS_REPAIRWEAPON,Weapon Repair
 109,0,0,0,0,0,0,5,0,no,0,0,0,weapon,0,0x0,		BS_SKINTEMPER,Skin Tempering
-110,1,6,2,0,0x3,2:2:2:2:2:12,5,1,no,0,0,0,weapon,0,0x4000,	BS_HAMMERFALL,Hammer Fall
-111,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_ADRENALINE,Adrenaline Rush
-112,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_WEAPONPERFECT,Weapon Perfection
-113,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_OVERTHRUST,Power-Thrust
-114,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x4000,		BS_MAXIMIZE,Maximize Power
+110,1,6,2,0,0x3,2:2:2:2:2:12,5,1,no,0,0,0,weapon,0,0x0,	BS_HAMMERFALL,Hammer Fall
+111,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_ADRENALINE,Adrenaline Rush
+112,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_WEAPONPERFECT,Weapon Perfection
+113,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_OVERTHRUST,Power-Thrust
+114,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		BS_MAXIMIZE,Maximize Power
 
 //****
 // Hunter
@@ -352,8 +354,8 @@
 226,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		AM_AXEMASTERY,Axe Mastery
 227,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		AM_LEARNINGPOTION,Potion Research
 228,0,6,4,0,0x1,0,10,0,no,0,0,0,none,0,0x0,		AM_PHARMACY,Prepare Potion
-229,9,6,2,3,0x9,0,5,1,yes,0,0,0,weapon,0,0x0,	AM_DEMONSTRATION,Bomb
-230,9,6,1,0,0x48,0,5,1,yes,0,0,0,weapon,0,0x0,	AM_ACIDTERROR,Acid Terror
+229,9,6,2,3,0x9,0,5,1,yes,0,0,0,weapon,0,0x300000,	AM_DEMONSTRATION,Bomb
+230,9,6,1,0,0x48,0,5,1,yes,0,0,0,weapon,0,0x300000,	AM_ACIDTERROR,Acid Terror
 231,9,6,16,0,0x1,0,5,1,yes,0,0xC00,0,none,0,0x0,	AM_POTIONPITCHER,Aid Potion
 232,4,6,2,0,0x1,0,5,1,no,0,0,5,none,0,0x0,		AM_CANNIBALIZE,Summon Flora
 233,1,6,2,0,0x1,0,5,1,no,0,0,3,none,0,0x0,		AM_SPHEREMINE,Summon Marine Sphere
@@ -530,7 +532,7 @@
 //****
 // Paladin
 367,9,8,1,0,0xD0,0,5,1,no,0,0x18000,0,misc,0,0x0,		PA_PRESSURE,Gloria Domini
-368,0,6,4,0,0x61,0,5,1,yes,0,0,0,weapon,0,0x0,	PA_SACRIFICE, Martyr's Reckoning
+368,0,6,4,0,0x61,0,5,1,yes,0,0,0,weapon,0,0x300000,	PA_SACRIFICE, Martyr's Reckoning
 369,0,6,4,0,0x41,0,10,1,yes,0,0,0,misc,0,0x0,	PA_GOSPEL,Battle Chant
 
 //****
@@ -561,10 +563,10 @@
 
 //****
 // Whitesmith
-384,0,0,4,0,0x1,0,10,1,yes,0,0,0,weapon,0,0x4000,	WS_MELTDOWN,Shattering Strike
+384,0,0,4,0,0x1,0,10,1,yes,0,0,0,weapon,0,0x0,	WS_MELTDOWN,Shattering Strike
 385,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,	WS_CREATECOIN,Create Coins
 386,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,	WS_CREATENUGGET,Create Nuggets
-387,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x4000,		WS_CARTBOOST,Cart Boost
+387,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		WS_CARTBOOST,Cart Boost
 388,9,6,2,0,0x1,0,5,1,no,0,0,0,none,0,0x0,		WS_SYSTEMCREATE,Auto Attack System
 
 //****
@@ -607,7 +609,7 @@
 
 //****
 // Assassin Cross
-406,0,6,4,-1,0xA,2,10,1,no,0,0x40000,0,weapon,0,0x0,	ASC_METEORASSAULT,Meteor Assault
+406,0,6,4,-1,0xA,2,10,1,no,0,0x40000,0,weapon,0,0x300000,	ASC_METEORASSAULT,Meteor Assault
 407,0,6,4,0,0x1,0,1,0,no,0,0,0,none,0,0x0,		ASC_CDP,Create Deadly Poison
 
 //****
@@ -678,7 +680,7 @@
 
 //****
 // Blacksmith
-459,0,6,4,0,0x3,-1,1,1,no,0,0x8,0,weapon,0 ,0x4000,	BS_ADRENALINE2,Advanced Adrenaline Rush
+459,0,6,4,0,0x3,-1,1,1,no,0,0x8,0,weapon,0 ,0x0,	BS_ADRENALINE2,Advanced Adrenaline Rush
 
 //****
 // Soul Linker
@@ -702,16 +704,16 @@
 474,0,0,4,0,0x1,0,10,1,no,0,0x2,0,none,0,0x0,	NPC_EMOTION_ON,Emotion ON
 475,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,		ST_PRESERVE,Preserve
 476,1,6,1,0,0x1,0,5,1,yes,0,0,0,weapon,0,0x0,	ST_FULLSTRIP,Divest All
-477,0,6,4,0,0x1,0,10,1,no,0,0,0,weapon,0,0x4000,	WS_WEAPONREFINE,Upgrade Weapon
+477,0,6,4,0,0x1,0,10,1,no,0,0,0,weapon,0,0x0,	WS_WEAPONREFINE,Upgrade Weapon
 478,3,6,2,0,0x3,3,10,1,no,0,0,0,none,0,0x0,		CR_SLIMPITCHER,Aid Condensed Potion
 479,1,6,16,0,0x1,0,5,1,yes,0,0,0,weapon,0,0x0,	CR_FULLPROTECTION,Full Protection
-480,5,8,1,0,0,0,5,5,no,0,0,0,weapon,0,0x20000,		PA_SHIELDCHAIN,Shield Chain
+480,4,8,1,0,0,0,5,5,no,0,0,0,weapon,0,0x20000,		PA_SHIELDCHAIN,Shield Chain
 481,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		HP_MANARECHARGE,Mana Recharge
 482,0,6,4,0,0x1,0,5,1,no,0,0,0,magic,0,0x0,		PF_DOUBLECASTING,Double Casting
 483,18,6,2,0,0x1,1:2:3:4:5,1,1,no,0,0,0,none,0,0x0,	HW_GANBANTEIN,Ganbantein
 484,18,6,2,2,0xD1,0,5,1,yes,0,0x18000,0,misc,0,0x11010,		HW_GRAVITATION,Gravitation Field
-485,-2,6,1,-1,0x8,0,10,1,no,0,0,0,weapon,0,0x4000,	WS_CARTTERMINATION,Cart Termination
-486,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x4000,		WS_OVERTHRUSTMAX,Maximum Power Thrust
+485,-2,6,1,-1,0x8,0,10,1,no,0,0,0,weapon,0,0x0,	WS_CARTTERMINATION,Cart Termination
+486,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		WS_OVERTHRUSTMAX,Maximum Power Thrust
 487,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x8,		CG_LONGINGFREEDOM,Longing for Freedom
 488,0,6,4,0,0x1,1,5,1,no,0,0x20,0,misc,0,0x1,	CG_HERMODE,Wand of Hermode
 489,9,6,1,0,0x41,0,5,1,no,0,0,0,misc,0,0x0,		CG_TAROTCARD,Tarot Card of Fate
@@ -731,7 +733,7 @@
 500,0,6,4,0,0x41,0,5,1,no,0,0,0,misc,0,0x0,		GS_GLITTERING,Flip the Coin
 501,9,6,1,-1,0x50,0,1,1,no,0,0,0,misc,0,0x0,		GS_FLING,Fling
 502,-9,8,1,-1,0,0,1,3,no,0,0,0,weapon,0,0x0,		GS_TRIPLEACTION,Triple Action
-503,-9,6,1,-1,0x8,0,1,1,no,0,0,0,weapon,0,0x0,	GS_BULLSEYE,Bulls Eye
+503,-9,6,1,-1,0x8,0,1,1,no,0,0,0,weapon,0,0x300000,	GS_BULLSEYE,Bulls Eye
 504,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_MADNESSCANCEL,Madness Canceller
 505,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_ADJUSTMENT,AdJustment
 506,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_INCREASING,Increasing Accuracy
@@ -899,7 +901,7 @@
 1001,14,6,1,-1,0,0,1,1,no,0,0x1,0,weapon,0,0x0,	KN_CHARGEATK,Charge Attack
 1002,0,6,4,0,0x1,0,1,0,no,0,0x1,0,weapon,2,0x0,	CR_SHRINK,Shrink
 1003,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x0,	AS_SONICACCEL,Sonic Acceleration
-1004,9,8,1,0,0x8,0,1,1,no,0,0x1,0,weapon,0,0x0,	AS_VENOMKNIFE,Throw Venom Knife
+1004,9,8,1,0,0x8,0,1,1,no,0,0x1,0,weapon,0,0x300000,	AS_VENOMKNIFE,Throw Venom Knife
 1005,1,6,1,0,0x1,0,1,1,no,0,0x1,0,weapon,0,0x0,	RG_CLOSECONFINE,Close Confine
 1006,0,6,4,3,0,1,1,1,yes,0,0x40001,0,magic,3,0x0,	WZ_SIGHTBLASTER,Sight Blaster
 1007,0,6,4,0,0x1,0,1,0,no,0,0x1,0,none,0,0x0,	SA_CREATECON,Create Elemental Converter
@@ -907,8 +909,8 @@
 1009,-9,6,1,-1,0,0,1,1,no,0,0x1,0,weapon,3,0x0,	HT_PHANTASMIC,Phantasmic Arrow
 1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0,	BA_PANGVOICE,Pang Voice
 1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0,	DC_WINKCHARM,Wink of Charm
-1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000,	BS_UNFAIRLYTRICK,Unfair Trick
-1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x2000,	BS_GREED,Greed
+1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x0,	BS_UNFAIRLYTRICK,Unfair Trick
+1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x6000,	BS_GREED,Greed
 1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0,	PR_REDEMPTIO,Redemptio
 1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0,	MO_KITRANSLATION,Ki Translation
 1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0,	MO_BALKYOUNG,Ki Explosion
@@ -999,7 +1001,7 @@
 // AB Arch Bishop
 2038,11,8,1,6,0x2,1,5,-3,yes,0,0,0,magic,0,0x0,	AB_JUDEX,Judex
 2039,0,6,4,0,0x1,0,1,1,yes,0,0,0,magic,0,0x0,	AB_ANCILLA,Ancilla
-2040,11,8,1,6,0,0,10,-10,yes,0,0,0,magic,0,0x0,	AB_ADORAMUS,Adoramus
+2040,11,8,1,6,0x2,1:1:1:1:1:1:2:2:2:2,10,-10,yes,0,0,0,magic,0,0x0,	AB_ADORAMUS,Adoramus
 2041,0,6,4,0,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CLEMENTIA,Crementia
 2042,0,6,4,0,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CANTO,Canto Candidus
 2043,0,6,4,6,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CHEAL,Coluceo Heal
@@ -1008,15 +1010,15 @@
 2046,0,6,4,6,0x3,15,10,1,yes,0,0,0,magic,0,0x0,	AB_ORATIO,Oratio
 2047,0,6,4,6,0x3,15,4,1,yes,0,0,0,magic,0,0x0,	AB_LAUDAAGNUS,Lauda Agnus
 2048,0,6,4,6,0x3,15,4,1,yes,0,0,0,magic,0,0x0,	AB_LAUDARAMUS,Lauda Ramus
-2049,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		AB_EUCHARISTICA,Eucharistica
-2050,11,6,16,6,0x1,0,1,1,yes,0,0,0,magic,0,0x0,	AB_RENOVATIO,Renovatio
-2051,11,6,16,6,0x21,0,5,1,yes,0,0,0,magic,0,0x0,	AB_HIGHNESSHEAL,Highness Heal //CHECK Info shows this has magic attack.
+2049,0,0,0,0,0,0,0,0,no,0,0,0,none,0,0x0,		AB_EUCHARISTICA,Eucharistica // Removed on kRO
+2050,11,6,4,6,0x1,15,1,1,yes,0,0,0,magic,0,0x0,	AB_RENOVATIO,Renovatio
+2051,11,6,16,6,0x21,0,5,1,yes,0,0,0,magic,0,0x0,	AB_HIGHNESSHEAL,Highness Heal
 2052,11,6,1,0,0x1,0,5,1,yes,0,0x400,0,magic,0,0x10020,	AB_CLEARANCE,Clearance
-2053,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_EXPIATIO,Expiatio //CHECK Does this also give the buff to party members?
-2054,0,6,4,6,0x1,0,10,1,yes,0,0,0,none,0,0x0,	AB_DUPLELIGHT,Duple Light //CHECK Had issues adding a skill level check to make the % go higher with the skills level. Will do later.
+2053,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_EXPIATIO,Expiatio
+2054,0,6,4,6,0x1,0,10,1,yes,0,0,0,none,0,0x0,	AB_DUPLELIGHT,Duple Light
 2055,-1,6,1,-1,0,0,10,1,no,0,0,0,weapon,0,0x0,	AB_DUPLELIGHT_MELEE,Duple Light Melee
 2056,-1,6,1,0,0,0,10,1,no,0,0,0,magic,0,0x0,	AB_DUPLELIGHT_MAGIC,Duple Light Magic
-2057,0,6,4,6,0x3,4:5:6:7:8,5,1,yes,0,0,0,magic,0,0x0,	AB_SILENTIUM,Silentium //CHECk Marked magic attack as well. Hmmmm....
+2057,0,6,4,6,0x3,4:5:6:7:8,5,1,yes,0,0,0,magic,0,0x0,	AB_SILENTIUM,Silentium
 
 2515,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_SECRAMENT,Secrament
 
@@ -1032,8 +1034,8 @@
 2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0,		RA_WUGMASTERY,Warg Mastery
 2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000,		RA_WUGRIDER,Warg Rider
 2242,0,6,4,-1,0x42,1,1,1,no,0,0,0,weapon,0,0x42000,	RA_WUGDASH,Warg Dash
-2243,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x42000,	RA_WUGSTRIKE,Warg Strike
-2244,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x40080,	RA_WUGBITE,Warg Bite
+2243,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x342000,	RA_WUGSTRIKE,Warg Strike
+2244,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x340080,	RA_WUGBITE,Warg Bite
 2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		RA_TOOTHOFWUG,Tooth of Warg
 2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0x40000,0,weapon,0,0x0,	RA_SENSITIVEKEEN,Sensitive Keen
 2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x80040,		RA_CAMOUFLAGE,Camouflage
@@ -1048,34 +1050,34 @@
 //****
 // NC Mechanic
 2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		NC_MADOLICENCE,Mado License
-2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0,	NC_BOOSTKNUCKLE,Boost Knuckle
-2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0,	NC_PILEBUNKER,Pile Bunker
-2258,13,6,1,-1,0x2,1,3,1,no,0,0x40000,0,weapon,0,0x0,	NC_VULCANARM,Vulcan Arm
-2259,5,6,1,3,0,1,3,1,no,0,0,5,weapon,0,0x0,		NC_FLAMELAUNCHER,Flame Launcher
-2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0x40000,0,weapon,0,0x0,	NC_COLDSLOWER,Cold Slower
-2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0,	NC_ARMSCANNON,Arm Cannon
-2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,		NC_ACCELERATION,Acceleration
-2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_HOVERING,Hovering
-2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0,		NC_F_SIDESLIDE,Front-Side Slide
-2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0,		NC_B_SIDESLIDE,Back-Side Slide
+2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x4000,	NC_BOOSTKNUCKLE,Boost Knuckle
+2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x4000,	NC_PILEBUNKER,Pile Bunker
+2258,13,6,1,-1,0x2,1,3,1,no,0,0x40000,0,weapon,0,0x4000,	NC_VULCANARM,Vulcan Arm
+2259,5,6,1,3,0,1,3,1,no,0,0,5,weapon,0,0x4000,		NC_FLAMELAUNCHER,Flame Launcher
+2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0x40000,0,weapon,0,0x4000,	NC_COLDSLOWER,Cold Slower
+2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x4000,	NC_ARMSCANNON,Arm Cannon
+2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,		NC_ACCELERATION,Acceleration
+2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_HOVERING,Hovering
+2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x4000,		NC_F_SIDESLIDE,Front-Side Slide
+2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x4000,		NC_B_SIDESLIDE,Back-Side Slide
 2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0,		NC_MAINFRAME,Mainframe Restructure
-2267,0,6,4,0,0xCA,2:3:4,3,1,no,0,0x40000,0,weapon,5,0x0,	NC_SELFDESTRUCTION,Self Destruction
-2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0,	NC_SHAPESHIFT,Shape Shift
-2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_EMERGENCYCOOL,Emergency Cool
-2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0,	NC_INFRAREDSCAN,Infrared Scan
-2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0,	NC_ANALYZE,Analyze
-2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x0,	NC_MAGNETICFIELD,Magnetic Field
-2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,	NC_NEUTRALBARRIER,Neutral Barrier
-2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,	NC_STEALTHFIELD,Stealth Field
-2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	NC_REPAIR,Repair
+2267,0,6,4,0,0xCA,2:3:4,3,1,no,0,0x40000,0,weapon,5,0x304000,	NC_SELFDESTRUCTION,Self Destruction
+2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x4000,	NC_SHAPESHIFT,Shape Shift
+2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_EMERGENCYCOOL,Emergency Cool
+2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x4000,	NC_INFRAREDSCAN,Infrared Scan
+2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x4000,	NC_ANALYZE,Analyze
+2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x4000,	NC_MAGNETICFIELD,Magnetic Field
+2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,	NC_NEUTRALBARRIER,Neutral Barrier
+2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,	NC_STEALTHFIELD,Stealth Field
+2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x4000,	NC_REPAIR,Repair
 2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		NC_TRAININGAXE,Axe Training
 2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		NC_RESEARCHFE,Research Fire/Earth
-2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0,	NC_AXEBOOMERANG,Axe Boomerang
-2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0,	NC_POWERSWING,Power Swing
-2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0x40000,0,weapon,0,0x0,	NC_AXETORNADO,Axe Tornado
-2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0,	NC_SILVERSNIPER,FAW - Silver Sniper
-2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0,	NC_MAGICDECOY,FAW - Magic Decoy
-2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_DISJOINT,FAW Removal
+2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x4000,	NC_AXEBOOMERANG,Axe Boomerang
+2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x4000,	NC_POWERSWING,Power Swing
+2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0x40000,0,weapon,0,0x4000,	NC_AXETORNADO,Axe Tornado
+2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x4000,	NC_SILVERSNIPER,FAW - Silver Sniper
+2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x4000,	NC_MAGICDECOY,FAW - Magic Decoy
+2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_DISJOINT,FAW Removal
 
 //****
 // SC Shadow Chaser
@@ -1115,7 +1117,7 @@
 2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0,	LG_EXEEDBREAK,Exceed Break
 2317,2,6,2,-1,0x2,0,5,1,yes,0,0,0,weapon,0,0x0,	LG_OVERBRAND,Over Brand
 2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0,	LG_PRESTIGE,Prestige
-2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0,	LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID.
+2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0,	LG_BANDING,Banding
 2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x1000,	LG_MOONSLASHER,Moon Slasher
 2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0,	LG_RAYOFGENESIS,Ray of Genesis
 2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0,	LG_PIETY,Piety
@@ -1232,7 +1234,7 @@
 2479,9,6,2,0,0,0,5,1,yes,0,0x80,3,misc,0,0x0,	GN_THORNS_TRAP,Thorn Trap
 2480,11,6,1,0,0x1,0,5,1,yes,0,0,3,misc,0,0x0,		GN_BLOOD_SUCKER,Blood Sucker //CHECK Data says its a magic attack. Hmmmm....
 2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0,	GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm.
-2482,11,6,2,0,0x8,0,5,1,yes,0,0,1,weapon,2,0x0,	GN_WALLOFTHORN,Wall of Thorns
+2482,11,6,2,0,0x8,0,5,1,yes,0,0,1,weapon,2,0x300000,	GN_WALLOFTHORN,Wall of Thorns
 2483,11,6,2,0,0x3,4,10,1,yes,0,0x0,0,weapon,0,0x1,	GN_CRAZYWEED,Crazy Weed
 2484,0,6,2,2,0x2,2,10,1,no,0,0x40000,0,weapon,0,0x1,	GN_CRAZYWEED_ATK,Crazy Weed Attack
 2485,9,6,2,3,0,0,5,1,yes,0,0,1,magic,0,0x0,		GN_DEMONIC_FIRE,Demonic Fire
@@ -1343,7 +1345,7 @@
 5003,7,6,1,-1,0x2,4:5:6:7:-1,5,1,no,0,0,0,weapon,0,0x0, GN_ILLUSIONDOPING,Illusion Doping
 5004,9,6,2,1,0x42,1:1:1:2:2:2:3:3:4:4,10,1,no,0,0x40000,0,weapon,0,0x0, RK_DRAGONBREATH_WATER,Dragon Breath - Water
 5005,0,6,4,0,0x3,3,1,1,no,0,0,0,none,0,0x0, RK_LUXANIMA,Lux Anima
-5006,1,6,2,3,0,0,5,1,no,0,0,3,misc,0,0x0, NC_MAGMA_ERUPTION,Magma Eruption
+5006,1,6,2,3,0,0,5,1,no,0,0,3,misc,0,0x4000, NC_MAGMA_ERUPTION,Magma Eruption
 5007,0,6,4,0,0x3,5:6:7:8:9,5,1,no,0,0,0,none,0,0x0, WM_FRIGG_SONG,Frigg's Song
 5008,0,6,4,0,0x3,11,5,1,no,0,0,0,none,0,0x0, SO_ELEMENTAL_SHIELD,Elemental Shield
 5009,1,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_FLASHCOMBO,Flash Combo
@@ -1351,7 +1353,7 @@
 5011,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, AB_OFFERTORIUM,Offertorium
 5012,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, WL_TELEKINESIS_INTENSE,Intense Telekinesis
 5013,0,6,4,0,0x3,0,5,1,no,0,0,0,none,0,0x0, LG_KINGS_GRACE,King's Grace
-5014,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, ALL_FULL_THROTTLE,Full Throttle
+5014,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x4000, ALL_FULL_THROTTLE,Full Throttle
 
 // Summoner - Placeholder
 5018,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,	SU_BASIC_SKILL,New Basic Skill
@@ -1402,6 +1404,10 @@
 5064,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,	WE_ONEFOREVER,One Forever
 5065,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,	WE_CHEERUP,Cheer Up
 
+// New Arch Bishop Skills
+5072,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,		AB_VITUPERATUM,Vituperatum
+5073,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,		AB_CONVENIO,Convenio
+
 //****
 // Homunculus S
 8001,9,6,4,0,0x1,0,5,1,no,0,0,0,magic,0,0x0,	HLIF_HEAL,Healing Touch
@@ -1553,3 +1559,4 @@
 10013,0,0,4,0,0x3,0,1,0,yes,0,0x10,0,none,0,0x40,	GD_EMERGENCYCALL,Urgent Call
 10014,0,0,0,0,0,0,1,0,no,0,0x10,0,none,0,0x0,	GD_DEVELOPMENT,Permanent Development
 10015,0,0,4,0,0x3,0,3,0,yes,0,0x10,0,none,0,0x40,	GD_ITEMEMERGENCYCALL,Item Emergency Call
+10016,0,0,0,0,0,0,5,0,no,0,0x10,0,none,0,0x0,	GD_GUILD_STORAGE,Guild Storage Expansion

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

@@ -630,7 +630,7 @@
 //****
 // AB Arch Bishop
 2038,0,0,20:23:26:29:32,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_JUDEX
-2039,0,0,30,0,-30,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0							//AB_ANCILLA
+2039,0,0,30,0,-10,0,99,0,0,none,0,0,717,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0							//AB_ANCILLA
 2040,0,0,22:28:34:40:46:52:58:64:70:76,0,0,0,99,0,0,none,0,0,717,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//AB_ADORAMUS
 2041,0,0,280:320:360,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_CLEMENTIA
 2042,0,0,200:220:240,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_CANTO

+ 0 - 3
db/pre-re/skill_tree.txt

@@ -2577,7 +2577,6 @@
 4057,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4057,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4057,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4057,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4057,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4057,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4057,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#
@@ -2924,7 +2923,6 @@
 4063,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4063,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4063,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4063,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4063,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4063,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4063,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#
@@ -4580,7 +4578,6 @@
 4099,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4099,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4099,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4099,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4099,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4099,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4099,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#

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

@@ -146,7 +146,7 @@
 2446,0x86,    ,  0, 3:3:3:4:4,1000,enemy, 0x018	//SO_EARTHGRAVE
 2447,0x86,    ,  0, 3:3:3:4:4,1000,enemy, 0x018	//SO_DIAMONDDUST
 2449,0xdf,    ,  0, 3:3:4:4:5,500,enemy,  0x018	//SO_PSYCHIC_WAVE
-2450,0xe0,    ,  3, 0,  -1,enemy, 0xA010	//SO_CLOUD_KILL
+2450,0xe0,    ,  0, 3, 500,enemy, 0x8010	//SO_CLOUD_KILL
 2452,0xe4,    ,  3, 0,  -1,all,   0xA010	//SO_WARMER
 2453,0xeb,    ,  0, 1:1:2:2:3,500,enemy,0x8010	//SO_VACUUM_EXTREME
 2465,0xf1,    ,  1, 0,  -1,all,   0x2010	//SO_FIRE_INSIGNIA

+ 61 - 0
db/re/attendance.yml

@@ -0,0 +1,61 @@
+Header:
+  Type: ATTENDANCE_CONF
+  Version: 1
+  
+Attendance:
+  - Start: 20180502
+    End: 20180529
+    Rewards:
+      - Day: 1
+        ItemId: 22979
+      - Day: 2
+        ItemId: 6316
+      - Day: 3
+        ItemId: 12265
+        Amount: 5
+      - Day: 4
+        ItemId: 23047
+        Amount: 5
+      - Day: 5
+        ItemId: 23038
+      - Day: 6
+        ItemId: 23043
+      - Day: 7
+        ItemId: 23340
+        Amount: 3
+      - Day: 8
+        ItemId: 12516
+        Amount: 5
+      - Day: 9
+        ItemId: 23307
+        Amount: 5
+      - Day: 10
+        ItemId: 12610
+      - Day: 11
+        ItemId: 14533
+        Amount: 2
+      - Day: 12
+        ItemId: 23012
+        Amount: 3
+      - Day: 13
+        ItemId: 23048
+        Amount: 5
+      - Day: 14
+        ItemId: 12264
+        Amount: 5
+      - Day: 15
+        ItemId: 23046
+        Amount: 5
+      - Day: 16
+        ItemId: 12515
+        Amount: 5
+      - Day: 17
+        ItemId: 12522
+        Amount: 5
+      - Day: 18
+        ItemId: 12523
+        Amount: 5
+      - Day: 19
+        ItemId: 6234
+      - Day: 20
+        ItemId: 22845

+ 2 - 2
db/re/instance_db.txt

@@ -35,6 +35,6 @@
 28,Central Laboratory,3600,300,1@lab,120,30
 29,Last room,3600,300,1@uns,145,35
 // 30,Charleston in Distress,3600,300,1@mcd,127,282
-// 31,Ritual of Blessing,3600,300,2@mir,101,12
-// 32,Room of Consciousness,3600,300,1@mir,101,10
+31,Ritual of Blessing,3600,300,2@mir,101,12
+32,Room of Consciousness,3600,300,1@mir,101,10
 // 33,Sky Fortress Invasion,3600,300,1@sthb,54,67,1@sthc,1@sthd

+ 64 - 3
db/re/item_combo_db.txt

@@ -14,6 +14,7 @@
 1284:2892,{ bonus2 bSkillAtk,"AS_SONICBLOW",50; bonus bBaseAtk,50; bonus bFlee,-30; }
 1285:2892,{ bonus bCritical,4; bonus bCritAtkRate,40; bonus bMaxHPRate,-10; }
 1287:15123,{ if (getequiprefinerycnt(EQI_HAND_R) >= 7) { autobonus "{ bonus bIgnoreDefClass,Class_Normal; }",1000,3000,BF_SHORT,BF_NORMAL; } /* Confirm: Success rate */ }
+1326:22133,{ bonus bBaseAtk,40; .@eq = getequiprefinerycnt(EQI_SHOES); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { bonus2 bSkillAtk,"NC_AXEBOOMERANG",15; } if ((.@eq + .@weapon) >= 18) { bonus2 bAddClass,Class_All,10; if ((.@eq + .@weapon) >= 22) { bonus bLongAtkRate,10; } } }
 1387:19021,{ bonus2 bSkillAtk,"WS_CARTTERMINATION",15+(getequiprefinerycnt(EQI_HAND_R))*5; }
 1407:5782,{ bonus2 bAddClass,Class_All,3; }
 1408:5782,{ bonus2 bAddClass,Class_All,3; }
@@ -37,11 +38,12 @@
 1479:2700,{ bonus2 bResEff,Eff_Confusion,9500; }
 1480:2527,{ bonus2 bAddRace,RC_Dragon,5; }
 1480:2527:5467,{ bonus2 bAddRace,RC_Dragon,25; }
-1490:19021,{ bonus2 bSkillAtk,"LK_SPIRALPIERCE",getequiprefinerycnt(EQI_HAND_R)*5; bonus4 bAutoSpellOnSkill,"LK_JOINTBEAT","LK_SPIRALPIERCE",max(getskilllv("LK_SPIRALPIERCE"),1),50+(getskilllv("LK_JOINTBEAT")*10); /* Confirm: Success rate */ }
+1490:19021,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus2 bSkillAtk,"LK_SPIRALPIERCE",.@r*5; bonus4 bAutoSpellOnSkill,"LK_JOINTBEAT","LK_SPIRALPIERCE",max(getskilllv("LK_SPIRALPIERCE"),1),50+.@r*5; /* Confirm: Success rate */ }
 15141:19033,{ bonus bMaxSP,100; bonus bNoCastCancel; }
 15141:20779:22075,{ .@r = getequiprefinerycnt(EQI_ARMOR)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_SHOES); bonus bMaxHP,1000; bonus bHealPower,min(5+.@r,30); bonus bHealPower2,min(5+.@r,30); }
 15186:19168,{ bonus2 bExpAddClass,Class_All,5; bonus2 bDropAddClass,Class_All,5; }
 1535:4361,{ bonus bBreakArmorRate,900; bonus bBreakWeaponRate,900; }
+1558:27085,{ bonus bBaseAtk,100; bonus bMatk,100; }
 1559:5467,{ bonus bAspd,1; bonus bFlee2,3; }
 1564:2186,{ bonus bAspdRate,getequiprefinerycnt(EQI_HAND_R); }
 1572:2716:2717,{ bonus bInt,5; bonus bMaxHP,700; bonus bAspdRate,5; }
@@ -55,6 +57,7 @@
 1618:2509,{ bonus bMaxHP,300; bonus bMatkRate,min(5, getequiprefinerycnt(EQI_HAND_R)-5); bonus2 bSubEle,Ele_Neutral,min(30, getequiprefinerycnt(EQI_GARMENT)*3); }
 1618:2535,{ bonus bMatkRate,5; bonus2 bSubEle,Ele_Neutral,25; }
 1618:19020,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMatk,.@r; if (.@r >= 10) { autobonus "{ bonus bVariableCastrate,-50; }",100,5000,BF_MAGIC; /* Confirm: Success rate? */ } }
+1618:20847,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_GARMENT); .@weapon = min(.@weapon,10); bonus bMaxHP,1000; bonus bMatk,(-50+(20*.@weapon)); bonus bDelayrate,-(3*(.@weapon/3)); bonus2 bSubEle,Ele_Neutral,(min(.@eq,10)/2); }
 1619:19020,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); bonus bMatk,.@r; if (.@r >= 10) { autobonus "{ bonus bVariableCastrate,-50; }",100,5000,BF_MAGIC; /* Confirm: Success rate? */ } }
 1620:2509,{ bonus bMaxHP,300; bonus bMatkRate,getequiprefinerycnt(EQI_HAND_R)-5; if(getequiprefinerycnt(EQI_GARMENT) > 10) { bonus2 bSubEle,Ele_Neutral,30; } else { bonus2 bSubEle,Ele_Neutral,getequiprefinerycnt(EQI_GARMENT)*3; } }
 1620:2535,{ bonus bMatkRate,5; bonus2 bSubEle,Ele_Neutral,25; }
@@ -68,7 +71,7 @@
 1657:2471:2569:15029,{ bonus bHealPower,25; bonus2 bSkillUseSP,"AL_HEAL",-20; bonus2 bSkillCooldown,"AB_SECRAMENT",-2000; bonus2 bSkillCooldown,"AB_LAUDAAGNUS",-2000; bonus2 bSkillCooldown,"AB_LAUDARAMUS",-2000; }
 1659:5920,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus2 bSkillUseSP,"AL_HEAL",6*.@r; bonus2 bSkillUseSP,"AB_CHEAL",10*.@r; bonus2 bSkillUseSP,"AB_HIGHNESSHEAL",14*.@r; }
 1660:2471:2569:15029,{ bonus bHealPower,45; bonus2 bSkillUseSP,"AL_HEAL",-50; bonus3 bAutoSpellWhenHit,"AB_SILENTIUM",1,100; bonus2 bSkillCooldown,"AB_CLEARANCE",-3000; bonus2 bSkillCooldown,"AB_LAUDAAGNUS",-3000; bonus2 bSkillCooldown,"AB_LAUDARAMUS",-3000; }
-1668:15089,{ bonus bDelayrate,-10; }
+1668:15089,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus bDelayrate,-10-min(.@r,10); }
 1670:2968,{ bonus bMatkRate,getequiprefinerycnt(EQI_HAND_R)*5; }
 1670:2968:2969,{ bonus bMatkRate,-(getequiprefinerycnt(EQI_HAND_R)*5); }
 1670:2969,{ bonus bMatkRate,getequiprefinerycnt(EQI_HAND_R)*5; }
@@ -91,8 +94,10 @@
 1734:1753,{ bonus bLongAtkRate,50; }
 1741:2748,{ bonus bBaseAtk,25; bonus3 bAddEff,Eff_Curse,200,ATF_WEAPON|ATF_LONG|ATF_TARGET; }
 1746:1773,{ bonus bLongAtkRate,50; }
+1774:18174,{ bonus bLongAtkRate,50; }
 1775:18114,{ bonus bLongAtkRate,70; }
 1776:18114,{ bonus bLongAtkRate,40; }
+1846:20838,{ bonus bBaseAtk,40; .@eq = getequiprefinerycnt(EQI_GARMENT); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { .@val = 20; } if ((.@eq + .@weapon) >= 18) { bonus2 bSkillCooldown,"SR_FLASHCOMBO",-1000; if ((.@eq + .@weapon) >= 22) { .@val += 15; } } if (.@val) { bonus2 bSkillAtk,"SR_TIGERCANNON",.@val; } }
 1935:2988,{ bonus2 bSkillAtk,"CG_ARROWVULCAN",200; bonus2 bSkillUseSP,"CG_ARROWVULCAN",50; }
 1990:2989,{ bonus2 bSkillAtk,"CG_ARROWVULCAN",200; }
 2001:2677,{ bonus bMatkRate,10; bonus bDex,2; bonus2 bSubRace,RC_Demon,10; bonus2 bSubRace,RC_Undead,10; }
@@ -105,6 +110,8 @@
 2012:2468:2860:15026,{ bonus2 bMagicAtkEle,Ele_Water,60; bonus2 bMagicAtkEle,Ele_Wind,-60; bonus2 bSubEle,Ele_Wind,-50; }
 2013:2469:2861:15027,{ bonus2 bMagicAtkEle,Ele_Fire,60; bonus2 bMagicAtkEle,Ele_Water,-60; bonus2 bSubEle,Ele_Water,-50; }
 2014:2470:2862:15028,{ bonus2 bMagicAtkEle,Ele_Earth,60; bonus2 bMagicAtkEle,Ele_Fire,-60; bonus2 bSubEle,Ele_Fire,-50; }
+2039:20847,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_GARMENT); bonus2 bSkillAtk,"WL_CRIMSONROCK",10; if (.@eq >= 7 && .@weapon >= 7) { bonus2 bSkillAtk,"WL_HELLINFERNO",40; } if ((.@eq + .@weapon) >= 18) { bonus2 bMagicAtkEle,Ele_Wind,10; bonus2 bMagicAtkEle,Ele_Dark,10; if ((.@eq + .@weapon) >= 22) { bonus2 bMagicAtkEle,Ele_Fire,10; } } }
+2051:20847,{ bonus bMatk,50; .@eq = getequiprefinerycnt(EQI_GARMENT); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { bonus2 bMagicAtkEle,Ele_Water,10; bonus2 bMagicAtkEle,Ele_Wind,10; bonus2 bMagicAtkEle,Ele_Earth,10; bonus2 bMagicAtkEle,Ele_Fire,10; } if ((.@eq + .@weapon) >= 18) { bonus2 bMagicAddEle,Ele_Water,15; bonus2 bMagicAddEle,Ele_Wind,15; bonus2 bMagicAddEle,Ele_Earth,15; bonus2 bMagicAddEle,Ele_Fire,15; if ((.@eq + .@weapon) >= 22) { bonus bDelayrate,-15; } } }
 2109:2239:2717,{ bonus bHPrecovRate,15; bonus bSPrecovRate,15; bonus bMatkRate,7; }
 2109:2971:5135,{ bonus bHPrecovRate,15; bonus bSPrecovRate,15; bonus bMatkRate,7; }
 2109:2971:18874,{ bonus bHPrecovRate,15; bonus bSPrecovRate,15; bonus bMatkRate,7; }
@@ -154,6 +161,8 @@
 2337:2654,{ bonus bUseSPrate,-20; bonus bMaxHP,300; }
 2339:2522,{ bonus bAgi,5; bonus bFlee,10; }
 2339:2523,{ bonus bAgi,5; bonus bFlee,10; }
+2346:27113,{ bonus3 bAutoSpellWhenHit,"WZ_WATERBALL",5,50; }
+2347:27113,{ bonus3 bAutoSpellWhenHit,"WZ_WATERBALL",5,50; }
 2353:2417:2516,{ bonus bAgi,3; bonus bMaxHPrate,5; bonus bMaxSPrate,5; }
 2353:2418:2517,{ bonus bVit,5; bonus bHPrecovRate,10; bonus bSPrecovRate,10; }
 2353:5123,{ if(readparam(bDex)>69) bonus bUseSPrate,-10; }
@@ -209,15 +218,22 @@
 2484:2586:15047,{ bonus bDex,5; bonus2 bSubRace,RC_DemiHuman,15; bonus2 bSubRace,RC_Player,15; }
 2485:2587:15048,{ bonus bInt,5; bonus bMdef,10; bonus2 bSubRace,RC_DemiHuman,15; bonus2 bSubRace,RC_Player,15; }
 2507:15146,{ .@r = getequiprefinerycnt(EQI_ARMOR); bonus bMaxSPrate,10+.@r; bonus bFlee,10+.@r; }
+2507:15163,{ bonus bVariableCastrate,-(2*getequiprefinerycnt(EQI_ARMOR)); bonus bNoCastCancel; }
 2509:15146,{ .@r = getequiprefinerycnt(EQI_ARMOR); bonus bMaxHPrate,10+.@r; bonus bMatkRate,2+.@r; }
 2518:2648:2649:5126,{ bonus bInt,5; bonus bMdef,11; bonus bMaxSPrate,20; bonus bNoCastCancel; bonus bVariableCastrate,25; }
 2519:2650:2651:5127,{ bonus bStr,2; bonus bLuk,9; bonus bCritical,13; bonus bBaseAtk,18; bonus bFlee2,13; }
 2519:15147,{ .@r = getequiprefinerycnt(EQI_ARMOR); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,15; bonus2 bIgnoreDefRaceRate,RC_Demon,15; bonus2 bIgnoreDefRaceRate,RC_Undead,15; bonus bLuk,3+.@r; bonus bCritical,10+.@r; }
+2519:15164,{ .@r = getequiprefinerycnt(EQI_ARMOR); bonus bDefEle,Ele_Ghost; bonus bAgi,.@r; bonus bFlee,(2*.@r); }
+2524:4174:15164,{ bonus2 bSubEle,Ele_Neutral,-50; bonus2 bSubEle,Ele_Water,50; bonus2 bSubEle,Ele_Earth,50; bonus2 bSubEle,Ele_Fire,50; bonus2 bSubEle,Ele_Wind,50; bonus2 bSubEle,Ele_Poison,50; bonus2 bSubEle,Ele_Holy,50; bonus2 bSubEle,Ele_Dark,50; bonus2 bSubEle,Ele_Ghost,50; bonus2 bSubEle,Ele_Undead,50; }
 2524:15147,{ .@r = getequiprefinerycnt(EQI_ARMOR); bonus2 bIgnoreDefRaceRate,RC_DemiHuman,15; bonus2 bIgnoreDefRaceRate,RC_Demon,15; bonus2 bIgnoreDefRaceRate,RC_Undead,15; bonus bMaxHPrate,10+.@r; bonus2 bAddClass,Class_All,2+.@r; }
+2524:15164,{ .@r = getequiprefinerycnt(EQI_ARMOR); .@val = 10; bonus bVit,(5+.@r); bonus bLuk,.@r; bonus2 bSubEle,Ele_Fire,10; bonus2 bSubEle,Ele_Dark,10; if (.@r >= 10) { .@val += 10; } bonus2 bSubEle,Ele_Neutral,.@val; }
+2525:15163,{ bonus bVariableCastrate,-(2*getequiprefinerycnt(EQI_ARMOR)); bonus bNoCastCancel; }
 2527:5467:13001,{ bonus2 bAddRace,RC_Dragon,25; }
 2527:5467:13030,{ bonus2 bAddRace,RC_Dragon,25; }
 2527:13001,{ bonus2 bAddRace,RC_Dragon,5; }
 2527:13030,{ bonus2 bAddRace,RC_Dragon,5; }
+2535:15163,{ bonus5 bAutoSpell,"AL_HEAL",1,(10*getequiprefinerycnt(EQI_ARMOR)),BF_MAGIC,0; }
+2584:5579,{ .@r = getequiprefinerycnt(EQI_GARMENT); if(.@r>=5) { skill "TF_DOUBLE",1; bonus bDoubleRate,25; } else if(.@r>=7) { .@bonus = max(getskilllv("TF_DOUBLE"),5); skill "TF_DOUBLE",.@bonus; bonus bDoubleRate,.@bonus*5; } }
 2597:28342,{ bonus bCritAtkRate,5; bonus bCritical,10; .@r = getequiprefinerycnt(EQI_GARMENT); if (.@r > 7) bonus bCritAtkRate,4; else if (.@r > 5) bonus bCritAtkRate,3; }
 //2598:Ramor Shield,{ .@r = getequiprefinerycnt(EQI_GARMENT); bonus2 bSubRace,RC_Undead,.@r; bonus2 bSubRace,RC_DemiHuman,.@r; }
 2607:2677,{ bonus2 bSkillAtk,"AL_HEAL",50; bonus2 bSkillAtk,"PR_MAGNUS",30; bonus bSPrecovRate,9; }
@@ -307,6 +323,7 @@
 2968:18821,{ bonus bMatkRate,getequiprefinerycnt(EQI_HEAD_TOP)/2; }
 2969:13092,{ bonus bBaseAtk,getequiprefinerycnt(EQI_HAND_R)*10; }
 2969:18821,{ bonus bMatkRate,getequiprefinerycnt(EQI_HEAD_TOP)/2; }
+2977:2978,{ bonus5 bAutoSpell,"SO_PSYCHIC_WAVE",1,10,BF_WEAPON,1; bonus5 bAutoSpell,"HW_MAGICPOWER",1,10,BF_MAGIC,0; bonus5 bAutoSpell,"WZ_FROSTNOVA",10,10,BF_WEAPON|BF_MAGIC,0; bonus5 bAutoSpellWhenHit,"DC_SCREAM",1,10,BF_WEAPON|BF_MAGIC,0; }
 2979:18852,{ bonus bMaxHPrate,15; bonus2 bSubEle,Ele_Fire,10; bonus bLongAtkRate,30; }
 2979:18853,{ bonus bMaxHPrate,15; bonus2 bSubEle,Ele_Fire,10; bonus bLongAtkRate,30; }
 2983:4218,{ bonus bVit,-3; bonus bHPrecovRate,-20; bonus bMaxHP,1000; }
@@ -335,12 +352,18 @@
 4072:21013,{ bonus2 bSubSize,Size_All,15; }
 4074:4162,{ bonus2 bAddEffWhenHit,Eff_Blind,600; }
 4090:4212:4328,{ bonus bAllStats,1; }
+4090:27085,{ autobonus "{ bonus2 bAddEff,Eff_Stun,5000; }",2,5000,BF_SHORT; }
+4093:27120,{ bonus bMaxSP,50; }
+4094:27086,{ autobonus "{ bonus bAspd,1; }",20,5000,BF_WEAPON; }
+4100:27084,{ autobonus "{ bonus bSPrecovRate,100; }",20,5000,BF_MAGIC; }
 4106:4248,{ bonus bPerfectHitAddRate,20; }
 4127:4166,{ bonus2 bAddEffWhenHit,Eff_Curse,600; }
+4131:27081,{ autobonus "{ bonus bFlee2,10; }",70,5000,BF_SHORT; }
 4139:18619,{ bonus3 bAutoSpell,"RG_SNATCHER",5,20; bonus bDex,2; bonus bAgi,1; bonus bInt,-1; }
 4152:5967,{ bonus2 bAddItemGroupHealRate,IG_Juice,1000; }
 4153:4247:4273,{ bonus3 bAddMonsterDropItem,544,RC_Fish,3000; bonus2 bAddEle,Ele_Water,30; }
 4153:18554,{ bonus2 bAddEle,Ele_Water,10; }
+4159:27082,{ autobonus "{ bonus bFlee,10; }",20,5000,BF_SHORT; }
 4163:5967,{ bonus bAspdRate,3; bonus bAspd,1; bonus2 bAddClass,Class_All,-5; if (getequiprefinerycnt(EQI_HAND_R) >= 10 && getiteminfo(getequipid(EQI_HAND_R),11) == 11) bonus bAspd,1; }
 4168:4169,{ bonus bMaxHPrate,20; bonus bMaxSPrate,20; bonus bVariableCastrate,-10; }
 4169:4488,{ if(getequiprefinerycnt(EQI_SHOES) >= 15) { bonus bMaxHPrate,15; bonus bMaxSPrate,15; } else { bonus bMaxHPrate,10; bonus bMaxSPrate,10; } }
@@ -355,6 +378,7 @@
 4193:4294,{ bonus bMaxHP,300; bonus bMaxSP,60; }
 4207:18865,{ bonus2 bAddSize,Size_All,5; bonus2 bMagicAddSize,Size_All,5; }
 4208:4258:4325:4327:4382,{ bonus bInt,3; bonus2 bSkillAtk,"WZ_HEAVENDRIVE",10; bonus2 bSkillAtk,"MG_THUNDERSTORM",10; if(BaseJob==Job_Sage) { bonus bMagicDamageReturn,20; bonus2 bAddMonsterDropItem,716,100; bonus2 bAddMonsterDropItem,715,100; bonus bVariableCastrate,-20; } }
+4212:27083,{ autobonus2 "{ bonus2 bAddDefMonster,1026,-100; }",20,5000,BF_SHORT; }
 4218:4269,{ bonus bHPrecovRate,30; bonus bSPrecovRate,30; bonus bVit,4; bonus bInt,4; }
 4220:4246:4311:4319:4331,{ bonus bStr,10; bonus bMaxHPrate,20; bonus bHPrecovRate,50; bonus3 bAutoSpell,"BS_WEAPONPERFECT",1,3; bonus2 bAddMonsterDropItem,501,500; if(BaseClass==Job_Swordman) bonus2 bAddItemGroupHealRate,IG_Potion,50; }
 4229:4244:4299:4313,{ bonus bDef,3; bonus bMdef,3; }
@@ -364,6 +388,7 @@
 4254:18865,{ bonus2 bAddSize,Size_All,5; bonus2 bMagicAddSize,Size_All,5; }
 4268:4277,{ bonus bBaseAtk,20; bonus bLuk,3; }
 4273:18554,{ bonus2 bAddEle,Ele_Water,10; }
+4305:27119,{ bonus2 bSubSize,Size_All,5; bonus bHit,25; bonus2 bAddSize,Size_All,20; }
 4311:4319:4331:4371,{ bonus bInt,1; bonus bStr,1; bonus bDef,2; bonus bSPrecovRate,10; bonus2 bSkillAtk,"PA_SHIELDCHAIN",10; bonus2 bSkillAtk,"PA_SACRIFICE",10; bonus bVariableCastrate,-10; if(BaseJob==Job_Crusader) bonus bDefEle,Ele_Holy; }
 4323:4324,{ bonus3 bAutoSpell,"MG_FROSTDIVER",3,250; }
 4435:4436,{ bonus2 bSPGainRace,RC_DemiHuman,2; bonus2 bSPGainRace,RC_Player,2; }
@@ -421,7 +446,8 @@
 4968:19050,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); if( .@r >= 7 ){ setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal,.@skills$[.@i],2 + ( .@r > 9 ) ? 2 : 0; } } }
 4969:19050,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP); if( .@r >= 7 ){ setarray .@skills$, "AL_HEAL", "PR_SANCTUARY", "AM_POTIONPITCHER", "AB_HIGHNESSHEAL", "AB_CHEAL"; for( .@i = 0; .@i < getarraysize(.@skills$); .@i++ ){ bonus2 bSkillHeal2,.@skills$[.@i],2 + ( .@r > 9 ) ? 2 : 0; } /* TODO: Depending on some recovery items HP recovery amount + 1% or if refine >= 9 + 2% */ } }
 5040:5442,{ bonus bAspdRate,3; bonus bVariableCastrate,3; }
-5040:18673,{ bonus bSPrecovRate,3; }
+5040:18672,{ bonus bSPrecovRate,3; }
+5040:18673,{ bonus bHealPower,10; }
 5041:18538,{ bonus2 bSubRace,RC_Angel,9; }
 5043:18656,{ bonus bFlee,10; bonus2 bAddEff,Eff_Stun,1000; }
 5048:18538,{ bonus2 bSubRace,RC_Demon,9; }
@@ -453,6 +479,9 @@
 //9024:18832,{ bonus3 bAutoSpell,"BS_ADRENALINE",2,(GetPetRelationship >= 3)?15:10; }
 13027:15044,{ .@r = max(getequiprefinerycnt(EQI_ARMOR),1); bonus3 bAddMonsterDropItem,929,RC_DemiHuman,70*.@r; bonus3 bAddMonsterDropItem,970,RC_DemiHuman,50*.@r; bonus3 bAddMonsterDropItem,929,RC_Brute,70*.@r; bonus3 bAddMonsterDropItem,970,RC_Brute,50*.@r; }
 13034:13035,{ bonus bMaxSP,20; bonus bMaxHPRate,5; bonus bHit,10; bonus2 bAddSize,Size_Large,30; autobonus "{ bonus bAspdRate,100; }",1,7000,BF_WEAPON,"{ specialeffect2 EF_POTION_BERSERK; }"; }
+13337:19210,{ bonus bVariableCastrate,-15; .@eq = getequiprefinerycnt(EQI_HEAD_TOP); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { .@val = 25; } if ((.@eq + .@weapon) >= 18) { .@val += 25; if ((.@eq + .@weapon) >= 22) { bonus2 bSkillCooldown,"KO_HUUMARANKA",-1000; } } if (.@val) { bonus2 bSkillAtk,"KO_HUUMARANKA",.@val; } }
+13338:19210,{ bonus bBaseAtk,50;  .@eq = getequiprefinerycnt(EQI_HEAD_TOP); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { .@val = 30; } if ((.@eq + .@weapon) >= 18) { bonus bLongAtkRate,10; if ((.@eq + .@weapon) >= 22) { .@val += 20; } } if (.@val) { bonus2 bSkillAtk,"KO_HAPPOKUNAI",.@val; } }
+13469:20840,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_GARMENT); .@val = 100; if (.@weapon >= 7 && .@eq >= 7) { .@val += 50; } bonus bMatk,.@val; if ((.@weapon + .@eq) >= 18) { bonus3 bAutoSpell,"MG_COLDBOLT",3,50; bonus3 bAutoSpell,"MG_FIREBOLT",3,50; bonus3 bAutoSpell,"MG_LIGHTNINGBOLT",3,50; /* fix me: unknown skill lvl/rates */ } if ((.@weapon + .@eq) >= 22) { autobonus "{ bonus2 bSkillAtk,\"WZ_STORMGUST\",30; bonus2 bSkillAtk,\"WZ_METEOR\",30; bonus2 bSkillAtk,\"WZ_VERMILION\",30; bonus2 bSkillAtk,\"WZ_HEAVENDRIVE\",30; }",20,10000; /* fix me: unknown rate/specialeffect (if any) */ } }
 15041:18659,{ bonus bInt,3; bonus bStr,3; bonus bMdef,10; bonus bDefEle,Ele_Fire; bonus2 bAddEle,Ele_Earth,10; }
 15068:20710,{ bonus bAgi,5; bonus bFlee,10; }
 15088:18816:18818,{ bonus bMatk,BaseLevel/3; bonus2 bExpAddClass,Class_All,5; }
@@ -493,6 +522,13 @@
 15183:28467:28468,{ bonus bAtk,40; bonus2 bSubEle,Ele_All,4; bonus2 bSubEle,Ele_Neutral,-4; bonus2 bExpAddClass,Class_All,2; }
 15184:28469:28470,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; }
 15185:28471:28472,{ bonus bAtk,50; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; bonus2 bExpAddClass,Class_All,2; bonus bNoCastCancel; }
+15195:16063,{ .@matk = 100; .@recovery = 20; .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_ARMOR); if (.@weapon >= 7 && .@eq >= 7) { .@matk += 50; } if ((.@weapon + .@eq) >= 18) { .@recovery += 15; if ((.@weapon + .@eq) >= 22) { bonus bDelayrate,-15; } } bonus bMatk,.@matk; bonus bHealPower2,.@recovery; }
+15195:19209,{ bonus bSpeedRate,25; /* unknown speed value */ bonus bHealPower,10; }
+15212:22141,{ bonus bAspdRate,getequiprefinerycnt(EQI_SHOES); }
+15212:20856,{ bonus bDelayrate,-getequiprefinerycnt(EQI_GARMENT); }
+15212:20856:22141,{ if ((getequiprefinerycnt(EQI_ARMOR)+getequiprefinerycnt(EQI_GARMENT)+getequiprefinerycnt(EQI_SHOES)) >= 39) { autobonus "{ bonus bIgnoreDefClass,Class_Normal; bonus bIgnoreDefClass,Class_Boss; }",50,5000; } }
+15348:19366:20923:22192,{ bonus bVit,5; bonus bMaxSPrate,5; bonus bDef,5; bonus bMdef,15; bonus2 bSubEle,Ele_Water,10; bonus2 bSubEle,Ele_Earth,10; bonus2 bSubEle,Ele_Fire,10; bonus2 bSubEle,Ele_Wind,10; .@hp = 15; .@r[0] = getequiprefinerycnt(EQI_ARMOR); .@r[1] = getequiprefinerycnt(EQI_HEAD_TOP); .@r[2] = getequiprefinerycnt(EQI_GARMENT); .@r[3] = getequiprefinerycnt(EQI_SHOES); .@sum = .@r[0]+.@r[1]+.@r[2]+.@r[3]; if (.@r[0] >= 7 && .@r[1] >= 7 && .@r[2] >= 7 && .@r[3] >= 7) { .@hp += 10; } bonus bMaxHPrate,.@hp; if (.@sum >= 36) { bonus bFixedCast,-700; if (.@sum >= 40) { bonus bDelayrate,-20; } } }
+16065:20838,{ bonus bAspdRate,10; .@eq = getequiprefinerycnt(EQI_GARMENT); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { bonus2 bSkillAtk,"AB_DUPLELIGHT_MELEE",25; bonus2 bSkillAtk,"AB_DUPLELIGHT_MAGIC",25; } if ((.@eq + .@weapon) >= 18) { bonus bCritical,15; if ((.@eq + .@weapon) >= 22) { bonus bCritAtkRate,20; } } }
 18137:1752,{ bonus bLongAtkRate,25; }
 18137:1752:19048,{ bonus bLongAtkRate,20; bonus2 bSubEle,Ele_Fire,-10; if (getequiprefinerycnt(EQI_HAND_R) >= 10) bonus bAspd,1; }
 18137:19019,{ bonus bLongAtkRate,45; }
@@ -505,6 +541,8 @@
 18140:1755,{ bonus bLongAtkRate,25; bonus3 bAutoSpell,"NJ_HUUJIN",5,(readparam(bInt)>39) ? 300 : 100; }
 18140:1755:19048,{ bonus bLongAtkRate,20; bonus3 bAutoSpell,"NJ_HUUJIN",5,(readparam(bInt)>39) ? -300 : -100;; if (getequiprefinerycnt(EQI_HAND_R) >= 10)  bonus bAspd,1; }
 18140:19019,{ bonus bLongAtkRate,45; }
+18149:19210,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_HEAD_TOP); bonus bLongAtkRate,5; if (.@weapon >= 7 && .@eq >= 7) { .@val = 20; } if ((.@weapon + .@eq) >= 18) { bonus2 bAddClass,Class_All,10; } if ((.@weapon + .@eq) >= 22) { .@val += 30; } if (.@val) { bonus2 bSkillAtk,"RA_ARROWSTORM",.@val; } }
+18174:22190,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_SHOES); bonus2 bAddClass,Class_All,10; if (.@weapon >= 7 && .@eq >= 7) { bonus bAspd,2; } if ((.@weapon + .@eq) >= 18) { bonus bCritAtkRate,10; } if ((.@weapon + .@eq) >= 22) { autobonus "{ bonus bBaseAtk,100; bonus bCritAtkRate,15; bonus2 bAddRace,RC_Insect,50; bonus2 bAddRace,RC_Brute,50; }",20,10000,BF_LONG|BF_WEAPON|BF_NORMAL; /* fix me: unknown rates */ } }
 18507:18539,{ bonus bUseSPrate,-3; }
 18559:18560,{ bonus bCritAtkRate,5; }
 18563:18564,{ bonus bFixedCastrate,-10; }
@@ -527,6 +565,7 @@
 19038:19039,{ .@r = getequiprefinerycnt(EQI_HEAD_TOP)+getequiprefinerycnt(EQI_HEAD_MID); if((.@r==7)||(.@r==8)){ bonus bCritical,12; bonus bHit,12; } if(.@r>=9){ bonus bMaxHP,1200; bonus bMaxSP,120; } }
 19117:22101,{ bonus2 bDropAddRace,RC_All,5; bonus2 bExpAddRace,RC_All,5; if(getequiprefinerycnt(EQI_SHOES) >= 12) { bonus bFixedCast,-400; } }
 19118:22101,{ bonus2 bDropAddRace,RC_All,4; bonus2 bExpAddRace,RC_All,4; if(getequiprefinerycnt(EQI_SHOES) >= 12) { bonus bFixedCast,-400; } }
+19344:28244,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_HEAD_TOP); bonus2 bAddClass,Class_All,10; if (.@weapon >= 7 && .@eq >= 7) { bonus bAspd,2; } if ((.@weapon + .@eq) >= 18) { bonus bLongAtkRate,10; if ((.@weapon + .@eq) >= 22) { bonus2 bSkillAtk,"GS_SPREADATTACK",30; } } }
 20135:20136,{ bonus bAllStats,12; }
 20717:22000,{ bonus bMaxHPRate,15; bonus bMaxSPRate,5; }
 20717:22001,{ bonus bMaxHPRate,15; bonus bMaxSPRate,5; }
@@ -578,6 +617,9 @@
 20718:22118,{ bonus bMaxHPRate,15; bonus bMaxSPRate,5; }
 20797:2339,{ bonus bInt,15; bonus bMaxHPrate,5; bonus bMaxSPrate,5; if (getequiprefinerycnt(EQI_ARMOR) > 6) bonus bNoCastCancel; }
 20797:4174,{ bonus2 bSubEle,Ele_All,50; bonus2 bSubEle,Ele_Neutral,-50; }
+20838:26109,{ bonus2 bSkillAtk,"SO_PSYCHIC_WAVE",10; .@eq = getequiprefinerycnt(EQI_GARMENT); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { bonus2 bSkillAtk,"SO_EARTHGRAVE",40; } if ((.@eq + .@weapon) >= 18) { bonus2 bMagicAtkEle,Ele_Neutral,10; bonus2 bMagicAtkEle,Ele_Earth,10; if ((.@eq + .@weapon) >= 22) { bonus2 bMagicAtkEle,Ele_Water,10; } } }
+20840:28725,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_GARMENT); .@val = 80; if (.@weapon >= 7 && .@eq >= 7) { .@val += 80; } if ((.@weapon + .@eq) >= 18) { .@val += 40; } if ((.@weapon + .@eq) >= 22) { bonus2 bMagicAtkEle,Ele_Fire,15; } bonus bMatk,.@val; }
+20847:28745,{ .@weapon = getequiprefinerycnt(EQI_HAND_R); .@eq = getequiprefinerycnt(EQI_GARMENT); .@val = 10; if (.@weapon >= 7 && .@eq >= 7) { bonus bCritAtkRate,15; } if ((.@weapon + .@eq) >= 18) { .@val += 15; if ((.@weapon + .@eq) >= 22) { skill "TF_DOUBLE",4; bonus bDoubleRate,20; } } bonus bAspdRate,.@val; }
 22069:2195,{ bonus2 bSubEle,Ele_Neutral,5; bonus2 bAddEle,Ele_Neutral,getequiprefinerycnt(EQI_HAND_L); }
 22069:20753,{ bonus2 bAddEle,Ele_Neutral,5; .@r = getequiprefinerycnt(EQI_GARMENT); bonus bMaxHPrate,.@r; bonus bMaxSPrate,.@r; }
 22101:29148,{ bonus bMaxHPRate,5; bonus bMaxSPRate,5; .@r = getequiprefinerycnt(EQI_SHOES); if(.@r >= 7) { bonus2 bAddClass,Class_All,2; } if(.@r >= 9) { bonus2 bAddClass,Class_All,3; } if(.@r >= 12) { bonus bDelayrate,-5; } }
@@ -602,6 +644,8 @@
 22124:28467:28468,{ bonus bAspdRate,8; bonus bHit,8; bonus2 bExpAddClass,Class_All,2; }
 22125:28469:28470,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; }
 22126:28471:28472,{ bonus bAspdRate,10; bonus bHit,10; bonus2 bExpAddClass,Class_All,2; bonus bSpeedAddRate,25; }
+22133:26007,{ bonus bAspdRate,8; .@eq = getequiprefinerycnt(EQI_SHOES); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { .@val = 20; } if ((.@eq + .@weapon) >= 18) { bonus bLongAtkRate,10; if ((.@eq + .@weapon) >= 22) { .@val += 30; } } if (.@val) { bonus2 bSkillAtk,"LG_BANISHINGPOINT",.@val; } }
+22133:32005,{ bonus bBaseAtk,40; .@eq = getequiprefinerycnt(EQI_SHOES); .@weapon = getequiprefinerycnt(EQI_HAND_R); if (.@eq >= 7 && .@weapon >= 7) { .@val = 20; } if ((.@eq + .@weapon) >= 18) { bonus2 bAddClass,Class_All,10; if ((.@eq + .@weapon) >= 22) { .@val += 20; } } if (.@val) { bonus2 bSkillAtk,"RK_HUNDREDSPEAR",.@val; } }
 24012:24013:24014:24015:24016:24017,{ bonus bAllStats,3; }
 24018:24019:24020,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus2 bAddClass,Class_All,1; } }
 24021:24022:24023,{ if(getequiprefinerycnt(EQI_SHADOW_ACC_R) + getequiprefinerycnt(EQI_SHADOW_ACC_L) + getequiprefinerycnt(EQI_SHADOW_WEAPON) >= 23) { bonus bMatkRate,1; } }
@@ -699,15 +743,32 @@
 24249:24254,{ bonus2 bMagicAddRace,RC_All,1; bonus bMaxSPrate,1; if (getequiprefinerycnt(EQI_SHADOW_ACC_R)+getequiprefinerycnt(EQI_SHADOW_ACC_L)>=10) { bonus2 bMagicAddRace,RC_All,2; bonus bMaxSPrate,2; } }
 24253:28391,{ bonus2 bAddRace,RC_All,1; bonus bMaxHPrate,1; if (getequiprefinerycnt(EQI_SHADOW_ACC_R)+getequiprefinerycnt(EQI_SHADOW_ACC_L)>=10) { bonus2 bAddRace,RC_All,2; bonus bMaxHPrate,2; } }
 24255:28392,{ bonus2 bAddRace,RC_All,1; bonus bMaxHPrate,1; if (getequiprefinerycnt(EQI_SHADOW_ACC_R)+getequiprefinerycnt(EQI_SHADOW_ACC_L)>=10) { bonus2 bAddRace,RC_All,2; bonus bMaxHPrate,2; } }
+27101:28510,{ bonus bMatkRate,(getrefine()/3); }
+27102:28510,{ bonus bFlee2,5; }
+27103:28510,{ bonus2 bAddClass,Class_All,(getrefine()/3); }
+27104:28510,{ bonus2 bHPRegenRate,30,3000; bonus2 bSPRegenRate,1,3000; }
+27104:27105,{ if (getequiprefinerycnt(EQI_GARMENT) >= 9) { bonus bMaxHP,2000; bonus bMaxSP,100; } else { bonus bMaxHP,1000; bonus bMaxSP,50; } }
+27105:28510,{ bonus bMatk,30; }
+27107:27108,{ bonus2 bSkillAtk,"WM_METALICSOUND",50; bonus2 bSkillAtk,"WM_REVERBERATION",50; }
+// 27107:27108:27109,{ autobonus "{ heal 2000,0; bonus2 bAddEle,Ele_Neutral,200; bonus2 bMagicAddEle,Ele_Neutral,200; }",20,6000,BF_WEAPON|BF_MAGIC,"{ active_transform 3073,6000; }"; /* fix me: mob 3073 not implemented */ }
+27110:27111,{ bonus2 bSubSize,Size_Small,20; }
+27111:27112,{ bonus2 bSubSize,Size_Medium,20; }
+27114:27115,{ bonus bMaxHPrate,(getequiprefinerycnt(EQI_ARMOR)/3); bonus bMaxSP,(5*(getequiprefinerycnt(EQI_HEAD_TOP)/2)); }
+27116:27117,{ bonus bCritical,2; bonus bCritAtkRate,2; }
 27147:27148,{ bonus bDelayrate,-3; }
 27163:27165,{ bonus bDelayrate,-3; bonus bVit,2; bonus bInt,2; bonus bAgi,2; bonus bDex,2; }
 27166:27167,{ bonus2 bSubEle,Ele_Neutral,5; bonus2 bMagicAddSize,Size_All,10; }
+27196:27199,{ bonus2 bMagicAddSize,Size_Small,5; bonus2 bMagicAddRace,RC_Brute,5; }
+27197:27198,{ bonus2 bAddSize,Size_Small,5; bonus2 bAddRace,RC_Brute,5; }
+28022:28509,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus bAspdRate,10; if (.@r >= 9) { bonus bCritAtkRate,10; if (.@r >= 11) { bonus2 bAddRace,RC_Brute,25; } } }
 28315:28317,{ bonus2 bAddClass,Class_All,4; bonus bMatkRate,4; }
 28316:28318,{ bonus2 bAddClass,Class_All,4; bonus bMatkRate,4; }
 28321:28322,{ bonus bUseSPrate,-(getskilllv("HT_BEASTBANE") * 2); }
 28326:28327,{ bonus bInt,8; bonus bStr,8; }
 28358:18521,{ skill "AS_CLOAKING",1; }
 28499:28920,{ bonus bFlee2,10; }
+28508:28612,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus bAspdRate,8; bonus bCritAtkRate,(5*(.@r/2)); if (.@r >= 9) { bonus bCritical,15; bonus2 bResEff,Eff_Curse,10000; if (.@r >= 11) { bonus bBaseAtk,100; } } }
+28509:28626,{ .@r = getequiprefinerycnt(EQI_HAND_R); bonus bAspdRate,8; bonus bCritAtkRate,(5*(.@r/2)); if (.@r >= 9) { bonus bCritical,15; if (.@r >= 11) { bonus bBaseAtk,100; } } }
 28906:2998,{ bonus bLongAtkRate,10; }
 28907:2998,{ bonus bSpeedRate,25; }
 28908:2998,{ bonus bDelayrate,-10; }

+ 215 - 37
db/re/item_db.txt

@@ -655,7 +655,7 @@
 1292,Upg_Katar,Upg Katar,5,20,,1000,80,,1,1,0x00001000,63,2,34,3,1,1,16,{ .@r = getrefine(); bonus bBaseAtk,(.@r*10); bonus bCritAtkRate,(.@r*2); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*10); },{},{}
 1293,Velum_Jamadhar,Vellum Jamadhar,5,20,,1200,170,,1,0,0x00001000,63,2,34,4,95,1,16,{ bonus4 bSetDefRace,RC_Player,10000,5000,1; bonus4 bSetMDefRace,RC_Player,10000,5000,1; bonus bAspdRate,getrefine(); },{},{}
 1294,Velum_Scare,Vellum Scale,5,20,,1200,50,,1,0,0x00001000,63,2,34,4,95,1,16,{ bonus3 bSPVanishRaceRate,RC_Player,10000,10; },{},{}
-1295,Blood_Tears_,Blood Tears,5,20,,1700,120,,1,3,0x00001000,18,2,34,4,55,1,16,{},{},{}
+1295,Blood_Tears_,Blood Tears,5,20,,1700,120,,1,3,0x00001000,18,2,34,4,55,1,16,{ bonus3 bAutoSpell,"NPC_WIDEBLEEDING",(getrefine()>=9?2:1),30; },{},{}
 1296,Metal_Katar,Metal Katar,5,20,,0,75,,1,1,0x00001000,63,2,34,3,1,1,16,{ .@r = getrefine(); bonus bBaseAtk,(.@r*5); bonus bCritAtkRate,.@r; .@i = min(BaseLevel/10,12); if(.@i>2) bonus bBaseAtk,((.@i-2)*5); },{},{}
 1297,Inverse_Scale_,Inverse Scale,5,20,,1500,140,,1,2,0x00001000,18,2,34,4,55,1,16,{ bonus bAtkEle,Ele_Holy; bonus3 bAutoSpell,"NPC_DRAGONFEAR",1,30; },{},{}
 1298,Shiver_Katar,Katar Of Horror,5,60000,,2700,110,,1,2,0x00001000,63,2,34,4,105,1,16,{},{},{}
@@ -686,6 +686,7 @@
 1322,Ru_Blue_Axe,Blue Axe,5,10,,1800,180,,1,1,0xFFFFFFFF,63,2,2,1,1,1,6,{ bonus bStr,5; bonus bVit,5; },{},{}
 1323,Ru_Gold_Axe,Ru Gold Axe,5,0,,1800,180,,1,2,0x00040000,56,2,2,3,120,1,6,{ bonus bStr,8; bonus bInt,8; },{},{}
 1324,War_Axe_,War Axe,5,20,,4200,140,,1,3,0x00040400,63,2,2,3,76,1,6,{ bonus bDex,2; bonus bLuk,2; },{},{}
+1326,Illusion_War_Axe,Illusion War Axe,5,0,,4200,180,,1,2,0x00040420,63,2,2,4,120,1,6,{ bonus bStr,2; bonus bDex,2; bonus bLuk,2; .@r = getrefine(); if (.@r >= 9) { .@val = 40; } else if (.@r >= 7) { .@val = 20; } bonus2 bSkillAtk,"NC_AXETORNADO",(100+.@val); bonus2 bSkillAtk,"NC_AXEBOOMERANG",(100+.@val); bonus2 bSkillAtk,"GN_CART_TORNADO",(75+.@val); },{},{}
 //===================================================================
 // 2-Handed Axes
 //===================================================================
@@ -731,7 +732,7 @@
 1390,E_Right_Epsilon_C,Light Epsilon,5,1,,0,229,,1,0,0x000444A2,63,2,34,4,1,0,7,{ bonus bAtkEle,Ele_Holy; bonus bStr,10; },{},{}
 1391,P_Two_Handed_Axe1,Eden Two-Handed Axe I,5,0,,0,195,,1,0,0x000444A2,63,2,34,3,60,0,7,{},{},{}
 1392,Ygnus_Stale,Ignus Steel,5,56000,,1900,250,,1,1,0x000444A2,63,2,34,4,95,1,7,{ bonus bAtkEle,Ele_Fire; bonus bUnbreakableWeapon; bonus2 bAddEff,Eff_Burning,300; bonus2 bAddEff2,Eff_Burning,300; },{},{}
-1393,End_Sektura,End Sectora,5,56000,,1900,250,,1,1,0x000444A2,63,2,34,4,95,1,7,{ bonus bAtkEle,Ele_Water; bonus bUnbreakableWeapon; bonus2 bAddEff,Eff_Freeze,300; bonus2 bAddEff2,Eff_Freeze,300; },{},{}
+1393,End_Sektura,End Sectora,5,56000,,1900,250,,1,1,0x000444A2,63,2,34,4,95,1,7,{ bonus bAtkEle,Ele_Water; bonus bUnbreakableWeapon; bonus2 bAddEff,Eff_Crystalize,300; bonus2 bAddEff2,Eff_Crystalize,300; },{},{}
 1394,Upg_Two_Handed_Axe,Upg Two Handed Axe,5,20,,2000,110,,1,1,0x000444A2,63,2,34,3,1,1,7,{ bonus bBaseAtk,(getrefine()*14); if(BaseLevel>70) bonus bBaseAtk,(((BaseLevel-70)/10)*10); },{},{}
 1395,Velum_Buster,Vellum Buster,5,20,,2500,50,,1,0,0x000444A2,63,2,34,4,95,1,7,{ bonus bUnbreakableWeapon; bonus3 bSPVanishRaceRate,RC_Player,10000,10; },{},{}
 1396,Velum_Guillotine,Vellum Guillotine,5,20,,5500,300,,1,0,0x000444A2,63,2,34,4,95,1,7,{ bonus bUnbreakableWeapon; bonus2 bAddRace,RC_Player,40; bonus2 bIgnoreDefRaceRate,RC_Player,30; .@r = getrefine(); if(.@r>=6) { bonus2 bSkillAtk,"NC_AXEBOOMERANG",80; bonus2 bSkillAtk,"NC_POWERSWING",80; } if(.@r>=9) { bonus2 bAddRace,RC_Player,60; } },{},{}
@@ -774,7 +775,7 @@
 1430,Pike_C,Pike,5,0,,0,74,,3,0,0x00004082,63,2,2,1,1,0,4,{ bonus2 bAddSize,Size_All,70; },{},{}
 1431,F_Pole_Axe_C,Pole Axe,5,1,,4800,195,,3,0,0x00004082,63,2,2,3,1,0,4,{ bonus bStr,1; bonus bInt,2; bonus bDex,1; },{},{}
 1432,E_Pole_Axe_C,Pole Axe,5,1,,4800,195,,3,0,0x00004082,63,2,2,3,1,0,4,{ bonus bStr,1; bonus bInt,2; bonus bDex,1; },{},{}
-1433,Imperial_Spear,Imperial Spear,5,20,,1800,180:40,,3,1,0x00004082,63,2,2,3,102,1,4,{ .@r = getrefine(); bonus2 bSkillAtk,"LG_CANNONSPEAR",20+(.@r/2); bonus2 bSkillAtk,"LG_BANISHINGPOINT",20+(.@r/2); },{},{}
+1433,Imperial_Spear,Imperial Spear,5,20,,1800,180:40,,3,1,0x00004082,63,2,2,3,102,1,4,{ .@r = getrefine(); bonus2 bSkillAtk,"LG_CANNONSPEAR",20+(.@r/2*3); bonus2 bSkillAtk,"LG_BANISHINGPOINT",20+(.@r/2*3); },{},{}
 1434,P_Sphere1,Eden Spear I,5,0,,0,165,,3,0,0x00004082,63,2,2,3,60,0,4,{},{},{}
 1435,Cannon_Spear,Cannon Spear,5,56000,,1600,180,,3,1,0x00004000,63,2,2,4,100,1,4,{ bonus bMaxSP,-100; bonus2 bSkillAtk,"LG_CANNONSPEAR",10; bonus bBaseAtk,(getrefine()/3); },{},{}
 1436,Velum_Spear,Vellum Spear,5,20,,850,150,,3,0,0x00004082,63,2,2,4,95,1,4,{ bonus2 bAddRace,RC_Player,60; .@r = getrefine(); if(.@r>=6) { bonus2 bSkillAtk,"RK_HUNDREDSPEAR",80; bonus2 bSkillAtk,"LG_PINPOINTATTACK",80; } if(.@r>=9) { bonus2 bAddRace,RC_Player,30; } },{},{}
@@ -786,6 +787,7 @@
 1442,Ru_Gold_Spear,Ru Gold Spear,5,0,,1200,180,,3,2,0x00004000,56,2,2,3,120,1,4,{ bonus bStr,8; bonus bAgi,8; },{},{}
 1443,Crimson_Spear,Crimson Spear,5,20,,900,90,,3,2,0x00004082,63,2,2,3,70,1,4,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); },{},{}
 1446,Requiem_Spear,Requiem Spear,5,20,,1000,130,,3,,0x00004080,63,2,2,4,100,1,4,{ .@r = getrefine(); .@b = 40; bonus bUnbreakableWeapon; if(.@r>=5){ .@b += (.@r-5)*15+20; } bonus2 bAddRace2,RC2_BioLab,.@b; },{},{}
+1447,Poison_Forged_Spear,Poison Forged Spear,5,0,,500,150,,3,3,0x00004080,58,2,2,4,100,1,4,{ bonus bAtkEle,Ele_Poison; bonus bCritical,10; skill "TF_DOUBLE",5; bonus bDoubleRate,25; bonus2 bAddEff,Eff_Poison,1000; bonus2 bAddEff2,Eff_Poison,300; },{},{}
 //===================================================================
 // 2-Handed Spears
 //===================================================================
@@ -822,9 +824,9 @@
 1474,Gae_Bolg,Gae Bolg,5,20,,2000,160,,3,0,0x00004082,63,2,34,4,60,1,5,{ bonus bIgnoreDefRace,RC_Dragon; bonus2 bAddClass,Class_Boss,10; },{},{}
 1475,Horseback_Lance,Equestrian's Spear,5,20,,3700,200,,4,0,0x00004082,63,2,34,4,75,1,5,{},{},{}
 1476,Crescent_Scythe_,Crescent Scythe,5,20,,2500,180,,3,1,0x00004082,63,2,34,4,48,1,5,{ bonus bCritical,30; bonus bHit,10; },{},{}
-1477,Spectral_Spear,Spectral Spear,5,20,,2000,170,,3,0,0x00004082,63,2,34,4,75,1,5,{ bonus2 bAddEle,Ele_Dark,20; bonus2 bAddRace,RC_Demon,20; bonus2 bAddRace,RC_Undead,20; bonus2 bSubEle,Ele_Dark,10; bonus2 bSubRace,RC_Demon,10; bonus2 bSubRace,RC_Undead,10; bonus2 bAddEff2,Eff_Confusion,1000; bonus bHPGainValue,50; },{},{}
+1477,Spectral_Spear,Spectral Spear,5,20,,2000,170,,3,0,0x00004082,63,2,34,4,75,1,5,{ bonus2 bAddEle,Ele_Dark,20; bonus2 bAddRace,RC_Demon,20; bonus2 bAddRace,RC_Undead,20; bonus2 bSubEle,Ele_Dark,10; bonus2 bSubEle,Ele_Undead,10; bonus2 bSubRace,RC_Demon,10; bonus2 bAddEff2,Eff_Confusion,1000; bonus bHPGainValue,50; },{},{}
 1478,Ahlspiess,Ahlspiess,5,20,,1000,120,,3,0,0x00004080,63,2,34,4,65,1,5,{ bonus bIgnoreDefClass,Class_Normal; bonus bIgnoreDefClass,Class_Boss; bonus2 bAddRace,RC_DemiHuman,10; bonus2 bAddRace,RC_Player,10; bonus3 bAutoSpell,"KN_PIERCE",5,30; },{},{}
-1479,Spectral_Spear_,Spectral Spear,5,20,,2000,170,,3,1,0x00004082,63,2,34,4,75,1,5,{ bonus2 bAddEle,Ele_Dark,20; bonus2 bAddRace,RC_Demon,20; bonus2 bAddRace,RC_Undead,20; bonus2 bSubEle,Ele_Dark,10; bonus2 bSubRace,RC_Demon,10; bonus2 bSubRace,RC_Undead,10; bonus2 bAddEff2,Eff_Confusion,1000; bonus bHPGainValue,50; },{},{}
+1479,Spectral_Spear_,Spectral Spear,5,20,,2000,170,,3,1,0x00004082,63,2,34,4,75,1,5,{ bonus2 bAddEle,Ele_Dark,20; bonus2 bAddRace,RC_Demon,20; bonus2 bAddRace,RC_Undead,20; bonus2 bSubEle,Ele_Dark,10; bonus2 bSubEle,Ele_Undead,10; bonus2 bSubRace,RC_Demon,10; bonus2 bAddEff2,Eff_Confusion,1000; bonus bHPGainValue,50; },{},{}
 1480,Gae_Bolg_,Gae Bolg,5,20,,2000,160,,3,2,0x00004082,63,2,34,4,60,1,5,{ bonus bIgnoreDefRace,RC_Dragon; bonus2 bAddClass,Class_Boss,10; },{},{}
 1481,Zephyrus_,Zephyrus,5,20,,2000,170,,3,3,0x00004082,63,2,34,4,48,1,5,{ bonus bAtkEle,Ele_Wind; bonus2 bAddEff,Eff_Silence,200; bonus3 bAutoSpell,"MG_THUNDERSTORM",3,100; },{},{}
 1482,BF_Lance1,Assaulter Lance,5,20,,0,160,,3,0,0x00004082,63,2,34,3,80,1,5,{ bonus bStr,2; bonus2 bAddRace,RC_DemiHuman,25; bonus2 bAddRace,RC_Player,25; bonus bIgnoreDefRace,RC_DemiHuman; bonus bIgnoreDefRace,RC_Player; bonus bUnbreakableWeapon; },{},{}
@@ -1172,6 +1174,7 @@
 1839,Crimson_Knuckles,Crimson Knuckles,5,20,,1000,100,,1,2,0x00008100,63,2,2,3,70,1,12,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); bonus bUnbreakableWeapon; },{},{}
 1840,Requiem_Knuckle,Requiem Knuckle,5,20,,500,150:100,,1,0,0x00008100,63,2,2,4,100,1,12,{ .@r = getrefine(); .@b = 40; if(.@r>=5){ .@b += (.@r-5)*15+20; } bonus2 bAddRace2,RC2_BioLab,.@b; },{},{}
 1841,Claw_Of_Flash_,Claw of Flash,5,60000,,400,140,,1,3,0x00008100,63,2,2,4,105,1,12,{ bonus bAspd,1; bonus bAspdRate,getrefine(); bonus2 bAddSize,Size_Medium,getrefine(); },{},{}
+1846,Illusion Combo Battle Glove,Illusion Combo Battle Glove,5,0,,500,250,,1,2,0x00008000,56,2,2,4,120,1,12,{ .@r = getrefine(); bonus2 bSkillAtk,"SR_SKYNETBLOW",(10+5*(.@r/2)); bonus2 bSkillAtk,"SR_DRAGONCOMBO",(10+5*(.@r/2)); bonus2 bSkillAtk,"SR_TIGERCANNON",(5*(.@r/3)); },{},{}
 //===================================================================
 // Instruments
 //===================================================================
@@ -1291,7 +1294,7 @@
 2017,Divine_Cross_,Divine Cross,5,20,,1500,120:210,,1,1,0x00008100,63,2,34,4,70,1,23,{ bonus bUnbreakableWeapon; bonus bAtkEle,Ele_Holy; bonus bDex,4; bonus2 bSubRace,RC_Demon,15; bonus2 bSubRace,RC_Undead,15; },{},{}
 2018,Metal_Staff,Metal Staff,5,20,,0,50:70,,1,1,0x00818315,63,2,34,3,1,1,23,{ if(BaseJob==Job_Wizard) bonus bMatk,15; else if(BaseJob==Job_Sage) bonus bMatk,10; bonus bMatk,(getrefine()*5); .@i = min(BaseLevel/10,12); if(.@i>2) bonus bMatk,((.@i-2)*5); },{},{}
 2019,TE_Woe_Two_Hand_Staff,TE Woe Two Hand Staff,5,0,,0,50:130,,1,0,0x00818315,63,2,34,3,40,1,23,{ bonus2 bMagicAddRace,RC_Player,20; bonus3 bAddEff,Eff_Stun,1000,ATF_MAGIC; bonus bHPRecovRate,5; bonus bSPRecovRate,5; },{},{}
-2020,Jormungand,Jormungand,5,10,,3000,200:280,,,0,0x810200,63,2,34,4,1,0,23,{ bonus bInt,20; bonus bUnbreakableWeapon; },{},{}
+2020,Jormungand,Jormungand,5,10,,3000,200:280,,,0,0x810200,63,2,34,4,1,0,23,{ bonus bInt,20; bonus3 bAddEff,Eff_Poison,3000,ATF_MAGIC; bonus2 bAddEffWhenHit,Eff_DPoison,100; bonus bUnbreakableWeapon; },{},{}
 2021,Ganbantein,Ganbantein,5,0,,2000,100:320,,1,0,0x00000200,56,2,2,4,100,1,10,{ bonus bInt,25; bonus bDex,25; bonus3 bAddEff,Eff_Poison,1000,ATF_MAGIC; bonus3 bAutoSpell,"AB_SILENTIUM",1,100; bonus bUnbreakableWeapon; },{},{}
 2022,Staff_Of_Geffen,Staff of Geffen,5,20,,1000,100:300,,1,1,0x00000200,18,2,34,1,150,1,23,{ bonus bInt,20; },{},{}
 2023,Thanos_Rod,Thanatos Two-Handed Staff,5,10,,1400,120:250,,1,1,0x00018314,56,2,34,4,120,1,23,{ bonus bInt,6; bonus bVit,6; bonus bLuk,-6; bonus bHealPower,18; bonus bMagicHPGainValue,500; bonus bMagicSPGainValue,50; bonus2 bHPLossRate,100,10000; },{},{ heal -1000,0; }
@@ -1301,6 +1304,8 @@
 2027,Sunflower_Kid,Sunflower Kid,5,10,,1500,150:320,,,2,0x00000200,56,2,34,4,170,1,23,{ bonus bInt,5; .@r = getrefine(); bonus bMatkRate,(.@r/2); bonus bDelayrate,(.@r*-1); bonus bUnbreakableWeapon; },{},{}
 2030,Unity_Two-Handed_Staff,Unity Two-Handed Staff,5,20,,500,95:135,,1,1,0x800200,63,2,34,3,1,1,23,{ bonus bMatk,pow(getrefine(),2)*125/100; },{},{}
 2032,Requiem_Wizardry_Staff,Requiem Wizardry Staff,5,20,,500,100:230,,1,,0xFFFFFFFF,63,2,2,4,100,1,10,{ .@r = getrefine(); .@b = 40; .@c = 5; if(.@r>=5){ .@b += (.@r-5)*15+20; .@c += .@r-5; } bonus2 bMagicAddRace2,RC2_BioLab,.@b; bonus2 bSubRace2,RC2_BioLab,.@c; bonus2 bIgnoreMdefRace2Rate,RC2_BioLab,(.@r-5)*10; },{},{}
+2039,Illusion_Wizardry_Staff,Illusion Wizardry Staff,5,0,,2400,150:250,,1,2,0x00810204,58,2,34,4,100,1,23,{ .@val = min(getrefine(),10)/2; bonus bInt,(6+.@val); bonus bDex,(2+.@val); },{},{}
+2051,Illusion_Survivor's_Staff,Illusion Survivor's Staff,5,0,,1200,100:240,,1,2,0x00818314,63,2,34,4,120,1,23,{ .@r = getrefine(); bonus bDex,2; bonus bInt,2; bonus bMaxHP,600; bonus bUnbreakableWeapon; bonus bMatkRate,(.@r/2); if (.@r >= 7) { bonus2 bMagicAddSize,Size_Small,15; bonus2 bMagicAddSize,Size_Medium,15; if (.@r >= 9) { bonus2 bSubSize,Size_Small,15; bonus2 bSubSize,Size_Medium,15; if (.@r >= 11) { bonus2 bSubDefEle,Ele_Water,15; bonus2 bSubDefEle,Ele_Wind,15; bonus2 bSubDefEle,Ele_Earth,15; bonus2 bSubDefEle,Ele_Fire,15; } } } },{},{}
 //===================================================================
 // Shields
 //===================================================================
@@ -1774,14 +1779,14 @@
 2566,Half_Asprika,Half Asprika,4,20,,0,,20,,0,0xFFFFFFFF,63,2,4,,47,0,0,{ bonus bMdef,2; bonus3 bSubEle,Ele_Neutral,15,BF_SHORT; bonus3 bSubEle,Ele_Water,15,BF_SHORT; bonus3 bSubEle,Ele_Earth,15,BF_SHORT; bonus3 bSubEle,Ele_Fire,15,BF_SHORT; bonus3 bSubEle,Ele_Wind,15,BF_SHORT; bonus3 bSubEle,Ele_Poison,15,BF_SHORT; bonus3 bSubEle,Ele_Holy,15,BF_SHORT; bonus3 bSubEle,Ele_Dark,15,BF_SHORT; bonus3 bSubEle,Ele_Ghost,15,BF_SHORT; bonus3 bSubEle,Ele_Undead,15,BF_SHORT; bonus bFlee,15; skill "AL_TELEPORT",1; bonus bUnbreakableGarment; },{},{}
 2567,Academy_Manteau,Academy Manteau,4,0,,600,,3,,1,73,7,2,4,,0,1,0,{},{},{}
 2568,Muffler_Of_Roki,Loki's Muffler,4,20,,400,,10,,0,0xFFFFFFFF,63,2,4,,100,0,0,{ bonus bAgi,1; bonus2 bSkillAtk,"ASC_BREAKER",5; bonus2 bSkillAtk,"GC_CROSSIMPACT",5; },{},{}
-2569,Shawl_Of_Affection,Shawl Of Affection,4,20,,400,,12,,0,0x00000100,63,2,4,,100,1,0,{ bonus bFlee2,5; bonus5 bAutoSpellWhenHit,"AB_RENOVATIO",1,30,BF_WEAPON,0; bonus5 bAutoSpellWhenHit,"AB_RENOVATIO",1,40,BF_MAGIC,0; },{},{}
+2569,Shawl_Of_Affection,Shawl Of Affection,4,20,,400,,12,,0,0x00000100,63,2,4,,100,1,0,{ bonus bFlee2,5; autobonus2 "{ bonus2 bHPRegenRate,1000,5000; }",300,90000,BF_WEAPON; autobonus2 "{ bonus2 bHPRegenRate,1000,5000; }",400,90000,BF_MAGIC;  },{},{}
 2570,Shawl_Of_Judgement,Shawl Of Judgement,4,20,,400,,12,,0,0x00000100,63,2,4,,100,1,0,{ bonus bFlee,5; .@i = max(2,getskilllv("AB_ORATIO")); bonus5 bAutoSpellWhenHit,"AB_ORATIO",.@i,30,BF_WEAPON,0; bonus5 bAutoSpellWhenHit,"AB_ORATIO",.@i,40,BF_MAGIC,0; },{},{}
 2571,Para_Team_Manteau2,Eden Team Manteau II,4,0,,0,,18,,0,0xFFFFFFFF,63,2,4,,60,0,0,{ bonus bFlee,12; bonus2 bSubEle,Ele_Neutral,10; },{},{}
 2572,Katabart_Sholder,Katabart Sholder,4,20,,3000,,4,,1,0xFFFFFFFF,63,2,4,,70,1,0,{},{},{}
 2573,Archangel_Wing,Archangel Wings,4,0,,200,,18,,1,0xFFFFFFFF,63,2,4,,0,1,1,{},{},{}
 2574,Ur_Manteau,Ur's Manteau,4,20,,600,,20,,0,0x00000080,56,2,4,,100,1,0,{ bonus bMaxHPrate,2; bonus2 bSubEle,Ele_Neutral,10; },{},{}
 2575,Peuz_Manteau,Peuz's Manteau,4,20,,600,,16,,0,0x00000080,56,2,4,,100,1,0,{ bonus bFlee,10; bonus bCritical,10; },{},{}
-2576,Bravery_Bag,Adventurer's Backpack,4,0,,200,,20,,1,0xFFFFFFFF,63,2,4,,0,1,2,{ skill "BS_GREED",1; .@r = getrefine(); if(.@r>6) { if(readparam(bStr)>=90){ bonus bBaseAtk,20; } if(readparam(bInt)>=90){ bonus bMatk,30; } if(readparam(bVit)>=90){ bonus2 bSubEle,Ele_Neutral,10; } if(readparam(bAgi)>=90){ bonus bAspdRate,8; } if(readparam(bDex)>=90){ bonus bLongAtkRate,5; } if(readparam(bLuk)>=90){ bonus bCritAtkRate,10; } } if(.@r>8) { if(readparam(bStr)>=90){ bonus bBaseAtk,10; } if(readparam(bInt)>=90){ bonus bMatk,20; } if(readparam(bVit)>=90){ bonus2 bSubEle,Ele_Neutral,5; } if(readparam(bAgi)>=90){ bonus bAspd,1; } if(readparam(bDex)>=90){ bonus bLongAtkRate,5; } if(readparam(bLuk)>=90){ bonus bCritAtkRate,5; } } },{},{}
+2576,Bravery_Bag,Adventurer's Backpack,4,0,,200,,20,,1,0xFFFFFFFF,63,2,4,,0,1,2,{ skill "BS_GREED",1; .@r = getrefine(); if(.@r>=7) { if(readparam(bStr)>=90) { bonus bBaseAtk,(.@r>=9)?30:20; } if(readparam(bInt)>=90) { bonus bMatk,(.@r>=9)?50:30; } if(readparam(bVit)>=90) { bonus2 bSubEle,Ele_Neutral,(.@r>=9)?10:5; } if(readparam(bAgi)>=90) { bonus bAspdRate,8; if(.@r>=9) { bonus bAspd,1; } } if(readparam(bDex)>=90) { bonus bLongAtkRate,(.@r>=9)?10:5; } if(readparam(bLuk)>=90) { bonus bCritAtkRate,(.@r>=9)?15:10; } } },{},{}
 2577,Sabah_Hood,Sapha Hood,4,20,,100,,13,,0,0x00001000,63,2,4,,100,1,0,{ bonus bFlee,12; bonus bCritical,getrefine(); },{},{}
 2578,Nab_Hood,Nab Hood,4,20,,100,,13,,0,0x00001000,63,2,4,,100,1,0,{ .@r = getrefine(); bonus bFlee,.@r*2; bonus bBaseAtk,.@r*2; },{},{}
 2579,Magic_Stole,Magic Stole,4,20,,700,,8,,1,0xFFFFFFFF,63,2,4,,0,1,0,{ bonus bMdef,3; bonus bUseSPrate,-5; bonus bMaxSPrate,((getrefine()>=4)?6:3); },{},{}
@@ -2118,7 +2123,7 @@
 2911,Bangungot_Tattoo,Bangungot Agimat Tattoo,4,20,,100,,0,,0,0xFFFFFFFF,63,2,136,,1,0,0,{ bonus bHealPower,4; bonus bHealPower2,7; },{},{}
 2912,Xylitol_2011,Xylitol 2011,4,20,,300,,0,,1,0xFFFFFFFF,63,2,136,,0,0,0,{},{},{}
 2913,Thief_Handcuff,Thief Handcuff,4,20,,1400,,0,,1,0xFFFFFFFF,63,2,136,,10,0,0,{ bonus bBaseAtk,5; },{},{}
-2914,Wizard_Left_Eye,Wizard Left Eye,4,20,,100,,1,,1,0x00CFDF80,63,2,136,,0,0,0,{ bonus bInt,4; bonus bMdef,3; },{},{}
+2914,Wizard_Left_Eye,Wizard Left Eye,4,20,,100,,1,,1,0x00CFDF80,63,2,136,,0,0,0,{ bonus bInt,4; bonus bMdef,3; bonus bVariableCastrate,3; },{},{}
 2915,Ettlang_Keepsake,Ettlang Keepsake,4,20,,50,,0,,0,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bMdef,10; },{},{}
 2916,Fairy_Wing,Fairy Wing,4,0,,10,,0,,0,0xFFFFFFFF,63,2,136,,90,0,0,{ skill "ECLAGE_RECALL",1; },{},{}
 2917,Str_Glove,Str Glove,4,75000,,100,,0,,0,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus bMaxHP,100; bonus bMaxSP,20; bonus bBaseAtk,(readparam(bStr)/10); if(readparam(bStr)>=110) bonus2 bAddClass,Class_All,1; },{},{}
@@ -2159,27 +2164,27 @@
 2967,RWC_2012_Ring_,Chambered RWC 2012 Ring,4,20,,200,,0,,1,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus2 bAddClass,Class_All,1; },{},{}
 2968,RWC_2012_Pendant,RWC 2012 Pendant,4,20,,200,,0,,0,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bMatkRate,1; },{},{}
 2969,RWC_2012_Pendant_,Chambered RWC 2012 Pendant,4,20,,200,,0,,1,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bMatkRate,1; },{},{}
-2971,Pocket_Watch,Pocket Watch,4,10,,200,,1,,1,0x800200,63,2,136,,80,1,,{ bonus bHPrecovRate,15; bonus bSPrecovRate,15; bonus bMatkRate,7; },{},{}
+2971,Pocket_Watch,Pocket Watch,4,10,,200,,1,,1,0x800200,63,2,136,,80,0,,{ bonus bHPrecovRate,15; bonus bSPrecovRate,15; bonus bMatkRate,7; },{},{}
 2976,Red_Lantern,Red Lantern,4,10,,200,,0,,1,0xFFFFFFFF,63,2,136,,100,0,,{ bonus bMaxSP,-300; skill "MG_SIGHT",1; },{},{ sc_end SC_SIGHT; }
 2977,Hurt_Mind,Hurt Mind,4,10,,100,,0,,1,0xFFFFFFFF,63,2,136,,110,0,,{ bonus bMaxSP,200; skill "DC_SCREAM",3; },{},{}
-2978,KindHeart,Kind Heart,4,10,,100,,0,,1,0xFFFFFFFF,63,2,136,,110,0,,{ bonus bMaxHP,500; bonus2 bHPRegenRate,300,10000; skill "DC_SCREAM",3; },{},{}
+2978,KindHeart,Kind Heart,4,10,,100,,0,,1,0xFFFFFFFF,63,2,136,,110,0,,{ bonus bMaxHP,500; bonus2 bHPRegenRate,300,10000; },{},{}
 2979,Strawberry_Decoration,Strawberry Decoration,4,20,,500,,1,,1,0xFFFFFFFE,63,2,136,,1,,,{ bonus bAllStats,1; bonus3 bAutoSpellWhenHit,"WZ_FROSTNOVA",3,10; /* Confirm: Frost Nova cast chance */ },{},{}
-2980,Evilspirit_Gloves,Evilspirit Gloves,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,110,1,,{ bonus bMaxHP,500; bonus bMaxSP,200; skill "PF_SPIDERWEB",1; },{},{}
+2980,Evilspirit_Gloves,Evil Spirit Gloves,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,110,,,{ bonus bMaxHP,500; bonus bMaxSP,200; skill "PF_SPIDERWEB",1; bonus3 bAutoSpell,"SO_PSYCHIC_WAVE",1,20; bonus5 bAutoSpell,"HW_MAGICPOWER",1,10,BF_MAGIC,0; bonus5 bAutoSpell,"WZ_FROSTNOVA",10,10,BF_WEAPON|BF_MAGIC,0; bonus5 bAutoSpellWhenHit,"DC_SCREAM",1,50,BF_WEAPON|BF_MAGIC,0; },{},{}
 2981,RingOfHero,Warrior's Ring,4,10,,200,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{},{},{}
-2983,Greed_Brooch,Greed Brooch,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,50,1,,{ bonus2 bHPLossRate,10,5000; },{},{}
-2984,Glove_Save_Rimnil,Glove Save Rimnil,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,30,1,,{ bonus2 bExpAddRace,RC_All,5; },{},{}
+2983,Greed_Brooch,Greed Brooch,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,50,,,{ bonus2 bHPLossRate,10,5000; },{},{}
+2984,Glove_Save_Rimnil,Glove Save Rimnil,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,30,,,{ bonus2 bExpAddRace,RC_All,5; },{},{}
 2985,Gyges_Ring,Gyges Ring,4,10,,100,,,,1,0xFFFFFFFF,63,2,136,,50,,,{ bonus bInt,3; bonus bMatk,30; skill "TF_HIDING",1; },{},{ sc_end SC_HIDING; }
 2986,Snake_Ring,Snake Ring,4,20,,100,,2,,1,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bDex,3; bonus bMdef,2; },{},{}
 2987,Snake_Pendant,Snake Pendant,4,20,,100,,3,,1,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bAgi,3; bonus bLuk,2; bonus bMdef,3; },{},{}
 2988,Winged_Ring_Of_Newoz,Oz's New Wing Ring,4,20,,100,,0,,1,0x00080000,56,1,136,,130,,,{ bonus bVariableCastrate,-25; },{},{}
 2989,Floral_Bracelet_Of_Igu,Bloody Floral Decoration Bracelet,4,20,,100,,0,,1,0x00080000,56,0,136,,130,,,{ bonus bVariableCastrate,-25; },{},{}
-2990,Pendant_Of_Harmony,Pendant of Harmony,4,20,,100,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bMatkRate,6; bonus bHPrecovRate,50; bonus bSPrecovRate,50; bonus2 bSubEle,Ele_Holy,5; bonus5 bAutoSpell,"AB_RENOVATIO",1,100,BF_NORMAL,0; bonus4 bAutoSpellWhenHit,"PR_SANCTUARY",3,100,0; bonus bStr,-5; },{},{}
+2990,Pendant_Of_Harmony,Pendant of Harmony,4,20,,100,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus bMatkRate,6; bonus bHPrecovRate,50; bonus bSPrecovRate,50; bonus2 bSubEle,Ele_Holy,5; autobonus "{ bonus2 bHPRegenRate,1000,5000; }",100,90000,BF_NORMAL; bonus4 bAutoSpellWhenHit,"PR_SANCTUARY",3,100,0; bonus bStr,-5; },{},{}
 2991,Pendant_Of_Chaos,Pendant of Chaos,4,20,,100,,0,,0,0xFFFFFFFF,63,2,136,,130,,,{ bonus2 bAddClass,Class_All,6; bonus2 bSubEle,Ele_Dark,5; bonus2 bResEff,Eff_Confusion,10000; bonus2 bAddEff,Eff_Confusion,500; bonus3 bAutoSpellWhenHit,"NPC_WIDECONFUSE",2,30; bonus bInt,-5; },{},{}
 2992,Pendant_Of_Maelstorm,Pendant of Maelstrom,4,20,,100,,0,,1,0xFFFFFFFF,63,2,136,,130,,,{ bonus2 bAddClass,Class_All,6; bonus bMatkRate,6; bonus bAllStats,1; bonus5 bAutoSpellWhenHit,"SC_MAELSTROM",1,100,BF_MAGIC,0; },{},{}
 2995,Supplement_Part_Dex,Supplement Part Dex,4,25000,,100,,0,,1,0x00000400,56,2,136,,100,0,0,{ bonus bUseSPrate,-10; bonus bDelayrate,-10; bonus bVariableCastrate,-10; bonus2 bSkillCooldown,"NC_AXEBOOMERANG",-2000; },{},{}
 2996,Upgrade_Part_Gun_Barrel,Reinforced Parts - Gun Barrel,4,10,,500,,,,1,0xFFFFFFFF,63,2,136,,100,,,{ bonus2 bAddClass,Class_All,4; bonus bHit,10; bonus2 bSkillAtk,"NC_BOOSTKNUCKLE",25; },{},{}
 2997,RWC_Gold_Brooch,RWC Gold Brooch,4,10,,200,,0,,1,0xFFFFFFFF,63,2,136,,0,0,,{ bonus bBaseAtk,25; bonus bMatk,20; },{},{}
-2998,Shining_Trapezohedron,Shining Trapezohedron,4,0,,100,,,,1,0xFFFFFFFF,63,2,136,,90,1,,{ bonus2 bSubEle,Ele_Holy,10; },{},{}
+2998,Shining_Trapezohedron,Shining Trapezohedron,4,0,,100,,,,1,0xFFFFFFFF,63,2,136,,90,,,{ bonus2 bSubEle,Ele_Holy,10; },{},{}
 2999,RWC_Brooch,RWC Brooch,4,10,,200,,0,,0,0xFFFFFFFF,63,2,136,,0,0,,{ bonus bMaxHP,300; bonus bMaxSP,30; },{},{}
 //===================================================================
 // Cards
@@ -2724,7 +2729,7 @@
 4538,Sealed_Bacsojin_Card,Sealed White Lady Card,6,20,,10,,,,,,,,769,,,,,{ .@r = getrefine(); bonus bHealPower,(.@r>14?25:15); bonus bUseSPrate,(.@r>14?20:30); },{},{}
 4539,Sealed_F_Bishop_Card,Sealed Fallen Bishop Hibram Card,6,20,,10,,,,,,,,64,,,,,{ .@r = getrefine(); bonus bMatkRate,((.@r>14)?8:5); bonus bMaxSPrate,-50; .@rate = ((.@r>14)?33:25); bonus2 bMagicAddRace,RC_Angel,.@rate; bonus2 bMagicAddRace,RC_DemiHuman,.@rate; bonus2 bMagicAddRace,RC_Player,.@rate; },{},{}
 4540,SLD_Lord_Of_Death_Card,Sealed Lord of The Dead Card,6,20,,10,,,,,,,,2,,,,,{ .@rate = ((getrefine()>14)?350:250); bonus3 bAddEff,Eff_Stun,.@rate,ATF_SHORT; bonus3 bAddEff,Eff_Curse,.@rate,ATF_SHORT; bonus3 bAddEff,Eff_Silence,.@rate,ATF_SHORT; bonus3 bAddEff,Eff_Poison,.@rate,ATF_SHORT; bonus3 bAddEff,Eff_Bleeding,.@rate,ATF_SHORT; bonus2 bComaClass,Class_Normal,1; },{},{}
-4541,SLD_B_Katrinn_Card,Sealed High Wizard Card,6,20,,10,,,,,,,,769,,,,,{ bonus2 bIgnoreMdefClassRate,Class_Normal,100; if(getrefine()>14) { bonus bVariableCastrate,120; bonus bSPrecovRate,-120; } else { bonus bVariableCastrate,150; bonus bSPrecovRate,-150; } },{},{ heal 0,((getrefine()>14)?-2000:-3000); }
+4541,SLD_B_Katrinn_Card,Sealed High Wizard Card,6,20,,10,,,,,,,,769,,,,,{ bonus2 bIgnoreMdefClassRate,Class_Normal,100; .@rate = ((getrefine()>14)?120:150); bonus bVariableCastrate,.@rate; bonus bSPrecovRate,-.@rate; },{},{ heal 0,((getrefine()>14)?-2000:-3000); }
 4542,SLD_Detale_Card,Sealed Detale Card,6,20,,10,,,,,,,,16,,,,,{ bonus2 bResEff,Eff_Freeze,(getrefine()>=15?6000:4000); bonus5 bAutoSpell,"SA_LANDPROTECTOR",1,1,BF_MAGIC,1; bonus bMdef,-20; },{},{}
 4543,SLD_Garm_Card,Sealed Hatii Card,6,20,,10,,,,,,,,16,,,,,{ bonus2 bAddEffWhenHit,Eff_Freeze,((getrefine()>14)?4000:2500); },{},{}
 4544,SLD_Dark_Snake_Card,Sealed Evil Snake Lord Card,6,20,,10,,,,,,,,769,,,,,{ bonus bInt,3; .@i = (getrefine()>14?7500:5000); bonus2 bResEff,Eff_Blind,.@i; bonus2 bResEff,Eff_Curse,.@i; },{},{}
@@ -3999,7 +4004,7 @@
 5825,Badge_Of_Order_Grace,Badge Of Order Grace,4,0,,0,,1,,0,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bMdef,1; bonus2 bAddClass,Class_All,10; bonus bMatkRate,10; bonus bMaxHP,1500; },{},{}
 5826,Valkyrie_Helmet,Valkyrie Helmet,4,0,,0,,10,,0,0xFFFFFFFF,63,2,256,,0,0,225,{ bonus bStr,2; bonus bInt,2; bonus bDex,2; bonus bAgi,2; bonus bMdef,5; },{},{}
 5827,Book_File_Hat,Book File Hat,4,20,,100,,1,,0,0xFFFFFFFF,63,2,256,,1,1,423,{},{},{}
-5828,Honor_Gold_Ring,Honor Gold Ring,4,0,,50,,0,,0,0xFFFFFFFF,63,2,136,,1,1,0,{ bonus bAllStats,1; bonus bMdef,5; },{},{}
+5828,Honor_Gold_Ring,Honor Gold Ring,4,0,,50,,0,,0,0xFFFFFFFF,63,2,136,,1,0,0,{ bonus bAllStats,1; bonus bMdef,5; },{},{}
 5829,Ordinary_Armor,Ordinary Armor,4,0,,0,,0,,0,0xFFFFFFFF,63,2,16,,30,1,0,{},{},{}
 5830,Woe_Sahkkat,Woe Sahkkat,4,20,,10,,0,,0,0xFFFFFFFF,63,2,256,,60,1,67,{},{},{}
 5831,Woe_Big_Sis_Ribbon,Woe Big Sis Ribbon,4,20,,10,,0,,0,0xFFFFFFFF,63,2,256,,60,1,28,{},{},{}
@@ -4013,9 +4018,9 @@
 5839,Woe_Blush,Woe Blush,4,20,,10,,0,,0,0xFFFFFFFF,63,2,512,,70,0,125,{},{},{}
 5840,Woe_Elven_Ears,Woe Elven Ears,4,20,,10,,0,,0,0xFFFFFFFF,63,2,512,,70,0,73,{},{},{}
 5841,Shaman_Hat_,Shaman Hat,4,20,,100,,1,,1,0xFFFFFFFF,63,2,256,,30,1,596,{ bonus bLuk,2; bonus3 bSubEle,Ele_Neutral,3,BF_MAGIC; bonus3 bSubEle,Ele_Water,3,BF_MAGIC; bonus3 bSubEle,Ele_Earth,3,BF_MAGIC; bonus3 bSubEle,Ele_Fire,3,BF_MAGIC; bonus3 bSubEle,Ele_Wind,3,BF_MAGIC; bonus3 bSubEle,Ele_Poison,3,BF_MAGIC; bonus3 bSubEle,Ele_Holy,3,BF_MAGIC; bonus3 bSubEle,Ele_Dark,3,BF_MAGIC; bonus3 bSubEle,Ele_Ghost,3,BF_MAGIC; bonus3 bSubEle,Ele_Undead,3,BF_MAGIC; },{},{}
-5842,Loyal_Ring1,Loyal Ring1,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,1,0,{},{},{}
-5843,Loyal_Ring2,Loyal Ring2,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,1,0,{ bonus bAllStats,2; },{},{}
-5844,Loyal_Ring3,Loyal Ring3,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,1,0,{ bonus bAllStats,3; },{},{}
+5842,Loyal_Ring1,Loyal Ring1,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,0,0,{},{},{}
+5843,Loyal_Ring2,Loyal Ring2,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,0,0,{ bonus bAllStats,2; },{},{}
+5844,Loyal_Ring3,Loyal Ring3,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,1,0,0,{ bonus bAllStats,3; },{},{}
 5845,Buzzy_Ball_Board,Buzzy Ball Board,4,50,,400,,0,,0,0xFFFFFFFF,63,2,256,,1,1,641,{},{},{}
 5846,Buzzy_Ball_Gum,Buzzy Ball Gum,4,50,,100,,1,,0,0xFFFFFFFF,63,2,1,,1,0,572,{ bonus bMdef,5; },{},{}
 5847,Fools_Day_hat_,Fools Day Helmet,4,0,,0,,0,,0,0xFFFFFFFF,63,2,256,,1,0,647,{ bonus bInt,5; bonus bVit,-3; },{},{}
@@ -4703,7 +4708,7 @@
 6681,XMAS_Cookie,Christmas Cookie,3,20,,10,,,,,,,,,,,,,{},{},{}
 6682,Bag_Of_Selling_Goods,Bag Of Selling Goods,3,20,,10,,,,,,,,,,,,,{},{},{}
 6683,Dried_Flower,Dried Flower,3,10,,10,,,,,,,,,,,,,{},{},{}
-6684,Proof_of_The_Heroic,Proof of The Heroic,3,10,,0,,,,,,,,,,,,,{},{},{}
+6684,TokenOfHero,Token Of Hero,3,10,,0,,,,,,,,,,,,,{},{},{}
 6685,Morocc_Certification,Morocc Certification,3,10,,0,,,,,,,,,,,,,{},{},{}
 6686,Brick,Brick,3,10,,2000,,,,,,,,,,,,,{},{},{}
 6687,Rope__,Rope,3,10,,2000,,,,,,,,,,,,,{},{},{}
@@ -4917,8 +4922,8 @@
 6936,Cold_Core,Cold Core,3,10,,10,,,,,,,,,,,,,{},{},{}
 6937,Silicone_Shell,Silicone Shell,3,10,,10,,,,,,,,,,,,,{},{},{}
 6938,Hedgehog_Picks,Hedgehog Picks,3,10,,10,,,,,,,,,,,,,{},{},{}
-6939,Old_Belt,Old Belt,3,10,,10,,,,,,,,,,,,,{},{},{}
-6940,Moving_Dark_Matter,Moving Dark Matter,3,10,,10,,,,,,,,,,,,,{},{},{}
+6939,Old_Belt,Worn-Out Belt,3,10,,10,,,,,,,,,,,,,{},{},{}
+6940,Moving_Dark_Matter,Moving Black Material,3,10,,10,,,,,,,,,,,,,{},{},{}
 6941,Fragments_Valkyrie_Power,Fragments Valkyrie Power,3,10,,10,,,,,,,,,,,,,{},{},{}
 6942,Will_Master,Will Master,3,10,,10,,,,,,,,,,,,,{},{},{}
 6943,ATKStone_Top,Attack Stone(Upper),6,10,,100,,,,,,,,,,,,,{ bonus2 bAddClass,Class_All,1; },{},{}
@@ -6444,7 +6449,7 @@
 12218,Assumptio_5_Scroll,LV5 Assumptio Scroll,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_ASSUMPTIO,100000,5; skilleffect "HP_ASSUMPTIO",0; },{},{}
 12219,Wind_Walk_10_Scroll,LV10 Wind Walker Scroll,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ skilleffect "SN_WINDWALK",0; sc_start SC_WINDWALK,250000,5; },{},{}
 12220,Adrenaline_Scroll,LV5 Adrenaline Scroll,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ .@type = getiteminfo(getequipid(EQI_HAND_R),11); if (.@type==W_1HAXE||.@type==W_2HAXE||.@type==W_MACE) { skilleffect "BS_ADRENALINE",0; sc_start SC_ADRENALINE,150000,5; } },{},{}
-12221,Megaphone_,Megaphone,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ input @megaphone$; announce strcharinfo(0) + ": " + @megaphone$,bc_all,0xFF0000; },{},{}
+12221,Megaphone_,Megaphone,2,2,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ input .@megaphone$; announce strcharinfo(0) + ": " + .@megaphone$,bc_all,0xFF0000; },{},{}
 12225,Sweet_Candy_Striper,Sweet Candy Cane,2,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ pet 1245; },{},{}
 12226,Examination1,Examination 1,0,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_SPEEDUP0,5400000,25; percentheal 100,100; sc_start SC_STRFOOD,5400000,10; sc_start SC_DEXFOOD,5400000,5; sc_start SC_ATKPOTION,5400000,22; sc_start SC_MATKFOOD,5400000,15; },{},{}
 12227,Examination2,Examination 2,0,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_SPEEDUP0,5400000,25; percentheal 100,100; sc_start SC_INTFOOD,5400000,8; sc_start SC_VITFOOD,5400000,7; sc_start SC_LUKFOOD,5400000,7; sc_start SC_ATKPOTION,5400000,10; },{},{}
@@ -6553,7 +6558,7 @@
 12330,Recall_FemaleGM,Summon Female GameMaster Scroll,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ mercenary_create 2001,1800000; },{},{}
 12331,Ginseng,Ginseng,0,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 6,0; },{},{}
 12332,Fruit_Juice,Fruit Juice,0,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 0,6; },{},{}
-12333,Ansila,Ancilla,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 0,15; },{},{}
+12333,Ansila,Ancilla,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 0,15; sc_start SC_ANCILLA,60000,1; },{},{}
 12334,Cherish_Box,Treasure Edition Helm Box,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getrandgroupitem(IG_Cherish_Box,1); },{},{}
 12335,Yummy_Skewered_Dish,Grilled Delicious Skewer,0,1000,,350,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 60,60; },{},{}
 12336,Baked_Mushroom,Grilled Mushroom,0,500,,300,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 30,30; },{},{}
@@ -6827,6 +6832,7 @@
 12607,Lolli_Pop_Box,Delicious Lollipop Box,11,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 12608,Splendid_Box2,Splendid Box2,11,20,,100,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 12609,Old_Ore_Box,Old Ore Box,2,20,,100,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Old_Ore_Box); },{},{}
+12610,Mysterious_Egg,Mysterious Egg,2,,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem callfunc("F_Rand",12545,12493,12577,12391,12403,12416),1; },{},{}
 12612,Old_Coin_Pocket,Old Coin Bag,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Old_Coin_Pocket); },{},{}
 12613,High_Coin_Pocket,Improved Coin Bag,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_High_Coin_Pocket); },{},{}
 12614,Mid_Coin_Pocket,Intermediate Coin Bag,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Mid_Coin_Pocket); },{},{}
@@ -7071,7 +7077,7 @@
 12846,Unripe_Apple2,Little Unripe Apple,2,10,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ pet 2398; },{},{}
 12847,Old_Equipment_Box,Old Equipment Box,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 12848,Falcon_Flute,Falcon Flute,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ if(getskilllv("HT_FALCON")) { if(!checkoption(Option_Wug) && !checkoption(Option_Wugrider)) setfalcon (!checkfalcon()); } },{},{}
-12849,Combination_Kit,Combination Kit,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ cooking 30; },{},{}
+12849,Combination_Kit,Combination Kit,2,40,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ cooking 30; },{},{}
 12850,Heaven_Scroll,Heaven Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Heaven_Scroll); },{},{}
 12851,Vocation_Scroll,Vocation Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Vocation_Scroll); },{},{}
 12852,Wisdom_Scroll,Wisdom Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Wisdom_Scroll); },{},{}
@@ -7500,6 +7506,8 @@
 13327,Crimson_Huuma_Shuriken,Crimson Huuma Shuriken,5,20,,1000,100,,1,2,0x22000000,63,2,34,3,70,1,22,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); bonus bMatk,(.@r<=15?(pow(.@r,2)/2):225); },{},{}
 13328,Huuma_Shuriken_of_Vicious_Mind,Huuma Shuriken of Vicious Mind,5,20,,1500,150:50,,1,1,0x22000000,63,2,34,4,160,1,22,{ bonus bAtk,pow(min(getrefine(),15),2); bonus bMatk,pow(min(getrefine(),15),2)/2; bonus bUnbreakableWeapon; },{},{}
 13329,Unity_Huuma_Shuriken,Unity Huuma Shuriken,5,20,,500,95,,1,1,0x22000000,63,2,34,3,1,1,22,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
+13337,Illusion_Huuma_Fluttering_Snow,Illusion Huuma Fluttering Snow,5,0,,1500,250:50,,1,2,0x02000000,63,2,34,4,120,1,22,{ .@r = getrefine(); bonus bBaseAtk,(30*(.@r/3)); bonus bLongAtkRate,(3*.@r); },{},{}
+13338,Illusion_Wing_Shuriken,Illusion Wing Shuriken,5,0,,1500,300,,1,2,0x02000000,63,2,34,4,120,1,22,{ bonus bDex,2; bonus2 bSkillAtk,"KO_HAPPOKUNAI",(9*getrefine()); },{},{}
 //===================================================================
 // More 1-Handed Swords
 //===================================================================
@@ -7553,6 +7561,10 @@
 13455,Saber_of_Vicious_Mind,Saber of Vicious Mind,5,20,,1350,135,,1,1,0x000654E3,63,2,2,4,160,1,2,{ bonus bAtk,pow(min(getrefine(),15),2); },{},{}
 13456,Unity_Sword,Unity Sword,5,20,,420,80,,1,1,0x000654E3,56,2,2,3,1,1,2,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
 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; } },{},{}
+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); },{},{}
 //===================================================================
 // More Cash Shop Items
 //===================================================================
@@ -8460,7 +8472,7 @@
 14499,Peacock_Feather_Box,Peacock Feather Box,18,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 5519,1; },{},{}
 14500,Insurance60,Life Insurrance Certificate,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_LIFEINSURANCE,3600000,0; },{},{}
 14505,Dungeon_1_hour_Ticket,Dungeon 1 Hour Ticket,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ warp "1@sthb",0,0; /*No map+coord info*/ },{},{}
-14506,Dungeon_Ticket,Dungeon Ticket,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,145,,{ warp "1@sthc",0,0; /*No map+coord info*/ },{},{}
+14506,Dungeon_Ticket,Dungeon Ticket,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ warp "1@sthc",0,0; /*No map+coord info*/ },{},{}
 14508,Zeny_Scroll,Zeny Pet Egg Scroll,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ Zeny += rand(1000,77777);},{},{}
 14509,Light_Center_Pot,Light Concentration Potion,2,800,,20,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_ASPDPOTION0,1800000,4; },{},{}
 14510,Light_Awakening_Pot,Light Awakening Potion,2,1500,,20,,,,,0xFFF7FEEF,63,2,,,40,,,{ sc_start SC_ASPDPOTION1,1800000,6; },{},{}
@@ -8735,8 +8747,8 @@
 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,Fictitious Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ skill "SA_SPELLBREAKER",1; .@i = BaseLevel; bonus bMatkRate,(.@i>=140)?(14):((.@i>=120)?(9):(5)); },{},{}
-15164,Consultative_Robe,Consultative Robe,4,20,,100,,0,,1,0xFFFFFFFF,63,2,16,,100,1,,{ bonus bVit,5; skill "PA_SACRIFICE",1; bonus2 bSubEle,Ele_Dark,getrefine()*3; bonus2 bSubEle,Ele_Fire,getrefine()*3; },{},{}
+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; },{},{}
+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; },{},{}
 15174,Surfer_Swimsuit,Surfer Swimsuit,4,20,,100,,1,,1,0xFFFFFFFF,63,2,16,,40,1,,{ bonus bMaxHPrate,(getrefine()/3)+5; bonus bMaxSPrate,(getrefine()/3)+5; },{},{}
 15181,Para_Team_Uniform100,Awakened Eden Group Uniform I,4,20,,0,,80,,0,0xFFFFFFFF,63,2,16,,100,,,{ bonus bAllStats,1; bonus bMaxHP,700; bonus bMaxSP,100; bonus bMdef,7; },{},{}
 15182,Para_Team_Uniform115,Awakened Eden Group Uniform II,4,20,,0,,85,,0,0xFFFFFFFF,63,2,16,,115,,,{ bonus bAllStats,1; bonus bMaxHP,1100; bonus bMaxSP,120; bonus bMdef,11; },{},{}
@@ -8745,6 +8757,9 @@
 15185,Para_Team_Uniform160,Awakened Eden Group Uniform V,4,20,,0,,100,,0,0xFFFFFFFF,63,2,16,,160,,,{ bonus bAllStats,2; bonus bMaxHP,1500; bonus bMaxSP,150; bonus bMdef,15; bonus2 bSubEle,Ele_All,5; bonus2 bSubEle,Ele_Neutral,-5; },{},{}
 15186,Kafra_Uniform,Kafra Uniform,4,20,,500,,40,,1,0xFFFFFFFF,63,2,16,,1,1,,{ bonus2 bExpAddClass,Class_All,5; bonus2 bDropAddClass,Class_All,5; .@r = getrefine(); bonus bMaxHP,100*.@r; bonus bMaxSP,20*.@r; bonus bMaxHPrate,(3*(.@r>=7)+5*(.@r>=9)); bonus bMaxSPrate,(3*(.@r>=7)+5*(.@r>=9)); if(.@r>=12){ bonus bHPrecovRate,100; bonus bSPrecovRate,100; } },{},{}
 15189,Einherjar_Armor,Einherjar Armor,4,20,,800,,60,,1,0xFFFFFFFF,63,2,16,,90,1,,{ bonus bMdef,5; bonus bBaseAtk,10; .@r = getrefine(); if(.@r>=7){ bonus2 bSubRace,RC_DemiHuman,2; bonus2 bSubRace,RC_Player,2; } if(.@r>=8){ bonus2 bSubRace,RC_DemiHuman,2; bonus2 bSubRace,RC_Player,2; } if(.@r>=9){ bonus2 bSubRace,RC_DemiHuman,2; bonus2 bSubRace,RC_Player,2; } },{},{}
+15195,Illusion_Puente_Robe,Illusion Puente Robe,4,20,,400,,52,,1,0xFFFFFFFF,63,2,16,,99,1,0,{ bonus bFixedCastrate,-3; .@r = getrefine(); bonus bHealPower2,(5+.@r); bonus bAddItemHealRate,(5+.@r); },{},{}
+15212,YSF01_Plate,YSF01 Plate,4,0,,2100,,78,,1,0xFFFFFFFF,63,2,16,,170,1,0,{ .@r = getrefine(); if (.@r >= 13) { .@val = 11; } else if (.@r >= 11) { .@val = 7; } else if (.@r >= 8) { .@val = 5; } if (readparam(bStr) >= 125) { .@val += .@r; } if (.@val) { bonus2 bAddClass,Class_All,.@val; } },{},{}
+15348,Illusion_Goibne_Armor,Illusion Goibne Armor,4,0,,3500,,158,,1,0xFFFFFFFE,63,2,16,,130,1,0,{ bonus bMaxHPrate,10; .@r = getrefine(); if (.@r >= 9) { bonus bDef,150; } else if (.@r >= 7) { bonus bDef,50; } },{},{}
 //===================================================================
 // More Maces
 //===================================================================
@@ -8793,6 +8808,8 @@
 16043,Meteor_Strike,Meteor Strike,5,0,,20000,1,,1,2,0x00000001,63,2,2,4,110,1,8,{ bonus bBaseAtk,10*getskilllv("BS_WEAPONRESEARCH"); bonus bBaseAtk,30*getskilllv("MO_IRONHAND"); .@s = getskilllv("AM_AXEMASTERY"); bonus bBaseAtk,7*.@s; bonus bHit,5*.@s; bonus bBaseAtk,10*getrefine(); if (getskilllv("MC_PUSHCART") > 9) skill "MC_CARTREVOLUTION",1; if (getskilllv("SM_SWORD") > 0) skill "KN_BOWLINGBASH",1; .@str = readparam(bStr); if (.@str > 119) bonus bUseSPrate,-30; else if (.@str > 107) bonus bUseSPrate,-20; },{},{}
 16048,Unity_Mace,Unity Mace,5,20,,400,76,,1,1,0x0004C5B3,63,2,2,3,1,1,8,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
 16051,Valkyrie_Hammer,Valkyrie Hammer,5,0,,100,50,,1,4,0x0004C3B3,63,2,2,1,70,1,8,{ if ((eaclass()&EAJ_BASEMASK) == EAJ_NOVICE) { bonus bUseSPrate,-5; .@r = getrefine(); bonus bVit,.@r; bonus bMaxHP,200; bonus bFlee2,1; bonus bAspdRate,1; bonus bVariableCast,.@r/2; } else if ((eaclass()&EAJ_BASEMASK) == EAJ_SWORDMAN) { bonus bVit,getrefine(); bonus bMaxHP,500; bonus bMaxSP,100; } else if ((eaclass()&EAJL_2) == EAJ_PRIEST) { bonus bBaseAtk,50; bonus bMatk,100; bonus bAspdRate,getrefine(); } else if ((eaclass()&EAJL_2) == EAJ_MONK) { bonus bMaxSP,200; bonus bUseSPrate,-5; bonus bFlee2,getrefine(); } else if ((eaclass()&EAJ_BASEMASK) == EAJ_MERCHANT) { bonus bBaseAtk,100; bonus bHit,10; bonus bVariableCast,getrefine()/2; } },{},{}
+16063,Illusion_Long_Mace,Illusion Long Mace,5,20,,800,185,,3,2,0x00008110,63,2,2,4,99,1,8,{ bonus bLongAtkDef,(10+3*(getrefine()/2)); },{},{}
+16065,Illusion_Iron_Driver,Illusion Iron Driver,5,0,,2000,210,,2,2,0x00000100,56,2,2,4,120,1,8,{ .@r = getrefine(); bonus bAspd,(.@r/2); bonus2 bSkillAtk,"AB_DUPLELIGHT_MELEE",(3*.@r); bonus2 bSkillAtk,"AB_DUPLELIGHT_MAGIC",(3*.@r); },{},{}
 //===================================================================
 // More Rental Boxes
 //===================================================================
@@ -9277,7 +9294,7 @@
 17181,Jan_Groove_Box,Jan Groove Box,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
 17184,3rd_Test_Pass_Box,3rd Test Pass Box,18,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 6583,1; },{},{}
 17203,Free_Pass_Box,Free Pass Box,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
-17204,Mysterious_Egg,Shining Egg,18,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Mysterious_Egg); },{},{}
+17204,Shining_Egg,Shining Egg,18,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Shining_Egg); },{},{}
 17207,Idn_Heart_Scroll,Idn Heart Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Idn_Heart_Scroll); },{},{}
 17209,Tw_Rainbow_Scroll,Tw Rainbow Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Tw_Rainbow_Scroll); },{},{}
 17210,Tw_Red_Scroll,Tw Red Scroll,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getgroupitem(IG_Tw_Red_Scroll); },{},{}
@@ -9526,6 +9543,8 @@
 18138,Frozen_Bow_,Frozen Bow,5,20,,1400,100,,5,2,0x000A0808,63,2,34,3,55,1,11,{ bonus2 bAddEff,Eff_Freeze,1000; },{},{}
 18139,Earth_Bow_,Earth Bow,5,20,,1400,105,,5,2,0x000A0808,63,2,34,3,55,1,11,{},{},{}
 18140,Gust_Bow_,Gust Bow,5,20,,1400,95,,5,2,0x000A0808,63,2,34,3,55,1,11,{},{},{}
+18149,Illusion_Ballista,Illusion Ballista,5,0,,3500,200,,5,2,0x00080800,58,2,34,4,100,1,11,{ bonus bLongAtkRate,getrefine(); },{},{}
+18174,Illusion_Hunter_Bow,Illusion Hunter Bow,5,0,,1500,165,,5,2,0x00000800,56,2,34,4,120,1,11,{ .@r = getrefine(); bonus bCritical,.@r; if (.@r >= 7) { bonus bAspdRate,10; if (.@r >= 9) { bonus bCritAtkRate,15; if (.@r >= 11) { bonus2 bAddRace,RC_Insect,30; bonus2 bAddRace,RC_Brute,30; } } } },{},{}
 //===================================================================
 // More Headgears
 //===================================================================
@@ -9701,7 +9720,7 @@
 18670,Hankie_In_Mouth,Hankie In Mouth,4,20,,100,,1,,0,0xFFFFFFFF,63,2,1,,12,0,818,{ bonus bDex,3; bonus2 bSubRace,RC_DemiHuman,3; bonus2 bSubRace,RC_Player,3; },{},{}
 18671,Rudolf_Hairband,Rudolf Hairband,4,20,,200,,5,,0,0xFFFFFFFF,63,2,256,,30,1,836,{},{},{}
 18672,Tare_Pope,Drooping Pope,4,20,,300,,0,,0,0xFFFFFFFF,63,2,256,,1,0,817,{ bonus bMdef,1; bonus bSPrecovRate,2; bonus bUnbreakableHelm; },{},{}
-18673,Tare_Pope_,Drooping Pope,4,20,,300,,0,,1,0xFFFFFFFF,63,2,256,,1,1,817,{ bonus bMdef,7; bonus bSPrecovRate,2; bonus bUnbreakableHelm; .@r = getrefine(); if (.@r >= 7 ) { bonus bHealPower,1; } if (.@r >= 9 ) {bonus bMatkRate,7; } if (.@r >= 12 ) {bonus bMatkRate,5; } },{},{}
+18673,Tare_Pope_,Drooping Pope,4,20,,300,,0,,1,0xFFFFFFFF,63,2,256,,1,1,817,{ bonus bUnbreakableHelm; bonus bMdef,7; .@r = getrefine(); bonus bHealPower,(.@r>=7?5+(.@r-6):5); if (.@r>=9) { bonus bMatkRate, ( .@r >= 12 ? 12 : 7 ); } },{},{}
 18674,Planewing_Hat,Planewing Hat,4,20,,200,,3,,1,0xFFFFFFFE,63,2,256,,1,1,820,{ bonus bAgi,3; bonus bAspdRate,1; bonus2 bSPLossRate,5,10000; },{},{}
 18675,Green_Apple_Hat,Green Apple Hat,4,20,,200,,3,,1,0xFFFFFFFE,63,2,256,,20,1,821,{ bonus bDex,2; bonus bHit,5; },{},{}
 18676,Hexagon_Spectacles,Hexagon Spectacles,4,20,,400,,3,,0,0xFFFFFFFE,63,2,512,,20,0,822,{ bonus bFlee,2; },{},{}
@@ -9949,6 +9968,7 @@
 19095,Happy_Balloon,Happy Balloon,4,0,,10,,0,,0,0xFFFFFFFF,63,2,1,,1,0,1289,{ bonus2 bDropAddRace,RC_All,5; bonus2 bExpAddRace,RC_All,5; },{},{}
 19109,Valhalla_Idol,Valhalla Idol,4,0,,300,,2,,0,0xFFFFFFFF,63,2,512,,70,0,1423,{ bonus bMaxSP,50; bonus4 bAutoSpellWhenHit,"MG_SAFETYWALL",10,50,0; },{},{}
 19111,Laser_Of_Eagle,Laser of Eagle,4,0,,400,,5,,1,0xFFFFFFFF,63,2,256,,100,1,1424,{ bonus bDex,2; bonus bLongAtkRate,10; bonus5 bAutoSpell,"PR_LEXAETERNA",1,50,BF_LONG,1; /*TODO: Chance to transform become Shechil while attacking.*/ },{},{}
+19115,Republic_Hat,Republic Hat,4,0,,400,,3,,1,0xFFFFFFFF,63,2,256,,100,1,1458,{ .@r = getrefine(); .@val = 6; if (.@r >= 7) { .@val += 2; } if (.@r >= 9) { .@val += 4; } bonus bLongAtkRate,.@val; },{},{}
 19116,Red_Baby_Dragon,Red Baby Dragon,4,0,,700,,,1,1,0xFFFFFFFF,63,2,256,,90,1,1463,{ .@r=getrefine(); bonus bMaxHPrate,5; bonus bMaxSPrate,5; bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; if (.@r>=6) { bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; } if (.@r>=8) { bonus2 bSkillAtk,"RK_DRAGONBREATH",15; bonus2 bSkillAtk,"RK_DRAGONBREATH_WATER",15; } },{},{}
 19117,Poring_Sunglasses_,Poring Sunglasses,4,0,,10,,0,,0,0xFFFFFFFF,63,2,512,,1,0,954,{ bonus2 bDropAddRace,RC_All,5; bonus2 bExpAddRace,RC_All,5; },{},{}
 19118,Poring_Sunglasses__,Poring Sunglasses,4,0,,10,,0,,1,0xFFFFFFFF,63,2,512,,1,0,954,{ bonus2 bDropAddRace,RC_All,4; bonus2 bExpAddRace,RC_All,4; },{},{}
@@ -9994,8 +10014,15 @@
 19180,Anubis_Helm_,Anubis Helm,4,20,,0,,8,,1,0xFFFFFFFF,63,2,768,,65,0,485,{ bonus bMdef,5; bonus2 bSubClass,Class_Boss,10; bonus bHealpower2,10; bonus bAddItemHealRate,10; },{},{}
 19181,New_Wave_Sunglasses_,New Wave Sunglasses,4,20,,100,,1,,1,0xFFFFFFFF,63,2,512,,30,0,856,{ bonus bDelayRate,-5; },{},{}
 //
+19209,Illusion_Nurse_Cap,Illusion Nurse Cap,4,20,,200,,1,,1,0x00008110,63,2,256,,99,1,64,{ .@r = getrefine(); bonus bInt,(1+(.@r/2)); bonus bHealPower,(3*(.@r/2)); },{},{}
+19210,Illusion_Apple_of_Archer,Illusion Apple of Archer,4,20,,200,,1,,1,0xFFFFFFFE,63,2,256,,99,1,72,{ bonus bDex,(3+(getrefine()/2)); },{},{}
+19223,Illusion_Cap,Illusion Cap,4,0,,400,,15,,1,0x000654E3,63,2,256,,120,1,14,{ bonus2 bAddClass,Class_All,1; bonus bBaseAtk,(2*getrefine()); },{},{}
+19247,Illusion_Fancy_Flower,Illusion Fancy Flower,4,0,,100,,0,,1,0xFFFFFFFF,63,2,256,,120,0,4,{ bonus bMatkRate,1; bonus bMatk,(2*getrefine()); },{},{}
+//
 19246,Royal_Guard_Necklace,Royal Guard Necklace,4,20,,300,,0,,0,0xFFFFFFFF,63,2,1,,80,0,1629,{ bonus bAspd,1; },{},{}
 19306,Gambler_Card,Heart Card in Mouth,4,20,,300,,0,,0,0xFFFFFFFF,63,2,1,,80,0,1679,{ bonus bCritAtkRate,5; },{},{}
+19344,Illusion_Hot_blooded_Headband,Illusion Hot-blooded Headband,4,0,,100,,3,,1,0xFFFFFFFE,63,2,256,,120,1,154,{ .@r = getrefine(); bonus bStr,2; bonus bBaseAtk,(10*(.@r/2)); if (.@r >= 7) { bonus2 bAddEle,Ele_Water,10; bonus2 bAddEle,Ele_Wind,10; bonus2 bAddEle,Ele_Earth,10; bonus2 bAddEle,Ele_Neutral,10; if (.@r >= 9) { bonus2 bAddSize,Size_Small,15; bonus2 bAddSize,Size_Large,15; } } },{},{}
+19366,Illusion_Goibne_Helm,Illusion Goibne Helm,4,0,,1000,,25,,1,0xFFFFFFFE,63,2,256,,130,1,258,{ .@r = getrefine(); .@vit = 3; if (.@r >= 7) { .@vit += 5; if (.@r >= 9) { bonus bDelayrate,-12; } } bonus bVit,.@vit; bonus bMdef,3; },{},{}
 //===================================================================
 // Costume System
 //===================================================================
@@ -10041,7 +10068,7 @@
 19539,C_Reginleif_Hairband,Costume Hairband Of Reginleif,4,20,,0,,0,,0,0xFFFFFFFF,63,2,1024,,1,0,468,{ bonus bAllStats,1; },{},{}
 19540,C_Rabbit_Earplug,Costume Rabbit Earplugs,4,20,,0,,0,,0,0xFFFFFFFF,63,2,7168,,1,0,515,{ bonus bAgi,1; bonus bFlee,2; },{},{}
 19541,C_Romantic_White_Flower,Costume Romantic White Flower,4,20,,0,,0,,0,0xFFFFFFFF,63,2,4096,,1,0,259,{ bonus bUnbreakableHelm; },{},{}
-19542,C_Devil_Whisper,Costume Devil Whisper,4,20,,0,,0,,0,0xFFFFFFFF,63,2,2048,,1,0,712,{ bonus bUnbreakableHelm; bonus2 bSubRace,RC_Angel,1; bonus2 bSubRace,RC_Demon,1; bonus3 bAddMonsterDropItem,12020,RC_Angel,400; bonus3 bAddMonsterDropItem,523,RC_Demon,400; },{},{}
+19542,C_Devil_Whisper,Costume Devil Whisper,4,20,,0,,0,,0,0xFFFFFFFF,63,2,2048,,1,0,712,{ bonus bUnbreakableHelm; bonus2 bSubRace,RC_Angel,1; bonus2 bSubRace,RC_Demon,1; bonus3 bAddMonsterDropItem,523,RC_Angel,400; bonus3 bAddMonsterDropItem,12020,RC_Demon,400; },{},{}
 19543,Oliver_Wolf_Hood,Oliver Wolf Hood,4,20,,300,,0,,0,0xFFFFFFFF,63,2,1024,,70,0,849,{ bonus bUnbreakableHelm; },{},{}
 19544,C_Tare_Neko_Cru,Costume Tare Neko Cru,4,20,,0,,0,,0,0xFFFFFFFF,63,2,1024,,1,0,692,{ bonus bUnbreakableHelm; },{},{}
 19545,C_Boys_Cap,Costume Boy's Cap,4,20,,100,,0,,0,0xFFFFFFFF,63,2,1024,,100,0,102,{ bonus bUnbreakableHelm; },{},{}
@@ -10895,6 +10922,11 @@
 20825,Para_Team_Manteau160,Awakened Eden Group Manteau III,4,0,,0,,30,,0,0xFFFFFFFF,63,2,4,,160,1,0,{ bonus2 bSubEle,Ele_All,10; bonus bFlee,12; bonus bMaxHP,1000; bonus bFlee2,2; .@r = getrefine(); if(.@r >= 7){ bonus2 bSubEle,Ele_Neutral,5; if(.@r >= 9){ skill "BS_GREED",1; } } },{},{}
 20826,Angel_Feather,Angel Feather,4,0,,200,,18,,1,0xFFFFFFFF,63,2,4,,1,1,18,{},{},{}
 20830,Wings_of_Seraph,Wings of Seraph,4,0,,200,,18,,1,0xFFFFFFFF,63,2,4,,1,1,8,{},{},{}
+20838,Illusion_Muffler,Illusion Muffler,4,20,,400,,8,,1,0xFFFFFFFE,63,2,4,,99,1,0,{ .@r = getrefine(); bonus bMaxHP,(100+(100*.@r)); bonus bMaxSP,(10+(5*.@r)); },{},{}
+20840,Illusion_Ancient_Cape,Illusion Ancient Cape,4,0,,600,,18,,1,0xFFFFFFFE,63,2,4,,100,1,0,{ .@val = min(getrefine(),10)/2; bonus bAgi,(2+.@val); },{},{}
+20847,Illusion_Survivor_Manteau,Illusion Survivor Manteau,4,0,,550,,30,,1,0x00810204,63,2,4,,130,1,0,{ bonus bVit,15; },{},{}
+20856,YSF01_Manteau,YSF01 Manteau,4,0,,750,,32,,1,0xFFFFFFFF,63,2,4,,170,1,0,{ .@r = getrefine(); if (.@r >= 8) { bonus bBaseAtk,20; if (.@r >= 11) { .@val = -3; if (.@r >= 13) { .@val += -4; } } } if (readparam(bVit) >= 125) { .@val += -10; } if (.@val) { bonus bDelayrate,.@val; } },{},{}
+20923,Illusion_Goibne_Spaulders,Illusion Goibne Spaulders,4,0,,1000,,47,,1,0xFFFFFFFE,63,2,4,,130,1,0,{ .@r = getrefine();  bonus bMdef,2; bonus bVit,1; if (.@r >= 7) { .@val = 5; if (.@r >= 9) { .@val += 10; } } if (.@val) { bonus2 bAddEle,Ele_Water,.@val; bonus2 bAddEle,Ele_Wind,.@val; bonus2 bAddEle,Ele_Earth,.@val; bonus2 bAddEle,Ele_Fire,.@val; } },{},{}
 //===================================================================
 // More 2-Handed Swords
 //===================================================================
@@ -10984,6 +11016,10 @@
 22124,Para_Team_Boots130,Awakened Eden Group Boots III,4,0,,0,,27,,0,0xFFFFFFFF,63,2,64,,130,1,,{ bonus bAllStats,2; bonus bHPrecovRate,36; bonus bSPrecovRate,18; },{},{}
 22125,Para_Team_Boots145,Awakened Eden Group Boots IV,4,0,,0,,30,,0,0xFFFFFFFF,63,2,64,,145,1,,{ bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20; },{},{}
 22126,Para_Team_Boots160,Awakened Eden Group Boots V,4,0,,0,,30,,0,0xFFFFFFFF,63,2,64,,160,1,,{ bonus bAllStats,2; bonus bHPrecovRate,40; bonus bSPrecovRate,20; bonus bUseSPrate,-5; },{},{}
+22133,Illusion_Shoes,Illusion Shoes,4,20,,400,,10,,1,0xFFFFFFFE,63,2,64,,99,1,0,{ .@r = getrefine(); bonus bMaxHP,(100+(100*.@r)); bonus bMaxSP,(10+(5*.@r)); },{},{}
+22141,YSF01_Greave,YSF01 Greave,4,0,,1300,,25,,1,0xFFFFFFFF,63,2,64,,170,1,0,{ .@r = getrefine(); if (.@r >= 8) { bonus bAspdRate,8; if (.@r >= 11) { bonus bAspd,1; if (.@r >= 13) { .@val = 10; } } } if (readparam(bLuk) >= 125) { .@val += 30; } if (.@val) { bonus bCritAtkRate,.@val; } },{},{}
+22190,Illusion_Boots,Illusion Boots,4,0,,600,,16,,1,0x016E5CEA,63,2,64,,100,1,0,{ .@r = getrefine(); bonus bCritical,(5*(.@r/3)); bonus bAspdRate,.@r; },{},{}
+22192,Illusion_Goibne's_Greaves,Illusion Goibne's Greaves,4,0,,1200,,42,,1,0xFFFFFFFE,63,2,64,,130,1,0,{ .@r = getrefine(); bonus bMaxHPrate,5; bonus bMaxSPrate,5; if (.@r >= 7) { bonus bVariableCastrate,-5; if (.@r >= 9) { bonus bLongAtkRate,10; } } },{},{}
 //===================================================================
 // New Usable items
 //===================================================================
@@ -11155,6 +11191,7 @@
 22782,PC_Bang_Wooden_Box,PC Bang Wooden Box,2,10,,200,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getitem 547,30; /*No Info*/},{},{}
 22783,PC_Bang_Golden_Box,PC Bang Golden Box,2,10,,200,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getitem 547,1; getitem 985,10; /*No Info*/},{},{}
 22784,PC_Bang_Platinum_Box,PC Bang Platinum Box,2,10,,200,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getitem 547,1; getitem 12017,10; getitem 678,12; /*No Info*/},{},{}
+22979,C_Battle_Gum_2,[Sale] Battle Manual and Bubble Gum,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_EXPBOOST,1800000,50; sc_start SC_ITEMBOOST,1800000,100; },{},{}
 22802,Safe_to_6_Equipment_Certificate,Safe to 6 Equipment Certificate,3,10,,10,,,,,,,,,,,,,{},{},{}
 22808,Special_Gift_Box,Special Gift Box,2,10,,100,,,,,,,,,,,,,{},{},{}
 22812,Sealed_Dracula_Scroll,Sealed Dracula Scroll,2,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getitem callfunc("F_Rand",6228,6232,22813,19937,17314, 6635),1; },{},{}
@@ -11208,11 +11245,24 @@
 22895,Limited_2015_Status_Initialization_Volume,(Limited)2015 Status Initialization Volume,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ /*Works like item 6320, can reset up to 3x within 1 hour*/ },{},{}
 22896,Limited_Old_Status_Initialization_Volume,(Limited)Old Status Initialization Volume,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ /*Works like item 6320, can reset up to 3x within 1 hour*/ },{},{}
 22899,Parchment_City,Parchment City,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "AL_INCAGI",1; heal -15,0; },{},{}
-22901,Question_Old_Blue_Box,Question Old Blue Box,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ /*No info yet*/ },{},{}
+22901,Question_Old_Blue_Box,Mysterious Blue Box,2,20,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ callfunc("F_Mysterious_box"); },{},{}
 22902,Sealed_Card_Album_Scroll_II,Sealed Card Album Scroll II,2,20,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem callfunc("F_Rand",6238,6239,17474,22829,24243,24244,24245),1; },{},{}
 22984,Kahluna_Milk,Kahluna Milk,0,6,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_DORAM_BUF_01, 180000, 0; },{},{}
 22985,Basil,Basil,0,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_DORAM_BUF_02, 180000, 0; },{},{}
 //
+23012,S_Small_Mana_Potion,[Sale] Small Mana Potion,2,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "bonus2 bRegenPercentSP,5,5000;",600,9; /* fix me: unknown flag and specialeffect ; disabled when LK_BERSERK */ },{},{}
+23038,S_Slim_White_Box,[Sale] Slim White Potion Box,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 547,200; },{},{}
+23043,S_Seed_Of_Yggdrasil_Box,[Sale] Yggdrasil Seed Box,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 608,30; },{},{}
+23046,S_Mystic_Powder,[Sale] Mystic Powder,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "bonus bFlee,20; bonus bLuk,10;",300,9; /* fix me: unknown flag and specialeffect */ },{},{}
+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 */ },{},{}
+//
+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; } },{},{}
+//
+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; },{},{}
+//
 23123,Bullet_Case_Flare,Flare Bullet Cartridge,2,10,,250,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 13228,500; },{},{}
 23124,Bullet_Case_Lighting,Lightning Bullet Cartridge,2,10,,250,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 13229,500; },{},{}
 23125,Bullet_Case_Ice,Ice Bullet Cartridge,2,10,,250,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 13230,500; },{},{}
@@ -11225,6 +11275,15 @@
 23193,Crimson_Rock_Scroll_1_5,Level 5 Crimson Rock,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "WL_CRIMSONROCK",5; },{},{}
 23194,Sienna_Execrate_Scroll_1_5,Level 5 Sienna Execrate,11,10,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "WL_SIENNAEXECRATE",5,true; },{},{}
 23196,Agust_Lucky_Scroll,Shining Blue Lucky Egg,18,10,,10,,,,0,0xFFFFFFFF,63,2,,,1,,,{ getgroupitem(IG_Agust_Lucky_Scroll); },{},{}
+//
+23228,Hazy_Mooncake,Hazy Mooncake,0,768,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ /* unknown */ },{},{}
+//
+23277,Mado_Box,Emergency Magic Gear,2,10000,,3000,,,,,0x00000400,56,2,,,100,,,{ setmadogear 1; },{},{}
+23280,N_Fly_Wing_,Novice Fly Wing,11,10,,0,,,,,0xFFFFFFFF,63,2,,,1:98,,,{ itemskill "AL_TELEPORT",1; },{},{}
+23288,Compressed_Wing_Of_Fly,Compressed Fly Wing,11,1000,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "AL_TELEPORT",1; },{},{}
+//
+23307,S_Shining_Def_Scroll,[Sale] Shining Defense Scroll,2,,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ bonus_script "bonus bDef,500; bonus bMdef,200;",600; /* fix me: unknown flag and specialeffect */ },{},{}
+23340,S_Megaphone,[Sale] Megaphone,2,,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ input .@megaphone$; announce strcharinfo(0) + ": " + .@megaphone$,bc_all,0xFF0000; },{},{}
 //===================================================================
 // Shadow Equipments
 //===================================================================
@@ -11506,14 +11565,50 @@
 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,,,,,,,,,,,,,{},{},{}
+25153,Broken_Gun_Wreck,Broken Gun Wreck,3,0,,0,,,,,,,,,,,,,{},{},{}
+25154,Antique_Gunpowder,Antique Gunpowder,3,0,,10,,,,,,,,,,,,,{},{},{}
+25155,Schwartz's_Honor_Token,Schwartz'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,,,,,,,,,,,,,{},{},{}
+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,,,,,,,,,,,,,{},{},{}
+25167,Old_Letter,Old Letter,3,0,,0,,,,,,,,,,,,,{},{},{}
+25179,Blessing_Star,Blessing Star,3,0,,0,,,,,,,,,,,,,{},{},{}
+25180,Old_Rings,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,,,,,,,,,,,,,{},{},{}
+25184,Portable_Sewingbox,Portable Sewingbox,3,0,,0,,,,,,,,,,,,,{},{},{}
+25185,Locket_Pendant,Locket Pendant,3,0,,0,,,,,,,,,,,,,{},{},{}
 25223,Para_Team_Coin,Eden Group Coin,3,0,,0,,,,,,,,,,,,,{},{},{}
 25238,New_Normal_Lubricant,New Normal Lubricant,3,0,,0,,,,,,,,,,,,,{},{},{}
 25239,New_Advanced_Lubricant,New Advanced Lubricant,3,0,,0,,,,,,,,,,,,,{},{},{}
+25256,Hazy_Dream_Fragment,Hazy Dream Fragment,3,0,,10,,,,,,,,,,,,,{},{},{}
+25257,Bloody_Love_Letter,Bloody Love Letter,3,780,,10,,,,,,,,,,,,,{},{},{}
+25258,Broken_Arrow,Broken Arrow,3,550,,10,,,,,,,,,,,,,{},{},{}
+25271,Illusion_Stone,Illusion Stone,3,10,,0,,,,,,,,,,,,,{},{},{}
+25272,Illusion_Gemstone,Illusion Gemstone,3,0,,10,,,,,,,,,,,,,{},{},{}
+//
+25464,World_Moving_Rights,World Moving Rights,3,20,,0,,,,,,,,,,,,,{},{},{}
+//===================================================================
+// New Spears
+//===================================================================
+26007,Illusion_Spectral_Spear,Illusion Spectral Spear,5,20,,2000,240,,3,1,0x00004082,63,2,34,4,99,1,5,{ .@r = getrefine(); .@val = 3*(.@r/2); bonus2 bAddEle,Ele_Dark,(20+.@val); bonus2 bAddRace,RC_Demon,(20+.@val); bonus2 bAddRace,RC_Undead,(20+.@val); bonus2 bSubRace,RC_Demon,(10+.@val); bonus2 bSubEle,Ele_Undead,(10+.@val); bonus2 bSubEle,Ele_Dark,(10+.@val); bonus bHPGainValue,50; bonus bSPGainValue,(.@r/2); bonus2 bAddEff2,Eff_Confusion,1000; },{},{}
 //===================================================================
 // New Staves
 //===================================================================
 26100,Paradise_Foxtail_Staff_II,Eden Group Foxtail Staff II,5,20,,0,135:165,,1,0,0x80000000,7,2,2,2,40,0,10,{ bonus bDex,4; bonus bInt,4; bonus bLongAtkRate,6; },{},{}
 26101,Paradise_Foxtail_Staff_III,Eden Group Foxtail Staff III,5,20,,0,150:195,,1,0,0x80000000,7,2,2,3,60,0,10,{ bonus bDex,5; bonus bInt,5; bonus bLongAtkRate,7; },{},{}
+26109,Illusion_Staff_of_Bordeaux,Illusion Staff of Bordeaux,5,20,,500,60:180,,1,2,0x00010200,58,2,2,4,99,1,10,{ bonus bInt,3; bonus bDex,2; if (getskilllv("SA_DRAGONOLOGY") == 5) { .@val = getrefine()/3; bonus bMatkRate,(5+.@val); bonus bUseSPrate,(-15-(5*.@val)); } },{},{}
 26110,CandyCaneRod,Candy Cane Rod,5,20,,500,10:140,,1,2,0x00818315,63,2,2,4,99,1,10,{ bonus bInt,2; bonus bFlee,2*getrefine(); if(getrefine()>= 10) { bonus bFlee2,10; } },{},{}
 //===================================================================
 // More Cards
@@ -11532,7 +11627,41 @@
 27027,Fire_Sandman_Card,Fire Sandman Card,6,20,,10,,,,,0xFFFFFFFF,63,2,16,,,,,{ bonus bDef,50; bonus2 bSubDefEle,Ele_Fire,10; },{},{}
 27028,Fire_Frilldora_Card,Fire Frilldora Card,6,20,,10,,,,,0xFFFFFFFF,63,2,2,,,,,{ .@r = getrefine(); bonus2 bMagicAddEle,Ele_Earth,3+((.@r>=7)*5)+((.@r>=9)*7); },{},{}
 27029,Fire_Golem_Card,Fire Golem Card,6,20,,10,,,,,0xFFFFFFFF,63,2,32,,,,,{ bonus2 bSubEle,Ele_Fire,20; bonus2 bAddEle,Ele_Fire,5; },{},{}
-27030,Fulbuk_Card,Fulbuk Card,6,20,,10,,,,,0xFFFFFFFF,63,2,769,,,,,{ bonus3 bAddEff,Eff_Burning,700,ATF_WEAPON|ATF_MAGIC; },{},{}
+27030,Fulbuk_Card,Firebug Card,6,20,,10,,,,,0xFFFFFFFF,63,2,769,,,,,{ bonus3 bAddEff,Eff_Burning,700,ATF_WEAPON|ATF_MAGIC; },{},{}
+27081,Angry_Moonlight_Flower_Card,Angry Moonlight Flower Card,6,20,,10,,,,,,,,16,,,,,{ skill "PA_PRESSURE",4; },{},{}
+27082,Angry_Nine_Tail_Card,Angry Nine Tail Card,6,20,,10,,,,,,,,16,,,,,{ .@val = 5; bonus bCritAtkRate,10; if (getrefine() >= 10) { .@val += 10; } bonus bCritical,.@val; },{},{}
+27083,Resentful_Bongun_Card,Resentful Bongun Card,6,20,,10,,,,,,,,16,,,,,{ bonus bBaseAtk,20; bonus bMatk,20; },{},{}
+27084,Resentful_Sohee_Card,Resentful Sohee Card,6,20,,10,,,,,,,,16,,,,,{ bonus bMatk,10; if (getrefine() >= 10) { bonus bMatkRate,2; } },{},{}
+27085,Resentful_Munak_Card,Resentful Munak Card,6,20,,10,,,,,,,,2,,,,,{ bonus bBaseAtk,15; bonus bMatk,15; },{},{}
+27086,Resentful_Soldier_Card,Resentful Soldier Card,6,20,,10,,,,,,,,2,,,,,{ if (getiteminfo(getequipid(EQI_COMPOUND_ON),11) == W_BOW) { bonus3 bAutoSpell,"TF_DOUBLE",5,30; if (getrefine() >= 10) { bonus2 bWeaponDamageRate,W_BOW,20; } } },{},{}
+27087,Truthful_Wizard_Card,Truthful Wizard Card,6,20,,10,,,,,,,,2,,,,,{ bonus bMatk,25; autobonus "{ bonus bNoCastCancel; }",5,5000,BF_MAGIC,"{ showscript \"This is the truth!\"; }"; },{},{}
+27088,Fury_Hero_Card,Fury Hero Card,6,20,,10,,,,,,,,769,,,,,{ bonus2 bAddClass,Class_All,2; bonus5 bAutoSpell,"SM_ENDURE",1,5,BF_SHORT,0; },{},{}
+27101,Sweet_Nightmare_Card,Sweet Nightmare Card,6,20,,10,,,,,,,,16,,,,,{ bonus bMatk,20; bonus bNoCastCancel; },{},{}
+27102,Matt_Drainliar_Card,Matt Drainliar Card,6,20,,10,,,,,,,,769,,,,,{ bonus2 bResEff,Eff_Burning,10000; },{},{}
+27103,Living_Dead_Card,Living Dead Card,6,20,,10,,,,,,,,16,,,,,{ bonus bBaseAtk,20; bonus bUnbreakableWeapon; bonus bUnbreakableArmor; },{},{}
+27104,Furious_Dracula_Card,Furious Dracula Card,6,20,,10,,,,,,,,4,,,,,{ skill "PF_HPCONVERSION",1; },{},{}
+27105,Bomi_Card,Bomi Card,6,20,,10,,,,,,,,8,,,,,{ skill "HW_NAPALMVULCAN",4; },{},{}
+27106,Awaken_Pere_Card,Awaken Pere Card,6,20,,10,,,,,,,,16,,,,,{ if (BaseJob == Job_Bard || BaseJob == Job_Dancer) { bonus bMatk,(15*getrefine()); } },{},{}
+27107,Playing_Pere_Card,Playing Pere Card,6,20,,10,,,,,,,,8,,,,,{ bonus2 bAddEle,Ele_Neutral,20; },{},{}
+27108,Singing_Pere_Card,Singing Pere Card,6,20,,10,,,,,,,,128,,,,,{ bonus2 bMagicAddEle,Ele_Neutral,20; },{},{}
+27109,Jitterbug_Card,Jitterbug Card,6,20,,10,,,,,,,,769,,,,,{ bonus2 bSubDefEle,Ele_Neutral,10; bonus bMaxHP,500; },{},{}
+27110,Furious_Gazeti_Card,Furious Gazeti Card,6,20,,10,,,,,,,,16,,,,,{ bonus bLongAtkDef,20; },{},{}
+27111,Furious_Snowier_Card,Furious Snowier Card,6,20,,10,,,,,,,,136,,,,,{ bonus2 bAddItemHealRate,11522,50; bonus2 bAddItemHealRate,11523,50; bonus2 bAddItemHealRate,11524,50; },{},{}
+27112,Furious_Ice Titan_Card,Furious Ice Titan Card,6,20,,10,,,,,,,,16,,,,,{ bonus bDef,(5*(1+getrefine())); },{},{}
+27113,Awaken_Ktullanux_Card,Awaken Ktullanux Card,6,20,,10,,,,,,,,16,,,,,{ bonus2 bMagicAtkEle,Ele_Water,(20+(3*getrefine())); },{},{}
+27114,Ominous_Solider_Card,Ominous Solider Card,6,20,,10,,,,,,,,16,,,,,{ bonus bMaxHPrate,(10+(getrefine()/3)); .@val = 50; if (BaseLevel >= 160) { .@val += 50; bonus bVit,3; } bonus bDef,.@val; },{},{}
+27115,Ominous_Permeter_Card,Ominous Permeter Card,6,20,,10,,,,,,,,769,,,,,{ .@r = getrefine(); bonus bInt,1; bonus bMaxSP,(80+10*(.@r/2)); if (.@r >= 7) { bonus bSPrecovRate,30; } },{},{}
+27116,Ominous_Heater_Card,Ominous Heater Card,6,20,,10,,,,,,,,136,,,,,{ bonus bCritical,3; bonus bCritAtkRate,5; },{},{}
+27117,Ominous_Assaulter_Card,Ominous Assaulter Card,6,20,,10,,,,,,,,2,,,,,{ .@type = getiteminfo(getequipid(EQI_COMPOUND_ON),11); if (.@type == W_WHIP || .@type == W_MUSICAL || .@type == W_BOOK || .@type == W_2HSWORD || .@type == W_2HSPEAR) { .@r = getrefine(); bonus bCritical,5; bonus bBaseAtk,(3*.@r); } bonus bCritAtkRate,(10+.@r); },{},{}
+27118,Ominous_Freezer_Card,Ominous Freezer Card,6,20,,10,,,,,,,,64,,,,,{ bonus bMaxHPrate,10; bonus bStr,2; if (BaseLevel >= 160) { .@val = 10; } if (getrefine() >= 9) { .@val += 10; } if (.@val) { bonus2 bSkillAtk,"RK_HUNDREDSPEAR",.@val; bonus2 bSkillAtk,"LG_OVERBRAND",.@val; } },{},{}
+27119,Ominous_Turtle_General_Card,Ominous Turtle General Card,6,20,,10,,,,,,,,32,,,,,{ bonus bDef,30; bonus bMdef,5; bonus2 bSubSize,Size_All,25; },{},{}
+27120,Iara_Card,Iara Card,6,20,,10,,,,,,,,136,,,,,{ skill "PR_STRECOVERY",1; },{},{}
+27121,Piranha_Card,Piranha Card,6,20,,10,,,,,,,,64,,,,,{ .@val = 10; if (getrefine() >= 9) { .@val += 5; } bonus2 bAddRace,RC_Fish,.@val; bonus2 bMagicAddRace,RC_Fish,.@val; },{},{}
+27122,Curupira_Card,Curupira Card,6,20,,10,,,,,,,,2,,,,,{ .@val = 3; .@r = getrefine(); if (.@r>=7) { .@val += 5; } if (.@r>=9) { .@val += 7; } bonus2 bMagicAddEle,Ele_Water,.@val; },{},{}
+27123,Tucan_Card,Toucan Card,6,20,,10,,,,,,,,769,,,,,{ .@val = 10; if (getrefine() >= 9) { .@val += 5; } bonus2 bMagicAddRace,RC_Insect,.@val; },{},{}
+27124,Jaguar_Card,Jaguar Card,6,20,,10,,,,,,,,769,,,,,{ .@val = 10; if (getrefine() >= 9) { .@val += 5; } bonus2 bMagicAddRace,RC_Brute,.@val; },{},{}
+27125,Headless_Mule_Card,Headless Mule Card,6,20,,10,,,,,,,,136,,,,,{ bonus2 bMagicAtkEle,Ele_Water,20; bonus2 bMagicAtkEle,Ele_Holy,20; },{},{}
+27126,Boitata_Card,Boitata Card,6,20,,10,,,,,,,,16,,,,,{ bonus2 bAddEle,Ele_Wind,40; bonus2 bAddEle,Ele_Earth,40; bonus2 bAddRace,RC_Brute,40; bonus2 bAddRace,RC_Insect,40; },{},{}
 27147,Humanoid_Chimera_Card,Humanoid Chimera Card,6,20,,10,,,,,,,,136,,,,,{ bonus bHit,(BaseLevel >= 90 ? 15 : 5); },{},{}
 27148,Material_Chimera_Card,Material Chimera Card,6,20,,10,,,,,,,,136,,,,,{ bonus bFlee,(BaseLevel >= 90 ? 20 : 10); },{},{}
 27149,Heart_Hunter_Card,Heart Hunter Card,6,20,,10,,,,,,,,2,,,,,{ .@type = getiteminfo(getequipid(EQI_COMPOUND_ON),11); .@r = getrefine(); if(.@type == 17 || .@type == 18 || .@type == 21){ bonus bLongAtkRate,5+.@r+(.@r >= 10 ? 5 : 0); } },{},{}
@@ -11556,6 +11685,10 @@
 27182,Captain_Felock_Card,Captain Felock Card,6,20,,10,,,,,,,,2,,,,,{ bonus bAtk,30; .@r = getrefine(); bonus2 bSkillAtk,"RL_AM_BLAST",.@r >= 10 ? 60 : 30; bonus2 bSkillAtk,"RL_HAMMER_OF_GOD",.@r >= 10 ? 60 : 30; },{},{}
 27183,Gigantes_Card,Gigantes Card,6,20,,10,,,,,,,,128,,,,,{ bonus bAtk,20; if(readparam(bStr) >= 120) { bonus bAtk,20; bonus bAspdRate,-3; } },{},{}
 27184,Knight_Sakray_Card,Knight Sakray Card,6,20,,10,,,,,,,,2,,,,,{ bonus bAtk,20; bonus2 bAddRace,RC_Demon,30; bonus2 bAddRace,RC_Undead,30; },{},{}
+27196,Nihil_M_Heine_Card,Nihil M. Heine Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bMagicAddSize,Size_Small,15; },{},{}
+27197,Agnes_Lugenburg_Card,Agnes Lugenburg Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bAddSize,Size_Small,15; },{},{}
+27198,Jurgen_Wigner_Card,Jurgen Wigner Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bAddRace,RC_Brute,15; },{},{}
+27199,Spica_Nerius_Card,Spica Nerius Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bMagicAddRace,RC_Brute,15; },{},{}
 27249,Arhi_Card,Arhi Card,6,20,,10,,,,,,,,64,,,,,{ bonus bAtk,15; bonus bMatk,15; bonus bMaxHP,500; bonus bHit,15; bonus bFlee,15; },{},{}
 27250,Dio_Anemos_Card,Dio Anemos Card,6,20,,10,,,,,,,,64,,,,,{ bonus bMatkRate,3; bonus2 bMagicAtkEle,Ele_Neutral,5; bonus2 bMagicAtkEle,Ele_Earth,5; },{},{}
 27251,Geffen_Gang_Member_Card,Geffen Gang Member Card,6,20,,10,,,,,,,,64,,,,,{ bonus bCritAtkRate,3; bonus bAspdRate,5; },{},{}
@@ -11573,6 +11706,36 @@
 27263,Fay_Kanavian_Card,Fay Kanavian Card,6,20,,10,,,,,,,,64,,,,,{ autobonus "{ bonus bDef,300; }",100,10000,BF_WEAPON|BF_SHORT,"{ active_transform 1040,10000; }"; },{},{}
 27264,Evil_Shadow_Card,Evil Shadow Card,6,20,,10,,,,,,,,32,,,,,{ bonus2 bSubEle,Ele_Dark,30; bonus2 bSubEle,Ele_Undead,30; bonus2 bSubEle,Ele_Holy,-30; bonus2 bSubEle,Ele_Fire,-30; },{},{}
 27265,Evil_Fanatics_Card,Evil Fanatics Card,6,20,,10,,,,,,,,2,,,,,{ bonus2 bAddEle,Ele_Dark,30; bonus2 bAddEle,Ele_Undead,30; bonus2 bMagicAddEle,Ele_Dark,30; bonus2 bMagicAddEle,Ele_Undead,30; bonus2 bAddEle,Ele_Holy,-30; bonus2 bAddEle,Ele_Fire,-30; bonus2 bMagicAddEle,Ele_Holy,-30; bonus2 bMagicAddEle,Ele_Fire,-30; },{},{}
+27286,Colorful_Teddy_Bear_Card,Colorful Teddy Bear Card,6,20,,10,,,,,,,,2,,,,,{ bonus bMatk,5; bonus2 bMagicAddSize,Size_Large,15; },{},{}
+27287,Shiny_Teddy_Bear_Card,Shiny Teddy Bear Card,6,20,,10,,,,,,,,64,,,,,{ bonus bUseSPrate,10; bonus2 bMagicAtkEle,Ele_Holy,(3*getrefine()); },{},{}
+27288,Hardworking_Pitman_Card,Hardworking Pitman Card,6,20,,10,,,,,,,,16,,,,,{ .@val = 10; bonus2 bAddClass,Class_All,5; if (getrefine() >= 10) { .@val += 5; } bonus bHit,.@val; },{},{}
+27289,Soul_Fragment_Card,Soul Fragment Card,6,20,,10,,,,,,,,2,,,,,{ bonus bMatk,5; bonus2 bMagicAddSize,Size_Medium,15; },{},{}
+27290,Haunted_Obsidian_Card,Haunted Obsidian Card,6,20,,10,,,,,,,,4,,,,,{ .@agi = readparam(bAgi); .@val = .@agi/10; if (.@val) { bonus bFlee,(3*.@val); bonus bAspdRate,.@val; if (.@agi >= 120) { bonus bAspd,1; } } },{},{}
+27291,Ancient_Tri_Joint_Card,Ancient Tri Joint Card,6,20,,10,,,,,,,,2,,,,,{ bonus bBaseAtk,30; bonus bMaxHPrate,-1; },{},{}
+27292,Ancient_Stalactic_Golem_Card,Ancient Stalactic Golem Card,6,20,,10,,,,,,,,4,,,,,{ .@vit = readparam(bVit); .@val = .@vit/10; if (.@val) { bonus bAspdRate,.@val; bonus bMaxHP,(150*.@val); if (.@vit >= 120) { bonus bDelayrate,-3; } } },{},{}
+27293,Ancient_Megalith_Card,Ancient Megalith Card,6,20,,10,,,,,,,,2,,,,,{ bonus bMatk,30; bonus bMaxSPrate,-1; },{},{}
+27294,Ancient Tao Gunka Card,Ancient Tao Gunka Card,6,20,,10,,,,,,,,769,,,,,{ .@val = 30; if (getrefine() >= 10) { .@val += 20; } bonus2 bIgnoreDefClassRate,Class_Boss,.@val; },{},{}
+27295,Ancient_Stone_Shooter_Card,Ancient Stone Shooter Card,6,20,,10,,,,,,,,4,,,,,{ .@luk = readparam(bLuk); .@aspd = .@crit = .@luk/10; if (.@luk >= 120) { .@crit += 5; } bonus bAspdRate,.@aspd; bonus bCritAtkRate,.@crit; },{},{}
+27296,Ancient_Wootan_Shooter_Card,Ancient Wootan Shooter Card,6,20,,10,,,,,,,,4,,,,,{ .@dex = readparam(bDex); .@val = .@dex/10; if (.@val) { bonus bAspdRate,.@val; bonus2 bWeaponDamageRate,W_BOW,.@val; if (.@dex >= 120) { bonus bBaseAtk,40; } } },{},{}
+27297,Ancient_Wootan_Fighter_Card,Ancient Wootan Fighter Card,6,20,,10,,,,,,,,2,,,,,{ bonus bCritical,5; bonus bCritAtkRate,10; },{},{}
+27298,Ancient_Wootan_Defender_Card,Ancient Wootan Defender Card,6,20,,10,,,,,,,,32,,,,,{ .@val = 30; if (getrefine() >= 10) { .@val += 20; } bonus2 bSubClass,Class_Boss,.@val; },{},{}
+27304,E_EA2S_Card,E EA2S Card,6,20,,10,,,,,,,,136,,,,,{ bonus bHPrecovRate,50; },{},{}
+27305,EL_A17T_Card,EL A17T Card,6,20,,10,,,,,,,,136,,,,,{ bonus5 bAutoSpell,"WL_HELLINFERNO",3,1,ATF_SHORT|ATF_WEAPON,1; /* fix me: unknown rate */ },{},{}
+27306,Bellare_Card,Bellare Card,6,20,,10,,,,,,,,2,,,,,{ if (getiteminfo(getequipid(EQI_COMPOUND_ON),11) == W_REVOLVER) { .@r = getrefine(); bonus bHit,20; bonus bLongAtkRate,(5+.@r); if (.@r >= 10) { bonus2 bSkillAtk,"RL_FIREDANCE",15; } } },{},{}
+27307,Greater_Bellare_Card,Greater Bellare Card,6,20,,10,,,,,,,,2,,,,,{ if (getiteminfo(getequipid(EQI_COMPOUND_ON),11) == W_GATLING) { .@r = getrefine(); bonus bHit,20; bonus bLongAtkRate,(5+.@r); if (.@r >= 10) { bonus2 bSkillAtk,"RL_R_TRIP",15; } } },{},{}
+27308,Sanare_Card,Sanare Card,6,20,,10,,,,,,,,2,,,,,{ .@r = getrefine(); .@val = 2; if (.@r >= 9) { .@val += 3; } if (.@r >= 11) { .@val += 5; } bonus bHealPower,.@val; },{},{}
+27309,Greater_Sanare_Card,Greater Sanare Card,6,20,,10,,,,,,,,769,,,,,{ bonus bMatk,10; .@val = 5; if (getrefine() >= 9) { .@val += 5; } bonus2 bMagicAtkEle,Ele_Holy,.@val; },{},{}
+27310,Plaga_Card,Plaga Card,6,20,,10,,,,,,,,769,,,,,{ bonus bMatk,10; .@val = 5; if (getrefine() >= 9) { .@val += 5; } bonus2 bMagicAtkEle,Ele_Neutral,.@val; },{},{}
+27311,Mutant_Plaga_Card,Mutant Plaga Card,6,20,,10,,,,,,,,2,,,,,{ if (getiteminfo(getequipid(EQI_COMPOUND_ON),11) == W_KNUCKLE) { .@r = getrefine(); bonus bHit,20; bonus bBaseAtk,15; if (.@r >= 10) { .@val = 15; } bonus2 bAddSize,Size_Large,(.@r+.@val); } },{},{}
+27312,Dolor_Card,Dolor Card,6,20,,10,,,,,,,,136,,,,,{ bonus2 bAddRace,RC_Demon,5; },{},{}
+27313,Mutant_Dolor_Card,Mutant Dolor Card,6,20,,10,,,,,,,,2,,,,,{ if (getiteminfo(getequipid(EQI_COMPOUND_ON),11) == W_KATAR) { .@r = getrefine(); bonus bCritical,7; bonus bBaseAtk,15; bonus bCritAtkRate,(2*.@r); if (.@r >= 10) { bonus2 bAddSize,Size_Large,15; } } },{},{}
+27314,Venenum_Card,Venenum Card,6,20,,10,,,,,,,,4,,,,,{ bonus2 bAddRace,RC_Brute,15; },{},{}
+27315,Mutant_Venenum_Card,Mutant Venenum Card,6,20,,10,,,,,,,,4,,,,,{ bonus2 bMagicAddRace,RC_Brute,15; },{},{}
+27316,Twin_Caput_Card,Twin Caput Card,6,20,,10,,,,,,,,16,,,,,{ bonus bDef,50; bonus2 bSubDefEle,Ele_Poison,10; },{},{}
+27317,Mutant_Twin_Caput_Card,Mutant Twin Caput Card,6,20,,10,,,,,,,,136,,,,,{ bonus2 bAddRace,RC_Formless,5; },{},{}
+27318,Miguel_Card,Miguel Card,6,20,,10,,,,,,,,64,,,,,{ bonus bCritAtkRate,20; bonus2 bSubRace,RC_All,-10; },{},{}
+27319,R48_85_BESTIA_Card,R48-85-BESTIA Card,6,20,,10,,,,,,,,16,,,,,{ bonus2 bAddEle,Ele_Poison,40; },{},{}
+27320,E_EA1L_card,E-EA1L card,6,20,,10,,,,,,,,2,,,,,{ .@r = getrefine(); .@val = 3; if (.@r >= 9) { .@val += 2; if (.@r >= 11) { .@val += 5; } } bonus2 bMagicAtkEle,Ele_Fire,.@val; },{},{}
 //===================================================================
 // New Katars
 //===================================================================
@@ -11585,6 +11748,8 @@
 28008,Katar_of_Vicious_Mind,Katar of Vicious Mind,5,20,,1800,180,,1,1,0x00001000,63,2,34,4,160,1,16,{ bonus bAtk,pow(min(getrefine(),15),2); },{},{}
 28010,Juliette_D._Rachel,Juliette D. Rachel,5,20,,2500,300,,1,2,0x00001000,56,2,34,4,170,1,16,{ .@r = getrefine(); bonus2 bAddClass,Class_All,(.@r/2); bonus bAspdRate,.@r; bonus bUnbreakableWeapon; },{},{}
 28011,Unity_Katar,Unity Katar,5,20,,650,123,,1,1,0x00001000,63,2,34,3,1,1,16,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
+28022,Illusion_Infiltrator,Illusion Infiltrator,5,0,,1500,200,,1,2,0x00001000,58,2,34,4,100,1,16,{ bonus2 bAddRace,RC_DemiHuman,60; bonus2 bAddRace,RC_Player,60; bonus bDef,3; .@flee = 5; .@flee2 = 2; if (getrefine() >= 9) { .@flee += 5; .@flee2 += 2; bonus2 bAddClass,Class_All,5; } bonus bFlee,.@flee; bonus bFlee2,.@flee2; },{},{}
+28023,Illusion_Sharpened_Legbone_of_Ghoul,Illusion Sharpened Legbone of Ghoul,5,0,,1700,220,,1,2,0x00001000,58,2,34,3,100,1,16,{ autobonus "{ bonus bDefEle,Ele_Undead; sc_start SC_ENDURE,6000,1; }",40,6000,BF_WEAPON|BF_SHORT,"{ active_transform 1036,6000; }"; },{},{}
 //===================================================================
 // New Axes
 //===================================================================
@@ -11605,6 +11770,7 @@
 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,30; bonus2 bVariableCastrate,"GS_TRACKING",-20; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player,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,30; bonus2 bIgnoreDefRaceRate,RC_DemiHuman,10; bonus2 bIgnoreDefRaceRate,RC_Player,10; autobonus "{ bonus bBaseAtk,80; bonus2 bHPLossRate,100,1000; }",30,6000,BF_WEAPON,"{ specialeffect2 EF_BASH3D; }"; bonus bUnbreakableWeapon; },{},{}
+28244,Illusion_Gate_Keeper_DD,Illusion Gate Keeper DD,5,0,,1300,240,,9,2,0x40000000,63,2,34,4,120,1,20,{ .@r = getrefine(); bonus bDex,1; bonus bSplashRange,1; .@val = 5*(.@r/2); if (.@r >= 7) { bonus bAspdRate,15; if (.@r >= 9) { .@val += 5; if (.@r >= 11) { bonus5 bAutoSpell,"GS_SPREADATTACK",max(6,getskilllv("GS_SPREADATTACK")),50,BF_LONG|BF_WEAPON,1; } } } bonus bLongAtkRate,.@val; },{},{}
 //===================================================================
 // New Accessories
 //===================================================================
@@ -11653,6 +11819,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; } },{},{}
 28443,Para_Team_Str_Ring100,Awakened Eden Group Ring of Strength I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus2 bAddClass,Class_All,2; },{},{}
 28444,Para_Team_Str_Necklace100,Awakened Eden Group Necklace of Strength I,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bStr,1; },{},{}
 28445,Para_Team_Str_Ring115,Awakened Eden Group Ring of Strength II,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,115,,,{ bonus2 bAddClass,Class_All,3; },{},{}
@@ -11685,6 +11853,9 @@
 28472,Para_Team_Agi_Necklace160,Awakened Eden Group Necklace of Agility V,4,0,,0,,0,,0,0xFFFFFFFF,63,2,136,,160,,,{ bonus bDex,4; skill "AL_TELEPORT",1; },{},{}
 28483,Royal_Guardian_Ring,Royal Guardian Ring,4,0,,10,,1,,1,0xFFFFFFFF,63,2,136,,99,,,{ .@b = min(BaseLevel/25,7); bonus bMaxHPrate,.@b; bonus bMaxSPrate,.@b; },{},{}
 28499,Proof_of_Glory,Proof of Glory,4,0,,100,,0,,0,0xFFFFFFFF,63,2,136,,100,,,{ bonus bAllStats,1; bonus2 bAddRace,RC_All,2; bonus2 bMagicAddRace,RC_All,2; if(BaseLevel>=150) { bonus bAllStats,1; bonus2 bAddRace,RC_All,2; bonus2 bMagicAddRace,RC_All,2; } },{},{}
+28508,Illusion_Skull_Ring,Illusion Skull Ring,4,0,,100,,0,,1,0xFFFFFFFF,63,2,8,,100,0,0,{ bonus3 bAddEff,Eff_Curse,5000,ATF_SELF|ATF_TARGET|ATF_SHORT|ATF_WEAPON; },{},{}
+28509,Illusion_Ring,Illusion Ring,4,0,,200,,0,,1,0xFFFFFFFE,63,2,136,,100,0,0,{ bonus bStr,3; if (readparam(bStr) >= 100) { bonus bBaseAtk,30; } },{},{}
+28510,A_Vampire's_Servant,A Vampire's Servant,4,0,,100,,1,,1,0xFFFFFFFF,63,2,8,,100,0,,{ bonus2 bSPDrainRate,1000,1; },{},{}
 28551,Imperial_Glove,Imperial Glove,4,20,,400,,0,,1,0xFFFFFFFF,63,2,136,,100,0,0,{ bonus2 bAddClass,Class_All,5; bonus bVariableCastrate,-10; bonus bNoCastCancel; },{},{}
 //===================================================================
 // More books
@@ -11695,6 +11866,8 @@
 28604,Crimson_Bible,Crimson Bible,5,20,,450,45,,1,2,0x00410100,63,2,2,3,70,1,15,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); bonus bMatk,(.@r<=15?(pow(.@r,2)/2):225); },{},{}
 28605,Book_of_Vicious_Mind,Book of Vicious Mind,5,20,,950,95,,1,1,0x00010100,63,2,2,4,160,1,15,{ bonus bAtk,pow(min(getrefine(),15),2); bonus bMatk,pow(min(getrefine(),15),2); bonus bUnbreakableWeapon; },{},{}
 28606,Unity_Bible,Unity Bible,5,20,,220,42,,1,1,0x00410100,63,2,2,3,1,1,15,{ bonus bBaseAtk,pow(getrefine(),2)*125/100; },{},{}
+28612,Illusion_Apocalypse,Illusion Apocalypse,5,0,,800,170,,1,2,0x00410100,63,2,2,4,100,1,15,{ .@val = 10 + 10*(min(getrefine(),10)/3); bonus2 bAddEle,Ele_Water,.@val; bonus2 bAddEle,Ele_Earth,.@val; bonus2 bAddEle,Ele_Fire,.@val; bonus2 bAddEle,Ele_Wind,.@val; bonus2 bSubDefEle,Ele_Holy,-30; },{},{}
+28626,Illusion_Tablet,Illusion Tablet,5,0,,800,170,,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; },{},{}
 //===================================================================
 // More daggers
 //===================================================================
@@ -11704,6 +11877,8 @@
 28703,Infinity_Dagger,Infinity Dagger,5,10,,500,125:100,,1,1,0x028F5EEF,56,2,2,4,100,1,1,{},{},{}
 28705,Crimson_Dagger,Crimson Dagger,5,20,,550,55,,1,2,0x028F5EEF,63,2,2,3,70,1,1,{ .@r = getrefine(); bonus bBaseAtk,((BaseLevel/10)*5)+(.@r<=15?pow(.@r,2):225); bonus bMatk,(.@r<=15?(pow(.@r,2)/2):225); },{},{}
 28706,Dagger_of_Vicious_Mind,Dagger of Vicious Mind,5,20,,1050,105:50,,1,1,0x028F5EEF,63,2,2,4,160,1,1,{ bonus bAtk,pow(min(getrefine(),15),2); bonus bMatk,pow(min(getrefine(),15),2)/2; },{},{}
+28725,Illusion_Moonlight_Dagger,Illusion Moonlight Dagger,5,20,,700,150,,1,1,0x028F5EEE,63,2,2,4,99,1,1,{ bonus bMaxSPrate,10; .@val = 3; if (getrefine() >= 10) { .@val += 4; } bonus bSPDrainValue,.@val; },{},{}
+28745,Illusion_Counter_Dagger,Illusion Counter Dagger,5,0,,900,170,,1,2,0x00810204,63,2,2,4,120,0,1,{ .@r = getrefine(); bonus bCritical,90; bonus bCritAtkRate,(3*(.@r/2)); if (.@r >= 7) { bonus2 bAddClass,Class_All,5; if (.@r >= 9) { bonus2 bAddSize,Size_All,20; if (.@r >= 11) { bonus2 bAddEle,Ele_All,20; } } } },{},{}
 //===================================================================
 // More shields
 //===================================================================
@@ -11718,10 +11893,11 @@
 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,20,,100,,50,,1,0xFFFFFFFF,63,2,32,,100,1,1,{ bonus bAspdRate,5; bonus2 bIgnoreDefClassRate,Class_Normal,10; bonus2 bSubEle,Ele_Neutral,5; .@r = getrefine(); if(.@r>=7) { bonus2 bIgnoreDefClassRate,Class_Normal,2; bonus bAspdRate,2; } if(.@r>=9) { bonus2 bIgnoreDefClassRate,Class_Normal,3; bonus bAspdRate,3; } },{},{}
-28915,Bunker_Shield,Bunker Shield,4,20,,3500,,90,,1,0xFFFFFFFF,63,2,32,,50,1,1,{ bonus2 bAddRace,RC_All,4; bonus bAspdRate,5; .@r = getrefine(); if(.@r>=5) { bonus2 bAddRace,RC_All,.@r; } },{},{}
+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; },{},{}
+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; } } },{},{}
 28920,Diamond_Shield,Diamond Shield,4,20,,1000,,50,,0,0xFFFFFFFF,63,2,32,,100,1,1,{ .@r = getrefine(); if(BaseLevel>=150) { bonus bDef,100+(20*(.@r/3)); } },{},{}
+28922,Illusion_Sacred_Mission,Illusion Sacred Mission,4,0,,1600,,190,,1,0x00004000,56,2,32,,120,1,4,{ bonus bVit,3; bonus bInt,2; bonus bMdef,3; bonus bUnbreakableShield; bonus2 bSkillAtk,"LG_EARTHDRIVE",(7*getrefine()); },{},{}
 //===================================================================
 // Enchantment stones
 //===================================================================
@@ -12202,3 +12378,5 @@
 31475,C_Black_Fox_Ear_Ribbon,C Black Fox Ears Ribbon,4,0,,0,,0,,0,0xFFFFFFFF,63,2,1024,,1,0,1726,{},{},{}
 31476,C_Cherry_Blossom_Hat_YL,C Yellow Cherry Blossom Hat,4,0,,0,,0,,0,0xFFFFFFFF,63,2,1024,,1,0,1727,{},{},{}
 31478,C_Eleanor_Wig_,C Eleanors Wig Lower,4,0,,0,,0,,0,0xFFFFFFFF,63,2,4096,,1,0,1502,{},{},{}
+//
+32005,Illusion_Pole_Axe,Illusion Pole Axe,5,0,,1500,190,,3,2,0x00004082,63,2,2,4,120,1,4,{ .@r = getrefine(); bonus bStr,3; bonus bInt,2; bonus bDex,2; if (.@r >= 13) { .@val = -2000; } else if (.@r >= 9) { .@val = -1000; } bonus2 bSkillCooldown,"RK_HUNDREDSPEAR",.@val; },{},{}

+ 1 - 0
db/re/item_delay.txt

@@ -93,3 +93,4 @@
 //12206,60000	//Luk_Dish10_
 //12207,60000	//Vit_Dish10_
 22508,1200000	//Para_Team_Mark_
+23277,180000	//Mado_Box

+ 3 - 0
db/re/item_misc.txt

@@ -1400,3 +1400,6 @@ IG_PrizeOfHero,15098,1		// Hero_Taget_Suits
 IG_PrizeOfHero,22035,2		// Vet_Nepen_Heel
 IG_PrizeOfHero,22036,2		// Vet_SliverFox_Boots
 IG_PrizeOfHero,22037,2		// Vet_Ungo_Boots
+// Private Airship items
+IG_PRIVATE_AIRSHIP,6909,1 // Actinidia_Cat_Fruit
+IG_PRIVATE_AIRSHIP,25464,1 // World_Moving_Rights

+ 17 - 17
db/re/item_package.txt

@@ -4473,23 +4473,23 @@ IG_Something_Candy_Holder,22067,1,1 // 1x Witch Shoes
 IG_Something_Candy_Holder,22669,5,1 // 1x October Spooky Trade Box
 IG_Something_Candy_Holder,22670,1,1 // 1x DARK INVITATION
 
-// Mysterious_Egg
-IG_Mysterious_Egg,12259,200,1,1,0,0,0	// 1x Miracle_Medicine
-IG_Mysterious_Egg,5374,1,1,1,0,0,0	// 1x L_Magestic_Goat
-IG_Mysterious_Egg,5254,99,1,1,0,0,0	// 1x Deviling_Hat
-IG_Mysterious_Egg,12246,99,1,1,0,0,0	// 1x Magic_Card_Album
-IG_Mysterious_Egg,4302,1,1,1,0,0,0	// 1x Tao_Gunka_Card
-IG_Mysterious_Egg,5474,200,1,1,0,0,0	// 1x Notice_Board
-IG_Mysterious_Egg,2554,1,1,1,0,0,0	// 1x Piece_Of_Angent_Skin
-IG_Mysterious_Egg,17001,1099,1,1,0,0,0	// 1x Wander_Man_Box10
-IG_Mysterious_Egg,12903,1000,1,1,0,0,0	// 1x Str_Dish_Box
-IG_Mysterious_Egg,12922,1100,1,1,0,0,0	// 1x Token_Of_Siegfried_Box
-IG_Mysterious_Egg,16755,1200,1,1,0,0,0	// 1x Unbreak_Def_Box
-IG_Mysterious_Egg,12909,800,1,1,0,0,0	// 1x Kafra_Card_Box
-IG_Mysterious_Egg,14232,800,1,1,0,0,0	// 1x Yggdrasilberry_Box_
-IG_Mysterious_Egg,12361,1000,2,1,0,0,0	// 2x Delicious_Shaved_Ice
-IG_Mysterious_Egg,12910,1100,1,1,0,0,0	// 1x Giant_Fly_Wing_Box
-IG_Mysterious_Egg,16753,1300,1,1,0,0,0	// 1x Unbreak_Weap_Box
+// Shining Egg
+IG_Shining_Egg,12259,200,1,1,0,0,0	// 1x Miracle_Medicine
+IG_Shining_Egg,5374,1,1,1,0,0,0	// 1x L_Magestic_Goat
+IG_Shining_Egg,5254,99,1,1,0,0,0	// 1x Deviling_Hat
+IG_Shining_Egg,12246,99,1,1,0,0,0	// 1x Magic_Card_Album
+IG_Shining_Egg,4302,1,1,1,0,0,0	// 1x Tao_Gunka_Card
+IG_Shining_Egg,5474,200,1,1,0,0,0	// 1x Notice_Board
+IG_Shining_Egg,2554,1,1,1,0,0,0	// 1x Piece_Of_Angent_Skin
+IG_Shining_Egg,17001,1099,1,1,0,0,0	// 1x Wander_Man_Box10
+IG_Shining_Egg,12903,1000,1,1,0,0,0	// 1x Str_Dish_Box
+IG_Shining_Egg,12922,1100,1,1,0,0,0	// 1x Token_Of_Siegfried_Box
+IG_Shining_Egg,16755,1200,1,1,0,0,0	// 1x Unbreak_Def_Box
+IG_Shining_Egg,12909,800,1,1,0,0,0	// 1x Kafra_Card_Box
+IG_Shining_Egg,14232,800,1,1,0,0,0	// 1x Yggdrasilberry_Box_
+IG_Shining_Egg,12361,1000,2,1,0,0,0	// 2x Delicious_Shaved_Ice
+IG_Shining_Egg,12910,1100,1,1,0,0,0	// 1x Giant_Fly_Wing_Box
+IG_Shining_Egg,16753,1300,1,1,0,0,0	// 1x Unbreak_Weap_Box
 
 // Agust_Lucky_Scroll
 IG_Agust_Lucky_Scroll,4365,1,1,1,1,0,0	// 1x B_Katrinn_Card

+ 33 - 2
db/re/item_trade.txt

@@ -799,7 +799,7 @@
 6674,507,100	// GM_Coin
 6681,467,100	// XMAS_Cookie
 6682,499,100	// Bag_Of_Selling_Goods
-6684,467,100	// Proof_of_The_Heroic
+6684,403,100	// TokenOfHero
 6685,499,100	// Morocc_Certification
 6686,507,100	// Brick
 6687,507,100	// Rope
@@ -1440,7 +1440,7 @@
 12596,475,100	// Magic_Candy
 12600,507,100	// Treasure_Box_Scroll
 12607,507,100	// Lolli_Pop_Box
-//12610,475,100	//
+12610,475,100	// Mysterious_Egg
 12622,507,100	// Boarding_Halter
 12625,475,100	// Sapa_Feat_Cert_Pack
 12633,475,100	// Malang_Cat_Can
@@ -3848,6 +3848,7 @@
 22873,475,100	// Sealed_Beelzebub_Scroll_II
 22874,475,100	// Sealed_Beelzebub_Card_Album
 22875,475,100	// Sealed_Beelzebub_Card
+23280,499,100	// N_Fly_Wing_
 22881,499,100	// Rope_Gallows
 22883,475,100	// September_Gift_Box
 22884,475,100	// October_Gift_Box
@@ -3869,6 +3870,16 @@
 //22950,475,100	//
 //22951,475,100	//
 //22952,475,100	//
+22979,475,100	// C_Battle_Gum_2
+23012,475,100	// S_Small_Mana_Potion
+23038,475,100	// S_Slim_White_Box
+23043,475,100	// S_Seed_Of_Yggdrasil_Box
+23046,475,100	// S_Mystic_Powder
+23047,475,100	// S_Blessing_Tyr
+23048,475,100	// S_Resilience_Potion
+23087,435,100	// Small_Leather_Bag
+23307,475,100	// S_Shining_Def_Scroll
+23340,475,100	// S_Megaphone
 23177,475,100	// Kafra_Card_
 23196,475,100	// Shining_Blue_Lucky_Egg
 25043,499,100	// Thorny_Vine_Flute
@@ -3887,6 +3898,26 @@
 25148,499,100	// Cute_Starved_Demon_Doll
 25149,499,100	// Doll_With_Warm_Scarf
 25150,499,100	// Hugging_Alice_Pilow
+25151,435,100	// Rachel's_Revolver
+25152,435,100	// Cherished_Bouquet
+25153,435,100	// Broken_Gun_Wreck
+25154,384,100	// Antique_Gunpowder
+25155,435,100	// Schwartz's_Honor_Token
+25160,435,100	// Borrowed_Book
+25161,435,100	// Delicious_Handmade_Cookie
+25162,435,100	// Crispy_Anchovy
+25163,435,100	// Arms_Shop_Ad
+25164,435,100	// Fresh_Tea_Leaves
+25165,435,100	// High_Class_Tea
+25166,435,100	// Very_Shining_Ring
+25167,435,100	// Old_Letter
+25179,435,100	// Blessing_Star
+25180,435,100	// Old_Rings
+25181,435,100	// Wood_Rosary
+25182,435,100	// Assassin's_Mark_Dagger
+25183,435,100	// Decorated_Archer's_Thimble
+25184,435,100	// Portable_Sewingbox
+25185,435,100	// Locket_Pendant
 26100,435,100	// Paradise_Foxtail_Staff_II
 26101,435,100	// Paradise_Foxtail_Staff_III
 28105,467,100	// Infinity_Axe

+ 134 - 42
db/re/mob_db.txt

@@ -1177,13 +1177,13 @@
 2067,E_ANOPHELES_,Anopheles,Anopheles,3,500,1,1,1,1,40,58,8,100,1,100,1,1,100,1,10,12,0,4,64,0x6200000,170,1084,2304,576,0,0,0,0,0,0,0,601,1000,702,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4344,1
 
 // Brasilis
-2068,BOITATA,Boitata,Boitata,93,1283990,1,74288,77950,2,1060,2022,32,66,140,99,30,109,100,90,10,12,2,2,63,0x6283695,200,1152,1152,576,37144,617,5500,617,5000,616,2000,7444,5000,1377,100,1422,100,607,500,985,1000,984,1000,1471,100,0,0,0,0,0,0
-2069,IARA,Iara,Iara,79,5890,1,1070,890,1,171,270,0,76,69,14,41,60,69,20,10,12,1,5,61,0x91,200,384,672,288,0,0,0,0,0,0,0,995,5,950,9000,951,500,748,50,747,100,710,10,2334,1,0,0,0,0,0,0
-2070,PIRANHA,Piranha,Piranha,75,4522,1,899,1023,1,182,223,7,12,69,45,30,30,66,35,10,12,2,5,61,0x3885,200,768,480,864,0,0,0,0,0,0,0,956,600,995,5,963,9000,1053,500,1054,500,13027,1,1249,5,0,0,0,0,0,0
-2071,HEADLESS_MULE,Headless Mule,Headless Mule,80,6620,1,1011,1120,1,210,267,33,44,68,51,50,35,67,20,10,12,2,6,63,0x2003885,165,1216,816,432,0,0,0,0,0,0,0,7120,4000,2317,5,7097,1000,7122,1000,1269,1,2317,1,0,0,0,0,0,0,0,0
-2072,JAGUAR,Jaguar,Jaguar,71,3914,1,720,512,1,192,234,44,15,69,30,45,5,59,5,10,12,1,2,42,0x91,150,576,1248,480,0,0,0,0,0,0,0,7171,3000,7172,2000,919,1000,756,40,0,0,0,0,0,0,0,0,0,0,0,0
-2073,TOUCAN,Toucan,Toucan,70,3640,1,659,544,1,166,201,12,12,54,14,40,35,44,10,10,12,1,2,44,0x1089,155,960,1440,960,0,0,0,0,0,0,0,917,3000,7053,1000,510,50,508,100,2612,200,0,0,0,0,0,0,0,0,0,0
-2074,CURUPIRA,Curupira,Curupira,68,3096,1,622,450,1,140,175,42,12,32,23,38,20,45,10,10,12,1,7,22,0x108B,250,528,480,384,0,0,0,0,0,0,0,517,3000,757,250,1011,10,7267,500,1505,100,0,0,0,0,0,0,0,0,0,0
+2068,BOITATA,Boitata,Boitata,93,1283990,1,74288,77950,2,1060,2022,32,66,140,99,30,109,100,90,10,12,2,2,63,0x6283695,200,1152,1152,576,37144,617,5500,617,5000,616,2000,7444,5000,1377,100,1422,100,607,500,985,1000,984,1000,1471,100,0,0,0,0,27126,1
+2069,IARA,Iara,Iara,79,5890,1,1070,890,1,171,270,0,76,69,14,41,60,69,20,10,12,1,5,61,0x91,200,384,672,288,0,0,0,0,0,0,0,995,5,950,9000,951,500,748,50,747,100,710,10,2334,1,0,0,0,0,27120,1
+2070,PIRANHA,Piranha,Piranha,75,4522,1,899,1023,1,182,223,7,12,69,45,30,30,66,35,10,12,2,5,61,0x3885,200,768,480,864,0,0,0,0,0,0,0,956,600,995,5,963,9000,1053,500,1054,500,13027,1,1249,5,0,0,0,0,27121,1
+2071,HEADLESS_MULE,Headless Mule,Headless Mule,80,6620,1,1011,1120,1,210,267,33,44,68,51,50,35,67,20,10,12,2,6,63,0x2003885,165,1216,816,432,0,0,0,0,0,0,0,7120,4000,2317,5,7097,1000,7122,1000,1269,1,2317,1,0,0,0,0,0,0,27125,1
+2072,JAGUAR,Jaguar,Jaguar,71,3914,1,720,512,1,192,234,44,15,69,30,45,5,59,5,10,12,1,2,42,0x91,150,576,1248,480,0,0,0,0,0,0,0,7171,3000,7172,2000,919,1000,756,40,0,0,0,0,0,0,0,0,0,0,27124,1
+2073,TOUCAN,Toucan,Toucan,70,3640,1,659,544,1,166,201,12,12,54,14,40,35,44,10,10,12,1,2,44,0x1089,155,960,1440,960,0,0,0,0,0,0,0,917,3000,7053,1000,510,50,508,100,2612,200,0,0,0,0,0,0,0,0,27123,1
+2074,CURUPIRA,Curupira,Curupira,68,3096,1,622,450,1,140,175,42,12,32,23,38,20,45,10,10,12,1,7,22,0x108B,250,528,480,384,0,0,0,0,0,0,0,517,3000,757,250,1011,10,7267,500,1505,100,0,0,0,0,0,0,0,0,27122,1
 
 // Event MVP
 2075,E_VADON_X,Ragunta,Ragunta,150,25000000,0,9999999,9999999,1,7000,10000,500,500,100,100,100,100,100,100,10,12,2,5,88,0x6283695,150,1632,432,540,4999999,0,0,0,0,0,0,960,5000,7095,3000,7093,3000,984,1000,985,500,7444,50,617,10,0,0,0,0,6414,9000
@@ -1866,7 +1866,7 @@
 2706,C3_PLASMA_Y,Plasma Ringleader,Plasma Ringleader,119,103000,1,6860,25935,1,1086,1499,130,45,141,94,75,91,144,50,10,12,0,0,88,0x3885,150,1056,1056,336,0,0,0,0,0,0,0,911,100,644,10,731,2,715,100,969,1,7938,300,0,0,0,0,0,0,4389,1
 2707,C4_PLANKTON,Furious Plankton,Furious Plankton,40,6160,1,835,2805,1,135,171,28,28,23,68,25,55,35,14,10,12,0,3,61,0x81,400,2208,1008,324,0,0,0,0,0,0,0,1052,9000,910,300,938,700,970,4,601,1000,630,20,645,50,0,0,0,0,4024,1
 2708,C5_PITMAN,Elusive Pitman,Elusive Pitman,90,36040,1,3875,11895,1,360,456,104,48,78,56,45,35,60,30,10,12,2,1,42,0x91,180,960,336,300,0,0,0,0,0,0,0,7318,3000,7319,500,6244,900,999,500,1003,100,1041,1000,7327,80,0,0,0,0,4335,1
-2709,C1_PIRANHA,Swift Piranha,Swift Piranha,75,22610,1,2470,7665,1,336,432,7,12,69,45,30,30,79,35,10,12,2,5,61,0x3885,200,768,480,864,0,0,0,0,0,0,0,956,600,995,5,963,9000,1053,500,1054,500,13027,1,1249,5,0,0,0,0,0,0
+2709,C1_PIRANHA,Swift Piranha,Swift Piranha,75,22610,1,2470,7665,1,336,432,7,12,69,45,30,30,79,35,10,12,2,5,61,0x3885,200,768,480,864,0,0,0,0,0,0,0,956,600,995,5,963,9000,1053,500,1054,500,13027,1,1249,5,0,0,0,0,27121,1
 2710,C2_PINGUICULA_D,Solid Dark Pinguicula,Solid Dark Pinguicula,113,170020,1,6825,21750,1,634,851,59,35,89,55,55,95,92,12,10,12,1,3,45,0x308D,290,1426,600,360,0,0,0,0,0,0,0,7100,5000,7198,2000,7188,3000,972,10,6086,1000,7939,1500,2148,10,0,0,0,0,4468,1
 2711,C3_PINGUICULA,Pinguicula Ringleader,Pinguicula Ringleader,105,65290,1,7300,23955,1,696,958,46,77,67,60,64,107,77,34,10,12,1,3,62,0x308D,200,700,600,360,0,0,0,0,0,0,0,2745,1,1980,10,2270,10,7100,5000,7198,2000,7188,3000,7939,500,0,0,0,0,4476,1
 2712,C4_PICKY_,Furious Picky,Furious Picky,10,445,1,180,405,1,41,49,48,10,15,10,8,5,9,3,10,12,0,2,23,0x81,200,988,288,168,0,0,0,0,0,0,0,916,9000,949,700,5015,10,507,600,519,300,601,50,10012,10,0,0,0,0,4011,1
@@ -1952,7 +1952,7 @@
 2792,C4_INJUSTICE,Furious Injustice,Furious Injustice,95,39760,1,4720,14970,1,600,815,76,31,77,76,58,65,88,50,10,12,1,1,47,0x3695,400,770,720,336,0,0,0,0,0,0,0,999,300,7054,5335,7053,3500,2313,5,2316,2,660,2,0,0,0,0,0,0,4268,1
 2793,C5_INCREASE_SOIL,Elusive Mi Gao,Elusive Mi Gao,83,26675,1,3300,11460,1,500,675,112,39,67,23,41,49,94,30,10,12,1,0,62,0x91,445,106,1056,576,0,0,0,0,0,0,0,7264,4365,7004,2300,997,10,969,2,0,0,0,0,0,0,0,0,0,0,4231,1
 2794,C1_ICE_TITAN,Swift Ice Titan,Swift Ice Titan,110,104100,1,8170,23790,1,1287,1809,344,11,133,54,78,33,94,26,10,12,2,0,61,0x3885,250,861,660,144,0,0,0,0,0,0,0,7561,5000,7066,3000,749,100,984,10,13314,30,6253,500,995,100,0,0,0,0,4417,1
-2795,C2_IARA,Solid Iara,Solid Iara,79,58900,1,2940,6675,1,328,418,0,76,69,14,41,60,83,20,10,12,1,5,61,0x91,200,384,672,288,0,0,0,0,0,0,0,995,5,950,9000,951,500,748,50,747,100,710,10,2334,1,0,0,0,0,0,0
+2795,C2_IARA,Solid Iara,Solid Iara,79,58900,1,2940,6675,1,328,418,0,76,69,14,41,60,83,20,10,12,1,5,61,0x91,200,384,672,288,0,0,0,0,0,0,0,995,5,950,9000,951,500,748,50,747,100,710,10,2334,1,0,0,0,0,27120,1
 2796,C3_HYEGUN,Yao Jun Ringleader,Yao Jun Ringleader,87,34980,1,3525,10830,1,416,546,84,43,69,38,40,20,82,20,10,12,1,1,49,0x3885,180,890,1320,720,0,0,0,0,0,0,0,7054,3880,609,100,985,10,2406,1,7277,300,15013,10,0,0,0,0,0,0,4328,1
 2797,C4_HUNTER_FLY,Furious Hunter Fly,Furious Hunter Fly,63,10250,1,1585,5100,1,311,419,46,20,32,93,22,25,100,15,10,12,0,4,44,0x2003885,150,676,576,480,0,0,0,0,0,0,0,996,30,999,100,943,5335,912,1300,756,129,2259,1,1226,2,0,0,0,0,4115,1
 2798,C5_HORNET,Elusive Hornet,Elusive Hornet,11,450,1,200,450,1,35,41,7,1,12,24,4,5,6,5,10,12,0,4,24,0x2001081,150,1292,792,216,0,0,0,0,0,0,0,992,80,939,9000,909,3500,1208,15,511,350,518,150,0,0,0,0,0,0,4019,1
@@ -2282,7 +2282,7 @@
 //3122,CHARLESTON1
 //3123,CHARLESTON2
 //3124,CHARLESTON3
-3125,STEP,Step,Step,130,55403,0,3088,2392,1,871,1566,101,58,117,127,55,61,116,60,10,12,0,6,22,0x2000000,250,0,780,0,0,0,0,0,0,0,0,6751,1000,998,150,13213,400,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+3125,STEP,Step,Step,130,55403,0,3088,2392,1,871,1566,101,58,117,127,55,61,116,60,10,12,0,6,22,0x2000000,250,0,780,0,0,0,0,0,0,0,0,6751,1000,998,150,13213,400,0,0,0,0,0,0,0,0,0,0,0,0,4698,1
 //3126,ROCK_STEP
 //3127,KICK_STEP
 //3128,KICK_AND_KICK
@@ -2332,13 +2332,13 @@
 //3172,EVENT_MONEMUS02
 //3173,EVENT_FIREFOX
 //3174,HELL_FLY
-3175,E1_ROTAR_ZAIRO,Rotar Zairo,Rotar Zairo,48,1088,0,190,220,10,0,0,0,0,0,0,0,0,0,0,10,12,2,0,44,0x2085,155,2420,2016,432,0,0,0,0,0,0,0,22046,50,7126,250,2312,1,0,0,0,0,601,500,912,200,910,200,0,0,0,0
-3176,E1_GREMLIN,Gremlin,Gremlin,118,20313,1,2008,1390,1,0,0,0,0,0,0,0,0,0,0,10,12,2,6,47,0x2003885,140,432,540,432,0,0,0,0,0,0,0,20743,50,7340,500,938,500,719,50,603,1,0,0,0,0,0,0,0,0,0,0
-3177,E1_BEHOLDER,Beholder,Beholder,118,20313,1,2008,1390,6,0,0,0,0,0,0,0,0,0,0,10,12,0,0,44,0x2000091,140,0,540,432,0,0,0,0,0,0,0,22046,50,576,500,605,50,996,50,985,1,603,1,0,0,0,0,0,0,0,0
-3178,E1_ACIDUS,Acidus,Acidus,130,48430,1,3088,2391,2,0,0,0,0,0,0,0,0,0,0,10,12,2,9,46,0x3095,170,1011,1008,300,0,0,0,0,0,0,0,15116,50,7938,100,1035,500,7448,200,0,0,0,0,0,0,0,0,0,0,0,0
-3179,E1_ACIDUS_,Acidus,Acidus,130,40718,1,2938,2031,2,0,0,0,0,0,0,0,0,0,0,10,12,2,9,44,0x3091,180,168,768,360,0,0,0,0,0,0,0,20743,50,1035,500,1036,500,7446,200,0,0,0,0,0,0,0,0,0,0,0,0
-3180,E1_G_S_NYDHOG,Wywern,Wywern,117,300000,1,0,0,1,0,0,0,0,0,0,0,0,0,0,10,12,2,9,87,0x3091,150,1621,1620,864,0,0,0,0,0,0,0,15116,50,6091,500,7444,1,985,10,0,0,0,0,0,0,0,0,0,0,0,0
-3181,E1_FELOCK,Captain Ferlock,Captain Ferlock,130,3000000,1,3088,333333,10,0,0,0,0,0,0,0,0,0,0,10,12,2,9,26,0x6280081,170,1018,1008,300,0,0,0,0,0,0,0,15117,100,20744,100,22047,100,12082,3000,12072,3000,12087,3000,12077,3000,12092,3000,0,0,27182,1
+3175,E1_ROTAR_ZAIRO,Rotar Zairo,Rotar Zairo,113,15900,1,190,220,10,1551,2216,95,34,109,54,60,50,84,30,10,12,2,0,44,0x2085,155,2416,2016,432,0,0,0,0,0,0,0,22046,50,7126,250,2312,1,0,0,0,0,601,500,912,200,910,200,0,0,0,0
+3176,E1_GREMLIN,Gremlin,Gremlin,118,20313,1,2008,1390,1,937,1276,76,25,141,75,48,61,126,37,10,12,2,6,47,0x2003885,140,432,540,432,0,0,0,0,0,0,0,20743,50,7340,500,938,500,719,50,603,1,0,0,0,0,0,0,0,0,0,0
+3177,E1_BEHOLDER,Beholder,Beholder,118,20313,1,2008,1390,1,937,1276,76,25,141,75,48,61,126,37,10,12,2,6,47,0x2000091,140,432,540,432,0,0,0,0,0,0,0,22046,50,576,500,605,50,996,50,985,1,603,1,0,0,0,0,0,0,0,0
+3178,E1_ACIDUS,Acidus,Acidus,130,48430,1,3088,2391,2,935,1284,101,90,109,78,50,55,108,55,10,12,2,9,47,0x3095,170,168,1008,300,0,0,0,0,0,0,0,15116,50,7938,100,1035,500,7448,200,0,0,0,0,0,0,0,0,0,0,0,0
+3179,E1_ACIDUS_,Acidus,Acidus,130,40718,1,2938,2031,2,1423,2016,98,47,106,110,61,53,133,53,10,12,2,9,44,0x3091,180,168,768,360,0,0,0,0,0,0,0,20743,50,1035,500,1036,500,7446,200,0,0,0,0,0,0,0,0,0,0,0,0
+3180,E1_G_S_NYDHOG,Wywern,Wywern,117,300000,0,0,0,2,1058,1529,60,60,1,30,30,136,123,30,10,12,2,9,87,0x3091,150,1596,1620,864,0,0,0,0,0,0,0,15116,50,6091,500,7444,1,985,10,0,0,0,0,0,0,0,0,0,0,0,0
+3181,E1_FELOCK,Captain Ferlock,Captain Ferlock,130,3000000,1,3088,2391,10,935,1284,101,90,109,78,50,55,108,55,10,12,2,9,47,0x6280081,170,168,1008,300,0,0,0,0,0,0,0,15117,100,20744,100,22047,100,12082,3000,12072,3000,12087,3000,12077,3000,12092,3000,0,0,27182,1
 //3182,E2_ROTAR_ZAIRO
 //3183,E2_GREMLIN
 //3184,E2_BEHOLDER
@@ -2348,12 +2348,12 @@
 //3188,E2_FELOCK
 //3189,WOLF_MOON
 3190,MM_SARAH,Sarah,Sarah Irene,160,100000000,1,0,0,12,1090,2755,276,255,43,161,6,188,225,136,10,12,0,0,20,0x87700A4,2000,500,500,0,0,0,0,0,0,0,0,15121,1000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4610,1
-3191,MM_M_GIGAN1,Gigantes,Gigantes,160,6653400,1,0,1,2,4635,4755,64,112,156,151,30,62,265,21,10,12,1,6,47,0x62D3885,250,500,500,600,0,0,0,0,0,0,0,15121,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-3192,MM_M_GIGAN2,Gigantes,Gigantes,160,9870000,1,0,0,2,5128,5217,89,175,212,138,43,21,227,15,10,12,1,6,47,0x62A3885,250,500,500,600,0,0,0,0,0,0,0,15121,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-3193,MM_M_GIGAN3,Ancient Medium Gigantes,Ancient Medium Gigantes,160,1126300,1,0,0,2,3967,4132,113,155,121,125,45,35,271,15,10,12,1,6,47,0x6283885,300,500,500,600,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-3194,MM_L_GIGAN1,Large Gigantes,Large Gigantes,160,2482000,1,0,0,2,4172,4254,55,177,135,135,12,72,220,91,10,12,2,6,47,0x62D3885,200,500,500,500,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
-3195,MM_L_GIGAN2,Large Gigantes,Large Gigantes,160,2784175,1,0,0,2,3641,3757,71,140,102,119,18,45,275,71,10,12,2,6,47,0x62A3885,200,500,500,500,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
-3196,MM_L_GIGAN3,Ancient Gigantes,Ancient Gigantes,160,12063464,1,0,0,2,8957,9018,48,190,203,141,1,66,355,103,10,12,2,6,47,0x6283885,330,800,800,500,0,0,0,0,0,0,0,6803,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
+3191,MM_M_GIGAN1,Gigantes,Gigantes,160,6653400,1,0,1,2,4635,4755,64,112,156,151,30,62,265,21,10,12,1,6,47,0x62D3885,250,500,500,600,0,0,0,0,0,0,0,15121,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27183,1
+3192,MM_M_GIGAN2,Gigantes,Gigantes,160,9870000,1,0,0,2,5128,5217,89,175,212,138,43,21,227,15,10,12,1,6,47,0x62A3885,250,500,500,600,0,0,0,0,0,0,0,15121,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27183,1
+3193,MM_M_GIGAN3,Ancient Medium Gigantes,Ancient Medium Gigantes,160,1126300,1,0,0,2,3967,4132,113,155,121,125,45,35,271,15,10,12,1,6,47,0x6283885,300,500,500,600,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27183,1
+3194,MM_L_GIGAN1,Large Gigantes,Large Gigantes,160,2482000,1,0,0,2,4172,4254,55,177,135,135,12,72,220,91,10,12,2,6,47,0x62D3885,200,500,500,500,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,27183,1
+3195,MM_L_GIGAN2,Large Gigantes,Large Gigantes,160,2784175,1,0,0,2,3641,3757,71,140,102,119,18,45,275,71,10,12,2,6,47,0x62A3885,200,500,500,500,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,27183,1
+3196,MM_L_GIGAN3,Ancient Gigantes,Ancient Gigantes,160,12063464,1,0,0,2,8957,9018,48,190,203,141,1,66,355,103,10,12,2,6,47,0x6283885,330,800,800,500,0,0,0,0,0,0,0,6803,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27183,1
 3197,MM_M_GARGOYLE,Gargoyle,Mutant Gargoyle,150,256780,1,0,0,9,712,801,124,43,147,110,66,57,191,70,10,12,1,6,64,0x2002085,200,1020,720,384,0,0,0,0,0,0,0,912,1940,1039,250,1746,3,0,0,2619,1,1769,1000,757,119,0,0,0,0,0,0
 3198,MM_M_GALION,Galion,Mutant Galion,150,293165,1,0,0,1,801,878,166,71,133,142,71,45,166,45,10,12,1,2,44,0x020108F,150,864,624,360,0,0,0,0,0,0,0,7564,1500,919,1500,996,5,2531,3,0,0,0,0,0,0,0,0,0,0,0,0
 3199,MM_M_MUTANT_DRAGON,Mutant Dragon,Wicked Mutant Dragon,150,324891,1,0,0,4,1176,1274,185,86,175,161,66,68,201,35,10,12,2,9,43,0x0203695,250,1280,1080,240,0,0,0,0,0,0,0,7054,2425,1035,250,1036,250,930,250,1559,50,7296,750,2527,25,0,0,0,0,0,0
@@ -2599,20 +2599,20 @@
 //3439,MIN_G_HIGH_ORC
 //3440,MIN_G_MEGALITH
 //3441,B_DRACULA
-//3442,FROZENWOLF
-//3443,TAFFY
-//3444,WATCHER
-//3445,P_ARCHER_SKELETON
-//3446,P_SKELETON
-//3447,P_SOLDIER_SKELETON
-//3448,P_AMDARAIS
-//3449,G_P_AMDARAIS
-//3450,BIJOU
-//3451,IMMOTAL_CORPS
-//3452,ZOMBIE_GUARD
+3442,FROZENWOLF,Frozenwolf,Frozen Wolf,140,80000,1,5000,5000,1,1040,1440,50,50,100,80,100,100,100,50,10,12,1,2,21,0x3885,200,1120,420,432,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6921,2000,4640,1
+3443,TAFFY,Taffy,Taffy,145,100000,1,6000,6000,1,1445,2045,125,47,100,80,100,100,100,50,10,12,1,2,22,0x91,200,1604,1344,2016,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6922,2000,4639,1
+3444,WATCHER,Watcher,Watcher,145,120000,1,7000,7000,6,1365,1925,125,47,100,80,100,100,80,50,10,12,0,0,24,0x3885,190,576,1344,480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6924,2000,4638,1
+3445,P_ARCHER_SKELETON,P Archer Skeleton,Enchanted Archer Skelet,114,10000,0,0,0,14,294,374,20,0,20,60,30,60,150,30,10,12,1,1,69,0x3885,300,1152,864,576,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,4633,1
+3446,P_SKELETON,P Skeleton,Enchanted Skeleton,114,10000,0,0,0,1,354,434,20,20,80,60,30,120,90,30,10,12,1,1,69,0x3885,250,1440,528,576,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,4446,1
+3447,P_SOLDIER_SKELETON,P Soldier Skeleton,Enchanted Soldier Skele,115,20000,0,0,0,1,395,475,20,20,120,60,30,60,90,30,10,12,1,1,69,0x3885,250,1440,576,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,4634,1
+3448,P_AMDARAIS,P Amdarais,Renovated Amdarais,99,10000000,0,0,0,2,889,1209,30,30,150,50,100,50,70,50,10,12,2,1,29,0x3885,200,1152,1536,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,4635,1
+3449,G_P_AMDARAIS,P Amdarais,Enhanced Amdarais,98,66666,0,0,0,2,758,1038,30,30,100,50,100,50,70,50,10,12,2,1,29,0x3885,200,1152,1536,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
+3450,BIJOU,Bijou,Bijou,115,10000000,0,66666,66666,3,1420,1997,20,200,150,40,50,150,150,50,10,12,2,1,89,0x6203885,150,2000,1536,480,0,0,0,0,0,0,0,6941,10000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4636,1
+3451,IMMOTAL_CORPS,Immotal Corps,Immotal Corps,158,198410,1,9575,7859,1,1449,2012,150,83,165,75,95,75,150,50,10,12,1,6,89,0x2003885,150,1500,600,500,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,4637,1
+3452,ZOMBIE_GUARD,Zombie Guard,Zombie Guard,145,124000,1,6887,4809,1,1000,1359,200,35,138,75,200,43,120,20,10,12,1,1,89,0x3885,400,768,2784,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,4641,1
 //3453,LOST_LAMB
-//3454,HEART_HUNTER_N
-//3455,GLASS_PLATE
+3454,HEART_HUNTER_N,Heart Hunter N,Suspicious Intruder,103,20714,1,1963,2001,1,701,982,49,28,36,53,32,22,98,5,10,12,1,7,47,0x3885,200,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
+3455,GLASS_PLATE,Glass Plate,Plate,1,1,0,0,0,0,0,0,100,99,0,0,0,0,0,0,7,12,0,0,20,0x170000,2000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
 //3456,WATERMELON_34
 //3457,WATERMELON_35
 //3458,WATERMELON_36
@@ -2644,10 +2644,10 @@
 //3484,AS_D_RAGGED_GOLEM
 //3485,AS_D_CURSED_SOLDIER
 //3486,E_WILD_RABBIT
-//3487,IMMORTAL_CORPS1
-//3488,IMMORTAL_CORPS2
-//3489,IMMORTAL_CORPS3
-//3490,IMMORTAL_CO_CMDER
+3487,IMMORTAL_CORPS1,Butcher Soldier,Butcher Soldier,115,90000,1,0,0,1,855,1175,50,30,100,90,70,50,150,50,10,12,0,6,89,0x3885,100,500,840,300,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,4637,1
+3488,IMMORTAL_CORPS2,Scythe Soldier,Scythe Soldier,115,120000,1,0,0,1,679,919,30,60,84,75,70,120,120,80,10,12,0,6,89,0x3885,150,1000,1100,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,4637,1
+3489,IMMORTAL_CORPS3,Bone Crash Soldier,Bone Crash Soldier,115,170000,0,0,0,2,955,1315,80,40,120,90,130,30,80,50,10,12,0,6,89,0x3885,200,1500,1500,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,4637,1
+3490,IMMORTAL_CO_CMDER,Immortal Commander,Immortal Commander,160,500000,1,25000,15000,3,1042,1398,200,120,170,80,100,85,160,90,10,12,1,6,89,0x2003885,150,1500,1344,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
 //3491,COELACANTH_TW
 //3492,E_WILD_MOBSTER
 //3493,SYS_MSG_J
@@ -3409,7 +3409,7 @@
 //20278,G_ILL_MEGALITH
 //20279,G_ILL_WOOTAN_SHOOTER
 //20280,G_ILL_WOOTAN_FIGHTER
-
+//20281,E_DANDY_STAR
 //20282,JP_MAZEMOB_51
 //20283,JP_MAZEMOB_52
 //20284,JP_MAZEMOB_53
@@ -3461,5 +3461,97 @@
 //20330,JP_MAZEMOB_99
 //20331,JP_MAZEMOB_100
 //20332,E_PECOPECO
-
+//20333,LAVA_GOLEM_MJ
+//20334,KAHO_MJ
+//20335,EXPLOSION_MJ
+//20336,DELETER1_MJ
+//20337,DELETER2_MJ
+//20338,NIGHTMARE_TERROR_MJ
+//20339,BLAZZER_MJ
+//20340,MD_EL_A17T
+//20341,MD_E_EA1L
+//20342,MD_E_EA2S
+//20343,MD_E_13EN0
+//20344,MD_VENOM_BUG
+//20345,MD_CONSTANT
+//20346,MD_MIGUEL
+//20347,MD_MIGUEL_G
+//20348,MD_A013_CAPUT
+//20349,MD_A013_DOLOR
+//20350,MD_A013_BELLARE
+//20351,MD_MANHOLE2
+//20352,MD_POMPOM
+//20353,MD_CROB
 //20354,E_FINE_DUST
+//20355,EP17_1_BELLARE1
+//20356,EP17_1_BELLARE2
+//20357,EP17_1_SANARE1
+//20358,EP17_1_SANARE2
+//20359,EP17_1_PLAGA1
+//20360,EP17_1_PLAGA2
+//20361,EP17_1_DOLOR1
+//20362,EP17_1_DOLOR2
+//20363,EP17_1_VENENUM1
+//20364,EP17_1_VENENUM2
+//20365,EP17_1_TWIN_CAPUT1
+//20366,EP17_1_TWIN_CAPUT2
+//20367,RAYDRIC_H
+//20368,RAYDRIC_ARCHER_H
+//20369,GARGOYLE_H
+//20370,STING_H
+//20371,RAGGED_ZOMBIE_H
+//20372,BLAZZER_H
+//20373,NIGHTMARE_TERROR_H
+//20374,DELETER1_H
+//20375,DELETER2_H
+//20376,EXPLOSION_H
+//20377,KAHO_H
+//20378,LAVA_GOLEM_H
+//20379,ICE_GHOST_H
+//20380,FLAME_GHOST_H
+//20381,EP17_1_R4885_BESTIA
+//20382,G_TWIN_CAPUT2
+//20383,E_WICKED_NYMPH
+//20384,E_WICKED_NYMPH_BOSS
+//20385,MD_GH_KING_SCHMIDT
+//20386,MD_GH_KING_SCHMIDT_N
+//20387,MD_GH_KING_SCHMIDT_H
+//20388,MD_GH_KHALITZBURG
+//20389,MD_GH_KHALITZBURG_H
+//20390,MD_GH_WHITEKNIGHT
+//20391,MD_GH_WHITEKNIGHT_H
+//20392,MD_GH_ALICE_G
+//20393,MD_GH_ROOT_G
+//20394,MD_GH_BLOODY_KNIGHT
+
+//20396,PORING_Z
+//20397,SAVAGE_BABE_Z
+//20398,CREAMY_Z
+//20399,POPORING_Z
+//20400,GOBLIN_Z
+//20401,FABRE_Z
+//20402,SPORE_Z
+//20403,STAINER_Z
+//20404,HORN_Z
+//20405,ELDER_WILOW_Z
+//20406,DROPS_Z
+//20407,DESERT_WOLF_B_Z
+//20408,PECOPECO_Z
+//20409,WOLF_Z
+//20410,PIERE_Z
+//20411,ALLIGATOR_Z
+//20412,GREEN_IGUANA_Z
+//20413,CHONCHON_Z
+//20414,THIEF_BUG_Z
+//20415,ORC_LADY_Z
+//20416,CARAMEL_Z
+//20417,YOYO_Z
+//20418,ARGOS_Z
+//20419,MUSPELLSKOLL_H
+//20420,WANDER_MAN_H
+//20421,BRINARANEA_H
+//20422,DARK_LORD_H
+//20423,BACSOJIN2
+//20424,MOONLIGHT2
+//20425,PHREEONI2
+//20426,MD_MANHOLE3

+ 11 - 24
db/re/mob_skill_db.txt

@@ -11224,28 +11224,15 @@
 3249,Exploration Rover T@NPC_GUIDEDATTACK,attack,172,5,1000,0,5000,no,target,always,0,,,,,,,
 3249,Exploration Rover T@AL_PNEUMA,attack,25,1,2000,0,5000,no,self,longrangeattacked,0,,,,,,,
 
-3253,Sys Msg@AL_HEAL,walk,28,11,10000,0,5000,no,friend,myhpltmaxrate,99,,,,,,,
-3253,Sys Msg@AL_HEAL,idle,28,11,10000,0,5000,yes,friend,myhpltmaxrate,99,,,,,,,
+3253,SYS_MSG@AL_HEAL,attack,28,10,500,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
+3253,SYS_MSG@AL_HEAL,chase,28,10,500,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
+3253,SYS_MSG@AL_HEAL,idle,28,10,500,500,5000,yes,friend,friendhpltmaxrate,50,,,,,,,
 
-3254,T_W_O@NPC_STUNATTACK,attack,179,5,500,0,5000,no,target,always,0,,,,,,,
-3254,T_W_O@AL_PNEUMA,chase,25,1,2000,0,5000,no,self,longrangeattacked,0,,,,,,,
-3254,T_W_O@NPC_CHANGEWIND,attack,165,1,10000,0,1200000,no,self,myhpltmaxrate,80,,,,,,,
-3254,T_W_O@NPC_WIDECONFUSE,chase,667,2,10000,0,10000,no,target,myhpltmaxrate,80,,,,,,,
-3254,T_W_O@NPC_CRITICALSLASH,any,170,1,1000,0,5000,no,target,always,0,,,,,,,
-3254,T_W_O@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,no,target,attackpcgt,1,,,,,,,
-3254,T_W_O@NPC_WIDECONFUSE,attack,667,2,10000,0,10000,yes,target,myhpltmaxrate,80,,,,,,,
-3254,T_W_O@NPC_WIDESLEEP,attack,668,1,10000,1000,20000,no,target,always,0,,,,,,,
-3254,T_W_O@AL_PNEUMA,attack,25,1,2000,0,6000,no,self,longrangeattacked,0,,,,,,,
-3254,T_W_O@MG_THUNDERSTORM,attack,21,20,2000,1000,5000,no,target,always,0,,,,,,,
-3254,T_W_O@SM_MAGNUM,attack,7,25,1500,0,3000,no,target,always,0,,,,,,,
-3254,T_W_O@SM_ENDURE,chase,8,1,5000,0,10000,yes,self,longrangeattacked,0,,,,,,,
-3254,T_W_O@NPC_CALLSLAVE,attack,352,1,10000,0,5000,no,self,onspawn,,3253,3253,,,,,
-3254,T_W_O@KN_BRANDISHSPEAR,any,57,10,2000,200,5000,no,target,always,0,,,,,,,
-3254,T_W_O@NPC_PULSESTRIKE,attack,661,5,10000,0,30000,no,target,myhpltmaxrate,80,,,,,,,
-3254,T_W_O@NPC_WIDESLEEP,chase,668,1,10000,1000,20000,no,target,always,0,,,,,,,
-3254,T_W_O@NPC_DARKBREATH,attack,202,5,10000,0,30000,no,target,always,0,,,,,,,
-3254,T_W_O@NPC_CALLSLAVE,attack,352,1,10000,0,5000,no,self,slavele,1,3253,3253,,,,,
-3254,T_W_O@SM_MAGNUM,chase,7,25,1500,0,3000,no,target,always,0,,,,,,,
-3254,T_W_O@NPC_SUMMONSLAVE,attack,196,5,10000,0,5000,no,randomtarget,always,,3253,3253,,,,,
-3254,T_W_O@NPC_PULSESTRIKE,chase,661,5,10000,0,30000,no,target,myhpltmaxrate,80,,,,,,,
-3254,T_W_O@SM_ENDURE,attack,8,1,5000,0,10000,no,target,longrangeattacked,0,,,,,,,
+3254,T_W_O@NPC_PIERCINGATT,attack,158,10,300,0,30000,no,target,always,0,,,,,,,
+3254,T_W_O@NPC_PIERCINGATT,chase,158,10,500,0,5000,no,target,always,0,,,,,,,
+3254,T_W_O@NPC_SILENCEATTACK,attack,178,5,750,250,10000,no,target,casttargeted,0,,,,,,6,
+3254,T_W_O@NPC_SILENCEATTACK,chase,178,5,750,250,3000,no,target,casttargeted,0,,,,,,6,
+3254,T_W_O@NPC_WIDESLEEP,attack,668,5,400,0,15000,no,self,always,0,,,,,,,
+3254,T_W_O@NPC_WIDESTONE,attack,666,5,600,0,30000,no,self,always,0,,,,,,,
+3254,T_W_O@NPC_WIDESOULDRAIN,attack,680,10,1000,0,60000,no,self,always,0,,,,,,,
+3254,T_W_O@NPC_CRITICALWOUND,attack,673,5,150,500,45000,no,target,always,,,,,,,,

+ 192 - 2
db/re/quest_db.txt

@@ -110,7 +110,7 @@
 // Find Professor Worm's Memory
 1214,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
-1216,0,0,0,0,0,0,0,2364,6522,3000,0,0,0,0,0,0,"Getting back Professor Worm's memory"
+1216,0,0,0,0,0,0,0,2364,6542,3000,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1217,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1218,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1219,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
@@ -121,7 +121,7 @@
 1224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1225,0,2367,15,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1226,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
-1227,0,0,0,0,0,0,0,2364,6522,3000,0,0,0,0,0,0,"Getting back Professor Worm's memory"
+1227,0,0,0,0,0,0,0,2364,6542,3000,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 1228,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Getting back Professor Worm's memory"
 
 // Academy 14.2
@@ -928,6 +928,76 @@
 5369,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Delivered the Message"
 5370,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Memory Record"
 
+// Banquet Quests
+5402,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Royal Richard"
+5403,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Royal Richard"
+// Todo : Quests by race / level
+5404,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Human"
+5405,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Animal"
+5406,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Insect"
+5407,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Fish"
+5408,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Plant"
+5409,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Devil"
+5410,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Angel"
+5411,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Immortal"
+5412,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Intangible"
+5413,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Warrior Discipline-Dragon"
+5414,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Warrior Discipline"
+5415,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector"
+5416,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector A"
+5417,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector B"
+5418,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector C"
+5419,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector D"
+5420,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector E"
+5421,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector F"
+5422,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector G"
+5423,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Restricted Sector H"
+5424,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Complete]Restricted Sector"
+5425,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To My Beloved Fellow"
+5426,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]To My Beloved Fellow"
+5427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]To My Beloved Fellow"
+5428,0,0,0,0,0,0,0,3444,6924,2000,0,0,0,0,0,0,"Lowly Standards"
+5429,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Lowly Standards"
+5430,0,0,0,0,0,0,0,3444,6924,2000,0,0,0,0,0,0,"[Repeat]Lowly Standards"
+5431,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Clean Life"
+5432,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Cleaning is complete."
+5433,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Clean Life"
+5434,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Clean Life"
+5435,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Cleaning is complete."
+5436,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Finding Lights"
+5437,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Finding Lights"
+5438,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Finding Lights"
+5439,0,0,0,0,0,0,0,3442,6921,2000,0,0,0,0,0,0,"Refreshing Prison Life"
+5440,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Refreshing Prison Life"
+5441,0,0,0,0,0,0,0,3442,6921,2000,0,0,0,0,0,0,"[Repeat]Refreshing Prison Life"
+5442,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Suppressing Darkness"
+5443,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Suppressing Darkness"
+5444,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Repeat]Suppressing Darkness"
+5445,0,0,0,0,0,0,0,3443,6922,2000,0,0,0,0,0,0,"Bothersome Little Thing"
+5446,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Bothersome Little Thing"
+5447,0,0,0,0,0,0,0,3443,6922,2000,0,0,0,0,0,0,"[Repeat]Bothersome Little Thing"
+5448,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Request from Chief Guard"
+5449,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Request from Chief Guard"
+5450,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Request from Chief Guard"
+5451,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Request from Chief Guard"
+5452,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"[Stand by]Request from Chief Guard"
+5453,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ungrateful(1)"
+5454,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ungrateful(2)"
+5455,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ungrateful(3)"
+5456,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ungrateful(4)"
+5457,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Find My Sister(1)"
+5458,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Find My Sister(2)"
+5459,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Find My Sister(3)"
+5460,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Blatant Bluff(1)"
+5461,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Blatant Bluff(2)"
+5462,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Blatant Bluff(3)"
+5463,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(1)"
+5464,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(2)"
+5465,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(3)"
+5466,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(4)"
+5467,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(5)"
+5468,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Mad Love for Wife(6)"
+
 6000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Job Change to Taekwon"
 6001,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Job Change to Taekwon"
 6002,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Job Change to Taekwon"
@@ -1549,6 +1619,33 @@
 7655,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Play Laboratories Memory Records"
 7656,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Invitation of Rekenber"
 
+// Banquet Quests
+7681,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Invitation to Royal Banquet"
+7682,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Socializing Starts from an Eye Contact"
+7683,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Visit the Heines"
+7684,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Visit the Nerius"
+7685,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"What Is the Next Thing on the Schedule ?"
+7686,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Nyhill and Skia"
+7687,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Participating in the Banquet"
+7688,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Suspicious Movement"
+7689,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Find Nyhill"
+7690,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Where Is Nyhill?"
+7691,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Waiting for the Ritual"
+7692,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Attend the Ritual"
+7693,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Surprise Attack"
+7694,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I'd Like to See that Too"
+7695,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Escape from the Past Memories of the Royal Family"
+7696,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"What's Next?"
+7697,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Invitation from the Nerius"
+7698,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Heine Now"
+7699,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To the Past"
+7700,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Once More!"
+7701,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Lost Imir Heart"
+7702,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Prontera at the Time"
+7703,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Who Knows the Truth"
+7705,0,3450,1,0,0,0,0,0,0,0,0,0,0,0,0,0,"Hope You Cannot Let Go"
+7706,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Nillem Is Not Almighty"
+
 // Lasagna Quests
 7711,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Beginning"
 7712,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Where am I? Who am I??"
@@ -2486,6 +2583,46 @@
 11388,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Vestige"
 11389,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Vestige"
 
+// Banquet Quests
+11394,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Call of the Royal Head Chef"
+11395,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11396,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11397,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11398,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11399,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11400,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11401,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11402,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11403,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11404,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11405,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11406,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11407,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11408,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11409,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11410,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11411,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11412,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"The Geoborgs"
+11413,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11414,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11415,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11416,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11417,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11418,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11419,0,0,0,0,0,0,0,3455,6935,3000,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11420,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Why Should I Prepare for the Banquets?"
+11421,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Banquet: Unexpected Sauce"
+11422,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Complete Today's Sauce"
+11423,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Banquet: Griffin Barbecue"
+11424,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Banquet: Griffin Barbecue"
+11425,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Complete Today's Grilled Griffin"
+11426,0,0,0,0,0,0,0,3455,6935,3000,0,0,0,0,0,0,"Banquet: Washing 15 Dishes"
+11427,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Complete Today's Dish Collecting"
+11428,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ingredient for the Sauce"
+11429,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ingredient for the Sauce"
+11430,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ingredient for the Sauce"
+11431,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Ingredient for the Sauce"
+
 // Lasagna Quests
 11435,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Vigilante Corp"
 11436,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Vigilante Corp"
@@ -2846,6 +2983,9 @@
 
 12363,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"?????? ?? ??"
 
+// Banquet Quests
+12369,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Secret Business Relation"
+
 13000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"RWC2011Card Gathering"
 13001,82800,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"RWC2011Card Gathering - Hold"
 
@@ -3121,6 +3261,56 @@
 //14290,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,""
 //14291,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,""
 
+// Banquet Quests
+14469,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Look around the Walther Family"
+14470,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"In Search of the Guardian Knight"
+14471,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To the Royal Prison"
+14472,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Gourmet Bigfoot"
+14473,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Veins"
+14474,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Report to Isenhonor"
+14475,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Jurgen"
+14476,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Levuiere and His Wife"
+14477,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"What Is Going on?"
+14478,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Searching for the Clue"
+14479,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Clean-up out of Apology"
+14480,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Conquer the Grease"
+14481,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Conquer the Mold"
+14482,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Conquer the Dirt of Devil"
+14483,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Report the Completion of the Clean-up"
+14484,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"There Was a Furniture Delivery Man"
+14485,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Am Upset"
+14486,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Heard the Story"
+14487,0,0,0,0,0,0,0,1148,6927,3000,0,0,0,0,0,0,"Please Find the Token of Memory"
+14488,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Please Deliver My Love"
+14489,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Have to Turn It Down"
+14490,0,0,0,0,0,0,0,1148,6927,3000,0,0,0,0,0,0,"My Love Once More"
+14491,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Have to Turn It Down Again"
+14492,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"There Is a Silver Lining"
+14493,0,0,0,0,0,0,0,1148,6927,3000,0,0,0,0,0,0,"Today I Feel"
+14494,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Have to Turn It Down Again"
+14495,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Wolf"
+14496,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Isaac"
+14497,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Delivery for Wolf"
+14498,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Which Rumor"
+14499,0,1310,33,0,0,0,0,0,0,0,0,0,0,0,0,0,"Prove Yourself"
+14500,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Complete checking out the book"
+14501,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Report to Wolf"
+14502,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Isaac"
+14503,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Report to Wolf"
+14504,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"In Search of Helmut"
+14505,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"I Won't go Back"
+14506,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Things Turned out This Way"
+14507,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"To Maximilian"
+14508,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Jewel and Cloth"
+14509,04:00,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Still Making It"
+14510,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Pink Petal-like Dress"
+14511,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Beautiful Flower Decoration"
+14512,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Dress of the Night Sky"
+14513,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Shawl of the Blazing Sun"
+14514,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Step of the Fairy"
+14515,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Sparkling Star"
+14516,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Suspicious Shadow"
+
 // Lasagna Quests
 14531,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Everything about Con-Chliina"
 14532,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"Greetings to Captain Gamberi"

+ 4 - 0
db/re/skill_cast_db.txt

@@ -1201,6 +1201,10 @@
 2057,4000,0,0,20000:30000:40000:50000:60000,0,15000,-1
 //-- AB_OFFERTORIUM
 5011,5000:4000:3000:2000:1000,500,0,90000,0,0,-1
+//-- AB_VITUPERATUM
+5072,1000,1000,0,600000,0,5000,3000:2500:2000:1500:1000
+//-- AB_CONVENIO
+5073,2000,1000,0,0,0,5000,2000
 //==========================================
 
 //===== Warlock ============================

+ 90 - 87
db/re/skill_db.txt

@@ -54,26 +54,28 @@
 // 14 attack type (none, weapon, magic, misc)
 // 15 Blowcount (amount of tiles skill knockbacks)
 // 16 inf3 (skill information 3):
-//    0x00001 - skill ignores land protector
-//    0x00002 - free
-//    0x00004 - usable skills while hiding
-//    0x00008 - skill that can be use while in dancing state
-//    0x00010 - skill that could hit emperium
-//    0x00020 - skill ignores SC_STASIS
-//    0x00040 - skill blocked by kagehumi
-//    0x00080 - skill range affected by AC_VULTURE
-//    0x00100 - skill range affected by GS_SNAKEEYE
-//    0x00200 - skill range affected by NJ_SHADOWJUMP
-//    0x00400 - skill range affected by WL_RADIUS
-//    0x00800 - skill range affected by RA_RESEARCHTRAP
-//    0x01000 - skill that does not affect user that has NC_HOVERING active
-//    0x02000 - skill that can be using while riding warg
-//    0x04000 - skill that can't be used while in mado
-//    0x08000 - skill that can be used to target while under SC__MANHOLE effect
-//    0x10000 - skill that affects hidden targets
-//    0x20000 - skill that affects SC_GLOOMYDAY_SK
-//    0x40000 - skill that is affected by SC_DANCEWITHWUG
-//    0x80000 - skill blocked by RA_WUGBITE
+//    0x000001 - skill ignores land protector
+//    0x000002 - free
+//    0x000004 - usable skills while hiding
+//    0x000008 - skill that can be use while in dancing state
+//    0x000010 - skill that could hit emperium
+//    0x000020 - skill ignores SC_STASIS
+//    0x000040 - skill blocked by kagehumi
+//    0x000080 - skill range affected by AC_VULTURE
+//    0x000100 - skill range affected by GS_SNAKEEYE
+//    0x000200 - skill range affected by NJ_SHADOWJUMP
+//    0x000400 - skill range affected by WL_RADIUS
+//    0x000800 - skill range affected by RA_RESEARCHTRAP
+//    0x001000 - skill that does not affect user that has NC_HOVERING active
+//    0x002000 - skill that can be using while riding warg
+//    0x004000 - skill that can be used while on Madogear
+//    0x008000 - skill that can be used to target while under SC__MANHOLE effect
+//    0x010000 - skill that affects hidden targets
+//    0x020000 - skill that affects SC_GLOOMYDAY_SK
+//    0x040000 - skill that is affected by SC_DANCEWITHWUG
+//    0x080000 - skill blocked by RA_WUGBITE
+//    0x100000 - skill is not blocked by SC_AUTOGUARD (physical-skill only)
+//    0x200000 - skill is not blocked by SC_UTSUSEMI or SC_BUNSINJYUTSU (physical-skill only)
 // 17 Name
 // 18 Description
 1,0,0,0,0,0,0,9,0,no,0,0,0,none,0,0x0,		NV_BASIC,Basic Skill
@@ -91,7 +93,7 @@
 //****
 // Mage
 9,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		MG_SRECOVERY,Increase SP Recovery
-10,0,6,4,3,0x3,3,1,1,yes,0,0,0,magic,0,0x4000,		MG_SIGHT,Sight
+10,0,6,4,3,0x3,3,1,1,yes,0,0,0,magic,0,0x0,		MG_SIGHT,Sight
 11,9,6,1,8,0x6,1,10,1,yes,0,0x42000,0,magic,0,0x0,		MG_NAPALMBEAT,Napalm Beat
 12,9,8,2,8,0x1,0,10,1,yes,0,0,0,magic,0,0x0,		MG_SAFETYWALL,Safety Wall
 13,9,8,1,8,0,0,10,1:1:2:2:3:3:4:4:5:5,yes,0,0x2000,0,magic,0,0x0,		MG_SOULSTRIKE,Soul Strike
@@ -110,7 +112,7 @@
 23,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		AL_DEMONBANE,Demon Bane
 24,0,6,4,6,0x3,2,1,1,yes,0,0x0,0,magic,0,0x0,		AL_RUWACH,Ruwach
 25,9,6,2,0,0x1,0,1,1,yes,0,0,0,magic,0,0x0,		AL_PNEUMA,Pneuma
-26,0,6,4,0,0x1,0,2,1,yes,0,0,0,magic,0,0x40,		AL_TELEPORT,Teleport
+26,0,6,4,0,0x1,0,2,1,yes,0,0,0,magic,0,0x4040,		AL_TELEPORT,Teleport
 27,9,6,2,0,0x1,0,4,1,yes,0,0,3,magic,0,0x0,		AL_WARP,Warp Portal
 28,9,6,16,6,0x21,0,10,1,yes,0,0x2000,0,magic,0,0x0,	AL_HEAL,Heal
 29,9,6,16,0,0x1,0,10,1,yes,0,0,0,magic,0,0x0,	AL_INCAGI,Increase AGI
@@ -144,7 +146,7 @@
 48,-1,8,0,-1,0,0,10,2,no,0,0,0,weapon,0,0x0,		TF_DOUBLE,Double Attack
 49,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		TF_MISS,Improve Dodge
 50,1,6,1,0,1,0,10,1,no,0,0,0,weapon,0,0x0,		TF_STEAL,Steal
-51,1,6,4,0,1,0,10,1,no,0,0,0,none,0,0x84044,		TF_HIDING,Hiding
+51,1,6,4,0,1,0,10,1,no,0,0,0,none,0,0x80044,		TF_HIDING,Hiding
 52,-2,6,1,5,0,0,10,1,no,0,0,0,weapon,0,0x0,		TF_POISON,Envenom
 53,9,6,16,5,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		TF_DETOXIFY,Detoxify
 //
@@ -213,13 +215,13 @@
 105,0,0,0,0,0,0,1,0,no,0,0,0,weapon,0,0x0,		BS_HILTBINDING,Hilt Binding
 106,0,0,0,0,0,0,1,0,no,0,0,0,weapon,0,0x0,		BS_FINDINGORE,Ore Discovery
 107,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		BS_WEAPONRESEARCH,Weaponry Research
-108,2,6,16,0,0x1,0,1,1,yes,0,0,0,weapon,0,0x4000,	BS_REPAIRWEAPON,Weapon Repair
+108,2,6,16,0,0x1,0,1,1,yes,0,0,0,weapon,0,0x0,	BS_REPAIRWEAPON,Weapon Repair
 109,0,0,0,0,0,0,5,0,no,0,0,0,weapon,0,0x0,		BS_SKINTEMPER,Skin Tempering
-110,1,6,2,0,0x3,2:2:2:2:2:12,5,1,no,0,0,0,weapon,0,0x4000,	BS_HAMMERFALL,Hammer Fall
-111,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_ADRENALINE,Adrenaline Rush
-112,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_WEAPONPERFECT,Weapon Perfection
-113,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x4000,	BS_OVERTHRUST,Power-Thrust
-114,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x4000,		BS_MAXIMIZE,Maximize Power
+110,1,6,2,0,0x3,2:2:2:2:2:12,5,1,no,0,0,0,weapon,0,0x0,	BS_HAMMERFALL,Hammer Fall
+111,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_ADRENALINE,Adrenaline Rush
+112,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_WEAPONPERFECT,Weapon Perfection
+113,0,6,4,0,0x3,-1,5,1,no,0,0,0,weapon,0,0x0,	BS_OVERTHRUST,Power-Thrust
+114,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		BS_MAXIMIZE,Maximize Power
 
 //****
 // Hunter
@@ -230,8 +232,8 @@
 119,3,6,2,0,0x3,2,5,1,no,0,0x80,0,misc,0,0x3000,	HT_SANDMAN,Sandman
 120,3,6,2,0,0x3,1,5,1,no,0,0x80,0,misc,0,0x3000,	HT_FLASHER,Flasher
 121,3,6,2,1,0x42,1,5,1,no,0,0x80,0,weapon,0,0x3800,	HT_FREEZINGTRAP,Freezing Trap
-122,3,6,2,4,0xC2,1,5,1,no,0,0x80,0,misc,0,0x3800,	HT_BLASTMINE,Blast Mine
-123,3,6,2,3,0xC2,2,5,1,no,0,0x40080,0,misc,0,0x3800,	HT_CLAYMORETRAP,Claymore Trap
+122,3,6,2,4,0xC6,1,5,1,no,0,0x80,0,misc,0,0x3800,	HT_BLASTMINE,Blast Mine
+123,3,6,2,3,0xC6,2,5,1,no,0,0x40080,0,misc,0,0x3800,	HT_CLAYMORETRAP,Claymore Trap
 124,2,6,32,0,0x1,0,1,1,no,0,0x40000,0,misc,0,0x0,		HT_REMOVETRAP,Remove Trap
 125,3,6,2,0,0x1,0,1,1,no,0,0x80,0,misc,0,0x2000,		HT_TALKIEBOX,Talkie Box
 126,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		HT_BEASTBANE,Beast Bane
@@ -334,7 +336,7 @@
 211,1,6,1,0,0x1,0,10,1,no,0,0,0,weapon,0,0x0,	RG_STEALCOIN,Mug
 212,-1,6,1,-1,0x40,0,10,1,no,0,0,0,weapon,0,0x4,	RG_BACKSTAP,Back Stab
 213,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		RG_TUNNELDRIVE,Stalk
-214,0,6,4,-1,0x2,3,5,1,no,0,0x40000,0,weapon,0,0x4,	RG_RAID,Sightless Mind
+214,0,6,4,-1,0x2,4,5,1,no,0,0x40000,0,weapon,0,0x4,	RG_RAID,Sightless Mind
 215,1,6,1,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		RG_STRIPWEAPON,Divest Weapon
 216,1,6,1,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		RG_STRIPSHIELD,Divest Shield
 217,1,6,1,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		RG_STRIPARMOR,Divest Armor
@@ -352,8 +354,8 @@
 226,0,0,0,0,0,0,10,0,no,0,0,0,weapon,0,0x0,		AM_AXEMASTERY,Axe Mastery
 227,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		AM_LEARNINGPOTION,Potion Research
 228,0,6,4,0,0x1,0,10,0,no,0,0,0,none,0,0x0,		AM_PHARMACY,Prepare Potion
-229,9,6,2,3,0x9,0,5,1,yes,0,0,0,weapon,0,0x0,	AM_DEMONSTRATION,Bomb
-230,9,6,1,0,0x48,0,5,1,yes,0,0,0,weapon,0,0x0,	AM_ACIDTERROR,Acid Terror
+229,9,6,2,3,0x9,0,5,1,yes,0,0,0,weapon,0,0x300000,	AM_DEMONSTRATION,Bomb
+230,9,6,1,0,0x48,0,5,1,yes,0,0,0,weapon,0,0x300000,	AM_ACIDTERROR,Acid Terror
 231,9,6,16,0,0x1,0,5,1,yes,0,0xC00,0,none,0,0x0,	AM_POTIONPITCHER,Aid Potion
 232,4,6,2,0,0x1,0,5,1,no,0,0,5,none,0,0x0,		AM_CANNIBALIZE,Summon Flora
 233,1,6,2,0,0x1,0,5,1,no,0,0,3,none,0,0x0,		AM_SPHEREMINE,Summon Marine Sphere
@@ -530,7 +532,7 @@
 //****
 // Paladin
 367,9,8,1,0,0xD0,0,5,1,no,0,0x18000,0,misc,0,0x0,		PA_PRESSURE,Gloria Domini
-368,0,6,4,0,0x69,0,5,1,yes,0,0,0,weapon,0,0x0,	PA_SACRIFICE, Martyr's Reckoning
+368,0,6,4,0,0x69,0,5,1,yes,0,0,0,weapon,0,0x300000,	PA_SACRIFICE, Martyr's Reckoning
 369,0,6,4,0,0x41,0,10,1,yes,0,0,0,misc,0,0x0,	PA_GOSPEL,Battle Chant
 
 //****
@@ -561,10 +563,10 @@
 
 //****
 // Whitesmith
-384,0,0,4,0,0x1,0,10,1,yes,0,0,0,weapon,0,0x4000,	WS_MELTDOWN,Shattering Strike
+384,0,0,4,0,0x1,0,10,1,yes,0,0,0,weapon,0,0x0,	WS_MELTDOWN,Shattering Strike
 385,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,	WS_CREATECOIN,Create Coins
 386,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,	WS_CREATENUGGET,Create Nuggets
-387,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x4000,		WS_CARTBOOST,Cart Boost
+387,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		WS_CARTBOOST,Cart Boost
 388,9,6,2,0,0x1,0,5,1,no,0,0,0,none,0,0x0,		WS_SYSTEMCREATE,Auto Attack System
 
 //****
@@ -607,7 +609,7 @@
 
 //****
 // Assassin Cross
-406,0,6,4,-1,0xA,2,10,1,no,0,0x40000,0,weapon,0,0x0,	ASC_METEORASSAULT,Meteor Assault
+406,0,6,4,-1,0xA,2,10,1,no,0,0x40000,0,weapon,0,0x300000,	ASC_METEORASSAULT,Meteor Assault
 407,0,6,4,0,0x1,0,1,0,no,0,0,0,none,0,0x0,		ASC_CDP,Create Deadly Poison
 
 //****
@@ -678,7 +680,7 @@
 
 //****
 // Blacksmith
-459,0,6,4,0,0x3,-1,1,1,no,0,0x8,0,weapon,0,0x4000,		BS_ADRENALINE2,Advanced Adrenaline Rush
+459,0,6,4,0,0x3,-1,1,1,no,0,0x8,0,weapon,0,0x0,		BS_ADRENALINE2,Advanced Adrenaline Rush
 
 //****
 // Soul Linker
@@ -702,16 +704,16 @@
 474,0,0,4,0,0x1,0,10,1,no,0,0x2,0,none,0,0x0,	NPC_EMOTION_ON,Emotion ON
 475,0,0,4,0,0x1,0,1,1,yes,0,0,0,none,0,0x0,		ST_PRESERVE,Preserve
 476,1,6,1,0,0x1,0,5,1,yes,0,0,0,weapon,0,0x0,	ST_FULLSTRIP,Divest All
-477,0,6,4,0,0x1,0,10,1,no,0,0,0,weapon,0,0x4000,	WS_WEAPONREFINE,Upgrade Weapon
+477,0,6,4,0,0x1,0,10,1,no,0,0,0,weapon,0,0x0,	WS_WEAPONREFINE,Upgrade Weapon
 478,3,6,2,0,0x3,3,10,1,no,0,0,0,none,0,0x0,		CR_SLIMPITCHER,Aid Condensed Potion
 479,1,6,16,0,0x1,0,5,1,yes,0,0,0,weapon,0,0x0,	CR_FULLPROTECTION,Full Protection
-480,5,8,1,-1,0,0,5,5,no,0,0,0,weapon,0,0x20000,		PA_SHIELDCHAIN,Shield Chain
+480,4,8,1,-1,0,0,5,5,no,0,0,0,weapon,0,0x20000,		PA_SHIELDCHAIN,Shield Chain
 481,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		HP_MANARECHARGE,Mana Recharge
 482,0,6,4,0,0x1,0,5,1,no,0,0,0,magic,0,0x0,		PF_DOUBLECASTING,Double Casting
 483,18,6,2,0,0x1,1:2:3:4:5,1,1,no,0,0,0,none,0,0x0,	HW_GANBANTEIN,Ganbantein
 484,18,6,2,2,0xD1,0,5,1,yes,0,0x18000,0,misc,0,0x11010,		HW_GRAVITATION,Gravitation Field
-485,-2,6,1,-1,0x0,0,10,1,no,0,0,0,weapon,0,0x4000,	WS_CARTTERMINATION,Cart Termination
-486,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x4000,		WS_OVERTHRUSTMAX,Maximum Power Thrust
+485,-2,6,1,-1,0x0,0,10,1,no,0,0,0,weapon,0,0x0,	WS_CARTTERMINATION,Cart Termination
+486,0,6,4,0,0x1,0,5,1,no,0,0,0,weapon,0,0x0,		WS_OVERTHRUSTMAX,Maximum Power Thrust
 487,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x8,		CG_LONGINGFREEDOM,Longing for Freedom
 488,0,6,4,0,0x1,1,5,1,no,0,0x20,0,misc,0,0x1,	CG_HERMODE,Wand of Hermode
 489,9,6,1,0,0x41,0,5,1,no,0,0,0,misc,0,0x0,		CG_TAROTCARD,Tarot Card of Fate
@@ -731,7 +733,7 @@
 500,0,6,4,0,0x41,0,5,1,no,0,0,0,misc,0,0x0,		GS_GLITTERING,Flip the Coin
 501,9,6,1,-1,0x50,0,1,1,no,0,0,0,misc,0,0x0,		GS_FLING,Fling
 502,-9,8,1,-1,0,0,1,3,no,0,0,0,weapon,0,0x0,		GS_TRIPLEACTION,Triple Action
-503,-9,6,1,-1,0x8,0,1,1,no,0,0,0,weapon,0,0x0,	GS_BULLSEYE,Bulls Eye
+503,-9,6,1,-1,0x8,0,1,1,no,0,0,0,weapon,0,0x300000,	GS_BULLSEYE,Bulls Eye
 504,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_MADNESSCANCEL,Madness Canceller
 505,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_ADJUSTMENT,AdJustment
 506,0,6,4,0,0x1,0,1,1,no,0,0,0,weapon,0,0x0,		GS_INCREASING,Increasing Accuracy
@@ -905,7 +907,7 @@
 1001,14,6,1,-1,0,0,1,1,no,0,0x1,0,weapon,0,0x0,	KN_CHARGEATK,Charge Attack
 1002,0,6,4,0,0x1,0,1,0,no,0,0x1,0,weapon,2,0x0,	CR_SHRINK,Shrink
 1003,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x0,	AS_SONICACCEL,Sonic Acceleration
-1004,9,8,1,0,0x8,0,1,1,no,0,0x1,0,weapon,0,0x0,	AS_VENOMKNIFE,Throw Venom Knife
+1004,9,8,1,0,0x8,0,1,1,no,0,0x1,0,weapon,0,0x300000,	AS_VENOMKNIFE,Throw Venom Knife
 1005,1,6,1,0,0x1,0,1,1,no,0,0x1,0,weapon,0,0x0,	RG_CLOSECONFINE,Close Confine
 1006,0,6,4,3,0,1,1,1,yes,0,0x40001,0,magic,3,0x0,	WZ_SIGHTBLASTER,Sight Blaster
 1007,0,6,4,0,0x1,0,1,0,no,0,0x1,0,none,0,0x0,	SA_CREATECON,Create Elemental Converter
@@ -913,8 +915,8 @@
 1009,-9,6,1,-1,0,0,1,1,no,0,0x1,0,weapon,3,0x0,	HT_PHANTASMIC,Phantasmic Arrow
 1010,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0,	BA_PANGVOICE,Pang Voice
 1011,9,6,1,0,0x1,0,1,0,no,0,0x1,0,misc,0,0x0,	DC_WINKCHARM,Wink of Charm
-1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x4000,	BS_UNFAIRLYTRICK,Unfair Trick
-1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x2000,	BS_GREED,Greed
+1012,0,0,0,0,0,0,1,0,no,0,0x1,0,weapon,0,0x0,	BS_UNFAIRLYTRICK,Unfair Trick
+1013,0,6,4,0,0x3,2,1,0,no,0,0x1,0,weapon,0,0x6000,	BS_GREED,Greed
 1014,0,6,4,6,0x3,14,1,0,yes,0,0x1,0,magic,0,0x0,	PR_REDEMPTIO,Redemptio
 1015,9,6,16,0,0x1,0,1,1,no,0,0x401,0,weapon,0,0x0,	MO_KITRANSLATION,Ki Translation
 1016,-1,6,1,-1,0x2,1,1,1,no,0,0x1,0,weapon,5,0x0,	MO_BALKYOUNG,Ki Explosion
@@ -1005,7 +1007,7 @@
 // AB Arch Bishop
 2038,11,8,1,6,0x2,1,5,-3,yes,0,0,0,magic,0,0x0,	AB_JUDEX,Judex
 2039,0,6,4,0,0x1,0,1,1,yes,0,0,0,magic,0,0x0,	AB_ANCILLA,Ancilla
-2040,11,8,1,6,0,0,10,-10,yes,0,0,0,magic,0,0x0,	AB_ADORAMUS,Adoramus
+2040,11,8,1,6,0x2,1:1:1:1:1:1:2:2:2:2,10,-10,yes,0,0,0,magic,0,0x0,	AB_ADORAMUS,Adoramus
 2041,0,6,4,0,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CLEMENTIA,Crementia
 2042,0,6,4,0,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CANTO,Canto Candidus
 2043,0,6,4,6,0x3,3:7:15,3,1,yes,0,0,0,magic,0,0x0,	AB_CHEAL,Coluceo Heal
@@ -1014,15 +1016,15 @@
 2046,0,6,4,6,0x3,15,10,1,yes,0,0,0,magic,0,0x0,	AB_ORATIO,Oratio
 2047,0,6,4,6,0x3,15,4,1,yes,0,0,0,magic,0,0x0,	AB_LAUDAAGNUS,Lauda Agnus
 2048,0,6,4,6,0x3,15,4,1,yes,0,0,0,magic,0,0x0,	AB_LAUDARAMUS,Lauda Ramus
-2049,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		AB_EUCHARISTICA,Eucharistica
-2050,11,6,16,6,0x1,0,1,1,yes,0,0,0,magic,0,0x0,	AB_RENOVATIO,Renovatio
-2051,11,6,16,6,0x21,0,5,1,yes,0,0,0,magic,0,0x0,	AB_HIGHNESSHEAL,Highness Heal //CHECK Info shows this has magic attack.
+2049,0,0,0,0,0,0,0,0,no,0,0,0,none,0,0x0,		AB_EUCHARISTICA,Eucharistica // Removed on kRO
+2050,11,6,4,6,0x1,15,1,1,yes,0,0,0,magic,0,0x0,	AB_RENOVATIO,Renovatio
+2051,11,6,16,6,0x21,0,5,1,yes,0,0,0,magic,0,0x0,	AB_HIGHNESSHEAL,Highness Heal
 2052,11,6,1,0,0x1,0,5,1,yes,0,0x400,0,magic,0,0x10020,	AB_CLEARANCE,Clearance
-2053,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_EXPIATIO,Expiatio //CHECK Does this also give the buff to party members?
-2054,0,6,4,6,0x1,0,10,1,yes,0,0,0,none,0,0x0,	AB_DUPLELIGHT,Duple Light //CHECK Had issues adding a skill level check to make the % go higher with the skills level. Will do later.
+2053,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_EXPIATIO,Expiatio
+2054,0,6,4,6,0x1,0,10,1,yes,0,0,0,none,0,0x0,	AB_DUPLELIGHT,Duple Light
 2055,-1,6,1,-1,0,0,10,1,no,0,0,0,weapon,0,0x0,	AB_DUPLELIGHT_MELEE,Duple Light Melee
 2056,-1,6,1,0,0,0,10,1,no,0,0,0,magic,0,0x0,	AB_DUPLELIGHT_MAGIC,Duple Light Magic
-2057,0,6,4,6,0x3,4:5:6:7:8,5,1,yes,0,0,0,magic,0,0x0,	AB_SILENTIUM,Silentium //CHECk Marked magic attack as well. Hmmmm....
+2057,0,6,4,6,0x3,4:5:6:7:8,5,1,yes,0,0,0,magic,0,0x0,	AB_SILENTIUM,Silentium
 
 2515,11,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	AB_SECRAMENT,Secrament
 
@@ -1038,8 +1040,8 @@
 2240,0,6,4,0,0,0,1,1,no,0,0,0,none,0,0x0,		RA_WUGMASTERY,Warg Mastery
 2241,0,6,4,0,0,0,3,1,no,0,0,0,none,0,0x2000,		RA_WUGRIDER,Warg Rider
 2242,0,6,4,-1,0x42,1,1,1,no,0,0,0,weapon,0,0x42000,	RA_WUGDASH,Warg Dash
-2243,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x42000,	RA_WUGSTRIKE,Warg Strike
-2244,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x40080,	RA_WUGBITE,Warg Bite
+2243,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x342000,	RA_WUGSTRIKE,Warg Strike
+2244,9,6,1,0,0x98,0,5,1,no,0,0,0,weapon,0,0x340080,	RA_WUGBITE,Warg Bite
 2245,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		RA_TOOTHOFWUG,Tooth of Warg
 2246,0,6,4,0,0x2,3:4:5:6:7,5,1,no,0,0x40000,0,weapon,0,0x0,	RA_SENSITIVEKEEN,Sensitive Keen
 2247,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x80040,		RA_CAMOUFLAGE,Camouflage
@@ -1054,34 +1056,34 @@
 //****
 // NC Mechanic
 2255,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		NC_MADOLICENCE,Mado License
-2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0,	NC_BOOSTKNUCKLE,Boost Knuckle
-2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x0,	NC_PILEBUNKER,Pile Bunker
-2258,13,6,1,-1,0x2,1,3,1,no,0,0x40000,0,weapon,0,0x0,	NC_VULCANARM,Vulcan Arm
-2259,5,6,1,3,0,1,3,1,no,0,0,5,weapon,0,0x0,		NC_FLAMELAUNCHER,Flame Launcher
-2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0x40000,0,weapon,0,0x0,	NC_COLDSLOWER,Cold Slower
-2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x0,	NC_ARMSCANNON,Arm Cannon
-2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,		NC_ACCELERATION,Acceleration
-2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_HOVERING,Hovering
-2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0,		NC_F_SIDESLIDE,Front-Side Slide
-2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x0,		NC_B_SIDESLIDE,Back-Side Slide
+2256,11,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x4000,	NC_BOOSTKNUCKLE,Boost Knuckle
+2257,3,6,1,-1,0,0,3,1,no,0,0,0,weapon,0,0x4000,	NC_PILEBUNKER,Pile Bunker
+2258,13,6,1,-1,0x2,1,3,1,no,0,0x40000,0,weapon,0,0x4000,	NC_VULCANARM,Vulcan Arm
+2259,5,6,1,3,0,1,3,1,no,0,0,5,weapon,0,0x4000,		NC_FLAMELAUNCHER,Flame Launcher
+2260,7,6,2,1,0x2,2:3:4,3,1,no,0,0x40000,0,weapon,0,0x4000,	NC_COLDSLOWER,Cold Slower
+2261,9:11:13,6,1,-1,0x42,3:2:1,3,1,no,0,0,0,weapon,0,0x4000,	NC_ARMSCANNON,Arm Cannon
+2262,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,		NC_ACCELERATION,Acceleration
+2263,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_HOVERING,Hovering
+2264,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x4000,		NC_F_SIDESLIDE,Front-Side Slide
+2265,0,6,4,0,0x1,0,1,1,no,0,0,0,none,7,0x4000,		NC_B_SIDESLIDE,Back-Side Slide
 2266,0,0,0,0,0,0,4,0,no,0,0,0,none,0,0x0,		NC_MAINFRAME,Mainframe Restructure
-2267,0,6,4,0,0xCA,2:3:4,3,1,no,0,0x40000,0,weapon,5,0x0,	NC_SELFDESTRUCTION,Self Destruction
-2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x0,	NC_SHAPESHIFT,Shape Shift
-2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_EMERGENCYCOOL,Emergency Cool
-2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x0,	NC_INFRAREDSCAN,Infrared Scan
-2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x0,	NC_ANALYZE,Analyze
-2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x0,	NC_MAGNETICFIELD,Magnetic Field
-2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,	NC_NEUTRALBARRIER,Neutral Barrier
-2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x0,	NC_STEALTHFIELD,Stealth Field
-2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x0,	NC_REPAIR,Repair
+2267,0,6,4,0,0xCA,2:3:4,3,1,no,0,0x40000,0,weapon,5,0x304000,	NC_SELFDESTRUCTION,Self Destruction
+2268,0,6,4,0,0x1,0,4,1,yes,0,0,0,none,0,0x4000,	NC_SHAPESHIFT,Shape Shift
+2269,0,6,4,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_EMERGENCYCOOL,Emergency Cool
+2270,0,6,4,0,0x3,7,1,1,yes,0,0,0,none,0,0x4000,	NC_INFRAREDSCAN,Infrared Scan
+2271,9,6,1,0,0x1,0,3,1,yes,0,0,0,none,0,0x4000,	NC_ANALYZE,Analyze
+2272,0,6,4,0,0x3,2,3,1,no,0,0,0,none,0,0x4000,	NC_MAGNETICFIELD,Magnetic Field
+2273,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,	NC_NEUTRALBARRIER,Neutral Barrier
+2274,0,6,4,0,0x1,0,3,1,no,0,0,0,none,0,0x4000,	NC_STEALTHFIELD,Stealth Field
+2275,5:6:7:8:9,6,16,0,0x1,0,5,1,yes,0,0,0,magic,0,0x4000,	NC_REPAIR,Repair
 2276,0,0,0,0,0,0,10,0,no,0,0,0,none,0,0x0,		NC_TRAININGAXE,Axe Training
 2277,0,0,0,0,0,0,5,0,no,0,0,0,none,0,0x0,		NC_RESEARCHFE,Research Fire/Earth
-2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x0,	NC_AXEBOOMERANG,Axe Boomerang
-2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x0,	NC_POWERSWING,Power Swing
-2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0x40000,0,weapon,0,0x0,	NC_AXETORNADO,Axe Tornado
-2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0,	NC_SILVERSNIPER,FAW - Silver Sniper
-2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x0,	NC_MAGICDECOY,FAW - Magic Decoy
-2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x0,		NC_DISJOINT,FAW Removal
+2278,5:6:7:8:9,6,1,-1,0,0,5,1,no,0,0,0,weapon,2:3:4:5:6,0x4000,	NC_AXEBOOMERANG,Axe Boomerang
+2279,1,6,1,-1,0,0,5,1,no,0,0,0,weapon,0,0x4000,	NC_POWERSWING,Power Swing
+2280,0,8,4,-1,0x2,2:2:3:3:3,5,-6,no,0,0x40000,0,weapon,0,0x4000,	NC_AXETORNADO,Axe Tornado
+2281,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x4000,	NC_SILVERSNIPER,FAW - Silver Sniper
+2282,2,6,2,0,0x1,0,5,1,yes,0,0,2,none,0,0x4000,	NC_MAGICDECOY,FAW - Magic Decoy
+2283,5,6,1,0,0x1,0,1,1,no,0,0,0,none,0,0x4000,		NC_DISJOINT,FAW Removal
 
 //****
 // SC Shadow Chaser
@@ -1121,7 +1123,7 @@
 2316,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0,	LG_EXEEDBREAK,Exceed Break
 2317,2,6,2,-1,0x2,0,5,1,yes,0,0,0,weapon,0,0x0,	LG_OVERBRAND,Over Brand
 2318,0,6,4,0,0x1,0,5,1,yes,0,0,0,none,0,0x0,	LG_PRESTIGE,Prestige
-2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0,	LG_BANDING,Banding //CHECK Splash isnt needed right? Banding has its own UNIT ID.
+2319,0,6,4,0,0x3,3,5,1,no,0,0,0,weapon,0,0x0,	LG_BANDING,Banding
 2320,0,6,4,-1,0x2,3,5,1,yes,0,0,0,weapon,0,0x1000,	LG_MOONSLASHER,Moon Slasher
 2321,1,8,2,6,0x2,5,5,-7,yes,0,0,0,weapon,0,0x0,	LG_RAYOFGENESIS,Ray of Genesis
 2322,0,6,16,0,0x3,1,5,1,yes,0,0,0,none,0,0x0,	LG_PIETY,Piety
@@ -1238,7 +1240,7 @@
 2479,9,6,2,0,0,0,5,1,yes,0,0x80,3,misc,0,0x0,	GN_THORNS_TRAP,Thorn Trap
 2480,11,6,1,0,0x1,0,5,1,yes,0,0,3,misc,0,0x0,		GN_BLOOD_SUCKER,Blood Sucker //CHECK Data says its a magic attack. Hmmmm....
 2481,11,6,1,-1,0x2,1:2:3:4:5,5,1,yes,0,0,0,weapon,0,0x0,	GN_SPORE_EXPLOSION,Spore Explosion //CHECK Data says its element is set to neutral. Need to confirm.
-2482,11,6,2,0,0x8,0,5,1,yes,0,0,1,weapon,2,0x0,	GN_WALLOFTHORN,Wall of Thorns
+2482,11,6,2,0,0x8,0,5,1,yes,0,0,1,weapon,2,0x300000,	GN_WALLOFTHORN,Wall of Thorns
 2483,11,6,2,0,0x3,4,10,1,yes,0,0x0,0,weapon,0,0x1,	GN_CRAZYWEED,Crazy Weed
 2484,0,6,2,2,0x2,2,10,1,no,0,0x40000,0,weapon,0,0x1,	GN_CRAZYWEED_ATK,Crazy Weed Attack
 2485,9,6,2,3,0,0,5,1,yes,0,0,1,magic,0,0x0,		GN_DEMONIC_FIRE,Demonic Fire
@@ -1396,7 +1398,7 @@
 5003,7,6,1,-1,0x2,4:5:6:7:-1,5,1,no,0,0,0,weapon,0,0x0, GN_ILLUSIONDOPING,Illusion Doping
 5004,9,6,2,1,0x42,1:1:1:2:2:2:3:3:4:4,10,1,no,0,0x40000,0,weapon,0,0x0, RK_DRAGONBREATH_WATER,Dragon Breath - Water
 5005,0,6,4,0,0x3,3,1,1,no,0,0,0,none,0,0x0, RK_LUXANIMA,Lux Anima
-5006,1,6,2,3,0x2,3,5,1,no,0,0,3,misc,0,0x0, NC_MAGMA_ERUPTION,Magma Eruption
+5006,1,6,2,3,0x2,3,5,1,no,0,0,3,misc,0,0x4000, NC_MAGMA_ERUPTION,Magma Eruption
 5007,0,6,4,0,0x3,5:6:7:8:9,5,1,no,0,0,0,none,0,0x0, WM_FRIGG_SONG,Frigg's Song
 5008,0,6,4,0,0x3,11,5,1,no,0,0,0,none,0,0x0, SO_ELEMENTAL_SHIELD,Elemental Shield
 5009,1,6,1,0,0x1,0,5,1,no,0,0,0,none,0,0x0, SR_FLASHCOMBO,Flash Combo
@@ -1404,7 +1406,7 @@
 5011,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, AB_OFFERTORIUM,Offertorium
 5012,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, WL_TELEKINESIS_INTENSE,Intense Telekinesis
 5013,0,6,4,0,0x3,0,5,1,no,0,0,0,none,0,0x0, LG_KINGS_GRACE,King's Grace
-5014,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x0, ALL_FULL_THROTTLE,Full Throttle
+5014,0,6,4,0,0x1,0,5,1,no,0,0,0,none,0,0x4000, ALL_FULL_THROTTLE,Full Throttle
 
 // Summoner
 5018,0,0,0,0,0,0,1,0,no,0,0,0,none,0,0x0,		SU_BASIC_SKILL,New Basic Skill
@@ -1456,8 +1458,8 @@
 5065,1,6,4,0,0x3,3,1,1,yes,0,0x4,0,none,0,0,	WE_CHEERUP,Cheer Up
 
 // New Arch Bishop Skills
-5072,11,0,1,0,0,0,5,0,yes,0,0,0,none,0,0,		AB_VITUPERATUM,Vituperatum
-5073,0,0,4,0,0,0,1,0,yes,0,0,0,none,0,0,		AB_CONVENIO,Convenio
+5072,9,6,1,0,0x3,1:1:1:2:2,5,0,yes,0,0,0,magic,0,0x0,		AB_VITUPERATUM,Vituperatum
+5073,0,6,4,0,0x1,0,1,0,yes,0,0,0,none,0,0x0,		AB_CONVENIO,Convenio
 
 //****
 // Homunculus S
@@ -1611,3 +1613,4 @@
 10013,0,0,4,0,0x3,0,1,0,yes,0,0x10,0,none,0,0x40,	GD_EMERGENCYCALL,Urgent Call
 10014,0,0,0,0,0,0,1,0,no,0,0x10,0,none,0,0x0,	GD_DEVELOPMENT,Permanent Development
 10015,0,0,4,0,0x3,0,3,0,yes,0,0x10,0,none,0,0x40,	GD_ITEMEMERGENCYCALL,Item Emergency Call
+10016,0,0,0,0,0,0,5,0,no,0,0x10,0,none,0,0x0,	GD_GUILD_STORAGE,Guild Storage Expansion

+ 5 - 5
db/re/skill_require_db.txt

@@ -629,7 +629,7 @@
 //****
 // AB Arch Bishop
 2038,0,0,20:23:26:29:32,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_JUDEX
-2039,0,0,30,0,-30,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0							//AB_ANCILLA
+2039,0,0,30,0,-10,0,99,0,0,none,0,0,717,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0							//AB_ANCILLA
 2040,0,0,22:28:34:40:46:52:58:64:70:76,0,0,0,99,0,0,none,0,0,717,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0	//AB_ADORAMUS
 2041,0,0,280:320:360,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_CLEMENTIA
 2042,0,0,200:220:240,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0					//AB_CANTO
@@ -691,11 +691,11 @@
 
 2267,0,0,200,0,0,0,99,0,0,mado,0,0,6146,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2802						//NC_SELFDESTRUCTION
 2268,0,0,100,0,0,0,99,0,0,mado,0,0,6360,3,6363,3,6362,3,6361,3,6146,2,0,0,0,0,0,0,0,0,0,0,2803			//NC_SHAPESHIFT
-2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2804						//NC_EMERGENCYCOOL
+2269,0,0,20,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2804:2809:2810				//NC_EMERGENCYCOOL
 2270,0,0,45,0,0,0,99,0,0,mado,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0								//NC_INFRAREDSCAN
 2271,0,0,30,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0							//NC_ANALYZE
-2272,0,0,60:70:80,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2805						//NC_MAGNETICFIELD
-2273,0,0,80:90:100,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2806						//NC_NEUTRALBARRIER
+2272,0,0,60:70:80,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2805					//NC_MAGNETICFIELD
+2273,0,0,80:90:100,0,0,0,99,0,0,mado,0,0,6146,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2806				//NC_NEUTRALBARRIER
 2274,0,0,80:100:120,0,0,0,99,0,0,mado,0,0,6146,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2808				//NC_STEALTHFIELD
 2275,0,0,25:30:35:40:45,0,0,0,99,0,0,mado,0,0,12392,1,12392,1,12393,1,12393,1,12394,1,0,0,0,0,0,0,0,0,0,0,2807			//NC_REPAIR
 
@@ -1053,7 +1053,7 @@
 5065,0,0,50,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0								//WE_CHEERUP
 
 // New Arch Bishop Skills
-5072,0,0,144:120:106:92:78,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0				//AB_VITUPERATUM##
+5072,0,0,144:120:106:92:78,0,0,0,99,0,0,none,0,0,717,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0			//AB_VITUPERATUM##
 5073,0,0,70,0,0,0,99,0,0,none,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0								//AB_CONVENIO##
 
 8001,0,0,13:16:19:22:25,0,0,0,99,0,0,none,0,0,545,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0				//HLIF_HEAL

+ 6 - 3
db/re/skill_tree.txt

@@ -2602,7 +2602,6 @@
 4057,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4057,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4057,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4057,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4057,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4057,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4057,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#
@@ -2612,6 +2611,8 @@
 4057,2515,5,2044,1,2053,1,0,0,0,0,0,0 //AB_SECRAMENT#Secrament#
 4057,5011,5,2051,2,0,0,0,0,0,0,0,0 //AB_OFFERTORIUM#Offertorium#
 4057,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle#
+4057,5072,5,2044,1,2053,1,0,0,0,0,0,0 //AB_VITUPERATUM#Vituperatum#
+4057,5073,1,2039,1,2046,5,0,0,0,0,0,0 //AB_CONVENIO#Convenio#
 //Mechanic (Regular)
 4058,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill#
 4058,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid#
@@ -2949,7 +2950,6 @@
 4063,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4063,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4063,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4063,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4063,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4063,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4063,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#
@@ -2959,6 +2959,8 @@
 4063,2515,5,2044,1,2053,1,0,0,0,0,0,0 //AB_SECRAMENT#Secrament#
 4063,5011,5,2051,2,0,0,0,0,0,0,0,0 //AB_OFFERTORIUM#Offertorium#
 4063,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle#
+4063,5072,5,2044,1,2053,1,0,0,0,0,0,0 //AB_VITUPERATUM#Vituperatum#
+4063,5073,1,2039,1,2046,5,0,0,0,0,0,0 //AB_CONVENIO#Convenio#
 //Mechanic (Trans)
 4064,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill#
 4064,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid#
@@ -4608,7 +4610,6 @@
 4099,2046,10,2045,5,0,0,0,0,0,0,0,0 //AB_ORATIO#Oratio#
 4099,2047,4,72,1,0,0,0,0,0,0,0,0 //AB_LAUDAAGNUS#Lauda Agnus#
 4099,2048,4,2047,2,0,0,0,0,0,0,0,0 //AB_LAUDARAMUS#Lauda Ramus#
-4099,2049,10,2044,1,2053,1,0,0,0,0,0,0 //AB_EUCHARISTICA#Eucharistica#
 4099,2050,1,2043,3,0,0,0,0,0,0,0,0 //AB_RENOVATIO#Renovatio#
 4099,2051,5,2050,1,0,0,0,0,0,0,0,0 //AB_HIGHNESSHEAL#Highness Heal#
 4099,2052,5,2048,2,0,0,0,0,0,0,0,0 //AB_CLEARANCE#Clearance#
@@ -4619,6 +4620,8 @@
 4099,5011,5,2051,2,0,0,0,0,0,0,0,0 //AB_OFFERTORIUM#Offertorium#
 4099,5014,5,0,0,0,0,0,0,0,0,0,0 //ALL_FULL_THROTTLE#Full Throttle#
 4099,5065,1,0,0,0,0,0,0,0,0,0,0 //WE_CHEERUP#Cheer Up#
+4099,5072,5,2044,1,2053,1,0,0,0,0,0,0 //AB_VITUPERATUM#Vituperatum#
+4099,5073,1,2039,1,2046,5,0,0,0,0,0,0 //AB_CONVENIO#Convenio#
 //Baby Mechanic
 4100,1,9,0,0,0,0,0,0,0,0,0,0 //NV_BASIC#Basic Skill#
 4100,142,1,0,0,0,0,0,0,0,0,0,0 //NV_FIRSTAID#First Aid#

+ 1 - 1
db/re/skill_unit_db.txt

@@ -148,7 +148,7 @@
 2446,0x86,    ,  0, 3:3:3:4:4,1000,enemy, 0x018	//SO_EARTHGRAVE
 2447,0x86,    ,  0, 3:3:3:4:4,1000,enemy, 0x018	//SO_DIAMONDDUST
 2449,0xdf,    ,  0, 3:3:4:4:5,500,enemy,  0x018	//SO_PSYCHIC_WAVE
-2450,0xe0,    ,  3, 0,  -1,enemy, 0xA010	//SO_CLOUD_KILL
+2450,0xe0,    ,  0, 3, 500,enemy, 0x8010	//SO_CLOUD_KILL
 2452,0xe4,    ,  3, 0,  -1,all,   0xA010	//SO_WARMER
 2453,0xeb,    ,  0, 1:1:2:2:3,500,enemy,0x8010	//SO_VACUUM_EXTREME
 2465,0xf1,    ,  1, 0,  -1,all,   0x2010	//SO_FIRE_INSIGNIA

+ 9 - 9
db/skill_damage_db.txt

@@ -4,12 +4,12 @@
 // SkillName,Caster,Map,Damage against Players{,Damage against Mobs{,Damage against Bosses{,Damage against Other}}}
 //
 // Caster: The groups for which the adjustment takes effect. (bitmask)
-//		 1 = Player
-//		 2 = Monster
-//		 4 = Pet
-//		 8 = Homunculus
-//		16 = Mercenary
-//		32 = Elemental
+//		BL_PC = Player
+//		BL_MOB = Monster
+//		BL_PET = Pet
+//		BL_HOM = Homunculus
+//		BL_MER = Mercenary
+//		BL_ELEM = Elemental
 //
 // Map:
 // 		1    - Normal (the maps that aren't classified as these maps below)
@@ -31,6 +31,6 @@
 //  	Negative values decrease damage and positive values increase it (0 = no change).
 //
 // Examples:
-// MC_MAMMONITE,1,1,50 // In normal maps, players deal +50% damage to other players with Mammonite.
-// MO_EXTREMITYFIST,1,6,-50 // In PVP and GVG, players deal -50% (half) damage to other players with Asura Strike.
-// AB_ADORAMUS,1,6,50,0,10,15 // In PVP and GVG, players deal +50% damage to other players, +0% to mobs, +10% to bosses, and +15% to other with Adoramus.
+// MC_MAMMONITE,BL_PC,1,50 // In normal maps, players deal +50% damage to other players with Mammonite.
+// MO_EXTREMITYFIST,BL_PC,6,-50 // In PVP and GVG, players deal -50% (half) damage to other players with Asura Strike.
+// AB_ADORAMUS,BL_PC,6,50,0,10,15 // In PVP and GVG, players deal +50% damage to other players, +0% to mobs, +10% to bosses, and +15% to other with Adoramus.

+ 14 - 17
doc/mapflags.txt

@@ -209,7 +209,7 @@ Disables skill WZ_ICEWALL on a map.
 
 ---------------------------------------
 
-*nosumstarmiracle
+*nosunmoonstarmiracle
 
 Disables Star Gladiator's "Solar, Lunar, and Stellar Miracle" from occurring on a map.
 
@@ -297,7 +297,7 @@ Notes:
 
 ---------------------------------------
 
-*skill_damage	{<skill_name>,<caster>,<damage1>,{<damage2>,{<damage3>,{<damage4>}}}}
+*skill_damage	{<skill_name>,<caster>,<SKILLDMG_PC>,{<SKILLDMG_MOB>,{<SKILLDMG_BOSS>,{<SKILLDMG_OTHER>}}}}
 
 Enables skill damage adjustment on a map. All adjustments in 'db/skill_damage_db.txt'
 for 'Map' type 16 will be applied.
@@ -307,21 +307,17 @@ This mapflag can also be used to adjust the damage of one skill by a percentage:
 	Name of the skill in 'db/(pre-)re/skill_db.txt' (ex. SM_BASH).
 	To adjust all skill damage, write "all" (without quotes).
  - caster: the groups for which the adjustment takes effect. (bitmask)
-	 1 = Player
-	 2 = Monster
-	 4 = Pet
-	 8 = Homunculus
-	16 = Mercenary
-	32 = Elemental
+	BL_PC = Player
+	BL_MOB = Monster
+	BL_PET = Pet
+	BL_HOM = Homunculus
+	BL_MER = Mercenary
+	BL_ELEM = Elemental
  - damage: percent adjustment rate (between -100 and 100000).
-	1 = against player
-	2 = against normal monster
-	3 = against boss monster
-	4 = against other (homunculus, mercenary, pet, elemental)
-
-Notes:
- - You MUST enable ADJUST_SKILL_DAMAGE in 'src/config/core.hpp' for this mapflag to take effect.
- - Each map can contain up to 5 adjustments (MAX_MAP_SKILL_MODIFIER in 'src/map/map.h').
+	SKILLDMG_PC = against player
+	SKILLDMG_MOB = against normal monster
+	SKILLDMG_BOSS = against boss monster
+	SKILLDMG_OTHER = against other (homunculus, mercenary, pet, elemental)
 
 ---------------------------------------
 
@@ -368,7 +364,8 @@ Allows usage of item Neuralizer (ID 12213).
 *bexp	<rate>
 *jexp	<rate>
 
-Changes the base and job experience rates on a map.
+Changes the base and job experience rates on a map. Supports negative values to reduce EXP
+rates as well.
 <rate> is given as a percentage (i.e. 100 = 1x EXP). This takes into account the modifiers
 'base_exp_rate' and 'job_exp_rate' in '/conf/battle/exp.conf'.
 

+ 65 - 65
doc/packet_interserv.txt

@@ -3,10 +3,10 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20140831
+//= 20180924
 //===== Description: =========================================
-//= List of all packets used by login-serv (A), char-serv (H),
-//= and map-serv (Z) to communicate with each other.
+//= List of all packets used by login-server (A), char-server
+//= (H), and map-server (Z) to communicate with each other.
 //= See packet_client.txt for communication to client (C).
 //============================================================
 
@@ -60,7 +60,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- request_id: unknown @FIXME
 		- clienttype: unknown @FIXME
 	desc:
-		- Acknowledge the authentication request from char-serv
+		- Acknowledge the authentication request from char-server
 
 0x2714:
 	Type: HA
@@ -69,9 +69,9 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	len: 6
 	parameter:
 		- cmd : packet identification (0x2714)
-		- user_count: number of user present on the char-serv
+		- user_count: number of user present on the char-server
 	desc:
-		- Retrieve the number of user present on a char-serv
+		- Retrieve the number of user present on a char-server
 
 0x2715:
 	free
@@ -140,7 +140,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- u_aid :
 		- account_id :
 	desc:
-		- 
+		-
 
 0x2721:
 	Type: AH
@@ -177,7 +177,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- actual_email: current email address
 		- new_email: new email address
 	desc:
-		- Map server sends information to change an email of an account via char-server
+		- Map-server sends information to change an email of an account via char-server
 
 0x2723:
 	Type: AH
@@ -267,7 +267,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- type
 		- value
 	desc:
-		- Receive an request to fetch account_reg2 from a char-server, see packet 0x3004 (mapif_parse_Registry)
+		- Receive a request to fetch account_reg2 from a char-server, see packet 0x3004 (mapif_parse_Registry)
 
 
 0x2729:
@@ -288,7 +288,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- str : name of variable in registry
 		- value : value of varaible in registry
 	desc:
-		- Receive account_reg2 registry, forward to map servers.
+		- Receive account_reg2 registry, forward to map-server.
 
 0x272a:
 	Type: HA
@@ -311,7 +311,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x272b)
 		- t_aid: account identification
 	desc:
-		- Add aid to list of online user on loginserv (setacconline).
+		- Add aid to list of online user on login-server (setacconline).
 
 0x272c:
 	Type: HA
@@ -332,7 +332,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x272d)
 		- len : size of packet
-		- users: number of users connected to char-serv
+		- users: number of users connected to char-server
 		- aid: account identification
 	desc:
 		- receive account list from char-server
@@ -364,7 +364,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- state: 0=change of status, 1=ban
 		- status|date: status or final date of a banishment
 	desc:
-		- Notify char-serv of a state change or ban (accbannotification).
+		- Notify char-server of a state change or ban (accbannotification).
 
 0x2732:
 0x2733:
@@ -379,7 +379,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x2734)
 		- aid: account identification
 	desc:
-		- Account is already marked as online. (Login server request to kick a character out).
+		- Account is already marked as online. (Login-server request to kick a character out).
 
 0x2735:
 	Type: AH
@@ -389,8 +389,8 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2735)
 	desc:
-		- IP address update signal from login server.
-		- Send back the IP of char server to login-server if IP was changed.
+		- IP address update signal from login-server.
+		- Send back the IP of char-server to login-server if IP was changed.
 
 0x2736:
 	Type: HA
@@ -399,7 +399,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	len: 6
 	parameter:
 		- cmd : packet identification (0x2736)
-		-  ip: ip of char server
+		-  ip: ip of char-server
 	desc:
 		- IP update for char-server
 
@@ -434,7 +434,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x2739)
 		- aid : account identification
 	desc:
-		- Login notify char that too many wrong PIN code entered. (fail auth)
+		- Login-server notifies char-server for too many wrong PIN code entered. (fail auth)
 
 0x273a
 0x273b
@@ -456,9 +456,9 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2742)
 		- aid: account identification
-		- flag: 0x1 ack vip data to char-serv, 0x2 add duration, 0x8 First request on player login
+		- flag: 0x1 ack vip data to char-server, 0x2 add duration, 0x8 First request on player login
 		- timediff: tick to add to viptime
-		- mapfd: map-serv link to ack if type&1
+		- mapfd: map-server link to ack if type&1
 	desc:
 		- Received a VIP data request from char
 
@@ -473,9 +473,9 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- vip_time: timestamp of vip_time if he is vip
 		- flag: 0x1: isvip, is this account in vip mode atm, 0x2: isgm, 0x4: show rates on player
 		- groupid: group id of account
-		- mapfd: map-serv link to ack
+		- mapfd: map-server link to ack
 	desc:
-		- Transmit vip specific data to char-serv (will be transfered to mapserv)
+		- Transmit vip specific data to char-server (will be transfered to map-server)
 
 =========================
 | 3.1 Inter-Map Packets |
@@ -496,7 +496,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- fontY:
 		- mes: message to send
 	desc:
-		- Broadcasts a message to all map-servs connected to this char-serv
+		- Broadcasts a message to all map-servers connected to this char-server
 
 
 0x3001
@@ -523,7 +523,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- id: whisper id, identifier to match current whisper session that store in inter.c::wis_db
 		- flag: 0=success, 1=target not found, 2=ignored by target
 	desc:
-		- Inform the char-serv of the result of the whisper
+		- Inform the char-server of the result of the whisper
 
 0x3003
 	Type: ZI
@@ -552,10 +552,10 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 			1: account2 registry
 			2: account registry
 			3: char registry
-		-str: registre variable identifiant, (variable name)
+		-str: register variable identity, (variable name)
 		-value: variable value
 	desc:
-		- Map-serv is requesting Char-serv to save registry values. (type=1 will forward data to login-serv)
+		- Map-server is requesting char-server to save registry values. (type=1 will forward data to login-server)
 
 0x3005
 	Type: ZI
@@ -566,8 +566,8 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x3005)
 		- aid:
 		- cid:
-		-acc_reg2 : request  account registry (permanent variable of account, save on login-serv)
-		-acc_reg : request account registry (permanent variable of account , save on char-serv)
+		-acc_reg2 : request  account registry (permanent variable of account, save on login-server)
+		-acc_reg : request account registry (permanent variable of account , save on char-server)
 		-ch_reg :  request char registry (permanent variable of char)
 	desc:
 		- Request the registries for this player.
@@ -935,7 +935,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- aid
 		- max
 	desc:
-		- Request an update of Guildskill skill_id
+		- Request an update of Guild skill skill_id
 
 0x303d
 	Type: ZI
@@ -1174,7 +1174,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x3060)
 		- cid
 	desc:
-		- Requests a character's quest log entries to the inter server.
+		- Requests a character's quest log entries to the inter-server.
 
 0x3061
 	Type: ZI
@@ -1184,7 +1184,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x3061)
 	desc:
-		- Requests to the inter server to save a character's quest log entries.
+		- Requests to the inter-server to save a character's quest log entries.
 
 0x3062
 	Type: ZI
@@ -1195,7 +1195,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x3062)
 		- cid
 	desc:
-		- Requests a character's achievement log entries to the inter server.
+		- Requests a character's achievement log entries to the inter-server.
 
 0x3063
 	Type: ZI
@@ -1205,7 +1205,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x3063)
 	desc:
-		- Requests to the inter server to save a character's achievement log entries.
+		- Requests to the inter-server to save a character's achievement log entries.
 
 0x3070
 	Type: ZI
@@ -1455,7 +1455,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x30A0)
 	desc:
-		- Requests the loaded clans from the inter server
+		- Requests the loaded clans from the inter-server
 
 0x30A1
 	Type: ZI
@@ -1469,7 +1469,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account id : the account id of the sender
 		- message : the message to be sent
 	desc:
-		- Sends a clan message to the inter server to relay it to all other mapservers
+		- Sends a clan message to the inter-server to relay it to all other map-servers
 
 0x30A2:
 	Type: ZI
@@ -1480,7 +1480,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x30A2)
 		- clan id : the clan id
 	desc:
-		- Notifies the inter server that a player has left the clan or disconnected
+		- Notifies the inter-server that a player has left the clan or disconnected
 
 0x30A3:
 	Type: ZI
@@ -1491,7 +1491,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x30A3)
 		- clan id : the clan id
 	desc:
-		- Notifies the inter server that a player has joined the clan or connected
+		- Notifies the inter-server that a player has joined the clan or connected
 
 0x3800:
 	Type: IZ
@@ -1598,7 +1598,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- aid
 		- msg_out
 	desc:
-		- sends a mesasge to map server (fd) to a user (u_fd) although we use fd we keep aid for safe-check
+		- sends a message to map-server (fd) to a user (u_fd) although we use fd we keep aid for safe-check
 
 0x3808
 	Type: IZ
@@ -1611,7 +1611,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- aid
 		- acc_name
 	desc:
-		- Transmit the result of a account_information request from map-serv, with type 1
+		- Transmit the result of a account_information request from map-server, with type 1
 
 0x3809
 	Type: IZ
@@ -2023,7 +2023,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- sender_name
 		- mail_title
 	desc:
-		- Report New Mail to Map Server
+		- Report New Mail to map-server
 
 0x384a
 	Type: IZ
@@ -2178,9 +2178,9 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- size
 		- count : number of item retrieved
 		- guild_id
-		- items: retreived guild bound items
+		- items: retrieved guild bound items
 	desc:
-		- Ask map-server to process the retreived guild bound items from expelled member
+		- Ask map-server to process the retrieved guild bound items from expelled member
 
 0x3860
 	Type: IZ
@@ -2292,7 +2292,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	len: 6+variable
 	parameter:
 		- cmd : packet identification (0x388c)
-		- len : Pakcet length
+		- len : packet length
 		- storage_table : Storage table information
 	desc:
 		- Receive storage information
@@ -2358,7 +2358,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- size
 		- clan structure
 	desc:
-		- Send all loaded clans to the map server
+		- Send all loaded clans to the map-server
 
 0x38A1
 	Type: IZ
@@ -2370,7 +2370,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- size
 		- message : the data of the clan chat message packet
 	desc:
-		- Sends a clan chat message to other map servers
+		- Sends a clan chat message to other map-servers
 
 0x38A2
 	Type: IZ
@@ -2382,7 +2382,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- clan id : the clan id of the clan that needs an update
 		- online count : the amount of currently connected players in the clan
 	desc:
-		- Updates the online clan member count for all other map servers
+		- Updates the online clan member count for all other map-servers
 
 ========================
 | 3.2 Char-Map Packets |
@@ -2439,7 +2439,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2b00)
 	desc:
-		- Send to map-servers the users count on this char-serv, (meaning the total of all mapserv)
+		- Send to map-servers the users count on this char-server, (meaning the total of all map-server)
 
 0x2b03
 	Type: AZ
@@ -2451,7 +2451,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account_id
 		- ?
 	desc:
-		- Player Requesting char-select from map_serv
+		- Player Requesting char-select from map-server
 
 0x2b04
 	Type: AZ
@@ -2483,7 +2483,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- ip
 		- port
 	desc:
-		- Map-server change request acknowledgement (positive or negative)
+		- Map-server change request acknowledgment (positive or negative)
 
 0x2b09
 	Type: AZ
@@ -2522,7 +2522,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- acc
 		- sex
 	desc:
-		- Request char server to change sex of char
+		- Request char-server to change sex of char
 
 0x2b0f
 	Type: AZ
@@ -2591,7 +2591,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- aid
 		- cid
 	desc:
-		- Map-serv requesting to send the list of sc_data the player has saved
+		- Map-server requesting to send the list of sc_data the player has saved
 
 0x2b1e
 	Type: AZ
@@ -2602,7 +2602,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- cmd : packet identification (0x2b1e)
 		- new_ip
 	desc:
-		- Request forwarded from char-server for interserver IP sync
+		- Request forwarded from char-server for inter-server IP sync
 
 0x2b1f
 	Type: AZ
@@ -2614,7 +2614,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account_id
 		- reason
 	desc:
-		- Request to kick char from a certain map server
+		- Request to kick char from a certain map-server
 
 0x2b20
 	Type: AZ
@@ -2660,7 +2660,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2b24)
 	desc:
-		- Map-server keep alive packet, awnser back map that we alive as well
+		- Map-server keep alive packet, answer back map that we alive as well
 
 0x2b25
 	Type: AZ
@@ -2704,7 +2704,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- groupid
 		- flag : 0x1: isvip, is this account in vip mode atm, 0x2: isgm, 0x4: show rates on player
 	desc:
-		- Received vip-data from char-serv, fill map-serv data
+		- Received vip-data from char-server, fill map-server data
 
 0x2b2f
 	Type: AZ
@@ -2748,7 +2748,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account_id
 		- char_id
 	desc:
-		- Request sc_data from charserver
+		- Request sc_data from char-server
 
 0x2afe
 	Type: ZA
@@ -2772,7 +2772,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account_id
 		- char_id
 	desc:
-		- Map-serv sent us all his users info, (aid and cid) so we can update online_char_db
+		- Map-server sent us all his users info, (aid and cid) so we can update online_char_db
 
 0x2b01
 	Type: ZA
@@ -2818,7 +2818,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- client_addr
 		- group_id
 	desc:
-		- Tell the charserver the mapchange / quest for ok
+		- Tell the char-server the map change / quest for ok
 
 0x2b07
 	Type: ZA
@@ -2830,7 +2830,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- char_id
 		- friend_id
 	desc:
-		- Asks char server to remove friend_id from the friend list of char_id
+		- Asks char-server to remove friend_id from the friend list of char_id
 
 0x2b08
 	Type: ZA
@@ -2840,7 +2840,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2b08)
 	desc:
-		- Search char through id on char serv
+		- Search char through id on char-server
 
 0x2b0a
 	Type: ZA
@@ -2852,7 +2852,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- account_id
 		- char_id
 	desc:
-		- Request skillcooldown from charserver
+		- Request skillcooldown from char-server
 
 0x2b0c
 	Type: ZA
@@ -2881,7 +2881,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- val1
 		- val2
 	desc:
-		- Send an account modification request to the login server (via char server).
+		- Send an account modification request to the login-server (via char-server).
 
 0x2b10
 	Type: ZA
@@ -2906,7 +2906,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- partner_id1
 		- partner_id2
 	desc:
-		- Request Char Server to Divorce Players
+		- Request char-server to Divorce Players
 
 0x2b15
 	Type: ZA
@@ -2933,7 +2933,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 		- job_rate
 		- drop_rate
 	desc:
-		- Send rates and motd to char server
+		- Send rates and motd to char-server
 
 0x2b17
 	Type: ZA
@@ -3001,7 +3001,7 @@ Currently the max packet size is 0xFFFF (see 'WFIFOSET()' in 'src/common/socket.
 	parameter:
 		- cmd : packet identification (0x2b23)
 	desc:
-		- pings the charserver (chrif_keepalive)
+		- pings the char-server (chrif_keepalive)
 
 0x2b26
 	Type: ZA

+ 24 - 9
doc/sample/gstorage_test.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20140208
+//= 20180906
 //===== Description: ========================================= 
 //= Contains commands needed for a guild warehouse NPC.
 //============================================================
@@ -22,14 +22,29 @@ prontera,165,188,4	script	Guild Warehouse	112,{
 		close;
 	}
 
-	.@flag = guildopenstorage;
-	if (.@flag == 1) {
-		mes "[Guild Warehouse]";
-		mes "The guild warehouse is being used right now.";
-		mes "Please wait a while, then come back.";
-	} else if (.@flag == 2) {
-		mes "[Guild Warehouse]";
-		mes "You can't use this service if you're not in a guild!";
+	switch(guildopenstorage()){
+		case GSTORAGE_STORAGE_ALREADY_OPEN:
+			mes "[Guild Warehouse]";
+			mes "you are using your storage.";
+			mes "Please wait a while, then come back.";
+			break;
+		case GSTORAGE_ALREADY_OPEN:
+			mes "[Guild Warehouse]";
+			mes "The guild warehouse is being used right now.";
+			mes "Please wait a while, then come back.";
+			break;
+		case GSTORAGE_NO_GUILD:
+			mes "[Guild Warehouse]";
+			mes "You can't use this service if you're not in a guild!";
+			break;
+		case GSTORAGE_NO_STORAGE:
+			mes "[Guild Warehouse]";
+			mes "The guild does not have a guild storage.";
+			break;
+		case GSTORAGE_NO_PERMISSION:
+			mes "[Guild Warehouse]";
+			mes "You don't have permission to use the guild storage!";
+			break;
 	}
 	cutin "kafra_06",255;
 	close;

+ 3 - 3
doc/sample/npc_extend_shop.txt

@@ -3,12 +3,12 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20121003
+//= 20180831
 //===== Description: ========================================= 
 //= An example of shop NPCs.
 //============================================================
 
-prontera,182,213,3	shop	Super Novice Shop	716,1243:-1,2112:-1,2340:-1,2352:-1,2414:-1,2510:-1,2628:-1,5055:-1
+prontera,182,213,3	shop	Super Novice Shop	716,1243:1,2112:-1,2340:-1,2352:-1,2414:-1,2510:-1,2628:-1,5055:-1
 prontera,149,139,5	shop	Whips Merchant	58,1951:-1,1953:-1,1955:-1,1957:-1,1959:-1,1961:-1,1962:-1,1963:-1,1964:-1
 prontera,162,175,3	shop	Headgears Merchant 1	73,2209:-1,2210:-1,2211:-1,2221:-1,2223:-1,2217:-1,2227:-1,2231:-1,2225:-1,2229:-1
 prontera,162,172,3	shop	Headgears Merchant 2	73,2203:-1,2212:-1,2218:-1,2239:-1,2241:-1,2242:-1,2243:-1,2263:-1,2265:-1,2276:-1,2288:-1,2291:-1,2297:-1
@@ -18,7 +18,7 @@ prontera,162,163,3	shop	Boots Merchant	73,2402:-1,2404:-1,2406:-1,2407:-1,2412:-
 prontera,162,160,3	shop	Robes Merchant	73,2502:-1,2504:-1,2506:-1,2507:-1,2508:-1,2509:-1
 prontera,162,157,3	shop	Accessory Merchant	73,2601:-1,2602:-1,2603:-1,2604:-1,2605:-1,2607:-1,2608:-1,2615:-1,2616:-1,2618:-1,2619:-1
 prontera,162,154,3	shop	Arrows Merchant	73,1750:-1,1751:-1,1752:-1,1753:-1,1754:-1,1755:-1,1756:-1,1757:-1,1758:-1,1759:-1,1760:-1,1761:-1,1762:-1,1763:-1,1764:-1,1765:-1,1766:-1,1767:-1,1768:-1,1769:-1
-prontera,162,151,3	shop	Alchemist Shop	73.7127:-1,7128:-1,7129:-1,7130:-1,7131:-1,7132:-1,7133:-1,7144:-1,7134:-1,1093:-1
+prontera,162,151,3	shop	Alchemist Shop	73,7127:-1,7128:-1,7129:-1,7130:-1,7131:-1,7132:-1,7133:-1,7144:-1,7134:-1,1093:-1
 prontera,162,148,3	shop	Taming Merchant	73,619:-1,620:-1,621:-1,623:-1,624:-1,625:-1,626:-1,627:-1,628:-1,629:-1,630:-1,631:-1,632:-1,633:-1,634:-1,635:-1,636:-1,637:-1,638:-1,639:-1,640:-1,641:-1,642:-1,659:-1
 prontera,162,145,3	shop	Pet Equipment	73,10001:-1,10002:-1,10003:-1,10004:-1,10005:-1,10006:-1,10007:-1,10008:-1,10009:-1,10010:-1,10011:-1,10012:-1,10013:-1,10014:-1,10015:-1,10016:-1,10017:-1,10018:-1,10019:-1,10020:-1
 prontera,148,234,5	shop	Weapon Card Merchant	80,4004:100000,4018:100000,4025:100000,4026:100000,4019:100000,4029:100000,4043:100000,4017:100000,4020:100000,4024:100000,4037:100000,4055:100000,4057:100000,4076:100000,4096:100000,4104:100000,4030:100000,4049:100000,4062:100000,4069:100000,4085:100000,4007:100000,4060:100000,4063:100000,4068:100000,4080:100000,4094:100000,4111:100000,4118:100000,4082:20700,4092:100000,4126:100000,4072:100000,4115:100000,4035:100000,4086:100000,4106:100000,4117:100000,4125:100000

+ 4 - 4
doc/sample/npc_live_dialogues.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= Lupus
 //===== Last Updated: ========================================
-//= 20140208
+//= 20180906
 //===== Description: ========================================= 
 //= An example of an NPC with live dialogue.
 //= Note: This relies on Global_Functions.txt to run.
@@ -17,7 +17,7 @@ prontera,167,177,5	script	Luppy	1107,{
 
 	// Say a compliment according to player's gender
 	// 1st string is for FEMALE, 2nd for MALE
-	mes callfunc("F_Sex","What a beautiful lady!","What a handsome man!");
+	mes callfunc("F_SexMes","What a beautiful lady!","What a handsome man!");
 
 	// Add some random greeting and goodbye into the menu
 	if (select(callfunc("F_Hi"), callfunc("F_Bye")) != 1) {
@@ -31,7 +31,7 @@ prontera,167,177,5	script	Luppy	1107,{
 	// Give a random prize from set list of items
 	if (@gotstuff){
 		// Again, say stuff according to player's gender
-		mes "I like "+callfunc("F_Sex","smiling ladies!","bloody pirates!");
+		mes "I like "+callfunc("F_SexMes","smiling ladies!","bloody pirates!");
 
 		// Show one of 3 emotion from the list (we added ,1 to show emotion over PLAYER's head)
 		emotion callfunc("F_Rand",ET_SCISSOR,ET_CHUP,ET_GOODBOY), playerattached();
@@ -45,7 +45,7 @@ prontera,167,177,5	script	Luppy	1107,{
 	.@itemIDfromList = callfunc("F_Rand",512,522,608,620);
 
 	// Again, say stuff according to player's gender
-	mes "Hey, "+callfunc("F_Sex","sister!","brother!")+" I have "+getitemname(.@itemIDfromList)+" for you!";
+	mes "Hey, "+callfunc("F_SexMes","sister!","brother!")+" I have "+getitemname(.@itemIDfromList)+" for you!";
 
 	// Get the item from the list
 	getitem .@itemIDfromList,1;

+ 26 - 26
doc/sample/npc_shop_test.txt

@@ -3,38 +3,38 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20090206
+//= 20180831
 //===== Description: ========================================= 
 //= An example of shop NPCs.
 //============================================================
 
 // Near fountain in Prontera
-prontera,156,192,3	shop	Card Shop1	95,4001:100,4002:100,4003:100,4004:100,4005:100,4006:100,4007:100,4008:100,4009:100,4010:100,4011:100,4012:100,4013:100,4014:100,4015:100,4016:100,4017:100,4018:100,4019:100,4020:100,4021:100,4022:100,4023:100,4024:100,4025:100,4026:100,4027:100,4028:100,4029:100,4030:100,4031:100,4032:100,4033:100,4034:100,4035:100,4036:100,4037:100,4038:100,4039:100,4040:100,4041:100,4042:100,4043:100,4044:100,4045:100,4046:100,4047:100,4048:100,4049:100,4050:100
-prontera,154,192,1	shop	Card Shop2	123,4051:100,4052:100,4053:100,4054:100,4055:100,4056:100,4057:100,4058:100,4059:100,4060:100,4061:100,4062:100,4063:100,4064:100,4065:100,4066:100,4067:100,4068:100,4069:100,4070:100,4071:100,4072:100,4073:100,4074:100,4075:100,4076:100,4077:100,4078:100,4079:100,4080:100,4081:100,4082:100,4083:100,4084:100,4085:100,4086:100,4087:100,4088:100,4089:100,4090:100,4091:100,4092:100,4093:100,4094:100,4095:100,4096:100,4097:100,4098:100,4099:100,4100:100
-prontera,158,192,1	shop	Card Shop3	67,4101:100,4102:100,4103:100,4104:100,4105:100,4106:100,4107:100,4108:100,4109:100,4110:100,4111:100,4112:100,4113:100,4114:100,4115:100,4116:100,4117:100,4118:100,4119:100,4120:100,4121:100,4122:100,4123:100,4124:100,4125:100,4126:100,4127:100,4128:100,4129:100,4130:100,4131:100,4132:100,4133:100,4134:100,4135:100,4136:100,4137:100,4138:100,4139:100,4140:100,4141:100,4142:100,4143:100,4144:100,4145:100,4146:100,4147:100,4148:100
-prontera,144,205,1	shop	Headgear Shop1	71,2201:100,2202:100,2203:100,2204:100,2205:100,2206:100,2207:100,2208:100,2209:100,2210:100,2211:100,2212:100,2213:100,2214:100,2215:100,2216:100,2217:100,2218:100,2219:100,2220:100,2221:100,2222:100,2223:100,2224:100,2225:100,2226:100,2227:100,2228:100,2229:100,2230:100,2231:100,2232:100,2233:100,2234:100,2235:100,2236:100,2237:100,2239:100,2240:100,2241:100,2242:100,2243:100,2244:100,2245:100,2246:100,2247:100,2248:100,2249:100,2250:100
-prontera,144,203,3	shop	Headgear Shop2	101,2251:100,2252:100,2253:100,2254:100,2255:100,2256:100,2257:100,2258:100,2259:100,2260:100,2261:100,2262:100,2263:100,2264:100,2265:100,2266:100,2267:100,2268:100,2269:100,2270:100,2271:100,2272:100,2273:100,2274:100,2275:100,2276:100,2277:100,2278:100,2279:100,2280:100,2281:100,2282:100,2283:100,2284:100,2285:100,2286:100,2287:100,2288:100,2289:100,2290:100,2291:100,2292:100,2293:100,2294:100,2295:100,2296:100,2297:100,2298:100,2299:100
-prontera,144,201,3	shop	Headgear Shop3	69,5001:100,5002:100,5003:100,5004:100,5005:100,5006:100,5007:100,5008:100,5009:100,5010:100,5011:100,5012:100,5013:100,5014:100,5015:100,5016:100,5017:100,5018:100,5019:100
-prontera,167,202,5	shop	Accessories Shop	102,2601:100,2602:100,2603:100,2604:100,2605:100,2607:100,2608:100,2609:100,2610:100,2611:100,2612:100,2613:100,2614:100,2615:100,2616:100,2617:100,2618:100,2619:100,2620:100,2621:100,2622:100,2623:100,2624:100,2625:100,2626:100,2627:100,2628:100
-prontera,167,204,6	shop	General Store	96,501:100,502:100,503:100,504:100,505:100,506:100,507:100,508:100,509:100,510:100,511:100,512:100,513:100,514:100,515:100,516:100,517:100,518:100,519:100,520:100,521:100,522:100,523:100,525:100,526:100,528:100,529:100,530:100,531:100,532:100,533:100,534:100,535:100,536:100,537:100,538:100,539:100,601:100,602:100,603:100,604:100,605:100,606:100,607:100,608:100,609:100,610:100
-prontera,167,206,6	shop	Blacksmith Shop	90,714:100,715:100,716:100,717:100,718:100,719:100,720:100,721:100,722:100,723:100,724:100,725:100,726:100,727:100,728:100,729:100,730:100,731:100,732:100,733:100,756:100,757:100,984:100,985:100,990:100,991:100,992:100,993:100,994:100,995:100,996:100,997:100,1010:100,1011:100,998:100,999:100,1000:100,1001:100,1002:100,1003:100,913:100,920:100,718:100,958:100,957:100,922:100,963:100,923:100,968:100,1005:100,612:100,615:100,989:100
-prontera,164,204,5	shop	Japan Store Limited	81,542:100,543:100,1766:100
+prontera,156,192,3	shop	Card Shop1	95,4001:-1,4002:-1,4003:-1,4004:-1,4005:-1,4006:-1,4007:-1,4008:-1,4009:-1,4010:-1,4011:-1,4012:-1,4013:-1,4014:-1,4015:-1,4016:-1,4017:-1,4018:-1,4019:-1,4020:-1,4021:-1,4022:-1,4023:-1,4024:-1,4025:-1,4026:-1,4027:-1,4028:-1,4029:-1,4030:-1,4031:-1,4032:-1,4033:-1,4034:-1,4035:-1,4036:-1,4037:-1,4038:-1,4039:-1,4040:-1,4041:-1,4042:-1,4043:-1,4044:-1,4045:-1,4046:-1,4047:-1,4048:-1,4049:-1,4050:-1
+prontera,154,192,1	shop	Card Shop2	123,4051:-1,4052:-1,4053:-1,4054:-1,4055:-1,4056:-1,4057:-1,4058:-1,4059:-1,4060:-1,4061:-1,4062:-1,4063:-1,4064:-1,4065:-1,4066:-1,4067:-1,4068:-1,4069:-1,4070:-1,4071:-1,4072:-1,4073:-1,4074:-1,4075:-1,4076:-1,4077:-1,4078:-1,4079:-1,4080:-1,4081:-1,4082:-1,4083:-1,4084:-1,4085:-1,4086:-1,4087:-1,4088:-1,4089:-1,4090:-1,4091:-1,4092:-1,4093:-1,4094:-1,4095:-1,4096:-1,4097:-1,4098:-1,4099:-1,4100:-1
+prontera,158,192,1	shop	Card Shop3	67,4101:-1,4102:-1,4103:-1,4104:-1,4105:-1,4106:-1,4107:-1,4108:-1,4109:-1,4110:-1,4111:-1,4112:-1,4113:-1,4114:-1,4115:-1,4116:-1,4117:-1,4118:-1,4119:-1,4120:-1,4121:-1,4122:-1,4123:-1,4124:-1,4125:-1,4126:-1,4127:-1,4128:-1,4129:-1,4130:-1,4131:-1,4132:-1,4133:-1,4134:-1,4135:-1,4136:-1,4137:-1,4138:-1,4139:-1,4140:-1,4141:-1,4142:-1,4143:-1,4144:-1,4145:-1,4146:-1,4147:-1,4148:-1
+prontera,144,205,1	shop	Headgear Shop1	71,2201:-1,2202:-1,2203:-1,2204:-1,2205:-1,2206:-1,2207:-1,2208:-1,2209:-1,2210:-1,2211:-1,2212:-1,2213:-1,2214:-1,2215:-1,2216:-1,2217:-1,2218:-1,2219:-1,2220:-1,2221:-1,2222:-1,2223:-1,2224:-1,2225:-1,2226:-1,2227:-1,2228:-1,2229:-1,2230:-1,2231:-1,2232:-1,2233:-1,2234:-1,2235:-1,2236:-1,2237:-1,2239:-1,2240:-1,2241:-1,2242:-1,2243:-1,2244:-1,2245:-1,2246:-1,2247:-1,2248:-1,2249:-1,2250:-1
+prontera,144,203,3	shop	Headgear Shop2	101,2251:-1,2252:-1,2253:-1,2254:-1,2255:-1,2256:-1,2257:-1,2258:-1,2259:-1,2260:-1,2261:-1,2262:-1,2263:-1,2264:-1,2265:-1,2266:-1,2267:-1,2268:-1,2269:-1,2270:-1,2271:-1,2272:-1,2273:-1,2274:-1,2275:-1,2276:-1,2277:-1,2278:-1,2279:-1,2280:-1,2281:-1,2282:-1,2283:-1,2284:-1,2285:-1,2286:-1,2287:-1,2288:-1,2289:-1,2290:-1,2291:-1,2292:-1,2293:-1,2294:-1,2295:-1,2296:-1,2297:-1,2298:-1,2299:-1
+prontera,144,201,3	shop	Headgear Shop3	69,5001:-1,5002:-1,5003:-1,5004:-1,5005:-1,5006:-1,5007:-1,5008:-1,5009:-1,5010:-1,5011:-1,5012:-1,5013:-1,5014:-1,5015:-1,5016:-1,5017:-1,5018:-1,5019:-1
+prontera,167,202,5	shop	Accessories Shop	102,2601:-1,2602:-1,2603:-1,2604:-1,2605:-1,2607:-1,2608:-1,2609:-1,2610:-1,2611:-1,2612:-1,2613:-1,2614:-1,2615:-1,2616:-1,2617:-1,2618:-1,2619:-1,2620:-1,2621:-1,2622:-1,2623:-1,2624:-1,2625:-1,2626:-1,2627:-1,2628:-1
+prontera,167,204,6	shop	General Store	96,501:-1,502:-1,503:-1,504:-1,505:-1,506:-1,507:-1,508:-1,509:-1,510:-1,511:-1,512:-1,513:-1,514:-1,515:-1,516:-1,517:-1,518:-1,519:-1,520:-1,521:-1,522:-1,523:-1,525:-1,526:-1,528:-1,529:-1,530:-1,531:-1,532:-1,533:-1,534:-1,535:-1,536:-1,537:-1,538:-1,539:-1,601:-1,602:-1,603:-1,604:-1,605:-1,606:-1,607:-1,608:-1,609:-1,610:-1
+prontera,167,206,6	shop	Blacksmith Shop	90,714:-1,715:-1,716:-1,717:-1,718:-1,719:-1,720:-1,721:-1,722:-1,723:-1,724:-1,725:-1,726:-1,727:-1,728:-1,729:-1,730:-1,731:-1,732:-1,733:-1,756:-1,757:-1,984:-1,985:-1,990:-1,991:-1,992:-1,993:-1,994:-1,995:-1,996:-1,997:-1,1010:-1,1011:-1,998:-1,999:-1,1000:-1,1001:-1,1002:-1,1003:-1,913:-1,920:-1,718:-1,958:-1,957:-1,922:-1,963:-1,923:-1,968:-1,1005:-1,612:-1,615:-1,989:-1
+prontera,164,204,5	shop	Japan Store Limited	81,542:-1,543:-1,1766:-1
 
 // South-central Prontera
-prontera,141,175,5	shop	Bow man		102,1705:100,1711:100,1716:100,1719:100,1720:100,1750:1,1751:1,1752:1,1753:1,1754:1,1755:1,1756:1,1766:1,1065:1
-prontera,141,173,5	shop	Sword shop	102,1117:100,1125:100,1155:100,1162:100,1130:100,1131:100,1132:100,1133:100,1134:100,1135:100,1136:100,1137:100,1138:100,1139:100,1140:100,1141:100,1161:100,1162:100,1163:100,1164:100,1165:100,1166:100,1167:100,1168:100,1169:100,1170:100
-prontera,141,171,5	shop	Spear man	102,1408:100,1461:100,1464:100,1413:100,1414:100,1415:100,1416:100,1466:100,1467:100,1468:100,1469:100,1470:100,1471:100
-prontera,141,169,5	shop	Axe man		102,1352:100,1355:100,1361:100,1363:100,1364:100,1365:100,1366:100,1367:100,1368:100,1369:100
-prontera,141,167,5	shop	Dagger man	102,1208:100,1220:100,1223:100,1224:100,1225:100,1226:100,1227:100,1228:100,1229:100,1230:100,1231:100,1232:100,1233:100,1234:100,1235:100,1236:100,1237:100
-prontera,141,165,5	shop	Mace shop	102,1505:100,1520:100,1514:100,1517:100,1522:100,1523:100,1524:100,1525:100,1526:100,1527:100,1528:100
-prontera,141,163,5	shop	Katar shop	102,1251:100,1253:100,1255:100,1256:100,1257:100,1258:100,1259:100,1260:100,1261:100
-prontera,141,161,5	shop	Rod man		102,1602:100,1608:100,1611:100,1613:100,1614:100,1615:100
-prontera,141,159,5	shop	Bookstore	102,1550:100,1551:100,1552:100,1553:100,1554:100,1555:100,1556:100,1557:100,1558:100
-prontera,141,177,5	shop	Armor shop	102,2306:100,2339:100,2311:100,2331:100,2336:100,2337:100,2326:100,2327:100,2315:100,2317:100,2102:100,2104:100,2106:100,2108:100,2402:100,2404:100,2406:100,2407:100,2408:100,2409:100,2502:100,2504:100,2506:100,2507:100,2508:100
+prontera,141,175,5	shop	Bow man		102,1705:-1,1711:-1,1716:-1,1719:-1,1720:-1,1750:1,1751:-1,1752:-1,1753:-1,1754:-1,1755:-1,1756:-1,1766:-1,1065:-1
+prontera,141,173,5	shop	Sword shop	102,1117:-1,1125:-1,1155:-1,1162:-1,1130:-1,1131:-1,1132:-1,1133:-1,1134:-1,1135:-1,1136:-1,1137:-1,1138:-1,1139:-1,1140:-1,1141:-1,1161:-1,1162:-1,1163:-1,1164:-1,1165:-1,1166:-1,1167:-1,1168:-1,1169:-1,1170:-1
+prontera,141,171,5	shop	Spear man	102,1408:-1,1461:-1,1464:-1,1413:-1,1414:-1,1415:-1,1416:-1,1466:-1,1467:-1,1468:-1,1469:-1,1470:-1,1471:-1
+prontera,141,169,5	shop	Axe man		102,1352:-1,1355:-1,1361:-1,1363:-1,1364:-1,1365:-1,1366:-1,1367:-1,1368:-1,1369:-1
+prontera,141,167,5	shop	Dagger man	102,1208:-1,1220:-1,1223:-1,1224:-1,1225:-1,1226:-1,1227:-1,1228:-1,1229:-1,1230:-1,1231:-1,1232:-1,1233:-1,1234:-1,1235:-1,1236:-1,1237:-1
+prontera,141,165,5	shop	Mace shop	102,1505:-1,1520:-1,1514:-1,1517:-1,1522:-1,1523:-1,1524:-1,1525:-1,1526:-1,1527:-1,1528:-1
+prontera,141,163,5	shop	Katar shop	102,1251:-1,1253:-1,1255:-1,1256:-1,1257:-1,1258:-1,1259:-1,1260:-1,1261:-1
+prontera,141,161,5	shop	Rod man		102,1602:-1,1608:-1,1611:-1,1613:-1,1614:-1,1615:-1
+prontera,141,159,5	shop	Bookstore	102,1550:-1,1551:-1,1552:-1,1553:-1,1554:-1,1555:-1,1556:-1,1557:-1,1558:-1
+prontera,141,177,5	shop	Armor shop	102,2306:-1,2339:-1,2311:-1,2331:-1,2336:-1,2337:-1,2326:-1,2327:-1,2315:-1,2317:-1,2102:-1,2104:-1,2106:-1,2108:-1,2402:-1,2404:-1,2406:-1,2407:-1,2408:-1,2409:-1,2502:-1,2504:-1,2506:-1,2507:-1,2508:-1
 
 // Pet Groomer Merchant
-prontera,218,211,4	shop	Pet Groomer	125,537:2500,643:3000,10013:1500,10014:2000
-izlude,164,138,4	shop	Pet Groomer	124,537:2500,643:3000,10013:1500,10014:2000
-morocc,269,167,4	shop	Pet Groomer	125,537:2500,643:3000,10013:1500,10014:2000
-geffen,193,152,4	shop	Pet Groomer	124,537:2500,643:3000,10013:1500,10014:2000
-payon,142,104,4		shop	Pet Groomer	124,537:2500,643:3000,10013:1500,10014:2000
+prontera,218,211,4	shop	Pet Groomer#1	125,537:2500,643:3000,10013:1500,10014:2000
+izlude,164,138,4	shop	Pet Groomer#2	124,537:2500,643:3000,10013:1500,10014:2000
+morocc,269,167,4	shop	Pet Groomer#3	125,537:2500,643:3000,10013:1500,10014:2000
+geffen,193,152,4	shop	Pet Groomer#4	124,537:2500,643:3000,10013:1500,10014:2000
+payon,142,104,4	shop	Pet Groomer#5	124,537:2500,643:3000,10013:1500,10014:2000

+ 4 - 5
doc/sample/npc_test_duplicate.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20070915
+//= 20180831
 //===== Description: ========================================= 
 //= An example of how duplicate NPCs are handled:
 //=  NPC variables are shared between all duplicates.
@@ -12,7 +12,7 @@
 //=  'OnInit' loads the middle Poring last, for some reason.
 //============================================================
 
--	script	Test Script	-1,1,1,{
+prontera,150,175,4	script	Duplicate Test Script	909,{
 	mes "Hi.";
 	mes "My coords are "+ .map$ +", "+ .x +"/" +.y ;
 	close;
@@ -27,6 +27,5 @@ OnTouch:
 	end;
 }
 
-prontera,150,175,4	duplicate(Test Script)	Test1	909
-prontera,155,175,4	duplicate(Test Script)	Test2	909,2,2
-prontera,160,175,4	duplicate(Test Script)	Test3	909,3,3
+prontera,155,175,4	duplicate(Duplicate Test Script)	Duplicate Test2	909,2,2
+prontera,160,175,4	duplicate(Duplicate Test Script)	Duplicate Test3	909,3,3

+ 3 - 3
doc/sample/npc_test_npctimer2.txt

@@ -3,17 +3,17 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20121003
+//= 20180831
 //===== Description: ========================================= 
 //= Demonstrates attached NPC timer commands.
 //============================================================
 
-prontera,156,183,0	script	NPCtimerTest::npctimerX0000	116,{
+prontera,156,186,0	script	NPCtimerTest::npctimer2X0000	116,{
 	mes "What would you like to know?";
 	select("Tell me my level.");
 	mes "I need time to think...";
-	initnpctimer;
 	attachnpctimer;
+	initnpctimer;
 	close;
 
 OnTimer5000:

+ 68 - 30
doc/script_commands.txt

@@ -943,8 +943,9 @@ This special label triggers when a player kills another player. The variable
 
 OnNPCKillEvent:
 
-This special label triggers when a player kills a monster without label. The variable
-'killedrid' is set to the Class (mob ID) of the monster killed.
+This special label triggers when a player kills a monster without label.
+The variable 'killedrid' is set to the Class (mob ID) of the monster killed.
+The variable 'killedgid' is set to the ID (unique mob game ID) of the monster killed.
 
 OnPCLoadMapEvent:
 
@@ -3031,6 +3032,14 @@ If no item ID/name given, all possible items in player's inventory will be merge
 Returns true if the item in <equipment slot> is tradable.
 Returns false otherwise.
 
+---------------------------------------
+
+*identifyall({<type>{,<account_id>}});
+
+Returns the count of unidentified items in the player inventory.
+If <type> is true the command will identify all the unidentified items as well (default).
+If <type> is false the command only returns the count of unidentified items.
+
 ---------------------------------------
 //
 2,1.- End of item-related commands.
@@ -3135,6 +3144,7 @@ DT_DAYOFMONTH - Day of the current month
 DT_MONTH - Month (constants for JANUARY to DECEMBER are available)
 DT_YEAR - Year
 DT_DAYOFYEAR - Day of the year
+DT_YYYYMMDD - current date in the form YYYYMMDD
 
 It will only return numbers. If another type is supplied -1 will be returned.
 
@@ -3904,7 +3914,7 @@ not.
 ==============================
 -------------------------
 
-*attachrid(<account ID>)
+*attachrid(<account ID>{,force})
 *detachrid;
 
 These commands allow the manipulation of the script's currently attached player.
@@ -3912,8 +3922,13 @@ While 'attachrid' allows attaching of a different player by using its account id
 for the parameter RID, 'detachrid' makes the following commands run as if the
 script was never invoked by a player.
 
-The command returns 0 if the player cannot be attached (if the account is offline
-or does not exist), and 1 upon success.
+The command returns false if the player cannot be attached (if the account is offline
+or does not exist), and true upon success.
+
+By default the command is executed with force, which causes to attach the player
+even if he is currently attached to another script. Since this is not always the
+desired behavior you can also specify false to the command and it will only return 
+true if the player is online and was not attached to another script.
 
 -------------------------
 
@@ -5422,12 +5437,15 @@ This will open the Auction window on the client connected to the invoking charac
 
 This function works the same as 'openstorage' but will open a guild storage
 window instead for the guild storage of the guild the invoking character belongs
-to. This is a function because it returns a value - 0 if the guild storage was
-opened successfully and 1 if it wasn't. (Notice, it's a ZERO upon success.)
-Since guild storage is only accessible to one character at one time, it may fail
-if another character is accessing the guild storage at the same time.
+to.
 
-This will also fail and return 2 if the character does not belong to any guild.
+Return values:
+ GSTORAGE_OPEN - Successfully opened.
+ GSTORAGE_STORAGE_ALREADY_OPEN - Player storage is already open.
+ GSTORAGE_ALREADY_OPEN - Guild storage is already open.
+ GSTORAGE_NO_GUILD - Player is not in a guild.
+ GSTORAGE_NO_STORAGE - Guild hasn't invested in the Guild Storage Expansion skill (only if OFFICIAL_GUILD_STORAGE is enabled).
+ GSTORAGE_NO_PERMISSION - Player doesn't have permission to use the guild storage.
 
 ---------------------------------------
 
@@ -5747,7 +5765,7 @@ executed on attack (or when attacked in the case of autobonus2).
 
 Rate is the trigger rate of the script (1000 = 100%).
 
-Duration is the time that the bonus will last for since the script has triggered.
+Duration is the time in milliseconds that the bonus will last for since the script has triggered.
 
 Skill ID/skill name the skill which will be used as trigger to start the bonus. (autobonus3)
 
@@ -6054,8 +6072,9 @@ The only very special thing about this command is an event label, which is an
 optional parameter. This label is written like '<NPC object name>::<label name>'
 and upon the monster being killed, it will execute the script inside of the
 specified NPC object starting from the label given. The RID of the player
-attached at this execution will be the RID of the killing character. The variable
-'killedrid' is set to the Class (mob ID) of the monster killed.
+attached at this execution will be the RID of the killing character.
+The variable 'killedrid' is set to the Class (mob ID) of the monster killed.
+The variable 'killedgid' is set to the ID (unique mob game ID) of the monster killed.
 
 <size> can be:
 	Size_Small	(0)		(default)
@@ -7008,7 +7027,7 @@ specified.
 *setmapflag "<map name>",<flag>{,<zone>{,<type>}};
 
 This command marks a specified map with the given map flag, which will alter the
-behavior of the map. A full list of mapflags is located in 'src/map/script_constants.h' with
+behavior of the map. A full list of mapflags is located in 'src/map/script_constants.hpp' with
 the 'mf_' prefix, and documentation can be found in 'doc/mapflags.txt'.
 
 The map flags alter the behavior of the map regarding teleporting (mf_nomemo,
@@ -7020,15 +7039,14 @@ skills or open up trade deals (mf_notrade, mf_novending, mf_noskill, mf_noicewal
 current weather effects (mf_snow, mf_fog, mf_sakura, mf_leaves, mf_rain, mf_clouds,
 mf_fireworks) and whether night will be in effect on this map (mf_nightenabled).
 
-The optional parameter 'zone' is used to set the zone for restricted mapflags.
+The optional parameter <zone> is used to set the zone for 'restricted' mapflags,
+GM level bypass for 'nocommand', base/job experience for 'bexp'/'jexp', and
+flag for 'battleground'.
 
-For the 'skill_damage' mapflag, 'zone' functions as 'value' (-100 to 100000) and
-'type' can be:
- 1: damage against players
- 2: damage against mobs
- 3: damage against bosses
- 4: damage against other
- 5: caster type
+For 'skill_damage' mapflag:
+	- Setting the flag here will adjust the global (all skills) damage on the map.
+	- <zone> is the -100 to 100000 damage adjustment value of the skills.
+	- See 'getmapflag' for the different <type> values.
 
 ---------------------------------------
 
@@ -7046,13 +7064,15 @@ The optional parameter 'zone' is used to remove the zone from restricted mapflag
 This command checks the status of a given mapflag and returns the mapflag's state.
 0 means OFF, and 1 means ON. See 'setmapflag' for a list of mapflags.
 
+For MF_RESTRICTED, the zone value of the map is returned.
+
 The optional parameter 'type' is used in the 'skill_damage' mapflag:
- 0: if mapflag is set (default)
- 1: damage against players
- 2: damage against mobs
- 3: damage against bosses
- 4: damage against other
- 5: caster type
+ SKILLDMG_MAX: if mapflag is set (default)
+ SKILLDMG_PC: damage against players
+ SKILLDMG_MOB: damage against mobs
+ SKILLDMG_BOSS: damage against bosses
+ SKILLDMG_OTHER: damage against other
+ SKILLDMG_CASTER: caster type
 
 ---------------------------------------
 
@@ -8674,12 +8694,25 @@ same as NPC sprite facing directions: 0=north, 1=northwest, 2=west, etc.
 
 ---------------------------------------
 
+*checkwall "<name>";
+
+This command will return true if the wall with the given name exists, false otherwise.
+
+---------------------------------------
+
 *readbook <book id>,<page>;
 
 This command will open a book item at the specified page.
 
 ---------------------------------------
 
+*open_roulette( {char_id} )
+
+Opens the roulette window for the currently attached character or the character
+with the given character id.
+
+---------------------------------------
+
 ========================
 |7.- Instance commands.|
 ========================
@@ -8894,8 +8927,13 @@ No Icon			: QTYPE_NONE
 ? Job Icon		: QTYPE_JOB2
 ! Event Icon	: QTYPE_EVENT
 ? Event Icon	: QTYPE_EVENT2
-Warg			: QTYPE_WARG
-Warg Face		: QTYPE_WARG2 (Only for packetver >= 20120410)
+Warg			: QTYPE_WARG (Only for packetver < 20170315)
+Warg Face		: QTYPE_WARG2 (Only for packetver >= 20120410 and < 20170315)
+Click Me		: QTYPE_CLICKME (Only for packetver >= 20170315)
+Daily Quest		: QTYPE_DAILYQUEST (Only for packetver >= 20170315)
+! Event Icon	: QTYPE_EVENT3 (Only for packetver >= 20170315)
+Job Quest		: QTYPE_JOBQUEST (Only for packetver >= 20170315)
+Jumping Poring	: QTYPE_JUMPING_PORING (Only for packetver >= 20170315)
 
 Map Mark Color, when used, creates a mark in the user's mini map on the position of the NPC,
 the available color values are:

+ 7 - 1
npc/battleground/bg_common.txt

@@ -196,7 +196,7 @@ bat_room,148,150,5	script	Teleporter#Battlefield	124,{
 			setarray .@xy[0],116,72;
 			break;
 		case 2:
-			setarray .@mapname$[0],"Morroc","moc_ruins";
+			setarray .@mapname$[0],"Morocc Ruins.","moc_ruins";
 			setarray .@xy[0],152,48;
 			break;
 		case 3:
@@ -219,6 +219,10 @@ bat_room,148,150,5	script	Teleporter#Battlefield	124,{
 			setarray .@mapname$[0],"Rachel.","rachel";
 			setarray .@xy[0],115,124;
 			break;
+		case 8:
+			setarray .@mapname$[0],"Morocc.","morocc";
+			setarray .@xy[0],156,46;
+			break;
 		}
 		mes "You will be sent back to "+.@mapname$[0]+".";
 		close2;
@@ -261,6 +265,8 @@ bat_room,148,150,5	script	Teleporter#Battlefield	124,{
 			set bat_return,6;
 		else if (.@mapname$ == "rachel")
 			set bat_return,7;
+		else if (.@mapname$ == "morocc")
+			set bat_return,8;
 		else
 			set bat_return,1;
 		warp "bat_room",154,150;

+ 4 - 2
npc/battleground/tierra/tierra01.txt

@@ -208,7 +208,8 @@ OnEnable:
 
 OnKill:
 	killmonster "bat_a01","barricade#bat_a01_a::OnMyMobDead";
-	delwall "bat_a01_c1";
+	if (checkwall("bat_a01_c1") == true)
+		delwall "bat_a01_c1";
 	end;
 
 OnMyMobDead:
@@ -230,7 +231,8 @@ OnEnable:
 
 OnKill:
 	killmonster "bat_a01","barricade#bat_a01_b::OnMyMobDead";
-	delwall "bat_a01_g1";
+	if (checkwall("bat_a01_g1") == true)
+		delwall "bat_a01_g1";
 	end;
 
 OnMyMobDead:

+ 4 - 2
npc/battleground/tierra/tierra02.txt

@@ -207,7 +207,8 @@ OnEnable:
 
 OnKill:
 	killmonster "bat_a02","barricade#bat_a02_a::OnMyMobDead";
-	delwall "bat_a02_c1";
+	if (checkwall("bat_a02_c1") == true)
+		delwall "bat_a02_c1";
 	end;
 
 OnMyMobDead:
@@ -229,7 +230,8 @@ OnEnable:
 
 OnKill:
 	killmonster "bat_a02","barricade#bat_a02_b::OnMyMobDead";
-	delwall "bat_a02_g1";
+	if (checkwall("bat_a02_g1") == true)
+		delwall "bat_a02_g1";
 	end;
 
 OnMyMobDead:

+ 2 - 7
npc/cities/lutie.txt

@@ -1,11 +1,5 @@
 //===== rAthena Script =======================================
 //= Lutie Town
-//===== By: ==================================================
-//= rAthena Dev Team
-//===== Current Version: =====================================
-//= 1.7
-//===== Compatible With: =====================================
-//= rAthena Project
 //===== Description: =========================================
 //= Lutie - City NPCs
 //===== Additional Comments: =================================
@@ -17,11 +11,12 @@
 //= 1.5 Fixed a bug that could reset Lutie quest state [Lupus]
 //= 1.6 Heavy optimization to all the NPCs [DZeroX]
 //= 1.7 Updated to match AEGIS script. [Kisuka]
+//= 1.8 Split Mr. Claus to pre-re and re [Lemongrass]
 //============================================================
 
 // Teleport to Lutie
 //============================================================
-aldebaran,223,222,4	script	Mr. Claus	718,{
+-	script	Mr. Claus	718,{
 	mes "[Mr. Claus]";
 	mes "Ho Ho Ho~";
 	mes "Merry Christmas!!";

+ 2 - 1
npc/custom/battleground/unofficial/bg_tierra_01.txt

@@ -275,7 +275,8 @@ OnBuild:
 
 OnDestroy:
 	killmonster "bat_a01","Guillaume_TV1B::OnWall";
-	delwall "bat_a01_g1";
+	if (checkwall("bat_a01_g1") == true)
+		delwall "bat_a01_g1";
 	set .MyMobCount,0;
 	end;
 

+ 2 - 1
npc/custom/battleground/unofficial/bg_tierra_02.txt

@@ -275,7 +275,8 @@ OnBuild:
 
 OnDestroy:
 	killmonster "bat_a02","Guillaume_TV2B::OnWall";
-	delwall "bat_a02_g1";
+	if (checkwall("bat_a02_g1") == true)
+		delwall "bat_a02_g1";
 	set .MyMobCount,0;
 	end;
 

+ 35 - 24
npc/custom/events/mushroom_event.txt

@@ -16,47 +16,58 @@
 
 prontera,142,228,6	script	Find the Mushroom	1084,{
 	mes "[ Find The Mushroom ]";
-	if (!.Status)
-		mes "There is no event at the moment!";
-	else {
-		mes "There are "+.Spawn+" Mushrooms left in "+.Map$+"!";
-		mes "Find and kill the mushrooms to gain "+getitemname(.Prize)+"!";
+	if (.status == 1) {
+		.@count = mobcount( .event_map$, strnpcinfo(0) + "::OnMobKilled" );
+		if (.@count > 0) {
+			mes "There are " + .@count + " Mushrooms left in " + .event_map$ + "!";
+			mes "Find and kill the mushrooms to gain " + getitemname(.prize) + "!";
+			close;
+		}
+		.event_map$ = "";
+		.status = 0;
+		mes "All the mushrooms are killed?";
 	}
-	if (.Status || getgmlevel() < .GM) close;
+	mes "There is no event at the moment!";
+	if (.status || getgmlevel() < .GM) close;
 	mes "Start the event?";
 	next;
-	if(select("- No:- Yes") == 1) close;
-	donpcevent strnpcinfo(0)+"::OnMinute10";
+	if (select("- No:- Yes") == 1) close;
+	donpcevent strnpcinfo(0) + "::OnMinute10";
 	mes "[ Find The Mushroom ]";
 	mes "Event started!";
 	close;
 
 OnInit:
-	set .Prize,512;	// Reward item ID
-	set .Amount,10;	// Reward item amount
-	set .GM,60;	// GM level required to access NPC
-	setarray .Maps$[0],"izlude","geffen","morocc","prontera"; // Possible maps
+	.prize = 512;	// Reward item ID
+	.amount = 10;	// Reward item amount
+	.GM = 60;		// GM level required to access NPC
+	setarray .maps_list$[0],"izlude","geffen","morocc","prontera"; // Possible maps
 	end;
 
 OnMinute10:	// Start time (every hour)
-	if (.Status) end;
-	set .Status,1;
-	set .Spawn,rand(1,10);	// How many Mushrooms should spawn?
-	set .Map$,.Maps$[rand(getarraysize(.Maps$))];
-	killmonster .Map$,"All";
-	monster .Map$,0,0,"Please don't kill me!",1084,.Spawn,strnpcinfo(0)+"::OnMobKilled";
-	announce "Find the Mushroom : Total of "+.Spawn+" Mushrooms have been spawned in "+.Map$+"!",0;
+	if (.status) end;
+	.status = 1;
+	.@spawn = rand(1,10);	// How many Mushrooms should spawn?
+	.event_map$ = .maps_list$[ rand(getarraysize(.maps_list$)) ];
+	.@label$ = strnpcinfo(0) + "::OnMobKilled";
+	killmonster .event_map$, .@label$;
+	monster .event_map$,0,0,"Please don't kill me!",1084,.@spawn, .@label$;
+	announce "Find the Mushroom : Total of " + .@spawn + " Mushrooms have been spawned in " + .event_map$ + "!",0;
 	sleep 2500;
-	announce "Find the Mushroom : Every Mushroom you kill will give you "+getitemname(.Prize)+"!",0;
+	announce "Find the Mushroom : Every Mushroom you kill will give you " + getitemname(.prize) + "!",0;
 	end;
 
 OnMobKilled:
-	set .Spawn, .Spawn - 1;
-	getitem .Prize, .Amount;
-	if (.Spawn) announce "[ "+strcharinfo(0)+" ] has killed a Mushroom. There are now "+.Spawn+" Mushroom(s) left.",bc_map;
+	if (playerattached() == 0)
+		end;
+	getitem .prize, .amount;
+	.@spawn = mobcount( .event_map$, strnpcinfo(0) + "::OnMobKilled" );
+	if (.@spawn > 0)
+		announce "[ " + strcharinfo(0) + " ] has killed a Mushroom. There are now " + .@spawn + " Mushroom(s) left.",bc_map;
 	else {
 		announce "The Find the Mushroom Event has ended. All the Mushrooms have been killed.",0;
-		set .Status,0;
+		.status = 0;
+		.event_map$ = "";
 	}
 	end;
 }

+ 25 - 5
npc/custom/quests/quest_shop.txt

@@ -24,13 +24,17 @@
 
 // Shop NPCs -- supplying no argument displays entire menu.
 //	callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}};
+//  ADD YOUR NPC HERE
 //============================================================
 prontera,164,203,6	script	Quest Shop#1	998,{ callfunc "qshop"; }
+// prontera,165,203,6	script	Quest Shop#2	998,{ callfunc "qshop",1,2; }	// call the shop 1 and 2 defined below
+// etc.. Add your Shop NPCs 'Quest Shop#XXX' here
+//============================================================
 
 
-// Script Core
+// Script Core - DO NOT DUPLICATE THIS NPC !!!!!!!!!!!!!
 //============================================================
--	script	quest_shop	-1,{ 
+-	script	quest_shop	-1,{
 function Add; function Chk; function Slot;
 OnInit:
 	freeloop(1);
@@ -50,14 +54,23 @@ OnInit:
 //	setarray .Points$[0],"<variable name>","<display name>";
 // -----------------------------------------------------------
 
-	setarray .Points$[0],"#CASHPOINTS","Cash Points";
+	setarray .Points$[0],
+		"#CASHPOINTS", "Cash Points";
+
+
+//=====================================================================================
+// ------------------- ADD YOUR SHOPS NAME AND ITEMS SHOPS STARTING HERE --------------
+//=====================================================================================
 
 // -----------------------------------------------------------
 //  Shop IDs -- to add shops, copy dummy data at bottom of file.
 //	setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...};
 // -----------------------------------------------------------
 
-	setarray .Shops$[1],"Headgears","Weapons","Other";
+	setarray .Shops$[1],
+		"Headgears",	// Shop Named 1
+		"Weapons",		// Shop Named 2
+		"Other";		// Shop Named 3
 
 // -----------------------------------------------------------
 //  Quest items -- do NOT use a reward item more than once!
@@ -66,14 +79,17 @@ OnInit:
 //	    <required item ID>,<required item amount>{,...});
 // -----------------------------------------------------------
 
+// Shop 1
 	Add(1,5022,1,0,0,7086,1,969,10,999,40,1003,50,984,2);
 	Add(1,5032,1,0,0,1059,250,2221,1,2227,1,7063,600);
 	Add(1,5027,1,0,0,2252,1,1036,400,7001,50,4052,1);
 	Add(1,5045,1,0,0,2252,1,1054,450,943,1200);
 
+// Shop 2
 	Add(2,1224,1,0,0,7297,30,969,10,999,50,714,10);
 	Add(2,1225,1,0,0,7292,30,969,10,999,50,714,10);
 
+// Shop 3
 	Add(3,531,1,3,0,512,1,713,1);
 	Add(3,532,1,3,0,513,1,713,1);
 	Add(3,533,1,3,0,514,1,713,1);
@@ -81,6 +97,10 @@ OnInit:
 
 // -----------------------------------------------------------
 
+//=====================================================================================
+// ------------------- YOUR SHOPS AND ITEMS SHOPS HAVE BEEN ADDED ---------------------
+//=====================================================================================
+
 	freeloop(0);
 	set .menu$,"";
 	for(set .@i,1; .@i<=getarraysize(.Shops$); set .@i,.@i+1) {
@@ -133,7 +153,7 @@ OnBuyItem:
 	while(1) {
 		switch(select(" ~ Purchase ^0055FF"+getitemname(.@q[0])+"^000000:"+((.@preview && !@qe[7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) {
 		case 1:
-			if (@qe[0]) { 
+			if (@qe[0]) {
 				mes "[Quest Shop]";
 				mes "You're missing one or more quest requirements.";
 				close;

+ 3 - 1
npc/guild2/agit_main_se.txt

@@ -1700,7 +1700,9 @@ OnBarrierDestroyed:
 	end;
 
 OnDisable:
-	delwall substr(strnpcinfo(2),0,1)+substr(strnpcinfo(2),8,9)+"_"+strnpcinfo(1);
+	.@wall_name$ = substr(strnpcinfo(2),0,1) + substr(strnpcinfo(2),8,9) + "_" + strnpcinfo(1);
+	if (checkwall(.@wall_name$) == true)
+		delwall .@wall_name$;
 	killmonster strnpcinfo(2),strnpcinfo(0)+"::OnBarrierDestroyed";
 	end;
 }

+ 2 - 2
npc/jobs/2-1/blacksmith.txt

@@ -1100,11 +1100,11 @@ morocc,27,112,4	script	Wickebine#BLS	725,{
 		mes "[Wickebine]";
 		mes "...";
 		next;
-		mes "[Wickemine]";
+		mes "[Wickebine]";
 		mes "...";
 		mes "......";
 		next;
-		mes "[Wickmine]";
+		mes "[Wickebine]";
 		mes "They're late.";
 		mes "They're late,";
 		mes "they're late,";

+ 4 - 38
npc/jobs/2-2/crusader.txt

@@ -32,11 +32,12 @@
 //= 3.1 Adding Hermemton's changes. [L0ne_W0lf]
 //= 3.2 Added Quest Log commands. [Kisuka]
 //= 3.3 Removed the need for use of 'goto.' [L0ne_W0lf]
+//= 4.0 Split for renewal ep16.1 [Capuche]
 //============================================================
 
 // Senior Crusader: 1st Collect Items Test
 //============================================================
-prt_castle,45,169,5	script	Senior Crusader	752,{
+-	script	Senior Crusader_	-1,{
 	mes "[Michael Halig]";
 	if (Upper == 1) { //the baby classes were totally blocked... due to missing == 1
 		mes "Go and train yourself in preparation for the holy war that is coming. Victory will be in the hands of those who are most ready to receive it.";
@@ -316,7 +317,7 @@ prt_castle,45,169,5	script	Senior Crusader	752,{
 
 // Suffering Man: 2nd Endurance Test
 //============================================================
-prt_castle,164,32,1	script	Man in Anguish	733,{
+-	script	Man in Anguish_	-1,{
 	mes "[Murnak Mijoul]";
 	if(BaseJob != Job_Swordman) {
 		if (BaseJob == Job_Crusader) {
@@ -799,7 +800,7 @@ prt_church,95,127,3	script	Crusader	745,{
 
 // Crusader: 4th Purification Test
 //============================================================
-prt_castle,35,151,5	script	Patron Knight	751,{
+-	script	Patron Knight_	-1,{
 	mes "[Bliant Piyord]";
 	mes "Welcome.";
 	if(BaseJob != Job_Swordman) {
@@ -1203,15 +1204,6 @@ OnDead:
 	end;
 }
 
-
-job_cru,98,105,4	script	 Summoner#cr5	45,3,3,{
-OnTouch_:
-	set CRUS_Q,6;
-	changequest 3010,3011;
-	warp "prt_castle",164,28;
-	end;
-}
-
 //----------------------------------------------------------------------------
 // Purification Test
 //----------------------------------------------------------------------------
@@ -1410,32 +1402,6 @@ OnDead:
 	end;
 }
 
-job_cru,168,180,4	script	Monster Summon#cr5	45,3,3,{
-OnInit:
-	disablenpc "Monster Summon#cr5";
-	end;
-
-OnTouch_:
-	warp "prt_castle",35,147;
-	donpcevent "Monster Summon#cr0::OnReset";
-	donpcevent "Monster Summon#cr4::OnReset";
-	donpcevent "Monster Summon#cr0::OnEnd";
-	donpcevent "Monster Summon#cr4::OnEnd";
-	donpcevent "Monster Summon#cr5::OnEnd";
-	donpcevent "Monster Summon#cr6::OnStop";
-	donpcevent "Monster Summon#cr6::OnEnd";
-	donpcevent "Waiting Room#cr1::OnStart";
-	end;
-
-OnStart:
-	enablenpc "Monster Summon#cr5";
-	end;
-
-OnEnd:
-	disablenpc "Monster Summon#cr5";
-	end;
-}
-
 job_cru,2,2,1	script	Monster Summon#cr6	-1,{
 OnTimer241000:
 	areawarp "job_cru",160,14,175,178,"job_cru",24,169;

+ 0 - 3
npc/mapflag/skill_damage.txt

@@ -11,9 +11,6 @@
 //= skill_damage_db.txt for 'Map' type 16 will be applied.
 //= See the mapflag documentation for details about extra
 //= parameters.
-//=
-//= You MUST enable ADJUST_SKILL_DAMAGE in 'src/config/core.hpp'
-//= for this mapflag to take effect.
 //===== Additional Comments: ================================= 
 //= 1.0 Initial script. [Cydh]
 //============================================================

+ 2 - 1
npc/merchants/advanced_refiner.txt

@@ -93,6 +93,7 @@ S_RefineValidate:
 	.@item_req = getarg(1);
 	.@price = getarg(2);
 	.@part = getarg(3);
+	setarray .@card[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
 
 	// If the VIP system is enabled, the prices for non-VIP players are considerably higher.
 	if (VIP_SCRIPT && !vip_status(VIP_STATUS_ACTIVE)) {
@@ -158,7 +159,7 @@ S_RefineValidate:
 
 			// anti-hack
 			if (callfunc("F_IsEquipIDHack", .@part, getarg(4)) ||
-				callfunc("F_IsEquipRefineHack", .@part, getarg(5))) {
+				callfunc("F_IsEquipRefineHack", .@part, getarg(5)) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3])) {
 				mes "[Holink]";
 				emotion ET_FRET;
 				mes "Wait a second...";

+ 9 - 5
npc/merchants/refine.txt

@@ -609,6 +609,7 @@ function	script	refinemain	{
 	}
 	.@refineitemid = getequipid(.@part); // save id of the item
 	.@refinerycnt = getequiprefinerycnt(.@part); //save refinery count
+	setarray .@card[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
 	.@price = getequiprefinecost(.@part, REFINE_COST_NORMAL, REFINE_ZENY_COST);
 	.@material = getequiprefinecost(.@part, REFINE_COST_NORMAL, REFINE_MATERIAL_ID);
 
@@ -687,7 +688,7 @@ function	script	refinemain	{
 		delitem .@material,1;
 
 		// anti-hack
-		if (callfunc("F_IsEquipIDHack", .@part, .@refineitemid) ||
+		if (callfunc("F_IsEquipIDHack", .@part, .@refineitemid) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3]) ||
 		    callfunc("F_IsEquipRefineHack", .@part, .@refinerycnt)) {
 			mes "["+ .@npc_name$ +"]";
 			emotion ET_FRET;
@@ -745,7 +746,7 @@ function	script	refinemain	{
 	}
 
 // New Refining Functions ========================
-	if(getequiprefinerycnt(.@part) < .@safe) {
+	if (.@refinerycnt < .@safe) {
 		mes "["+ .@npc_name$ +"]";
 		mes "I can refine this to the safe limit or a desired number of times. It's your choice.";
 		next;
@@ -754,7 +755,7 @@ function	script	refinemain	{
 		.@menu2 = 2;
 	switch(.@menu2){
 	case 1: 
-		.@refinecnt = .@safe - getequiprefinerycnt(.@part);
+		.@refinecnt = .@safe - .@refinerycnt;
 		break;
 	case 2:
 		next;
@@ -762,7 +763,7 @@ function	script	refinemain	{
 		mes "How many times would you like me to refine your item?";
 		next;
 		input .@refinecnt;
-		.@refinecheck = .@refinecnt + getequiprefinerycnt(.@part);
+		.@refinecheck = .@refinecnt + .@refinerycnt;
 		if (.@refinecnt < 1 || .@refinecheck > 10) {
 			mes "["+ .@npc_name$ +"]";
 			mes "I can't refine this item that many times.";
@@ -808,7 +809,9 @@ function	script	refinemain	{
 			mes "Look here... you don't have any items on...";
 			close;
 		}
-		if (getequipid(.@part) != .@refineitemid || (.@menu2 == 1 && getequippercentrefinery(.@part) < 100)) {
+		// anti-hack
+		if (callfunc("F_IsEquipIDHack", .@part, .@refineitemid) || callfunc("F_IsEquipCardHack", .@part, .@card[0], .@card[1], .@card[2], .@card[3]) ||
+				callfunc("F_IsEquipRefineHack", .@part, .@refinerycnt) || (.@menu2 == 1 && getequippercentrefinery(.@part) < 100)) {
 			mes "["+ .@npc_name$ +"]";
 			mes "Clang... No, but did you imagine I could be so stupid?!";
 			mes "You changed it...";
@@ -832,6 +835,7 @@ function	script	refinemain	{
 		successrefitem .@part;
 		emotion ET_BEST;
 		.@refinecnt = .@refinecnt - 1;
+		.@refinerycnt = getequiprefinerycnt(.@part);
 		next;
 	}
 	mes "["+ .@npc_name$ +"]";

+ 2 - 9
npc/merchants/shops.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= rAthena Dev Team
 //===== Current Version: ===================================== 
-//= 3.5
+//= 3.6
 //===== Compatible With: ===================================== 
 //= rAthena Project
 //===== Description: ========================================= 
@@ -39,6 +39,7 @@
 //= 3.3 Moved more shops to Renewal file. [Euphy]
 //= 3.4 Moved Izlude shops to pre-re/re paths. [Streusel]
 //= 3.5 Moved Ninja shops to Pre-RE/RE paths. [Euphy]
+//= 3.6 Moved Morocc shops to Pre-RE/RE paths. [zackdreaver]
 //============================================================ 
 
 //=======================================================
@@ -205,8 +206,6 @@ xmas_in,174,98,2	shop	Weapon Dealer#xmas	49,1201:-1,1204:-1,1207:-1,1210:-1,1213
 // Morroc - Post Ep. 12.1
 //=======================================================
 in_moc_16,22,20,7	shop	Sepulchral Merchant#moc	880,1771:-1
-moc_ruins,91,128,4	shop	Tool Dealer#moc1	93,1750:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1
-moc_ruins,114,63,6	shop	Tool Dealer#moc2	99,1750:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1,2242:-1
 moc_ruins,93,53,2	shop	Item Collector#moc1	85,911:-1,528:-1,919:-1,925:-1
 moc_ruins,81,113,0	shop	Item Collector#moc2	85,911:-1,528:-1,919:-1,925:-1
 moc_ruins,110,105,2	shop	Jeweler#moc1	102,721:-1,723:-1,726:-1,728:-1,729:-1
@@ -217,7 +216,6 @@ moc_ruins,71,139,5	shop	Trader#moc3	93,2612:-1
 moc_ruins,125,135,6	shop	Trader#moc4	89,2609:-1,1516:-1,1522:-1
 moc_ruins,87,109,0	shop	Butcher#moc	58,517:-1
 moc_ruins,90,149,6	shop	Trader#moc5	99,513:-1,513:-1,513:-1,513:-1,513:-1,513:-1
-moc_ruins,118,170,4	shop	Pet Groomer#moc	125,537:-1,643:-1,10013:-1,10014:-1,554:-1,6113:-1,6114:-1,6115:-1
 morocc_in,141,67,0	shop	Weapon Dealer#moc1	58,1750:-1,1751:-1,1701:-1,1601:-1,1201:-1,1204:-1,1207:-1,1210:-1,1213:-1,1216:-1,1219:-1,1222:-1,1250:-1,1252:-1,1254:-1
 morocc_in,141,60,0	shop	Armor Dealer#moc	58,2101:-1,2103:-1,2401:-1,2403:-1,2405:-1,2501:-1,2503:-1,2218:-1,2301:-1,2303:-1,2305:-1,2321:-1,2328:-1,2332:-1,2307:-1,2309:-1,2335:-1,2628:-1
 morocc_in,132,57,0	shop	Weapon Dealer#moc2	99,1146:-1,1245:-1
@@ -304,11 +302,6 @@ ve_in,252,313,0	shop	Magical Item Seller#ve	942,717:-1,1601:-1,1604:-1,1607:-1,1
 //=======================================================
 // Cooking Addition
 //=======================================================
-prontera,156,212,1	shop	Chef Assistant#prt	700,7454:-1,7456:-1,7482:-1,580:-1
-payon,206,119,5	shop	Chef Assistant#pay	89,7455:-1
-moc_ruins,115,123,5	shop	Chef Assistant#moc	86,7455:-1,7453:-1,7454:-1,7456:-1,7452:-1
-geffen,196,111,3	shop	Chef Assistant#gef	85,7482:-1
-alberta,167,135,5	shop	Chef Assistant#alb	712,579:-1
 aldebaran,165,107,2	shop	Chef Assistant#alde	97,7456:-1,7452:-1,580:-1
 comodo,225,164,3	shop	Chef Assistant#cmd	83,7455:-1,7453:-1,7454:-1,579:-1
 umbala,102,154,3	shop	Chef Assistant#um	83,7456:-1,577:-1

+ 0 - 1
npc/merchants/socket_enchant2.txt

@@ -383,7 +383,6 @@
 payon,236,199,3	duplicate(SocketEnchant2)	Leablem#pay	86
 lighthalzen,96,137,3	duplicate(SocketEnchant2)	Leablem#lhz	86
 prt_in,22,60,6	duplicate(SocketEnchant2)	Leablem#prt	86
-moc_ruins,154,86,3	duplicate(SocketEnchant2)	Leablem#moc	86
 
 function	script	Func_Socket2	{
 	.@item_id = getarg(0);

+ 1 - 0
npc/other/card_trader.txt

@@ -18,6 +18,7 @@
 //============================================================ 
 
 prontera,115,90,0	script	Putty	4_F_01,{
+	disable_items;
 	setarray .@card1[0], 4001,4006,4009,4019,4075,4033,4012,4016,4026,4022,
 				4027,4028,4038,4025,4021,4050,4079,4081,4090,4094,
 				4101,4104,4110,4114,4119,4108,4095,4231,4280,4008,

+ 11 - 0
npc/pre-re/cities/lutie.txt

@@ -0,0 +1,11 @@
+//===== rAthena Script =======================================
+//= Lutie Town Pre-Renewal
+//===== Description: =========================================
+//= Lutie - City NPCs
+//===== Additional Comments: =================================
+//= 1.0 First version. [Lemongrass]
+//============================================================
+
+// Teleport to Lutie
+//============================================================
+aldebaran,223,222,4	duplicate(Mr. Claus)	Mr. Claus#1	718

+ 65 - 0
npc/pre-re/jobs/2-2/crusader.txt

@@ -0,0 +1,65 @@
+//===== rAthena Script ======================================= 
+//= Crusader Job Quest
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Job quest for Crusader classes
+//===== Changelogs: ==========================================
+//= 1.0 Location changed in ep16.1 [Capuche]
+//============================================================
+
+// Senior Crusader: 1st Collect Items Test
+//============================================================
+prt_castle,45,169,5	duplicate(Senior Crusader_)	Senior Crusader	4_M_CRU_OLD
+
+// Suffering Man: 2nd Endurance Test
+//============================================================
+prt_castle,164,32,1	duplicate(Man in Anguish_)	Man in Anguish	4_M_JOB_KNIGHT1
+
+// Crusader: 4th Purification Test
+//============================================================
+prt_castle,35,151,5	duplicate(Patron Knight_)	Patron Knight	4_M_CRU
+
+// Actual tests
+//============================================================
+
+//----------------------------------------------------------------------------
+// Endurance Test
+//----------------------------------------------------------------------------
+job_cru,98,105,4	script	 Summoner#cr5	WARPNPC,3,3,{
+	end;
+OnTouch_:
+	set CRUS_Q,6;
+	changequest 3010,3011;
+	warp "prt_castle",164,28;
+	end;
+}
+
+//----------------------------------------------------------------------------
+// Purification Test
+//----------------------------------------------------------------------------
+job_cru,168,180,4	script	Monster Summon#cr5	WARPNPC,3,3,{
+	end;
+OnInit:
+	disablenpc "Monster Summon#cr5";
+	end;
+
+OnTouch_:
+	warp "prt_castle",35,147;
+	donpcevent "Monster Summon#cr0::OnReset";
+	donpcevent "Monster Summon#cr4::OnReset";
+	donpcevent "Monster Summon#cr0::OnEnd";
+	donpcevent "Monster Summon#cr4::OnEnd";
+	donpcevent "Monster Summon#cr5::OnEnd";
+	donpcevent "Monster Summon#cr6::OnStop";
+	donpcevent "Monster Summon#cr6::OnEnd";
+	donpcevent "Waiting Room#cr1::OnStart";
+	end;
+
+OnStart:
+	enablenpc "Monster Summon#cr5";
+	end;
+
+OnEnd:
+	disablenpc "Monster Summon#cr5";
+	end;
+}

+ 19 - 1
npc/pre-re/merchants/shops.txt

@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= Daegaladh
 //===== Current Version: ===================================== 
-//= 1.2
+//= 1.3
 //===== Compatible With: ===================================== 
 //= rAthena Project
 //===== Description: ========================================= 
@@ -12,6 +12,7 @@
 //= 1.0 First version.
 //= 1.1 Moved Izlude shops to pre-re/re paths. [Streusel]
 //= 1.2 Moved Ninja shops to Pre-RE/RE paths. [Euphy]
+//= 1.3 Moved Morocc shops to Pre-RE/RE paths. [zackdreaver]
 //============================================================ 
 
 //=======================================================
@@ -24,8 +25,25 @@ izlude,164,138,4	shop	Pet Groomer#iz	124,537:-1,643:-1,10013:-1,10014:-1,554:-1,
 izlude_in,115,61,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,121,64,3	shop	Trading Merchant#iz	900,13200:-1,13201:-1,13202:-1,13150:-1,13102:-1,13151:-1,13154:-1,13155:-1,13163:-1,13165:-1,13168:-1
 
+//=======================================================
+// Morroc - Post Ep. 12.1
+//=======================================================
+moc_ruins,118,170,4	shop	Pet Groomer#moc	125,537:-1,643:-1,10013:-1,10014:-1,554:-1,6113:-1,6114:-1,6115:-1
+moc_ruins,91,128,4	shop	Tool Dealer#moc1	93,1750:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1
+moc_ruins,114,63,6	shop	Tool Dealer#moc2	99,1750:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1,2242:-1
+
 //=======================================================
 // Ninja Shops
 //=======================================================
 que_ng,72,31,2	shop	Boonji#nin	83,13250:-1,13251:-1,13252:-1,13253:-1,13254:-1
 que_ng,73,26,5	shop	Boonray#nin	83,2117:-1,7521:-1,7522:-1,7523:-1,7524:-1
+
+//=======================================================
+// Cooking Addition
+//=======================================================
+prontera,156,212,1	shop	Chef Assistant#prt	700,7454:-1,7456:-1,7482:-1,580:-1
+moc_ruins,115,123,5	shop	Chef Assistant#moc	86,7455:-1,7453:-1,7454:-1,7456:-1,7452:-1
+geffen,196,111,3	shop	Chef Assistant#gef	85,7482:-1
+alberta,167,135,5	shop	Chef Assistant#alb	712,579:-1
+payon,206,119,5	shop	Chef Assistant#pay	89,7455:-1
+

+ 18 - 0
npc/pre-re/merchants/socket_enchant2.txt

@@ -0,0 +1,18 @@
+//===== rAthena Script ======================================= 
+//= Episode 12 Socket Enchant NPC
+//===== By: ================================================== 
+//= Gepard
+//===== Current Version: ===================================== 
+//= 1.1a
+//===== Compatible With: ===================================== 
+//= rAthena Project
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Adds slots to selected weapons and armor.
+//===== Additional Comments: ================================= 
+//= 1.0 First version.
+//= 1.1 Duplicates now spawn from floating NPCs. [L0ne_W0lf]
+//= 1.1a Added 'disable_items' command. [Euphy]
+//============================================================ 
+
+moc_ruins,154,86,3	duplicate(SocketEnchant2)	Leablem#moc	86

+ 13 - 0
npc/pre-re/quests/cooking_quest.txt

@@ -0,0 +1,13 @@
+//===== rAthena Script ======================================= 
+//= Cooking Quest
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Official Cooking Quest (10.3)
+//===== Changelogs: ==========================================
+//= 1.0 Location changed in ep16.1 [Capuche]
+//============================================================
+
+prt_castle,43,30,3	duplicate(Charles Orleans#cook_)	Charles Orleans#cook	4_M_OILMAN
+prt_castle,45,35,5	duplicate(Madeleine Chu#cook_)	Madeleine Chu#cook	4_COOK
+prt_castle,45,28,3	duplicate(Child with Cat#cook_)	Child with Cat#cook	4_F_YUNYANG
+prt_castle,44,30,5	duplicate(Wickebine#cook_)	Wickebine#cook	4_F_JOB_ASSASSIN

+ 9 - 0
npc/pre-re/quests/first_class/tu_archer.txt

@@ -11,6 +11,15 @@
 //= Archer training quest.
 //===== Additional Comments: ================================= 
 //= 1.0 First version. [Euphy]
+//= 1.1 Location changed in ep16.1 of Minister NPC. [Capuche]
 //============================================================ 
 
 mjolnir_11,27,223,3	duplicate(Acolyte_Tu)	Acolyte#tu	95
+
+// Minister
+//============================================================
+prt_castle,76,165,6	duplicate(Minister#tu_)	Minister#tu	1_M_JOBTESTER
+
+// Range NPC
+//============================================================
+prt_castle,94,150,4	duplicate(#sound_tu_)	#sound_tu	HIDDEN_WARP_NPC,6,6

+ 5 - 0
npc/pre-re/quests/quests_13_1.txt

@@ -10,6 +10,11 @@
 //= Contains duplicate NPCs from main script.
 //===== Additional Comments: ================================= 
 //= 1.0 Moved Izlude NPC to pre-re/re paths. [Euphy]
+//= 1.1 Renewal script update for ep16.1 [Capuche]
 //============================================================ 
 
 izlude,99,136,5	duplicate(PromotionalStaff_izlude)	Promotional Staff#iz	100
+prt_castle,121,51,3	duplicate(Alliance Manager#prt_)	Alliance Manager#prt	4_M_CRU_OLD
+prt_castle,117,51,5	duplicate(Member of Alliance#prt_)	Member of Alliance#prt	4_M_SAGE_A
+prt_castle,83,67,5	duplicate(Recruiter for the Brave_)	Recruiter for the Brave	4_M_MANAGER
+prt_castle,88,165,3	duplicate(Laur_)	Laur	1_M_LIBRARYMASTER

+ 3570 - 0
npc/pre-re/quests/quests_morocc.txt

@@ -0,0 +1,3570 @@
+//===== rAthena Script =======================================
+//= Morroc Quest NPCs
+//===== Description: =========================================
+//= [Official Conversion]
+//= Quest NPCs related to Morroc.
+//===== Changelogs: ==========================================
+//= 1.0 Succession of the Prince removed in ep16.1 [Capuche]
+//= 1.1 Moved renewal specific npcs [zackdreaver]
+//============================================================
+
+// Stop Post Quest
+// ============================================================
+moc_ruins,113,181,4	duplicate(William)	William#moc	89
+
+// Binoculars Quest
+// ============================================================
+moc_ruins,118,176,4	duplicate(Alchemist)	Alchemist#moc	64
+
+// Resurrection of Satan Morroc
+// ============================================================
+
+morocc,176,103,3	duplicate(Continental Official)	Continental Official#mor	754
+
+// Succession of the Prince
+// ============================================================
+prontera,153,353,4	script	Messenger#prince1	105,{
+	if (nk_prince == 0) {
+		if (rebirth_moc_edq > 1) {
+			mes "[Messenger]";
+			mes "I am a messenger from the Royal court, sent to find a reliable adventurer. This is all about the very important issues of our nation.";
+			next;
+			if (aru_monas > 23) {
+				mes "[Messenger]";
+				mes "It might have brought national disorder, but people are all wary about the rebirth of the devil. We are in the perfect times to process this issue without making any additional fuss.";
+				next;
+				mes "[Messenger]";
+				mes "Oh, I don't want you to panic too much... Hmm... what I want to say is, Tristan the third, the ruler of Rune Midgarts...";
+				next;
+				switch(select("Passed away?:Came for a celebration again?")) {
+				case 1:
+					emotion ET_SURPRISE;
+					mes "[Messenger]";
+					mes "You already know about that...";
+					mes "Then, I don't need to give";
+					mes "you any further explanation.";
+					next;
+					mes "[Messenger]";
+					mes "The King's position cannot";
+					mes "be empty for too long.";
+					mes "Now, the debate over selecting our next King is actively in progress. Please give us a hand with this, for the tomorrow of Rune Midgarts.";
+					set nk_prince,1;
+					setquest 10000;
+					close;
+				case 2:
+					mes "[Messenger]";
+					mes "...";
+					next;
+					mes "[Messenger]";
+					mes "What are you thinking?";
+					mes "Do you really think a celebration is momentous for a nation right now?";
+					next;
+					mes "[Messenger]";
+					mes "Yeah...";
+					mes "It's quite natural for you to expect nothing. I still don't know how to express this to you. Don't be too perplexed.";
+					next;
+					mes "[Messenger]";
+					mes "Tristan the 3rd, the ruler of Rune Midgarts...";
+					next;
+					mes "[Messenger]";
+					mes "...";
+					mes "has passed away.";
+					next;
+					mes "[Messenger]";
+					mes "To prevent the people's disorder, it won't yet be announced. The Court is focused on selecting the next king right now. They are very busy considering it.";
+					next;
+					mes "[Messenger]";
+					mes "You can learn more details in court. My mission is only to deliver this message to a reliable and brave adventurer.";
+					next;
+					mes "[Messenger]";
+					mes "Please...Please...";
+					mes "Lend a hand for the future";
+					mes "of the Rune Midgarts kingdom.";
+					set nk_prince,1;
+					setquest 10000;
+					close;
+				}
+			}
+			else {
+				mes "[Messenger]";
+				mes "It might have brought national disorder, but people are all wary about the rebirth of the devil. We are in the perfect times to process this issue without making any additional fuss.";
+				next;
+				mes "[Messenger]";
+				mes "The King hasn't appeared";
+				mes "in public for some time.";
+				mes "Many are curious about the situation.";
+				next;
+				mes "[Messenger]";
+				mes "I hate my duty to deliver";
+				mes "this sorrowful reality to others.";
+				mes "I think you already have a clue from my words...";
+				next;
+				mes "[Messenger]";
+				mes "King Tristan...";
+				next;
+				mes "[Messenger]";
+				mes "King Tristan...";
+				mes "...passed away...";
+				mes "...after a long time of suffering acutely from illness.";
+				next;
+				mes "[Messenger]";
+				mes "The Royal Court is now in the process of selecting the next king. My mission is to find a devoted adventurer and send them to court.";
+				next;
+				mes "[Messenger]";
+				mes "They will let you know what";
+				mes "you have to do in court.";
+				mes "I hope you will help bring";
+				mes "peace to Rune Midgarts.";
+				set nk_prince,1;
+				setquest 10000;
+				close;
+			}
+		}
+		else {
+			mes "[Messenger]";
+			mes "I am a messenger of Rune Midgarts.";
+			mes "Is there something special";
+			mes "in this country?";
+			next;
+			mes "[Messenger]";
+			mes "Haven't you seen something mysterious? Or heard some gossip?";
+			close;
+		}
+	}
+	else if (nk_prince == 1) {
+		mes "[Messenger]";
+		mes "I want you to go to the Prontera Royal Court to help in the next King's selection.";
+		next;
+		mes "[Messenger]";
+		mes "I will stay here to find other adventurers. May your heart bring great glory to Rune Midgarts!";
+		close;
+	}
+	else {
+		mes "[Messenger]";
+		mes "I am on a mission now. I think you may be looking for a different location. Ask others.";
+		close;
+	}
+}
+
+prt_castle,117,163,5	script	Inspector#prince	755,{
+	if (checkquest(10004) == 0 || checkquest(10004) == 1) {
+		mes "[Inspector]";
+		mes "Judge!";
+		mes "How goes it? I don't think it is easy to meet seven candidates and appraise them.";
+		next;
+		mes "[Inspector]";
+		mes "Ha. Are you done?";
+		mes "You are a fast worker, getting the job done!";
+		next;
+		mes "[Inspector]";
+		mes "Let me have the scoop on the candidates~";
+		next;
+		mes "-I talked about my impression";
+		mes "of the candidates for prince,";
+		mes "to the Inspector, right away.";
+		mes "I'm sure, I only give clear";
+		mes "and concise facts to him.-";
+		next;
+		mes "[Inspector]";
+		mes "Hmm... is that so? What you've said has helped me a lot. Thank you for your hard work.";
+		next;
+		mes "[Inspector]";
+		mes "By the way, I happened";
+		mes "to hear a rumor about";
+		mes "Prince Eigen Ahrum of the Walter family. Could you appraise all the candidates, one more time? I need this done urgently.";
+		next;
+		mes "[Inspector]";
+		mes "Now the whole picture may change... Others must probably be the same. But I worry about Eigen Ahrum because I can't neglect any rumors about any candidate.";
+		next;
+		mes "[Inspector]";
+		mes "Okay, so... please go in there one more time.";
+		completequest 10004;
+		setquest 10018;
+		setquest 10019;
+		setquest 10020;
+		setquest 10021;
+		setquest 10022;
+		close;
+	}
+	if (nk_prince < 2) {
+		mes "[Inspector]";
+		mes "What's wrong with you?";
+		mes "This is not an open area!";
+		next;
+		switch(select("Alright, Alright.:The Messenger directed me here.")) {
+		case 1:
+			mes "[Inspector]";
+			mes "If you know it, why are you here? Get out of here!";
+			close2;
+			warp "prontera",155,353;
+			end;
+		case 2:
+			if (nk_prince == 0) {
+				mes "[Inspector]";
+				mes "I don't think";
+				mes "that he is an experienced appraiser...";
+				close;
+			}
+			mes "[Inspector]";
+			mes "......";
+			next;
+			if (BaseLevel > 89) {
+				mes "[Inspector]";
+				mes "The Messenger checked only for your physical aptitude, and simply sent a warrior to Court. That's what his duty is all about.";
+				next;
+				mes "[Inspector]";
+				mes "Checking your qualification is a matter that concerns me.";
+				next;
+				mes "[Inspector]";
+				mes "Hmm...";
+				next;
+				mes "[Inspector]";
+				mes "You are an experienced traveler. You have enough strength, but... The Court doesn't choose a person based only on his or her great strength and battle experience.";
+				next;
+				mes "[Inspector]";
+				mes "To check someone's quality";
+				mes "you have to have enough";
+				mes "personality about you.";
+				next;
+				mes "[Inspector]";
+				mes "In that sense, I want to do a simple experiment.";
+				mes "Let's test you.";
+				next;
+				mes "[Inspector]";
+				mes "This won't be complicated. You are just needed to give a quick answer, frankly please, after each given situation.";
+				next;
+				mes "[Inspector]";
+				mes "kay, let's start. Get ready. Listen carefully and answer.";
+				next;
+				mes "[Inspector]";
+				mes "What do you think is the";
+				mes "most important thing to consider";
+				mes "as a leader of a hunt party?";
+				next;
+				switch(select("Strength and characteristics of the monster.:Efficiency of the hunt.:What we can get from the hunt.")) {
+				case 1:
+					set .@int,.@int+10;
+					break;
+				case 2:
+					set .@solid,.@solid+10;
+					break;
+				case 3:
+					set .@brave,.@brave+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What if we lose a party member";
+				mes "during battle?";
+				next;
+				switch(select("Keep fighting until we can do it.:Find a new place and try differently.:Stop hunting and replenish.")) {
+				case 1:
+					set .@brave,.@brave+10;
+					break;
+				case 2:
+					set .@int,.@int+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What you get as a result of the hunt...";
+				next;
+				switch(select("Share it as agreed prior.:I don't want to care for sharing.:Give it to the member that needs it.")) {
+				case 1:
+					set .@int,.@int+10;
+					break;
+				case 2:
+					set .@solid,.@solid+10;
+					break;
+				case 3:
+					set .@brave,.@brave+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What type of job class member";
+				mes "has to be cured while the enemy still lives?";
+				next;
+				switch(select("Priest, healer class.:Hunter, damage dealer.:Lord Knight, tanker.")) {
+				case 1:
+					set .@int,.@int+10;
+					break;
+				case 2:
+					set .@brave,.@brave+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "Whom do you want to befriend the most?";
+				next;
+				switch(select("A strong person.:An experienced person.:A kind person.")) {
+				case 1:
+					set .@brave,.@brave+10;
+					break;
+				case 2:
+					set .@int,.@int+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What was your ability that helped";
+				mes "you the most during your training?";
+				next;
+				switch(select("Relationships with people.:Plenty of information gathering.:Discernment and driving force.")) {
+				case 1:
+					set .@solid,.@solid+10;
+					break;
+				case 2:
+					set .@int,.@int+10;
+					break;
+				case 3:
+					set .@brave,.@brave+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "How do you give encouragement to others, usually?";
+				next;
+				switch(select("Refer to a past failure.:Hesitating is the worst thing.:You are not alone.")) {
+				case 1:
+					set .@int,.@int+10;
+					break;
+				case 2:
+					set .@brave,.@brave+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What is an ultimate virtue";
+				mes "in your life?";
+				next;
+				switch(select("Growth of oneself.:World peace.:The pursuit of truth.")) {
+				case 1:
+					set .@brave,.@brave+10;
+					break;
+				case 2:
+					set .@solid,.@solid+10;
+					break;
+				case 3:
+					set .@int,.@int+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What would you want to keep";
+				mes "the most if you were on a ";
+				mes "deserted island?";
+				next;
+				switch(select("Map:Flint:Weapon")) {
+				case 1:
+					set .@int,.@int+10;
+					break;
+				case 2:
+					set .@solid,.@solid+10;
+					break;
+				case 3:
+					set .@brave,.@brave+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What type of story do you like the most?";
+				next;
+				switch(select("Love story.:Heroic epic.:Religious tale.")) {
+				case 1:
+					set .@solid,.@solid+10;
+					break;
+				case 2:
+					set .@brave,.@brave+10;
+					break;
+				case 3:
+					set .@int,.@int+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "You've come to engage the";
+				mes "new monster in a new area.";
+				mes "What do you do?";
+				next;
+				switch(select("Attack first.:Observe from a distance.:Flee away.")) {
+				case 1:
+					set .@brave,.@brave+10;
+					break;
+				case 2:
+					set .@int,.@int+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "What has to be done first when";
+				mes "ruling the Rune Midgarts kingdom?";
+				next;
+				switch(select("Dominate countries by reinforcing militia.:Advancement of economy and technology.:Keep public security firm.")) {
+				case 1:
+					set .@brave,.@brave+10;
+					break;
+				case 2:
+					set .@int,.@int+10;
+					break;
+				case 3:
+					set .@solid,.@solid+10;
+					break;
+				}
+				mes "[Inspector]";
+				mes "Your humanity test is done.";
+				mes "You have been living...";
+				next;
+				if (.@brave > 50) {
+					if (.@int > 30) {
+						mes "[Inspector]";
+						mes "with strong conviction,";
+						mes "and reasonable judgement,";
+						mes "so far.";
+						next;
+					}
+					else if (.@solid > 30) {
+						mes "[Inspector]";
+						mes "with strong bravery,";
+						mes "but also you've had a";
+						mes "temperate life.";
+						next;
+					}
+					else {
+						mes "[Inspector]";
+						mes "with a decisive mind.";
+						mes "You could overcome hardships with it.";
+						next;
+					}
+				}
+				else if (.@int > 50) {
+					if (.@brave > 30) {
+						mes "[Inspector]";
+						mes "with firmness,";
+						mes "and reasonable judgement,";
+						mes "so far.";
+						next;
+					}
+					else if (.@solid > 30) {
+						mes "[Inspector]";
+						mes "with reasonable judgement";
+						mes "and a harmonic sensibility,";
+						mes "so far.";
+						next;
+					}
+					else {
+						mes "[Inspector]";
+						mes "with a calm and prudent decision.";
+						mes "I think you could also have had many good experiences.";
+						next;
+					}
+				}
+				else if (.@solid > 50) {
+					if (.@brave > 30) {
+						mes "[Inspector]";
+						mes "with strong bravery,";
+						mes "but also you've had a";
+						mes "temperate life.";
+						next;
+					}
+					else if (.@int > 30) {
+						mes "[Inspector]";
+						mes "with reasonable judgement";
+						mes "and peaceful sensibility,";
+						mes "so far.";
+						next;
+					}
+					else {
+						mes "[Inspector]";
+						mes "...Erm, actually...";
+						mes "You didn't distort to either way...";
+						mes "and stability and harmony were";
+						mes "an important virtue in your life.";
+						next;
+					}
+				}
+				mes "[Inspector]";
+				mes "I think you are";
+				mes "qualified enough to evaluate others. I apologize for my rude behavior to you in the beginning.";
+				next;
+				mes "[Inspector]";
+				mes "So, I ask you to do us a favor. You have become a regular adventurer appraiser.";
+				next;
+				mes "[Inspector]";
+				mes "Ah, you've spent a long time with me. You must be very tired. Before starting work, if you need some preparation, take off now and come back to me later. I will be waiting here for you.";
+				next;
+				set nk_prince,4;
+				changequest 10000,10003;
+				close;
+			}
+			else {
+				mes "[Inspector]";
+				mes "I don't think you are";
+				mes "an experienced adventurer...";
+				mes "And this is an important issue for the nation. I can't give this job to anyone like you.";
+				next;
+				mes "[Inspector]";
+				mes "But, if you prove yourself a strong adventurer, then I will let you pass the first qualification test.";
+				next;
+				mes "[Inspector]";
+				mes "Have you heard of Glastheim? In that area, there are monsters named Knights of Abyss.";
+				next;
+				mes "[Inspector]";
+				mes "After beating the knights of abyss";
+				mes "bring 2 ^ff0000Reins^000000.";
+				mes "If you can do this mission,";
+				mes "I will respect your strength.";
+				set nk_prince,2;
+				changequest 10000,10001;
+				next;
+				mes "[Inspector]";
+				mes "Let's continue our talk";
+				mes "after getting the 2 Reins.";
+				mes "Ciao...";
+				close;
+			}
+		}
+	}
+	else if (nk_prince == 2) {
+		mes "[Inspector]";
+		mes "Ahh, you came to meet me before huh? I guess you've already been to Glastheim.";
+		next;
+		mes "[Inspector]";
+		mes "Do you have the 2 reins I mentioned?";
+		next;
+		if (countitem(1064) > 1) {
+			mes "[Inspector]";
+			mes "Ooh!";
+			mes "Frankly, I didn't expect you to bring them. You are great.";
+			next;
+			mes "[Inspector]";
+			mes "Alright, good. You proved your strength for yourself. Now you passed one exam. All but one.";
+			delitem 1064,2; //Reins
+			set nk_prince,3;
+			changequest 10001,10002;
+			next;
+			mes "[Inspector]";
+			mes "The judge to appraise princes should build up his character too. Strength cannot cover everything. Personality should come along with it";
+			next;
+			mes "[Inspector]";
+			mes "In a sense, the next examination is to test your character. It is just a series of simple questions, but relax first, and be prepared mentally... then come and talk to me again.";
+			close;
+		}
+		else {
+			mes "[Inspector]";
+			mes "You've never even taken such a dangerous mission before! How dare you think you could come to this place? I don't think you can take the job of evaluating princes.";
+			next;
+			mes "[Inspector]";
+			mes "Now, you can come back later.";
+			close;
+		}
+	}
+	else if (nk_prince == 3) {
+		mes "[Inspector]";
+		mes "Now are you ready?";
+		mes "This test is not that hard though...";
+		next;
+		mes "[Inspector]";
+		mes "This is done to know your attitude and behavior in certain situations. Listen carefully to my questions, and answer frankly in regards to the episodes of your trip.";
+		next;
+		mes "[Inspector]";
+		mes "Now, let me begin.";
+		next;
+		mes "[Inspector]";
+		mes "What do you think is the";
+		mes "most important thing to consider";
+		mes "as a leader of a hunt party?";
+		next;
+		switch(select("Strength and characteristics of the monster.:Efficiency of the hunt.:What we can get from the hunt.")) {
+		case 1:
+			set .@int,.@int+10;
+			break;
+		case 2:
+			set .@solid,.@solid+10;
+			break;
+		case 3:
+			set .@brave,.@brave+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What if we lose a party member";
+		mes "during battle?";
+		next;
+		switch(select("Keep fighting until we can do it.:Find a new place and try differently.:Stop hunting and replenish.")) {
+		case 1:
+			set .@brave,.@brave+10;
+			break;
+		case 2:
+			set .@int,.@int+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What you get as a result of the hunt...";
+		next;
+		switch(select("Share it as agreed prior.:I don't want to care for sharing.:Give it to the member that needs it.")) {
+		case 1:
+			set .@int,.@int+10;
+			break;
+		case 2:
+			set .@solid,.@solid+10;
+			break;
+		case 3:
+			set .@brave,.@brave+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What type of job class member";
+		mes "has to be cured while the enemy still lives?";
+		next;
+		switch(select("Priest, healer class.:Hunter, damage dealer.:Lord Knight, tanker.")) {
+		case 1:
+			set .@int,.@int+10;
+			break;
+		case 2:
+			set .@brave,.@brave+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "Whom do you want to befriend the most?";
+		next;
+		switch(select("A strong person.:An experienced person.:A kind person.")) {
+		case 1:
+			set .@brave,.@brave+10;
+			break;
+		case 2:
+			set .@int,.@int+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What was your ability that helped";
+		mes "you the most during your training?";
+		next;
+		switch(select("Relationships with people.:Plenty of information gathering.:Discernment and driving force.")) {
+		case 1:
+			set .@solid,.@solid+10;
+			break;
+		case 2:
+			set .@int,.@int+10;
+			break;
+		case 3:
+			set .@brave,.@brave+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "How do you give encouragement to others, usually?";
+		next;
+		switch(select("Refer to a past failure.:Hesitating is the worst thing.:You are not alone.")) {
+		case 1:
+			set .@int,.@int+10;
+			break;
+		case 2:
+			set .@brave,.@brave+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What is an ultimate virtue";
+		mes "in your life?";
+		next;
+		switch(select("Growth of oneself.:World peace.:The pursuit of truth.")) {
+		case 1:
+			set .@brave,.@brave+10;
+			break;
+		case 2:
+			set .@solid,.@solid+10;
+			break;
+		case 3:
+			set .@int,.@int+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What would you want to keep";
+		mes "the most if you were on a ";
+		mes "deserted island?";
+		next;
+		switch(select("Map:Flint:Weapon")) {
+		case 1:
+			set .@int,.@int+10;
+			break;
+		case 2:
+			set .@solid,.@solid+10;
+			break;
+		case 3:
+			set .@brave,.@brave+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What type of story do you like the most?";
+		next;
+		switch(select("Love story.:Heroic epic.:Religious tale.")) {
+		case 1:
+			set .@solid,.@solid+10;
+			break;
+		case 2:
+			set .@brave,.@brave+10;
+			break;
+		case 3:
+			set .@int,.@int+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "You've come to engage the";
+		mes "new monster in a new area.";
+		mes "What do you do?";
+		next;
+		switch(select("Attack first.:Observe from a distance.:Flee away.")) {
+		case 1:
+			set .@brave,.@brave+10;
+			break;
+		case 2:
+			set .@int,.@int+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "What has to be done first when";
+		mes "ruling the Rune Midgarts kingdom?";
+		next;
+		switch(select("Dominate countries by reinforcing militia.:Advancement of economy and technology.:Keep public security firm.")) {
+		case 1:
+			set .@brave,.@brave+10;
+			break;
+		case 2:
+			set .@int,.@int+10;
+			break;
+		case 3:
+			set .@solid,.@solid+10;
+			break;
+		}
+		mes "[Inspector]";
+		mes "Your humanity test is done.";
+		mes "You have been living...";
+		next;
+		if (.@brave > 50) {
+			if (.@int > 30) {
+				mes "[Inspector]";
+				mes "with strong conviction,";
+				mes "and reasonable judgement,";
+				mes "so far.";
+				next;
+			}
+			else if (.@solid > 30) {
+				mes "[Inspector]";
+				mes "with strong bravery,";
+				mes "but also you've had a";
+				mes "temperate life.";
+				next;
+			}
+			else {
+				mes "[Inspector]";
+				mes "with a decisive mind.";
+				mes "You could overcome hardships with it.";
+				next;
+			}
+		}
+		else if (.@int > 50) {
+			if (.@brave > 30) {
+				mes "[Inspector]";
+				mes "with firmness,";
+				mes "and reasonable judgement,";
+				mes "so far.";
+				next;
+			}
+			else if (.@solid > 30) {
+				mes "[Inspector]";
+				mes "with reasonable judgement";
+				mes "and a harmonic sensibility,";
+				mes "so far.";
+				next;
+			}
+			else {
+				mes "[Inspector]";
+				mes "with a calm and prudent decision.";
+				mes "I think you could also have had many good experiences.";
+				next;
+			}
+		}
+		else if (.@solid > 50) {
+			if (.@brave > 30) {
+				mes "[Inspector]";
+				mes "with strong bravery,";
+				mes "but also you've had a";
+				mes "temperate life.";
+				next;
+			}
+			else if (.@int > 30) {
+				mes "[Inspector]";
+				mes "with reasonable judgement";
+				mes "and peaceful sensibility,";
+				mes "so far.";
+				next;
+			}
+			else {
+				mes "[Inspector]";
+				mes "...Erm, actually...";
+				mes "You didn't distort to either way...";
+				mes "and stability and harmony were";
+				mes "an important virtue in your life.";
+				next;
+			}
+		}
+		mes "[Inspector]";
+		mes "I think you are";
+		mes "qualified enough to evaluate others. I apologize for my rude behavior to you in the beginning.";
+		next;
+		mes "[Inspector]";
+		mes "So, I ask you to do us a favor. You have become a regular adventurer appraiser.";
+		next;
+		mes "[Inspector]";
+		mes "Ah, you've spent a long time with me. You must be very tired. Before starting work, if you need some preparation, take off now and come back to me later. I will be waiting here for you.";
+		next;
+		set nk_prince,4;
+		changequest 10002,10003;
+		close;
+	}
+	else if (nk_prince == 4) {
+		mes "[Inspector]";
+		mes "Welcome...";
+		mes "I will give you some";
+		mes "instructions on what to do,";
+		mes "and what one has to be careful with, when dealing with princes. Pay attention to me.";
+		next;
+		mes "[Inspector]";
+		mes "I will answer your questions first.";
+		next;
+		while(1) {
+			switch(select("What should I do, exactly?:The King died because of his illness?:Is my mission confidential??:I have no more questions.")) {
+			case 1:
+				mes "[Inspector]";
+				mes "We have seven candidates from seven families. One per each family. The candidates are all in the same place, where I will introduce them to you.";
+				next;
+				mes "[Inspector]";
+				mes "You have to meet the candidates one by one, and ask some questions about their quality; or observe their actions, then come back to me and explain all that you observed in detail.";
+				next;
+				mes "[Inspector]";
+				mes "The original rule is that the quality of princes has to be appraised by royal families for a long time, and one has to be elected by internal ordinance.";
+				next;
+				mes "[Inspector]";
+				mes "Because of the resurrection of the devil Satan Morroc, people are too uneasy to follow regular announcements, and the atmosphere of the kingdom is not stable.";
+				next;
+				mes "[Inspector]";
+				mes "Each kingdom is busy preventing the interference of Satan Morroc too.";
+				next;
+				mes "[Inspector]";
+				mes "So this time, the Court decided to change its ways, giving the opportunity to appraise the candidates to famous and devoted adventurers like yourself. That's why you are here.";
+				next;
+				set .@prince,1;
+				break;
+			case 2:
+				mes "[Inspector]";
+				mes "How absurd that you ask that!! I already told you clearly that King Tristan died of illness, didn't I?";
+				next;
+				mes "[Inspector]";
+				mes "Don't you have anything else to be curious about?";
+				next;
+				break;
+			case 3:
+				mes "[Inspector]";
+				mes "Sure...";
+				mes "It's natural to announce the death of the King. But the atmosphere of the nation is not ripe for it. This is our only alternative for now.";
+				next;
+				mes "[Inspector]";
+				mes "Princes cannot go outside on their own will. People cannot go to the place where the princes are.";
+				next;
+				break;
+			case 4:
+				if (.@prince == 1) {
+					mes "[Inspector]";
+					mes "I think this is enough";
+					mes "instruction for this.";
+					mes "Now I will let you know";
+					mes "where you can meet the princes.";
+					next;
+					mes "[Inspector]";
+					mes "When you get to the medic officer's room, a soldier will be standing on a strange spot. You can find that there isn't a door there.";
+					next;
+					mes "[Inspector]";
+					mes "Behind the soldier, you can find a secret door. If you talk to the soldier, the soldier will allow you to get in.";
+					next;
+					mes "[Inspector]";
+					mes "As I have expressed, this is a very important issue for the Rune Midgarts kingdom. Although I've stressed this point repeateadly, I cannot stress it enough.";
+					next;
+					mes "[Inspector]";
+					mes "Please behave accordingly.";
+					mes "Thanks for your effort.";
+					set nk_prince,5;
+					completequest 10003;
+					setquest 10005;
+					setquest 10006;
+					setquest 10007;
+					setquest 10008;
+					setquest 10009;
+					setquest 10010;
+					setquest 10011;
+					close;
+				}
+				else {
+					mes "[Inspector]";
+					mes "You got instructions as to what you should do, didn't you? This issue is not that worthless that you can take it with ease! Pay attention to this!";
+					next;
+					mes "[Inspector]";
+					mes "If you are not motivated to do it, I will find another adventurer. You can go back to your business, if you want to.";
+					next;
+				}
+				break;
+			}
+		}
+	}
+	else if (nk_prince == 7) {
+		mes "[Inspector]";
+		mes "How is it going?";
+		mes "Grading someone is not a piece of cake. It's real hard work indeed. You do the hard work for our country.";
+		next;
+		if ((nkprince_eisen == 15) && (checkquest(10025) == 0 || checkquest(10025) == 1)) {
+			mes "-I tell him about the Ahrum and Ernst accident.-";
+			next;
+			mes "[Inspector]";
+			mes "What!? I can't believe it!";
+			mes "Wha-, that's so...";
+			next;
+			mes "[Inspector]";
+			mes "By Ernst's hand...?";
+			mes "Yes...?";
+			next;
+			mes "[Inspector]";
+			mes "You've fulfilled the job as";
+			mes "adventurer appraiser fully.";
+			mes "I really appreciate your assistance thus far. Due to your help, the future of the kingdom is indebted to you.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "(He doesn't seem to be suprised too much.. Could there be a reason? Now I am suspicious...)";
+			next;
+			mes "[Inspector]";
+			mes "Hey, the things you experienced here cannot be disclosed to others. You understand that this situation is fully confidential.";
+			next;
+			mes "[Inspector]";
+			mes "So, keep up the good work.";
+			mes "For the Kingdom of Rune Midgarts!";
+			if (checkre(3)) {
+				if ((BaseLevel > 80) && (BaseLevel < 86)) getexp 40000,0;
+				else if ((BaseLevel > 85) && (BaseLevel < 91)) getexp 45000,0;
+				else if ((BaseLevel > 90) && (BaseLevel < 96)) getexp 50000,0;
+				else if ((BaseLevel > 95) && (BaseLevel < 99)) getexp 55000,0;
+				else if (BaseLevel > 99) getexp 110000,0;
+				else getexp 30000,0;
+			} else {
+				if ((BaseLevel > 80) && (BaseLevel < 86)) getexp 400000,0;
+				else if ((BaseLevel > 85) && (BaseLevel < 91)) getexp 450000,0;
+				else if ((BaseLevel > 90) && (BaseLevel < 96)) getexp 500000,0;
+				else if ((BaseLevel > 95) && (BaseLevel < 99)) getexp 550000,0;
+				else if (BaseLevel >= 99) getexp 1100000,0;
+				else getexp 300000,0;
+			}
+			set nk_prince,8;
+			completequest 10025;
+			close;
+		}
+		else {
+			mes "[Inspector]";
+			mes "Then, let me hit the road..";
+			close;
+		}
+	}
+	else if ((nk_prince == 8) || (nk_prince == 9)) {
+		mes "[Inspector]";
+		mes "All for the glory";
+		mes "of Rune Midgarts!";
+		close;
+	}
+	else {
+		mes "[Inspector]";
+		mes "Hello, appraiser.";
+		mes "I hope you are able to finish your mission perfectly. Have you met with all the princes, like I told you to?";
+		if (nkprince_eisen != 10)
+			close;
+		next;
+		switch(select("Yes.:No.")) {
+		case 1:
+			set .@prin1,checkquest(10005);
+			set .@prin2,checkquest(10006);
+			set .@prin3,checkquest(10007);
+			set .@prin4,checkquest(10008);
+			set .@prin5,checkquest(10009);
+			set .@prin6,checkquest(10010);
+			set .@prin7,checkquest(10011);
+			if (.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7 == 14) {
+				mes "[Inspector]";
+				mes "Very well.";
+				mes "I like hearing about the princes.";
+				completequest 10004;
+				setquest 10004;
+			} else {
+				mes "[Inspector]";
+				mes "Are you sure?";
+				mes "Please check on all the princes.";
+			}
+			close;
+		case 2:
+			set .@prin1,checkquest(10005);
+			set .@prin2,checkquest(10006);
+			set .@prin3,checkquest(10007);
+			set .@prin4,checkquest(10008);
+			set .@prin5,checkquest(10009);
+			set .@prin6,checkquest(10010);
+			set .@prin7,checkquest(10011);
+			if (.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7 == 14) {
+				mes "[Inspector]";
+				mes "Don't be coy. I'm sure you have done it already.";
+				completequest 10004;
+				setquest 10004;
+			} else {
+				mes "[Inspector]";
+				mes "My investigations on all the princes are done.";
+			}
+			close;
+		}
+	}
+}
+
+prt_castle,272,375,4	script	Prince	881,{
+	if (nk_prince > 6) {
+		mes "-Obssessed with making";
+		mes "lock and key.-";
+		close;
+	}
+	if (checkquest(10020) == 2) {
+		mes "[Erich]";
+		mes "...What bad luck I have!";
+		mes "But he insists me to be corrupted, knowing how it would be...";
+		close;
+	}
+	else if (checkquest(10020) == 0 || checkquest(10020) == 1) {
+		mes "[Erich]";
+		mes "These days, I have bad luck... Only harrassments happen to me...";
+		close;
+	}
+	if (nk_prince < 5) {
+		mes "[Prince]";
+		mes "Who are you?";
+		mes "I don't think you are eligible";
+		mes "to be entering this room?";
+		next;
+		mes "[Prince]";
+		mes "I order you out of";
+		mes "my sight.";
+		close;
+	}
+	else if (nk_prince == 5) {
+		mes "[Prince]";
+		mes "Who are you?";
+		mes "Someone must have been instructed about the presence of the hidden entrance. Unless... Are you the adventurer appraiser?";
+		next;
+		select("Yes, I am.");
+		mes "[Prince]";
+		mes "Are you?... Do me a favor then. I am a legitimate son from the Nerius family. My name is Erich. You can call me Prince Erich.";
+		next;
+		mes "[Erich]";
+		mes "My full name is...";
+		next;
+		mes "[Erich]";
+		mes "That's enough.";
+		mes "You can ask information about me to my servant. I will take a rest.";
+		set nk_prince,6;
+		completequest 10011;
+		set .@prin1,checkquest(10005);
+		set .@prin2,checkquest(10006);
+		set .@prin3,checkquest(10007);
+		set .@prin4,checkquest(10008);
+		set .@prin5,checkquest(10009);
+		set .@prin6,checkquest(10010);
+		set .@prin7,checkquest(10011);
+		if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+			setquest 10012;
+		}
+		close;
+	}
+	else {
+		mes "[Erich]";
+		mes "......My conscience!";
+		mes "It doesn't work well...";
+		next;
+		mes "-He seems to be so obssessed to care about anything else.-";
+		close;
+	}
+}
+
+prt_castle,274,372,4	script	Servant#hans	48,{
+	if (checkquest(10020) == 2) {
+		mes "[Hans]";
+		mes "Ahh... mmm... I...";
+		mes "I... am so, sorry!";
+		mes "I... think I made a big mistake with the appraiser!";
+		next;
+		mes "[Hans]";
+		mes "My prince didn't do anything wrong but, anyways, I apologize for anything to you!";
+		close;
+	}
+	else if (checkquest(10020) == 0 || checkquest(10020) == 1) {
+		mes "Incessantly...-";
+		mes "-He has jitters whenever I react to him. His actions give me a feeling of pity.-";
+		close;
+	}
+	if (nk_prince == 6) {
+		mes "[Hans]";
+		mes "How are you doing, sir?";
+		mes "My name is Hans, servant of Prince Erich.";
+		next;
+		mes "[Hans]";
+		mes "What can I do for you?";
+		next;
+		switch(select("Prince Erich told me to meet you.:Nothing much.")) {
+		case 1:
+			mes "[Hans]";
+			mes "Did Prince Erich...?";
+			next;
+			select("I want to listen to a story of him.");
+			mes "[Hans]";
+			mes "Ahh, I see.";
+			mes "Frankly, Prince Erich is not interested in regime that much.";
+			next;
+			mes "[Hans]";
+			mes "He writes in his journal daily. On his wedding day, he jotted down: 'Like, nothing special happened today'. He doesn't care about current events or human relationships.";
+			next;
+			mes "[Hans]";
+			mes "What he likes is making locks.";
+			mes "He is eccentric, isn't he?";
+			mes "He is a kind of jester.";
+			next;
+			mes "[Hans]";
+			mes "He doesn't like classy costumes either. He didn't even bring a dress suit here. And as soon as he got here, he was immersed in making a lock and key, like that.";
+			next;
+			mes "[Hans]";
+			mes "I don't think I have the proper expression for you... I don't think I have something special to say about him to you. You can just appraise him as you see him...";
+			next;
+			mes "[Hans]";
+			mes "That's all I can say about this.";
+			mes "Huh...~";
+			next;
+			emotion ET_SURPRISE;
+			mes "[Hans]";
+			mes "Ah, Prince!";
+			mes "You can cut your finger!";
+			next;
+			mes "[Erich]";
+			mes ".........";
+			next;
+			mes "[Hans]";
+			mes "...Hmm he cannot even hear...";
+			mes "Oooooh...";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			close;
+		case 2:
+			mes "[Hans]";
+			mes "Did you meet the other princes?";
+			next;
+			mes "[Hans]";
+			mes "Although you may ask something, you will not hear anything special from him now.";
+			close;
+		}
+	}
+	else {
+		mes "[Hans]";
+		mes "Hello?";
+		mes "Are you the new adventurer appraiser??";
+		close;
+	}
+}
+
+prt_castle,339,202,3	script	Prince#urgen	989,{
+	if (nk_prince > 6) {
+		mes "[Urugen]";
+		mes "...It is not beautiful.";
+		mes "It discomforts me...";
+		close;
+	}
+	if (checkquest(10021) == 2) {
+		mes "[Urugen]";
+		mes " feel very much displeased. Hey, what are you looking at? Get out!";
+		next;
+		mes "[Urugen]";
+		mes "My beautiful body isn't in perfect condition right now. I don't want to show it to anyone today.";
+		close;
+	}
+	else if (checkquest(10021) == 0 || checkquest(10021) == 1) {
+		mes "[Urugen]";
+		mes "...What? What did you...";
+		mes "just say to me?... Huh?";
+		close;
+	}
+	if (nk_prince < 5) {
+		mes "[Prince]";
+		mes "Huuuuuuu";
+		mes "The position is not suitable for you.";
+		next;
+		mes "[Prince]";
+		mes "Get away from me, as soon as you can.";
+		close;
+	}
+	else if (nk_prince > 4) {
+		mes "[Prince]";
+		mes "La~ lalalala~ lalala~";
+		mes "Are you the person, supposed to look me over and appraise my quality?";
+		next;
+		mes "[Prince]";
+		mes "The daffodil you are gazing at is called Urugen. It bloomed at Wigner family.";
+		next;
+		mes "[Urugen]";
+		mes "I usually don't let anyone hear my beautiful voice, but this time, I will give a special service for you.";
+		next;
+		mes "[Urugen]";
+		mes "listen...";
+		mes "Let me answer with my";
+		mes "unforgettable, clear and beautiful voice.";
+		next;
+		while(1) {
+			switch(select("I want to know your background.:Let me know your view of the nation.:What are your hobbies or tastes?:Let me leave.")) {
+			case 1:
+				mes "[Urugen]";
+				mes "My dashing face from";
+				mes "childhood brought envy and jealousy from men, and endless proposals from women. I felt sick with it, so I came to be away from people.";
+				next;
+				mes "[Urugen]";
+				mes "My beautiful person";
+				mes "shouldn't bear stuff like that sometimes.";
+				next;
+				mes "[Urugen]";
+				mes "I became timid, gradually, in phases. I feel awe from men and women both, regardless of sexuality.";
+				set .@p_a,1;
+				next;
+				break;
+			case 2:
+				mes "[Urugen]";
+				mes "People should do what they are supposed to do. That's the source of drive for a nation. For me, my existence will be enough, for the nation.";
+				next;
+				mes "[Urugen]";
+				mes "The presence of such a gorgeous king like me will be the light for people and the hope and reason for their lives.";
+				set .@p_b,1;
+				next;
+				break;
+			case 3:
+				mes "[Urugen]";
+				mes "For sure, taking care of my body. Humans should pursue beauty. It's quite natural, isn't it?";
+				next;
+				mes "[Urugen]";
+				mes "In every case, there is an exception, like you in this court. Can you stand away from me a bit more? Because of your odor, I can hardly breathe.";
+				set .@p_c,1;
+				next;
+				break;
+			case 4:
+				mes "[Urugen]";
+				mes "Your spirit must be so strong. Looking over my beauty so long a time, you haven't lost your spirit yet.";
+				if (.@p_a + .@p_b + .@p_c == 3) {
+					completequest 10009;
+				}
+				completequest 10011;
+				set .@prin1,checkquest(10005);
+				set .@prin2,checkquest(10006);
+				set .@prin3,checkquest(10007);
+				set .@prin4,checkquest(10008);
+				set .@prin5,checkquest(10009);
+				set .@prin6,checkquest(10010);
+				set .@prin7,checkquest(10011);
+				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+					setquest 10012;
+				}
+				close;
+			}
+		}
+	}
+}
+
+prt_castle,289,201,3	script	Prince#helmut	991,{
+	if (nk_prince > 6) {
+		mes "[Helmut]";
+		mes "Such an idiot. I should have killed him earlier. Now I feel relieved.";
+		close;
+	}
+	if (checkquest(10022) == 2) {
+		mes "[Helmut]";
+		mes "Damn... Damn it!";
+		mes "Novice of Walter!!";
+		mes "How can I deal with this stress? Damn! Hell!";
+		close;
+	}
+	else if (checkquest(10022) == 0 || checkquest(10022) == 1) {
+		mes "-He is so blushed,";
+		mes "evidently shown on his face.-";
+		close;
+	}
+	if (nk_prince < 5) {
+		mes "[Helmut]";
+		mes "You are not supposed to be here!";
+		mes "Can't you keep away from me!";
+		close;
+	}
+	else if (nk_prince > 4) {
+		mes "[Helmut]";
+		mes "Are you the new appraiser? I am fed up with the many visitors! Let's take up the main subject!";
+		next;
+		mes "-What subject should I start with?-";
+		next;
+		switch(select("Your background...:Your ambition...:Your view of the nation...:I want to meet others first.")) {
+		case 1:
+			mes "[Helmut]";
+			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
+			next;
+			mes "[Helmut]";
+			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "............";
+			mes "Yes, I understand. Go ahead...";
+			next;
+			mes "[Helmut]";
+			mes "I am Helmut from Roewenburg.";
+			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
+			next;
+			mes "[Helmut]";
+			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
+			next;
+			mes "[Helmut]";
+			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
+			next;
+			mes "[Helmut]";
+			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
+			next;
+			mes "[Helmut]";
+			mes "Hey Calbern!";
+			mes "Bring beer! Beer!";
+			next;
+			mes "[Helmut]";
+			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			completequest 10010;
+			set .@prin1,checkquest(10005);
+			set .@prin2,checkquest(10006);
+			set .@prin3,checkquest(10007);
+			set .@prin4,checkquest(10008);
+			set .@prin5,checkquest(10009);
+			set .@prin6,checkquest(10010);
+			set .@prin7,checkquest(10011);
+			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+				setquest 10012;
+			}
+			close;
+		case 2:
+			mes "[Helmut]";
+			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
+			next;
+			mes "[Helmut]";
+			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "............";
+			mes "Yes, I understand. Go ahead...";
+			next;
+			mes "[Helmut]";
+			mes "I am Helmut from Roewenburg.";
+			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
+			next;
+			mes "[Helmut]";
+			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
+			next;
+			mes "[Helmut]";
+			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
+			next;
+			mes "[Helmut]";
+			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
+			next;
+			mes "[Helmut]";
+			mes "Hey Calbern!";
+			mes "Bring beer! Beer!";
+			next;
+			mes "[Helmut]";
+			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			completequest 10010;
+			set .@prin1,checkquest(10005);
+			set .@prin2,checkquest(10006);
+			set .@prin3,checkquest(10007);
+			set .@prin4,checkquest(10008);
+			set .@prin5,checkquest(10009);
+			set .@prin6,checkquest(10010);
+			set .@prin7,checkquest(10011);
+			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+				setquest 10012;
+			}
+			close;
+		case 3:
+			mes "[Helmut]";
+			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
+			next;
+			mes "[Helmut]";
+			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "............";
+			mes "Yes, I understand. Go ahead...";
+			next;
+			mes "[Helmut]";
+			mes "I am Helmut from Roewenburg.";
+			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
+			next;
+			mes "[Helmut]";
+			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
+			next;
+			mes "[Helmut]";
+			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
+			next;
+			mes "[Helmut]";
+			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
+			next;
+			mes "[Helmut]";
+			mes "Hey Calbern!";
+			mes "Bring beer! Beer!";
+			next;
+			mes "[Helmut]";
+			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			completequest 10010;
+			set .@prin1,checkquest(10005);
+			set .@prin2,checkquest(10006);
+			set .@prin3,checkquest(10007);
+			set .@prin4,checkquest(10008);
+			set .@prin5,checkquest(10009);
+			set .@prin6,checkquest(10010);
+			set .@prin7,checkquest(10011);
+			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+				setquest 10012;
+			}
+			close;
+		case 4:
+			mes "[" + strcharinfo(0) + "]";
+			mes "No, Prince,";
+			mes "I will be back later.";
+			next;
+			mes "[Helmut]";
+			mes "Alright, up to you.";
+			mes "Hey! Hey Calbern!";
+			mes "Move your ass here with beer!";
+			mes "Do you want to be beaten down?";
+			close;
+		}
+	}
+}
+
+prt_castle,288,208,4	script	Calbern	962,{
+	mes "[Calbern]";
+	mes "How are you doing, sir?";
+	mes "I am the servant of Prince Helmut...";
+	mes "Calbern.";
+	next;
+	mes "[Helmut]";
+	mes "Hey Calbern!";
+	mes "Bring beer! Beer!";
+	next;
+	mes "[Calbern]";
+	mes "Oops, I am so sorry.";
+	mes "I got business...";
+	close;
+}
+
+prt_castle,391,205,3	script	Prince#poe	993,{
+	if (nk_prince > 6) {
+		mes "[Poe]";
+		mes "Whatever the condition is, he is just a loser in the match of life.";
+		close;
+	}
+	if (checkquest(10018) == 2) {
+		mes "[Poe]";
+		mes "He gave up without any challenge. That's not what the man has to do. He is not as good as me. But okay. I am disappointed in him. Eigen Ahrum.";
+		close;
+	}
+	else if (checkquest(10018) == 0 || checkquest(10018) == 1) {
+		mes "[Poe]";
+		mes "......";
+		close;
+	}
+	if (nk_prince < 5) {
+		mes "[Prince]";
+		mes "Hi, how are you?";
+		mes "I don't think you deserve";
+		mes "to be here.";
+		mes "What about setting straight your genealogy first and then come?";
+		close;
+	}
+	else if (nk_prince > 4) {
+		mes "[Prince]";
+		mes "Come here.";
+		mes "You are the adventurer!";
+		mes "I love the challenge of hard trips too. Talkative old men and their adventures... You can't make me stop adventuring...";
+		next;
+		mes "[Prince]";
+		mes "My name is Poe.";
+		mes "I am the prince of the Richard family. Remember me, and be my supporter...";
+		next;
+		mes "[Poe]";
+		mes "Above all, I want to";
+		mes "test your ability as an adventurer. The ability test is not so serious. I just want to know how accurate your intuition is... That's all.";
+		next;
+		mes "[Poe]";
+		mes "I don't want to talk with";
+		mes "a person of low intuition.";
+		mes "Let me explain briefly,";
+		mes "and test your own intuition.";
+		next;
+		mes "[Poe]";
+		mes "My card has numbers from 1 to 13. You give me an answer about the card number I pick, whether it's a lesser or higher number.";
+		next;
+		mes "[Poe]";
+		mes "Ah, of course, 7 is the middle number. 7 means no success or no failure. The goal of this game is to give the right answer 2 times in a row. Let's begin!";
+		next;
+		while(.@wincount < 2) {
+			set .@card,rand(1,13);
+			mes "[Poe]";
+			mes "Yes, now choose one";
+			mes "from higher and lower.";
+			mes "Just one.";
+			next;
+			switch(select("Higher:Lower")) {
+			case 1:
+				mes "[Poe]";
+				mes "Hmm... higher?...";
+				mes "I now pick a card!";
+				next;
+				mes "[Poe]";
+				mes "It is..." + .@card + "!!";
+				next;
+				if (.@card > 7) {
+					set .@wincount,.@wincount+1;
+					mes "[Poe]";
+					mes "Whooah, you gave the right answer!";
+					if (.@wincount == 2) {
+						mes "You won 2 times in a row right?...";
+						next;
+						break;
+					}
+					else {
+						mes "But you just gave the correct answer 1 time, as of yet.";
+						next;
+					}
+				}
+				else if (.@card == 7) {
+					mes "[Poe]";
+					mes "This game is a draw.";
+					mes "Do better next time.";
+					next;
+				}
+				else {
+					mes "[Poe]";
+					mes "Wrong...";
+					mes "Visit Hollgrehenn and ask him to refine your luck.";
+					close;
+				}
+				break;
+			case 2:
+				mes "[Poe]";
+				mes "Eh, lower?...";
+				mes "Look at my card!";
+				next;
+				mes "[Poe]";
+				mes "It is..." + .@card + "!!";
+				next;
+				if (.@card < 7) {
+					set .@wincount,.@wincount+1;
+					mes "[Poe]";
+					mes "Whooah, you gave the right answer!";
+					if (.@wincount == 2) {
+						mes "You won 2 times in a row right?...";
+						next;
+						break;
+					}
+					else {
+						mes "But you just gave the correct answer 1 time, as of yet.";
+						next;
+					}
+				}
+				else if (.@card == 7) {
+					mes "[Poe]";
+					mes "This game is a draw.";
+					mes "Do better next time.";
+					next;
+				}
+				else {
+					mes "[Poe]";
+					mes "Wrong...";
+					mes "Visit Hollgrehenn and ask him to refine your luck.";
+					close;
+				}
+				break;
+			}
+		}
+		mes "[Poe]";
+		mes "Good, it's natural for me to disclose my words to such a high-intuitive person that likes pulling out all the cards.";
+		next;
+		mes "[Poe]";
+		mes "I could know about you with shown cards, very well, but let me share my hidden card this time! Ask me whatever you want to know.";
+		next;
+		mes "[Poe]";
+		mes "So... What do you want to know?!";
+		next;
+		while(1) {
+			switch(select("Your background story...:Your view of the nation...:Hobbies and interests...:I will come by later.")) {
+			case 1:
+				mes "[Poe]";
+				mes "My background...";
+				mes "Past stories.";
+				mes "I don't give it importance at all, so I can't remember it clearly...";
+				next;
+				mes "[Poe]";
+				mes "Can I just say I am a survivor from many matches and battles. That is quite fit for me. Hahahahaha!";
+				next;
+				mes "[Poe]";
+				mes "I've had to cope with many accidents and challenges... from which I have survived, and have been pursuing new things. Life means...";
+				next;
+				mes "[Poe]";
+				mes "Never let yourself down with given cards, and aim at deadly strokes!";
+				next;
+				mes "[Poe]";
+				mes "......";
+				next;
+				mes "[Poe]";
+				mes "Hey it's cool, huh?";
+				mes "We have same tastes, haven't we?";
+				set .@p_a,1;
+				next;
+				break;
+			case 2:
+				mes "[Poe]";
+				mes "My opinion is a nation should provide the minimum guard for people, to guarantee respective freedom..";
+				next;
+				mes "[Poe]";
+				mes "Men should challenge the stuff that they can be passionate about, so the free action of people should not be obstructed by their nation.";
+				next;
+				mes "[Poe]";
+				mes "If I were King, all the restrictions would be removed and liberal life would be allowed to everyone in an invulnerable range.";
+				next;
+				mes "[Poe]";
+				mes "Coming to think of my family, my people are so conservative and not flexible.";
+				next;
+				mes "[Poe]";
+				mes "They keep saying to not do this and that, that is dangerous and this is natural... The nagging has been endless all throughout my life...";
+				next;
+				mes "[Poe]";
+				mes "Ah, those last words";
+				mes "are off-the-record.";
+				mes "I don't want to be bothered by my family.";
+				set .@p_b,1;
+				next;
+				break;
+			case 3:
+				mes "[Poe]";
+				mes "Experiencing anything new!";
+				mes "I don't care what it is!";
+				next;
+				mes "[Poe]";
+				mes "If our time is the exploring age, I possibly am the captain of an exploring group! Unexplored, pathfinding, investigating... Those are my middle names. How about you??";
+				next;
+				mes "[Poe]";
+				mes "But many say, about my character, that I am addicted to gambling. I am just full of a challenging spirit and I like raking in money! I am a free-spirited normal man.";
+				set .@p_c,1;
+				next;
+				break;
+			case 4:
+				mes "[Poe]";
+				mes "Alright,";
+				mes "let's meet next at some more exciting and dangerous spot.";
+				if (.@p_a + .@p_b + .@p_c == 3) {
+					completequest 10007;
+				}
+				set .@prin1,checkquest(10005);
+				set .@prin2,checkquest(10006);
+				set .@prin3,checkquest(10007);
+				set .@prin4,checkquest(10008);
+				set .@prin5,checkquest(10009);
+				set .@prin6,checkquest(10010);
+				set .@prin7,checkquest(10011);
+				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+					setquest 10012;
+				}
+				close;
+			}
+		}
+	}
+}
+
+prt_castle,364,375,4	script	Prince#peter	987,{
+	if (nk_prince > 6) {
+		mes "[Peter]";
+		mes "Appraiser.";
+		mes "Have you met the little girl in Aldebaran?";
+		next;
+		switch(select("Yes, I saw her for you.:No, I don't want to.")) {
+		case 1:
+			if (checkquest(10014) == 0 || checkquest(10014) == 1) {
+				mes "[Peter]";
+				mes "I am glad that the girl liked it. Once I got cured, I wanted to go meet with her.";
+				next;
+				mes "[Peter]";
+				mes "Anyhow, thanks for your good work. I really feel sorry about bothering you with trifle things. This is my sense of gratitude. Don't feel so much burden and take this.";
+				completequest 10014;
+				getitem 644,1; //Gift_Box
+				close;
+			}
+			mes "[Peter]";
+			mes "Thinking about the little girl calms me. I still can't believe my eyes. My prince Ahrum who just passed away...~";
+			close;
+		case 2:
+			if (checkquest(10014) == 0 || checkquest(10014) == 1) {
+				mes "[Peter]";
+				mes "As you said.";
+				mes "I've heard that her life is like a flower when I lost it.";
+				mes "I will go see her on my own.";
+				next;
+				mes "[Peter]";
+				mes "I really feel sorry about bothering you with trifle things. Please take this.";
+				completequest 10014;
+				getitem 644,1; //Gift_Box
+				close;
+			}
+			mes "[Peter]";
+			mes "Never mind.";
+			mes "I still can't believe my eyes. My prince Ahrum who just passed away...~~";
+			close;
+		}
+	}
+	if (checkquest(10019) == 2) {
+		mes "[Peter]";
+		mes "Child... What the heck happened to you?...";
+		close;
+	}
+	else if (checkquest(10019) == 0 || checkquest(10019) == 1) {
+		mes "[Peter]";
+		mes "......";
+		close;
+	}
+	if (checkquest(10008) == 2) {
+		set .@quest, checkquest(10014);
+		if (.@quest == 2) {
+			mes "[Peter]";
+			mes "I really appreciate it.";
+			mes "You are so kind.";
+			close;
+		}
+		else if (.@quest == 0 || .@quest == 1) {
+			mes "[Peter]";
+			mes "I am glad that the girl liked it. Once I got cured, I wanted to go meet with her.";
+			next;
+			mes "[Peter]";
+			mes "Anyhow, thanks for your good work. I really feel sorry about bothering you with trifle things. This is my sense of gratitude. Don't feel so much burden and take this.";
+			completequest 10014;
+			getitem 644,1; //Gift_Box
+			close;
+		}
+		else {
+			mes "[Peter]";
+			mes "Do you have any more";
+			mes "business, appraiser?";
+			close;
+		}
+	}
+	else {
+		if (nk_prince < 4) {
+			mes "[Prince]";
+			mes "I think you are not allowed";
+			mes "to be here.";
+			close;
+		}
+		else if (nk_prince > 4) {
+			mes "[Prince]";
+			mes "Hello,";
+			mes "I am Peter, from the family of Heine. I am glad to meet you.";
+			next;
+			mes "[Peter]";
+			mes "Now, where shall we start?";
+			next;
+			while(1) {
+				switch(select("Your background story...:Your view of the nation...:Hobbies and interests...:I will come by later.")) {
+				case 1:
+					mes "[Peter]";
+					mes "My family was not that influential. My childhood was not that abundant; I had to seek jobs and make money from part-time jobs.";
+					next;
+					mes "[Peter]";
+					mes "But it helped me to check people's lives; the full particulars. That's my good side.";
+					next;
+					mes "[Peter]";
+					mes "Was it enough for your question?";
+					next;
+					break;
+				case 2:
+					mes "[Peter]";
+					mes "I guess the important thing is if people fulfill themselves in their field, then only supplements of support is needed from the nation's side.";
+					mes "What I want to say, in short, is the nation does not reign. People need to keep peace with people.";
+					next;
+					mes "[Peter]";
+					mes "Accordingly, I will take benefits away from the difference of classes. It is not an equality issue, but for the ascension of national power.";
+					next;
+					break;
+				case 3:
+					mes "[Peter]";
+					mes "I only like reading books as a hobby. I think men should go forward; they need to have a striving attitude.";
+					next;
+					break;
+				case 4:
+					mes "[Peter]";
+					mes "Ah, is that it?";
+					next;
+					mes "[Peter]";
+					mes "Then I have a favor to ask of you... Can you listen to my story?";
+					next;
+					mes "[Peter]";
+					mes "Originally, I didn't like growing a beard... but I had one opportunity to change... My thoughts recently are that someone has offered me the chance.";
+					next;
+					mes "[Peter]";
+					mes "It is because of an unknown girl's letter...";
+					next;
+					mes "[Peter]";
+					mes "What she told me in the letter was that my image was too sharp, and if I grew my beard, the contour of my face would be quite hidden; and it would look far better.";
+					next;
+					mes "[Peter]";
+					mes "I want to repay her.";
+					mes "Because her words helped me much. Nothing special, but maybe a small bunch of flowers.";
+					next;
+					mes "[Peter]";
+					mes "Would you take these flowers and give thanks to that girl somewhere in Al de Baran?";
+					completequest 10008;
+					next;
+					switch(select("Okay, no problem.:Please ask it of another.")) {
+					case 1:
+						mes "[Peter]";
+						mes "Yeah, thank you very much.";
+						mes "Please take care.";
+						getitem 744,1; //Bunch_Of_Flowers
+						setquest 10013;
+						set .@prin1,checkquest(10005);
+						set .@prin2,checkquest(10006);
+						set .@prin3,checkquest(10007);
+						set .@prin4,checkquest(10008);
+						set .@prin5,checkquest(10009);
+						set .@prin6,checkquest(10010);
+						set .@prin7,checkquest(10011);
+						if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+							setquest 10012;
+						}
+						close;
+					case 2:
+						mes "[Peter]";
+						mes "I understand you...";
+						mes "I know you have your";
+						mes "own business.";
+						setquest 10013;
+						set .@prin1,checkquest(10005);
+						set .@prin2,checkquest(10006);
+						set .@prin3,checkquest(10007);
+						set .@prin4,checkquest(10008);
+						set .@prin5,checkquest(10009);
+						set .@prin6,checkquest(10010);
+						set .@prin7,checkquest(10011);
+						if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+							setquest 10012;
+						}
+						close;
+					}
+				}
+			}
+		}
+	}
+}
+
+aldebaran,132,184,3	script	Girl#prince	96,{
+	if (checkquest(10013) == 0 || checkquest(10013) == 1) {
+		if (countitem(744) > 0) {
+			mes "[Girl]";
+			mes "Wooah, Uncle Peter sent these flowers";
+			mes "for me?";
+			mes "Hmmm~ They smell really good.";
+			next;
+			mes "[Girl]";
+			mes "Hehe~ You must be a friend of Peter's.";
+			mes "When you have a chance to meet him";
+			mes "later, please give my regards to uncle Peter.";
+			mes "Tell him that I loved the flowers so so much...";
+			mes "Okay, see you later.";
+			next;
+			mes "[Girl]";
+			mes "I will go home early and";
+			mes "Put these flowers in a vase.";
+			mes "Lalala~";
+			delitem 744,1; //Bunch_Of_Flowers
+			changequest 10013,10014;
+			close;
+		}
+		else {
+			mes "[Girl]";
+			mes "Hey you, have you heard the story of Daddy-Long-Legs? ... ...";
+			close;
+		}
+	}
+	else {
+		mes "[Girl]";
+		mes "Hey you, have you heard the story of Daddy-Long-Legs? ... ...";
+		close;
+	}
+}
+
+prt_castle,314,373,4	script	Prince#eisen	983,{
+	if (nkprince_eisen > 2) {
+		if (nkprince_eisen == 3) {
+			mes "[Ahrum]";
+			mes "How is Ernst ...?";
+			mes "He is so serious about everything. He doesn't make trouble or have outbursts... He can be kind of weird.";
+			next;
+			mes "[Ahrum]";
+			mes "We were close friends. Unlike me, he is kind and compassionate; a distinct official of public affairs. When he has to be strict, he turns strict with everyone.";
+			set nkprince_eisen,4;
+			close;
+		}
+		else if (nkprince_eisen == 4) {
+			mes "[Ahrum]";
+			mes "I am Eigen Ahrum,";
+			mes "I will be the light of Rune Midgarts.";
+			close;
+		}
+		else if (nkprince_eisen == 5) {
+			mes "[Ahrum]";
+			mes "Whoever be the king, let's make Rune Midgarts... the best country in the world, by helping each other.";
+			next;
+			mes "[Ernst]";
+			mes "We can make it.";
+			mes "No, we shall make it. For Brother and I together, we shall make it.";
+			next;
+			mes "[Ahrum]";
+			mes "But... If I am to reign, or help you; and if I am corrupted... you kill me... by your hand.";
+			next;
+			mes "[Ahrum]";
+			mes "In the opposite case, I will kill you too, you understand? So don't ever stray, and do not ever forget your determination.";
+			next;
+			mes "[Ernst]";
+			mes "Brother, you think about hell. It will never happen, so... Don't talk that way.";
+			next;
+			mes "[Ahrum]";
+			mes "It is an assumption.";
+			mes "Don't take it too seriously.";
+			next;
+			mes "[Ernst]";
+			mes "Alright, alright. Don't";
+			mes "take it the wrong way.";
+			mes "I have been acting for Brother and Kingdom, and I will be the same ever after.";
+			next;
+			emotion ET_SURPRISE;
+			mes "[Ahrum]";
+			mes "Ah, the appraiser has come.";
+			mes "How could you appear so suddenly? Ern and I were in the middle of conversation.";
+			next;
+			mes "[Ernst]";
+			mes "What's wrong, brother? We were not talking about anything bad. We were just making our resolution firm.";
+			next;
+			mes "[Ahrum]";
+			mes "You came here in good timing. We've just decided to kill the other... if one of us is corrupt.";
+			next;
+			mes "[Ernst]";
+			mes "Brother?!";
+			next;
+			mes "[Ahrum]";
+			mes "By all means, be the witness of this agreement. You cannot say no. Because it is a very good thing, in some respects, for your work, isn't it?";
+			next;
+			mes "[Ernst]";
+			mes "Br...Brother. You are way too suppressive. Our appraiser must have his own position and opinion.";
+			next;
+			mes "[Ahrum]";
+			mes "You still have a weak personality. I am not forcing something so difficult on him! Who cares? I take silence as a positive answer! My bid is successful! And our promise is formed too!";
+			next;
+			mes "[Ernst]";
+			mes "Haah...haha... Appraiser, I deeply apologize for offending you. Sorry, but there is no possibility of fulfilling this promise. So, just don't take this situation seriously... You know... When pigs fly... ~";
+			next;
+			mes "[Ernst]";
+			mes "Now, let me return to my room. Keep up the good work, appraiser.";
+			donpcevent "Prince#another_ern::OnDisable";
+			set nkprince_eisen,6;
+			close;
+		}
+		else if (nkprince_eisen == 6) {
+			mes "[Ahrum]";
+			mes "I heard that one person";
+			mes "from my family is coming today. But I haven't found him yet.";
+			next;
+			mes "[Ahrum]";
+			mes "I worry about your words...";
+			mes "What do you want to say this time?...";
+			mes "Have you seen him, appraiser?";
+			set nkprince_eisen,7;
+			changequest 10012,10016;
+			close;
+		}
+		else if (nkprince_eisen == 7) {
+			mes "[Ahrum]";
+			mes "Aahh...boring, boring.";
+			mes "I am in real penance right now!";
+			close;
+		}
+		else if (nkprince_eisen == 8) {
+			mes "[Ahrum]";
+			mes "You come here so often.";
+			mes "I know you are a faithful person, engaged in a very important issue for the kingdom, but you come here more than is necessary...";
+			next;
+			switch(select("I have something...:Is that so? Then, see you later.")) {
+			case 1:
+				mes "[" + strcharinfo(0) + "]";
+				mes "I saw a person from the Walter family.";
+				next;
+				mes "[Ahrum]";
+				mes "Oh! really?";
+				mes "why didn't he come to me?";
+				next;
+				mes "[" + strcharinfo(0) + "]";
+				mes "-I tell Ahrum the story.-";
+				next;
+				mes "[Ahrum]";
+				mes "......";
+				next;
+				mes "[Ahrum]";
+				mes "What! Are you 100% sure about your story? Ahhhh...";
+				next;
+				mes "[Ahrum]";
+				mes "......";
+				next;
+				mes "[Ahrum]";
+				mes "I am very sorry, but I want to be left alone. Leave me alone, right now!";
+				set nkprince_eisen,9;
+				close2;
+				warp "prt_castle",318,273;
+				end;
+			case 2:
+				mes "[Ahrum]";
+				mes "Okay, good riddance.";
+				close;
+			}
+		}
+		else if ((nkprince_eisen == 9) || (nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
+			mes "[Ahrum]";
+			mes "I am very sorry, but I want to be left alone. Leave me alone, right now!";
+			close2;
+			warp "prt_castle",318,273;
+			end;
+		}
+		else if (nkprince_eisen == 13) {
+			mes "[Ahrum]";
+			mes "I told you that I don't want to be king, and I don't have any intention to change my mind!";
+			next;
+			mes "[Ernst]";
+			mes "Brother! I don't know why you are suffering so much! Are you this weak a creature?!";
+			next;
+			mes "[Ahrum]";
+			mes "Suffering? Me?..Aaahhh... It looks so...? Yeahh... Yes, it does. Stressful...Huhuhu...Hahaha!!";
+			next;
+			mes "[Ernst]";
+			mes "Brother, Ahrum...?";
+			next;
+			mes "[Ahrum]";
+			mes "...Is it only me that gets away... Anyhow, I am a disqualified person ... huhuhu. But, I've made a decision.";
+			next;
+			mes "[Ahrum]";
+			mes "Ernst.";
+			next;
+			mes "[Ernst]";
+			mes "Yes?... Yes?";
+			next;
+			mes "[Ahrum]";
+			mes "Take this.";
+			next;
+			mes "- swish. - ";
+			next;
+			mes "- Ahrum casually throws a Bazerald to Ernst.-";
+			next;
+			mes "[Ernst]";
+			mes "Eh?... What's this about?... A Bazerald of Walter family?...Why?";
+			next;
+			mes "[Ahrum]";
+			mes "Now this is perfect timing. Even our witness is here! Ern, you remember our promise clearly, right?";
+			next;
+			mes "[Ernst]";
+			mes "What? Promise? Witness?...Ahh... Re-really...";
+			next;
+			mes "[Ahrum]";
+			mes "Yes, really. Now is the time.";
+			next;
+			mes "[Ernst]";
+			mes "Nonsense! Do you think I can do that to you?!";
+			next;
+			mes "[Ahrum]";
+			mes "Idiot! Being King should be followed by decisive action. I have no chances to be King. Corruption, and living like that, is worse than being killed by you...";
+			next;
+			mes "[Ernst]";
+			mes "B-but, you can live as you are! As if nothing happened. You are just needed to return to the way you were before. Brother, let me help you. Tell me everything you hide...";
+			next;
+			mes "[Ahrum]";
+			mes "This is so moronic! Can you say that you are kingly?! Are you showing me sympathy now? You should be a man of sense! If not, you are not eligible as a king candidate!";
+			next;
+			mes "[Ernst]";
+			mes "Bu...but!";
+			next;
+			mes "[Ahrum]";
+			mes "Talking back and forth is of no use! I cannot help it. If you keep insisting instead of trying to be a man of sense, then such a person should not be a king.";
+			next;
+			mes "[Ahrum]";
+			mes "Ghh?! Brother?!";
+			next;
+			mes "(dagger thrusting sound)";
+			specialeffect EF_HIT2;
+			set nkprince_eisen,14;
+			donpcevent "Prince#another_ern::OnDisable";
+			donpcevent "Prince#another_ern1::OnEnable";
+			close;
+		}
+		else if (nkprince_eisen == 14) {
+			mes "[Ernst]";
+			mes "Bbb... Brother?... You... told me ";
+			mes "you would kill me... You just wanted to be killed";
+			mes "by me?... Bbb...brother?...";
+			next;
+			mes "[Ahrum]";
+			mes "Huhu... Not at all. I just wanted to kill you... That's it... Good job, Ern... This is legal self-defense, killing a villain... right?";
+			next;
+			mes "[Ernst]";
+			mes "B..Brother... even now it is not too late! If you go to a medic, you can be restored!";
+			next;
+			mes "[Ahrum]";
+			mes "It's too late... Once your vital organs are stabbed... I wonder how could I stay alive... or even how I could come back to life... I don't need to live.";
+			next;
+			mes "[Ernst]";
+			mes "B..Brother....How...how could you?!";
+			next;
+			mes "[Ahrum]";
+			mes "Goodbye, my brother... Be King, and change this nation. You... You can make it...guk...";
+			next;
+			mes "[Ernst]";
+			mes "...Brother...Brother... Why... Why... How can your face look so satisfied? How...? Brother...";
+			next;
+			mes "[Ahrum]";
+			mes "Huhu...You don't need to know that. By the way, you kept your promise... You should be king... But if you are lost, and stray, I will come kill you at any time... from hell!!";
+			next;
+			mes "[Ernst]";
+			mes "I...I don't know! I don't know what's going on!";
+			next;
+			mes "[Ahrum]";
+			mes "You don't need to... What you have to know about is that there was a sacrifice from me. To make my death meaningful, you should be a good king. That's my conviction... That's it..guk..! Don't lose my words... gukkuk.";
+			next;
+			mes "[Ernst]";
+			mes "Idiot... Moron...";
+			next;
+			mes "[Ahrum]";
+			mes "Ahh... Appraiser, do you know what you have to do? Be mindful of your words. About what you saw, what you heard... You must not tell all of your experience to the inspector.";
+			next;
+			mes "[Ahrum]";
+			mes "Ern killed a villain here who bullied around.. I had no chance... He showed decisive action, and that will deserve him the right to be king...";
+			next;
+			mes "[Ahrum]";
+			mes "If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?";
+			next;
+			switch(select("... Okay I will follow your will...:......")) {
+			case 1:
+				mes "[" + strcharinfo(0) + "]";
+				mes "... Okay, I will follow your will. Don't worry...";
+				next;
+				break;
+			case 2:
+				mes "[" + strcharinfo(0) + "]";
+				mes "......";
+				next;
+				mes "[Ahrum]";
+				mes "Ignorance... is positive... It means... My bid... is successful...";
+				next;
+				break;
+			}
+			mes "[Ahrum]";
+			mes "Now... I can die... with peace... Thank... you very... much, both... of you.";
+			next;
+			mes "[Ernst]";
+			mes "Brother...";
+			next;
+			mes "[Ahrum]";
+			mes "Then, perpetually... Bye... Sorry ... now I can't go fishing.";
+			next;
+			mes "[Ernst]";
+			mes "B...bro?";
+			next;
+			mes "[Ahrum]";
+			mes "......";
+			next;
+			mes "[Ernst]";
+			mes "B... bro, brother!";
+			next;
+			mes "[Ahrum]";
+			mes "......";
+			next;
+			mes "[Ernst]";
+			mes "Brotherrrrrrrr!!!";
+			next;
+			set nkprince_eisen,15;
+			set nk_prince,7;
+			donpcevent "Prince#another_ern1::OnDisable";
+			changequest 10024,10025;
+			close2;
+			warp "prt_castle",318,273;
+			end;
+		}
+	}
+	if (nk_prince < 5) {
+		mes "[Prince]";
+		mes "You are not allowed to be here.";
+		mes "Hmmm...";
+		next;
+		mes "[Prince]";
+		mes "Get out of my way.";
+		mes "I don't want to confront you.";
+		close;
+	}
+	else if (nk_prince > 4) {
+		mes "[Prince]";
+		mes "Are you the new adventurer appraiser? I am Eigen Ahrum from the Walter family. You can call me Prince Ahrum, for short, at your convenience.";
+		next;
+		mes "[Ahrum]";
+		mes "I hope you ask me short and simple questions. Long questions don't always mean special and good answers.";
+		next;
+		while(1) {
+			mes "-What shall I ask...-";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "I'd like to ask about...";
+			next;
+			switch(select("Your background story...:Your view of the nation...:Your hobbies or interests...:Never mind, I'll come by later.")) {
+			case 1:
+				mes "[Ahrum]";
+				mes "You aren't just trying to dissolve your curiosity about the king's family, are you?";
+				next;
+				mes "[Ahrum]";
+				mes "From my childhood, I liked to experience many things and learn them. As a result, I should bear interference from my family. To them, I was not a decent noble family member.";
+				next;
+				mes "[Ahrum]";
+				mes "But I am not sensitive to that, and I think a good king should neglect those trifles.";
+				next;
+				mes "[Ahrum]";
+				mes "Others can say that my behavior makes them embarrased, but if something ends well, they are all satisfied in the end. Am I wrong?";
+				next;
+				mes "[Ahrum]";
+				mes "Although I've skipped some lessons in life, I can back up missing lessons easily. Who cares who can swear to me as King! This is how I am.";
+				next;
+				mes "[Ahrum]";
+				mes "Ern nags me a lot";
+				mes "about this, but I don't make an issue in any case. Such a fastidious jerk.";
+				next;
+				mes "[Ahrum]";
+				mes "Like I said, I've been growing up with his scolds. I feel his words were harsher than others who shut their mouth after I accomplish something.";
+				next;
+				mes "[Ahrum]";
+				mes "He always says that results cannot be everything that matter.";
+				next;
+				mes "[Ahrum]";
+				mes "Before everything else, it is luck and glory for me, that I could be born in Walter, a distinguished noble family.";
+				next;
+				mes "[Ahrum]";
+				mes "Of course, my abilities";
+				mes "are underestimated because of my background. In other respects, I feel sad about it.";
+				next;
+				mes "[Ahrum]";
+				mes "In the coming age, people will talk about me as Eigen Ahrum from the Walter family, not Eigen Ahrum of Walter.";
+				next;
+				mes "[Ahrum]";
+				mes "The Walter family itself has high distinction and fame, but I will make the name shine further, and others will be proud of me.";
+				next;
+				break;
+			case 2:
+				mes "[Ahrum]";
+				mes "The nation I organize";
+				mes "will not be harmonious";
+				mes "with pastel color of fairy";
+				mes "tales.";
+				next;
+				mes "[Ahrum]";
+				mes "For sure, losers and depressed people have their own faults, like lesser challenges for their lives.";
+				next;
+				mes "[Ahrum]";
+				mes "I have some belief in the benefit of unlimited competition. Frankly, I don't like this king election system from noble families.";
+				next;
+				mes "[Ahrum]";
+				mes "Although all these";
+				mes "status system fade away";
+				mes "I will be the king, with my sole capability and aptitude! Hahaha.";
+				emotion ET_SMILE;
+				next;
+				mes "[Ahrum]";
+				mes "I know quite well about";
+				mes "other king cadidates, personally.";
+				mes "But I can't find one distinguished person who can lead this kingdom well.";
+				next;
+				mes "[Ahrum]";
+				mes "I'm not saying they aren't outstanding, but considering the current situation of Rune-Midgarts, they don't seem to be astonishing leaders.";
+				next;
+				mes "[Ahrum]";
+				mes "For this reason, I assure you that no candidate is fit for the position among them. If I have to pick someone who can be a match for me, I can say that one is Ernst.";
+				next;
+				mes "[Ahrum]";
+				mes "He has a soft personality and thinks too long about things, but I admit many merits to him. I can say he is a fairly high-standard candidate.";
+				next;
+				mes "[Ahrum]";
+				mes "........";
+				next;
+				mes "[Ahrum]";
+				mes "Hmm, I was too talkative.";
+				mes "I apologize for my redundant words, hahaha.";
+				next;
+				break;
+			case 3:
+				mes "[Ahrum]";
+				mes "I enjoy activities.";
+				mes "I can't stand passive games,";
+				mes "like card and board games";
+				mes "I think those games are";
+				mes "quite fit for the scholar type people.";
+				next;
+				mes "[Ahrum]";
+				mes "My brother Ern can stick to something for a long time, like books or study.";
+				next;
+				mes "[Ahrum]";
+				mes "Once I become king,";
+				mes "I won't handle documents";
+				mes "while sitting all day.";
+				next;
+				mes "[Ahrum]";
+				mes "It's very hard for me to do that.";
+				next;
+				break;
+			case 4:
+				mes "[Ahrum]";
+				mes "Okay...";
+				mes "as you please.";
+				if (nkprince_eisen == 2) {
+					set nkprince_eisen,3;
+				}
+				else {
+					set nkprince_eisen,1;
+				}
+				completequest 10005;
+				set .@prin1,checkquest(10005);
+				set .@prin2,checkquest(10006);
+				set .@prin3,checkquest(10007);
+				set .@prin4,checkquest(10008);
+				set .@prin5,checkquest(10009);
+				set .@prin6,checkquest(10010);
+				set .@prin7,checkquest(10011);
+				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+					setquest 10012;
+				}
+				close;
+			}
+		}
+	}
+}
+
+prt_castle,368,312,4	script	Prince#ern	985,{
+	if (checkquest(10024) == 2) {
+		mes "[Ernst]";
+		mes "...brother, if you want...";
+		mes "...Ah, please leave here.";
+		mes "I don't want to see anyone.";
+		close;
+	}
+	else if (checkquest(10024) == 0 || checkquest(10024) == 1) {
+		mes "[Ernst]";
+		mes "...Brother Ahrum...";
+		close;
+	}
+	if (nkprince_eisen > 2) {
+		if (nkprince_eisen == 3) {
+			mes "[Ernst]";
+			mes "Did you meet my brother Ahrum? He is a great man. Really.";
+			next;
+			mes "He tries to deal with things too tough that sometimes makes things into a problem. But even at those moments, he is willing to listen to my words; so we seldom seem to be in serious trouble.";
+			next;
+			mes "[Ernst]";
+			mes "That can only be that way, because we two have been so close to each other.";
+			next;
+			mes "[Ernst]";
+			mes "Brother Ahrum has been blaming me for that, I think unnecessarily too long. But he listens to me and acts as I advise.";
+			next;
+			mes "[Ernst]";
+			mes "Isn't he a great person?";
+			mes "He is a trustworthy and instructive person.";
+			close;
+		}
+		else if (nkprince_eisen == 5) {
+			mes "[Ernst]";
+			mes "Ah, now I am going to have a plan with Bro Ahrum";
+			mes "If you don't have a important issue with me, I shall go. ";
+			close;
+		}
+		else if (nkprince_eisen == 6) {
+			mes "[Ernst]";
+			mes "Ah, I heard person from Walter came in here. Have you seen him?";
+			next;
+			mes "[Ernst]";
+			mes "It seems that even brother Ahrum hasn't met with him. Hmm...";
+			set nkprince_eisen,7;
+			changequest 10012,10016;
+			close;
+		}
+		else if (nkprince_eisen == 9) {
+			mes "[Ernst]";
+			mes "Welcome, judge.";
+			mes "We meet quite open";
+			mes "Why don't you slow down your work?";
+			next;
+			mes "[Ernst]";
+			mes "Hmm...I don't have any more words to say. Moreover, Ahrum seems to be strange these days. I worry about that. I hope it's not a big deal.";
+			set nkprince_eisen,10;
+			changequest 10017,10004;
+			close;
+		}
+		else if ((nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
+			mes "[Ernst]";
+			mes "Ahrum is getting weird.";
+			mes "It's not a normal change, but a real corruption. I feel uneasy about it.";
+			next;
+			mes "[Ernst]";
+			mes "This isn't happening.";
+			mes "I believe Ahrum will be restored as he was. However, I don't feel good.";
+			close;
+		}
+		else if (nkprince_eisen == 15) {
+			mes "[Ernst]";
+			mes "Ah...";
+			mes "Brother Ahrum...";
+			mes "Eigen Ahrum...yes, sir.";
+			next;
+			mes "[Ernst]";
+			mes "......";
+			next;
+			mes "[Ernst]";
+			mes "Please leave here. I don't want to see anyone.";
+			close;
+		}
+		else {
+			mes "[Ernst]";
+			mes "Welcome, appraiser.";
+			mes "Thank you for your hard work. It's hard to judge others, isn't it?";
+			close;
+		}
+	}
+	if (nk_prince < 5) {
+		mes "[Prince]";
+		mes "You are not a adventurer judge";
+		mes "I think you shouldn't be here.";
+		close;
+	}
+	else if (nk_prince > 4) {
+		mes "[Prince]";
+		mes "Hi";
+		mes "you are the judege.";
+		mes "I am Ernst, prince of Geoborg.";
+		next;
+		mes "[Ernst]";
+		mes "I think it's hard work that judges people's talents. I will do my best to help you.";
+		next;
+		mes "[Ernst]";
+		mes "Well, thank you.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(He seems to have a polite personality as a candidate for King)";
+		next;
+		while(1) {
+			mes "-Well, what questions.-";
+			next;
+			switch(select("backgroud first.:I want to know your spirit of nationalism.: Your habbit and tastes.:I will be back.")) {
+			case 1:
+				mes "[Ernst]";
+				mes "Since I was young, I have grown up with a royal education. I haven't quarreled with others seriously, but I was not very polite either.";
+				next;
+				mes "[Ernst]";
+				mes "People thought that I was timid, but that's because I didn't want to be shun from others.";
+				next;
+				mes "[Ernst]";
+				mes "Of course, we got an exception... Eigen.";
+				next;
+				mes "[Ernst]";
+				mes "Eigen Ahrum can be the exception. He is not polite, but he makes sense from others with exact confirmation.";
+				next;
+				mes "[Ernst]";
+				mes "I think that is a great ability, and I should learn it. But, it is not only about results, but also a courtesy matter. We should keep something that we have to do.";
+				next;
+				mes "[Ernst]";
+				mes "For me, the process was more important than the result. Now, I take them as equal virtue. I didn't take results significantly. Ahrum taught me, who used to consider the result as nothing.";
+				break;
+			case 2:
+				mes "[Ernst]";
+				mes "The spirit of nationalism when I become King?";
+				next;
+				mes "[Ernst]";
+				mes "You might believe the power of a king is unlimited, but as one man, it has a limitation.";
+				next;
+				mes "[Ernst]";
+				mes "Both normal public and prominent people take charge of the society that gathers that wisdom is easier than doing things on your own.";
+				next;
+				mes "[Ernst]";
+				mes "Ahrum will help me to supplement any shortcomings. Not only Ahrum, but all ministers and cabinet members; and the public is my master.";
+				next;
+				mes "[Ernst]";
+				mes "It is my fortune that I got many masters beside Ahrum. It is also good for my country.";
+				next;
+				break;
+			case 3:
+				mes "[Ernst]";
+				mes "II don't have special habits. I am just willing to learn and read books.";
+				next;
+				mes "[Ernst]";
+				mes "And I also love to talk with Ahrum. Ahrum is clever enough to generate new ideas that I can follow.";
+				next;
+				mes "[Ernst]";
+				mes "Well, to tell the truth, going fishing with Ahrum is better. Although, we are too busy to go fishing because of all these kingdom issues.";
+				next;
+				mes "[Ernst]";
+				mes "We promised to go fishing after the taking of the throne... Let's see...";
+				next;
+				mes "[Ernst]";
+				mes "Hmm...is that enough?";
+				next;
+				break;
+			case 4:
+				mes "[Ernst]";
+				mes "Yes, then, see you later.";
+				if (nkprince_eisen == 1) {
+					set nkprince_eisen,3;
+				}
+				else {
+					set nkprince_eisen,2;
+				}
+				completequest 10006;
+				set .@prin1,checkquest(10005);
+				set .@prin2,checkquest(10006);
+				set .@prin3,checkquest(10007);
+				set .@prin4,checkquest(10008);
+				set .@prin5,checkquest(10009);
+				set .@prin6,checkquest(10010);
+				set .@prin7,checkquest(10011);
+				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
+					setquest 10012;
+				}
+				close;
+			}
+		}
+	}
+}
+
+prt_castle,163,319,0	script	#twonoble	-1,3,3,{
+OnTouch:
+	if (nkprince_eisen == 7) {
+		donpcevent "Young Noble#valter::OnEnable";
+		donpcevent "Aged Noble#rihart::OnEnable";
+		mes "[Aged Noble]";
+		mes "You don't have to worry.";
+		mes "Once my Eigen Ahrum is chosen to be king, the Richard family will be a second magnate.";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "Hehe, Ahrum is the most favorable and influential candidate already. You would be so amazing were you to fulfill this.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "Although Ahrum is a strong candidate, the prince of Gaebolg has a high reputation for his virtues too. For sure, it is better to confirm things.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "So, are you on the project of Prince Ernst's poisoning?";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "Of course. Even an autopsy will not find it. ... You don't have to worry.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "Ahrum will be elected, once the termination of prince Ernst happens, and then...";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "both family will lead this country, huhuhu.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "You must know what Walter and Gaebolg did. Both families stayed on top of the country.";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "The weakest one of the seven families, Gaebolg Family, took power by uniting with Schmidt and Walter.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "Yes, that's why the union of Walter and Gaebolg is perfect. Moreover, Ahrum and Ernst... It's obviously the second coming of Schmidt and Heinrich.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "That's why the Walter family and the Gaebolg Family can't exist together. Their co-existence will bring destruction as it has done in the past.";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "Thanks for that. It's good to go. All the people who know of the past will deny to be in league with Ahrum or Ernst.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "Anyway, we got a little bit more time. Keep the secret thoroughly; not to tell anyone.";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "Yes. For the glory of Rune-Midgarts.";
+		next;
+		mes "[A man of Walter Family]";
+		mes "All the glory for Rune-Midgarts...";
+		mes "Hmm?";
+		next;
+		emotion ET_SURPRISE;
+		mes "[A man of Walter Family]";
+		mes "Quiet... Someone comes.";
+		mes "Ok... take care.";
+		next;
+		mes "[A man of Riehart Family]";
+		mes "Never mind...";
+		donpcevent "YoungNoble#valter::OnDisable";
+		donpcevent "Aged Noble#rihart::OnDisable";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(Walter is the name of Ahrum.";
+		mes "Richard is the name of Poe.)";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "(Is this the conspiracy of two families? What the hell..)";
+		changequest 10016,10017;
+		set nkprince_eisen,8;
+		close;
+	}
+}
+
+prt_castle,156,325,4	script	Young Noble#valter	86,{
+	mes "[Young Noble Walter]";
+	mes "Step aside.";
+	mes "How dare you talk to him.";
+	close;
+
+OnInit:
+	disablenpc "Young Noble#valter";
+	end;
+
+OnEnable:
+	enablenpc "Young Noble#valter";
+	end;
+
+OnDisable:
+	disablenpc "Young Noble#valter";
+	end;
+}
+
+prt_castle,157,323,3	script	Aged Noble#rihart	880,{
+	mes "[Aged Noble Richard]";
+	mes "Hmm-hmm.";
+	mes "What an indecorous person!";
+	close;
+
+OnInit:
+	disablenpc "Aged Noble#rihart";
+	end;
+
+OnEnable:
+	enablenpc "Aged Noble#rihart";
+	end;
+
+OnDisable:
+	disablenpc "Aged Noble#rihart";
+	end;
+}
+
+prt_castle,314,371,0	script	Prince#another_ern	985,{
+	if (nkprince_eisen == 13) {
+		mes "[Ahrum]";
+		mes "I told you that I don't want to be king, and I don't have any intention to change my mind!";
+		next;
+		mes "[Ernst]";
+		mes "Brother! I don't know why you are suffering so much! Are you this weak a creature?!";
+		next;
+		mes "[Ahrum]";
+		mes "Suffering? Me?..Aaahhh... It looks so...? Yeahh... Yes, it does. Stressful...Huhuhu...Hahaha!!";
+		next;
+		mes "[Ernst]";
+		mes "Brother, Ahrum...?";
+		next;
+		mes "[Ahrum]";
+		mes "...Is it only me that gets away... Anyhow, I am a disqualified person ... huhuhu. But, I've made a decision.";
+		next;
+		mes "[Ahrum]";
+		mes "Ernst.";
+		next;
+		mes "[Ernst]";
+		mes "Yes?... Yes?";
+		next;
+		mes "[Ahrum]";
+		mes "Take this.";
+		next;
+		mes "- swish. - ";
+		next;
+		mes "- Ahrum casually throws a Bazerald to Ernst.-";
+		next;
+		mes "[Ernst]";
+		mes "Eh?... What's this about?... A Bazerald of Walter family?...Why?";
+		next;
+		mes "[Ahrum]";
+		mes "Now this is perfect timing. Even our witness is here! Ern, you remember our promise clearly, right?";
+		next;
+		mes "[Ernst]";
+		mes "What? Promise? Witness?...Ahh... Re-really...";
+		next;
+		mes "[Ahrum]";
+		mes "Yes, really. Now is the time.";
+		next;
+		mes "[Ernst]";
+		mes "Nonsense! Do you think I can do that to you?!";
+		next;
+		mes "[Ahrum]";
+		mes "Idiot! Being King should be followed by decisive action. I have no chances to be King. Corruption, and living like that, is worse than being killed by you...";
+		next;
+		mes "[Ernst]";
+		mes "B-but, you can live as you are! As if nothing happened. You are just needed to return to the way you were before. Brother, let me help you. Tell me everything you hide...";
+		next;
+		mes "[Ahrum]";
+		mes "This is so moronic! Can you say that you are kingly?! Are you showing me sympathy now? You should be a man of sense! If not, you are not eligible as a king candidate!";
+		next;
+		mes "[Ernst]";
+		mes "Bu...but!";
+		next;
+		mes "[Ahrum]";
+		mes "Talking back and forth is of no use! I cannot help it. If you keep insisting instead of trying to be a man of sense, then such a person should not be a king.";
+		next;
+		mes "[Ahrum]";
+		mes "Ghh?! Brother?!";
+		next;
+		mes "(dagger thrusting sound)";
+		specialeffect EF_HIT2;
+		set nkprince_eisen,14;
+		donpcevent "Prince#another_ern::OnDisable";
+		donpcevent "Prince#another_ern1::OnEnable";
+		close;
+	}
+	if (nkprince_eisen == 5) {
+		mes "[Ahrum]";
+		mes "Whoever be the king,";
+		mes "let's make Rune Midgarts...";
+		mes "the best country in the world, by helping each other.";
+		next;
+		mes "[Ernst]";
+		mes "We can make it.";
+		mes "No, we shall make it. For Brother and I together, we shall make it.";
+		next;
+		mes "[Ahrum]";
+		mes "But... If I am to reign, or help you; and if I am corrupted... you kill me... by your hand.";
+		next;
+		mes "[Ahrum]";
+		mes "In the opposite case, I will kill you too, you understand? So don't ever stray, and do not ever forget your determination.";
+		next;
+		mes "[Ernst]";
+		mes "Brother, you think about hell.";
+		mes "It will never happen, so...";
+		mes "Don't talk that way.";
+		next;
+		mes "[Ahrum]";
+		mes "It is an assumption.";
+		mes "Don't take it too seriously.";
+		next;
+		mes "[Ernst]";
+		mes "Alright, alright. Don't";
+		mes "take it the wrong way.";
+		mes "I have been acting for Brother and Kingdom, and I will be the same ever after.";
+		next;
+		emotion ET_SURPRISE;
+		mes "[Ahrum]";
+		mes "Ah, the appraiser has come.";
+		mes "How could you appear so suddenly? Ern and I were in the middle of conversation.";
+		next;
+		mes "[Ernst]";
+		mes "What's wrong, brother? We were not talking about anything bad. We were just making our resolution firm.";
+		next;
+		mes "[Ahrum]";
+		mes "You came here in good timing.";
+		mes "We've just decided to kill";
+		mes "the other... if one of us is";
+		mes "corrupt.";
+		next;
+		mes "[Ernst]";
+		mes "Brother?!";
+		next;
+		mes "[Ahrum]";
+		mes "By all means, be the witness of this agreement. You cannot say no. Because it is a very good thing, in some respects, for your work, isn't it?";
+		next;
+		mes "[Ernst]";
+		mes "Br...Brother. You are way too suppressive. Our appraiser must have his own position and opinion.";
+		next;
+		mes "[Ahrum]";
+		mes "You still have a weak personality. I am not forcing something so difficult on him! Who cares? I take silence as a positive answer! My bid is successful! And our promise is formed too!";
+		next;
+		mes "[Ernst]";
+		mes "Haah...haha... Appraiser, I deeply apologize for offending you. Sorry, but there is no possibility of fulfilling this promise. So, just don't take this situation seriously... You know... When pigs fly... ~";
+		next;
+		mes "[Ernst]";
+		mes "Now, let me return to my room. Keep up the good work, appraiser.";
+		donpcevent "Prince#another_ern::OnDisable";
+		set nkprince_eisen,6;
+		close;
+	}
+
+OnInit:
+	disablenpc "Prince#another_ern";
+	end;
+
+OnEnable:
+	enablenpc "Prince#another_ern";
+	end;
+
+OnDisable:
+	disablenpc "Prince#another_ern";
+	end;
+}
+
+prt_castle,314,372,0	script	Prince#another_ern1	985,{
+	if (nkprince_eisen == 14) {
+		mes "[Ernst]";
+		mes "Bbb... Brother?... You... told me you would kill me... You just wanted to be killed by me??... Bbb...brother?...";
+		next;
+		mes "[Ahrum]";
+		mes "Huhu... Not at all. I just wanted to kill you... That's it... Good job, Ern... This is legal, self-defense; killing a villain... right?";
+		next;
+		mes "[Ernst]";
+		mes "B..Brother... even now it is not too late! If you go to a medic, you can be restored!";
+		next;
+		mes "[Ahrum]";
+		mes "It's too late... Once your vital organs are stabbed... I wonder how could I stay alive... or even how I could come back to life... I don't need to live.";
+		next;
+		mes "[Ernst]";
+		mes "B..Brother....How...how could you?!";
+		next;
+		mes "[Ahrum]";
+		mes "Goodbye, my brother... Be King, and change this nation. You... You can make it...guk...";
+		next;
+		mes "[Ernst]";
+		mes "...Brother...Brother... Why... Why... How can your face look so satisfied? How...? Brother...";
+		next;
+		mes "[Ahrum]";
+		mes "Huhu...You don't need to know that. By the way, you kept your promise... You should be king... But if you are lost, and stray, I will come kill you at any time... from hell!!";
+		next;
+		mes "[Ernst]";
+		mes "I...I don't know! I don't know what's going on!";
+		next;
+		mes "[Ahrum]";
+		mes "You don't need to... What you have to know about is that there was a sacrifice from me. To make my death meaningful, you should be a good king. That's my conviction... That's it..guk..! Don't lose my words... gukkuk.";
+		next;
+		mes "[Ernst]";
+		mes "Idiot... Moron...";
+		next;
+		mes "[Ahrum]";
+		mes "Ahh... Appraiser, do you know what you have to do? Be mindful of your words. About what you saw, what you heard... You must not tell all of your experience to the inspector.";
+		next;
+		mes "[Ahrum]";
+		mes "Ern killed a villain here who bullied around.. I had no chance... He showed decisive action, and that will deserve him the right to be king...";
+		next;
+		mes "[Ahrum]";
+		mes "If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?";
+		next;
+		switch(select("... Okay I will follow your will...:......")) {
+		case 1:
+			mes "[" + strcharinfo(0) + "]";
+			mes "... Okay, I will follow your will. Don't worry...";
+			next;
+			break;
+		case 2:
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			next;
+			mes "[Ahrum]";
+			mes "Ignorance... is positive... It means... My bid... is successful...";
+			next;
+			break;
+		}
+		mes "[Ahrum]";
+		mes "Now... I can die... with peace... Thank... you very... much, both... of you.";
+		next;
+		mes "[Ernst]";
+		mes "Brother...";
+		next;
+		mes "[Ahrum]";
+		mes "Then, perpetually... Bye... Sorry ... now I can't go fishing.";
+		next;
+		mes "[Ernst]";
+		mes "B...bro?";
+		next;
+		mes "[Ahrum]";
+		mes "......";
+		next;
+		mes "[Ernst]";
+		mes "B... bro, brother!";
+		next;
+		mes "[Ahrum]";
+		mes "......";
+		next;
+		mes "[Ernst]";
+		mes "Brotherrrrrrrr!!!";
+		next;
+		set nkprince_eisen,15;
+		set nk_prince,7;
+		donpcevent "Prince#another_ern1::OnDisable";
+		changequest 10024,10025;
+		close2;
+		warp "prt_castle",318,273;
+		end;
+	}
+
+OnInit:
+	disablenpc "Prince#another_ern1";
+	end;
+
+OnEnable:
+	enablenpc "Prince#another_ern1";
+	end;
+
+OnDisable:
+	disablenpc "Prince#another_ern1";
+	end;
+}
+
+prt_castle,272,372,1	script	Prince#eisen1	983,{
+	mes "[Ahrum]";
+	mes "Moron. You'll never be a king. All throughout your life... Don't you know it? Such a junk addict!!";
+	next;
+	mes "[Erich]";
+	mes "...I am not trying to be, but swear words don't make me feel very good. What's wrong with you all of a sudden?";
+	next;
+	mes "[Ahrum]";
+	mes "I am just fed up with you. Even a jerk like you is a candidate for king? I feel sick and nauseated about this king succession.";
+	next;
+	mes "[Erich]";
+	mes "Yeah, it's not that wrong. But I am the representative of the Nerious family. I cannot stand for your insults.";
+	next;
+	mes "[Erich]";
+	mes "Is your family aware of your crazy actions? You are ruining your name, and of your family.";
+	next;
+	mes "[Ahrum]";
+	mes "...! Yes... I give a crap. No... My existence too! Kukuku...hahahahaha!";
+	next;
+	mes "[Ahrum]";
+	mes "Yes, you and I are both disqualified! Hahahaha!! The freaking addict reveals the truth! Yes, hahahahahaha!!";
+	next;
+	mes "[Erich]";
+	mes "... Crazy jerk. Beat it. I don't want to talk with you anymore.";
+	next;
+	mes "[Ahrum]";
+	mes "Yes, I am going now. Family shame?!! Hahahaha... What is a family!! Kkkkkk!! Very interesting!";
+	next;
+	mes "-Ahrum, seems to be out of his mind, as he approaches the door-";
+	next;
+	mes "[Erich]";
+	mes "...Nuts.";
+	completequest 10020;
+	set .@er1,checkquest(10018);
+	set .@er2,checkquest(10019);
+	set .@er3,checkquest(10020);
+	set .@er4,checkquest(10021);
+	set .@er5,checkquest(10022);
+	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
+		setquest 10023;
+		set nkprince_eisen,11;
+	}
+	donpcevent "Prince#eisen1::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen1";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen1";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen1";
+	end;
+}
+
+prt_castle,336,202,7	script	Prince#eisen2	983,{
+	mes "[Urugen]";
+	mes "What did you say? Ahrum?";
+	mes "Hey! What did you just say to me? Ahrum?!";
+	next;
+	mes "[Ahrum]";
+	mes "I can say it a zillion times! Urugen, you are not beautiful at all! Not even a bit! In fact, your look is very ugly and obscene!";
+	next;
+	mes "[Urugen]";
+	mes "That's very rude! How could a dirty germ like you talk like that to me!";
+	mes "you like germ can talk like that";
+	mes "to me!";
+	next;
+	mes "[Ahrum]";
+	mes "Dirty? Yes, I am. I am dirty. But it is not a problem of mine. Everything is dirty! I cannot stand it anymore!";
+	next;
+	mes "[Urugen]";
+	mes "Hm! I can agree with your words, the world is obscene, but you cannot bring me down to that level! I cannot forgive your words! Never, ever!";
+	next;
+	mes "[Ahrum]";
+	mes "What if you can't forgive me? What shall you do? That's good. Are you gonna kill me? Will you kill me? Kill me? Haha? You are being called beautiful only when calling yourself!";
+	next;
+	mes "[Urugen]";
+	mes "Akk! I cannot stand this! Such low behavior and words ...? You are no prince. I don't want to face you anymore! Get out of here!";
+	next;
+	mes "[Ahrum]";
+	mes "You don't have enough quality. You don't have belief to eliminate evil. By will, you are rubbish. I don't want to be with rubbish either! Stay in your world forever and never come out of it!";
+	next;
+	mes "-Ahrum strides out of the room, grumbling...-";
+	next;
+	mes "[Urugen]";
+	mes "...You are so low. I misjudged you. You are not of the few that have an artistic view. I totally saw you the wrong way.";
+	completequest 10021;
+	set .@er1,checkquest(10018);
+	set .@er2,checkquest(10019);
+	set .@er3,checkquest(10020);
+	set .@er4,checkquest(10021);
+	set .@er5,checkquest(10022);
+	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
+		setquest 10023;
+		set nkprince_eisen,11;
+	}
+	donpcevent "Prince#eisen2::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen2";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen2";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen2";
+	end;
+}
+
+prt_castle,286,201,7	script	Prince#eisen3	983,{
+	mes "[Ahrum]";
+	mes "Military maniac! Jerk! Do you think power can solve everything? In all situations, do you think people can live peacefully?!";
+	next;
+	mes "[Helmut]";
+	mes "You are fully violent now.";
+	mes "By your theory, you are also not eligible for the king's quality!";
+	next;
+	mes "[Ahrum]";
+	mes "Yes, you talk well. Bah!";
+	mes "I don't have quality!!";
+	mes "But you are worse than me! King candidate?? You are just a war monger!";
+	next;
+	mes "[Helmut]";
+	mes "You have come here to offend me? Do you think you can beat me, Eigen Ahrum?!";
+	next;
+	mes "[Ahrum]";
+	mes "Fight? That's so rubbish. I don't care for it. I just came here to shoot what I want to say to you. I don't even feel like fighting with you. I am leaving!";
+	next;
+	mes "[Helmut]";
+	mes "Hold on, coward! Are you fleeing now?! Such a coward! Let's finish our battle!";
+	next;
+	mes "[Ahrum]";
+	mes "Coward.. that's a very nice word. Yes, I am. I am leaving. Ta-tah! You are worse than a bad coward...like me! Bye-bye war monger!";
+	next;
+	mes "-Ahrum grins with a vague feeling towards an irritated Helmut, and leaves the room.-";
+	next;
+	mes "[Helmut]";
+	mes "That is... such a villain!!!";
+	completequest 10022;
+	set .@er1,checkquest(10018);
+	set .@er2,checkquest(10019);
+	set .@er3,checkquest(10020);
+	set .@er4,checkquest(10021);
+	set .@er5,checkquest(10022);
+	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
+		setquest 10023;
+		set nkprince_eisen,11;
+	}
+	donpcevent "Prince#eisen3::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen3";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen3";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen3";
+	end;
+}
+
+prt_castle,388,205,6	script	Prince#eisen4	983,{
+	mes "[Ahrum]";
+	mes "You always care about gambling. But, why don't you care about your surrondings first, eh? Young master of Richard?";
+	next;
+	mes "[Poe]";
+	mes "Why are you teasing me, now? At least I feel I have dice with higher numbers than you... You don't think so?";
+	next;
+	mes "[Ahrum]";
+	mes "Posh! You keep talking about dice. Listen. You can feel that I roll lower numbers of dice than you... But you have already failed before the roll of your dice! Do you know that?!";
+	next;
+	mes "[Poe]";
+	mes "What are you talking about? I can't get you. I've lost to whom? I don't know why you are talking like that.";
+	next;
+	mes "[Ahrum]";
+	mes "You can't know it! So what?! If you know, what can you do? You have too much pride over everything. Do you think you can foster a deeply rotten tree, to become a healthy tree?!";
+	next;
+	mes "[Poe]";
+	mes "If you want to say something, you have to say it clearly. Are you announcing a loss and defeat? Is my luck so dreadful, Eigen Ahrum?";
+	next;
+	mes "[Ahrum]";
+	mes "Yes, I announce my defeat. But it is not to you. You are a loser like me. Before getting into important business, you are ruined by an environmental element.";
+	next;
+	mes "[Poe]";
+	mes "...What the hell are you talking about? Environment? I totally don't get you. It is never clear.";
+	next;
+	mes "[Ahrum]";
+	mes "You'd better not understand it. If you know this, you will lose your health. Don't care for it... for the rest of your life!!";
+	next;
+	mes "[Poe]";
+	mes "Ho- hold! Look, Ahrum!";
+	mes "Hold on! Eigen Ahrum! Hey!";
+	next;
+	mes "-Ahrum totally neglects the";
+	mes "voice calling him and leaves the room, with a lonely countenance.-";
+	next;
+	mes "[Poe]";
+	mes "What... What. It's not fun.";
+	mes "I totally couldn't get him.";
+	completequest 10018;
+	set .@er1,checkquest(10018);
+	set .@er2,checkquest(10019);
+	set .@er3,checkquest(10020);
+	set .@er4,checkquest(10021);
+	set .@er5,checkquest(10022);
+	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
+		setquest 10023;
+		set nkprince_eisen,11;
+	}
+	donpcevent "Prince#eisen4::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen4";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen4";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen4";
+	end;
+}
+
+prt_castle,364,372,1	script	Prince#eisen5	983,{
+	mes "[Ahrum]";
+	mes "Peter, what will you do if your work doesn't mean anything?";
+	next;
+	mes "[Peter]";
+	mes "...I don't know what you are talking about, but meaningless things do not exist. I don't think you know about that.";
+	next;
+	mes "[Ahrum]";
+	mes "Buzzzz. You are wrong. There is a thing that is meaningless itself. Clearly speaking, the action becomes meaningless without knowing its meaning...";
+	next;
+	mes "[Peter]";
+	mes "Are you trying to explain... clearly? It's getting more complicated. What exactly do you want to say? Let me get it directly.";
+	next;
+	mes "[Ahrum]";
+	mes "...Whatever I do or do not do, I am just being manipulated by some thing. To make it worse, I hurt others as I am in that some thing only.";
+	next;
+	mes "[Peter]";
+	mes "......";
+	next;
+	mes "[Ahrum]";
+	mes "The worst thing is, I feel I just become timid with knowing and understanding the some thing itself..";
+	next;
+	mes "[Ahrum]";
+	mes "But it is the same with you. If you really want to express gratitude towards the girl, you should have visited her in person. You couldn't do it, could you?";
+	next;
+	mes "[Peter]";
+	mes "...Ahrum, what's wrong with you? You are not the Ahrum I know. What's made you like this?";
+	next;
+	mes "[Ahrum]";
+	mes "Hmph..The some thing. Nothing. It's meaningless. Reality, that's all. It was nice talking to you. Bye-bye, and live like what you used to live like, ever after.";
+	next;
+	mes "[Peter]";
+	mes "......Eigen Ahrum. You...";
+	next;
+	mes "-Ahrum shows a gloomy facial expression and leaves the room.-";
+	next;
+	mes "[Peter]";
+	mes "......";
+	completequest 10019;
+	set .@er1,checkquest(10018);
+	set .@er2,checkquest(10019);
+	set .@er3,checkquest(10020);
+	set .@er4,checkquest(10021);
+	set .@er5,checkquest(10022);
+	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
+		setquest 10023;
+		set nkprince_eisen,11;
+	}
+	donpcevent "Prince#eisen5::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen5";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen5";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen5";
+	end;
+}
+
+prt_castle,368,310,1	script	Prince#eisen6	983,{
+	mes "[Ernst]";
+	mes "Bro, tell me again. You just said something?";
+	next;
+	mes "[Ahrum]";
+	mes "Ok. Let me tell you. This Rune-Midgarts is rubbish. You and I struggle in the dump of trash, and we are all same with it, even if it cannot be recycled.";
+	next;
+	mes "[Ernst]";
+	mes "Brother, what's wrong? Are you insane?";
+	next;
+	mes "[Ahrum]";
+	mes "Insane? I am fully sane....J.m...I am just fed up with this disgusting reality, my lovely brother.";
+	next;
+	mes "[Ernst]";
+	mes "Reality? What reality? What did you perceive? You are not like as you are. I totally can't help you!";
+	next;
+	mes "[Ahrum]";
+	mes "I am as I usually am, Ernst. Just, reality is dirty, and I realized that I am trapped in the crap. I can't get out of here.";
+	next;
+	mes "[Ernst]";
+	mes "Liar! You always told me that you have possibilities in your book! You always behaved proudly!";
+	next;
+	mes "[Ahrum]";
+	mes "Shut up.";
+	next;
+	mes "[Ernst]";
+	mes "It's dirty and not good. That's why we should correct it. We already know about this situation, but why do you act like this!!";
+	next;
+	mes "[Ahrum]";
+	mes "...I told you, don't make noise!";
+	next;
+	mes "[Ernst]";
+	mes "No. Corruption is mutually agreed, and you brought me here, and because of your presence, I can depend on you!";
+	next;
+	mes "[Ahrum]";
+	mes "Shut up Shut up!!!!!!!!!!!!";
+	next;
+	mes "[Ernst]";
+	mes "......!";
+	next;
+	mes "[Ahrum]";
+	mes "Meaningless actions cannot be welcomed! Being manipulated by dirt is disgusting. I was ignorant, I felt that I acted by my will, but now I realize I was manipulated!";
+	next;
+	mes "[Ahrum]";
+	mes "King?! What's that for?! That's nothing! Even if we make a new world, nothing is changed!! We are like in a play. A picture is someone's intention... only drawn!! Right?!";
+	next;
+	mes "[Ernst]";
+	mes "What are you talking about? I totally can't understand! Are you saying you are not in the status quo? Yes? What the heck are you talking about!";
+	next;
+	mes "[Ahrum]";
+	mes "Shut up! Without knowing anything, you don't know when you can be killed. You don't get me yet.... ah...! You need to not know this!";
+	next;
+	mes "[Ernst]";
+	mes "Br...Brother, will you keep insisting on this? Our relationship is this short?";
+	next;
+	mes "[Ahrum]";
+	mes "Shut up! If you are not contented, you can kill me as we promised! You... me... me...!! I don't wanna talk about it any more, I am going back to my room!";
+	next;
+	mes "[Ernst]";
+	mes "Ah. Hold on a moment Brother! Ahrum!";
+	next;
+	mes "[Ahrum]";
+	mes "I... don't know! King... you!";
+	next;
+	mes "-Ahrum blushes";
+	mes "and leaves the room. He seems to be utterly fatigued.-";
+	next;
+	mes "[Ernst]";
+	mes "Ahrum... Ahrum...";
+	changequest 10023,10024;
+	set nkprince_eisen,13;
+	donpcevent "Prince#eisen6::OnDisable";
+	close;
+
+OnInit:
+	disablenpc "Prince#eisen6";
+	end;
+
+OnEnable:
+	enablenpc "Prince#eisen6";
+	end;
+
+OnDisable:
+	disablenpc "Prince#eisen6";
+	end;
+}
+
+prt_castle,318,276,0	script	#eisen	45,1,1,{
+OnTouch_:
+	if ((nkprince_eisen == 4) || (nkprince_eisen == 5)) {
+		donpcevent "Prince#another_ern::OnEnable";
+		set nkprince_eisen,5;
+		warp "prt_castle",318,368;
+	}
+	else if ((nkprince_eisen == 9) || (nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
+		set .@armkoe,rand(1,4);
+		if (.@armkoe == 1) {
+			mes "-You can hear Ahrum's voice";
+			mes "before going into his room";
+			mes "It's coming from inside.-";
+			next;
+			mes "[Ahrum]";
+			mes "I cannot have that qualification. I was raised in such a dirty place. I was so ignorant!";
+			next;
+			mes "[Ahrum]";
+			mes "What's the capacity of a king? And what is clean politics...? Ahhhhhhhhhhh!!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			close2;
+		}
+		else if (.@armkoe == 2) {
+			mes "-You can hear Ahrum's voice";
+			mes "before going into his room";
+			mes "It's coming from inside.-";
+			next;
+			mes "[Ahrum]";
+			mes "Proud family?... Famous...";
+			mes "Birth?... King's family? ...What's all that about?";
+			next;
+			mes "[Ahrum]";
+			mes "To brother Ernst, from my family. It's sin. And I am a part of the sin. As a part of the family. Family's sin. Equal to my sin.";
+			next;
+			mes "[Ahrum]";
+			mes "I cannot... cover it anymore... Ern... I hope even you...";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			close2;
+		}
+		else if (.@armkoe == 3) {
+			mes "-You can hear Ahrum's voice";
+			mes "before going into his room";
+			mes "It's coming from inside.-";
+			next;
+			mes "[Ahrum]";
+			mes "In the end, I am just being used... I make the most of my exertions and become the lead. That's all a part of the scenario...";
+			next;
+			mes "[Ahrum]";
+			mes "Damn it! Damn...!!";
+			mes "I cannot accept it. Never. Never!";
+			next;
+			mes "[Ahrum]";
+			mes "My ancestor ^FF0000Schmidt^000000... What shall you do with this situation? No...were you just used like me... by others?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			close2;
+		}
+		else if (.@armkoe == 4) {
+			mes "- I could hear Ahrum's voice ";
+			mes "before getting into his room";
+			mes "It was coming from inside.-";
+			next;
+			mes "[Ahrum]";
+			mes "No, it's no good... No... In this phase, I will be the king. I shouldn't be the king... Ern... You should not forget the meaning of a real king.";
+			next;
+			mes "[Ahrum]";
+			mes "For the real king's appearance... I am going tonight.... to darkness for you. ...Ahhhhhhhh!!!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "......";
+			close2;
+		}
+		warp "prt_castle",318,368;
+	}
+	else if (nkprince_eisen == 13) {
+		donpcevent "Prince#another_ern::OnEnable";
+		warp "prt_castle",318,368;
+	}
+	else if (nkprince_eisen == 15) {
+		warp "prt_castle",318,309;
+	}
+	else {
+		warp "prt_castle",318,368;
+	}
+	end;
+}
+
+prt_castle,336,276,0	script	#ern	45,1,1,{
+OnTouch_:
+	if (checkquest(10023) == 0 || checkquest(10023) == 1) {
+		donpcevent "Prince#eisen6::OnEnable";
+	}
+	warp "prt_castle",368,308;
+	end;
+}
+
+prt_castle,300,276,0	script	#erich	45,1,1,{
+OnTouch_:
+	if (checkquest(10020) == 0 || checkquest(10020) == 1) {
+		donpcevent "Prince#eisen1::OnEnable";
+	}
+	warp "prt_castle",274,368;
+	end;
+}
+
+prt_castle,330,271,0	script	#helmut	45,1,1,{
+OnTouch_:
+	if (checkquest(10022) == 0 || checkquest(10022) == 1) {
+		donpcevent "Prince#eisen3::OnEnable";
+	}
+	warp "prt_castle",290,208;
+	end;
+}
+
+prt_castle,348,271,0	script	#poe	45,1,1,{
+OnTouch_:
+	if (checkquest(10018) == 0 || checkquest(10018) == 1) {
+		donpcevent "Prince#eisen4::OnEnable";
+	}
+	warp "prt_castle",390,208;
+	end;
+}
+
+prt_castle,354,276,0	script	#peter	45,1,1,{
+OnTouch_:
+	if (checkquest(10019) == 0 || checkquest(10019) == 1) {
+		donpcevent "Prince#eisen5::OnEnable";
+	}
+	warp "prt_castle",366,368;
+	end;
+}
+
+prt_castle,310,271,0	script	#urgen	45,1,1,{
+OnTouch_:
+	if (checkquest(10021) == 0 || checkquest(10021) == 1) {
+		donpcevent "Prince#eisen2::OnEnable";
+	}
+	warp "prt_castle",340,208;
+	end;
+}
+
+prt_castle,317,364,0	warp	#eisen2	1,1,prt_castle,318,273
+prt_castle,317,304,0	warp	eisen22	1,1,prt_castle,318,273
+prt_castle,367,304,0	warp	#ern2	1,1,prt_castle,336,273
+prt_castle,273,364,0	warp	#erich2	1,1,prt_castle,300,273
+prt_castle,289,213,0	warp	#helmut2	1,1,prt_castle,330,274
+prt_castle,389,213,0	warp	#poe2	1,1,prt_castle,348,274
+prt_castle,365,364,0	warp	#peter2	1,1,prt_castle,354,273
+prt_castle,340,213,0	warp	#urgen2	1,1,prt_castle,310,274
+prt_castle,163,312,0	warp	#class2	1,1,prt_castle,221,343
+prt_castle,221,347,0	warp	#class	1,1,prt_castle,163,316
+prt_castle,225,338,0	warp	#room11	1,1,prt_castle,275,283
+prt_castle,273,284,0	warp	#room21	1,1,prt_castle,221,338
+prt_castle,225,318,0	warp	#room12	1,1,prt_castle,276,263
+prt_castle,273,264,0	warp	#room22	1,1,prt_castle,221,318
+prt_castle,221,308,0	warp	#princeout	1,1,prt_castle,176,167
+
+prt_castle,176,170,5	script	Guard#princein	105,{
+	if (nk_prince > 4) {
+		mes "[Guard of a strange place]";
+		mes "You can go to the room where princes gather, through the hidden door. For security reasons, it is totally guarded and hidden.";
+		next;
+		mes "[Guard of a strange place]";
+		mes "Let me open the door.";
+		close2;
+		warp "prt_castle",220,312;
+		end;
+	}
+	else {
+		mes "[Guard of a strange place]";
+		mes "I just came here to rest. For location information, you can ask it of others.";
+		close;
+	}
+}
+
+prt_castle,121,168,0	script	#arm	111,4,4,{
+OnTouch:
+	if (nk_prince == 8) {
+		mes "[" + strcharinfo(0) + "]";
+		mes "..............";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Milk is all spilt.";
+		mes "Just forget about it.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Who is going to have the throne instead of him?";
+		next;
+		set nk_prince,9;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Oh no...";
+		close;
+	}
+}
+
+prt_castle,316,313,0	script	#arm1	111,3,3,{
+OnTouch:
+	if (nkprince_eisen > 14) {
+		mes "[" + strcharinfo(0) + "]";
+		mes "..............";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "What thoughts did he have, and how did he decide to become King in this room?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "What situation...";
+		mes "pulled him back to an irreparable place?";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "I can't ask him anymore, and there are no clues left. Just what's left is...";
+		next;
+		mes "[Ahrum]";
+		mes "~~If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?~~";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "..............";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "...Keeping silent for him.";
+		mes "Taking the burden that he left... all throughout my life.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "...Rest in peace.";
+		close;
+	}
+	end;
+}

+ 194 - 0
npc/pre-re/quests/seals/brisingamen_seal.txt

@@ -0,0 +1,194 @@
+//===== rAthena Script ======================================= 
+//= God Item Quest - Brisingamen Seal
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Quest for breaking the seal of Brisingamen.
+//===== Changelogs: ==========================================
+//= 1.0 Renewal script update for ep16.1 [Capuche]
+//============================================================
+
+prt_castle,80,52,0	script	Personnel Record#book1	HIDDEN_NPC,{
+	if ($God2 < $@god_check1) {
+		mes "[Librarian]";
+		mes "What are you doing?";
+		mes "Don't touch anything!";
+		close;
+	}
+	if ($God3 >= $@god_check2) {
+		mes "[Librarian]";
+		mes "What are you doing?";
+		mes "Don't touch anything!";
+		close;
+	}
+	if (god_brising == 26) {
+		mes "[" + strcharinfo(0) + "]";
+		mes "I should read this";
+		mes "from the point where";
+		mes "I left off...";
+		next;
+		mes "["+ strcharinfo(0) +"]";
+		mes "Huh...?";
+		mes "What's this mark";
+		mes "here at the bottom?";
+		mes "Some kind of secret?";
+		next;
+		mes "["+ strcharinfo(0) +"]";
+		mes "No wonder the librarian";
+		mes "seemed to hesitate before";
+		mes "saying anything. Huh.";
+		mes "Now let's see...";
+		next;
+		set .@bookrand,rand(1,3);
+		if (.@bookrand == 1) {
+			mes "[Personnel Record]";
+			mes "^663300Lowen, of the 2nd squad, returned to her detachment 3 days after the incident. A trial was held, and she was judged guilty of fleeing when ordered to fight.^000000";
+			next;
+			mes "[Personnel Record]";
+			mes "^663300Despite the severity of this offense, she was only discharged from the Crusaders and the holy power granted to her was forcibly removed...^000000";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "She was forced to leave the Crusaders?! That's ridiculous!";
+			next;
+			mes "["+ strcharinfo(0) +"]";
+			mes "Did they want to sentence her to death or what? That's almost too cruel. She must have been humiliated...";
+			next;
+			mes "[Personnel Record]";
+			mes "^6633002 years later after the incident, an expedition team found rusty armor shards, a broken sword";
+			mes "and some effects belonging to";
+			mes "Lowen Ellenen.^000000";
+			next;
+			mes "[Personnel Record]";
+			mes "^663300However, this information";
+			mes "is highly classified. Officially, Lowen Ellenen died during the mission.^000000";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "They thought she brought";
+			mes "disgrace to the Crusaders?";
+			mes "This sounds pretty messy.";
+			mes "Should I try to meet her again?";
+			next;
+			mes "[Librarian]";
+			mes "^666666*Yawn...*^000000";
+			mes "What the...?";
+			mes "who are you!";
+			mes "Get the hell";
+			mes "out of here!";
+			set god_brising,30;
+			close2;
+			warp "prt_castle",94,37;
+			end;
+		}
+		else {
+			mes "[Librarian]";
+			mes "^666666*Yawn...*^000000";
+			mes "What the...?";
+			mes "who are you!";
+			mes "Get the hell";
+			mes "out of here!";
+			close2;
+			warp "prt_castle",94,37;
+			end;
+		}
+	}
+	else if (god_brising == 25) {
+		mes "^3355FFYou took the book from the shelf while the librarian was dozing. According to the Crusader Personnel Records, there's only one recruit that was named Lowen Ellenen.";
+		next;
+		mes "[" + strcharinfo(0) + "]";
+		mes "Lowen Ellenen...";
+		mes "Member of the";
+		mes "2nd squad...";
+		mes "Age 22...";
+		mes "Female...";
+		next;
+		mes "["+ strcharinfo(0) +"]";
+		mes "Became a fugitive?";
+		mes "This isn't the same";
+		mes "information the";
+		mes "Librarian told me!";
+		next;
+		set .@bookrand,rand(1,3);
+		if (.@bookrand == 1) {
+			mes "[" + strcharinfo(0) + "]";
+			mes "I should read this";
+			mes "from the point where";
+			mes "I left off...";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Huh...?";
+			mes "What's this mark";
+			mes "here at the bottom?";
+			mes "Some kind of secret?";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "No wonder the librarian";
+			mes "seemed to hesitate before";
+			mes "saying anything. Huh.";
+			mes "Now let's see...";
+			next;
+			mes "[Personnel Record]";
+			mes "^663300Lowen, of the 2nd squad, returned to her detachment 3 days after the incident. A trial was held, and she was judged guilty of fleeing when ordered to fight.^000000";
+			next;
+			mes "[Personnel Record]";
+			mes "^663300Despite the severity of this offense, she was only discharged from the Crusaders and the holy power granted to her was forcibly removed...^000000";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "She was forced to leave the Crusaders?! That's ridiculous!";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "Did they want to sentence her to death or what? That's almost too cruel. She must have been humiliated...";
+			next;
+			mes "[Personnel Record]";
+			mes "^6633002 years later after the incident, an expedition team found rusty armor shards, a broken sword";
+			mes "and some effects belonging to";
+			mes "Lowen Ellenen.^000000";
+			next;
+			mes "[Personnel Record]";
+			mes "^663300However, this information";
+			mes "is highly classified. Officially, Lowen Ellenen died during the mission.^000000";
+			next;
+			mes "[" + strcharinfo(0) + "]";
+			mes "They thought she brought";
+			mes "disgrace to the Crusaders?";
+			mes "This sounds pretty messy.";
+			mes "Should I try to meet her again?";
+			next;
+			mes "[Librarian]";
+			mes "^666666*Yawn...*^000000";
+			mes "What the...?";
+			mes "who are you!";
+			mes "Get the hell";
+			mes "out of here!";
+			set god_brising,30;
+			close2;
+			warp "prt_castle",94,37;
+			end;
+		}
+		else {
+			mes "[Librarian]";
+			mes "^666666*Yawn...*^000000";
+			mes "What the...?";
+			mes "who are you!";
+			mes "Get the hell";
+			mes "out of here!";
+			set god_brising,26;
+			next;
+			mes "["+ strcharinfo(0) +"]";
+			mes "(Nuts...!";
+			mes "I didn't get";
+			mes "to finish reading!)";
+			close2;
+			warp "prt_castle",94,37;
+			end;
+		}
+	}
+	else  {
+		mes "[Librarian]";
+		mes "What are you doing here?";
+		mes "Don't touch anything!";
+		close;
+	}
+}
+
+//-----------librarian----------------------------------------------------------
+prt_castle,84,51,5	duplicate(Librarian#2_)	Librarian#2	8W_SOLDIER
+

+ 11 - 0
npc/pre-re/quests/seals/megingard_seal.txt

@@ -0,0 +1,11 @@
+//===== rAthena Script ======================================= 
+//= God Item Quest - Megingjard Seal
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Quest for breaking the seal of Megingjard.
+//===== Changelogs: ==========================================
+//= 1.0 Renewal script update for ep16.1 [Capuche]
+//============================================================
+
+prt_castle,44,151,0	duplicate(Rebarev Doug_)	Rebarev Doug	1_M_KNIGHTMASTER
+prt_castle,48,164,0	duplicate(Crusader#God_)	Crusader#God	4_M_JOB_KNIGHT2

+ 12 - 0
npc/pre-re/quests/the_sign_quest.txt

@@ -0,0 +1,12 @@
+//===== rAthena Script =======================================
+//= The Sign Quest
+//===== Description: =========================================
+//= [Official Conversion]
+//= Quest for opening the doors to Geffenia.
+//= This script uses sign_01.bmp - sign_04.bmp, these will be
+//= found in the language of your client.
+//===== Changelogs: ==========================================
+//= 1.0 Location changed in ep16.1 [Capuche]
+//============================================================
+
+prt_castle,107,58,5	duplicate(Soldier#s11_)	Soldier#s11	8W_SOLDIER

+ 9 - 0
npc/pre-re/scripts_athena.conf

@@ -9,6 +9,7 @@ npc: npc/pre-re/airports/izlude.txt
 npc: npc/pre-re/cities/alberta.txt
 npc: npc/pre-re/cities/izlude.txt
 npc: npc/pre-re/cities/jawaii.txt
+npc: npc/pre-re/cities/lutie.txt
 npc: npc/pre-re/cities/yuno.txt
 
 // --------------------------- Guides ---------------------------
@@ -41,6 +42,7 @@ npc: npc/pre-re/kafras/kafras.txt
 npc: npc/pre-re/merchants/ammo_boxes.txt
 npc: npc/pre-re/merchants/ammo_dealer.txt
 npc: npc/pre-re/merchants/shops.txt
+npc: npc/pre-re/merchants/socket_enchant2.txt
 
 // --------------------------- Others ---------------------------
 npc: npc/pre-re/other/bulletin_boards.txt
@@ -77,10 +79,17 @@ npc: npc/pre-re/other/turbo_track.txt
 // - Quests-Tutorials for basic classes (1st class quests) ------
 npc: npc/pre-re/quests/first_class/tu_archer.txt
 // --------------------------------------------------------------
+// - The God Item Quest -----------------------------------------
+npc: npc/pre-re/quests/seals/brisingamen_seal.txt
+npc: npc/pre-re/quests/seals/megingard_seal.txt
+// --------------------------------------------------------------
+npc: npc/pre-re/quests/cooking_quest.txt
 npc: npc/pre-re/quests/monstertamers.txt
 npc: npc/pre-re/quests/mrsmile.txt
 npc: npc/pre-re/quests/quests_13_1.txt
 npc: npc/pre-re/quests/quests_izlude.txt
 npc: npc/pre-re/quests/quests_lighthalzen.txt
+npc: npc/pre-re/quests/quests_morocc.txt
 npc: npc/pre-re/quests/quests_nameless.txt
+npc: npc/pre-re/quests/the_sign_quest.txt
 npc: npc/pre-re/quests/quests_veins.txt

+ 2 - 0
npc/pre-re/scripts_jobs.conf

@@ -10,6 +10,8 @@ npc: npc/pre-re/jobs/1-1/mage.txt
 npc: npc/pre-re/jobs/1-1/merchant.txt
 npc: npc/pre-re/jobs/1-1/swordman.txt
 npc: npc/pre-re/jobs/1-1/thief.txt
+// - 2-2
+npc: npc/pre-re/jobs/2-2/crusader.txt
 // - Novice
 npc: npc/pre-re/jobs/novice/novice.txt
 

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

@@ -4,6 +4,7 @@
 
 // --------------------------- Cities ---------------------------
 npc: npc/pre-re/warps/cities/izlude.txt
+npc: npc/pre-re/warps/cities/prontera.txt
 npc: npc/pre-re/warps/cities/rachel.txt
 npc: npc/pre-re/warps/cities/yggdrasil.txt
 
@@ -21,3 +22,4 @@ npc: npc/pre-re/warps/fields/yuno_fild.txt
 // --------------------------- Others ---------------------------
 npc: npc/pre-re/warps/other/arena.txt
 npc: npc/pre-re/warps/other/sign.txt
+npc: npc/pre-re/warps/guildcastles.txt

+ 38 - 0
npc/pre-re/warps/cities/prontera.txt

@@ -0,0 +1,38 @@
+//===== rAthena Script ======================================= 
+//= Prontera Warp Script
+//===== Description: =========================================
+//= Warp Points for Prontera
+//===== Changelogs: ==========================================
+//= 1.0 Prontera castle map changed in ep16.1 [Capuche]
+//============================================================
+
+//= Prontera City ============================================
+prontera,156,360,0	warp	prt005	4,2,prt_castle,102,20
+
+//= Prontera Castle ===========================================
+prt_castle,102,129,0	warp	prtca01	3,2,prt_castle,102,143
+prt_castle,102,140,0	warp	prtca01-1	3,2,prt_castle,102,126
+prt_castle,102,16,0	warp	prtca001	6,2,prontera,156,356
+prt_castle,102,181,0	warp	prtca002	6,2,prt_gld,159,28
+prt_castle,102,73,0	warp	prtca02	3,2,prt_castle,102,91
+prt_castle,102,88,0	warp	prtca02-1	3,2,prt_castle,102,70
+prt_castle,113,107,0	warp	prtca03	2,3,prt_castle,134,107
+prt_castle,121,29,0	warp	prtca04	1,1,prt_castle,148,29
+prt_castle,130,107,0	warp	prtca03-1	2,3,prt_castle,110,107
+prt_castle,135,153,0	warp	prtca05	1,1,prt_castle,167,145
+prt_castle,144,29,0	warp	prtca04-1	2,2,prt_castle,117,29
+prt_castle,149,113,0	warp	prtca06	1,1,prt_castle,175,113
+prt_castle,164,145,0	warp	prtca05-1	1,1,prt_castle,132,153
+prt_castle,170,138,0	warp	prtca07	3,2,prt_castle,176,118
+prt_castle,172,113,0	warp	prtca06-1	1,1,prt_castle,146,113
+prt_castle,176,121,0	warp	prtca07-1	3,2,prt_castle,170,141
+prt_castle,28,121,0	warp	prtca08	2,2,prt_castle,40,141
+prt_castle,31,113,0	warp	prtca09	1,1,prt_castle,58,113
+prt_castle,40,138,0	warp	prtca08-1	3,2,prt_castle,28,118
+prt_castle,45,145,0	warp	prtca10	1,1,prt_castle,72,153
+prt_castle,54,113,0	warp	prtca09-1	1,1,prt_castle,27,113
+prt_castle,59,29,0	warp	prtca11	2,2,prt_castle,85,29
+prt_castle,68,153,0	warp	prtca10-1	1,1,prt_castle,42,145
+prt_castle,75,107,0	warp	prtca12	2,3,prt_castle,95,107
+prt_castle,82,29,0	warp	prtca11-1	1,1,prt_castle,56,29
+prt_castle,92,107,0	warp	prtca12-1	2,3,prt_castle,72,107

+ 10 - 0
npc/pre-re/warps/guildcastles.txt

@@ -0,0 +1,10 @@
+//===== rAthena Script =======================================
+//= Guild Castles Warp Script
+//===== Description: =========================================
+//= Warp Points for Renewal Guild Castles
+//===== Changelogs: ==========================================
+//= 1.0 Prontera castle map changed in ep16.1 [Capuche]
+//============================================================
+
+// Prontera Castle Map
+prt_gld,159,25,0	warp	prtg02_Castle	1,1,prt_castle,102,178

+ 5 - 4
npc/quests/cooking_quest.txt

@@ -27,9 +27,10 @@
 //= 1.7 Replaced effect numerics with constants. [L0ne_W0lf]
 //= 1.8 Renamed the variable cooking to cooking_q [ultramage]
 //= 1.8a Minor cleaning. [Euphy]
+//= 1.9 Renewal script update for ep16.1 [Capuche]
 //============================================================ 
 
-prt_castle,43,30,3	script	Charles Orleans#cook	878,{
+-	script	Charles Orleans#cook_	-1,{
 	if (MaxWeight - Weight < 2000) {
 		mes "[Charles Orleans]";
 		mes "Just one second.";
@@ -1480,7 +1481,7 @@ L_End:
 	end;
 }
 
-prt_castle,45,35,5	script	Madeleine Chu#cook	886,{
+-	script	Madeleine Chu#cook_	-1,{
 	if (MaxWeight - Weight < 2000) {
 		mes "[Madeleine Chu]";
 		mes "I'm sorry, but right now";
@@ -2120,7 +2121,7 @@ S_SellSets:
 	return;
 }
 
-prt_castle,45,28,3	script	Child with Cat#cook	877,{
+-	script	Child with Cat#cook_	-1,{
 	set .@nyu,rand(1,2);
 	if (.@nyu == 1) {
 		cutin "nyuang_1",2;
@@ -2143,7 +2144,7 @@ prt_castle,45,28,3	script	Child with Cat#cook	877,{
 	end;
 }
 
-prt_castle,44,30,5	script	Wickebine#cook	725,{
+-	script	Wickebine#cook_	-1,{
 	disablenpc "Wickebine#cook";
 	end;
 

+ 7 - 4
npc/quests/first_class/tu_archer.txt

@@ -19,12 +19,13 @@
 //= 1.5 Fixed bad NPC header data to comply with rev. 11603. [L0ne_W0lf]
 //= 1.6 Fixed infinate loop. (bugreport:2393) [L0ne_W0lf]
 //= 1.7 Added 10.3 dialog and moved Arpesto to hunter skill quest. [Kisuka]
-//= 1.8 Updated slightly, removed additional emotions from Reiden. [L0ne_W0lf]
+//= 1.8 Updated slightly, removed additional emotions from Reidin. [L0ne_W0lf]
 //= 1.9 Misc. updates. [L0ne_W0lf]
 //= 1.9a Added 'npcskill' command. [Euphy]
 //= 2.0 Updated to match the official script. [Euphy]
 //=     Added Pre-Renewal support.
 //= 3.0 Clean-up. [Capuche]
+//= 3.1 Location changed in ep16.1 of Minister NPC. [Capuche]
 //============================================================
 
 // Bard Jet
@@ -858,6 +859,7 @@ pay_arche,103,165,5	script	Reidin Corse#tu	4_M_REIDIN_KURS,{
 				mes "might! Practice Double Strafe";
 				mes "enough and you'll get used to it!";
 				next;
+				tu_archer01 = 10;
 				if(.@eagle == 0){
 					specialeffect2 EF_WIND;
 					// tu_archer01 = 10;
@@ -1148,7 +1150,7 @@ pay_arche,103,165,5	script	Reidin Corse#tu	4_M_REIDIN_KURS,{
 	next;
 	emotion ET_HNG, getnpcid(0, "Arpesto");
 	mes "[Arpesto]";
-	mes "Reiden...";
+	mes "Reidin...";
 	mes "Stop messing around.";
 	mes "Hey there, kid. The real";
 	mes "master of the Icarus Guild";
@@ -1826,7 +1828,7 @@ prontera,144,301,5	script	Mage#tu	2_F_MAGICMASTER,{
 
 // Minister
 //============================================================
-prt_castle,76,165,6	script	Minister#tu	1_M_JOBTESTER,{
+-	script	Minister#tu_	-1,{
 	mes "[Minister]";
 	mes "The royal family";
 	mes "is extremely busy";
@@ -1886,7 +1888,8 @@ prt_castle,76,165,6	script	Minister#tu	1_M_JOBTESTER,{
 
 // Range NPC
 //============================================================
-prt_castle,94,150,4	script	#sound_tu	HIDDEN_WARP_NPC,6,6,{
+-	script	#sound_tu_	-1,{
+	end;
 OnTouch_:
 	if(tu_archer02 == 6) {
 		mes "[Minister]";

+ 1 - 1
npc/quests/newgears/2008_headgears.txt

@@ -711,7 +711,7 @@ morocc_in,137,102,5	script	Trainee#2008hat01	82,{
 								mes "Did this color came out nicely?";
 								delitem 5438,1;
 								delitem 976,1;
-								getitem 250,1;
+								getitem 2250,1;
 								close;
 							}
 							mes "[Elgo]";

+ 5 - 4
npc/quests/quests_13_1.txt

@@ -28,6 +28,7 @@
 //= 3.3a Added Izlude RE coordinates. [Euphy]
 //= 3.4 Added GM management function and NPC. [Euphy]
 //= 3.5 Updated turn-in requirements for Tripatriate Union's Feud. [Euphy]
+//= 3.6 Renewal script update for ep16.1 [Capuche]
 //============================================================ 
 
 // Onward to the New World :: ep13_gogo
@@ -87,7 +88,7 @@ prontera,163,53,3	script	Promotional Staff#prt	100,{
 	end;
 }
 
-prt_castle,121,51,3	script	Alliance Manager#prt	752,{
+-	script	Alliance Manager#prt_	-1,{
 	if (ep13_ryu == 13) {
 		mes "[Alliance Manager]";
 		mes "If we'd had the initiative over Schwartzvald, we could take advantage over them! But we lost the opportunity.";
@@ -173,7 +174,7 @@ prt_castle,121,51,3	script	Alliance Manager#prt	752,{
 	close;
 }
 
-prt_castle,117,51,5	script	Member of Alliance#prt	754,{
+-	script	Member of Alliance#prt_	-1,{
 	if ((ep13_ryu == 12) || (ep13_ryu == 13)) {
 		mes "[Member of Alliance]";
 		mes "If we have absolute power, we wouldn't have to get along with Schwartzvald and Arunafeltz.";
@@ -195,7 +196,7 @@ prt_castle,117,51,5	script	Member of Alliance#prt	754,{
 	close;
 }
 
-prt_castle,83,67,5	script	Recruiter for the Brave	109,{
+-	script	Recruiter for the Brave_	-1,{
 	if (ep13_ryu == 12) {
 		mes "[Recruiter]";
 		mes "Why have you come again?";
@@ -10134,7 +10135,7 @@ man_fild03,202,251,3	duplicate(Expedition Scout#1)	Expedition Scout#2	707
 spl_fild02,295,368,3	duplicate(Expedition Scout#1)	Expedition Scout#3	707
 spl_fild03,172,71,3	duplicate(Expedition Scout#1)	Expedition Scout#4	707
 
-prt_castle,88,165,3	script	Laur	57,{
+-	script	Laur_	-1,{
 	mes "[Laur]";
 	if (ep13_1_edq == 9 || ep13_1_edq == 111 || ep13_1_edq == 121 || ep13_1_edq == 113 || ep13_1_edq == 123) {
 		mes "I'm Laur, the aide of the Home Minister of the Rune-Midgarts Kingdom. Do you have any business with me?";

+ 2 - 1
npc/quests/quests_13_2.txt

@@ -5479,7 +5479,8 @@ spl_in01,30,324,3	script	High Laphine#grenouille	446,{
 		set .@dayq_chk,checkquest(2186,PLAYTIME);
 		if ((.@dayq_chk == -1) || (.@dayq_chk == 2)) {
 			if ((ep13_2_tre1 < 1) || (ep13_2_tre1 == 6)) {
-				erasequest 2186;
+				if (.@dayq_chk == 2)
+					erasequest 2186;
 				set ep13_2_tre1,0;
 				mes "[Grenouille]";
 				mes "I've heard that some strangers from Rune Midgard are around here, it must be you.";

+ 4 - 1
npc/quests/quests_amatsu.txt

@@ -1804,7 +1804,10 @@ ama_in02,200,176,4	script	Lord of Palace#ama	768,{
 			mes "may be able to cure my mother's disease. I will reward you well if you succeed...";
 			next;
 			set event_amatsu,2;
-			changequest 8131,8132;
+			if (isbegin_quest(8131) == 1)
+				changequest 8131,8132;
+			else
+				setquest 8132;
 			mes "[Ishida Yoshinaga]";
 			mes "I beg you...Please.";
 			mes "My mother is living in a house outside of the palace.";

+ 4 - 3551
npc/quests/quests_morocc.txt

@@ -46,11 +46,12 @@
 //= 3.0 Updated RE/Pre-RE EXP. [Euphy]
 //= 3.1 Updated to match the latest official scripts. [Euphy]
 //= 3.2 Added GM management NPC and variable $@re_moc_time$. [Euphy]
+//= 3.3 Renewal script update for ep16.1 [Capuche]
 //============================================================ 
 
 // Stop Post Quest
 // ============================================================
-moc_ruins,113,181,4	script	William	89,{
+-	script	William	89,{
 	mes "[William]";
 	mes "Welcome to";
 	mes "MacMillan's ^3355FFPost^000000 Workshop.";
@@ -95,7 +96,7 @@ moc_ruins,113,181,4	script	William	89,{
 
 // Binoculars Quest
 // ============================================================
-moc_ruins,118,176,4	script	Alchemist	64,{
+-	script	Alchemist	64,{
 	mes "[Marius]";
 	mes "Howdy, new customer!!";
 	mes "I know what you're gonna talk about. You want the Magic Glasses from me, riiiiight?";
@@ -1204,7 +1205,7 @@ payon,200,113,3	duplicate(ConMessenger)	Continental Messenger#03	997,3,3
 alberta,127,64,3	duplicate(ConMessenger)	Continental Messenger#04	998,3,3
 aldebaran,135,128,3	duplicate(ConMessenger)	Continental Messenger#05	998,3,3
 
-morocc,176,103,3	script	Continental Official	754,{
+-	script	Continental Official	-1,{
 	if (rebirth_moc_edq > 3) {
 		mes "[Continental Guard Official]";
 		mes "On behalf of the Continental Guard, I thank you for your efforts. Now, let me see if I've received any news from Headquarters that you should know...";
@@ -4315,3551 +4316,3 @@ cave,105,32,7	script	Cave Settler#f_cave7	979,{
 	mes "(Whisper)";
 	close;
 }
-
-// Succession of the Prince
-// ============================================================
-prontera,153,353,4	script	Messenger#prince1	105,{
-	if (nk_prince == 0) {
-		if (rebirth_moc_edq > 1) {
-			mes "[Messenger]";
-			mes "I am a messenger from the Royal court, sent to find a reliable adventurer. This is all about the very important issues of our nation.";
-			next;
-			if (aru_monas > 23) {
-				mes "[Messenger]";
-				mes "It might have brought national disorder, but people are all wary about the rebirth of the devil. We are in the perfect times to process this issue without making any additional fuss.";
-				next;
-				mes "[Messenger]";
-				mes "Oh, I don't want you to panic too much... Hmm... what I want to say is, Tristan the third, the ruler of Rune Midgarts...";
-				next;
-				switch(select("Passed away?:Came for a celebration again?")) {
-				case 1:
-					emotion ET_SURPRISE;
-					mes "[Messenger]";
-					mes "You already know about that...";
-					mes "Then, I don't need to give";
-					mes "you any further explanation.";
-					next;
-					mes "[Messenger]";
-					mes "The King's position cannot";
-					mes "be empty for too long.";
-					mes "Now, the debate over selecting our next King is actively in progress. Please give us a hand with this, for the tomorrow of Rune Midgarts.";
-					set nk_prince,1;
-					setquest 10000;
-					close;
-				case 2:
-					mes "[Messenger]";
-					mes "...";
-					next;
-					mes "[Messenger]";
-					mes "What are you thinking?";
-					mes "Do you really think a celebration is momentous for a nation right now?";
-					next;
-					mes "[Messenger]";
-					mes "Yeah...";
-					mes "It's quite natural for you to expect nothing. I still don't know how to express this to you. Don't be too perplexed.";
-					next;
-					mes "[Messenger]";
-					mes "Tristan the 3rd, the ruler of Rune Midgarts...";
-					next;
-					mes "[Messenger]";
-					mes "...";
-					mes "has passed away.";
-					next;
-					mes "[Messenger]";
-					mes "To prevent the people's disorder, it won't yet be announced. The Court is focused on selecting the next king right now. They are very busy considering it.";
-					next;
-					mes "[Messenger]";
-					mes "You can learn more details in court. My mission is only to deliver this message to a reliable and brave adventurer.";
-					next;
-					mes "[Messenger]";
-					mes "Please...Please...";
-					mes "Lend a hand for the future";
-					mes "of the Rune Midgarts kingdom.";
-					set nk_prince,1;
-					setquest 10000;
-					close;
-				}
-			}
-			else {
-				mes "[Messenger]";
-				mes "It might have brought national disorder, but people are all wary about the rebirth of the devil. We are in the perfect times to process this issue without making any additional fuss.";
-				next;
-				mes "[Messenger]";
-				mes "The King hasn't appeared";
-				mes "in public for some time.";
-				mes "Many are curious about the situation.";
-				next;
-				mes "[Messenger]";
-				mes "I hate my duty to deliver";
-				mes "this sorrowful reality to others.";
-				mes "I think you already have a clue from my words...";
-				next;
-				mes "[Messenger]";
-				mes "King Tristan...";
-				next;
-				mes "[Messenger]";
-				mes "King Tristan...";
-				mes "...passed away...";
-				mes "...after a long time of suffering acutely from illness.";
-				next;
-				mes "[Messenger]";
-				mes "The Royal Court is now in the process of selecting the next king. My mission is to find a devoted adventurer and send them to court.";
-				next;
-				mes "[Messenger]";
-				mes "They will let you know what";
-				mes "you have to do in court.";
-				mes "I hope you will help bring";
-				mes "peace to Rune Midgarts.";
-				set nk_prince,1;
-				setquest 10000;
-				close;
-			}
-		}
-		else {
-			mes "[Messenger]";
-			mes "I am a messenger of Rune Midgarts.";
-			mes "Is there something special";
-			mes "in this country?";
-			next;
-			mes "[Messenger]";
-			mes "Haven't you seen something mysterious? Or heard some gossip?";
-			close;
-		}
-	}
-	else if (nk_prince == 1) {
-		mes "[Messenger]";
-		mes "I want you to go to the Prontera Royal Court to help in the next King's selection.";
-		next;
-		mes "[Messenger]";
-		mes "I will stay here to find other adventurers. May your heart bring great glory to Rune Midgarts!";
-		close;
-	}
-	else {
-		mes "[Messenger]";
-		mes "I am on a mission now. I think you may be looking for a different location. Ask others.";
-		close;
-	}
-}
-
-prt_castle,117,163,5	script	Inspector#prince	755,{
-	if (checkquest(10004) == 0 || checkquest(10004) == 1) {
-		mes "[Inspector]";
-		mes "Judge!";
-		mes "How goes it? I don't think it is easy to meet seven candidates and appraise them.";
-		next;
-		mes "[Inspector]";
-		mes "Ha. Are you done?";
-		mes "You are a fast worker, getting the job done!";
-		next;
-		mes "[Inspector]";
-		mes "Let me have the scoop on the candidates~";
-		next;
-		mes "-I talked about my impression";
-		mes "of the candidates for prince,";
-		mes "to the Inspector, right away.";
-		mes "I'm sure, I only give clear";
-		mes "and concise facts to him.-";
-		next;
-		mes "[Inspector]";
-		mes "Hmm... is that so? What you've said has helped me a lot. Thank you for your hard work.";
-		next;
-		mes "[Inspector]";
-		mes "By the way, I happened";
-		mes "to hear a rumor about";
-		mes "Prince Eigen Ahrum of the Walter family. Could you appraise all the candidates, one more time? I need this done urgently.";
-		next;
-		mes "[Inspector]";
-		mes "Now the whole picture may change... Others must probably be the same. But I worry about Eigen Ahrum because I can't neglect any rumors about any candidate.";
-		next;
-		mes "[Inspector]";
-		mes "Okay, so... please go in there one more time.";
-		completequest 10004;
-		setquest 10018;
-		setquest 10019;
-		setquest 10020;
-		setquest 10021;
-		setquest 10022;
-		close;
-	}
-	if (nk_prince < 2) {
-		mes "[Inspector]";
-		mes "What's wrong with you?";
-		mes "This is not an open area!";
-		next;
-		switch(select("Alright, Alright.:The Messenger directed me here.")) {
-		case 1:
-			mes "[Inspector]";
-			mes "If you know it, why are you here? Get out of here!";
-			close2;
-			warp "prontera",155,353;
-			end;
-		case 2:
-			if (nk_prince == 0) {
-				mes "[Inspector]";
-				mes "I don't think";
-				mes "that he is an experienced appraiser...";
-				close;
-			}
-			mes "[Inspector]";
-			mes "......";
-			next;
-			if (BaseLevel > 89) {
-				mes "[Inspector]";
-				mes "The Messenger checked only for your physical aptitude, and simply sent a warrior to Court. That's what his duty is all about.";
-				next;
-				mes "[Inspector]";
-				mes "Checking your qualification is a matter that concerns me.";
-				next;
-				mes "[Inspector]";
-				mes "Hmm...";
-				next;
-				mes "[Inspector]";
-				mes "You are an experienced traveler. You have enough strength, but... The Court doesn't choose a person based only on his or her great strength and battle experience.";
-				next;
-				mes "[Inspector]";
-				mes "To check someone's quality";
-				mes "you have to have enough";
-				mes "personality about you.";
-				next;
-				mes "[Inspector]";
-				mes "In that sense, I want to do a simple experiment.";
-				mes "Let's test you.";
-				next;
-				mes "[Inspector]";
-				mes "This won't be complicated. You are just needed to give a quick answer, frankly please, after each given situation.";
-				next;
-				mes "[Inspector]";
-				mes "kay, let's start. Get ready. Listen carefully and answer.";
-				next;
-				mes "[Inspector]";
-				mes "What do you think is the";
-				mes "most important thing to consider";
-				mes "as a leader of a hunt party?";
-				next;
-				switch(select("Strength and characteristics of the monster.:Efficiency of the hunt.:What we can get from the hunt.")) {
-				case 1:
-					set .@int,.@int+10;
-					break;
-				case 2:
-					set .@solid,.@solid+10;
-					break;
-				case 3:
-					set .@brave,.@brave+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What if we lose a party member";
-				mes "during battle?";
-				next;
-				switch(select("Keep fighting until we can do it.:Find a new place and try differently.:Stop hunting and replenish.")) {
-				case 1:
-					set .@brave,.@brave+10;
-					break;
-				case 2:
-					set .@int,.@int+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What you get as a result of the hunt...";
-				next;
-				switch(select("Share it as agreed prior.:I don't want to care for sharing.:Give it to the member that needs it.")) {
-				case 1:
-					set .@int,.@int+10;
-					break;
-				case 2:
-					set .@solid,.@solid+10;
-					break;
-				case 3:
-					set .@brave,.@brave+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What type of job class member";
-				mes "has to be cured while the enemy still lives?";
-				next;
-				switch(select("Priest, healer class.:Hunter, damage dealer.:Lord Knight, tanker.")) {
-				case 1:
-					set .@int,.@int+10;
-					break;
-				case 2:
-					set .@brave,.@brave+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "Whom do you want to befriend the most?";
-				next;
-				switch(select("A strong person.:An experienced person.:A kind person.")) {
-				case 1:
-					set .@brave,.@brave+10;
-					break;
-				case 2:
-					set .@int,.@int+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What was your ability that helped";
-				mes "you the most during your training?";
-				next;
-				switch(select("Relationships with people.:Plenty of information gathering.:Discernment and driving force.")) {
-				case 1:
-					set .@solid,.@solid+10;
-					break;
-				case 2:
-					set .@int,.@int+10;
-					break;
-				case 3:
-					set .@brave,.@brave+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "How do you give encouragement to others, usually?";
-				next;
-				switch(select("Refer to a past failure.:Hesitating is the worst thing.:You are not alone.")) {
-				case 1:
-					set .@int,.@int+10;
-					break;
-				case 2:
-					set .@brave,.@brave+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What is an ultimate virtue";
-				mes "in your life?";
-				next;
-				switch(select("Growth of oneself.:World peace.:The pursuit of truth.")) {
-				case 1:
-					set .@brave,.@brave+10;
-					break;
-				case 2:
-					set .@solid,.@solid+10;
-					break;
-				case 3:
-					set .@int,.@int+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What would you want to keep";
-				mes "the most if you were on a ";
-				mes "deserted island?";
-				next;
-				switch(select("Map:Flint:Weapon")) {
-				case 1:
-					set .@int,.@int+10;
-					break;
-				case 2:
-					set .@solid,.@solid+10;
-					break;
-				case 3:
-					set .@brave,.@brave+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What type of story do you like the most?";
-				next;
-				switch(select("Love story.:Heroic epic.:Religious tale.")) {
-				case 1:
-					set .@solid,.@solid+10;
-					break;
-				case 2:
-					set .@brave,.@brave+10;
-					break;
-				case 3:
-					set .@int,.@int+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "You've come to engage the";
-				mes "new monster in a new area.";
-				mes "What do you do?";
-				next;
-				switch(select("Attack first.:Observe from a distance.:Flee away.")) {
-				case 1:
-					set .@brave,.@brave+10;
-					break;
-				case 2:
-					set .@int,.@int+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "What has to be done first when";
-				mes "ruling the Rune Midgarts kingdom?";
-				next;
-				switch(select("Dominate countries by reinforcing militia.:Advancement of economy and technology.:Keep public security firm.")) {
-				case 1:
-					set .@brave,.@brave+10;
-					break;
-				case 2:
-					set .@int,.@int+10;
-					break;
-				case 3:
-					set .@solid,.@solid+10;
-					break;
-				}
-				mes "[Inspector]";
-				mes "Your humanity test is done.";
-				mes "You have been living...";
-				next;
-				if (.@brave > 50) {
-					if (.@int > 30) {
-						mes "[Inspector]";
-						mes "with strong conviction,";
-						mes "and reasonable judgement,";
-						mes "so far.";
-						next;
-					}
-					else if (.@solid > 30) {
-						mes "[Inspector]";
-						mes "with strong bravery,";
-						mes "but also you've had a";
-						mes "temperate life.";
-						next;
-					}
-					else {
-						mes "[Inspector]";
-						mes "with a decisive mind.";
-						mes "You could overcome hardships with it.";
-						next;
-					}
-				}
-				else if (.@int > 50) {
-					if (.@brave > 30) {
-						mes "[Inspector]";
-						mes "with firmness,";
-						mes "and reasonable judgement,";
-						mes "so far.";
-						next;
-					}
-					else if (.@solid > 30) {
-						mes "[Inspector]";
-						mes "with reasonable judgement";
-						mes "and a harmonic sensibility,";
-						mes "so far.";
-						next;
-					}
-					else {
-						mes "[Inspector]";
-						mes "with a calm and prudent decision.";
-						mes "I think you could also have had many good experiences.";
-						next;
-					}
-				}
-				else if (.@solid > 50) {
-					if (.@brave > 30) {
-						mes "[Inspector]";
-						mes "with strong bravery,";
-						mes "but also you've had a";
-						mes "temperate life.";
-						next;
-					}
-					else if (.@int > 30) {
-						mes "[Inspector]";
-						mes "with reasonable judgement";
-						mes "and peaceful sensibility,";
-						mes "so far.";
-						next;
-					}
-					else {
-						mes "[Inspector]";
-						mes "...Erm, actually...";
-						mes "You didn't distort to either way...";
-						mes "and stability and harmony were";
-						mes "an important virtue in your life.";
-						next;
-					}
-				}
-				mes "[Inspector]";
-				mes "I think you are";
-				mes "qualified enough to evaluate others. I apologize for my rude behavior to you in the beginning.";
-				next;
-				mes "[Inspector]";
-				mes "So, I ask you to do us a favor. You have become a regular adventurer appraiser.";
-				next;
-				mes "[Inspector]";
-				mes "Ah, you've spent a long time with me. You must be very tired. Before starting work, if you need some preparation, take off now and come back to me later. I will be waiting here for you.";
-				next;
-				set nk_prince,4;
-				changequest 10000,10003;
-				close;
-			}
-			else {
-				mes "[Inspector]";
-				mes "I don't think you are";
-				mes "an experienced adventurer...";
-				mes "And this is an important issue for the nation. I can't give this job to anyone like you.";
-				next;
-				mes "[Inspector]";
-				mes "But, if you prove yourself a strong adventurer, then I will let you pass the first qualification test.";
-				next;
-				mes "[Inspector]";
-				mes "Have you heard of Glastheim? In that area, there are monsters named Knights of Abyss.";
-				next;
-				mes "[Inspector]";
-				mes "After beating the knights of abyss";
-				mes "bring 2 ^ff0000Reins^000000.";
-				mes "If you can do this mission,";
-				mes "I will respect your strength.";
-				set nk_prince,2;
-				changequest 10000,10001;
-				next;
-				mes "[Inspector]";
-				mes "Let's continue our talk";
-				mes "after getting the 2 Reins.";
-				mes "Ciao...";
-				close;
-			}
-		}
-	}
-	else if (nk_prince == 2) {
-		mes "[Inspector]";
-		mes "Ahh, you came to meet me before huh? I guess you've already been to Glastheim.";
-		next;
-		mes "[Inspector]";
-		mes "Do you have the 2 reins I mentioned?";
-		next;
-		if (countitem(1064) > 1) {
-			mes "[Inspector]";
-			mes "Ooh!";
-			mes "Frankly, I didn't expect you to bring them. You are great.";
-			next;
-			mes "[Inspector]";
-			mes "Alright, good. You proved your strength for yourself. Now you passed one exam. All but one.";
-			delitem 1064,2; //Reins
-			set nk_prince,3;
-			changequest 10001,10002;
-			next;
-			mes "[Inspector]";
-			mes "The judge to appraise princes should build up his character too. Strength cannot cover everything. Personality should come along with it";
-			next;
-			mes "[Inspector]";
-			mes "In a sense, the next examination is to test your character. It is just a series of simple questions, but relax first, and be prepared mentally... then come and talk to me again.";
-			close;
-		}
-		else {
-			mes "[Inspector]";
-			mes "You've never even taken such a dangerous mission before! How dare you think you could come to this place? I don't think you can take the job of evaluating princes.";
-			next;
-			mes "[Inspector]";
-			mes "Now, you can come back later.";
-			close;
-		}
-	}
-	else if (nk_prince == 3) {
-		mes "[Inspector]";
-		mes "Now are you ready?";
-		mes "This test is not that hard though...";
-		next;
-		mes "[Inspector]";
-		mes "This is done to know your attitude and behavior in certain situations. Listen carefully to my questions, and answer frankly in regards to the episodes of your trip.";
-		next;
-		mes "[Inspector]";
-		mes "Now, let me begin.";
-		next;
-		mes "[Inspector]";
-		mes "What do you think is the";
-		mes "most important thing to consider";
-		mes "as a leader of a hunt party?";
-		next;
-		switch(select("Strength and characteristics of the monster.:Efficiency of the hunt.:What we can get from the hunt.")) {
-		case 1:
-			set .@int,.@int+10;
-			break;
-		case 2:
-			set .@solid,.@solid+10;
-			break;
-		case 3:
-			set .@brave,.@brave+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What if we lose a party member";
-		mes "during battle?";
-		next;
-		switch(select("Keep fighting until we can do it.:Find a new place and try differently.:Stop hunting and replenish.")) {
-		case 1:
-			set .@brave,.@brave+10;
-			break;
-		case 2:
-			set .@int,.@int+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What you get as a result of the hunt...";
-		next;
-		switch(select("Share it as agreed prior.:I don't want to care for sharing.:Give it to the member that needs it.")) {
-		case 1:
-			set .@int,.@int+10;
-			break;
-		case 2:
-			set .@solid,.@solid+10;
-			break;
-		case 3:
-			set .@brave,.@brave+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What type of job class member";
-		mes "has to be cured while the enemy still lives?";
-		next;
-		switch(select("Priest, healer class.:Hunter, damage dealer.:Lord Knight, tanker.")) {
-		case 1:
-			set .@int,.@int+10;
-			break;
-		case 2:
-			set .@brave,.@brave+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "Whom do you want to befriend the most?";
-		next;
-		switch(select("A strong person.:An experienced person.:A kind person.")) {
-		case 1:
-			set .@brave,.@brave+10;
-			break;
-		case 2:
-			set .@int,.@int+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What was your ability that helped";
-		mes "you the most during your training?";
-		next;
-		switch(select("Relationships with people.:Plenty of information gathering.:Discernment and driving force.")) {
-		case 1:
-			set .@solid,.@solid+10;
-			break;
-		case 2:
-			set .@int,.@int+10;
-			break;
-		case 3:
-			set .@brave,.@brave+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "How do you give encouragement to others, usually?";
-		next;
-		switch(select("Refer to a past failure.:Hesitating is the worst thing.:You are not alone.")) {
-		case 1:
-			set .@int,.@int+10;
-			break;
-		case 2:
-			set .@brave,.@brave+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What is an ultimate virtue";
-		mes "in your life?";
-		next;
-		switch(select("Growth of oneself.:World peace.:The pursuit of truth.")) {
-		case 1:
-			set .@brave,.@brave+10;
-			break;
-		case 2:
-			set .@solid,.@solid+10;
-			break;
-		case 3:
-			set .@int,.@int+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What would you want to keep";
-		mes "the most if you were on a ";
-		mes "deserted island?";
-		next;
-		switch(select("Map:Flint:Weapon")) {
-		case 1:
-			set .@int,.@int+10;
-			break;
-		case 2:
-			set .@solid,.@solid+10;
-			break;
-		case 3:
-			set .@brave,.@brave+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What type of story do you like the most?";
-		next;
-		switch(select("Love story.:Heroic epic.:Religious tale.")) {
-		case 1:
-			set .@solid,.@solid+10;
-			break;
-		case 2:
-			set .@brave,.@brave+10;
-			break;
-		case 3:
-			set .@int,.@int+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "You've come to engage the";
-		mes "new monster in a new area.";
-		mes "What do you do?";
-		next;
-		switch(select("Attack first.:Observe from a distance.:Flee away.")) {
-		case 1:
-			set .@brave,.@brave+10;
-			break;
-		case 2:
-			set .@int,.@int+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "What has to be done first when";
-		mes "ruling the Rune Midgarts kingdom?";
-		next;
-		switch(select("Dominate countries by reinforcing militia.:Advancement of economy and technology.:Keep public security firm.")) {
-		case 1:
-			set .@brave,.@brave+10;
-			break;
-		case 2:
-			set .@int,.@int+10;
-			break;
-		case 3:
-			set .@solid,.@solid+10;
-			break;
-		}
-		mes "[Inspector]";
-		mes "Your humanity test is done.";
-		mes "You have been living...";
-		next;
-		if (.@brave > 50) {
-			if (.@int > 30) {
-				mes "[Inspector]";
-				mes "with strong conviction,";
-				mes "and reasonable judgement,";
-				mes "so far.";
-				next;
-			}
-			else if (.@solid > 30) {
-				mes "[Inspector]";
-				mes "with strong bravery,";
-				mes "but also you've had a";
-				mes "temperate life.";
-				next;
-			}
-			else {
-				mes "[Inspector]";
-				mes "with a decisive mind.";
-				mes "You could overcome hardships with it.";
-				next;
-			}
-		}
-		else if (.@int > 50) {
-			if (.@brave > 30) {
-				mes "[Inspector]";
-				mes "with firmness,";
-				mes "and reasonable judgement,";
-				mes "so far.";
-				next;
-			}
-			else if (.@solid > 30) {
-				mes "[Inspector]";
-				mes "with reasonable judgement";
-				mes "and a harmonic sensibility,";
-				mes "so far.";
-				next;
-			}
-			else {
-				mes "[Inspector]";
-				mes "with a calm and prudent decision.";
-				mes "I think you could also have had many good experiences.";
-				next;
-			}
-		}
-		else if (.@solid > 50) {
-			if (.@brave > 30) {
-				mes "[Inspector]";
-				mes "with strong bravery,";
-				mes "but also you've had a";
-				mes "temperate life.";
-				next;
-			}
-			else if (.@int > 30) {
-				mes "[Inspector]";
-				mes "with reasonable judgement";
-				mes "and peaceful sensibility,";
-				mes "so far.";
-				next;
-			}
-			else {
-				mes "[Inspector]";
-				mes "...Erm, actually...";
-				mes "You didn't distort to either way...";
-				mes "and stability and harmony were";
-				mes "an important virtue in your life.";
-				next;
-			}
-		}
-		mes "[Inspector]";
-		mes "I think you are";
-		mes "qualified enough to evaluate others. I apologize for my rude behavior to you in the beginning.";
-		next;
-		mes "[Inspector]";
-		mes "So, I ask you to do us a favor. You have become a regular adventurer appraiser.";
-		next;
-		mes "[Inspector]";
-		mes "Ah, you've spent a long time with me. You must be very tired. Before starting work, if you need some preparation, take off now and come back to me later. I will be waiting here for you.";
-		next;
-		set nk_prince,4;
-		changequest 10002,10003;
-		close;
-	}
-	else if (nk_prince == 4) {
-		mes "[Inspector]";
-		mes "Welcome...";
-		mes "I will give you some";
-		mes "instructions on what to do,";
-		mes "and what one has to be careful with, when dealing with princes. Pay attention to me.";
-		next;
-		mes "[Inspector]";
-		mes "I will answer your questions first.";
-		next;
-		while(1) {
-			switch(select("What should I do, exactly?:The King died because of his illness?:Is my mission confidential??:I have no more questions.")) {
-			case 1:
-				mes "[Inspector]";
-				mes "We have seven candidates from seven families. One per each family. The candidates are all in the same place, where I will introduce them to you.";
-				next;
-				mes "[Inspector]";
-				mes "You have to meet the candidates one by one, and ask some questions about their quality; or observe their actions, then come back to me and explain all that you observed in detail.";
-				next;
-				mes "[Inspector]";
-				mes "The original rule is that the quality of princes has to be appraised by royal families for a long time, and one has to be elected by internal ordinance.";
-				next;
-				mes "[Inspector]";
-				mes "Because of the resurrection of the devil Satan Morroc, people are too uneasy to follow regular announcements, and the atmosphere of the kingdom is not stable.";
-				next;
-				mes "[Inspector]";
-				mes "Each kingdom is busy preventing the interference of Satan Morroc too.";
-				next;
-				mes "[Inspector]";
-				mes "So this time, the Court decided to change its ways, giving the opportunity to appraise the candidates to famous and devoted adventurers like yourself. That's why you are here.";
-				next;
-				set .@prince,1;
-				break;
-			case 2:
-				mes "[Inspector]";
-				mes "How absurd that you ask that!! I already told you clearly that King Tristan died of illness, didn't I?";
-				next;
-				mes "[Inspector]";
-				mes "Don't you have anything else to be curious about?";
-				next;
-				break;
-			case 3:
-				mes "[Inspector]";
-				mes "Sure...";
-				mes "It's natural to announce the death of the King. But the atmosphere of the nation is not ripe for it. This is our only alternative for now.";
-				next;
-				mes "[Inspector]";
-				mes "Princes cannot go outside on their own will. People cannot go to the place where the princes are.";
-				next;
-				break;
-			case 4:
-				if (.@prince == 1) {
-					mes "[Inspector]";
-					mes "I think this is enough";
-					mes "instruction for this.";
-					mes "Now I will let you know";
-					mes "where you can meet the princes.";
-					next;
-					mes "[Inspector]";
-					mes "When you get to the medic officer's room, a soldier will be standing on a strange spot. You can find that there isn't a door there.";
-					next;
-					mes "[Inspector]";
-					mes "Behind the soldier, you can find a secret door. If you talk to the soldier, the soldier will allow you to get in.";
-					next;
-					mes "[Inspector]";
-					mes "As I have expressed, this is a very important issue for the Rune Midgarts kingdom. Although I've stressed this point repeateadly, I cannot stress it enough.";
-					next;
-					mes "[Inspector]";
-					mes "Please behave accordingly.";
-					mes "Thanks for your effort.";
-					set nk_prince,5;
-					completequest 10003;
-					setquest 10005;
-					setquest 10006;
-					setquest 10007;
-					setquest 10008;
-					setquest 10009;
-					setquest 10010;
-					setquest 10011;
-					close;
-				}
-				else {
-					mes "[Inspector]";
-					mes "You got instructions as to what you should do, didn't you? This issue is not that worthless that you can take it with ease! Pay attention to this!";
-					next;
-					mes "[Inspector]";
-					mes "If you are not motivated to do it, I will find another adventurer. You can go back to your business, if you want to.";
-					next;
-				}
-				break;
-			}
-		}
-	}
-	else if (nk_prince == 7) {
-		mes "[Inspector]";
-		mes "How is it going?";
-		mes "Grading someone is not a piece of cake. It's real hard work indeed. You do the hard work for our country.";
-		next;
-		if ((nkprince_eisen == 15) && (checkquest(10025) == 0 || checkquest(10025) == 1)) {
-			mes "-I tell him about the Ahrum and Ernst accident.-";
-			next;
-			mes "[Inspector]";
-			mes "What!? I can't believe it!";
-			mes "Wha-, that's so...";
-			next;
-			mes "[Inspector]";
-			mes "By Ernst's hand...?";
-			mes "Yes...?";
-			next;
-			mes "[Inspector]";
-			mes "You've fulfilled the job as";
-			mes "adventurer appraiser fully.";
-			mes "I really appreciate your assistance thus far. Due to your help, the future of the kingdom is indebted to you.";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "(He doesn't seem to be suprised too much.. Could there be a reason? Now I am suspicious...)";
-			next;
-			mes "[Inspector]";
-			mes "Hey, the things you experienced here cannot be disclosed to others. You understand that this situation is fully confidential.";
-			next;
-			mes "[Inspector]";
-			mes "So, keep up the good work.";
-			mes "For the Kingdom of Rune Midgarts!";
-			if (checkre(3)) {
-				if ((BaseLevel > 80) && (BaseLevel < 86)) getexp 40000,0;
-				else if ((BaseLevel > 85) && (BaseLevel < 91)) getexp 45000,0;
-				else if ((BaseLevel > 90) && (BaseLevel < 96)) getexp 50000,0;
-				else if ((BaseLevel > 95) && (BaseLevel < 99)) getexp 55000,0;
-				else if (BaseLevel > 99) getexp 110000,0;
-				else getexp 30000,0;
-			} else {
-				if ((BaseLevel > 80) && (BaseLevel < 86)) getexp 400000,0;
-				else if ((BaseLevel > 85) && (BaseLevel < 91)) getexp 450000,0;
-				else if ((BaseLevel > 90) && (BaseLevel < 96)) getexp 500000,0;
-				else if ((BaseLevel > 95) && (BaseLevel < 99)) getexp 550000,0;
-				else if (BaseLevel >= 99) getexp 1100000,0;
-				else getexp 300000,0;
-			}
-			set nk_prince,8;
-			completequest 10025;
-			close;
-		}
-		else {
-			mes "[Inspector]";
-			mes "Then, let me hit the road..";
-			close;
-		}
-	}
-	else if ((nk_prince == 8) || (nk_prince == 9)) {
-		mes "[Inspector]";
-		mes "All for the glory";
-		mes "of Rune Midgarts!";
-		close;
-	}
-	else {
-		mes "[Inspector]";
-		mes "Hello, appraiser.";
-		mes "I hope you are able to finish your mission perfectly. Have you met with all the princes, like I told you to?";
-		if (nkprince_eisen != 10)
-			close;
-		next;
-		switch(select("Yes.:No.")) {
-		case 1:
-			set .@prin1,checkquest(10005);
-			set .@prin2,checkquest(10006);
-			set .@prin3,checkquest(10007);
-			set .@prin4,checkquest(10008);
-			set .@prin5,checkquest(10009);
-			set .@prin6,checkquest(10010);
-			set .@prin7,checkquest(10011);
-			if (.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7 == 14) {
-				mes "[Inspector]";
-				mes "Very well.";
-				mes "I like hearing about the princes.";
-				completequest 10004;
-				setquest 10004;
-			} else {
-				mes "[Inspector]";
-				mes "Are you sure?";
-				mes "Please check on all the princes.";
-			}
-			close;
-		case 2:
-			set .@prin1,checkquest(10005);
-			set .@prin2,checkquest(10006);
-			set .@prin3,checkquest(10007);
-			set .@prin4,checkquest(10008);
-			set .@prin5,checkquest(10009);
-			set .@prin6,checkquest(10010);
-			set .@prin7,checkquest(10011);
-			if (.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7 == 14) {
-				mes "[Inspector]";
-				mes "Don't be coy. I'm sure you have done it already.";
-				completequest 10004;
-				setquest 10004;
-			} else {
-				mes "[Inspector]";
-				mes "My investigations on all the princes are done.";
-			}
-			close;
-		}
-	}
-}
-
-prt_castle,272,375,4	script	Prince	881,{
-	if (nk_prince > 6) {
-		mes "-Obssessed with making";
-		mes "lock and key.-";
-		close;
-	}
-	if (checkquest(10020) == 2) {
-		mes "[Erich]";
-		mes "...What bad luck I have!";
-		mes "But he insists me to be corrupted, knowing how it would be...";
-		close;
-	}
-	else if (checkquest(10020) == 0 || checkquest(10020) == 1) {
-		mes "[Erich]";
-		mes "These days, I have bad luck... Only harrassments happen to me...";
-		close;
-	}
-	if (nk_prince < 5) {
-		mes "[Prince]";
-		mes "Who are you?";
-		mes "I don't think you are eligible";
-		mes "to be entering this room?";
-		next;
-		mes "[Prince]";
-		mes "I order you out of";
-		mes "my sight.";
-		close;
-	}
-	else if (nk_prince == 5) {
-		mes "[Prince]";
-		mes "Who are you?";
-		mes "Someone must have been instructed about the presence of the hidden entrance. Unless... Are you the adventurer appraiser?";
-		next;
-		select("Yes, I am.");
-		mes "[Prince]";
-		mes "Are you?... Do me a favor then. I am a legitimate son from the Nerius family. My name is Erich. You can call me Prince Erich.";
-		next;
-		mes "[Erich]";
-		mes "My full name is...";
-		next;
-		mes "[Erich]";
-		mes "That's enough.";
-		mes "You can ask information about me to my servant. I will take a rest.";
-		set nk_prince,6;
-		completequest 10011;
-		set .@prin1,checkquest(10005);
-		set .@prin2,checkquest(10006);
-		set .@prin3,checkquest(10007);
-		set .@prin4,checkquest(10008);
-		set .@prin5,checkquest(10009);
-		set .@prin6,checkquest(10010);
-		set .@prin7,checkquest(10011);
-		if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-			setquest 10012;
-		}
-		close;
-	}
-	else {
-		mes "[Erich]";
-		mes "......My conscience!";
-		mes "It doesn't work well...";
-		next;
-		mes "-He seems to be so obssessed to care about anything else.-";
-		close;
-	}
-}
-
-prt_castle,274,372,4	script	Servant#hans	48,{
-	if (checkquest(10020) == 2) {
-		mes "[Hans]";
-		mes "Ahh... mmm... I...";
-		mes "I... am so, sorry!";
-		mes "I... think I made a big mistake with the appraiser!";
-		next;
-		mes "[Hans]";
-		mes "My prince didn't do anything wrong but, anyways, I apologize for anything to you!";
-		close;
-	}
-	else if (checkquest(10020) == 0 || checkquest(10020) == 1) {
-		mes "Incessantly...-";
-		mes "-He has jitters whenever I react to him. His actions give me a feeling of pity.-";
-		close;
-	}
-	if (nk_prince == 6) {
-		mes "[Hans]";
-		mes "How are you doing, sir?";
-		mes "My name is Hans, servant of Prince Erich.";
-		next;
-		mes "[Hans]";
-		mes "What can I do for you?";
-		next;
-		switch(select("Prince Erich told me to meet you.:Nothing much.")) {
-		case 1:
-			mes "[Hans]";
-			mes "Did Prince Erich...?";
-			next;
-			select("I want to listen to a story of him.");
-			mes "[Hans]";
-			mes "Ahh, I see.";
-			mes "Frankly, Prince Erich is not interested in regime that much.";
-			next;
-			mes "[Hans]";
-			mes "He writes in his journal daily. On his wedding day, he jotted down: 'Like, nothing special happened today'. He doesn't care about current events or human relationships.";
-			next;
-			mes "[Hans]";
-			mes "What he likes is making locks.";
-			mes "He is eccentric, isn't he?";
-			mes "He is a kind of jester.";
-			next;
-			mes "[Hans]";
-			mes "He doesn't like classy costumes either. He didn't even bring a dress suit here. And as soon as he got here, he was immersed in making a lock and key, like that.";
-			next;
-			mes "[Hans]";
-			mes "I don't think I have the proper expression for you... I don't think I have something special to say about him to you. You can just appraise him as you see him...";
-			next;
-			mes "[Hans]";
-			mes "That's all I can say about this.";
-			mes "Huh...~";
-			next;
-			emotion ET_SURPRISE;
-			mes "[Hans]";
-			mes "Ah, Prince!";
-			mes "You can cut your finger!";
-			next;
-			mes "[Erich]";
-			mes ".........";
-			next;
-			mes "[Hans]";
-			mes "...Hmm he cannot even hear...";
-			mes "Oooooh...";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			close;
-		case 2:
-			mes "[Hans]";
-			mes "Did you meet the other princes?";
-			next;
-			mes "[Hans]";
-			mes "Although you may ask something, you will not hear anything special from him now.";
-			close;
-		}
-	}
-	else {
-		mes "[Hans]";
-		mes "Hello?";
-		mes "Are you the new adventurer appraiser??";
-		close;
-	}
-}
-
-prt_castle,339,202,3	script	Prince#urgen	989,{
-	if (nk_prince > 6) {
-		mes "[Urugen]";
-		mes "...It is not beautiful.";
-		mes "It discomforts me...";
-		close;
-	}
-	if (checkquest(10021) == 2) {
-		mes "[Urugen]";
-		mes " feel very much displeased. Hey, what are you looking at? Get out!";
-		next;
-		mes "[Urugen]";
-		mes "My beautiful body isn't in perfect condition right now. I don't want to show it to anyone today.";
-		close;
-	}
-	else if (checkquest(10021) == 0 || checkquest(10021) == 1) {
-		mes "[Urugen]";
-		mes "...What? What did you...";
-		mes "just say to me?... Huh?";
-		close;
-	}
-	if (nk_prince < 5) {
-		mes "[Prince]";
-		mes "Huuuuuuu";
-		mes "The position is not suitable for you.";
-		next;
-		mes "[Prince]";
-		mes "Get away from me, as soon as you can.";
-		close;
-	}
-	else if (nk_prince > 4) {
-		mes "[Prince]";
-		mes "La~ lalalala~ lalala~";
-		mes "Are you the person, supposed to look me over and appraise my quality?";
-		next;
-		mes "[Prince]";
-		mes "The daffodil you are gazing at is called Urugen. It bloomed at Wigner family.";
-		next;
-		mes "[Urugen]";
-		mes "I usually don't let anyone hear my beautiful voice, but this time, I will give a special service for you.";
-		next;
-		mes "[Urugen]";
-		mes "listen...";
-		mes "Let me answer with my";
-		mes "unforgettable, clear and beautiful voice.";
-		next;
-		while(1) {
-			switch(select("I want to know your background.:Let me know your view of the nation.:What are your hobbies or tastes?:Let me leave.")) {
-			case 1:
-				mes "[Urugen]";
-				mes "My dashing face from";
-				mes "childhood brought envy and jealousy from men, and endless proposals from women. I felt sick with it, so I came to be away from people.";
-				next;
-				mes "[Urugen]";
-				mes "My beautiful person";
-				mes "shouldn't bear stuff like that sometimes.";
-				next;
-				mes "[Urugen]";
-				mes "I became timid, gradually, in phases. I feel awe from men and women both, regardless of sexuality.";
-				set .@p_a,1;
-				next;
-				break;
-			case 2:
-				mes "[Urugen]";
-				mes "People should do what they are supposed to do. That's the source of drive for a nation. For me, my existence will be enough, for the nation.";
-				next;
-				mes "[Urugen]";
-				mes "The presence of such a gorgeous king like me will be the light for people and the hope and reason for their lives.";
-				set .@p_b,1;
-				next;
-				break;
-			case 3:
-				mes "[Urugen]";
-				mes "For sure, taking care of my body. Humans should pursue beauty. It's quite natural, isn't it?";
-				next;
-				mes "[Urugen]";
-				mes "In every case, there is an exception, like you in this court. Can you stand away from me a bit more? Because of your odor, I can hardly breathe.";
-				set .@p_c,1;
-				next;
-				break;
-			case 4:
-				mes "[Urugen]";
-				mes "Your spirit must be so strong. Looking over my beauty so long a time, you haven't lost your spirit yet.";
-				if (.@p_a + .@p_b + .@p_c == 3) {
-					completequest 10009;
-				}
-				completequest 10011;
-				set .@prin1,checkquest(10005);
-				set .@prin2,checkquest(10006);
-				set .@prin3,checkquest(10007);
-				set .@prin4,checkquest(10008);
-				set .@prin5,checkquest(10009);
-				set .@prin6,checkquest(10010);
-				set .@prin7,checkquest(10011);
-				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-					setquest 10012;
-				}
-				close;
-			}
-		}
-	}
-}
-
-prt_castle,289,201,3	script	Prince#helmut	991,{
-	if (nk_prince > 6) {
-		mes "[Helmut]";
-		mes "Such an idiot. I should have killed him earlier. Now I feel relieved.";
-		close;
-	}
-	if (checkquest(10022) == 2) {
-		mes "[Helmut]";
-		mes "Damn... Damn it!";
-		mes "Novice of Walter!!";
-		mes "How can I deal with this stress? Damn! Hell!";
-		close;
-	}
-	else if (checkquest(10022) == 0 || checkquest(10022) == 1) {
-		mes "-He is so blushed,";
-		mes "evidently shown on his face.-";
-		close;
-	}
-	if (nk_prince < 5) {
-		mes "[Helmut]";
-		mes "You are not supposed to be here!";
-		mes "Can't you keep away from me!";
-		close;
-	}
-	else if (nk_prince > 4) {
-		mes "[Helmut]";
-		mes "Are you the new appraiser? I am fed up with the many visitors! Let's take up the main subject!";
-		next;
-		mes "-What subject should I start with?-";
-		next;
-		switch(select("Your background...:Your ambition...:Your view of the nation...:I want to meet others first.")) {
-		case 1:
-			mes "[Helmut]";
-			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
-			next;
-			mes "[Helmut]";
-			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "............";
-			mes "Yes, I understand. Go ahead...";
-			next;
-			mes "[Helmut]";
-			mes "I am Helmut from Roewenburg.";
-			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
-			next;
-			mes "[Helmut]";
-			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
-			next;
-			mes "[Helmut]";
-			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
-			next;
-			mes "[Helmut]";
-			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
-			next;
-			mes "[Helmut]";
-			mes "Hey Calbern!";
-			mes "Bring beer! Beer!";
-			next;
-			mes "[Helmut]";
-			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			completequest 10010;
-			set .@prin1,checkquest(10005);
-			set .@prin2,checkquest(10006);
-			set .@prin3,checkquest(10007);
-			set .@prin4,checkquest(10008);
-			set .@prin5,checkquest(10009);
-			set .@prin6,checkquest(10010);
-			set .@prin7,checkquest(10011);
-			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-				setquest 10012;
-			}
-			close;
-		case 2:
-			mes "[Helmut]";
-			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
-			next;
-			mes "[Helmut]";
-			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "............";
-			mes "Yes, I understand. Go ahead...";
-			next;
-			mes "[Helmut]";
-			mes "I am Helmut from Roewenburg.";
-			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
-			next;
-			mes "[Helmut]";
-			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
-			next;
-			mes "[Helmut]";
-			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
-			next;
-			mes "[Helmut]";
-			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
-			next;
-			mes "[Helmut]";
-			mes "Hey Calbern!";
-			mes "Bring beer! Beer!";
-			next;
-			mes "[Helmut]";
-			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			completequest 10010;
-			set .@prin1,checkquest(10005);
-			set .@prin2,checkquest(10006);
-			set .@prin3,checkquest(10007);
-			set .@prin4,checkquest(10008);
-			set .@prin5,checkquest(10009);
-			set .@prin6,checkquest(10010);
-			set .@prin7,checkquest(10011);
-			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-				setquest 10012;
-			}
-			close;
-		case 3:
-			mes "[Helmut]";
-			mes "I don't know how others react but, I feel very uptight with your question. I shouldn't, but, I don't have a different view!";
-			next;
-			mes "[Helmut]";
-			mes "I am the prince; if you grumble, you become prince! I feel tiresome with this kind of questioning.";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "............";
-			mes "Yes, I understand. Go ahead...";
-			next;
-			mes "[Helmut]";
-			mes "I am Helmut from Roewenburg.";
-			mes "What I like is smelling blood in the battlefield, and I enjoy festivals too.";
-			next;
-			mes "[Helmut]";
-			mes "What I hate is sticking to formality, and talking much. As for ambition? What am I going to do when I become... king...?? I am asked this question many times.";
-			next;
-			mes "[Helmut]";
-			mes "When I become king, I will reinforce our troops and conquer continent after unification of continent; I will eradicate all the monsters that are harmful to my people!";
-			next;
-			mes "[Helmut]";
-			mes "~Kuffkuff~! I have a sore throat! It's been a while since I've used my throat. ~Kuffkuff~!";
-			next;
-			mes "[Helmut]";
-			mes "Hey Calbern!";
-			mes "Bring beer! Beer!";
-			next;
-			mes "[Helmut]";
-			mes "Why are you still standing there? I have nothing else to say to you! Stand back!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			completequest 10010;
-			set .@prin1,checkquest(10005);
-			set .@prin2,checkquest(10006);
-			set .@prin3,checkquest(10007);
-			set .@prin4,checkquest(10008);
-			set .@prin5,checkquest(10009);
-			set .@prin6,checkquest(10010);
-			set .@prin7,checkquest(10011);
-			if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-				setquest 10012;
-			}
-			close;
-		case 4:
-			mes "[" + strcharinfo(0) + "]";
-			mes "No, Prince,";
-			mes "I will be back later.";
-			next;
-			mes "[Helmut]";
-			mes "Alright, up to you.";
-			mes "Hey! Hey Calbern!";
-			mes "Move your ass here with beer!";
-			mes "Do you want to be beaten down?";
-			close;
-		}
-	}
-}
-
-prt_castle,288,208,4	script	Calbern	962,{
-	mes "[Calbern]";
-	mes "How are you doing, sir?";
-	mes "I am the servant of Prince Helmut...";
-	mes "Calbern.";
-	next;
-	mes "[Helmut]";
-	mes "Hey Calbern!";
-	mes "Bring beer! Beer!";
-	next;
-	mes "[Calbern]";
-	mes "Oops, I am so sorry.";
-	mes "I got business...";
-	close;
-}
-
-prt_castle,391,205,3	script	Prince#poe	993,{
-	if (nk_prince > 6) {
-		mes "[Poe]";
-		mes "Whatever the condition is, he is just a loser in the match of life.";
-		close;
-	}
-	if (checkquest(10018) == 2) {
-		mes "[Poe]";
-		mes "He gave up without any challenge. That's not what the man has to do. He is not as good as me. But okay. I am disappointed in him. Eigen Ahrum.";
-		close;
-	}
-	else if (checkquest(10018) == 0 || checkquest(10018) == 1) {
-		mes "[Poe]";
-		mes "......";
-		close;
-	}
-	if (nk_prince < 5) {
-		mes "[Prince]";
-		mes "Hi, how are you?";
-		mes "I don't think you deserve";
-		mes "to be here.";
-		mes "What about setting straight your genealogy first and then come?";
-		close;
-	}
-	else if (nk_prince > 4) {
-		mes "[Prince]";
-		mes "Come here.";
-		mes "You are the adventurer!";
-		mes "I love the challenge of hard trips too. Talkative old men and their adventures... You can't make me stop adventuring...";
-		next;
-		mes "[Prince]";
-		mes "My name is Poe.";
-		mes "I am the prince of the Richard family. Remember me, and be my supporter...";
-		next;
-		mes "[Poe]";
-		mes "Above all, I want to";
-		mes "test your ability as an adventurer. The ability test is not so serious. I just want to know how accurate your intuition is... That's all.";
-		next;
-		mes "[Poe]";
-		mes "I don't want to talk with";
-		mes "a person of low intuition.";
-		mes "Let me explain briefly,";
-		mes "and test your own intuition.";
-		next;
-		mes "[Poe]";
-		mes "My card has numbers from 1 to 13. You give me an answer about the card number I pick, whether it's a lesser or higher number.";
-		next;
-		mes "[Poe]";
-		mes "Ah, of course, 7 is the middle number. 7 means no success or no failure. The goal of this game is to give the right answer 2 times in a row. Let's begin!";
-		next;
-		while(.@wincount < 2) {
-			set .@card,rand(1,13);
-			mes "[Poe]";
-			mes "Yes, now choose one";
-			mes "from higher and lower.";
-			mes "Just one.";
-			next;
-			switch(select("Higher:Lower")) {
-			case 1:
-				mes "[Poe]";
-				mes "Hmm... higher?...";
-				mes "I now pick a card!";
-				next;
-				mes "[Poe]";
-				mes "It is..." + .@card + "!!";
-				next;
-				if (.@card > 7) {
-					set .@wincount,.@wincount+1;
-					mes "[Poe]";
-					mes "Whooah, you gave the right answer!";
-					if (.@wincount == 2) {
-						mes "You won 2 times in a row right?...";
-						next;
-						break;
-					}
-					else {
-						mes "But you just gave the correct answer 1 time, as of yet.";
-						next;
-					}
-				}
-				else if (.@card == 7) {
-					mes "[Poe]";
-					mes "This game is a draw.";
-					mes "Do better next time.";
-					next;
-				}
-				else {
-					mes "[Poe]";
-					mes "Wrong...";
-					mes "Visit Hollgrehenn and ask him to refine your luck.";
-					close;
-				}
-				break;
-			case 2:
-				mes "[Poe]";
-				mes "Eh, lower?...";
-				mes "Look at my card!";
-				next;
-				mes "[Poe]";
-				mes "It is..." + .@card + "!!";
-				next;
-				if (.@card < 7) {
-					set .@wincount,.@wincount+1;
-					mes "[Poe]";
-					mes "Whooah, you gave the right answer!";
-					if (.@wincount == 2) {
-						mes "You won 2 times in a row right?...";
-						next;
-						break;
-					}
-					else {
-						mes "But you just gave the correct answer 1 time, as of yet.";
-						next;
-					}
-				}
-				else if (.@card == 7) {
-					mes "[Poe]";
-					mes "This game is a draw.";
-					mes "Do better next time.";
-					next;
-				}
-				else {
-					mes "[Poe]";
-					mes "Wrong...";
-					mes "Visit Hollgrehenn and ask him to refine your luck.";
-					close;
-				}
-				break;
-			}
-		}
-		mes "[Poe]";
-		mes "Good, it's natural for me to disclose my words to such a high-intuitive person that likes pulling out all the cards.";
-		next;
-		mes "[Poe]";
-		mes "I could know about you with shown cards, very well, but let me share my hidden card this time! Ask me whatever you want to know.";
-		next;
-		mes "[Poe]";
-		mes "So... What do you want to know?!";
-		next;
-		while(1) {
-			switch(select("Your background story...:Your view of the nation...:Hobbies and interests...:I will come by later.")) {
-			case 1:
-				mes "[Poe]";
-				mes "My background...";
-				mes "Past stories.";
-				mes "I don't give it importance at all, so I can't remember it clearly...";
-				next;
-				mes "[Poe]";
-				mes "Can I just say I am a survivor from many matches and battles. That is quite fit for me. Hahahahaha!";
-				next;
-				mes "[Poe]";
-				mes "I've had to cope with many accidents and challenges... from which I have survived, and have been pursuing new things. Life means...";
-				next;
-				mes "[Poe]";
-				mes "Never let yourself down with given cards, and aim at deadly strokes!";
-				next;
-				mes "[Poe]";
-				mes "......";
-				next;
-				mes "[Poe]";
-				mes "Hey it's cool, huh?";
-				mes "We have same tastes, haven't we?";
-				set .@p_a,1;
-				next;
-				break;
-			case 2:
-				mes "[Poe]";
-				mes "My opinion is a nation should provide the minimum guard for people, to guarantee respective freedom..";
-				next;
-				mes "[Poe]";
-				mes "Men should challenge the stuff that they can be passionate about, so the free action of people should not be obstructed by their nation.";
-				next;
-				mes "[Poe]";
-				mes "If I were King, all the restrictions would be removed and liberal life would be allowed to everyone in an invulnerable range.";
-				next;
-				mes "[Poe]";
-				mes "Coming to think of my family, my people are so conservative and not flexible.";
-				next;
-				mes "[Poe]";
-				mes "They keep saying to not do this and that, that is dangerous and this is natural... The nagging has been endless all throughout my life...";
-				next;
-				mes "[Poe]";
-				mes "Ah, those last words";
-				mes "are off-the-record.";
-				mes "I don't want to be bothered by my family.";
-				set .@p_b,1;
-				next;
-				break;
-			case 3:
-				mes "[Poe]";
-				mes "Experiencing anything new!";
-				mes "I don't care what it is!";
-				next;
-				mes "[Poe]";
-				mes "If our time is the exploring age, I possibly am the captain of an exploring group! Unexplored, pathfinding, investigating... Those are my middle names. How about you??";
-				next;
-				mes "[Poe]";
-				mes "But many say, about my character, that I am addicted to gambling. I am just full of a challenging spirit and I like raking in money! I am a free-spirited normal man.";
-				set .@p_c,1;
-				next;
-				break;
-			case 4:
-				mes "[Poe]";
-				mes "Alright,";
-				mes "let's meet next at some more exciting and dangerous spot.";
-				if (.@p_a + .@p_b + .@p_c == 3) {
-					completequest 10007;
-				}
-				set .@prin1,checkquest(10005);
-				set .@prin2,checkquest(10006);
-				set .@prin3,checkquest(10007);
-				set .@prin4,checkquest(10008);
-				set .@prin5,checkquest(10009);
-				set .@prin6,checkquest(10010);
-				set .@prin7,checkquest(10011);
-				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-					setquest 10012;
-				}
-				close;
-			}
-		}
-	}
-}
-
-prt_castle,364,375,4	script	Prince#peter	987,{
-	if (nk_prince > 6) {
-		mes "[Peter]";
-		mes "Appraiser.";
-		mes "Have you met the little girl in Aldebaran?";
-		next;
-		switch(select("Yes, I saw her for you.:No, I don't want to.")) {
-		case 1:
-			if (checkquest(10014) == 0 || checkquest(10014) == 1) {
-				mes "[Peter]";
-				mes "I am glad that the girl liked it. Once I got cured, I wanted to go meet with her.";
-				next;
-				mes "[Peter]";
-				mes "Anyhow, thanks for your good work. I really feel sorry about bothering you with trifle things. This is my sense of gratitude. Don't feel so much burden and take this.";
-				completequest 10014;
-				getitem 644,1; //Gift_Box
-				close;
-			}
-			mes "[Peter]";
-			mes "Thinking about the little girl calms me. I still can't believe my eyes. My prince Ahrum who just passed away...~";
-			close;
-		case 2:
-			if (checkquest(10014) == 0 || checkquest(10014) == 1) {
-				mes "[Peter]";
-				mes "As you said.";
-				mes "I've heard that her life is like a flower when I lost it.";
-				mes "I will go see her on my own.";
-				next;
-				mes "[Peter]";
-				mes "I really feel sorry about bothering you with trifle things. Please take this.";
-				completequest 10014;
-				getitem 644,1; //Gift_Box
-				close;
-			}
-			mes "[Peter]";
-			mes "Never mind.";
-			mes "I still can't believe my eyes. My prince Ahrum who just passed away...~~";
-			close;
-		}
-	}
-	if (checkquest(10019) == 2) {
-		mes "[Peter]";
-		mes "Child... What the heck happened to you?...";
-		close;
-	}
-	else if (checkquest(10019) == 0 || checkquest(10019) == 1) {
-		mes "[Peter]";
-		mes "......";
-		close;
-	}
-	if (checkquest(10008) == 2) {
-		set .@quest, checkquest(10014);
-		if (.@quest == 2) {
-			mes "[Peter]";
-			mes "I really appreciate it.";
-			mes "You are so kind.";
-			close;
-		}
-		else if (.@quest == 0 || .@quest == 1) {
-			mes "[Peter]";
-			mes "I am glad that the girl liked it. Once I got cured, I wanted to go meet with her.";
-			next;
-			mes "[Peter]";
-			mes "Anyhow, thanks for your good work. I really feel sorry about bothering you with trifle things. This is my sense of gratitude. Don't feel so much burden and take this.";
-			completequest 10014;
-			getitem 644,1; //Gift_Box
-			close;
-		}
-		else {
-			mes "[Peter]";
-			mes "Do you have any more";
-			mes "business, appraiser?";
-			close;
-		}
-	}
-	else {
-		if (nk_prince < 4) {
-			mes "[Prince]";
-			mes "I think you are not allowed";
-			mes "to be here.";
-			close;
-		}
-		else if (nk_prince > 4) {
-			mes "[Prince]";
-			mes "Hello,";
-			mes "I am Peter, from the family of Heine. I am glad to meet you.";
-			next;
-			mes "[Peter]";
-			mes "Now, where shall we start?";
-			next;
-			while(1) {
-				switch(select("Your background story...:Your view of the nation...:Hobbies and interests...:I will come by later.")) {
-				case 1:
-					mes "[Peter]";
-					mes "My family was not that influential. My childhood was not that abundant; I had to seek jobs and make money from part-time jobs.";
-					next;
-					mes "[Peter]";
-					mes "But it helped me to check people's lives; the full particulars. That's my good side.";
-					next;
-					mes "[Peter]";
-					mes "Was it enough for your question?";
-					next;
-					break;
-				case 2:
-					mes "[Peter]";
-					mes "I guess the important thing is if people fulfill themselves in their field, then only supplements of support is needed from the nation's side.";
-					mes "What I want to say, in short, is the nation does not reign. People need to keep peace with people.";
-					next;
-					mes "[Peter]";
-					mes "Accordingly, I will take benefits away from the difference of classes. It is not an equality issue, but for the ascension of national power.";
-					next;
-					break;
-				case 3:
-					mes "[Peter]";
-					mes "I only like reading books as a hobby. I think men should go forward; they need to have a striving attitude.";
-					next;
-					break;
-				case 4:
-					mes "[Peter]";
-					mes "Ah, is that it?";
-					next;
-					mes "[Peter]";
-					mes "Then I have a favor to ask of you... Can you listen to my story?";
-					next;
-					mes "[Peter]";
-					mes "Originally, I didn't like growing a beard... but I had one opportunity to change... My thoughts recently are that someone has offered me the chance.";
-					next;
-					mes "[Peter]";
-					mes "It is because of an unknown girl's letter...";
-					next;
-					mes "[Peter]";
-					mes "What she told me in the letter was that my image was too sharp, and if I grew my beard, the contour of my face would be quite hidden; and it would look far better.";
-					next;
-					mes "[Peter]";
-					mes "I want to repay her.";
-					mes "Because her words helped me much. Nothing special, but maybe a small bunch of flowers.";
-					next;
-					mes "[Peter]";
-					mes "Would you take these flowers and give thanks to that girl somewhere in Al de Baran?";
-					completequest 10008;
-					next;
-					switch(select("Okay, no problem.:Please ask it of another.")) {
-					case 1:
-						mes "[Peter]";
-						mes "Yeah, thank you very much.";
-						mes "Please take care.";
-						getitem 744,1; //Bunch_Of_Flowers
-						setquest 10013;
-						set .@prin1,checkquest(10005);
-						set .@prin2,checkquest(10006);
-						set .@prin3,checkquest(10007);
-						set .@prin4,checkquest(10008);
-						set .@prin5,checkquest(10009);
-						set .@prin6,checkquest(10010);
-						set .@prin7,checkquest(10011);
-						if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-							setquest 10012;
-						}
-						close;
-					case 2:
-						mes "[Peter]";
-						mes "I understand you...";
-						mes "I know you have your";
-						mes "own business.";
-						setquest 10013;
-						set .@prin1,checkquest(10005);
-						set .@prin2,checkquest(10006);
-						set .@prin3,checkquest(10007);
-						set .@prin4,checkquest(10008);
-						set .@prin5,checkquest(10009);
-						set .@prin6,checkquest(10010);
-						set .@prin7,checkquest(10011);
-						if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-							setquest 10012;
-						}
-						close;
-					}
-				}
-			}
-		}
-	}
-}
-
-aldebaran,132,184,3	script	Girl#prince	96,{
-	if (checkquest(10013) == 0 || checkquest(10013) == 1) {
-		if (countitem(744) > 0) {
-			mes "[Girl]";
-			mes "Wooah, Uncle Peter sent these flowers";
-			mes "for me?";
-			mes "Hmmm~ They smell really good.";
-			next;
-			mes "[Girl]";
-			mes "Hehe~ You must be a friend of Peter's.";
-			mes "When you have a chance to meet him";
-			mes "later, please give my regards to uncle Peter.";
-			mes "Tell him that I loved the flowers so so much...";
-			mes "Okay, see you later.";
-			next;
-			mes "[Girl]";
-			mes "I will go home early and";
-			mes "Put these flowers in a vase.";
-			mes "Lalala~";
-			delitem 744,1; //Bunch_Of_Flowers
-			changequest 10013,10014;
-			close;
-		}
-		else {
-			mes "[Girl]";
-			mes "Hey you, have you heard the story of Daddy-Long-Legs? ... ...";
-			close;
-		}
-	}
-	else {
-		mes "[Girl]";
-		mes "Hey you, have you heard the story of Daddy-Long-Legs? ... ...";
-		close;
-	}
-}
-
-prt_castle,314,373,4	script	Prince#eisen	983,{
-	if (nkprince_eisen > 2) {
-		if (nkprince_eisen == 3) {
-			mes "[Ahrum]";
-			mes "How is Ernst ...?";
-			mes "He is so serious about everything. He doesn't make trouble or have outbursts... He can be kind of weird.";
-			next;
-			mes "[Ahrum]";
-			mes "We were close friends. Unlike me, he is kind and compassionate; a distinct official of public affairs. When he has to be strict, he turns strict with everyone.";
-			set nkprince_eisen,4;
-			close;
-		}
-		else if (nkprince_eisen == 4) {
-			mes "[Ahrum]";
-			mes "I am Eigen Ahrum,";
-			mes "I will be the light of Rune Midgarts.";
-			close;
-		}
-		else if (nkprince_eisen == 5) {
-			mes "[Ahrum]";
-			mes "Whoever be the king, let's make Rune Midgarts... the best country in the world, by helping each other.";
-			next;
-			mes "[Ernst]";
-			mes "We can make it.";
-			mes "No, we shall make it. For Brother and I together, we shall make it.";
-			next;
-			mes "[Ahrum]";
-			mes "But... If I am to reign, or help you; and if I am corrupted... you kill me... by your hand.";
-			next;
-			mes "[Ahrum]";
-			mes "In the opposite case, I will kill you too, you understand? So don't ever stray, and do not ever forget your determination.";
-			next;
-			mes "[Ernst]";
-			mes "Brother, you think about hell. It will never happen, so... Don't talk that way.";
-			next;
-			mes "[Ahrum]";
-			mes "It is an assumption.";
-			mes "Don't take it too seriously.";
-			next;
-			mes "[Ernst]";
-			mes "Alright, alright. Don't";
-			mes "take it the wrong way.";
-			mes "I have been acting for Brother and Kingdom, and I will be the same ever after.";
-			next;
-			emotion ET_SURPRISE;
-			mes "[Ahrum]";
-			mes "Ah, the appraiser has come.";
-			mes "How could you appear so suddenly? Ern and I were in the middle of conversation.";
-			next;
-			mes "[Ernst]";
-			mes "What's wrong, brother? We were not talking about anything bad. We were just making our resolution firm.";
-			next;
-			mes "[Ahrum]";
-			mes "You came here in good timing. We've just decided to kill the other... if one of us is corrupt.";
-			next;
-			mes "[Ernst]";
-			mes "Brother?!";
-			next;
-			mes "[Ahrum]";
-			mes "By all means, be the witness of this agreement. You cannot say no. Because it is a very good thing, in some respects, for your work, isn't it?";
-			next;
-			mes "[Ernst]";
-			mes "Br...Brother. You are way too suppressive. Our appraiser must have his own position and opinion.";
-			next;
-			mes "[Ahrum]";
-			mes "You still have a weak personality. I am not forcing something so difficult on him! Who cares? I take silence as a positive answer! My bid is successful! And our promise is formed too!";
-			next;
-			mes "[Ernst]";
-			mes "Haah...haha... Appraiser, I deeply apologize for offending you. Sorry, but there is no possibility of fulfilling this promise. So, just don't take this situation seriously... You know... When pigs fly... ~";
-			next;
-			mes "[Ernst]";
-			mes "Now, let me return to my room. Keep up the good work, appraiser.";
-			donpcevent "Prince#another_ern::OnDisable";
-			set nkprince_eisen,6;
-			close;
-		}
-		else if (nkprince_eisen == 6) {
-			mes "[Ahrum]";
-			mes "I heard that one person";
-			mes "from my family is coming today. But I haven't found him yet.";
-			next;
-			mes "[Ahrum]";
-			mes "I worry about your words...";
-			mes "What do you want to say this time?...";
-			mes "Have you seen him, appraiser?";
-			set nkprince_eisen,7;
-			changequest 10012,10016;
-			close;
-		}
-		else if (nkprince_eisen == 7) {
-			mes "[Ahrum]";
-			mes "Aahh...boring, boring.";
-			mes "I am in real penance right now!";
-			close;
-		}
-		else if (nkprince_eisen == 8) {
-			mes "[Ahrum]";
-			mes "You come here so often.";
-			mes "I know you are a faithful person, engaged in a very important issue for the kingdom, but you come here more than is necessary...";
-			next;
-			switch(select("I have something...:Is that so? Then, see you later.")) {
-			case 1:
-				mes "[" + strcharinfo(0) + "]";
-				mes "I saw a person from the Walter family.";
-				next;
-				mes "[Ahrum]";
-				mes "Oh! really?";
-				mes "why didn't he come to me?";
-				next;
-				mes "[" + strcharinfo(0) + "]";
-				mes "-I tell Ahrum the story.-";
-				next;
-				mes "[Ahrum]";
-				mes "......";
-				next;
-				mes "[Ahrum]";
-				mes "What! Are you 100% sure about your story? Ahhhh...";
-				next;
-				mes "[Ahrum]";
-				mes "......";
-				next;
-				mes "[Ahrum]";
-				mes "I am very sorry, but I want to be left alone. Leave me alone, right now!";
-				set nkprince_eisen,9;
-				close2;
-				warp "prt_castle",318,273;
-				end;
-			case 2:
-				mes "[Ahrum]";
-				mes "Okay, good riddance.";
-				close;
-			}
-		}
-		else if ((nkprince_eisen == 9) || (nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
-			mes "[Ahrum]";
-			mes "I am very sorry, but I want to be left alone. Leave me alone, right now!";
-			close2;
-			warp "prt_castle",318,273;
-			end;
-		}
-		else if (nkprince_eisen == 13) {
-			mes "[Ahrum]";
-			mes "I told you that I don't want to be king, and I don't have any intention to change my mind!";
-			next;
-			mes "[Ernst]";
-			mes "Brother! I don't know why you are suffering so much! Are you this weak a creature?!";
-			next;
-			mes "[Ahrum]";
-			mes "Suffering? Me?..Aaahhh... It looks so...? Yeahh... Yes, it does. Stressful...Huhuhu...Hahaha!!";
-			next;
-			mes "[Ernst]";
-			mes "Brother, Ahrum...?";
-			next;
-			mes "[Ahrum]";
-			mes "...Is it only me that gets away... Anyhow, I am a disqualified person ... huhuhu. But, I've made a decision.";
-			next;
-			mes "[Ahrum]";
-			mes "Ernst.";
-			next;
-			mes "[Ernst]";
-			mes "Yes?... Yes?";
-			next;
-			mes "[Ahrum]";
-			mes "Take this.";
-			next;
-			mes "- swish. - ";
-			next;
-			mes "- Ahrum casually throws a Bazerald to Ernst.-";
-			next;
-			mes "[Ernst]";
-			mes "Eh?... What's this about?... A Bazerald of Walter family?...Why?";
-			next;
-			mes "[Ahrum]";
-			mes "Now this is perfect timing. Even our witness is here! Ern, you remember our promise clearly, right?";
-			next;
-			mes "[Ernst]";
-			mes "What? Promise? Witness?...Ahh... Re-really...";
-			next;
-			mes "[Ahrum]";
-			mes "Yes, really. Now is the time.";
-			next;
-			mes "[Ernst]";
-			mes "Nonsense! Do you think I can do that to you?!";
-			next;
-			mes "[Ahrum]";
-			mes "Idiot! Being King should be followed by decisive action. I have no chances to be King. Corruption, and living like that, is worse than being killed by you...";
-			next;
-			mes "[Ernst]";
-			mes "B-but, you can live as you are! As if nothing happened. You are just needed to return to the way you were before. Brother, let me help you. Tell me everything you hide...";
-			next;
-			mes "[Ahrum]";
-			mes "This is so moronic! Can you say that you are kingly?! Are you showing me sympathy now? You should be a man of sense! If not, you are not eligible as a king candidate!";
-			next;
-			mes "[Ernst]";
-			mes "Bu...but!";
-			next;
-			mes "[Ahrum]";
-			mes "Talking back and forth is of no use! I cannot help it. If you keep insisting instead of trying to be a man of sense, then such a person should not be a king.";
-			next;
-			mes "[Ahrum]";
-			mes "Ghh?! Brother?!";
-			next;
-			mes "(dagger thrusting sound)";
-			specialeffect EF_HIT2;
-			set nkprince_eisen,14;
-			donpcevent "Prince#another_ern::OnDisable";
-			donpcevent "Prince#another_ern1::OnEnable";
-			close;
-		}
-		else if (nkprince_eisen == 14) {
-			mes "[Ernst]";
-			mes "Bbb... Brother?... You... told me ";
-			mes "you would kill me... You just wanted to be killed";
-			mes "by me?... Bbb...brother?...";
-			next;
-			mes "[Ahrum]";
-			mes "Huhu... Not at all. I just wanted to kill you... That's it... Good job, Ern... This is legal self-defense, killing a villain... right?";
-			next;
-			mes "[Ernst]";
-			mes "B..Brother... even now it is not too late! If you go to a medic, you can be restored!";
-			next;
-			mes "[Ahrum]";
-			mes "It's too late... Once your vital organs are stabbed... I wonder how could I stay alive... or even how I could come back to life... I don't need to live.";
-			next;
-			mes "[Ernst]";
-			mes "B..Brother....How...how could you?!";
-			next;
-			mes "[Ahrum]";
-			mes "Goodbye, my brother... Be King, and change this nation. You... You can make it...guk...";
-			next;
-			mes "[Ernst]";
-			mes "...Brother...Brother... Why... Why... How can your face look so satisfied? How...? Brother...";
-			next;
-			mes "[Ahrum]";
-			mes "Huhu...You don't need to know that. By the way, you kept your promise... You should be king... But if you are lost, and stray, I will come kill you at any time... from hell!!";
-			next;
-			mes "[Ernst]";
-			mes "I...I don't know! I don't know what's going on!";
-			next;
-			mes "[Ahrum]";
-			mes "You don't need to... What you have to know about is that there was a sacrifice from me. To make my death meaningful, you should be a good king. That's my conviction... That's it..guk..! Don't lose my words... gukkuk.";
-			next;
-			mes "[Ernst]";
-			mes "Idiot... Moron...";
-			next;
-			mes "[Ahrum]";
-			mes "Ahh... Appraiser, do you know what you have to do? Be mindful of your words. About what you saw, what you heard... You must not tell all of your experience to the inspector.";
-			next;
-			mes "[Ahrum]";
-			mes "Ern killed a villain here who bullied around.. I had no chance... He showed decisive action, and that will deserve him the right to be king...";
-			next;
-			mes "[Ahrum]";
-			mes "If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?";
-			next;
-			switch(select("... Okay I will follow your will...:......")) {
-			case 1:
-				mes "[" + strcharinfo(0) + "]";
-				mes "... Okay, I will follow your will. Don't worry...";
-				next;
-				break;
-			case 2:
-				mes "[" + strcharinfo(0) + "]";
-				mes "......";
-				next;
-				mes "[Ahrum]";
-				mes "Ignorance... is positive... It means... My bid... is successful...";
-				next;
-				break;
-			}
-			mes "[Ahrum]";
-			mes "Now... I can die... with peace... Thank... you very... much, both... of you.";
-			next;
-			mes "[Ernst]";
-			mes "Brother...";
-			next;
-			mes "[Ahrum]";
-			mes "Then, perpetually... Bye... Sorry ... now I can't go fishing.";
-			next;
-			mes "[Ernst]";
-			mes "B...bro?";
-			next;
-			mes "[Ahrum]";
-			mes "......";
-			next;
-			mes "[Ernst]";
-			mes "B... bro, brother!";
-			next;
-			mes "[Ahrum]";
-			mes "......";
-			next;
-			mes "[Ernst]";
-			mes "Brotherrrrrrrr!!!";
-			next;
-			set nkprince_eisen,15;
-			set nk_prince,7;
-			donpcevent "Prince#another_ern1::OnDisable";
-			changequest 10024,10025;
-			close2;
-			warp "prt_castle",318,273;
-			end;
-		}
-	}
-	if (nk_prince < 5) {
-		mes "[Prince]";
-		mes "You are not allowed to be here.";
-		mes "Hmmm...";
-		next;
-		mes "[Prince]";
-		mes "Get out of my way.";
-		mes "I don't want to confront you.";
-		close;
-	}
-	else if (nk_prince > 4) {
-		mes "[Prince]";
-		mes "Are you the new adventurer appraiser? I am Eigen Ahrum from the Walter family. You can call me Prince Ahrum, for short, at your convenience.";
-		next;
-		mes "[Ahrum]";
-		mes "I hope you ask me short and simple questions. Long questions don't always mean special and good answers.";
-		next;
-		while(1) {
-			mes "-What shall I ask...-";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "I'd like to ask about...";
-			next;
-			switch(select("Your background story...:Your view of the nation...:Your hobbies or interests...:Never mind, I'll come by later.")) {
-			case 1:
-				mes "[Ahrum]";
-				mes "You aren't just trying to dissolve your curiosity about the king's family, are you?";
-				next;
-				mes "[Ahrum]";
-				mes "From my childhood, I liked to experience many things and learn them. As a result, I should bear interference from my family. To them, I was not a decent noble family member.";
-				next;
-				mes "[Ahrum]";
-				mes "But I am not sensitive to that, and I think a good king should neglect those trifles.";
-				next;
-				mes "[Ahrum]";
-				mes "Others can say that my behavior makes them embarrased, but if something ends well, they are all satisfied in the end. Am I wrong?";
-				next;
-				mes "[Ahrum]";
-				mes "Although I've skipped some lessons in life, I can back up missing lessons easily. Who cares who can swear to me as King! This is how I am.";
-				next;
-				mes "[Ahrum]";
-				mes "Ern nags me a lot";
-				mes "about this, but I don't make an issue in any case. Such a fastidious jerk.";
-				next;
-				mes "[Ahrum]";
-				mes "Like I said, I've been growing up with his scolds. I feel his words were harsher than others who shut their mouth after I accomplish something.";
-				next;
-				mes "[Ahrum]";
-				mes "He always says that results cannot be everything that matter.";
-				next;
-				mes "[Ahrum]";
-				mes "Before everything else, it is luck and glory for me, that I could be born in Walter, a distinguished noble family.";
-				next;
-				mes "[Ahrum]";
-				mes "Of course, my abilities";
-				mes "are underestimated because of my background. In other respects, I feel sad about it.";
-				next;
-				mes "[Ahrum]";
-				mes "In the coming age, people will talk about me as Eigen Ahrum from the Walter family, not Eigen Ahrum of Walter.";
-				next;
-				mes "[Ahrum]";
-				mes "The Walter family itself has high distinction and fame, but I will make the name shine further, and others will be proud of me.";
-				next;
-				break;
-			case 2:
-				mes "[Ahrum]";
-				mes "The nation I organize";
-				mes "will not be harmonious";
-				mes "with pastel color of fairy";
-				mes "tales.";
-				next;
-				mes "[Ahrum]";
-				mes "For sure, losers and depressed people have their own faults, like lesser challenges for their lives.";
-				next;
-				mes "[Ahrum]";
-				mes "I have some belief in the benefit of unlimited competition. Frankly, I don't like this king election system from noble families.";
-				next;
-				mes "[Ahrum]";
-				mes "Although all these";
-				mes "status system fade away";
-				mes "I will be the king, with my sole capability and aptitude! Hahaha.";
-				emotion ET_SMILE;
-				next;
-				mes "[Ahrum]";
-				mes "I know quite well about";
-				mes "other king cadidates, personally.";
-				mes "But I can't find one distinguished person who can lead this kingdom well.";
-				next;
-				mes "[Ahrum]";
-				mes "I'm not saying they aren't outstanding, but considering the current situation of Rune-Midgarts, they don't seem to be astonishing leaders.";
-				next;
-				mes "[Ahrum]";
-				mes "For this reason, I assure you that no candidate is fit for the position among them. If I have to pick someone who can be a match for me, I can say that one is Ernst.";
-				next;
-				mes "[Ahrum]";
-				mes "He has a soft personality and thinks too long about things, but I admit many merits to him. I can say he is a fairly high-standard candidate.";
-				next;
-				mes "[Ahrum]";
-				mes "........";
-				next;
-				mes "[Ahrum]";
-				mes "Hmm, I was too talkative.";
-				mes "I apologize for my redundant words, hahaha.";
-				next;
-				break;
-			case 3:
-				mes "[Ahrum]";
-				mes "I enjoy activities.";
-				mes "I can't stand passive games,";
-				mes "like card and board games";
-				mes "I think those games are";
-				mes "quite fit for the scholar type people.";
-				next;
-				mes "[Ahrum]";
-				mes "My brother Ern can stick to something for a long time, like books or study.";
-				next;
-				mes "[Ahrum]";
-				mes "Once I become king,";
-				mes "I won't handle documents";
-				mes "while sitting all day.";
-				next;
-				mes "[Ahrum]";
-				mes "It's very hard for me to do that.";
-				next;
-				break;
-			case 4:
-				mes "[Ahrum]";
-				mes "Okay...";
-				mes "as you please.";
-				if (nkprince_eisen == 2) {
-					set nkprince_eisen,3;
-				}
-				else {
-					set nkprince_eisen,1;
-				}
-				completequest 10005;
-				set .@prin1,checkquest(10005);
-				set .@prin2,checkquest(10006);
-				set .@prin3,checkquest(10007);
-				set .@prin4,checkquest(10008);
-				set .@prin5,checkquest(10009);
-				set .@prin6,checkquest(10010);
-				set .@prin7,checkquest(10011);
-				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-					setquest 10012;
-				}
-				close;
-			}
-		}
-	}
-}
-
-prt_castle,368,312,4	script	Prince#ern	985,{
-	if (checkquest(10024) == 2) {
-		mes "[Ernst]";
-		mes "...brother, if you want...";
-		mes "...Ah, please leave here.";
-		mes "I don't want to see anyone.";
-		close;
-	}
-	else if (checkquest(10024) == 0 || checkquest(10024) == 1) {
-		mes "[Ernst]";
-		mes "...Brother Ahrum...";
-		close;
-	}
-	if (nkprince_eisen > 2) {
-		if (nkprince_eisen == 3) {
-			mes "[Ernst]";
-			mes "Did you meet my brother Ahrum? He is a great man. Really.";
-			next;
-			mes "He tries to deal with things too tough that sometimes makes things into a problem. But even at those moments, he is willing to listen to my words; so we seldom seem to be in serious trouble.";
-			next;
-			mes "[Ernst]";
-			mes "That can only be that way, because we two have been so close to each other.";
-			next;
-			mes "[Ernst]";
-			mes "Brother Ahrum has been blaming me for that, I think unnecessarily too long. But he listens to me and acts as I advise.";
-			next;
-			mes "[Ernst]";
-			mes "Isn't he a great person?";
-			mes "He is a trustworthy and instructive person.";
-			close;
-		}
-		else if (nkprince_eisen == 5) {
-			mes "[Ernst]";
-			mes "Ah, now I am going to have a plan with Bro Ahrum";
-			mes "If you don't have a important issue with me, I shall go. ";
-			close;
-		}
-		else if (nkprince_eisen == 6) {
-			mes "[Ernst]";
-			mes "Ah, I heard person from Walter came in here. Have you seen him?";
-			next;
-			mes "[Ernst]";
-			mes "It seems that even brother Ahrum hasn't met with him. Hmm...";
-			set nkprince_eisen,7;
-			changequest 10012,10016;
-			close;
-		}
-		else if (nkprince_eisen == 9) {
-			mes "[Ernst]";
-			mes "Welcome, judge.";
-			mes "We meet quite open";
-			mes "Why don't you slow down your work?";
-			next;
-			mes "[Ernst]";
-			mes "Hmm...I don't have any more words to say. Moreover, Ahrum seems to be strange these days. I worry about that. I hope it's not a big deal.";
-			set nkprince_eisen,10;
-			changequest 10017,10004;
-			close;
-		}
-		else if ((nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
-			mes "[Ernst]";
-			mes "Ahrum is getting weird.";
-			mes "It's not a normal change, but a real corruption. I feel uneasy about it.";
-			next;
-			mes "[Ernst]";
-			mes "This isn't happening.";
-			mes "I believe Ahrum will be restored as he was. However, I don't feel good.";
-			close;
-		}
-		else if (nkprince_eisen == 15) {
-			mes "[Ernst]";
-			mes "Ah...";
-			mes "Brother Ahrum...";
-			mes "Eigen Ahrum...yes, sir.";
-			next;
-			mes "[Ernst]";
-			mes "......";
-			next;
-			mes "[Ernst]";
-			mes "Please leave here. I don't want to see anyone.";
-			close;
-		}
-		else {
-			mes "[Ernst]";
-			mes "Welcome, appraiser.";
-			mes "Thank you for your hard work. It's hard to judge others, isn't it?";
-			close;
-		}
-	}
-	if (nk_prince < 5) {
-		mes "[Prince]";
-		mes "You are not a adventurer judge";
-		mes "I think you shouldn't be here.";
-		close;
-	}
-	else if (nk_prince > 4) {
-		mes "[Prince]";
-		mes "Hi";
-		mes "you are the judege.";
-		mes "I am Ernst, prince of Geoborg.";
-		next;
-		mes "[Ernst]";
-		mes "I think it's hard work that judges people's talents. I will do my best to help you.";
-		next;
-		mes "[Ernst]";
-		mes "Well, thank you.";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "(He seems to have a polite personality as a candidate for King)";
-		next;
-		while(1) {
-			mes "-Well, what questions.-";
-			next;
-			switch(select("backgroud first.:I want to know your spirit of nationalism.: Your habbit and tastes.:I will be back.")) {
-			case 1:
-				mes "[Ernst]";
-				mes "Since I was young, I have grown up with a royal education. I haven't quarreled with others seriously, but I was not very polite either.";
-				next;
-				mes "[Ernst]";
-				mes "People thought that I was timid, but that's because I didn't want to be shun from others.";
-				next;
-				mes "[Ernst]";
-				mes "Of course, we got an exception... Eigen.";
-				next;
-				mes "[Ernst]";
-				mes "Eigen Ahrum can be the exception. He is not polite, but he makes sense from others with exact confirmation.";
-				next;
-				mes "[Ernst]";
-				mes "I think that is a great ability, and I should learn it. But, it is not only about results, but also a courtesy matter. We should keep something that we have to do.";
-				next;
-				mes "[Ernst]";
-				mes "For me, the process was more important than the result. Now, I take them as equal virtue. I didn't take results significantly. Ahrum taught me, who used to consider the result as nothing.";
-				break;
-			case 2:
-				mes "[Ernst]";
-				mes "The spirit of nationalism when I become King?";
-				next;
-				mes "[Ernst]";
-				mes "You might believe the power of a king is unlimited, but as one man, it has a limitation.";
-				next;
-				mes "[Ernst]";
-				mes "Both normal public and prominent people take charge of the society that gathers that wisdom is easier than doing things on your own.";
-				next;
-				mes "[Ernst]";
-				mes "Ahrum will help me to supplement any shortcomings. Not only Ahrum, but all ministers and cabinet members; and the public is my master.";
-				next;
-				mes "[Ernst]";
-				mes "It is my fortune that I got many masters beside Ahrum. It is also good for my country.";
-				next;
-				break;
-			case 3:
-				mes "[Ernst]";
-				mes "II don't have special habits. I am just willing to learn and read books.";
-				next;
-				mes "[Ernst]";
-				mes "And I also love to talk with Ahrum. Ahrum is clever enough to generate new ideas that I can follow.";
-				next;
-				mes "[Ernst]";
-				mes "Well, to tell the truth, going fishing with Ahrum is better. Although, we are too busy to go fishing because of all these kingdom issues.";
-				next;
-				mes "[Ernst]";
-				mes "We promised to go fishing after the taking of the throne... Let's see...";
-				next;
-				mes "[Ernst]";
-				mes "Hmm...is that enough?";
-				next;
-				break;
-			case 4:
-				mes "[Ernst]";
-				mes "Yes, then, see you later.";
-				if (nkprince_eisen == 1) {
-					set nkprince_eisen,3;
-				}
-				else {
-					set nkprince_eisen,2;
-				}
-				completequest 10006;
-				set .@prin1,checkquest(10005);
-				set .@prin2,checkquest(10006);
-				set .@prin3,checkquest(10007);
-				set .@prin4,checkquest(10008);
-				set .@prin5,checkquest(10009);
-				set .@prin6,checkquest(10010);
-				set .@prin7,checkquest(10011);
-				if ((.@prin1 + .@prin2 + .@prin3 + .@prin4 + .@prin5 + .@prin6 + .@prin7) == 14) {
-					setquest 10012;
-				}
-				close;
-			}
-		}
-	}
-}
-
-prt_castle,163,319,0	script	#twonoble	-1,3,3,{
-OnTouch:
-	if (nkprince_eisen == 7) {
-		donpcevent "Young Noble#valter::OnEnable";
-		donpcevent "Aged Noble#rihart::OnEnable";
-		mes "[Aged Noble]";
-		mes "You don't have to worry.";
-		mes "Once my Eigen Ahrum is chosen to be king, the Richard family will be a second magnate.";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "Hehe, Ahrum is the most favorable and influential candidate already. You would be so amazing were you to fulfill this.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "Although Ahrum is a strong candidate, the prince of Gaebolg has a high reputation for his virtues too. For sure, it is better to confirm things.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "So, are you on the project of Prince Ernst's poisoning?";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "Of course. Even an autopsy will not find it. ... You don't have to worry.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "Ahrum will be elected, once the termination of prince Ernst happens, and then...";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "both family will lead this country, huhuhu.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "You must know what Walter and Gaebolg did. Both families stayed on top of the country.";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "The weakest one of the seven families, Gaebolg Family, took power by uniting with Schmidt and Walter.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "Yes, that's why the union of Walter and Gaebolg is perfect. Moreover, Ahrum and Ernst... It's obviously the second coming of Schmidt and Heinrich.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "That's why the Walter family and the Gaebolg Family can't exist together. Their co-existence will bring destruction as it has done in the past.";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "Thanks for that. It's good to go. All the people who know of the past will deny to be in league with Ahrum or Ernst.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "Anyway, we got a little bit more time. Keep the secret thoroughly; not to tell anyone.";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "Yes. For the glory of Rune-Midgarts.";
-		next;
-		mes "[A man of Walter Family]";
-		mes "All the glory for Rune-Midgarts...";
-		mes "Hmm?";
-		next;
-		emotion ET_SURPRISE;
-		mes "[A man of Walter Family]";
-		mes "Quiet... Someone comes.";
-		mes "Ok... take care.";
-		next;
-		mes "[A man of Riehart Family]";
-		mes "Never mind...";
-		donpcevent "YoungNoble#valter::OnDisable";
-		donpcevent "Aged Noble#rihart::OnDisable";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "(Walter is the name of Ahrum.";
-		mes "Richard is the name of Poe.)";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "(Is this the conspiracy of two families? What the hell..)";
-		changequest 10016,10017;
-		set nkprince_eisen,8;
-		close;
-	}
-}
-
-prt_castle,156,325,4	script	Young Noble#valter	86,{
-	mes "[Young Noble Walter]";
-	mes "Step aside.";
-	mes "How dare you talk to him.";
-	close;
-
-OnInit:
-	disablenpc "Young Noble#valter";
-	end;
-
-OnEnable:
-	enablenpc "Young Noble#valter";
-	end;
-
-OnDisable:
-	disablenpc "Young Noble#valter";
-	end;
-}
-
-prt_castle,157,323,3	script	Aged Noble#rihart	880,{
-	mes "[Aged Noble Richard]";
-	mes "Hmm-hmm.";
-	mes "What an indecorous person!";
-	close;
-
-OnInit:
-	disablenpc "Aged Noble#rihart";
-	end;
-
-OnEnable:
-	enablenpc "Aged Noble#rihart";
-	end;
-
-OnDisable:
-	disablenpc "Aged Noble#rihart";
-	end;
-}
-
-prt_castle,314,371,0	script	Prince#another_ern	985,{
-	if (nkprince_eisen == 13) {
-		mes "[Ahrum]";
-		mes "I told you that I don't want to be king, and I don't have any intention to change my mind!";
-		next;
-		mes "[Ernst]";
-		mes "Brother! I don't know why you are suffering so much! Are you this weak a creature?!";
-		next;
-		mes "[Ahrum]";
-		mes "Suffering? Me?..Aaahhh... It looks so...? Yeahh... Yes, it does. Stressful...Huhuhu...Hahaha!!";
-		next;
-		mes "[Ernst]";
-		mes "Brother, Ahrum...?";
-		next;
-		mes "[Ahrum]";
-		mes "...Is it only me that gets away... Anyhow, I am a disqualified person ... huhuhu. But, I've made a decision.";
-		next;
-		mes "[Ahrum]";
-		mes "Ernst.";
-		next;
-		mes "[Ernst]";
-		mes "Yes?... Yes?";
-		next;
-		mes "[Ahrum]";
-		mes "Take this.";
-		next;
-		mes "- swish. - ";
-		next;
-		mes "- Ahrum casually throws a Bazerald to Ernst.-";
-		next;
-		mes "[Ernst]";
-		mes "Eh?... What's this about?... A Bazerald of Walter family?...Why?";
-		next;
-		mes "[Ahrum]";
-		mes "Now this is perfect timing. Even our witness is here! Ern, you remember our promise clearly, right?";
-		next;
-		mes "[Ernst]";
-		mes "What? Promise? Witness?...Ahh... Re-really...";
-		next;
-		mes "[Ahrum]";
-		mes "Yes, really. Now is the time.";
-		next;
-		mes "[Ernst]";
-		mes "Nonsense! Do you think I can do that to you?!";
-		next;
-		mes "[Ahrum]";
-		mes "Idiot! Being King should be followed by decisive action. I have no chances to be King. Corruption, and living like that, is worse than being killed by you...";
-		next;
-		mes "[Ernst]";
-		mes "B-but, you can live as you are! As if nothing happened. You are just needed to return to the way you were before. Brother, let me help you. Tell me everything you hide...";
-		next;
-		mes "[Ahrum]";
-		mes "This is so moronic! Can you say that you are kingly?! Are you showing me sympathy now? You should be a man of sense! If not, you are not eligible as a king candidate!";
-		next;
-		mes "[Ernst]";
-		mes "Bu...but!";
-		next;
-		mes "[Ahrum]";
-		mes "Talking back and forth is of no use! I cannot help it. If you keep insisting instead of trying to be a man of sense, then such a person should not be a king.";
-		next;
-		mes "[Ahrum]";
-		mes "Ghh?! Brother?!";
-		next;
-		mes "(dagger thrusting sound)";
-		specialeffect EF_HIT2;
-		set nkprince_eisen,14;
-		donpcevent "Prince#another_ern::OnDisable";
-		donpcevent "Prince#another_ern1::OnEnable";
-		close;
-	}
-	if (nkprince_eisen == 5) {
-		mes "[Ahrum]";
-		mes "Whoever be the king,";
-		mes "let's make Rune Midgarts...";
-		mes "the best country in the world, by helping each other.";
-		next;
-		mes "[Ernst]";
-		mes "We can make it.";
-		mes "No, we shall make it. For Brother and I together, we shall make it.";
-		next;
-		mes "[Ahrum]";
-		mes "But... If I am to reign, or help you; and if I am corrupted... you kill me... by your hand.";
-		next;
-		mes "[Ahrum]";
-		mes "In the opposite case, I will kill you too, you understand? So don't ever stray, and do not ever forget your determination.";
-		next;
-		mes "[Ernst]";
-		mes "Brother, you think about hell.";
-		mes "It will never happen, so...";
-		mes "Don't talk that way.";
-		next;
-		mes "[Ahrum]";
-		mes "It is an assumption.";
-		mes "Don't take it too seriously.";
-		next;
-		mes "[Ernst]";
-		mes "Alright, alright. Don't";
-		mes "take it the wrong way.";
-		mes "I have been acting for Brother and Kingdom, and I will be the same ever after.";
-		next;
-		emotion ET_SURPRISE;
-		mes "[Ahrum]";
-		mes "Ah, the appraiser has come.";
-		mes "How could you appear so suddenly? Ern and I were in the middle of conversation.";
-		next;
-		mes "[Ernst]";
-		mes "What's wrong, brother? We were not talking about anything bad. We were just making our resolution firm.";
-		next;
-		mes "[Ahrum]";
-		mes "You came here in good timing.";
-		mes "We've just decided to kill";
-		mes "the other... if one of us is";
-		mes "corrupt.";
-		next;
-		mes "[Ernst]";
-		mes "Brother?!";
-		next;
-		mes "[Ahrum]";
-		mes "By all means, be the witness of this agreement. You cannot say no. Because it is a very good thing, in some respects, for your work, isn't it?";
-		next;
-		mes "[Ernst]";
-		mes "Br...Brother. You are way too suppressive. Our appraiser must have his own position and opinion.";
-		next;
-		mes "[Ahrum]";
-		mes "You still have a weak personality. I am not forcing something so difficult on him! Who cares? I take silence as a positive answer! My bid is successful! And our promise is formed too!";
-		next;
-		mes "[Ernst]";
-		mes "Haah...haha... Appraiser, I deeply apologize for offending you. Sorry, but there is no possibility of fulfilling this promise. So, just don't take this situation seriously... You know... When pigs fly... ~";
-		next;
-		mes "[Ernst]";
-		mes "Now, let me return to my room. Keep up the good work, appraiser.";
-		donpcevent "Prince#another_ern::OnDisable";
-		set nkprince_eisen,6;
-		close;
-	}
-
-OnInit:
-	disablenpc "Prince#another_ern";
-	end;
-
-OnEnable:
-	enablenpc "Prince#another_ern";
-	end;
-
-OnDisable:
-	disablenpc "Prince#another_ern";
-	end;
-}
-
-prt_castle,314,372,0	script	Prince#another_ern1	985,{
-	if (nkprince_eisen == 14) {
-		mes "[Ernst]";
-		mes "Bbb... Brother?... You... told me you would kill me... You just wanted to be killed by me??... Bbb...brother?...";
-		next;
-		mes "[Ahrum]";
-		mes "Huhu... Not at all. I just wanted to kill you... That's it... Good job, Ern... This is legal, self-defense; killing a villain... right?";
-		next;
-		mes "[Ernst]";
-		mes "B..Brother... even now it is not too late! If you go to a medic, you can be restored!";
-		next;
-		mes "[Ahrum]";
-		mes "It's too late... Once your vital organs are stabbed... I wonder how could I stay alive... or even how I could come back to life... I don't need to live.";
-		next;
-		mes "[Ernst]";
-		mes "B..Brother....How...how could you?!";
-		next;
-		mes "[Ahrum]";
-		mes "Goodbye, my brother... Be King, and change this nation. You... You can make it...guk...";
-		next;
-		mes "[Ernst]";
-		mes "...Brother...Brother... Why... Why... How can your face look so satisfied? How...? Brother...";
-		next;
-		mes "[Ahrum]";
-		mes "Huhu...You don't need to know that. By the way, you kept your promise... You should be king... But if you are lost, and stray, I will come kill you at any time... from hell!!";
-		next;
-		mes "[Ernst]";
-		mes "I...I don't know! I don't know what's going on!";
-		next;
-		mes "[Ahrum]";
-		mes "You don't need to... What you have to know about is that there was a sacrifice from me. To make my death meaningful, you should be a good king. That's my conviction... That's it..guk..! Don't lose my words... gukkuk.";
-		next;
-		mes "[Ernst]";
-		mes "Idiot... Moron...";
-		next;
-		mes "[Ahrum]";
-		mes "Ahh... Appraiser, do you know what you have to do? Be mindful of your words. About what you saw, what you heard... You must not tell all of your experience to the inspector.";
-		next;
-		mes "[Ahrum]";
-		mes "Ern killed a villain here who bullied around.. I had no chance... He showed decisive action, and that will deserve him the right to be king...";
-		next;
-		mes "[Ahrum]";
-		mes "If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?";
-		next;
-		switch(select("... Okay I will follow your will...:......")) {
-		case 1:
-			mes "[" + strcharinfo(0) + "]";
-			mes "... Okay, I will follow your will. Don't worry...";
-			next;
-			break;
-		case 2:
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			next;
-			mes "[Ahrum]";
-			mes "Ignorance... is positive... It means... My bid... is successful...";
-			next;
-			break;
-		}
-		mes "[Ahrum]";
-		mes "Now... I can die... with peace... Thank... you very... much, both... of you.";
-		next;
-		mes "[Ernst]";
-		mes "Brother...";
-		next;
-		mes "[Ahrum]";
-		mes "Then, perpetually... Bye... Sorry ... now I can't go fishing.";
-		next;
-		mes "[Ernst]";
-		mes "B...bro?";
-		next;
-		mes "[Ahrum]";
-		mes "......";
-		next;
-		mes "[Ernst]";
-		mes "B... bro, brother!";
-		next;
-		mes "[Ahrum]";
-		mes "......";
-		next;
-		mes "[Ernst]";
-		mes "Brotherrrrrrrr!!!";
-		next;
-		set nkprince_eisen,15;
-		set nk_prince,7;
-		donpcevent "Prince#another_ern1::OnDisable";
-		changequest 10024,10025;
-		close2;
-		warp "prt_castle",318,273;
-		end;
-	}
-
-OnInit:
-	disablenpc "Prince#another_ern1";
-	end;
-
-OnEnable:
-	enablenpc "Prince#another_ern1";
-	end;
-
-OnDisable:
-	disablenpc "Prince#another_ern1";
-	end;
-}
-
-prt_castle,272,372,1	script	Prince#eisen1	983,{
-	mes "[Ahrum]";
-	mes "Moron. You'll never be a king. All throughout your life... Don't you know it? Such a junk addict!!";
-	next;
-	mes "[Erich]";
-	mes "...I am not trying to be, but swear words don't make me feel very good. What's wrong with you all of a sudden?";
-	next;
-	mes "[Ahrum]";
-	mes "I am just fed up with you. Even a jerk like you is a candidate for king? I feel sick and nauseated about this king succession.";
-	next;
-	mes "[Erich]";
-	mes "Yeah, it's not that wrong. But I am the representative of the Nerious family. I cannot stand for your insults.";
-	next;
-	mes "[Erich]";
-	mes "Is your family aware of your crazy actions? You are ruining your name, and of your family.";
-	next;
-	mes "[Ahrum]";
-	mes "...! Yes... I give a crap. No... My existence too! Kukuku...hahahahaha!";
-	next;
-	mes "[Ahrum]";
-	mes "Yes, you and I are both disqualified! Hahahaha!! The freaking addict reveals the truth! Yes, hahahahahaha!!";
-	next;
-	mes "[Erich]";
-	mes "... Crazy jerk. Beat it. I don't want to talk with you anymore.";
-	next;
-	mes "[Ahrum]";
-	mes "Yes, I am going now. Family shame?!! Hahahaha... What is a family!! Kkkkkk!! Very interesting!";
-	next;
-	mes "-Ahrum, seems to be out of his mind, as he approaches the door-";
-	next;
-	mes "[Erich]";
-	mes "...Nuts.";
-	completequest 10020;
-	set .@er1,checkquest(10018);
-	set .@er2,checkquest(10019);
-	set .@er3,checkquest(10020);
-	set .@er4,checkquest(10021);
-	set .@er5,checkquest(10022);
-	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
-		setquest 10023;
-		set nkprince_eisen,11;
-	}
-	donpcevent "Prince#eisen1::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen1";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen1";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen1";
-	end;
-}
-
-prt_castle,336,202,7	script	Prince#eisen2	983,{
-	mes "[Urugen]";
-	mes "What did you say? Ahrum?";
-	mes "Hey! What did you just say to me? Ahrum?!";
-	next;
-	mes "[Ahrum]";
-	mes "I can say it a zillion times! Urugen, you are not beautiful at all! Not even a bit! In fact, your look is very ugly and obscene!";
-	next;
-	mes "[Urugen]";
-	mes "That's very rude! How could a dirty germ like you talk like that to me!";
-	mes "you like germ can talk like that";
-	mes "to me!";
-	next;
-	mes "[Ahrum]";
-	mes "Dirty? Yes, I am. I am dirty. But it is not a problem of mine. Everything is dirty! I cannot stand it anymore!";
-	next;
-	mes "[Urugen]";
-	mes "Hm! I can agree with your words, the world is obscene, but you cannot bring me down to that level! I cannot forgive your words! Never, ever!";
-	next;
-	mes "[Ahrum]";
-	mes "What if you can't forgive me? What shall you do? That's good. Are you gonna kill me? Will you kill me? Kill me? Haha? You are being called beautiful only when calling yourself!";
-	next;
-	mes "[Urugen]";
-	mes "Akk! I cannot stand this! Such low behavior and words ...? You are no prince. I don't want to face you anymore! Get out of here!";
-	next;
-	mes "[Ahrum]";
-	mes "You don't have enough quality. You don't have belief to eliminate evil. By will, you are rubbish. I don't want to be with rubbish either! Stay in your world forever and never come out of it!";
-	next;
-	mes "-Ahrum strides out of the room, grumbling...-";
-	next;
-	mes "[Urugen]";
-	mes "...You are so low. I misjudged you. You are not of the few that have an artistic view. I totally saw you the wrong way.";
-	completequest 10021;
-	set .@er1,checkquest(10018);
-	set .@er2,checkquest(10019);
-	set .@er3,checkquest(10020);
-	set .@er4,checkquest(10021);
-	set .@er5,checkquest(10022);
-	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
-		setquest 10023;
-		set nkprince_eisen,11;
-	}
-	donpcevent "Prince#eisen2::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen2";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen2";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen2";
-	end;
-}
-
-prt_castle,286,201,7	script	Prince#eisen3	983,{
-	mes "[Ahrum]";
-	mes "Military maniac! Jerk! Do you think power can solve everything? In all situations, do you think people can live peacefully?!";
-	next;
-	mes "[Helmut]";
-	mes "You are fully violent now.";
-	mes "By your theory, you are also not eligible for the king's quality!";
-	next;
-	mes "[Ahrum]";
-	mes "Yes, you talk well. Bah!";
-	mes "I don't have quality!!";
-	mes "But you are worse than me! King candidate?? You are just a war monger!";
-	next;
-	mes "[Helmut]";
-	mes "You have come here to offend me? Do you think you can beat me, Eigen Ahrum?!";
-	next;
-	mes "[Ahrum]";
-	mes "Fight? That's so rubbish. I don't care for it. I just came here to shoot what I want to say to you. I don't even feel like fighting with you. I am leaving!";
-	next;
-	mes "[Helmut]";
-	mes "Hold on, coward! Are you fleeing now?! Such a coward! Let's finish our battle!";
-	next;
-	mes "[Ahrum]";
-	mes "Coward.. that's a very nice word. Yes, I am. I am leaving. Ta-tah! You are worse than a bad coward...like me! Bye-bye war monger!";
-	next;
-	mes "-Ahrum grins with a vague feeling towards an irritated Helmut, and leaves the room.-";
-	next;
-	mes "[Helmut]";
-	mes "That is... such a villain!!!";
-	completequest 10022;
-	set .@er1,checkquest(10018);
-	set .@er2,checkquest(10019);
-	set .@er3,checkquest(10020);
-	set .@er4,checkquest(10021);
-	set .@er5,checkquest(10022);
-	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
-		setquest 10023;
-		set nkprince_eisen,11;
-	}
-	donpcevent "Prince#eisen3::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen3";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen3";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen3";
-	end;
-}
-
-prt_castle,388,205,6	script	Prince#eisen4	983,{
-	mes "[Ahrum]";
-	mes "You always care about gambling. But, why don't you care about your surrondings first, eh? Young master of Richard?";
-	next;
-	mes "[Poe]";
-	mes "Why are you teasing me, now? At least I feel I have dice with higher numbers than you... You don't think so?";
-	next;
-	mes "[Ahrum]";
-	mes "Posh! You keep talking about dice. Listen. You can feel that I roll lower numbers of dice than you... But you have already failed before the roll of your dice! Do you know that?!";
-	next;
-	mes "[Poe]";
-	mes "What are you talking about? I can't get you. I've lost to whom? I don't know why you are talking like that.";
-	next;
-	mes "[Ahrum]";
-	mes "You can't know it! So what?! If you know, what can you do? You have too much pride over everything. Do you think you can foster a deeply rotten tree, to become a healthy tree?!";
-	next;
-	mes "[Poe]";
-	mes "If you want to say something, you have to say it clearly. Are you announcing a loss and defeat? Is my luck so dreadful, Eigen Ahrum?";
-	next;
-	mes "[Ahrum]";
-	mes "Yes, I announce my defeat. But it is not to you. You are a loser like me. Before getting into important business, you are ruined by an environmental element.";
-	next;
-	mes "[Poe]";
-	mes "...What the hell are you talking about? Environment? I totally don't get you. It is never clear.";
-	next;
-	mes "[Ahrum]";
-	mes "You'd better not understand it. If you know this, you will lose your health. Don't care for it... for the rest of your life!!";
-	next;
-	mes "[Poe]";
-	mes "Ho- hold! Look, Ahrum!";
-	mes "Hold on! Eigen Ahrum! Hey!";
-	next;
-	mes "-Ahrum totally neglects the";
-	mes "voice calling him and leaves the room, with a lonely countenance.-";
-	next;
-	mes "[Poe]";
-	mes "What... What. It's not fun.";
-	mes "I totally couldn't get him.";
-	completequest 10018;
-	set .@er1,checkquest(10018);
-	set .@er2,checkquest(10019);
-	set .@er3,checkquest(10020);
-	set .@er4,checkquest(10021);
-	set .@er5,checkquest(10022);
-	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
-		setquest 10023;
-		set nkprince_eisen,11;
-	}
-	donpcevent "Prince#eisen4::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen4";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen4";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen4";
-	end;
-}
-
-prt_castle,364,372,1	script	Prince#eisen5	983,{
-	mes "[Ahrum]";
-	mes "Peter, what will you do if your work doesn't mean anything?";
-	next;
-	mes "[Peter]";
-	mes "...I don't know what you are talking about, but meaningless things do not exist. I don't think you know about that.";
-	next;
-	mes "[Ahrum]";
-	mes "Buzzzz. You are wrong. There is a thing that is meaningless itself. Clearly speaking, the action becomes meaningless without knowing its meaning...";
-	next;
-	mes "[Peter]";
-	mes "Are you trying to explain... clearly? It's getting more complicated. What exactly do you want to say? Let me get it directly.";
-	next;
-	mes "[Ahrum]";
-	mes "...Whatever I do or do not do, I am just being manipulated by some thing. To make it worse, I hurt others as I am in that some thing only.";
-	next;
-	mes "[Peter]";
-	mes "......";
-	next;
-	mes "[Ahrum]";
-	mes "The worst thing is, I feel I just become timid with knowing and understanding the some thing itself..";
-	next;
-	mes "[Ahrum]";
-	mes "But it is the same with you. If you really want to express gratitude towards the girl, you should have visited her in person. You couldn't do it, could you?";
-	next;
-	mes "[Peter]";
-	mes "...Ahrum, what's wrong with you? You are not the Ahrum I know. What's made you like this?";
-	next;
-	mes "[Ahrum]";
-	mes "Hmph..The some thing. Nothing. It's meaningless. Reality, that's all. It was nice talking to you. Bye-bye, and live like what you used to live like, ever after.";
-	next;
-	mes "[Peter]";
-	mes "......Eigen Ahrum. You...";
-	next;
-	mes "-Ahrum shows a gloomy facial expression and leaves the room.-";
-	next;
-	mes "[Peter]";
-	mes "......";
-	completequest 10019;
-	set .@er1,checkquest(10018);
-	set .@er2,checkquest(10019);
-	set .@er3,checkquest(10020);
-	set .@er4,checkquest(10021);
-	set .@er5,checkquest(10022);
-	if ((.@er1 + .@er2 + .@er3 + .@er4 + .@er5) == 10) {
-		setquest 10023;
-		set nkprince_eisen,11;
-	}
-	donpcevent "Prince#eisen5::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen5";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen5";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen5";
-	end;
-}
-
-prt_castle,368,310,1	script	Prince#eisen6	983,{
-	mes "[Ernst]";
-	mes "Bro, tell me again. You just said something?";
-	next;
-	mes "[Ahrum]";
-	mes "Ok. Let me tell you. This Rune-Midgarts is rubbish. You and I struggle in the dump of trash, and we are all same with it, even if it cannot be recycled.";
-	next;
-	mes "[Ernst]";
-	mes "Brother, what's wrong? Are you insane?";
-	next;
-	mes "[Ahrum]";
-	mes "Insane? I am fully sane....J.m...I am just fed up with this disgusting reality, my lovely brother.";
-	next;
-	mes "[Ernst]";
-	mes "Reality? What reality? What did you perceive? You are not like as you are. I totally can't help you!";
-	next;
-	mes "[Ahrum]";
-	mes "I am as I usually am, Ernst. Just, reality is dirty, and I realized that I am trapped in the crap. I can't get out of here.";
-	next;
-	mes "[Ernst]";
-	mes "Liar! You always told me that you have possibilities in your book! You always behaved proudly!";
-	next;
-	mes "[Ahrum]";
-	mes "Shut up.";
-	next;
-	mes "[Ernst]";
-	mes "It's dirty and not good. That's why we should correct it. We already know about this situation, but why do you act like this!!";
-	next;
-	mes "[Ahrum]";
-	mes "...I told you, don't make noise!";
-	next;
-	mes "[Ernst]";
-	mes "No. Corruption is mutually agreed, and you brought me here, and because of your presence, I can depend on you!";
-	next;
-	mes "[Ahrum]";
-	mes "Shut up Shut up!!!!!!!!!!!!";
-	next;
-	mes "[Ernst]";
-	mes "......!";
-	next;
-	mes "[Ahrum]";
-	mes "Meaningless actions cannot be welcomed! Being manipulated by dirt is disgusting. I was ignorant, I felt that I acted by my will, but now I realize I was manipulated!";
-	next;
-	mes "[Ahrum]";
-	mes "King?! What's that for?! That's nothing! Even if we make a new world, nothing is changed!! We are like in a play. A picture is someone's intention... only drawn!! Right?!";
-	next;
-	mes "[Ernst]";
-	mes "What are you talking about? I totally can't understand! Are you saying you are not in the status quo? Yes? What the heck are you talking about!";
-	next;
-	mes "[Ahrum]";
-	mes "Shut up! Without knowing anything, you don't know when you can be killed. You don't get me yet.... ah...! You need to not know this!";
-	next;
-	mes "[Ernst]";
-	mes "Br...Brother, will you keep insisting on this? Our relationship is this short?";
-	next;
-	mes "[Ahrum]";
-	mes "Shut up! If you are not contented, you can kill me as we promised! You... me... me...!! I don't wanna talk about it any more, I am going back to my room!";
-	next;
-	mes "[Ernst]";
-	mes "Ah. Hold on a moment Brother! Ahrum!";
-	next;
-	mes "[Ahrum]";
-	mes "I... don't know! King... you!";
-	next;
-	mes "-Ahrum blushes";
-	mes "and leaves the room. He seems to be utterly fatigued.-";
-	next;
-	mes "[Ernst]";
-	mes "Ahrum... Ahrum...";
-	changequest 10023,10024;
-	set nkprince_eisen,13;
-	donpcevent "Prince#eisen6::OnDisable";
-	close;
-
-OnInit:
-	disablenpc "Prince#eisen6";
-	end;
-
-OnEnable:
-	enablenpc "Prince#eisen6";
-	end;
-
-OnDisable:
-	disablenpc "Prince#eisen6";
-	end;
-}
-
-prt_castle,318,276,0	script	#eisen	45,1,1,{
-OnTouch_:
-	if ((nkprince_eisen == 4) || (nkprince_eisen == 5)) {
-		donpcevent "Prince#another_ern::OnEnable";
-		set nkprince_eisen,5;
-		warp "prt_castle",318,368;
-	}
-	else if ((nkprince_eisen == 9) || (nkprince_eisen == 10) || (nkprince_eisen == 11) || (nkprince_eisen == 12)) {
-		set .@armkoe,rand(1,4);
-		if (.@armkoe == 1) {
-			mes "-You can hear Ahrum's voice";
-			mes "before going into his room";
-			mes "It's coming from inside.-";
-			next;
-			mes "[Ahrum]";
-			mes "I cannot have that qualification. I was raised in such a dirty place. I was so ignorant!";
-			next;
-			mes "[Ahrum]";
-			mes "What's the capacity of a king? And what is clean politics...? Ahhhhhhhhhhh!!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			close2;
-		}
-		else if (.@armkoe == 2) {
-			mes "-You can hear Ahrum's voice";
-			mes "before going into his room";
-			mes "It's coming from inside.-";
-			next;
-			mes "[Ahrum]";
-			mes "Proud family?... Famous...";
-			mes "Birth?... King's family? ...What's all that about?";
-			next;
-			mes "[Ahrum]";
-			mes "To brother Ernst, from my family. It's sin. And I am a part of the sin. As a part of the family. Family's sin. Equal to my sin.";
-			next;
-			mes "[Ahrum]";
-			mes "I cannot... cover it anymore... Ern... I hope even you...";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			close2;
-		}
-		else if (.@armkoe == 3) {
-			mes "-You can hear Ahrum's voice";
-			mes "before going into his room";
-			mes "It's coming from inside.-";
-			next;
-			mes "[Ahrum]";
-			mes "In the end, I am just being used... I make the most of my exertions and become the lead. That's all a part of the scenario...";
-			next;
-			mes "[Ahrum]";
-			mes "Damn it! Damn...!!";
-			mes "I cannot accept it. Never. Never!";
-			next;
-			mes "[Ahrum]";
-			mes "My ancestor ^FF0000Schmidt^000000... What shall you do with this situation? No...were you just used like me... by others?";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			close2;
-		}
-		else if (.@armkoe == 4) {
-			mes "- I could hear Ahrum's voice ";
-			mes "before getting into his room";
-			mes "It was coming from inside.-";
-			next;
-			mes "[Ahrum]";
-			mes "No, it's no good... No... In this phase, I will be the king. I shouldn't be the king... Ern... You should not forget the meaning of a real king.";
-			next;
-			mes "[Ahrum]";
-			mes "For the real king's appearance... I am going tonight.... to darkness for you. ...Ahhhhhhhh!!!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "......";
-			close2;
-		}
-		warp "prt_castle",318,368;
-	}
-	else if (nkprince_eisen == 13) {
-		donpcevent "Prince#another_ern::OnEnable";
-		warp "prt_castle",318,368;
-	}
-	else if (nkprince_eisen == 15) {
-		warp "prt_castle",318,309;
-	}
-	else {
-		warp "prt_castle",318,368;
-	}
-	end;
-}
-
-prt_castle,336,276,0	script	#ern	45,1,1,{
-OnTouch_:
-	if (checkquest(10023) == 0 || checkquest(10023) == 1) {
-		donpcevent "Prince#eisen6::OnEnable";
-	}
-	warp "prt_castle",368,308;
-	end;
-}
-
-prt_castle,300,276,0	script	#erich	45,1,1,{
-OnTouch_:
-	if (checkquest(10020) == 0 || checkquest(10020) == 1) {
-		donpcevent "Prince#eisen1::OnEnable";
-	}
-	warp "prt_castle",274,368;
-	end;
-}
-
-prt_castle,330,271,0	script	#helmut	45,1,1,{
-OnTouch_:
-	if (checkquest(10022) == 0 || checkquest(10022) == 1) {
-		donpcevent "Prince#eisen3::OnEnable";
-	}
-	warp "prt_castle",290,208;
-	end;
-}
-
-prt_castle,348,271,0	script	#poe	45,1,1,{
-OnTouch_:
-	if (checkquest(10018) == 0 || checkquest(10018) == 1) {
-		donpcevent "Prince#eisen4::OnEnable";
-	}
-	warp "prt_castle",390,208;
-	end;
-}
-
-prt_castle,354,276,0	script	#peter	45,1,1,{
-OnTouch_:
-	if (checkquest(10019) == 0 || checkquest(10019) == 1) {
-		donpcevent "Prince#eisen5::OnEnable";
-	}
-	warp "prt_castle",366,368;
-	end;
-}
-
-prt_castle,310,271,0	script	#urgen	45,1,1,{
-OnTouch_:
-	if (checkquest(10021) == 0 || checkquest(10021) == 1) {
-		donpcevent "Prince#eisen2::OnEnable";
-	}
-	warp "prt_castle",340,208;
-	end;
-}
-
-prt_castle,317,364,0	warp	#eisen2	1,1,prt_castle,318,273
-prt_castle,317,304,0	warp	eisen22	1,1,prt_castle,318,273
-prt_castle,367,304,0	warp	#ern2	1,1,prt_castle,336,273
-prt_castle,273,364,0	warp	#erich2	1,1,prt_castle,300,273
-prt_castle,289,213,0	warp	#helmut2	1,1,prt_castle,330,274
-prt_castle,389,213,0	warp	#poe2	1,1,prt_castle,348,274
-prt_castle,365,364,0	warp	#peter2	1,1,prt_castle,354,273
-prt_castle,340,213,0	warp	#urgen2	1,1,prt_castle,310,274
-prt_castle,163,312,0	warp	#class2	1,1,prt_castle,221,343
-prt_castle,221,347,0	warp	#class	1,1,prt_castle,163,316
-prt_castle,225,338,0	warp	#room11	1,1,prt_castle,275,283
-prt_castle,273,284,0	warp	#room21	1,1,prt_castle,221,338
-prt_castle,225,318,0	warp	#room12	1,1,prt_castle,276,263
-prt_castle,273,264,0	warp	#room22	1,1,prt_castle,221,318
-prt_castle,221,308,0	warp	#princeout	1,1,prt_castle,176,167
-
-prt_castle,176,170,5	script	Guard#princein	105,{
-	if (nk_prince > 4) {
-		mes "[Guard of a strange place]";
-		mes "You can go to the room where princes gather, through the hidden door. For security reasons, it is totally guarded and hidden.";
-		next;
-		mes "[Guard of a strange place]";
-		mes "Let me open the door.";
-		close2;
-		warp "prt_castle",220,312;
-		end;
-	}
-	else {
-		mes "[Guard of a strange place]";
-		mes "I just came here to rest. For location information, you can ask it of others.";
-		close;
-	}
-}
-
-prt_castle,121,168,0	script	#arm	111,4,4,{
-OnTouch:
-	if (nk_prince == 8) {
-		mes "[" + strcharinfo(0) + "]";
-		mes "..............";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "Milk is all spilt.";
-		mes "Just forget about it.";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "Who is going to have the throne instead of him?";
-		next;
-		set nk_prince,9;
-		mes "[" + strcharinfo(0) + "]";
-		mes "Oh no...";
-		close;
-	}
-}
-
-prt_castle,316,313,0	script	#arm1	111,3,3,{
-OnTouch:
-	if (nkprince_eisen > 14) {
-		mes "[" + strcharinfo(0) + "]";
-		mes "..............";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "What thoughts did he have, and how did he decide to become King in this room?";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "What situation...";
-		mes "pulled him back to an irreparable place?";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "I can't ask him anymore, and there are no clues left. Just what's left is...";
-		next;
-		mes "[Ahrum]";
-		mes "~~If you react wrongfully to this incident, my death will be worthless...kuk... Do you understand?~~";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "..............";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "...Keeping silent for him.";
-		mes "Taking the burden that he left... all throughout my life.";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "...Rest in peace.";
-		close;
-	}
-	end;
-}

+ 2 - 183
npc/quests/seals/brisingamen_seal.txt

@@ -19,6 +19,7 @@
 //= 1.5 Corrected serverwide announcement. [L0ne_W0lf]
 //= 1.6 Updated RE/Pre-RE EXP. [Euphy]
 //= 1.7 Renewal script update. [Euphy]
+//= 1.8 Renewal script update for ep16.1 [Capuche]
 //============================================================
 
 prt_fild08,175,374,3	script	Bard#brising	51,{
@@ -2082,190 +2083,8 @@ prt_church,113,103,1	script	Praying Man	798,{
 	}
 }
 
-prt_castle,80,52,0	script	Personnel Record#book1	111,{
-	if ($God2 < $@god_check1) {
-		mes "[Librarian]";
-		mes "What are you doing?";
-		mes "Don't touch anything!";
-		close;
-	}
-	if ($God3 >= $@god_check2) {
-		mes "[Librarian]";
-		mes "What are you doing?";
-		mes "Don't touch anything!";
-		close;
-	}
-	if (god_brising == 26) {
-		mes "[" + strcharinfo(0) + "]";
-		mes "I should read this";
-		mes "from the point where";
-		mes "I left off...";
-		next;
-		mes "["+ strcharinfo(0) +"]";
-		mes "Huh...?";
-		mes "What's this mark";
-		mes "here at the bottom?";
-		mes "Some kind of secret?";
-		next;
-		mes "["+ strcharinfo(0) +"]";
-		mes "No wonder the librarian";
-		mes "seemed to hesitate before";
-		mes "saying anything. Huh.";
-		mes "Now let's see...";
-		next;
-		set .@bookrand,rand(1,3);
-		if (.@bookrand == 1) {
-			mes "[Personnel Record]";
-			mes "^663300Lowen, of the 2nd squad, returned to her detachment 3 days after the incident. A trial was held, and she was judged guilty of fleeing when ordered to fight.^000000";
-			next;
-			mes "[Personnel Record]";
-			mes "^663300Despite the severity of this offense, she was only discharged from the Crusaders and the holy power granted to her was forcibly removed...^000000";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "She was forced to leave the Crusaders?! That's ridiculous!";
-			next;
-			mes "["+ strcharinfo(0) +"]";
-			mes "Did they want to sentence her to death or what? That's almost too cruel. She must have been humiliated...";
-			next;
-			mes "[Personnel Record]";
-			mes "^6633002 years later after the incident, an expedition team found rusty armor shards, a broken sword";
-			mes "and some effects belonging to";
-			mes "Lowen Ellenen.^000000";
-			next;
-			mes "[Personnel Record]";
-			mes "^663300However, this information";
-			mes "is highly classified. Officially, Lowen Ellenen died during the mission.^000000";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "They thought she brought";
-			mes "disgrace to the Crusaders?";
-			mes "This sounds pretty messy.";
-			mes "Should I try to meet her again?";
-			next;
-			mes "[Librarian]";
-			mes "^666666*Yawn...*^000000";
-			mes "What the...?";
-			mes "who are you!";
-			mes "Get the hell";
-			mes "out of here!";
-			set god_brising,30;
-			close2;
-			warp "prt_castle",94,37;
-			end;
-		}
-		else {
-			mes "[Librarian]";
-			mes "^666666*Yawn...*^000000";
-			mes "What the...?";
-			mes "who are you!";
-			mes "Get the hell";
-			mes "out of here!";
-			close2;
-			warp "prt_castle",94,37;
-			end;
-		}
-	}
-	else if (god_brising == 25) {
-		mes "^3355FFYou took the book from the shelf while the librarian was dozing. According to the Crusader Personnel Records, there's only one recruit that was named Lowen Ellenen.";
-		next;
-		mes "[" + strcharinfo(0) + "]";
-		mes "Lowen Ellenen...";
-		mes "Member of the";
-		mes "2nd squad...";
-		mes "Age 22...";
-		mes "Female...";
-		next;
-		mes "["+ strcharinfo(0) +"]";
-		mes "Became a fugitive?";
-		mes "This isn't the same";
-		mes "information the";
-		mes "Librarian told me!";
-		next;
-		set .@bookrand,rand(1,3);
-		if (.@bookrand == 1) {
-			mes "[" + strcharinfo(0) + "]";
-			mes "I should read this";
-			mes "from the point where";
-			mes "I left off...";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "Huh...?";
-			mes "What's this mark";
-			mes "here at the bottom?";
-			mes "Some kind of secret?";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "No wonder the librarian";
-			mes "seemed to hesitate before";
-			mes "saying anything. Huh.";
-			mes "Now let's see...";
-			next;
-			mes "[Personnel Record]";
-			mes "^663300Lowen, of the 2nd squad, returned to her detachment 3 days after the incident. A trial was held, and she was judged guilty of fleeing when ordered to fight.^000000";
-			next;
-			mes "[Personnel Record]";
-			mes "^663300Despite the severity of this offense, she was only discharged from the Crusaders and the holy power granted to her was forcibly removed...^000000";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "She was forced to leave the Crusaders?! That's ridiculous!";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "Did they want to sentence her to death or what? That's almost too cruel. She must have been humiliated...";
-			next;
-			mes "[Personnel Record]";
-			mes "^6633002 years later after the incident, an expedition team found rusty armor shards, a broken sword";
-			mes "and some effects belonging to";
-			mes "Lowen Ellenen.^000000";
-			next;
-			mes "[Personnel Record]";
-			mes "^663300However, this information";
-			mes "is highly classified. Officially, Lowen Ellenen died during the mission.^000000";
-			next;
-			mes "[" + strcharinfo(0) + "]";
-			mes "They thought she brought";
-			mes "disgrace to the Crusaders?";
-			mes "This sounds pretty messy.";
-			mes "Should I try to meet her again?";
-			next;
-			mes "[Librarian]";
-			mes "^666666*Yawn...*^000000";
-			mes "What the...?";
-			mes "who are you!";
-			mes "Get the hell";
-			mes "out of here!";
-			set god_brising,30;
-			close2;
-			warp "prt_castle",94,37;
-			end;
-		}
-		else {
-			mes "[Librarian]";
-			mes "^666666*Yawn...*^000000";
-			mes "What the...?";
-			mes "who are you!";
-			mes "Get the hell";
-			mes "out of here!";
-			set god_brising,26;
-			next;
-			mes "["+ strcharinfo(0) +"]";
-			mes "(Nuts...!";
-			mes "I didn't get";
-			mes "to finish reading!)";
-			close2;
-			warp "prt_castle",94,37;
-			end;
-		}
-	}
-	else  {
-		mes "[Librarian]";
-		mes "What are you doing here?";
-		mes "Don't touch anything!";
-		close;
-	}
-}
-
 //-----------librarian----------------------------------------------------------
-prt_castle,84,51,5	script	Librarian#2	105,{
+-	script	Librarian#2_	-1,{
 	if ($God2 < $@god_check1) {
 		mes "[Librarian]";
 		mes "What are you doing here?";

+ 3 - 2
npc/quests/seals/megingard_seal.txt

@@ -22,9 +22,10 @@
 //= 2.0 Updated RE/Pre-RE EXP. [Euphy]
 //= 2.1 Fixed minor bug with the Librarian Jekan
 //= 2.2 Renewal script update. [Euphy]
+//= 2.3 Renewal script update for ep16.1 [Capuche]
 //============================================================
 
-prt_castle,44,151,0	script	Rebarev Doug	56,{
+-	script	Rebarev Doug_	-1,{
 	if (checkweight(1301,3) == 0) {
 		mes "- You are carrying too many items! -";
 		close;
@@ -538,7 +539,7 @@ prt_castle,44,151,0	script	Rebarev Doug	56,{
 	end;
 }
 
-prt_castle,48,164,0	script	Crusader#God	734,{
+-	script	Crusader#God_	-1,{
 	if ($God1 >= $@god_check1 && $God2 < $@god_check2) {
 		if (god_eremes > 22 && god_eremes < 25) {
 			mes "[Max Von Shedough]";

+ 16 - 2
npc/quests/seals/mjolnir_seal.txt

@@ -1964,7 +1964,10 @@ mjolnir_01,35,136,7	script	Dwarf Blacksmith#west	826,{
 					mes "me to do with this?";
 					close;
 				}
-				if (getequiprefinerycnt(.@part) >= 10) {
+				.@equip_id = getequipid(.@part);
+				.@equip_refine = getequiprefinerycnt(.@part);
+				setarray .@card[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
+				if (.@equip_refine >= 10) {
 					mes "[Vestri]";
 					mes "Oh, this is excellent! This piece here has been perfectly refined! But this isn't what I want. I can't do any work on this at all.";
 					close;
@@ -2037,6 +2040,10 @@ mjolnir_01,35,136,7	script	Dwarf Blacksmith#west	826,{
 					mes "Hurry up and get one.";
 					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 (getequippercentrefinery(.@part) > rand(100)) {
 					mes "^3355FF*Clang Clang!*^000000";
 					successrefitem .@part;
@@ -2181,7 +2188,10 @@ mjolnir_01,35,136,7	script	Dwarf Blacksmith#west	826,{
 					mes "me to do with this?";
 					close;
 				}
-				if (getequiprefinerycnt(.@part) >= 10) {
+				.@equip_id = getequipid(.@part);
+				.@equip_refine = getequiprefinerycnt(.@part);
+				setarray .@card[0], getequipcardid(.@part,0), getequipcardid(.@part,1), getequipcardid(.@part,2), getequipcardid(.@part,3);
+				if (.@equip_refine >= 10) {
 					mes "[Vestri]";
 					mes "Oh, this is excellent! This piece here has been perfectly refined! But this isn't what I want. I can't do any work on this at all.";
 					close;
@@ -2248,6 +2258,10 @@ mjolnir_01,35,136,7	script	Dwarf Blacksmith#west	826,{
 					mes "Hurry up and get one.";
 					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 (getequippercentrefinery(.@part) > rand(100)) {
 					mes "^3355FF*Clang Clang!*^000000";
 					successrefitem .@part;

+ 2 - 1
npc/quests/the_sign_quest.txt

@@ -27,6 +27,7 @@
 //= 3.7 Massive cleaning/optimization (more can still be done). [Euphy]
 //= 3.8 Corrected an invalid map name. [Joseph]
 //= 3.9 Updated RE/Pre-RE EXP. [Euphy]
+//= 4.0 Renewal script update for ep16.1 [Capuche]
 //============================================================ 
 
 // The Sign (Part 1)
@@ -6000,7 +6001,7 @@ alberta_in,154,171,5	script	Maid#s10	758,{
 	}
 }
 
-prt_castle,107,58,5	script	Soldier#s11	105,{
+-	script	Soldier#s11_	-1,{
 	callfunc "F_UpdateSignVars";
 	mes "[Maruin]";
 	if (sign_q < 49) {

+ 29 - 0
npc/re/battleground/bg_common.txt

@@ -0,0 +1,29 @@
+//===== rAthena Script ======================================= 
+//= BattleGround System - Common NPCs
+//===== By: ================================================== 
+//= ????, L0ne_W0lf
+//===== Current Version: ===================================== 
+//= 1.5
+//===== Compatible With: ===================================== 
+//= rAthena Project
+//===== Description: ========================================= 
+//= [Official Conversion]
+//= Battleground NPCs:
+//= - Generals and Aides
+//= - Battleground Warper
+//= - Kafra and Repairman.
+//= - GM Management NPC
+//= - Badge Exchanger (Tierra and Flavius)
+//===== Additional Comments: ================================= 
+//= 1.0 First Version.
+//= 1.1 Updated several NPCs to Official.
+//= 1.2 Updated Repairman NPC
+//= 1.3 Optimized "Erundek" NPC. [Euphy]
+//= 1.4 Added GM management function. [Euphy]
+//= 1.5 Added VIP features and created a reward function. [Euphy]
+//============================================================
+
+// BattleGround Warper
+//============================================================
+
+morocc,145,82,3	duplicate(BatRecruit)	Maroll Battle Recruiter::BatRecruit8	728

Vissa filer visades inte eftersom för många filer har ändrats