Browse Source

Merge branch 'master' into hotfix/issue7111

Aleos 2 years ago
parent
commit
c8e44d2b68
100 changed files with 13795 additions and 2794 deletions
  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:
 concurrency:
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
   group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
-  cancel-in-progress: true
+  cancel-in-progress: ${{ github.ref != 'refs/heads/master' }}
 
 
 on:
 on:
+  workflow_dispatch:
   push:
   push:
     branches:
     branches:
       - master
       - master

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

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

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

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

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

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

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

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

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

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

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

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

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

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

+ 1 - 1
CMakeLists.txt

@@ -35,7 +35,7 @@ project( rAthena )
 if( CYGWIN )
 if( CYGWIN )
 	unset( WIN32 )
 	unset( WIN32 )
 endif()
 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_STANDARD_REQUIRED ON) #...is required...
 #set(CMAKE_CXX_EXTENSIONS OFF) #...without compiler extensions like gnu++11
 #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" />
 <img src="doc/logo.png" align="right" height="90" />
 
 
 # rAthena
 # 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.
 > 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/)
 [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
 Operating System | Compiler
 ------|------
 ------|------
 Linux  | [gcc-5 or newer](https://www.gnu.org/software/gcc/gcc-5/) / [Make](https://www.gnu.org/software/make/)
 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
 ### Required Applications
 Application | Name
 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.
 // Amount of time in milliseconds before the macro detection will fail and the user will be banned.
 // Official: 60000
 // Official: 60000
 macro_detection_timeout: 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
 // Requires: 2013-07-24aRagexe or later
 feature.banking: on
 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)
 // Autotrade persistency (Note 1)
 // Should vendors that used @autotrade be restored after a restart?
 // Should vendors that used @autotrade be restored after a restart?
 feature.autotrade: on
 feature.autotrade: on
@@ -67,6 +72,10 @@ feature.bgqueue: on
 // Requires: 2014-10-22bRagexe or later
 // Requires: 2014-10-22bRagexe or later
 feature.roulette: on
 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)
 // Achievement (Note 1)
 // Requires: 2015-05-13aRagexe or later
 // Requires: 2015-05-13aRagexe or later
 feature.achievement: on
 feature.achievement: on
@@ -137,8 +146,32 @@ feature.dynamicnpc_rangey: 2
 feature.dynamicnpc_direction: no
 feature.dynamicnpc_direction: no
 
 
 // Itemlink System on informational related commands (Note 1)
 // 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
 // dispbottom, and broadcast commands. The result is clickable-item name just
 // like from SHIFT+Click from player's inventory/cart/equipment window.
 // 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
 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
 homunculus_max_level: 99
 
 
 // Max level for Homunculus S
 // Max level for Homunculus S
-homunculus_S_max_level: 175
+homunculus_S_max_level: 250
 
 
 // Growth level for Homunculus S
 // Growth level for Homunculus S
 // This is the level at which homunculus S can use their growth tables
 // 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)
 // Should slaves teleport back to their master if they get too far during chase? (Note 1)
 // Default (Official): no
 // Default (Official): no
 slave_stick_with_master: 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
 // Uncomment to customize the restriction
 //allowed_job_flag: 3
 //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.
 // Folder that contains the database files.
 db_path: db
 db_path: db
 
 

+ 2 - 3
conf/inter_athena.conf

@@ -147,8 +147,6 @@ item_table: item_db
 renewal-item_table: item_db_re
 renewal-item_table: item_db_re
 item2_table: item_db2
 item2_table: item_db2
 renewal-item2_table: item_db2_re
 renewal-item2_table: item_db2_re
-item_cash_table: item_cash_db
-item_cash2_table: item_cash_db2
 mob_table: mob_db
 mob_table: mob_db
 renewal-mob_table: mob_db_re
 renewal-mob_table: mob_db_re
 mob2_table: mob_db2
 mob2_table: mob_db2
@@ -158,6 +156,7 @@ renewal-mob_skill_table: mob_skill_db_re
 mob_skill2_table: mob_skill_db2
 mob_skill2_table: mob_skill_db2
 renewal-mob_skill2_table: mob_skill_db2_re
 renewal-mob_skill2_table: mob_skill_db2_re
 mapreg_table: mapreg
 mapreg_table: mapreg
+partybookings_table: party_bookings
 sales_table: sales
 sales_table: sales
 vending_table: vendings
 vending_table: vendings
 vending_items_table: vending_items
 vending_items_table: vending_items
@@ -166,7 +165,7 @@ roulette_table: db_roulette
 guild_storage_log: guild_storage_log
 guild_storage_log: guild_storage_log
 
 
 // Web Database Tables
 // 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.
 //       the ability to connect to those databases.
 guild_emblems: guild_emblems
 guild_emblems: guild_emblems
 user_configs: user_configs
 user_configs: user_configs

+ 12 - 0
conf/maps_athena.conf

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

+ 6 - 3
conf/msg_conf/map_msg.conf

@@ -927,7 +927,10 @@
 // Enchant UI
 // Enchant UI
 829: Enchanting is not possible for your item's enchant grade.
 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
 // More atcommands message
@@ -1444,7 +1447,7 @@
 
 
 // @iteminfo
 // @iteminfo
 1276: Please enter an item name/ID (usage: @ii/@iteminfo <item name/ID>).
 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
 1278: None
 1279: With script
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1454,7 +1457,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Please enter item name/ID (usage: @whodrops <item name/ID>).
 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.
 1286:  - Item is not dropped by mobs.
 1287:  - Common mobs with highest drop chance (only max %d are listed):
 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
 // @iteminfo
 1276: 請輸入 物品名稱/ID (用法: @ii/@iteminfo <物品名稱/ID>).
 1276: 請輸入 物品名稱/ID (用法: @ii/@iteminfo <物品名稱/ID>).
-1277: 物品: '%s'/'%s'[%d] (%u) 類型: %s | 額外效果: %s
+1277: 物品: '%s'/'%s' (%u) 類型: %s | 額外效果: %s
 1278: None
 1278: None
 1279: With script
 1279: With script
 1280: NPC 買價:%dz, 賣價:%dz | 重量: %.1f 
 1280: NPC 買價:%dz, 賣價:%dz | 重量: %.1f 
@@ -1202,7 +1202,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Please enter 物品名稱/ID (用法: @whodrops <物品名稱/ID>).
 1284: Please enter 物品名稱/ID (用法: @whodrops <物品名稱/ID>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item is not dropped by mobs.
 1286:  - Item is not dropped by mobs.
 1287:  - Common mobs with highest drop chance (only max %d are listed):
 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
 // @iteminfo
 1276: Entrez un nom/ID d'objet (usage: @ii/@iteminfo <nom/ID>).
 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
 1278: Aucun
 1279: Avec script
 1279: Avec script
 1280: NPC Acheté:%dz, Vendu:%dz | Poids: %.1f 
 1280: NPC Acheté:%dz, Vendu:%dz | Poids: %.1f 
@@ -1215,7 +1215,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Entrez un nom/ID d'Objet (usage: @whodrops <nom/ID_objet>).
 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.
 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):
 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
 // @iteminfo
 1276: Harap masukkan nama/ID item. (Penggunaan: @ii/@iteminfo <nama/ID item>).
 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
 1278: Tidak ada
 1279: Dengan script.
 1279: Dengan script.
 1280: NPC Harga Beli:%dz, Harga jual:%dz | Berat: %.1f 
 1280: NPC Harga Beli:%dz, Harga jual:%dz | Berat: %.1f 
@@ -1303,7 +1303,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Harap masukkan nama/ID item. (Penggunaan: @whodrops <nama/ID item>).
 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.
 1286:  - Item ini tidak dijatuhkan dari monster.
 1287:  - Monster biasa dengan kemungkinan menjatuhkan barang tertinggi. (Maks. hanya %d yang ditampilkan):
 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
 // @iteminfo
 1276: Digite o nome/ID de um item (uso: @ii/@iteminfo <nome do item/ID>).
 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
 1278: Nenhum
 1279: Com script
 1279: Com script
 1280: NPC Compra:%dz, Venda:%dz | Peso: %.1f 
 1280: NPC Compra:%dz, Venda:%dz | Peso: %.1f 
@@ -1385,7 +1385,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Digite o nome/ID de um item (uso: @whodrops <nome do item/ID>).
 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.
 1286:  - Item não derrubado por monstros.
 1287:  - Monstros comuns com maiores chances de drop (somente máx %d são listados):
 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
 // @iteminfo
 1276: Введите ID/название предмета (Использование: @ii/@iteminfo <ID/название предмета>).
 1276: Введите ID/название предмета (Использование: @ii/@iteminfo <ID/название предмета>).
-1277: Предмет: '%s'/'%s'[%d] (%u) Тип: %s | Доп. эффект: %s
+1277: Предмет: '%s'/'%s' (%u) Тип: %s | Доп. эффект: %s
 1278: Пусто
 1278: Пусто
 1279: Скрипт
 1279: Скрипт
 1280: НИП покупка:%d зени, продажа:%d зени | Вес: %.1f 
 1280: НИП покупка:%d зени, продажа:%d зени | Вес: %.1f 
@@ -1215,7 +1215,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Введите ID/название предмета (Использование: @whodrops <ID/название предмета>).
 1284: Введите ID/название предмета (Использование: @whodrops <ID/название предмета>).
-1285: Предмет: '%s'[%d] (ID:%d)
+1285: Предмет: '%s' (ID:%d)
 1286:  - Предмет не падает с монстров.
 1286:  - Предмет не падает с монстров.
 1287:  - Обычные монстры с высоким шансом выпадения (перечислено только %d):
 1287:  - Обычные монстры с высоким шансом выпадения (перечислено только %d):
 
 

+ 2 - 2
conf/msg_conf/map_msg_spn.conf

@@ -1344,7 +1344,7 @@
 
 
 // @iteminfo
 // @iteminfo
 1276: Introduce el nombre/ID de un objeto (instrucciones: @ii/@iteminfo <nombre/ID del objeto>).
 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
 1278: Ninguno
 1279: Contiene código
 1279: Contiene código
 1280: Compra en NPC:%dz, Venta:%dz | Peso: %.1f
 1280: Compra en NPC:%dz, Venta:%dz | Peso: %.1f
@@ -1354,7 +1354,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: Introduce el nombre/ID de un objeto (instrucciones: @whodrops <nombre/ID del objeto>). 
 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.
 1286: - Ningún monstruo tiene ese objeto.
 1287: - Estos monstruos tienen ese objeto (sólo se muestran un máximo de %d):
 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
 // @iteminfo
 1276: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @ii/@iteminfo <ª×èÍ/ID item>).
 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
 1278: None
 1279: With script
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1208,7 +1208,7 @@
 
 
 // @whodrops
 // @whodrops
 1284: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @whodrops <ª×èÍ/ID item>).
 1284: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @whodrops <ª×èÍ/ID item>).
-1285: Item: '%s'[%d] (ID:%d)
+1285: Item: '%s' (ID:%d)
 1286:  - Item ¹ÕéäÁèÁÕµ¡¨Ò¡ monster.
 1286:  - Item ¹ÕéäÁèÁÕµ¡¨Ò¡ monster.
 1287:  - Monster ·ÑèÇä»·ÕèÁÕâÍ¡Òʵ¡ÊÙ§ÊØ´ (áÊ´§à¾Õ§ %d ÃÒ¡ÒÃ):
 1287:  - Monster ·ÑèÇä»·ÕèÁÕâÍ¡Òʵ¡ÊÙ§ÊØ´ (áÊ´§à¾Õ§ %d ÃÒ¡ÒÃ):
 
 

+ 4 - 4
configure

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

+ 5 - 5
configure.ac

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

+ 8 - 164
db/castle_db.yml

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

+ 22 - 22
db/re/attr_fix.yml

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

+ 334 - 1
db/re/castle_db.yml

@@ -26,51 +26,384 @@
 #   Map               Map name to be considered as the castle map.
 #   Map               Map name to be considered as the castle map.
 #   Name              Name of the castle (used by scripts and guardian name tags).
 #   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.
 #   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:
 Header:
   Type: CASTLE_DB
   Type: CASTLE_DB
-  Version: 1
+  Version: 2
 
 
 Body:
 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
 # WOE TE castle
   - Id: 34
   - Id: 34
     Map: te_aldecas1
     Map: te_aldecas1
     Name: Kafragarten 1
     Name: Kafragarten 1
     Npc: Manager_TE#Glaris
     Npc: Manager_TE#Glaris
+    Type: Third_Edition
   - Id: 35
   - Id: 35
     Map: te_aldecas2
     Map: te_aldecas2
     Name: Kafragarten 2
     Name: Kafragarten 2
     Npc: Manager_TE#Defolty
     Npc: Manager_TE#Defolty
+    Type: Third_Edition
   - Id: 36
   - Id: 36
     Map: te_aldecas3
     Map: te_aldecas3
     Name: Kafragarten 3
     Name: Kafragarten 3
     Npc: Manager_TE#Sorin
     Npc: Manager_TE#Sorin
+    Type: Third_Edition
   - Id: 37
   - Id: 37
     Map: te_aldecas4
     Map: te_aldecas4
     Name: Kafragarten 4
     Name: Kafragarten 4
     Npc: Manager_TE#Bennit
     Npc: Manager_TE#Bennit
+    Type: Third_Edition
   - Id: 38
   - Id: 38
     Map: te_aldecas5
     Map: te_aldecas5
     Name: Kafragarten 5
     Name: Kafragarten 5
     Npc: Manager_TE#W
     Npc: Manager_TE#W
+    Type: Third_Edition
   - Id: 39
   - Id: 39
     Map: te_prtcas01
     Map: te_prtcas01
     Name: Gloria 1
     Name: Gloria 1
     Npc: Manager_TE#Gaebolg
     Npc: Manager_TE#Gaebolg
+    Type: Third_Edition
   - Id: 40
   - Id: 40
     Map: te_prtcas02
     Map: te_prtcas02
     Name: Gloria 2
     Name: Gloria 2
     Npc: Manager_TE#Richard
     Npc: Manager_TE#Richard
+    Type: Third_Edition
   - Id: 41
   - Id: 41
     Map: te_prtcas03
     Map: te_prtcas03
     Name: Gloria 3
     Name: Gloria 3
     Npc: Manager_TE#Wigner
     Npc: Manager_TE#Wigner
+    Type: Third_Edition
   - Id: 42
   - Id: 42
     Map: te_prtcas04
     Map: te_prtcas04
     Name: Gloria 4
     Name: Gloria 4
     Npc: Manager_TE#Heine
     Npc: Manager_TE#Heine
+    Type: Third_Edition
   - Id: 43
   - Id: 43
     Map: te_prtcas05
     Map: te_prtcas05
     Name: Gloria 5
     Name: Gloria 5
     Npc: Manager_TE#Nerious
     Npc: Manager_TE#Nerious
+    Type: Third_Edition

+ 151 - 0
db/re/exp_homun.yml

@@ -379,3 +379,154 @@ Body:
     Exp: 87140000
     Exp: 87140000
   - Level: 174
   - Level: 174
     Exp: 94875000
     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
       Map: 1@begi
       X: 100
       X: 100
       Y: 22
       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).

File diff suppressed because it is too large
+ 249 - 137
db/re/item_combos.yml


File diff suppressed because it is too large
+ 762 - 16
db/re/item_db_equip.yml


File diff suppressed because it is too large
+ 336 - 141
db/re/item_db_etc.yml


File diff suppressed because it is too large
+ 2005 - 203
db/re/item_db_usable.yml


File diff suppressed because it is too large
+ 86 - 174
db/re/item_enchant.yml


+ 1245 - 72
db/re/item_group_db.yml

@@ -24036,9 +24036,9 @@ Body:
             Rate: 160
             Rate: 160
           - Item: ElectricEffect_Middle
           - Item: ElectricEffect_Middle
             Rate: 160
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: ReloadStone_Top
           - Item: ReloadStone_Top
             Rate: 240
             Rate: 240
@@ -24058,17 +24058,17 @@ Body:
             Rate: 360
             Rate: 360
           - Item: Critical_Stone_Bottom
           - Item: Critical_Stone_Bottom
             Rate: 360
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
   - Group: THIRD_JOB_STONE_GARMENT_BOX
   - Group: THIRD_JOB_STONE_GARMENT_BOX
     SubGroups:
     SubGroups:
@@ -25723,7 +25723,7 @@ Body:
             Rate: 140
             Rate: 140
           - Item: C_Pig_Nose
           - Item: C_Pig_Nose
             Rate: 140
             Rate: 140
-          - Item: C_Cat_Ears_Hat
+          - Item: C_Cat_Ear_Hat
             Rate: 140
             Rate: 140
           - Item: C_Valkyrie_Circlet
           - Item: C_Valkyrie_Circlet
             Rate: 140
             Rate: 140
@@ -25996,7 +25996,7 @@ Body:
             Rate: 140
             Rate: 140
           - Item: C_Poring_On_Shoulder
           - Item: C_Poring_On_Shoulder
             Rate: 140
             Rate: 140
-          - Item: Costume_Yawata_Seal
+          - Item: C_FortunetellinSealed
             Rate: 140
             Rate: 140
           - Item: C_Pretty_Bear_WH
           - Item: C_Pretty_Bear_WH
             Rate: 140
             Rate: 140
@@ -26008,7 +26008,7 @@ Body:
             Rate: 140
             Rate: 140
           - Item: C_Dark_Snake_Lord_Stall
           - Item: C_Dark_Snake_Lord_Stall
             Rate: 140
             Rate: 140
-          - Item: Costume_Twin_Cannon
+          - Item: C_Twin_Canon
             Rate: 140
             Rate: 140
           - Item: C_Picnic_Basket
           - Item: C_Picnic_Basket
             Rate: 140
             Rate: 140
@@ -26070,13 +26070,13 @@ Body:
             Rate: 140
             Rate: 140
           - Item: C_LittleGarden
           - Item: C_LittleGarden
             Rate: 140
             Rate: 140
-          - Item: Costume_Twinkling_Red_Eyes
+          - Item: C_Blinking_Eyes_RD
             Rate: 140
             Rate: 140
           - Item: C_Blink_Eyes_Sakura
           - Item: C_Blink_Eyes_Sakura
             Rate: 140
             Rate: 140
-          - Item: Costume_Angola_Intention
+          - Item: C_Angola_Intention
             Rate: 140
             Rate: 140
-          - Item: C_Stole_Of_Dominion
+          - Item: C_Stall_Of_Dominions
             Rate: 140
             Rate: 140
           - Item: C_Flowery_Vision_TH
           - Item: C_Flowery_Vision_TH
             Rate: 140
             Rate: 140
@@ -26100,7 +26100,7 @@ Body:
             Rate: 130
             Rate: 130
           - Item: C_Blessings_Of_Soul
           - Item: C_Blessings_Of_Soul
             Rate: 130
             Rate: 130
-          - Item: C_Crow
+          - Item: C_Gossip_Raven
             Rate: 130
             Rate: 130
           - Item: C_Halloween_Hat
           - Item: C_Halloween_Hat
             Rate: 130
             Rate: 130
@@ -26118,7 +26118,7 @@ Body:
             Rate: 130
             Rate: 130
           - Item: C_Gift_Of_Snow
           - Item: C_Gift_Of_Snow
             Rate: 130
             Rate: 130
-          - Item: C_Large_Ribbon_Muffler_Red
+          - Item: C_L_RibbonMuff_Red
             Rate: 130
             Rate: 130
           - Item: C_Imperial_Glory
           - Item: C_Imperial_Glory
             Rate: 130
             Rate: 130
@@ -30431,9 +30431,9 @@ Body:
             Rate: 250
             Rate: 250
           - Item: CastingStone_Bottom
           - Item: CastingStone_Bottom
             Rate: 250
             Rate: 250
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 250
             Rate: 250
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 250
             Rate: 250
           - Item: Range_Stone_Top
           - Item: Range_Stone_Top
             Rate: 250
             Rate: 250
@@ -30457,17 +30457,17 @@ Body:
             Rate: 380
             Rate: 380
           - Item: Critical_Stone_Bottom
           - Item: Critical_Stone_Bottom
             Rate: 380
             Rate: 380
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 560
             Rate: 560
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 560
             Rate: 560
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 560
             Rate: 560
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 560
             Rate: 560
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 560
             Rate: 560
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 560
             Rate: 560
   - Group: ENCHANT_STONE_BOX23
   - Group: ENCHANT_STONE_BOX23
     SubGroups:
     SubGroups:
@@ -30527,9 +30527,9 @@ Body:
             Rate: 140
             Rate: 140
           - Item: ASPDStone_Top
           - Item: ASPDStone_Top
             Rate: 160
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: Range_Stone
           - Item: Range_Stone
             Rate: 240
             Rate: 240
@@ -30567,17 +30567,17 @@ Body:
             Rate: 360
             Rate: 360
           - Item: Critical_Stone_Bottom
           - Item: Critical_Stone_Bottom
             Rate: 360
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
   - Group: ENCHANT_STONE_BOX24
   - Group: ENCHANT_STONE_BOX24
     SubGroups:
     SubGroups:
@@ -30671,9 +30671,9 @@ Body:
             Rate: 160
             Rate: 160
           - Item: WaterFieldEffect_Bottom
           - Item: WaterFieldEffect_Bottom
             Rate: 160
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: Range_Stone
           - Item: Range_Stone
             Rate: 240
             Rate: 240
@@ -30693,17 +30693,17 @@ Body:
             Rate: 360
             Rate: 360
           - Item: Critical_Stone_Bottom
           - Item: Critical_Stone_Bottom
             Rate: 360
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
   - Group: ENCHANT_STONE_BOX25
   - Group: ENCHANT_STONE_BOX25
     SubGroups:
     SubGroups:
@@ -30797,9 +30797,9 @@ Body:
             Rate: 160
             Rate: 160
           - Item: WaterFieldEffect_Bottom
           - Item: WaterFieldEffect_Bottom
             Rate: 160
             Rate: 160
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: ReloadStone_Top
           - Item: ReloadStone_Top
             Rate: 240
             Rate: 240
@@ -30819,17 +30819,17 @@ Body:
             Rate: 360
             Rate: 360
           - Item: Critical_Stone_Bottom
           - Item: Critical_Stone_Bottom
             Rate: 360
             Rate: 360
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
   - Group: ENCHANT_STONE_BOX27
   - Group: ENCHANT_STONE_BOX27
     SubGroups:
     SubGroups:
@@ -30887,9 +30887,9 @@ Body:
             Rate: 80
             Rate: 80
           - Item: GuillcrossStone_Bottom3
           - Item: GuillcrossStone_Bottom3
             Rate: 80
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: Magic_Stone_Top
           - Item: Magic_Stone_Top
             Rate: 240
             Rate: 240
@@ -30933,17 +30933,17 @@ Body:
             Rate: 150
             Rate: 150
           - Item: AssacrossStone_Bottom2
           - Item: AssacrossStone_Bottom2
             Rate: 150
             Rate: 150
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
           - Item: CastingStone_Top
           - Item: CastingStone_Top
             Rate: 360
             Rate: 360
@@ -31102,9 +31102,9 @@ Body:
             Rate: 80
             Rate: 80
           - Item: ReaperStone_Bottom3
           - Item: ReaperStone_Bottom3
             Rate: 80
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: Magic_Stone_Top
           - Item: Magic_Stone_Top
             Rate: 240
             Rate: 240
@@ -31142,17 +31142,17 @@ Body:
             Rate: 240
             Rate: 240
           - Item: Range_Stone_Bottom
           - Item: Range_Stone_Bottom
             Rate: 240
             Rate: 240
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
           - Item: CastingStone_Top
           - Item: CastingStone_Top
             Rate: 360
             Rate: 360
@@ -31442,9 +31442,9 @@ Body:
             Rate: 80
             Rate: 80
           - Item: DoramStone_Bottom3
           - Item: DoramStone_Bottom3
             Rate: 80
             Rate: 80
-          - Item: aegis_100465
+          - Item: Stone_Robe_Box
             Rate: 160
             Rate: 160
-          - Item: aegis_100495
+          - Item: Stone_Robe2_Box
             Rate: 160
             Rate: 160
           - Item: Magic_Stone_Top
           - Item: Magic_Stone_Top
             Rate: 240
             Rate: 240
@@ -31482,17 +31482,17 @@ Body:
             Rate: 240
             Rate: 240
           - Item: EXPStone_Top
           - Item: EXPStone_Top
             Rate: 240
             Rate: 240
-          - Item: aegis_100496
+          - Item: Stone_Top_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100497
+          - Item: Stone_Top2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100498
+          - Item: Stone_Middle_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100499
+          - Item: Stone_Middle2_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100500
+          - Item: Stone_Bottom_Box
             Rate: 360
             Rate: 360
-          - Item: aegis_100501
+          - Item: Stone_Bottom2_Box
             Rate: 360
             Rate: 360
           - Item: CastingStone_Top
           - Item: CastingStone_Top
             Rate: 360
             Rate: 360
@@ -48211,3 +48211,1176 @@ Body:
           - Item: Trans_Scroll_Gazeti
           - Item: Trans_Scroll_Gazeti
           - Item: Trans_Scroll_Kobold_Archer
           - Item: Trans_Scroll_Kobold_Archer
           - Item: Trans_Scroll_Necromancer
           - 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
           - Option: ATTR_TOLERACE_ALL
             MinValue: 1
             MinValue: 1
             MaxValue: 2
             MaxValue: 2
-            Chance: 50 
+            Chance: 50
           - Option: DAMAGE_SIZE_SMALL_USER
           - Option: DAMAGE_SIZE_SMALL_USER
             MinValue: 3
             MinValue: 3
             MaxValue: 5
             MaxValue: 5
@@ -11524,39 +11524,39 @@ Body:
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_WATER_TARGET
           - Option: DAMAGE_PROPERTY_WATER_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_GROUND_TARGET
           - Option: DAMAGE_PROPERTY_GROUND_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_FIRE_TARGET
           - Option: DAMAGE_PROPERTY_FIRE_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_WIND_TARGET
           - Option: DAMAGE_PROPERTY_WIND_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_POISON_TARGET
           - Option: DAMAGE_PROPERTY_POISON_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_SAINT_TARGET
           - Option: DAMAGE_PROPERTY_SAINT_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
           - Option: DAMAGE_PROPERTY_DARKNESS_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
           - Option: DAMAGE_PROPERTY_TELEKINESIS_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
           - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
           - Option: DAMAGE_PROPERTY_UNDEAD_TARGET
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 714
             Chance: 714
       - Slot: 2
       - Slot: 2
         Options:
         Options:
@@ -11582,31 +11582,31 @@ Body:
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_PLANT
           - Option: RACE_DAMAGE_PLANT
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_INSECT
           - Option: RACE_DAMAGE_INSECT
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_FISHS
           - Option: RACE_DAMAGE_FISHS
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_DEVIL
           - Option: RACE_DAMAGE_DEVIL
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_HUMAN
           - Option: RACE_DAMAGE_HUMAN
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_ANGEL
           - Option: RACE_DAMAGE_ANGEL
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: RACE_DAMAGE_DRAGON
           - Option: RACE_DAMAGE_DRAGON
             MinValue: 5
             MinValue: 5
-            MaxValue: 30
+            MaxValue: 20
             Chance: 666
             Chance: 666
           - Option: CLASS_DAMAGE_NORMAL_TARGET
           - Option: CLASS_DAMAGE_NORMAL_TARGET
             MinValue: 1
             MinValue: 1
@@ -12285,3 +12285,836 @@ Body:
             MinValue: 1
             MinValue: 1
             MaxValue: 5
             MaxValue: 5
             Chance: 769
             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
         CardsAllowed: false
         ResultItem: Club_
         ResultItem: Club_
         ChangeRefine: 2
         ChangeRefine: 2
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
         ClearSlots: true
         ClearSlots: true
         RemoveGrade: true
         RemoveGrade: true
       - BaseItem: Avd_Knife
       - BaseItem: Avd_Knife
@@ -3139,11 +3139,11 @@ Body:
         CardsAllowed: false
         CardsAllowed: false
         ResultItem: Tsurugi
         ResultItem: Tsurugi
         ChangeRefine: -20
         ChangeRefine: -20
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
       - BaseItem: C_Hill_Wind_Mask
       - BaseItem: C_Hill_Wind_Mask
         ResultItem: Katar
         ResultItem: Katar
         ChangeRefine: 5
         ChangeRefine: 5
-        #RandomOptionGroup: G0 # TODO: translate to our group names
+        RandomOptionGroup: Group_0
         RemoveGrade: true
         RemoveGrade: true
       - BaseItem: SeeOtter_Fan
       - BaseItem: SeeOtter_Fan
         Materials:
         Materials:
@@ -4589,200 +4589,200 @@ Body:
 #          Amount: 10
 #          Amount: 10
 #       ResultItem: D_Glacier_M_Mace
 #       ResultItem: D_Glacier_M_Mace
 #       ChangeRefine: 1
 #       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
   - Item: Hero_Weapon_Up_Box_5
     BaseItems:
     BaseItems:
       - BaseItem: Up_Blade_Katar
       - BaseItem: Up_Blade_Katar
@@ -6892,3 +6892,91 @@ Body:
 #          Amount: 150
 #          Amount: 150
 #       ResultItem: Blessed_Knife_LT
 #       ResultItem: Blessed_Knife_LT
 #       ChangeRefine: 1
 #       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
         Amount: 10
       - Item: Frozen_Stone_Fragment
       - Item: Frozen_Stone_Fragment
         Amount: 10
         Amount: 10
-      - Item: Spirit_Jewel
+      - Item: SpritJewel
         Amount: 10
         Amount: 10
       - Item: Snowball
       - Item: Snowball
         Amount: 10
         Amount: 10
@@ -1419,7 +1419,7 @@ Body:
         Amount: 10
         Amount: 10
       - Item: Fine_Old_Doll
       - Item: Fine_Old_Doll
         Amount: 10
         Amount: 10
-      - Item: Old_Shell
+      - Item: OldShell
         Amount: 10
         Amount: 10
       - Item: Ein_SOLIDDUST
       - Item: Ein_SOLIDDUST
         Amount: 10
         Amount: 10
@@ -1602,7 +1602,7 @@ Body:
       - Item: C_Charleston_Antenna
       - Item: C_Charleston_Antenna
       - Item: C_Wings_of_Uriel
       - Item: C_Wings_of_Uriel
       - Item: C_Pig_Nose
       - Item: C_Pig_Nose
-      - Item: C_Cat_Ears_Hat
+      - Item: C_Cat_Ear_Hat
       - Item: C_Valkyrie_Circlet
       - Item: C_Valkyrie_Circlet
       - Item: C_Eremes_Scarf_Black
       - Item: C_Eremes_Scarf_Black
       - Item: C_Eleanor_Wig
       - Item: C_Eleanor_Wig
@@ -1738,13 +1738,13 @@ Body:
       - Item: C_Big_Foxtail
       - Item: C_Big_Foxtail
       - Item: C_T_Bear_Bag
       - Item: C_T_Bear_Bag
       - Item: C_Poring_On_Shoulder
       - Item: C_Poring_On_Shoulder
-      - Item: Costume_Yawata_Seal
+      - Item: C_FortunetellinSealed
       - Item: C_Pretty_Bear_WH
       - Item: C_Pretty_Bear_WH
       - Item: C_Bicolor_Cat_Witch_Hat
       - Item: C_Bicolor_Cat_Witch_Hat
       - Item: C_Nifl_Bloom
       - Item: C_Nifl_Bloom
       - Item: C_Floating_Ball_TW
       - Item: C_Floating_Ball_TW
       - Item: C_Dark_Snake_Lord_Stall
       - Item: C_Dark_Snake_Lord_Stall
-      - Item: Costume_Twin_Cannon
+      - Item: C_Twin_Canon
       - Item: C_Picnic_Basket
       - Item: C_Picnic_Basket
       - Item: C_Magic_Helm
       - Item: C_Magic_Helm
       - Item: C_ManyStars_TW
       - Item: C_ManyStars_TW
@@ -1773,13 +1773,13 @@ Body:
       - Item: C_Disapear_Time_TW
       - Item: C_Disapear_Time_TW
       - Item: C_Magic_Heir_TW
       - Item: C_Magic_Heir_TW
       - Item: C_Blink_Eyes_Sakura
       - 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_Flowery_Vision_TH
       - Item: C_Frill_Collar
       - Item: C_Frill_Collar
       - Item: C_Rose_Gothic_Bonnet
       - Item: C_Rose_Gothic_Bonnet
       - Item: C_LittleGarden
       - Item: C_LittleGarden
-      - Item: Costume_Twinkling_Red_Eyes
+      - Item: C_Blinking_Eyes_RD
       - Item: C_P_Ulysses_Feather
       - Item: C_P_Ulysses_Feather
       - Item: C_DancingButterfly_TW
       - Item: C_DancingButterfly_TW
       - Item: C_Blue_Pencil_In_Mouth
       - Item: C_Blue_Pencil_In_Mouth
@@ -1790,7 +1790,7 @@ Body:
       - Item: C_Frog_Hood
       - Item: C_Frog_Hood
       - Item: C_Lude_Hood
       - Item: C_Lude_Hood
       - Item: C_Blessings_Of_Soul
       - Item: C_Blessings_Of_Soul
-      - Item: C_Crow
+      - Item: C_Gossip_Raven
       - Item: C_Halloween_Hat
       - Item: C_Halloween_Hat
       - Item: C_Blessed_Veil
       - Item: C_Blessed_Veil
       - Item: C_Eyes_Of_Ifrit
       - Item: C_Eyes_Of_Ifrit
@@ -1799,7 +1799,7 @@ Body:
       - Item: C_Wildcat_Knit_Cap
       - Item: C_Wildcat_Knit_Cap
       - Item: C_Pink_Fur_Hat
       - Item: C_Pink_Fur_Hat
       - Item: C_Gift_Of_Snow
       - Item: C_Gift_Of_Snow
-      - Item: C_Large_Ribbon_Muffler_Red
+      - Item: C_L_RibbonMuff_Red
       - Item: C_Imperial_Glory
       - Item: C_Imperial_Glory
       - Item: C_Black_Shiba_Inu_Hat
       - Item: C_Black_Shiba_Inu_Hat
       - Item: C_Black_Glasses
       - Item: C_Black_Glasses
@@ -3272,11 +3272,11 @@ Body:
 #    RewardGroup: ENCHANTSTONE_RECIPE_3M
 #    RewardGroup: ENCHANTSTONE_RECIPE_3M
 #    Requirements:
 #    Requirements:
 #      - Item: C_Pretty_Bear_WH
 #      - Item: C_Pretty_Bear_WH
-#      - Item: Costume_Yawata_Seal
+#      - Item: C_FortunetellinSealed
 #      - Item: C_Floating_Ball_TW
 #      - Item: C_Floating_Ball_TW
 #      - Item: C_Dark_Snake_Lord_Stall
 #      - Item: C_Dark_Snake_Lord_Stall
 #      - Item: C_Bicolor_Cat_Witch_Hat
 #      - Item: C_Bicolor_Cat_Witch_Hat
-#      - Item: Costume_Twin_Cannon
+#      - Item: C_Twin_Canon
 #      - Item: C_Picnic_Basket
 #      - Item: C_Picnic_Basket
 #      - Item: C_Magic_Helm
 #      - Item: C_Magic_Helm
 #      - Item: C_Fawn_Ear
 #      - Item: C_Fawn_Ear
@@ -3291,7 +3291,7 @@ Body:
 #      - Item: C_Frill_Collar
 #      - Item: C_Frill_Collar
 #      - Item: C_Rose_Gothic_Bonnet
 #      - Item: C_Rose_Gothic_Bonnet
 #      - Item: C_LittleGarden
 #      - Item: C_LittleGarden
-#      - Item: Costume_Twinkling_Red_Eyes
+#      - Item: C_Blinking_Eyes_RD
 #  - Item: Egirnion_Box
 #  - Item: Egirnion_Box
 #    RewardGroup: EGIRNION_BOX
 #    RewardGroup: EGIRNION_BOX
 #    Requirements:
 #    Requirements:
@@ -3700,11 +3700,11 @@ Body:
 #      - Item: S_AllMighty_Pendant
 #      - Item: S_AllMighty_Pendant
 #      - Item: S_Tempest_Shield
 #      - Item: S_Tempest_Shield
 #      - Item: S_Tempest_Shoes
 #      - 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_Plasterer's_Armor_II
 #      - Item: S_Insomniac_Shoes_II
 #      - Item: S_Insomniac_Shoes_II
 #      - Item: S_Peerless_Armor_II
 #      - Item: S_Peerless_Armor_II
@@ -3728,11 +3728,11 @@ Body:
 #      - Item: S_Mortal_Blow_Pendant
 #      - Item: S_Mortal_Blow_Pendant
 #      - Item: S_Penetration_Shoes
 #      - Item: S_Penetration_Shoes
 #      - Item: S_Penetration_Shield
 #      - 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_Weapone_S
 #      - Item: Sentimental_Earring_S
 #      - Item: Sentimental_Earring_S
 #      - Item: Sentimental_Pendant_S
 #      - Item: Sentimental_Pendant_S

+ 235 - 178
db/re/laphine_upgrade.yml

@@ -60,7 +60,7 @@ Body:
 #      - Item: Ein_1HSWORD
 #      - Item: Ein_1HSWORD
 #      - Item: Ein_1HGUN
 #      - Item: Ein_1HGUN
 #      - Item: Ein_1H_Foxtail
 #      - Item: Ein_1H_Foxtail
-  - Item: Metal_Smelting_Ticket
+  - Item: Metal_Rifine_Ticket
     ResultRefine: 7
     ResultRefine: 7
     CardsAllowed: true
     CardsAllowed: true
     TargetItems:
     TargetItems:
@@ -74,7 +74,7 @@ Body:
       - Item: Metal_Bow
       - Item: Metal_Bow
       - Item: Metal_Two_Hand_Sword
       - Item: Metal_Two_Hand_Sword
       - Item: Metal_Revolver
       - Item: Metal_Revolver
-      - Item: Huuma_Metal_Shuriken
+      - Item: Metal_Huuma_Shuriken
       - Item: Metal_Foxtail
       - Item: Metal_Foxtail
 #  - Item: Ein_Ddbox2
 #  - Item: Ein_Ddbox2
 #    TargetItems:
 #    TargetItems:
@@ -2412,13 +2412,13 @@ Body:
       - Item: Illusion_Butcher
       - Item: Illusion_Butcher
       - Item: Illusion_Gold_Lux
       - Item: Illusion_Gold_Lux
       - Item: Infiltrator_IL
       - 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: Book_Of_The_Apo_IL
       - Item: Balistar_IL
       - Item: Balistar_IL
-      - Item: Illusion_Wing_Shuriken
+      - Item: Huuma_Bird_Wing_IL
       - Item: Wizardy_Staff_IL
       - Item: Wizardy_Staff_IL
       - Item: Long_Mace_IL
       - Item: Long_Mace_IL
       - Item: Huuma_Flutter_Snow_IL
       - Item: Huuma_Flutter_Snow_IL
@@ -2451,13 +2451,13 @@ Body:
       - Item: Illusion_Butcher
       - Item: Illusion_Butcher
       - Item: Illusion_Gold_Lux
       - Item: Illusion_Gold_Lux
       - Item: Infiltrator_IL
       - 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: Book_Of_The_Apo_IL
       - Item: Balistar_IL
       - Item: Balistar_IL
-      - Item: Illusion_Wing_Shuriken
+      - Item: Huuma_Bird_Wing_IL
       - Item: Wizardy_Staff_IL
       - Item: Wizardy_Staff_IL
       - Item: Long_Mace_IL
       - Item: Long_Mace_IL
       - Item: Huuma_Flutter_Snow_IL
       - Item: Huuma_Flutter_Snow_IL
@@ -2560,6 +2560,28 @@ Body:
       - Item: Up_Crimson_Rose
       - Item: Up_Crimson_Rose
       - Item: Up_OneSkyOneSun
       - Item: Up_OneSkyOneSun
       - Item: Up_SoulWeight
       - 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
   - Item: Ancient_Hero_Wisdom
     RandomOptionGroup: ANCIENT_HERO_WISDOM
     RandomOptionGroup: ANCIENT_HERO_WISDOM
     TargetItems:
     TargetItems:
@@ -2634,6 +2656,28 @@ Body:
       - Item: Up_Crimson_Rose
       - Item: Up_Crimson_Rose
       - Item: Up_OneSkyOneSun
       - Item: Up_OneSkyOneSun
       - Item: Up_SoulWeight
       - 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
   - Item: Boost_Up_1
     ResultRefine: 10
     ResultRefine: 10
     MaximumRefine: 9
     MaximumRefine: 9
@@ -2657,21 +2701,21 @@ Body:
     TargetItems:
     TargetItems:
       - Item: Boost_TH_Sword
       - Item: Boost_TH_Sword
       - Item: Boost_Katar
       - Item: Boost_Katar
-      - Item: Boost_Mace
+      - Item: Boost_Hall
       - Item: Boost_Staff
       - Item: Boost_Staff
       - Item: Boost_Bow
       - Item: Boost_Bow
       - Item: Boost_Spear
       - Item: Boost_Spear
       - Item: Boost_Sword
       - Item: Boost_Sword
       - Item: Boost_Dagger
       - Item: Boost_Dagger
-      - Item: Boost_Spellbook
+      - Item: Boost_Spl_Book
       - Item: Boost_Guitar
       - Item: Boost_Guitar
-      - Item: Boost_Knuckles
+      - Item: Boost_Knuckle
       - Item: Boost_Whip
       - Item: Boost_Whip
       - Item: Boost_Nindo
       - Item: Boost_Nindo
       - Item: Boost_Gatling
       - Item: Boost_Gatling
       - Item: Boost_Axe
       - Item: Boost_Axe
-      - Item: Boost_Book
-      - Item: Boost_Rod
+      - Item: Boost_Text
+      - Item: Boost_Soul_Rod
       - Item: Boost_Foxtail
       - Item: Boost_Foxtail
   - Item: Metal_7_Ticket
   - Item: Metal_7_Ticket
     ResultRefine: 7
     ResultRefine: 7
@@ -2689,7 +2733,7 @@ Body:
       - Item: Metal_Bow
       - Item: Metal_Bow
       - Item: Metal_Foxtail
       - Item: Metal_Foxtail
       - Item: Metal_Revolver
       - Item: Metal_Revolver
-      - Item: Huuma_Metal_Shuriken
+      - Item: Metal_Huuma_Shuriken
   - Item: Noblesse_Rifine_Ticket
   - Item: Noblesse_Rifine_Ticket
     ResultRefine: 9
     ResultRefine: 9
     CardsAllowed: true
     CardsAllowed: true
@@ -4184,80 +4228,82 @@ Body:
       - Item: Nurse_Cap_IL
       - Item: Nurse_Cap_IL
       - Item: Puente_Robe_IL
       - Item: Puente_Robe_IL
       - Item: Apple_Of_Archer_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
   - Item: Vampire_Box_IL
     ResultRefineMinimum: 7
     ResultRefineMinimum: 7
     ResultRefineMaximum: 10
     ResultRefineMaximum: 10
@@ -4303,12 +4349,12 @@ Body:
     MaximumRefine: 9
     MaximumRefine: 9
     CardsAllowed: true
     CardsAllowed: true
     TargetItems:
     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
   - Item: S_Turtle_Is_Box_IL
     ResultRefineMinimum: 9
     ResultRefineMinimum: 9
     ResultRefineMaximum: 12
     ResultRefineMaximum: 12
@@ -4316,12 +4362,12 @@ Body:
     MaximumRefine: 11
     MaximumRefine: 11
     CardsAllowed: true
     CardsAllowed: true
     TargetItems:
     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
   - Item: Teddy_Bear_Box_IL
     ResultRefineMinimum: 7
     ResultRefineMinimum: 7
     ResultRefineMaximum: 10
     ResultRefineMaximum: 10
@@ -4968,80 +5014,82 @@ Body:
 #      - Item: EC_B_Staff
 #      - Item: EC_B_Staff
 #      - Item: SP_B_Saber
 #      - Item: SP_B_Saber
 #      - Item: SI_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
 #  - Item: Lens_Craft_Stone
 #    TargetItems:
 #    TargetItems:
 #      - Item: Deepblue_Sunglasses_
 #      - Item: Deepblue_Sunglasses_
@@ -5156,3 +5204,12 @@ Body:
       - Item: Subject_CapeRange_TH
       - Item: Subject_CapeRange_TH
       - Item: Subject_CapeMagic_TH
       - Item: Subject_CapeMagic_TH
       - Item: Subject_CapeMelee_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

File diff suppressed because it is too large
+ 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,35000,yes,self,always,0,,,,,,,53
 3765,Deranged Adventurer@NPC_TALK,idle,682,10,2500,0,30000,yes,self,always,0,,,,,,,54
 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
 // Poring Village instance
 3810,MD_KING_PORING@SM_BASH,attack,5,3,1000,1000,9000,yes,target,always,0,,,,,,,60
 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
 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_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,
 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)
 // 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,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,,,,,,,
 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,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,,,,,,,
 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
 // 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,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,,,,,,,
 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
   - Id: 8538
     Title: Renting an advanced oxygen mask
     Title: Renting an advanced oxygen mask
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8541
+    Title: Nothing to See
+    Targets:
+      - Mob: RAYDRIC_H
+        Count: 20
+      - Mob: RAYDRIC_ARCHER_H
+        Count: 20
   - Id: 8542
   - Id: 8542
-    Title: Standby
+    Title: Nothing to See - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8544
+    Title: High Freezing Point
+    Targets:
+      - Mob: GARGOYLE_H
+        Count: 5
+      - Mob: RAGGED_ZOMBIE_H
+        Count: 5
   - Id: 8545
   - Id: 8545
     Title: High freezing point (Standby)
     Title: High freezing point (Standby)
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8547
+    Title: A Mirror
+    Targets:
+      - Mob: ICE_GHOST_H
+        Count: 10
+      - Mob: FLAME_GHOST_H
+        Count: 10
   - Id: 8548
   - Id: 8548
-    Title: Mirror (Standby)
+    Title: A Mirror - (Standby)
     TimeLimit: 4h
     TimeLimit: 4h
   - Id: 8551
   - Id: 8551
     Title: The Dealer That Caused Evolution (Standby)
     Title: The Dealer That Caused Evolution (Standby)
@@ -5683,24 +5704,75 @@ Body:
   - Id: 8595
   - Id: 8595
     Title: Playing with Pitaya - Standby
     Title: Playing with Pitaya - Standby
     TimeLimit: 4h
     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
   - Id: 8642
     Title: He looks cute - Standby
     Title: He looks cute - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8644
+    Title: That's not an instrument
+    Targets:
+      - Mob: BRUTAL_MURDERER
+        Count: 10
+      - Mob: GAN_CEANN
+        Count: 10
   - Id: 8645
   - Id: 8645
     Title: That's not an instrument - Standby
     Title: That's not an instrument - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8647
+    Title: Playing the piano
   - Id: 8648
   - Id: 8648
     Title: Playing the piano - Standby
     Title: Playing the piano - Standby
     TimeLimit: 4h
     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
   - Id: 8651
     Title: Guys with messy hair - Standby
     Title: Guys with messy hair - Standby
     TimeLimit: 4h
     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
   - Id: 8654
     Title: The ones with dolls - Standby
     Title: The ones with dolls - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8655
+    Title: The ones with dolls
+  - Id: 8656
+    Title: Wake them up
   - Id: 8657
   - Id: 8657
     Title: Wake them up - Standby
     Title: Wake them up - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 8658
+    Title: Sorry for being sleepy (1)
+  - Id: 8659
+    Title: Sorry for being sleepy (2)
   - Id: 8661
   - Id: 8661
     Title: "[Standby] Subjugation-Audumra Chowon-3"
     Title: "[Standby] Subjugation-Audumra Chowon-3"
     TimeLimit: 4h
     TimeLimit: 4h
@@ -5768,9 +5840,31 @@ Body:
           KOBOLD_2: true
           KOBOLD_2: true
           KOBOLD_3: true
           KOBOLD_3: true
           KOBOLD_ARCHER: 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
   - Id: 8673
     Title: "[Standby] Subjugation-Portu Luna"
     Title: "[Standby] Subjugation-Portu Luna"
     TimeLimit: 4h
     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
   - Id: 8676
     Title: "[Standby] Subjugation-Veins Field-3"
     Title: "[Standby] Subjugation-Veins Field-3"
     TimeLimit: 4h
     TimeLimit: 4h
@@ -8440,6 +8534,8 @@ Body:
   - Id: 12411
   - Id: 12411
     Title: Come Back Tomorrow
     Title: Come Back Tomorrow
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 12415
+    Title: Contract with Fantasy Ganghwa
   - Id: 12416
   - Id: 12416
     Title: Contract with Emily
     Title: Contract with Emily
   - Id: 12417
   - Id: 12417
@@ -9928,9 +10024,48 @@ Body:
   - Id: 15093
   - Id: 15093
     Title: Promote the 13th Anniversary
     Title: Promote the 13th Anniversary
     TimeLimit: 4h
     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
   - Id: 15115
-    Title: Bride and Jace
+    Title: Vrid and Zeith
     TimeLimit: 4h
     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
   - Id: 15128
     Title: Chocolate Delivery Complete
     Title: Chocolate Delivery Complete
     TimeLimit: 4h
     TimeLimit: 4h
@@ -10420,15 +10555,37 @@ Body:
   - Id: 16439
   - Id: 16439
     Title: Award Garden-Waiting
     Title: Award Garden-Waiting
     TimeLimit: 4h
     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
   - Id: 16523
-    Title: The solitude of the abyss
+    Title: Abyssal Solitude - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 16524
+    Title: Abyssal Solitude
+    Targets:
+      - Mob: DEADRE
+        Count: 10
+      - Mob: DOLORIAN
+        Count: 10
+      - Mob: PLAGARION
+        Count: 10
   - Id: 16525
   - Id: 16525
-    Title: Transformation and development - Standby
+    Title: Transformation and Evolution - Standby
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 16526
+    Title: Transformation and Evolution
+    Targets:
+      - Mob: GIANT_CAPUT
+        Count: 15
+      - Mob: VENEDI
+        Count: 15
   - Id: 16527
   - Id: 16527
     Title: Data backup - Waiting
     Title: Data backup - Waiting
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 16528
+    Title: Data Backup
   - Id: 16530
   - Id: 16530
     Title: The ground and fire
     Title: The ground and fire
     TimeLimit: 4h
     TimeLimit: 4h
@@ -10444,6 +10601,8 @@ Body:
   - Id: 16538
   - Id: 16538
     Title: Natural change - Waiting
     Title: Natural change - Waiting
     TimeLimit: 4h
     TimeLimit: 4h
+  - Id: 16540
+    Title: Data Backup
   - Id: 16546
   - Id: 16546
     Title: Farm Worker
     Title: Farm Worker
   - Id: 16547
   - Id: 16547

File diff suppressed because it is too large
+ 843 - 470
db/re/skill_db.yml


+ 306 - 1
db/re/status.yml

@@ -254,6 +254,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       SpreadEffect: true
       SpreadEffect: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Refresh: true
       Refresh: true
       Inspiration: true
       Inspiration: true
@@ -282,6 +283,7 @@ Body:
       BossResist: true
       BossResist: true
       Debuff: true
       Debuff: true
       NoSaveInfinite: true
       NoSaveInfinite: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Freeze: true
       Freeze: true
       Stone: true
       Stone: true
@@ -307,6 +309,7 @@ Body:
       Quicken: true
       Quicken: true
     Flags:
     Flags:
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Decreaseagi: true
       Decreaseagi: true
   - Status: Concentrate
   - Status: Concentrate
@@ -317,6 +320,7 @@ Body:
       Dex: true
       Dex: true
     Flags:
     Flags:
       FailedMado: true
       FailedMado: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
   - Status: Hiding
   - Status: Hiding
@@ -367,6 +371,7 @@ Body:
       Atk_Ele: true
       Atk_Ele: true
     Flags:
     Flags:
       RemoveOnUnequipWeapon: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Aspersio: true
       Aspersio: true
       Fireweapon: true
       Fireweapon: true
@@ -378,6 +383,8 @@ Body:
   - Status: Poisonreact
   - Status: Poisonreact
     Icon: EFST_POISONREACT
     Icon: EFST_POISONREACT
     DurationLookup: AS_POISONREACT
     DurationLookup: AS_POISONREACT
+    Flags:
+      RemoveOnHermode: true
   - Status: Quagmire
   - Status: Quagmire
     Icon: EFST_QUAGMIRE
     Icon: EFST_QUAGMIRE
     DurationLookup: WZ_QUAGMIRE
     DurationLookup: WZ_QUAGMIRE
@@ -390,6 +397,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       Debuff: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Speedup1: true
       Speedup1: true
     EndOnStart:
     EndOnStart:
@@ -418,6 +426,7 @@ Body:
       Angelus: true
       Angelus: true
     Flags:
     Flags:
       SendOption: true
       SendOption: true
+      RemoveOnHermode: true
   - Status: Blessing
   - Status: Blessing
     Icon: EFST_BLESSING
     Icon: EFST_BLESSING
     DurationLookup: AL_BLESSING
     DurationLookup: AL_BLESSING
@@ -429,6 +438,7 @@ Body:
     Flags:
     Flags:
       BossResist: true
       BossResist: true
       TaekwonAngel: true
       TaekwonAngel: true
+      RemoveOnHermode: true
   - Status: Signumcrucis
   - Status: Signumcrucis
     Icon: EFST_CRUCIS
     Icon: EFST_CRUCIS
     DurationLookup: AL_CRUCIS
     DurationLookup: AL_CRUCIS
@@ -449,6 +459,7 @@ Body:
     Flags:
     Flags:
       FailedMado: true
       FailedMado: true
       TaekwonAngel: true
       TaekwonAngel: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
     EndOnStart:
     EndOnStart:
@@ -464,6 +475,7 @@ Body:
       BossResist: true
       BossResist: true
       NoSave: true
       NoSave: true
       Debuff: true
       Debuff: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Speedup1: true
       Speedup1: true
     EndOnStart:
     EndOnStart:
@@ -482,6 +494,7 @@ Body:
     DurationLookup: PR_SLOWPOISON
     DurationLookup: PR_SLOWPOISON
     Flags:
     Flags:
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Impositio
   - Status: Impositio
     Icon: EFST_IMPOSITIO
     Icon: EFST_IMPOSITIO
     DurationLookup: PR_IMPOSITIO
     DurationLookup: PR_IMPOSITIO
@@ -490,6 +503,7 @@ Body:
       Matk: true
       Matk: true
     Flags:
     Flags:
       SuperNoviceAngel: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Impositio: true
       Impositio: true
   - Status: Suffragium
   - Status: Suffragium
@@ -497,6 +511,7 @@ Body:
     DurationLookup: PR_SUFFRAGIUM
     DurationLookup: PR_SUFFRAGIUM
     Flags:
     Flags:
       SuperNoviceAngel: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aspersio
   - Status: Aspersio
     Icon: EFST_ASPERSIO
     Icon: EFST_ASPERSIO
     DurationLookup: PR_ASPERSIO
     DurationLookup: PR_ASPERSIO
@@ -504,6 +519,7 @@ Body:
       Atk_Ele: true
       Atk_Ele: true
     Flags:
     Flags:
       RemoveOnUnequipWeapon: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Encpoison: true
       Encpoison: true
       Fireweapon: true
       Fireweapon: true
@@ -522,11 +538,13 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       #RemoveOnUnequipArmor: true
       #RemoveOnUnequipArmor: true
+      RemoveOnHermode: true
   - Status: Kyrie
   - Status: Kyrie
     Icon: EFST_KYRIE
     Icon: EFST_KYRIE
     DurationLookup: PR_KYRIE
     DurationLookup: PR_KYRIE
     Flags:
     Flags:
       SuperNoviceAngel: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Magnificat
   - Status: Magnificat
     Icon: EFST_MAGNIFICAT
     Icon: EFST_MAGNIFICAT
     DurationLookup: PR_MAGNIFICAT
     DurationLookup: PR_MAGNIFICAT
@@ -536,6 +554,7 @@ Body:
       FailedMado: true
       FailedMado: true
       NoSave: true
       NoSave: true
       SuperNoviceAngel: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Offertorium: true
       Offertorium: true
   - Status: Gloria
   - Status: Gloria
@@ -545,11 +564,13 @@ Body:
       Luk: true
       Luk: true
     Flags:
     Flags:
       SuperNoviceAngel: true
       SuperNoviceAngel: true
+      RemoveOnHermode: true
   - Status: Aeterna
   - Status: Aeterna
     Icon: EFST_LEXAETERNA
     Icon: EFST_LEXAETERNA
     DurationLookup: PR_LEXAETERNA
     DurationLookup: PR_LEXAETERNA
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Stone: true
       Stone: true
       Freeze: true
       Freeze: true
@@ -562,6 +583,7 @@ Body:
     Flags:
     Flags:
       MadoCancel: true
       MadoCancel: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
       Decreaseagi: true
       Decreaseagi: true
@@ -570,6 +592,7 @@ Body:
     DurationLookup: BS_WEAPONPERFECT
     DurationLookup: BS_WEAPONPERFECT
     Flags:
     Flags:
       MadoCancel: true
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Overthrust
   - Status: Overthrust
     Icon: EFST_OVERTHRUST
     Icon: EFST_OVERTHRUST
     DurationLookup: BS_OVERTHRUST
     DurationLookup: BS_OVERTHRUST
@@ -577,6 +600,7 @@ Body:
       OverThrust: true
       OverThrust: true
     Flags:
     Flags:
       MadoCancel: true
       MadoCancel: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Maxoverthrust: true
       Maxoverthrust: true
   - Status: Maximizepower
   - Status: Maximizepower
@@ -586,6 +610,7 @@ Body:
       Regen: true
       Regen: true
     Flags:
     Flags:
       MadoCancel: true
       MadoCancel: true
+      RemoveOnHermode: true
   - Status: Trickdead
   - Status: Trickdead
     Icon: EFST_TRICKDEAD
     Icon: EFST_TRICKDEAD
     DurationLookup: NV_TRICKDEAD
     DurationLookup: NV_TRICKDEAD
@@ -605,6 +630,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Dancing: true
       Dancing: true
   - Status: Loud
   - Status: Loud
@@ -612,6 +638,7 @@ Body:
     DurationLookup: MC_LOUD
     DurationLookup: MC_LOUD
     Flags:
     Flags:
       MadoCancel: true
       MadoCancel: true
+      RemoveOnHermode: true
     CalcFlags:
     CalcFlags:
       Str: true
       Str: true
       Batk: true
       Batk: true
@@ -620,6 +647,8 @@ Body:
     DurationLookup: MG_ENERGYCOAT
     DurationLookup: MG_ENERGYCOAT
     Opt3:
     Opt3:
       EnergyCoat: true
       EnergyCoat: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Brokenarmor
   - Status: Brokenarmor
     Icon: EFST_BROKENARMOR
     Icon: EFST_BROKENARMOR
     DurationLookup: NPC_ARMORBRAKE
     DurationLookup: NPC_ARMORBRAKE
@@ -672,12 +701,14 @@ Body:
     Flags:
     Flags:
       NoClearance: true
       NoClearance: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion2
   - Status: Aspdpotion2
     Icon: EFST_ATTHASTE_POTION3
     Icon: EFST_ATTHASTE_POTION3
     CalcFlags:
     CalcFlags:
       Aspd: true
       Aspd: true
     Flags:
     Flags:
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Aspdpotion3
   - Status: Aspdpotion3
     Icon: EFST_ATTHASTE_INFINITY
     Icon: EFST_ATTHASTE_INFINITY
     CalcFlags:
     CalcFlags:
@@ -685,6 +716,7 @@ Body:
     Flags:
     Flags:
       NoClearance: true
       NoClearance: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Speedup0
   - Status: Speedup0
     Icon: EFST_MOVHASTE_HORSE
     Icon: EFST_MOVHASTE_HORSE
     CalcFlags:
     CalcFlags:
@@ -702,6 +734,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Atkpotion
   - Status: Atkpotion
     Icon: EFST_PLUSATTACKPOWER
     Icon: EFST_PLUSATTACKPOWER
     CalcFlags:
     CalcFlags:
@@ -710,6 +743,7 @@ Body:
       NoRemoveOnDead: true
       NoRemoveOnDead: true
       NoClearance: true
       NoClearance: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Matkpotion
   - Status: Matkpotion
     Icon: EFST_PLUSMAGICPOWER
     Icon: EFST_PLUSMAGICPOWER
     CalcFlags:
     CalcFlags:
@@ -718,6 +752,7 @@ Body:
       NoRemoveOnDead: true
       NoRemoveOnDead: true
       NoClearance: true
       NoClearance: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
   - Status: Wedding
   - Status: Wedding
     States:
     States:
       NoAttack: true
       NoAttack: true
@@ -760,6 +795,8 @@ Body:
     CalcFlags:
     CalcFlags:
       Mdef: true
       Mdef: true
       Def: true
       Def: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Stripweapon
   - Status: Stripweapon
     Icon: EFST_NOEQUIPWEAPON
     Icon: EFST_NOEQUIPWEAPON
     DurationLookup: RG_STRIPWEAPON
     DurationLookup: RG_STRIPWEAPON
@@ -772,6 +809,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Stripshield
   - Status: Stripshield
     Icon: EFST_NOEQUIPSHIELD
     Icon: EFST_NOEQUIPSHIELD
     DurationLookup: RG_STRIPSHIELD
     DurationLookup: RG_STRIPSHIELD
@@ -784,6 +822,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striparmor
   - Status: Striparmor
     Icon: EFST_NOEQUIPARMOR
     Icon: EFST_NOEQUIPARMOR
     DurationLookup: RG_STRIPARMOR
     DurationLookup: RG_STRIPARMOR
@@ -796,6 +835,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Striphelm
   - Status: Striphelm
     Icon: EFST_NOEQUIPHELM
     Icon: EFST_NOEQUIPHELM
     DurationLookup: RG_STRIPHELM
     DurationLookup: RG_STRIPHELM
@@ -808,6 +848,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Cp_Weapon
   - Status: Cp_Weapon
     Icon: EFST_PROTECTWEAPON
     Icon: EFST_PROTECTWEAPON
     DurationLookup: AM_CP_WEAPON
     DurationLookup: AM_CP_WEAPON
@@ -817,6 +858,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       RemoveChemicalProtect: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Shield
   - Status: Cp_Shield
     Icon: EFST_PROTECTSHIELD
     Icon: EFST_PROTECTSHIELD
     DurationLookup: AM_CP_SHIELD
     DurationLookup: AM_CP_SHIELD
@@ -826,6 +868,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       RemoveChemicalProtect: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Armor
   - Status: Cp_Armor
     Icon: EFST_PROTECTARMOR
     Icon: EFST_PROTECTARMOR
     DurationLookup: AM_CP_ARMOR
     DurationLookup: AM_CP_ARMOR
@@ -835,6 +878,7 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       RemoveChemicalProtect: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Cp_Helm
   - Status: Cp_Helm
     Icon: EFST_PROTECTHELM
     Icon: EFST_PROTECTHELM
     DurationLookup: AM_CP_HELM
     DurationLookup: AM_CP_HELM
@@ -844,18 +888,21 @@ Body:
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
       RemoveChemicalProtect: true
       RemoveChemicalProtect: true
+      RemoveOnHermode: true
   - Status: Autoguard
   - Status: Autoguard
     Icon: EFST_AUTOGUARD
     Icon: EFST_AUTOGUARD
     DurationLookup: CR_AUTOGUARD
     DurationLookup: CR_AUTOGUARD
     Flags:
     Flags:
       NoClearance: true
       NoClearance: true
       RequireShield: true
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Reflectshield
   - Status: Reflectshield
     Icon: EFST_REFLECTSHIELD
     Icon: EFST_REFLECTSHIELD
     DurationLookup: CR_REFLECTSHIELD
     DurationLookup: CR_REFLECTSHIELD
     Flags:
     Flags:
       NoClearance: true
       NoClearance: true
       RequireShield: true
       RequireShield: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Reflectdamage: true
       Reflectdamage: true
   - Status: Splasher
   - Status: Splasher
@@ -868,6 +915,7 @@ Body:
       All: true
       All: true
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Defender
   - Status: Defender
     Icon: EFST_DEFENDER
     Icon: EFST_DEFENDER
     DurationLookup: CR_DEFENDER
     DurationLookup: CR_DEFENDER
@@ -876,11 +924,13 @@ Body:
       Aspd: true
       Aspd: true
     Flags:
     Flags:
       RequireShield: true
       RequireShield: true
+      RemoveOnHermode: true
   - Status: Magicrod
   - Status: Magicrod
     Icon: EFST_MAGICROD
     Icon: EFST_MAGICROD
     DurationLookup: SA_MAGICROD
     DurationLookup: SA_MAGICROD
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Spellbreaker
   - Status: Spellbreaker
     Flags:
     Flags:
       NoWarning: true
       NoWarning: true
@@ -914,6 +964,7 @@ Body:
     Flags:
     Flags:
       FailedMado: true
       FailedMado: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
   - Status: Autocounter
   - Status: Autocounter
@@ -968,6 +1019,7 @@ Body:
       Debuff: true
       Debuff: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Combo
   - Status: Combo
     Flags:
     Flags:
       NoClearbuff: true
       NoClearbuff: true
@@ -998,6 +1050,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Fireweapon
   - Status: Fireweapon
     Icon: EFST_PROPERTYFIRE
     Icon: EFST_PROPERTYFIRE
     DurationLookup: SA_FLAMELAUNCHER
     DurationLookup: SA_FLAMELAUNCHER
@@ -1067,6 +1120,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Deluge
   - Status: Deluge
     Icon: EFST_GROUNDMAGIC
     Icon: EFST_GROUNDMAGIC
     DurationLookup: SA_DELUGE
     DurationLookup: SA_DELUGE
@@ -1126,6 +1180,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Parrying
   - Status: Parrying
     Icon: EFST_PARRYING
     Icon: EFST_PARRYING
     DurationLookup: LK_PARRYING
     DurationLookup: LK_PARRYING
@@ -1133,6 +1188,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Concentration
   - Status: Concentration
     Icon: EFST_LKCONCENTRATION
     Icon: EFST_LKCONCENTRATION
     DurationLookup: LK_CONCENTRATION
     DurationLookup: LK_CONCENTRATION
@@ -1143,6 +1199,7 @@ Body:
       Quicken: true
       Quicken: true
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Tensionrelax
   - Status: Tensionrelax
     Icon: EFST_TENSIONRELAX
     Icon: EFST_TENSIONRELAX
     DurationLookup: LK_TENSIONRELAX
     DurationLookup: LK_TENSIONRELAX
@@ -1151,6 +1208,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Berserk
   - Status: Berserk
     Icon: EFST_BERSERK
     Icon: EFST_BERSERK
     DurationLookup: LK_BERSERK
     DurationLookup: LK_BERSERK
@@ -1191,6 +1249,7 @@ Body:
       Aspd: true
       Aspd: true
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Assumptio
   - Status: Assumptio
     Icon: EFST_ASSUMPTIO2
     Icon: EFST_ASSUMPTIO2
     DurationLookup: HP_ASSUMPTIO
     DurationLookup: HP_ASSUMPTIO
@@ -1200,6 +1259,8 @@ Body:
       Assumptio: true
       Assumptio: true
     EndOnStart:
     EndOnStart:
       Kaite: true
       Kaite: true
+    Flags:
+      RemoveOnHermode: true
   - Status: Basilica
   - Status: Basilica
     Icon: EFST_BASILICA_BUFF
     Icon: EFST_BASILICA_BUFF
     DurationLookup: HP_BASILICA
     DurationLookup: HP_BASILICA
@@ -1210,6 +1271,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Guildaura
   - Status: Guildaura
     Flags:
     Flags:
       NoDispell: true
       NoDispell: true
@@ -1222,6 +1284,7 @@ Body:
       Matk: true
       Matk: true
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Magicpower: true
       Magicpower: true
   - Status: Edp
   - Status: Edp
@@ -1248,6 +1311,7 @@ Body:
     Flags:
     Flags:
       FailedMado: true
       FailedMado: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
   - Status: Windwalk
   - Status: Windwalk
@@ -1259,6 +1323,7 @@ Body:
     Flags:
     Flags:
       FailedMado: true
       FailedMado: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
   - Status: Meltdown
   - Status: Meltdown
@@ -1351,6 +1416,7 @@ Body:
       Debuff: true
       Debuff: true
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Blessing: true
       Blessing: true
       Increaseagi: true
       Increaseagi: true
@@ -1366,6 +1432,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       Debuff: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Mindbreaker
   - Status: Mindbreaker
     Icon: EFST_MINDBREAKER
     Icon: EFST_MINDBREAKER
     DurationLookup: PF_MINDBREAKER
     DurationLookup: PF_MINDBREAKER
@@ -1375,6 +1442,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       Debuff: true
       Debuff: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Freeze: true
       Freeze: true
       Stone: true
       Stone: true
@@ -1384,6 +1452,7 @@ Body:
     DurationLookup: PF_MEMORIZE
     DurationLookup: PF_MEMORIZE
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Fogwall
   - Status: Fogwall
     Icon: EFST_FOGWALL
     Icon: EFST_FOGWALL
     DurationLookup: PF_FOGWALL
     DurationLookup: PF_FOGWALL
@@ -1391,6 +1460,7 @@ Body:
       BossResist: true
       BossResist: true
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Spiderweb
   - Status: Spiderweb
     Icon: EFST_SPIDERWEB
     Icon: EFST_SPIDERWEB
     DurationLookup: PF_SPIDERWEB
     DurationLookup: PF_SPIDERWEB
@@ -1413,6 +1483,7 @@ Body:
       NoSave: true
       NoSave: true
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
+      RemoveOnHermode: true
     EndOnEnd:
     EndOnEnd:
       Autoguard: true
       Autoguard: true
       Defender: true
       Defender: true
@@ -1420,6 +1491,8 @@ Body:
       Endure: true
       Endure: true
   - Status: Sacrifice
   - Status: Sacrifice
     DurationLookup: PA_SACRIFICE
     DurationLookup: PA_SACRIFICE
+    Flags:
+      RemoveOnHermode: true
   - Status: Steelbody
   - Status: Steelbody
     Icon: EFST_STEELBODY
     Icon: EFST_STEELBODY
     DurationLookup: MO_STEELBODY
     DurationLookup: MO_STEELBODY
@@ -1432,6 +1505,7 @@ Body:
       Speed: true
       Speed: true
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
     Opt3:
     Opt3:
       SteelBody: true
       SteelBody: true
   - Status: Orcish
   - Status: Orcish
@@ -1496,6 +1570,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
+      RemoveOnHermode: true
   - Status: Shadowweapon
   - Status: Shadowweapon
     Icon: EFST_PROPERTYDARK
     Icon: EFST_PROPERTYDARK
     DurationLookup: TK_SEVENWIND
     DurationLookup: TK_SEVENWIND
@@ -1504,6 +1579,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Encpoison: true
       Encpoison: true
       Aspersio: true
       Aspersio: true
@@ -1521,6 +1597,7 @@ Body:
       MadoCancel: true
       MadoCancel: true
       NoSave: true
       NoSave: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Quagmire: true
       Quagmire: true
       Decreaseagi: true
       Decreaseagi: true
@@ -1532,6 +1609,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Encpoison: true
       Encpoison: true
       Aspersio: true
       Aspersio: true
@@ -1549,6 +1627,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Kaahi: true
       Kaahi: true
   - Status: Kaupe
   - Status: Kaupe
@@ -1557,6 +1636,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Onehand
   - Status: Onehand
     Icon: EFST_ONEHANDQUICKEN
     Icon: EFST_ONEHANDQUICKEN
     DurationLookup: KN_ONEHAND
     DurationLookup: KN_ONEHAND
@@ -1568,6 +1648,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Decreaseagi: true
       Decreaseagi: true
     EndOnStart:
     EndOnStart:
@@ -1580,6 +1661,7 @@ Body:
     DurationLookup: ST_PRESERVE
     DurationLookup: ST_PRESERVE
     Flags:
     Flags:
       NoSave: true
       NoSave: true
+      RemoveOnHermode: true
   - Status: Battleorders
   - Status: Battleorders
     Icon: EFST_GDSKILL_BATTLEORDER
     Icon: EFST_GDSKILL_BATTLEORDER
     DurationLookup: GD_BATTLEORDER
     DurationLookup: GD_BATTLEORDER
@@ -1603,6 +1685,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Maxoverthrust
   - Status: Maxoverthrust
     Icon: EFST_OVERTHRUSTMAX
     Icon: EFST_OVERTHRUSTMAX
     DurationLookup: WS_OVERTHRUSTMAX
     DurationLookup: WS_OVERTHRUSTMAX
@@ -1612,6 +1695,7 @@ Body:
       MadoCancel: true
       MadoCancel: true
       NoSave: true
       NoSave: true
       RemoveOnUnequipWeapon: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Overthrust: true
       Overthrust: true
   - Status: Hermode
   - Status: Hermode
@@ -1964,6 +2048,7 @@ Body:
       NoClearance: true
       NoClearance: true
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
       Debuff: true
       Debuff: true
+      RemoveOnHermode: true
   - Status: Spurt
   - Status: Spurt
     Icon: EFST_STRUP
     Icon: EFST_STRUP
     DurationLookup: TK_RUN
     DurationLookup: TK_RUN
@@ -1973,6 +2058,7 @@ Body:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
       RequireWeapon: true
       RequireWeapon: true
+      RemoveOnHermode: true
   - Status: Spirit
   - Status: Spirit
     Icon: EFST_SOULLINK
     Icon: EFST_SOULLINK
     DurationLookup: SL_HIGH
     DurationLookup: SL_HIGH
@@ -1984,6 +2070,7 @@ Body:
       NoClearance: true
       NoClearance: true
       NoSave: true
       NoSave: true
       NoBanishingBuster: true
       NoBanishingBuster: true
+      RemoveOnHermode: true
     Fail:
     Fail:
       Soulgolem: true
       Soulgolem: true
       Soulshadow: true
       Soulshadow: true
@@ -2101,7 +2188,6 @@ Body:
     Flags:
     Flags:
       NoRemoveOnDead: true
       NoRemoveOnDead: true
       NoClearbuff: true
       NoClearbuff: true
-      NoDispell: true
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoClearance: true
       NoClearance: true
   - Status: Incmhprate
   - Status: Incmhprate
@@ -2337,6 +2423,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Assumptio: true
       Assumptio: true
   - Status: Swoo
   - Status: Swoo
@@ -2434,6 +2521,7 @@ Body:
       NoClearance: true
       NoClearance: true
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoDispell: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Bunsinjyutsu
   - Status: Bunsinjyutsu
     Icon: EFST_NJ_BUNSINJYUTSU
     Icon: EFST_NJ_BUNSINJYUTSU
     DurationLookup: NJ_BUNSINJYUTSU
     DurationLookup: NJ_BUNSINJYUTSU
@@ -2444,6 +2532,7 @@ Body:
     Flags:
     Flags:
       NoSave: true
       NoSave: true
       NoClearance: true
       NoClearance: true
+      RemoveOnHermode: true
   - Status: Kaensin
   - Status: Kaensin
     Flags:
     Flags:
       NoWarning: true
       NoWarning: true
@@ -2558,6 +2647,7 @@ Body:
       SendVal1: true
       SendVal1: true
       OverlapIgnoreLevel: true
       OverlapIgnoreLevel: true
       RemoveOnUnequipWeapon: true
       RemoveOnUnequipWeapon: true
+      RemoveOnHermode: true
     EndOnStart:
     EndOnStart:
       Enchantarms: true
       Enchantarms: true
       Aspersio: true
       Aspersio: true
@@ -6023,6 +6113,7 @@ Body:
       RemoveOnChangeMap: true
       RemoveOnChangeMap: true
       NoBanishingBuster: true
       NoBanishingBuster: true
       NoDispell: true
       NoDispell: true
+      RemoveOnHermode: true
   - Status: Extremityfist2
   - Status: Extremityfist2
     Icon: EFST_EXTREMITYFIST
     Icon: EFST_EXTREMITYFIST
     DurationLookup: MO_EXTREMITYFIST
     DurationLookup: MO_EXTREMITYFIST
@@ -6669,6 +6760,7 @@ Body:
     Flags:
     Flags:
       NoRemoveOnDead: true
       NoRemoveOnDead: true
       NoClearbuff: true
       NoClearbuff: true
+      RemoveOnHermode: true
   - Status: Geffen_Magic2
   - Status: Geffen_Magic2
     Icon: EFST_GEFFEN_MAGIC2
     Icon: EFST_GEFFEN_MAGIC2
     CalcFlags:
     CalcFlags:
@@ -8438,3 +8530,216 @@ Body:
       NoClearance: true
       NoClearance: true
   - Status: WeaponBreaker
   - Status: WeaponBreaker
     DurationLookup: NPC_WEAPONBRAKER
     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
 @reloadstatusdb
 @reloadachievementdb
 @reloadachievementdb
 @reloadattendancedb
 @reloadattendancedb
+@reloadbarterdb
 
 
 Reloads a database or configuration file.
 Reloads a database or configuration file.
 
 
@@ -1427,10 +1428,11 @@ Databases:
 -- itemdb: Item Database
 -- itemdb: Item Database
 -- mobdb: Monster Database
 -- mobdb: Monster Database
 -- questdb: Quest Database
 -- questdb: Quest Database
--- script: NPC Scripts
+-- script: NPC Scripts and Barter Database
 -- skilldb: Skill Database
 -- skilldb: Skill Database
 -- achievementdb: Achievement Database
 -- achievementdb: Achievement Database
 -- attendancedb: Attendance Database
 -- attendancedb: Attendance Database
+-- barterdb: Barter Database
 
 
 Configuration files:
 Configuration files:
 -- atcommand: Atcommand Settings
 -- atcommand: Atcommand Settings
@@ -1450,11 +1452,12 @@ Affected files:
 -- msgconf: atcommands.yml
 -- msgconf: atcommands.yml
 -- pcdb: statpoint.yml, job_exp.yml, skill_tree.yml, attr_fix.yml, job_stats.yml, job_basepoints.yml, level_penalty.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
 -- 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
 -- 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
 -- statusdb: attr_fix.yml, size_fix.yml, refine.yml
 -- achievementdb: achievement_db.yml
 -- achievementdb: achievement_db.yml
 -- attendancedb: attendance.yml
 -- attendancedb: attendance.yml
+-- barterdb: /npc/barters.yml
 
 
 Restriction:
 Restriction:
 	- Used from 'atcommand' or 'useatcmd'. For @reload & @reloadscript
 	- 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 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
 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
 Experience
 ----------
 ----------
 bonus2 bExpAddRace,r,x; 		Increase exp gained by x% against enemies of race r
 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
 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.
 base respawn time, and the second is random variance on top of the base time.
 Both values are given in milliseconds (1000 = 1 second).
 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
 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
 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>
 	<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:
 The following sample will open a preview window for Red Potion:
 
 
 	mes "Did you ever consume a <ITEMLINK>Red Potion<INFO>501</INFO></ITEMLINK>?";
 	mes "Did you ever consume a <ITEMLINK>Red Potion<INFO>501</INFO></ITEMLINK>?";
 	// Or in 2015:
 	// Or in 2015:
 	mes "Did you ever consume a <ITEM>Red Potion<INFO>501</INFO></ITEM>?";
 	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
 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
 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
 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.|
 |5.- Mob / NPC -related commands.|
 ==================================
 ==================================
@@ -9647,9 +9674,13 @@ returns an empty string instead.
 
 
 *instance_id({<instance mode>})
 *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:
 Instance Mode options:
  IM_CHAR:	Attached to character.
  IM_CHAR:	Attached to character.
@@ -9657,14 +9688,27 @@ Instance Mode options:
  IM_GUILD:	Attached to character's guild.
  IM_GUILD:	Attached to character's guild.
  IM_CLAN:	Attached to character's clan.
  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.
 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
 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.
 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>}}}}};
 *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,
 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
 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
 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:
 Examples:
@@ -10987,6 +11031,24 @@ Examples:
 RandomIDArray, RandomValueArray, and RandomParamArray only works if the
 RandomIDArray, RandomValueArray, and RandomParamArray only works if the
 client (and server) supports the Item Random Options feature (PACKETVER >= 20150225).
 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.|
 |14.- Channel commands.|
 ========================
 ========================

+ 2 - 1
doc/status.txt

@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //===== By: ==================================================
 //= rAthena Dev Team
 //= rAthena Dev Team
 //===== Last Updated: ========================================
 //===== Last Updated: ========================================
-//= 20221013
+//= 20221216
 //===== Description: =========================================
 //===== Description: =========================================
 //= Explanation of the status.yml file and structure.
 //= 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.
 	RemoveOnUnequip       - Removed when unequipping any type of equipment.
 	RemoveOnUnequipWeapon - Removed when unequipping a weapon.
 	RemoveOnUnequipWeapon - Removed when unequipping a weapon.
 	RemoveOnUnequipArmor  - Removed when unequipping an armor.
 	RemoveOnUnequipArmor  - Removed when unequipping an armor.
+	RemoveOnHermode       - Removed by CG_HERMODE.
 
 
 	StopAttacking         - Makes the unit stop attacking.
 	StopAttacking         - Makes the unit stop attacking.
 	StopCasting           - Makes the unit stop casting skills.
 	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_rogue` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_soullinker` 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_stargladiator` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_supernovice` 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` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_baby` 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,
   `gender` varchar(10) DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_mid` 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_rogue` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_sage` tinyint(1) unsigned DEFAULT NULL,
   `job_soullinker` 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_stargladiator` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_summoner` tinyint(1) unsigned DEFAULT NULL,
   `job_supernovice` 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` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_upper` tinyint(1) unsigned DEFAULT NULL,
   `class_third_baby` 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,
   `gender` varchar(10) DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_top` tinyint(1) unsigned DEFAULT NULL,
   `location_head_mid` 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;
 				case 3: goto L_Menu; break;
 			}
 			}
 			mes .@n$;
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			mes "Do you wish to exchange your coins?";
 			next;
 			next;
@@ -303,7 +303,7 @@ L_Ring:
 						break;
 						break;
 				}
 				}
 			mes .@n$;
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			mes "Do you wish to exchange your coins?";
 			next;
 			next;
@@ -345,7 +345,7 @@ L_Armor:
 						break;
 						break;
 				}
 				}
 			mes .@n$;
 			mes .@n$;
-			mes "<ITEM>"+getitemname(.@item)+"<INFO>"+.@item+"</INFO></ITEM>";
+			mes mesitemlink( .@item, false );
 			mes "Price is "+.@cost+" coins";
 			mes "Price is "+.@cost+" coins";
 			mes "Do you wish to exchange your coins?";
 			mes "Do you wish to exchange your coins?";
 			next;
 			next;

+ 221 - 132
npc/custom/warper.txt

@@ -127,13 +127,14 @@ function Restrict {
 	Towns:
 	Towns:
 // --------------------------------------------------
 // --------------------------------------------------
 menu	"Prontera",T1, "Alberta",T2, "Aldebaran",T3, "Amatsu",T4, "Ayothaya",T5,
 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);
 T1: Go("prontera",155,183);
 T2: Go("alberta",28,234);
 T2: Go("alberta",28,234);
@@ -152,34 +153,47 @@ T11: Go("einbroch",64,200);
 T12: Restrict("RE");
 T12: Restrict("RE");
 	 Go("dicastes01",198,187);
 	 Go("dicastes01",198,187);
 T13: Go("geffen",119,59);
 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));
 T16: Go("izlude",128,(checkre(3)?146:114));
 T17: Go("jawaii",251,132);
 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);
 	 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);
 	 Go("malangdo",140,114);
-T23: Restrict("RE");
+T25: Restrict("RE");
 	 Go("malaya",231,200);
 	 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);
 	 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:
 	Fields:
@@ -188,13 +202,14 @@ T37: Go("yuno",157,51);
 menu	"Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3,
 menu	"Amatsu Fields",F1, "Ayothaya Fields",F2, "Bifrost Fields", F3,
     	"Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6,
     	"Brasilis Fields",F4, "Comodo Fields",F5, "Dewata Fields",F6,
     	"Eclage Fields",F7, "Einbroch Fields",F8, "El Dicastes Fields",F9,
     	"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;
 F1: setarray @c[2],190,197;
 	Disp("Amatsu Field",1,1); Pick("ama_fild");
 	Disp("Amatsu Field",1,1); Pick("ama_fild");
@@ -221,43 +236,55 @@ F8: Restrict("Pre-RE",2,10);
 F9: Restrict("RE");
 F9: Restrict("RE");
 	setarray @c[2],143,132,143,217;
 	setarray @c[2],143,132,143,217;
 	Disp("El Dicastes Field",1,2); Pick("dic_fild");
 	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;
 	 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);
 	 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;
 	 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");
 	 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;
 	 setarray @c[2],344,371,20,98;
 	 Disp("Lasagna Field",1,2); Pick("lasa_fild");	 
 	 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");
 	 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");
 	 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");
 	 Disp("Lutie Field",1,1); Pick("xmas_fild");
-F17: Restrict("RE");
+F21: Restrict("RE");
 	 setarray @c[2],40,272,207,180;
 	 setarray @c[2],40,272,207,180;
 	 Disp("Malaya Field",1,2); Pick("ma_fild");
 	 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");
 	 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_");
 	 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");
 	 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");
 	 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;
 	 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");
 	 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);
 	 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;
 	 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");
 	 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;
 	 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");
 	 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");
 	 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;
 	 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");
 	 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");
 	 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");
 	 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;
 	 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");
 	 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:
 	Dungeons:
 // --------------------------------------------------
 // --------------------------------------------------
 @d = true;
 @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");
 	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");
 	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");
 	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");
 	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");
 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;
 	setarray @c[2],87,47,262,262;
 	Disp("Brasilis Dungeon",1,2); Pick("bra_dun");
 	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");
 	 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");
 	 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");
 	 Disp("Cursed Abbey",1,3); Pick("abbey");
-D13: Restrict("RE");
+D15: Restrict("RE");
 	 setarray @c[2],285,160,299,29;
 	 setarray @c[2],285,160,299,29;
 	 Disp("Dewata Dungeon",1,2); Pick("dew_dun");
 	 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);
 	 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);
 	 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");
 	 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");
 	 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");
 	 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;
 	 setarray @c[2],24,143,22,171,190,18;
 	 Disp("Lasagna Dungeon",1,3); Pick("lasa_dun");
 	 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");
 	 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;
 	 setarray @c[2],33,230;
 	 Disp("Malangdo Dungeon",1,1); Pick("mal_dun");
 	 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");
 	 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");
 	 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");
 	 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);
 	 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;
 	 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");
 	 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");
 	 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");
 	 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");
 	 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");
 	 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");
 	 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");
 	 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");
 	 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");
 	 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;
 	 setarray @c[2],42,31,48,30,204,78;
 	 Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
 	 Disp("Carpenter's Shop in the Tree:Passage to a Foreign World:Hvergermil's Fountain");
 	 Pick("","um_dun01","um_dun02","yggdrasil01");
 	 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:
 	Castles:

+ 1 - 29
npc/mapflag/nosave.txt

@@ -7,6 +7,7 @@
 //= 1.7 Updated. [Lupus]
 //= 1.7 Updated. [Lupus]
 //= 1.8 Updated. [L0ne_W0lf]
 //= 1.8 Updated. [L0ne_W0lf]
 //= 1.9 Renewal split. [Euphy]
 //= 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_qaru04	mapflag	nosave	SavePoint
 que_qaru05	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
 // Battlegrounds
 //============================================================
 //============================================================
@@ -307,18 +291,6 @@ schg_dun01	mapflag	nosave	SavePoint
 arug_que01	mapflag	nosave	SavePoint
 arug_que01	mapflag	nosave	SavePoint
 arug_dun01	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
 // 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 - Yggdrasil Root Dungeon
 //==================================================
 //==================================================
 nyd_dun01,0,0	monster	Draco	2013,40
 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	Aqua Elemental	2016,20
 nyd_dun01,0,0	monster	Dark Pinguicula	2015,10
 nyd_dun01,0,0	monster	Dark Pinguicula	2015,10
 nyd_dun01,0,0	monster	Rata	2017,2,900000
 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	Mantis	1139,30,60000,30000
 prt_maze03,170,170,70,70	monster	Eclipse	1093,1,1920000,150000
 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,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,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	Shining Plant	1083,1,1800000,900000
 prt_maze03,61,98,10,10	monster	Blue Plant	1079,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]";
 	mes "[Yota Chara]";
 	switch(.@s) {
 	switch(.@s) {
 	case 1:
 	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;
 		break;
 	case 2:
 	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;
 		break;
 	case 3:
 	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;
 		break;
 	case 4:
 	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;
 		break;
 	case 5:
 	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;
 		break;
 	case 6:
 	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;
 		break;
 	}
 	}
 	if (.@s < 4) {
 	if (.@s < 4) {
@@ -2092,7 +2092,7 @@ lasagna,131,245,5	script	The diligent second son	4_CAT_3COLOR,{
 		.@cost = 30;
 		.@cost = 30;
 		.@item_id = 28418 + .@s;
 		.@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;
 	next;
 	if (select( "Exchange", "Cancel" ) == 2) {
 	if (select( "Exchange", "Cancel" ) == 2) {
 		mes "[Yota Chara]";
 		mes "[Yota Chara]";
@@ -2164,7 +2164,7 @@ lasagna,131,250,5	script	The brave third#weapon	4_DR_M_02,{
 	emotion ET_SPARK;
 	emotion ET_SPARK;
 	mes "[Jogi Chara]";
 	mes "[Jogi Chara]";
 	mes "Whoa, a new weapon! New power!";
 	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;
 	next;
 	if (select( "Search", "Cancel" ) == 1) {
 	if (select( "Search", "Cancel" ) == 1) {
 		setarray .@item_data[0],
 		setarray .@item_data[0],
@@ -2193,7 +2193,7 @@ lasagna,131,250,5	script	The brave third#weapon	4_DR_M_02,{
 			else {
 			else {
 				mes "[Jogi Chara]";
 				mes "[Jogi Chara]";
 				mes "Whoa! This is ^3131FF" + getitemname(.@item_data[.@i]) + "^000000!";
 				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;
 				next;
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 					mes "[Jogi Chara]";
 					mes "[Jogi Chara]";
@@ -2253,7 +2253,7 @@ lasagna,140,250,3	script	The skittish fourth#wea	4_DR_F_01,{
 	}
 	}
 	mes "[Dandi Chara]";
 	mes "[Dandi Chara]";
 	mes "Do you mind if I search you to see the items you have with you?";
 	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;
 	next;
 	if (select( "Search", "Cancel" ) == 1) {
 	if (select( "Search", "Cancel" ) == 1) {
 		setarray .@item_data[0],	// keep the order
 		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 {
 			else {
 				mes "[Dandi Chara]";
 				mes "[Dandi Chara]";
 				mes "Whoa, this must be ^3131FF" + getitemname(.@item_data[.@i]) + "^000000!!";
 				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;
 				next;
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 				if (select( "Exchange", "Quit exchanging" ) == 2) {
 					mes "[Dandi Chara]";
 					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!";
 	mes "...I knew this was going to happen again. Worse, this one must require a lot more time to polish!";
 	next;
 	next;
 	mes "[Goma Chara]";
 	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;
 	next;
 	if (select( "Upgrade", "Cancel" ) == 2) {
 	if (select( "Upgrade", "Cancel" ) == 2) {
 		mes "[Goma Chara]";
 		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 2: callsub L_GiveQuest,.@i,12262,12272,"Deep Sea Sword Fish";
 			case 3: callsub L_GiveQuest,.@i,12263,12272,"Deep Sea Strouf";
 			case 3: callsub L_GiveQuest,.@i,12263,12272,"Deep Sea Strouf";
 			case 4: callsub L_GiveQuest,.@i,12264,12272,"Deep Sea Anolian";
 			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 6: callsub L_GiveQuest,.@i,12266,12272,"Deep Sea Kapha";
 		}
 		}
 	case 3: // General Culvert Weekly Service
 	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
 har_in01	mapflag	nobranch
 rockmi2	mapflag	nobranch
 rockmi2	mapflag	nobranch
 
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nobranch
+1@md_pay	mapflag	nobranch
+
 //============================================================
 //============================================================
 // Lasagna
 // Lasagna
 //============================================================
 //============================================================
@@ -391,3 +397,8 @@ que_thr	mapflag	nobranch
 // Sunken Tower
 // Sunken Tower
 //============================================================
 //============================================================
 1@ch_u	mapflag	nobranch
 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
 rockmi1	mapflag	nomemo
 rockmi2	mapflag	nomemo
 rockmi2	mapflag	nomemo
 
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nomemo
+1@md_pay	mapflag	nomemo
+
 //============================================================
 //============================================================
 // Lasagna
 // Lasagna
 //============================================================
 //============================================================
@@ -486,3 +492,8 @@ wolfvill	mapflag	nomemo
 // Illusion of Twins
 // Illusion of Twins
 //============================================================
 //============================================================
 ant_d02_i	mapflag	nomemo
 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
 conch_in	mapflag	nopenalty
 
 
 wolfvill	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
 que_avan01	mapflag	pvp	off
 dali	mapflag	pvp	off
 dali	mapflag	pvp	off
 wolfvill	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: ==========================================
 //===== Changelogs: ==========================================
 //= 1.0 Renewal split. [Euphy]
 //= 1.0 Renewal split. [Euphy]
 //= 1.1 Added GVG TE Guild Dungeons. [Capuche]
 //= 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_aldecas4	mapflag	nosave	SavePoint
 te_aldecas5	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
 // Somatology Laboratory
 //============================================================
 //============================================================
 que_lhz	mapflag	nosave	SavePoint
 que_lhz	mapflag	nosave	SavePoint
-1@lhz	mapflag	nosave	SavePoint
 
 
 //============================================================
 //============================================================
 // Port Malaya
 // Port Malaya
@@ -95,240 +79,22 @@ ma_zif07	mapflag	nosave	SavePoint
 ma_zif08	mapflag	nosave	SavePoint
 ma_zif08	mapflag	nosave	SavePoint
 ma_zif09	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
 // Inside Eclage
 //============================================================
 //============================================================
 que_avan01	mapflag	nosave	SavePoint
 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
 // Episode 15 - Phantasmagorica
 //============================================================
 //============================================================
-1@lab	mapflag	nosave	SavePoint
-1@uns	mapflag	nosave	SavePoint
 un_myst	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
 // Episode 16.1 - Banquet of Heroes
 //============================================================
 //============================================================
 que_swat	mapflag	nosave	SavePoint
 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
 // Rockridge
 //============================================================
 //============================================================
 rockmi2	mapflag	nosave	SavePoint
 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
 har_in01	mapflag	noteleport
 rockmi2	mapflag	noteleport
 rockmi2	mapflag	noteleport
 
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	noteleport
+1@md_pay	mapflag	noteleport
+
 //============================================================
 //============================================================
 // Lasagna
 // Lasagna
 //============================================================
 //============================================================
@@ -446,3 +452,9 @@ que_thr	mapflag	noteleport
 1@ch_u	mapflag	noteleport
 1@ch_u	mapflag	noteleport
 1@ch_u	mapflag	monster_noteleport
 1@ch_u	mapflag	monster_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
 rockmi1	mapflag	nowarpto
 rockmi2	mapflag	nowarpto
 rockmi2	mapflag	nowarpto
 
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	nowarpto
+1@md_pay	mapflag	nowarpto
+
 //============================================================
 //============================================================
 // Lasagna
 // Lasagna
 //============================================================
 //============================================================

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

@@ -122,6 +122,12 @@
 1@slw	mapflag	partylock
 1@slw	mapflag	partylock
 1@swat	mapflag	partylock
 1@swat	mapflag	partylock
 
 
+//============================================================
+// Memorial day
+//============================================================
+1@md_gef	mapflag	partylock
+1@md_pay	mapflag	partylock
+
 //============================================================
 //============================================================
 // Chicken Mode Nightmare Glastheim
 // 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@slw	mapflag	restricted	6
 1@swat	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
 // 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;
 	next;
 	mes "[Guild Clerk]";
 	mes "[Guild Clerk]";
 	mes "As part of that,";
 	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.";
 	mes "from ^0000ff18:00 to 23:59^000000 from ^0000ffMonday to Saturday^000000.";
 	next;
 	next;
 	mes "[Guild Clerk]";
 	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,{
 prt_in,211,173,3	script	Slot Move Card Sales#slo	4_F_01,{
 	mes "[Salesman]";
 	mes "[Salesman]";
 	mes "Howdy.";
 	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.";
 	mes "You can ^4d4dffchange the slot position of a character using the card^000000.";
 	next;
 	next;
 	mes "[Salesman]";
 	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/quests_17_1.yml
   - Path: npc/re/merchants/barters/refine.yml
   - Path: npc/re/merchants/barters/refine.yml
   - Path: npc/re/merchants/barters/enchantgrade.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

Some files were not shown because too many files changed in this diff