فهرست منبع

Merge branch 'master' into hotfix/issue7111

Aleos 2 سال پیش
والد
کامیت
c8e44d2b68
100فایلهای تغییر یافته به همراه13795 افزوده شده و 2794 حذف شده
  1. 92 0
      .github/workflows/analysis_codeql.yml
  2. 2 1
      .github/workflows/build_servers_clang.yml
  3. 2 1
      .github/workflows/build_servers_cmake.yml
  4. 2 1
      .github/workflows/build_servers_gcc.yml
  5. 2 1
      .github/workflows/build_servers_modes.yml
  6. 2 1
      .github/workflows/build_servers_msbuild.yml
  7. 2 1
      .github/workflows/build_servers_packetversions.yml
  8. 2 1
      .github/workflows/build_servers_vip.yml
  9. 2 1
      .github/workflows/npc_db_validation.yml
  10. 1 1
      CMakeLists.txt
  11. 2 2
      README.md
  12. 11 0
      conf/battle/client.conf
  13. 35 2
      conf/battle/feature.conf
  14. 1 1
      conf/battle/homunc.conf
  15. 5 0
      conf/battle/monster.conf
  16. 3 0
      conf/char_athena.conf
  17. 2 3
      conf/inter_athena.conf
  18. 12 0
      conf/maps_athena.conf
  19. 6 3
      conf/msg_conf/map_msg.conf
  20. 2 2
      conf/msg_conf/map_msg_chn.conf
  21. 2 2
      conf/msg_conf/map_msg_frn.conf
  22. 2 2
      conf/msg_conf/map_msg_idn.conf
  23. 2 2
      conf/msg_conf/map_msg_por.conf
  24. 2 2
      conf/msg_conf/map_msg_rus.conf
  25. 2 2
      conf/msg_conf/map_msg_spn.conf
  26. 2 2
      conf/msg_conf/map_msg_tha.conf
  27. 4 4
      configure
  28. 5 5
      configure.ac
  29. 8 164
      db/castle_db.yml
  30. 0 119
      db/homun_skill_tree.txt
  31. 65 0
      db/homunculus_db.yml
  32. 8 1
      db/import-tmpl/castle_db.yml
  33. 0 15
      db/import-tmpl/homun_skill_tree.txt
  34. 0 20
      db/import-tmpl/homunculus_db.txt
  35. 57 0
      db/import-tmpl/homunculus_db.yml
  36. 33 0
      db/import-tmpl/item_cash.yml
  37. 0 19
      db/import-tmpl/item_cash_db.txt
  38. 37 0
      db/item_cash.yml
  39. BIN
      db/map_cache.dat
  40. 10 0
      db/map_index.txt
  41. 235 1
      db/pre-re/castle_db.yml
  42. 0 33
      db/pre-re/homunculus_db.txt
  43. 623 0
      db/pre-re/homunculus_db.yml
  44. 0 19
      db/pre-re/item_cash_db.txt
  45. 42 0
      db/pre-re/item_group_db.yml
  46. 94 1
      db/pre-re/status.yml
  47. 22 22
      db/re/attr_fix.yml
  48. 334 1
      db/re/castle_db.yml
  49. 151 0
      db/re/exp_homun.yml
  50. 0 33
      db/re/homunculus_db.txt
  51. 948 0
      db/re/homunculus_db.yml
  52. 201 0
      db/re/instance_db.yml
  53. 0 19
      db/re/item_cash_db.txt
  54. 249 137
      db/re/item_combos.yml
  55. 762 16
      db/re/item_db_equip.yml
  56. 336 141
      db/re/item_db_etc.yml
  57. 2005 203
      db/re/item_db_usable.yml
  58. 86 174
      db/re/item_enchant.yml
  59. 1245 72
      db/re/item_group_db.yml
  60. 850 17
      db/re/item_randomopt_group.yml
  61. 285 197
      db/re/item_reform.yml
  62. 23 23
      db/re/laphine_synthesis.yml
  63. 235 178
      db/re/laphine_upgrade.yml
  64. 889 95
      db/re/mob_db.yml
  65. 300 0
      db/re/mob_skill_db.txt
  66. 164 5
      db/re/quest_db.yml
  67. 843 470
      db/re/skill_db.yml
  68. 306 1
      db/re/status.yml
  69. 5 2
      doc/atcommands.txt
  70. 5 0
      doc/item_bonus.txt
  71. 72 10
      doc/script_commands.txt
  72. 2 1
      doc/status.txt
  73. 36 0
      doc/yaml/db/homunculus_db.yml
  74. 12 0
      doc/yaml/db/item_cash.yml
  75. 2 0
      doc/yaml/sql/item_db2_re.sql
  76. 2 0
      doc/yaml/sql/item_db_re.sql
  77. 3 3
      npc/custom/official/GeffenMagicTournament.txt
  78. 221 132
      npc/custom/warper.txt
  79. 1 29
      npc/mapflag/nosave.txt
  80. 0 125
      npc/merchants/cash_hair.txt
  81. 37 0
      npc/pre-re/mapflag/nosave.txt
  82. 1 1
      npc/pre-re/mobs/dungeons/nyd_dun.txt
  83. 1 1
      npc/pre-re/mobs/dungeons/prt_maze.txt
  84. 13 13
      npc/re/custom/lasagna/lasagna_npcs.txt
  85. 1 1
      npc/re/instances/MalangdoCulvert.txt
  86. 401 0
      npc/re/instances/WeekendDungeon.txt
  87. 11 0
      npc/re/mapflag/nobranch.txt
  88. 11 0
      npc/re/mapflag/nomemo.txt
  89. 5 0
      npc/re/mapflag/nopenalty.txt
  90. 5 0
      npc/re/mapflag/nopvp.txt
  91. 1 235
      npc/re/mapflag/nosave.txt
  92. 12 0
      npc/re/mapflag/noteleport.txt
  93. 6 0
      npc/re/mapflag/nowarpto.txt
  94. 6 0
      npc/re/mapflag/partylock.txt
  95. 6 0
      npc/re/mapflag/restricted.txt
  96. 1 1
      npc/re/merchants/Emperium_Seller.txt
  97. 1 1
      npc/re/merchants/Slot_Move_Card_Sales.txt
  98. 2 0
      npc/re/merchants/barters.yml
  99. 1039 0
      npc/re/merchants/barters/cashmall.yml
  100. 219 0
      npc/re/merchants/barters/rgsr_in.yml

+ 92 - 0
.github/workflows/analysis_codeql.yml

@@ -0,0 +1,92 @@
+name: Analyse servers with CodeQL
+# analysis_codeql.yml
+
+concurrency:
+  group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
+
+on:
+  workflow_dispatch:
+  push:
+    branches:
+      - master
+  pull_request:
+    paths:
+      # Always trigger all Github Actions if an action or something CI related was changed
+      - '.github/workflows/**'
+      - 'tools/ci/**'
+      # This workflow should run when a file in a source directory has been modified.
+      - 'src/**'
+      - '3rdparty/**'
+
+jobs:
+  analyze:
+    # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+    # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+    if: "!contains(github.event.head_commit.message, 'ci-skip')"
+    runs-on: ${{ matrix.os }}
+    strategy:
+      fail-fast: false
+      matrix:
+          # The ubuntu-latest label currently points to ubuntu-20.04.
+          # Available: ubuntu-22.04, ubuntu-20.04
+          os: [ubuntu-latest]
+          # Older versions of GCC are not available via unaltered aptitude repo lists.
+          gcc: ['10']
+          # We run build checks for both Renewal and PRE-Renewal
+          mode: ['PRE','RE']
+
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v3
+
+      # Initializes the CodeQL tools for scanning.
+      - name: Initialize CodeQL
+        uses: github/codeql-action/init@v2
+        with:
+           # CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
+           # Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
+           languages: cpp
+           # Trigger security and quality findings
+           # https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
+           # TODO: Resolve the issues and then enable it again
+           #queries: +security-and-quality
+
+      # A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
+      - name: Variable Parsing - PRE
+        if: ${{ matrix.mode == 'PRE' }} 
+        run: |
+          echo "PRERE=yes" >> $GITHUB_ENV
+      - name: Variable Parsing - RE
+        if: ${{ matrix.mode == 'RE' }} 
+        run: |
+          echo "PRERE=no" >> $GITHUB_ENV
+
+      - name: Update & Install packages
+        # Ubuntu runners already have most of the packages rAthena requires to build.
+        # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+        run: |
+          sudo apt update
+          sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+      # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java).
+      # If this step fails, then you should remove it and run the build manually (see below)
+      #- name: Autobuild
+      #  uses: github/codeql-action/autobuild@v2
+
+      # ✏️ If the Autobuild fails above, remove it and uncomment the following
+      #    three lines and modify them (or add more) to build your code if your
+      #    project uses a compiled language
+      - name: Command - configure
+        env:
+            CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-buildbot=yes'
+        run: ./configure $CONFIGURE_FLAGS
+
+      - name: Command - make clean
+        run: make clean
+
+      - name: Command - make server
+        run: make server
+
+      - name: Perform CodeQL Analysis
+        uses: github/codeql-action/analyze@v2

+ 2 - 1
.github/workflows/build_servers_clang.yml

@@ -3,9 +3,10 @@ name: Build servers with Clang
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_cmake.yml

@@ -3,9 +3,10 @@ name: Build servers with CMake
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_gcc.yml

@@ -3,9 +3,10 @@ name: Build servers with GCC
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_modes.yml

@@ -3,9 +3,10 @@ name: Build servers in Pre-Renewal and Renewal
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_msbuild.yml

@@ -3,9 +3,10 @@ name: Build servers with MSVS
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_packetversions.yml

@@ -3,9 +3,10 @@ name: Build servers with different packet versions
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/build_servers_vip.yml

@@ -3,9 +3,10 @@ name: Build servers in VIP mode
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 2 - 1
.github/workflows/npc_db_validation.yml

@@ -6,9 +6,10 @@ name: Validate NPC Scripts and DB Changes
 
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 on:
+  workflow_dispatch:
   push:
     branches:
       - master

+ 1 - 1
CMakeLists.txt

@@ -35,7 +35,7 @@ project( rAthena )
 if( CYGWIN )
 	unset( WIN32 )
 endif()
-set(CMAKE_CXX_STANDARD 11) # C++11...
+set(CMAKE_CXX_STANDARD 14) # C++14...
 set(CMAKE_CXX_STANDARD_REQUIRED ON) #...is required...
 #set(CMAKE_CXX_EXTENSIONS OFF) #...without compiler extensions like gnu++11
 

+ 2 - 2
README.md

@@ -1,7 +1,7 @@
 <img src="doc/logo.png" align="right" height="90" />
 
 # rAthena
-[![Total alerts](https://img.shields.io/lgtm/alerts/g/rathena/rathena.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/rathena/rathena/alerts/) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/rathena/rathena.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/rathena/rathena/context:cpp) ![GitHub](https://img.shields.io/github/license/rathena/rathena.svg) ![GitHub repo size](https://img.shields.io/github/repo-size/rathena/rathena.svg)
+![clang](https://img.shields.io/github/actions/workflow/status/rathena/rathena/build_servers_clang.yml?label=clang%20build&logo=llvm) ![cmake](https://img.shields.io/github/actions/workflow/status/rathena/rathena/build_servers_cmake.yml?label=cmake%20build&logo=cmake) ![gcc](https://img.shields.io/github/actions/workflow/status/rathena/rathena/build_servers_gcc.yml?label=gcc%20build&logo=gnu) ![ms](https://img.shields.io/github/actions/workflow/status/rathena/rathena/build_servers_msbuild.yml?label=ms%20build&logo=visualstudio) ![GitHub](https://img.shields.io/github/license/rathena/rathena.svg) ![commit activity](https://img.shields.io/github/commit-activity/w/rathena/rathena) ![GitHub repo size](https://img.shields.io/github/repo-size/rathena/rathena.svg)
 > rAthena is a collaborative software development project revolving around the creation of a robust massively multiplayer online role playing game (MMORPG) server package. Written in C, the program is very versatile and provides NPCs, warps and modifications. The project is jointly managed by a group of volunteers located around the world as well as a tremendous community providing QA and support. rAthena is a continuation of the eAthena project.
 
 [Forum](https://rathena.org/board)|[Discord](https://rathena.org/discord)|[Wiki](https://github.com/rathena/rathena/wiki)|[FluxCP](https://github.com/rathena/FluxCP)|[Crowdfunding](https://rathena.org/board/crowdfunding/)|[Fork and Pull Request Q&A](https://rathena.org/board/topic/86913-pull-request-qa/)
@@ -30,7 +30,7 @@ Disk Space | 300 MB | 500 MB
 Operating System | Compiler
 ------|------
 Linux  | [gcc-5 or newer](https://www.gnu.org/software/gcc/gcc-5/) / [Make](https://www.gnu.org/software/make/)
-Windows | [MS Visual Studio 2013, 2015, 2017](https://www.visualstudio.com/downloads/)
+Windows | [MS Visual Studio 2017 or newer](https://www.visualstudio.com/downloads/)
 
 ### Required Applications
 Application | Name

+ 11 - 0
conf/battle/client.conf

@@ -158,3 +158,14 @@ macro_detection_retry: 3
 // Amount of time in milliseconds before the macro detection will fail and the user will be banned.
 // Official: 60000
 macro_detection_timeout: 60000
+
+// Macro Detector punishment type
+// 0 - Ban
+// 1 - Jail
+// Official: 0
+macro_detection_punishment: 0
+
+// Macro Detector punishment duration
+// Amount of time in minutes that the punishment type is active for. Use 0 for infinite.
+// Official: 0
+macro_detection_punishment_time: 0

+ 35 - 2
conf/battle/feature.conf

@@ -33,6 +33,11 @@ feature.warp_suggestions: off
 // Requires: 2013-07-24aRagexe or later
 feature.banking: on
 
+// Should Banking strictly checks the UI state on zeny deposit and withdrawal? (Note 1)
+// Note: Disabled by default because existing official clients do not report the banking UI state to the server.
+// But this config could be useful in case of clients that actually report the UI state or custom clients.
+feature.banking_state_enforce: no
+
 // Autotrade persistency (Note 1)
 // Should vendors that used @autotrade be restored after a restart?
 feature.autotrade: on
@@ -67,6 +72,10 @@ feature.bgqueue: on
 // Requires: 2014-10-22bRagexe or later
 feature.roulette: on
 
+// Roulette bonus reward
+// Multiply amount by 2 if the reward item ID is the same as bonus item ID
+feature.roulette_bonus_reward: on
+
 // Achievement (Note 1)
 // Requires: 2015-05-13aRagexe or later
 feature.achievement: on
@@ -137,8 +146,32 @@ feature.dynamicnpc_rangey: 2
 feature.dynamicnpc_direction: no
 
 // Itemlink System on informational related commands (Note 1)
-// Generates <ITEML> string for an item and can be used for npctalk, message,
+// Generates an itemlink string for an item and can be used for npctalk, message,
 // dispbottom, and broadcast commands. The result is clickable-item name just
 // like from SHIFT+Click from player's inventory/cart/equipment window.
-// Requires: 2010-00-00RagexeRE or later
+// Requires: 2015-11-04Ragexe or later
 feature.itemlink: on
+
+// Itemlink System on NPC messages (Note 1)
+// Generates an itemlink string for an item and can be used for NPC's mes command.
+// Requires: 2010-01-01 or later
+feature.mesitemlink: on
+
+// Force all mesitemlinks to be wrapped in brackets (Note 1)
+// Default: no
+feature.mesitemlink_brackets: no
+
+// Force all mesitemlinks to use the database name (Note 1)
+// Default: no
+feature.mesitemlink_dbname: no
+
+// Stylist UI (Note 1)
+// Requires: 2015-11-04 or later
+feature.stylist: on
+
+// Are players allowed to reconnect into instances? (Note 1)
+// This is enabled by default in Renewal mode and
+// disabled by default in Pre-Renewal mode.
+// If this is allowed the "nosave" mapflag is still being respected
+// and may prevent players from warping back into the instance.
+//feature.instance_allow_reconnect: yes

+ 1 - 1
conf/battle/homunc.conf

@@ -50,7 +50,7 @@ homunculus_auto_vapor: 80
 homunculus_max_level: 99
 
 // Max level for Homunculus S
-homunculus_S_max_level: 175
+homunculus_S_max_level: 250
 
 // Growth level for Homunculus S
 // This is the level at which homunculus S can use their growth tables

+ 5 - 0
conf/battle/monster.conf

@@ -297,3 +297,8 @@ achievement_mob_share: no
 // Should slaves teleport back to their master if they get too far during chase? (Note 1)
 // Default (Official): no
 slave_stick_with_master: no
+
+// Absolute minimum respawn time in milliseconds of a monster.
+// Also used in delaying the spawning of guardians when a guild is not loaded.
+// Default (Official): 1000
+mob_respawn_time: 1000

+ 3 - 0
conf/char_athena.conf

@@ -198,6 +198,9 @@ char_del_restriction: 3
 // Uncomment to customize the restriction
 //allowed_job_flag: 3
 
+// Should parties that don't have any members be cleared from the party_db table at start up?
+clear_parties: no
+
 // Folder that contains the database files.
 db_path: db
 

+ 2 - 3
conf/inter_athena.conf

@@ -147,8 +147,6 @@ item_table: item_db
 renewal-item_table: item_db_re
 item2_table: item_db2
 renewal-item2_table: item_db2_re
-item_cash_table: item_cash_db
-item_cash2_table: item_cash_db2
 mob_table: mob_db
 renewal-mob_table: mob_db_re
 mob2_table: mob_db2
@@ -158,6 +156,7 @@ renewal-mob_skill_table: mob_skill_db_re
 mob_skill2_table: mob_skill_db2
 renewal-mob_skill2_table: mob_skill_db2_re
 mapreg_table: mapreg
+partybookings_table: party_bookings
 sales_table: sales
 vending_table: vendings
 vending_items_table: vending_items
@@ -166,7 +165,7 @@ roulette_table: db_roulette
 guild_storage_log: guild_storage_log
 
 // Web Database Tables
-// NOTE: The web server reads the login (login) and char (guild) tables, so it needs
+// NOTE: The web server reads the login (login) and char (party,guild) tables and map (party_bookings), so it needs
 //       the ability to connect to those databases.
 guild_emblems: guild_emblems
 user_configs: user_configs

+ 12 - 0
conf/maps_athena.conf

@@ -1517,6 +1517,9 @@ map: bl_grass
 map: bl_lava
 map: bl_ice
 map: bl_death
+map: bl_soul
+map: bl_temple
+map: bl_venom
 
 // Clock Tower: Unknown Basement
 map: clock_01
@@ -1535,6 +1538,11 @@ map: 1@vrcas
 map: 1@vrev
 map: 1@vrgen
 map: 1@vrpo
+map: 1@vrac1
+map: 1@vrac2
+map: 1@vrclo
+map: 1@vrhha
+map: 2@vrclo
 
 // ??
 map: 1@pdb
@@ -1558,5 +1566,9 @@ map: hero_out4
 map: hero_tra
 map: herosria
 
+// Level 260 Expansion
+map: mjo_wst01
+map: ra_pol01
+
 //------------------------- Clone Maps ---------------------------
 //------------------------- Extra Maps ---------------------------

+ 6 - 3
conf/msg_conf/map_msg.conf

@@ -927,7 +927,10 @@
 // Enchant UI
 829: Enchanting is not possible for your item's enchant grade.
 
-//830-899 free
+// @reloadbarterdb
+830: Barter database has been reloaded.
+
+//831-899 free
 
 //------------------------------------
 // More atcommands message
@@ -1444,7 +1447,7 @@
 
 // @iteminfo
 1276: Please enter an item name/ID (usage: @ii/@iteminfo <item name/ID>).
-1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s' (%u) Type: %s | Extra Effect: %s
 1278: None
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1454,7 +1457,7 @@
 
 // @whodrops
 1284: Please enter item name/ID (usage: @whodrops <item name/ID>).
-1285: Item: '%s'[%d] (ID: %u)
+1285: Item: '%s' (ID: %u)
 1286:  - Item is not dropped by mobs.
 1287:  - Common mobs with highest drop chance (only max %d are listed):
 

+ 2 - 2
conf/msg_conf/map_msg_chn.conf

@@ -1192,7 +1192,7 @@
 
 // @iteminfo
 1276: 請輸入 物品名稱/ID (用法: @ii/@iteminfo <物品名稱/ID>).
-1277: 物品: '%s'/'%s'[%d] (%u) 類型: %s | 額外效果: %s
+1277: 物品: '%s'/'%s' (%u) 類型: %s | 額外效果: %s
 1278: None
 1279: With script
 1280: NPC 買價:%dz, 賣價:%dz | 重量: %.1f 
@@ -1202,7 +1202,7 @@
 
 // @whodrops
 1284: Please enter 物品名稱/ID (用法: @whodrops <物品名稱/ID>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item is not dropped by mobs.
 1287:  - Common mobs with highest drop chance (only max %d are listed):
 

+ 2 - 2
conf/msg_conf/map_msg_frn.conf

@@ -1205,7 +1205,7 @@
 
 // @iteminfo
 1276: Entrez un nom/ID d'objet (usage: @ii/@iteminfo <nom/ID>).
-1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s' (%u) Type: %s | Extra Effect: %s
 1278: Aucun
 1279: Avec script
 1280: NPC Acheté:%dz, Vendu:%dz | Poids: %.1f 
@@ -1215,7 +1215,7 @@
 
 // @whodrops
 1284: Entrez un nom/ID d'Objet (usage: @whodrops <nom/ID_objet>).
-1285: Objet: '%s'[%d] (ID:%d)
+1285: Objet: '%s' (ID:%d)
 1286:  - Cet Objet n'est lâché par aucun monstre.
 1287:  - Monstres communs avec la plus grande chance de drop (seuls %d max sont listés):
 

+ 2 - 2
conf/msg_conf/map_msg_idn.conf

@@ -1293,7 +1293,7 @@
 
 // @iteminfo
 1276: Harap masukkan nama/ID item. (Penggunaan: @ii/@iteminfo <nama/ID item>).
-1277: Item: '%s'/'%s'[%d] (%u) Jenis: %s | Efek tambahan: %s
+1277: Item: '%s'/'%s' (%u) Jenis: %s | Efek tambahan: %s
 1278: Tidak ada
 1279: Dengan script.
 1280: NPC Harga Beli:%dz, Harga jual:%dz | Berat: %.1f 
@@ -1303,7 +1303,7 @@
 
 // @whodrops
 1284: Harap masukkan nama/ID item. (Penggunaan: @whodrops <nama/ID item>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item ini tidak dijatuhkan dari monster.
 1287:  - Monster biasa dengan kemungkinan menjatuhkan barang tertinggi. (Maks. hanya %d yang ditampilkan):
 

+ 2 - 2
conf/msg_conf/map_msg_por.conf

@@ -1375,7 +1375,7 @@
 
 // @iteminfo
 1276: Digite o nome/ID de um item (uso: @ii/@iteminfo <nome do item/ID>).
-1277: Item: '%s'/'%s'[%d] (%u) Tipo: %s | Efeito Extra: %s
+1277: Item: '%s'/'%s' (%u) Tipo: %s | Efeito Extra: %s
 1278: Nenhum
 1279: Com script
 1280: NPC Compra:%dz, Venda:%dz | Peso: %.1f 
@@ -1385,7 +1385,7 @@
 
 // @whodrops
 1284: Digite o nome/ID de um item (uso: @whodrops <nome do item/ID>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item não derrubado por monstros.
 1287:  - Monstros comuns com maiores chances de drop (somente máx %d são listados):
 

+ 2 - 2
conf/msg_conf/map_msg_rus.conf

@@ -1205,7 +1205,7 @@
 
 // @iteminfo
 1276: Введите ID/название предмета (Использование: @ii/@iteminfo <ID/название предмета>).
-1277: Предмет: '%s'/'%s'[%d] (%u) Тип: %s | Доп. эффект: %s
+1277: Предмет: '%s'/'%s' (%u) Тип: %s | Доп. эффект: %s
 1278: Пусто
 1279: Скрипт
 1280: НИП покупка:%d зени, продажа:%d зени | Вес: %.1f 
@@ -1215,7 +1215,7 @@
 
 // @whodrops
 1284: Введите ID/название предмета (Использование: @whodrops <ID/название предмета>).
-1285: Предмет: '%s'[%d] (ID:%d)
+1285: Предмет: '%s' (ID:%d)
 1286:  - Предмет не падает с монстров.
 1287:  - Обычные монстры с высоким шансом выпадения (перечислено только %d):
 

+ 2 - 2
conf/msg_conf/map_msg_spn.conf

@@ -1344,7 +1344,7 @@
 
 // @iteminfo
 1276: Introduce el nombre/ID de un objeto (instrucciones: @ii/@iteminfo <nombre/ID del objeto>).
-1277: Objeto: '%s'/'%s'[%d] (%u) Tipo: %s | Efecto: %s
+1277: Objeto: '%s'/'%s' (%u) Tipo: %s | Efecto: %s
 1278: Ninguno
 1279: Contiene código
 1280: Compra en NPC:%dz, Venta:%dz | Peso: %.1f
@@ -1354,7 +1354,7 @@
 
 // @whodrops
 1284: Introduce el nombre/ID de un objeto (instrucciones: @whodrops <nombre/ID del objeto>). 
-1285: Objeto: '%s'[%d] (ID:%d)
+1285: Objeto: '%s' (ID:%d)
 1286: - Ningún monstruo tiene ese objeto.
 1287: - Estos monstruos tienen ese objeto (sólo se muestran un máximo de %d):
 

+ 2 - 2
conf/msg_conf/map_msg_tha.conf

@@ -1198,7 +1198,7 @@
 
 // @iteminfo
 1276: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @ii/@iteminfo <ª×èÍ/ID item>).
-1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s' (%u) Type: %s | Extra Effect: %s
 1278: None
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1208,7 +1208,7 @@
 
 // @whodrops
 1284: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @whodrops <ª×èÍ/ID item>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item ¹ÕéäÁèÁÕµ¡¨Ò¡ monster.
 1287:  - Monster ·ÑèÇä»·ÕèÁÕâÍ¡Òʵ¡ÊÙ§ÊØ´ (áÊ´§à¾Õ§ %d ÃÒ¡ÒÃ):
 

+ 4 - 4
configure

@@ -4538,9 +4538,9 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
 
 CFLAGS="$CFLAGS -pipe -ffast-math -Wall"
 CPPFLAGS="$CPPFLAGS -I../common"
-CXXFLAGS="$CXXFLAGS -std=c++11"
-#CXXFLAGS="$CXXFLAGS -std=gnu++11"
-CXXFLAG_CLEARS="-std=c++11"
+CXXFLAGS="$CXXFLAGS -std=c++14"
+#CXXFLAGS="$CXXFLAGS -std=gnu++14"
+CXXFLAG_CLEARS="-std=c++14"
 
  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
 $as_echo_n "checking whether byte ordering is bigendian... " >&6; }
@@ -7109,7 +7109,7 @@ else
 $as_echo "no" >&6; }
 fi
 
-CXXFLAG_CLEARS="-std=c++11 $CPPFLAGS"
+CXXFLAG_CLEARS="-std=c++14 $CPPFLAGS"
 CFLAGS="$OPT_LTO $CFLAGS"
 CFLAGS_AR="$OPT_LTO_AR $CFLAGS"
 

+ 5 - 5
configure.ac

@@ -483,9 +483,9 @@ AC_LANG([C++])
 
 CFLAGS="$CFLAGS -pipe -ffast-math -Wall"
 CPPFLAGS="$CPPFLAGS -I../common"
-CXXFLAGS="$CXXFLAGS -std=c++11"
-#CXXFLAGS="$CXXFLAGS -std=gnu++11"
-CXXFLAG_CLEARS="-std=c++11"
+CXXFLAGS="$CXXFLAGS -std=c++14"
+#CXXFLAGS="$CXXFLAGS -std=gnu++14"
+CXXFLAG_CLEARS="-std=c++14"
 
 AC_C_BIGENDIAN(
 	[AC_MSG_ERROR([[bigendian is not supported... stopping]])],
@@ -620,7 +620,7 @@ if test "$enable_lto" != "no" ; then
 	)
 	CFLAGS="$OLD_CFLAGS"
 	LDFLAGS="$OLD_LDFLAGS"
-	
+
 	CFLAGS="$CFLAGS -flto -fuse-linker-plugin"
 	LDFLAGS="$LDFLAGS -flto -fuse-linker-plugin"
 	
@@ -1355,7 +1355,7 @@ else
 	AC_MSG_RESULT([no])
 fi
 
-CXXFLAG_CLEARS="-std=c++11 $CPPFLAGS"
+CXXFLAG_CLEARS="-std=c++14 $CPPFLAGS"
 CFLAGS="$OPT_LTO $CFLAGS" 
 CFLAGS_AR="$OPT_LTO_AR $CFLAGS"
 AC_SUBST([CFLAGS_AR])

+ 8 - 164
db/castle_db.yml

@@ -26,174 +26,18 @@
 #   Map               Map name to be considered as the castle map.
 #   Name              Name of the castle (used by scripts and guardian name tags).
 #   Npc               NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
+#   Type              The WoE type this castle belongs to. (Default: First_Edition)
+#   ClientId          Client side ID of the castle. (Default: 0)
+#   WarpEnabled       If the warp to the castle is enabled. (Default: false)
+#   WarpX             X coordinate to warp to. (Default: 0)
+#   WarpY             Y coordinate to warp to. (Default: 0)
+#   WarpCost          Zeny cost to use the warp. (Default: 100)
+#   WarpCostSiege     Zeny cost to use the warp during WoE. (Default: 100000)
 ###########################################################################
 
 Header:
   Type: CASTLE_DB
-  Version: 1
-
-Body:
-# WOE FE castle
-  - Id: 0
-    Map: aldeg_cas01
-    Name: Neuschwanstein
-    #Name: Noisyubantian
-    Npc: Agit#aldeg_cas01
-  - Id: 1
-    Map: aldeg_cas02
-    Name: Hohenschwangau
-    #Name: Hohensyubangawoo
-    Npc: Agit#aldeg_cas02
-  - Id: 2
-    Map: aldeg_cas03
-    Name: Nuernberg
-    #Name: Nyirenverk
-    Npc: Agit#aldeg_cas03
-  - Id: 3
-    Map: aldeg_cas04
-    Name: Wuerzburg
-    #Name: Byirtsburi
-    Npc: Agit#aldeg_cas04
-  - Id: 4
-    Map: aldeg_cas05
-    Name: Rothenburg
-    #Name: Rotenburk
-    Npc: Agit#aldeg_cas05
-  - Id: 5
-    Map: gefg_cas01
-    Name: Repherion
-    #Name: Reprion
-    Npc: Agit#gefg_cas01
-  - Id: 6
-    Map: gefg_cas02
-    Name: Eeyolbriggar
-    #Name: Yolbriger
-    Npc: Agit#gefg_cas02
-  - Id: 7
-    Map: gefg_cas03
-    Name: Yesnelph
-    #Name: Isinlife
-    Npc: Agit#gefg_cas03
-  - Id: 8
-    Map: gefg_cas04
-    Name: Bergel
-    #Name: Berigel
-    Npc: Agit#gefg_cas04
-  - Id: 9
-    Map: gefg_cas05
-    Name: Mersetzdeitz
-    #Name: Melsedetsu
-    Npc: Agit#gefg_cas05
-  - Id: 10
-    Map: payg_cas01
-    Name: Bright Arbor
-    #Name: Mingting
-    Npc: Agit#payg_cas01
-  - Id: 11
-    Map: payg_cas02
-    Name: Scarlet Palace
-    #Name: Tiantan
-    Npc: Agit#payg_cas02
-  - Id: 12
-    Map: payg_cas03
-    Name: Holy Shadow
-    #Name: Fuying
-    Npc: Agit#payg_cas03
-  - Id: 13
-    Map: payg_cas04
-    Name: Sacred Altar
-    #Name: Honglou
-    Npc: Agit#payg_cas04
-  - Id: 14
-    Map: payg_cas05
-    Name: Bamboo Grove Hill
-    #Name: Zhulinxian
-    Npc: Agit#payg_cas05
-  - Id: 15
-    Map: prtg_cas01
-    Name: Kriemhild
-    #Name: Creamhilt
-    Npc: Agit#prtg_cas01
-  - Id: 16
-    Map: prtg_cas02
-    Name: Swanhild
-    #Name: Sbanhealt
-    Npc: Agit#prtg_cas02
-  - Id: 17
-    Map: prtg_cas03
-    Name: Fadhgridh
-    #Name: Lazrigees
-    Npc: Agit#prtg_cas03
-  - Id: 18
-    Map: prtg_cas04
-    Name: Skoegul
-    #Name: Squagul
-    Npc: Agit#prtg_cas04
-  - Id: 19
-    Map: prtg_cas05
-    Name: Gondul
-    #Name: Guindull
-    Npc: Agit#prtg_cas05
-
-# WOE NGuild castle
-  - Id: 20
-    Map: nguild_alde
-    Name: Earth
-    Npc: Agit_N01
-  - Id: 21
-    Map: nguild_gef
-    Name: Air
-    Npc: Agit_N02
-  - Id: 22
-    Map: nguild_pay
-    Name: Water
-    Npc: Agit_N03
-  - Id: 23
-    Map: nguild_prt
-    Name: Fire
-    Npc: Agit_N04
-
-# WOE SE castle
-  - Id: 24
-    Map: schg_cas01
-    Name: Himinn
-    Npc: Manager#schg_cas01
-  - Id: 25
-    Map: schg_cas02
-    Name: Andlangr
-    Npc: Manager#schg_cas02
-  - Id: 26
-    Map: schg_cas03
-    Name: Viblainn
-    Npc: Manager#schg_cas03
-  - Id: 27
-    Map: schg_cas04
-    Name: Hljod
-    Npc: Manager#schg_cas04
-  - Id: 28
-    Map: schg_cas05
-    Name: Skidbladnir
-    Npc: Manager#schg_cas05
-  - Id: 29
-    Map: arug_cas01
-    Name: Mardol
-    Npc: Manager#arug_cas01
-  - Id: 30
-    Map: arug_cas02
-    Name: Cyr
-    Npc: Manager#arug_cas02
-  - Id: 31
-    Map: arug_cas03
-    Name: Horn
-    Npc: Manager#arug_cas03
-  - Id: 32
-    Map: arug_cas04
-    Name: Gefn
-    Npc: Manager#arug_cas04
-  - Id: 33
-    Map: arug_cas05
-    Name: Bandis
-    Npc: Manager#arug_cas05
+  Version: 2
 
 Footer:
   Imports:

+ 0 - 119
db/homun_skill_tree.txt

@@ -1,119 +0,0 @@
-// Homunculus Skill Tree Database
-//
-// Structure of Database:
-// Class,SkillID,MaxLv,NeedLevel,Prerequisite SkillID1,Prerequisite SkillLv1,PrereqSkillID2,PrereqSkillLv2,PrereqSkillID3,PrereqSkillLv3,PrereqSkillID4,PrereqSkillLv4,PrereqSkillID5,PrereqSkillLv5,IntimacyLvReq //SKILLNAME#Skill Name#
-//
-// 01. Class                    Homunculus ID.
-// 02. SkillID                  Skill ID of the homunuculus skill.
-// 03. MaxLv                    Maximum level of the homunuculus skill.
-// 04. NeedLevel                Homunculus level required for the skill to become available
-// 05. Prerequisite SkillID     Homunculus skill required for the skill to become available.
-// 06. Prerequisite SkillLv     Level of the required homunculus skill.
-// ...
-// 15. IntimacyLvReq			Minimum level of intimacy to unlock skill.
-//
-// NOTE: MAX_PC_SKILL_REQUIRE (typically 5) ID/Lv pairs must be specified.
-
-//Lif
-6001,8001,5,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_HEAL
-6001,8002,5,0,8001,3,0,0,0,0,0,0,0,0,0 //HLIF_AVOID
-6001,8003,5,0,8001,5,0,0,0,0,0,0,0,0,0 //HLIF_BRAIN
-//Amistr
-6002,8005,5,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_CASTLE
-6002,8006,5,0,8005,5,0,0,0,0,0,0,0,0,0 //HAMI_DEFENCE
-6002,8007,5,0,8006,3,0,0,0,0,0,0,0,0,0 //HAMI_SKIN
-//Filir
-6003,8009,5,0,0,0,0,0,0,0,0,0,0,0,0 //HFLI_MOON
-6003,8010,5,0,8009,3,0,0,0,0,0,0,0,0,0 //HFLI_FLEET
-6003,8011,5,0,8010,3,0,0,0,0,0,0,0,0,0 //HFLI_SPEED
-//Vanilmirth
-6004,8013,5,0,0,0,0,0,0,0,0,0,0,0,0 //HVAN_CAPRICE
-6004,8014,5,0,8013,3,0,0,0,0,0,0,0,0,0 //HVAN_CHAOTIC
-6004,8015,5,0,8013,5,0,0,0,0,0,0,0,0,0 //HVAN_INSTRUCT
-//Lif2
-6005,8001,5,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_HEAL
-6005,8002,5,0,8001,3,0,0,0,0,0,0,0,0,0 //HLIF_AVOID
-6005,8003,5,0,8001,5,0,0,0,0,0,0,0,0,0 //HLIF_BRAIN
-//Amistr2
-6006,8005,5,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_CASTLE
-6006,8006,5,0,8005,5,0,0,0,0,0,0,0,0,0 //HAMI_DEFENCE
-6006,8007,5,0,8006,3,0,0,0,0,0,0,0,0,0 //HAMI_SKIN
-//Filir2
-6007,8009,5,0,0,0,0,0,0,0,0,0,0,0,0 //HFLI_MOON
-6007,8010,5,0,8009,3,0,0,0,0,0,0,0,0,0 //HFLI_FLEET
-6007,8011,5,0,8010,3,0,0,0,0,0,0,0,0,0 //HFLI_SPEED
-//Vanilmirth2
-6008,8013,5,0,0,0,0,0,0,0,0,0,0,0,0 //HVAN_CAPRICE
-6008,8014,5,0,8013,3,0,0,0,0,0,0,0,0,0 //HVAN_CHAOTIC
-6008,8015,5,0,8013,5,0,0,0,0,0,0,0,0,0 //HVAN_INSTRUCT
-//Lif_H
-6009,8001,5,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_HEAL
-6009,8002,5,0,8001,3,0,0,0,0,0,0,0,0,0 //HLIF_AVOID
-6009,8003,5,0,8001,5,0,0,0,0,0,0,0,0,0 //HLIF_BRAIN
-6009,8004,3,0,0,0,0,0,0,0,0,0,0,0,910 //HLIF_CHANGE
-//Amistr_H
-6010,8005,5,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_CASTLE
-6010,8006,5,0,8005,5,0,0,0,0,0,0,0,0,0 //HAMI_DEFENCE
-6010,8007,5,0,8006,3,0,0,0,0,0,0,0,0,0 //HAMI_SKIN
-6010,8008,3,0,0,0,0,0,0,0,0,0,0,0,910 //HAMI_BLOODLUST
-//Filir_H
-6011,8009,5,0,0,0,0,0,0,0,0,0,0,0,0 //HFLI_MOON
-6011,8010,5,0,8009,3,0,0,0,0,0,0,0,0,0 //HFLI_FLEET
-6011,8011,5,0,8010,3,0,0,0,0,0,0,0,0,0 //HFLI_SPEED
-6011,8012,3,0,0,0,0,0,0,0,0,0,0,0,910 //HFLI_SBR44
-//Vanilmirth_H
-6012,8013,5,0,0,0,0,0,0,0,0,0,0,0,0 //HVAN_CAPRICE
-6012,8014,5,0,8013,3,0,0,0,0,0,0,0,0,0 //HVAN_CHAOTIC
-6012,8015,5,0,8013,5,0,0,0,0,0,0,0,0,0 //HVAN_INSTRUCT
-6012,8016,3,0,0,0,0,0,0,0,0,0,0,0,910 //HVAN_EXPLOSION
-//Lif2_H
-6013,8001,5,0,0,0,0,0,0,0,0,0,0,0,0 //HLIF_HEAL
-6013,8002,5,0,8001,3,0,0,0,0,0,0,0,0,0 //HLIF_AVOID
-6013,8003,5,0,8001,5,0,0,0,0,0,0,0,0,0 //HLIF_BRAIN
-6013,8004,3,0,0,0,0,0,0,0,0,0,0,0,910 //HLIF_CHANGE
-//Amistr2_H
-6014,8005,5,0,0,0,0,0,0,0,0,0,0,0,0 //HAMI_CASTLE
-6014,8006,5,0,8005,5,0,0,0,0,0,0,0,0,0 //HAMI_DEFENCE
-6014,8007,5,0,8006,3,0,0,0,0,0,0,0,0,0 //HAMI_SKIN
-6014,8008,3,0,0,0,0,0,0,0,0,0,0,0,910 //HAMI_BLOODLUST
-//Filir2_H
-6015,8009,5,0,0,0,0,0,0,0,0,0,0,0,0 //HFLI_MOON
-6015,8010,5,0,8009,3,0,0,0,0,0,0,0,0,0 //HFLI_FLEET
-6015,8011,5,0,8010,3,0,0,0,0,0,0,0,0,0 //HFLI_SPEED
-6015,8012,3,0,0,0,0,0,0,0,0,0,0,0,910 //HFLI_SBR44
-//Vanilmirth2_H
-6016,8013,5,0,0,0,0,0,0,0,0,0,0,0,0 //HVAN_CAPRICE
-6016,8014,5,0,8013,3,0,0,0,0,0,0,0,0,0 //HVAN_CHAOTIC
-6016,8015,5,0,8013,5,0,0,0,0,0,0,0,0,0 //HVAN_INSTRUCT
-6016,8016,3,0,0,0,0,0,0,0,0,0,0,0,910 //HVAN_EXPLOSION
-//Eira
-6048,8022,5,128,0,0,0,0,0,0,0,0,0,0,0 	//MH_LIGHT_OF_REGENE
-6048,8023,5,114,0,0,0,0,0,0,0,0,0,0,0	//MH_OVERED_BOOST
-6048,8024,10,106,0,0,0,0,0,0,0,0,0,0,0	//MH_ERASER_CUTTER
-6048,8025,10,121,0,0,0,0,0,0,0,0,0,0,0 	//MH_XENO_SLASHER
-6048,8026,5,137,0,0,0,0,0,0,0,0,0,0,0 	//MH_SILENT_BREEZE
-//Bayeri
-6049,8031,10,105,0,0,0,0,0,0,0,0,0,0,0 	//MH_STAHL_HORN
-6049,8032,5,112,0,0,0,0,0,0,0,0,0,0,0 	//MH_GOLDENE_FERSE
-6049,8033,5,121,0,0,0,0,0,0,0,0,0,0,0 	//MH_STEINWAND
-6049,8034,10,138,0,0,0,0,0,0,0,0,0,0,0	//MH_HEILIGE_STANGE
-6049,8035,5,130,0,0,0,0,0,0,0,0,0,0,0	//MH_ANGRIFFS_MODUS
-//Sera
-6050,8018,5,132,0,0,0,0,0,0,0,0,0,0,0 	//MH_SUMMON_LEGION
-6050,8019,10,105,0,0,0,0,0,0,0,0,0,0,0 	//MH_NEEDLE_OF_PARALYZE
-6050,8020,5,116,0,0,0,0,0,0,0,0,0,0,0 	//MH_POISON_MIST
-6050,8021,10,123,0,0,0,0,0,0,0,0,0,0,0 	//MH_PAIN_KILLER
-//Dieter
-6051,8039,5,122,0,0,0,0,0,0,0,0,0,0,0 	//MH_MAGMA_FLOW
-6051,8040,5,116,0,0,0,0,0,0,0,0,0,0,0 	//MH_GRANITIC_ARMOR
-6051,8041,10,109,0,0,0,0,0,0,0,0,0,0,0 	//MH_LAVA_SLIDE
-6051,8042,10,131,0,0,0,0,0,0,0,0,0,0,0 	//MH_PYROCLASTIC
-6051,8043,5,102,0,0,0,0,0,0,0,0,0,0,0 	//MH_VOLCANIC_ASH
-//Elanor
-6052,8027,1,100,0,0,0,0,0,0,0,0,0,0,0 	//MH_STYLE_CHANGE
-6052,8028,5,100,0,0,0,0,0,0,0,0,0,0,0 	//MH_SONIC_CRAW
-6052,8029,10,114,0,0,0,0,0,0,0,0,0,0,0 	//MH_SILVERVEIN_RUSH
-6052,8030,10,128,0,0,0,0,0,0,0,0,0,0,0 	//MH_MIDNIGHT_FRENZY
-6052,8036,5,100,0,0,0,0,0,0,0,0,0,0,0 	//MH_TINDER_BREAKER
-6052,8037,5,112,0,0,0,0,0,0,0,0,0,0,0 	//MH_CBC
-6052,8038,5,133,0,0,0,0,0,0,0,0,0,0,0 	//MH_EQC

+ 65 - 0
db/homunculus_db.yml

@@ -0,0 +1,65 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2023 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Homunculus Database
+###########################################################################
+#
+# Homunculus Settings
+#
+###########################################################################
+# - BaseClass               Base class.
+#   Name                    Name of homunculus.
+#   EvolutionClass          Evolution class.
+#   Food                    Homunculus food item. (Default: Pet_Food)
+#   HungryDelay             Time interval in milliseconds after which the hunger value is altered. (Default: 60000)
+#   Race                    Race. (Default: Demihuman)
+#   Element                 Element. (Default: Neutral)
+#   Size                    Size. (Default: Small)
+#   EvolutionSize           Evolution size. (Default: Medium)
+#   AttackDelay             Base ASPD. (Default: 700)
+#   Status:                 Homunculus stats.
+#     - Type                Type of status.
+#       Base                Base value of this status. (Default: 1)
+#       GrowthMinimum       Minimum growth of this status. (Default: 0)
+#       GrowthMaximum       Maximum growth of this status. (Default: 0)
+#       EvolutionMinimum    Minimum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#       EvolutionMaximum    Maximum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#   SkillTree:              Skill tree.
+#     - Skill               Skill name.
+#       Clear               True to remove the given skill name. (Optional)
+#       MaxLevel            Maximum level of skill.
+#       RequiredLevel       Required base level of homunculus to learn. (Default: 0)
+#       RequiredIntimacy    Required intimacy of homunculus to learn. (Default: 0)
+#       RequireEvolution    Require the homunculus to be evolved to be available. (Default: false)
+#       Required:           Prerequisite skills. (Default: null)
+#         - Skill           Prerequisite skill name.
+#           Level           Level of prerequisite skill.
+#           Clear           True to remove the given prerequisite skill name. (Optional)
+###########################################################################
+
+Header:
+  Type: HOMUNCULUS_DB
+  Version: 1
+
+Footer:
+  Imports:
+  - Path: db/pre-re/homunculus_db.yml
+    Mode: Prerenewal
+  - Path: db/re/homunculus_db.yml
+    Mode: Renewal
+  - Path: db/import/homunculus_db.yml

+ 8 - 1
db/import-tmpl/castle_db.yml

@@ -26,8 +26,15 @@
 #   Map               Map name to be considered as the castle map.
 #   Name              Name of the castle (used by scripts and guardian name tags).
 #   Npc               NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
+#   Type              The WoE type this castle belongs to. (Default: First_Edition)
+#   ClientId          Client side ID of the castle. (Default: 0)
+#   WarpEnabled       If the warp to the castle is enabled. (Default: false)
+#   WarpX             X coordinate to warp to. (Default: 0)
+#   WarpY             Y coordinate to warp to. (Default: 0)
+#   WarpCost          Zeny cost to use the warp. (Default: 100)
+#   WarpCostSiege     Zeny cost to use the warp during WoE. (Default: 100000)
 ###########################################################################
 
 Header:
   Type: CASTLE_DB
-  Version: 1
+  Version: 2

+ 0 - 15
db/import-tmpl/homun_skill_tree.txt

@@ -1,15 +0,0 @@
-// Homunculus Skill Tree Database
-//
-// Structure of Database:
-// Class,SkillID,MaxLv,NeedLevel,Prerequisite SkillID1,Prerequisite SkillLv1,PrereqSkillID2,PrereqSkillLv2,PrereqSkillID3,PrereqSkillLv3,PrereqSkillID4,PrereqSkillLv4,PrereqSkillID5,PrereqSkillLv5,IntimacyLvReq //SKILLNAME#Skill Name#
-//
-// 01. Class                    Homunculus ID.
-// 02. SkillID                  Skill ID of the homunuculus skill.
-// 03. MaxLv                    Maximum level of the homunuculus skill.
-// 04. NeedLevel                Homunculus level required for the skill to become available
-// 05. Prerequisite SkillID     Homunculus skill required for the skill to become available.
-// 06. Prerequisite SkillLv     Level of the required homunculus skill.
-// ...
-// 15. IntimacyLvReq			Minimum level of intimacy to unlock skill.
-//
-// NOTE: MAX_PC_SKILL_REQUIRE (typically 5) ID/Lv pairs must be specified.

+ 0 - 20
db/import-tmpl/homunculus_db.txt

@@ -1,20 +0,0 @@
-// Homunculus Database
-//
-// Structure of Database:
-// Class,EvoClass,Name,FoodID,HungryDelay,BaseSize,EvoSize,Race,Element,bASPD,bHP,bSP,bSTR,bAGI,bVIT,bINT,bDEX,bLUK,gnHP,gxHP,gnSP,gxSP,gnSTR,gxSTR,gnAGI,gxAGI,gnVIT,gxVIT,gnINT,gxINT,gnDEX,gxDEX,gnLUK,gxLUK,enHP,exHP,enSP,exSP,enSTR,exSTR,enAGI,exAGI,enVIT,exVIT,enINT,exINT,enDEX,exDEX,enLUK,exLUK
-//
-// 01. Class        Homunculus ID.
-// 02. EvoClass     Homunculus ID of the evolved version.
-// 03. Name         Name of the homunculus.
-// 04. FoodID       Item ID of the homunuclus food.
-// 05. HungryDelay  Time interval in milliseconds after which the homunculus' hunger value is altered.
-// 06. BaseSize     Size of the base homunculus class (0 = small, 1 = normal, 2 = large).
-// 07. EvoSize      Size of the evolved homunculus class (0 = small, 1 = normal, 2 = large).
-// 08. Race         Race of the homunculus (0 = formless, 1 = undead, 2 = brute, 3 = plant, 4 = insect, 5 = fish, 6 = demon, 7 = demi-human, 8 = angel, 9 = dragon).
-// 09. Element      Element of the homunculus (0 = neutral, 1 = water, 2 = earth, 3 = fire, 4 = wind, 5 = poison, 6 = holy, 7 = dark, 8 = ghost, 9 = undead).
-//                  The element level is always 1.
-// ...
-//
-// Legend: b: base, gn: growth min, gx: growth max, en: evolution min, ex: evolution max
-// NOTE: Only the growth values are in a 1/10 scale, the other stats are 1/1 (eg: 5 gmAGI means 0.5 agi)
-

+ 57 - 0
db/import-tmpl/homunculus_db.yml

@@ -0,0 +1,57 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2023 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Homunculus Database
+###########################################################################
+#
+# Homunculus Settings
+#
+###########################################################################
+# - BaseClass               Base class.
+#   Name                    Name of homunculus.
+#   EvolutionClass          Evolution class.
+#   Food                    Homunculus food item. (Default: Pet_Food)
+#   HungryDelay             Time interval in milliseconds after which the hunger value is altered. (Default: 60000)
+#   Race                    Race. (Default: Demihuman)
+#   Element                 Element. (Default: Neutral)
+#   Size                    Size. (Default: Small)
+#   EvolutionSize           Evolution size. (Default: Medium)
+#   AttackDelay             Base ASPD. (Default: 700)
+#   Status:                 Homunculus stats.
+#     - Type                Type of status.
+#       Base                Base value of this status. (Default: 1)
+#       GrowthMinimum       Minimum growth of this status. (Default: 0)
+#       GrowthMaximum       Maximum growth of this status. (Default: 0)
+#       EvolutionMinimum    Minimum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#       EvolutionMaximum    Maximum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#   SkillTree:              Skill tree.
+#     - Skill               Skill name.
+#       Clear               True to remove the given skill name. (Optional)
+#       MaxLevel            Maximum level of skill.
+#       RequiredLevel       Required base level of homunculus to learn. (Default: 0)
+#       RequiredIntimacy    Required intimacy of homunculus to learn. (Default: 0)
+#       RequireEvolution    Require the homunculus to be evolved to be available. (Default: false)
+#       Required:           Prerequisite skills. (Default: null)
+#         - Skill           Prerequisite skill name.
+#           Level           Level of prerequisite skill.
+#           Clear           True to remove the given prerequisite skill name. (Optional)
+###########################################################################
+
+Header:
+  Type: HOMUNCULUS_DB
+  Version: 1

+ 33 - 0
db/import-tmpl/item_cash.yml

@@ -0,0 +1,33 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2022 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Item Cash Database
+###########################################################################
+#
+# Item Cash Settings
+#
+###########################################################################
+# - Tab                     Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
+#   Items:                  List of possible items.
+#     - Item                Item name.
+#       Price               Item cost in cash points (#CASHPOINTS).
+###########################################################################
+
+Header:
+  Type: ITEM_CASH_DB
+  Version: 1

+ 0 - 19
db/import-tmpl/item_cash_db.txt

@@ -1,19 +0,0 @@
-// Cash Shop Database
-// Contains the items sold in the ingame cash shop.
-//
-// Structure of Database:
-// Type,ItemID,Price
-//
-// Type:
-//    0: New
-//    1: Hot
-//    2: Limited
-//    3: Rental
-//    4: Gear
-//    5: Buff
-//    6: Heal
-//    7: Other
-//    8: Sale
-//
-// Price:
-//    Item cost, in cash points (#CASHPOINTS).

+ 37 - 0
db/item_cash.yml

@@ -0,0 +1,37 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2022 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Item Cash Database
+###########################################################################
+#
+# Item Cash Settings
+#
+###########################################################################
+# - Tab                     Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
+#   Items:                  List of possible items.
+#     - Item                Item name.
+#       Price               Item cost in cash points (#CASHPOINTS).
+###########################################################################
+
+Header:
+  Type: ITEM_CASH_DB
+  Version: 1
+
+Footer:
+  Imports:
+    - Path: db/import/item_cash.yml

BIN
db/map_cache.dat


+ 10 - 0
db/map_index.txt

@@ -1200,6 +1200,16 @@ hero_out3
 hero_out4
 hero_tra
 herosria
+1@vrac1
+1@vrac2
+1@vrclo
+1@vrhha
+2@vrclo
+bl_soul
+bl_temple
+bl_venom
+mjo_wst01
+ra_pol01
 
 //======================================================================================
 // - Other/Extra maps -

+ 235 - 1
db/pre-re/castle_db.yml

@@ -26,8 +26,242 @@
 #   Map               Map name to be considered as the castle map.
 #   Name              Name of the castle (used by scripts and guardian name tags).
 #   Npc               NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
+#   Type              The WoE type this castle belongs to. (Default: First_Edition)
+#   ClientId          Client side ID of the castle. (Default: 0)
+#   WarpEnabled       If the warp to the castle is enabled. (Default: false)
+#   WarpX             X coordinate to warp to. (Default: 0)
+#   WarpY             Y coordinate to warp to. (Default: 0)
+#   WarpCost          Zeny cost to use the warp. (Default: 100)
+#   WarpCostSiege     Zeny cost to use the warp during WoE. (Default: 100000)
 ###########################################################################
 
 Header:
   Type: CASTLE_DB
-  Version: 1
+  Version: 2
+
+Body:
+# WOE FE castle
+  - Id: 0
+    Map: aldeg_cas01
+    Name: Neuschwanstein
+    #Name: Noisyubantian
+    Npc: Agit#aldeg_cas01
+    Type: First_Edition
+    ClientId: 6
+  - Id: 1
+    Map: aldeg_cas02
+    Name: Hohenschwangau
+    #Name: Hohensyubangawoo
+    Npc: Agit#aldeg_cas02
+    Type: First_Edition
+    ClientId: 7
+  - Id: 2
+    Map: aldeg_cas03
+    Name: Nuernberg
+    #Name: Nyirenverk
+    Npc: Agit#aldeg_cas03
+    Type: First_Edition
+    ClientId: 8
+  - Id: 3
+    Map: aldeg_cas04
+    Name: Wuerzburg
+    #Name: Byirtsburi
+    Npc: Agit#aldeg_cas04
+    Type: First_Edition
+    ClientId: 9
+  - Id: 4
+    Map: aldeg_cas05
+    Name: Rothenburg
+    #Name: Rotenburk
+    Npc: Agit#aldeg_cas05
+    Type: First_Edition
+    ClientId: 10
+  - Id: 5
+    Map: gefg_cas01
+    Name: Repherion
+    #Name: Reprion
+    Npc: Agit#gefg_cas01
+    Type: First_Edition
+    ClientId: 11
+  - Id: 6
+    Map: gefg_cas02
+    Name: Eeyolbriggar
+    #Name: Yolbriger
+    Npc: Agit#gefg_cas02
+    Type: First_Edition
+    ClientId: 12
+  - Id: 7
+    Map: gefg_cas03
+    Name: Yesnelph
+    #Name: Isinlife
+    Npc: Agit#gefg_cas03
+    Type: First_Edition
+    ClientId: 13
+  - Id: 8
+    Map: gefg_cas04
+    Name: Bergel
+    #Name: Berigel
+    Npc: Agit#gefg_cas04
+    Type: First_Edition
+    ClientId: 14
+  - Id: 9
+    Map: gefg_cas05
+    Name: Mersetzdeitz
+    #Name: Melsedetsu
+    Npc: Agit#gefg_cas05
+    Type: First_Edition
+    ClientId: 15
+  - Id: 10
+    Map: payg_cas01
+    Name: Bright Arbor
+    #Name: Mingting
+    Npc: Agit#payg_cas01
+    Type: First_Edition
+    ClientId: 16
+  - Id: 11
+    Map: payg_cas02
+    Name: Scarlet Palace
+    #Name: Tiantan
+    Npc: Agit#payg_cas02
+    Type: First_Edition
+    ClientId: 17
+  - Id: 12
+    Map: payg_cas03
+    Name: Holy Shadow
+    #Name: Fuying
+    Npc: Agit#payg_cas03
+    Type: First_Edition
+    ClientId: 18
+  - Id: 13
+    Map: payg_cas04
+    Name: Sacred Altar
+    #Name: Honglou
+    Npc: Agit#payg_cas04
+    Type: First_Edition
+    ClientId: 19
+  - Id: 14
+    Map: payg_cas05
+    Name: Bamboo Grove Hill
+    #Name: Zhulinxian
+    Npc: Agit#payg_cas05
+    Type: First_Edition
+    ClientId: 20
+  - Id: 15
+    Map: prtg_cas01
+    Name: Kriemhild
+    #Name: Creamhilt
+    Npc: Agit#prtg_cas01
+    Type: First_Edition
+    ClientId: 1
+  - Id: 16
+    Map: prtg_cas02
+    Name: Swanhild
+    #Name: Sbanhealt
+    Npc: Agit#prtg_cas02
+    Type: First_Edition
+    ClientId: 2
+  - Id: 17
+    Map: prtg_cas03
+    Name: Fadhgridh
+    #Name: Lazrigees
+    Npc: Agit#prtg_cas03
+    Type: First_Edition
+    ClientId: 3
+  - Id: 18
+    Map: prtg_cas04
+    Name: Skoegul
+    #Name: Squagul
+    Npc: Agit#prtg_cas04
+    Type: First_Edition
+    ClientId: 4
+  - Id: 19
+    Map: prtg_cas05
+    Name: Gondul
+    #Name: Guindull
+    Npc: Agit#prtg_cas05
+    Type: First_Edition
+    ClientId: 5
+
+# WOE NGuild castle
+  - Id: 20
+    Map: nguild_alde
+    Name: Earth
+    Npc: Agit_N01
+    Type: First_Edition
+  - Id: 21
+    Map: nguild_gef
+    Name: Air
+    Npc: Agit_N02
+    Type: First_Edition
+  - Id: 22
+    Map: nguild_pay
+    Name: Water
+    Npc: Agit_N03
+    Type: First_Edition
+  - Id: 23
+    Map: nguild_prt
+    Name: Fire
+    Npc: Agit_N04
+    Type: First_Edition
+
+# WOE SE castle
+  - Id: 24
+    Map: schg_cas01
+    Name: Himinn
+    Npc: Manager#schg_cas01
+    Type: Second_Edition
+    ClientId: 26
+  - Id: 25
+    Map: schg_cas02
+    Name: Andlangr
+    Npc: Manager#schg_cas02
+    Type: Second_Edition
+    ClientId: 27
+  - Id: 26
+    Map: schg_cas03
+    Name: Viblainn
+    Npc: Manager#schg_cas03
+    Type: Second_Edition
+    ClientId: 28
+  - Id: 27
+    Map: schg_cas04
+    Name: Hljod
+    Npc: Manager#schg_cas04
+    Type: Second_Edition
+    ClientId: 29
+  - Id: 28
+    Map: schg_cas05
+    Name: Skidbladnir
+    Npc: Manager#schg_cas05
+    Type: Second_Edition
+    ClientId: 30
+  - Id: 29
+    Map: arug_cas01
+    Name: Mardol
+    Npc: Manager#arug_cas01
+    Type: Second_Edition
+    ClientId: 21
+  - Id: 30
+    Map: arug_cas02
+    Name: Cyr
+    Npc: Manager#arug_cas02
+    Type: Second_Edition
+    ClientId: 22
+  - Id: 31
+    Map: arug_cas03
+    Name: Horn
+    Npc: Manager#arug_cas03
+    Type: Second_Edition
+    ClientId: 23
+  - Id: 32
+    Map: arug_cas04
+    Name: Gefn
+    Npc: Manager#arug_cas04
+    Type: Second_Edition
+    ClientId: 24
+  - Id: 33
+    Map: arug_cas05
+    Name: Bandis
+    Npc: Manager#arug_cas05
+    Type: Second_Edition
+    ClientId: 25

+ 0 - 33
db/pre-re/homunculus_db.txt

@@ -1,33 +0,0 @@
-// Homunculus Database
-//
-// Structure of Database:
-// Class,EvoClass,Name,FoodID,HungryDelay,BaseSize,EvoSize,Race,Element,bASPD,bHP,bSP,bSTR,bAGI,bVIT,bINT,bDEX,bLUK,gnHP,gxHP,gnSP,gxSP,gnSTR,gxSTR,gnAGI,gxAGI,gnVIT,gxVIT,gnINT,gxINT,gnDEX,gxDEX,gnLUK,gxLUK,enHP,exHP,enSP,exSP,enSTR,exSTR,enAGI,exAGI,enVIT,exVIT,enINT,exINT,enDEX,exDEX,enLUK,exLUK
-//
-// 01. Class        Homunculus ID.
-// 02. EvoClass     Homunculus ID of the evolved version.
-// 03. Name         Name of the homunculus.
-// 04. FoodID       Item ID of the homunuclus food.
-// 05. HungryDelay  Time interval in milliseconds after which the homunculus' hunger value is altered.
-// 06. BaseSize     Size of the base homunculus class (0 = small, 1 = normal, 2 = large).
-// 07. EvoSize      Size of the evolved homunculus class (0 = small, 1 = normal, 2 = large).
-// 08. Race         Race of the homunculus (0 = formless, 1 = undead, 2 = brute, 3 = plant, 4 = insect, 5 = fish, 6 = demon, 7 = demi-human, 8 = angel, 9 = dragon).
-// 09. Element      Element of the homunculus (0 = neutral, 1 = water, 2 = earth, 3 = fire, 4 = wind, 5 = poison, 6 = holy, 7 = dark, 8 = ghost, 9 = undead).
-//                  The element level is always 1.
-// ...
-//
-// Legend: b: base, gn: growth min, gx: growth max, en: evolution min, ex: evolution max
-// NOTE: Only the growth values are in a 1/10 scale, the other stats are 1/1 (eg: 5 gmAGI means 0.5 agi)
-
-6001,6009,Lif,537,60000,0,1,7,0,700,150,40,17,20,15,35,24,12,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,1,10,10,20,1,5,1,4,1,5,4,10,1,10,1,3
-6002,6010,Amistr,912,60000,0,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,10,20,1,10,1,10,1,5,4,10,1,3,1,4,1,5
-6003,6011,Filir,910,60000,0,1,2,0,700,90,25,29,35,9,8,30,9,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,5,15,5,15,4,10,1,10,1,3,1,4,1,5,1,5
-6004,6012,Vanilmirth,911,60000,0,1,0,0,700,80,11,11,11,11,11,11,11,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,10,1,10,1,10,1,10,1,10,1,10
-6005,6013,Lif,537,60000,0,1,7,0,700,150,40,17,20,15,35,24,12,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,1,10,10,20,1,5,1,4,1,5,4,10,1,10,1,3
-6006,6014,Amistr,912,60000,0,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,10,20,1,10,1,10,1,5,4,10,1,3,1,4,1,5
-6007,6015,Filir,910,60000,0,1,2,0,700,90,25,29,35,9,8,30,9,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,5,15,5,15,4,10,1,10,1,3,1,4,1,5,1,5
-6008,6016,Vanilmirth,911,60000,0,1,0,0,700,80,11,11,11,11,11,11,11,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,10,1,10,1,10,1,10,1,10,1,10
-6048,6048,Eira,6098,60000,1,1,7,0,700,150,40,17,20,15,35,24,12,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,1,10,10,20,1,5,1,4,1,5,4,10,1,10,1,3
-6049,6049,Bayeri,6112,60000,1,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,10,20,1,10,1,10,1,5,4,10,1,3,1,4,1,5
-6050,6050,Sera,6108,60000,1,1,4,0,700,90,25,29,35,9,8,30,9,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,5,15,5,15,4,10,1,10,1,3,1,4,1,5,1,5
-6051,6051,Dieter,6104,60000,1,1,0,0,700,80,11,11,11,11,11,11,11,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,30,1,10,1,10,1,10,1,10,1,10,1,10
-6052,6052,Eleanor,6115,60000,1,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,10,20,1,10,1,10,1,5,4,10,1,3,1,4,1,5

+ 623 - 0
db/pre-re/homunculus_db.yml

@@ -0,0 +1,623 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2023 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Homunculus Database
+###########################################################################
+#
+# Homunculus Settings
+#
+###########################################################################
+# - BaseClass               Base class.
+#   Name                    Name of homunculus.
+#   EvolutionClass          Evolution class.
+#   Food                    Homunculus food item. (Default: Pet_Food)
+#   HungryDelay             Time interval in milliseconds after which the hunger value is altered. (Default: 60000)
+#   Race                    Race. (Default: Demihuman)
+#   Element                 Element. (Default: Neutral)
+#   Size                    Size. (Default: Small)
+#   EvolutionSize           Evolution size. (Default: Medium)
+#   AttackDelay             Base ASPD. (Default: 700)
+#   Status:                 Homunculus stats.
+#     - Type                Type of status.
+#       Base                Base value of this status. (Default: 1)
+#       GrowthMinimum       Minimum growth of this status. (Default: 0)
+#       GrowthMaximum       Maximum growth of this status. (Default: 0)
+#       EvolutionMinimum    Minimum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#       EvolutionMaximum    Maximum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#   SkillTree:              Skill tree.
+#     - Skill               Skill name.
+#       Clear               True to remove the given skill name. (Optional)
+#       MaxLevel            Maximum level of skill.
+#       RequiredLevel       Required base level of homunculus to learn. (Default: 0)
+#       RequiredIntimacy    Required intimacy of homunculus to learn. (Default: 0)
+#       RequireEvolution    Require the homunculus to be evolved to be available. (Default: false)
+#       Required:           Prerequisite skills. (Default: null)
+#         - Skill           Prerequisite skill name.
+#           Level           Level of prerequisite skill.
+#           Clear           True to remove the given prerequisite skill name. (Optional)
+###########################################################################
+
+Header:
+  Type: HOMUNCULUS_DB
+  Version: 1
+
+Body:
+  - Class: Lif
+    Name: Lif
+    EvolutionClass: Lif_H
+    Status:
+      - Type: Hp
+        Base: 150
+        GrowthMinimum: 60
+        GrowthMaximum: 100
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Sp
+        Base: 40
+        GrowthMinimum: 4
+        GrowthMaximum: 9
+        EvolutionMinimum: 10
+        EvolutionMaximum: 20
+      - Type: Str
+        Base: 17
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Agi
+        Base: 20
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Vit
+        Base: 15
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Int
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+    SkillTree:
+      - Skill: HLIF_HEAL
+        MaxLevel: 5
+      - Skill: HLIF_AVOID
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 3
+      - Skill: HLIF_BRAIN
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 5
+      - Skill: HLIF_CHANGE
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Amistr
+    Name: Amistr
+    EvolutionClass: Amistr_H
+    Food: Zargon
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 80
+        GrowthMaximum: 130
+        EvolutionMinimum: 10
+        EvolutionMaximum: 20
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 1
+        GrowthMaximum: 4
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+    SkillTree:
+      - Skill: HAMI_CASTLE
+        MaxLevel: 5
+      - Skill: HAMI_DEFENCE
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_CASTLE
+            Level: 5
+      - Skill: HAMI_SKIN
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_DEFENCE
+            Level: 3
+      - Skill: HAMI_BLOODLUST
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Filir
+    Name: Filir
+    EvolutionClass: Filir_H
+    Food: Garlet
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 90
+        GrowthMinimum: 45
+        GrowthMaximum: 75
+        EvolutionMinimum: 5
+        EvolutionMaximum: 15
+      - Type: Sp
+        Base: 25
+        GrowthMinimum: 3
+        GrowthMaximum: 6
+        EvolutionMinimum: 5
+        EvolutionMaximum: 15
+      - Type: Str
+        Base: 29
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 35
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Vit
+        Base: 9
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+      - Type: Int
+        Base: 8
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Dex
+        Base: 30
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Luk
+        Base: 9
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+    SkillTree:
+      - Skill: HFLI_MOON
+        MaxLevel: 5
+      - Skill: HFLI_FLEET
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_MOON
+            Level: 3
+      - Skill: HFLI_SPEED
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_FLEET
+            Level: 3
+      - Skill: HFLI_SBR44
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Vanilmirth
+    Name: Vanilmirth
+    EvolutionClass: Vanilmirth_H
+    Food: Scell
+    Race: Formless
+    Status:
+      - Type: Hp
+        Base: 80
+        GrowthMinimum: 30
+        GrowthMaximum: 150
+        EvolutionMinimum: 1
+        EvolutionMaximum: 30
+      - Type: Sp
+        Base: 11
+        GrowthMinimum: 0
+        GrowthMaximum: 7
+        EvolutionMinimum: 1
+        EvolutionMaximum: 30
+      - Type: Str
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Vit
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Dex
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Luk
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+    SkillTree:
+      - Skill: HVAN_CAPRICE
+        MaxLevel: 5
+      - Skill: HVAN_CHAOTIC
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 3
+      - Skill: HVAN_INSTRUCT
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 5
+      - Skill: HVAN_EXPLOSION
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Lif2
+    Name: Lif
+    EvolutionClass: Lif_H2
+    Status:
+      - Type: Hp
+        Base: 150
+        GrowthMinimum: 60
+        GrowthMaximum: 100
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Sp
+        Base: 40
+        GrowthMinimum: 4
+        GrowthMaximum: 9
+        EvolutionMinimum: 10
+        EvolutionMaximum: 20
+      - Type: Str
+        Base: 17
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Agi
+        Base: 20
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Vit
+        Base: 15
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Int
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+    SkillTree:
+      - Skill: HLIF_HEAL
+        MaxLevel: 5
+      - Skill: HLIF_AVOID
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 3
+      - Skill: HLIF_BRAIN
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 5
+      - Skill: HLIF_CHANGE
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Amistr2
+    Name: Amistr
+    EvolutionClass: Amistr_H2
+    Food: Zargon
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 80
+        GrowthMaximum: 130
+        EvolutionMinimum: 10
+        EvolutionMaximum: 20
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 1
+        GrowthMaximum: 4
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+    SkillTree:
+      - Skill: HAMI_CASTLE
+        MaxLevel: 5
+      - Skill: HAMI_DEFENCE
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_CASTLE
+            Level: 5
+      - Skill: HAMI_SKIN
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_DEFENCE
+            Level: 3
+      - Skill: HAMI_BLOODLUST
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Filir2
+    Name: Filir
+    EvolutionClass: Filir_H2
+    Food: Garlet
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 90
+        GrowthMinimum: 45
+        GrowthMaximum: 75
+        EvolutionMinimum: 5
+        EvolutionMaximum: 15
+      - Type: Sp
+        Base: 25
+        GrowthMinimum: 3
+        GrowthMaximum: 6
+        EvolutionMinimum: 5
+        EvolutionMaximum: 15
+      - Type: Str
+        Base: 29
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 4
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 35
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Vit
+        Base: 9
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 1
+        EvolutionMaximum: 3
+      - Type: Int
+        Base: 8
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 4
+      - Type: Dex
+        Base: 30
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+      - Type: Luk
+        Base: 9
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 1
+        EvolutionMaximum: 5
+    SkillTree:
+      - Skill: HFLI_MOON
+        MaxLevel: 5
+      - Skill: HFLI_FLEET
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_MOON
+            Level: 3
+      - Skill: HFLI_SPEED
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_FLEET
+            Level: 3
+      - Skill: HFLI_SBR44
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Vanilmirth2
+    Name: Vanilmirth
+    EvolutionClass: Vanilmirth_H2
+    Food: Scell
+    Race: Formless
+    Status:
+      - Type: Hp
+        Base: 80
+        GrowthMinimum: 30
+        GrowthMaximum: 150
+        EvolutionMinimum: 1
+        EvolutionMaximum: 30
+      - Type: Sp
+        Base: 11
+        GrowthMinimum: 0
+        GrowthMaximum: 7
+        EvolutionMinimum: 1
+        EvolutionMaximum: 30
+      - Type: Str
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Agi
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Vit
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Dex
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+      - Type: Luk
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 1
+        EvolutionMaximum: 10
+    SkillTree:
+      - Skill: HVAN_CAPRICE
+        MaxLevel: 5
+      - Skill: HVAN_CHAOTIC
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 3
+      - Skill: HVAN_INSTRUCT
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 5
+      - Skill: HVAN_EXPLOSION
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true

+ 0 - 19
db/pre-re/item_cash_db.txt

@@ -1,19 +0,0 @@
-// Cash Shop Database
-// Contains the items sold in the ingame cash shop.
-//
-// Structure of Database:
-// Type,ItemID,Price
-//
-// Type:
-//    0: New
-//    1: Hot
-//    2: Limited
-//    3: Rental
-//    4: Gear
-//    5: Buff
-//    6: Heal
-//    7: Other
-//    8: Sale
-//
-// Price:
-//    Item cost, in cash points (#CASHPOINTS).

+ 42 - 0
db/pre-re/item_group_db.yml

@@ -7433,3 +7433,45 @@ Body:
             Rate: 1
           - Item: Gold_Tiara_
             Rate: 1
+  - Group: MF_NOTELEPORT
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Wing_Of_Fly
+          - Item: Giant_Fly_Wing
+          - Item: N_Fly_Wing
+          - Item: E_Giant_Fly_Wing
+          - Item: F_Giant_Fly_Wing
+  - Group: MF_NORETURN
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Wing_Of_Butterfly
+          - Item: N_Butterfly_Wing
+          - Item: Dun_Tele_Scroll1
+          - Item: Dun_Tele_Scroll2
+          - Item: Dun_Tele_Scroll3
+          - Item: E_Dun_Tele_Scroll1
+          - Item: F_Dun_Tele_Scroll1
+          - Item: WOB_Rune
+          - Item: E_WOB_Rune
+          - Item: F_WOB_Rune
+          - Item: WOB_Schwaltz
+          - Item: E_WOB_Schwaltz
+          - Item: F_WOB_Schwaltz
+          - Item: WOB_Rachel
+          - Item: E_WOB_Rachel
+          - Item: F_WOB_Rachel
+          - Item: WOB_Local
+          - Item: E_WOB_Local
+          - Item: F_WOB_Local
+          - Item: Siege_Teleport_Scroll
+          - Item: Siege_Teleport_Scroll2
+          - Item: E_Siege_Teleport_Scroll
+  - Group: GIANT_FLY_WING
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Giant_Fly_Wing
+          - Item: E_Giant_Fly_Wing
+          - Item: F_Giant_Fly_Wing

+ 94 - 1
db/pre-re/status.yml

@@ -245,6 +245,7 @@ Body:
       BossResist: true
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     Fail:
       Refresh: true
       Inspiration: true
@@ -273,6 +274,7 @@ Body:
       BossResist: true
       Debuff: true
       NoSaveInfinite: true
+      RemoveOnHermode: true
     EndOnStart:
       Freeze: true
       Stone: true
@@ -296,6 +298,7 @@ Body:
       Quicken: true
     Flags:
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Decreaseagi: true
   - Status: Concentrate
@@ -306,6 +309,7 @@ Body:
       Dex: true
     Flags:
       FailedMado: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Hiding
@@ -356,6 +360,7 @@ Body:
       Atk_Ele: true
     Flags:
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Aspersio: true
       Fireweapon: true
@@ -368,6 +373,8 @@ Body:
   - Status: Poisonreact
     Icon: EFST_POISONREACT
     DurationLookup: AS_POISONREACT
+    Flags:
+      RemoveOnHermode: true
   - Status: Quagmire
     Icon: EFST_QUAGMIRE
     DurationLookup: WZ_QUAGMIRE
@@ -380,6 +387,7 @@ Body:
       NoSave: true
       NoClearance: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
       Speedup1: true
     EndOnStart:
@@ -407,6 +415,7 @@ Body:
       Angelus: true
     Flags:
       SendOption: true
+      RemoveOnHermode: true
   - Status: Blessing
     Icon: EFST_BLESSING
     DurationLookup: AL_BLESSING
@@ -417,6 +426,7 @@ Body:
     Flags:
       BossResist: true
       TaekwonAngel: true
+      RemoveOnHermode: true
   - Status: Signumcrucis
     Icon: EFST_CRUCIS
     DurationLookup: AL_CRUCIS
@@ -436,6 +446,7 @@ Body:
     Flags:
       FailedMado: true
       TaekwonAngel: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
     EndOnStart:
@@ -451,6 +462,7 @@ Body:
       BossResist: true
       NoSave: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
       Speedup1: true
     EndOnStart:
@@ -469,6 +481,7 @@ Body:
     DurationLookup: PR_SLOWPOISON
     Flags:
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Impositio
     Icon: EFST_IMPOSITIO
     DurationLookup: PR_IMPOSITIO
@@ -476,6 +489,7 @@ Body:
       Watk: true
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
       Impositio: true
   - Status: Suffragium
@@ -483,6 +497,7 @@ Body:
     DurationLookup: PR_SUFFRAGIUM
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aspersio
     Icon: EFST_ASPERSIO
     DurationLookup: PR_ASPERSIO
@@ -490,6 +505,7 @@ Body:
       Atk_Ele: true
     Flags:
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Fireweapon: true
@@ -508,11 +524,13 @@ Body:
       NoSave: true
       NoClearance: true
       #RemoveOnUnequipArmor: true
+      RemoveOnHermode: true
   - Status: Kyrie
     Icon: EFST_KYRIE
     DurationLookup: PR_KYRIE
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
       Assumptio: true
   - Status: Magnificat
@@ -524,6 +542,7 @@ Body:
       FailedMado: true
       NoSave: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Gloria
     Icon: EFST_GLORIA
     DurationLookup: PR_GLORIA
@@ -531,11 +550,13 @@ Body:
       Luk: true
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aeterna
     Icon: EFST_LEXAETERNA
     DurationLookup: PR_LEXAETERNA
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Stone: true
       Freeze: true
@@ -547,6 +568,7 @@ Body:
     Flags:
       MadoCancel: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
       Decreaseagi: true
@@ -555,6 +577,7 @@ Body:
     DurationLookup: BS_WEAPONPERFECT
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Overthrust
     Icon: EFST_OVERTHRUST
     DurationLookup: BS_OVERTHRUST
@@ -562,6 +585,7 @@ Body:
       OverThrust: true
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
     Fail:
       Maxoverthrust: true
   - Status: Maximizepower
@@ -571,6 +595,7 @@ Body:
       Regen: true
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Trickdead
     Icon: EFST_TRICKDEAD
     DurationLookup: NV_TRICKDEAD
@@ -590,6 +615,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
     EndOnStart:
       Dancing: true
   - Status: Loud
@@ -599,11 +625,14 @@ Body:
       Str: true
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Energycoat
     Icon: EFST_ENERGYCOAT
     DurationLookup: MG_ENERGYCOAT
     Opt3:
       EnergyCoat: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Brokenarmor
     Icon: EFST_BROKENARMOR
     DurationLookup: NPC_ARMORBRAKE
@@ -655,12 +684,14 @@ Body:
     Flags:
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion2
     Icon: EFST_ATTHASTE_POTION3
     CalcFlags:
       Aspd: true
     Flags:
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion3
     Icon: EFST_ATTHASTE_INFINITY
     CalcFlags:
@@ -668,6 +699,7 @@ Body:
     Flags:
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Speedup0
     Icon: EFST_MOVHASTE_HORSE
     CalcFlags:
@@ -685,6 +717,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Atkpotion
     Icon: EFST_PLUSATTACKPOWER
     CalcFlags:
@@ -693,6 +726,7 @@ Body:
       NoRemoveOnDead: true
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Matkpotion
     Icon: EFST_PLUSMAGICPOWER
     CalcFlags:
@@ -701,6 +735,7 @@ Body:
       NoRemoveOnDead: true
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Wedding
     States:
       NoAttack: true
@@ -743,6 +778,8 @@ Body:
     CalcFlags:
       Mdef: true
       Def: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Stripweapon
     Icon: EFST_NOEQUIPWEAPON
     DurationLookup: RG_STRIPWEAPON
@@ -755,6 +792,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Stripshield
     Icon: EFST_NOEQUIPSHIELD
     DurationLookup: RG_STRIPSHIELD
@@ -767,6 +805,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striparmor
     Icon: EFST_NOEQUIPARMOR
     DurationLookup: RG_STRIPARMOR
@@ -779,6 +818,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striphelm
     Icon: EFST_NOEQUIPHELM
     DurationLookup: RG_STRIPHELM
@@ -791,6 +831,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Cp_Weapon
     Icon: EFST_PROTECTWEAPON
     DurationLookup: AM_CP_WEAPON
@@ -800,6 +841,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Shield
     Icon: EFST_PROTECTSHIELD
     DurationLookup: AM_CP_SHIELD
@@ -809,6 +851,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Armor
     Icon: EFST_PROTECTARMOR
     DurationLookup: AM_CP_ARMOR
@@ -818,6 +861,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Helm
     Icon: EFST_PROTECTHELM
     DurationLookup: AM_CP_HELM
@@ -827,18 +871,21 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Autoguard
     Icon: EFST_AUTOGUARD
     DurationLookup: CR_AUTOGUARD
     Flags:
       NoClearance: true
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Reflectshield
     Icon: EFST_REFLECTSHIELD
     DurationLookup: CR_REFLECTSHIELD
     Flags:
       NoClearance: true
       RequireShield: true
+      RemoveOnHermode: true
     EndOnStart:
       Reflectdamage: true
   - Status: Splasher
@@ -851,6 +898,7 @@ Body:
       All: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Defender
     Icon: EFST_DEFENDER
     DurationLookup: CR_DEFENDER
@@ -859,11 +907,13 @@ Body:
       Aspd: true
     Flags:
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Magicrod
     Icon: EFST_MAGICROD
     DurationLookup: SA_MAGICROD
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Spellbreaker
     Flags:
       NoWarning: true
@@ -897,6 +947,7 @@ Body:
     Flags:
       FailedMado: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Autocounter
@@ -951,6 +1002,7 @@ Body:
       Debuff: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Combo
     Flags:
       NoClearbuff: true
@@ -981,6 +1033,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Fireweapon
     Icon: EFST_PROPERTYFIRE
     DurationLookup: SA_FLAMELAUNCHER
@@ -1049,6 +1102,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Deluge
     Icon: EFST_GROUNDMAGIC
     DurationLookup: SA_DELUGE
@@ -1108,6 +1162,7 @@ Body:
     Flags:
       NoSave: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Parrying
     Icon: EFST_PARRYING
     DurationLookup: LK_PARRYING
@@ -1115,6 +1170,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Concentration
     Icon: EFST_LKCONCENTRATION
     DurationLookup: LK_CONCENTRATION
@@ -1128,6 +1184,7 @@ Body:
       Quicken: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Tensionrelax
     Icon: EFST_TENSIONRELAX
     DurationLookup: LK_TENSIONRELAX
@@ -1136,6 +1193,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Berserk
     Icon: EFST_BERSERK
     DurationLookup: LK_BERSERK
@@ -1176,6 +1234,7 @@ Body:
       Aspd: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Assumptio
     Icon: EFST_ASSUMPTIO
     DurationLookup: HP_ASSUMPTIO
@@ -1184,6 +1243,8 @@ Body:
     EndOnStart:
       Kyrie: true
       Kaite: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Basilica
     DurationLookup: HP_BASILICA
     States:
@@ -1194,6 +1255,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Guildaura
     Flags:
       NoDispell: true
@@ -1206,6 +1268,7 @@ Body:
       Matk: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
       Magicpower: true
   - Status: Edp
@@ -1231,6 +1294,7 @@ Body:
     Flags:
       FailedMado: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Windwalk
@@ -1242,6 +1306,7 @@ Body:
     Flags:
       FailedMado: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Meltdown
@@ -1335,6 +1400,7 @@ Body:
       Debuff: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
       Blessing: true
       Increaseagi: true
@@ -1350,6 +1416,7 @@ Body:
       NoSave: true
       NoClearance: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Mindbreaker
     Icon: EFST_MINDBREAKER
     DurationLookup: PF_MINDBREAKER
@@ -1359,6 +1426,7 @@ Body:
     Flags:
       NoSave: true
       Debuff: true
+      RemoveOnHermode: true
     EndOnStart:
       Freeze: true
       Stone: true
@@ -1368,6 +1436,7 @@ Body:
     DurationLookup: PF_MEMORIZE
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Fogwall
     Icon: EFST_FOGWALL
     DurationLookup: PF_FOGWALL
@@ -1375,6 +1444,7 @@ Body:
       BossResist: true
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Spiderweb
     Icon: EFST_SPIDERWEB
     DurationLookup: PF_SPIDERWEB
@@ -1397,6 +1467,7 @@ Body:
       NoSave: true
       RemoveOnChangeMap: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
     EndOnEnd:
       Autoguard: true
       Defender: true
@@ -1404,6 +1475,8 @@ Body:
       Endure: true
   - Status: Sacrifice
     DurationLookup: PA_SACRIFICE
+    Flags:
+      RemoveOnHermode: true
   - Status: Steelbody
     Icon: EFST_STEELBODY
     DurationLookup: MO_STEELBODY
@@ -1416,6 +1489,7 @@ Body:
       Speed: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     Opt3:
       SteelBody: true
   - Status: Orcish
@@ -1480,6 +1554,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Shadowweapon
     Icon: EFST_PROPERTYDARK
     DurationLookup: TK_SEVENWIND
@@ -1488,6 +1563,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Aspersio: true
@@ -1505,6 +1581,7 @@ Body:
       MadoCancel: true
       NoSave: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
       Decreaseagi: true
@@ -1516,6 +1593,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Aspersio: true
@@ -1533,6 +1611,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Kaahi: true
   - Status: Kaupe
@@ -1541,6 +1620,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Onehand
     Icon: EFST_ONEHANDQUICKEN
     DurationLookup: KN_ONEHAND
@@ -1552,6 +1632,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Decreaseagi: true
     EndOnStart:
@@ -1564,6 +1645,7 @@ Body:
     DurationLookup: ST_PRESERVE
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Battleorders
     Icon: EFST_GDSKILL_BATTLEORDER
     DurationLookup: GD_BATTLEORDER
@@ -1587,6 +1669,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Gravitation
     Icon: EFST_GRAVITATION
     DurationLookup: HW_GRAVITATION
@@ -1601,6 +1684,7 @@ Body:
       BossResist: true
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Maxoverthrust
     Icon: EFST_OVERTHRUSTMAX
     DurationLookup: WS_OVERTHRUSTMAX
@@ -1609,6 +1693,7 @@ Body:
     Flags:
       MadoCancel: true
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
       Overthrust: true
   - Status: Longing
@@ -1855,6 +1940,7 @@ Body:
       NoClearance: true
       RemoveOnChangeMap: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Spurt
     Icon: EFST_STRUP
     DurationLookup: TK_RUN
@@ -1864,6 +1950,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Spirit
     Icon: EFST_SOULLINK
     DurationLookup: SL_HIGH
@@ -1875,6 +1962,7 @@ Body:
       NoClearance: true
       NoSave: true
       NoBanishingBuster: true
+      RemoveOnHermode: true
   - Status: Coma
     DurationLookup: NPC_DARKBLESSING
     Flags:
@@ -1987,7 +2075,6 @@ Body:
     Flags:
       NoRemoveOnDead: true
       NoClearbuff: true
-      NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
   - Status: Incmhprate
@@ -2223,6 +2310,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Assumptio: true
   - Status: Swoo
@@ -2322,6 +2410,7 @@ Body:
       NoClearance: true
       NoBanishingBuster: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Bunsinjyutsu
     Icon: EFST_NJ_BUNSINJYUTSU
     DurationLookup: NJ_BUNSINJYUTSU
@@ -2332,6 +2421,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Kaensin
     Flags:
       NoWarning: true
@@ -2446,6 +2536,7 @@ Body:
       SendVal1: true
       OverlapIgnoreLevel: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Enchantarms: true
       Aspersio: true
@@ -5750,6 +5841,7 @@ Body:
       RemoveOnChangeMap: true
       NoBanishingBuster: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Mtf_Aspd2
     Icon: EFST_MTF_ASPD2
     CalcFlags:
@@ -6354,6 +6446,7 @@ Body:
     Flags:
       NoRemoveOnDead: true
       NoClearbuff: true
+      RemoveOnHermode: true
   - Status: Geffen_Magic2
     Icon: EFST_GEFFEN_MAGIC2
     CalcFlags:

+ 22 - 22
db/re/attr_fix.yml

@@ -120,7 +120,7 @@ Body:
       Holy: 125
       Dark: 0
       Ghost: 100
-      Undead: -25
+      Undead: 0
     Ghost:
       Neutral: 90
       Water: 100
@@ -136,8 +136,8 @@ Body:
       Neutral: 100
       Water: 100
       Earth: 100
-      Fire: 100
-      Wind: 90
+      Fire: 90
+      Wind: 100
       Poison: 75
       Holy: 125
       Dark: 0
@@ -217,7 +217,7 @@ Body:
       Fire: 100
       Wind: 100
       Poison: 75
-      Holy: -25
+      Holy: 0
       Dark: 150
       Ghost: 100
       Undead: 150
@@ -229,9 +229,9 @@ Body:
       Wind: 100
       Poison: 75
       Holy: 150
-      Dark: -25
+      Dark: 0
       Ghost: 100
-      Undead: -50
+      Undead: 0
     Ghost:
       Neutral: 70
       Water: 100
@@ -268,7 +268,7 @@ Body:
       Undead: 100
     Water:
       Neutral: 100
-      Water: -25
+      Water: 0
       Earth: 100
       Fire: 200
       Wind: 70
@@ -280,7 +280,7 @@ Body:
     Earth:
       Neutral: 100
       Water: 100
-      Earth: -25
+      Earth: 0
       Fire: 70
       Wind: 200
       Poison: 125
@@ -292,7 +292,7 @@ Body:
       Neutral: 100
       Water: 70
       Earth: 200
-      Fire: -25
+      Fire: 0
       Wind: 100
       Poison: 125
       Holy: 100
@@ -304,7 +304,7 @@ Body:
       Water: 200
       Earth: 70
       Fire: 100
-      Wind: -25
+      Wind: 0
       Poison: 125
       Holy: 100
       Dark: 100
@@ -328,7 +328,7 @@ Body:
       Fire: 100
       Wind: 100
       Poison: 50
-      Holy: -50
+      Holy: 0
       Dark: 175
       Ghost: 100
       Undead: 175
@@ -340,9 +340,9 @@ Body:
       Wind: 100
       Poison: 50
       Holy: 175
-      Dark: -50
+      Dark: 0
       Ghost: 100
-      Undead: -75
+      Undead: 0
     Ghost:
       Neutral: 50
       Water: 100
@@ -379,7 +379,7 @@ Body:
       Undead: 100
     Water:
       Neutral: 100
-      Water: -50
+      Water: 0
       Earth: 100
       Fire: 200
       Wind: 60
@@ -391,7 +391,7 @@ Body:
     Earth:
       Neutral: 100
       Water: 100
-      Earth: -50
+      Earth: 0
       Fire: 60
       Wind: 200
       Poison: 125
@@ -403,7 +403,7 @@ Body:
       Neutral: 100
       Water: 60
       Earth: 200
-      Fire: -50
+      Fire: 0
       Wind: 100
       Poison: 125
       Holy: 100
@@ -415,7 +415,7 @@ Body:
       Water: 200
       Earth: 60
       Fire: 100
-      Wind: -50
+      Wind: 0
       Poison: 125
       Holy: 100
       Dark: 100
@@ -431,7 +431,7 @@ Body:
       Holy: 50
       Dark: 50
       Ghost: 50
-      Undead: -100
+      Undead: 0
     Holy:
       Neutral: 100
       Water: 100
@@ -439,7 +439,7 @@ Body:
       Fire: 100
       Wind: 100
       Poison: 50
-      Holy: -100
+      Holy: 0
       Dark: 200
       Ghost: 100
       Undead: 200
@@ -451,9 +451,9 @@ Body:
       Wind: 100
       Poison: 50
       Holy: 200
-      Dark: -100
+      Dark: 0
       Ghost: 100
-      Undead: -100
+      Undead: 0
     Ghost:
       Neutral: 0
       Water: 100
@@ -471,7 +471,7 @@ Body:
       Earth: 100
       Fire: 60
       Wind: 100
-      Poison: -25
+      Poison: 0
       Holy: 200
       Dark: 0
       Ghost: 175

+ 334 - 1
db/re/castle_db.yml

@@ -26,51 +26,384 @@
 #   Map               Map name to be considered as the castle map.
 #   Name              Name of the castle (used by scripts and guardian name tags).
 #   Npc               NPC unique name to invoke ::OnGuildBreak on, when a occupied castle is abandoned during guild break.
+#   Type              The WoE type this castle belongs to. (Default: First_Edition)
+#   ClientId          Client side ID of the castle. (Default: 0)
+#   WarpEnabled       If the warp to the castle is enabled. (Default: false)
+#   WarpX             X coordinate to warp to. (Default: 0)
+#   WarpY             Y coordinate to warp to. (Default: 0)
+#   WarpCost          Zeny cost to use the warp. (Default: 100)
+#   WarpCostSiege     Zeny cost to use the warp during WoE. (Default: 100000)
 ###########################################################################
 
 Header:
   Type: CASTLE_DB
-  Version: 1
+  Version: 2
 
 Body:
+# WOE FE castle
+  - Id: 0
+    Map: aldeg_cas01
+    Name: Neuschwanstein
+    #Name: Noisyubantian
+    Npc: Agit#aldeg_cas01
+    Type: First_Edition
+    ClientId: 6
+    WarpEnabled: true
+    WarpX: 212
+    WarpY: 175
+  - Id: 1
+    Map: aldeg_cas02
+    Name: Hohenschwangau
+    #Name: Hohensyubangawoo
+    Npc: Agit#aldeg_cas02
+    Type: First_Edition
+    ClientId: 7
+    WarpEnabled: true
+    WarpX: 82
+    WarpY: 71
+  - Id: 2
+    Map: aldeg_cas03
+    Name: Nuernberg
+    #Name: Nyirenverk
+    Npc: Agit#aldeg_cas03
+    Type: First_Edition
+    ClientId: 8
+    WarpEnabled: true
+    WarpX: 109
+    WarpY: 112
+  - Id: 3
+    Map: aldeg_cas04
+    Name: Wuerzburg
+    #Name: Byirtsburi
+    Npc: Agit#aldeg_cas04
+    Type: First_Edition
+    ClientId: 9
+    WarpEnabled: true
+    WarpX: 60
+    WarpY: 116
+  - Id: 4
+    Map: aldeg_cas05
+    Name: Rothenburg
+    #Name: Rotenburk
+    Npc: Agit#aldeg_cas05
+    Type: First_Edition
+    ClientId: 10
+    WarpEnabled: true
+    WarpX: 61
+    WarpY: 185
+  - Id: 5
+    Map: gefg_cas01
+    Name: Repherion
+    #Name: Reprion
+    Npc: Agit#gefg_cas01
+    Type: First_Edition
+    ClientId: 11
+    WarpEnabled: true
+    WarpX: 40
+    WarpY: 43
+  - Id: 6
+    Map: gefg_cas02
+    Name: Eeyolbriggar
+    #Name: Yolbriger
+    Npc: Agit#gefg_cas02
+    Type: First_Edition
+    ClientId: 12
+    WarpEnabled: true
+    WarpX: 22
+    WarpY: 66
+  - Id: 7
+    Map: gefg_cas03
+    Name: Yesnelph
+    #Name: Isinlife
+    Npc: Agit#gefg_cas03
+    Type: First_Edition
+    ClientId: 13
+    WarpEnabled: true
+    WarpX: 112
+    WarpY: 23
+  - Id: 8
+    Map: gefg_cas04
+    Name: Bergel
+    #Name: Berigel
+    Npc: Agit#gefg_cas04
+    Type: First_Edition
+    ClientId: 14
+    WarpEnabled: true
+    WarpX: 58
+    WarpY: 46
+  - Id: 9
+    Map: gefg_cas05
+    Name: Mersetzdeitz
+    #Name: Melsedetsu
+    Npc: Agit#gefg_cas05
+    Type: First_Edition
+    ClientId: 15
+    WarpEnabled: true
+    WarpX: 66
+    WarpY: 48
+  - Id: 10
+    Map: payg_cas01
+    Name: Bright Arbor
+    #Name: Mingting
+    Npc: Agit#payg_cas01
+    Type: First_Edition
+    ClientId: 16
+    WarpEnabled: true
+    WarpX: 115
+    WarpY: 57
+  - Id: 11
+    Map: payg_cas02
+    Name: Scarlet Palace
+    #Name: Tiantan
+    Npc: Agit#payg_cas02
+    Type: First_Edition
+    ClientId: 17
+    WarpEnabled: true
+    WarpX: 26
+    WarpY: 265
+  - Id: 12
+    Map: payg_cas03
+    Name: Holy Shadow
+    #Name: Fuying
+    Npc: Agit#payg_cas03
+    Type: First_Edition
+    ClientId: 18
+    WarpEnabled: true
+    WarpX: 43
+    WarpY: 264
+  - Id: 13
+    Map: payg_cas04
+    Name: Sacred Altar
+    #Name: Honglou
+    Npc: Agit#payg_cas04
+    Type: First_Edition
+    ClientId: 19
+    WarpEnabled: true
+    WarpX: 36
+    WarpY: 272
+  - Id: 14
+    Map: payg_cas05
+    Name: Bamboo Grove Hill
+    #Name: Zhulinxian
+    Npc: Agit#payg_cas05
+    Type: First_Edition
+    ClientId: 20
+    WarpEnabled: true
+    WarpX: 274
+    WarpY: 246
+  - Id: 15
+    Map: prtg_cas01
+    Name: Kriemhild
+    #Name: Creamhilt
+    Npc: Agit#prtg_cas01
+    Type: First_Edition
+    ClientId: 1
+    WarpEnabled: true
+    WarpX: 107
+    WarpY: 180
+  - Id: 16
+    Map: prtg_cas02
+    Name: Swanhild
+    #Name: Sbanhealt
+    Npc: Agit#prtg_cas02
+    Type: First_Edition
+    ClientId: 2
+    WarpEnabled: true
+    WarpX: 94
+    WarpY: 56
+  - Id: 17
+    Map: prtg_cas03
+    Name: Fadhgridh
+    #Name: Lazrigees
+    Npc: Agit#prtg_cas03
+    Type: First_Edition
+    ClientId: 3
+    WarpEnabled: true
+    WarpX: 46
+    WarpY: 97
+  - Id: 18
+    Map: prtg_cas04
+    Name: Skoegul
+    #Name: Squagul
+    Npc: Agit#prtg_cas04
+    Type: First_Edition
+    ClientId: 4
+    WarpEnabled: true
+    WarpX: 260
+    WarpY: 262
+  - Id: 19
+    Map: prtg_cas05
+    Name: Gondul
+    #Name: Guindull
+    Npc: Agit#prtg_cas05
+    Type: First_Edition
+    ClientId: 5
+    WarpEnabled: true
+    WarpX: 26
+    WarpY: 38
+
+# WOE NGuild castle
+  - Id: 20
+    Map: nguild_alde
+    Name: Earth
+    Npc: Agit_N01
+    Type: First_Edition
+  - Id: 21
+    Map: nguild_gef
+    Name: Air
+    Npc: Agit_N02
+    Type: First_Edition
+  - Id: 22
+    Map: nguild_pay
+    Name: Water
+    Npc: Agit_N03
+    Type: First_Edition
+  - Id: 23
+    Map: nguild_prt
+    Name: Fire
+    Npc: Agit_N04
+    Type: First_Edition
+
+# WOE SE castle
+  - Id: 24
+    Map: schg_cas01
+    Name: Himinn
+    Npc: Manager#schg_cas01
+    Type: Second_Edition
+    ClientId: 26
+    WarpEnabled: true
+    WarpX: 233
+    WarpY: 300
+  - Id: 25
+    Map: schg_cas02
+    Name: Andlangr
+    Npc: Manager#schg_cas02
+    Type: Second_Edition
+    ClientId: 27
+    WarpEnabled: true
+    WarpX: 101
+    WarpY: 372
+  - Id: 26
+    Map: schg_cas03
+    Name: Viblainn
+    Npc: Manager#schg_cas03
+    Type: Second_Edition
+    ClientId: 28
+    WarpEnabled: true
+    WarpX: 81
+    WarpY: 94
+  - Id: 27
+    Map: schg_cas04
+    Name: Hljod
+    Npc: Manager#schg_cas04
+    Type: Second_Edition
+    ClientId: 29
+    WarpEnabled: true
+    WarpX: 233
+    WarpY: 300
+  - Id: 28
+    Map: schg_cas05
+    Name: Skidbladnir
+    Npc: Manager#schg_cas05
+    Type: Second_Edition
+    ClientId: 30
+    WarpEnabled: true
+    WarpX: 233
+    WarpY: 300
+  - Id: 29
+    Map: arug_cas01
+    Name: Mardol
+    Npc: Manager#arug_cas01
+    Type: Second_Edition
+    ClientId: 21
+    WarpEnabled: true
+    WarpX: 77
+    WarpY: 371
+  - Id: 30
+    Map: arug_cas02
+    Name: Cyr
+    Npc: Manager#arug_cas02
+    Type: Second_Edition
+    ClientId: 22
+    WarpEnabled: true
+    WarpX: 301
+    WarpY: 332
+  - Id: 31
+    Map: arug_cas03
+    Name: Horn
+    Npc: Manager#arug_cas03
+    Type: Second_Edition
+    ClientId: 23
+    WarpEnabled: true
+    WarpX: 322
+    WarpY: 91
+  - Id: 32
+    Map: arug_cas04
+    Name: Gefn
+    Npc: Manager#arug_cas04
+    Type: Second_Edition
+    ClientId: 24
+    WarpEnabled: true
+    WarpX: 322
+    WarpY: 91
+  - Id: 33
+    Map: arug_cas05
+    Name: Bandis
+    Npc: Manager#arug_cas05
+    Type: Second_Edition
+    ClientId: 25
+    WarpEnabled: true
+    WarpX: 322
+    WarpY: 91
+
 # WOE TE castle
   - Id: 34
     Map: te_aldecas1
     Name: Kafragarten 1
     Npc: Manager_TE#Glaris
+    Type: Third_Edition
   - Id: 35
     Map: te_aldecas2
     Name: Kafragarten 2
     Npc: Manager_TE#Defolty
+    Type: Third_Edition
   - Id: 36
     Map: te_aldecas3
     Name: Kafragarten 3
     Npc: Manager_TE#Sorin
+    Type: Third_Edition
   - Id: 37
     Map: te_aldecas4
     Name: Kafragarten 4
     Npc: Manager_TE#Bennit
+    Type: Third_Edition
   - Id: 38
     Map: te_aldecas5
     Name: Kafragarten 5
     Npc: Manager_TE#W
+    Type: Third_Edition
   - Id: 39
     Map: te_prtcas01
     Name: Gloria 1
     Npc: Manager_TE#Gaebolg
+    Type: Third_Edition
   - Id: 40
     Map: te_prtcas02
     Name: Gloria 2
     Npc: Manager_TE#Richard
+    Type: Third_Edition
   - Id: 41
     Map: te_prtcas03
     Name: Gloria 3
     Npc: Manager_TE#Wigner
+    Type: Third_Edition
   - Id: 42
     Map: te_prtcas04
     Name: Gloria 4
     Npc: Manager_TE#Heine
+    Type: Third_Edition
   - Id: 43
     Map: te_prtcas05
     Name: Gloria 5
     Npc: Manager_TE#Nerious
+    Type: Third_Edition

+ 151 - 0
db/re/exp_homun.yml

@@ -379,3 +379,154 @@ Body:
     Exp: 87140000
   - Level: 174
     Exp: 94875000
+# TODO: unconfirmed values from here
+  - Level: 175
+    Exp: 104362500
+  - Level: 176
+    Exp: 112711500
+  - Level: 177
+    Exp: 121728420
+  - Level: 178
+    Exp: 131466693
+  - Level: 179
+    Exp: 141984028
+  - Level: 180
+    Exp: 153342750
+  - Level: 181
+    Exp: 165610170
+  - Level: 182
+    Exp: 178858983
+  - Level: 183
+    Exp: 193167701
+  - Level: 184
+    Exp: 208621117
+  - Level: 185
+    Exp: 225310806
+  - Level: 186
+    Exp: 243335670
+  - Level: 187
+    Exp: 262802523
+  - Level: 188
+    Exp: 283826724
+  - Level: 189
+    Exp: 306532861
+  - Level: 190
+    Exp: 331055489
+  - Level: 191
+    Exp: 357539928
+  - Level: 192
+    Exp: 386143122
+  - Level: 193
+    Exp: 417034571
+  - Level: 194
+    Exp: 450397336
+  - Level: 195
+    Exp: 486429122
+  - Level: 196
+    Exp: 525343451
+  - Level: 197
+    Exp: 567370927
+  - Level: 198
+    Exp: 612760601
+  - Level: 199
+    Exp: 661781449
+  - Level: 200
+    Exp: 714723964
+  - Level: 201
+    Exp: 771901881
+  - Level: 202
+    Exp: 833654031
+  - Level: 203
+    Exp: 900346353
+  - Level: 204
+    Exp: 972374061
+  - Level: 205
+    Exp: 1050163985
+  - Level: 206
+    Exp: 1134177103
+  - Level: 207
+    Exp: 1224911271
+  - Level: 208
+    Exp: 1322904172
+  - Level: 209
+    Exp: 1428736505
+  - Level: 210
+    Exp: 1543035425
+  - Level: 211
+    Exp: 1666478259
+  - Level: 212
+    Exp: 1799796519
+  - Level: 213
+    Exp: 1943780240
+  - Level: 214
+    Exp: 2099282659
+  - Level: 215
+    Exp: 2267225271
+  - Level: 216
+    Exp: 2448603292
+  - Level: 217
+    Exp: 2644491555
+  - Level: 218
+    Exp: 2856050879
+  - Level: 219
+    Exp: 3084534949
+  - Level: 220
+    Exp: 3331297744
+  - Level: 221
+    Exp: 3597801563
+  - Level: 222
+    Exp: 3885625688
+  - Level: 223
+    Exp: 4196475743
+  - Level: 224
+    Exp: 4532193802
+  - Level: 225
+    Exp: 4894769306
+  - Level: 226
+    Exp: 5286350850
+  - Level: 227
+    Exp: 5709258918
+  - Level: 228
+    Exp: 6165999631
+  - Level: 229
+    Exp: 6659279601
+  - Level: 230
+    Exp: 7192021969
+  - Level: 231
+    Exp: 7767383726
+  - Level: 232
+    Exp: 8388774424
+  - Level: 233
+    Exp: 9059876377
+  - Level: 234
+    Exp: 9784666487
+  - Level: 235
+    Exp: 10567439805
+  - Level: 236
+    Exp: 11412834989
+  - Level: 237
+    Exp: 12325861788
+  - Level: 238
+    Exp: 13311930731
+  - Level: 239
+    Exp: 14376885189
+  - Level: 240
+    Exp: 15527036004
+  - Level: 241
+    Exp: 16769198884
+  - Level: 242
+    Exp: 18110734794
+  - Level: 243
+    Exp: 19559593577
+  - Level: 244
+    Exp: 21124361063
+  - Level: 245
+    Exp: 22814309948
+  - Level: 246
+    Exp: 24639454743
+  - Level: 247
+    Exp: 26610611122
+  - Level: 248
+    Exp: 28739460011
+  - Level: 249
+    Exp: 31038616811

+ 0 - 33
db/re/homunculus_db.txt

@@ -1,33 +0,0 @@
-// Homunculus Database
-//
-// Structure of Database:
-// Class,EvoClass,Name,FoodID,HungryDelay,BaseSize,EvoSize,Race,Element,bASPD,bHP,bSP,bSTR,bAGI,bVIT,bINT,bDEX,bLUK,gnHP,gxHP,gnSP,gxSP,gnSTR,gxSTR,gnAGI,gxAGI,gnVIT,gxVIT,gnINT,gxINT,gnDEX,gxDEX,gnLUK,gxLUK,enHP,exHP,enSP,exSP,enSTR,exSTR,enAGI,exAGI,enVIT,exVIT,enINT,exINT,enDEX,exDEX,enLUK,exLUK
-//
-// 01. Class        Homunculus ID.
-// 02. EvoClass     Homunculus ID of the evolved version.
-// 03. Name         Name of the homunculus.
-// 04. FoodID       Item ID of the homunuclus food.
-// 05. HungryDelay  Time interval in milliseconds after which the homunculus' hunger value is altered.
-// 06. BaseSize     Size of the base homunculus class (0 = small, 1 = normal, 2 = large).
-// 07. EvoSize      Size of the evolved homunculus class (0 = small, 1 = normal, 2 = large).
-// 08. Race         Race of the homunculus (0 = formless, 1 = undead, 2 = brute, 3 = plant, 4 = insect, 5 = fish, 6 = demon, 7 = demi-human, 8 = angel, 9 = dragon).
-// 09. Element      Element of the homunculus (0 = neutral, 1 = water, 2 = earth, 3 = fire, 4 = wind, 5 = poison, 6 = holy, 7 = dark, 8 = ghost, 9 = undead).
-//                  The element level is always 1.
-// ...
-//
-// Legend: b: base, gn: growth min, gx: growth max, en: evolution min, ex: evolution max
-// NOTE: Only the growth values are in a 1/10 scale, the other stats are 1/1 (eg: 5 gmAGI means 0.5 agi)
-
-6001,6009,Lif,537,60000,0,1,7,0,700,150,40,17,20,15,35,24,12,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,800,2400,220,480,10,30,10,30,20,40,30,50,20,50,10,30
-6002,6010,Amistr,912,60000,0,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,1600,3600,120,360,20,50,10,30,20,50,20,50,10,30,10,30
-6003,6011,Filir,910,60000,0,1,2,0,700,90,25,29,35,9,8,30,9,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,1200,3200,200,400,20,50,10,30,20,50,20,50,10,30,10,30
-6004,6012,Vanilmirth,911,60000,0,1,0,0,700,80,11,11,11,11,11,11,11,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,1200,4800,480,640,10,30,10,30,10,30,20,50,10,50,10,100
-6005,6013,Lif,537,60000,0,1,7,0,700,150,40,17,20,15,35,24,12,60,100,4,9,5,19,5,19,5,19,4,20,6,20,6,20,800,2400,220,480,10,30,10,30,20,40,30,50,20,50,10,30
-6006,6014,Amistr,912,60000,0,1,2,0,700,320,10,20,17,35,11,24,12,80,130,1,4,8,20,4,20,4,20,1,10,3,19,3,19,1600,3600,120,360,20,50,10,30,20,50,20,50,10,30,10,30
-6007,6015,Filir,910,60000,0,1,2,0,700,90,25,29,35,9,8,30,9,45,75,3,6,4,20,8,20,1,10,3,19,4,20,3,19,1200,3200,200,400,20,50,10,30,20,50,20,50,10,30,10,30
-6008,6016,Vanilmirth,911,60000,0,1,0,0,700,80,11,11,11,11,11,11,11,30,150,0,7,1,30,1,30,1,30,1,30,1,30,1,30,1200,4800,480,640,10,30,10,30,10,30,20,50,10,50,10,100
-6048,6048,Eira,6098,60000,1,1,8,4,700,150,40,17,20,15,35,24,12,40,160,20,42,13,39,28,42,15,25,14,48,16,36,9,18,1000,2000,10,200,1,10,1,10,1,10,1,10,1,10,1,10
-6049,6049,Bayeri,6112,60000,1,1,2,6,700,320,10,20,17,35,11,24,12,90,360,48,52,18,36,8,36,16,32,22,44,12,24,20,36,1000,2000,10,200,1,10,1,10,1,10,1,10,1,10,1,10
-6050,6050,Sera,6108,60000,1,1,4,2,700,90,25,29,35,9,8,30,9,60,240,36,64,10,25,16,32,5,25,7,35,28,40,20,40,1000,2000,10,200,1,10,1,10,1,10,1,10,1,10,1,10
-6051,6051,Dieter,6104,60000,1,1,0,3,700,80,11,11,11,11,11,11,11,240,480,40,120,20,40,13,26,18,36,15,40,16,32,4,16,1000,2000,10,200,1,10,1,10,1,10,1,10,1,10,1,10
-6052,6052,Eleanor,6115,60000,1,1,7,5,700,320,10,20,17,35,11,24,12,60,300,10,20,20,40,10,50,24,48,5,15,12,36,2,10,1000,2000,10,200,1,10,1,10,1,10,1,10,1,10,1,10

+ 948 - 0
db/re/homunculus_db.yml

@@ -0,0 +1,948 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2023 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Homunculus Database
+###########################################################################
+#
+# Homunculus Settings
+#
+###########################################################################
+# - BaseClass               Base class.
+#   Name                    Name of homunculus.
+#   EvolutionClass          Evolution class.
+#   Food                    Homunculus food item. (Default: Pet_Food)
+#   HungryDelay             Time interval in milliseconds after which the hunger value is altered. (Default: 60000)
+#   Race                    Race. (Default: Demihuman)
+#   Element                 Element. (Default: Neutral)
+#   Size                    Size. (Default: Small)
+#   EvolutionSize           Evolution size. (Default: Medium)
+#   AttackDelay             Base ASPD. (Default: 700)
+#   Status:                 Homunculus stats.
+#     - Type                Type of status.
+#       Base                Base value of this status. (Default: 1)
+#       GrowthMinimum       Minimum growth of this status. (Default: 0)
+#       GrowthMaximum       Maximum growth of this status. (Default: 0)
+#       EvolutionMinimum    Minimum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#       EvolutionMaximum    Maximum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#   SkillTree:              Skill tree.
+#     - Skill               Skill name.
+#       Clear               True to remove the given skill name. (Optional)
+#       MaxLevel            Maximum level of skill.
+#       RequiredLevel       Required base level of homunculus to learn. (Default: 0)
+#       RequiredIntimacy    Required intimacy of homunculus to learn. (Default: 0)
+#       RequireEvolution    Require the homunculus to be evolved to be available. (Default: false)
+#       Required:           Prerequisite skills. (Default: null)
+#         - Skill           Prerequisite skill name.
+#           Level           Level of prerequisite skill.
+#           Clear           True to remove the given prerequisite skill name. (Optional)
+###########################################################################
+
+Header:
+  Type: HOMUNCULUS_DB
+  Version: 1
+
+Body:
+  - Class: Lif
+    Name: Lif
+    EvolutionClass: Lif_H
+    Status:
+      - Type: Hp
+        Base: 150
+        GrowthMinimum: 60
+        GrowthMaximum: 100
+        EvolutionMinimum: 800
+        EvolutionMaximum: 2400
+      - Type: Sp
+        Base: 40
+        GrowthMinimum: 4
+        GrowthMaximum: 9
+        EvolutionMinimum: 220
+        EvolutionMaximum: 480
+      - Type: Str
+        Base: 17
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Agi
+        Base: 20
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 15
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 20
+        EvolutionMaximum: 40
+      - Type: Int
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 30
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HLIF_HEAL
+        MaxLevel: 5
+      - Skill: HLIF_AVOID
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 3
+      - Skill: HLIF_BRAIN
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 5
+      - Skill: HLIF_CHANGE
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Amistr
+    Name: Amistr
+    EvolutionClass: Amistr_H
+    Food: Zargon
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 80
+        GrowthMaximum: 130
+        EvolutionMinimum: 1600
+        EvolutionMaximum: 3600
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 1
+        GrowthMaximum: 4
+        EvolutionMinimum: 120
+        EvolutionMaximum: 360
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HAMI_CASTLE
+        MaxLevel: 5
+      - Skill: HAMI_DEFENCE
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_CASTLE
+            Level: 5
+      - Skill: HAMI_SKIN
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_DEFENCE
+            Level: 3
+      - Skill: HAMI_BLOODLUST
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Filir
+    Name: Filir
+    EvolutionClass: Filir_H
+    Food: Garlet
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 90
+        GrowthMinimum: 45
+        GrowthMaximum: 75
+        EvolutionMinimum: 1200
+        EvolutionMaximum: 3200
+      - Type: Sp
+        Base: 25
+        GrowthMinimum: 3
+        GrowthMaximum: 6
+        EvolutionMinimum: 200
+        EvolutionMaximum: 400
+      - Type: Str
+        Base: 29
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Agi
+        Base: 35
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 9
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Int
+        Base: 8
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 30
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Luk
+        Base: 9
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HFLI_MOON
+        MaxLevel: 5
+      - Skill: HFLI_FLEET
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_MOON
+            Level: 3
+      - Skill: HFLI_SPEED
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_FLEET
+            Level: 3
+      - Skill: HFLI_SBR44
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Vanilmirth
+    Name: Vanilmirth
+    EvolutionClass: Vanilmirth_H
+    Food: Scell
+    Race: Formless
+    Status:
+      - Type: Hp
+        Base: 80
+        GrowthMinimum: 30
+        GrowthMaximum: 150
+        EvolutionMinimum: 1200
+        EvolutionMaximum: 4800
+      - Type: Sp
+        Base: 11
+        GrowthMinimum: 0
+        GrowthMaximum: 7
+        EvolutionMinimum: 480
+        EvolutionMaximum: 640
+      - Type: Str
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Agi
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 50
+      - Type: Luk
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 100
+    SkillTree:
+      - Skill: HVAN_CAPRICE
+        MaxLevel: 5
+      - Skill: HVAN_CHAOTIC
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 3
+      - Skill: HVAN_INSTRUCT
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 5
+      - Skill: HVAN_EXPLOSION
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Lif2
+    Name: Lif
+    EvolutionClass: Lif_H2
+    Status:
+      - Type: Hp
+        Base: 150
+        GrowthMinimum: 60
+        GrowthMaximum: 100
+        EvolutionMinimum: 800
+        EvolutionMaximum: 2400
+      - Type: Sp
+        Base: 40
+        GrowthMinimum: 4
+        GrowthMaximum: 9
+        EvolutionMinimum: 220
+        EvolutionMaximum: 480
+      - Type: Str
+        Base: 17
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Agi
+        Base: 20
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 15
+        GrowthMinimum: 5
+        GrowthMaximum: 19
+        EvolutionMinimum: 20
+        EvolutionMaximum: 40
+      - Type: Int
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 30
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 6
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HLIF_HEAL
+        MaxLevel: 5
+      - Skill: HLIF_AVOID
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 3
+      - Skill: HLIF_BRAIN
+        MaxLevel: 5
+        Required:
+          - Skill: HLIF_HEAL
+            Level: 5
+      - Skill: HLIF_CHANGE
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Amistr2
+    Name: Amistr
+    EvolutionClass: Amistr_H2
+    Food: Zargon
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 80
+        GrowthMaximum: 130
+        EvolutionMinimum: 1600
+        EvolutionMaximum: 3600
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 1
+        GrowthMaximum: 4
+        EvolutionMinimum: 120
+        EvolutionMaximum: 360
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HAMI_CASTLE
+        MaxLevel: 5
+      - Skill: HAMI_DEFENCE
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_CASTLE
+            Level: 5
+      - Skill: HAMI_SKIN
+        MaxLevel: 5
+        Required:
+          - Skill: HAMI_DEFENCE
+            Level: 3
+      - Skill: HAMI_BLOODLUST
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Filir2
+    Name: Filir
+    EvolutionClass: Filir_H2
+    Food: Garlet
+    Race: Brute
+    Status:
+      - Type: Hp
+        Base: 90
+        GrowthMinimum: 45
+        GrowthMaximum: 75
+        EvolutionMinimum: 1200
+        EvolutionMaximum: 3200
+      - Type: Sp
+        Base: 25
+        GrowthMinimum: 3
+        GrowthMaximum: 6
+        EvolutionMinimum: 200
+        EvolutionMaximum: 400
+      - Type: Str
+        Base: 29
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Agi
+        Base: 35
+        GrowthMinimum: 8
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 9
+        GrowthMinimum: 1
+        GrowthMaximum: 10
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Int
+        Base: 8
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 30
+        GrowthMinimum: 4
+        GrowthMaximum: 20
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Luk
+        Base: 9
+        GrowthMinimum: 3
+        GrowthMaximum: 19
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+    SkillTree:
+      - Skill: HFLI_MOON
+        MaxLevel: 5
+      - Skill: HFLI_FLEET
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_MOON
+            Level: 3
+      - Skill: HFLI_SPEED
+        MaxLevel: 5
+        Required:
+          - Skill: HFLI_FLEET
+            Level: 3
+      - Skill: HFLI_SBR44
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Vanilmirth2
+    Name: Vanilmirth
+    EvolutionClass: Vanilmirth_H2
+    Food: Scell
+    Race: Formless
+    Status:
+      - Type: Hp
+        Base: 80
+        GrowthMinimum: 30
+        GrowthMaximum: 150
+        EvolutionMinimum: 1200
+        EvolutionMaximum: 4800
+      - Type: Sp
+        Base: 11
+        GrowthMinimum: 0
+        GrowthMaximum: 7
+        EvolutionMinimum: 480
+        EvolutionMaximum: 640
+      - Type: Str
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Agi
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Vit
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 30
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 20
+        EvolutionMaximum: 50
+      - Type: Dex
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 50
+      - Type: Luk
+        Base: 11
+        GrowthMinimum: 1
+        GrowthMaximum: 30
+        EvolutionMinimum: 10
+        EvolutionMaximum: 100
+    SkillTree:
+      - Skill: HVAN_CAPRICE
+        MaxLevel: 5
+      - Skill: HVAN_CHAOTIC
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 3
+      - Skill: HVAN_INSTRUCT
+        MaxLevel: 5
+        Required:
+          - Skill: HVAN_CAPRICE
+            Level: 5
+      - Skill: HVAN_EXPLOSION
+        MaxLevel: 3
+        RequiredIntimacy: 910
+        RequireEvolution: true
+  - Class: Eira
+    Name: Eira
+    Food: Small_Snow_Flower
+    Race: Angel
+    Element: Wind
+    Size: Medium
+    Status:
+      - Type: Hp
+        Base: 150
+        GrowthMinimum: 40
+        GrowthMaximum: 160
+      - Type: Sp
+        Base: 40
+        GrowthMinimum: 20
+        GrowthMaximum: 42
+      - Type: Str
+        Base: 17
+        GrowthMinimum: 13
+        GrowthMaximum: 39
+      - Type: Agi
+        Base: 20
+        GrowthMinimum: 28
+        GrowthMaximum: 42
+      - Type: Vit
+        Base: 15
+        GrowthMinimum: 15
+        GrowthMaximum: 25
+      - Type: Int
+        Base: 35
+        GrowthMinimum: 14
+        GrowthMaximum: 48
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 16
+        GrowthMaximum: 36
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 9
+        GrowthMaximum: 18
+    SkillTree:
+      - Skill: MH_LIGHT_OF_REGENE
+        MaxLevel: 5
+        RequiredLevel: 128
+      - Skill: MH_OVERED_BOOST
+        MaxLevel: 5
+        RequiredLevel: 114
+      - Skill: MH_ERASER_CUTTER
+        MaxLevel: 10
+        RequiredLevel: 106
+      - Skill: MH_XENO_SLASHER
+        MaxLevel: 10
+        RequiredLevel: 121
+      - Skill: MH_SILENT_BREEZE
+        MaxLevel: 5
+        RequiredLevel: 137
+      - Skill: MH_CLASSY_FLUTTER
+        MaxLevel: 10
+        RequiredLevel: 210
+      - Skill: MH_TWISTER_CUTTER
+        MaxLevel: 10
+        RequiredLevel: 215
+      - Skill: MH_ABSOLUTE_ZEPHYR
+        MaxLevel: 10
+        RequiredLevel: 230
+  - Class: Bayeri
+    Name: Bayeri
+    Food: Fresh_Plant
+    Race: Brute
+    Element: Holy
+    Size: Medium
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 90
+        GrowthMaximum: 360
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 48
+        GrowthMaximum: 52
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 18
+        GrowthMaximum: 36
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 8
+        GrowthMaximum: 36
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 16
+        GrowthMaximum: 32
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 22
+        GrowthMaximum: 44
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 12
+        GrowthMaximum: 24
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 20
+        GrowthMaximum: 36
+    SkillTree:
+      - Skill: MH_STAHL_HORN
+        MaxLevel: 10
+        RequiredLevel: 105
+      - Skill: MH_GOLDENE_FERSE
+        MaxLevel: 5
+        RequiredLevel: 112
+      - Skill: MH_STEINWAND
+        MaxLevel: 5
+        RequiredLevel: 121
+      - Skill: MH_HEILIGE_STANGE
+        MaxLevel: 10
+        RequiredLevel: 138
+      - Skill: MH_ANGRIFFS_MODUS
+        MaxLevel: 5
+        RequiredLevel: 130
+      - Skill: MH_LICHT_GEHORN
+        MaxLevel: 10
+        RequiredLevel: 210
+      - Skill: MH_GLANZEN_SPIES
+        MaxLevel: 10
+        RequiredLevel: 215
+      - Skill: MH_HEILIGE_PFERD
+        MaxLevel: 10
+        RequiredLevel: 230
+      - Skill: MH_GOLDENE_TONE
+        MaxLevel: 10
+        RequiredLevel: 230
+  - Class: Sera
+    Name: Sera
+    Food: Apple_Pudding
+    Race: Insect
+    Element: Earth
+    Size: Medium
+    Status:
+      - Type: Hp
+        Base: 90
+        GrowthMinimum: 60
+        GrowthMaximum: 240
+      - Type: Sp
+        Base: 25
+        GrowthMinimum: 36
+        GrowthMaximum: 64
+      - Type: Str
+        Base: 29
+        GrowthMinimum: 10
+        GrowthMaximum: 25
+      - Type: Agi
+        Base: 35
+        GrowthMinimum: 16
+        GrowthMaximum: 32
+      - Type: Vit
+        Base: 9
+        GrowthMinimum: 5
+        GrowthMaximum: 25
+      - Type: Int
+        Base: 8
+        GrowthMinimum: 7
+        GrowthMaximum: 35
+      - Type: Dex
+        Base: 30
+        GrowthMinimum: 28
+        GrowthMaximum: 40
+      - Type: Luk
+        Base: 9
+        GrowthMinimum: 20
+        GrowthMaximum: 40
+    SkillTree:
+      - Skill: MH_SUMMON_LEGION
+        MaxLevel: 5
+        RequiredLevel: 132
+      - Skill: MH_NEEDLE_OF_PARALYZE
+        MaxLevel: 10
+        RequiredLevel: 105
+      - Skill: MH_POISON_MIST
+        MaxLevel: 5
+        RequiredLevel: 116
+      - Skill: MH_PAIN_KILLER
+        MaxLevel: 10
+        RequiredLevel: 123
+      - Skill: MH_POLISHING_NEEDLE
+        MaxLevel: 10
+        RequiredLevel: 210
+      - Skill: MH_TOXIN_OF_MANDARA
+        MaxLevel: 10
+        RequiredLevel: 215
+      - Skill: MH_NEEDLE_STINGER
+        MaxLevel: 10
+        RequiredLevel: 230
+  - Class: Dieter
+    Name: Dieter
+    Food: Big_Cell
+    Race: Formless
+    Element: Fire
+    Size: Medium
+    Status:
+      - Type: Hp
+        Base: 80
+        GrowthMinimum: 240
+        GrowthMaximum: 480
+      - Type: Sp
+        Base: 11
+        GrowthMinimum: 40
+        GrowthMaximum: 120
+      - Type: Str
+        Base: 11
+        GrowthMinimum: 20
+        GrowthMaximum: 40
+      - Type: Agi
+        Base: 11
+        GrowthMinimum: 13
+        GrowthMaximum: 26
+      - Type: Vit
+        Base: 11
+        GrowthMinimum: 18
+        GrowthMaximum: 36
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 15
+        GrowthMaximum: 40
+      - Type: Dex
+        Base: 11
+        GrowthMinimum: 16
+        GrowthMaximum: 32
+      - Type: Luk
+        Base: 11
+        GrowthMinimum: 4
+        GrowthMaximum: 16
+    SkillTree:
+      - Skill: MH_MAGMA_FLOW
+        MaxLevel: 5
+        RequiredLevel: 122
+      - Skill: MH_GRANITIC_ARMOR
+        MaxLevel: 5
+        RequiredLevel: 116
+      - Skill: MH_LAVA_SLIDE
+        MaxLevel: 10
+        RequiredLevel: 109
+      - Skill: MH_PYROCLASTIC
+        MaxLevel: 10
+        RequiredLevel: 131
+      - Skill: MH_VOLCANIC_ASH
+        MaxLevel: 5
+        RequiredLevel: 102
+      - Skill: MH_BLAST_FORGE
+        MaxLevel: 10
+        RequiredLevel: 215
+      - Skill: MH_TEMPERING
+        MaxLevel: 10
+        RequiredLevel: 230
+      - Skill: MH_BLAZING_LAVA
+        MaxLevel: 10
+        RequiredLevel: 210
+  - Class: Eleanor
+    Name: Eleanor
+    Food: Bun_
+    Element: Poison
+    Size: Medium
+    Status:
+      - Type: Hp
+        Base: 320
+        GrowthMinimum: 60
+        GrowthMaximum: 300
+      - Type: Sp
+        Base: 10
+        GrowthMinimum: 10
+        GrowthMaximum: 20
+      - Type: Str
+        Base: 20
+        GrowthMinimum: 20
+        GrowthMaximum: 40
+      - Type: Agi
+        Base: 17
+        GrowthMinimum: 10
+        GrowthMaximum: 50
+      - Type: Vit
+        Base: 35
+        GrowthMinimum: 24
+        GrowthMaximum: 48
+      - Type: Int
+        Base: 11
+        GrowthMinimum: 5
+        GrowthMaximum: 15
+      - Type: Dex
+        Base: 24
+        GrowthMinimum: 12
+        GrowthMaximum: 36
+      - Type: Luk
+        Base: 12
+        GrowthMinimum: 2
+        GrowthMaximum: 10
+    SkillTree:
+      - Skill: MH_STYLE_CHANGE
+        MaxLevel: 1
+        RequiredLevel: 100
+      - Skill: MH_SONIC_CRAW
+        MaxLevel: 5
+        RequiredLevel: 100
+      - Skill: MH_SILVERVEIN_RUSH
+        MaxLevel: 10
+        RequiredLevel: 114
+      - Skill: MH_MIDNIGHT_FRENZY
+        MaxLevel: 10
+        RequiredLevel: 128
+      - Skill: MH_TINDER_BREAKER
+        MaxLevel: 5
+        RequiredLevel: 100
+      - Skill: MH_CBC
+        MaxLevel: 5
+        RequiredLevel: 112
+      - Skill: MH_EQC
+        MaxLevel: 5
+        RequiredLevel: 133
+      - Skill: MH_BRUSHUP_CLAW
+        MaxLevel: 10
+        RequiredLevel: 210
+      - Skill: MH_BLAZING_AND_FURIOUS
+        MaxLevel: 10
+        RequiredLevel: 215
+      - Skill: MH_THE_ONE_FIGHTER_RISES
+        MaxLevel: 10
+        RequiredLevel: 230

+ 201 - 0
db/re/instance_db.yml

@@ -375,3 +375,204 @@ Body:
       Map: 1@begi
       X: 100
       Y: 22
+  - Id: 49
+    Name: Old Glast Heim (Challenge Mode)
+    Enter:
+      Map: 1@gl_he
+      X: 150
+      Y: 28
+  - Id: 50
+    Name: Old Glast Heim (Beginner)
+    Enter:
+      Map: 1@gl_k2
+      X: 150
+      Y: 20
+  - Id: 51
+    Name: Fall of Glast Heim (Normal)
+    Enter:
+      Map: 1@gl_prq
+      X: 299
+      Y: 19
+  - Id: 52
+    Name: Fall of Glast Heim (Advanced)
+    Enter:
+      Map: 1@gl_prq
+      X: 79
+      Y: 22
+  - Id: 53
+    Name: Twilight Garden
+    Enter:
+      Map: 1@bamn
+      X: 100
+      Y: 320
+    AdditionalMaps:
+       1@bamq: true
+  - Id: 54
+    Name: Hey! Sweety
+    Enter:
+      Map: 1@bamq
+      X: 16
+      Y: 39
+    AdditionalMaps:
+       1@bamn: true
+  - Id: 55
+    Name: Farm Lost in Time
+    Enter:
+      Map: 1@lost
+      X: 161
+      Y: 42
+  - Id: 56
+    Name: Water Garden
+    Enter:
+      Map: 1@ghg
+      X: 64
+      Y: 69
+  - Id: 57
+    Name: Water Garden Hard
+    Enter:
+      Map: 1@ghg
+      X: 64
+      Y: 69
+  - Id: 58
+    Name: Hidden Flower Garden
+    Enter:
+      Map: 1@herbs
+      X: 51
+      Y: 273
+  - Id: 59
+    Name: Security Area 1
+    Enter:
+      Map: 1@herbs
+      X: 45
+      Y: 208
+  - Id: 60
+    Name: Security Area 2
+    Enter:
+      Map: 1@herbs
+      X: 59
+      Y: 214
+  - Id: 61
+    Name: Sunken Tower
+    Enter:
+      Map: 1@ch_u
+      X: 13
+      Y: 59
+  - Id: 62
+    Name: Constellation Tower
+    Enter:
+      Map: 1@ch_t
+      X: 48
+      Y: 183
+    AdditionalMaps:
+       2@ch_t: true
+       3@ch_t: true
+  - Id: 63
+    Name: Tomb of Remorse
+    Enter:
+      Map: 1@spa2
+      X: 51
+      Y: 197
+  - Id: 64
+    Name: Geffen Night Arena
+    Enter:
+      Map: 1@ge_sn
+      X: 89
+      Y: 48
+  - Id: 65
+    Name: Airship Crash
+    Enter:
+      Map: 1@mjo1
+      X: 219
+      Y: 379
+    AdditionalMaps:
+      1@mjo2: true
+  - Id: 66
+    Name: Thanatos Tower
+    Enter:
+      Map: 1@thts
+      X: 74
+      Y: 371
+    AdditionalMaps:
+      2@thts: true
+      3@thts: true
+      4@thts: true
+      5@thts: true
+      6@thts: true
+      7@thts: true
+      8@thts: true
+  - Id: 67
+    Name: The Maze of Oz
+    Enter:
+      Map: 1@oz
+      X: 284
+      Y: 167
+  - Id: 68
+    Name: Thor Gunsu Base
+    Enter:
+      Map: 1@tcamp
+      X: 103
+      Y: 237
+  - Id: 69
+    Name: A Gathering Place of Wolves
+    Enter:
+      Map: 1@nyr
+      X: 194
+      Y: 30
+    AdditionalMaps:
+      2@nyr: true
+  - Id: 70
+    Name: Sanctuary Purification
+    Enter:
+      Map: 1@nyr
+      X: 194
+      Y: 30
+    AdditionalMaps:
+      2@nyr: true
+  - Id: 71
+    Name: Villa of High Priest
+    Enter:
+      Map: 1@adv
+      X: 123
+      Y: 17
+  - Id: 72
+    Name: Villa of Deception
+    Enter:
+      Map: 1@advs
+      X: 111
+      Y: 19
+  - Id: 73
+    Name: Villa of Deception Advanced
+    Enter:
+      Map: 1@advs
+      X: 111
+      Y: 19
+  - Id: 74
+    Name: Bagot Laboratory
+    Enter:
+      Map: 1@jorlab
+      X: 57
+      Y: 45
+  - Id: 75
+    Name: Confused Snake's Nest
+    Enter:
+      Map: 1@jorchs
+      X: 272
+      Y: 20
+  - Id: 76
+    Name: Iwin Patrol
+    Enter:
+      Map: 1@iwp
+      X: 380
+      Y: 229
+  - Id: 77
+    Name: Airship Destruction
+    Enter:
+      Map: 1@whl
+      X: 32
+      Y: 53
+  - Id: 78
+    Name: Simulation Battle
+    Enter:
+      Map: 1@jorlab
+      X: 57
+      Y: 45

+ 0 - 19
db/re/item_cash_db.txt

@@ -1,19 +0,0 @@
-// Cash Shop Database
-// Contains the items sold in the ingame cash shop.
-//
-// Structure of Database:
-// Type,ItemID,Price
-//
-// Type:
-//    0: New
-//    1: Hot
-//    2: Limited
-//    3: Rental
-//    4: Gear
-//    5: Buff
-//    6: Heal
-//    7: Other
-//    8: Sale
-//
-// Price:
-//    Item cost, in cash points (#CASHPOINTS).

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 249 - 137
db/re/item_combos.yml


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 762 - 16
db/re/item_db_equip.yml


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 336 - 141
db/re/item_db_etc.yml


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 2005 - 203
db/re/item_db_usable.yml


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 86 - 174
db/re/item_enchant.yml


+ 1245 - 72
db/re/item_group_db.yml

@@ -24036,9 +24036,9 @@ Body:
             Rate: 160
           - Item: ElectricEffect_Middle
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: ReloadStone_Top
             Rate: 240
@@ -24058,17 +24058,17 @@ Body:
             Rate: 360
           - Item: Critical_Stone_Bottom
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
   - Group: THIRD_JOB_STONE_GARMENT_BOX
     SubGroups:
@@ -25723,7 +25723,7 @@ Body:
             Rate: 140
           - Item: C_Pig_Nose
             Rate: 140
-          - Item: C_Cat_Ears_Hat
+          - Item: C_Cat_Ear_Hat
             Rate: 140
           - Item: C_Valkyrie_Circlet
             Rate: 140
@@ -25996,7 +25996,7 @@ Body:
             Rate: 140
           - Item: C_Poring_On_Shoulder
             Rate: 140
-          - Item: Costume_Yawata_Seal
+          - Item: C_FortunetellinSealed
             Rate: 140
           - Item: C_Pretty_Bear_WH
             Rate: 140
@@ -26008,7 +26008,7 @@ Body:
             Rate: 140
           - Item: C_Dark_Snake_Lord_Stall
             Rate: 140
-          - Item: Costume_Twin_Cannon
+          - Item: C_Twin_Canon
             Rate: 140
           - Item: C_Picnic_Basket
             Rate: 140
@@ -26070,13 +26070,13 @@ Body:
             Rate: 140
           - Item: C_LittleGarden
             Rate: 140
-          - Item: Costume_Twinkling_Red_Eyes
+          - Item: C_Blinking_Eyes_RD
             Rate: 140
           - Item: C_Blink_Eyes_Sakura
             Rate: 140
-          - Item: Costume_Angola_Intention
+          - Item: C_Angola_Intention
             Rate: 140
-          - Item: C_Stole_Of_Dominion
+          - Item: C_Stall_Of_Dominions
             Rate: 140
           - Item: C_Flowery_Vision_TH
             Rate: 140
@@ -26100,7 +26100,7 @@ Body:
             Rate: 130
           - Item: C_Blessings_Of_Soul
             Rate: 130
-          - Item: C_Crow
+          - Item: C_Gossip_Raven
             Rate: 130
           - Item: C_Halloween_Hat
             Rate: 130
@@ -26118,7 +26118,7 @@ Body:
             Rate: 130
           - Item: C_Gift_Of_Snow
             Rate: 130
-          - Item: C_Large_Ribbon_Muffler_Red
+          - Item: C_L_RibbonMuff_Red
             Rate: 130
           - Item: C_Imperial_Glory
             Rate: 130
@@ -30431,9 +30431,9 @@ Body:
             Rate: 250
           - Item: CastingStone_Bottom
             Rate: 250
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 250
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 250
           - Item: Range_Stone_Top
             Rate: 250
@@ -30457,17 +30457,17 @@ Body:
             Rate: 380
           - Item: Critical_Stone_Bottom
             Rate: 380
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 560
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 560
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 560
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 560
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 560
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 560
   - Group: ENCHANT_STONE_BOX23
     SubGroups:
@@ -30527,9 +30527,9 @@ Body:
             Rate: 140
           - Item: ASPDStone_Top
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: Range_Stone
             Rate: 240
@@ -30567,17 +30567,17 @@ Body:
             Rate: 360
           - Item: Critical_Stone_Bottom
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
   - Group: ENCHANT_STONE_BOX24
     SubGroups:
@@ -30671,9 +30671,9 @@ Body:
             Rate: 160
           - Item: WaterFieldEffect_Bottom
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: Range_Stone
             Rate: 240
@@ -30693,17 +30693,17 @@ Body:
             Rate: 360
           - Item: Critical_Stone_Bottom
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
   - Group: ENCHANT_STONE_BOX25
     SubGroups:
@@ -30797,9 +30797,9 @@ Body:
             Rate: 160
           - Item: WaterFieldEffect_Bottom
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: ReloadStone_Top
             Rate: 240
@@ -30819,17 +30819,17 @@ Body:
             Rate: 360
           - Item: Critical_Stone_Bottom
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
   - Group: ENCHANT_STONE_BOX27
     SubGroups:
@@ -30887,9 +30887,9 @@ Body:
             Rate: 80
           - Item: GuillcrossStone_Bottom3
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: Magic_Stone_Top
             Rate: 240
@@ -30933,17 +30933,17 @@ Body:
             Rate: 150
           - Item: AssacrossStone_Bottom2
             Rate: 150
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
           - Item: CastingStone_Top
             Rate: 360
@@ -31102,9 +31102,9 @@ Body:
             Rate: 80
           - Item: ReaperStone_Bottom3
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: Magic_Stone_Top
             Rate: 240
@@ -31142,17 +31142,17 @@ Body:
             Rate: 240
           - Item: Range_Stone_Bottom
             Rate: 240
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
           - Item: CastingStone_Top
             Rate: 360
@@ -31442,9 +31442,9 @@ Body:
             Rate: 80
           - Item: DoramStone_Bottom3
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
           - Item: Magic_Stone_Top
             Rate: 240
@@ -31482,17 +31482,17 @@ Body:
             Rate: 240
           - Item: EXPStone_Top
             Rate: 240
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
           - Item: CastingStone_Top
             Rate: 360
@@ -48211,3 +48211,1176 @@ Body:
           - Item: Trans_Scroll_Gazeti
           - Item: Trans_Scroll_Kobold_Archer
           - Item: Trans_Scroll_Necromancer
+  - Group: S_W_BREATH_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_W_Breath_Armor
+          - Item: S_W_Breath_Shield
+          - Item: S_W_Breath_Shoes
+  - Group: S_F_BREATH_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_F_Breath_Weapon
+          - Item: S_F_Breath_Pendant
+          - Item: S_F_Breath_Earing
+  - Group: S_SONIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Sonic_Armor
+          - Item: S_Sonic_Shield
+          - Item: S_Sonic_Shoes
+  - Group: S_STRAIN_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Strain_Weapon
+          - Item: S_Strain_Pendant
+          - Item: S_Strain_Earing
+  - Group: S_JACK_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Jack_Armor
+          - Item: S_Jack_Shield
+          - Item: S_Jack_Shoes
+  - Group: S_CHAIN_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Chain_Weapon
+          - Item: S_Chain_Pendant
+          - Item: S_Chain_Earing
+  - Group: S_CRIMSON_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Crimson_Armor
+          - Item: S_Crimson_Shield
+          - Item: S_Crimson_Shoes
+  - Group: S_VULCAN_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Vulcan_Armor
+          - Item: S_Vulcan_Shield
+          - Item: S_Vulcan_Shoes
+  - Group: S_BOOMERANG_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Boomerang_Weapon
+          - Item: S_Boomerang_Pendant
+          - Item: S_Boomerang_Earing
+  - Group: S_ARMS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Arms_Weapon
+          - Item: S_Arms_Pendant
+          - Item: S_Arms_Earing
+  - Group: S_TORNADO_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Tornado_Armor
+          - Item: S_Tornado_Shield
+          - Item: S_Tornado_Shoes
+  - Group: S_DUPLELIGHT_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Duplelight_Armor
+          - Item: S_Duplelight_Shield
+          - Item: S_Duplelight_Shoes
+  - Group: S_MAGNUS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Magnus_Weapon
+          - Item: S_Magnus_Pendant
+          - Item: S_Magnus_Earing
+  - Group: S_ADORAMUS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Adoramus_Weapon
+          - Item: S_Adoramus_Pendant
+          - Item: S_Adoramus_Earing
+  - Group: S_JUDEX_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Judex_Armor
+          - Item: S_Judex_Shield
+          - Item: S_Judex_Shoes
+  - Group: S_ROLLING_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Rolling_Armor
+          - Item: S_Rolling_Shield
+          - Item: S_Rolling_Shoes
+  - Group: S_RIPPER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Ripper_Weapon
+          - Item: S_Ripper_Pendant
+          - Item: S_Ripper_Earing
+  - Group: S_SLASH_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Slash_Armor
+          - Item: S_Slash_Shield
+          - Item: S_Slash_Shoes
+  - Group: S_KATAR_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Slash_Armor
+          - Item: S_Slash_Shield
+          - Item: S_Slash_Shoes
+  - Group: S_SHOOTING_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Shooting_Weapon
+          - Item: S_Shooting_Pendant
+          - Item: S_Shooting_Earing
+  - Group: S_ARROW_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Arrow_Armor
+          - Item: S_Arrow_Shield
+          - Item: S_Arrow_Shoes
+  - Group: S_AIMED_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Aimed_Weapon
+          - Item: S_Aimed_Pendant
+          - Item: S_Aimed_Earing
+  - Group: S_CLUSTER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Aimed_Weapon
+          - Item: S_Aimed_Pendant
+          - Item: S_Aimed_Earing
+  - Group: S_BANISH_CANNON_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Banish_Cannon_Armor
+          - Item: S_Banish_Cannon_Shield
+          - Item: S_Banish_Cannon_Shoes
+  - Group: S_BRAND_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Brand_Armor
+          - Item: S_Brand_Shield
+          - Item: S_Brand_Shoes
+  - Group: S_GENESIS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Genesis_Weapon
+          - Item: S_Genesis_Pendant
+          - Item: S_Genesis_Earing
+  - Group: S_CHAIN_PRESS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Chain_Press_Weapon
+          - Item: S_Chain_Press_Pendant
+          - Item: S_Chain_Press_Earing
+  - Group: S_GRAVE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Grave_Weapon
+          - Item: S_Grave_Pendant
+          - Item: S_Grave_Earing
+  - Group: S_DUST_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Dust_Armor
+          - Item: S_Dust_Shield
+          - Item: S_Dust_Shoes
+  - Group: S_VARETYR_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Varetyr_Weapon
+          - Item: S_Varetyr_Pendant
+          - Item: S_Varetyr_Earing
+  - Group: S_PSYCHIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Psychic_Armor
+          - Item: S_Psychic_Shield
+          - Item: S_Psychic_Shoes
+  - Group: S_SPORE_BOMB_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Spore_Bomb_Armor
+          - Item: S_Spore_Bomb_Shield
+          - Item: S_Spore_Bomb_Shoes
+  - Group: S_CANNON_CART_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Cannon_Cart_Weapon
+          - Item: S_Cannon_Cart_Pendant
+          - Item: S_Cannon_Cart_Earing
+  - Group: S_CRAZY_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Crazy_Weapon
+          - Item: S_Crazy_Pendant
+          - Item: S_Crazy_Earing
+  - Group: S_CART_TORNADO_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Cart_Tornado_Armor
+          - Item: S_Cart_Tornado_Shield
+          - Item: S_Cart_Tornado_Shoes
+  - Group: S_KNUCKLEARROW_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Knucklearrow_Armor
+          - Item: S_Knucklearrow_Shield
+          - Item: S_Knucklearrow_Shoes
+  - Group: S_SKYNETBLOW_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Skynetblow_Weapon
+          - Item: S_Skynetblow_Pendant
+          - Item: S_Skynetblow_Earing
+  - Group: S_RAMPAGE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Rampage_Armor
+          - Item: S_Rampage_Shield
+          - Item: S_Rampage_Shoes
+  - Group: S_TIGERCANNON_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_TigerCannon_Weapon
+          - Item: S_Tigercannon_Pendant
+          - Item: S_Tigercannon_Earing
+  - Group: S_MENACE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Menace_Armor
+          - Item: S_Menace_Shield
+          - Item: S_Menace_Shoes
+  - Group: S_SHADOWSPELL_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Shadowspell_Weapon
+          - Item: S_Shadowspell_Pendant
+          - Item: S_Shadowspell_Earing
+  - Group: S_TRIANGLE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Triangle_Armor
+          - Item: S_Triangle_Shield
+          - Item: S_Triangle_Shoes
+  - Group: S_PAINT_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Paint_Weapon
+          - Item: S_Paint_Pendant
+          - Item: S_Paint_Earing
+  - Group: S_RAINSTORM_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Rainstorm_Armor
+          - Item: S_Rainstorm_Shield
+          - Item: S_Rainstorm_Shoes
+  - Group: S_METALIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Metalic_Armor
+          - Item: S_Metalic_Shield
+          - Item: S_Metalic_Shoes
+  - Group: S_ARROWVULCAN_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Arrowvulcan_Weapon
+          - Item: S_Arrowvulcan_Pendant
+          - Item: S_Arrowvulcan_Earing
+  - Group: S_REVERBERATION_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Reverberation_Weapon
+          - Item: S_Reverberation_Pendant
+          - Item: S_Reverberation_Earing
+  - Group: S_MOONLIGHT_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Moonlight_Earring
+          - Item: S_Moonlight_Pendant
+          - Item: S_Moonlight_Shoes
+  - Group: S_SUNSHINE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Sunshine_Weapon
+          - Item: S_Sunshine_Shield
+          - Item: S_Sunshine_Armor
+  - Group: S_STARDUST_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Stardust_Weapon
+          - Item: S_Stardust_Shield
+          - Item: S_Stardust_Armor
+  - Group: S_S_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_S_Weapon
+          - Item: S_S_Shield
+          - Item: S_S_Armor
+  - Group: S_EVILCURSE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Evilcurse_Earring
+          - Item: S_Evilcurse_Pendant
+          - Item: S_Evilcurse_Shoes
+  - Group: S_SYURIKEN_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Syuriken_Earing
+          - Item: S_Syuriken_Pendant
+          - Item: S_Syuriken_Shoes
+  - Group: S_KUNAI_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Kunai_Weapon
+          - Item: S_Kunai_Shield
+          - Item: S_Kunai_Armor
+  - Group: S_HUUSOUKA_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Huusouka_Earing
+          - Item: S_Huusouka_Pendant
+          - Item: S_Huusouka_Shoes
+  - Group: S_KAMAENRAKU_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Kamaenraku_Weapon
+          - Item: S_Kamaenraku_Shield
+          - Item: S_Kamaenraku_Armor
+  - Group: S_GOD_HAMMER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_God_Hammer_Weapon
+          - Item: S_God_Hammer_Shield
+          - Item: S_God_Hammer_Armor
+  - Group: S_SHATTER_BUSTER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Shatter_Buster_Earing
+          - Item: S_Shatter_B_Pendant
+          - Item: S_Shatter_Buster_Shoes
+  - Group: S_TAIL_DRAGON_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Tail_Dragon_Weapon
+          - Item: S_Tail_Dragon_Shield
+          - Item: S_Tail_Dragon_Armor
+  - Group: S_TRIP_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Trip_Weapon
+          - Item: S_Trip_Shield
+          - Item: S_Trip_Armor
+  - Group: S_FLARE_DANCE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Flare_Dance_Earing
+          - Item: S_Flare_Dance_Pendant
+          - Item: S_Flare_Dance_Shoes
+  - Group: S_SUPER_MAGIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Super_Magic_Shield
+          - Item: S_Super_Magic_Armor
+          - Item: S_Super_Magic_Shoes
+  - Group: S_SUPER_POWER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Super_Power_Weapon
+          - Item: S_Super_Power_Pendant
+          - Item: S_Super_Power_Earing
+  - Group: S_SILVERVINE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Silvervine_Earing
+          - Item: S_Silvervine_Pendant
+          - Item: S_Silvervine_Shoes
+  - Group: S_CATNIP_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Catnip_Weapon
+          - Item: S_Catnip_Shield
+          - Item: S_Catnip_Armor
+  - Group: S_SAVAGERABBIT_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_SavageRabbit_Earing
+          - Item: S_SavageRabbit_Pendant
+          - Item: S_SavageRabbit_Shoes
+  - Group: S_PICKYRUSH_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Pickyrush_Weapon
+          - Item: S_Pickyrush_Shield
+          - Item: S_Pickyrush_Armor
+  - Group: S_RUNEKNIGHT_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Swordman_earring
+          - Item: S_Swordman_Pendant
+          - Item: S_Knight_Shoes
+          - Item: S_Knight_Armor
+          - Item: S_Runeknight_Weapon
+          - Item: S_Runeknight_Shield
+  - Group: S_ROYALGUARD_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Swordman_earring
+          - Item: S_Swordman_Pendant
+          - Item: S_Crusader_Shoes
+          - Item: S_Crusader_Armor
+          - Item: S_Royalguard_Weapon
+          - Item: S_Royalguard_Shield
+  - Group: S_WARLOCK_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Magician_earring
+          - Item: S_Magician_Pendant
+          - Item: S_Wizard_Shoes
+          - Item: S_Wizard_Armor
+          - Item: S_Warlock_Weapon
+          - Item: S_Warlock_Shield
+  - Group: S_SORCERER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Magician_earring
+          - Item: S_Magician_Pendant
+          - Item: S_Sage_Shoes
+          - Item: S_Sage_Armor
+          - Item: S_Sorcerer_Weapon
+          - Item: S_Sorcerer_Shield
+  - Group: S_MECHANIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Merchant_earring
+          - Item: S_Merchant_Pendant
+          - Item: S_Blacksmith_Shoes
+          - Item: S_Blacksmith_Armor
+          - Item: S_Mechanic_weapon
+          - Item: S_Mechanic_Shield
+  - Group: S_GENERIC_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Merchant_earring
+          - Item: S_Merchant_Pendant
+          - Item: S_Alchemist_Shoes
+          - Item: S_Alchemist_Armor
+          - Item: S_Genetic_Weapon
+          - Item: S_Genetic_Shield
+  - Group: S_ARCHBISHOP_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Acolyte_earring
+          - Item: S_Acolyte_Pendant
+          - Item: S_Priest_Shoes
+          - Item: S_Priest_Armor
+          - Item: S_Archbishop_Weapon
+          - Item: S_Archbishop_Shield
+  - Group: S_SURA_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Acolyte_earring
+          - Item: S_Acolyte_Pendant
+          - Item: S_Monk_Shoes
+          - Item: S_Monk_Armor
+          - Item: S_Sura_weapon
+          - Item: S_Sura_Shield
+  - Group: S_GUILLOTINECROSS_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Thief_Pendant
+          - Item: S_Assassin_Shoes
+          - Item: S_Assassin_Armor
+          - Item: S_Guillotine_Weapon
+          - Item: S_Guillotine_Shield
+          - Item: S_Thief_earring
+  - Group: S_SHADOWCHASER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Thief_Pendant
+          - Item: S_Rogue_Shoes
+          - Item: S_Rogue_Armor
+          - Item: S_Shadowchaser_Weapon
+          - Item: S_Shadowchaser_Shield
+          - Item: S_Thief_earring
+  - Group: S_RANGER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Archer_Pendant
+          - Item: S_Hunter_Shoes
+          - Item: S_Hunter_Armor
+          - Item: S_Ranger_Weapon
+          - Item: S_Ranger_Shield
+          - Item: S_Archer_earring
+  - Group: S_WANDERER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Archer_Pendant
+          - Item: S_Dancer_Shoes
+          - Item: S_Dancer_Armor
+          - Item: S_Wanderer_Weapon
+          - Item: S_Wanderer_Shield
+          - Item: S_Archer_earring
+  - Group: S_MINSTREL_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Archer_Pendant
+          - Item: S_Bard_Shoes
+          - Item: S_Bard_Armor
+          - Item: S_Minstrel_Weapon
+          - Item: S_Minstrel_Shield
+          - Item: S_Archer_earring
+  - Group: S_STAR_EMPEROR_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Taekwon_Weapon
+          - Item: S_Taekwon_Shield
+          - Item: S_Star_Emperor_Armor
+          - Item: S_Star_Emperor_Shoes
+  - Group: S_SOUL_REAPER_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Taekwon_Weapon
+          - Item: S_Taekwon_Shield
+          - Item: S_Soul_Reaper_Armor
+          - Item: S_Soul_Reaper_Shoes
+  - Group: S_KAGEROU_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Ninja_Weapon
+          - Item: S_Ninja_Shield
+          - Item: S_Kagerou_Armor
+          - Item: S_Kagerou_Shoes
+  - Group: S_OBORO_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Ninja_Weapon
+          - Item: S_Ninja_Shield
+          - Item: S_Oboro_Armor
+          - Item: S_Oboro_Shoes
+  - Group: S_REBELLION_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Gunslinger_Weapon
+          - Item: S_Gunslinger_Shield
+          - Item: S_Rebellion_Armor
+          - Item: S_Rebellion_Shoes
+  - Group: S_SUPERNOVICE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_SuperNovice_Weapon
+          - Item: S_SuperNovice_Shield
+  - Group: S_DORAM_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_DoramMagical_Weapon
+          - Item: S_DoramPhysical_Weapon
+          - Item: S_DoramPhysical_Shield
+          - Item: S_DoramMagical_Shield
+          - Item: S_DoramPhysical_Armor
+          - Item: S_DoramPhysical_Shoes
+          - Item: S_DoramMagical_Armor
+          - Item: S_DoramMagical_Shoes
+  - Group: S_MAMMOTH_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Mammoth_Armor
+          - Item: S_Mammoth_Shoes
+          - Item: S_Mammoth_Pendant
+          - Item: S_Mammoth_Earring
+          - Item: S_Mammoth_Weapon
+          - Item: S_Mammoth_Shield
+  - Group: S_GEMSTONE_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Gemstone_Armor
+          - Item: S_Gemstone_Shoes
+          - Item: S_Gemstone_Shield
+          - Item: S_Gemstone_Weapon
+          - Item: S_Gemstone_Earring
+          - Item: S_Gemstone_Pendent
+  - Group: S_PENE1_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Penetration_Earring
+          - Item: S_Penetration_Pendent
+          - Item: S_Exe_Ho_Weapon
+          - Item: S_Fis_In_Weapon
+          - Item: S_Sci_Hu_Weapon
+          - Item: S_Viv_Dr_Weapon
+          - Item: S_Exo_Co_Weapon
+  - Group: S_PENE2_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Penetration_Shoes
+          - Item: S_Penetration_Shield
+          - Item: S_ExeHoly_Armor
+          - Item: S_ExoCorrupt_Armor
+          - Item: S_DragonVib_Armor
+          - Item: S_SciHunting_Armor
+          - Item: S_FishInsect_Armor
+  - Group: S_TEMP1_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Tempest_Earring
+          - Item: S_Tempest_Pendent
+          - Item: S_M_Exo_Co_Weapon
+          - Item: S_M_Viv_Dr_Weapon
+          - Item: S_M_Sci_Hu_Weapon
+          - Item: S_M_Fis_In_Weapon
+          - Item: S_M_Exe_Ho_Weapon
+  - Group: S_TEMP2_CUBE
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: S_Tempest_Shield
+          - Item: S_Tempest_Shoes
+          - Item: S_M_ExeHoly_Armor
+          - Item: S_M_ExoCorrupt_Armor
+          - Item: S_M_DragonVib_Armor
+          - Item: S_M_SciHunting_Armor
+          - Item: S_M_FishInsect_Armor
+  - Group: BLACKSMITH_BLESS_BOX_3
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Blacksmith_Blessing
+            Amount: 3
+  - Group: SHADOW_HAMMER_BOX_3
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Shadow_Refine_Hammer
+            Amount: 3
+  - Group: EDP
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Poison_Bottle
+          - Item: Poison_Bottle_B
+  - Group: MF_NOTELEPORT
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Wing_Of_Fly
+          - Item: Giant_Fly_Wing
+          - Item: N_Fly_Wing
+          - Item: E_Giant_Fly_Wing
+          - Item: F_Giant_Fly_Wing
+          - Item: C_Wing_Of_Fly
+          - Item: N_Fly_Wing_
+          - Item: Compressed_Wing_Of_Fly
+          - Item: Comp_Wing_Of_Fly
+  - Group: MF_NORETURN
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Wing_Of_Butterfly
+          - Item: N_Butterfly_Wing
+          - Item: Dun_Tele_Scroll1
+          - Item: Dun_Tele_Scroll2
+          - Item: Dun_Tele_Scroll3
+          - Item: E_Dun_Tele_Scroll1
+          - Item: F_Dun_Tele_Scroll1
+          - Item: WOB_Rune
+          - Item: E_WOB_Rune
+          - Item: F_WOB_Rune
+          - Item: WOB_Schwaltz
+          - Item: E_WOB_Schwaltz
+          - Item: F_WOB_Schwaltz
+          - Item: WOB_Rachel
+          - Item: E_WOB_Rachel
+          - Item: F_WOB_Rachel
+          - Item: WOB_Local
+          - Item: E_WOB_Local
+          - Item: F_WOB_Local
+          - Item: Siege_Teleport_Scroll
+          - Item: Siege_Teleport_Scroll2
+          - Item: E_Siege_Teleport_Scroll
+  - Group: GIANT_FLY_WING
+    SubGroups:
+      - SubGroup: 0
+        List:
+          - Item: Giant_Fly_Wing
+          - Item: E_Giant_Fly_Wing
+          - Item: F_Giant_Fly_Wing
+  - Group: CLASS_SHADOW_WP_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_SuperNovice_Weapon
+            Rate: 526
+          - Item: S_Gunslinger_Weapon
+            Rate: 526
+          - Item: S_Taekwon_Weapon
+            Rate: 526
+          - Item: S_Ninja_Weapon
+            Rate: 526
+          - Item: S_DoramMagical_Weapon
+            Rate: 526
+          - Item: S_DoramPhysical_Weapon
+            Rate: 526
+          - Item: S_Runeknight_Weapon
+            Rate: 526
+          - Item: S_Royalguard_Weapon
+            Rate: 526
+          - Item: S_Mechanic_weapon
+            Rate: 526
+          - Item: S_Genetic_Weapon
+            Rate: 526
+          - Item: S_Archbishop_Weapon
+            Rate: 526
+          - Item: S_Sura_weapon
+            Rate: 526
+          - Item: S_Guillotine_Weapon
+            Rate: 526
+          - Item: S_Shadowchaser_Weapon
+            Rate: 527
+          - Item: S_Warlock_Weapon
+            Rate: 527
+          - Item: S_Sorcerer_Weapon
+            Rate: 527
+          - Item: S_Ranger_Weapon
+            Rate: 527
+          - Item: S_Minstrel_Weapon
+            Rate: 527
+          - Item: S_Wanderer_Weapon
+            Rate: 527
+  - Group: CLASS_SHADOW_AM_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_Knight_Armor
+            Rate: 555
+          - Item: S_Crusader_Armor
+            Rate: 555
+          - Item: S_Blacksmith_Armor
+            Rate: 555
+          - Item: S_Alchemist_Armor
+            Rate: 555
+          - Item: S_Priest_Armor
+            Rate: 555
+          - Item: S_Monk_Armor
+            Rate: 555
+          - Item: S_Assassin_Armor
+            Rate: 555
+          - Item: S_Rogue_Armor
+            Rate: 555
+          - Item: S_Wizard_Armor
+            Rate: 555
+          - Item: S_Sage_Armor
+            Rate: 555
+          - Item: S_Hunter_Armor
+            Rate: 555
+          - Item: S_Bard_Armor
+            Rate: 555
+          - Item: S_Dancer_Armor
+            Rate: 555
+          - Item: S_Rebellion_Armor
+            Rate: 555
+          - Item: S_Kagerou_Armor
+            Rate: 555
+          - Item: S_DoramMagical_Armor
+            Rate: 555
+          - Item: S_Oboro_Armor
+            Rate: 560
+          - Item: S_DoramPhysical_Armor
+            Rate: 560
+  - Group: CLASS_SHADOW_SU_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_Knight_Shoes
+            Rate: 555
+          - Item: S_Crusader_Shoes
+            Rate: 555
+          - Item: S_Blacksmith_Shoes
+            Rate: 555
+          - Item: S_Alchemist_Shoes
+            Rate: 555
+          - Item: S_Priest_Shoes
+            Rate: 555
+          - Item: S_Monk_Shoes
+            Rate: 555
+          - Item: S_Assassin_Shoes
+            Rate: 555
+          - Item: S_Rogue_Shoes
+            Rate: 555
+          - Item: S_Wizard_Shoes
+            Rate: 555
+          - Item: S_Sage_Shoes
+            Rate: 555
+          - Item: S_Hunter_Shoes
+            Rate: 555
+          - Item: S_Bard_Shoes
+            Rate: 555
+          - Item: S_Kagerou_Shoes
+            Rate: 555
+          - Item: S_Oboro_Shoes
+            Rate: 555
+          - Item: S_DoramPhysical_Shoes
+            Rate: 555
+          - Item: S_DoramMagical_Shoes
+            Rate: 555
+          - Item: S_Dancer_Shoes
+            Rate: 560
+          - Item: S_Rebellion_Shoes
+            Rate: 560
+  - Group: CLASS_SHADOW_SD_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_Runeknight_Shield
+            Rate: 526
+          - Item: S_Royalguard_Shield
+            Rate: 526
+          - Item: S_Mechanic_Shield
+            Rate: 526
+          - Item: S_Genetic_Shield
+            Rate: 526
+          - Item: S_Archbishop_Shield
+            Rate: 526
+          - Item: S_Sura_Shield
+            Rate: 526
+          - Item: S_Guillotine_Shield
+            Rate: 526
+          - Item: S_Shadowchaser_Shield
+            Rate: 526
+          - Item: S_Warlock_Shield
+            Rate: 526
+          - Item: S_Sorcerer_Shield
+            Rate: 526
+          - Item: S_Ranger_Shield
+            Rate: 526
+          - Item: S_Minstrel_Shield
+            Rate: 526
+          - Item: S_Wanderer_Shield
+            Rate: 526
+          - Item: S_Ninja_Shield
+            Rate: 527
+          - Item: S_Taekwon_Shield
+            Rate: 527
+          - Item: S_DoramPhysical_Shield
+            Rate: 527
+          - Item: S_DoramMagical_Shield
+            Rate: 527
+          - Item: S_SuperNovice_Shield
+            Rate: 527
+          - Item: S_Gunslinger_Shield
+            Rate: 527
+  - Group: CLASS_SHADOW_PD_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_Thief_Pendant
+            Rate: 1666
+          - Item: S_Archer_Pendant
+            Rate: 1666
+          - Item: S_Swordman_Pendant
+            Rate: 1667
+          - Item: S_Merchant_Pendant
+            Rate: 1667
+          - Item: S_Acolyte_Pendant
+            Rate: 1667
+          - Item: S_Magician_Pendant
+            Rate: 1667
+  - Group: CLASS_SHADOW_EA_CUBE
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: S_Merchant_earring
+            Rate: 1666
+          - Item: S_Acolyte_earring
+            Rate: 1666
+          - Item: S_Swordman_earring
+            Rate: 1667
+          - Item: S_Magician_earring
+            Rate: 1667
+          - Item: S_Thief_earring
+            Rate: 1667
+          - Item: S_Archer_earring
+            Rate: 1667
+  - Group: ENCHANT_STONE_BOX30
+    SubGroups:
+      - SubGroup: 1
+        List:
+          - Item: Range_Stone_Robe_D
+            Rate: 10
+          - Item: Melee_Stone_Robe_D
+            Rate: 10
+          - Item: Magic_Stone_Robe_D
+            Rate: 10
+          - Item: SmatkStone_Robe
+            Rate: 10
+          - Item: M_PATKStone_Robe
+            Rate: 10
+          - Item: R_PATKStone_Robe
+            Rate: 10
+          - Item: ReloadStone_Robe_D
+            Rate: 10
+          - Item: CriticalStone_Robe_D
+            Rate: 10
+          - Item: Critical_Stone_Robe
+            Rate: 20
+          - Item: CastStone_Robe_D
+            Rate: 40
+          - Item: CastStone_Robe
+            Rate: 80
+          - Item: KagerouStone_Top3
+            Rate: 30
+          - Item: KagerouStone_Middle3
+            Rate: 30
+          - Item: KagerouStone_Bottom3
+            Rate: 30
+          - Item: OboroStone_Top3
+            Rate: 30
+          - Item: OboroStone_Middle3
+            Rate: 30
+          - Item: OboroStone_Bottom3
+            Rate: 30
+          - Item: DoramStone_Top3
+            Rate: 30
+          - Item: DoramStone_Middle3
+            Rate: 30
+          - Item: DoramStone_Bottom3
+            Rate: 30
+          - Item: StarStone_Top3
+            Rate: 30
+          - Item: StarStone_Middle3
+            Rate: 30
+          - Item: StarStone_Bottom3
+            Rate: 30
+          - Item: RebelStone_Top3
+            Rate: 30
+          - Item: RebelStone_Middle3
+            Rate: 30
+          - Item: RebelStone_Bottom3
+            Rate: 30
+          - Item: ReaperStone_Top3
+            Rate: 30
+          - Item: ReaperStone_Middle3
+            Rate: 30
+          - Item: ReaperStone_Bottom3
+            Rate: 30
+          - Item: SuraStone_Top3
+            Rate: 30
+          - Item: SuraStone_Middle3
+            Rate: 30
+          - Item: SuraStone_Bottom3
+            Rate: 30
+          - Item: MechanicStone_Top3
+            Rate: 30
+          - Item: MechanicStone_Middle3
+            Rate: 30
+          - Item: MechanicStone_Bottom3
+            Rate: 30
+          - Item: GuillcrossStone_Top3
+            Rate: 30
+          - Item: GuillcrossStone_Middle3
+            Rate: 30
+          - Item: GuillcrossStone_Bottom3
+            Rate: 30
+          - Item: ArchbishopStone_Top3
+            Rate: 30
+          - Item: ArchbishopStone_Middle3
+            Rate: 30
+          - Item: ArchbishopStone_Bottom3
+            Rate: 30
+          - Item: RangerStone_Top3
+            Rate: 30
+          - Item: RangerStone_Middle3
+            Rate: 30
+          - Item: RangerStone_Bottom3
+            Rate: 30
+          - Item: ShadowchasStone_Top3
+            Rate: 30
+          - Item: ShadowchasStone_Middle3
+            Rate: 30
+          - Item: ShadowchasStone_Bottom3
+            Rate: 30
+          - Item: WanderMinsStone_Top3
+            Rate: 30
+          - Item: WanderMinsStone_Middle3
+            Rate: 30
+          - Item: WanderMinsStone_Bottom3
+            Rate: 30
+          - Item: GeneticStone_Top3
+            Rate: 30
+          - Item: GeneticStone_Middle3
+            Rate: 30
+          - Item: GeneticStone_Bottom3
+            Rate: 30
+          - Item: SorcererStone_Top3
+            Rate: 30
+          - Item: SorcererStone_Middle3
+            Rate: 30
+          - Item: SorcererStone_Bottom3
+            Rate: 30
+          - Item: RuneknightStone_Top3
+            Rate: 30
+          - Item: RuneknightStone_Middle3
+            Rate: 30
+          - Item: RuneknightStone_Bottom3
+            Rate: 30
+          - Item: WarlockStone_Top3
+            Rate: 30
+          - Item: WarlockStone_Middle3
+            Rate: 30
+          - Item: WarlockStone_Bottom3
+            Rate: 30
+          - Item: RoyalguardStone_Top3
+            Rate: 30
+          - Item: RoyalguardStone_Middle3
+            Rate: 30
+          - Item: RoyalguardStone_Bottom3
+            Rate: 30
+          - Item: Stone_Robe_Box
+            Rate: 180
+          - Item: Stone_Robe2_Box
+            Rate: 180
+          - Item: Magic_Stone_Top
+            Rate: 200
+          - Item: Magic_Stone_Middle
+            Rate: 200
+          - Item: Magic_Stone_Bottom
+            Rate: 200
+          - Item: Range_Stone_Top
+            Rate: 200
+          - Item: Range_Stone
+            Rate: 200
+          - Item: Range_Stone_Bottom
+            Rate: 200
+          - Item: Melee_Stone_Top
+            Rate: 200
+          - Item: Melee_Stone_Middle
+            Rate: 200
+          - Item: Melee_Stone_Bottom
+            Rate: 200
+          - Item: ReloadStone_Top
+            Rate: 200
+          - Item: ReloadStone_Middle
+            Rate: 200
+          - Item: ReloadStone_Bottom
+            Rate: 200
+          - Item: EXPStone_Middle
+            Rate: 200
+          - Item: EXPStone_Bottom
+            Rate: 200
+          - Item: EXPStone_Top
+            Rate: 200
+          - Item: Stone_Top_Box
+            Rate: 400
+          - Item: Stone_Top2_Box
+            Rate: 400
+          - Item: Stone_Middle_Box
+            Rate: 400
+          - Item: Stone_Middle2_Box
+            Rate: 400
+          - Item: Stone_Bottom_Box
+            Rate: 400
+          - Item: Stone_Bottom2_Box
+            Rate: 400
+          - Item: CastingStone_Top
+            Rate: 400
+          - Item: CastingStone_Middle
+            Rate: 400
+          - Item: CastingStone_Bottom
+            Rate: 400
+          - Item: Critical_Stone
+            Rate: 400
+          - Item: Critical_Stone_Top
+            Rate: 400
+          - Item: Critical_Stone_Bottom
+            Rate: 400

+ 850 - 17
db/re/item_randomopt_group.yml

@@ -1567,7 +1567,7 @@ Body:
           - Option: ATTR_TOLERACE_ALL
             MinValue: 1
             MaxValue: 2
-            Chance: 50 
+            Chance: 50
           - Option: DAMAGE_SIZE_SMALL_USER
             MinValue: 3
             MaxValue: 5
@@ -11524,39 +11524,39 @@ Body:
             Chance: 714
           - Option: DAMAGE_PROPERTY_WATER_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_GROUND_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_FIRE_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_WIND_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_POISON_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_SAINT_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
           - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
       - Slot: 2
         Options:
@@ -11582,31 +11582,31 @@ Body:
             Chance: 666
           - Option: RACE_DAMAGE_PLANT
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_INSECT
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_FISHS
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_DEVIL
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_HUMAN
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_ANGEL
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: RACE_DAMAGE_DRAGON
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
           - Option: CLASS_DAMAGE_NORMAL_TARGET
             MinValue: 1
@@ -12285,3 +12285,836 @@ Body:
             MinValue: 1
             MaxValue: 5
             Chance: 769
+  - Id: 145
+    Group: Group_0    # Note: this group is left empty. It can be used to remove the current options, when applied.
+# Abyss ogh enchants. Source: https://ro.gnjoy.in.th/abyss-glastheim-1st-floor/
+  - Id: 146
+    Group: AGW1
+    Slots:
+      - Slot: 1
+        Options:
+          - Option: VAR_ATTPOWER
+            MinValue: 5
+            MaxValue: 20
+            Chance: 5000
+          - Option: VAR_ATKPERCENT
+            MinValue: 1
+            MaxValue: 5
+            Chance: 5000
+          - Option: VAR_AVOIDSUCCESSVALUE
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: VAR_CRITICALSUCCESSVALUE
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_NOTHING_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_WATER_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_FIRE_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_GROUND_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_WIND_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_POISON_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_SAINT_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+      - Slot: 2
+        Options:
+          - Option: VAR_PLUSASPD
+            MinValue: 1
+            MaxValue: 1
+            Chance: 5000
+          - Option: VAR_PLUSASPDPERCENT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: VAR_AVOIDSUCCESSVALUE
+            MinValue: 5
+            MaxValue: 15
+            Chance: 5000
+          - Option: DAMAGE_CRI_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RANGE_ATTACK_DAMAGE_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_HUMAN
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_ANIMAL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_DEVIL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_DRAGON
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_PLANT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_ANGEL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_UNDEAD
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_INSECT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_DAMAGE_FISHS
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: DAMAGE_SIZE_SMALL_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: DAMAGE_SIZE_MIDIUM_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: DAMAGE_SIZE_LARGE_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+  - Id: 147
+    Group: AGM1
+    Slots:
+      - Slot: 1
+        Options:
+          - Option: VAR_ATTMPOWER
+            MinValue: 5
+            MaxValue: 20
+            Chance: 5000
+          - Option: VAR_MAGICATKPERCENT
+            MinValue: 1
+            MaxValue: 5
+            Chance: 5000
+          - Option: VAR_PLUSASPDPERCENT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_WATER
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_WIND
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_GROUND
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_FIRE
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_SAINT
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_DARKNESS
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_POISON
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+          - Option: ADDSKILLMDAMAGE_TELEKINESIS
+            MinValue: 3
+            MaxValue: 15
+            Chance: 5000
+      - Slot: 2
+        Options:
+          - Option: VAR_PLUSASPD
+            MinValue: 1
+            MaxValue: 1
+            Chance: 5000
+          - Option: VAR_AVOIDSUCCESSVALUE
+            MinValue: 5
+            MaxValue: 15
+            Chance: 5000
+          - Option: DEC_SPELL_DELAY_TIME
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_HUMAN
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_ANIMAL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_DEVIL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_DRAGON
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_PLANT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_ANGEL
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_UNDEAD
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_INSECT
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: RACE_MDAMAGE_FISHS
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: MDAMAGE_SIZE_SMALL_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: MDAMAGE_SIZE_MIDIUM_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+          - Option: MDAMAGE_SIZE_LARGE_TARGET
+            MinValue: 3
+            MaxValue: 10
+            Chance: 5000
+  - Id: 148
+    Group: GREAT_HERO_BRAVERY
+    Slots:
+      - Slot: 1
+        Options:
+          - Option: VAR_ATTPOWER
+            MinValue: 5
+            MaxValue: 40
+            Chance: 666
+          - Option: VAR_PLUSASPD
+            MinValue: 1
+            MaxValue: 2
+            Chance: 666
+          - Option: VAR_PLUSASPDPERCENT
+            MinValue: 3
+            MaxValue: 12
+            Chance: 666
+          - Option: RANGE_ATTACK_DAMAGE_TARGET
+            MinValue: 3
+            MaxValue: 12
+            Chance: 666
+          - Option: MELEE_ATTACK_DAMAGE_TARGET
+            MinValue: 3
+            MaxValue: 12
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_NOTHING_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_WATER_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_GROUND_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_FIRE_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_WIND_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_POISON_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_SAINT_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+      - Slot: 2
+        Options:
+          - Option: VAR_ATKPERCENT
+            MinValue: 1
+            MaxValue: 7
+            Chance: 666
+          - Option: DAMAGE_CRI_TARGET
+            MinValue: 3
+            MaxValue: 12
+            Chance: 666
+          - Option: RACE_DAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_UNDEAD
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_ANIMAL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_PLANT
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_INSECT
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_FISHS
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_DEVIL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_HUMAN
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_ANGEL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_DAMAGE_DRAGON
+            MinValue: 3
+            MaxValue: 25
+            Chance: 666
+          - Option: CLASS_DAMAGE_NORMAL_TARGET
+            MinValue: 1
+            MaxValue: 12
+            Chance: 666
+          - Option: CLASS_DAMAGE_BOSS_TARGET
+            MinValue: 1
+            MaxValue: 12
+            Chance: 666
+          - Option: WEAPON_INDESTRUCTIBLE
+            Chance: 666
+  - Id: 149
+    Group: GREAT_HERO_WISDOM
+    Slots:
+      - Slot: 1
+        Options:
+          - Option: VAR_ATTMPOWER
+            MinValue: 5
+            MaxValue: 40
+            Chance: 435
+          - Option: HEAL_VALUE
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: DEC_SPELL_CAST_TIME
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: DEC_SPELL_DELAY_TIME
+            MinValue: 1
+            MaxValue: 5
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_WATER
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_GROUND
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_FIRE
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_WIND
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_POISON
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_SAINT
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_DARKNESS
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_TELEKINESIS
+            MinValue: 3
+            MaxValue: 12
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_NOTHING_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_WATER_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_GROUND_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_FIRE_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_WIND_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_POISON_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_SAINT_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_DARKNESS_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_TELEKINESIS_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_UNDEAD_TARGET
+            MinValue: 3
+            MaxValue: 25
+            Chance: 435
+      - Slot: 2
+        Options:
+          - Option: VAR_MAGICATKPERCENT
+            MinValue: 1
+            MaxValue: 7
+            Chance: 714
+          - Option: DEC_SPELL_CAST_TIME
+            MinValue: 3
+            MaxValue: 12
+            Chance: 714
+          - Option: RACE_MDAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_UNDEAD
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_ANIMAL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_PLANT
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_INSECT
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_FISHS
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_DEVIL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_HUMAN
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_ANGEL
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: RACE_MDAMAGE_DRAGON
+            MinValue: 3
+            MaxValue: 25
+            Chance: 714
+          - Option: CLASS_MDAMAGE_NORMAL
+            MinValue: 3
+            MaxValue: 12
+            Chance: 714
+          - Option: CLASS_MDAMAGE_BOSS
+            MinValue: 3
+            MaxValue: 12
+            Chance: 714
+  - Id: 150
+    Group: HERO_LT_REFINE_MELEE
+    Slots:
+    - Slot: 1
+      Options:
+      - Option: VAR_ATTPOWER
+        MinValue: 5
+        MaxValue: 45
+        Chance: 588
+      - Option: VAR_PLUSASPD
+        MinValue: 1
+        MaxValue: 2
+        Chance: 588
+      - Option: VAR_PLUSASPDPERCENT
+        MinValue: 5
+        MaxValue: 15
+        Chance: 588
+      - Option: RANGE_ATTACK_DAMAGE_TARGET
+        MinValue: 3
+        MaxValue: 12
+        Chance: 588
+      - Option: MELEE_ATTACK_DAMAGE_TARGET
+        MinValue: 3
+        MaxValue: 12
+        Chance: 588
+      - Option: VAR_CRITICALSUCCESSVALUE
+        MinValue: 3
+        MaxValue: 12
+        Chance: 588
+      - Option: DEC_SPELL_DELAY_TIME
+        MinValue: 1
+        MaxValue: 5
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_NOTHING_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_WATER_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_GROUND_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_FIRE_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_WIND_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_POISON_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_SAINT_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+      - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
+        MinValue: 5
+        MaxValue: 25
+        Chance: 588
+    - Slot: 2
+      Options:
+      - Option: VAR_ATKPERCENT
+        MinValue: 3
+        MaxValue: 7
+        Chance: 625
+      - Option: DAMAGE_CRI_TARGET
+        MinValue: 3
+        MaxValue: 12
+        Chance: 625
+      - Option: DEC_SPELL_CAST_TIME
+        MinValue: 5
+        MaxValue: 15
+        Chance: 625
+      - Option: RACE_DAMAGE_NOTHING
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_UNDEAD
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_ANIMAL
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_PLANT
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_INSECT
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_FISHS
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_DEVIL
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_HUMAN
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_ANGEL
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: RACE_DAMAGE_DRAGON
+        MinValue: 5
+        MaxValue: 25
+        Chance: 625
+      - Option: CLASS_DAMAGE_NORMAL_TARGET
+        MinValue: 5
+        MaxValue: 20
+        Chance: 625
+      - Option: CLASS_DAMAGE_BOSS_TARGET
+        MinValue: 5
+        MaxValue: 20
+        Chance: 625
+      - Option: WEAPON_INDESTRUCTIBLE
+        Chance: 625
+  - Id: 151
+    Group: HERO_LT_REFINE_MAGIC
+    Slots:
+      - Slot: 1
+        Options:
+          - Option: VAR_ATTMPOWER
+            MinValue: 5
+            MaxValue: 45
+            Chance: 435
+          - Option: VAR_PLUSASPD
+            MinValue: 1
+            MaxValue: 2
+            Chance: 435
+          - Option: DEC_SPELL_CAST_TIME
+            MinValue: 5
+            MaxValue: 20
+            Chance: 435
+          - Option: VAR_PLUSASPDPERCENT
+            MinValue: 5
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_NOTHING
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_WATER
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_GROUND
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_FIRE
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_WIND
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_POISON
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_SAINT
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_DARKNESS
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: ADDSKILLMDAMAGE_TELEKINESIS
+            MinValue: 3
+            MaxValue: 15
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_NOTHING_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_WATER_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_GROUND_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_FIRE_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_WIND_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_POISON_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_SAINT_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_DARKNESS_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_TELEKINESIS_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+          - Option: MDAMAGE_PROPERTY_UNDEAD_TARGET
+            MinValue: 5
+            MaxValue: 25
+            Chance: 435
+      - Slot: 2
+        Options:
+          - Option: VAR_MAGICATKPERCENT
+            MinValue: 3
+            MaxValue: 7
+            Chance: 666
+          - Option: DEC_SPELL_DELAY_TIME
+            MinValue: 1
+            MaxValue: 5
+            Chance: 666
+          - Option: ADDSKILLMDAMAGE_ALL
+            MinValue: 3
+            MaxValue: 12
+            Chance: 666
+          - Option: RACE_MDAMAGE_NOTHING
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_UNDEAD
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_ANIMAL
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_PLANT
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_INSECT
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_FISHS
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_DEVIL
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_HUMAN
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_ANGEL
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: RACE_MDAMAGE_DRAGON
+            MinValue: 5
+            MaxValue: 25
+            Chance: 666
+          - Option: CLASS_MDAMAGE_NORMAL
+            MinValue: 5
+            MaxValue: 20
+            Chance: 666
+          - Option: CLASS_MDAMAGE_BOSS
+            MinValue: 5
+            MaxValue: 20
+            Chance: 666

+ 285 - 197
db/re/item_reform.yml

@@ -3109,7 +3109,7 @@ Body:
         CardsAllowed: false
         ResultItem: Club_
         ChangeRefine: 2
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
         ClearSlots: true
         RemoveGrade: true
       - BaseItem: Avd_Knife
@@ -3139,11 +3139,11 @@ Body:
         CardsAllowed: false
         ResultItem: Tsurugi
         ChangeRefine: -20
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
       - BaseItem: C_Hill_Wind_Mask
         ResultItem: Katar
         ChangeRefine: 5
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
         RemoveGrade: true
       - BaseItem: SeeOtter_Fan
         Materials:
@@ -4589,200 +4589,200 @@ Body:
 #          Amount: 10
 #       ResultItem: D_Glacier_M_Mace
 #       ChangeRefine: 1
-# - Item: OS_Weapon_Reform
-#   BaseItems:
-#     - BaseItem: Beam_Claymore_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Beam_Claymore_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Meuchler_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Meuchler_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Blasti_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Blasti_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Virtual_Bow_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Virtual_Bow_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: MH_P89_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: MH_P89_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: AC_B44_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: AC_B44_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: HR_S55_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: HR_S55_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Burning_Knuckle_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Burning_Knuckle_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Cannon_Rapier_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Cannon_Rapier_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Saphir_Hall_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Saphir_Hall_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Ultio_Spes_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Ultio_Spes_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Rutilus_Stick_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Rutilus_Stick_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: ElectricFox_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: ElectricFox_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Circuit_Board_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Circuit_Board_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Kuroiro_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Kuroiro_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
-#     - BaseItem: Boost_Lance_OS
-#       MinimumRefine: 7
-#       CardsAllowed: false
-#       Materials:
-#        - Material: EP17_1_EVT02
-#          Amount: 200
-#        - Material: EP17_1_EVT39
-#          Amount: 40
-#        - Material: Weapon_Stone_1
-#          Amount: 70
-#       ResultItem: Boost_Lance_AD
-#       RandomOptionGroup: G0 # TODO: translate to our group names
+  - Item: OS_Weapon_Reform
+    BaseItems:
+      - BaseItem: Beam_Claymore_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Beam_Claymore_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Meuchler_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Meuchler_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Blasti_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Blasti_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Virtual_Bow_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Virtual_Bow_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: MH_P89_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: MH_P89_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: AC_B44_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: AC_B44_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: HR_S55_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: HR_S55_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Burning_Knuckle_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Burning_Knuckle_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Cannon_Rapier_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Cannon_Rapier_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Saphir_Hall_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Saphir_Hall_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Ultio_Spes_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Ultio_Spes_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Rutilus_Stick_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Rutilus_Stick_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: ElectricFox_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: ElectricFox_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Circuit_Board_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Circuit_Board_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Kuroiro_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Kuroiro_AD
+        RandomOptionGroup: Group_0
+      - BaseItem: Boost_Lance_OS
+        MinimumRefine: 7
+        CardsAllowed: false
+        Materials:
+         - Material: EP17_1_EVT02
+           Amount: 200
+         - Material: EP17_1_EVT39
+           Amount: 40
+         - Material: Weapon_Stone_1
+           Amount: 70
+        ResultItem: Boost_Lance_AD
+        RandomOptionGroup: Group_0
   - Item: Hero_Weapon_Up_Box_5
     BaseItems:
       - BaseItem: Up_Blade_Katar
@@ -6892,3 +6892,91 @@ Body:
 #          Amount: 150
 #       ResultItem: Blessed_Knife_LT
 #       ChangeRefine: 1
+  - Item: Dimmen_A_Reform
+    BaseItems:
+      - BaseItem: Under_Seal_D_Key
+        MaximumRefine: 0
+        CardsAllowed: false
+        Materials:
+          - Material: Dimmension_Jewel
+            Amount: 1
+          - Material: Dimmension_Jewelry
+            Amount: 1
+          - Material: Herosria_Jewel
+            Amount: 1
+          - Material: Creed_Of_Herosria
+            Amount: 1
+        ResultItem: Dimmension_W_Key
+      - BaseItem: Under_Seal_D_Padlock
+        MaximumRefine: 0
+        CardsAllowed: false
+        Materials:
+          - Material: Dimmension_Jewel
+            Amount: 1
+          - Material: Dimmension_Jewelry
+            Amount: 1
+          - Material: Herosria_Jewel
+            Amount: 1
+          - Material: Justice_Of_Herosria
+            Amount: 1
+        ResultItem: Dimmension_W_Padlock
+      - BaseItem: Under_Seal_D_keyring
+        MaximumRefine: 0
+        CardsAllowed: false
+        Materials:
+          - Material: Dimmension_Jewel
+            Amount: 1
+          - Material: Dimmension_Jewelry
+            Amount: 1
+          - Material: Herosria_Jewel
+            Amount: 1
+          - Material: Glory_Of_Herosria
+            Amount: 1
+        ResultItem: Dimmension_W_Keyring
+  - Item: Dimmen_A_Refine
+    BaseItems:
+      - BaseItem: Dimmension_W_Key
+        MinimumRefine: 9
+        MaximumRefine: 11
+        CardsAllowed: false
+        Materials:
+          - Material: Heros_Gold_Bar
+            Amount: 50
+          - Material: Heros_Silver_Bar
+            Amount: 100
+          - Material: Heros_Copper_Bar
+            Amount: 200
+          - Material: Heros_Iron_Bar
+            Amount: 300
+        ResultItem: Dimmension_W_Key
+        ChangeRefine: 1
+      - BaseItem: Dimmension_W_Padlock
+        MinimumRefine: 9
+        MaximumRefine: 11
+        CardsAllowed: false
+        Materials:
+          - Material: Heros_Gold_Bar
+            Amount: 50
+          - Material: Heros_Silver_Bar
+            Amount: 100
+          - Material: Heros_Copper_Bar
+            Amount: 200
+          - Material: Heros_Iron_Bar
+            Amount: 300
+        ResultItem: Dimmension_W_Padlock
+        ChangeRefine: 1
+      - BaseItem: Dimmension_W_Keyring
+        MinimumRefine: 9
+        MaximumRefine: 11
+        CardsAllowed: false
+        Materials:
+          - Material: Heros_Gold_Bar
+            Amount: 50
+          - Material: Heros_Silver_Bar
+            Amount: 100
+          - Material: Heros_Copper_Bar
+            Amount: 200
+          - Material: Heros_Iron_Bar
+            Amount: 300
+        ResultItem: Dimmension_W_Keyring
+        ChangeRefine: 1

+ 23 - 23
db/re/laphine_synthesis.yml

@@ -1387,7 +1387,7 @@ Body:
         Amount: 10
       - Item: Frozen_Stone_Fragment
         Amount: 10
-      - Item: Spirit_Jewel
+      - Item: SpritJewel
         Amount: 10
       - Item: Snowball
         Amount: 10
@@ -1419,7 +1419,7 @@ Body:
         Amount: 10
       - Item: Fine_Old_Doll
         Amount: 10
-      - Item: Old_Shell
+      - Item: OldShell
         Amount: 10
       - Item: Ein_SOLIDDUST
         Amount: 10
@@ -1602,7 +1602,7 @@ Body:
       - Item: C_Charleston_Antenna
       - Item: C_Wings_of_Uriel
       - Item: C_Pig_Nose
-      - Item: C_Cat_Ears_Hat
+      - Item: C_Cat_Ear_Hat
       - Item: C_Valkyrie_Circlet
       - Item: C_Eremes_Scarf_Black
       - Item: C_Eleanor_Wig
@@ -1738,13 +1738,13 @@ Body:
       - Item: C_Big_Foxtail
       - Item: C_T_Bear_Bag
       - Item: C_Poring_On_Shoulder
-      - Item: Costume_Yawata_Seal
+      - Item: C_FortunetellinSealed
       - Item: C_Pretty_Bear_WH
       - Item: C_Bicolor_Cat_Witch_Hat
       - Item: C_Nifl_Bloom
       - Item: C_Floating_Ball_TW
       - Item: C_Dark_Snake_Lord_Stall
-      - Item: Costume_Twin_Cannon
+      - Item: C_Twin_Canon
       - Item: C_Picnic_Basket
       - Item: C_Magic_Helm
       - Item: C_ManyStars_TW
@@ -1773,13 +1773,13 @@ Body:
       - Item: C_Disapear_Time_TW
       - Item: C_Magic_Heir_TW
       - Item: C_Blink_Eyes_Sakura
-      - Item: Costume_Angola_Intention
-      - Item: C_Stole_Of_Dominion
+      - Item: C_Angola_Intention
+      - Item: C_Stall_Of_Dominions
       - Item: C_Flowery_Vision_TH
       - Item: C_Frill_Collar
       - Item: C_Rose_Gothic_Bonnet
       - Item: C_LittleGarden
-      - Item: Costume_Twinkling_Red_Eyes
+      - Item: C_Blinking_Eyes_RD
       - Item: C_P_Ulysses_Feather
       - Item: C_DancingButterfly_TW
       - Item: C_Blue_Pencil_In_Mouth
@@ -1790,7 +1790,7 @@ Body:
       - Item: C_Frog_Hood
       - Item: C_Lude_Hood
       - Item: C_Blessings_Of_Soul
-      - Item: C_Crow
+      - Item: C_Gossip_Raven
       - Item: C_Halloween_Hat
       - Item: C_Blessed_Veil
       - Item: C_Eyes_Of_Ifrit
@@ -1799,7 +1799,7 @@ Body:
       - Item: C_Wildcat_Knit_Cap
       - Item: C_Pink_Fur_Hat
       - Item: C_Gift_Of_Snow
-      - Item: C_Large_Ribbon_Muffler_Red
+      - Item: C_L_RibbonMuff_Red
       - Item: C_Imperial_Glory
       - Item: C_Black_Shiba_Inu_Hat
       - Item: C_Black_Glasses
@@ -3272,11 +3272,11 @@ Body:
 #    RewardGroup: ENCHANTSTONE_RECIPE_3M
 #    Requirements:
 #      - Item: C_Pretty_Bear_WH
-#      - Item: Costume_Yawata_Seal
+#      - Item: C_FortunetellinSealed
 #      - Item: C_Floating_Ball_TW
 #      - Item: C_Dark_Snake_Lord_Stall
 #      - Item: C_Bicolor_Cat_Witch_Hat
-#      - Item: Costume_Twin_Cannon
+#      - Item: C_Twin_Canon
 #      - Item: C_Picnic_Basket
 #      - Item: C_Magic_Helm
 #      - Item: C_Fawn_Ear
@@ -3291,7 +3291,7 @@ Body:
 #      - Item: C_Frill_Collar
 #      - Item: C_Rose_Gothic_Bonnet
 #      - Item: C_LittleGarden
-#      - Item: Costume_Twinkling_Red_Eyes
+#      - Item: C_Blinking_Eyes_RD
 #  - Item: Egirnion_Box
 #    RewardGroup: EGIRNION_BOX
 #    Requirements:
@@ -3700,11 +3700,11 @@ Body:
 #      - Item: S_AllMighty_Pendant
 #      - Item: S_Tempest_Shield
 #      - Item: S_Tempest_Shoes
-#      - Item: S_Magic_Executioner_Holy_Water_Armor
-#      - Item: S_Magic_Exorcist_Corrupted_Armor
-#      - Item: S_Magic_Vibration_Dragon_Killer_Armor
-#      - Item: S_Magic_Scissor_Hunting_Armor
-#      - Item: S_Magic_Fishing_Insect_Net_Armor
+#      - Item: S_M_ExeHoly_Armor
+#      - Item: S_M_ExoCorrupt_Armor
+#      - Item: S_M_DragonVib_Armor
+#      - Item: S_M_SciHunting_Armor
+#      - Item: S_M_FishInsect_Armor
 #      - Item: S_Plasterer's_Armor_II
 #      - Item: S_Insomniac_Shoes_II
 #      - Item: S_Peerless_Armor_II
@@ -3728,11 +3728,11 @@ Body:
 #      - Item: S_Mortal_Blow_Pendant
 #      - Item: S_Penetration_Shoes
 #      - Item: S_Penetration_Shield
-#      - Item: S_Executioner_Holy_Water_Armor
-#      - Item: S_Exorcist_Corrupted_Armor
-#      - Item: S_Vibration_Dragon_Killer_Armor
-#      - Item: S_Scissor_Hunting_Armor
-#      - Item: S_Fishing_Insect_Net_Armor
+#      - Item: S_ExeHoly_Armor
+#      - Item: S_ExoCorrupt_Armor
+#      - Item: S_DragonVib_Armor
+#      - Item: S_SciHunting_Armor
+#      - Item: S_FishInsect_Armor
 #      - Item: Sentimental_Weapone_S
 #      - Item: Sentimental_Earring_S
 #      - Item: Sentimental_Pendant_S

+ 235 - 178
db/re/laphine_upgrade.yml

@@ -60,7 +60,7 @@ Body:
 #      - Item: Ein_1HSWORD
 #      - Item: Ein_1HGUN
 #      - Item: Ein_1H_Foxtail
-  - Item: Metal_Smelting_Ticket
+  - Item: Metal_Rifine_Ticket
     ResultRefine: 7
     CardsAllowed: true
     TargetItems:
@@ -74,7 +74,7 @@ Body:
       - Item: Metal_Bow
       - Item: Metal_Two_Hand_Sword
       - Item: Metal_Revolver
-      - Item: Huuma_Metal_Shuriken
+      - Item: Metal_Huuma_Shuriken
       - Item: Metal_Foxtail
 #  - Item: Ein_Ddbox2
 #    TargetItems:
@@ -2412,13 +2412,13 @@ Body:
       - Item: Illusion_Butcher
       - Item: Illusion_Gold_Lux
       - Item: Infiltrator_IL
-      - Item: Illusion_War_Axe
-      - Item: Illusion_Immaterial_Sword
-      - Item: Illusion_Iron_Driver
-      - Item: Illusion_Pole_Axe
+      - Item: War_Axe_IL
+      - Item: Immaterial_Sword_IL
+      - Item: Iron_Driver_IL
+      - Item: Pole_Axe_IL
       - Item: Book_Of_The_Apo_IL
       - Item: Balistar_IL
-      - Item: Illusion_Wing_Shuriken
+      - Item: Huuma_Bird_Wing_IL
       - Item: Wizardy_Staff_IL
       - Item: Long_Mace_IL
       - Item: Huuma_Flutter_Snow_IL
@@ -2451,13 +2451,13 @@ Body:
       - Item: Illusion_Butcher
       - Item: Illusion_Gold_Lux
       - Item: Infiltrator_IL
-      - Item: Illusion_War_Axe
-      - Item: Illusion_Immaterial_Sword
-      - Item: Illusion_Iron_Driver
-      - Item: Illusion_Pole_Axe
+      - Item: War_Axe_IL
+      - Item: Immaterial_Sword_IL
+      - Item: Iron_Driver_IL
+      - Item: Pole_Axe_IL
       - Item: Book_Of_The_Apo_IL
       - Item: Balistar_IL
-      - Item: Illusion_Wing_Shuriken
+      - Item: Huuma_Bird_Wing_IL
       - Item: Wizardy_Staff_IL
       - Item: Long_Mace_IL
       - Item: Huuma_Flutter_Snow_IL
@@ -2560,6 +2560,28 @@ Body:
       - Item: Up_Crimson_Rose
       - Item: Up_OneSkyOneSun
       - Item: Up_SoulWeight
+      - Item: Comp_Iron_Staff
+      - Item: Comp_Undine_Spear_K
+      - Item: Comp_Royal_Bow_K
+      - Item: Comp_Shadow_Staff_K
+      - Item: Comp_Iron_Nail_K
+      - Item: Comp_Sword_Of_Bluefire
+      - Item: Comp_Oriental_Sword
+      - Item: Comp_Narcis_Bow
+      - Item: Comp_Avenger
+      - Item: Comp_Magic_Sword
+      - Item: Comp_D_Hunt_Bible_K
+      - Item: Comp_Shiver_Katar_K_TH
+      - Item: Comp_Demon_S_Shot
+      - Item: Comp_Sharp_Wind_Sword
+      - Item: Comp_Fog_Dew_Sword
+      - Item: Comp_Crimson_Rose
+      - Item: Comp_The_Black_Gatling
+      - Item: Comp_MeawFoxtail
+      - Item: Comp_Dragonic_Slayer
+      - Item: Comp_Fatalist
+      - Item: Comp_Light_Blade
+      - Item: Comp_Scalet_DragonL_Bow
   - Item: Ancient_Hero_Wisdom
     RandomOptionGroup: ANCIENT_HERO_WISDOM
     TargetItems:
@@ -2634,6 +2656,28 @@ Body:
       - Item: Up_Crimson_Rose
       - Item: Up_OneSkyOneSun
       - Item: Up_SoulWeight
+      - Item: Comp_Iron_Staff
+      - Item: Comp_Undine_Spear_K
+      - Item: Comp_Royal_Bow_K
+      - Item: Comp_Shadow_Staff_K
+      - Item: Comp_Iron_Nail_K
+      - Item: Comp_Sword_Of_Bluefire
+      - Item: Comp_Oriental_Sword
+      - Item: Comp_Narcis_Bow
+      - Item: Comp_Avenger
+      - Item: Comp_Magic_Sword
+      - Item: Comp_D_Hunt_Bible_K
+      - Item: Comp_Shiver_Katar_K_TH
+      - Item: Comp_Demon_S_Shot
+      - Item: Comp_Sharp_Wind_Sword
+      - Item: Comp_Fog_Dew_Sword
+      - Item: Comp_Crimson_Rose
+      - Item: Comp_The_Black_Gatling
+      - Item: Comp_MeawFoxtail
+      - Item: Comp_Dragonic_Slayer
+      - Item: Comp_Fatalist
+      - Item: Comp_Light_Blade
+      - Item: Comp_Scalet_DragonL_Bow
   - Item: Boost_Up_1
     ResultRefine: 10
     MaximumRefine: 9
@@ -2657,21 +2701,21 @@ Body:
     TargetItems:
       - Item: Boost_TH_Sword
       - Item: Boost_Katar
-      - Item: Boost_Mace
+      - Item: Boost_Hall
       - Item: Boost_Staff
       - Item: Boost_Bow
       - Item: Boost_Spear
       - Item: Boost_Sword
       - Item: Boost_Dagger
-      - Item: Boost_Spellbook
+      - Item: Boost_Spl_Book
       - Item: Boost_Guitar
-      - Item: Boost_Knuckles
+      - Item: Boost_Knuckle
       - Item: Boost_Whip
       - Item: Boost_Nindo
       - Item: Boost_Gatling
       - Item: Boost_Axe
-      - Item: Boost_Book
-      - Item: Boost_Rod
+      - Item: Boost_Text
+      - Item: Boost_Soul_Rod
       - Item: Boost_Foxtail
   - Item: Metal_7_Ticket
     ResultRefine: 7
@@ -2689,7 +2733,7 @@ Body:
       - Item: Metal_Bow
       - Item: Metal_Foxtail
       - Item: Metal_Revolver
-      - Item: Huuma_Metal_Shuriken
+      - Item: Metal_Huuma_Shuriken
   - Item: Noblesse_Rifine_Ticket
     ResultRefine: 9
     CardsAllowed: true
@@ -4184,80 +4228,82 @@ Body:
       - Item: Nurse_Cap_IL
       - Item: Puente_Robe_IL
       - Item: Apple_Of_Archer_IL
-#  - Item: Great_Hero_Bravery
-#    TargetItems:
-#      - Item: Up_Oriental_Sword
-#      - Item: Up_Dragonic_Slayer
-#      - Item: Up_Shiver_Katar_K
-#      - Item: Up_Blade_Katar
-#      - Item: Up_Sword_Of_Bluefire
-#      - Item: Up_Slate_Sword
-#      - Item: Up_Narcis_Bow
-#      - Item: Up_Trumpet_Shell_K
-#      - Item: Up_Barb_Wire_K
-#      - Item: Up_Avenger
-#      - Item: Up_Magic_Sword
-#      - Item: Up_Fatalist
-#      - Item: Up_Meteor_Striker
-#      - Item: Up_Royal_Bow_K
-#      - Item: Up_Scalet_Dragon_L_Bow
-#      - Item: Up_Shadow_Staff_K
-#      - Item: Up_Freezing_Rod
-#      - Item: Up_Iron_Nail_K
-#      - Item: Up_Ray_Knuckle
-#      - Item: Up_Undine_Spear_K
-#      - Item: Up_Light_Blade
-#      - Item: Up_Iron_Staff
-#      - Item: Up_Blue_Crystal_Staff
-#      - Item: Up_Demon_Hunting_Bible
-#      - Item: Up_Saint_Hall
-#      - Item: Up_MeawFoxtail
-#      - Item: Up_Fog_Dew_Sword
-#      - Item: Up_Humma_Clear
-#      - Item: Up_Master_Soul_Rifle
-#      - Item: Up_Golden_L_Launcher
-#      - Item: Up_The_Black_Gatling
-#      - Item: Up_Demon_S_Shot
-#      - Item: Up_Crimson_Rose
-#      - Item: Up_OneSkyOneSun
-#      - Item: Up_SoulWeight
-#  - Item: Great_Hero_Wisdom
-#    TargetItems:
-#      - Item: Up_Oriental_Sword
-#      - Item: Up_Dragonic_Slayer
-#      - Item: Up_Shiver_Katar_K
-#      - Item: Up_Blade_Katar
-#      - Item: Up_Sword_Of_Bluefire
-#      - Item: Up_Slate_Sword
-#      - Item: Up_Narcis_Bow
-#      - Item: Up_Trumpet_Shell_K
-#      - Item: Up_Barb_Wire_K
-#      - Item: Up_Avenger
-#      - Item: Up_Magic_Sword
-#      - Item: Up_Fatalist
-#      - Item: Up_Meteor_Striker
-#      - Item: Up_Royal_Bow_K
-#      - Item: Up_Scalet_Dragon_L_Bow
-#      - Item: Up_Shadow_Staff_K
-#      - Item: Up_Freezing_Rod
-#      - Item: Up_Iron_Nail_K
-#      - Item: Up_Ray_Knuckle
-#      - Item: Up_Undine_Spear_K
-#      - Item: Up_Light_Blade
-#      - Item: Up_Iron_Staff
-#      - Item: Up_Blue_Crystal_Staff
-#      - Item: Up_Demon_Hunting_Bible
-#      - Item: Up_Saint_Hall
-#      - Item: Up_MeawFoxtail
-#      - Item: Up_Fog_Dew_Sword
-#      - Item: Up_Humma_Clear
-#      - Item: Up_Master_Soul_Rifle
-#      - Item: Up_Golden_L_Launcher
-#      - Item: Up_The_Black_Gatling
-#      - Item: Up_Demon_S_Shot
-#      - Item: Up_Crimson_Rose
-#      - Item: Up_OneSkyOneSun
-#      - Item: Up_SoulWeight
+  - Item: Great_Hero_Bravery
+    RandomOptionGroup: GREAT_HERO_BRAVERY
+    TargetItems:
+      - Item: Up_Oriental_Sword
+      - Item: Up_Dragonic_Slayer
+      - Item: Up_Shiver_Katar_K
+      - Item: Up_Blade_Katar
+      - Item: Up_Sword_Of_Bluefire
+      - Item: Up_Slate_Sword
+      - Item: Up_Narcis_Bow
+      - Item: Up_Trumpet_Shell_K
+      - Item: Up_Barb_Wire_K
+      - Item: Up_Avenger
+      - Item: Up_Magic_Sword
+      - Item: Up_Fatalist
+      - Item: Up_Meteor_Striker
+      - Item: Up_Royal_Bow_K
+      - Item: Up_Scalet_Dragon_L_Bow
+      - Item: Up_Shadow_Staff_K
+      - Item: Up_Freezing_Rod
+      - Item: Up_Iron_Nail_K
+      - Item: Up_Ray_Knuckle
+      - Item: Up_Undine_Spear_K
+      - Item: Up_Light_Blade
+      - Item: Up_Iron_Staff
+      - Item: Up_Blue_Crystal_Staff
+      - Item: Up_Demon_Hunting_Bible
+      - Item: Up_Saint_Hall
+      - Item: Up_MeawFoxtail
+      - Item: Up_Fog_Dew_Sword
+      - Item: Up_Humma_Clear
+      - Item: Up_Master_Soul_Rifle
+      - Item: Up_Golden_L_Launcher
+      - Item: Up_The_Black_Gatling
+      - Item: Up_Demon_S_Shot
+      - Item: Up_Crimson_Rose
+      - Item: Up_OneSkyOneSun
+      - Item: Up_SoulWeight
+  - Item: Great_Hero_Wisdom
+    RandomOptionGroup: GREAT_HERO_WISDOM
+    TargetItems:
+      - Item: Up_Oriental_Sword
+      - Item: Up_Dragonic_Slayer
+      - Item: Up_Shiver_Katar_K
+      - Item: Up_Blade_Katar
+      - Item: Up_Sword_Of_Bluefire
+      - Item: Up_Slate_Sword
+      - Item: Up_Narcis_Bow
+      - Item: Up_Trumpet_Shell_K
+      - Item: Up_Barb_Wire_K
+      - Item: Up_Avenger
+      - Item: Up_Magic_Sword
+      - Item: Up_Fatalist
+      - Item: Up_Meteor_Striker
+      - Item: Up_Royal_Bow_K
+      - Item: Up_Scalet_Dragon_L_Bow
+      - Item: Up_Shadow_Staff_K
+      - Item: Up_Freezing_Rod
+      - Item: Up_Iron_Nail_K
+      - Item: Up_Ray_Knuckle
+      - Item: Up_Undine_Spear_K
+      - Item: Up_Light_Blade
+      - Item: Up_Iron_Staff
+      - Item: Up_Blue_Crystal_Staff
+      - Item: Up_Demon_Hunting_Bible
+      - Item: Up_Saint_Hall
+      - Item: Up_MeawFoxtail
+      - Item: Up_Fog_Dew_Sword
+      - Item: Up_Humma_Clear
+      - Item: Up_Master_Soul_Rifle
+      - Item: Up_Golden_L_Launcher
+      - Item: Up_The_Black_Gatling
+      - Item: Up_Demon_S_Shot
+      - Item: Up_Crimson_Rose
+      - Item: Up_OneSkyOneSun
+      - Item: Up_SoulWeight
   - Item: Vampire_Box_IL
     ResultRefineMinimum: 7
     ResultRefineMaximum: 10
@@ -4303,12 +4349,12 @@ Body:
     MaximumRefine: 9
     CardsAllowed: true
     TargetItems:
-      - Item: Illusion_Wing_Shuriken
-      - Item: Illusion_War_Axe
-      - Item: Illusion_Immaterial_Sword
-      - Item: Illusion_Iron_Driver
-      - Item: Illusion_Pole_Axe
-      - Item: Illusion_Fancy_Flower
+      - Item: Huuma_Bird_Wing_IL
+      - Item: War_Axe_IL
+      - Item: Immaterial_Sword_IL
+      - Item: Iron_Driver_IL
+      - Item: Pole_Axe_IL
+      - Item: Fancy_Flower_IL
   - Item: S_Turtle_Is_Box_IL
     ResultRefineMinimum: 9
     ResultRefineMaximum: 12
@@ -4316,12 +4362,12 @@ Body:
     MaximumRefine: 11
     CardsAllowed: true
     TargetItems:
-      - Item: Illusion_Wing_Shuriken
-      - Item: Illusion_War_Axe
-      - Item: Illusion_Immaterial_Sword
-      - Item: Illusion_Iron_Driver
-      - Item: Illusion_Pole_Axe
-      - Item: Illusion_Fancy_Flower
+      - Item: Huuma_Bird_Wing_IL
+      - Item: War_Axe_IL
+      - Item: Immaterial_Sword_IL
+      - Item: Iron_Driver_IL
+      - Item: Pole_Axe_IL
+      - Item: Fancy_Flower_IL
   - Item: Teddy_Bear_Box_IL
     ResultRefineMinimum: 7
     ResultRefineMaximum: 10
@@ -4968,80 +5014,82 @@ Body:
 #      - Item: EC_B_Staff
 #      - Item: SP_B_Saber
 #      - Item: SI_B_Saber
-#  - Item: Costama_Egg69
-#    TargetItems:
-#      - Item: Saint_Hall_LT
-#      - Item: Undine_Spear_K_LT
-#      - Item: Demon_Hunting_Bible_LT
-#      - Item: Light_Blade_LT
-#      - Item: Magic_Sword_LT
-#      - Item: Fatalist_LT
-#      - Item: Iron_Staff_LT
-#      - Item: Blue_Crystal_Staff_LT
-#      - Item: Shadow_Staff_K_LT
-#      - Item: Freezing_Rod_LT
-#      - Item: Iron_Nail_K_LT
-#      - Item: Ray_Knuckle_LT
-#      - Item: Scalet_Dragon_L_Bow_LT
-#      - Item: Royal_Bow_K_LT
-#      - Item: Slate_Sword_LT
-#      - Item: Sword_Of_Bluefire_LT
-#      - Item: Trumpet_Shell_K_LT
-#      - Item: Barb_Wire_K_LT
-#      - Item: Narcis_Bow_LT
-#      - Item: Avenger_LT
-#      - Item: Meteor_Striker_LT
-#      - Item: Oriental_Sword_LT
-#      - Item: Dragonic_Slayer_LT
-#      - Item: Shiver_Katar_K_LT
-#      - Item: Blade_Katar_LT
-#      - Item: Humma_Clear_LT
-#      - Item: Fog_Dew_Sword_LT
-#      - Item: Crimson_Rose_LT
-#      - Item: Master_Soul_Rifle_LT
-#      - Item: Demon_S_Shot_LT
-#      - Item: The_Black_Gatling_LT
-#      - Item: Golden_L_Launcher_LT
-#      - Item: MeawFoxtail_LT
-#      - Item: OneSkyOneSun_LT
-#      - Item: SoulWeight_LT
-#  - Item: Hero_LT_Refine_Magic
-#    TargetItems:
-#      - Item: Saint_Hall_LT
-#      - Item: Undine_Spear_K_LT
-#      - Item: Demon_Hunting_Bible_LT
-#      - Item: Light_Blade_LT
-#      - Item: Magic_Sword_LT
-#      - Item: Fatalist_LT
-#      - Item: Iron_Staff_LT
-#      - Item: Blue_Crystal_Staff_LT
-#      - Item: Shadow_Staff_K_LT
-#      - Item: Freezing_Rod_LT
-#      - Item: Iron_Nail_K_LT
-#      - Item: Ray_Knuckle_LT
-#      - Item: Scalet_Dragon_L_Bow_LT
-#      - Item: Royal_Bow_K_LT
-#      - Item: Slate_Sword_LT
-#      - Item: Sword_Of_Bluefire_LT
-#      - Item: Trumpet_Shell_K_LT
-#      - Item: Barb_Wire_K_LT
-#      - Item: Narcis_Bow_LT
-#      - Item: Avenger_LT
-#      - Item: Meteor_Striker_LT
-#      - Item: Oriental_Sword_LT
-#      - Item: Dragonic_Slayer_LT
-#      - Item: Shiver_Katar_K_LT
-#      - Item: Blade_Katar_LT
-#      - Item: Humma_Clear_LT
-#      - Item: Fog_Dew_Sword_LT
-#      - Item: Crimson_Rose_LT
-#      - Item: Master_Soul_Rifle_LT
-#      - Item: Demon_S_Shot_LT
-#      - Item: The_Black_Gatling_LT
-#      - Item: Golden_L_Launcher_LT
-#      - Item: MeawFoxtail_LT
-#      - Item: OneSkyOneSun_LT
-#      - Item: SoulWeight_LT
+  - Item: Hero_LT_Refine_Melee
+    RandomOptionGroup: HERO_LT_REFINE_MELEE
+    TargetItems:
+      - Item: Saint_Hall_LT
+      - Item: Undine_Spear_K_LT
+      - Item: Demon_Hunting_Bible_LT
+      - Item: Light_Blade_LT
+      - Item: Magic_Sword_LT
+      - Item: Fatalist_LT
+      - Item: Iron_Staff_LT
+      - Item: Blue_Crystal_Staff_LT
+      - Item: Shadow_Staff_K_LT
+      - Item: Freezing_Rod_LT
+      - Item: Iron_Nail_K_LT
+      - Item: Ray_Knuckle_LT
+      - Item: Scalet_Dragon_L_Bow_LT
+      - Item: Royal_Bow_K_LT
+      - Item: Slate_Sword_LT
+      - Item: Sword_Of_Bluefire_LT
+      - Item: Trumpet_Shell_K_LT
+      - Item: Barb_Wire_K_LT
+      - Item: Narcis_Bow_LT
+      - Item: Avenger_LT
+      - Item: Meteor_Striker_LT
+      - Item: Oriental_Sword_LT
+      - Item: Dragonic_Slayer_LT
+      - Item: Shiver_Katar_K_LT
+      - Item: Blade_Katar_LT
+      - Item: Humma_Clear_LT
+      - Item: Fog_Dew_Sword_LT
+      - Item: Crimson_Rose_LT
+      - Item: Master_Soul_Rifle_LT
+      - Item: Demon_S_Shot_LT
+      - Item: The_Black_Gatling_LT
+      - Item: Golden_L_Launcher_LT
+      - Item: MeawFoxtail_LT
+      - Item: OneSkyOneSun_LT
+      - Item: SoulWeight_LT
+  - Item: Hero_LT_Refine_Magic
+    RandomOptionGroup: HERO_LT_REFINE_MAGIC
+    TargetItems:
+      - Item: Saint_Hall_LT
+      - Item: Undine_Spear_K_LT
+      - Item: Demon_Hunting_Bible_LT
+      - Item: Light_Blade_LT
+      - Item: Magic_Sword_LT
+      - Item: Fatalist_LT
+      - Item: Iron_Staff_LT
+      - Item: Blue_Crystal_Staff_LT
+      - Item: Shadow_Staff_K_LT
+      - Item: Freezing_Rod_LT
+      - Item: Iron_Nail_K_LT
+      - Item: Ray_Knuckle_LT
+      - Item: Scalet_Dragon_L_Bow_LT
+      - Item: Royal_Bow_K_LT
+      - Item: Slate_Sword_LT
+      - Item: Sword_Of_Bluefire_LT
+      - Item: Trumpet_Shell_K_LT
+      - Item: Barb_Wire_K_LT
+      - Item: Narcis_Bow_LT
+      - Item: Avenger_LT
+      - Item: Meteor_Striker_LT
+      - Item: Oriental_Sword_LT
+      - Item: Dragonic_Slayer_LT
+      - Item: Shiver_Katar_K_LT
+      - Item: Blade_Katar_LT
+      - Item: Humma_Clear_LT
+      - Item: Fog_Dew_Sword_LT
+      - Item: Crimson_Rose_LT
+      - Item: Master_Soul_Rifle_LT
+      - Item: Demon_S_Shot_LT
+      - Item: The_Black_Gatling_LT
+      - Item: Golden_L_Launcher_LT
+      - Item: MeawFoxtail_LT
+      - Item: OneSkyOneSun_LT
+      - Item: SoulWeight_LT
 #  - Item: Lens_Craft_Stone
 #    TargetItems:
 #      - Item: Deepblue_Sunglasses_
@@ -5156,3 +5204,12 @@ Body:
       - Item: Subject_CapeRange_TH
       - Item: Subject_CapeMagic_TH
       - Item: Subject_CapeMelee_TH
+  - Item: GMT_Robe_Stone
+    ResultRefine: 12
+    MaximumRefine: 11
+    CardsAllowed: true
+    TargetItems:
+      - Item: Geffen_Magic_Muffler
+      - Item: Anti_Magic_Manteau
+      - Item: Comp_Anti_Manteau_TH
+      - Item: Comp_Geffen_M_Muffle

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 889 - 95
db/re/mob_db.yml


+ 300 - 0
db/re/mob_skill_db.txt

@@ -12863,6 +12863,55 @@
 3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,35000,yes,self,always,0,,,,,,,53
 3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,30000,yes,self,always,0,,,,,,,54
 
+// Illusion frozen
+3792,ILL_GAZETI@CR_AUTOGUARD,idle,249,5,1500,0,30000,yes,self,always,0,,,,,,,
+3792,ILL_GAZETI@MG_COLDBOLT,chase,14,5,2000,0,5000,no,target,always,0,,,,,,,
+3792,ILL_GAZETI@MG_COLDBOLT,attack,14,9,2000,0,5000,no,target,always,0,,,,,,,
+3792,ILL_GAZETI@NPC_GUIDEDATTACK,attack,172,2,500,0,20000,no,target,always,0,,,,,,,
+3792,ILL_GAZETI@NPC_WATERATTACK,attack,184,4,2000,0,5000,no,target,always,0,,,,,,,
+3793,ILL_SNOWIER@NPC_WATERATTACK,attack,184,5,500,500,5000,no,target,always,0,,,,,,,
+3793,ILL_SNOWIER@NPC_CRITICALSLASH,attack,170,1,500,0,5000,yes,target,always,0,,,,,,,
+3793,ILL_SNOWIER@SM_BASH,attack,5,7,1000,0,5000,yes,target,always,0,,,,,,,
+3793,ILL_SNOWIER@WZ_FROSTNOVA,attack,88,1,10000,1500,20000,no,self,always,0,,,,,,,
+3793,ILL_SNOWIER@SM_ENDURE,attack,8,5,5000,0,5000,yes,self,longrangeattacked,0,,,,,,,
+3793,ILL_SNOWIER@BS_HAMMERFALL,attack,110,4,1500,1000,4000,no,target,myhpltmaxrate,50,,,,,,,
+3793,ILL_SNOWIER@CR_AUTOGUARD,attack,249,5,1000,0,300000,yes,self,myhpltmaxrate,50,,,,,,,
+3794,ILL_ICE_TITAN@MG_FROSTDIVER,chase,15,9,10000,800,5000,no,target,always,0,,,,,,,
+3794,ILL_ICE_TITAN@MG_FROSTDIVER,attack,15,9,2000,800,5000,no,target,always,0,,,,,,,
+3794,ILL_ICE_TITAN@NPC_COMBOATTACK,attack,171,4,1000,700,5000,no,target,always,0,,,,,,36,
+3794,ILL_ICE_TITAN@NPC_WATERATTACK,attack,184,4,2000,0,5000,no,target,always,0,,,,,,29,
+3794,ILL_ICE_TITAN@BS_HAMMERFALL,attack,110,5,500,1500,5000,no,target,always,0,,,,,,,
+3794,ILL_ICE_TITAN@NPC_MAGICMIRROR,attack,671,1,200,500,30000,no,self,myhpltmaxrate,50,,,,,,,
+3796,ILL_KTULLANUX@NPC_ALLHEAL,idle,687,1,10000,0,20000,yes,self,myhpltmaxrate,90,,,,,,,
+3796,ILL_KTULLANUX@NPC_WATERATTACK,attack,184,10,1000,500,5000,no,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_JACKFROST,attack,720,5,1000,1500,35000,no,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+3796,ILL_KTULLANUX@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_SUMMONSLAVE,attack,196,1,10000,700,30000,no,self,slavele,3,,,,,,,
+3796,ILL_KTULLANUX@NPC_SUMMONSLAVE,idle,196,1,10000,700,30000,no,self,slavele,3,,,,,,,
+// 3796,ILL_KTULLANUX@NPC_WIDEFREEZE2,chase,763,5,10000,0,20000,yes,target,myhpltmaxrate,80,,,,,,32,
+// 3796,ILL_KTULLANUX@NPC_WIDEFREEZE2,attack,763,5,10000,0,20000,yes,target,myhpltmaxrate,80,,,,,,32,
+3796,ILL_KTULLANUX@SA_DISPELL,attack,289,5,10000,0,15000,yes,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@SA_DISPELL,chase,289,5,10000,0,15000,yes,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_ARMORBRAKE,attack,344,10,2000,0,5000,yes,target,always,0,,,,,,29,
+3796,ILL_KTULLANUX@MG_FROSTDIVER,idle,15,40,5000,500,7000,no,target,longrangeattacked,0,,,,,,,
+3796,ILL_KTULLANUX@MG_FROSTDIVER,chase,15,40,5000,500,7000,no,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_STORMGUST,chase,89,10,5000,500,20000,no,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_STORMGUST,attack,89,10,5000,1000,20000,no,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_WATERBALL,chase,86,10,5000,0,20000,yes,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_WATERBALL,attack,86,10,5000,0,20000,yes,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_FROSTNOVA,chase,88,10,5000,0,20000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@WZ_FROSTNOVA,attack,88,10,5000,0,20000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_POWERUP,attack,349,5,2000,0,100000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_POWERUP,attack,349,5,10000,0,25000,yes,self,myhpltmaxrate,30,,,,,,,
+3796,ILL_KTULLANUX@NPC_AGIUP,attack,350,5,2000,0,100000,yes,self,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_AGIUP,attack,350,5,10000,0,25000,yes,self,myhpltmaxrate,30,,,,,,,
+3796,ILL_KTULLANUX@NPC_CRITICALWOUND,attack,673,3,4000,0,50000,yes,target,always,0,,,,,,,
+3796,ILL_KTULLANUX@NPC_MENTALBREAKER,attack,159,5,10000,0,5000,yes,target,skillused,490,,,,,,,
+3796,ILL_KTULLANUX@WZ_WATERBALL,attack,86,10,10000,0,5000,yes,target,skillused,271,,,,,,,
+
 // Poring Village instance
 3810,MD_KING_PORING@SM_BASH,attack,5,3,1000,1000,9000,yes,target,always,0,,,,,,,60
 3810,MD_KING_PORING@MG_FIREBALL,attack,17,3,1000,1000,9000,yes,target,always,0,,,,,,,61
@@ -13027,6 +13076,92 @@
 20382,G Twin Caput@NPC_POISON,attack,176,2,500,800,5000,no,target,always,0,,,,,,,
 20382,G Twin Caput@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,29,
 
+// Abyss OGH
+20367,RAYDRIC_H@KN_SPEARBOOMERANG,idle,59,5,3000,0,15000,yes,target,always,0,,,,,,,
+20367,RAYDRIC_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20367,RAYDRIC_H@NPC_EMOTION,chase,197,1,2000,0,30000,yes,self,always,0,0x0091,,,,,19,
+20367,RAYDRIC_H@KN_SPEARBOOMERANG,chase,59,5,3000,0,30000,yes,target,always,0,,,,,,,
+20367,RAYDRIC_H@CR_AUTOGUARD,chase,249,4,4000,0,300000,yes,self,always,0,,,,,,,
+20367,RAYDRIC_H@NPC_GUIDEDATTACK,chase,172,5,5000,300,30000,no,target,always,0,,,,,,,
+20367,RAYDRIC_H@KN_PIERCE,chase,56,4,5000,300,30000,no,target,always,0,,,,,,,
+20367,RAYDRIC_H@SM_MAGNUM,attack,7,8,4000,500,60000,no,self,always,0,,,,,,,
+20367,RAYDRIC_H@NPC_STUNATTACK,attack,179,5,5000,200,30000,no,target,casttargeted,0,,,,,,,
+20367,RAYDRIC_H@CR_SHIELDCHARGE,attack,250,5,3000,0,30000,yes,target,always,0,,,,,,,
+20367,RAYDRIC_H@NPC_DARKNESSATTACK,attack,190,4,4000,500,30000,no,target,always,0,,,,,,,
+20367,RAYDRIC_H@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20368,RAYDRIC_ARCHER_H@NPC_PIERCINGATT,attack,158,3,3000,500,60000,yes,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_GUIDEDATTACK,attack,172,4,7000,300,30000,yes,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@AC_SHOWER,attack,47,7,5000,200,60000,no,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_MAGICALATTACK,attack,192,3,5000,800,20000,no,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_POISONATTACK,attack,188,3,5000,300,30000,no,target,casttargeted,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_BLINDATTACK,attack,177,3,5000,300,30000,no,target,longrangeattacked,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@AC_DOUBLE,attack,46,7,3000,500,12000,no,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@AC_CHARGEARROW,attack,148,1,2000,1000,18000,yes,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_STUNATTACK,attack,179,5,7000,200,30000,no,target,casttargeted,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@NPC_CURSEATTACK,attack,181,5,5000,300,80000,no,target,always,0,,,,,,,
+20368,RAYDRIC_ARCHER_H@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20369,GARGOYLE_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20369,GARGOYLE_H@AC_CHARGEARROW,attack,148,1,3000,0,30000,yes,target,always,0,,,,,,,
+20369,GARGOYLE_H@NPC_BLINDATTACK,attack,177,5,3000,0,30000,yes,target,always,0,,,,,,,
+20369,GARGOYLE_H@NPC_WATERATTACK,attack,184,3,4000,0,20000,yes,target,always,0,,,,,,,
+20369,GARGOYLE_H@NPC_EMOTION,attack,197,1,2000,0,30000,yes,self,always,0,0x0091,,,,,19,
+20369,GARGOYLE_H@NPC_SILENCEATTACK,attack,178,5,5000,200,60000,no,target,casttargeted,0,,,,,,,
+20369,GARGOYLE_H@MG_FROSTDIVER,attack,15,5,5000,200,30000,no,target,casttargeted,0,,,,,,,
+20370,STING_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20370,STING_H@NPC_EMOTION,chase,197,1,200,0,5000,yes,self,always,0,0x0081,,,,,19,
+20370,STING_H@WZ_HEAVENDRIVE,chase,91,3,7000,500,30000,no,target,skillused,18,,,,,,,
+20370,STING_H@NPC_POISONATTACK,chase,188,3,5000,300,30000,no,target,casttargeted,0,,,,,,,
+20370,STING_H@AL_DECAGI,chase,30,5,2000,500,10000,no,target,always,0,,,,,,,
+20370,STING_H@WZ_QUAGMIRE,chase,92,5,500,700,15000,no,target,always,0,,,,,,,
+20370,STING_H@NPC_POISON,chase,176,5,6000,500,25000,no,target,always,0,,,,,,,
+20370,STING_H@NPC_GROUNDATTACK,attack,185,3,4000,500,25000,no,target,always,0,,,,,,,
+20370,STING_H@KN_SPEARSTAB,attack,58,10,3000,500,25000,no,target,always,0,,,,,,,
+20370,STING_H@AL_TELEPORT,walk,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20371,RAGGED_ZOMBIE_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20371,RAGGED_ZOMBIE_H@NPC_EMOTION,chase,197,1,2000,0,30000,yes,self,always,0,0x0091,,,,,19,
+20371,RAGGED_ZOMBIE_H@NPC_CURSEATTACK,attack,181,5,4000,0,30000,yes,target,always,0,,,,,,,
+20371,RAGGED_ZOMBIE_H@AC_DOUBLE,attack,46,5,1000,0,30000,yes,target,always,0,,,,,,,
+20371,RAGGED_ZOMBIE_H@AC_SHOWER,attack,47,5,3000,0,30000,yes,target,always,0,,,,,,,
+20371,RAGGED_ZOMBIE_H@NPC_MAGICALATTACK,attack,192,1,2000,800,20000,no,target,always,0,,,,,,,
+20371,RAGGED_ZOMBIE_H@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20420,WANDER_MAN_H@NPC_EMOTION,idle,197,1,7000,0,30000,yes,self,always,0,0x3695,,,,,44,
+20420,WANDER_MAN_H@NPC_EMOTION,chase,197,1,2000,0,30000,yes,self,always,0,0x0091,,,,,19,
+20420,WANDER_MAN_H@KN_SPEARBOOMERANG,chase,59,4,2000,0,60000,yes,target,always,0,,,,,,,
+20420,WANDER_MAN_H@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,always,0,,,,,,,
+20420,WANDER_MAN_H@KN_AUTOCOUNTER,attack,61,5,2000,0,5000,yes,self,always,0,,,,,,,
+20420,WANDER_MAN_H@NPC_GUIDEDATTACK,attack,172,4,7000,300,30000,yes,target,always,0,,,,,,,
+20420,WANDER_MAN_H@NPC_IGNITIONBREAK,attack,740,2,1000,300,30000,no,self,always,0,,,,,,,
+20420,WANDER_MAN_H@NPC_BLEEDING2,attack,764,1,2000,0,5000,yes,target,always,0,,,,,,,
+20420,WANDER_MAN_H@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20421,BRINARANEA_H@NPC_FIREATTACK,chase,186,10,3000,500,5000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@MG_FROSTDIVER,chase,15,40,2500,500,10000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_ICEBREATH2,chase,765,5,2000,3000,30000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_WIDEFREEZE2,chase,763,5,5000,1000,30000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@SA_DISPELL,chase,289,4,3000,0,60000,yes,target,always,0,,,,,,,
+20421,BRINARANEA_H@WZ_FROSTNOVA,attack,88,7,3000,0,5000,yes,self,always,0,,,,,,,
+20421,BRINARANEA_H@MG_COLDBOLT,attack,14,8,5000,300,60000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@WZ_STORMGUST,attack,89,7,2000,500,30000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_WIDEFREEZE2,attack,763,5,5000,1000,30000,no,target,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+20421,BRINARANEA_H@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,2,3088,,,,,,
+20421,BRINARANEA_H@AL_TELEPORT,walk,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20422,DARK_LORD_H@NPC_COMET,chase,708,5,2000,2000,30000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_HELMBRAKE,chase,345,10,1000,500,30000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@WZ_METEOR,chase,83,11,5000,500,60000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_HELLJUDGEMENT2,chase,768,5,10000,800,10000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_AGIUP,attack,350,5,10000,0,30000,yes,self,always,0,,,,,,,
+20422,DARK_LORD_H@SA_DISPELL,attack,289,5,5000,0,5000,yes,target,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_HELLJUDGEMENT2,attack,768,5,10000,800,10000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@WZ_METEOR,attack,83,11,5000,500,60000,no,target,always,0,,,,,,,
+20422,DARK_LORD_H@AL_PNEUMA,attack,25,1,5000,0,5000,yes,target,longrangeattacked,0,,,,,,,
+20422,DARK_LORD_H@NPC_CALLSLAVE,idle,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_CALLSLAVE,attack,352,1,10000,0,30000,yes,self,always,0,,,,,,,
+20422,DARK_LORD_H@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,1605,,,,,,
+20422,DARK_LORD_H@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,1605,,,,,,
+20422,DARK_LORD_H@AL_TELEPORT,walk,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+
 // Meister ABR's (Automated Battle Robot)
 20834,ABR_BATTLE_WARIOR@ABR_BATTLE_BUSTER,chase,8601,1,10000,500,5000,yes,target,always,0,,,,,,,
 20834,ABR_BATTLE_WARIOR@ABR_BATTLE_BUSTER,attack,8601,1,10000,500,5000,yes,target,always,0,,,,,,,
@@ -13041,6 +13176,171 @@
 20837,ABR_INFINITY@ABR_INFINITY_BUSTER,chase,8605,1,10000,500,5000,yes,target,always,0,,,,,,,
 20837,ABR_INFINITY@ABR_INFINITY_BUSTER,attack,8605,1,10000,500,5000,yes,target,always,0,,,,,,,
 
+// sp_rudus4
+20929,GIANT_CAPUT@NPC_EMOTION,chase,197,1,1000,0,30000,yes,self,always,0,,,,,,19,
+20929,GIANT_CAPUT@NPC_EMOTION,idle,197,1,8000,0,30000,yes,self,always,0,,,,,,44,
+20929,GIANT_CAPUT@NPC_COMBOATTACK,attack,171,2,1000,500,15000,no,target,always,0,,,,,,,
+20929,GIANT_CAPUT@LK_SPIRALPIERCE,chase,397,3,3000,500,30000,no,target,always,0,,,,,,,
+20929,GIANT_CAPUT@NPC_DARKNESSATTACK,chase,190,3,5000,500,10000,no,target,always,0,,,,,,,
+20929,GIANT_CAPUT@NPC_DARKNESSATTACK,attack,190,3,5000,500,10000,no,target,always,0,,,,,,,
+20929,GIANT_CAPUT@NPC_HELMBRAKE,attack,345,5,3000,0,30000,yes,target,always,0,,,,,,,
+20929,GIANT_CAPUT@NPC_PULSESTRIKE,attack,661,3,2000,1000,60000,no,self,always,0,,,,,,,
+20929,GIANT_CAPUT@NPC_POWERUP,attack,349,3,5000,0,60000,yes,self,myhpltmaxrate,30,,,,,,,
+20929,GIANT_CAPUT@NPC_POWERUP,chase,349,3,5000,0,60000,yes,self,myhpltmaxrate,30,,,,,,,
+20930,DOLORIAN@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
+20930,DOLORIAN@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
+20930,DOLORIAN@NPC_CRITICALWOUND,attack,673,1,2000,0,60000,yes,target,always,0,,,,,,,
+20930,DOLORIAN@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
+20930,DOLORIAN@NPC_BLOODDRAIN,chase,199,1,3000,0,30000,yes,target,always,0,,,,,,,
+20930,DOLORIAN@NPC_STONESKIN,chase,675,3,3000,500,30000,no,self,myhpltmaxrate,30,,,,,,47,
+20930,DOLORIAN@NPC_POISONATTACK,attack,188,3,2000,500,10000,no,target,always,0,,,,,,,
+20931,PLAGARION@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
+20931,PLAGARION@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
+20931,PLAGARION@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
+20931,PLAGARION@NPC_CRITICALWOUND,attack,673,3,2000,0,60000,yes,target,always,0,,,,,,,
+20931,PLAGARION@MG_FIREBALL,chase,17,3,3000,500,30000,no,target,always,0,,,,,,,
+20931,PLAGARION@NPC_FIREATTACK,chase,186,2,2000,500,30000,no,target,always,0,,,,,,,
+20931,PLAGARION@NPC_DARKSTRIKE,chase,340,5,3000,500,30000,no,target,always,0,,,,,,,
+20932,DEADRE@AL_TELEPORT,chase,26,1,3000,0,300000,yes,self,mobnearbygt,23,,,,,,12,
+20932,DEADRE@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
+20932,DEADRE@AL_HEAL,idle,28,9,7000,500,5000,no,friend,myhpltmaxrate,50,,,,,,3,
+20932,DEADRE@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,14,
+20932,DEADRE@AL_HEAL,attack,28,9,3000,500,15000,no,friend,always,0,,,,,,3,
+20932,DEADRE@NPC_DARKCROSS,attack,338,5,3000,500,15000,no,target,always,0,,,,,,,
+20932,DEADRE@AL_HOLYLIGHT,chase,156,1,3000,300,15000,no,target,always,0,,,,,,,
+20932,DEADRE@NPC_HOLYATTACK,chase,189,3,4000,500,15000,no,target,always,0,,,,,,,
+20932,DEADRE@AL_HEAL,idle,28,9,10000,700,3000,no,friend,friendhpltmaxrate,50,,,,,,,
+20933,VENEDI@NPC_EMOTION,chase,197,1,500,0,30000,yes,self,always,0,,,,,,19,
+20933,VENEDI@NPC_EMOTION,idle,197,1,2000,0,30000,yes,self,always,0,,,,,,44,
+20933,VENEDI@NPC_BLINDATTACK,chase,177,3,3000,500,30000,no,target,always,0,,,,,,,
+20933,VENEDI@NPC_POISONATTACK,attack,188,5,1000,0,5000,yes,target,always,0,,,,,,,
+20933,VENEDI@NPC_POISON_BUSTER,attack,742,1,2000,1500,30000,no,self,always,0,,,,,,,
+20933,VENEDI@NPC_CLOUD_KILL,attack,739,3,2000,500,15000,no,target,always,0,,,,,,,
+20934,R001_BESTIA@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20934,R001_BESTIA@WZ_METEOR,idle,83,9,10000,0,5000,no,target,longrangeattacked,0,,,,,,,
+20934,R001_BESTIA@AL_PNEUMA,idle,25,1,10000,0,1000,no,self,longrangeattacked,0,,,,,,,
+20934,R001_BESTIA@AL_HEAL,idle,28,11,10000,0,3000,no,friend,myhpltmaxrate,50,,,,,,,
+20934,R001_BESTIA@AL_HEAL,idle,28,5,10000,0,3000,no,friend,myhpltmaxrate,99,,,,,,,
+20934,R001_BESTIA@NPC_SUMMONSLAVE,idle,196,1,10000,1000,30000,no,self,slavele,1,,,,,,,
+20934,R001_BESTIA@NPC_CALLSLAVE,idle,352,1,10000,0,30000,no,self,always,0,,,,,,,
+20934,R001_BESTIA@NPC_FIREBREATH,chase,654,10,2000,500,5000,no,target,myhpltmaxrate,80,,,,,,,
+// 20934,R001_BESTIA@NPC_EARTHQUAKE_K,chase,750,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
+20934,R001_BESTIA@NPC_EARTHQUAKE,chase,653,5,10000,500,20000,no,self,myhpltmaxrate,40,,,,,,,
+20934,R001_BESTIA@NPC_CALLSLAVE,attack,352,1,10000,0,30000,no,self,always,0,,,,,,,
+20934,R001_BESTIA@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,2,,,,,,,
+20934,R001_BESTIA@ST_FULLSTRIP,attack,476,5,2000,0,5000,no,target,always,0,,,,,,,
+20934,R001_BESTIA@NPC_CRITICALWOUND,attack,673,3,2000,0,30000,no,target,always,0,,,,,,,
+20934,R001_BESTIA@NPC_FIREBREATH,attack,654,10,2000,500,5000,no,target,myhpltmaxrate,80,,,,,,,
+20934,R001_BESTIA@WZ_METEOR,attack,83,11,2000,500,5000,no,target,myhpltmaxrate,90,,,,,,,
+20934,R001_BESTIA@KN_TWOHANDQUICKEN,attack,60,9,10000,0,100000,no,self,myhpltmaxrate,30,,,,,,,
+// 20934,R001_BESTIA@NPC_EARTHQUAKE_K,attack,750,5,10000,500,20000,no,target,myhpltmaxrate,40,,,,,,,
+20934,R001_BESTIA@NPC_EARTHQUAKE,attack,653,5,10000,500,20000,no,self,myhpltmaxrate,40,,,,,,,
+20934,R001_BESTIA@NPC_PULSESTRIKE,attack,661,5,10000,0,15000,no,self,myhpltmaxrate,60,,,,,,,
+20934,R001_BESTIA@NPC_DRAGONFEAR,attack,659,5,10000,0,10000,no,self,always,0,,,,,,,
+// 20934,R001_BESTIA@NPC_DAMAGE_HEAL,attack,753,1,3000,1500,40000,no,target,myhpltmaxrate,20,,,,,,,
+
+// nif_dun
+20935,GAN_CEANN@NPC_CRITICALSLASH,attack,170,1,1000,500,5000,no,target,always,0,,,,,,,
+20935,GAN_CEANN@NPC_DARKNESSATTACK,attack,190,3,500,500,5000,no,target,always,0,,,,,,6,
+20935,GAN_CEANN@NPC_BLINDATTACK,attack,177,3,2000,0,5000,yes,target,always,0,,,,,,,
+20935,GAN_CEANN@NPC_DARKNESSATTACK,attack,190,3,1000,500,5000,no,target,always,0,,,,,,6,
+20935,GAN_CEANN@NPC_BLEEDING2,attack,764,5,2000,0,60000,yes,target,always,0,,,,,,,
+20935,GAN_CEANN@NPC_BLEEDING,attack,660,5,2000,0,60000,yes,target,always,0,,,,,,,
+20935,GAN_CEANN@NPC_DARKCROSS,attack,338,3,300,0,5000,yes,target,always,0,,,,,,,
+20936,DISGUISER@NPC_COMBOATTACK,attack,171,2,1000,700,5000,no,target,always,0,,,,,,19,
+20936,DISGUISER@NPC_PIERCINGATT,attack,158,5,500,0,5000,yes,target,always,0,,,,,,,
+20936,DISGUISER@AS_GRIMTOOTH,chase,137,5,2000,0,0,yes,target,always,0,,,,,,,
+20936,DISGUISER@NPC_GUIDEDATTACK,attack,172,3,8000,500,600000,no,target,always,0,,,,,,,
+20936,DISGUISER@NPC_COMBOATTACK,attack,171,3,1000,500,15000,no,target,always,0,,,,,,,
+20936,DISGUISER@NPC_CHANGEWIND,attack,165,1,10000,500,100000,no,self,always,0,,,,,,,
+20936,DISGUISER@NPC_CHANGEFIRE,attack,164,1,10000,500,100000,no,self,always,0,,,,,,,
+20936,DISGUISER@NPC_CHANGEWATER,attack,162,1,10000,500,100000,no,self,always,0,,,,,,,
+20936,DISGUISER@NPC_CHANGEGROUND,attack,163,1,10000,500,100000,no,self,always,0,,,,,,,
+20937,BRUTAL_MURDERER@AS_SONICBLOW,attack,136,7,500,800,5000,no,target,always,0,,,,,,29,
+20937,BRUTAL_MURDERER@NPC_CURSEATTACK,attack,181,5,500,800,5000,no,target,always,0,,,,,,29,
+20937,BRUTAL_MURDERER@NPC_SPLASHATTACK,attack,174,1,2000,0,5000,yes,target,always,0,,,,,,,
+20937,BRUTAL_MURDERER@NPC_IGNITIONBREAK,attack,740,2,1000,300,30000,no,self,always,0,,,,,,,
+20937,BRUTAL_MURDERER@NPC_CRITICALWOUND,attack,673,1,8000,300,5000,no,target,always,0,,,,,,,
+20938,GHOST_CUBE@MG_STONECURSE,attack,16,10,500,1500,5000,no,target,always,0,,,,,,6,
+20938,GHOST_CUBE@NPC_MENTALBREAKER,attack,159,3,500,800,5000,no,target,always,0,,,,,,29,
+20938,GHOST_CUBE@NPC_BLINDATTACK,attack,177,3,2000,0,5000,yes,target,always,0,,,,,,,
+20938,GHOST_CUBE@NPC_SILENCEATTACK,attack,178,3,500,700,5000,no,target,always,0,,,,,,,
+20938,GHOST_CUBE@NPC_SLEEPATTACK,attack,182,3,500,0,5000,yes,target,always,0,,,,,,,
+20938,GHOST_CUBE@NPC_WINDATTACK,attack,187,3,2000,0,5000,yes,target,always,0,,,,,,,
+20939,LUDE_GAL@NPC_CHEAL,idle,729,3,2500,500,5000,no,self,always,0,,,,,,5,
+20939,LUDE_GAL@AL_HEAL,chase,28,9,10000,500,5000,no,friend,friendhpltmaxrate,60,,,,,,18,
+20939,LUDE_GAL@AL_HEAL,attack,28,9,10000,500,5000,no,friend,friendhpltmaxrate,60,,,,,,18,
+20939,LUDE_GAL@AL_HEAL,chase,28,9,10000,500,5000,no,friend,myhpltmaxrate,30,,,,,,18,
+20939,LUDE_GAL@AL_HEAL,attack,28,9,10000,500,5000,no,friend,myhpltmaxrate,30,,,,,,18,
+20939,LUDE_GAL@PR_LEXAETERNA,chase,78,1,1000,1000,5000,no,target,always,0,,,,,,6,
+20939,LUDE_GAL@PR_LEXAETERNA,attack,78,1,1000,1000,5000,no,target,always,0,,,,,,6,
+20939,LUDE_GAL@NPC_CHEAL,chase,729,3,2500,500,5000,no,self,always,0,,,,,,5,
+20939,LUDE_GAL@AM_POTIONPITCHER,attack,231,4,10000,500,5000,no,friend,friendhpltmaxrate,60,,,,,,5,
+20939,LUDE_GAL@AM_POTIONPITCHER,attack,231,4,10000,500,5000,no,friend,myhpltmaxrate,30,,,,,,5,
+20939,LUDE_GAL@NPC_GROUNDATTACK,attack,185,5,2000,500,5000,no,target,always,0,,,,,,6,
+20939,LUDE_GAL@NPC_STUNATTACK,attack,179,5,2000,0,0,yes,target,always,0,,,,,,,
+20940,BLUEMOON_LOLI_RURI@AL_TELEPORT,idle,26,1,5000,0,5000,yes,self,rudeattacked,0,,,,,,,
+20940,BLUEMOON_LOLI_RURI@AL_TELEPORT,walk,26,1,5000,0,5000,yes,self,rudeattacked,0,,,,,,,
+20940,BLUEMOON_LOLI_RURI@NPC_DARKSTRIKE,attack,340,5,500,700,5000,no,target,myhpltmaxrate,50,,,,,,6,
+20940,BLUEMOON_LOLI_RURI@NPC_DARKSTRIKE,chase,340,5,500,700,5000,no,target,always,0,,,,,,6,
+20940,BLUEMOON_LOLI_RURI@NPC_EMOTION,chase,197,1,2000,0,5000,yes,self,always,0,,,,,,3,
+20940,BLUEMOON_LOLI_RURI@PR_LEXDIVINA,chase,76,10,500,1000,5000,no,target,always,0,,,,,,2,
+20940,BLUEMOON_LOLI_RURI@PR_LEXDIVINA,attack,76,10,500,1000,5000,no,target,always,0,,,,,,2,
+20940,BLUEMOON_LOLI_RURI@SA_REVERSEORCISH,chase,294,1,50,0,30000,yes,target,always,0,,,,,,18,
+20940,BLUEMOON_LOLI_RURI@SA_REVERSEORCISH,attack,294,1,50,0,30000,yes,target,always,0,,,,,,18,
+20941,GROTE@AS_GRIMTOOTH,chase,137,5,2000,0,5000,yes,target,always,0,,,,,,,
+20941,GROTE@NPC_CURSEATTACK,attack,181,3,1000,800,5000,no,target,always,0,,,,,,6,
+20941,GROTE@NPC_UNDEADATTACK,attack,347,3,500,500,5000,no,target,always,0,,,,,,6,
+20941,GROTE@NPC_CHEAL,chase,729,3,2500,500,5000,no,self,always,0,,,,,,5,
+20941,GROTE@NPC_COMBOATTACK,attack,171,5,1500,0,5000,yes,target,always,0,,,,,,,
+20941,GROTE@NPC_WIDEBLEEDING2,attack,756,4,10000,0,15000,yes,self,always,0,,,,,,,
+20941,GROTE@NPC_WIDEBLEEDING,attack,665,4,10000,0,15000,yes,self,always,0,,,,,,,
+20941,GROTE@NPC_GROUNDATTACK,attack,185,5,2000,500,5000,no,target,always,0,,,,,,6,
+20941,GROTE@NPC_STUNATTACK,attack,179,5,2000,0,0,yes,target,always,0,,,,,,,
+20942,PIERROTZOIST@AL_DECAGI,attack,30,1,500,1000,5000,no,target,always,0,,,,,,29,
+20942,PIERROTZOIST@NPC_HALLUCINATION,chase,207,1,500,500,5000,no,target,always,0,,,,,,9,
+20942,PIERROTZOIST@NPC_HALLUCINATION,attack,207,1,500,500,5000,no,target,always,0,,,,,,9,
+20942,PIERROTZOIST@MO_BODYRELOCATION,chase,264,1,2000,500,5000,no,target,always,0,,,,,,,
+20942,PIERROTZOIST@KN_SPEARSTAB,chase,58,5,2500,0,5000,yes,target,groundattacked,0,,,,,,9,
+20942,PIERROTZOIST@KN_SPEARSTAB,chase,58,5,5000,0,5000,yes,target,longrangeattacked,0,,,,,,,
+20942,PIERROTZOIST@SM_MAGNUM,attack,7,4,500,500,5000,no,self,always,0,,,,,,,
+20942,PIERROTZOIST@KN_TWOHANDQUICKEN,attack,60,5,2000,0,120000,yes,self,myhpltmaxrate,30,,,,,,6,
+20942,PIERROTZOIST@KN_BRANDISHSPEAR,attack,57,5,2000,0,10000,yes,target,always,0,,,,,,6,
+20942,PIERROTZOIST@NPC_DARKNESSATTACK,attack,190,4,1000,0,5000,yes,target,always,0,,,,,,,
+20943,DEATH_WITCH@AL_TELEPORT,idle,26,1,10000,0,0,yes,self,rudeattacked,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDESILENCE,chase,663,1,2000,1000,20000,no,self,always,0,,,,,,32,
+20943,DEATH_WITCH@NPC_WIDESILENCE,attack,663,1,2000,700,25000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDEFREEZE,chase,664,1,2000,1000,20000,no,self,always,0,,,,,,36,
+20943,DEATH_WITCH@NPC_WIDEFREEZE,attack,664,1,2000,1000,20000,no,self,always,0,,,,,,36,
+20943,DEATH_WITCH@NPC_WIDESLEEP,chase,668,1,2000,700,25000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDESLEEP,attack,668,1,2000,700,25000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_DARKTHUNDER,chase,341,3,500,1500,15000,no,target,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_DARKTHUNDER,attack,341,3,500,1500,15000,no,target,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDESOULDRAIN,chase,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20943,DEATH_WITCH@NPC_WIDESOULDRAIN,attack,680,1,1000,500,5000,no,self,always,0,,,,,,42,
+20943,DEATH_WITCH@WZ_WATERBALL,attack,86,10,3000,500,25000,no,target,always,0,,,,,,0,
+20943,DEATH_WITCH@WZ_WATERBALL,chase,86,10,3000,500,25000,no,target,always,0,,,,,,0,
+20943,DEATH_WITCH@NPC_WIDECURSE,chase,677,1,500,800,5000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_SUMMONSLAVE,attack,196,1,10000,700,10000,no,self,slavele,3,,,,,,,
+20943,DEATH_WITCH@NPC_SUMMONSLAVE,idle,196,1,10000,700,10000,no,self,slavele,3,,,,,,,
+20943,DEATH_WITCH@NPC_WIDECURSE,attack,677,1,500,800,5000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDESTUN,chase,678,1,2000,1300,180000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_WIDESTUN,attack,678,1,2000,1300,180000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_DARKNESSATTACK,attack,190,5,2000,0,5000,yes,target,always,0,,,,,,29,
+20943,DEATH_WITCH@NPC_DARKNESSATTACK,chase,190,5,2000,0,5000,yes,target,always,0,,,,,,29,
+20943,DEATH_WITCH@WZ_FROSTNOVA,chase,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@WZ_FROSTNOVA,attack,88,10,3000,1000,10000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_PULSESTRIKE,attack,661,5,2000,0,30000,yes,self,always,0,,,,,,32,
+20943,DEATH_WITCH@HW_GANBANTEIN,attack,483,1,2000,0,5000,yes,target,always,0,,,,,,,
+// 20943,DEATH_WITCH@NPC_EARTHQUAKE_K,attack,750,5,10000,1500,25000,no,target,myhpltmaxrate,20,,,,,,,
+20943,DEATH_WITCH@NPC_EARTHQUAKE,attack,653,5,10000,1500,25000,no,target,myhpltmaxrate,20,,,,,,,
+20943,DEATH_WITCH@NPC_HELLJUDGEMENT,chase,662,2,2000,500,5000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_HELLJUDGEMENT,attack,662,2,2000,500,5000,no,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_CLOUD_KILL,attack,739,5,2000,500,16000,no,target,always,0,,,,,,,
+// 20943,DEATH_WITCH@NPC_DAMAGE_HEAL,attack,753,1,10000,1000,60000,no,target,myhpltmaxrate,10,,,,,,,
+20943,DEATH_WITCH@NPC_CALLSLAVE,idle,352,1,5000,0,30000,yes,self,always,0,,,,,,,
+20943,DEATH_WITCH@NPC_CALLSLAVE,attack,352,1,5000,0,30000,yes,self,always,0,,,,,,,
+
 // Training Ground outside Prontera
 21064,S_DUMMY_100_SMALL@NPC_ALLHEAL,attack,687,1,10000,0,500,no,self,myhpltmaxrate,90,,,,,,,
 21064,S_DUMMY_100_SMALL@NPC_ALLHEAL,idle,687,1,10000,0,500,no,self,myhpltmaxrate,90,,,,,,,

+ 164 - 5
db/re/quest_db.yml

@@ -5650,14 +5650,35 @@ Body:
   - Id: 8538
     Title: Renting an advanced oxygen mask
     TimeLimit: 4h
+  - Id: 8541
+    Title: Nothing to See
+    Targets:
+      - Mob: RAYDRIC_H
+        Count: 20
+      - Mob: RAYDRIC_ARCHER_H
+        Count: 20
   - Id: 8542
-    Title: Standby
+    Title: Nothing to See - Standby
     TimeLimit: 4h
+  - Id: 8544
+    Title: High Freezing Point
+    Targets:
+      - Mob: GARGOYLE_H
+        Count: 5
+      - Mob: RAGGED_ZOMBIE_H
+        Count: 5
   - Id: 8545
     Title: High freezing point (Standby)
     TimeLimit: 4h
+  - Id: 8547
+    Title: A Mirror
+    Targets:
+      - Mob: ICE_GHOST_H
+        Count: 10
+      - Mob: FLAME_GHOST_H
+        Count: 10
   - Id: 8548
-    Title: Mirror (Standby)
+    Title: A Mirror - (Standby)
     TimeLimit: 4h
   - Id: 8551
     Title: The Dealer That Caused Evolution (Standby)
@@ -5683,24 +5704,75 @@ Body:
   - Id: 8595
     Title: Playing with Pitaya - Standby
     TimeLimit: 4h
+  - Id: 8639
+    Title: Great banquet hall in the depths of the underworld
+  - Id: 8640
+    Title: Both the dead and the living are in high spirits
+  - Id: 8641
+    Title: He looks cute
+    Targets:
+      - Mob: GHOST_CUBE
+        Count: 15
+      - Mob: LUDE_GAL
+        Count: 15
   - Id: 8642
     Title: He looks cute - Standby
     TimeLimit: 4h
+  - Id: 8644
+    Title: That's not an instrument
+    Targets:
+      - Mob: BRUTAL_MURDERER
+        Count: 10
+      - Mob: GAN_CEANN
+        Count: 10
   - Id: 8645
     Title: That's not an instrument - Standby
     TimeLimit: 4h
+  - Id: 8647
+    Title: Playing the piano
   - Id: 8648
     Title: Playing the piano - Standby
     TimeLimit: 4h
+  - Id: 8649
+    Title: It was a great performance
+  - Id: 8650
+    Title: Guys with messy hair
+    Targets:
+      - Mob: DISGUISER
+        Count: 15
+      - Mob: BLUEMOON_LOLI_RURI
+        Count: 15
   - Id: 8651
     Title: Guys with messy hair - Standby
     TimeLimit: 4h
+  - Id: 8652
+    Title: Guys with messy hair
+    Targets:
+      - Mob: DISGUISER
+        Count: 15
+      - Mob: BLUEMOON_LOLI_RURI
+        Count: 15
+  - Id: 8653
+    Title: The ones with dolls
+    Targets:
+      - Mob: GROTE
+        Count: 10
+      - Mob: PIERROTZOIST
+        Count: 10
   - Id: 8654
     Title: The ones with dolls - Standby
     TimeLimit: 4h
+  - Id: 8655
+    Title: The ones with dolls
+  - Id: 8656
+    Title: Wake them up
   - Id: 8657
     Title: Wake them up - Standby
     TimeLimit: 4h
+  - Id: 8658
+    Title: Sorry for being sleepy (1)
+  - Id: 8659
+    Title: Sorry for being sleepy (2)
   - Id: 8661
     Title: "[Standby] Subjugation-Audumra Chowon-3"
     TimeLimit: 4h
@@ -5768,9 +5840,31 @@ Body:
           KOBOLD_2: true
           KOBOLD_3: true
           KOBOLD_ARCHER: true
+  - Id: 8674
+    Title: "Subjugation - Porto Luna"
+    Targets:
+      - Id: 1
+        Count: 80
+        Location: ra_fild06
+        MapMobTargets:
+          ANOPHELES: true
+          KOBOLD_1: true
+          KOBOLD_2: true
+          KOBOLD_3: true
+          KOBOLD_ARCHER: true
   - Id: 8673
     Title: "[Standby] Subjugation-Portu Luna"
     TimeLimit: 4h
+  - Id: 8675
+    Title: "Subjugation-Veins Field-3"
+    Targets:
+      - Id: 1
+        Count: 80
+        Location: ve_fild04
+        MapMobTargets:
+          GALION: true
+          DROSERA: true
+          MUSCIPULAR: true
   - Id: 8676
     Title: "[Standby] Subjugation-Veins Field-3"
     TimeLimit: 4h
@@ -8440,6 +8534,8 @@ Body:
   - Id: 12411
     Title: Come Back Tomorrow
     TimeLimit: 4h
+  - Id: 12415
+    Title: Contract with Fantasy Ganghwa
   - Id: 12416
     Title: Contract with Emily
   - Id: 12417
@@ -9928,9 +10024,48 @@ Body:
   - Id: 15093
     Title: Promote the 13th Anniversary
     TimeLimit: 4h
+  - Id: 15110
+    Title: Fighting Ice with Fire
+  - Id: 15111
+    Title: Hunt Furious Ice Titans
+    Targets:
+      - Mob: ILL_ICE_TITAN
+        Count: 10
+  - Id: 15112
+    Title: Direct Approach
+    Targets:
+      - Mob: ILL_FROZEN_GC
+        Count: 1
+  - Id: 15113
+    Title: Direct Approach
+    Targets:
+      - Mob: ILL_FROZEN_KN
+        Count: 1
+  - Id: 15114
+    Title: Catch a Strange Lizard
+    Targets:
+      - Mob: ILL_KTULLANUX
+        Count: 1
   - Id: 15115
-    Title: Bride and Jace
+    Title: Vrid and Zeith
     TimeLimit: 4h
+  - Id: 15116
+    Title: Clear the Illusion of the Frozen
+  - Id: 15117
+    Title: Hunt Furious Gazetis
+    Targets:
+      - Mob: ILL_GAZETI
+        Count: 10
+  - Id: 15118
+    Title: Hunt Furious Snowiers
+    Targets:
+      - Mob: ILL_SNOWIER
+        Count: 10
+  - Id: 15119
+    Title: Hunt Hard Icicles
+    Targets:
+      - Mob: ILL_ICEICLE
+        Count: 10
   - Id: 15128
     Title: Chocolate Delivery Complete
     TimeLimit: 4h
@@ -10420,15 +10555,37 @@ Body:
   - Id: 16439
     Title: Award Garden-Waiting
     TimeLimit: 4h
+  - Id: 16521
+    Title: 4th floor of Rudus, an organic field for waste specimens
+  - Id: 16522
+    Title: 4th floor of Rudus, an organic field for waste specimens
   - Id: 16523
-    Title: The solitude of the abyss
+    Title: Abyssal Solitude - Standby
     TimeLimit: 4h
+  - Id: 16524
+    Title: Abyssal Solitude
+    Targets:
+      - Mob: DEADRE
+        Count: 10
+      - Mob: DOLORIAN
+        Count: 10
+      - Mob: PLAGARION
+        Count: 10
   - Id: 16525
-    Title: Transformation and development - Standby
+    Title: Transformation and Evolution - Standby
     TimeLimit: 4h
+  - Id: 16526
+    Title: Transformation and Evolution
+    Targets:
+      - Mob: GIANT_CAPUT
+        Count: 15
+      - Mob: VENEDI
+        Count: 15
   - Id: 16527
     Title: Data backup - Waiting
     TimeLimit: 4h
+  - Id: 16528
+    Title: Data Backup
   - Id: 16530
     Title: The ground and fire
     TimeLimit: 4h
@@ -10444,6 +10601,8 @@ Body:
   - Id: 16538
     Title: Natural change - Waiting
     TimeLimit: 4h
+  - Id: 16540
+    Title: Data Backup
   - Id: 16546
     Title: Farm Worker
   - Id: 16547

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 843 - 470
db/re/skill_db.yml


+ 306 - 1
db/re/status.yml

@@ -254,6 +254,7 @@ Body:
       NoSave: true
       NoClearance: true
       SpreadEffect: true
+      RemoveOnHermode: true
     Fail:
       Refresh: true
       Inspiration: true
@@ -282,6 +283,7 @@ Body:
       BossResist: true
       Debuff: true
       NoSaveInfinite: true
+      RemoveOnHermode: true
     EndOnStart:
       Freeze: true
       Stone: true
@@ -307,6 +309,7 @@ Body:
       Quicken: true
     Flags:
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Decreaseagi: true
   - Status: Concentrate
@@ -317,6 +320,7 @@ Body:
       Dex: true
     Flags:
       FailedMado: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Hiding
@@ -367,6 +371,7 @@ Body:
       Atk_Ele: true
     Flags:
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Aspersio: true
       Fireweapon: true
@@ -378,6 +383,8 @@ Body:
   - Status: Poisonreact
     Icon: EFST_POISONREACT
     DurationLookup: AS_POISONREACT
+    Flags:
+      RemoveOnHermode: true
   - Status: Quagmire
     Icon: EFST_QUAGMIRE
     DurationLookup: WZ_QUAGMIRE
@@ -390,6 +397,7 @@ Body:
       NoSave: true
       NoClearance: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
       Speedup1: true
     EndOnStart:
@@ -418,6 +426,7 @@ Body:
       Angelus: true
     Flags:
       SendOption: true
+      RemoveOnHermode: true
   - Status: Blessing
     Icon: EFST_BLESSING
     DurationLookup: AL_BLESSING
@@ -429,6 +438,7 @@ Body:
     Flags:
       BossResist: true
       TaekwonAngel: true
+      RemoveOnHermode: true
   - Status: Signumcrucis
     Icon: EFST_CRUCIS
     DurationLookup: AL_CRUCIS
@@ -449,6 +459,7 @@ Body:
     Flags:
       FailedMado: true
       TaekwonAngel: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
     EndOnStart:
@@ -464,6 +475,7 @@ Body:
       BossResist: true
       NoSave: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
       Speedup1: true
     EndOnStart:
@@ -482,6 +494,7 @@ Body:
     DurationLookup: PR_SLOWPOISON
     Flags:
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Impositio
     Icon: EFST_IMPOSITIO
     DurationLookup: PR_IMPOSITIO
@@ -490,6 +503,7 @@ Body:
       Matk: true
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
       Impositio: true
   - Status: Suffragium
@@ -497,6 +511,7 @@ Body:
     DurationLookup: PR_SUFFRAGIUM
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aspersio
     Icon: EFST_ASPERSIO
     DurationLookup: PR_ASPERSIO
@@ -504,6 +519,7 @@ Body:
       Atk_Ele: true
     Flags:
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Fireweapon: true
@@ -522,11 +538,13 @@ Body:
       NoSave: true
       NoClearance: true
       #RemoveOnUnequipArmor: true
+      RemoveOnHermode: true
   - Status: Kyrie
     Icon: EFST_KYRIE
     DurationLookup: PR_KYRIE
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Magnificat
     Icon: EFST_MAGNIFICAT
     DurationLookup: PR_MAGNIFICAT
@@ -536,6 +554,7 @@ Body:
       FailedMado: true
       NoSave: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
       Offertorium: true
   - Status: Gloria
@@ -545,11 +564,13 @@ Body:
       Luk: true
     Flags:
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aeterna
     Icon: EFST_LEXAETERNA
     DurationLookup: PR_LEXAETERNA
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Stone: true
       Freeze: true
@@ -562,6 +583,7 @@ Body:
     Flags:
       MadoCancel: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
       Decreaseagi: true
@@ -570,6 +592,7 @@ Body:
     DurationLookup: BS_WEAPONPERFECT
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Overthrust
     Icon: EFST_OVERTHRUST
     DurationLookup: BS_OVERTHRUST
@@ -577,6 +600,7 @@ Body:
       OverThrust: true
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
     Fail:
       Maxoverthrust: true
   - Status: Maximizepower
@@ -586,6 +610,7 @@ Body:
       Regen: true
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Trickdead
     Icon: EFST_TRICKDEAD
     DurationLookup: NV_TRICKDEAD
@@ -605,6 +630,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
     EndOnStart:
       Dancing: true
   - Status: Loud
@@ -612,6 +638,7 @@ Body:
     DurationLookup: MC_LOUD
     Flags:
       MadoCancel: true
+      RemoveOnHermode: true
     CalcFlags:
       Str: true
       Batk: true
@@ -620,6 +647,8 @@ Body:
     DurationLookup: MG_ENERGYCOAT
     Opt3:
       EnergyCoat: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Brokenarmor
     Icon: EFST_BROKENARMOR
     DurationLookup: NPC_ARMORBRAKE
@@ -672,12 +701,14 @@ Body:
     Flags:
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion2
     Icon: EFST_ATTHASTE_POTION3
     CalcFlags:
       Aspd: true
     Flags:
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion3
     Icon: EFST_ATTHASTE_INFINITY
     CalcFlags:
@@ -685,6 +716,7 @@ Body:
     Flags:
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Speedup0
     Icon: EFST_MOVHASTE_HORSE
     CalcFlags:
@@ -702,6 +734,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Atkpotion
     Icon: EFST_PLUSATTACKPOWER
     CalcFlags:
@@ -710,6 +743,7 @@ Body:
       NoRemoveOnDead: true
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Matkpotion
     Icon: EFST_PLUSMAGICPOWER
     CalcFlags:
@@ -718,6 +752,7 @@ Body:
       NoRemoveOnDead: true
       NoClearance: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Wedding
     States:
       NoAttack: true
@@ -760,6 +795,8 @@ Body:
     CalcFlags:
       Mdef: true
       Def: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Stripweapon
     Icon: EFST_NOEQUIPWEAPON
     DurationLookup: RG_STRIPWEAPON
@@ -772,6 +809,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Stripshield
     Icon: EFST_NOEQUIPSHIELD
     DurationLookup: RG_STRIPSHIELD
@@ -784,6 +822,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striparmor
     Icon: EFST_NOEQUIPARMOR
     DurationLookup: RG_STRIPARMOR
@@ -796,6 +835,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striphelm
     Icon: EFST_NOEQUIPHELM
     DurationLookup: RG_STRIPHELM
@@ -808,6 +848,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Cp_Weapon
     Icon: EFST_PROTECTWEAPON
     DurationLookup: AM_CP_WEAPON
@@ -817,6 +858,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Shield
     Icon: EFST_PROTECTSHIELD
     DurationLookup: AM_CP_SHIELD
@@ -826,6 +868,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Armor
     Icon: EFST_PROTECTARMOR
     DurationLookup: AM_CP_ARMOR
@@ -835,6 +878,7 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Helm
     Icon: EFST_PROTECTHELM
     DurationLookup: AM_CP_HELM
@@ -844,18 +888,21 @@ Body:
       NoBanishingBuster: true
       NoClearance: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Autoguard
     Icon: EFST_AUTOGUARD
     DurationLookup: CR_AUTOGUARD
     Flags:
       NoClearance: true
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Reflectshield
     Icon: EFST_REFLECTSHIELD
     DurationLookup: CR_REFLECTSHIELD
     Flags:
       NoClearance: true
       RequireShield: true
+      RemoveOnHermode: true
     EndOnStart:
       Reflectdamage: true
   - Status: Splasher
@@ -868,6 +915,7 @@ Body:
       All: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Defender
     Icon: EFST_DEFENDER
     DurationLookup: CR_DEFENDER
@@ -876,11 +924,13 @@ Body:
       Aspd: true
     Flags:
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Magicrod
     Icon: EFST_MAGICROD
     DurationLookup: SA_MAGICROD
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Spellbreaker
     Flags:
       NoWarning: true
@@ -914,6 +964,7 @@ Body:
     Flags:
       FailedMado: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Autocounter
@@ -968,6 +1019,7 @@ Body:
       Debuff: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Combo
     Flags:
       NoClearbuff: true
@@ -998,6 +1050,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Fireweapon
     Icon: EFST_PROPERTYFIRE
     DurationLookup: SA_FLAMELAUNCHER
@@ -1067,6 +1120,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Deluge
     Icon: EFST_GROUNDMAGIC
     DurationLookup: SA_DELUGE
@@ -1126,6 +1180,7 @@ Body:
     Flags:
       NoSave: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Parrying
     Icon: EFST_PARRYING
     DurationLookup: LK_PARRYING
@@ -1133,6 +1188,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Concentration
     Icon: EFST_LKCONCENTRATION
     DurationLookup: LK_CONCENTRATION
@@ -1143,6 +1199,7 @@ Body:
       Quicken: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Tensionrelax
     Icon: EFST_TENSIONRELAX
     DurationLookup: LK_TENSIONRELAX
@@ -1151,6 +1208,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Berserk
     Icon: EFST_BERSERK
     DurationLookup: LK_BERSERK
@@ -1191,6 +1249,7 @@ Body:
       Aspd: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Assumptio
     Icon: EFST_ASSUMPTIO2
     DurationLookup: HP_ASSUMPTIO
@@ -1200,6 +1259,8 @@ Body:
       Assumptio: true
     EndOnStart:
       Kaite: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Basilica
     Icon: EFST_BASILICA_BUFF
     DurationLookup: HP_BASILICA
@@ -1210,6 +1271,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Guildaura
     Flags:
       NoDispell: true
@@ -1222,6 +1284,7 @@ Body:
       Matk: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
       Magicpower: true
   - Status: Edp
@@ -1248,6 +1311,7 @@ Body:
     Flags:
       FailedMado: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Windwalk
@@ -1259,6 +1323,7 @@ Body:
     Flags:
       FailedMado: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
   - Status: Meltdown
@@ -1351,6 +1416,7 @@ Body:
       Debuff: true
       NoClearance: true
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
       Blessing: true
       Increaseagi: true
@@ -1366,6 +1432,7 @@ Body:
       NoSave: true
       NoClearance: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Mindbreaker
     Icon: EFST_MINDBREAKER
     DurationLookup: PF_MINDBREAKER
@@ -1375,6 +1442,7 @@ Body:
     Flags:
       NoSave: true
       Debuff: true
+      RemoveOnHermode: true
     EndOnStart:
       Freeze: true
       Stone: true
@@ -1384,6 +1452,7 @@ Body:
     DurationLookup: PF_MEMORIZE
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Fogwall
     Icon: EFST_FOGWALL
     DurationLookup: PF_FOGWALL
@@ -1391,6 +1460,7 @@ Body:
       BossResist: true
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Spiderweb
     Icon: EFST_SPIDERWEB
     DurationLookup: PF_SPIDERWEB
@@ -1413,6 +1483,7 @@ Body:
       NoSave: true
       RemoveOnChangeMap: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
     EndOnEnd:
       Autoguard: true
       Defender: true
@@ -1420,6 +1491,8 @@ Body:
       Endure: true
   - Status: Sacrifice
     DurationLookup: PA_SACRIFICE
+    Flags:
+      RemoveOnHermode: true
   - Status: Steelbody
     Icon: EFST_STEELBODY
     DurationLookup: MO_STEELBODY
@@ -1432,6 +1505,7 @@ Body:
       Speed: true
     Flags:
       NoSave: true
+      RemoveOnHermode: true
     Opt3:
       SteelBody: true
   - Status: Orcish
@@ -1496,6 +1570,7 @@ Body:
       NoSave: true
       NoClearance: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Shadowweapon
     Icon: EFST_PROPERTYDARK
     DurationLookup: TK_SEVENWIND
@@ -1504,6 +1579,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Aspersio: true
@@ -1521,6 +1597,7 @@ Body:
       MadoCancel: true
       NoSave: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Quagmire: true
       Decreaseagi: true
@@ -1532,6 +1609,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Encpoison: true
       Aspersio: true
@@ -1549,6 +1627,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Kaahi: true
   - Status: Kaupe
@@ -1557,6 +1636,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Onehand
     Icon: EFST_ONEHANDQUICKEN
     DurationLookup: KN_ONEHAND
@@ -1568,6 +1648,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
       Decreaseagi: true
     EndOnStart:
@@ -1580,6 +1661,7 @@ Body:
     DurationLookup: ST_PRESERVE
     Flags:
       NoSave: true
+      RemoveOnHermode: true
   - Status: Battleorders
     Icon: EFST_GDSKILL_BATTLEORDER
     DurationLookup: GD_BATTLEORDER
@@ -1603,6 +1685,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Maxoverthrust
     Icon: EFST_OVERTHRUSTMAX
     DurationLookup: WS_OVERTHRUSTMAX
@@ -1612,6 +1695,7 @@ Body:
       MadoCancel: true
       NoSave: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Overthrust: true
   - Status: Hermode
@@ -1964,6 +2048,7 @@ Body:
       NoClearance: true
       RemoveOnChangeMap: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Spurt
     Icon: EFST_STRUP
     DurationLookup: TK_RUN
@@ -1973,6 +2058,7 @@ Body:
       NoSave: true
       NoClearance: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Spirit
     Icon: EFST_SOULLINK
     DurationLookup: SL_HIGH
@@ -1984,6 +2070,7 @@ Body:
       NoClearance: true
       NoSave: true
       NoBanishingBuster: true
+      RemoveOnHermode: true
     Fail:
       Soulgolem: true
       Soulshadow: true
@@ -2101,7 +2188,6 @@ Body:
     Flags:
       NoRemoveOnDead: true
       NoClearbuff: true
-      NoDispell: true
       NoBanishingBuster: true
       NoClearance: true
   - Status: Incmhprate
@@ -2337,6 +2423,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
       Assumptio: true
   - Status: Swoo
@@ -2434,6 +2521,7 @@ Body:
       NoClearance: true
       NoBanishingBuster: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Bunsinjyutsu
     Icon: EFST_NJ_BUNSINJYUTSU
     DurationLookup: NJ_BUNSINJYUTSU
@@ -2444,6 +2532,7 @@ Body:
     Flags:
       NoSave: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Kaensin
     Flags:
       NoWarning: true
@@ -2558,6 +2647,7 @@ Body:
       SendVal1: true
       OverlapIgnoreLevel: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
       Enchantarms: true
       Aspersio: true
@@ -6023,6 +6113,7 @@ Body:
       RemoveOnChangeMap: true
       NoBanishingBuster: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Extremityfist2
     Icon: EFST_EXTREMITYFIST
     DurationLookup: MO_EXTREMITYFIST
@@ -6669,6 +6760,7 @@ Body:
     Flags:
       NoRemoveOnDead: true
       NoClearbuff: true
+      RemoveOnHermode: true
   - Status: Geffen_Magic2
     Icon: EFST_GEFFEN_MAGIC2
     CalcFlags:
@@ -8438,3 +8530,216 @@ Body:
       NoClearance: true
   - Status: WeaponBreaker
     DurationLookup: NPC_WEAPONBRAKER
+  - Status: Tempering
+    Icon: EFST_TEMPERING
+    DurationLookup: MH_TEMPERING
+    CalcFlags:
+      Patk: true
+  - Status: Goldene_Tone
+    Icon: EFST_GOLDENE_TONE
+    DurationLookup: MH_GOLDENE_TONE
+    CalcFlags:
+      Res: true
+      Mres: true
+  - Status: Toxin_of_Mandara
+    Icon: EFST_TOXIN_OF_MANDARA
+    DurationLookup: MH_TOXIN_OF_MANDARA
+    Flags:
+      Debuff: true
+    CalcFlags:
+      Res: true
+  - Status: GRADUAL_GRAVITY
+    Icon: EFST_GRADUAL_GRAVITY
+    DurationLookup: NPC_GRADUAL_GRAVITY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+      NoDispell: true
+      NoClearance: true
+  - Status: ALL_STAT_DOWN
+    Icon: EFST_ALL_STAT_DOWN
+    DurationLookup: NPC_ALL_STAT_DOWN
+    CalcFlags:
+      Str: true
+      Agi: true
+      Vit: true
+      Int: true
+      Dex: true
+      Luk: true
+    Flags:
+      NoDispell: true
+      NoClearance: true
+  - Status: Killing_Aura
+    Icon: EFST_KILLING_AURA
+    DurationLookup: NPC_KILLING_AURA
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+      NoDispell: true
+      NoBanishingBuster: true
+      NoClearance: true
+  - Status: DAMAGE_HEAL
+    Icon: EFST_DAMAGE_HEAL
+    DurationLookup: NPC_DAMAGE_HEAL
+    Flags:
+      NoDispell: true
+  - Status: IMMUNE_PROPERTY_NOTHING
+    Icon: EFST_IMMUNE_PROPERTY_NOTHING
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_WATER
+    Icon: EFST_IMMUNE_PROPERTY_WATER
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_GROUND
+    Icon: EFST_IMMUNE_PROPERTY_GROUND
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_FIRE
+    Icon: EFST_IMMUNE_PROPERTY_FIRE
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_WIND
+    Icon: EFST_IMMUNE_PROPERTY_WIND
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_POISON
+    Icon: EFST_IMMUNE_PROPERTY_POISON
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_SAINT
+    Icon: EFST_IMMUNE_PROPERTY_SAINT
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_DARKNESS
+    Icon: EFST_IMMUNE_PROPERTY_DARKNESS
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_TELEKINESIS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_TELEKINESIS
+    Icon: EFST_IMMUNE_PROPERTY_TELEKINESIS
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_UNDEAD: true
+  - Status: IMMUNE_PROPERTY_UNDEAD
+    Icon: EFST_IMMUNE_PROPERTY_UNDEAD
+    DurationLookup: NPC_IMMUNE_PROPERTY
+    Flags:
+      BlEffect: true
+      DisplayPc: true
+    EndOnStart:
+      IMMUNE_PROPERTY_NOTHING: true
+      IMMUNE_PROPERTY_WATER: true
+      IMMUNE_PROPERTY_GROUND: true
+      IMMUNE_PROPERTY_FIRE: true
+      IMMUNE_PROPERTY_WIND: true
+      IMMUNE_PROPERTY_POISON: true
+      IMMUNE_PROPERTY_SAINT: true
+      IMMUNE_PROPERTY_DARKNESS: true
+      IMMUNE_PROPERTY_TELEKINESIS: true

+ 5 - 2
doc/atcommands.txt

@@ -1419,6 +1419,7 @@ This will also send a packet to clients causing them to close.
 @reloadstatusdb
 @reloadachievementdb
 @reloadattendancedb
+@reloadbarterdb
 
 Reloads a database or configuration file.
 
@@ -1427,10 +1428,11 @@ Databases:
 -- itemdb: Item Database
 -- mobdb: Monster Database
 -- questdb: Quest Database
--- script: NPC Scripts
+-- script: NPC Scripts and Barter Database
 -- skilldb: Skill Database
 -- achievementdb: Achievement Database
 -- attendancedb: Attendance Database
+-- barterdb: Barter Database
 
 Configuration files:
 -- atcommand: Atcommand Settings
@@ -1450,11 +1452,12 @@ Affected files:
 -- msgconf: atcommands.yml
 -- pcdb: statpoint.yml, job_exp.yml, skill_tree.yml, attr_fix.yml, job_stats.yml, job_basepoints.yml, level_penalty.yml
 -- questdb: quest_db.yml
--- script: /npc/*.txt, /npc/*.conf
+-- script: /npc/*.txt, /npc/*.conf, /npc/barters.yml
 -- skilldb: skill_db.yml, skill_nocast_db.txt, skill_changematerial_db.txt, skill_damage_db.txt, abra_db.yml, create_arrow_db.yml, produce_db.txt, spellbook_db.yml, magicmushroom_db.yml
 -- statusdb: attr_fix.yml, size_fix.yml, refine.yml
 -- achievementdb: achievement_db.yml
 -- attendancedb: attendance.yml
+-- barterdb: /npc/barters.yml
 
 Restriction:
 	- Used from 'atcommand' or 'useatcmd'. For @reload & @reloadscript

+ 5 - 0
doc/item_bonus.txt

@@ -322,6 +322,11 @@ bonus bIgnoreMDefEle,e; 		Disregard MDEF against enemies of element e
 bonus2 bIgnoreDefClassRate,c,n;	Disregard n% of the target's DEF if the target belongs to class c
 bonus2 bIgnoreMdefClassRate,c,n;	Disregard n% of the target's MDEF if the target belongs to class c
 
+Ignore Res
+----------
+bonus2 bIgnoreResRaceRate,r,n;		Disregard n% of the target's Res if the target belongs to race r
+bonus2 bIgnoreMResRaceRate,r,n; 	Disregard n% of the target's MRes if the target belongs to race r
+
 Experience
 ----------
 bonus2 bExpAddRace,r,x; 		Increase exp gained by x% against enemies of race r

+ 72 - 10
doc/script_commands.txt

@@ -159,7 +159,8 @@ executed, it is affected by spawn rates in 'battle_athena.conf'.
 Delay1 and delay2 control monster respawn delays - the first one is the fixed
 base respawn time, and the second is random variance on top of the base time.
 Both values are given in milliseconds (1000 = 1 second).
-Note that the server also enforces a minimum respawn delay of 5 seconds.
+Note that the server also enforces a minimum respawn delay of 1 second (See
+/conf/battle/monster.conf::mob_respawn_time).
 
 Event is a script event to be executed when the mob is killed. The event must
 be in the form "NPCName::OnEventName" to execute, and the event name label
@@ -1126,13 +1127,17 @@ In 2015 the tag name was changed to <ITEM> resulting in the following syntax:
 
 	<ITEM>Display Name<INFO>Item ID</INFO></ITEM>
 
+We therefore created script command "mesitemlink" that allows you to create the correct syntax
+depending on your configured packet version. We recommend that you use this script command
+instead of hardcoding the HTML-like tags. For more details see the documentation for "mesitemlink".
+
 The following sample will open a preview window for Red Potion:
 
 	mes "Did you ever consume a <ITEMLINK>Red Potion<INFO>501</INFO></ITEMLINK>?";
 	// Or in 2015:
 	mes "Did you ever consume a <ITEM>Red Potion<INFO>501</INFO></ITEM>?";
 
-NOTE: Be aware that item links are rendered incorrectly in 2015+ clients at the moment.
+NOTE: Be aware that item links are broken in some 2015 clients.
 
 URLs
 ----
@@ -2730,7 +2735,7 @@ See 'getequipid' for a full list of valid equipment slots.
 
 Given the database ID number of an item, this function will return the text
 stored in the 'Name' field in item_db_*.yml for text version
-or 'name_english' field for SQL version.
+or 'name_english' field for SQL version. The function returns "null" if the item doesn't exist.
 
 ---------------------------------------
 
@@ -6579,6 +6584,28 @@ Examples:
 
 ---------------------------------------
 
+macro_detector({<account ID>});
+macro_detector({"<character name>"});
+
+This command will display the captcha UI challenge onto the invoking character or the given <account ID>/<character name>.
+
+Example:
+	// Use 'getareaunits' to gather an area of players to test.
+	// Build an int array of the account IDs.
+	.@num = getareaunits(BL_PC, "prontera", 150, 150, 160, 160, .@array[0]);
+
+	mes "The number of Players in Prontera in between 150x150 and 160x160 is " + .@num + " .";
+	mes "Players to challenge:";
+	freeloop(1); // If the list is too big
+	for(.@i = 0; .@i < getarraysize(.@array); .@i++) {
+		mes (.@i + 1) + " " + convertpcinfo(.@array[.@i], CPC_NAME);
+		macro_detector .@array[.@i];
+	}
+	freeloop(0);
+	end;
+
+---------------------------------------
+
 ==================================
 |5.- Mob / NPC -related commands.|
 ==================================
@@ -9647,9 +9674,13 @@ returns an empty string instead.
 
 *instance_id({<instance mode>})
 
-Returns the unique instance ID of the given mode. By default it returns the
-attached script instance. If <instance mode> is provided then the instance
-of the currently attached player is used. If that fails, the function will return 0.
+Returns the unique instance ID of the given mode.
+
+By default (no parameter given) the command returns the instance ID from the attached NPC.
+If <instance mode> is provided the instance ID of the currently attached player is returned.
+If that fails, the function will return 0.
+
+Please note that the command always requires the parameter <instance mode> to get the instance ID of an attached player!
 
 Instance Mode options:
  IM_CHAR:	Attached to character.
@@ -9657,14 +9688,27 @@ Instance Mode options:
  IM_GUILD:	Attached to character's guild.
  IM_CLAN:	Attached to character's clan.
 
+Examples:
+	// Example with an attached player :
+	npctalk "The current instance ID (mode party) from the attached player is : " + instance_id(IM_PARTY);
+
+	// Example with an attached NPC on an instance map :
+	npctalk "The current instance ID from the attached NPC is : " + instance_id();
+
 ---------------------------------------
 
-*instance_warpall "<map name>",<x>,<y>{,<instance id>};
+*instance_warpall "<map name>",<x>,<y>{,<instance id>,{<flag>}};
 
 Warps all players in the <instance id> to <map name> to the given coordinates.
 If no ID is specified, the IM_PARTY instance the invoking player is attached
 to is used. If that fails, the script will come to a halt.
 
+<flag> bitmask allows to add restrictions.
+
+Available values for the <flag> bitmask:
+ IWA_NONE			No restriction. (default)
+ IWA_NOTDEAD		If dead players are warped or not
+
 ---------------------------------------
 
 *instance_announce <instance id>,"<text>",<flag>{,<fontColor>{,<fontType>{,<fontSize>{,<fontAlign>{,<fontY>}}}}};
@@ -10964,13 +11008,13 @@ If <char id> is specified, the specified player is used rather than the attached
 
 ---------------------------------------
 
-*itemlink(<item_id>,<refine>,<card0>,<card1>,<card2>,<card3>,<enchantgrade>{,<RandomIDArray>,<RandomValueArray>,<RandomParamArray>});
+*itemlink(<item_id>{,<refine>{,<card0>{,<card1>{,<card2>{,<card3>,{<enchantgrade>{,<RandomIDArray>,<RandomValueArray>,<RandomParamArray>}}}}}}});
 
 Generates an item link string for an item that can be used for npctalk, message,
 dispbottom, and broadcast commands. The result is a clickable-item name just
 like SHIFT+Click from a player's inventory/cart/equipment window. This command can be
-used with mes but the item name will not be clickable. You should use the normal client
-tags for displaying item links in mes dialogues, if the client supports them. 
+used with mes but the item name will not be clickable. You should use script command
+"mesitemlink" for displaying item links in mes dialogues, if the client supports them. 
 
 
 Examples:
@@ -10987,6 +11031,24 @@ Examples:
 RandomIDArray, RandomValueArray, and RandomParamArray only works if the
 client (and server) supports the Item Random Options feature (PACKETVER >= 20150225).
 
+---------------------------------------
+
+*mesitemlink(<item_id>{,<use_brackets>{,<display_name>});
+
+Generates an itemlink string for an item and can be used with NPC's mes command.
+The NPC message will show the item's name which will be clickable and opens the
+item description client side.
+By default <use_brackets> is true which surrounds the link with brackets. Send false to disable.
+By default the link will be created with the name of the item stored in the item database,
+but in some cases it might be necessary to overwrite the <display_name> with something else.
+
+Examples:
+
+	mes mesitemlink( 1201 ); // Will display "[Knife]" and will be clickable. If clicked it opens the description for Knife [3]
+	mes "Bring me a " + mesitemlink( 1201 ) + "."; // Will display "Bring me a [Knife]." and "[Knife]" will be clickable.
+	mes "Bring me a " + mesitemlink( 1201, false ) + "."; // Will display "Bring me a Knife." and "Knife" will be clickable.
+	mes "Bring me a " + mesitemlink( 1201, true, "Super cutting knife" ) + "."; // Will display "Bring me a [Super cutting knife]." and "[Super cutting knife]" will be clickable.
+
 ========================
 |14.- Channel commands.|
 ========================

+ 2 - 1
doc/status.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= rAthena Dev Team
 //===== Last Updated: ========================================
-//= 20221013
+//= 20221216
 //===== Description: =========================================
 //= Explanation of the status.yml file and structure.
 //============================================================
@@ -232,6 +232,7 @@ Flags: Various status flags for specific status change events.
 	RemoveOnUnequip       - Removed when unequipping any type of equipment.
 	RemoveOnUnequipWeapon - Removed when unequipping a weapon.
 	RemoveOnUnequipArmor  - Removed when unequipping an armor.
+	RemoveOnHermode       - Removed by CG_HERMODE.
 
 	StopAttacking         - Makes the unit stop attacking.
 	StopCasting           - Makes the unit stop casting skills.

+ 36 - 0
doc/yaml/db/homunculus_db.yml

@@ -0,0 +1,36 @@
+###########################################################################
+# Homunculus Database
+###########################################################################
+#
+# Homunculus Settings
+#
+###########################################################################
+# - BaseClass               Base class.
+#   Name                    Name of homunculus.
+#   EvolutionClass          Evolution class.
+#   Food                    Homunculus food item. (Default: Pet_Food)
+#   HungryDelay             Time interval in milliseconds after which the hunger value is altered. (Default: 60000)
+#   Race                    Race. (Default: Demihuman)
+#   Element                 Element. (Default: Neutral)
+#   Size                    Size. (Default: Small)
+#   EvolutionSize           Evolution size. (Default: Medium)
+#   AttackDelay             Base ASPD. (Default: 700)
+#   Status:                 Homunculus stats.
+#     - Type                Type of status.
+#       Base                Base value of this status. (Default: 1)
+#       GrowthMinimum       Minimum growth of this status. (Default: 0)
+#       GrowthMaximum       Maximum growth of this status. (Default: 0)
+#       EvolutionMinimum    Minimum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#       EvolutionMaximum    Maximum evolution growth of this status. Only applies for homunculus that can evolve. (Default: 0)
+#   SkillTree:              Skill tree.
+#     - Skill               Skill name.
+#       Clear               True to remove the given skill name. (Optional)
+#       MaxLevel            Maximum level of skill.
+#       RequiredLevel       Required base level of homunculus to learn. (Default: 0)
+#       RequiredIntimacy    Required intimacy of homunculus to learn. (Default: 0)
+#       RequireEvolution    Require the homunculus to be evolved to be available. (Default: false)
+#       Required:           Prerequisite skills. (Default: null)
+#         - Skill           Prerequisite skill name.
+#           Level           Level of prerequisite skill.
+#           Clear           True to remove the given prerequisite skill name. (Optional)
+###########################################################################

+ 12 - 0
doc/yaml/db/item_cash.yml

@@ -0,0 +1,12 @@
+###########################################################################
+# Item Cash Database
+###########################################################################
+#
+# Item Cash Settings
+#
+###########################################################################
+# - Tab                     Cash shop tab. Available tabs are New, Hot, Limited, Rental, Permanent, Scrolls, Consumables, Other, Sale.
+#   Items:                  List of possible items.
+#     - Item                Item name.
+#       Price               Item cost in cash points (#CASHPOINTS).
+###########################################################################

+ 2 - 0
doc/yaml/sql/item_db2_re.sql

@@ -39,6 +39,7 @@ CREATE TABLE `item_db2_re` (
   `job_rogue` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_soullinker` tinyint(1) unsigned DEFAULT NULL,
+  `job_spirit_handler` tinyint(1) unsigned DEFAULT NULL,
   `job_stargladiator` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_supernovice` tinyint(1) unsigned DEFAULT NULL,
@@ -53,6 +54,7 @@ CREATE TABLE `item_db2_re` (
   `class_third` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_baby` tinyint(1) unsigned DEFAULT NULL,
+  `class_fourth` tinyint(1) unsigned DEFAULT NULL,
   `gender` varchar(10) DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_mid` tinyint(1) unsigned DEFAULT NULL,

+ 2 - 0
doc/yaml/sql/item_db_re.sql

@@ -39,6 +39,7 @@ CREATE TABLE `item_db_re` (
   `job_rogue` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_soullinker` tinyint(1) unsigned DEFAULT NULL,
+  `job_spirit_handler` tinyint(1) unsigned DEFAULT NULL,
   `job_stargladiator` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_supernovice` tinyint(1) unsigned DEFAULT NULL,
@@ -53,6 +54,7 @@ CREATE TABLE `item_db_re` (
   `class_third` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_baby` tinyint(1) unsigned DEFAULT NULL,
+  `class_fourth` tinyint(1) unsigned DEFAULT NULL,
   `gender` varchar(10) DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_mid` tinyint(1) unsigned DEFAULT NULL,

+ 3 - 3
npc/custom/official/GeffenMagicTournament.txt

@@ -260,7 +260,7 @@ L_Shield:
 				case 3: goto L_Menu; break;
 			}
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			next;
@@ -303,7 +303,7 @@ L_Ring:
 						break;
 				}
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			next;
@@ -345,7 +345,7 @@ L_Armor:
 						break;
 				}
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			next;

+ 221 - 132
npc/custom/warper.txt

@@ -127,13 +127,14 @@ function Restrict {
 	Towns:
 // --------------------------------------------------
 menu	"Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5,
-    	"Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10, 
-    	"Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Kunlun",T14, "Hugel",T15,
-    	"Izlude",T16, "Jawaii",T17, "Lasagna",T18, "Lighthalzen",T19, "Luoyang",T20,
-		"Lutie",T21, "Malangdo",T22, "Malaya",T23, "Manuk",T24,
-		"Midgarts Expedition Camp",T25, "Mora",T26, "Morocc",T27, "Moscovia",T28,
-		"Nameless Island",T29, "Niflheim",T30, "Payon",T31, "Rachel",T32, "Splendide",T33,
-		"Thor Camp",T34, "Umbala",T35, "Veins",T36, "Juno",T37;
+    	"Brasilis",T6, "Comodo",T7, "Dewata",T8, "Eclage",T9, "Einbech",T10,
+		"Einbroch",T11, "El Dicastes",T12, "Geffen",T13, "Hugel",T14, "Ice Castle",T15,
+		"Izlude",T16, "Jawaii",T17, "Juno",T18, "Kunlun",T19, "Lasagna",T20,
+		"Lighthalzen",T21, "Luoyang",T22, "Lutie",T23, "Malangdo",T24, "Malaya",T25,
+		"Manuk",T26, "Midgarts Expedition Camp",T27, "Mora",T28, "Morocc",T29, "Moscovia",T30,
+		"Nameless Island (Day)",T31, "Nameless Island (Night)",T32, "Niflheim",T33, "Payon",T34, "Rachel",T35,
+		"Rockridge",T36, "Special Security Area, Cor",T37, "Splendide",T38, "Thor Camp",T39, "Umbala",T40,
+		"Varmundt's Mansion",T41, "Veins",T42, "Verus Findspot",T43, "Wolf Village",T44;
 
 T1: Go("prontera",155,183);
 T2: Go("alberta",28,234);
@@ -152,34 +153,47 @@ T11: Go("einbroch",64,200);
 T12: Restrict("RE");
 	 Go("dicastes01",198,187);
 T13: Go("geffen",119,59);
-T14: Go("gonryun",160,120);
-T15: Go("hugel",96,145);
+T14: Go("hugel",96,145);
+T15: Restrict("RE");
+	 Go("icecastle",185,212);
 T16: Go("izlude",128,(checkre(3)?146:114));
 T17: Go("jawaii",251,132);
-T18: Restrict("RE");
+T18: Go("yuno",157,51);
+T19: Go("gonryun",160,120);
+T20: Restrict("RE");
 	 Go("lasagna",193,182);
-T19: Go("lighthalzen",158,92);
-T20: Go("louyang",217,100);
-T21: Go("xmas",147,134);
-T22: Restrict("RE");
+T21: Go("lighthalzen",158,92);
+T22: Go("louyang",217,100);
+T23: Go("xmas",147,134);
+T24: Restrict("RE");
 	 Go("malangdo",140,114);
-T23: Restrict("RE");
+T25: Restrict("RE");
 	 Go("malaya",231,200);
-T24: Go("manuk",282,138);
-T25: Go("mid_camp",210,288);
-T26: Restrict("RE");
+T26: Go("manuk",282,138);
+T27: Go("mid_camp",210,288);
+T28: Restrict("RE");
 	 Go("mora",55,146);
-T27: Go("morocc",156,93);
-T28: Go("moscovia",223,184);
-T29: Go("nameless_n",256,215);
-T30: Go("niflheim",202,174);
-T31: Go("payon",179,100);
-T32: Go("rachel",130,110);
-T33: Go("splendide",201,147);
-T34: Go("thor_camp",246,68);
-T35: Go("umbala",97,153);
-T36: Go("veins",216,123);
-T37: Go("yuno",157,51);
+T29: Go("morocc",156,93);
+T30: Go("moscovia",223,184);
+T31: Go("nameless_i",256,215);
+T32: Go("nameless_n",256,215);
+T33: Go("niflheim",202,174);
+T34: Go("payon",179,100);
+T35: Go("rachel",130,110);
+T36: Restrict("RE");
+	 Go("harboro1",298,206);
+T37: Restrict("RE");
+	 Go("sp_cor",160,166);
+T38: Go("splendide",201,147);
+T39: Go("thor_camp",246,68);
+T40: Go("umbala",97,153);
+T41: Restrict("RE");
+	Go("ba_maison",72,146);
+T42: Go("veins",216,123);
+T43: Restrict("RE");
+	 Go("verus04",123,250);
+T44: Restrict("RE");
+	 Go("wolfvill",144,144);
 
 // --------------------------------------------------
 	Fields:
@@ -188,13 +202,14 @@ T37: Go("yuno",157,51);
 menu	"Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3,
     	"Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6,
     	"Eclage Fields",F7, "Einbroch Fields",F8, "El Dicastes Fields",F9,
-    	"Geffen Fields",F10, "Kunlun Fields",F11, "Hugel Fields",F12,
-		"Lasagna Fields",F13, "Lighthalzen Fields",F14, "Luoyang Field",F15, 
-		"Lutie Field",F16, "Malaya Fields",F17, "Manuk Fields",F18, 
-		"Mjolnir Fields",F19, "Moscovia Fields",F20, "Niflheim Fields",F21, 
-		"Payon Forests",F22, "Prontera Fields",F23, "Rachel Fields",F24, 
-		"Sograt Deserts",F25, "Splendide Fields",F26, "Umbala Fields",F27, 
-		"Veins Fields",F28, "Juno Fields",F29;
+    	"Frozen Scale Fields",F10, "Geffen Fields",F11, "Grey Wolf Forest",F12,
+		"Hugel Fields",F13, "Juno Fields",F14, "Kiwawa Desert",F15,
+		"Kunlun Fields",F16, "Lasagna Fields",F17, "Lighthalzen Fields",F18,
+		"Luoyang Field",F19, "Lutie Field",F20, "Malaya Fields",F21,
+		"Manuk Fields",F22, "Mjolnir Fields",F23, "Moscovia Fields",F24,
+		"Niflheim Fields",F25, "Payon Forests",F26, "Prontera Fields",F27,
+		"Rachel Fields",F28, "Sograt Deserts",F29, "Splendide Fields",F30,
+		"Umbala Fields",F31, "Veins Fields",F32;
 
 F1: setarray @c[2],190,197;
 	Disp("Amatsu Field",1,1); Pick("ama_fild");
@@ -221,43 +236,55 @@ F8: Restrict("Pre-RE",2,10);
 F9: Restrict("RE");
 	setarray @c[2],143,132,143,217;
 	Disp("El Dicastes Field",1,2); Pick("dic_fild");
-F10: Restrict("Pre-RE",13,15);
+F10: Restrict("RE");
+	 setarray @c[2],378,223,223,18,365,241,140,280;
+	 Disp("Frozen Scale Hill:Frozen Scale Plains:Frozen Scale Glacier:Frozen Tail"); Pick("","jor_back1","jor_back2","jor_back3","jor_tail");
+F11: Restrict("Pre-RE",13,15);
 	 setarray @c[0],46,199,213,204,195,212,257,192,188,171,166,263,248,158,195,191,186,183,221,117,178,218,136,328,240,181,235,235,211,185;
 	 Disp("Geffen Field",0,14); Pick("gef_fild",1);
-F11: setarray @c[2],220,227;
-	 Disp("Kunlun Field",1,1); Pick("gon_fild");
-F12: Restrict("Pre-RE",3,7);
+F12: Restrict("RE");
+	 setarray @c[2],22,315,122,388;
+	 Disp("Grey Wolf Forest",1,2); Pick("gw_fild");
+F13: Restrict("Pre-RE",3,7);
 	 setarray @c[2],268,101,222,193,232,185,252,189,196,106,216,220,227,197;
 	 Disp("Hugel Field",1,7); Pick("hu_fild");
-F13: Restrict("RE");
+F14: Restrict("Pre-RE",5,10);
+	 setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
+	 Disp("Juno Field",1,12); Pick("yuno_fild");
+F15: Restrict("RE");
+	 setarray @c[2],38,246,31,207;
+	 Disp("Kiwawa Desert",1,2); Pick("","rockrdg1","rockrdg2");
+F16: setarray @c[2],220,227;
+	 Disp("Kunlun Field",1,1); Pick("gon_fild");
+F17: Restrict("RE");
 	 setarray @c[2],344,371,20,98;
 	 Disp("Lasagna Field",1,2); Pick("lasa_fild");	 
-F14: setarray @c[2],240,179,185,235,240,226;
+F18: setarray @c[2],240,179,185,235,240,226;
 	 Disp("Lighthalzen Field",1,3); Pick("lhz_fild");
-F15: setarray @c[2],229,187;
+F19: setarray @c[2],229,187;
 	 Disp("Luoyang Field",1,1); Pick("lou_fild");
-F16: setarray @c[2],115,145;
+F20: setarray @c[2],115,145;
 	 Disp("Lutie Field",1,1); Pick("xmas_fild");
-F17: Restrict("RE");
+F21: Restrict("RE");
 	 setarray @c[2],40,272,207,180;
 	 Disp("Malaya Field",1,2); Pick("ma_fild");
-F18: setarray @c[2],35,236,35,262,84,365;
+F22: setarray @c[2],35,236,35,262,84,365;
 	 Disp("Manuk Field",1,3); Pick("man_fild");
-F19: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
+F23: setarray @c[2],204,120,175,193,208,213,179,180,181,240,195,270,235,202,188,215,205,144,245,223,180,206,196,208;
 	 Disp("Mjolnir Field",1,12); Pick("mjolnir_");
-F20: setarray @c[2],82,104,131,147;
+F24: setarray @c[2],82,104,131,147;
 	 Disp("Moscovia Field",1,2); Pick("mosk_fild");
-F21: setarray @c[2],215,229,167,234;
+F25: setarray @c[2],215,229,167,234;
 	 Disp("Niflheim Field",1,2); Pick("nif_fild");
-F22: Restrict("Pre-RE",5,11);
+F26: Restrict("Pre-RE",5,11);
 	 setarray @c[2],158,206,151,219,205,148,186,247,134,204,193,235,200,177,137,189,201,224,160,205,194,150;
 	 Disp("Payon Forest",1,11); Pick("pay_fild");
-F23: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
+F27: setarray @c[0],208,227,190,206,240,206,190,143,307,252,239,213,185,188,193,194,187,218,210,183,195,149,198,164;
 	 Disp("Prontera Field",0,11); Pick("prt_fild",1);
-F24: Restrict("Pre-RE",2,7,9,10,11,13);
+F28: Restrict("Pre-RE",2,7,9,10,11,13);
 	 setarray @c[2],192,162,235,166,202,206,202,208,225,202,202,214,263,196,217,201,87,121,277,181,221,185,175,200,174,197;
 	 Disp("Rachel Field",1,13); Pick("ra_fild");
-F25: if(.Satan_Morocc){
+F29: if(.Satan_Morocc){
 	 setarray @c[2],219,205,177,206,194,182,224,170,198,216,156,187,185,263,206,228,208,238,209,223,85,97,207,202,31,195,38,195;
 	 Disp("Sograt Desert 1:Sograt Desert 2:Sograt Desert 3:Sograt Desert 7:Sograt Desert 11:Sograt Desert 12:Sograt Desert 13:Sograt Desert 16:Sograt Desert 17:Sograt Desert 18:Sograt Desert 19:Sograt Desert 20:Sograt Desert 21:Sograt Desert 22");
 	 Pick("","moc_fild01","moc_fild02","moc_fild03","moc_fild07","moc_fild11","moc_fild12","moc_fild13","moc_fild16","moc_fild17","moc_fild18","moc_fild19","moc_fild20","moc_fild21","moc_fild22");
@@ -265,133 +292,195 @@ F25: if(.Satan_Morocc){
 	 setarray @c[2],219,205,177,206,194,182,146,297,204,197,275,302,224,170,139,123,101,110,341,39,198,216,156,187,185,263,223,222,170,257,206,228,208,238,209,223,85,97;
 	 Disp("Sograt Desert",1,19); Pick("moc_fild");
 	 }
-F26: setarray @c[2],175,186,236,184,188,204;
+F30: setarray @c[2],175,186,236,184,188,204;
 	 Disp("Splendide Field",1,3); Pick("spl_fild");
-F27: setarray @c[2],217,206,223,221,237,215,202,197;
+F31: setarray @c[2],217,206,223,221,237,215,202,197;
 	 Disp("Umbala Field",1,4); Pick("um_fild");
-F28: Restrict("Pre-RE",5);
+F32: Restrict("Pre-RE",5);
 	 setarray @c[2],186,175,196,370,222,45,51,250,202,324,150,223,149,307;
 	 Disp("Veins Field",1,7); Pick("ve_fild");
-F29: Restrict("Pre-RE",5,10);
-	 setarray @c[2],189,224,192,207,221,157,226,199,223,177,187,232,231,174,196,203,183,214,200,124,195,226,210,304;
-	 Disp("Juno Field",1,12); Pick("yuno_fild");
 
 // --------------------------------------------------
 	Dungeons:
 // --------------------------------------------------
 @d = true;
-menu	"Abyss Lakes",D1, "Amatsu Dungeon",D2, "Anthell",D3,
-    	"Ayothaya Dungeon",D4, "Beach Dungeon",D5, "Bifrost Tower",D42,
-    	"Bio Labs",D6, "Brasilis Dungeon",D7, "Byalan Dungeon",D8, "Clock Tower",D9,
-    	"Coal Mines",D10, "Culvert",D11, "Cursed Abbey",D12, "Dewata Dungeon",D13,
-    	"Einbroch Dungeon",D14, "Gefenia",D15, "Geffen Dungeon",D16,
-    	"Glast Heim",D17, "Kunlun Dungeon",D18, "Hidden Dungeon",D19,
-    	"Ice Dungeon",D20, "Juperos",D21, "Kiel Dungeon",D22, "Lasagna Dungeon",D23,
-		"Luoyang Dungeon",D24, "Magma Dungeon",D25, "Malangdo Dungeon",D26,
-		"Moscovia Dungeon",D27, "Nidhogg's Dungeon",D28, "Odin Temple",D29,
-		"Orc Dungeon",D30, "Payon Dungeon",D31, "Pyramids",D32, "Rachel Sanctuary",D33,
-    	"Scaraba Hole",D34, "Sphinx",D35, "Sunken Ship",D36, "Thanatos Tower",D37,
-    	"Thor Volcano",D38, "Toy Factory",D39, "Turtle Dungeon",D40, "Umbala Dungeon",D41;
-
-D1: setarray @c[2],261,272,275,270,116,27;
-	Disp("Abyss Lakes",1,3); Pick("abyss_");
-D2: setarray @c[2],228,11,34,41,119,14;
+menu	"Abandoned Lab Amicitia",D1, "Abyss Lakes",D2, "Amatsu Dungeon",D3,
+		"Anthell",D4, "Ayothaya Dungeon",D5, "Beach Dungeon",D6,
+		"Bifrost Tower",D7, "Bio Labs",D8, "Brasilis Dungeon",D9,
+		"Byalan Dungeon",D10, "Clock Tower",D11, "Coal Mines",D12,
+		"Culvert",D13, "Cursed Abbey",D14, "Dewata Dungeon",D15,
+		"Einbroch Dungeon",D16, "Flame Basin",D17, "Gefenia",D18,
+		"Geffen Dungeon",D19, "Glast Heim",D20, "Hidden Dungeon",D21,
+		"Ice Dungeon",D22, "Illusion Dungeon",D23, "Issgard Dungeon",D24,
+		"Juperos",D25, "Kiel Dungeon",D26, "Kunlun Dungeon",D27,
+		"Lasagna Dungeon",D28, "Luoyang Dungeon",D29, "Magma Dungeon",D30,
+		"Malangdo Dungeon",D31, "Moscovia Dungeon",D32, "Nidhogg's Dungeon",D33,
+		"Niflheim Dungeon",D34, "Odin Temple",D35, "Orc Dungeon",D36,
+		"Oz Labyrinth Dungeon",D37, "Payon Dungeon",D38, "Prontera Underground",D39,
+		"Pyramids",D40, "Rachel Sanctuary",D41, "Rock Ridge Dungeon",D42,
+		"Rudus Dungeon",D43, "Scaraba Hole",D44, "Sphinx",D45,
+		"Sunken Ship",D46, "Thanatos Tower",D47, "Thor Volcano",D48,
+		"Toy Factory",D49, "Turtle Dungeon",D50, "Umbala Dungeon",D51,
+		"Varmundt's Dungeon",D52, "Verus Area",D53;
+
+D1: Restrict("RE");
+	setarray @c[2],253,244,145,278;
+	Disp("1st Floor - Comprehensive Lab:2nd Floor - Intensive Culture Room"); Pick("","amicitia1","amicitia2");
+D2: Restrict("RE",4);
+	setarray @c[2],261,272,275,270,116,27,169,159;
+	Disp("Abyss Lakes",1,4); Pick("abyss_");
+D3: setarray @c[2],228,11,34,41,119,14;
 	Disp("Amatsu Dungeon",1,3); Pick("ama_dun");
-D3: setarray @c[2],35,262,168,170;
+D4: setarray @c[2],35,262,168,170;
 	Disp("Anthell",1,2); Pick("anthell");
-D4: setarray @c[2],275,19,24,26;
+D5: setarray @c[2],275,19,24,26;
 	Disp("Ancient Shrine Maze:Inside Ancient Shrine"); Pick("ayo_dun");
-D5: setarray @c[2],266,67,255,244,23,260;
+D6: setarray @c[2],266,67,255,244,23,260;
 	Disp("Beach Dungeon",1,3); Pick("","beach_dun","beach_dun2","beach_dun3");
-D6: Restrict("RE",4);
-	setarray @c[2],150,288,150,18,140,134,244,52;
-	Disp("Bio Lab",1,4); Pick("lhz_dun");
 D7: Restrict("RE");
+	setarray @c[2],57,13,64,88,45,14,26,23;
+	Disp("Bifrost Tower",1,4); Pick("ecl_tdun");
+D8: Restrict("RE",4,5);
+	setarray @c[2],150,288,150,18,140,134,244,52,100,202;
+	Disp("Bio Lab 1:Bio Lab 2:Bio Lab 3:Bio Lab 4:Tomb of the Fallen"); Pick("","lhz_dun01","lhz_dun02","lhz_dun03","lhz_dun04","lhz_dun_n");
+D9: Restrict("RE");
 	setarray @c[2],87,47,262,262;
 	Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
-D8: Restrict("RE",6);
-	setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
-	Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
-D9: setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74;
-	Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4");
-	Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04");
-D10: setarray @c[2],52,17,381,343,302,262;
+D10: Restrict("RE",6);
+	 setarray @c[0],168,168,253,252,236,204,32,63,26,27,141,187;
+	 Disp("Byalan Dungeon",1,6); Pick("iz_dun",1);
+D11: Restrict("RE",9,10,11);
+	 setarray @c[2],199,159,148,283,65,147,56,155,297,25,127,169,277,178,268,74,266,27,60,142,79,39;
+	 Disp("Clock Tower 1:Clock Tower 2:Clock Tower 3:Clock Tower 4:Basement 1:Basement 2:Basement 3:Basement 4:Nightmare Clock Tower, 2nd Floor:Nightmare Clock Tower, 3rd Floor:Unknown Basement");
+	 Pick("","c_tower1","c_tower2","c_tower3","c_tower4","alde_dun01","alde_dun02","alde_dun03","alde_dun04","c_tower2_","c_tower3_","clock_01");
+D12: setarray @c[2],52,17,381,343,302,262;
 	 Disp("Coal Mines",1,3); Pick("mjo_dun");
-D11: setarray @c[2],131,247,19,19,180,169,100,92;
+D13: setarray @c[2],131,247,19,19,180,169,100,92;
 	 Disp("Culvert",1,4); Pick("","prt_sewb1","prt_sewb2","prt_sewb3","prt_sewb4");
-D12: setarray @c[2],51,14,150,11,120,10;
+D14: setarray @c[2],51,14,150,11,120,10;
 	 Disp("Cursed Abbey",1,3); Pick("abbey");
-D13: Restrict("RE");
+D15: Restrict("RE");
 	 setarray @c[2],285,160,299,29;
 	 Disp("Dewata Dungeon",1,2); Pick("dew_dun");
-D14: setarray @c[2],22,14,292,290;
-	 Disp("Einbroch Dungeon",1,2); Pick("ein_dun");
-D15: setarray @c[2],40,103,203,34,266,168,130,272;
+D16: Restrict("RE",3);
+	 setarray @c[2],22,14,292,290,269,279;
+	 Disp("Einbroch Dungeon",1,3); Pick("ein_dun");
+D17: Restrict("RE");
+	 Go("moro_vol",97,107);
+D18: setarray @c[2],40,103,203,34,266,168,130,272;
 	 Disp("Gefenia",1,4); Pick("gefenia",0);
-D16: setarray @c[0],104,99,115,236,106,132,203,200;
+D19: setarray @c[0],104,99,115,236,106,132,203,200;
 	 Disp("Geffen Dungeon",1,4); Pick("gef_dun",1);
-D17: setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14;
-	 Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2");
-	 Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1");
-D18: setarray @c[2],153,53,28,113,68,16;
-	 Disp("Kunlun Dungeon",1,3); Pick("gon_dun");
-D19: setarray @c[2],176,7,93,20,23,8;
+D20: Restrict("RE",17,18,19);
+	 setarray @c[2],370,304,199,29,104,25,150,15,157,287,147,15,258,255,108,291,171,283,68,277,156,7,12,7,133,271,224,274,14,70,150,14,104,31,148,144,199,29;
+	 Disp("Entrance:Castle 1:Castle 2:Chivalry 1:Chivalry 2:Churchyard:Culvert 1:Culvert 2:Culvert 3:Culvert 4:St. Abbey:Staircase Dungeon:Underground Cave 1:Underground Cave 2:Underground Prison 1:Underground Prison 2:Castle 2 - Nightmare Mode:Churchyard - Nightmare Mode:Abyss Glastheim Castle F1");
+	 Pick("","glast_01","gl_cas01","gl_cas02","gl_knt01","gl_knt02","gl_chyard","gl_sew01","gl_sew02","gl_sew03","gl_sew04","gl_church","gl_step","gl_dun01","gl_dun02","gl_prison","gl_prison1","gl_cas02_","gl_chyard_","gl_cas01_");
+D21: setarray @c[2],99,31,93,20,182,88;
 	 Disp("Hidden Dungeon",1,3); Pick("prt_maze");
-D20: setarray @c[2],157,14,151,155,149,22,33,158;
+D22: setarray @c[2],157,14,151,155,149,22,33,158;
 	 Disp("Ice Dungeon",1,4); Pick("ice_dun");
-D21: setarray @c[2],140,51,53,247,37,63,150,285;
-	 Disp("Entrance:Juperos 1:Juperos 2:Core");
-	 Pick("","jupe_cave","juperos_01","juperos_02","jupe_core");
-D22: setarray @c[2],28,226,41,198;
+D23: menu	"Illusion of Abyss",SubD1, "Illusion of Frozen",SubD2, "Illusion of Labyrinth",SubD3,
+			"Illusion of Luanda",SubD4, "Illusion of Moonlight",SubD5, "Illusion of Teddy Bear",SubD6,
+			"Illusion of Twins",SubD7, "Illusion of Underwater",SubD8, "Illusion of Vampire",SubD9;
+	SubD1: Restrict("RE");
+		   setarray @c[2],132,189,99,186;
+		   Disp("Desolate Village:Bleak Turtle Palace"); Pick("","tur_d03_i","tur_d04_i");
+	SubD2: Restrict("RE");
+		   Go("ice_d03_i",149,22);
+	SubD3: Restrict("RE");
+		   Go("prt_mz03_i",100,100);
+	SubD4: Restrict("RE");
+		   Go("com_d02_i",250,245);
+	SubD5: Restrict("RE");
+		   Go("pay_d03_i",140,44);
+	SubD6: Restrict("RE");
+		   Go("ein_d02_i",164,184);
+	SubD7: Restrict("RE");
+		   Go("ant_d02_i",168,170);
+	SubD8: Restrict("RE");
+		   setarray @c[2],130,230,141,188;
+		   Disp("Deep Sea Cave",1,2); Pick("","iz_d04_i","iz_d05_i");
+	SubD9: Restrict("RE");
+		   Go("gef_d01_i",114,216);
+D24: Restrict("RE");
+	 setarray @c[2],112,15,280,87,112,12,274,85;
+	 Disp("Abandoned Pit Floor 1:Abandoned Pit Floor 2:Snake God's Warmth 1st Floor:Snake God's Warmth 2nd Floor"); Pick("","jor_ab01","jor_ab02","jor_dun01","jor_dun02");
+D25: Restrict("RE",5);
+	 setarray @c[2],140,51,53,247,37,63,150,285,146,215;
+	 Disp("Entrance:Juperos 1:Juperos 2:Core:Eastern Ruins of Juperos");
+	 Pick("","jupe_cave","juperos_01","juperos_02","jupe_core","ver_eju");
+D26: setarray @c[2],28,226,41,198;
 	 Disp("Kiel Dungeon",1,2); Pick("kh_dun");
-D23: Restrict("RE");
+D27: setarray @c[2],153,53,28,113,68,16;
+	 Disp("Kunlun Dungeon",1,3); Pick("gon_dun");
+D28: Restrict("RE");
 	 setarray @c[2],24,143,22,171,190,18;
 	 Disp("Lasagna Dungeon",1,3); Pick("lasa_dun");
-D24: setarray @c[2],218,196,282,20,165,38;
+D29: setarray @c[2],218,196,282,20,165,38;
 	 Disp("The Royal Tomb:Inside the Royal Tomb:Suei Long Gon"); Pick("lou_dun");
-D25: setarray @c[2],126,68,47,30;
-	 Disp("Magma Dungeon",1,2); Pick("mag_dun");
-D26: Restrict("RE");
+D30: Restrict("RE",3);
+	 setarray @c[2],126,68,47,30,118,113;
+	 Disp("Magma Dungeon",1,3); Pick("mag_dun");
+D31: Restrict("RE");
 	 setarray @c[2],33,230;
 	 Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
-D27: setarray @c[2],189,48,165,30,32,135;
+D32: setarray @c[2],189,48,165,30,32,135;
 	 Disp("Moscovia Dungeon",1,3); Pick("mosk_dun");
-D28: setarray @c[2],61,239,60,271;
+D33: setarray @c[2],61,239,60,271;
 	 Disp("Nidhogg's Dungeon",1,2); Pick("nyd_dun");
-D29: setarray @c[2],298,167,224,149,266,280;
-	 Disp("Odin Temple",1,3); Pick("odin_tem");
-D30: setarray @c[2],32,170,21,185;
+D34: Restrict("RE");
+	 setarray @c[2],145,90,150,20;
+	 Disp("Niflheim Dungeon - 1st Floor:Niflheim Dungeon - 2nd Floor"); Pick("nif_dun");
+D35: Restrict("RE",4);
+	 setarray @c[2],298,167,224,149,266,280,276,236;
+	 Disp("Odin Temple 1:Odin Temple 2:Odin Temple 3:Odin Past"); Pick("","odin_tem01","odin_tem02","odin_tem03","odin_past");
+D36: setarray @c[2],32,170,21,185;
 	 Disp("Orc Dungeon",1,2); Pick("orcsdun");
-D31: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
+D37: Restrict("RE");
+	 setarray @c[2],21,191,141,277;
+	 Disp("Oz Labyrinth Floor 1:Oz Labyrinth Floor 2"); Pick("oz_dun");
+D38: setarray @c[0],21,183,19,33,19,63,155,159,201,204;
 	 Disp("Payon Dungeon",1,5); Pick("pay_dun",1);
-D32: Restrict("RE",7,8);
+D39: Restrict("RE");
+	 setarray @c[2],159,289,155,353;
+	 Disp("Prontera Underground Prison:Prontera Invasion"); Pick("","prt_prison","prt_q");
+D40: Restrict("RE",7,8);
 	 setarray @c[2],192,9,10,192,100,92,181,11,94,96,192,8,94,96,192,8;
 	 Disp("Pyramids 1:Pyramids 2:Pyramids 3:Pyramids 4:Basement 1:Basement 2:Basement 1 - Nightmare Mode:Basement 2 - Nightmare Mode");
 	 Pick("","moc_pryd01","moc_pryd02","moc_pryd03","moc_pryd04","moc_pryd05","moc_pryd06","moc_prydn1","moc_prydn2");
-D33: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
+D41: setarray @c[2],140,11,32,21,8,149,204,218,150,9;
 	 Disp("Rachel Sanctuary",1,5); Pick("ra_san");
-D34: Restrict("RE");
-	 setarray @c[2],364,44,101,141;
-	 Disp("Scaraba Hole",1,2); Pick("dic_dun");
-D35: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
+D42: Restrict("RE");
+	 setarray @c[2],247,19,281,104;
+	 Disp("Rock Ridge Mine:Underground Waterway Culvert"); Pick("","rockmi1","harboro2");
+D43: Restrict("RE");
+	 setarray @c[2],200,377,185,258,366,207,378,178;
+	 Disp("Rudus Dungeon",1,4); Pick("","sp_rudus","sp_rudus2","sp_rudus3","sp_rudus4");
+D44: Restrict("RE");
+	 setarray @c[2],364,44,101,141,101,141;
+	 Disp("Scaraba Hole",1,3); Pick("dic_dun");
+D45: setarray @c[2],288,9,149,81,210,54,10,222,100,99;
 	 Disp("Sphinx",1,5); Pick("","in_sphinx1","in_sphinx2","in_sphinx3","in_sphinx4","in_sphinx5");
-D36: setarray @c[2],69,24,102,27;
+D46: setarray @c[2],69,24,102,27;
 	 Disp("Sunken Ship",1,2); Pick("treasure");
-D37: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
+D47: setarray @c[2],150,39,150,136,220,158,59,143,62,11,89,221,35,166,93,148,29,107,159,138,19,20,130,52;
 	 Disp("Thanatos Tower",1,12); Pick("tha_t");
-D38: setarray @c[2],21,228,75,205,34,272;
+D48: setarray @c[2],21,228,75,205,34,272;
 	 Disp("Thor Volcano",1,3); Pick("thor_v");
-D39: setarray @c[2],205,15,129,133;
+D49: setarray @c[2],205,15,129,133;
 	 Disp("Toy Factory",1,2); Pick("xmas_dun");
-D40: setarray @c[2],154,49,148,261,132,189,100,192;
+D50: setarray @c[2],154,49,148,261,132,189,100,192;
 	 Disp("Entrance:Turtle Dungeon 1:Turtle Dungeon 2:Turtle Dungeon 3"); Pick("tur_dun");
-D41: Restrict("Pre-RE",1,2);
+D51: Restrict("Pre-RE",1,2);
 	 setarray @c[2],42,31,48,30,204,78;
 	 Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
 	 Pick("","um_dun01","um_dun02","yggdrasil01");
-D42: Restrict("RE");
-	 setarray @c[2],57,13,64,88,45,14,26,23;
-	 Disp("Bifrost Tower",1,4); Pick("ecl_tdun");
+D52: Restrict("RE");
+	 setarray @c[2],275,21,15,115,15,115,159,27,162,36,159,11,156,33,337,333,314,64,163,18,156,20,39,81;
+	 Disp("Sewage Treatment Plant:1st Power Plant:2nd Power Plant:Large Bath Meditathio:Lost Farm Valley:Library Memory Corridor:Upper Floor of Tartaros Storage:Lower Floor of Tartaros Storage:Death Rune:Fire Rune:Grass Rune:Ice Rune"); Pick("","ba_pw02","ba_pw01","ba_pw03","ba_bath","ba_lost","ba_lib","ba_2whs01","ba_2whs02","bl_death","bl_lava","bl_grass","bl_ice");
+D53: Restrict("RE");
+	 setarray @c[2],244,61,72,20,122,22;
+	 Disp("Lab-OPTATIO:R&D-WISH:Verus Center Square"); Pick("verus");
 
 // --------------------------------------------------
 	Castles:

+ 1 - 29
npc/mapflag/nosave.txt

@@ -7,6 +7,7 @@
 //= 1.7 Updated. [Lupus]
 //= 1.8 Updated. [L0ne_W0lf]
 //= 1.9 Renewal split. [Euphy]
+//= 2.0 Moved instances to pre-renewal. [Lemongrass]
 //============================================================
 
 //============================================================
@@ -268,23 +269,6 @@ que_qaru03	mapflag	nosave	SavePoint
 que_qaru04	mapflag	nosave	SavePoint
 que_qaru05	mapflag	nosave	SavePoint
 
-//============================================================
-// Sealed Shrine
-//============================================================
-1@cata	mapflag	nosave	SavePoint
-2@cata	mapflag	nosave	SavePoint
-
-//============================================================
-// Endless Tower
-//============================================================
-e_tower	mapflag	nosave	SavePoint
-1@tower	mapflag	nosave	SavePoint
-2@tower	mapflag	nosave	SavePoint
-3@tower	mapflag	nosave	SavePoint
-4@tower	mapflag	nosave	SavePoint
-5@tower	mapflag	nosave	SavePoint
-6@tower	mapflag	nosave	SavePoint
-
 //============================================================
 // Battlegrounds
 //============================================================
@@ -307,18 +291,6 @@ schg_dun01	mapflag	nosave	SavePoint
 arug_que01	mapflag	nosave	SavePoint
 arug_dun01	mapflag	nosave	SavePoint
 
-//============================================================
-// Orc's Memory
-//============================================================
-1@orcs	mapflag	nosave	SavePoint
-2@orcs	mapflag	nosave	SavePoint
-
-//============================================================
-// Nidhoggr's Instance
-//============================================================
-1@nyd	mapflag	nosave	SavePoint
-2@nyd	mapflag	nosave	SavePoint
-
 //============================================================
 // RWC
 //============================================================

+ 0 - 125
npc/merchants/cash_hair.txt

@@ -1,125 +0,0 @@
-//===== rAthena Script ======================================= 
-//= Cash Hair Stylist
-//===== By: ================================================== 
-//= Kisuka
-//===== Current Version: ===================================== 
-//= 1.0
-//===== Compatible With: ===================================== 
-//= rAthena Project
-//===== Description: ========================================= 
-//= Exchange cash item, New_Style_Coupon, for new hair styles.
-//===== Additional Comments: ================================= 
-//= 1.0 First Version. [Kisuka]
-//============================================================
-
-itemmall,19,74,5	script	Stylist#cash	91,{
-	mes "[Stylist]";
-	mes "Hey, I'm Kaniki.";
-	mes "I'm here to start a new";
-	mes "trend by introducing my";
-	mes "special new hairstyles!";
-	mes "Give me a ^FF0000New Style Coupon^000000,";
-	mes "and I'll change your hair~";
-	next;
-	if (Sex == SEX_MALE) {
-		mes "[Kaniki]";
-		mes "I have two special";
-		mes "hairstyles for men, the";
-		mes "Emergency Heal Perm";
-		mes "and the Aura Blade Cut.";
-		mes "and aura blade cut.";
-		next;
-		cutin "hair_m_24.bmp",4;
-		mes "[Kaniki]";
-		mes "This is the Emergency";
-		mes "Heal Perm. It's a brand";
-		mes "new style I invented recently.";
-		mes "What do you think? Cool, huh?";
-		next;
-		cutin "",255;
-		cutin "hair_m_25.bmp",4;
-		mes "[Kaniki]";
-		mes "Now this is the Aura";
-		mes "Blade Cut. You haven't";
-		mes "seen anything like it";
-		mes "before, haven't you?";
-		next;
-		cutin "",255;
-	}else{
-		mes "[Kaniki]";
-		mes "I have two new hairstyles for";
-		mes "women, the Assumptio Perm";
-		mes "and the Soul Changer Cut.";
-		mes "Do you want to see how";
-		mes "these styles look?";
-		next;
-		cutin "hair_f_24.bmp",4;
-		mes "[Kaniki]";
-		mes "This is the Assumptio";
-		mes "Perm. It'd really good";
-		mes "on you, wouldn't it?";
-		next;
-		cutin "",255;
-		cutin "hair_f_25.bmp",4;
-		mes "[Kaniki]";
-		mes "Next is the Soul";
-		mes "Changer Cut. What do";
-		mes "you think? Isn't it nice?";
-		next;
-		cutin "",255;
-	}
-	mes "[Kaniki]";
-	mes "Have you decided";
-	mes "if you'd like me to";
-	mes "change your hairstyle?";
-	next;
-	if(select("Change Hairstyle:Don't Change") == 1) {
-		if (countitem(7622) > 0) {
-			mes "[Kaniki]";
-			mes "Great, you brought";
-			mes "a New Style Coupon!";
-			mes "Alright, which hairstyle";
-			mes "did you want to have?";
-			next;
-			if (Sex == SEX_MALE) {
-				if(select("Emergency Heal Perm:Aura Blade Cut") == 1) {
-					delitem 7622,1;	// New_Style_Coupon
-					setlook 1,24;
-				}else{
-					delitem 7622,1;	// New_Style_Coupon
-					setlook 1,25;
-				}
-			}else{
-				if(select("Assumptio Perm:Soul Changer Cut") == 1) {
-					delitem 7622,1;	// New_Style_Coupon
-					setlook 1,24;
-				}else{
-					delitem 7622,1;	// New_Style_Coupon
-					setlook 1,25;
-				}
-			}
-			mes "[Kaniki]";
-			mes "There--! It's done!";
-			mes "How do you like your";
-			mes "new hair? Well, I hope";
-			mes "to see you again. Take care!";
-			close;
-		}else{
-			mes "[Kaniki]";
-			mes "I'm sorry, but I can";
-			mes "only provide my hairstyling";
-			mes "service if you bring a New";
-			mes "Style Coupon. Please come";
-			mes "back to me after you manage to";
-			mes "get one of those coupons, okay?";
-			close;
-		}
-	}
-	mes "[Kaniki]";
-	mes "Really? Oh, that's too bad.";
-	mes "Well, if you ever change your";
-	mes "mind about updating your";
-	mes "hairstyle, come back";
-	mes "and let me know, okay?";
-	close;
-}

+ 37 - 0
npc/pre-re/mapflag/nosave.txt

@@ -0,0 +1,37 @@
+//===== rAthena Script =======================================
+//= Mapflag: Disable auto-save.
+//===== Description: ========================================= 
+//= Characters logging out on the specified map will be warped
+//= to the map specified in the last field, or "SavePoint".
+//===== Additional Comments: ================================= 
+//= 1.0 Renewal Split. [Lemongrass]
+//============================================================
+
+//============================================================
+// Endless Tower
+//============================================================
+e_tower	mapflag	nosave	SavePoint
+1@tower	mapflag	nosave	SavePoint
+2@tower	mapflag	nosave	SavePoint
+3@tower	mapflag	nosave	SavePoint
+4@tower	mapflag	nosave	SavePoint
+5@tower	mapflag	nosave	SavePoint
+6@tower	mapflag	nosave	SavePoint
+
+//============================================================
+// Sealed Shrine
+//============================================================
+1@cata	mapflag	nosave	SavePoint
+2@cata	mapflag	nosave	SavePoint
+
+//============================================================
+// Orc's Memory
+//============================================================
+1@orcs	mapflag	nosave	SavePoint
+2@orcs	mapflag	nosave	SavePoint
+
+//============================================================
+// Nidhoggr's Instance
+//============================================================
+1@nyd	mapflag	nosave	SavePoint
+2@nyd	mapflag	nosave	SavePoint

+ 1 - 1
npc/pre-re/mobs/dungeons/nyd_dun.txt

@@ -14,7 +14,7 @@
 // nyd_dun01 - Yggdrasil Root Dungeon
 //==================================================
 nyd_dun01,0,0	monster	Draco	2013,40
-nyd_dun01,0,0	monster	Draco's Egg	2014,10,0,0,0
+nyd_dun01,0,0	monster	Draco's Egg	2014,10
 nyd_dun01,0,0	monster	Aqua Elemental	2016,20
 nyd_dun01,0,0	monster	Dark Pinguicula	2015,10
 nyd_dun01,0,0	monster	Rata	2017,2,900000

+ 1 - 1
npc/pre-re/mobs/dungeons/prt_maze.txt

@@ -84,7 +84,7 @@ prt_maze03,50,150,70,70	monster	Vagabond Wolf	1092,1,1920000,150000
 prt_maze03,170,170,70,70	monster	Mantis	1139,30,60000,30000
 prt_maze03,170,170,70,70	monster	Eclipse	1093,1,1920000,150000
 prt_maze03,23,23,70,70	monster	Mastering	1090,1,1920000,150000
-prt_maze03,100,100,80,80	monster	Baphomet Jr.	1101,25,0,0,0
+prt_maze03,100,100,80,80	monster	Baphomet Jr.	1101,25
 prt_maze03,0,0,0,0	boss_monster	Baphomet	1039,1,7200000,600000,1
 prt_maze03,61,98,10,10	monster	Shining Plant	1083,1,1800000,900000
 prt_maze03,61,98,10,10	monster	Blue Plant	1079,1,1800000,900000

+ 13 - 13
npc/re/custom/lasagna/lasagna_npcs.txt

@@ -2066,22 +2066,22 @@ lasagna,131,245,5	script	The diligent second son	4_CAT_3COLOR,{
 	mes "[Yota Chara]";
 	switch(.@s) {
 	case 1:
-		mes "<ITEM>Low-grade Horse Mackerel Amulet <INFO>28413</INFO></ITEM> is for my father who is far out to the sea.";
+		mes mesitemlink( 28413, false ) + " is for my father who is far out to the sea.";
 		break;
 	case 2:
-		mes "<ITEM>Low-grade Leaf Amulet <INFO>28416</INFO></ITEM> is for my mother who should be wandering about the deep side of the forest.";
+		mes mesitemlink( 28416, false ) + " is for my mother who should be wandering about the deep side of the forest.";
 		break;
 	case 3:
-		mes "<ITEM>Low-grade Rabbit Amulet <INFO>28419</INFO></ITEM> is for my brothers' health and wellness.";
+		mes mesitemlink( 28419, false ) + " is for my brothers' health and wellness.";
 		break;
 	case 4:
-		mes "<ITEM>Shining Twig Charm <INFO>28422</INFO></ITEM> is to wish for my mother to return home safely from anywhere in the world.";
+		mes mesitemlink( 28422, false ) + " is to wish for my mother to return home safely from anywhere in the world.";
 		break;
 	case 5:
-		mes "<ITEM>Fresh Tuna Amulet <INFO>28423</INFO></ITEM> is to wish for my father to return home quick with his ship full of tunas.";
+		mes mesitemlink( 28423, false ) + " is to wish for my father to return home quick with his ship full of tunas.";
 		break;
 	case 6:
-		mes "<ITEM>Plump Earthworm Amulet <INFO>28424</INFO></ITEM> is to wish for easy fishing so that my family won't be starved.";
+		mes mesitemlink( 28424, false ) + " is to wish for easy fishing so that my family won't be starved.";
 		break;
 	}
 	if (.@s < 4) {
@@ -2092,7 +2092,7 @@ lasagna,131,245,5	script	The diligent second son	4_CAT_3COLOR,{
 		.@cost = 30;
 		.@item_id = 28418 + .@s;
 	}
-	mes "Will you exchange it for " + .@cost + " <ITEM>Doram Token<INFO>25142</INFO></ITEM>?";
+	mes "Will you exchange it for " + .@cost + " " + mesitemlink( 25142, false ) + "?";
 	next;
 	if (select( "Exchange", "Cancel" ) == 2) {
 		mes "[Yota Chara]";
@@ -2164,7 +2164,7 @@ lasagna,131,250,5	script	The brave third#weapon	4_DR_M_02,{
 	emotion ET_SPARK;
 	mes "[Jogi Chara]";
 	mes "Whoa, a new weapon! New power!";
-	mes "What are you going to give me? Do you have a lot of weapons? Can I search into them? Will you exchange it for <ITEM>Doram Token <INFO>25142</INFO></ITEM>?";
+	mes "What are you going to give me? Do you have a lot of weapons? Can I search into them? Will you exchange it for " + mesitemlink( 25142, false ) + "?";
 	next;
 	if (select( "Search", "Cancel" ) == 1) {
 		setarray .@item_data[0],
@@ -2193,7 +2193,7 @@ lasagna,131,250,5	script	The brave third#weapon	4_DR_M_02,{
 			else {
 				mes "[Jogi Chara]";
 				mes "Whoa! This is ^3131FF" + getitemname(.@item_data[.@i]) + "^000000!";
-				mes "Exchange it for " + .@item_data[.@i+1] + " <ITEM>Doram Token<INFO>25142</INFO></ITEM>! Please? Will you do it, please?";
+				mes "Exchange it for " + .@item_data[.@i+1] + " " + mesitemlink( 25142, false ) + "! Please? Will you do it, please?";
 				next;
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 					mes "[Jogi Chara]";
@@ -2253,7 +2253,7 @@ lasagna,140,250,3	script	The skittish fourth#wea	4_DR_F_01,{
 	}
 	mes "[Dandi Chara]";
 	mes "Do you mind if I search you to see the items you have with you?";
-	mes "If I find an item suitable for Jogi, I'll pay <INFO>25142</INFO><ITEM>Doram Token </ITEM>....";
+	mes "If I find an item suitable for Jogi, I'll pay " + mesitemlink( 25142, false ) + "....";
 	next;
 	if (select( "Search", "Cancel" ) == 1) {
 		setarray .@item_data[0],	// keep the order
@@ -2298,7 +2298,7 @@ lasagna,140,250,3	script	The skittish fourth#wea	4_DR_F_01,{
 			else {
 				mes "[Dandi Chara]";
 				mes "Whoa, this must be ^3131FF" + getitemname(.@item_data[.@i]) + "^000000!!";
-				mes "Don't you want to exchange this with " + .@item_data[.@i+1] + " <ITEM>Doram Token<INFO>25142</INFO></ITEM>?";
+				mes "Don't you want to exchange this with " + .@item_data[.@i+1] + " " + mesitemlink( 25142, false ) + "?";
 				next;
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 					mes "[Dandi Chara]";
@@ -2388,8 +2388,8 @@ lasagna,140,245,3	script	The sensitive-minded ela	4_CAT_SAILOR3,{
 	mes "...I knew this was going to happen again. Worse, this one must require a lot more time to polish!";
 	next;
 	mes "[Goma Chara]";
-	mes "Hey, if you give me " + .@needCoin + "<ITEM>Doram Token<INFO>25142</INFO></ITEM>, I'll fix this for you.";
-	mes "<ITEM>This should produce the <INFO>" + .@next_charm_ID + "</INFO></ITEM> function, I guess. How do you like it?";
+	mes "Hey, if you give me " + .@needCoin + " " + mesitemlink( 25142, false ) + ", I'll fix this for you.";
+	mes "This should produce " + mesitemlink( .@next_charm_ID, false ) + ", I guess. How do you like it?";
 	next;
 	if (select( "Upgrade", "Cancel" ) == 2) {
 		mes "[Goma Chara]";

+ 1 - 1
npc/re/instances/MalangdoCulvert.txt

@@ -99,7 +99,7 @@ mal_in01,172,28,2	script	Albo#mal	561,{
 			case 2: callsub L_GiveQuest,.@i,12262,12272,"Deep Sea Sword Fish";
 			case 3: callsub L_GiveQuest,.@i,12263,12272,"Deep Sea Strouf";
 			case 4: callsub L_GiveQuest,.@i,12264,12272,"Deep Sea Anolian";
-			case 5: callsub L_GiveQuest,.@i,12265,12272,"Deep Sea Obeanue";
+			case 5: callsub L_GiveQuest,.@i,12265,12272,"Deep Sea Obeaune";
 			case 6: callsub L_GiveQuest,.@i,12266,12272,"Deep Sea Kapha";
 		}
 	case 3: // General Culvert Weekly Service

+ 401 - 0
npc/re/instances/WeekendDungeon.txt

@@ -0,0 +1,401 @@
+//===== rAthena Script =======================================
+//= Weekend Memorial Dungeon
+//===== Description: =========================================
+//= [Walkthrough Conversion]
+//= Weekend Memorial Dungeon
+//===== Changelogs: ==========================================
+//= 1.0 Initial release [Everade]
+//============================================================
+
+pay_arche,44,124,5	script	Marry Jae	4_F_JOB_BLACKSMITH,{
+	mes "[Marry Jae]";
+	if (BaseLevel < 60) {
+		mes "Your base level is too low, come back when you hit level 60+.";
+		close;
+	}
+	mes "^ff0000If you attempt to tame any monsters, it will not count as a kill. Please be careful.^000000";
+	next;
+	.@day = gettime(DT_DAYOFWEEK);
+	if (.@day != SATURDAY && .@day != SUNDAY) {
+		mes "[Marry Jae]";
+		mes "Oh, a curious onlooker? I'm Marry Jae, the person in charge of weekends among the days of the week.";
+		next;
+		mes "[Marry Jae]";
+		mes "What is the weekend dungeon? Actually, it's a specially designed space for new adventurers to train.";
+		next;
+		mes "^0000FFLooking around, it's obvious that Marry Jae is talking to you.^000000";
+		next;
+		mes "[Marry Jae]";
+		mes "For those who do not have a party on the weekends, this place is hunting and experience gaining grounds for lonely adventurers!";
+		next;
+		mes "[Marry Jae]";
+		mes "Besides, the experience gain here is very generous.";
+		next;
+		select( "When is the opening time?" );
+		mes "[Marry Jae]";
+		mes "The dungeon will be open during:";
+		mes "^0000FFSaturday 00:00 ~ Sunday 23:59^000000";
+		next;
+		mes "[Marry Jae]";
+		mes "I hope to see you when the weekend arrives~";
+		close;
+	}
+	.@md_name$ = "Weekend Dungeon";
+
+	if (is_party_leader() == false) {
+		mes "[Marry Jae]";
+		mes "You need to form a party of one member or more.";
+		close;
+	}
+	switch( checkquest(12378,PLAYTIME) ) {
+	case -1:
+		break;
+	case 0:
+	case 1:
+		switch( checkquest(12377,PLAYTIME) ) {
+		case -1:
+		case 2:
+			mes "[Marry Jae]";
+			mes "Sorry, but the entry period to the " + .@md_name$ + " has expired.";
+			mes "Take a rest while waiting for the dungeon to be available again.";
+			close;
+		case 0:
+		case 1:
+			break;
+		}
+		break;
+	case 2:
+		erasequest 12377;
+		erasequest 12378;
+		mes "[Marry Jae]";
+		mes "The cooldown has expired.";
+		mes "You may re-enter the Memorial Dungeon.";
+		close;
+	}
+	mes "[Marry Jae]";
+	mes "I think you're just about ready.";
+	mes "Now, would you like to enter it now?";
+	next;
+	switch( select( "Prepare Memorial Dungeon", "Enter Weekend Dungeon", "Cancel" ) ) {
+	case 1:
+		instance_create(.@md_name$);
+		mes "[Marry Jae]";
+		mes "The Memorial Dungeon has been created.";
+		mes "You may now enter.";
+		close;
+	case 2:
+		switch( instance_enter(.@md_name$) ) {
+		case IE_NOMEMBER:
+			end;
+		case IE_NOINSTANCE:
+			mes "There is no Memorial Dungeon registered.";
+			close;
+		case IE_OTHER:
+			mes "An unknown error has occurred.";
+			close;
+		case IE_OK:
+			mes "[Marry Jae]";
+			mes "Off you go!";
+			mapannounce "pay_arche", "" + strcharinfo(0) + " of the party, " + getpartyname( getcharid(1) ) + ", is entering the " + .@md_name$ + ".", bc_map, 0xFF99;
+			if (isbegin_quest(12377) == 0)
+				setquest 12377;
+			if (isbegin_quest(12378) == 0)
+				setquest 12378;
+			end;
+		}
+		end;
+	case 3:
+		mes "[Marry Jae]";
+		mes "You have not prepared?";
+		mes "Can't really help it I guess.";
+		close;
+	}
+}
+
+//Merchant
+pay_arche,44,121,5	script	Gift Supplies Clerk	4_F_02,{
+	.@zeny = 60000;
+	mes "[Gift Supplies Clerk]";
+	mes "I offer packaging services for those who wish to present a precious gift to a cherished one.";
+	next;
+	mes "[Gift Supplies Clerk]";
+	mes "If you have 5 units of <ITEM>" + getitemname(23143) + "<INFO>23143</INFO></ITEM> or <ITEM>" + getitemname(23142) + "<INFO>23142</INFO></ITEM>, I can pack it for just ^FF0000" + F_InsertComma(.@zeny) + "^000000 Zeny!";
+	mes "Do you want to pack it right now?";
+	next;
+	switch( select( "Cancel", "Growth Elixir Packing", "Job Elixir Packing" ) ) {
+	case 1:
+		mes "[Gift Supplies Clerk]";
+		mes "Come back whenever you need packaging services!";
+		close;
+	case 2:
+		.@item = 23142;
+		.@box = 23144;
+		break;
+	case 3:
+		.@item = 23143;
+		.@box = 23145;
+		break;
+	}
+	mes "[Gift Supplies Clerk]";
+	if (countitem(.@item) < 5) {
+		mes "Please come back when you have enough materials.";
+		close;
+	}
+	if (Zeny < .@zeny) {
+		mes "Please come back when you have enough Zeny.";
+		mes F_InsertComma(.@zeny) + "z to be specific.";
+		close;
+	}
+	if (checkweight(23144,1) == 0) {
+		mes "You have too many kinds of objects. Clear your inventory.";
+		close;
+	}
+	if (MaxWeight - Weight < 10000) {
+		mes "Can't continue because you have too many heavy objects. Reduce your total weight by clearing your inventory.";
+		close;
+	}
+	mes "Confirm to spend " + F_InsertComma(.@zeny) + "z to package 5 <ITEM>" + getitemname(.@item) + "<INFO>" + .@item + "</INFO></ITEM> into <ITEM>" + getitemname(.@box) + "<INFO>" + .@box + "</INFO></ITEM>?";
+	next;
+	if (select( "Yes", "No" ) == 2) {
+		mes "[Gift Supplies Clerk]";
+		mes "Come back whenever you need packaging services!";
+		close;
+	}
+	Zeny -= .@zeny;
+	delitem .@item,5;
+	getitem .@box,1;
+	end;
+}
+
+//Instance
+1@md_pay,239,30,6	script	Marry Jae#0_1	4_F_JOB_BLACKSMITH,{
+	if (is_party_leader() == false)
+		end;
+	mes "[Marry Jae]";
+	mes "Before we start setting up the environment here, we'll give you the chance to choose an appropriate difficulty level.";
+	mes "I could make my own choice, but each person handles it differently based on their abilities.";
+	next;
+	switch( select( "Cancel", "Lv60 ~ 79", "Lv80 ~ 99", "Lv100 ~ 119", "Lv120 ~ 139", "Lv140 ~ 159", "Lv160 ~ " ) ) {
+	case 1:
+		end;
+	//Familiar, Skeleton, Zombie
+	case 2:
+		.@min_level = 60;
+		setarray 'mob[0],3643,3637,3649;
+		break;
+	case 3:
+		.@min_level = 80;
+		setarray 'mob[0],3644,3638,3650;
+		break;
+	case 4:
+		.@min_level = 100;
+		setarray 'mob[0],3645,3639,3651;
+		break;
+	case 5:
+		.@min_level = 120;
+		setarray 'mob[0],3646,3640,3652;
+		break;
+	case 6:
+		.@min_level = 140;
+		setarray 'mob[0],3647,3641,3653;
+		break;
+	case 7:
+		.@min_level = 160;
+		setarray 'mob[0],3648,3642,3654;
+		break;
+	}
+	mes "[Marry Jae]";
+	if (BaseLevel < .@min_level) {
+		mes "Your base level is too low to select this, you need to be level " + .@min_level + " + .";
+		close;
+	}
+
+	mes "Good luck finding the treasures!";
+	npctalk "Good luck~";
+	donpcevent instance_npcname("map_md_pay_spawn") + "::OnStart";
+	close;
+}
+
+1@md_pay,1,1,6	script	map_md_pay_spawn	-1,{
+	end;
+OnStart:
+	sleep 2500;
+	disablenpc instance_npcname("Marry Jae#0_1");
+
+	.@event$ = instance_npcname("map_md_pay_spawn") + "::OnFarmiliarDead";
+	killmonster 'map_md_pay$, .@event$;
+	monster 'map_md_pay$,252,54,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,260,40,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,249,93,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,224,38,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,255,125,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,264,132,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,255,165,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,265,181,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,225,165,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,235,115,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,205,145,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,190,180,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,213,250,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,90,263,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,135,200,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,175,155,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,165,145,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,180,117,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,175,115,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,185,66,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,155,55,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,165,45,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,124,57,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,54,45,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,53,48,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,55,65,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,51,66,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,42,84,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,41,152,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,46,171,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,45,185,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,64,172,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,75,181,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,50,202,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,55,205,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,75,245,"Familiar",'mob[0],1,.@event$;
+	monster 'map_md_pay$,90,263,"Familiar",'mob[0],1,.@event$;
+
+	.@event$ = instance_npcname("map_md_pay_spawn") + "::OnSkelDead";
+	killmonster 'map_md_pay$, .@event$;
+	monster 'map_md_pay$,245,55,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,243,63,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,259,98,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,258,204,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,239,122,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,189,190,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,239,231,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,205,225,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,172,207,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,166,234,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,171,236,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,126,180,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,150,150,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,155,135,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,174,75,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,186,67,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,95,65,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,55,85,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,37,92,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,34,90,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,27,99,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,57,76,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,62,93,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,33,97,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,60,45,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,48,60,"Skeleton",'mob[1],1,.@event$;
+	monster 'map_md_pay$,73,51,"Skeleton",'mob[1],1,.@event$;
+
+	.@event$ = instance_npcname("map_md_pay_spawn") + "::OnZombieDead";
+	killmonster 'map_md_pay$, .@event$;
+	monster 'map_md_pay$,245,65,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,218,61,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,255,171,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,215,165,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,237,127,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,215,105,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,198,168,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,243,267,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,165,207,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,157,236,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,113,259,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,105,255,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,117,238,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,164,194,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,159,172,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,175,155,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,146,131,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,152,126,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,181,85,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,165,81,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,157,74,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,175,45,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,49,48,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,65,175,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,78,180,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,33,207,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,49,227,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,55,235,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,60,240,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,70,237,"Zombie",'mob[2],1,.@event$;
+	monster 'map_md_pay$,65,265,"Zombie",'mob[2],1,.@event$;
+
+	'rand_chest = rand(1,4);
+	end;
+
+OnFarmiliarDead:
+	callsub( S_Mob, 'mob[0], "Familiar", "OnFarmiliarDead" );
+OnSkelDead:
+	callsub( S_Mob, 'mob[1], "Skeleton", "OnSkelDead" );
+OnZombieDead:
+	callsub( S_Mob, 'mob[2], "Zombie", "OnZombieDead" );
+
+S_Mob:
+	if (rand(100) == 0) {
+		'rand_chest++;
+		if ('rand_chest > 4)
+			'rand_chest = 1;
+		// Treasure Chest Spawn
+		donpcevent instance_npcname("#WDbox" + 'rand_chest) + "::OnStart";
+	}
+	sleep 10000;
+	monster 'map_md_pay$,0,0, getarg(1), getarg(0),1, instance_npcname("map_md_pay_spawn") + "::" + getarg(2);
+	end;
+
+OnInstanceInit:
+	'count = 0;
+	'rand_chest = 0;
+	'map_md_pay$ = instance_mapname("1@md_pay");
+	disablenpc instance_npcname("#WDbox1");
+	disablenpc instance_npcname("#WDbox2");
+	disablenpc instance_npcname("#WDbox3");
+	disablenpc instance_npcname("#WDbox4");
+	end;
+}
+
+// Treasure Chest Reward
+1@md_pay,99,172,3	script	#WDbox1	4_TREASURE_BOX,{
+	specialeffect EF_COIN;
+	disablenpc();
+	stopnpctimer;
+	sleep 500;
+	.@chestname$ = strnpcinfo(2);
+
+	if (.@chestname$ == "WDbox1") {
+		for ( .@i = 0; .@i < 3; ++.@i )
+			makeitem rand(23142,23143),1, 'map_md_pay$, rand(97,101), rand(170,174);
+	}
+	else if (.@chestname$ == "WDbox2") {
+		for ( .@i = 0; .@i < 3; ++.@i )
+			makeitem rand(23142,23143),1, 'map_md_pay$, rand(233,237), rand(58,62);
+	}
+	else if (.@chestname$ == "WDbox3") {
+		for ( .@i = 0; .@i < 3; ++.@i )
+			makeitem rand(23142,23143),1, 'map_md_pay$, rand(51,55), rand(265,269);
+	}
+	else if (.@chestname$ == "WDbox4") {
+		for ( .@i = 0; .@i < 3; ++.@i )
+			makeitem rand(23142,23143),1, 'map_md_pay$, rand(236,240), rand(250,254);
+	}
+	end;
+
+OnStart:
+	enablenpc();
+	instance_announce -1, "A treasure chest appeared somewhere in the dungeon. It'll disappear after a while, so let's find it.", bc_map, "0xff5500";
+	initnpctimer;
+	end;
+OnTimer180000:	//3min before chest disappears
+	disablenpc();
+	stopnpctimer;
+	end;
+}
+
+1@md_pay,235,60,3	duplicate(#WDbox1)	#WDbox2	4_TREASURE_BOX
+1@md_pay,53,267,3	duplicate(#WDbox1)	#WDbox3	4_TREASURE_BOX
+1@md_pay,238,252,3	duplicate(#WDbox1)	#WDbox4	4_TREASURE_BOX

+ 11 - 0
npc/re/mapflag/nobranch.txt

@@ -241,6 +241,12 @@ que_swat	mapflag	nobranch
 har_in01	mapflag	nobranch
 rockmi2	mapflag	nobranch
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nobranch
+1@md_pay	mapflag	nobranch
+
 //============================================================
 // Lasagna
 //============================================================
@@ -391,3 +397,8 @@ que_thr	mapflag	nobranch
 // Sunken Tower
 //============================================================
 1@ch_u	mapflag	nobranch
+
+//============================================================
+// Cash Mall
+//============================================================
+itemmall	mapflag	nobranch

+ 11 - 0
npc/re/mapflag/nomemo.txt

@@ -256,6 +256,12 @@ har_in01	mapflag	nomemo
 rockmi1	mapflag	nomemo
 rockmi2	mapflag	nomemo
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nomemo
+1@md_pay	mapflag	nomemo
+
 //============================================================
 // Lasagna
 //============================================================
@@ -486,3 +492,8 @@ wolfvill	mapflag	nomemo
 // Illusion of Twins
 //============================================================
 ant_d02_i	mapflag	nomemo
+
+//============================================================
+// Cash Mall
+//============================================================
+itemmall	mapflag	nomemo

+ 5 - 0
npc/re/mapflag/nopenalty.txt

@@ -107,3 +107,8 @@ lasa_in01	mapflag	nopenalty
 conch_in	mapflag	nopenalty
 
 wolfvill	mapflag	nopenalty
+
+//============================================================
+// Cash Mall
+//============================================================
+itemmall	mapflag	nopenalty

+ 5 - 0
npc/re/mapflag/nopvp.txt

@@ -122,3 +122,8 @@ ecl_hub01	mapflag	pvp	off
 que_avan01	mapflag	pvp	off
 dali	mapflag	pvp	off
 wolfvill	mapflag	pvp	off
+
+//============================================================
+// Cash Mall
+//============================================================
+itemmall	mapflag	pvp	off

+ 1 - 235
npc/re/mapflag/nosave.txt

@@ -6,6 +6,7 @@
 //===== Changelogs: ==========================================
 //= 1.0 Renewal split. [Euphy]
 //= 1.1 Added GVG TE Guild Dungeons. [Capuche]
+//= 1.2 Removed instances. [Lemongrass]
 //============================================================
 
 //============================================================
@@ -60,27 +61,10 @@ te_aldecas3	mapflag	nosave	SavePoint
 te_aldecas4	mapflag	nosave	SavePoint
 te_aldecas5	mapflag	nosave	SavePoint
 
-//============================================================
-// Misty Forest Labyrinth
-//============================================================
-1@mist	mapflag	nosave	SavePoint
-
-//============================================================
-// Octopus Cave
-//============================================================
-1@cash	mapflag	nosave	SavePoint
-
-//============================================================
-// Drain
-//============================================================
-1@pump	mapflag	nosave	SavePoint
-2@pump	mapflag	nosave	SavePoint
-
 //============================================================
 // Somatology Laboratory
 //============================================================
 que_lhz	mapflag	nosave	SavePoint
-1@lhz	mapflag	nosave	SavePoint
 
 //============================================================
 // Port Malaya
@@ -95,240 +79,22 @@ ma_zif07	mapflag	nosave	SavePoint
 ma_zif08	mapflag	nosave	SavePoint
 ma_zif09	mapflag	nosave	SavePoint
 
-//============================================================
-// Bangungot Hospital F2
-//============================================================
-1@ma_h	mapflag	nosave	SavePoint
-
-//============================================================
-// Buwaya Cave
-//============================================================
-1@ma_c	mapflag	nosave	SavePoint
-
-//============================================================
-// Bakonawa Hideout
-//============================================================
-1@ma_b	mapflag	nosave	SavePoint
-
 //============================================================
 // Inside Eclage
 //============================================================
 que_avan01	mapflag	nosave	SavePoint
-1@ecl	mapflag	nosave	SavePoint
-
-//============================================================
-// Glastheim Memorial Dungeon
-//============================================================
-1@gl_k	mapflag	nosave	SavePoint
-2@gl_k	mapflag	nosave	SavePoint
-
-//============================================================
-// Wave Mode Memorial Dungeon
-//============================================================
-1@def01	mapflag	nosave	SavePoint
-1@def02	mapflag	nosave	SavePoint
-1@def03	mapflag	nosave	SavePoint
-
-//============================================================
-// Heroes' Trail - Part 1
-//============================================================
-1@face	mapflag	nosave	SavePoint
-1@sara	mapflag	nosave	SavePoint
-
-//============================================================
-// Heroes' Trail - Part 2
-//============================================================
-1@ge_st	mapflag	nosave	SavePoint
-1@gef	mapflag	nosave	SavePoint
-1@gef_in	mapflag	nosave	SavePoint
-1@spa	mapflag	nosave	SavePoint
-1@tnm1	mapflag	nosave	SavePoint
-1@tnm2	mapflag	nosave	SavePoint
-1@tnm3	mapflag	nosave	SavePoint
-
-//============================================================
-// Horror Toy Factory Memorial Dungeon
-//============================================================
-1@xm_d	mapflag	nosave	SavePoint
-
-//============================================================
-// Heroes' Trail - Part 3
-//============================================================
-1@glast	mapflag	nosave	SavePoint
-1@air1	mapflag	nosave	SavePoint
-1@air2	mapflag	nosave	SavePoint
-
-//============================================================
-// Decisive Battle - Part 1
-//============================================================
-1@dth1	mapflag	nosave	SavePoint
-1@dth2	mapflag	nosave	SavePoint
-1@dth3	mapflag	nosave	SavePoint
-1@rev	mapflag	nosave	SavePoint
-
-//============================================================
-// Decisive Battle - Part 2
-//============================================================
-1@eom	mapflag	nosave	SavePoint
-1@jtb	mapflag	nosave	SavePoint
 
 //============================================================
 // Episode 15 - Phantasmagorica
 //============================================================
-1@lab	mapflag	nosave	SavePoint
-1@uns	mapflag	nosave	SavePoint
 un_myst	mapflag	nosave	SavePoint
-1@mcd	mapflag	nosave	SavePoint
-
-//============================================================
-// Infinite Space
-//============================================================
-1@infi	mapflag	nosave
 
 //============================================================
 // Episode 16.1 - Banquet of Heroes
 //============================================================
 que_swat	mapflag	nosave	SavePoint
-1@mir	mapflag	nosave	SavePoint
-2@mir	mapflag	nosave	SavePoint
-1@sthb	mapflag	nosave	SavePoint
-1@sthc	mapflag	nosave	SavePoint
-1@sthd	mapflag	nosave	SavePoint
-1@slw	mapflag	nosave	SavePoint
-1@swat	mapflag	nosave	SavePoint
 
 //============================================================
 // Rockridge
 //============================================================
 rockmi2	mapflag	nosave	SavePoint
-
-//============================================================
-// Chicken Mode - Nightmare Glastheim
-//============================================================
-1@gl_k2	mapflag	nosave	SavePoint
-2@gl_k2	mapflag	nosave	SavePoint
-
-//============================================================
-// Chicken Mode - Horror Toy Factory
-//============================================================
-1@xm_d2	mapflag	nosave	SavePoint
-
-//============================================================
-// Suspicious Shipwreck
-//============================================================
-1@tre	mapflag	nosave	SavePoint
-
-//============================================================
-// Poring Village
-//============================================================
-1@begi	mapflag	nosave	SavePoint
-
-//============================================================
-// Volcanic Island Korodo
-//============================================================
-1@crd	mapflag	nosave	SavePoint
-
-//============================================================
-// Noodles Festival July
-//============================================================
-1@drdo	mapflag	nosave	SavePoint
-
-//============================================================
-// Soul Reaper Job Change
-//============================================================
-1@soul	mapflag	nosave	SavePoint
-
-//============================================================
-// Episode 17.1
-//============================================================
-1@cor	mapflag	nosave	SavePoint
-1@os_a	mapflag	nosave	SavePoint
-1@os_b	mapflag	nosave	SavePoint
-1@rgsr	mapflag	nosave	SavePoint
-
-//============================================================
-// Episode 17.2
-//============================================================
-1@bamn	mapflag	nosave	SavePoint
-1@bamq	mapflag	nosave	SavePoint
-1@ghg	mapflag	nosave	SavePoint
-1@herbs	mapflag	nosave	SavePoint
-1@lost	mapflag	nosave	SavePoint
-1@odin	mapflag	nosave	SavePoint
-
-//============================================================
-// 4th Jobs Change
-//============================================================
-1@4win	mapflag	nosave	SavePoint
-1@4mag	mapflag	nosave	SavePoint
-1@4mst	mapflag	nosave	SavePoint
-1@4sac	mapflag	nosave	SavePoint
-1@4tro	mapflag	nosave	SavePoint
-1@4inq	mapflag	nosave	SavePoint
-1@4cdn	mapflag	nosave	SavePoint
-1@4igd	mapflag	nosave	SavePoint
-1@4drk	mapflag	nosave	SavePoint
-
-//============================================================
-// Geffen Night Arena
-//============================================================
-1@ge_sn	mapflag	nosave	SavePoint
-
-//============================================================
-// Traces of Heroes
-//============================================================
-1@mjo1	mapflag	nosave	SavePoint
-1@mjo2	mapflag	nosave	SavePoint
-1@spa2	mapflag	nosave	SavePoint
-
-//============================================================
-// Thanatos Tower Memorial Dungeon
-//============================================================
-1@thts	mapflag	nosave	SavePoint
-2@thts	mapflag	nosave	SavePoint
-3@thts	mapflag	nosave	SavePoint
-4@thts	mapflag	nosave	SavePoint
-5@thts	mapflag	nosave	SavePoint
-6@thts	mapflag	nosave	SavePoint
-7@thts	mapflag	nosave	SavePoint
-8@thts	mapflag	nosave	SavePoint
-
-//============================================================
-// Glastheim Challenge Mode
-//============================================================
-1@gl_he	mapflag	nosave	SavePoint
-1@gl_he2	mapflag	nosave	SavePoint
-
-//============================================================
-// EDDA
-//============================================================
-1@gl_prq	mapflag	nosave	SavePoint
-1@gol1	mapflag	nosave	SavePoint
-1@gol2	mapflag	nosave	SavePoint
-
-//============================================================
-// 2018 Halloween
-//============================================================
-1@halo	mapflag	nosave	SavePoint
-
-//============================================================
-// Constellation Tower
-//============================================================
-1@ch_t	mapflag	nosave	SavePoint
-2@ch_t	mapflag	nosave	SavePoint
-3@ch_t	mapflag	nosave	SavePoint
-
-//============================================================
-// Episode 18 - Direction of Prayer
-//============================================================
-1@adv	mapflag	nosave	SavePoint
-1@advs	mapflag	nosave	SavePoint
-1@nyr	mapflag	nosave	SavePoint
-1@oz	mapflag	nosave	SavePoint
-1@tcamp	mapflag	nosave	SavePoint
-2@nyr	mapflag	nosave	SavePoint
-
-//============================================================
-// Sunken Tower
-//============================================================
-1@ch_u	mapflag	nosave	SavePoint

+ 12 - 0
npc/re/mapflag/noteleport.txt

@@ -246,6 +246,12 @@ rebel_in	mapflag	monster_noteleport
 har_in01	mapflag	noteleport
 rockmi2	mapflag	noteleport
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	noteleport
+1@md_pay	mapflag	noteleport
+
 //============================================================
 // Lasagna
 //============================================================
@@ -446,3 +452,9 @@ que_thr	mapflag	noteleport
 1@ch_u	mapflag	noteleport
 1@ch_u	mapflag	monster_noteleport
 1@ch_u	mapflag	monster_noteleport
+
+//============================================================
+// Cash Mall
+//============================================================
+itemmall	mapflag	noteleport
+itemmall	mapflag	monster_noteleport

+ 6 - 0
npc/re/mapflag/nowarpto.txt

@@ -189,6 +189,12 @@ har_in01	mapflag	nowarpto
 rockmi1	mapflag	nowarpto
 rockmi2	mapflag	nowarpto
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nowarpto
+1@md_pay	mapflag	nowarpto
+
 //============================================================
 // Lasagna
 //============================================================

+ 6 - 0
npc/re/mapflag/partylock.txt

@@ -122,6 +122,12 @@
 1@slw	mapflag	partylock
 1@swat	mapflag	partylock
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	partylock
+1@md_pay	mapflag	partylock
+
 //============================================================
 // Chicken Mode Nightmare Glastheim
 //============================================================

+ 6 - 0
npc/re/mapflag/restricted.txt

@@ -107,6 +107,12 @@ lhz_d_n2	mapflag	restricted	6
 1@slw	mapflag	restricted	6
 1@swat	mapflag	restricted	6
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	restricted	6
+1@md_pay	mapflag	restricted	6
+
 //============================================================
 // Chicken Mode Nightmare Glastheim
 //============================================================

+ 1 - 1
npc/re/merchants/Emperium_Seller.txt

@@ -28,7 +28,7 @@ prt_in,212,169,3	script	Guild Clerk	4_M_04,{
 	next;
 	mes "[Guild Clerk]";
 	mes "As part of that,";
-	mes "we are selling a limited quantity of 100 <ITEM>Emperium<INFO>714</INFO></ITEM> every day";
+	mes "we are selling a limited quantity of 100 " + mesitemlink( 714, false ) + " every day";
 	mes "from ^0000ff18:00 to 23:59^000000 from ^0000ffMonday to Saturday^000000.";
 	next;
 	mes "[Guild Clerk]";

+ 1 - 1
npc/re/merchants/Slot_Move_Card_Sales.txt

@@ -15,7 +15,7 @@
 prt_in,211,173,3	script	Slot Move Card Sales#slo	4_F_01,{
 	mes "[Salesman]";
 	mes "Howdy.";
-	mes "I'm selling <ITEM>[Character Position Change Coupon]<INFO>12786</INFO></ITEM>.";
+	mes "I'm selling " + mesitemlink( 12786 ) + ".";
 	mes "You can ^4d4dffchange the slot position of a character using the card^000000.";
 	next;
 	mes "[Salesman]";

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

@@ -54,3 +54,5 @@ Footer:
   - Path: npc/re/merchants/barters/quests_17_1.yml
   - Path: npc/re/merchants/barters/refine.yml
   - Path: npc/re/merchants/barters/enchantgrade.yml
+  - Path: npc/re/merchants/barters/cashmall.yml
+  - Path: npc/re/merchants/barters/rgsr_in.yml

+ 1039 - 0
npc/re/merchants/barters/cashmall.yml

@@ -0,0 +1,1039 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2022 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Barter Database
+###########################################################################
+#
+# Barter Settings
+#
+###########################################################################
+#  - Name               NPC name.
+#    Map                Map name. (Default: not on a map)
+#    X                  Map x coordinate. (Default: 0)
+#    Y                  Map y coordinate. (Default: 0)
+#    Direction          Direction the NPC is looking. (Default: North)
+#    Sprite             Sprite name of the NPC. (Default: FakeNpc)
+#    Items:             List of sold items.
+#      - Index          Index of the item inside the shop. (0-...)
+#                       Maximum index depends on client.
+#        Item           Aegis name of the item.
+#        Stock          Amount of item in stock. 0 means unlimited. (Default: 0)
+#        Zeny           Cost of them item in Zeny. (Default: 0)
+#        RequiredItems: List of required items (Optional)
+#          - Index      Index of the required item. (0-4)
+#            Item       Aegis name of required item.
+#            Amount     Amount of required item. (Default: 1)
+#            Refine     Refine level of required item. (Default: 0)
+###########################################################################
+
+Header:
+  Type: BARTER_DB
+  Version: 1
+
+Body:
+###########################################################################
+##= Cachua Coupon Exchanges
+###########################################################################
+  - Name: CachuaCoupon01
+    Items:
+      - Index: 0
+        Item: S_Ignition_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 1
+        Item: S_W_Breath_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 2
+        Item: S_F_Breath_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 3
+        Item: S_Sonic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 4
+        Item: S_Strain_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 5
+        Item: S_Jack_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 6
+        Item: S_Chain_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 7
+        Item: S_Crimson_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 8
+        Item: S_Vulcan_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 9
+        Item: S_Boomerang_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 10
+        Item: S_Arms_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 11
+        Item: S_Tornado_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 12
+        Item: S_Duplelight_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 13
+        Item: S_Magnus_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 14
+        Item: S_Adoramus_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 15
+        Item: S_Judex_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 16
+        Item: S_Rolling_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 17
+        Item: S_Ripper_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 18
+        Item: S_Slash_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 19
+        Item: S_Katar_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 20
+        Item: S_Shooting_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 21
+        Item: S_Arrow_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 22
+        Item: S_Aimed_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 23
+        Item: S_Cluster_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+  - Name: CachuaCoupon02
+    Items:
+      - Index: 0
+        Item: S_Banish_Cannon_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 1
+        Item: S_Brand_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 2
+        Item: S_Genesis_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 3
+        Item: S_Chain_Press_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 4
+        Item: S_Grave_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 5
+        Item: S_Dust_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 6
+        Item: S_Varetyr_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 7
+        Item: S_Psychic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 8
+        Item: S_Spore_Bomb_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 9
+        Item: S_Cannon_Cart_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 10
+        Item: S_Crazy_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 11
+        Item: S_Cart_Tornado_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 12
+        Item: S_Knucklearrow_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 13
+        Item: S_Skynetblow_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 14
+        Item: S_Rampage_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 15
+        Item: S_TigerCannon_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 16
+        Item: S_Menace_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 17
+        Item: S_Shadowspell_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 18
+        Item: S_Triangle_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 19
+        Item: S_Paint_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 20
+        Item: S_Rainstorm_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 21
+        Item: S_Metalic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 22
+        Item: S_Arrowvulcan_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 23
+        Item: S_Reverberation_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+  - Name: CachuaCoupon03
+    Items:
+      - Index: 0
+        Item: S_Moonlight_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 1
+        Item: S_Sunshine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 2
+        Item: S_Stardust_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 3
+        Item: S_S_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 4
+        Item: S_Evilcurse_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 5
+        Item: S_Syuriken_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 6
+        Item: S_Kunai_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 7
+        Item: S_Huusouka_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 8
+        Item: S_Kamaenraku_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 9
+        Item: S_God_Hammer_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 10
+        Item: S_Shatter_Buster_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 11
+        Item: S_Tail_Dragon_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 12
+        Item: S_Trip_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 13
+        Item: S_Flare_Dance_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 14
+        Item: S_Super_Magic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 15
+        Item: S_Super_Power_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 16
+        Item: S_Silvervine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 17
+        Item: S_Catnip_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 18
+        Item: S_SavageRabbit_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+      - Index: 19
+        Item: S_Pickyrush_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 15
+  - Name: CachuaCoupon04
+    Items:
+      - Index: 0
+        Item: S_RuneKnight_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 1
+        Item: S_RoyalGuard_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 2
+        Item: S_Warlock_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 3
+        Item: S_Sorcerer_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 4
+        Item: S_Mechanic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 5
+        Item: S_Generic_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 6
+        Item: S_ArchBishop_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 7
+        Item: S_Sura_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 8
+        Item: S_GuillotineCross_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 9
+        Item: S_ShadowChaser_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 10
+        Item: S_Ranger_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 11
+        Item: S_Wanderer_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 12
+        Item: S_Minstrel_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 13
+        Item: S_Star_Emperor_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 14
+        Item: S_Soul_Reaper_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 15
+        Item: S_Kagerou_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 16
+        Item: S_Oboro_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 17
+        Item: S_Rebellion_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 18
+        Item: S_SuperNovice_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 19
+        Item: S_Doram_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 40
+  - Name: CachuaCoupon05
+    Items:
+      - Index: 0
+        Item: S_Mammoth_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 40
+      - Index: 1
+        Item: S_Gemstone_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 40
+      - Index: 2
+        Item: S_Pene1_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 35
+      - Index: 3
+        Item: S_Pene2_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 35
+      - Index: 4
+        Item: S_Temp1_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 35
+      - Index: 5
+        Item: S_Temp2_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 35
+  - Name: CachuaCoupon06
+    Items:
+      - Index: 0
+        Item: Thanos_Refine_Hammer
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 1
+        Item: Thanos_Upgrade_Box
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 30
+      - Index: 2
+        Item: Hero_Weapon_Up_Box_1
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 3
+        Item: Hero_Weapon_Up_Box_2
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 4
+        Item: Hero_Weapon_Up_Box_3
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 5
+        Item: Hero_Weapon_Up_Box_4
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 6
+        Item: Hero_Weapon_Up_Box_5
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 7
+        Item: Hero_Weapon_Up_Box_6
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 8
+        Item: Adulter_Weapon_Up_Box
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 100
+      - Index: 9
+        Item: Hero_Weapon_Hammer_1
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 10
+        Item: Hero_Weapon_Hammer_2
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 11
+        Item: Hero_Weapon_Hammer_3
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 12
+        Item: Hero_Weapon_Hammer_4
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 13
+        Item: Hero_Weapon_Hammer_5
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 14
+        Item: Hero_Weapon_Hammer_6
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      # - Index: 15
+        # Item: OS_Helm_Hammer
+        # RequiredItems:
+          # - Index: 0
+            # Item: Cachua_Coupon
+            # Amount: 50
+      # - Index: 16
+        # Item: OS_Weapon_Hammer
+        # RequiredItems:
+          # - Index: 0
+            # Item: Cachua_Coupon
+            # Amount: 50
+      - Index: 17
+        Item: Poenitentia_Hammer
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 18
+        Item: Barmund_Hammer
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 19
+        Item: Special_Hat_Hammer
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 20
+        Item: Vivatus_Weapon_Hammer
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 21
+        Item: Bio_Helm_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 22
+        Item: Circlet_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 23
+        Item: Bio_Weapon_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 24
+        Item: Auto_Armor_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 25
+        Item: Old_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 26
+        Item: Geffen_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 27
+        Item: Temporal_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 28
+        Item: OS_Weapon_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 29
+        Item: Racecap_Refine_Cube
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 30
+        Item: Blacksmith_Bless_Box_3
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 31
+        Item: Shadow_Hammer_Box_3
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 20
+      - Index: 32
+        Item: Sillit_Pong_Box
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 200
+      - Index: 33
+        Item: Shadow_Exchange_Ticket
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      # - Index: 34
+        # Item: aegis_101399
+        # RequiredItems:
+          # - Index: 0
+            # Item: Cachua_Coupon
+            # Amount: 100
+  - Name: CachuaCoupon07
+    Items:
+      - Index: 0
+        Item: SLD_Card_Recipe
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 50
+      - Index: 1
+        Item: FullPeneShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 2
+        Item: FullTempShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 3
+        Item: Mammoth_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 4
+        Item: True_GemShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 5
+        Item: MajorAutoSpell_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 6
+        Item: Hasty_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 7
+        Item: PhysicalShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 8
+        Item: PerfectSize_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 9
+        Item: EXPShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 10
+        Item: MagicalShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 11
+        Item: InfinityShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 12
+        Item: R_BearersShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 13
+        Item: M_BlitzShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 14
+        Item: AbsorbShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 15
+        Item: ReloadShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+      - Index: 16
+        Item: SpellCasterShadow_Mix
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 75
+  - Name: CachuaCoupon08
+    Items:
+      - Index: 0
+        Item: MajorAutoSpell_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 1
+        Item: Hasty_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 2
+        Item: PhysicalShadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 3
+        Item: PerfectSize_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 4
+        Item: True_GemShadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 5
+        Item: EXPShadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 6
+        Item: MagicalShadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 7
+        Item: InfinityShadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 8
+        Item: R_Bearers_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 9
+        Item: M_Blitz_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 10
+        Item: Absorb_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 11
+        Item: Mammoth_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 12
+        Item: FullPenest_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 13
+        Item: Reload_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 14
+        Item: SpellCaster_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10
+      - Index: 15
+        Item: Ex_Status_Shadow_Up
+        RequiredItems:
+          - Index: 0
+            Item: Cachua_Coupon
+            Amount: 10

+ 219 - 0
npc/re/merchants/barters/rgsr_in.yml

@@ -0,0 +1,219 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2022 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###########################################################################
+# Barter Database
+###########################################################################
+#
+# Barter Settings
+#
+###########################################################################
+#  - Name               NPC name.
+#    Map                Map name. (Default: not on a map)
+#    X                  Map x coordinate. (Default: 0)
+#    Y                  Map y coordinate. (Default: 0)
+#    Direction          Direction the NPC is looking. (Default: North)
+#    Sprite             Sprite name of the NPC. (Default: FakeNpc)
+#    Items:             List of sold items.
+#      - Index          Index of the item inside the shop. (0-...)
+#                       Maximum index depends on client.
+#        Item           Aegis name of the item.
+#        Stock          Amount of item in stock. 0 means unlimited. (Default: 0)
+#        Zeny           Cost of them item in Zeny. (Default: 0)
+#        RequiredItems: List of required items (Optional)
+#          - Index      Index of the required item. (0-4)
+#            Item       Aegis name of required item.
+#            Amount     Amount of required item. (Default: 1)
+#            Refine     Refine level of required item. (Default: 0)
+###########################################################################
+
+Header:
+  Type: BARTER_DB
+  Version: 1
+
+Body:
+  - Name: barter_rgsr_in_1
+    Items:
+      - Index: 0
+        Item: Weapon_Stone_1
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Ore_1
+            Amount: 5
+      - Index: 1
+        Item: Armor_Stone_1
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Ore_1
+            Amount: 5
+      - Index: 2
+        Item: Acc_Stone_1
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Ore_1
+            Amount: 5
+      - Index: 3
+        Item: Weapon_Stone_2
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Ore_2
+            Amount: 5
+      - Index: 4
+        Item: Armor_Stone_2
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Ore_2
+            Amount: 5
+      - Index: 5
+        Item: Acc_Stone_2
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Ore_2
+            Amount: 5
+      - Index: 6
+        Item: Weapon_Stone_3
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Ore_3
+            Amount: 5
+      - Index: 7
+        Item: Armor_Stone_3
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Ore_3
+            Amount: 5
+      - Index: 8
+        Item: Acc_Stone_3
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Ore_3
+            Amount: 5
+      - Index: 9
+        Item: Weapon_Stone_4
+        Zeny: 100000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Ore_4
+            Amount: 5
+      - Index: 10
+        Item: Armor_Stone_4
+        Zeny: 100000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Ore_4
+            Amount: 5
+      - Index: 11
+        Item: Acc_Stone_4
+        Zeny: 100000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Ore_4
+            Amount: 5
+  - Name: barter_rgsr_in_2
+    Items:
+      - Index: 0
+        Item: Weapon_Stone_2
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Stone_1
+            Amount: 3
+      - Index: 1
+        Item: Armor_Stone_2
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Stone_1
+            Amount: 3
+      - Index: 2
+        Item: Acc_Stone_2
+        Zeny: 10000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Stone_1
+            Amount: 3
+      - Index: 3
+        Item: Weapon_Stone_3
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Stone_2
+            Amount: 3
+      - Index: 4
+        Item: Armor_Stone_3
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Stone_2
+            Amount: 3
+      - Index: 5
+        Item: Acc_Stone_3
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Stone_2
+            Amount: 3
+      - Index: 6
+        Item: Weapon_Stone_4
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Weapon_Stone_3
+            Amount: 3
+      - Index: 7
+        Item: Armor_Stone_4
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Armor_Stone_3
+            Amount: 3
+      - Index: 8
+        Item: Acc_Stone_4
+        Zeny: 50000
+        RequiredItems:
+          - Index: 0
+            Item: Acc_Stone_3
+            Amount: 3
+  - Name: barter_rgsr_in_3
+    Items:
+      - Index: 0
+        Item: Weapon_Stone_1
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Shadowdecon
+      - Index: 1
+        Item: Armor_Stone_1
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Shadowdecon
+      - Index: 2
+        Item: Acc_Stone_1
+        Zeny: 20000
+        RequiredItems:
+          - Index: 0
+            Item: Shadowdecon

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است