Ver código fonte

Merge branch 'master' into feature/store_taxes

Aleos 4 anos atrás
pai
commit
725ae2e899
100 arquivos alterados com 4616 adições e 1750 exclusões
  1. 1 0
      .gitattributes
  2. 8 0
      .github/CONTRIBUTING.md
  3. 10 1
      .github/ISSUE_TEMPLATE/bug_report.md
  4. 35 0
      .github/ISSUE_TEMPLATE/feature_request.md
  5. 5 0
      .gitignore
  6. 11 0
      CMakeLists.txt
  7. 1 1
      README.md
  8. 3 5
      appveyor.yml
  9. 0 73
      conf/atcommand_athena.conf
  10. 970 0
      conf/atcommands.yml
  11. 4 0
      conf/battle/battleground.conf
  12. 17 3
      conf/battle/client.conf
  13. 32 0
      conf/battle/drops.conf
  14. 4 0
      conf/battle/feature.conf
  15. 11 0
      conf/battle/gm.conf
  16. 1 0
      conf/battle/guild.conf
  17. 45 1
      conf/battle/homunc.conf
  18. 5 7
      conf/battle/items.conf
  19. 3 0
      conf/battle/misc.conf
  20. 30 0
      conf/battle/monster.conf
  21. 26 17
      conf/battle/player.conf
  22. 33 6
      conf/battle/skill.conf
  23. 11 1
      conf/char_athena.conf
  24. 0 328
      conf/help.txt
  25. 33 0
      conf/import-tmpl/atcommands.yml
  26. 33 11
      conf/import-tmpl/inter_server.yml
  27. 0 2
      conf/inter_athena.conf
  28. 15 11
      conf/inter_server.yml
  29. 6 1
      conf/login_athena.conf
  30. 0 2
      conf/map_athena.conf
  31. 105 0
      conf/maps_athena.conf
  32. 48 20
      conf/msg_conf/map_msg.conf
  33. 12 12
      conf/msg_conf/map_msg_chn.conf
  34. 12 12
      conf/msg_conf/map_msg_frn.conf
  35. 4 4
      conf/msg_conf/map_msg_grm.conf
  36. 15 18
      conf/msg_conf/map_msg_idn.conf
  37. 18 18
      conf/msg_conf/map_msg_por.conf
  38. 12 12
      conf/msg_conf/map_msg_rus.conf
  39. 21 17
      conf/msg_conf/map_msg_spn.conf
  40. 11 11
      conf/msg_conf/map_msg_tha.conf
  41. 0 227
      db/abra_db.txt
  42. 326 0
      db/abra_db.yml
  43. 20 56
      db/achievement_db.yml
  44. 3 4
      db/achievement_level_db.yml
  45. 31 0
      db/attendance.yml
  46. 211 0
      db/battleground_db.yml
  47. 0 194
      db/const.txt
  48. 1 1
      db/guild_skill_tree.yml
  49. 10 10
      db/homun_skill_tree.txt
  50. 0 17
      db/import-tmpl/abra_db.txt
  51. 33 0
      db/import-tmpl/abra_db.yml
  52. 20 56
      db/import-tmpl/achievement_db.yml
  53. 4 5
      db/import-tmpl/achievement_level_db.yml
  54. 31 0
      db/import-tmpl/attendance.yml
  55. 59 0
      db/import-tmpl/battleground_db.yml
  56. 1 1
      db/import-tmpl/guild_skill_tree.yml
  57. 0 6
      db/import-tmpl/instance_db.txt
  58. 40 0
      db/import-tmpl/instance_db.yml
  59. 0 12
      db/import-tmpl/item_avail.txt
  60. 0 10
      db/import-tmpl/item_buyingstore.txt
  61. 0 68
      db/import-tmpl/item_db.txt
  62. 544 0
      db/import-tmpl/item_db.yml
  63. 0 8
      db/import-tmpl/item_delay.txt
  64. 0 17
      db/import-tmpl/item_flag.txt
  65. 0 13
      db/import-tmpl/item_nouse.txt
  66. 0 4
      db/import-tmpl/item_randomopt_db.txt
  67. 32 0
      db/import-tmpl/item_randomopt_db.yml
  68. 0 1
      db/import-tmpl/item_randomopt_group.txt
  69. 46 0
      db/import-tmpl/item_randomopt_group.yml
  70. 0 19
      db/import-tmpl/item_stack.txt
  71. 0 22
      db/import-tmpl/item_trade.txt
  72. 0 0
      db/import-tmpl/job_exp.txt
  73. 0 14
      db/import-tmpl/level_penalty.txt
  74. 33 0
      db/import-tmpl/level_penalty.yml
  75. 0 8
      db/import-tmpl/magicmushroom_db.txt
  76. 30 0
      db/import-tmpl/magicmushroom_db.yml
  77. 0 16
      db/import-tmpl/mob_avail.txt
  78. 123 0
      db/import-tmpl/mob_avail.yml
  79. 0 48
      db/import-tmpl/mob_db.txt
  80. 1143 0
      db/import-tmpl/mob_db.yml
  81. 0 17
      db/import-tmpl/mob_drop.txt
  82. 0 5
      db/import-tmpl/mob_race2_db.txt
  83. 1 1
      db/import-tmpl/pet_db.yml
  84. 0 7
      db/import-tmpl/quest_db.txt
  85. 56 0
      db/import-tmpl/quest_db.yml
  86. 1 1
      db/import-tmpl/refine_db.yml
  87. 0 7
      db/import-tmpl/size_fix.txt
  88. 33 0
      db/import-tmpl/size_fix.yml
  89. 0 18
      db/import-tmpl/skill_cast_db.txt
  90. 0 16
      db/import-tmpl/skill_castnodex_db.txt
  91. 0 52
      db/import-tmpl/skill_copyable_db.txt
  92. 9 9
      db/import-tmpl/skill_damage_db.txt
  93. 0 79
      db/import-tmpl/skill_db.txt
  94. 132 0
      db/import-tmpl/skill_db.yml
  95. 0 8
      db/import-tmpl/skill_improvise_db.txt
  96. 0 28
      db/import-tmpl/skill_nonearnpc_db.txt
  97. 0 33
      db/import-tmpl/skill_require_db.txt
  98. 0 29
      db/import-tmpl/skill_unit_db.txt
  99. 0 9
      db/import-tmpl/spellbook_db.txt
  100. 32 0
      db/import-tmpl/spellbook_db.yml

+ 1 - 0
.gitattributes

@@ -12,3 +12,4 @@ configure.in text eol=lf
 Makefile text eol=lf
 Makefile.in text eol=lf
 *.sh text eol=lf
+*.sql text eol=lf

+ 8 - 0
.github/CONTRIBUTING.md

@@ -7,6 +7,7 @@ Table of Contents
   * [Reporting Bugs](#reporting-bugs)
   * [Suggesting Enhancements](#suggesting-enhancements)
   * [Issue Labels](#issue-labels)
+  * [Local Development Environment](#local-development-environment)
   * [Become a Team Member](#become-a-team-member)
 
 Reporting Bugs
@@ -161,6 +162,13 @@ For the most part you as a user will have no reason to worry about the **Milesto
 [search-rathena-label-typemaintenance]: https://github.com/rathena/rathena/issues?q=is%3Aissue+is%3Aopen+label%3Atype%3Amaintenance
 [search-rathena-label-typequestion]: https://github.com/rathena/rathena/issues?q=is%3Aissue+is%3Aopen+label%3Atype%3Aquestion
 
+Local Development Environment
+-----------------------------
+
+Developers can get up and running quickly with a Dockerized development environment that installs all dependencies needed to run and develop on rAthena.
+See tools/docker/README.md for details
+
+
 Become a Team Member
 --------------------
 

+ 10 - 1
.github/ISSUE_TEMPLATE.md → .github/ISSUE_TEMPLATE/bug_report.md

@@ -1,3 +1,12 @@
+---
+name: Bug report
+about: Create a report to help us improve
+title: ''
+labels: type:bug
+assignees: ''
+
+---
+
 <!-- NOTE: Anything within these brackets will be hidden on the preview of the Issue. -->
 
 * **rAthena Hash**: 
@@ -21,7 +30,7 @@ How to get your GitHub Hash:
   * Result: <!-- Describe the issue that you experienced in detail. -->
   * Expected Result: <!-- Describe what you would expect to happen in detail. -->
   * How to Reproduce: <!-- If you have not stated in the description of the result already, please give us a short guide how we can reproduce your issue. -->
-  * Official Information:<!-- If possible, provide information from official servers (kRO or other sources) which prove that the result is wrong. Please take into account that iRO (especially iRO Wiki) is not always the same as kRO. -->
+  * Official Information: <!-- If possible, provide information from official servers (kRO or other sources) which prove that the result is wrong. Please take into account that iRO (especially iRO Wiki) is not always the same as kRO. -->
   <!-- * _NOTE: Make sure you quote ``` `@atcommands` ``` just like this so that you do not tag uninvolved GitHub users!_ -->
 
 * **Modifications that may affect results**: 

+ 35 - 0
.github/ISSUE_TEMPLATE/feature_request.md

@@ -0,0 +1,35 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+title: ''
+labels: type:enhancement
+assignees: ''
+
+---
+
+<!-- NOTE: Anything within these brackets will be hidden on the preview of the Feature Request. -->
+
+**Is your request related to a missing feature?**
+
+<!--
+  Provide a clear and concise description of what the feature pertains to.
+-->
+
+**Describe the solution you'd like**
+
+<!--
+  Provide a clear and concise description of what you want to happen.
+-->
+
+**Describe alternatives you've considered**
+
+<!--
+  Let us know about other solutions you've tried or researched.
+-->
+
+**Additional context**
+
+<!--
+  Is there anything else you can add about the proposal?
+  You might want to link to related issues here if you haven't already.
+-->

+ 5 - 0
.gitignore

@@ -2,6 +2,7 @@
 /autom4te.cache/requests
 /autom4te.cache/traces.0
 #Global
+.vscode
 .Apple*
 .DS_Store
 .clang_complete
@@ -41,6 +42,8 @@ Thumbs.db
 /map-server
 /mapcache
 /nbproject
+/yaml2sql
+/yamlupgrade
 
 # /3rdparty/libconfig/
 /3rdparty/libconfig/Makefile
@@ -119,6 +122,8 @@ Thumbs.db
 /mapserv.bat
 /runserver.bat
 /serv.bat
+/yaml2sql.bat
+/yamlupgrade.bat
 
 # dlls
 /libmysql.dll

+ 11 - 0
CMakeLists.txt

@@ -56,6 +56,17 @@ set(CMAKE_CXX_CREATE_SHARED_LIBRARY)
 set(CMAKE_DEBUG_POSTFIX "d")
 set(CMAKE_RELEASE_POSTFIX "r")
 
+# Set a default build type if none was specified
+set(default_build_type "Release")
+if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
+  message(STATUS "Setting build type to '${default_build_type}' as none was specified.")
+  set(CMAKE_BUILD_TYPE "${default_build_type}" CACHE
+      STRING "Choose the type of build." FORCE)
+  # Set the possible values of build type for cmake-gui
+  set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS
+    "Debug" "Release" "MinSizeRel" "RelWithDebInfo")
+endif()
+
 #
 # Prevent building in the source directory by default
 #

+ 1 - 1
README.md

@@ -1,4 +1,4 @@
-<img src="branding/logo.png" align="right" height="90" />
+<img src="doc/logo.png" align="right" height="90" />
 
 # rAthena
 [![Build Status](https://travis-ci.org/rathena/rathena.png?branch=master)](https://travis-ci.org/rathena/rathena) [![Build status](https://ci.appveyor.com/api/projects/status/8574b8nlwd57loda/branch/master?svg=true)](https://ci.appveyor.com/project/rAthenaAPI/rathena/branch/master) [![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)

+ 3 - 5
appveyor.yml

@@ -1,4 +1,4 @@
-image: Visual Studio 2013
+image: Visual Studio 2015
 # This is the default location, but we put it here for safety reasons, since we use it in our test script
 clone_folder: c:\projects\rathena
 # We do not need the git history for our integration tests
@@ -8,10 +8,8 @@ pull_requests:
   do_not_increment_build_number: true
 environment:
   matrix:
-  - VisualStudioVersion: 14.0
-    Defines: "\"BUILDBOT\""
-  - VisualStudioVersion: 14.0
-    Defines: "\"BUILDBOT;PRERE\""
+  - Defines: "\"BUILDBOT\""
+  - Defines: "\"BUILDBOT;PRERE\""
 platform:
   - Win32
   - x64

+ 0 - 73
conf/atcommand_athena.conf

@@ -1,73 +0,0 @@
-/* Atcommands and charcommands configuration file */
-
-/* The symbol that will be used to recognize commands.
-You can set any one character except:
- - control-characters (0x00-0x1f),
- - '%' (party chat symbol)
- - '$' (guild chat symbol)
- - '/' (client commands symbol)
-atcommand_symbol represents @commands used locally.
-charcommand_symbol represents #commands used on other players.
-*/
-
-atcommand_symbol : "@"
-charcommand_symbol: "#"
-
-/* Command aliases
-You can define aliases for any command. Aliases work just like original
-command.
-Format is
-	<commandname>: ["<alias>", ...]
-*/
-
-aliases: {
-	mobinfo: ["monsterinfo", "mi"]
-	iteminfo: ["ii"]
-	time: ["date", "serverdate", "servertime"]
-	autotrade: ["at"]
-	help: ["h"]
-	jumpto: ["goto", "warpto"]
-	mount: ["mountpeco"]
-	who: ["whois"]
-	npctalk: ["npctalkc"]
-	gvgon: ["gpvpon"]
-	gvgoff: ["gpvpoff"]
-	jobchange: ["job"]
-	load: ["return"]
-	warp: ["rura", "mapmove"]
-	dye: ["ccolor"]
-	hairstyle: ["hstyle"]
-	haircolor: ["hcolor"]
-	monster: ["spawn"]
-	blvl: ["lvup", "blevel", "baselvl", "baselvup", "baselevel", "baselvlup"]
-	jlvl: ["jlevel", "joblvl", "joblvup", "joblevel", "joblvlup"]
-	glvl: ["glevel", "guildlvl", "guildlvup", "guildlevel", "guildlvlup"]
-	resetstat: ["streset"]
-	resetskill: ["skreset"]
-	allskill: ["allskills", "skillall", "skillsall"]
-	allstats: ["allstat", "statall", "statsall"]
-	ban: ["banish"]
-	unban: ["unbanish"]
-	unjail: ["discharge"]
-	homlevel: ["hlvl", "hlevel", "homlvl", "homlvup"]
-	homevolution: ["homevolve"]
-	mutearea: ["stfu"]
-	monsterignore: ["battleignore"]
-	raise: ["revive"]
-	kill: ["die"]
-	guildstorage: ["gstorage"]
-	accinfo: ["accountinfo"]
-	itemreset: ["clearinventory"]
-	channel: ["main"]
-	autoloottype: ["aloottype"]
-	cloneequip: ["eqclone"]
-	clonestat: ["stclone"]
-	reloadnpcfile: ["reloadnpc"]
-	changedress: ["nocosplay"]
-	camerainfo: ["viewpointvalue", "setcamera"]
-}
-
-/* Commands help file */
-help: {
-	@include "conf/help.txt"
-}

+ 970 - 0
conf/atcommands.yml

@@ -0,0 +1,970 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2017 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/>.
+#
+###########################################################################
+# Atcommand Database
+###########################################################################
+#
+# Atcommand Settings
+#
+###########################################################################
+# - Command                  Command name.
+#   Aliases:                 Aliases for the command. (Optional)
+#     - <AliasName>
+#   Help                     Help message for the command. (Optional)
+###########################################################################
+
+Header:
+  Type: ATCOMMAND_DB
+  Version: 1
+
+Body:
+  - Command: help
+    Aliases:
+      - h
+    Help: |
+      Params: <command>
+      Shows help for specified command.
+  - Command: noask
+    Help: |
+      Auto rejects deals/invites.
+  - Command: gmotd
+    Help: |
+      Broadcasts the Message of The Day to all players.
+  - Command: me
+    Help: |
+      Params: <message>
+      Displays normal text as a message in this format: *name message* (like /me in mIRC).
+  - Command: fakename
+    Help: |
+      Params: <name>
+      Changes your name to your choice temporarily.
+  - Command: npctalk
+    Aliases:
+      - npctalkc
+    Help: |
+      Params: <NPC name> <message>
+      Forces a NPC to display a message in normal chat.
+  - Command: broadcast
+    Help: |
+      Params: <message>
+      Broadcasts a message with your name (in yellow).
+  - Command: kami
+    Help: |
+      Params: <message>
+      Broadcasts a message without your name (in yellow).
+  - Command: kamib
+    Help: |
+      Params: <message>
+      Broadcasts a message without your name (in blue).
+  - Command: localbroadcast
+    Help: |
+      Params: <message>
+      Broadcasts a message with your name (in yellow) only on your map.
+  - Command: commands
+    Help: |
+      Displays a list of commands that you can use.
+  - Command: rates
+    Help: |
+      Displays the server's current rates.
+  - Command: uptime
+    Help: |
+      Displays how long the server has been online.
+  - Command: showdelay
+    Help: |
+      Shows/hides the "There is a delay after this skill" message.
+  - Command: exp
+    Help: |
+      Displays current levels and % progress.
+  - Command: mobinfo
+    Aliases:
+      - monsterinfo
+      - mi
+    Help: |
+      Params: <monster name|ID>
+      Shows monster info (stats, exp, drops etc).
+  - Command: iteminfo
+    Aliases:
+      - ii
+    Help: |
+      Params: <item name|ID>
+      Shows item info (type, price etc).
+  - Command: whodrops
+    Help: |
+      Params: <item name|ID>
+      Shows who drops an item (monster with highest drop rates).
+  - Command: version
+    Help: |
+      Displays SVN version of the server.
+  - Command: email
+    Help: |
+      Params: <current email> <new email>
+      Changes your account e-mail address.
+  - Command: where
+    Help: |
+      Params: <char name>
+      Tells you the location of a character.
+  - Command: time
+    Aliases:
+      - date
+      - serverdate
+      - servertime
+    Help: |
+      Shows the date and time of the server.
+  - Command: showexp
+    Help: |
+      Displays/hides experience gained.
+  - Command: showzeny
+    Help: |
+      Displays/hides Zeny gained.
+  - Command: mobsearch
+    Help: |
+      Params: <monster name|ID>
+      Shows the location of a certain mob on the current map.
+  - Command: who
+    Aliases:
+      - whois
+    Help: |
+      Params: [<name>]
+      Shows a list of online players and their party and guild.
+  - Command: who2
+    Help: |
+      Params: [<name>]
+      Shows a list of online players and their job.
+  - Command: who3
+    Help: |
+      Params: [<name>]
+      Shows a list of online players and their location.
+  - Command: whomap
+    Help: |
+      @whomap/@whomap2/@whomap3 [map] - like @who/@who2/@who3 but only for specified map.
+  - Command: whogm
+    Help: |
+      Params: [match_text] - Like @who+@who2+who3, but only for GM.
+  - Command: guildspy
+    Help: |
+      Params: <guild name|id> - You will receive all messages of the guild channel (Chat logging must be enabled)
+  - Command: partyspy
+    Help: |
+      @partyspy <party name|id> - You will receive all messages of the party channel (Chat logging must be enabled)
+  - Command: mapinfo
+    Help: |
+      Params: [<0-3> [map]] - Give information about a map (general info +: 0: no more, 1: players, 2: NPC, 3: chatrooms).
+  - Command: go
+    Help: |
+      Params: <city name|number>
+      Warps you to a city.
+      -3: (Memo point 2)  14: louyang         31: mora
+      -2: (Memo point 1)  15: start point     32: dewata
+      -1: (Memo point 0)  16: prison/jail     33: malangdo island
+       0: prontera              17: jawaii             34: malaya port
+       1: morocc                18: ayothaya       35: eclage
+       2: geffen                  19: einbroch       36: lasagna
+       3: payon                  20: lighthalzen
+       4: alberta                 21: einbech
+       5: izlude                   22: hugel
+       6: aldebaran           23: rachel
+       7: xmas (lutie)        24: veins
+       8: comodo               25: moscovia
+       9: yuno                     26: midgard camp
+      10: amatsu               27: manuk
+      11: gonryun              28: splendide
+      12: umbala               29: brasilis
+      13: niflheim              30: el dicastes
+  - Command: jumpto
+    Aliases:
+      - goto
+      - warpto
+    Help: |
+      Params: <char name>
+      Warps you to selected character.
+  - Command: follow
+    Help: |
+      Params: <char name>
+      Follow a player.
+  - Command: mount
+    Aliases:
+      - mountpeco
+    Help: |
+      Give/remove a job-based mount (class is required, but not the skill).
+  - Command: mount2
+    Help: |
+      Give/remove a cash mount.
+  - Command: disguise
+    Help: |
+      Params: <monster name|ID>
+      Change your appearence to other players to a mob.
+  - Command: undisguise
+    Help: |
+      Restore your normal appearance.
+  - Command: disguiseguild
+    Help: |
+      Disguises all online characters of a guild.
+  - Command: undisguiseguild
+    Help: |
+      Restore the normal appearance of all characters of a guild.
+  - Command: model
+    Help: |
+      Params:  <hair ID: 0-17> <hair color: 0-8> <clothes color: 0-4> - Changes your characters appearence.
+  - Command: size
+    Help: |
+      Params:  <0-2> Changes your size (0-Normal 1-Small 2-Large)
+  - Command: sizeall
+    Help: |
+      Changes the size of all players.
+  - Command: sizeguild
+    Help: |
+      Changes the size of all online characters of a guild.
+  - Command: hide
+    Help: |
+      Makes you character invisible (GM invisibility). Type again to become visible.
+  - Command: save
+    Help: |
+      Sets respawn point to current spot.
+  - Command: load
+    Aliases:
+      - return
+    Help: |
+      Warps you to your save point.
+  - Command: warp
+    Aliases:
+      - rura
+      - mapmove
+    Help: |
+      Params: <mapname> [<x> <y>]
+      Warps you to the selected map and position.
+  - Command: jump
+    Help: |
+      Params: [<x> [<y>]]
+      Randomly warps you like a flywing.
+  - Command: jobchange
+    Aliases:
+      - job
+    Help: |
+      Params: <job name|ID>
+      Changes your job.
+      ----- Novice / 1st Class -----
+         0 Novice              1 Swordman            2 Magician            3 Archer
+         4 Acolyte              5 Merchant               6 Thief
+      ----- 2nd Class -----
+         7 Knight               8 Priest                     9 Wizard               10 Blacksmith
+        11 Hunter           12 Assassin            14 Crusader          15 Monk
+        16 Sage              17 Rogue                 18 Alchemist         19 Bard
+        20 Dancer
+      ----- High Novice / High 1st Class -----
+      4001 Novice High     4002 Swordman High    4003 Magician High    4004 Archer High
+      4005 Acolyte High     4006 Merchant High       4007 Thief High
+      ----- Transcendent 2nd Class -----
+      4008 Lord Knight      4009 High Priest             4010 High Wizard      4011 Whitesmith
+      4012 Sniper               4013 Assassin Cross   4015 Paladin              4016 Champion
+      4017 Professor         4018 Stalker                    4019 Creator               4020 Clown
+      4021 Gypsy
+      ----- 3rd Class (Regular) -----
+      4054 Rune Knight    4055 Warlock                 4056 Ranger            4057 Arch Bishop
+      4058 Mechanic         4059 Guillotine Cross  4066 Royal Guard   4067 Sorcerer
+      4068 Minstrel            4069 Wanderer              4070 Sura                 4071 Genetic
+      4072 Shadow Chaser
+      ----- 3rd Class (Transcendent) -----
+      4060 Rune Knight    4061 Warlock                 4062 Ranger             4063 Arch Bishop
+      4064 Mechanic         4065 Guillotine Cross  4073 Royal Guard    4074 Sorcerer
+      4075 Minstrel            4076 Wanderer              4077 Sura                  4078 Genetic
+      4079 Shadow Chaser
+      ----- Expanded Class -----
+           23 Super Novice      24 Gunslinger              25 Ninja                 4045 Super Baby
+      4046 Taekwon           4047 Star Gladiator     4049 Soul Linker            4050 Gangsi
+      4051 Death Knight    4052 Dark Collector    4190 Ex. Super Novice  4191 Ex. Super Baby
+      4211 Kagerou            4212 Oboro             4215 Rebellion        4218 Summoner
+      4239 Star Emperor   4240 Soul Reaper
+      ----- Baby Novice And Baby 1st Class -----
+      4023 Baby Novice      4024 Baby Swordman    4025 Baby Magician   4026 Baby Archer
+      4027 Baby Acolyte      4028 Baby Merchant       4029 Baby Thief
+      ---- Baby 2nd Class ----
+      4030 Baby Knight     4031 Baby Priest         4032 Baby Wizard         4033 Baby Blacksmith
+      4034 Baby Hunter    4035 Baby Assassin   4037 Baby Crusader    4038 Baby Monk
+      4039 Baby Sage       4040 Baby Rogue        4041 Baby Alchemist   4042 Baby Bard
+      4043 Baby Dancer
+      ---- Baby 3rd Class ----
+      4096 Baby Rune Knight  4097 Baby Warlock     4098 Baby Ranger           4099 Baby Arch Bishop
+      4100 Baby Mechanic       4101 Baby Glt. Cross  4102 Baby Royal Guard  4103 Baby Sorcerer
+      4104 Baby Minstrel          4105 Baby Wanderer   4106 Baby Sura             4107 Baby Genetic
+      4108 Baby Shadow Chaser
+      ---- Expanded Baby Class ----
+      4220 Baby Summoner        4222 Baby Ninja        4223 Baby Kagero         4224 Baby Oboro
+      4225 Baby Taekwon       4226 Baby Star Glad    4227 Baby Soul Linker    4228 Baby Gunslinger
+      4229 Baby Rebellion   4241 Baby Star Emperor    4242 Baby Soul Reaper
+      ---- Modes And Others ----
+       22 Wedding            26 Christmas          27 Summer           28 Hanbok
+       29 Oktoberfest       30 Summer 2
+       4048 Star Gladiator (Union)	    4238 Baby Star Glad (Union)
+  - Command: option
+    Help: |
+      Params: <param1> <param2>(stackable) <param3>(stackable)
+      Adds different visual effects on or around your character.
+       <param1>       <param2>        <param3>
+      01: Stone      01: Sight       01: Sight          512: Cart Lv. 4
+      02: Frozen     02: Curse       02: Hiding        1024: Cart Lv. 5
+      03: Stun       04: Silence     04: Cloaking      2048: Orc Head
+      04: Sleep      08: Signum      08: Cart Lv. 1    4096: Wedding
+      06: Petrify    16: Blind       16: Falcon        8192: Ruwach
+      07: Burning    32: Angelus     32: Riding       16384: Chasewalk
+      08: Imprison   64: Bleeding    64: Invisible
+      16: (Nothing) 128: D. Poison  128: Cart Lv. 2
+      32: (Nothing) 256: Fear       256: Cart Lv. 3
+  - Command: heal
+    Help: |
+      Params: [<HP> <SP>]
+      Heals the desired amount of HP and SP. No value specified will do a full heal.
+  - Command: dye
+    Aliases:
+      - ccolor
+    Help: |
+      Params: <clothes palette no.>
+      Changes your characters clothes color.
+  - Command: hairstyle
+    Aliases:
+      - hstyle
+    Help: |
+      Params: <hairstyle no.>
+      Changes your hair style.
+  - Command: haircolor
+    Aliases:
+      - hcolor
+    Help: |
+      Params <hair palette no.>
+      Changes your hair color.
+  - Command: speed
+    Help: |
+      Params: <1-1000>
+      Changes you walking speed. 1 being the fastest and 1000 the slowest. Default is 150.
+  - Command: effect
+    Help: |
+      Params: <effect id> [<flag>]
+      Give an effect to your character.
+  - Command: dropall
+    Help: |
+      Params: [<item type>]
+      Throws all your possession on the ground. No type specified will drop all items.
+  - Command: storeall
+    Help: |
+      Puts all your possessions in storage.
+  - Command: killable
+    Help: |
+      Make your character killable.
+  - Command: memo
+    Help: |
+      Params: [memo position]
+      Set/change a memo location (no position: display memo points).
+  - Command: spiritball
+    Help: |
+      Params: <1-100>
+      Gives you "spirit spheres" like from the skill "Call Spirits".
+  - Command: questskill
+    Help: |
+      Params: <#>
+      Gives you the specified quest skill
+      Novice = 142: First Aid, 143: Act Dead
+      Archer = 147: Create Arrow, 148: Charge Arrow
+      Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk
+      Acolyte = 156: Holy Light
+      Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone
+      Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store
+      Magician = 157: Energy Coat
+      Hunter = 1009: Phantasmic Arrow
+      Bard = 1010: Pang Voice
+      Dancer = 1011: Wink of Charm
+      Knight = 1001: Charge Attack
+      Crusader = 1002: Shrink
+      Priest = 1014: Redemptio
+      Monk = 1015: Ki Translation, 1016: Ki Explosio
+      Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife
+      Rogue = 1005: Close Confine
+      Blacksmith = 1012: Unfair Trick, 1013: Greed
+      Alchemist = 238: Basis of Life
+      Wizard = 1006: Sight Blaster
+      Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)
+  - Command: lostskill
+    Help: |
+      Params: <#>
+      Takes away the specified quest skill from you
+      Novice = 142: First Aid, 143: Act Dead
+      Archer = 147: Create Arrow, 148: Charge Arrow
+      Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk
+      Acolyte = 156: Holy Light
+      Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone
+      Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store
+      Magician = 157: Energy Coat
+      Hunter = 1009: Phantasmic Arrow
+      Bard = 1010: Pang Voice
+      Dancer = 1011: Wink of Charm
+      Knight = 1001: Charge Attack
+      Crusader = 1002: Shrink
+      Priest = 1014: Redemptio
+      Monk = 1015: Ki Translation, 1016: Ki Explosio
+      Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife
+      Rogue = 1005: Close Confine
+      Blacksmith = 1012: Unfair Trick, 1013: Greed
+      Alchemist = 238: Basis of Life
+      Wizard = 1006: Sight Blaster
+      Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)
+  - Command: skillid
+    Help: |
+      Params: <name>
+      Look up a skill by name
+  - Command: useskill
+    Help: |
+      Params: <skillid> <skillv> <target>
+      Use a skill on target
+  - Command: skilltree
+    Help: |
+      Params: <skillnum> <charname>
+      Prints the skill tree needed to get a skill for the target player.
+  - Command: marry
+    Help: |
+      Params: <player name>
+      Marry another player.
+  - Command: divorce
+    Help: |
+      Divorce player.
+  - Command: alive
+    Help: |
+      Revives yourself from death.
+  - Command: blvl
+    Aliases:
+      - lvup
+      - blevel
+      - baselvl
+      - baselvup
+      - baselevel
+      - baselvlup
+    Help: |
+      Params: <number of levels>
+      Raises your base level the desired number of levels.
+  - Command: jlvl
+    Aliases:
+      - jlevel
+      - joblvl
+      - joblvup
+      - joblevel
+      - joblvlup
+    Help: |
+      Params: <number of levels>
+      Raises your job level the desired number of levels.
+  - Command: allskill
+    Aliases:
+      - allskills
+      - skillall
+      - skillsall
+    Help: |
+      Give you all skills.
+  - Command: stpoint
+    Help: |
+      Params: <number of points> - Gives you the desired number of stat points.
+  - Command: skpoint
+    Help: |
+      Params: <number of points> - Gives you the desired number of skill points.
+  - Command: zeny
+    Help: |
+      Params: <amount> - Gives you desired amount of Zeny.
+  - Command: cash
+    Help: |
+      Params: <amount> - Gives you the specified amount of cash points.
+  - Command: points
+    Help: |
+      Params: <amount> - Gives you the specified amount of Kafra Points.
+  - Command: str
+    Help: |
+      Params: <amount>
+      Raises STR by given amount.
+  - Command: agi
+    Help: |
+      Params: <amount>
+      Raises AGI by given amount.
+  - Command: dex
+    Help: |
+      Params: <amount>
+      Raises DEX by given amount.
+  - Command: vit
+    Help: |
+      Params: <amount>
+      Raises VIT by given amount.
+  - Command: int
+    Help: |
+      Params: <amount>
+      Raises INT by given amount.
+  - Command: luk
+    Help: |
+      Params: <amount>
+      Raises LUK by given amount.
+  - Command: allstats
+    Aliases:
+      - allstat
+      - statall
+      - statsall
+    Help: |
+      Params: <value>
+      Adds value in all stats (maximum if no value).
+  - Command: addwarp
+    Help: |
+      Params: <map name> <x coord> <y coord> <NPC name>
+  - Command: killmonster2
+    Help: |
+      Kills all monsters of your map (without drops).
+  - Command: monster
+    Aliases:
+      - spawn
+    Help: |
+      Params: <monster name|ID> [<number to spawn> [<desired_monster_name> [<x coord> [<y coord>]]]]
+      @monster2 <desired_monster_name> <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]
+      @spawn/@monster/@summon/@monster2 "desired monster name" <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]
+      @spawn/@monster/@summon/@monster2 <monster name|ID> "desired monster name" [<number to spawn> [<x coord> [<y coord>]]]
+      Spawns the desired monster with any desired name.
+  - Command: monstersmall
+    Help: |
+      Params: <monster name|ID>
+      Spawns a smaller version of a monster.
+  - Command: monsterbig
+    Help: |
+      Params: <monster name|ID>
+      Spawns a larger version of a monster.
+  - Command: killmonster
+    Help: |
+      Params: <map>
+      Kill all monsters of the map (they drop)
+  - Command: autoloot
+    Help: |
+      Params: <on|off|#>
+      Makes items go straight into your inventory.
+  - Command: autotrade
+    Aliases:
+      - at
+    Help: |
+      Allows you to vend while you are offline.
+  - Command: changegm
+    Help: |
+      Params: <charname>
+      Changes the leader of your guild (You must be guild leader)
+  - Command: changeleader
+    Help: |
+      Params: <charname>
+      Changes the leader of your party (You must be party leader)
+  - Command: request
+    Help: |
+      Params: <message>
+      Sends a message to all connected GMs (via the gm whisper system)
+  - Command: sound
+    Help: |
+      Params: <path to file in data folder or GRF file>
+      Plays a sound from the data folder or GRF file located on the client.
+  - Command: clone
+    Help: |
+      Params: <charname>
+      Spawns a supportive clone of the given player.
+  - Command: slaveclone
+    Help: |
+      Params: <charname>
+      Spawns a supportive clone of the given player that follows the creator around.
+  - Command: evilclone
+    Help: |
+      Params: <charname>
+      Spawns an aggressive clone of the given player.
+  - Command: changesex
+    Help: |
+      Changes your gender.
+  - Command: duel
+    Help: |
+      Starts a duel.
+  - Command: invite
+    Help: |
+      Invites a player to a duel.
+  - Command: accept
+    Help: |
+      Accepts an invitation to a duel.
+  - Command: reject
+    Help: |
+      Rejects an invitation to a duel.
+  - Command: leave
+    Help: |
+      Leaves a duel.
+  - Command: mail
+    Help: |
+      Open mail box.
+  - Command: storage
+    Help: |
+      Opens storage.
+  - Command: itemreset
+    Aliases:
+      - clearinventory
+    Help: |
+      Remove all your items.
+  - Command: guildstorage
+    Aliases:
+      - gstorage
+    Help: |
+      Opens guild storage.
+  - Command: idsearch
+    Help: |
+      Params: <part_of_item_name>
+      Search all items that name have part_of_item_name
+  - Command: refine
+    Help: |
+      Params: <equip position> <+/- amount>
+  - Command: produce
+    Help: |
+      Params: <equip name or equip ID> <element> <# of very's>
+      Element: 0=None 1=Ice 2=Earth 3=Fire 4=Wind
+      You can add up to 3 Star Crumbs and 1 element
+  - Command: repairall
+    Help: |
+      Repair all items of your inventory
+  - Command: item
+    Help: |
+      Params: <item name or ID> <quantity>
+      Gives you the desired item.
+  - Command: item2
+    Help: |
+      Params: <item name or ID> <quantity> <identified_flag> <refine> <broken_flag> <Card1> <Card2> <Card3> <Card4>
+      Gives you the desired item.
+  - Command: pvpon
+    Help: |
+      Turns pvp on on the current map
+  - Command: pvpoff
+    Help: |
+      Turns pvp off on the current map
+  - Command: gvgon
+    Aliases:
+      - gpvpon
+    Help: |
+      Turns gvg on on the current map
+  - Command: gvgoff
+    Aliases:
+      - gpvpoff
+    Help: |
+      Turns gvg off on the current map
+  - Command: agitstart
+    Help: |
+      Starts War of Emperium
+  - Command: agitend
+    Help: |
+      End War of Emperium
+  - Command: party
+    Help: |
+      Params: <party_name>
+      Create a party.
+  - Command: guild
+    Help: |
+      Params: <guild_name>
+      Create a guild.
+  - Command: glvl
+    Aliases:
+      - glevel
+      - guildlvl
+      - guildlvup
+      - guildlevel
+      - guildlvlup
+    Help: |
+      Params: <# of levels>
+      Raise Guild by desired number of levels
+  - Command: guildrecall
+    Help: |
+      Params: <guild name|ID>
+      Warps all online characters of a guild to you.
+  - Command: partyrecall
+    Help: |
+      Params: <party name|ID>
+      Warps all online characters of a party to you.
+  - Command: petrename
+    Help: |
+      Re-enable pet rename
+  - Command: pettalk
+    Help: |
+      Params: <message>
+      Makes your pet say a message.
+  - Command: petfriendly
+    Help: |
+      Params: <#>
+      Set pet friendly amount (0-1000) 1000 = Max
+  - Command: pethungry
+    Help: |
+      Params: <#>
+      Set pet hungry amount (0-100) 100 = Max
+  - Command: hatch
+    Help: |
+      Create a pet from your inventory eggs list.
+  - Command: makeegg
+    Help: |
+      Params: <pet_id>
+      Gives pet egg for monster number in pet DB
+  - Command: kick
+    Help: |
+      Params: <char name>
+      Kicks specified character off the server
+  - Command: unjail
+    Aliases:
+      - discharge
+    Help: |
+      Params: <char name>
+      Discharges specified character/prisoner
+  - Command: kill
+    Aliases:
+      - die
+    Help: |
+      Kills player.
+  - Command: recall
+    Help: |
+      Params: <char name>
+      Warps target character to you.
+  - Command: raise
+    Aliases:
+      - revive
+    Help: |
+      Params: <char name>
+      Revives target character.
+  - Command: block
+    Help: |
+      Params: <char name>
+      Permanently blocks an account.
+  - Command: unblock
+    Help: |
+      Params: <char name>
+      Unblocks an account.
+  - Command: ban
+    Aliases:
+      - banish
+    Help: |
+      Params: <time> <name>\n" "Temporarily ban an account.
+      time usage: adjustment (+/- value) and element (y/a, m, d/j, h, mn, s)
+      Example: @ban +1m-2mn1s-6y testplayer
+  - Command: unban
+    Aliases:
+      - unbanish
+    Help: |
+      Params: <name> - Unban a account
+  - Command: jail
+    Help: |
+      Params: <char name> - Sends specified character in jails
+  - Command: trade
+    Help: |
+      Params: <char name> - Open a trade window with a another player
+  - Command: recallall
+    Help: |
+      Warps every character online to you.
+  - Command: doom
+    Help: |
+      Kills all NON GM chars on the server.
+  - Command: doommap
+    Help: |
+      Kills all non GM characters on the map.
+  - Command: raisemap
+    Help: |
+      Resurrects all characters on the map.
+  - Command: night
+    Help: |
+      Enables night mode on all maps, all characters are affected.
+  - Command: day
+    Help: |
+      Disables night mode and restores regular lighting, all characters are affected.
+  - Command: skillon
+    Help: |
+      Turn skills on for a map.
+  - Command: skilloff
+    Help: |
+      Turn skills off for a map.
+  - Command: snow
+    Help: |
+      Makes all maps to have the snow weather effect.
+  - Command: clouds
+    Help: |
+      Makes all maps to have the cloudy weather effect.
+  - Command: clouds2
+    Help: |
+      Makes all maps to have another cloudy weather effect.
+  - Command: fog
+    Help: |
+      Makes all maps to have the fog weather effect.
+  - Command: fireworks
+    Help: |
+      Makes all maps to have the fireworks weather effect.
+  - Command: sakura
+    Help: |
+      Makes all maps to have the sakura weather effect.
+  - Command: leaves
+    Help: |
+      Makes all maps to have the leaves weather effect.
+  - Command: shownpc
+    Help: |
+      Params: <NPC name>
+      Enable a NPC.
+  - Command: hidenpc
+    Help: |
+      Params: <NPC name>
+      Disable a NPC.
+  - Command: npcmove
+    Help: |
+      Params: <x coord> <y coord> <NPC name>
+      Move a NPC.
+  - Command: loadnpc
+    Help: |
+      Params: <path to script>
+      Load the specified script file path.
+  - Command: unloadnpc
+    Help: |
+      Params: <NPC name>
+      Unload the specified NPC according to name.
+  - Command: unloadnpcfile
+    Help: |
+      Params: <path>
+      Unload the specified script file path.
+  - Command: adjgroup
+    Help: |
+      Params: <level> <char name>
+      Do a temporary adjustment of the group level of a player.
+  - Command: addperm
+    Help: |
+      Params: <permission_name>
+      Temporarily add a permission to a player.
+  - Command: rmvperm
+    Help: |
+      Params: <permission_name>
+      Temporarily remove a permission from a player.
+  - Command: kickall
+    Help: |
+      Kick all characters off the server
+  - Command: mapexit
+    Help: |
+      Kick all players and shut down map-server.
+  - Command: gat
+    Help: |
+      For debugging (you inspect around gat)
+  - Command: send
+    Help: |
+      Params: <Hex Number> [<value>]
+      For debugging (packet variety)
+  - Command: nuke
+    Help: |
+      Params: <char name>
+      Blow somebody up, including those surrounding them.
+  - Command: reloadachievementdb
+    Help: |
+      Reload achievement database.
+  - Command: reloadatcommand
+    Help: |
+      Reload atcommand settings.
+  - Command: reloadattendancedb
+    Help: |
+      Reload attendance database.
+  - Command: reloadbattleconf
+    Help: |
+      Reload battle settings.
+  - Command: reloadinstancedb
+    Help: |
+      Reload instance database.
+  - Command: reloaditemdb
+    Help: |
+      Reload item database.
+  - Command: reloadmobdb
+    Help: |
+      Reload monster database.
+  - Command: reloadmotd
+    Help: |
+      Reload Message of the Day.
+  - Command: reloadmsgconf
+    Help: |
+      Reload message configuration.
+  - Command: reloadpcdb
+    Help: |
+      Reload player settings.
+  - Command: reloadquestdb
+    Help: |
+      Reload quest database.
+  - Command: reloadscript
+    Help: |
+      Reload all scripts.
+  - Command: reloadskilldb
+    Help: |
+      Reload skills definition database.
+  - Command: reloadstatusdb
+    Help: |
+      Reload status settings.
+  - Command: reload
+    Help: |
+      Params: <type>
+      Reload a database or configuration file.
+      itemdb                mobdb          skilldb
+      atcommand       battleconf     statusdb
+      pcdb                    motd             script
+      questdb              msgconf       packetdb
+  - Command: langtype
+    Help: |
+      Params: <language>
+      Changes your language setting.
+  - Command: limitedsale
+    Help: |
+      Opens the limited sale window.
+  - Command: changedress
+    Aliases:
+      - nocosplay
+    Help: |
+      Removes all character costumes.
+  - Command: camerainfo
+    Aliases:
+      - viewpointvalue
+      - setcamera
+    Help: |
+      Shows or updates the client's camera settings.
+  - Command: resetstat
+    Aliases:
+      - streset
+  - Command: resetskill
+    Aliases:
+      - skreset
+  - Command: homlevel
+    Aliases:
+      - hlvl
+      - hlevel
+      - homlvl
+      - homlvup
+  - Command: homevolution
+    Aliases:
+      - homevolve
+  - Command: mutearea
+    Aliases:
+      - stfu
+  - Command: monsterignore
+    Aliases:
+      - battleignore
+  - Command: accinfo
+    Aliases:
+      - accountinfo
+  - Command: channel
+    Aliases:
+      - main
+  - Command: autoloottype
+    Aliases:
+      - aloottype
+  - Command: cloneequip
+    Aliases:
+      - eqclone
+  - Command: clonestat
+    Aliases:
+      - stclone
+  - Command: reloadnpcfile
+    Aliases:
+      - reloadnpc
+
+Footer:
+  Imports:
+    - Path: conf/import/atcommands.yml

+ 4 - 0
conf/battle/battleground.conf

@@ -30,3 +30,7 @@ bg_flee_penalty: 20
 
 // Interval before updating the bg-member map mini-dots (milliseconds)
 bg_update_interval: 1000
+
+// Before a player is warped into a Battleground from the Battleground Queue,
+// check to see if the player's current map has MF_NOWARP.
+bgqueue_nowarp_mapflag: no

+ 17 - 3
conf/battle/client.conf

@@ -71,9 +71,7 @@ wedding_modifydisplay: no
 save_clothcolor: yes
 
 // Save body styles. (Note 1)
-// Note: Don't turn this on unless you know what you are doing.
-// Sprites are not released officially.
-save_body_style: no
+save_body_style: yes
 
 // Do not display cloth colors for the wedding class?
 // Note: Both save_clothcolor and wedding_modifydisplay have to be enabled
@@ -140,3 +138,19 @@ spawn_direction: no
 // kRO removed the packet and this re-enables the message.
 // Official: Disabled.
 mvp_exp_reward_message: no
+
+// Send ping timer
+// Interval in seconds for each timer invoke.
+ping_timer_inverval: 30
+
+// Send packets timeout in seconds before ping packet can be sent.
+ping_time: 20
+
+// Show skill scale for clients 2015-12-23 and newer? (Note 1)
+// Official: yes
+show_skill_scale: yes
+
+// Should the connection be dropped on server side after a player disconnection request was received? (Note 1)
+// Note: Enabling this is known to cause problems on clients that make use of REST API calls.
+// Official: no
+drop_connection_on_quit: no

+ 32 - 0
conf/battle/drops.conf

@@ -153,3 +153,35 @@ rare_drop_announce: 0
 // If RENEWAL_DROP, Bubble Gum, or any other modifiers are active autoloot
 // will take them into account.
 autoloot_adjust: 0
+
+// Does autoloot work when a monster is killed by mercenary only?
+mercenary_autoloot: no
+
+// Is getting items from a mercenary disabled when their master's idle?
+// Set to no, or the amount of seconds (NOT milliseconds) that need to pass before considering
+// a character idle.
+// Characters in a chat/vending are always considered idle.
+// A character's idle status is reset upon item use/skill use/attack (auto attack counts too)/movement.
+// Their master will only receive items if 'mercenary_autoloot' is activated,
+// otherwise they will be dropped on the ground as usual.
+// NOTE: This option uses a special timer to track idle time, separated from the normal idle timer.
+mer_idle_no_share: no
+
+// How the server should measure the mercenary master's idle time? (Note 3)
+// (This will only work if 'mer_idle_no_share' is enabled).
+// 0x001 - Walk Request
+// 0x002 - UseSkillToID Request (Targetted skill use attempt)
+// 0x004 - UseSkillToPos Request (AoE skill use attempt)
+// 0x008 - UseItem Request (Including equip/unequip)
+// 0x010 - Attack Request
+// 0x020 - Chat Request (Whisper, Party, Guild, Battlegrounds, etc)
+// 0x040 - Sit/Standup Request
+// 0x080 - Emotion Request
+// 0x100 - DropItem Request
+// 0x200 - @/#Command Request
+// Please note that at least 1 option has to be enabled.
+// Be mindful that the more options used, the easier it becomes to cheat this features.
+// Default: walk (0x1) + useskilltoid (0x2) + useskilltopos (0x4) + useitem (0x8) + attack (0x10) = 0x1F
+// NOTE: This allows you to configure different settings for mercenary, separated from normal idle timer and 'idletime_option'.
+// It will only apply to mercenary-only kills and it will not affect normal autoloot and party share options.
+idletime_mer_option: 0x1F

+ 4 - 0
conf/battle/feature.conf

@@ -59,6 +59,10 @@ feature.autotrade_sit: 1
 // Delay in miliseconds to open vending/buyingsotre after player logged in.
 feature.autotrade_open_delay: 5000
 
+// Battlegrounds queue interface. Makes it possible to queue for a battleground anywhere using the battle menu.
+// Requires: 2012-04-10aRagexe or later
+feature.bgqueue: on
+
 // Roulette (Note 1)
 // Requires: 2014-10-22bRagexe or later
 feature.roulette: on

+ 11 - 0
conf/battle/gm.conf

@@ -7,6 +7,17 @@
 // Note 2: Value is in percents (100 means 100%)
 //--------------------------------------------------------------
 
+// The symbol that will be used to recognize commands.
+// You can set any one character except:
+// - control-characters (0x00-0x1f),
+// - '%' (party chat symbol)
+// - '$' (guild chat symbol)
+// - '/' (client commands symbol)
+// atcommand_symbol represents @commands used locally.
+// charcommand_symbol represents #commands used on other players.
+atcommand_symbol: @
+charcommand_symbol: #
+
 // The maximum quantity of monsters that can be summoned per GM command (0 denotes an unlimited quantity)
 atcommand_spawn_quantity_limit: 100
 

+ 1 - 0
conf/battle/guild.conf

@@ -18,6 +18,7 @@ guild_max_castles: 0
 
 // Activate guild skills delay by relog?
 // Official setting is 5 minutes (300000 ms), otherwise allow guild leaders to relog to cancel the 5 minute delay.
+// Note: This was changed in renewal in favor of individual skill cooldown.
 guild_skill_relog_delay: 300000
 
 // Melee damage adjustments (non skills) for WoE battles (Guild Vs Guild) (Note 2)

+ 45 - 1
conf/battle/homunc.conf

@@ -50,7 +50,7 @@ homunculus_auto_vapor: 80
 homunculus_max_level: 99
 
 // Max level for Homunculus S
-homunculus_S_max_level: 150
+homunculus_S_max_level: 175
 
 // Growth level for Homunculus S
 // This is the level at which homunculus S can use their growth tables
@@ -61,3 +61,47 @@ homunculus_S_growth_level: 99
 // Send auto-feed notice even if OFF (Note 1) 
 // Official: yes
 homunculus_autofeed_always: yes
+
+// Is getting exp/item from the homunculus disabled when their master's idle?
+// Set to no, or the amount of seconds (NOT milliseconds) that need to pass before considering
+// a character idle.
+// Characters in a chat/vending are always considered idle.
+// A character's idle status is reset upon item use/skill use/attack (auto attack counts too)/movement.
+// Their master will only receive items if 'homunculus_autoloot' is activated,
+// otherwise they will be dropped on the ground as usual.
+// NOTE: This option uses a special timer to track idle time, separated from the normal idle timer.
+hom_idle_no_share: no
+
+// How the server should measure the homunculus master's idle time? (for homunculus exp share and autoloot ONLY) (Note 3)
+// (This will only work if 'hom_idle_no_share' is enabled).
+// 0x001 - Walk Request
+// 0x002 - UseSkillToID Request (Targetted skill use attempt)
+// 0x004 - UseSkillToPos Request (AoE skill use attempt)
+// 0x008 - UseItem Request (Including equip/unequip)
+// 0x010 - Attack Request
+// 0x020 - Chat Request (Whisper, Party, Guild, Battlegrounds, etc)
+// 0x040 - Sit/Standup Request
+// 0x080 - Emotion Request
+// 0x100 - DropItem Request
+// 0x200 - @/#Command Request
+// Please note that at least 1 option has to be enabled.
+// Be mindful that the more options used, the easier it becomes to cheat this features.
+// Default: walk (0x1) + useskilltoid (0x2) + useskilltopos (0x4) + useitem (0x8) + attack (0x10) = 0x1F
+// NOTE: This allows you to configure different settings for homunculus, separated from normal idle timer and 'idletime_option'.
+// It will only apply to homunculus-only kills and it will not affect normal autoloot and party share options.
+idletime_hom_option: 0x1F
+
+// The rate at which homunculus gain experience from kills. (Note 2)
+// Only applies to renewal mode.
+// Official: 10%
+homunculus_exp_gain: 10
+
+// The hunger rate, less than or equal to, at which a homunculus' hunger delay changes. (Note 2)
+// See 'homunculus_starving_delay' for the delay value.
+// Set to 0 to disable.
+// Official: 10
+homunculus_starving_rate: 10
+
+// Homunculi normally lose hunger every 60 seconds but when the 'homunculus_starving_rate' is met the hunger delay drops to 20 seconds (in milliseconds).
+// Official: 20 seconds
+homunculus_starving_delay: 20000

+ 5 - 7
conf/battle/items.conf

@@ -42,14 +42,9 @@ dead_branch_active: yes
 // Change to 'yes' to only summon monsters less than or equal to the player's base level.
 random_monster_checklv: no
 
-// Can any player equip any item regardless of the gender restrictions
-// NOTE: Wedding Rings and Whips/Musical Instruments will check gender regardless of setting.
-ignore_items_gender: yes
-
 // On map change it will check for items not tagged as "available" and
 // auto-delete them from inventory/cart/storage.
-// NOTE: An item is not available if it was not loaded from the item_db or
-// specified as unavailable in db/item_avail.txt
+// NOTE: An item is not available if it was not loaded from the item_db.
 // 0x1: Inventory
 // 0x2: Cart
 // 0x4: Storage
@@ -93,7 +88,7 @@ item_enabled_npc: yes
 // Default: yes
 item_flooritem_check: yes
 
-// Set default bound type for item_flag &8 (see db/[pre-]re/item_flag.txt
+// Set default bound type when item with BindOnEquip flag is equipped (see db/[pre-]re/item_db.yml)
 // 0 - None
 // 1 - Account
 // 2 - Guild
@@ -124,6 +119,9 @@ broadcast_hide_name: 2
 // Enable to sell rental item to NPC shop? (Note 1)
 rental_transaction: yes
 
+// Sell rental item for 0 to NPC shop regardless of the item value in item_db? (Note 1)
+rental_item_novalue: no
+
 // Minimum purchase price of items at a normal Shop
 // Officially items cannot be purchased for less than 1 Zeny
 min_shop_buy: 1

+ 3 - 0
conf/battle/misc.conf

@@ -114,6 +114,9 @@ at_timeout: 0
 // Makes player cannot be attacked when autotrade? (turns player's state.monster_ignore) (Note 1)
 at_monsterignore: no
 
+// Should autotrade trigger OnPCLogout script events? (Note 1)
+at_logout_event: yes
+
 // Auction system, fee per hour. Default is 12000
 auction_feeperhour: 12000
 

+ 30 - 0
conf/battle/monster.conf

@@ -71,6 +71,7 @@ monster_chase_refresh: 3
 // 1: Enable mob-warping when standing on NPC-warps
 // 2: Enable mob-warping when standing on Priest Warp Portals
 // 4: Disable warping when the target map is a 'nobranch' map.
+// 8: Enable mob-warping when standing on Dimensional Door
 mob_warp: 0
 
 // If these are set above 0, they define the time (in ms) during which monsters
@@ -135,6 +136,14 @@ mob_spawn_delay: 100
 plant_spawn_delay: 100
 boss_spawn_delay: 100
 
+// Should the mobs respawn time have variance applied to it? (Note 3)
+// On official servers monsters spawned by the boss_monster command (mostly MVPs) have variance, legacy Athena behavior is that variance is applied for all mobs.
+// 0: None
+// 1: Boss monsters (official)
+// 2: Normal monsters
+// 3: All monsters (legacy Athena)
+mob_spawn_variance: 1
+
 // Should mobs not spawn within the viewing range of players?
 // 0 is disabled, otherwise it is the number of retries before giving up 
 // and spawning the mob within player-view anyway, unless the max (100) is used,
@@ -262,3 +271,24 @@ monster_hp_bars_info: yes
 // This can be legit gameplay (e.g. players keeping an MVP stuck inside icewall), but if you want to prevent any
 // exploits and be notified about them, you can set this to yes.
 monster_stuck_warning: no
+
+// Rate at which monsters use their idle skills when there are no players nearby (Note 2)
+// On official servers monsters use their idle skills if they have been spotted once, even if there are no players nearby anymore.
+// On small-medium sized servers this can cause all monsters like eggs and Fabre/Pupa to metamorph.
+// To switch it off, set it to 0.
+mob_nopc_idleskill_rate: 100
+boss_nopc_idleskill_rate: 100
+
+// Rate at which monsters move when there are no players nearby (Note 2)
+// On official servers monsters always move if they have been spotted once, even if there are no players nearby anymore.
+// To switch it off, set it to 0.
+mob_nopc_move_rate: 100
+boss_nopc_move_rate: 100
+
+// When killing a monster, do AG_BATTLE type achievements trigger for everyone in the same party within the area?
+// Area is limited to area_size battle config.
+achievement_mob_share: no
+
+// Should slaves teleport back to their master if they get too far during chase? (Note 1)
+// Default (Official): no
+slave_stick_with_master: no

+ 26 - 17
conf/battle/player.conf

@@ -74,6 +74,9 @@ max_third_aspd: 193
 // Max ASPD for extended class (Kagerou/Oboro and Rebellion). (Default 193, Highest allowed 199)
 max_extended_aspd: 193
 
+// Max ASPD for Summoner Class (Doram). (Default 193, Highest allowed 199)
+max_summoner_aspd: 193
+
 // Maximum walk speed rate (200 would be capped to twice the normal speed)
 max_walk_speed: 300
 
@@ -247,6 +250,8 @@ fame_refine_lv2: 25
 fame_refine_lv3: 1000
 // Success to forge a lv3 weapon with 3 additional ingredients
 fame_forge: 10
+// Refine threshold for giving point for refining forged weapon to +10
+blacksmith_fame_refine_threshold: 10
 // Success to prepare 'n' Condensed Potions in a row
 fame_pharmacy_3: 1
 fame_pharmacy_5: 3
@@ -254,24 +259,28 @@ fame_pharmacy_7: 10
 fame_pharmacy_10: 50
 
 // How the server should measure the character's idle time? (Note 3)
-// 0x001 - Walk Request
-// 0x002 - UseSkillToID Request (Targetted skill use attempt)
-// 0x004 - UseSkillToPos Request (AoE skill use attempt)
-// 0x008 - UseItem Request (Including equip/unequip)
-// 0x010 - Attack Request
-// 0x020 - Chat Request (Whisper, Party, Guild, Battlegrounds, etc)
-// 0x040 - Sit/Standup Request
-// 0x080 - Emotion Request
-// 0x100 - DropItem Request
-// 0x200 - @/#Command Request
+// 0x0001 - Walk Request
+// 0x0002 - UseSkillToID Request (Targetted skill use attempt)
+// 0x0004 - UseSkillToPos Request (AoE skill use attempt)
+// 0x0008 - UseItem Request (Including equip/unequip)
+// 0x0010 - Attack Request
+// 0x0020 - Chat Request (Whisper, Party, Guild, Battlegrounds, etc)
+// 0x0040 - Sit/Standup Request
+// 0x0080 - Emotion Request
+// 0x0100 - DropItem Request
+// 0x0200 - @/#Command Request
+// 0x0400 - Closing a NPC window
+// 0x0800 - Providing input to a NPC
+// 0x1000 - Choosing a NPC menu option
+// 0x2000 - Clicking the next button of a NPC
+// 0x4000 - Finishing for a NPC progress bar
 // Please note that at least 1 option has to be enabled.
 // Be mindful that the more options used, the easier it becomes to cheat features that rely on idletime (e.g. checkidle()).
-// Default: walk (0x1) + useskilltoid (0x2) + useskilltopos (0x4) + useitem (0x8) + attack (0x10) = 0x1F
-idletime_option: 0x1F
+// Default: walk (0x1) + useskilltoid (0x2) + useskilltopos (0x4) + useitem (0x8) + attack (0x10) + any npc interaction(0x400,0x800,0x1000,0x2000,0x4000) = 0x7C1F
+idletime_option: 0x7C1F
 
 // Adjust the summoner class' special traits.
-// 0: Summoners behave like other classes.
-// 1: Summoners belong to brute race instead of demi-human
-// 2: Summoners are small size instead of medium
-// 3: Both of the above (official value)
-summoner_trait: 3
+// - Summoners belong to brute race category. They have their own race RC_PLAYER_DORAM (11) to be differentiated from monster race RC_BRUTE (2).
+// - Summoners are small size (0) instead of medium (1)
+summoner_race: 11
+summoner_size: 0

+ 33 - 6
conf/battle/skill.conf

@@ -85,7 +85,7 @@ clear_skills_on_warp: 15
 
 //Setting this to YES will override the target mode of ground-based skills with the flag 0x01 to "No Enemies"
 //The two skills affected by default are Pneuma and Safety Wall (if set to yes, those two skills will not protect everyone, but only allies)
-//See db/skill_unit_db.txt for more info.
+//See db/(pre-)re/skill_db.yml for more info.
 defunit_not_enemy: no
 
 // Should skills always do at least 'hits' damage when they don't miss/are blocked?
@@ -107,11 +107,11 @@ auto_counter_type: 15
 
 // Can ground skills be placed on top of each other? (Note 3)
 // By default, skills with UF_NOREITERATION set cannot be stacked on top of 
-// other skills, this setting will override that. (skill_unit_db)
+// other skills, this setting will override that.
 skill_reiteration: 0
 
 // Can ground skills NOT be placed underneath/near players/monsters? (Note 3)
-// If set, only skills with UF_NOFOOTSET set will be affected (skill_unit_db)
+// If set, only skills with UF_NOFOOTSET set will be affected.
 skill_nofootset: 1
 
 // Should traps (hunter traps + quagmire) change their target to "all" inside gvg/pvp grounds? (Note 3)
@@ -196,6 +196,14 @@ devotion_rdamage: 0
 // But if the target is being devoted, it ONLY reflects the damage for melee skill. (Note 1)
 devotion_rdamage_skill_only: yes
 
+// On AEGIS there is a bug when the player who is under devotion is sitting and getting hit.
+// The player stands up on client side, but will still remain sitting on server side.
+// Because of this the player will not be able to walk anymore, until the player sat down/stood up again or used @refresh.
+// You can read more about it on https://github.com/rathena/rathena/issues/1927
+// Default: yes (because it is a recommended bug fix from our side)
+// Official: no
+devotion_standup_fix: yes
+
 // If no than you can use the ensemble skills alone. (Note 1)
 player_skill_partner_check: yes
 
@@ -295,7 +303,7 @@ dancing_weaponswitch_fix: yes
 // 3: 1+2
 skill_trap_type: 0
 
-// Area of Bowling Bash chain reaction
+// Area of Bowling Bash chain reaction (pre-renewal only)
 // 0: Use official gutter line system
 // 1: Gutter line system without demi gutter bug
 // 2-20: Area around caster (2 = 5x5, 3 = 7x7, 4 = 9x9, ..., 20 = 41x41)
@@ -333,9 +341,9 @@ arrow_shower_knockback: yes
 stormgust_knockback: yes
 
 // For RENEWAL_CAST (Note 2)
-// By default skill that has '0' value for Fixed Casting Time will use 20% of cast time
+// By default skill that has '-1' value for Fixed Casting Time will use 20% of cast time
 // as Fixed Casting Time, and the rest (80%) as Variable Casting Time.
-// Put it 0 to disable default Fixed Casting Time (just like -1 is the skill_cast_db.txt).
+// Put it 0 to disable default Fixed Casting Time (just like 0 in the skill_db.yml).
 default_fixed_castrate: 20
 
 // On official servers, skills that hit all targets on a path (e.g. Focused Arrow Strike and First Wind) first
@@ -347,6 +355,10 @@ default_fixed_castrate: 20
 // Note: Brandish Spear will always use this algorithm due to its special damage behavior.
 skill_eightpath_algorithm: yes
 
+// Should skills that use skill_eightpath_algorithm include targets in the caster's cell?
+// Official: yes
+skill_eightpath_same_cell: yes
+
 // Can damage skill units like icewall and traps (Note 3)
 // On official servers, players can damage icewalls and some traps with skills. When monsters use skills, damage
 // will show on the icewalls and traps, but it is not actually substracted from the durability.
@@ -354,6 +366,21 @@ skill_eightpath_algorithm: yes
 // damage skills (previous behavior).
 can_damage_skill: 1
 
+// Land Protector behavior (Note 1)
+// On official servers, players standing on the border (outer cell) of the Land Protector can still be affected/hit
+// by AoE skills (if the skill has a splash effect, such as Storm Gust). The Athena behavior ignores AoE affects/hits
+// while players are standing on the border.
+// Official: 0
+// Legacy Athena: 1
+land_protector_behavior: 0
+
+// NPC EMOTION behavior (Note 1)
+// On official servers, certain mobs cast NPC EMOTION skill which displays an emoticon and change their mode from
+// Aggressive to Passive for a certain time. The Athena behavior does not change their mode to Passive.
+// Official: 0
+// Legacy Athena: 1
+npc_emotion_behavior: 0
+
 // Should Tarot Card of Fate have the same chance for each card to occur? (Note 1)
 // Official chances: 15%: LOVERS | 10%: FOOL, MAGICIAN, HIGH PRIESTESS, STRENGTH, SUN | 8%: TEMPERANCE
 // 7%: CHARIOT | 6%: THE HANGED MAN | 5%: DEATH, STAR | 2%: TOWER | 1%: WHEEL OF FORTUNE, DEVIL

+ 11 - 1
conf/char_athena.conf

@@ -197,7 +197,7 @@ char_del_restriction: 3
 // Uncomment to customize the restriction
 //allowed_job_flag: 3
 
-// What folder the DB files are in (item_db.txt, etc.)
+// Folder that contains the database files.
 db_path: db
 
 //===================================
@@ -284,4 +284,14 @@ mail_return_days: 15
 // Default: 15
 mail_delete_days: 15
 
+// Does the Retrieve All button ignore unread mail status?
+// no: Only return attachments from read mail
+// yes: Return attachments from all mail
+// Default: yes
+mail_retrieve: yes
+
+// Should mails without any attachments be returned to their sender?
+// Default: yes
+mail_return_empty: yes
+
 import: conf/import/char_conf.txt

+ 0 - 328
conf/help.txt

@@ -1,328 +0,0 @@
-// This is help file that contains help messages for atcommands/charcommands.
-// Format:
-// <command>: "<help message>"
-// This file uses libconfig syntax.
-
-help: "Params: <command>\n" "Shows help for specified command."
-noask: "Auto rejects deals/invites."
-gmotd: "Broadcasts the Message of The Day to all players."
-me: "Params: <message>\n" "Displays normal text as a message in this format: *name message* (like /me in mIRC)."
-fakename: "Params: <name>\n" "Changes your name to your choice temporarily."
-npctalk: "Params: <NPC name> <message>\n" "Forces a NPC to display a message in normal chat."
-broadcast: "Params: <message>\n" "Broadcasts a message with your name (in yellow)."
-kami: "Params: <message>\n" "Broadcasts a message without your name (in yellow)."
-kamib: "Params: <message>\n" "Broadcasts a message without your name (in blue)."
-localbroadcast: "Params: <message>\n" "Broadcasts a message with your name (in yellow) only on your map."
-commands: "Displays a list of commands that you can use."
-rates: "Displays the server's current rates."
-uptime: "Displays how long the server has been online."
-showdelay: "Shows/hides the \"There is a delay after this skill\" message."
-exp: "Displays current levels and % progress."
-mobinfo: "Params: <monster name|ID>\n" "Shows monster info (stats, exp, drops etc)."
-iteminfo: "Params: <item name|ID>\n" "Shows item info (type, price etc)."
-whodrops: "Params: <item name|ID>\n" "Shows who drops an item (monster with highest drop rates)."
-version: "Displays SVN version of the server."
-email: "Params: <current email> <new email>\n" "Changes your account e-mail address."
-where: "Params: <char name>\n" "Tells you the location of a character."
-time: "Shows the date and time of the server."
-showexp: "Displays/hides experience gained."
-showzeny: "Displays/hides Zeny gained."
-mobsearch: "Params: <monster name|ID>\n" "Shows the location of a certain mob on the current map."
-who: "Params: [<name>]\n" "Shows a list of online players and their party and guild."
-who2: "Params: [<name>]\n" "Shows a list of online players and their job."
-who3: "Params: [<name>]\n" "Shows a list of online players and their location."
-whomap: "@whomap/@whomap2/@whomap3 [map] - like @who/@who2/@who3 but only for specified map."
-whogm: "Params: [match_text] - Like @who+@who2+who3, but only for GM."
-guildspy: "Params: <guild name|id> - You will receive all messages of the guild channel (Chat logging must be enabled)"
-partyspy: "@partyspy <party name|id> - You will receive all messages of the party channel (Chat logging must be enabled)"
-mapinfo: "Params: [<0-3> [map]] - Give information about a map (general info +: 0: no more, 1: players, 2: NPC, 3: chatrooms)."
-go: "Params: <city name|number>\n" "Warps you to a city.\n"
-	"  -3: (Memo point 2)  14: louyang         31: mora\n"
-	"  -2: (Memo point 1)  15: start point     32: dewata\n"
-	"  -1: (Memo point 0)  16: prison/jail     33: malangdo island\n"
-	"   0: prontera              17: jawaii             34: malaya port\n"
-	"   1: morocc                18: ayothaya       35: eclage\n"
-	"   2: geffen                  19: einbroch       36: lasagna\n"
-	"   3: payon                  20: lighthalzen\n"
-	"   4: alberta                 21: einbech\n"
-	"   5: izlude                   22: hugel\n"
-	"   6: aldebaran           23: rachel\n"
-	"   7: xmas (lutie)        24: veins\n"
-	"   8: comodo               25: moscovia\n"
-	"   9: yuno                     26: midgard camp\n"
-	"  10: amatsu               27: manuk\n"
-	"  11: gonryun              28: splendide\n"
-	"  12: umbala               29: brasilis\n"
-	"  13: niflheim              30: el dicastes\n"
-jumpto: "Params: <char name>\n" "Warps you to selected character."
-follow: "Params: <char name>\n" "Follow a player."
-mount: "Give/remove a job-based mount (class is required, but not the skill)."
-mount2: "Give/remove a cash mount."
-disguise: "Params: <monster name|ID>\n" "Change your appearence to other players to a mob."
-undisguise: "Restore your normal appearance."
-disguiseguild: "Disguises all online characters of a guild."
-undisguiseguild: "Restore the normal appearance of all characters of a guild."
-model: "Params:  <hair ID: 0-17> <hair color: 0-8> <clothes color: 0-4> - Changes your characters appearence."
-size: "Params:  <0-2> Changes your size (0-Normal 1-Small 2-Large)"
-sizeall: "Changes the size of all players."
-sizeguild: "Changes the size of all online characters of a guild."
-hide: "Makes you character invisible (GM invisibility). Type again to become visible."
-save: "Sets respawn point to current spot."
-load: "Warps you to your save point."
-warp: "Params: <mapname> [<x> <y>]\n" "Warps you to the selected map and position."
-jump: "Params: [<x> [<y>]]\n" "Randomly warps you like a flywing."
-jobchange: "Params: <job name|ID>\n" "Changes your job.\n"
-	"----- Novice / 1st Class -----\n"
-	"   0 Novice              1 Swordman            2 Magician            3 Archer\n"
-	"   4 Acolyte              5 Merchant               6 Thief\n"
-	"----- 2nd Class -----\n"
-	"   7 Knight               8 Priest                     9 Wizard               10 Blacksmith\n"
-	"  11 Hunter           12 Assassin            14 Crusader          15 Monk\n"
-	"  16 Sage              17 Rogue                 18 Alchemist         19 Bard\n"
-	"  20 Dancer\n"
-	"----- High Novice / High 1st Class -----\n"
-	"4001 Novice High     4002 Swordman High    4003 Magician High    4004 Archer High\n"
-	"4005 Acolyte High     4006 Merchant High       4007 Thief High\n"
-	"----- Transcendent 2nd Class -----\n"
-	"4008 Lord Knight      4009 High Priest             4010 High Wizard      4011 Whitesmith\n"
-	"4012 Sniper               4013 Assassin Cross   4015 Paladin              4016 Champion\n"
-	"4017 Professor         4018 Stalker                    4019 Creator               4020 Clown\n"
-	"4021 Gypsy\n"
-	"----- 3rd Class (Regular) -----\n"
-	"4054 Rune Knight    4055 Warlock                 4056 Ranger            4057 Arch Bishop\n"
-	"4058 Mechanic         4059 Guillotine Cross  4066 Royal Guard   4067 Sorcerer\n"
-	"4068 Minstrel            4069 Wanderer              4070 Sura                 4071 Genetic\n"
-	"4072 Shadow Chaser\n"
-	"----- 3rd Class (Transcendent) -----\n"
-	"4060 Rune Knight    4061 Warlock                 4062 Ranger             4063 Arch Bishop\n"
-	"4064 Mechanic         4065 Guillotine Cross  4073 Royal Guard    4074 Sorcerer\n"
-	"4075 Minstrel            4076 Wanderer              4077 Sura                  4078 Genetic\n"
-	"4079 Shadow Chaser\n"
-	"----- Expanded Class -----\n"
-	"     23 Super Novice      24 Gunslinger              25 Ninja                 4045 Super Baby\n"
-	"4046 Taekwon           4047 Star Gladiator     4049 Soul Linker            4050 Gangsi\n"
-	"4051 Death Knight    4052 Dark Collector    4190 Ex. Super Novice  4191 Ex. Super Baby\n"
-	"4211 Kagerou            4212 Oboro             4215 Rebellion        4218 Summoner\n"
-	"4239 Star Emperor   4240 Soul Reaper\n"
-	"----- Baby Novice And Baby 1st Class -----\n"
-	"4023 Baby Novice      4024 Baby Swordman    4025 Baby Magician   4026 Baby Archer\n"
-	"4027 Baby Acolyte      4028 Baby Merchant       4029 Baby Thief\n"
-	"---- Baby 2nd Class ----\n"
-	"4030 Baby Knight     4031 Baby Priest         4032 Baby Wizard         4033 Baby Blacksmith\n"
-	"4034 Baby Hunter    4035 Baby Assassin   4037 Baby Crusader    4038 Baby Monk\n"
-	"4039 Baby Sage       4040 Baby Rogue        4041 Baby Alchemist   4042 Baby Bard\n"
-	"4043 Baby Dancer\n"
-	"---- Baby 3rd Class ----\n"
-	"4096 Baby Rune Knight  4097 Baby Warlock     4098 Baby Ranger           4099 Baby Arch Bishop\n"
-	"4100 Baby Mechanic       4101 Baby Glt. Cross  4102 Baby Royal Guard  4103 Baby Sorcerer\n"
-	"4104 Baby Minstrel          4105 Baby Wanderer   4106 Baby Sura             4107 Baby Genetic\n"
-	"4108 Baby Shadow Chaser\n"
-	"---- Expanded Baby Class ----\n"
-	"4220 Baby Summoner        4222 Baby Ninja        4223 Baby Kagero         4224 Baby Oboro\n"
-	"4225 Baby Taekwon       4226 Baby Star Glad    4227 Baby Soul Linker    4228 Baby Gunslinger\n"
-	"4229 Baby Rebellion   4241 Baby Star Emperor    4242 Baby Soul Reaper\n"
-	"---- Modes And Others ----\n"
-	" 22 Wedding            26 Christmas          27 Summer           28 Hanbok\n"
-	" 29 Oktoberfest       30 Summer 2\n"
-	" 4048 Star Gladiator (Union)	    4238 Baby Star Glad (Union)\n"
-option: "Params: <param1> <param2>(stackable) <param3>(stackable)\n" "Adds different visual effects on or around your character.\n"
-" <param1>       <param2>        <param3>\n"
-"01: Stone      01: Sight       01: Sight          512: Cart Lv. 4\n"
-"02: Frozen     02: Curse       02: Hiding        1024: Cart Lv. 5\n"
-"03: Stun       04: Silence     04: Cloaking      2048: Orc Head\n"
-"04: Sleep      08: Signum      08: Cart Lv. 1    4096: Wedding\n"
-"06: Petrify    16: Blind       16: Falcon        8192: Ruwach\n"
-"07: Burning    32: Angelus     32: Riding       16384: Chasewalk\n"
-"08: Imprison   64: Bleeding    64: Invisible\n"
-"16: (Nothing) 128: D. Poison  128: Cart Lv. 2\n"
-"32: (Nothing) 256: Fear       256: Cart Lv. 3"
-heal: "Params: [<HP> <SP>]\n" "Heals the desired amount of HP and SP. No value specified will do a full heal."
-dye: "Params: <clothes palette no.>\n" "Changes your characters clothes color."
-hairstyle: "Params: <hairstyle no.>\n" "Changes your hair style."
-haircolor: "Params <hair palette no.>\n" "Changes your hair color."
-speed: "Params: <1-1000>\n" "Changes you walking speed. 1 being the fastest and 1000 the slowest. Default is 150."
-effect: "Params: <effect id> [<flag>]\n" "Give an effect to your character."
-dropall: "Params: [<item type>]\n" "Throws all your possession on the ground. No type specified will drop all items."
-storeall: "Puts all your possessions in storage."
-killable: "Make your character killable."
-memo: "Params: [memo position]\n" "Set/change a memo location (no position: display memo points)."
-spiritball: "Params: <1-100>\n" "Gives you \"spirit spheres\" like from the skill \"Call Spirits\".\n"
-questskill: "Params: <#>\n" "Gives you the specified quest skill\n"
-"Novice = 142: First Aid, 143: Act Dead\n"
-"Archer = 147: Create Arrow, 148: Charge Arrow\n"
-"Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk\n"
-"Acolyte = 156: Holy Light\n"
-"Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone\n"
-"Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store\n"
-"Magician = 157: Energy Coat\n"
-"Hunter = 1009: Phantasmic Arrow\n"
-"Bard = 1010: Pang Voice\n"
-"Dancer = 1011: Wink of Charm\n"
-"Knight = 1001: Charge Attack\n"
-"Crusader = 1002: Shrink\n"
-"Priest = 1014: Redemptio\n"
-"Monk = 1015: Ki Translation, 1016: Ki Explosio\n"
-"Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife\n"
-"Rogue = 1005: Close Confine\n"
-"Blacksmith = 1012: Unfair Trick, 1013: Greed\n"
-"Alchemist = 238: Basis of Life\n"
-"Wizard = 1006: Sight Blaster\n"
-"Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)"
-lostskill: "Params: <#>\n" "Takes away the specified quest skill from you\n"
-"Novice = 142: First Aid, 143: Act Dead\n"
-"Archer = 147: Create Arrow, 148: Charge Arrow\n"
-"Swordman = 144: Moving HP Recovery, 145: Attack Weak Point, 146: Auto Berserk\n"
-"Acolyte = 156: Holy Light\n"
-"Thief = 149: Throw Sand, 150: Back Sliding, 151: Take Stone, 152: Throw Stone\n"
-"Merchant = 153: Cart Revolution, 154: Change Cart, 155: Crazy Uproar, 2535: Open Buying Store\n"
-"Magician = 157: Energy Coat\n"
-"Hunter = 1009: Phantasmic Arrow\n"
-"Bard = 1010: Pang Voice\n"
-"Dancer = 1011: Wink of Charm\n"
-"Knight = 1001: Charge Attack\n"
-"Crusader = 1002: Shrink\n"
-"Priest = 1014: Redemptio\n"
-"Monk = 1015: Ki Translation, 1016: Ki Explosio\n"
-"Assassin = 1003: Sonic Acceleration, 1004: Throw Venom Knife\n"
-"Rogue = 1005: Close Confine\n"
-"Blacksmith = 1012: Unfair Trick, 1013: Greed\n"
-"Alchemist = 238: Basis of Life\n"
-"Wizard = 1006: Sight Blaster\n"
-"Sage = 1007: Create Elemental Converter, 1008: Elemental Change (Water), 1017: Elemental Change (Earth), 1018: Elemental Change (Fire), 1019: Elemental Change (Wind)"
-skillid: "Params: <name>\n" "Look up a skill by name"
-useskill: "Params: <skillid> <skillv> <target>\n" "Use a skill on target"
-skilltree: "Params: <skillnum> <charname>\n" "Prints the skill tree needed to get a skill for the target player."
-marry: "Params: <player name>\n" "Marry another player."
-divorce: "Divorce player."
-alive: "Revives yourself from death."
-blvl: "Params: <number of levels>\n" "Raises your base level the desired number of levels."
-jlvl: "Params: <number of levels>\n" "Raises your job level the desired number of levels."
-allskill: "Give you all skills."
-stpoint: "Params: <number of points> - Gives you the desired number of stat points."
-skpoint: "Params: <number of points> - Gives you the desired number of skill points."
-zeny: "Params: <amount> - Gives you desired amount of Zeny."
-cash: "Params: <amount> - Gives you the specified amount of cash points."
-points: "Params: <amount> - Gives you the specified amount of Kafra Points."
-str: "Params: <amount>\n" "Raises STR by given amount."
-agi: "Params: <amount>\n" "Raises AGI by given amount."
-dex: "Params: <amount>\n" "Raises DEX by given amount."
-vit: "Params: <amount>\n" "Raises VIT by given amount."
-int: "Params: <amount>\n" "Raises INT by given amount."
-luk: "Params: <amount>\n" "Raises LUK by given amount."
-allstats: "Params: <value>\n" "Adds value in all stats (maximum if no value)."
-addwarp: "Params: <map name> <x coord> <y coord> <NPC name>\n"
-killmonster2: "Kills all monsters of your map (without drops)."
-monster: "Params: <monster name|ID> [<number to spawn> [<desired_monster_name> [<x coord> [<y coord>]]]]\n"
- "@monster2 <desired_monster_name> <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]\n"
-"@spawn/@monster/@summon/@monster2 \"desired monster name\" <monster name|ID> [<number to spawn> [<x coord> [<y coord>]]]\n"
-"@spawn/@monster/@summon/@monster2 <monster name|ID> \"desired monster name\" [<number to spawn> [<x coord> [<y coord>]]]\n"
-"	Spawns the desired monster with any desired name."
-monstersmall: "Params: <monster name|ID>\n" "Spawns a smaller version of a monster."
-monsterbig: "Params: <monster name|ID>\n" "Spawns a larger version of a monster."
-killmonster: "Params: <map>\n" "Kill all monsters of the map (they drop)"
-autoloot: "Params: <on|off|#>\n" "Makes items go straight into your inventory."
-autotrade: "Allows you to vend while you are offline."
-changegm: "Params: <charname>\n" "Changes the leader of your guild (You must be guild leader)"
-changeleader: "Params: <charname>\n" "Changes the leader of your party (You must be party leader)"
-request: "Params: <message>\n" "Sends a message to all connected GMs (via the gm whisper system)"
-sound: "Params: <path to file in data folder or GRF file>\n" "Plays a sound from the data folder or GRF file located on the client."
-clone: "Params: <charname>\n" "Spawns a supportive clone of the given player."
-slaveclone: "Params: <charname>\n" "Spawns a supportive clone of the given player that follows the creator around."
-evilclone: "Params: <charname>\n" "Spawns an aggressive clone of the given player."
-changesex: "Changes your gender."
-duel: "Starts a duel."
-invite: "Invites a player to a duel."
-accept: "Accepts an invitation to a duel."
-reject: "Rejects an invitation to a duel."
-leave: "Leaves a duel."
-mail: "Open mail box."
-storage: "Opens storage."
-itemreset: "Remove all your items."
-guildstorage: "Opens guild storage."
-idsearch: "Params: <part_of_item_name>\n" "Search all items that name have part_of_item_name"
-refine: "Params: <equip position> <+/- amount>"
-produce: "Params: <equip name or equip ID> <element> <# of very's>\n"
-"	Element: 0=None 1=Ice 2=Earth 3=Fire 4=Wind\n"
-"	You can add up to 3 Star Crumbs and 1 element\n"
-repairall: "Repair all items of your inventory"
-item: "Params: <item name or ID> <quantity>\n" "Gives you the desired item."
-item2: "Params: <item name or ID> <quantity> <identified_flag> <refine> <broken_flag> <Card1> <Card2> <Card3> <Card4>\n" "Gives you the desired item."
-pvpon: "Turns pvp on on the current map"
-pvpoff: "Turns pvp off on the current map"
-gvgon: "Turns gvg on on the current map"
-gvgoff: "Turns gvg off on the current map"
-agitstart: "Starts War of Emperium"
-agitend: "End War of Emperium"
-party: "Params: <party_name>\n" "Create a party."
-guild: "Params: <guild_name>\n" "Create a guild."
-glvl: "Params: <# of levels>\n" "Raise Guild by desired number of levels"
-guildrecall: "Params: <guild name|ID>\n" "Warps all online characters of a guild to you."
-partyrecall: "Params: <party name|ID>\n" "Warps all online characters of a party to you."
-petrename: "Re-enable pet rename"
-pettalk: "Params: <message>\n" "Makes your pet say a message."
-petfriendly: "Params: <#>\n" "Set pet friendly amount (0-1000) 1000 = Max"
-pethungry: "Params: <#>\n" "Set pet hungry amount (0-100) 100 = Max"
-hatch: "Create a pet from your inventory eggs list."
-makeegg: "Params: <pet_id>\n" "Gives pet egg for monster number in pet DB"
-kick: "Params: <char name>\n" "Kicks specified character off the server"
-unjail: "Params: <char name>\n" "Discharges specified character/prisoner"
-kill: "Kills player."
-recall: "Params: <char name>\n" "Warps target character to you."
-raise: "Params: <char name>\n" "Revives target character."
-block: "Params: <char name>\n" "Permanently blocks an account."
-unblock: "Params: <char name>\n" "Unblocks an account."
-ban: "Params: <time> <name>\n" "Temporarily ban an account.\n"
- "	time usage: adjustment (+/- value) and element (y/a, m, d/j, h, mn, s)\n"
- "	Example: @ban +1m-2mn1s-6y testplayer\n"
-unban: "Params: <name> - Unban a account"
-jail: "Params: <char name> - Sends specified character in jails"
-trade: "Params: <char name> - Open a trade window with a another player"
-recallall: "Warps every character online to you."
-doom: "Kills all NON GM chars on the server."
-doommap: "Kills all non GM characters on the map."
-raisemap: "Resurrects all characters on the map."
-night: "Enables night mode on all maps, all characters are affected."
-day: "Disables night mode and restores regular lighting, all characters are affected."
-skillon: "Turn skills on for a map."
-skilloff: "Turn skills off for a map."
-snow: "Makes all maps to have the snow weather effect."
-clouds: "Makes all maps to have the cloudy weather effect."
-clouds2: "Makes all maps to have another cloudy weather effect."
-fog: "Makes all maps to have the fog weather effect."
-fireworks: "Makes all maps to have the fireworks weather effect."
-sakura: "Makes all maps to have the sakura weather effect."
-leaves: "Makes all maps to have the leaves weather effect."
-shownpc: "Params: <NPC name>\n" "Enable a NPC."
-hidenpc: "Params: <NPC name>\n" "Disable a NPC."
-npcmove: "Params: <x coord> <y coord> <NPC name>\n" "Move a NPC."
-loadnpc: "Params: <path to script>\n" "Load the specified script file path."
-unloadnpc: "Params: <NPC name>\n" "Unload the specified NPC according to name."
-unloadnpcfile: "Params: <path>\n" "Unload the specified script file path."
-adjgroup: "Params: <level> <char name>\n" "Do a temporary adjustment of the group level of a player."
-addperm: "Params: <permission_name>\n" "Temporarily add a permission to a player."
-rmvperm: "Params: <permission_name>\n" "Temporarily remove a permission from a player."
-kickall: "Kick all characters off the server"
-mapexit: "Kick all players and shut down map-server."
-gat: "For debugging (you inspect around gat)"
-send: "Params: <Hex Number> [<value>]\n" "For debugging (packet variety)"
-nuke: "Params: <char name>\n" "Blow somebody up, including those surrounding them."
-reloadatcommand: "Reload atcommand settings."
-reloadbattleconf: "Reload battle settings."
-reloaditemdb: "Reload item database."
-reloadmobdb: "Reload monster database."
-reloadmotd: "Reload Message of the Day."
-reloadmsgconf: "Reload message configuration."
-reloadpcdb: "Reload player settings."
-reloadquestdb: "Reload quest database."
-reloadscript: "Reload all scripts."
-reloadskilldb: "Reload skills definition database."
-reloadstatusdb: "Reload status settings."
-reload: "Params: <type>\n" "Reload a database or configuration file.\n"
-	"   itemdb                mobdb          skilldb\n"
-	"   atcommand       battleconf     statusdb\n"
-	"   pcdb                    motd             script\n"
-	"   questdb              msgconf       packetdb\n"
-langtype: "Params: <language>\n" "Changes your language setting."
-limitedsale: "Opens the limited sale window."
-changedress: "Removes all character costumes."
-camerainfo: "Shows or updates the client's camera settings."

+ 33 - 0
conf/import-tmpl/atcommands.yml

@@ -0,0 +1,33 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2017 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/>.
+#
+###########################################################################
+# Atcommand Database
+###########################################################################
+#
+# Atcommand Settings
+#
+###########################################################################
+# - Command                  Command name.
+#   Aliases:                 Aliases for the command. (Optional)
+#     - <AliasName>
+#   Help                     Help message for the command. (Optional)
+###########################################################################
+
+Header:
+  Type: ATCOMMAND_DB
+  Version: 1

+ 33 - 11
conf/import-tmpl/inter_server.yml

@@ -1,15 +1,37 @@
-# Config for Storages
+# This file is a part of rAthena.
+#   Copyright(C) 2017 rAthena Development Team
+#   https://rathena.org - https://github.com/rathena
 #
-# To access the premium storage, use script command 'openstorage2'.
-# If premium storages are added, copy the structure of the storage table and match the table name in this config.
-# The 'max' of premium storages are not adjusted by 'vip_storage_increase' config nor MIN_STORAGE.
+# 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/>.
+#
+##########################################################################
+# Storage Database
+##########################################################################
 #
-# Structure:
-#	- ID: <storage_id>          // (int) Storage ID will be used for script command 'openstorage2'.
-#	  Name: "<storage name>"    // (string) Storage name will be sent to the client to display on the title bar.
-#	  Table: "<storage_table>"  // (string) Name of table where storage is saved. The table stucture is the same as the default storage table.
-#	  Max: <max_amount>         // (int) *optional* Maximum number of items in storage. MAX_STORAGE will be used if no value is defined.
-###############################################################################################################################################
+# Storage Settings
+#
+##########################################################################
+#	- ID                       Storage ID.
+#	  Name                     Storage name that will be sent to the client to display on the title bar.
+#	  Table                    Name of SQL table where storage is saved. The table structure is the same as the default storage table.
+#	  Max                      Maximum number of items. (Default: MAX_STORAGE)
+###########################################################################
+# To access the premium storage, use script command 'openstorage2'.
+# If more premium storages are added, copy the structure of the storage table and match the table name in this config.
+# The 'Max' of premium storages are not adjusted by 'vip_storage_increase' config nor MIN_STORAGE.
+###########################################################################
+
 Header:
   Type: INTER_SERVER_DB
   Version: 1
@@ -17,5 +39,5 @@ Header:
 #Body:
 #   - ID: 1
 #     Name: "VIP Storage"
-#     Table: "vip_storage"
+#     Table: vip_storage
 #     Max: 300

+ 0 - 2
conf/inter_athena.conf

@@ -81,8 +81,6 @@ mysql_reconnect_count: 1
 // Login Database Tables
 login_server_account_db: login
 ipban_table: ipbanlist
-
-// Shared
 global_acc_reg_num_table: global_acc_reg_num
 global_acc_reg_str_table: global_acc_reg_str
 

+ 15 - 11
conf/inter_server.yml

@@ -15,18 +15,22 @@
 # You should have received a copy of the GNU General Public License
 # along with this program. If not, see <http://www.gnu.org/licenses/>.
 #
-###########################################################################
-# Config for Storages
+##########################################################################
+# Storage Database
+##########################################################################
 #
-# To access the premium storage, use script command 'openstorage2'.
-# If premium storages are added, copy the structure of the storage table and match the table name in this config.
-# The 'max' of premium storages are not adjusted by 'vip_storage_increase' config nor MIN_STORAGE.
+# Storage Settings
 #
-# Structure:
-#	- ID: <storage_id>          // (int) Storage ID will be used for script command 'openstorage2'.
-#	  Name: "<storage name>"    // (string) Storage name will be sent to the client to display on the title bar.
-#	  Table: "<storage_table>"  // (string) Name of table where storage is saved. The table stucture is the same as the default storage table.
-#	  Max: <max_amount>         // (int) *optional* Maximum number of items in storage. MAX_STORAGE will be used if no value is defined.
+##########################################################################
+#	- ID                       Storage ID.
+#	  Name                     Storage name that will be sent to the client to display on the title bar.
+#	  Table                    Name of SQL table where storage is saved. The table structure is the same as the default storage table.
+#	  Max                      Maximum number of items. (Default: MAX_STORAGE)
+###########################################################################
+# To access the premium storage, use script command 'openstorage2'.
+# If more premium storages are added, copy the structure of the storage table and match the table name in this config.
+# The 'Max' of premium storages are not adjusted by 'vip_storage_increase' config nor MIN_STORAGE.
+###########################################################################
 
 Header:
   Type: INTER_SERVER_DB
@@ -35,7 +39,7 @@ Header:
 Body:
   - ID: 0
     Name: "Storage"
-    Table: "storage"
+    Table: storage
 
 Footer:
   Imports:

+ 6 - 1
conf/login_athena.conf

@@ -52,7 +52,8 @@ console_silent: 0
 console: off
 
 // Can you use _M/_F to make new accounts on the server?
-new_account: yes
+// Note: This only works if client side password encryption is not enabled.
+new_account: no
 
 //If new_account is enabled, minimum length to userid and passwords should be 4?
 //Must be 'Yes' unless your client uses both 'Disable 4 LetterUserID/Password' Diffs
@@ -162,6 +163,10 @@ dnsbl_servers: bl.blocklist.de, socks.dnsbl.sorbs.net
 // Note: see 'doc/md5_hashcheck.txt' for more details.
 client_hash_check: off
 
+// Enable web authentication token system
+// This is required for new clients that get data via an additional API over HTTP
+use_web_auth_token: yes
+
 // Client MD5 hashes
 // The client with the specified hash can be used to log in by players with
 // a group_id equal to or greater than the given value.

+ 0 - 2
conf/map_athena.conf

@@ -117,8 +117,6 @@ save_settings: 4095
 motd_txt: conf/motd.txt
 
 // When @help or @h is typed when you are a gm, this is displayed for helping new gms understand gm commands.
-help_txt: conf/help.txt
-help2_txt: conf/help2.txt
 charhelp_txt: conf/charhelp.txt
 
 // Load channel config from

+ 105 - 0
conf/maps_athena.conf

@@ -1345,6 +1345,111 @@ map: 2012rwc_06
 map: 2012rwc_07
 map: 2012rwc_08
 
+// ep17.1
+map: 1@cor
+map: 1@os_a
+map: 1@os_b
+map: 1@rgsr
+map: gl_cas01_
+map: mag_dun03
+map: pub_cat
+map: rgsr_in
+map: sp_cor
+map: sp_os
+map: sp_rudus
+map: sp_rudus2
+map: sp_rudus3
+map: sp_rudus4
+
+// ep17.2
+map: 1@bamn
+map: 1@bamq
+map: 1@ghg
+map: 1@herbs
+map: 1@lost
+map: ba_2whs01
+map: ba_2whs02
+map: ba_bath
+map: ba_in01
+map: ba_lib
+map: ba_maison
+map: ba_pw01
+map: ba_pw02
+map: ba_pw03
+map: 1@odin
+map: odin_past
+
+// Illusion of Labyrinth
+map: prt_mz03_i
+
+// Illusion of Underwater
+map: iz_d04_i
+map: iz_d05_i
+
+// 4th jobs change
+map: 1@4win
+map: 1@4mag
+map: 1@4mst
+map: 1@4sac
+map: 1@4tro
+map: 1@4inq
+map: 1@4cdn
+map: 1@4igd
+map: 1@4drk
+map: job4_bio
+map: job4_mag
+map: job4_tro
+
+// Gefen Night Arena
+map: 1@ge_sn
+
+// Traces of heroes
+map: 1@mjo1
+map: 1@mjo2
+map: 1@spa2
+
+// Instance Thanatos Tower
+map: 1@thts
+map: 2@thts
+map: 3@thts
+map: 4@thts
+map: 5@thts
+map: 6@thts
+map: 7@thts
+map: 8@thts
+
+// Glastheim Challenge Mode
+map: 1@gl_he
+map: 1@gl_he2
+
+// EDDA
+map: 1@gl_prq
+map: 1@gol1
+map: 1@gol2
+
+// 2018 Halloween
+map: 1@halo
+
+// Constellation Tower
+map: 1@ch_t
+map: 2@ch_t
+map: 3@ch_t
+
+// ?? after 17.1
+map: abyss_04
+map: amicitia1
+map: amicitia2
+map: ba_chess
+map: ba_go
+map: ba_lost
+map: ein_dun03
+map: e_hugel
+map: grademk
+map: nif_dun01
+map: nif_dun02
+map: tra_fild
+map: verus02_a
+map: verus02_b
 
 //------------------------- Clone Maps ---------------------------
 //------------------------- Extra Maps ---------------------------

+ 48 - 20
conf/msg_conf/map_msg.conf

@@ -41,7 +41,7 @@
 24: Job level raised.
 25: Job level lowered.
 26: Help commands:
-27: Commands help is not available.
+//27: free
 28: No player found.
 29: 1 player found.
 30: %d players found.
@@ -92,7 +92,7 @@
 75: War of Emperium is currently not in progress.
 76: All skills have been added to your skill tree.
 77: The reference result of '%s' (name: id):
-78: - %s: %d
+78: - %s: %u
 79: It is %d affair above.
 80: Give the display name or monster name/id please.
 81: Your GM level doesn't authorize you to perform this action on the specified player.
@@ -179,7 +179,7 @@
 166: No item has been refined.
 167: 1 item has been refined.
 168: %d items have been refined.
-169: The item (%hu: '%s') is not equipable.
+169: The item (%u: '%s') is not equipable.
 170: The item is not equipable.
 171: %d - void
 //172: You replace previous memo position %d - %s (%d,%d).
@@ -353,6 +353,12 @@
 // 334: Thirty-Four Castles
 334: Total Domination
 
+// Battlegrounds Queue
+337: You can't apply to a battleground queue from this map.
+338: You can't apply to a battleground queue due to recently deserting a battleground. Time remaining: %d minutes and %d seconds.
+339: You can't apply to a battleground queue for %d seconds due to recently leaving one.
+340: Participants were unable to join. Delaying entry for more participants.
+
 // Templates for @who output
 343: Name: %s
 344: (%s)
@@ -423,8 +429,8 @@
 404: War of Emperium SE is currently in progress.
 405: War of Emperium SE has been ended.
 406: War of Emperium SE is currently not in progress.
-//407: free
 //chrif related
+407: Char-Server disconnected
 408: Need disconnection to perform change-sex request...
 409: Your sex has been changed (need disconnection by the server)...
 //410-411 used by cash shop
@@ -545,7 +551,7 @@
 
 // Trade Spoof Messages
 538: Hack on trade: character '%s' (account: %d) try to trade more items that he has.
-539: This player has %d of a kind of item (id: %hu), and tried to trade %d of them.
+539: This player has %d of a kind of item (id: %u), and tried to trade %d of them.
 540: This player has been definitivly blocked.
 
 // Rare Items Drop/Steal announce
@@ -733,19 +739,19 @@
 707: You are VIP until: %s
 708: The player is now VIP until: %s
 
-709: Item %hu has been removed from your inventory.
-710: Item %hu has been removed from your cart.
-711: Item %hu has been removed from your storage.
+709: Item %u has been removed from your inventory.
+710: Item %u has been removed from your cart.
+711: Item %u has been removed from your storage.
 
 // Item shop
-712: You do not have enough %s (%hu).
+712: You do not have enough %s (%u).
 713: You do not have enough '%s'.
-714: Item Shop List: %s (%hu)
+714: Item Shop List: %s (%u)
 715: Point Shop List: '%s'
 716: Your '%s' is now: %d
 
 // MVP EXP reward message
-717: Congratulations! You are the MVP! Your reward EXP Points are %u !!
+717: Congratulations! You are the MVP! Your reward EXP Points are %llu !!
 
 // @showrate
 718: Personal rate information is not displayed now.
@@ -865,7 +871,10 @@
 // pcblock command
 794: This action is currently blocked.
 
-//795-899 free
+// @reloadattendancedb
+795: Attendance database has been reloaded.
+
+//796-899 free
 
 //------------------------------------
 // More atcommands message
@@ -1052,7 +1061,7 @@
 
 // @reloadatcommand
 1036: Error reading groups.conf, reload failed.
-1037: Error reading atcommand_athena.conf, reload failed.
+//1037 free
 
 // @mapinfo
 1038: Please enter at least one valid list number (usage: @mapinfo <0-3> <map>).
@@ -1232,9 +1241,9 @@
 1189: Item not found.
 1190: You're already autolooting this item.
 1191: Your autolootitem list is full. Remove some items first with @autolootid -<item name or ID>.
-1192: Autolooting item: '%s'/'%s' {%hu}
+1192: Autolooting item: '%s'/'%s' {%u}
 1193: You're currently not autolooting this item.
-1194: Removed item: '%s'/'%s' {%hu} from your autolootitem list.
+1194: Removed item: '%s'/'%s' {%u} from your autolootitem list.
 1195: You can have %d items on your autolootitem list.
 1196: To add an item to the list, use "@alootid +<item name or ID>". To remove an item, use "@alootid -<item name or ID>".
 1197: "@alootid reset" will clear your autolootitem list.
@@ -1324,12 +1333,12 @@
 1239: Please enter a monster name/ID (usage: @mobinfo <monster_name_or_monster_ID>).
 1240: MVP Monster: '%s'/'%s'/'%s' (%d)
 1241: Monster: '%s'/'%s'/'%s' (%d)
-1242:  Lv:%d  HP:%d  Base EXP:%u  Job EXP:%u  HIT:%d  FLEE:%d
+1242:  Lv:%d  HP:%d  Base EXP:%llu  Job EXP:%llu  HIT:%d  FLEE:%d
 1243:  DEF:%d  MDEF:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244:  ATK:%d~%d  Range:%d~%d~%d  Size:%s  Race: %s  Element: %s (Lv:%d)
 1245:  Drops:
 1246: This monster has no drops.
-1247:  MVP Bonus EXP:%u
+1247:  MVP Bonus EXP:%llu
 1248:  MVP Items:
 1249: This monster has no MVP prizes.
 
@@ -1383,7 +1392,7 @@
 
 // @iteminfo
 1276: Please enter an item name/ID (usage: @ii/@iteminfo <item name/ID>).
-1277: Item: '%s'/'%s'[%d] (%hu) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
 1278: None
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1393,7 +1402,7 @@
 
 // @whodrops
 1284: Please enter item name/ID (usage: @whodrops <item name/ID>).
-1285: Item: '%s'[%d] (ID:%hu)
+1285: Item: '%s'[%d] (ID: %u)
 1286:  - Item is not dropped by mobs.
 1287:  - Common mobs with highest drop chance (only max %d are listed):
 
@@ -1531,7 +1540,7 @@
 1370: Usage: ex. "@set PoringCharVarSTR$" outputs its value, Super Duper String.
 1371: NPC variables may not be used with @set.
 1372: Instance variables may not be used with @set.
-1373: %s value is now: %d
+1373: %s value is now: %lld
 1374: %s value is now: %s
 1375: %s is blank.
 
@@ -1704,5 +1713,24 @@
 1503: You've entered a PK Zone.
 1504: You've entered a PK Zone (safe until level %d).
 
+// @setquest, @erasequest, @completequest
+1505: Usage: %s <quest ID>
+1506: Quest %d not found in DB.
+1507: Character already has quest %d.
+1508: Character doesn't have quest %d.
+
+// @checkquest
+1509: Checkquest value for quest %d
+1510: >    HAVEQUEST : %d
+1511: >    HUNTING   : %d
+1512: >    PLAYTIME  : %d
+
+// @changegm
+1513: Currently in WoE hours, unable to delegate Guild leader
+1514: You have to wait for a while before delegating a new Guild leader
+
+// @hatereset
+1515: Reset 'Hatred' monsters.
+
 //Custom translations
 import: conf/msg_conf/import/map_msg_eng_conf.txt

+ 12 - 12
conf/msg_conf/map_msg_chn.conf

@@ -45,7 +45,7 @@
 24: 職業等級 上升
 25: 職業等級 下降
 26: 求助指令:
-27: 找不到檔案: help.txt
+//27: free
 28: 沒有玩家
 29: 有 1 位玩家
 30: 有 %d 位玩家
@@ -96,7 +96,7 @@
 75: 公會戰還沒開始
 76: 您學會了所有技能
 77: 委託 '%s' (名字: 編號):
-78: %s: %d
+78: %s: %u
 79: 查詢到 %d 個符合條件的結果
 80: 重新讀取任務資料庫
 81: 您的GM 等級並沒有權限在這位玩家上執行這個動作
@@ -183,7 +183,7 @@
 166: 沒有道具被精練
 167: 1 個道具已被精練
 168: %d 個道具已被精練
-169: 此物品 (%d '%s')不是裝備
+169: 此物品 (%u: '%s')不是裝備
 170: 此物品不是裝備
 171: %d - 無
 //172: You replace previous memo position %d - %s (%d,%d).
@@ -500,7 +500,7 @@
 537: 玩家'%s' (account: %d) 試圖使用外掛(它試圖偵測假的怪物)
 // Trade Spoof Messages
 538: 危險交易: 玩家 '%s' (account: %d) 嘗試交易超過他所有的數量
-539: 這個使用者有%d 個物品(物品id: %d), 嘗試交易%d 個
+539: 這個使用者有%d 個物品(物品id: %u), 嘗試交易%d 個
 540: 這個使用者已經被伺服器屏蔽
 // Rare Items Drop/Steal announce
 541: '%s' 取得 %s's %s (機率為: %%%0.02f)
@@ -867,7 +867,7 @@
 
 // @reloadatcommand
 1036: Error reading groups.conf, reload failed.
-1037: Error reading atcommand_athena.conf, reload failed.
+//1037 free
 
 // @mapinfo
 1038: 請至少輸入一個有效的列表數字 (使用方法: @mapinfo <0-3> [地圖名稱])
@@ -1042,9 +1042,9 @@
 1189: 未找到此道具。
 1190: 此道具已在自動檢取列表中了。
 1191: 自動檢取列表已經滿了,移除某些道具方法 @autolootid -<道具名稱或ID>。
-1192: 自動檢取的道具為: '%s'/'%s' {%d}。
+1192: 自動檢取的道具為: '%s'/'%s' {%u}。
 1193: 目前你尚未將此道具列入自動檢取項目中。
-1194: 已從自動檢取列表中移除道具: '%s'/'%s' {%d}。
+1194: 已從自動檢取列表中移除道具: '%s'/'%s' {%u}。
 1195: 在自動檢取列表你最多能有 %d 個檢取的項目。
 1196: 如要在自動檢取項目列表增加檢取道具,使用 "@alootid +<道具名稱或ID>", 如要從列表移除道具 "@alootid -<道具名稱或ID>"。
 1197: "@alootid reset" 將會清空所有自動檢取項目列表。
@@ -1134,12 +1134,12 @@
 1239: 請輸入魔物名稱或魔物ID (用法: @mobinfo <魔物名稱或魔物ID>).
 1240: MVP 魔物: '%s'/'%s'/'%s' (%d)
 1241: 魔物: '%s'/'%s'/'%s' (%d)
-1242: 等級:%d  血量:%d  基本經驗值:%u  職業經驗值:%u  命中率:%d  迴避率:%d
+1242: 等級:%d  血量:%d  基本經驗值:%llu  職業經驗值:%llu  命中率:%d  迴避率:%d
 1243: 防禦:%d  魔防:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244: 物理攻擊力:%d~%d 攻擊範圍:%d~%d~%d  體型:%s  種族: %s  屬性: %s (Lv:%d)
 1245: 掉落:
 1246: 此魔物不掉落道具.
-1247: MVP額外經驗值:%u
+1247: MVP額外經驗值:%llu
 1248: MVP額外獎勵道具:
 1249: 此魔物無MVP額外獎勵道具.
 
@@ -1193,7 +1193,7 @@
 
 // @iteminfo
 1276: 請輸入 物品名稱/ID (用法: @ii/@iteminfo <物品名稱/ID>).
-1277: 物品: '%s'/'%s'[%d] (%d) 類型: %s | 額外效果: %s
+1277: 物品: '%s'/'%s'[%d] (%u) 類型: %s | 額外效果: %s
 1278: None
 1279: With script
 1280: NPC 買價:%dz, 賣價:%dz | 重量: %.1f 
@@ -1341,8 +1341,8 @@
 1370: 用法: ex. "@set PoringCharVarSTR$" outputs its value, Super Duper String.
 1371: NPC variables may not be used with @set.
 1372: Instance variables may not be used with @set.
-1373: %s value is now :%d
-1374: %s value is now :%s
+1373: %s value is now: %lld
+1374: %s value is now: %s
 1375: %s is empty
 //1376: free
 

+ 12 - 12
conf/msg_conf/map_msg_frn.conf

@@ -45,7 +45,7 @@
 24: Job level augmenté.
 25: Job level baissé.
 26: Commandes d'aide:
-27: Commandes d'aide non-disponible.
+//27: free
 28: Aucun Joueur trouvé.
 29: 1 Joueur trouvé.
 30: %d Joueurs trouvés.
@@ -96,7 +96,7 @@
 75: La War of Emperium n'est pas en cours.
 76: Toutes les compétences sont ajoutées à votre arbre de compétence.
 77: Résultat de '%s' (nom: id):
-78: %s: %d
+78: %s: %u
 79: %d résultats sont affichés.
 80: Veuillez donner le nom/id du montre.
 81: Votre niveau de GM ne vous autorise pas à effectuer cette action sur le Joueur spécifié.
@@ -183,7 +183,7 @@
 166: Aucun équipement n'a été raffiné.
 167: 1 objet raffiné.
 168: %d objets raffinés.
-169: L'objet (%hu: '%s') ne peut pas s'équiper.
+169: L'objet (%u: '%s') ne peut pas s'équiper.
 170: L'objet ne peut pas s'équiper.
 171: %d - void
 //172: You replace previous memo position %d - %s (%d,%d).
@@ -512,7 +512,7 @@
 537: Personnage '%s' (compte: %d) essaie d'utiliser un bot (il essaie de détecter un faux mob).
 // Trade Spoof Messages
 538: Hack sur échange: Personnage '%s' (account: %d) essaie d'échanger plus d'Objets qu'il ne possède.
-539: Ce Joueur a %d d'une sorte d'Objet (id: %hu), et tente d'en échanger %d.
+539: Ce Joueur a %d d'une sorte d'Objet (id: %u), et tente d'en échanger %d.
 540: Joueur définitivement bloqué.
 // Rare Items Drop/Steal announce
 541: '%s' obtient de %s l'Objet %s (chance: %0.02f%%)
@@ -879,7 +879,7 @@
 
 // @reloadatcommand
 1036: Erreur à la lecture de groups.conf, reload échoué.
-1037: Erreur à la lecture de atcommand_athena.conf, reload échoué.
+//1037 free
 
 // @mapinfo
 1038: Entrez un numéro de la liste (usage: @mapinfo <0-3> <map>).
@@ -1055,9 +1055,9 @@
 1189: Objet trouvable.
 1190: Vous ramasser déjà automatiquement cet Objet.
 1191: Votre liste d'Objet à ramasser est pleine. Supprimez des Objets avec @autolootid -<nom_ou_ID_Objet>.
-1192: Ramassage automatique de: '%s'/'%s' {%hu}
+1192: Ramassage automatique de: '%s'/'%s' {%u}
 1193: Actuellement vous ne ramassez pas automatiquement cet Objet.
-1194: Onjet supprimé: '%s'/'%s' {%hu} de votre liste de 'autolootitem'.
+1194: Onjet supprimé: '%s'/'%s' {%u} de votre liste de 'autolootitem'.
 1195: Vous pouvez avoir %d Objets dans votre liste d'Objets ramassés automatiquement avec 'autolootitem'.
 1196: Pour ajouter un Objet à votre liste, utilisez "@alootid +<nom_ou_ID_Objet>". Pour supprimer un Objet de la liste, utilisez "@alootid -<nom_ou_ID_Objet>".
 1197: "@alootid reset" videra votre liste d'Objets ramassés automatiquement avec 'autolootitem'.
@@ -1147,12 +1147,12 @@
 1239: Entrez un nom de monstre/ID (usage: @mobinfo <nom_du_monstre_ou_ID>).
 1240: Monstre MVP: '%s'/'%s'/'%s' (%d)
 1241: Monstre: '%s'/'%s'/'%s' (%d)
-1242:  Lv:%d  HP:%d  Base EXP:%u  Job EXP:%u  HIT:%d  FLEE:%d
+1242:  Lv:%d  HP:%d  Base EXP:%llu  Job EXP:%llu  HIT:%d  FLEE:%d
 1243:  DEF:%d  MDEF:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244:  ATK:%d~%d  Range:%d~%d~%d  Size:%s  Race: %s  Elément: %s (Lv:%d)
 1245:  Drops:
 1246: Ce monstre n'a pas de drops.
-1247:  MVP Bonus EXP:%u
+1247:  MVP Bonus EXP:%llu
 1248:  MVP Items:
 1249: Ce monstre n'a pas de Prix spécial MVP.
 
@@ -1206,7 +1206,7 @@
 
 // @iteminfo
 1276: Entrez un nom/ID d'objet (usage: @ii/@iteminfo <nom/ID>).
-1277: Item: '%s'/'%s'[%d] (%hu) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
 1278: Aucun
 1279: Avec script
 1280: NPC Acheté:%dz, Vendu:%dz | Poids: %.1f 
@@ -1354,8 +1354,8 @@
 1370: Usage: ex. "@set PoringCharVarSTR$" affiche sa valeur actuelle, Super Duper String.
 1371: Les variables des NPC ne peuvent pas être utilisées/changées avec @set.
 1372: Les variables d'Instance ne peuvent pas être utilisées avec @set.
-1373: %s valeur est maintenant :%d
-1374: %s valeur est maintenant :%s
+1373: %s valeur est maintenant: %lld
+1374: %s valeur est maintenant: %s
 1375: %s est vide
 //1376: free
 

+ 4 - 4
conf/msg_conf/map_msg_grm.conf

@@ -44,7 +44,7 @@
 24: Job Level erhöht.
 25: Job Level verringert.
 26: Hilfsbefehle:
-27: Der help-Befehl ist nicht verfügbar.
+//27: free
 28: Kein Spieler gefunden.
 29: 1 Spieler gefunden.
 30: %d Spieler gefunden.
@@ -95,7 +95,7 @@
 75: War of Emperium ist zur Zeit nicht im Gange.
 76: Alle Fähigkeiten wurden deinem Fähigkeitenbaum hinzugefügt.
 77: Das Ergebnis der Suche nach '%s' lautet (Name: ID):
-78: %s: %d
+78: %s: %u
 79: Es wurden %d Gegenstände gefunden.
 80: Gib bitte den Anzeige-Namen oder die Monster-ID an.
 81: Dein GM-Level berechtigt dich nicht, diese Aktion auf dem angegebenen Spieler auszuführen.
@@ -182,7 +182,7 @@
 166: Kein Items sind refined.
 167: 1 Item ist refined.
 168: %d Items sind refined.
-169: Das Item (%d: '%s') ist nicht ausrüstbar.
+169: Das Item (%u: '%s') ist nicht ausrüstbar.
 170: Das Item ist nicht ausrüstbar.
 171: %d - ungültig
 //172: You replace previous memo position %d - %s (%d,%d).
@@ -438,7 +438,7 @@
 537: Charakter '%s' (account: %d) Versucht einen Bot zu benutzen (Es versucht einen fake Mob zu entlarven).
 // Trade Spoof Messages
 538: Hack bei Handel: Charakter '%s' (account: %d) versucht mit mehr Items zu Handeln als er besitzt.
-539: Dieser Spieler hat %d vom folgendem Item (id: %d), und versuchte %d von ihnen zu Handeln.
+539: Dieser Spieler hat %d vom folgendem Item (id: %u), und versuchte %d von ihnen zu Handeln.
 540: Dieser Spieler wurde definitiv blockiert.
 // Rare Items Drop/Steal announce
 541: '%s' got %s's %s (chance: %0.02f%%)

+ 15 - 18
conf/msg_conf/map_msg_idn.conf

@@ -41,7 +41,7 @@
 24: Job Level dinaikkan.
 25: Job Level diturunkan.
 26: Bantuan command:
-27: Bantuan command tidak tersedia.
+//27: free
 28: Pemain tidak ditemukan.
 29: 1 pemain ditemukan.
 30: %d pemain ditemukan.
@@ -92,7 +92,7 @@
 75: War of Emperium saat ini tidak sedang berjalan.
 76: Semua skill telah ditambahkan ke skill tree.
 77: Hasil referensi dari '%s' (nama: id):
-78: - %s: %d
+78: - %s: %u
 79: Terdapat %d hal di atas.
 80: Harap berikan nama tampilan atau nama/id monster.
 81: Level GM kamu tidak diizinkan untuk untuk melakukan aksi ini pada pemain tertentu.
@@ -179,7 +179,7 @@
 166: Tidak ada item yang ditempa.
 167: 1 item berhasil ditempa.
 168: %d item berhasil ditempa.
-169: Item (%hu: '%s') tidak bisa dipakai.
+169: Item (%u: '%s') tidak bisa dipakai.
 170: Item ini tidak bisa dipakai.
 171: %d - sudah habis
 //172: Kamu sudah mengganti posisi memo %d - %s (%d,%d).
@@ -544,7 +544,7 @@
 
 // Pesan tentang pelanggaran transaksi.
 538: Hack pada transaksi: Karakter '%s' (akun: %d) sedang mencoba mentransaksikan item lebih dari yang dia punya.
-539: Pemain ini memiliki %d jenis item (id: %hu), dan sedang mencoba untuk mentransaksikan %d item.
+539: Pemain ini memiliki %d jenis item (id: %u), dan sedang mencoba untuk mentransaksikan %d item.
 540: Pemain ini sudah diblok.
 
 // Pesan tentang item langka yang berhasil didapatkan atau dicuri.
@@ -732,20 +732,17 @@
 707: VIP anda berlaku hingga: %s
 708: Status VIP pemain aktif hingga: %s
 
-709: Item %hu telah dihapus dari inventory-mu.
-710: Item %hu telah dihapus dari cart-mu.
-711: Item %hu telah dihapus dari storage-mu.
+709: Item %u telah dihapus dari inventory-mu.
+710: Item %u telah dihapus dari cart-mu.
+711: Item %u telah dihapus dari storage-mu.
 
 //Item shop
-712: %s (%hu) yang kamu miliki tidak cukup.
+712: %s (%u) yang kamu miliki tidak cukup.
 713: '%s' yang kamu miliki tidak cukup.
-714: Item Shop: %s (%hu)
+714: Item Shop: %s (%u)
 715: Point Shop: '%s'
 716: '%s' milikmu saat ini: %d
 
-//Item Group
-717: [%s] mendapatkan [%s] dari '%s'
-
 //@showrate
 718: Informasi mengenai rate pribadi tidak akan ditampilkan lagi.
 719: Informasi mengenai rate pribadi akan ditampilkan kembali.
@@ -969,7 +966,7 @@
 
 // @reloadatcommand
 1036: Terjadi kesalahan saat membaca groups.conf, tidak berhasil dimuat ulang.
-1037: Terjadi kesalahan saat membaca atcommand_athena.conf, tidak berhasil dimuat ulang.
+//1037 free
 
 // @mapinfo
 1038: Harap masukkan setidaknya 1 pilihan. (Penggunaan: @mapinfo <0-3> <map>).
@@ -1146,9 +1143,9 @@
 1189: Item tidak ditemukan.
 1190: Kamu sudah mengambil secara otomatis item ini.
 1191: Daftar autolooitem penuh. Hilangkan sebagian terlebih dahulu dengan @autolootid -<nama/ID item>.
-1192: Mengambil item secara otomatis: '%s'/'%s' {%hu}
+1192: Mengambil item secara otomatis: '%s'/'%s' {%u}
 1193: Kamu saat ini sedang tidak mengambil item ini secara otomatis.
-1194: Item dihilangkan: '%s'/'%s' {%hu} dari daftar pengambilan otomatismu.
+1194: Item dihilangkan: '%s'/'%s' {%u} dari daftar pengambilan otomatismu.
 1195: Kamu hanya memiliki item %d di daftarmu.
 1196: Untuk menambahkan item ke daftar, gunakan \"@alootid +<ID atau nama item>\". Untuk menghilangkannya, gunakan \"@alootid -<ID atau nama item>\".
 1197: \"@alootid reset\" akan membersihkan daftar autolootitem.
@@ -1243,7 +1240,7 @@
 1244: ATK:%d~%d  Jarak:%d~%d~%d  Ukuran:%s  Race: %s  Elemen: %s (Lv:%d)
 1245: Barang yang dijatuhkan:
 1246: Monster ini tidak menjatuhkan barang.
-1247: Bonus EXP MVP:%u
+1247: Bonus EXP MVP:%llu
 1248: Item MVP:
 1249: Monster ini tidak memiliki bonus MVP.
 
@@ -1297,7 +1294,7 @@
 
 // @iteminfo
 1276: Harap masukkan nama/ID item. (Penggunaan: @ii/@iteminfo <nama/ID item>).
-1277: Item: '%s'/'%s'[%d] (%hu) Jenis: %s | Efek tambahan: %s
+1277: Item: '%s'/'%s'[%d] (%u) Jenis: %s | Efek tambahan: %s
 1278: Tidak ada
 1279: Dengan script.
 1280: NPC Harga Beli:%dz, Harga jual:%dz | Berat: %.1f 
@@ -1445,7 +1442,7 @@
 1370: Contoh penggunaan: \"@set PoringCharVarSTR$\" menampilkan nilainya, Super Duper String.
 1371: Variabel pada NPC tidak boleh digunakan dengan @set.
 1372: Variabel instansi tidak boleh digunakan dengan @set.
-1373: Nilai %s saat ini: %d
+1373: Nilai %s saat ini: %lld
 1374: Nilai %s saat ini: %s
 1375: %s kosong
 //1376: free

+ 18 - 18
conf/msg_conf/map_msg_por.conf

@@ -51,7 +51,7 @@
 24: Nível de classe acrescido.
 25: Nível de classe decrescido.
 26: Comandos de ajuda:
-27: Comandos de ajuda não disponível.
+//27: free
 28: Nenhum jogador encontrado.
 29: 1 jogador encontrado.
 30: %d jogadores encontrados.
@@ -102,7 +102,7 @@
 75: A Guerra do Emperium ainda não foi iniciada.
 76: Todas as habilidades foram adicionadas à sua árvore de habilidades.
 77: O resultado da referência à '%s' (nome: id):
-78: %s: %d
+78: %s: %u
 79: Encontrado %d acima.
 80: Entre com o nome de exibição ou nome/id do monstro.
 81: Seu nível de Game Master não autoriza a realização desta ação neste personagem.
@@ -189,7 +189,7 @@
 166: Nenhum item foi refinado.
 167: 1 item foi refinado.
 168: %d itens foram refinados.
-169: O item (%hu: '%s') não é equipável.
+169: O item (%u: '%s') não é equipável.
 170: O item não é equipável.
 171: %d - vazio
 //172: Você substituiu o ponto de memorização %d - %s (%d,%d).
@@ -555,7 +555,7 @@
 
 // Mensagens de tentativa de Spoof em Negociações
 538: Hack em negociação: personagem '%s' (account: %d) tentou negociar mais itens que possuía.
-539: Este jogador possui %d unidades de um item (id: %hu), e tentou negociar %d destes.
+539: Este jogador possui %d unidades de um item (id: %u), e tentou negociar %d destes.
 540: Este jogador foi bloqueado indefinidamente.
 
 // Anúncio de drop de Itens Raros/Furtar
@@ -744,18 +744,18 @@
 707: Você é VIP até: %s
 708: O jogador agora é VIP até: %s
 
-709: Item %hu foi removido do seu inventário.
-710: Item %hu foi removido do seu carrinho.
-711: Item %hu foi removido do seu armazém.
+709: Item %u foi removido do seu inventário.
+710: Item %u foi removido do seu carrinho.
+711: Item %u foi removido do seu armazém.
 
 // Item shop
-712: Você não possui %s suficiente (%hu).
+712: Você não possui %s suficiente (%u).
 713: Você não tem '%s' suficiente.
-714: Lista de Loja de Itens: %s (%hu)
+714: Lista de Loja de Itens: %s (%u)
 715: Lista de loja de pontos: '%s'
 716: Seu '%s' agora é: %d
 // MVP EXP reward message
-717: Parabéns! Você é o MVP! Sua recompensa EXP Points are %u !!
+717: Parabéns! Você é o MVP! Sua recompensa EXP Points are %llu !!
 
 // @showrate
 718: As informações de taxa pessoal não são exibidas agora.
@@ -1048,7 +1048,7 @@
 
 // @reloadatcommand
 1036: Erro na leitura do grups.conf, recarregamento falhou.
-1037: Erro na leitura do atcommand_athena.conf, recarregamento falhou.
+//1037 free
 
 // @mapinfo
 1038: Digite pelo menos um número válido da lista (uso: @mapinfo <0-3> <mapa>).
@@ -1225,9 +1225,9 @@
 1189: Item não encontrado.
 1190: Você já está autorrecolhendo este item.
 1191: Sua lista de autorrecolhimento está cheia. Remova alguns itens com @autolootid -<nome ou ID do item>.
-1192: Autorrecolhendo item: '%s'/'%s' {%hu}
+1192: Autorrecolhendo item: '%s'/'%s' {%u}
 1193: Você atualmente não está autorrecolhendo este item.
-1194: Removido item: '%s'/'%s' {%hu} da sua lista de autorrecolhimento.
+1194: Removido item: '%s'/'%s' {%u} da sua lista de autorrecolhimento.
 1195: Você pode possuir %d itens na sua lista de autorrecolhimento.
 1196: Para adicionar um item a lista, use "@alootid +<nome ou ID do item>". Para remover um item, use "@alootid -<nome ou ID do item>".
 1197: "@alootid reset" irá limpar a sua lista de autorrecolhimento.
@@ -1317,12 +1317,12 @@
 1239: Digite o nome de um monstro/ID (uso: @mobinfo <nome_ou_ID_do_monstro>).
 1240: Monstro MVP: '%s'/'%s'/'%s' (%d)
 1241: Monstro: '%s'/'%s'/'%s' (%d)
-1242:  Nv:%d  HP:%d  EXP Base:%u  EXP Classe:%u  HIT:%d  ESQV:%d
+1242:  Nv:%d  HP:%d  EXP Base:%llu  EXP Classe:%llu  HIT:%d  ESQV:%d
 1243:  DEF:%d  DEFM:%d  FOR:%d  AGI:%d  VIT:%d  INT:%d  DES:%d  SOR:%d
 1244:  ATQ:%d~%d  Alcance:%d~%d~%d  Tamanho:%s  Raça: %s  Elemento: %s (Nv:%d)
 1245:  Drops:
 1246: Este monstro não possui drops.
-1247:  EXP Bônus MVP:%u
+1247:  EXP Bônus MVP:%llu
 1248:  Itens MVP:
 1249: Este monstro não possui prêmios MVP.
 
@@ -1376,7 +1376,7 @@
 
 // @iteminfo
 1276: Digite o nome/ID de um item (uso: @ii/@iteminfo <nome do item/ID>).
-1277: Item: '%s'/'%s'[%d] (%hu) Tipo: %s | Efeito Extra: %s
+1277: Item: '%s'/'%s'[%d] (%u) Tipo: %s | Efeito Extra: %s
 1278: Nenhum
 1279: Com script
 1280: NPC Compra:%dz, Venda:%dz | Peso: %.1f 
@@ -1524,8 +1524,8 @@
 1370: Uso: ex. "@set PoringCharVarSTR$" exibe seu valor, Super Duper String.
 1371: Variáveis de NPC não podem ser usadas com @set.
 1372: Variáveis de instância não podem ser usadas com @set.
-1373: %s valor agora é :%d
-1374: %s valor agora é :%s
+1373: %s valor agora é: %lld
+1374: %s valor agora é: %s
 1375: %s é vazia
 //1376: free
 

+ 12 - 12
conf/msg_conf/map_msg_rus.conf

@@ -43,7 +43,7 @@
 24: Уровень профессии повышен.
 25: Уровень профессии снижен.
 26: Подсказки для команд:
-27: Подсказки для команд не доступны.
+//27: free
 28: Игроки не найдены.
 29: Найден 1 игрок.
 30: Найдено %d игрока(ов).
@@ -94,7 +94,7 @@
 75: Война за Империум в настоящее время не идёт.
 76: Все навыки добавлены в дерево умений.
 77: Результаты поиска '%s' (название: ID):
-78: %s: %d
+78: %s: %u
 79: Всего найдено %d результатов.
 80: Введите отображаемое имя или ID/название монстра.
 81: Ваши права Администратора не позволяют выполнять данное действие на указанного игрока.
@@ -181,7 +181,7 @@
 166: Ни один предмет не был заточен.
 167: 1 предмет заточен.
 168: %d предметов заточено.
-169: Предмет (%hu: '%s') невозможно надеть.
+169: Предмет (%u: '%s') невозможно надеть.
 170: Предмет невозможно надеть.
 171: %d - пусто
 //172: НЕ ИСПОЛЬЗУЕТСЯ
@@ -512,7 +512,7 @@
 537: Персонаж '%s' (account: %d) пытается использовать бота (попытка определения поддельного монстра).
 // Сообщения о хаках при торгах
 538: Хак при торге: персонаж '%s' (account: %d) попытался выменять больше предметов чем у него есть.
-539: У игрока есть %d штук (id: %hu), и пытался выменять %d из них.
+539: У игрока есть %d штук (id: %u), и пытался выменять %d из них.
 540: Этот игрок был навсегда заблокирован.
 // Объявления о выбивании/краже редких предметов
 541: '%s' выбил %s's %s (шанс: %0.02f%%)
@@ -880,7 +880,7 @@
 
 // @reloadatcommand
 1036: Ошибка чтения файла groups.conf, перезагрузка не удалась.
-1037: Ошибка чтения файла atcommand_athena.conf, перезагрузка не удалась.
+//1037 free
 
 // @mapinfo
 1038: Введите хотя бы один номер (Использование: @mapinfo <0-3> <локация>).
@@ -1055,9 +1055,9 @@
 1189: Предмет не найден.
 1190: Этот предмет вы уже собираете автоматически.
 1191: Список автоматической сборки полон. Удалите некоторые предметы через команду @autolootid -<ID/название предмета>.
-1192: Автоматическое поднятие предмета: '%s'/'%s' {%hu}
+1192: Автоматическое поднятие предмета: '%s'/'%s' {%u}
 1193: Этот предмет вы не собираете автоматически.
-1194: Предмет: '%s'/'%s' {%hu} удалён из списка автоматической сборки предметов.
+1194: Предмет: '%s'/'%s' {%u} удалён из списка автоматической сборки предметов.
 1195: Вы можете иметь %d предметов в списке автоматической сборки предметов.
 1196: Чтобы добавить предмет в список используйте "@alootid +<ID/название предмета>". Чтобы удалить предмет из списка: "@alootid -<ID/название предмета>".
 1197: Команда "@alootid reset" очистит список.
@@ -1147,12 +1147,12 @@
 1239: Введите ID/название монстра (Использование: @mobinfo <ID/название монстра>).
 1240: MVP монстр: '%s'/'%s'/'%s' (%d)
 1241: Монстр: '%s'/'%s'/'%s' (%d)
-1242:  Ур.:%d  HP:%d  Базовый опыт:%u   Проф. опыт:%u  HIT:%d  FLEE:%d
+1242:  Ур.:%d  HP:%d  Базовый опыт:%llu   Проф. опыт:%llu  HIT:%d  FLEE:%d
 1243:  DEF:%d  MDEF:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244:  ATK:%d~%d  Дальность:%d~%d~%d  Размер:%s  Раса: %s  Элемент: %s (Ур.:%d)
 1245:  Предметы:
 1246: С этого монстра не падают предметы.
-1247:  MVP бонус к опыту:%u
+1247:  MVP бонус к опыту:%llu
 1248:  MVP предметы:
 1249:  Этот монстр не имеет MVP призов.
 
@@ -1206,7 +1206,7 @@
 
 // @iteminfo
 1276: Введите ID/название предмета (Использование: @ii/@iteminfo <ID/название предмета>).
-1277: Предмет: '%s'/'%s'[%d] (%hu) Тип: %s | Доп. эффект: %s
+1277: Предмет: '%s'/'%s'[%d] (%u) Тип: %s | Доп. эффект: %s
 1278: Пусто
 1279: Скрипт
 1280: НИП покупка:%d зени, продажа:%d зени | Вес: %.1f 
@@ -1354,8 +1354,8 @@
 1370: Использование: прим. "@set PoringCharVarSTR$" будет иметь значение "Super Duper String".
 1371: Переменные НИП не могут быть использованы командой @set.
 1372: Переменные групп не могут быть использованы командой @set.
-1373: %s значение :%d
-1374: %s значение :%s
+1373: %s значение: %lld
+1374: %s значение: %s
 1375: %s пусто
 //1376: free
 

+ 21 - 17
conf/msg_conf/map_msg_spn.conf

@@ -41,7 +41,7 @@
 24: Has aumentado tu nivel de oficio.
 25: Has disminuido tu nivel de oficio.
 26: Ayuda sobre comandos:
-27: No hay ninguna ayuda disponible.
+//27: free
 28: No se ha encontrado ningún jugador.
 29: Se ha encontrado 1 jugador.
 30: Se han encontrado %d jugadores.
@@ -92,7 +92,7 @@
 75: En estos momentos no hay ninguna guerra de clanes.
 76: Se han añadido todas las habilidades a tu árbol de habilidades.
 77: Estos son los resultados de la búsqueda de '%s' (nombre: ID):
-78: %s: %d
+78: %s: %u
 79: Total de resultados: %d
 80: Debes introducir el nombre del monstruo o su ID.
 81: Tu nivel de GM no te permite utilizar este comando en ese jugador.
@@ -179,7 +179,7 @@
 166: No se ha refinado ningún objeto.
 167: Se ha refinado 1 objeto.
 168: Se han refinado %d objetos.
-169: El objeto (%hu: '%s') no puede ser equipado.
+169: El objeto (%u: '%s') no puede ser equipado.
 170: No puedes equiparte ese objeto.
 171: %d - vacío
 //172: Has reemplazado tu lugar memorizado %d - %s (%d,%d).
@@ -545,7 +545,7 @@
 
 // Mensajes del sistema de intercambio de objetos
 538: Se ha detectado una irregularidad en el intercambio de objetos del personaje '%s' (cuenta: %d), está intentando intercambiar más de lo que tiene.
-539: Ese jugador tiene %d unidades del objeto (id: %hu), pero ha intentado intercambiar %d.
+539: Ese jugador tiene %d unidades del objeto (id: %u), pero ha intentado intercambiar %d.
 540: Ese jugador ha sido bloqueado.
 
 // Anuncios de consecución de objetos poco comunes y robos de objetos.
@@ -733,19 +733,19 @@
 707: Serás VIP hasta: %s
 708: El jugador será VIP hasta: %s
 
-709: El objeto %hu ha sido eliminado de tu inventario.
-710: El objeto %hu ha sido eliminado de tu carro.
-711: El objeto %hu ha sido eliminado de tu almacén.
+709: El objeto %u ha sido eliminado de tu inventario.
+710: El objeto %u ha sido eliminado de tu carro.
+711: El objeto %u ha sido eliminado de tu almacén.
 
 // Item shop
-712: No tienes suficientes %s (%hu).
+712: No tienes suficientes %s (%u).
 713: No tienes suficientes '%s'.
-714: Listado de la tienda de objetos: %s (%hu)
+714: Listado de la tienda de objetos: %s (%u)
 715: Listado de puntos de la tienda: '%s'
 716: Tu '%s' ahora es: %d
 
 // MVP EXP reward message
-717: ¡Enhorabuena! ¡Eres todo un MVP! ¡¡Puntos de experiencia obtenidos: %u!!
+717: ¡Enhorabuena! ¡Eres todo un MVP! ¡¡Puntos de experiencia obtenidos: %llu!!
 
 // @showrate
 718: La información de ratio personal no se mostrará.
@@ -1017,7 +1017,7 @@
 
 // @reloadatcommand
 1036: Ha ocurrido un error al cargar el archivo groups.conf.
-1037: Ha ocurrido un error al cargar el archivo atcommand_athena.conf.
+//1037 free
 
 // @mapinfo
 1038: Introduce un número de la lista (instrucciones: @mapinfo <0-3> <mapa>).
@@ -1194,9 +1194,9 @@
 1189: Ese objeto no existe.
 1190: Ese objeto ya estaba programado para ser recogido automáticamente.
 1191: Tu lista de recogida de objetos de forma automática está llena. Elimina alguno de esos objetos con @autolootid <nombre/ID del objeto>.
-1192: Recogiendo: '%s'/'%s' {%hu}
+1192: Recogiendo: '%s'/'%s' {%u}
 1193: No estás recogiendo ese objeto.
-1194: Has eliminado '%s'/'%s' {%hu} de tu lista de recogida de objetos.
+1194: Has eliminado '%s'/'%s' {%u} de tu lista de recogida de objetos.
 1195: Puedes almacenar %d objetos en tu lista de recogida de objetos.
 1196: Para añadir un nuevo objeto a la lista utiliza @alootid +<nombre/ID del objeto>. Para eliminar un objeto utiliza @alootid -<nombre/ID del objeto>.
 1197: "@alootid reset" reiniciará tu lista de recogida de objetos.
@@ -1286,12 +1286,12 @@
 1239: Introduce el nombre/ID de un monstruo (instrucciones: @mobinfo <nombre/ID del monstruo>).
 1240: Monstruo MVP: '%s'/'%s'/'%s' (%d)
 1241: Monstruo: '%s'/'%s'/'%s' (%d)
-1242: Nv:%d  HP:%d  EXP de base:%u  EXP de oficio:%u  HIT:%d  FLEE:%d
+1242: Nv:%d  HP:%d  EXP de base:%llu  EXP de oficio:%llu  HIT:%d  FLEE:%d
 1243:  DEF:%d  MDEF:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244:  ATK:%d~%d  Rango:%d~%d~%d  Tamaño:%s  Raza: %s  Elemento: %s (Nv:%d)
 1245: Objetos:
 1246: Este monstruo no tiene ningún objeto.
-1247: Bono de EXP MVP:%u
+1247: Bono de EXP MVP:%llu
 1248: Objetos MVP:
 1249: Este monstruo no tiene ningún objeto de MVP.
 
@@ -1345,7 +1345,7 @@
 
 // @iteminfo
 1276: Introduce el nombre/ID de un objeto (instrucciones: @ii/@iteminfo <nombre/ID del objeto>).
-1277: Objeto: '%s'/'%s'[%d] (%hu) Tipo: %s | Efecto: %s
+1277: Objeto: '%s'/'%s'[%d] (%u) Tipo: %s | Efecto: %s
 1278: Ninguno
 1279: Contiene código
 1280: Compra en NPC:%dz, Venta:%dz | Peso: %.1f
@@ -1493,7 +1493,7 @@
 1370: Instrucciones: ej. "@set PoringCharVarSTR$" muestra su valor, cadena de texto.
 1371: Las variables de NPC no se pueden editar con @set.
 1372: Las variables de instancias no se pueden editar con @set.
-1373: El valor %s ahora es: %d
+1373: El valor %s ahora es: %lld
 1374: El valor %s ahora es: %s
 1375: %s está vacío
 
@@ -1666,5 +1666,9 @@
 1503: Has entrado en una zona PK.
 1504: Has entrado en una zona PK (segura hasta el nivel %d).
 
+// @changegm
+1513: No puedes delegar el liderazgo del clan durante el horario de WoE
+1514: Debes esperar un tiempo antes de poder designar un nuevo líder de clan
+
 //Traducciones personalizadas
 import: conf/msg_conf/import/map_msg_spn_conf.txt

+ 11 - 11
conf/msg_conf/map_msg_tha.conf

@@ -45,7 +45,7 @@
 24: Job level à¾ÔèÁ¢Öé¹.
 25: Job level Ŵŧ.
 26: Help commands:
-27: ¤ÓÊÑè§ help äÁèÊÒÁÒöãªéä´é.
+//27: free
 28: äÁ辺¼ÙéàÅè¹.
 29: ¾º¼ÙéàÅè¹ 1 ¤¹.
 30: ¾º¼ÙéàÅè¹ %d ¤¹.
@@ -96,7 +96,7 @@
 75: War of Emperium äÁèä´é·Ó§Ò¹ÍÂÙèã¹¢³Ð¹Õé.
 76: ·Ø¡ Skill ä´é¶Ù¡à¾ÔèÁº¹µÑÇÅФäسàÃÕºÃéÍÂáÅéÇ.
 77: ¼ÅÅѾ¸ì¡Òäé¹ËÒâ´ÂÍéÒ§ÍÔ§¨Ò¡ '%s' (ª×èÍ: ÃËÑÊ):
-78: %s: %d
+78: %s: %u
 79: ¼ÅÅѾ¸ì %d ¢éÒ§µé¹.
 80: ¡ÃسÒÃкت×èÍ Monster ËÃ×Í ÃËÑÊ Monster.
 81: ÃдѺ GM ¢Í§¤Ø³ äÁèä´éÃѺ͹حҵãË館³ÊÒÁÒö´Óà¹Ô¹¡ÒáѺµÑÇÅФ÷ÕèÃкØä´é.
@@ -183,7 +183,7 @@
 166: äÁèÁÕ Item ·Õèä´éÃѺ¡ÒÃÍѾà¡Ãµ.
 167: ÁÕ 1 Item ·Õèä´éÃѺ¡ÒÃÍѾà¡Ãµ.
 168: ÁÕ %d Item ·Õèä´éÃѺ¡ÒÃÍѾà¡Ãµ.
-169: Item (%hu: '%s') ¹ÕéäÁèãªèÍØ»¡Ã³ìÊÇÁãÊè.
+169: Item (%u: '%s') ¹ÕéäÁèãªèÍØ»¡Ã³ìÊÇÁãÊè.
 170: äÁ辺 Item ªÔé¹¹Õéã¹°Ò¹¢éÍÁÙÅ.
 171: %d - ÇèÒ§
 //172: You replace previous memo position %d - %s (%d,%d).
@@ -506,7 +506,7 @@
 537: µÑÇÅФà '%s' (account: %d) ¾ÂÒÂÒÁ·Õè¨Ðãªé bot (Áѹ¾ÂÒÂÒÁ·Õè¨ÐµÃǨ¾º monster »ÅÍÁ).
 // Trade Spoof Messages
 538: Hack on trade: µÑÇÅФà '%s' (account: %d) ¾ÂÒÂÒÁ·Õè¨ÐáÅ¡à»ÅÕè¹ item ¨Ó¹Ç¹ÁÒ¡¡ÇèÒ·ÕèÁÕÍÂÙè.
-539: ¼ÙéàÅè¹ÁÕ item ¨Ó¹Ç¹ %d (id: %hu), áÅоÂÒÂÒÁ¨ÐáÅ¡à»ÅÕè¹㹨ӹǹ %d.
+539: ¼ÙéàÅè¹ÁÕ item ¨Ó¹Ç¹ %d (id: %u), áÅоÂÒÂÒÁ¨ÐáÅ¡à»ÅÕè¹㹨ӹǹ %d.
 540: ¼ÙéàÅè¹¹Õé¶Ù¡ËéÒÁáÅ¡à»ÅÕè¹.
 // Rare Items Drop/Steal announce
 541: '%s' à¡çº %s's %s (âÍ¡ÒÊ: %0.02f%%)
@@ -873,7 +873,7 @@
 
 // @reloadatcommand
 1036: à¡Ô´¢éͼԴ¾ÅҴ㹡ÒüèÒ¹ä¿Åì groups.conf, ¡ÒÃâËÅ´ãËÁèÅéÁàËÅÇ.
-1037: à¡Ô´¢éͼԴ¾ÅҴ㹡ÒüèÒ¹ä¿Åì atcommand_athena.conf, ¡ÒÃâËÅ´ãËÁèÅéÁàËÅÇ.
+//1037 free
 
 // @mapinfo
 1038: â»Ã´ÃкØàÅ¢ÍÂèҧ˹èÍÂ˹Ö觤èÒ¨Ò¡ÃÒ¡Òà (ÇÔ¸Õãªé: @mapinfo <0-3> <map>).
@@ -1048,9 +1048,9 @@
 1189: äÁ辺 Item ´Ñ§¡ÅèÒÇ.
 1190: ¤Ø³ä´éºÑ¹·Ö¡ item ¹Õéŧã¹ÃÒ¡ÒÃä»àÃÕºÃéÍÂáÅéÇ.
 1191: ÃÒ¡Òà autolootitem ¢Í§¤Ø³àµçÁáÅéÇ. ź item ºÒ§ÃÒ¡ÒÃÍÍ¡¡è͹´éÇ @autolootid -<ª×èÍ/ID item>.
-1192: ºÑ¹·Ö¡ item : '%s'/'%s' {%hu} ŧÃÒ¡Òà autolootitem ¢Í§¤Ø³.
+1192: ºÑ¹·Ö¡ item : '%s'/'%s' {%u} ŧÃÒ¡Òà autolootitem ¢Í§¤Ø³.
 1193: ¤Ø³äÁèä´éºÑ¹·Ö¡ item ¹Õéŧã¹ÃÒ¡ÒÃÍÂÙèáÅéÇ.
-1194: ź item : '%s'/'%s' {%hu} ¨Ò¡ÃÒ¡Òà autolootitem ¢Í§¤Ø³.
+1194: ź item : '%s'/'%s' {%u} ¨Ò¡ÃÒ¡Òà autolootitem ¢Í§¤Ø³.
 1195: ¤Ø³ÊÒÁÒöºÑ¹·Ö¡ä´é %d item 㹡ÒÃÃÒ¡Òà autolootitem.
 1196: 㹡ÒÃà¾ÔèÁÃÒ¡ÒÃ, ãªé "@alootid +<ª×èÍ/ID item>". 㹡ÒÃźÃÒ¡ÒÃ, ãªé "@alootid -<ª×èÍ/ID item>".
 1197: "@alootid reset" 㹡ÒÃÅéÒ§ÃÒ¡Òà autolootitem ¢Í§¤Ø³.
@@ -1140,12 +1140,12 @@
 1239: â»Ã´Ãкت×èÍ/ID Monster (ÇÔ¸Õãªé: @mobinfo <ª×èÍ/ID mob>).
 1240: MVP Monster: '%s'/'%s'/'%s' (%d)
 1241: Monster: '%s'/'%s'/'%s' (%d)
-1242:  Lv:%d  HP:%d  Base EXP:%u  Job EXP:%u  HIT:%d  FLEE:%d
+1242:  Lv:%d  HP:%d  Base EXP:%llu  Job EXP:%llu  HIT:%d  FLEE:%d
 1243:  DEF:%d  MDEF:%d  STR:%d  AGI:%d  VIT:%d  INT:%d  DEX:%d  LUK:%d
 1244:  ATK:%d~%d  Range:%d~%d~%d  Size:%s  Race: %s  Element: %s (Lv:%d)
 1245:  Drops:
 1246: Monster ¹ÕéäÁèÁբͧµ¡.
-1247:  MVP Bonus EXP:%u
+1247:  MVP Bonus EXP:%llu
 1248:  MVP Items:
 1249: Monster ¹ÕéäÁèÁբͧÃÒ§ÇÑÅ MVP.
 
@@ -1199,7 +1199,7 @@
 
 // @iteminfo
 1276: â»Ã´Ãкت×èÍ/ID item (ÇÔ¸Õãªé: @ii/@iteminfo <ª×èÍ/ID item>).
-1277: Item: '%s'/'%s'[%d] (%hu) Type: %s | Extra Effect: %s
+1277: Item: '%s'/'%s'[%d] (%u) Type: %s | Extra Effect: %s
 1278: None
 1279: With script
 1280: NPC Buy:%dz, Sell:%dz | Weight: %.1f
@@ -1347,7 +1347,7 @@
 1370: ÇÔ¸Õãªé: ex. "@set PoringCharVarSTR$" ¨ÐáÊ´§¼ÅÅѾ¸ìà»ç¹¤èÒ, Super Duper String.
 1371: µÑÇá»Ã NPC äÁèÊÒÁÒöµÑ駤èÒä´é´éÇ @set ä´é.
 1372: µÑÇá»Ã Instance äÁèÊÒÁÒöµÑ駤èÒä´é´éÇ @set ä´é.
-1373: %s ÁÕ¤èÒ: %d
+1373: %s ÁÕ¤èÒ: %lld
 1374: %s ÁÕ¤èÒ: %s
 1375: %s äÁèÁÕ¤èÒã´æ.
 //1376: free

+ 0 - 227
db/abra_db.txt

@@ -1,227 +0,0 @@
-// Hocus-Pocus (Abracadabra) Castable Skills Database
-//
-// Structure of Database:
-// SkillID,DummyName,ProbabilityPerLvl
-//
-// 01. SkillID                  Skill ID to be casted by hocus pocus.
-// 02. DummyName                Name of the skill (informative, not used by server).
-// 03. ProbabilityPerLvl        Not a rate! Chance at which the skill is selected compared
-//                              with other entries probabilties
-//
-// NOTE:
-// - The skill is picked at random from the entire database and then tested for rate. If it
-//   does not succeed at that rate, another skill is picked and tested. This continues
-//   until a skill succeeds. Abracadabra-specific skills have a different chance to occur
-//   depending on skill level used. All other skills have an equal chance and appear from
-//   level 1 onward.
-// - To remove entry by importing, put "clear" (without quotes) in DummyName
-
-5,Bash,500
-6,Provoke,500
-7,Magnum Break,500
-8,Endure,500
-
-10,Sight,500
-11,Napalm Beat,500
-12,Safety Wall,500
-13,Soul Strike,500
-14,Cold Bolt,500
-15,Frost Diver,500
-16,Stone Curse,500
-17,Fire Ball,500
-18,Fire Wall,500
-19,Fire Bolt,500
-20,Lightning Bolt,500
-21,Thunder Storm,500
-
-24,Ruwach,500
-25,Pneuma,500
-26,Teleport,500
-27,Warp Portal,500
-28,Heal,500
-29,Increase AGI,500
-30,Decrease AGI,500
-31,Aqua Benedicta,500
-32,Signum Crucis,500
-33,Angelus,500
-34,Blessing,500
-35,Cure,500
-
-40,Item Appraisal,500
-41,Vending,500
-42,Mammonite,500
-
-45,Improve Concentration,500
-46,Double Strafe,500
-47,Arrow Shower,500
-
-50,Steal,500
-51,Hiding,500
-52,Envenom,500
-53,Detoxify,500
-
-54,Resurrection,500
-
-56,Pierce,500
-57,Brandish Spear,500
-58,Spear Stab,500
-59,Spear Boomerang,500
-60,TwoHand Quicken,500
-61,Counter Attack,500
-62,Bowling Bash,500
-
-66,Impositio Manus,500
-67,Suffragium,500
-68,Aspersio,500
-69,B.S Sacramenti,500
-70,Sanctuary,500
-71,Slow poison,500
-72,Status Recovery,500
-73,Kyrie Eleison,500
-74,Magnificat,500
-75,Gloria,500
-76,Lex Divina,500
-77,Turn Undead,500
-78,Lex Aeterna,500
-79,Magnus Exorcismus,500
-
-80,Fire Pillar,500
-81,Sightrasher,500
-//82,Fire Ivy,500
-83,Meteor Storm,500
-84,Jupitel Thunder,500
-85,Lord of Vermilion,500
-86,Water Ball,500
-87,Ice Wall,500
-88,Frost Nova,500
-89,Storm Gust,500
-90,Earth spike,500
-91,Heaven's Drive,500
-92,Quagmire,500
-93,Sense,500
-
-//108,Weapon Repair,500
-110,Hammer Fall,500
-111,Adrenaline Rush,500
-112,Weapon Perfection,500
-113,Power-Thrust,500
-114,Maximize Power,500
-
-115,Skid Trap,500
-116,Land Mine,500
-117,Ankle Snare,500
-118,Shockwave Trap,500
-119,Sandman,500
-120,Flasher,500
-121,Freezing Trap,500
-122,Blast Mine,500
-123,Claymore Trap,500
-124,Remove Trap,500
-125,Talkie box,500
-129,Blitz Beat,500
-130,Detect,500
-131,Spring Trap,500
-
-135,Cloaking,500
-136,Sonic Blow,500
-137,Grimtooth,500
-138,Enchant Poison,500
-139,Poison React,500
-140,Venom Dust,500
-141,Venom Splasher,500
-
-//---EP4.0 Skill---
-211,Mug,500
-212,Back Stab,500
-214,Sightless Raid,500
-215,Divest Weapon,500
-216,Divest Shield,500
-217,Divest Armor,500
-218,Divest Helm,500
-219,Snatch,500
-220,Scribble,500
-//221,Piece,500
-222,Remover,500
-
-249,Guard,500
-250,Smite,500
-251,Shield Boomerang,500
-252,Shield Reflect,500
-253,Holy Cross,500
-254,Grand Cross,500
-255,Sacrifice,500
-256,Resistant Souls,500
-257,Defending Aura,500
-258,Spear Quicken,500
-
-261,Summon Spirit Sphere,500
-262,Absorb Spirit Sphere,500
-264,Snap,500
-266,Occult Impact,500
-267,Throw Spirit Sphere,500
-268,Mental Strength,500
-269,Root,500
-270,Fury,500
-271,Asura Strike,500
-//272,Raging Quadruple Blow,500
-//273,Raging Thrust,500
-
-275,Cast Cancel,500
-276,Magic Rod,500
-277,Spell Break,500
-279,Hindsight,500
-280,Endow Blaze,500
-281,Endow Tsunami,500
-282,Endow Tornado,500
-283,Endow Quake,500
-285,Volcano,500
-286,Deluge,500
-287,Whirlwind,500
-288,Magnetic Earth,500
-289,Dispel,500
-
-// Abracadabra Derivation Skill
-291,Monocell,250:500:750:1000:1250:1200:1750:2000:2250:2500
-292,Class Change,0:0:0:0:10:10:20:20:30:30
-293,Summon Monster,100:200:300:400:500:600:700:800:900:1000
-294,Grampus Morph,0:0:0:0:0:0:0:10:50:100
-295,Grim Reaper,50:100:150:200:250:300:350:400:450:500
-//296,Gold Digger,50:100:150:200:250:300:350:400:450:500
-//297,Beastly Hypnosis,50:100:150:200:250:300:350:400:450:500
-298,Questioning,1000:800:600:400:200:0:0:0:0:0
-299,Gravity,0:0:0:0:0:0:0:20:50:100
-//300,Leveling,0:0:0:0:0:0:0:0:10:50
-301,Suicide,0:0:0:0:0:0:0:10:50:100
-302,Rejuvination,0:0:0:0:0:0:20:50:100:200
-303,Coma,0:0:0:0:100:200:300:400:500:600
-
-// Dancer / Bard commonness
-//304,Amp,500
-//305,Encore,500
-//306,Lullaby,500
-//307,Mental Sensing,500
-//308,Down Tempo,500
-//309,Battle Theme,500
-//310,Harmonic Lick,500
-//311,Classical Pluck,500
-//312,Power Chord,500
-//313,Acoustic Rhythm,500
-//314,Ragnarok,500
-
-// Bard skill
-316,Melody Strike,500
-//317,Unchained Serenade,500
-318,Unbarring Octave,500
-//319,Perfect Tablature,500
-//320,Impressive Riff,500
-//321,Magic Strings,500
-//322,Song of Lutie,500
-
-// Dancer skill
-324,Slinging Arrow,500
-//325,Hip Shaker,500
-326,Dazzler,500
-//327,Focus Ballet,500
-//328,Slow Grace,500
-//329,Lady Luck,500
-//330,Gypsy's Kiss,500

+ 326 - 0
db/abra_db.yml

@@ -0,0 +1,326 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Abracadabra Database
+###########################################################################
+#
+# Abracadabra Settings
+#
+###########################################################################
+# - Skill             Skill to be casted by Abracadabra.
+#   Probability:      Probability of skill compared to others in database (1 = 0.01%, 10000 = 100%). (Default: 500)
+#     - Level         Skill level.
+#       Probability   Probability at specific skill level (1 = 0.01%, 10000 = 100%). (Default: 0)
+###########################################################################
+
+Header:
+  Type: ABRA_DB
+  Version: 1
+
+Body:
+  - Skill: SM_BASH
+  - Skill: SM_PROVOKE
+  - Skill: SM_MAGNUM
+  - Skill: SM_ENDURE
+  - Skill: MG_SIGHT
+  - Skill: MG_NAPALMBEAT
+  - Skill: MG_SAFETYWALL
+  - Skill: MG_SOULSTRIKE
+  - Skill: MG_COLDBOLT
+  - Skill: MG_FROSTDIVER
+  - Skill: MG_STONECURSE
+  - Skill: MG_FIREBALL
+  - Skill: MG_FIREWALL
+  - Skill: MG_FIREBOLT
+  - Skill: MG_LIGHTNINGBOLT
+  - Skill: MG_THUNDERSTORM
+  - Skill: AL_RUWACH
+  - Skill: AL_PNEUMA
+  - Skill: AL_TELEPORT
+  - Skill: AL_WARP
+  - Skill: AL_HEAL
+  - Skill: AL_INCAGI
+  - Skill: AL_DECAGI
+  - Skill: AL_HOLYWATER
+  - Skill: AL_CRUCIS
+  - Skill: AL_ANGELUS
+  - Skill: AL_BLESSING
+  - Skill: AL_CURE
+  - Skill: MC_IDENTIFY
+  - Skill: MC_VENDING
+  - Skill: MC_MAMMONITE
+  - Skill: AC_CONCENTRATION
+  - Skill: AC_DOUBLE
+  - Skill: AC_SHOWER
+  - Skill: TF_STEAL
+  - Skill: TF_HIDING
+  - Skill: TF_POISON
+  - Skill: TF_DETOXIFY
+  - Skill: ALL_RESURRECTION
+  - Skill: KN_PIERCE
+  - Skill: KN_BRANDISHSPEAR
+  - Skill: KN_SPEARSTAB
+  - Skill: KN_SPEARBOOMERANG
+  - Skill: KN_TWOHANDQUICKEN
+  - Skill: KN_AUTOCOUNTER
+  - Skill: KN_BOWLINGBASH
+  - Skill: PR_IMPOSITIO
+  - Skill: PR_SUFFRAGIUM
+  - Skill: PR_ASPERSIO
+  - Skill: PR_BENEDICTIO
+  - Skill: PR_SANCTUARY
+  - Skill: PR_SLOWPOISON
+  - Skill: PR_STRECOVERY
+  - Skill: PR_KYRIE
+  - Skill: PR_MAGNIFICAT
+  - Skill: PR_GLORIA
+  - Skill: PR_LEXDIVINA
+  - Skill: PR_TURNUNDEAD
+  - Skill: PR_LEXAETERNA
+  - Skill: PR_MAGNUS
+  - Skill: WZ_FIREPILLAR
+  - Skill: WZ_SIGHTRASHER
+  - Skill: WZ_METEOR
+  - Skill: WZ_JUPITEL
+  - Skill: WZ_VERMILION
+  - Skill: WZ_WATERBALL
+  - Skill: WZ_ICEWALL
+  - Skill: WZ_FROSTNOVA
+  - Skill: WZ_STORMGUST
+  - Skill: WZ_EARTHSPIKE
+  - Skill: WZ_HEAVENDRIVE
+  - Skill: WZ_QUAGMIRE
+  - Skill: WZ_ESTIMATION
+  - Skill: BS_HAMMERFALL
+  - Skill: BS_ADRENALINE
+  - Skill: BS_WEAPONPERFECT
+  - Skill: BS_OVERTHRUST
+  - Skill: BS_MAXIMIZE
+  - Skill: HT_SKIDTRAP
+  - Skill: HT_LANDMINE
+  - Skill: HT_ANKLESNARE
+  - Skill: HT_SHOCKWAVE
+  - Skill: HT_SANDMAN
+  - Skill: HT_FLASHER
+  - Skill: HT_FREEZINGTRAP
+  - Skill: HT_BLASTMINE
+  - Skill: HT_CLAYMORETRAP
+  - Skill: HT_REMOVETRAP
+  - Skill: HT_TALKIEBOX
+  - Skill: HT_BLITZBEAT
+  - Skill: HT_DETECTING
+  - Skill: HT_SPRINGTRAP
+  - Skill: AS_CLOAKING
+  - Skill: AS_SONICBLOW
+  - Skill: AS_GRIMTOOTH
+  - Skill: AS_ENCHANTPOISON
+  - Skill: AS_POISONREACT
+  - Skill: AS_VENOMDUST
+  - Skill: AS_SPLASHER
+  - Skill: RG_STEALCOIN
+  - Skill: RG_BACKSTAP
+  - Skill: RG_RAID
+  - Skill: RG_STRIPWEAPON
+  - Skill: RG_STRIPSHIELD
+  - Skill: RG_STRIPARMOR
+  - Skill: RG_STRIPHELM
+  - Skill: RG_INTIMIDATE
+  - Skill: RG_GRAFFITI
+  - Skill: RG_CLEANER
+  - Skill: CR_AUTOGUARD
+  - Skill: CR_SHIELDCHARGE
+  - Skill: CR_SHIELDBOOMERANG
+  - Skill: CR_REFLECTSHIELD
+  - Skill: CR_HOLYCROSS
+  - Skill: CR_GRANDCROSS
+  - Skill: CR_DEVOTION
+  - Skill: CR_PROVIDENCE
+  - Skill: CR_DEFENDER
+  - Skill: CR_SPEARQUICKEN
+  - Skill: MO_CALLSPIRITS
+  - Skill: MO_ABSORBSPIRITS
+  - Skill: MO_BODYRELOCATION
+  - Skill: MO_INVESTIGATE
+  - Skill: MO_FINGEROFFENSIVE
+  - Skill: MO_STEELBODY
+  - Skill: MO_BLADESTOP
+  - Skill: MO_EXPLOSIONSPIRITS
+  - Skill: MO_EXTREMITYFIST
+  - Skill: SA_CASTCANCEL
+  - Skill: SA_MAGICROD
+  - Skill: SA_SPELLBREAKER
+  - Skill: SA_AUTOSPELL
+  - Skill: SA_FLAMELAUNCHER
+  - Skill: SA_FROSTWEAPON
+  - Skill: SA_LIGHTNINGLOADER
+  - Skill: SA_SEISMICWEAPON
+  - Skill: SA_VOLCANO
+  - Skill: SA_DELUGE
+  - Skill: SA_VIOLENTGALE
+  - Skill: SA_LANDPROTECTOR
+  - Skill: SA_DISPELL
+  - Skill: SA_MONOCELL
+    Probability:
+      - Level: 1
+        Probability: 250
+      - Level: 2
+        Probability: 500
+      - Level: 3
+        Probability: 750
+      - Level: 4
+        Probability: 1000
+      - Level: 5
+        Probability: 1250
+      - Level: 6
+        Probability: 1200
+      - Level: 7
+        Probability: 1750
+      - Level: 8
+        Probability: 2000
+      - Level: 9
+        Probability: 2250
+      - Level: 10
+        Probability: 2500
+  - Skill: SA_CLASSCHANGE
+    Probability:
+      - Level: 5
+        Probability: 10
+      - Level: 6
+        Probability: 10
+      - Level: 7
+        Probability: 20
+      - Level: 8
+        Probability: 20
+      - Level: 9
+        Probability: 30
+      - Level: 10
+        Probability: 30
+  - Skill: SA_SUMMONMONSTER
+    Probability:
+      - Level: 1
+        Probability: 100
+      - Level: 2
+        Probability: 200
+      - Level: 3
+        Probability: 300
+      - Level: 4
+        Probability: 400
+      - Level: 5
+        Probability: 500
+      - Level: 6
+        Probability: 600
+      - Level: 7
+        Probability: 700
+      - Level: 8
+        Probability: 800
+      - Level: 9
+        Probability: 900
+      - Level: 10
+        Probability: 1000
+  - Skill: SA_REVERSEORCISH
+    Probability:
+      - Level: 8
+        Probability: 10
+      - Level: 9
+        Probability: 50
+      - Level: 10
+        Probability: 100
+  - Skill: SA_DEATH
+    Probability:
+      - Level: 1
+        Probability: 50
+      - Level: 2
+        Probability: 100
+      - Level: 3
+        Probability: 150
+      - Level: 4
+        Probability: 200
+      - Level: 5
+        Probability: 250
+      - Level: 6
+        Probability: 300
+      - Level: 7
+        Probability: 350
+      - Level: 8
+        Probability: 400
+      - Level: 9
+        Probability: 450
+      - Level: 10
+        Probability: 500
+  - Skill: SA_QUESTION
+    Probability:
+      - Level: 1
+        Probability: 1000
+      - Level: 2
+        Probability: 800
+      - Level: 3
+        Probability: 600
+      - Level: 4
+        Probability: 400
+      - Level: 5
+        Probability: 200
+  - Skill: SA_GRAVITY
+    Probability:
+      - Level: 8
+        Probability: 20
+      - Level: 9
+        Probability: 50
+      - Level: 10
+        Probability: 100
+  - Skill: SA_INSTANTDEATH
+    Probability:
+      - Level: 8
+        Probability: 10
+      - Level: 9
+        Probability: 50
+      - Level: 10
+        Probability: 100
+  - Skill: SA_FULLRECOVERY
+    Probability:
+      - Level: 7
+        Probability: 20
+      - Level: 8
+        Probability: 50
+      - Level: 9
+        Probability: 100
+      - Level: 10
+        Probability: 200
+  - Skill: SA_COMA
+    Probability:
+      - Level: 5
+        Probability: 100
+      - Level: 6
+        Probability: 200
+      - Level: 7
+        Probability: 300
+      - Level: 8
+        Probability: 400
+      - Level: 9
+        Probability: 500
+      - Level: 10
+        Probability: 600
+  - Skill: BA_MUSICALSTRIKE
+  - Skill: BA_FROSTJOKER
+  - Skill: DC_THROWARROW
+  - Skill: DC_SCREAM
+
+Footer:
+  Imports:
+  - Path: db/pre-re/abra_db.yml
+    Mode: Prerenewal
+  - Path: db/import/abra_db.yml

+ 20 - 56
db/achievement_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2017 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify
@@ -16,70 +16,34 @@
 # along with this program. If not, see <http://www.gnu.org/licenses/>.
 #
 ###########################################################################
-# Renewal Achievement Database
+# Achievement Database
 ###########################################################################
 #
 # Achievement Settings
 #
 ###########################################################################
-# ID - Unique achievement ID.
-###########################################################################
-# Group - Achievement group type. Each achievement type calls a specific
-# objective check.
-# Valid groups:
-#  AG_ADD_FRIEND
-#  AG_ADVENTURE
-#  AG_BABY
-#  AG_BATTLE
-#  AG_CHATTING
-#  AG_CHATTING_COUNT
-#  AG_CHATTING_CREATE
-#  AG_CHATTING_DYING
-#  AG_EAT
-#  AG_GET_ITEM
-#  AG_GET_ZENY
-#  AG_GOAL_ACHIEVE
-#  AG_GOAL_LEVEL
-#  AG_GOAL_STATUS
-#  AG_HEAR
-#  AG_JOB_CHANGE
-#  AG_MARRY
-#  AG_PARTY
-#  AG_ENCHANT_FAIL
-#  AG_ENCHANT_SUCCESS
-#  AG_SEE
-#  AG_SPEND_ZENY
-#  AG_TAMING
-###########################################################################
-# Name - Achievement name. Used when sending rewards through RODEX.
-###########################################################################
-# Target - A list of monster ID and count values that the achievement
-# requires. The target count can also be used for achievements that keep
-# a counter while not being related to monster kills.
-# Capped at MAX_ACHIEVEMENT_OBJECTIVES.
-###########################################################################
-# Condition - A conditional statement that must be met for the achievement
-# to be considered complete.
-###########################################################################
-# Map - A map name that is used for the AG_CHATTING type which increments
-# the counter based on the player's map.
-###########################################################################
-# Dependent: - A list of achievement IDs that need to be completed before
-# this achievement is considered complete.
-###########################################################################
-# Reward - A list of rewards that are given on completion. All fields are
-# optional.
-#   ItemID: Item ID
-#   Amount:  Amount of Item ID (default 1)
-#   Script: Bonus Script
-#   TitleID: Title ID
-###########################################################################
-# Score - Achievement points that are given on completion.
+# - Id                  Achievement ID.
+#   Group               Achievement group type. (Defaut: None)
+#   Name                Achievement name.
+#   Targets:            List of targets the achievement requires. (Default: null)
+#     - Id              Index value used for import methods.
+#       Mob             Target mob. (Default: 0)
+#       Count           Target count. (Default: 1)
+#   Condition           Conditional statement that must be met for the achievement to be considered complete. (Default: null)
+#   Map                 Map name that is used for the AG_CHATTING type. (Default: -1)
+#   Dependents:         List of achievements that need to be completed before this achievement is considered complete. (Default: null)
+#     - Id: <bool>      Achievement ID pre-requisite.
+#   Rewards:            List of rewards that are given on completion. (Default: null)
+#     Item              Item name.
+#     Amount            Amount of item. (Default: 1)
+#     Script            Bonus Script. (Default: null)
+#     TitleId           Title ID. (Default: 0)
+#   Score               Achievement points that are given on completion. (Default: 0)
 ###########################################################################
 
 Header:
   Type: ACHIEVEMENT_DB
-  Version: 1
+  Version: 2
 
 Footer:
   Imports:

+ 3 - 4
db/achievement_level_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2019 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify
@@ -22,9 +22,8 @@
 # Achievement Level Settings
 #
 ###########################################################################
-# Level - Achievement Level
-###########################################################################
-# Points - Required total scoring points to reach this level.
+# - Level     Achievement Level.
+#   Points    Required total scoring points to reach this level.
 ###########################################################################
 
 Header:

+ 31 - 0
db/attendance.yml

@@ -1,3 +1,34 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Attendance Database
+###########################################################################
+#
+# Attendance Settings
+#
+###########################################################################
+# - Start                   Start date.
+#   End                     End date.
+#   Rewards:                List of rewards for each day.
+#     - Day                 Reward day.
+#       ItemId              Item ID.
+###########################################################################
+
 Header:
   Type: ATTENDANCE_DB
   Version: 1

+ 211 - 0
db/battleground_db.yml

@@ -0,0 +1,211 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Battleground Queue Database
+###########################################################################
+#
+# Battleground Queue Settings
+#
+###########################################################################
+# - Id                Unique ID for the battleground type.
+#   Name              Name of the battleground. Must be the exact same as in the client for players to be able to join.
+#   MinPlayers        Minimum number of players required on each team. (Default: 1)
+#   MaxPlayers        Maximum number of players on each team. (Default: MAX_BG_MEMBERS / 2)
+#   MinLevel          Minimum level required to join the battleground. (Default: 1)
+#   MaxLevel          Maximum level to join the battleground. (Default: MAX_LEVEL value)
+#   Deserter          Amount of time in seconds a player is marked deserter. (Default: 600)
+#   StartDelay        Amount of time in seconds once a queue is filled before players are warped. (Default: 0)
+#   Join:             Which application type is accepted. The entryqueuelist.lub can visually disable these options.
+#     Solo            Able to join a queue as an individual. (Default: true)
+#     Party           Able to join a queue as a party. (Default: true)
+#     Guild           Able to join a queue as a guild. (Default: true)
+#   JobRestrictions   List of jobs that are unable to join the battleground.
+#   Locations:        Battleground location settings.
+#     - Map           The map on which the battleground will be played.
+#       StartEvent    NPC event triggered when the battleground starts.
+#       TeamA:        TeamA settings.
+#         RespawnX    X coordinate for warping on death.
+#         RespawnY    Y coordinate for warping on death.
+#         DeathEvent  NPC event triggered when a player dies.
+#         QuitEvent   NPC event triggered when a player quits.
+#         ActiveEvent NPC event triggered when a player joints an active battleground.
+#         Variable    Name of BG ID variable used in the battleground script.
+#       TeamB:        TeamB settings.
+#         RespawnX    X coordinate for warping on death.
+#         RespawnY    Y coordinate for warping on death.
+#         DeathEvent  NPC event triggered when a player dies.
+#         QuitEvent   NPC event triggered when a player quits.
+#         ActiveEvent NPC event triggered when a player joints an active battleground.
+#         Variable    Name of BG ID variable used in the battleground script.
+###########################################################################
+
+Header:
+  Type: BATTLEGROUND_DB
+  Version: 1
+
+Body:
+  - Id: 1
+    Name: Tierra Gorge
+    MinPlayers: 6
+    MinLevel: 80
+    JobRestrictions:
+      Novice: true
+      SuperNovice: true
+      Novice_High: true
+      Baby: true
+      Super_Baby: true
+      Super_Novice_E: true
+      Super_Baby_E: true
+    Locations:
+      - Map: bat_a01
+        StartEvent: start#bat_a01::OnReadyCheck
+        TeamA:
+          RespawnX: 50
+          RespawnY: 374
+          QuitEvent: start#bat_a01::OnGuillaumeQuit
+          ActiveEvent: start#bat_a01::OnGuillaumeActive
+          Variable: $@TierraBG1_id1
+        TeamB:
+          RespawnX: 42
+          RespawnY: 16
+          QuitEvent: start#bat_a01::OnCroixQuit
+          ActiveEvent: start#bat_a01::OnCroixActive
+          Variable: $@TierraBG1_id2
+      - Map: bat_a02
+        StartEvent: start#bat_a02::OnReadyCheck
+        TeamA:
+          RespawnX: 50
+          RespawnY: 374
+          QuitEvent: start#bat_a02::OnGuillaumeQuit
+          ActiveEvent: start#bat_a02::OnGuillaumeActive
+          Variable: $@TierraBG2_id1
+        TeamB:
+          RespawnX: 42
+          RespawnY: 16
+          QuitEvent: start#bat_a02::OnCroixQuit
+          ActiveEvent: start#bat_a02::OnCroixActive
+          Variable: $@TierraBG2_id2
+  - Id: 2
+    Name: Flavius
+    MinPlayers: 6
+    MinLevel: 80
+    JobRestrictions:
+      Novice: true
+      SuperNovice: true
+      Novice_High: true
+      Baby: true
+      Super_Baby: true
+      Super_Novice_E: true
+      Super_Baby_E: true
+    Locations:
+      - Map: bat_b01
+        StartEvent: start#bat_b01::OnReadyCheck
+        TeamA:
+          RespawnX: 10
+          RespawnY: 290
+          QuitEvent: start#bat_b01::OnGuillaumeQuit
+          ActiveEvent: start#bat_b01::OnGuillaumeActive
+          Variable: $@FlaviusBG1_id1
+        TeamB:
+          RespawnX: 390
+          RespawnY: 10
+          QuitEvent: start#bat_b01::OnCroixQuit
+          ActiveEvent: start#bat_b01::OnCroixActive
+          Variable: $@FlaviusBG1_id2
+      - Map: bat_b02
+        StartEvent: start#bat_b02::OnReadyCheck
+        TeamA:
+          RespawnX: 10
+          RespawnY: 290
+          QuitEvent: start#bat_b02::OnGuillaumeQuit
+          ActiveEvent: start#bat_b02::OnGuillaumeActive
+          Variable: $@FlaviusBG2_id1
+        TeamB:
+          RespawnX: 390
+          RespawnY: 10
+          QuitEvent: start#bat_b02::OnCroixQuit
+          ActiveEvent: start#bat_b02::OnCroixActive
+          Variable: $@FlaviusBG2_id2
+  - Id: 3
+    Name: KVM (Level 80 and up)
+    MinPlayers: 5
+    MinLevel: 80
+    Locations:
+      - Map: bat_c01
+        StartEvent: KvM01_BG::OnStart
+        TeamA:
+          RespawnX: 52
+          RespawnY: 129
+          DeathEvent: KvM01_BG::OnGuillaumeDie
+          QuitEvent: KvM01_BG::OnGuillaumeQuit
+          ActiveEvent: KvM01_BG::OnGuillaumeActive
+          Variable: $@KvM01BG_id1
+        TeamB:
+          RespawnX: 147
+          RespawnY: 55
+          DeathEvent: KvM01_BG::OnCroixDie
+          QuitEvent: KvM01_BG::OnCroixQuit
+          ActiveEvent: KvM01_BG::OnCroixActive
+          Variable: $@KvM01BG_id2
+  - Id: 4
+    Name: KVM (Level 60~79)
+    MinPlayers: 5
+    MinLevel: 60
+    MaxLevel: 79
+    Locations:
+      - Map: bat_c02
+        StartEvent: KvM02_BG::OnStart
+        TeamA:
+          RespawnX: 52
+          RespawnY: 129
+          DeathEvent: KvM02_BG::OnGuillaumeDie
+          QuitEvent: KvM02_BG::OnGuillaumeQuit
+          ActiveEvent: KvM02_BG::OnGuillaumeActive
+          Variable: $@KvM02BG_id1
+        TeamB:
+          RespawnX: 147
+          RespawnY: 55
+          DeathEvent: KvM02_BG::OnCroixDie
+          QuitEvent: KvM02_BG::OnCroixQuit
+          ActiveEvent: KvM02_BG::OnCroixActive
+          Variable: $@KvM02BG_id2
+  - Id: 5
+    Name: KVM (Level 59 and below
+    MinPlayers: 5
+    MaxLevel: 59
+    Locations:
+      - Map: bat_c03
+        StartEvent: KvM03_BG::OnStart
+        TeamA:
+          RespawnX: 52
+          RespawnY: 129
+          DeathEvent: KvM03_BG::OnGuillaumeDie
+          QuitEvent: KvM03_BG::OnGuillaumeQuit
+          ActiveEvent: KvM03_BG::OnGuillaumeActive
+          Variable: $@KvM03BG_id1
+        TeamB:
+          RespawnX: 147
+          RespawnY: 55
+          DeathEvent: KvM03_BG::OnCroixDie
+          QuitEvent: KvM03_BG::OnCroixQuit
+          ActiveEvent: KvM03_BG::OnCroixActive
+          Variable: $@KvM03BG_id2
+
+Footer:
+  Imports:
+  - Path: db/import/battleground_db.yml

+ 0 - 194
db/const.txt

@@ -14,200 +14,6 @@
 //                  in field Value. Depending on the implementation values assigned by scripts to parameters will affect
 //                  runtime values, such as Zeny, as well (see pc_readparam/pc_setparam).
 
-RDMOPT_VAR_MAXHPAMOUNT	1
-RDMOPT_VAR_MAXSPAMOUNT	2
-RDMOPT_VAR_STRAMOUNT	3
-RDMOPT_VAR_AGIAMOUNT	4
-RDMOPT_VAR_VITAMOUNT	5
-RDMOPT_VAR_INTAMOUNT	6
-RDMOPT_VAR_DEXAMOUNT	7
-RDMOPT_VAR_LUKAMOUNT	8
-RDMOPT_VAR_MAXHPPERCENT	9
-RDMOPT_VAR_MAXSPPERCENT	10
-RDMOPT_VAR_HPACCELERATION	11
-RDMOPT_VAR_SPACCELERATION	12
-RDMOPT_VAR_ATKPERCENT	13
-RDMOPT_VAR_MAGICATKPERCENT	14
-RDMOPT_VAR_PLUSASPD	15
-RDMOPT_VAR_PLUSASPDPERCENT	16
-RDMOPT_VAR_ATTPOWER	17
-RDMOPT_VAR_HITSUCCESSVALUE	18
-RDMOPT_VAR_ATTMPOWER	19
-RDMOPT_VAR_ITEMDEFPOWER	20
-RDMOPT_VAR_MDEFPOWER	21
-RDMOPT_VAR_AVOIDSUCCESSVALUE	22
-RDMOPT_VAR_PLUSAVOIDSUCCESSVALUE	23
-RDMOPT_VAR_CRITICALSUCCESSVALUE	24
-RDMOPT_ATTR_TOLERACE_NOTHING	25
-RDMOPT_ATTR_TOLERACE_WATER	26
-RDMOPT_ATTR_TOLERACE_GROUND	27
-RDMOPT_ATTR_TOLERACE_FIRE	28
-RDMOPT_ATTR_TOLERACE_WIND	29
-RDMOPT_ATTR_TOLERACE_POISON	30
-RDMOPT_ATTR_TOLERACE_SAINT	31
-RDMOPT_ATTR_TOLERACE_DARKNESS	32
-RDMOPT_ATTR_TOLERACE_TELEKINESIS	33
-RDMOPT_ATTR_TOLERACE_UNDEAD	34
-RDMOPT_ATTR_TOLERACE_ALL	35
-RDMOPT_DAMAGE_PROPERTY_NOTHING_USER	36
-RDMOPT_DAMAGE_PROPERTY_NOTHING_TARGET	37
-RDMOPT_DAMAGE_PROPERTY_WATER_USER	38
-RDMOPT_DAMAGE_PROPERTY_WATER_TARGET	39
-RDMOPT_DAMAGE_PROPERTY_GROUND_USER	40
-RDMOPT_DAMAGE_PROPERTY_GROUND_TARGET	41
-RDMOPT_DAMAGE_PROPERTY_FIRE_USER	42
-RDMOPT_DAMAGE_PROPERTY_FIRE_TARGET	43
-RDMOPT_DAMAGE_PROPERTY_WIND_USER	44
-RDMOPT_DAMAGE_PROPERTY_WIND_TARGET	45
-RDMOPT_DAMAGE_PROPERTY_POISON_USER	46
-RDMOPT_DAMAGE_PROPERTY_POISON_TARGET	47
-RDMOPT_DAMAGE_PROPERTY_SAINT_USER	48
-RDMOPT_DAMAGE_PROPERTY_SAINT_TARGET	49
-RDMOPT_DAMAGE_PROPERTY_DARKNESS_USER	50
-RDMOPT_DAMAGE_PROPERTY_DARKNESS_TARGET	51
-RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_USER	52
-RDMOPT_DAMAGE_PROPERTY_TELEKINESIS_TARGET	53
-RDMOPT_DAMAGE_PROPERTY_UNDEAD_USER	54
-RDMOPT_DAMAGE_PROPERTY_UNDEAD_TARGET	55
-RDMOPT_MDAMAGE_PROPERTY_NOTHING_USER	56
-RDMOPT_MDAMAGE_PROPERTY_NOTHING_TARGET	57
-RDMOPT_MDAMAGE_PROPERTY_WATER_USER	58
-RDMOPT_MDAMAGE_PROPERTY_WATER_TARGET	59
-RDMOPT_MDAMAGE_PROPERTY_GROUND_USER	60
-RDMOPT_MDAMAGE_PROPERTY_GROUND_TARGET	61
-RDMOPT_MDAMAGE_PROPERTY_FIRE_USER	62
-RDMOPT_MDAMAGE_PROPERTY_FIRE_TARGET	63
-RDMOPT_MDAMAGE_PROPERTY_WIND_USER	64
-RDMOPT_MDAMAGE_PROPERTY_WIND_TARGET	65
-RDMOPT_MDAMAGE_PROPERTY_POISON_USER	66
-RDMOPT_MDAMAGE_PROPERTY_POISON_TARGET	67
-RDMOPT_MDAMAGE_PROPERTY_SAINT_USER	68
-RDMOPT_MDAMAGE_PROPERTY_SAINT_TARGET	69
-RDMOPT_MDAMAGE_PROPERTY_DARKNESS_USER	70
-RDMOPT_MDAMAGE_PROPERTY_DARKNESS_TARGET	71
-RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_USER	72
-RDMOPT_MDAMAGE_PROPERTY_TELEKINESIS_TARGET	73
-RDMOPT_MDAMAGE_PROPERTY_UNDEAD_USER	74
-RDMOPT_MDAMAGE_PROPERTY_UNDEAD_TARGET	75
-RDMOPT_BODY_ATTR_NOTHING	76
-RDMOPT_BODY_ATTR_WATER	77
-RDMOPT_BODY_ATTR_GROUND	78
-RDMOPT_BODY_ATTR_FIRE	79
-RDMOPT_BODY_ATTR_WIND	80
-RDMOPT_BODY_ATTR_POISON	81
-RDMOPT_BODY_ATTR_SAINT	82
-RDMOPT_BODY_ATTR_DARKNESS	83
-RDMOPT_BODY_ATTR_TELEKINESIS	84
-RDMOPT_BODY_ATTR_UNDEAD	85
-RDMOPT_BODY_ATTR_ALL	86
-RDMOPT_RACE_TOLERACE_NOTHING	87
-RDMOPT_RACE_TOLERACE_UNDEAD	88
-RDMOPT_RACE_TOLERACE_ANIMAL	89
-RDMOPT_RACE_TOLERACE_PLANT	90
-RDMOPT_RACE_TOLERACE_INSECT	91
-RDMOPT_RACE_TOLERACE_FISHS	92
-RDMOPT_RACE_TOLERACE_DEVIL	93
-RDMOPT_RACE_TOLERACE_HUMAN	94
-RDMOPT_RACE_TOLERACE_ANGEL	95
-RDMOPT_RACE_TOLERACE_DRAGON	96
-RDMOPT_RACE_DAMAGE_NOTHING	97
-RDMOPT_RACE_DAMAGE_UNDEAD	98
-RDMOPT_RACE_DAMAGE_ANIMAL	99
-RDMOPT_RACE_DAMAGE_PLANT	100
-RDMOPT_RACE_DAMAGE_INSECT	101
-RDMOPT_RACE_DAMAGE_FISHS	102
-RDMOPT_RACE_DAMAGE_DEVIL	103
-RDMOPT_RACE_DAMAGE_HUMAN	104
-RDMOPT_RACE_DAMAGE_ANGEL	105
-RDMOPT_RACE_DAMAGE_DRAGON	106
-RDMOPT_RACE_MDAMAGE_NOTHING	107
-RDMOPT_RACE_MDAMAGE_UNDEAD	108
-RDMOPT_RACE_MDAMAGE_ANIMAL	109
-RDMOPT_RACE_MDAMAGE_PLANT	110
-RDMOPT_RACE_MDAMAGE_INSECT	111
-RDMOPT_RACE_MDAMAGE_FISHS	112
-RDMOPT_RACE_MDAMAGE_DEVIL	113
-RDMOPT_RACE_MDAMAGE_HUMAN	114
-RDMOPT_RACE_MDAMAGE_ANGEL	115
-RDMOPT_RACE_MDAMAGE_DRAGON	116
-RDMOPT_RACE_CRI_PERCENT_NOTHING	117
-RDMOPT_RACE_CRI_PERCENT_UNDEAD	118
-RDMOPT_RACE_CRI_PERCENT_ANIMAL	119
-RDMOPT_RACE_CRI_PERCENT_PLANT	120
-RDMOPT_RACE_CRI_PERCENT_INSECT	121
-RDMOPT_RACE_CRI_PERCENT_FISHS	122
-RDMOPT_RACE_CRI_PERCENT_DEVIL	123
-RDMOPT_RACE_CRI_PERCENT_HUMAN	124
-RDMOPT_RACE_CRI_PERCENT_ANGEL	125
-RDMOPT_RACE_CRI_PERCENT_DRAGON	126
-RDMOPT_RACE_IGNORE_DEF_PERCENT_NOTHING	127
-RDMOPT_RACE_IGNORE_DEF_PERCENT_UNDEAD	128
-RDMOPT_RACE_IGNORE_DEF_PERCENT_ANIMAL	129
-RDMOPT_RACE_IGNORE_DEF_PERCENT_PLANT	130
-RDMOPT_RACE_IGNORE_DEF_PERCENT_INSECT	131
-RDMOPT_RACE_IGNORE_DEF_PERCENT_FISHS	132
-RDMOPT_RACE_IGNORE_DEF_PERCENT_DEVIL	133
-RDMOPT_RACE_IGNORE_DEF_PERCENT_HUMAN	134
-RDMOPT_RACE_IGNORE_DEF_PERCENT_ANGEL	135
-RDMOPT_RACE_IGNORE_DEF_PERCENT_DRAGON	136
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_NOTHING	137
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_UNDEAD	138
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANIMAL	139
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_PLANT	140
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_INSECT	141
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_FISHS	142
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_DEVIL	143
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_HUMAN	144
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_ANGEL	145
-RDMOPT_RACE_IGNORE_MDEF_PERCENT_DRAGON	146
-RDMOPT_CLASS_DAMAGE_NORMAL_TARGET	147
-RDMOPT_CLASS_DAMAGE_BOSS_TARGET	148
-RDMOPT_CLASS_DAMAGE_NORMAL_USER	149
-RDMOPT_CLASS_DAMAGE_BOSS_USER	150
-RDMOPT_CLASS_MDAMAGE_NORMAL	151
-RDMOPT_CLASS_MDAMAGE_BOSS	152
-RDMOPT_CLASS_IGNORE_DEF_PERCENT_NORMAL	153
-RDMOPT_CLASS_IGNORE_DEF_PERCENT_BOSS	154
-RDMOPT_CLASS_IGNORE_MDEF_PERCENT_NORMAL	155
-RDMOPT_CLASS_IGNORE_MDEF_PERCENT_BOSS	156
-RDMOPT_DAMAGE_SIZE_SMALL_TARGET	157
-RDMOPT_DAMAGE_SIZE_MIDIUM_TARGET	158
-RDMOPT_DAMAGE_SIZE_LARGE_TARGET	159
-RDMOPT_DAMAGE_SIZE_SMALL_USER	160
-RDMOPT_DAMAGE_SIZE_MIDIUM_USER	161
-RDMOPT_DAMAGE_SIZE_LARGE_USER	162
-RDMOPT_DAMAGE_SIZE_PERFECT	163
-RDMOPT_DAMAGE_CRI_TARGET	164
-RDMOPT_DAMAGE_CRI_USER	165
-RDMOPT_RANGE_ATTACK_DAMAGE_TARGET	166
-RDMOPT_RANGE_ATTACK_DAMAGE_USER	167
-RDMOPT_HEAL_VALUE	168
-RDMOPT_HEAL_MODIFY_PERCENT	169
-RDMOPT_DEC_SPELL_CAST_TIME	170
-RDMOPT_DEC_SPELL_DELAY_TIME	171
-RDMOPT_DEC_SP_CONSUMPTION	172
-RDMOPT_HP_DRAIN	173
-RDMOPT_SP_DRAIN	174
-RDMOPT_WEAPON_ATTR_NOTHING	175
-RDMOPT_WEAPON_ATTR_WATER	176
-RDMOPT_WEAPON_ATTR_GROUND	177
-RDMOPT_WEAPON_ATTR_FIRE	178
-RDMOPT_WEAPON_ATTR_WIND	179
-RDMOPT_WEAPON_ATTR_POISON	180
-RDMOPT_WEAPON_ATTR_SAINT	181
-RDMOPT_WEAPON_ATTR_DARKNESS	182
-RDMOPT_WEAPON_ATTR_TELEKINESIS	183
-RDMOPT_WEAPON_ATTR_UNDEAD	184
-RDMOPT_WEAPON_INDESTRUCTIBLE	185
-RDMOPT_BODY_INDESTRUCTIBLE	186
-RDMOPT_MDAMAGE_SIZE_SMALL_TARGET	187
-RDMOPT_MDAMAGE_SIZE_MIDIUM_TARGET	188
-RDMOPT_MDAMAGE_SIZE_LARGE_TARGET	189
-RDMOPT_MDAMAGE_SIZE_SMALL_USER	190
-RDMOPT_MDAMAGE_SIZE_MIDIUM_USER	191
-RDMOPT_MDAMAGE_SIZE_LARGE_USER	192
-//RDMOPT_ATTR_TOLERACE_ALL	193
-
 SWORDCLAN	1
 ARCWANDCLAN	2
 GOLDENMACECLAN	3

+ 1 - 1
db/guild_skill_tree.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2019 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify

+ 10 - 10
db/homun_skill_tree.txt

@@ -89,31 +89,31 @@
 //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,5,106,0,0,0,0,0,0,0,0,0,0,0	//MH_ERASER_CUTTER
-6048,8025,5,121,0,0,0,0,0,0,0,0,0,0,0 	//MH_XENO_SLASHER
+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,5,105,0,0,0,0,0,0,0,0,0,0,0 	//MH_STAHL_HORN
+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,5,138,0,0,0,0,0,0,0,0,0,0,0	//MH_HEILIGE_STANGE
+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,5,105,0,0,0,0,0,0,0,0,0,0,0 	//MH_NEEDLE_OF_PARALYZE
+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,5,123,0,0,0,0,0,0,0,0,0,0,0 	//MH_PAIN_KILLER
+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,5,109,0,0,0,0,0,0,0,0,0,0,0 	//MH_LAVA_SLIDE
-6051,8042,5,131,0,0,0,0,0,0,0,0,0,0,0 	//MH_PYROCLASTIC
+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,5,114,0,0,0,0,0,0,0,0,0,0,0 	//MH_SILVERVEIN_RUSH
-6052,8030,5,128,0,0,0,0,0,0,0,0,0,0,0 	//MH_MIDNIGHT_FRENZY
+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

+ 0 - 17
db/import-tmpl/abra_db.txt

@@ -1,17 +0,0 @@
-// Hocus-Pocus (Abracadabra) Castable Skills Database
-//
-// Structure of Database:
-// SkillID,DummyName,ProbabilityPerLvl
-//
-// 01. SkillID                  Skill ID to be casted by hocus pocus.
-// 02. DummyName                Name of the skill (informative, not used by server).
-// 03. ProbabilityPerLvl        Not a rate! Chance at which the skill is selected compared
-//                              with other entries probabilties
-//
-// NOTE:
-// - The skill is picked at random from the entire database and then tested for rate. If it
-//   does not succeed at that rate, another skill is picked and tested. This continues
-//   until a skill succeeds. Abracadabra-specific skills have a different chance to occur
-//   depending on skill level used. All other skills have an equal chance and appear from
-//   level 1 onward.
-// - To remove entry by importing, put "clear" (without quotes) in DummyName

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

@@ -0,0 +1,33 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Abracadabra Database
+###########################################################################
+#
+# Abracadabra Settings
+#
+###########################################################################
+# - Skill             Skill to be casted by Abracadabra.
+#   Probability:      Probability of skill compared to others in database (1 = 0.01%, 10000 = 100%). (Default: 500)
+#     - Level         Skill level.
+#       Probability   Probability at specific skill level (1 = 0.01%, 10000 = 100%). (Default: 0)
+###########################################################################
+
+Header:
+  Type: ABRA_DB
+  Version: 1

+ 20 - 56
db/import-tmpl/achievement_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2017 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify
@@ -16,67 +16,31 @@
 # along with this program. If not, see <http://www.gnu.org/licenses/>.
 #
 ###########################################################################
-# Custom Achievement Database
+# Achievement Database
 ###########################################################################
 #
 # Achievement Settings
 #
 ###########################################################################
-# ID - Unique achievement ID.
-###########################################################################
-# Group - Achievement group type. Each achievement type calls a specific
-# objective check.
-# Valid groups:
-#  AG_ADD_FRIEND
-#  AG_ADVENTURE
-#  AG_BABY
-#  AG_BATTLE
-#  AG_CHATTING
-#  AG_CHATTING_COUNT
-#  AG_CHATTING_CREATE
-#  AG_CHATTING_DYING
-#  AG_EAT
-#  AG_GET_ITEM
-#  AG_GET_ZENY
-#  AG_GOAL_ACHIEVE
-#  AG_GOAL_LEVEL
-#  AG_GOAL_STATUS
-#  AG_HEAR
-#  AG_JOB_CHANGE
-#  AG_MARRY
-#  AG_PARTY
-#  AG_ENCHANT_FAIL
-#  AG_ENCHANT_SUCCESS
-#  AG_SEE
-#  AG_SPEND_ZENY
-#  AG_TAMING
-###########################################################################
-# Name - Achievement name. Used when sending rewards through RODEX.
-###########################################################################
-# Target - A list of monster ID and count values that the achievement
-# requires. The target count can also be used for achievements that keep
-# a counter while not being related to monster kills.
-# Capped at MAX_ACHIEVEMENT_OBJECTIVES.
-###########################################################################
-# Condition - A conditional statement that must be met for the achievement
-# to be considered complete.
-###########################################################################
-# Map - A map name that is used for the AG_CHATTING type which increments
-# the counter based on the player's map.
-###########################################################################
-# Dependent: - A list of achievement IDs that need to be completed before
-# this achievement is considered complete.
-###########################################################################
-# Reward - A list of rewards that are given on completion. All fields are
-# optional.
-#   ItemID: Item ID
-#   Amount:  Amount of Item ID (default 1)
-#   Script: Bonus Script
-#   TitleID: Title ID
-###########################################################################
-# Score - Achievement points that are given on completion.
+# - Id                  Achievement ID.
+#   Group               Achievement group type. (Defaut: None)
+#   Name                Achievement name.
+#   Targets:            List of targets the achievement requires. (Default: null)
+#     - Id              Index value used for import methods.
+#       Mob             Target mob. (Default: 0)
+#       Count           Target count. (Default: 1)
+#   Condition           Conditional statement that must be met for the achievement to be considered complete. (Default: null)
+#   Map                 Map name that is used for the AG_CHATTING type. (Default: -1)
+#   Dependents:         List of achievements that need to be completed before this achievement is considered complete. (Default: null)
+#     - Id: <bool>      Achievement ID pre-requisite.
+#   Rewards:            List of rewards that are given on completion. (Default: null)
+#     Item              Item name.
+#     Amount            Amount of item. (Default: 1)
+#     Script            Bonus Script. (Default: null)
+#     TitleId           Title ID. (Default: 0)
+#   Score               Achievement points that are given on completion. (Default: 0)
 ###########################################################################
 
 Header:
   Type: ACHIEVEMENT_DB
-  Version: 1
+  Version: 2

+ 4 - 5
db/import-tmpl/achievement_level_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2019 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify
@@ -16,15 +16,14 @@
 # along with this program. If not, see <http://www.gnu.org/licenses/>.
 #
 ###########################################################################
-# Import Achievement Level Database
+# Achievement Level Database
 ###########################################################################
 #
 # Achievement Level Settings
 #
 ###########################################################################
-# Level - Achievement Level
-###########################################################################
-# Points - Required total scoring points to reach this level.
+# - Level     Achievement Level.
+#   Points    Required total scoring points to reach this level.
 ###########################################################################
 
 Header:

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

@@ -1,3 +1,34 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Attendance Database
+###########################################################################
+#
+# Attendance Settings
+#
+###########################################################################
+# - Start                   Start date.
+#   End                     End date.
+#   Rewards:                List of rewards for each day.
+#     - Day                 Reward day.
+#       ItemId              Item ID.
+###########################################################################
+
 Header:
   Type: ATTENDANCE_DB
   Version: 1

+ 59 - 0
db/import-tmpl/battleground_db.yml

@@ -0,0 +1,59 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Battleground Queue Database
+###########################################################################
+#
+# Battleground Queue Settings
+#
+###########################################################################
+# - Id                Unique ID for the battleground type.
+#   Name              Name of the battleground. Must be the exact same as in the client for players to be able to join.
+#   MinPlayers        Minimum number of players required on each team. (Default: 1)
+#   MaxPlayers        Maximum number of players on each team. (Default: MAX_BG_MEMBERS / 2)
+#   MinLevel          Minimum level required to join the battleground. (Default: 1)
+#   MaxLevel          Maximum level to join the battleground. (Default: MAX_LEVEL value)
+#   Deserter          Amount of time in seconds a player is marked deserter. (Default: 600)
+#   StartDelay        Amount of time in seconds once a queue is filled before players are warped. (Default: 0)
+#   Join:             Which application type is accepted. The entryqueuelist.lub can visually disable these options.
+#     Solo            Able to join a queue as an individual. (Default: true)
+#     Party           Able to join a queue as a party. (Default: true)
+#     Guild           Able to join a queue as a guild. (Default: true)
+#   JobRestrictions   List of jobs that are unable to join the battleground.
+#   Locations:        Battleground location settings.
+#     - Map           The map on which the battleground will be played.
+#       StartEvent    NPC event triggered when the battleground starts.
+#       TeamA:        TeamA settings.
+#         RespawnX    X coordinate for warping on death.
+#         RespawnY    Y coordinate for warping on death.
+#         DeathEvent  NPC event triggered when a player dies.
+#         QuitEvent   NPC event triggered when a player quits.
+#         ActiveEvent NPC event triggered when a player joints an active battleground.
+#         Variable    Name of BG ID variable used in the battleground script.
+#       TeamB:        TeamB settings.
+#         RespawnX    X coordinate for warping on death.
+#         RespawnY    Y coordinate for warping on death.
+#         DeathEvent  NPC event triggered when a player dies.
+#         QuitEvent   NPC event triggered when a player quits.
+#         ActiveEvent NPC event triggered when a player joints an active battleground.
+#         Variable    Name of BG ID variable used in the battleground script.
+###########################################################################
+
+Header:
+  Type: BATTLEGROUND_DB
+  Version: 1

+ 1 - 1
db/import-tmpl/guild_skill_tree.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2019 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify

+ 0 - 6
db/import-tmpl/instance_db.txt

@@ -1,6 +0,0 @@
-// Instance Database
-//
-// Structure of Database:
-// ID,Name,LimitTime,IdleTimeOut,EnterMap,EnterX,EnterY,Map2,Map3,...,Map255
-//
-// EnterMap is considered as Map1

+ 40 - 0
db/import-tmpl/instance_db.yml

@@ -0,0 +1,40 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Instance Database
+###########################################################################
+#
+# Instance Settings
+#
+###########################################################################
+# - Id                Instance ID.
+#   Name              Instance Name.
+#   TimeLimit         Total lifetime of instance in seconds. (Default: 3600)
+#   IdleTimeOut       Time before an idle instance is destroyed in seconds. (Default: 300)
+#   Destroyable       Toggles the ability to destroy the instance using instance 'Destroy' button. (Default: true)
+#                     Note: the button is displayed based on parties. For any mode, it requires the party leader to be the instance owner to destroy it.
+#   Enter:            Instance entrance coordinates.
+#     Map             Map Name where players start.
+#     X               X Coordinate where players start.
+#     Y               Y Coordinate where players start.
+#   AdditionalMaps:   List of maps that are part of an instance. (Optional)
+###########################################################################
+
+Header:
+  Type: INSTANCE_DB
+  Version: 1

+ 0 - 12
db/import-tmpl/item_avail.txt

@@ -1,12 +0,0 @@
-// Item Availability and Alias Database
-//
-// Structure of Database:
-// ItemID,SpriteID
-//
-// 01. ItemID       Item ID to change.
-// 02. SpriteID     Item ID which will be sent to the client instead of ItemID.
-//                  If 0, the item becomes unavailable for use. If item_check is enabled and a player owns such an item, it will be removed upon next login/teleport.
-//
-// NOTE: Replaces an item client-side while keeping them separate server-side.
-// Think of it as a way to disguise items.
-// Don't sell the item in same shop with the source. Example, don't put 2240 & 2241 in same place!

+ 0 - 10
db/import-tmpl/item_buyingstore.txt

@@ -1,10 +0,0 @@
-// Buying Store Item List
-// List of items that can be sold to buying stores.
-//
-// Structure of Database:
-// ItemID
-//
-// Note:
-//  Items are in same order as data\buyingstoreitemlist.txt, which
-//  must be edited as well for the client to accept added items.
-

+ 0 - 68
db/import-tmpl/item_db.txt

@@ -1,68 +0,0 @@
-// Items Additional Database
-//
-// Structure of Database:
-// ID,Name,Name,Type,Price,Sell,Weight,ATK[:MATK],DEF,Range,Slot,Job,Class,Gender,Loc,wLV,eLV[:maxLevel],Refineable,View,{ Script },{ OnEquip_Script },{ OnUnequip_Script }
-//
-// THQ Quest Items
-//=============================================================
-//7950,THG_Membership,THG Membership,3,,10,10,,,,,,,,,,,,,{},{},{}
-//7951,Token_Bag,Token Bag,3,,10,10,,,,,,,,,,,,,{},{},{}
-//1998,Jeramiah's_Jur,Jeramiah's Jur,3,,10,10,,,,,,,,,,,,,{},{},{}
-//1999,Zed's_Staff,Zed's Staff,3,,10,10,,,,,,,,,,,,,{},{},{}
-
-// Official Event Items that had their Effects removed after the event was completed
-//585,Wurst,Brusti,11,2,,40,,,,,0xFFFFFFFF,63,2,,,,,,{ itemheal rand(15,20),0; itemskill "PR_MAGNIFICAT",3; },{},{}
-//679,Gold_Pill,Pilule,0,5000,,300,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 50,50; },{},{}
-
-//2681,Republic_Ring,Republic Anniversary Ring,4,20,,100,,0,,0,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bAllStats,3; },{},{}
-
-//5134,Pumpkin_Hat,Pumpkin-Head,4,20,,200,,2,,0,0xFFFFFFFF,63,2,256,,0,1,206,{ bonus2 bSubRace,RC_Demon,5; },{},{}
-//5136,Santa's_Hat_,Louise's Santa Hat,4,20,,100,,3,,0,0xFFFFFFFF,63,2,256,,0,1,20,{ bonus bMdef,1; bonus bLuk,1; bonus3 bAutoSpellWhenHit,"AL_HEAL",3,50; bonus3 bAutoSpellWhenHit,"AL_BLESSING",10,50; },{},{}
-//5145,Carnival_Joker_Jester,Carnival Jester,4,10,,100,,0,,0,0xFFFFFFFF,63,2,256,,0,1,89,{ bonus bAllStats,3; },{},{}
-//5147,Baseball_Cap,Baseball Cap,4,0,,200,,3,,0,0xFFFFFFFF,63,2,256,,0,1,216,{ bonus2 bExpAddRace,RC_Boss,50; bonus2 bExpAddRace,RC_NonBoss,50; },{},{}
-//5201,Party_Hat_B,2nd Anniversary Party Hat,4,20,,300,,3,,0,0xFFFFFFFF,63,2,256,,0,1,144,{ bonus bAllStats,3; },{},{}
-//5202,Pumpkin_Hat_,Pumpkin Hat,4,20,,200,,2,,0,0xFFFFFFFF,63,2,256,,0,1,206,{ bonus bAllStats,2; bonus2 bSubRace,RC_Demon,5; bonus3 bAddMonsterDropItem,529,RC_DemiHuman,1500; },{},{}
-//5204,Event_Pierrot_Nose,Rudolf's Red Nose,4,20,,100,,0,,0,0xFFFFFFFF,63,2,1,,0,0,49,{ bonus2 bResEff,Eff_Blind,3000; bonus2 bAddMonsterDropItem,12130,30; },{},{}
-//5264,Aussie_Flag_Hat,Australian Flag Hat,4,20,,500,,4,,0,0xFFFFFFFF,63,2,256,,0,1,304,{ bonus bAllStats,2; },{},{}
-//5356,Pumpkin_Hat_H,Pumpkin Hat,4,20,,200,,2,,0,0xFFFFFFFF,63,2,256,,0,1,206,{ bonus bAllStats,2; bonus2 bSubRace,RC_Demon,5; bonus2 bMagicAddRace,RC_Demon,5; },{},{}
-//5384,Santa_Hat_1,Twin Pompom By JB,4,20,,200,,2,,1,0xFFFFFFFF,63,2,256,,20,1,390,{ bonus bLuk,3; bonus2 bResEff,Eff_Curse,2000; bonus bVariableCastrate,-2; bonus bAspdRate,4; bonus2 bAddMonsterDropItem,539,100; bonus2 bAddMonsterDropItem,529,200; bonus2 bAddMonsterDropItem,530,200; autobonus "{ bonus bCritical,10; }",10,5000; },{},{}
-//5811,Santa_Beard,Santa Beard,4,20,,100,,5,,0,0xFFFFFFFF,63,2,1,,0,0,25,{ bonus2 bSubRace,RC_Brute,5; },{},{}
-
-//11702,Moon_Cookie,Moon Cookie,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_end SC_POISON; sc_end SC_SILENCE; sc_end SC_BLIND; sc_end SC_CONFUSION; sc_end SC_CURSE; sc_end SC_HALLUCINATION; itemskill "AL_BLESSING",7; },{},{}
-//12131,Lucky_Potion,Lucky Potion,0,2,,100,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_start SC_LUKFOOD,180000,15; },{},{}
-//12143,Red_Can,Red Can,2,50000,,300,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 25,25; },{},{}
-//Event effect: Summon monster? Probably Rice_Cake. x_x
-//12199,Rice_Scroll,Rice Scroll,2,0,,0,,,,,0xFFFFFFFF,63,2,,,,,,{},{},{}
-//12200,Event_Cake,Event Cake,2,20,,50,,,,,0xFFFFFFFF,63,2,,,,,,{ itemskill "PR_MAGNIFICAT",3; },{},{}
-//12238,New_Year_Rice_Cake_1,New Year Rice Cake,0,20,,100,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 20,15; sc_start SC_STRFOOD,1200000,3; sc_start SC_INTFOOD,1200000,3; sc_start SC_LUKFOOD,1200000,3; sc_start SC_SPEEDUP1,5000,0; },{},{}
-//12239,New_Year_Rice_Cake_2,New Year Rice Cake,0,20,,100,,,,,0xFFFFFFFF,63,2,,,,,,{ percentheal 20,15; sc_start SC_DEXFOOD,1200000,3; sc_start SC_AGIFOOD,1200000,3; sc_start SC_VITFOOD,1200000,3; sc_start SC_SPEEDUP1,5000,0; },{},{}
-
-// iRO St. Patrick's Day Event 2008
-//=============================================================
-//12715,Black_Treasure_Chest,Black Treasure Chest,2,0,,200,,,,,0xFFFFFFFF,63,2,,,,,,{ callfunc "F_08stpattyseventbox"; },{},{}
-
-// iRO Valentine's Day Event 2009
-//=============================================================
-//12742,Valentine_Gift_Box_M,Valentine Gift Box,2,10,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 7946,1; },{},{}
-//12743,Valentine_Gift_Box_F,Valentine Gift Box,2,10,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 7947,1; },{},{}
-//12744,Chocolate_Box,Chocolate Box,2,10,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 558,1; },{},{}
-//14466,Valentine's_Emblem_Box,Valentine's Emblem Box,2,10,,0,,,,,0xFFFFFFFF,63,2,,,,,,{ getitem 5817,1; },{},{}
-//7946,Gold_Ring_Of_Valentine,Gold Ring Of Valentine,3,10,,0,,,,,,,,,,,,,{},{},{}
-//7947,Silver_Ring_Of_Valentine,Silver Ring Of Valentine,3,10,,0,,,,,,,,,,,,,{},{},{}
-//7948,Box,Box,3,10,,10,,,,,,,,,,,,,{},{},{}
-//5817,Valentine's_Emblem,Valentine's Emblem,4,10,,0,,3,,0,0xFFFFFFFF,63,2,136,,0,0,0,{ bonus bAtkRate,3; bonus bMatkRate,3; bonus bAllStats,2; bonus bFlee,10; bonus bAspd,1; bonus bMdef,3; bonus2 bSkillAtk,"AL_HEAL",10; bonus2 bSkillHeal,"AL_HEAL",10; bonus2 bSkillHeal,"AM_POTIONPITCHER",10; bonus2 bAddItemGroupHealRate,IG_Potion,10; },{},{}
-
-// iRO Halloween Event 2009
-//=============================================================
-//5668,Weird_Pumpkin_Hat,Weird Pumpkin Hat,4,20,,0,,5,,0,0xFFFFFFFF,63,2,256,,0,1,206,{ bonus bMdef,5; bonus2 bAddMonsterDropItem,12192,2500; },{},{}
-//6298,Crushed_Pumpkin,Crushed Pumpkin,3,0,,0,,,,,,,,,,,,,{},{},{}
-//6299,Worn_Fabric,Worn Fabric,3,0,,0,,,,,,,,,,,,,{},{},{}
-
-// Old Tuxedo and Wedding Dress, will display the outfit when worn.
-//==================================================================
-//2338,Wedding_Dress,Wedding Dress,4,43000,,500,,0,,0,0xFFFFFFFE,63,0,16,,0,1,0,{},{ sc_start SC_WEDDING,INFINITE_TICK,0; },{ sc_end SC_WEDDING; }
-//7170,Tuxedo,Tuxedo,4,43000,,10,,0,,0,0xFFFFFFFE,63,1,16,,0,1,0,{},{ sc_start SC_WEDDING,INFINITE_TICK,0; },{ sc_end SC_WEDDING; }
-
-// Non-kRO Eden Group Mark effect
-//=============================================================
-//22508,Para_Team_Mark_,Eden Group Mark,11,0,,0,,,,0,0xFFFFFFFF,63,2,,,,,,{ unitskilluseid getcharid(3),"AL_TELEPORT",3; },{},{}

+ 544 - 0
db/import-tmpl/item_db.yml

@@ -0,0 +1,544 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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 Database
+###########################################################################
+#
+# Item Settings
+#
+###########################################################################
+# - Id                      Item ID.
+#   AegisName               Server name to reference the item in scripts and lookups, should use no spaces.
+#   Name                    Name in English for displaying as output.
+#   Type                    Item type. (Default: Etc)
+#   SubType                 Weapon or Ammo type. (Default: 0)
+#   Buy                     Buying price. When not specified, becomes double the sell price. (Default: 0)
+#   Sell                    Selling price. When not specified, becomes half the buy price. (Default: 0)
+#   Weight                  Item weight. Each 10 is 1 weight. (Default: 0)
+#   Attack                  Weapon's attack. (Default: 0)
+#   MagicAttack             Weapon's magic attack. (Default: 0)
+#   Defense                 Armor's defense. (Default: 0)
+#   Range                   Weapon's attack range. (Default: 0)
+#   Slots                   Available slots in item. (Default: 0)
+#   Jobs                    Jobs that can equip the item. (Map default is 'All: true')
+#   Classes                 Upper class types that can equip the item. (Map default is 'All: true')
+#   Gender                  Gender that can equip the item. (Default: Both)
+#   Locations               Equipment's placement. (Default: None)
+#   WeaponLevel             Weapon level. (Default: 0)
+#   EquipLevelMin           Minimum required level to equip. (Default: 0)
+#   EquipLevelMax           Maximum level that can equip. (Default: 0)
+#   Refineable              If the item can be refined. (Default: false)
+#   View                    View sprite of an item. (Default: 0)
+#   AliasName               Another item's AegisName that will be sent to the client instead of this item's AegisName. (Default: null)
+#   Flags:                  Item flags. (Default: null)
+#     BuyingStore           If the item is available for Buyingstores. (Default: false)
+#     DeadBranch            If the item is a Dead Branch. (Default: false)
+#     Container             If the item is part of a container. (Default: false)
+#     UniqueId              If the item is a unique stack. (Default: false)
+#     BindOnEquip           If the item is bound to the character upon equipping. (Default: false)
+#     DropAnnounce          If the item has a special announcement to self on drop. (Default: false)
+#     NoConsume             If the item is consumed on use. (Default: false)
+#     DropEffect            If the item has a special effect on the ground when dropped by a monster. (Default: None)
+#   Delay:                  Item use delay. (Default: null)
+#     Duration              Duration of delay in seconds.
+#     Status                Status Change used to track delay. (Default: None)
+#   Stack:                  Item stack amount. (Default: null)
+#     Amount                Maximum amount that can be stacked.
+#     Inventory             If the stack is applied to player's inventory. (Default: true)
+#     Cart                  If the stack is applied to the player's cart. (Default: false)
+#     Storage               If the stack is applied to the player's storage. (Default: false)
+#     GuildStorage          If the stack is applied to the player's guild storage. (Default: false)
+#   NoUse:                  Conditions when the item is unusable. (Default: null)
+#     Override              Group level to override these conditions.
+#     Sitting               If the item can not be used while sitting. (Default: false)
+#   Trade:                  Trade restrictions. (Default: null)
+#     Override              Group level to override these conditions.
+#     NoDrop                If the item can not be dropped. (Default: false)
+#     NoTrade               If the item can not be traded. (Default: false)
+#     TradePartner          If the item can not be traded to the player's partner. (Default: false)
+#     NoSell                If the item can not be sold. (Default: false)
+#     NoCart                If the item can not be put in a cart. (Default: false)
+#     NoStorage             If the item can not be put in a storage. (Default: false)
+#     NoGuildStorage        If the item can not be put in a guild storage. (Default: false)
+#     NoMail                If the item can not be put in a mail. (Default: false)
+#     NoAuction             If the item can not be put in an auction. (Default: false)
+#   Script                  Script to execute when the item is used/equipped. (Default: null)
+#   EquipScript             Script to execute when the item is equipped. (Default: null)
+#   UnEquipScript           Script to execute when the item is unequipped or when a rental item expires. (Default: null)
+###########################################################################
+
+Header:
+  Type: ITEM_DB
+  Version: 1
+
+#Body:
+# THQ Quest Items
+#=============================================================
+#  - Id: 1998
+#    AegisName: Jeramiah's_Jur
+#    Name: Jeramiah's Jur
+#    Type: Etc
+#    Sell: 10
+#    Weight: 10
+#    AliasName: Jur
+#  - Id: 1999
+#    AegisName: Zed's_Staff
+#    Name: Zed's Staff
+#    Type: Etc
+#    Sell: 10
+#    Weight: 10
+#    AliasName: Staff_Of_Soul
+#  - Id: 7950
+#    AegisName: THG_Membership
+#    Name: THG Membership
+#    Type: Etc
+#    Sell: 10
+#    Weight: 10
+#    AliasName: Foolishness_Of_Blind
+#  - Id: 7951
+#    AegisName: Token_Bag
+#    Name: Token Bag
+#    Type: Etc
+#    Sell: 10
+#    Weight: 10
+#    AliasName: Leather_Bag_Of_Infinity
+
+# Official Event Items that had their Effects removed after the event was completed
+#=============================================================
+#  - Id: 585
+#    AegisName: Wurst
+#    Name: Brusti
+#    Type: Delayconsume
+#    Buy: 2
+#    Weight: 40
+#    Script: |
+#      itemheal rand(15,20),0; itemskill "PR_MAGNIFICAT",3;
+#  - Id: 679
+#    AegisName: Gold_Pill
+#    Name: Pilule
+#    Type: Healing
+#    Buy: 5000
+#    Weight: 300
+#    Script: |
+#      percentheal 50,50;
+#  - Id: 2681
+#    AegisName: Republic_Ring
+#    Name: Republic Anniversary Ring
+#    Type: Armor
+#    Buy: 20
+#    Weight: 100
+#    Locations:
+#      Right_Accessory: true
+#      Left_Accessory: true
+#    Script: |
+#      bonus bAllStats,3;
+#  - Id: 5134
+#    AegisName: Pumpkin_Hat
+#    Name: Pumpkin-Head
+#    Type: Armor
+#    Buy: 20
+#    Weight: 200
+#    Defense: 2
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 206
+#    Script: |
+#      bonus2 bSubRace,RC_Demon,5;
+#  - Id: 5136
+#    AegisName: Santa's_Hat_
+#    Name: Louise's Santa Hat
+#    Type: Armor
+#    Buy: 20
+#    Weight: 100
+#    Defense: 3
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 20
+#    Script: |
+#      bonus bMdef,1; bonus bLuk,1; bonus3 bAutoSpellWhenHit,"AL_HEAL",3,50; bonus3 bAutoSpellWhenHit,"AL_BLESSING",10,50;
+#  - Id: 5145
+#    AegisName: Carnival_Joker_Jester
+#    Name: Carnival Jester
+#    Type: Armor
+#    Buy: 10
+#    Weight: 100
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 89
+#    Script: |
+#      bonus bAllStats,3;
+#  - Id: 5147
+#    AegisName: Baseball_Cap
+#    Name: Baseball Cap
+#    Type: Armor
+#    Weight: 200
+#    Defense: 3
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 216
+#    Script: |
+#      bonus2 bExpAddRace,RC_Boss,50; bonus2 bExpAddRace,RC_NonBoss,50;
+#  - Id: 5201
+#    AegisName: Party_Hat_B
+#    Name: 2nd Anniversary Party Hat
+#    Type: Armor
+#    Buy: 20
+#    Weight: 300
+#    Defense: 3
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 144
+#    Script: |
+#      bonus bAllStats,3;
+#  - Id: 5202
+#    AegisName: Pumpkin_Hat_
+#    Name: Pumpkin Hat
+#    Type: Armor
+#    Buy: 20
+#    Weight: 200
+#    Defense: 2
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 206
+#    Script: |
+#      bonus bAllStats,2; bonus2 bSubRace,RC_Demon,5; bonus3 bAddMonsterDropItem,529,RC_DemiHuman,1500;
+#  - Id: 5204
+#    AegisName: Event_Pierrot_Nose
+#    Name: Rudolf's Red Nose
+#    Type: Armor
+#    Buy: 20
+#    Weight: 100
+#    Locations:
+#      Head_Low: true
+#    View: 49
+#    Script: |
+#      bonus2 bResEff,Eff_Blind,3000; bonus2 bAddMonsterDropItem,12130,30;
+#  - Id: 5264
+#    AegisName: Aussie_Flag_Hat
+#    Name: Australian Flag Hat
+#    Type: Armor
+#    Buy: 20
+#    Weight: 500
+#    Defense: 4
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 304
+#    Script: |
+#      bonus bAllStats,2;
+#  - Id: 5356
+#    AegisName: Pumpkin_Hat_H
+#    Name: Pumpkin Hat
+#    Type: Armor
+#    Buy: 20
+#    Weight: 200
+#    Defense: 2
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 206
+#    Script: |
+#      bonus bAllStats,2; bonus2 bSubRace,RC_Demon,5; bonus2 bMagicAddRace,RC_Demon,5;
+#  - Id: 5384
+#    AegisName: Santa_Hat_1
+#    Name: Twin Pompom By JB
+#    Type: Armor
+#    Buy: 20
+#    Weight: 200
+#    Defense: 2
+#    Slots: 1
+#    Locations:
+#      Head_Top: true
+#    EquipLevelMin: 20
+#    Refineable: true
+#    View: 390
+#    Script: |
+#      bonus bLuk,3; bonus2 bResEff,Eff_Curse,2000; bonus bVariableCastrate,-2; bonus bAspdRate,4; bonus2 bAddMonsterDropItem,539,100; bonus2 bAddMonsterDropItem,529,200; bonus2 bAddMonsterDropItem,530,200; autobonus "{ bonus bCritical,10; }",10,5000;
+#  - Id: 5811
+#    AegisName: Santa_Beard
+#    Name: Santa Beard
+#    Type: Armor
+#    Buy: 20
+#    Weight: 100
+#    Defense: 5
+#    Locations:
+#      Head_Low: true
+#    View: 25
+#    Script: |
+#      bonus2 bSubRace,RC_Brute,5; bonus2 bSubRace,RC_Player_Doram,5;
+#  - Id: 11702
+#    AegisName: Moon_Cookie
+#    Name: Moon Cookie
+#    Type: Delayconsume
+#    Weight: 10
+#    Script: |
+#      sc_end SC_POISON; sc_end SC_SILENCE; sc_end SC_BLIND; sc_end SC_CONFUSION; sc_end SC_CURSE; sc_end SC_HALLUCINATION; itemskill "AL_BLESSING",7;
+#  - Id: 12131
+#    AegisName: Lucky_Potion
+#    Name: Lucky Potion
+#    Type: Healing
+#    Buy: 2
+#    Weight: 100
+#    Script: |
+#      sc_start SC_LUKFOOD,180000,15;
+#  - Id: 12143
+#    AegisName: Red_Can
+#    Name: Red Can
+#    Type: Usable
+#    Buy: 50000
+#    Weight: 300
+#    Script: |
+#      percentheal 25,25;
+
+# Event effect: Summon monster? Probably Rice_Cake. x_x
+#=============================================================
+#  - Id: 12199
+#    AegisName: Rice_Scroll
+#    Name: Rice Scroll
+#    Type: Usable
+#  - Id: 12200
+#    AegisName: Event_Cake
+#    Name: Event Cake
+#    Type: Usable
+#    Buy: 20
+#    Weight: 50
+#    Script: |
+#      itemskill "PR_MAGNIFICAT",3;
+#  - Id: 12238
+#    AegisName: New_Year_Rice_Cake_1
+#    Name: New Year Rice Cake
+#    Type: Healing
+#    Buy: 20
+#    Weight: 100
+#    Script: |
+#      percentheal 20,15; sc_start SC_STRFOOD,1200000,3; sc_start SC_INTFOOD,1200000,3; sc_start SC_LUKFOOD,1200000,3; sc_start SC_SPEEDUP1,5000,0;
+#  - Id: 12239
+#    AegisName: New_Year_Rice_Cake_2
+#    Name: New Year Rice Cake
+#    Type: Healing
+#    Buy: 20
+#    Weight: 100
+#    Script: |
+#      percentheal 20,15; sc_start SC_DEXFOOD,1200000,3; sc_start SC_AGIFOOD,1200000,3; sc_start SC_VITFOOD,1200000,3; sc_start SC_SPEEDUP1,5000,0;
+
+# iRO St. Patrick's Day Event 2008
+#=============================================================
+#  - Id: 7915
+#    AegisName: Copper_Coin_
+#    Name: Bronze Coin
+#    Type: Etc
+#    Weight: 10
+#    AliasName: Copper_Coin
+#  - Id: 7916
+#    AegisName: Silver_Coin_
+#    Name: Silver Coin
+#    Type: Etc
+#    Weight: 10
+#    AliasName: Silver_Coin
+#  - Id: 12715
+#    AegisName: Black_Treasure_Chest
+#    Name: Black Treasure Chest
+#    Type: Usable
+#    Weight: 200
+#    AliasName: Treasure_Box_
+#    Script: |
+#      callfunc "F_08stpattyseventbox";
+
+# iRO Valentine's Day Event 2009
+#=============================================================
+#  - Id: 5817
+#    AegisName: Valentine's_Emblem
+#    Name: Valentine's Emblem
+#    Type: Armor
+#    Buy: 10
+#    Defense: 3
+#    Locations:
+#      Right_Accessory: true
+#      Left_Accessory: true
+#    Script: |
+#      bonus bAtkRate,3; bonus bMatkRate,3; bonus bAllStats,2; bonus bFlee,10; bonus bAspd,1; bonus bMdef,3; bonus2 bSkillAtk,"AL_HEAL",10; bonus2 bSkillHeal,"AL_HEAL",10; bonus2 bSkillHeal,"AM_POTIONPITCHER",10; bonus2 bAddItemGroupHealRate,IG_Potion,10;
+#  - Id: 7946
+#    AegisName: Gold_Ring_Of_Valentine
+#    Name: Gold Ring Of Valentine
+#    Type: Etc
+#    Buy: 10
+#  - Id: 7947
+#    AegisName: Silver_Ring_Of_Valentine
+#    Name: Silver Ring Of Valentine
+#    Type: Etc
+#    Buy: 10
+#  - Id: 7948
+#    AegisName: Box
+#    Name: Box
+#    Type: Etc
+#    Buy: 10
+#    Weight: 10
+#  - Id: 12742
+#    AegisName: Valentine_Gift_Box_M
+#    Name: Valentine Gift Box
+#    Type: Usable
+#    Buy: 10
+#    Script: |
+#      getitem 7946,1;
+#  - Id: 12743
+#    AegisName: Valentine_Gift_Box_F
+#    Name: Valentine Gift Box
+#    Type: Usable
+#    Buy: 10
+#    Script: |
+#      getitem 7947,1;
+#  - Id: 12744
+#    AegisName: Chocolate_Box
+#    Name: Chocolate Box
+#    Type: Usable
+#    Buy: 10
+#    Script: |
+#      getitem 558,1;
+#  - Id: 14466
+#    AegisName: Valentine's_Emblem_Box
+#    Name: Valentine's Emblem Box
+#    Type: Usable
+#    Buy: 10
+#    Script: |
+#      getitem 5817,1;
+
+# iRO Halloween Event 2009
+#=============================================================
+#  - Id: 5668
+#    AegisName: Weird_Pumpkin_Hat
+#    Name: Weird Pumpkin Hat
+#    Type: Armor
+#    Buy: 20
+#    Defense: 5
+#    Locations:
+#      Head_Top: true
+#    Refineable: true
+#    View: 206
+#    Script: |
+#      bonus bMdef,5; bonus2 bAddMonsterDropItem,12192,2500;
+#  - Id: 6298
+#    AegisName: Crushed_Pumpkin
+#    Name: Crushed Pumpkin
+#    Type: Etc
+#  - Id: 6299
+#    AegisName: Worn_Fabric
+#    Name: Worn Fabric
+#    Type: Etc
+
+# Old Tuxedo and Wedding Dress, will display the outfit when worn.
+#==================================================================
+#  - Id: 2338
+#    AegisName: Wedding_Dress
+#    Name: Wedding Dress
+#    Type: Armor
+#    Buy: 43000
+#    Weight: 500
+#    Jobs:
+#      All: true
+#      Novice: false
+#    Gender: Female
+#    Locations:
+#      Armor: true
+#    Refineable: true
+#    EquipScript: |
+#      sc_start SC_WEDDING,INFINITE_TICK,0;
+#    UnEquipScript: |
+#      sc_end SC_WEDDING;
+#  - Id: 7170
+#    AegisName: Tuxedo
+#    Name: Tuxedo
+#    Type: Armor
+#    Buy: 43000
+#    Weight: 10
+#    Jobs:
+#      All: true
+#      Novice: false
+#    Gender: Male
+#    Locations:
+#      Armor: true
+#    Refineable: true
+#    EquipScript: |
+#      sc_start SC_WEDDING,INFINITE_TICK,0;
+#    UnEquipScript: |
+#      sc_end SC_WEDDING;
+
+# Non-kRO Eden Group Mark effect
+#=============================================================
+#  - Id: 22508
+#    AegisName: Para_Team_Mark_
+#    Name: Eden Group Mark
+#    Type: Delayconsume
+#    Script: |
+#      unitskilluseid getcharid(3),"AL_TELEPORT",3;
+
+# Gender restrictions that were removed on official servers
+#=============================================================
+#  - Id: 2206
+#    Gender: Female
+#  - Id: 2208
+#    Gender: Female
+#  - Id: 2209
+#    Gender: Female
+#  - Id: 2234
+#    Gender: Female
+#  - Id: 2235
+#    Gender: Male
+#  - Id: 2407
+#    Gender: Female
+#  - Id: 2415
+#    Gender: Female
+#  - Id: 2494
+#    Gender: Female
+#  - Id: 5143
+#    Gender: Male
+#  - Id: 5164
+#    Gender: Female
+#  - Id: 5165
+#    Gender: Male
+#  - Id: 5191
+#    Gender: Female
+#  - Id: 5192
+#    Gender: Female
+#  - Id: 5193
+#    Gender: Female
+#  - Id: 5194
+#    Gender: Female
+#  - Id: 5195
+#    Gender: Female
+#  - Id: 5196
+#    Gender: Female
+#  - Id: 5197
+#    Gender: Female
+#  - Id: 5221
+#    Gender: Female
+#  - Id: 5354
+#    Gender: Male
+#  - Id: 5355
+#    Gender: Female
+#  - Id: 5400
+#    Gender: Female
+#  - Id: 5681
+#    Gender: Female
+#  - Id: 5735
+#    Gender: Female

+ 0 - 8
db/import-tmpl/item_delay.txt

@@ -1,8 +0,0 @@
-// Item Delay Database
-//
-// Structure of Database:
-// Item ID,Delay in Milliseconds
-//
-// NOTE:
-// There is a max concurrent number of entries set in src/map/itemdb.h as MAX_ITEMDELAYS.
-

+ 0 - 17
db/import-tmpl/item_flag.txt

@@ -1,17 +0,0 @@
-// Flagged Items
-// <ItemID>,<Flag>
-//
-// <Flag>:
-//  1 - As Dead Branch item (will be logged at `branchlog` table and cannot be used at 'nobranch' mapflag)
-//  2 - As item group container, check player's inventory and weight before consumed
-//  4 - GUID item, cannot be stacked even same or stackable item
-//  8 - Item will be bound item when equipped
-// 16 - Special Broadcast: When item dropped by monster and player loot it, will be broadcasted!
-// 32 - Item will not be removed on consumption. Also supports 'itemskill'
-// 64 - Item will be displayed with a client side defined drop
-// 128 - Item will be displayed with a white pillar drop effect
-// 256 - Item will be displayed with a blue pillar drop effect
-// 512 - Item will be displayed with a yellow pillar drop effect
-// 1024 - Item will be displayed with a purple pillar drop effect
-// 2048 - Item will be displayed with a orange pillar drop effect
-// NOTE: For removing flag by import file, use "-" to remove the flag. Example, 604,-1 will removes flag 1 from Branch_Of_Dead_Tree

+ 0 - 13
db/import-tmpl/item_nouse.txt

@@ -1,13 +0,0 @@
-// Item Usage Restriction Configuration File
-// Defines if an item cannot be used under special circumstances.
-//
-// Structure of Database:
-// ItemID,Flag,Group ID Override
-//
-// Flag:
-//	1 = Cannot use item while sitting
-//	... [more to come]
-//
-// Group ID Override:
-//	Group ID necessary to override this setting.
-

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

@@ -1,4 +0,0 @@
-// Items Random Option Database	
-//
-// Structure of Database:
-// ID,{ Bonus Script }

+ 32 - 0
db/import-tmpl/item_randomopt_db.yml

@@ -0,0 +1,32 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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 Random Option Database
+###########################################################################
+#
+# Item Random Option Settings
+#
+###########################################################################
+# - Id          Item Random Option ID matching the ID defined in enumvar.lub in the client.
+#   Option      Item Random Option constant.
+#   Script      Bonus script used for option.
+###########################################################################
+
+Header:
+  Type: RANDOM_OPTION_DB
+  Version: 1

+ 0 - 1
db/import-tmpl/item_randomopt_group.txt

@@ -1 +0,0 @@
-// <randopt_groupid>,<rate>,<randopt_id1>,<randopt_value1>,<randopt_param1>{,<randopt_id2>,<randopt_value2>,<randopt_param2>,<randopt_id3>,<randopt_value3>,<randopt_param3>,<randopt_id4>,<randopt_value4>,<randopt_param4>,<randopt_id5>,<randopt_value5>,<randopt_param5>}

+ 46 - 0
db/import-tmpl/item_randomopt_group.yml

@@ -0,0 +1,46 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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 Random Option Group Database
+###########################################################################
+#
+# Item Random Option Group Settings
+#
+###########################################################################
+# - Id                  Item Random Option Group ID.
+#   Group               Item Random Option Group constant.
+#   Slots:              Slot in which an Item Random Option is guaranteed to be applied. Max of MAX_ITEM_RDM_OPT.
+#     - Slot            Slot number.
+#       Options:        List of possible Item Random Options for slot.
+#         - Option      Item Random Option constant.
+#           MinValue    Minimum value. (Default: 0)
+#           MaxValue    Maximum value. (Default: 0)
+#           Param       Parameter value. (Default: 0)
+#           Chance      Chance applied specifically to this Item Random Option (1 = 0.01%, 10000 = 100%). (Default: 0)
+#   MaxRandom           Maximum amount of random options applied. These options are not guaranteed to be applied. Max of (MAX_ITEM_RDM_OPT - Total 'Slots'). (Default: 0)
+#   Random:             List of possible Item Random Options for remaining slots. (Optional)
+#     - Option          Item Random Option constant.
+#       MinValue        Minimum value. (Default: 0)
+#       MaxValue        Maximum value. (Default: 0)
+#       Param           Parameter value. (Default: 0)
+#       Chance          Chance applied specifically to this Item Random Option (1 = 0.01%, 10000 = 100%). (Default: 0)
+###########################################################################
+
+Header:
+  Type: RANDOM_OPTION_GROUP
+  Version: 1

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

@@ -1,19 +0,0 @@
-// Item Stacking Restriction File
-// Prevents an item to be stacked more than x times in given
-// inventory types. Generally used by 3rd class related skill items.
-//
-// Structure of Database:
-// ItemID,MaxStackAmount,Type
-//
-// MaxStackAmount:
-//	Stack limit for the item. Use 0 to disable a restriction.
-//
-// Type mask values:
-//	&1: Character inventory restriction
-//	&2: Character cart restriction
-//	&4: Account storage restriction
-//	&8: Guild storage restriction
-//
-// Example:
-// 512,4,12  // Will not allow more than 4 Apples in storages.
-

+ 0 - 22
db/import-tmpl/item_trade.txt

@@ -1,22 +0,0 @@
-// Item Trade Restrictions Database
-// Defines special trade rules for individual items.
-//
-// Structure of Database:
-// Item ID, TradeMask,Group Level Override
-//
-// Legend for 'TradeMask' field (bitmask):
-// 1   - item can't be dropped
-// 2   - item can't be traded (nor vended)
-// 4   - wedded partner can override restriction 2
-// 8   - item can't be sold to npcs
-// 16  - item can't be placed in the cart
-// 32  - item can't be placed in the storage
-// 64  - item can't be placed in the guild storage
-// 128 - item can't be attached to mail
-// 256 - item can't be auctioned
-//
-// Example:
-// 1161,67,50
-//	Balmung cannot be dropped, traded, or placed in Guild Storage (1+2+64).
-//	Only groups of group-level 50 and up can override this setting.
-

Diferenças do arquivo suprimidas por serem muito extensas
+ 0 - 0
db/import-tmpl/job_exp.txt


+ 0 - 14
db/import-tmpl/level_penalty.txt

@@ -1,14 +0,0 @@
-// Experience & Drop Rate Modifier Database
-//
-// Structure of Database:
-// Type,Class,Level difference,Rate
-//
-// TYPE:
-//   1=experience, 2=item drop
-// CLASS:
-//   0=Normal monsters, 1=Boss monsters, 2=Guardians
-//
-// Note: RENEWAL_DROP and/or RENEWAL_EXP must be enabled.
-
-// EXP modifiers due to level difference
-

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

@@ -0,0 +1,33 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Level Penalty Database
+###########################################################################
+#
+# Level Penalty Settings
+#
+###########################################################################
+# - Type:             Type of Penalty (Exp, Drop, Mvp_Exp, Mvp_Drop)
+#   LevelDifferences: List of level difference between player and monster
+#     - Difference:   Level difference between player and monster
+#       Rate:         Rate applied to original exp or drop rate (0-10000)
+###########################################################################
+
+Header:
+  Type: PENALTY_DB
+  Version: 1

+ 0 - 8
db/import-tmpl/magicmushroom_db.txt

@@ -1,8 +0,0 @@
-// Magic Mushroom Database
-// List of skills that are randomly used through Magic Mushroom status change.
-//
-// Structure of Database:
-// SkillID{,RemoveFlag}
-//
-// - To remove entry by importing, put 1 value on 'RemoveFlag'
-

+ 30 - 0
db/import-tmpl/magicmushroom_db.yml

@@ -0,0 +1,30 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Magic Mushroom Database
+###########################################################################
+#
+# Magic Mushroom Settings
+#
+###########################################################################
+# - Skill       Skill to be casted by Magic Mushroom.
+###########################################################################
+
+Header:
+  Type: MAGIC_MUSHROOM_DB
+  Version: 1

+ 0 - 16
db/import-tmpl/mob_avail.txt

@@ -1,16 +0,0 @@
-// Mob Availability and Alias Database
-//
-// Structure of Database:
-// MobID,SpriteID{,Equipment}
-//
-// 01. MobID        Mob ID to change.
-// 02. SpriteID     Mob ID which will be sent to the client instead of MobID.
-//                  If 0, the mob becomes unavailable for use.
-// 03. Equipment    Item ID of pet equipment (must be available for pet counterpart, or this will cause problems).
-//
-// To disguise a mob as a player:
-// MobID,SpriteID,Sex,Hair_Style,Hair_Color,Weapon,Shield,Head_Top,Head_Middle,Head_Bottom,Option,Dye_Color
-//
-// SpriteID is a job class value.
-// Weapon and Shield uses Item ID, while Head uses View ID.
-

+ 123 - 0
db/import-tmpl/mob_avail.yml

@@ -0,0 +1,123 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Mob Availability and Alias Database
+###########################################################################
+#
+# Mob Availability and Alias Settings
+#
+###########################################################################
+# - Mob                     Mob to adjust.
+#   Sprite                  Sprite which will be sent to the client instead of Mob.
+#   Sex                     Sex (if Sprite is a player). (Default: Female)
+#   HairStyle               Hair Style ID (if Sprite is a player). (Default: 0)
+#   HairColor               Hair Color ID (if Sprite is a player). (Default: 0)
+#   ClothColor              Cloth Color ID (if Sprite is a player). (Default: 0)
+#   Weapon                  Item name of weapon (if Sprite is a player). (Default: 0)
+#   Shield                  Item name of shield (if Sprite is a player). (Default: 0)
+#   HeadTop                 Item name of headgear (if Sprite is a player). (Default: 0)
+#   HeadMid                 Item name of headgear (if Sprite is a player). (Default: 0)
+#   HeadLow                 Item name of headgear (if Sprite is a player). (Default: 0)
+#   PetEquip                Item name of pet equipment (if Mob is a valid pet). (Default: 0)
+#   Options:                Set an option for an object. (Optional)
+#     <Option>: bool
+###########################################################################
+
+Header:
+  Type: MOB_AVAIL_DB
+  Version: 1
+
+#Body:
+  # Examples
+#  - Mob: PORING
+#    Sprite: BAPHOMET
+#  - Mob: E_OBEAUNE
+#    Sprite: PORING
+#    PetEquip: Backpack
+
+  # Easter Event Monsters
+#  - Mob: MOROCC_3
+#    Sprite: DOPPELGANGER
+#  - Mob: MOROCC_4
+#    Sprite: ECLIPSE
+
+  # rAthena Dev Team
+  # Valaris
+#  - Mob: BOW_GUARDIAN_
+#    Sprite: JOB_ASSASSIN_CROSS
+#    Sex: Male
+#    HairStyle: 1
+#    HairColor: 1
+#    ClothColor: 1
+#    Weapon: Jamadhar
+#    HeadTop: Sahkkat
+#    HeadMid: Sunglasses
+#    HeadLow: Cigar
+#    Options:
+#      Falcon: true
+  # Valaris Worshiper
+#  - Mob: E_CONDOR
+#    Sprite: JOB_THIEF
+#    Sex: Male
+#    HairStyle: 1
+#    HairColor: 1
+#    ClothColor: 1
+#    Weapon: Gladius
+#    Shield: Guard
+#    HeadTop: Sahkkat
+#    HeadMid: Sunglasses
+#    HeadLow: Cigar
+  # MC Cameri
+#  - Mob: E_TREASURE1
+#    Sprite: JOB_CRUSADER
+#    Sex: Male
+#    HairStyle: 6
+#    HairColor: 6
+#    ClothColor: 3
+#    Weapon: Sword
+#    Shield: Shield
+#    Options:
+#      Riding: true
+  # Poki#3
+#  - Mob: E_TREASURE2
+#    Sprite: JOB_SNIPER
+#    Sex: Male
+#    HairStyle: 21
+#    Weapon: Bow_Of_Rudra
+#    HeadTop: Boy's_Cap
+#    HeadMid: Takius_Blindfold
+#    HeadLow: Centimental_Leaf
+#    Options:
+#      Falcon: true
+  # Sentry
+#  - Mob: BOMBPORING
+#    Sprite: KNIGHT_GUARDIAN
+
+  # iRO Halloween Event 2009
+#  - Mob: EP14_MORS_BOSSB
+#    Sprite: ZOMBIE
+#  - Mob: EP14_MORS_MOB1
+#    Sprite: GHOUL
+#  - Mob: EP14_MORS_MOB2
+#    Sprite: ZOMBIE_MASTER
+
+  # iRO Halloween Event 2009
+#  - Mob: EP14_3_DEATH_B_MOB2
+#    Sprite: WHISPER
+#  - Mob: EP14_3_DEATH_B_MOB3
+#    Sprite: DARK_LORD

+ 0 - 48
db/import-tmpl/mob_db.txt

@@ -1,48 +0,0 @@
-// Monsters Additional Database
-//
-// Structure of Database :
-// ID,Sprite_Name,kROName,iROName,LV,HP,SP,EXP,JEXP,Range1,ATK1,ATK2,DEF,MDEF,STR,AGI,VIT,INT,DEX,LUK,Range2,Range3,Scale,Race,Element,Mode,Speed,aDelay,aMotion,dMotion,MEXP,MVP1id,MVP1per,MVP2id,MVP2per,MVP3id,MVP3per,Drop1id,Drop1per,Drop2id,Drop2per,Drop3id,Drop3per,Drop4id,Drop4per,Drop5id,Drop5per,Drop6id,Drop6per,Drop7id,Drop7per,Drop8id,Drop8per,Drop9id,Drop9per,DropCardid,DropCardper
-
-// rAthena Dev Team
-//1900,VALARIS,Valaris,Valaris,99,668000,0,107250,37895,2,3220,4040,35,45,1,152,96,85,120,95,10,10,2,6,67,0x1973,100,1068,768,576,13000,608,1000,750,400,923,3800,1466,200,2256,200,2607,800,714,500,617,3000,984,4300,985,5600,0,0,0,0,4147,1
-//1901,VALARIS_WORSHIPPER,Valaris's Worshipper,Valaris's Worshipper,50,8578,0,2706,1480,1,487,590,15,25,1,75,55,1,93,45,10,12,0,6,27,0x1685,100,868,480,120,0,0,0,0,0,0,0,923,500,984,63,1464,2,607,50,610,100,503,300,2405,50,0,0,0,0,4129,1
-//1902,MC_CAMERI,MC Cameri,MC Cameri,99,668000,0,107250,37895,2,3220,4040,35,45,1,152,96,85,120,95,10,10,2,6,67,0x1973,100,1068,768,576,13000,608,1000,750,400,923,3800,1466,200,2256,200,2607,800,714,500,617,3000,984,4300,985,5600,0,0,0,0,4147,1
-//1903,POKI,Poki#3,Poki#3,99,1349000,0,4093000,1526000,9,4892,9113,22,35,1,180,39,67,193,130,10,12,1,7,64,0x1973,120,500,672,480,92100,603,5500,617,3000,1723,1000,1228,100,1236,500,617,2500,1234,75,1237,125,1722,250,1724,100,1720,50,0,0,0,0
-//1904,SENTRY,Sentry,Sentry,99,668000,0,107250,37895,2,3220,4040,35,45,1,152,96,85,120,95,10,10,2,6,67,0x1973,100,1068,768,576,13000,608,1000,750,400,923,3800,1466,200,2256,200,2607,800,714,500,617,3000,984,4300,985,5600,0,0,0,0,4147,1
-
-// Custom Hollow Poring (overrrides/collides with META_ANDRE)
-//1237,HOLLOW_PORING,Hollow Poring,Hollow Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,0,6,30,10,12,1,3,21,0x83,400,1872,672,480,0,0,0,0,0,0,0,909,7000,1202,100,938,400,512,1000,713,1500,512,150,619,20,0,0,0,0,4001,10
-// Custom Fire Poring. Warning, Colides with META_DENIRO
-//1239,FIRE_PORING,Fire Poring,Fire Poring,1,50,0,2,1,1,7,10,0,5,1,1,1,1,6,30,10,12,1,3,21,0x131,400,1872,672,480,0,0,0,0,0,0,0,909,7000,1202,100,938,400,512,1000,713,1500,741,5,619,20,0,0,0,0,4001,20
-
-// Lunar New Year 2008 Event Monster overrides
-// Uncomment if event is enabled, as these drops modifications are nessecary.
-//1145,MARTIN,Martin,Martin,18,1109,0,134,86,1,52,63,0,5,12,18,30,15,15,5,10,12,0,2,42,0x81,300,1480,480,480,0,0,0,0,0,0,0,1017,9000,1018,500,1251,10,2225,5,5009,1,10010,10,2224,15,7869,1500,0,0,4046,1
-//1175,TAROU,Tarou,Tarou,11,284,0,57,28,1,34,45,0,0,1,20,11,10,24,5,10,12,0,2,27,0x91,150,1744,1044,684,0,0,0,0,0,0,0,1016,9000,919,3000,949,800,528,1000,701,2,7869,2500,0,0,0,0,0,0,4028,1
-//1209,CRAMP,Cramp,Cramp,56,4720,0,2300,1513,1,395,465,0,5,1,85,35,5,65,60,10,12,0,2,45,0x3095,100,1000,500,1000,0,0,0,0,0,0,0,7007,4656,528,1000,726,80,746,110,568,250,510,70,984,95,7869,1500,0,0,4296,1
-
-// iRO St. Patricks Day 2008 Event Monster overrides
-// Uncomment if event is enabled, as these drops modifications are nessecary.
-//1841,G_SNAKE_,Snake Lord's Minon,Snake Lord's Minon,15,471,0,72,48,1,46,55,0,0,1,15,15,10,35,5,10,12,1,2,22,0x81,200,1576,576,576,0,0,0,0,0,0,0,7915,1000,7916,100,7720,30,12715,7,0,0,0,0,0,0,0,0,0,0,0,0
-//1842,G_ANACONDAQ_,Snake Lord's Minon,Snake Lord's Minon,23,1109,0,300,149,1,124,157,0,0,1,23,28,10,36,5,10,12,1,2,25,0x91,200,1576,576,576,0,0,0,0,0,0,0,7915,1000,7916,100,7720,30,12715,7,0,0,0,0,0,0,0,0,0,0,0,0
-//1843,SIDE_WINDER_,Snake Lord's Minon,Snake Lord's Minon,43,4929,0,1996,993,1,240,320,5,10,38,43,40,15,115,20,10,12,1,2,25,0x3095,200,1576,576,576,0,0,0,0,0,0,0,7915,1000,7916,100,7720,30,12715,7,0,0,0,0,0,0,0,0,0,0,0,0
-//1844,G_ISIS_,Snake Lord's Minon,Snake Lord's Minon,47,7003,0,3709,1550,1,423,507,10,35,38,65,43,50,66,15,10,12,2,6,27,0x3195,200,1384,768,336,0,0,0,0,0,0,0,7915,1000,7916,100,7720,30,12715,8,0,0,0,0,0,0,0,0,0,0,0,0
-
-// iRO Christmas 2008 Event
-// Uncomment if event is enabled, as these drops modifications are nessecary.
-//1244,JAKK_XMAS,Christmas Jakk,Christmas Jakk,38,3581,0,1113,688,1,315,382,5,30,1,38,38,43,75,45,10,12,1,0,43,0x81,200,1180,480,648,0,0,0,0,0,0,0,529,1000,530,1000,14546,1000,14550,1000,7174,1000,7175,1000,6092,1000,12355,1250,0,0,0,0
-//1245,GOBLINE_XMAS,Christmas Goblin,Christmas Goblin,25,1176,0,282,171,1,118,140,10,5,1,53,25,20,38,45,10,12,1,7,24,0x81,100,1120,620,240,0,0,0,0,0,0,0,529,1000,530,1000,14546,1000,14550,1000,7174,1000,7175,1000,6092,1000,12355,1250,0,0,0,0
-//1246,COOKIE_XMAS,Christmas Cookie,Christmas Cookie,28,2090,0,461,284,1,140,170,0,50,1,24,30,53,45,100,10,12,0,7,46,0x91,400,1248,1248,240,0,0,0,0,0,0,0,529,1000,530,1000,14546,1000,14550,1000,7174,1000,7175,1000,6092,1000,12355,1250,0,0,0,0
-//1247,ANTONIO,Antonio,Antonio,10,10,0,3,2,1,13,20,100,0,1,1,1,50,100,100,10,12,1,3,66,0xC1,100,720,720,432,0,0,0,0,0,0,0,604,500,12354,500,14550,500,5136,500,12132,500,12225,500,5811,500,0,0,0,0,4243,1
-
-// iRO Halloween 2009 Event
-// Uncomment if event is enabled. Uncomment the skills for Halloween Whisper in mob_skill_db2.
-//3014,HALLOWEEN_WHISPER,Halloween Whisper,Halloween Whisper,1,800,0,0,0,1,10,13,0,45,1,51,14,0,60,0,10,12,0,6,68,0x81,150,1960,960,504,0,0,0,0,0,0,0,12396,150,6299,5335,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-//3015,HALLOWEEN_DARK_LORD,Halloween Dark Lord,Halloween Dark Lord,1,45,0,0,0,1,10,13,0,45,1,51,14,0,60,0,10,12,2,6,89,0x81,100,868,768,480,0,0,0,0,0,0,0,12396,800,12397,5335,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
-
-// iRO Halloween 2008 Event
-// Uncomment if event is enabled.
-//3000,ZOMBIE,Zombie,Zombie,15,534,0,50,33,1,67,79,0,10,1,8,7,0,15,0,10,12,1,1,29,0x3885,400,2612,912,288,0,0,0,0,0,0,0,957,9000,724,5,938,1000,958,50,727,70,0,0,0,0,0,0,0,0,4038,1
-//3001,GHOUL,Ghoul,Ghoul,40,5418,0,1088,622,1,420,500,5,20,1,20,29,0,45,20,10,12,1,1,49,0x3885,250,2456,912,504,0,0,0,0,0,0,0,958,6000,756,110,509,700,511,800,2609,60,934,150,1260,1,0,0,0,0,4110,1
-//3002,ZOMBIE_MASTER,Zombie Master,Zombie Master,62,14211,0,7610,2826,1,824,1084,37,26,25,20,30,5,77,35,10,12,1,1,29,0x3695,175,2612,912,288,0,0,0,0,0,0,0,7071,4413,938,1500,958,1500,723,200,727,100,1260,1,2324,2,0,0,0,0,4274,1
-

+ 1143 - 0
db/import-tmpl/mob_db.yml

@@ -0,0 +1,1143 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Monster Database
+###########################################################################
+#
+# Monster Settings
+#
+###########################################################################
+# - Id                      Monster ID.
+#   AegisName               Server name to reference the monster in scripts and lookups, should use no spaces.
+#   Name                    Name in English.
+#   JapaneseName            Name in Japanese. (Default: 'Name' value)
+#   Level                   Level. (Default: 1)
+#   Hp                      Total HP. (Default: 1)
+#   Sp                      Total SP. (Default: 1)
+#   BaseExp                 Base experience gained. (Default: 0)
+#   JobExp                  Job experience gained. (Default: 0)
+#   MvpExp                  MVP experience gained. (Default: 0)
+#   Attack                  Minimum attack in pre-renewal and base attack in renewal. (Default: 0)
+#   Attack2                 Maximum attack in pre-renewal and base magic attack in renewal. (Default: 0)
+#   Defense                 Physical defense of the monster, reduces melee and ranged physical attack/skill damage. (Default: 0)
+#   MagicDefense            Magic defense of the monster, reduces magical skill damage. (Default: 0)
+#   Str                     Strength which affects attack. (Default: 1)
+#   Agi                     Agility which affects flee. (Default: 1)
+#   Vit                     Vitality which affects defense. (Default: 1)
+#   Int                     Intelligence which affects magic attack. (Default: 1)
+#   Dex                     Dexterity which affects hit rate. (Default: 1)
+#   Luk                     Luck which affects perfect dodge/lucky flee/lerfect flee/lucky dodge rate. (Default: 1)
+#   AttackRange             Attack range. (Default: 0)
+#   SkillRange              Skill cast range. (Default: 0)
+#   ChaseRange              Chase range. (Default: 0)
+#   Size                    Size. (Default: Small)
+#   Race                    Race. (Default: Formless)
+#   RaceGroups:             List of secondary groups the monster may be part of. (Optional)
+#     <group>: <value>      Group to toggle.
+#   Element                 Element. (Default: Neutral)
+#   ElementLevel            Level of element. (Default: 1)
+#   WalkSpeed               Walk speed. (Default: DEFAULT_WALK_SPEED)
+#   AttackDelay             Attack speed. (Default: 0)
+#   AttackMotion            Attack animation speed. (Default: 0)
+#   DamageMotion            Damage animation speed. (Default: 0)
+#   DamageTaken             Rate at which the monster will receive incoming damage. (Default: 100)
+#   Ai                      Aegis monster type AI behavior. (Default: 06)
+#   Class                   Aegis monster class. (Default: Normal)
+#   Modes:                  List of unique behavior not defined by AI, Class, or Attribute. (Optional)
+#     <mode>: <value>       Mode to toggle.
+#   MvpDrops:               List of possible MVP prize items. Max of MAX_MVP_DROP. (Optional)
+#     - Item                Item name.
+#       Rate                Drop rate of item. (Default: 1)
+#       RandomOptionGroup   Random Option Group applied to item on drop. (Default: None)
+#       Index               Index used for overwriting item. (Optional)
+#   Drops:                  List of possible normal item drops. Max of MAX_MOB_DROP. (Optional)
+#     - Item                Item name.
+#       Rate                Drop rate of item. (Default: 1)
+#       StealProtected      If the item is shielded from TF_STEAL. (Default: false)
+#       RandomOptionGroup   Random Option Group applied to item on drop. (Default: None)
+#       Index               Index used for overwriting item. (Optional)
+###########################################################################
+
+Header:
+  Type: MOB_DB
+  Version: 2
+
+#Body:
+# eAthena Dev Team
+#=============================================================
+#  - Id: 1900
+#    AegisName: VALARIS
+#    Name: Valaris
+#    Level: 99
+#    Hp: 668000
+#    BaseExp: 107250
+#    JobExp: 37895
+#    MvpExp: 13000
+#    Attack: 3220
+#    Attack2: 4040
+#    Defense: 35
+#    MagicDefense: 45
+#    Agi: 152
+#    Vit: 96
+#    Int: 85
+#    Dex: 120
+#    Luk: 95
+#    AttackRange: 2
+#    SkillRange: 10
+#    ChaseRange: 10
+#    Size: Large
+#    Race: Demon
+#    Element: Dark
+#    ElementLevel: 3
+#    WalkSpeed: 100
+#    AttackDelay: 1068
+#    AttackMotion: 768
+#    DamageMotion: 576
+#    Ai: 25
+#    Modes:
+#      NoCast: true
+#      Looter: true
+#      NoRandomWalk: true
+#      CastSensorIdle: true
+#      Angry: true
+#      ChangeTargetMelee: true
+#    MvpDrops:
+#      - Item: Seed_Of_Yggdrasil
+#        Rate: 1000
+#      - Item: Baphomet_Doll
+#        Rate: 400
+#      - Item: Evil_Horn
+#        Rate: 3800
+#    Drops:
+#      - Item: Crescent_Scythe
+#        Rate: 200
+#      - Item: Magestic_Goat
+#        Rate: 200
+#      - Item: Clip
+#        Rate: 800
+#      - Item: Emperium
+#        Rate: 500
+#      - Item: Old_Violet_Box
+#        Rate: 3000
+#      - Item: Oridecon
+#        Rate: 4300
+#      - Item: Elunium
+#        Rate: 5600
+#      - Item: Baphomet_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 1901
+#    AegisName: VALARIS_WORSHIPPER
+#    Name: Valaris's Worshipper
+#    Level: 50
+#    Hp: 8578
+#    BaseExp: 2706
+#    JobExp: 1480
+#    Attack: 487
+#    Attack2: 590
+#    Defense: 15
+#    MagicDefense: 25
+#    Agi: 75
+#    Vit: 55
+#    Dex: 93
+#    Luk: 45
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Demon
+#    Element: Dark
+#    ElementLevel: 1
+#    WalkSpeed: 100
+#    AttackDelay: 868
+#    AttackMotion: 480
+#    DamageMotion: 120
+#    Ai: 10
+#    Modes:
+#      CanMove: true
+#      CastSensorChase: true
+#      ChangeChase: true
+#      ChangeTargetMelee: true
+#    Drops:
+#      - Item: Evil_Horn
+#        Rate: 500
+#      - Item: Oridecon
+#        Rate: 63
+#      - Item: Halberd_
+#        Rate: 2
+#      - Item: Yggdrasilberry
+#        Rate: 50
+#      - Item: Leaf_Of_Yggdrasil
+#        Rate: 100
+#      - Item: Yellow_Potion
+#        Rate: 300
+#      - Item: Boots
+#        Rate: 50
+#      - Item: Baphomet__Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 1902
+#    AegisName: MC_CAMERI
+#    Name: MC Cameri
+#    Level: 99
+#    Hp: 668000
+#    BaseExp: 107250
+#    JobExp: 37895
+#    MvpExp: 13000
+#    Attack: 3220
+#    Attack2: 4040
+#    Defense: 35
+#    MagicDefense: 45
+#    Agi: 152
+#    Vit: 96
+#    Int: 85
+#    Dex: 120
+#    Luk: 95
+#    AttackRange: 2
+#    SkillRange: 10
+#    ChaseRange: 10
+#    Size: Large
+#    Race: Demon
+#    Element: Dark
+#    ElementLevel: 3
+#    WalkSpeed: 100
+#    AttackDelay: 1068
+#    AttackMotion: 768
+#    DamageMotion: 576
+#    Ai: 25
+#    Modes:
+#      NoCast: true
+#      Looter: true
+#      NoRandomWalk: true
+#      CastSensorIdle: true
+#      Angry: true
+#      ChangeTargetMelee: true
+#    MvpDrops:
+#      - Item: Seed_Of_Yggdrasil
+#        Rate: 1000
+#      - Item: Baphomet_Doll
+#        Rate: 400
+#      - Item: Evil_Horn
+#        Rate: 3800
+#    Drops:
+#      - Item: Crescent_Scythe
+#        Rate: 200
+#      - Item: Magestic_Goat
+#        Rate: 200
+#      - Item: Clip
+#        Rate: 800
+#      - Item: Emperium
+#        Rate: 500
+#      - Item: Old_Violet_Box
+#        Rate: 3000
+#      - Item: Oridecon
+#        Rate: 4300
+#      - Item: Elunium
+#        Rate: 5600
+#      - Item: Baphomet_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 1903
+#    AegisName: POKI
+#    Name: Poki#3
+#    Level: 99
+#    Hp: 1349000
+#    BaseExp: 4093000
+#    JobExp: 1526000
+#    MvpExp: 92100
+#    Attack: 4892
+#    Attack2: 9113
+#    Defense: 22
+#    MagicDefense: 35
+#    Agi: 180
+#    Vit: 39
+#    Int: 67
+#    Dex: 193
+#    Luk: 130
+#    AttackRange: 9
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Demihuman
+#    Element: Wind
+#    ElementLevel: 3
+#    WalkSpeed: 120
+#    AttackDelay: 500
+#    AttackMotion: 672
+#    DamageMotion: 480
+#    Ai: 25
+#    Modes:
+#      NoCast: true
+#      Looter: true
+#      NoRandomWalk: true
+#      CastSensorIdle: true
+#      Angry: true
+#      ChangeTargetMelee: true
+#    MvpDrops:
+#      - Item: Old_Blue_Box
+#        Rate: 5500
+#      - Item: Old_Violet_Box
+#        Rate: 3000
+#      - Item: Luna_Bow
+#        Rate: 1000
+#    Drops:
+#      - Item: Combat_Knife
+#        Rate: 100
+#      - Item: Sucsamad
+#        Rate: 500
+#      - Item: Old_Violet_Box
+#        Rate: 2500
+#      - Item: Moonlight_Sword
+#        Rate: 75
+#      - Item: Grimtooth_
+#        Rate: 125
+#      - Item: Balistar
+#        Rate: 250
+#      - Item: Dragon_Wing
+#        Rate: 100
+#      - Item: Bow_Of_Rudra
+#        Rate: 50
+#        StealProtected: true
+#  - Id: 1904
+#    AegisName: SENTRY
+#    Name: Sentry
+#    Level: 99
+#    Hp: 668000
+#    BaseExp: 107250
+#    JobExp: 37895
+#    MvpExp: 13000
+#    Attack: 3220
+#    Attack2: 4040
+#    Defense: 35
+#    MagicDefense: 45
+#    Agi: 152
+#    Vit: 96
+#    Int: 85
+#    Dex: 120
+#    Luk: 95
+#    AttackRange: 2
+#    SkillRange: 10
+#    ChaseRange: 10
+#    Size: Large
+#    Race: Demon
+#    Element: Dark
+#    ElementLevel: 3
+#    WalkSpeed: 100
+#    AttackDelay: 1068
+#    AttackMotion: 768
+#    DamageMotion: 576
+#    Ai: 25
+#    Modes:
+#      NoCast: true
+#      Looter: true
+#      NoRandomWalk: true
+#      CastSensorIdle: true
+#      Angry: true
+#      ChangeTargetMelee: true
+#    MvpDrops:
+#      - Item: Seed_Of_Yggdrasil
+#        Rate: 1000
+#      - Item: Baphomet_Doll
+#        Rate: 400
+#      - Item: Evil_Horn
+#        Rate: 3800
+#    Drops:
+#      - Item: Crescent_Scythe
+#        Rate: 200
+#      - Item: Magestic_Goat
+#        Rate: 200
+#      - Item: Clip
+#        Rate: 800
+#      - Item: Emperium
+#        Rate: 500
+#      - Item: Old_Violet_Box
+#        Rate: 3000
+#      - Item: Oridecon
+#        Rate: 4300
+#      - Item: Elunium
+#        Rate: 5600
+#      - Item: Baphomet_Card
+#        Rate: 1
+#        StealProtected: true
+
+# Custom Hollow Poring (overrrides/collides with META_ANDRE)
+#=============================================================
+#  - Id: 1237
+#    AegisName: HOLLOW_PORING
+#    Name: Hollow Poring
+#    Level: 1
+#    Hp: 50
+#    BaseExp: 2
+#    JobExp: 1
+#    Attack: 7
+#    Attack2: 10
+#    MagicDefense: 5
+#    Dex: 6
+#    Luk: 30
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Plant
+#    Element: Water
+#    ElementLevel: 1
+#    WalkSpeed: 400
+#    AttackDelay: 1872
+#    AttackMotion: 672
+#    DamageMotion: 480
+#    Ai: 02
+#    Drops:
+#      - Item: Jellopy
+#        Rate: 7000
+#      - Item: Knife_
+#        Rate: 100
+#      - Item: Sticky_Mucus
+#        Rate: 400
+#      - Item: Apple
+#        Rate: 1000
+#      - Item: Empty_Bottle
+#        Rate: 1500
+#      - Item: Apple
+#        Rate: 150
+#      - Item: Unripe_Apple
+#        Rate: 20
+#      - Item: Poring_Card
+#        Rate: 10
+#        StealProtected: true
+
+# Custom Fire Poring. Warning, Colides with META_DENIRO
+#=============================================================
+#  - Id: 1239
+#    AegisName: FIRE_PORING
+#    Name: Fire Poring
+#    Level: 1
+#    Hp: 50
+#    BaseExp: 2
+#    JobExp: 1
+#    Attack: 7
+#    Attack2: 10
+#    MagicDefense: 5
+#    Dex: 6
+#    Luk: 30
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Plant
+#    Element: Water
+#    ElementLevel: 1
+#    WalkSpeed: 400
+#    AttackDelay: 1872
+#    AttackMotion: 672
+#    DamageMotion: 480
+#    Ai: 25
+#    Modes:
+#      NoRandomWalk: true
+#      CastSensorIdle: true
+#    Drops:
+#      - Item: Jellopy
+#        Rate: 7000
+#      - Item: Knife_
+#        Rate: 100
+#      - Item: Sticky_Mucus
+#        Rate: 400
+#      - Item: Apple
+#        Rate: 1000
+#      - Item: Empty_Bottle
+#        Rate: 1500
+#      - Item: Poring_Doll
+#        Rate: 5
+#      - Item: Unripe_Apple
+#        Rate: 20
+#      - Item: Poring_Card
+#        Rate: 20
+#        StealProtected: true
+
+# Lunar New Year 2008 Event Monster overrides
+# Uncomment if event is enabled, as these drops modifications are nessecary.
+#=============================================================
+#  - Id: 1145
+#    AegisName: MARTIN
+#    Name: Martin
+#    Level: 18
+#    Hp: 1109
+#    BaseExp: 134
+#    JobExp: 86
+#    Attack: 52
+#    Attack2: 63
+#    MagicDefense: 5
+#    Str: 12
+#    Agi: 18
+#    Vit: 30
+#    Int: 15
+#    Dex: 15
+#    Luk: 5
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Brute
+#    Element: Earth
+#    ElementLevel: 2
+#    WalkSpeed: 300
+#    AttackDelay: 1480
+#    AttackMotion: 480
+#    DamageMotion: 480
+#    Ai: 01
+#    Drops:
+#      - Item: Moustache_Of_Mole
+#        Rate: 9000
+#      - Item: Nail_Of_Mole
+#        Rate: 500
+#      - Item: Jur_
+#        Rate: 10
+#      - Item: Goggle_
+#        Rate: 5
+#      - Item: Safety_Helmet
+#        Rate: 1
+#      - Item: Battered_Pot
+#        Rate: 10
+#      - Item: Goggle
+#        Rate: 15
+#      - Item: RicePouch
+#        Rate: 1500
+#        StealProtected: true
+#      - Item: Martin_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 1175
+#    AegisName: TAROU
+#    Name: Tarou
+#    Level: 11
+#    Hp: 284
+#    BaseExp: 57
+#    JobExp: 28
+#    Attack: 34
+#    Attack2: 45
+#    Agi: 20
+#    Vit: 11
+#    Int: 10
+#    Dex: 24
+#    Luk: 5
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Brute
+#    Element: Dark
+#    ElementLevel: 1
+#    WalkSpeed: 150
+#    AttackDelay: 1744
+#    AttackMotion: 1044
+#    DamageMotion: 684
+#    Ai: 17
+#    Drops:
+#      - Item: Rat_Tail
+#        Rate: 9000
+#      - Item: Animal's_Skin
+#        Rate: 3000
+#      - Item: Feather
+#        Rate: 800
+#      - Item: Monster's_Feed
+#        Rate: 1000
+#      - Item: Ora_Ora
+#        Rate: 2
+#      - Item: RicePouch
+#        Rate: 2500
+#      - Item: Tarou_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 1209
+#    AegisName: CRAMP
+#    Name: Cramp
+#    Level: 56
+#    Hp: 4720
+#    BaseExp: 2300
+#    JobExp: 1513
+#    Attack: 395
+#    Attack2: 465
+#    MagicDefense: 5
+#    Agi: 85
+#    Vit: 35
+#    Int: 5
+#    Dex: 65
+#    Luk: 60
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Brute
+#    Element: Poison
+#    ElementLevel: 2
+#    WalkSpeed: 100
+#    AttackDelay: 1000
+#    AttackMotion: 500
+#    DamageMotion: 1000
+#    Ai: 09
+#    Drops:
+#      - Item: Claw_Of_Rat
+#        Rate: 4656
+#      - Item: Monster's_Feed
+#        Rate: 1000
+#      - Item: Blue_Jewel
+#        Rate: 80
+#      - Item: Glass_Bead
+#        Rate: 110
+#      - Item: Lemon
+#        Rate: 250
+#      - Item: Blue_Herb
+#        Rate: 70
+#      - Item: Oridecon
+#        Rate: 95
+#      - Item: RicePouch
+#        Rate: 1500
+#        StealProtected: true
+#      - Item: Cramp_Card
+#        Rate: 1
+#        StealProtected: true
+
+# iRO St. Patricks Day 2008 Event Monster overrides
+# Uncomment if event is enabled, as these drops modifications are nessecary.
+#=============================================================
+#  - Id: 1841
+#    AegisName: G_SNAKE_
+#    Name: Snake Lord's Minon
+#    Level: 15
+#    Hp: 471
+#    BaseExp: 72
+#    JobExp: 48
+#    Attack: 46
+#    Attack2: 55
+#    Agi: 15
+#    Vit: 15
+#    Int: 10
+#    Dex: 35
+#    Luk: 5
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Brute
+#    Element: Earth
+#    ElementLevel: 1
+#    WalkSpeed: 200
+#    AttackDelay: 1576
+#    AttackMotion: 576
+#    DamageMotion: 576
+#    Ai: 01
+#    Drops:
+#      - Item: Copper_Coin_
+#        Rate: 1000
+#      - Item: Silver_Coin_
+#        Rate: 100
+#      - Item: Gold_Coin_US
+#        Rate: 30
+#      - Item: Black_Treasure_Box
+#        Rate: 7
+#  - Id: 1842
+#    AegisName: G_ANACONDAQ_
+#    Name: Snake Lord's Minon
+#    Level: 23
+#    Hp: 1109
+#    BaseExp: 300
+#    JobExp: 149
+#    Attack: 124
+#    Attack2: 157
+#    Agi: 23
+#    Vit: 28
+#    Int: 10
+#    Dex: 36
+#    Luk: 5
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Brute
+#    Element: Poison
+#    ElementLevel: 1
+#    WalkSpeed: 200
+#    AttackDelay: 1576
+#    AttackMotion: 576
+#    DamageMotion: 576
+#    Ai: 17
+#    Drops:
+#      - Item: Copper_Coin_
+#        Rate: 1000
+#      - Item: Silver_Coin_
+#        Rate: 100
+#      - Item: Gold_Coin_US
+#        Rate: 30
+#      - Item: Black_Treasure_Box
+#        Rate: 7
+#  - Id: 1843
+#    AegisName: SIDE_WINDER_
+#    Name: Snake Lord's Minon
+#    Level: 43
+#    Hp: 4929
+#    BaseExp: 1996
+#    JobExp: 993
+#    Attack: 240
+#    Attack2: 320
+#    Defense: 5
+#    MagicDefense: 10
+#    Str: 38
+#    Agi: 43
+#    Vit: 40
+#    Int: 15
+#    Dex: 115
+#    Luk: 20
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Brute
+#    Element: Poison
+#    ElementLevel: 1
+#    WalkSpeed: 200
+#    AttackDelay: 1576
+#    AttackMotion: 576
+#    DamageMotion: 576
+#    Ai: 09
+#    Drops:
+#      - Item: Copper_Coin_
+#        Rate: 1000
+#      - Item: Silver_Coin_
+#        Rate: 100
+#      - Item: Gold_Coin_US
+#        Rate: 30
+#      - Item: Black_Treasure_Box
+#        Rate: 7
+#  - Id: 1844
+#    AegisName: G_ISIS_
+#    Name: Snake Lord's Minon
+#    Level: 47
+#    Hp: 7003
+#    BaseExp: 3709
+#    JobExp: 1550
+#    Attack: 423
+#    Attack2: 507
+#    Defense: 10
+#    MagicDefense: 35
+#    Str: 38
+#    Agi: 65
+#    Vit: 43
+#    Int: 50
+#    Dex: 66
+#    Luk: 15
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Large
+#    Race: Demon
+#    Element: Dark
+#    ElementLevel: 1
+#    WalkSpeed: 200
+#    AttackDelay: 1384
+#    AttackMotion: 768
+#    DamageMotion: 336
+#    Ai: 09
+#    Drops:
+#      - Item: Copper_Coin_
+#        Rate: 1000
+#      - Item: Silver_Coin_
+#        Rate: 100
+#      - Item: Gold_Coin_US
+#        Rate: 30
+#      - Item: Black_Treasure_Box
+#        Rate: 8
+
+# iRO Christmas 2008 Event
+# Uncomment if event is enabled, as these drops modifications are nessecary.
+#=============================================================
+#  - Id: 1244
+#    AegisName: JAKK_XMAS
+#    Name: Christmas Jakk
+#    Level: 38
+#    Hp: 3581
+#    BaseExp: 1113
+#    JobExp: 688
+#    Attack: 315
+#    Attack2: 382
+#    Defense: 5
+#    MagicDefense: 30
+#    Agi: 38
+#    Vit: 38
+#    Int: 43
+#    Dex: 75
+#    Luk: 45
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Formless
+#    Element: Fire
+#    ElementLevel: 2
+#    WalkSpeed: 200
+#    AttackDelay: 1180
+#    AttackMotion: 480
+#    DamageMotion: 648
+#    Ai: 01
+#    Drops:
+#      - Item: Candy
+#        Rate: 1000
+#      - Item: Candy_Striper
+#        Rate: 1000
+#      - Item: Fire_Cracker_Love
+#        Rate: 1000
+#      - Item: Fire_Cracker_Xmas
+#        Rate: 1000
+#      - Item: Packing_Ribbon
+#        Rate: 1000
+#      - Item: Packing_Paper
+#        Rate: 1000
+#      - Item: Singing_Crystal_Piece
+#        Rate: 1000
+#      - Item: Xmas_Gift
+#        Rate: 1250
+#        StealProtected: true
+#  - Id: 1245
+#    AegisName: GOBLINE_XMAS
+#    Name: Christmas Goblin
+#    Level: 25
+#    Hp: 1176
+#    BaseExp: 282
+#    JobExp: 171
+#    Attack: 118
+#    Attack2: 140
+#    Defense: 10
+#    MagicDefense: 5
+#    Agi: 53
+#    Vit: 25
+#    Int: 20
+#    Dex: 38
+#    Luk: 45
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Demihuman
+#    Element: Wind
+#    ElementLevel: 1
+#    WalkSpeed: 100
+#    AttackDelay: 1120
+#    AttackMotion: 620
+#    DamageMotion: 240
+#    Ai: 01
+#    Drops:
+#      - Item: Candy
+#        Rate: 1000
+#      - Item: Candy_Striper
+#        Rate: 1000
+#      - Item: Fire_Cracker_Love
+#        Rate: 1000
+#      - Item: Fire_Cracker_Xmas
+#        Rate: 1000
+#      - Item: Packing_Ribbon
+#        Rate: 1000
+#      - Item: Packing_Paper
+#        Rate: 1000
+#      - Item: Singing_Crystal_Piece
+#        Rate: 1000
+#      - Item: Xmas_Gift
+#        Rate: 1250
+#        StealProtected: true
+#  - Id: 1246
+#    AegisName: COOKIE_XMAS
+#    Name: Christmas Cookie
+#    Level: 28
+#    Hp: 2090
+#    BaseExp: 461
+#    JobExp: 284
+#    Attack: 140
+#    Attack2: 170
+#    MagicDefense: 50
+#    Agi: 24
+#    Vit: 30
+#    Int: 53
+#    Dex: 45
+#    Luk: 100
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Demihuman
+#    Element: Holy
+#    ElementLevel: 2
+#    WalkSpeed: 400
+#    AttackDelay: 1248
+#    AttackMotion: 1248
+#    DamageMotion: 240
+#    Ai: 17
+#    Drops:
+#      - Item: Candy
+#        Rate: 1000
+#      - Item: Candy_Striper
+#        Rate: 1000
+#      - Item: Fire_Cracker_Love
+#        Rate: 1000
+#      - Item: Fire_Cracker_Xmas
+#        Rate: 1000
+#      - Item: Packing_Ribbon
+#        Rate: 1000
+#      - Item: Packing_Paper
+#        Rate: 1000
+#      - Item: Singing_Crystal_Piece
+#        Rate: 1000
+#      - Item: Xmas_Gift
+#        Rate: 1250
+#        StealProtected: true
+#  - Id: 1247
+#    AegisName: ANTONIO
+#    Name: Antonio
+#    Level: 10
+#    Hp: 10
+#    BaseExp: 3
+#    JobExp: 2
+#    Attack: 13
+#    Attack2: 20
+#    Defense: 100
+#    Int: 50
+#    Dex: 100
+#    Luk: 100
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Plant
+#    Element: Holy
+#    ElementLevel: 3
+#    WalkSpeed: 100
+#    AttackDelay: 720
+#    AttackMotion: 720
+#    DamageMotion: 432
+#    Ai: 01
+#    Modes:
+#      NoCast: true
+#    Drops:
+#      - Item: Branch_Of_Dead_Tree
+#        Rate: 500
+#      - Item: Buche_De_Noel
+#        Rate: 500
+#      - Item: Fire_Cracker_Xmas
+#        Rate: 500
+#      - Item: Santa's_Hat_
+#        Rate: 500
+#      - Item: Red_Bag
+#        Rate: 500
+#      - Item: Sweet_Candy_Striper
+#        Rate: 500
+#      - Item: Santa_Beard
+#        Rate: 500
+#      - Item: Antonio_Card
+#        Rate: 1
+#        StealProtected: true
+
+# iRO Halloween 2009 Event
+# Uncomment if event is enabled. Uncomment the skills for Halloween Whisper in mob_skill_db2.
+#=============================================================
+#  - Id: 3014
+#    AegisName: HALLOWEEN_WHISPER
+#    Name: Halloween Whisper
+#    Level: 1
+#    Hp: 800
+#    Attack: 10
+#    Attack2: 13
+#    MagicDefense: 45
+#    Agi: 51
+#    Vit: 14
+#    Dex: 60
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Small
+#    Race: Demon
+#    Element: Ghost
+#    ElementLevel: 3
+#    WalkSpeed: 150
+#    AttackDelay: 1960
+#    AttackMotion: 960
+#    DamageMotion: 504
+#    Ai: 01
+#    Drops:
+#      - Item: Fools_Day_Box
+#        Rate: 150
+#      - Item: Worn_Cloth_Piece
+#        Rate: 5335
+#  - Id: 3015
+#    AegisName: HALLOWEEN_DARK_LORD
+#    Name: Halloween Dark Lord
+#    Level: 1
+#    Hp: 45
+#    Attack: 10
+#    Attack2: 13
+#    MagicDefense: 45
+#    Agi: 51
+#    Vit: 14
+#    Dex: 60
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Large
+#    Race: Demon
+#    Element: Undead
+#    ElementLevel: 4
+#    WalkSpeed: 100
+#    AttackDelay: 868
+#    AttackMotion: 768
+#    DamageMotion: 480
+#    Ai: 01
+#    Drops:
+#      - Item: Fools_Day_Box
+#        Rate: 800
+#      - Item: Fools_Day_Box2
+#        Rate: 5335
+
+# iRO Halloween 2008 Event
+# Uncomment if event is enabled.
+#=============================================================
+#  - Id: 3000
+#    AegisName: ZOMBIE
+#    Name: Zombie
+#    Level: 15
+#    Hp: 534
+#    BaseExp: 50
+#    JobExp: 33
+#    Attack: 67
+#    Attack2: 79
+#    MagicDefense: 10
+#    Agi: 8
+#    Vit: 7
+#    Dex: 15
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Undead
+#    Element: Undead
+#    ElementLevel: 1
+#    WalkSpeed: 400
+#    AttackDelay: 2612
+#    AttackMotion: 912
+#    DamageMotion: 288
+#    Ai: 04
+#    Drops:
+#      - Item: Decayed_Nail
+#        Rate: 9000
+#      - Item: Cardinal_Jewel_
+#        Rate: 5
+#      - Item: Sticky_Mucus
+#        Rate: 1000
+#      - Item: Horrendous_Mouth
+#        Rate: 50
+#      - Item: White_Jewel
+#        Rate: 70
+#      - Item: Zombie_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 3001
+#    AegisName: GHOUL
+#    Name: Ghoul
+#    Level: 40
+#    Hp: 5418
+#    BaseExp: 1088
+#    JobExp: 622
+#    Attack: 420
+#    Attack2: 500
+#    Defense: 5
+#    MagicDefense: 20
+#    Agi: 20
+#    Vit: 29
+#    Dex: 45
+#    Luk: 20
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Undead
+#    Element: Undead
+#    ElementLevel: 2
+#    WalkSpeed: 250
+#    AttackDelay: 2456
+#    AttackMotion: 912
+#    DamageMotion: 504
+#    Ai: 04
+#    Drops:
+#      - Item: Horrendous_Mouth
+#        Rate: 6000
+#      - Item: Oridecon_Stone
+#        Rate: 110
+#      - Item: White_Herb
+#        Rate: 700
+#      - Item: Green_Herb
+#        Rate: 800
+#      - Item: Skul_Ring
+#        Rate: 60
+#      - Item: Mementos
+#        Rate: 150
+#      - Item: Ghoul_Leg
+#        Rate: 1
+#      - Item: Ghoul_Card
+#        Rate: 1
+#        StealProtected: true
+#  - Id: 3002
+#    AegisName: ZOMBIE_MASTER
+#    Name: Zombie Master
+#    Level: 62
+#    Hp: 14211
+#    BaseExp: 7610
+#    JobExp: 2826
+#    Attack: 824
+#    Attack2: 1084
+#    Defense: 37
+#    MagicDefense: 26
+#    Str: 25
+#    Agi: 20
+#    Vit: 30
+#    Int: 5
+#    Dex: 77
+#    Luk: 35
+#    AttackRange: 1
+#    SkillRange: 10
+#    ChaseRange: 12
+#    Size: Medium
+#    Race: Undead
+#    Element: Undead
+#    ElementLevel: 1
+#    WalkSpeed: 175
+#    AttackDelay: 2612
+#    AttackMotion: 912
+#    DamageMotion: 288
+#    Ai: 21
+#    Drops:
+#      - Item: Tatters_Clothes
+#        Rate: 4413
+#      - Item: Sticky_Mucus
+#        Rate: 1500
+#      - Item: Horrendous_Mouth
+#        Rate: 1500
+#      - Item: Cardinal_Jewel
+#        Rate: 200
+#      - Item: White_Jewel
+#        Rate: 100
+#      - Item: Ghoul_Leg
+#        Rate: 1
+#      - Item: Scapulare_
+#        Rate: 2
+#      - Item: Zombie_Master_Card
+#        Rate: 1
+#        StealProtected: true

+ 0 - 17
db/import-tmpl/mob_drop.txt

@@ -1,17 +0,0 @@
-// Monster Drop Database
-// Add drop item to monster
-//
-// Structure:
-// <mobid>,<itemid>,<rate>{,<randopt_groupid>,<flag>}
-//
-// <mobid>  : Monster ID. See db/[pre-]re/mob_db.txt
-// <itemid> : Item ID.
-// <rate>   : 1 = 0.01%
-//            100 = 1%
-//            10000 = 100%
-//            Just like rate in mob_db.txt, adjusted by battle_config.
-//            To remove original drop from monster, use 0 as rate.
-// Optional:
-// <randopt_groupid> : If set, the dropped item will be modified by Random Option Group based on db/[pre-]re/item_randomopt_group.txt
-// <flag>            : 1 - The item is protected from steal.
-//                     2 - As MVP Reward

+ 0 - 5
db/import-tmpl/mob_race2_db.txt

@@ -1,5 +0,0 @@
-// Monster Racial Groups Database
-//
-// Structure of Database:
-// Race2ID,MobID1,MobID2,MobID3,...,MobID100
-

+ 1 - 1
db/import-tmpl/pet_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena.
-#   Copyright(C) 2019 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify

+ 0 - 7
db/import-tmpl/quest_db.txt

@@ -1,7 +0,0 @@
-// Quest Database
-//
-// Structure of Database:
-// Quest ID,Time Limit,Target1,Val1,Target2,Val2,Target3,Val3,MobID1,NameID1,Rate1,MobID2,NameID2,Rate2,MobID3,NameID3,Rate3,Quest Title
-//
-// The MobID*, NameID*, and Rate* reflect special values for quests that can drop an item at given rate from given mob.
-// If no MobID* is given, then any mob has a chance to drop the given ItemID*.

+ 56 - 0
db/import-tmpl/quest_db.yml

@@ -0,0 +1,56 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Quest Database
+###########################################################################
+#
+# Quest Settings
+#
+###########################################################################
+# - Id              Quest ID.
+#   Title           Quest title.
+#   TimeLimit       Amount of time before the quest expires. (Default: 0)
+#                   Use a number following by "d" for day(s), "h" for hour(s), "mn" for minute(s), and "s" for second(s).
+#                   Specify with "+" for how long until the quest expires.
+#                   Specify without "+" for the exact time the quest expires using "d" (optional), [0-23]"h" (required), [0-59]"mn" (optional), [0-59]"s" (optional) format.
+#                   Please note the number before "d" only shift the exact timer to the given day(s).
+#   Targets:        Quest objective target. (Default: null)
+#                   The target can be a couple of node Mob/Count or of Id/Race/Size/Element/MinLevel/MaxLevel.
+#                   If Mob is supplied, Count is required and the other fields are ignored.
+#                   If Id is supplied, at least one other field of Race/Size/Element/MinLevel/MaxLevel is required.
+#                   If Id is supplied, Count is required for each new entry.
+#     - Mob         Monster to kill (aegis monster name).
+#       Count       Amount of monsters to kill. Set to 0 to skip the target on import.
+#       Id          Unique target index for the quest Id. Requires a positive number.
+#       Race        Monster race target (default All). Valid races are Angel, Brute, DemiHuman, Demon, Dragon, Fish, Formless, Insect, Plant, Undead, All.
+#       Size        Monster size target (default All). Valid sizes are Small, Medium, Large, All.
+#       Element     Monster element target (default All). Valid elements are Dark, Earth, Fire, Ghost, Holy, Neutral, Poison, Undead, Water, Wind, All.
+#       MinLevel    Minimum monster level target. If not supplied but MaxLevel defined, MinLevel is 1. Set to 0 to ignore MinLevel on import. (Default: 0)
+#       MaxLevel    Maximum monster level target. Set to 0 to ignore MaxLevel on import. (Default: 0)
+#       Location    Name of hunting location from mapindex. (Default any location)
+#       MapName     Displayed map name in quest UI. (Default: empty string)
+#   Drops:          Quest item drop targets. (Default: null)
+#     - Mob         Monster to kill. 0 will apply to all monsters. (Default: 0)
+#       Item        Item to drop.
+#       Count       Amount of items that will drop. Non-stackable items default to 1. (Default: 1)
+#       Rate        Item drop rate. (10000 = 100%)
+###########################################################################
+
+Header:
+  Type: QUEST_DB
+  Version: 2

+ 1 - 1
db/import-tmpl/refine_db.yml

@@ -1,5 +1,5 @@
 # This file is a part of rAthena++.
-#   Copyright(C) 2017 rAthena Development Team
+#   Copyright(C) 2021 rAthena Development Team
 #   https://rathena.org - https://github.com/rathena
 #
 # This program is free software: you can redistribute it and/or modify

+ 0 - 7
db/import-tmpl/size_fix.txt

@@ -1,7 +0,0 @@
-// Size Fix Tables
-// Contains size fixes for weapon damage.
-//
-// Struture of Database:
-// Columns - Weapon type
-// Rows    - Target size
-

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

@@ -0,0 +1,33 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Size Fix Database
+###########################################################################
+#
+# Size Fix Settings
+#
+###########################################################################
+# - Weapon    Weapon type.
+#   Small     Small size modifier. (Default: 100)
+#   Medium    Medium size modifier. (Default: 100)
+#   Large     Large size modifier. (Default: 100)
+###########################################################################
+
+Header:
+  Type: SIZE_FIX_DB
+  Version: 1

+ 0 - 18
db/import-tmpl/skill_cast_db.txt

@@ -1,18 +0,0 @@
-// Skill Times Database
-//
-// Structure of Database:
-// SkillID,CastingTime,AfterCastActDelay,AfterCastWalkDelay,Duration1,Duration2,Cool Down,Fixed Casting Time
-//
-// CastingTime: time to cast this skill, in miliseconds
-// AfterCastActDelay: "normal" delay, character cannot use skills, in miliseconds
-// AfterCastWalkDleay: amount of time before character can move again, in miliseconds
-// Duration1/Duration2: usually the durations used by the skill, at special cases it is used to hold special data
-// Cool Down: amount of time until character can re-use this skill, in miliseconds
-// Fixed Casting Time: the skills fixed casting time (when 0, uses 20% of cast time and less than 0 means no fixed cast time)
-//
-// On all fields you can use ':' as a delimiter for level-specific values.
-// For example:
-// - Original: 6,0,0,0,30000,0,1000
-// - Modified: 6,0,0,0,30000,0,1000:2500:3000:...
-// Gives Level 1 1000ms cool down, Level 2 2500ms, Level 3 3000ms, and so on.
-

+ 0 - 16
db/import-tmpl/skill_castnodex_db.txt

@@ -1,16 +0,0 @@
-// <Skill id>,<Cast>,<Delay (optional)>
-//
-// Cast:  0 - everything affects the skill's cast time
-//        1 - skill's cast time is not affected by dex
-//        2 - skill's cast time is not affected by statuses (Suffragium, etc)
-//        4 - skill's cast time is not affected by item bonuses (equip, cards)
-//
-// Delay: 0 - everything affects the skill's delay
-//        1 - skill's delay is not affected by dex
-//        2 - skill's delay is not affected by Magic Strings / Bragi
-//        4 - skill's delay is not affected by item bonuses (equip, cards)
-//
-// Note: Values are bit fields, add them up to combine their effects.
-// Note: Delay setting '1' only makes sense when delay_dependon_dex is enabled.
-// Example: 46,1,1 = Double Strafe's cast time and delay is not affected by dex.
-

+ 0 - 52
db/import-tmpl/skill_copyable_db.txt

@@ -1,52 +0,0 @@
-// Copyable Skills Database
-// List of skills able to be copied by Intimidate/Plagiarism and Reproduce.
-//
-// Sources:
-// http://irowiki.org/wiki/Intimidate
-//    -> "Intimidate will copy any 2nd class skill"
-// http://irowiki.org/wiki/Reproduce/List_of_reproducible_skills
-//    -> "Players can reproduce 1-x, 2-x, and 3-x skills and Expanded Class,
-//        but cannot reproduce transcendent skills"
-//
-// Structure of Database:
-// SkillName,Option{,JobAllowed{,RequirementRemoved}}
-//
-// Option (bitmask) determines how a skill can be copied.
-//	1 = Plagiarism
-//	2 = Reproduce
-//
-// JobAllowed (bitmask) restricts copying the skill to certain classes.
-// By default, all jobs can copy the skill (0).
-//	 1 = Rogue
-//	 2 = Stalker
-//	 4 = Shadow Chaser
-//	 8 = Trans. Shadow Chaser
-//	16 = Baby Rouge
-//	32 = Baby Shadow Chaser
-//	
-// RequirementRemoved (bitmask) removes requirements when casting a copied skill.
-// See 'skill_require_db.txt' for specific skill requirements.
-//	   0 = uses original requirement(s)
-//	   1 = hp
-//	   2 = maxhptrigger
-//	   4 = sp
-//	   8 = hprate
-//	  16 = sprate
-//	  32 = zeny
-//	  64 = weapon type
-//	 128 = ammo (with the amount)
-//	 256 = state
-//	 512 = statuses
-//	1024 = spirit sphere
-//	2048 = items (with the amount)
-//	4096 = equipments
-//
-// Examples:
-// AS_SONICBLOW,2,63,64
-//	Sonic Blow can be copied by all jobs with only Plagiarism.
-//	To use the copied skill, a Katar is not needed (a Sonic Blow weapon type requirement).
-//
-// CR_ACIDDEMONSTRATION,3,10
-//	Acid Demonstration can only be copied by Stalker/Trans. Shadow Chaser with Plagiarism or Reproduce.
-//	This mode simulates the previous battle config, which allowed only Trans. classes to copy Trans. skills.
-

+ 9 - 9
db/import-tmpl/skill_damage_db.txt

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

+ 0 - 79
db/import-tmpl/skill_db.txt

@@ -1,79 +0,0 @@
-//id,range,hit,inf,element,nk,splash,max,list_num,castcancel,cast_defence_rate,inf2,maxcount,skill_type,blow_count,inf3,name,description
-// 01 ID
-// 02 range (combo skills do not check for range when used,
-//           if range is < 5, the skill is considered melee-range)
-// 03 hit (8- repeated hitting, 6- single-hit)
-// 04 inf (0- passive, 1- enemy, 2- place, 4- self, 16- friend, 32- trap)
-// 05 element (0 - neutral, 1 - water, 2 - earth, 3 - fire, 4 - wind, 5 - poison,
-//             6 - holy, 7 - dark, 8 - ghost, 9 - undead, -1 - use weapon element
-//             -2 - use endowed element, -3 - use random element.)
-// 06 nk (skill damage properties):
-//    0x01 - No damage skill
-//    0x02 - Has splash area
-//    0x04 - Damage should be split among targets
-//    0x08 - Skill ignores caster's % damage cards (misc type always ignores)
-//    0x10 - Skill ignores elemental adjustments
-//    0x20 - Skill ignores target's defense (misc type always ignores)
-//    0x40 - Skill ignores target's flee (magic type always ignores)
-//    0x80 - Skill ignores target's def cards
-// 07 splash/effect range
-//      -1 - for screen-wide
-//       0 - no splash
-//      all other values follow the formula: value * 2 + 1
-//       1 - 3x3
-//       2 - 5x5
-//       3 - 7x7
-// 08 MaxLv
-// 09 Number of hits (when positive, damage is increased by hits, 
-//    negative values just show number of hits without increasing total damage)
-// 10 Cast interrupted when hit?
-// 11 defense-reduction rate during cast.
-// 12 inf2 (skill information 2):
-//    0x00001 - quest skill
-//    0x00002 - npc skill
-//    0x00004 - wedding skill
-//    0x00008 - spirit skill
-//    0x00010 - guild skill
-//    0x00020 - song/dance
-//    0x00040 - ensemble skill
-//    0x00080 - trap
-//    0x00100 - skill that damages/targets yourself
-//    0x00200 - cannot be casted on self (if inf = 4, auto-select target skill)
-//    0x00400 - usable only on party-members (and enemies if skill is offensive)
-//    0x00800 - usable only on guild-mates (and enemies if skill is offensive)
-//    0x01000 - disable usage on enemies (for non-offensive skills).
-//    0x02000 - available skill for SC_AUTOSHADOWSPELL
-//    0x04000 - chorus skill
-//    0x08000 - skill that ignore bg reduction
-//    0x10000 - skill that ignore gvg reduction
-//    0x20000 - makes 'self'/'place' skill cannot be casted/placed when near NPC (see 'db/skill_nonearnpc_db.txt' for more options)
-//    0x40000 - skill that can hit trap-type skill (inf2 has 0x00080)
-// 13 maxcount: max amount of skill instances to place on the ground when
-//    player_land_skill_limit/monster_land_skill_limit is enabled. For skills
-//    that attack using a path, this is the path length to be used.
-// 14 attack type (none, weapon, magic, misc)
-// 15 Blowcount (amount of tiles skill knockbacks)
-// 16 inf3 (skill information 3):
-//    0x00001 - skill ignores land protector
-//    0x00002 - free
-//    0x00004 - usable skills while hiding
-//    0x00008 - skill that can be use while in dancing state
-//    0x00010 - skill that could hit emperium
-//    0x00020 - skill ignores SC_STASIS
-//    0x00040 - skill blocked by kagehumi
-//    0x00080 - skill range affected by AC_VULTURE
-//    0x00100 - skill range affected by GS_SNAKEEYE
-//    0x00200 - skill range affected by NJ_SHADOWJUMP
-//    0x00400 - skill range affected by WL_RADIUS
-//    0x00800 - skill range affected by RA_RESEARCHTRAP
-//    0x01000 - skill that does not affect user that has NC_HOVERING active
-//    0x02000 - skill that can be using while riding warg
-//    0x04000 - skill that can be used while on Madogear
-//    0x08000 - skill that can be used to target while under SC__MANHOLE effect
-//    0x10000 - skill that affects hidden targets
-//    0x20000 - skill that affects SC_GLOOMYDAY_SK
-//    0x40000 - skill that is affected by SC_DANCEWITHWUG
-//    0x80000 - skill blocked by RA_WUGBITE
-// 17 Name
-// 18 Description
-

+ 132 - 0
db/import-tmpl/skill_db.yml

@@ -0,0 +1,132 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Skill Database
+###########################################################################
+#
+# Skill Settings
+#
+###########################################################################
+# - Id                        Unique skill ID.
+#   Name                      Skill Aegis name.
+#   Description               Skill description.
+#   MaxLevel                  Max skill level.
+#   Type                      Skill type. (Default: None)
+#   TargetType                Skill target type. (Default: Passive)
+#   DamageFlags:              Skill damage properties.
+#   Flags:                    Skill information flags.
+#   Range:                    Skill range. (Default: 0)
+#     - Level                 Skill level.
+#       Size                  Range at specific skill level.
+#   Hit                       Skill hit type. (Default: Normal)
+#   HitCount:                 Skill hit count. (Default: 0)
+#     - Level                 Skill level.
+#       Count                 Number of hits at specific skill level.
+#   Element:                  Skill element. (Default: Neutral)
+#     - Level                 Skill level.
+#       Element               Element at specific skill level.
+#   SplashArea:               Skill splash area of effect. (Default: 0)
+#     - Level                 Skill level.
+#       Area                  Splash area at specific skill level.
+#   ActiveInstance:           Maximum amount of active skill instances that can be on the ground. (Default: 0)
+#     - Level                 Skill level.
+#       Max                   Active instances at specific skill level.
+#   Knockback:                Amount of tiles the skill knockbacks. (Default: 0)
+#     - Level                 Skill level.
+#       Amount                Knockback count at specific skill level.
+#   CopyFlags:                Determines if the skill is copyable. (Optional)
+#     Skill:                  Type of skill that can copy.
+#     RemoveRequirement:      Remove a requirement type. (Optional)
+#   NoNearNPC:                Determines if the skill can be used near a NPC. (Optional)
+#     AdditionalRange         Number of cells from an NPC where the skill can be cast. (Optional)
+#     Type:                   Type of NPC.
+#   CastCancel                Cancel cast when hit. (Default: false)
+#   CastDefenseReduction      Defense reduction rate during skill cast. (Default: 0)
+#   CastTime:                 Time to cast the skill in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  Cast time at specific skill level in milliseconds.
+#   AfterCastActDelay:        Time the character cannot use skills in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  After cast action delay at specific skill level in milliseconds.
+#   AfterCastWalkDelay:       Time before the character can move again in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  After cast walk delay at specific skill level in milliseconds.
+#   Duration1:                Duration of the skill in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  Skill duration at specific skill level in milliseconds.
+#   Duration2:                Duration of the skill in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  Skill duration at specific skill level in milliseconds.
+#   Cooldown:                 Time before the character can use the same skill again in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  Cooldown at specific skill level in milliseconds.
+#   FixedCastTime:            Time that is fixed during cast of the skill in milliseconds. (Default: 0)
+#     - Level                 Skill level.
+#       Time                  After cast action delay at specific skill level in milliseconds.
+#   CastTimeFlags:            Effects of the skill's cast time. (Optional)
+#   CastDelayFlags:           Effects of the skill's delay. (Optional)
+#   Requires:                 List of requirements to cast the skill. (Optional)
+#     HpCost:                 HP required to cast. (Default: 0)
+#       - Level               Skill level.
+#         Amount              HP required at specific skill level.
+#     SpCost:                 SP required to cast. (Default: 0)
+#       - Level               Skill level.
+#         Amount              SP required at specific skill level.
+#     HpRateCost:             HP rate required to cast. If positive, uses current HP, else uses Max HP. (Default: 0)
+#       - Level               Skill level.
+#         Amount              HP rate required at specific skill level.
+#     SpRateCost:             SP rate required to cast. If positive, uses current SP, else uses Max SP. (Default: 0)
+#       - Level               Skill level.
+#         Amount              SP rate required at specific skill level.
+#     MaxHpTrigger:           Maximum amount of HP to cast the skill. (Default: 0)
+#       - Level               Skill level.
+#         Amount              Maximum HP trigger required at specific skill level.
+#     ZenyCost:               Zeny required to cast. (Default: 0)
+#       - Level               Skill level.
+#         Amount              Zeny required at specific skill level.
+#     Weapon:                 Weapon required to cast. (Default: All)
+#     Ammo:                   Ammo required to cast. (Default: None)
+#     AmmoAmount:             Ammo amount required to cast. (Default: 0)
+#       - Level               Skill level.
+#         Amount              Ammo amount required at specific skill level.
+#     State                   Special state required to cast. (Default: None)
+#     Status:                 Status change required to cast. (Default: nullptr)
+#     SphereCost:             Spirit sphere required to cast. (Default: 0)
+#       - Level               Skill level.
+#         Amount              Spirit sphere required at specific skill level.
+#     ItemCost:               Item required to cast. (Default: 0)
+#       - Item                Item name.
+#         Amount              Item amount.
+#     Equipment:              Equipped item required to cast. (Default: nullptr)
+#   Unit:                     Skill unit values. (Optional)
+#     Id                      Skill unit ID.
+#     AlternateId:            Alternate skill unit ID. (Default: 0)
+#     Layout:                 Skill unit layout. (Default: 0)
+#       - Level               Skill level.
+#         Size                Unit layout at specific skill level.
+#     Range:                  Skill unit range. (Default: 0)
+#       - Level               Skill level.
+#         Size                Unit range at specific skill level.
+#     Interval                Skill unit interval in milliseconds. (Default: 0)
+#     Target                  Skill unit target type. (Default: All)
+#     Flag:                   Skill unit flags. (Default: None)
+###########################################################################
+
+Header:
+  Type: SKILL_DB
+  Version: 1

+ 0 - 8
db/import-tmpl/skill_improvise_db.txt

@@ -1,8 +0,0 @@
-// Improvise Database
-// Database for skills that can be summoned trough Randomize Spell/Improvised Song (Minstrel/Wanderer Skill).
-//
-// Structure of Database:
-// SkillID,Rate
-//
-// - To remove entry by importing, put 0 on 'Rate'
-

+ 0 - 28
db/import-tmpl/skill_nonearnpc_db.txt

@@ -1,28 +0,0 @@
-// Skill Distance-to-NPC Database
-// Prevents skills from being used near NPC types using INF2_NO_NEARNPC.
-//
-// Structure of Database:
-// SkillName,AdditionalRange{,NPC Type}
-//
-// AdditionalRange:
-//	Number of cells from an NPC where the skill can be cast.
-//	If zero, this will read the splash range value from skill_db;
-//	if that is also zero, range+layout's range from skill_unit_db will be used.
-//
-// NPC Type (bitmask):
-//	1 = warp portal, 2 = shop NPC, 4 = normal NPC script, 8 = tomb
-//
-// Examples:
-// MG_SAFETYWALL,2
-//	Safety Wall can't be placed within 2 ground cells of an NPC.
-//	(MG_SAFETYWALL doesn't have splash, layout range, and range value,
-//	so we must add the 'additional_range', or it will be pointless.)
-//
-// GS_DESPERADO,2
-//	Desperado can't be casted if the caster is standing within 5 cells of an NPC.
-//	(Why? GS_DESPERADO has 3 cells of splash range +2 'additional_range' here.)
-//
-// SC_CHAOSPANIC,0,1
-//	Chaos Panic can't be placed within 2 ground cells of a warp portal.
-//	(Because SC_CHAOSPANIC doesn't have splash range, it uses layout range.)
-

+ 0 - 33
db/import-tmpl/skill_require_db.txt

@@ -1,33 +0,0 @@
-// Skill Requirements Database
-//
-// Structure of Database:
-// SkillID,HPCost,MaxHPTrigger,SPCost,HPRateCost,SPRateCost,ZenyCost,RequiredWeapons,RequiredAmmoTypes,RequiredAmmoAmount,RequiredState,RequiredStatuses,SpiritSphereCost,RequiredItemID1,RequiredItemAmount1,RequiredItemID2,RequiredItemAmount2,RequiredItemID3,RequiredItemAmount3,RequiredItemID4,RequiredItemAmount4,RequiredItemID5,RequiredItemAmount5,RequiredItemID6,RequiredItemAmount6,RequiredItemID7,RequiredItemAmount7,RequiredItemID8,RequiredItemAmount8,RequiredItemID9,RequiredItemAmount9,RequiredItemID10,RequiredItemAmount10,RequiredEquipment
-//
-// If HP/SPratecost is positive, it is a percent of your current life, otherwise it is a percent of your max life.
-//
-// Legend for 'RequiredState' field:
-//  none = Nothing special
-//  hidden = Requires on hidden status by using Hiding, Cloaking, or maybe Chasewalk
-//  riding = Requires to ride either a peco or a dragon
-//  falcon = Requires a Falcon
-//  cart = Requires a Pushcart (for renewal can replace this state by SC_PUSH_CART in 'RequiredStatuses' field)
-//  shield = Requires a 0,shield equipped
-//  recover_weight_rate = Requires to be less than 50% weight
-//  move_enable = Requires to be able to move
-//  water = Requires to be standing on a water cell
-//  dragon = Requires to ride a Dragon
-//  warg = Requires a Warg
-//  ridingwarg = Requires to ride a Warg
-//  mado = Requires to have an active mado
-//  elementalspirit = Requires to have an Elemental Spirit summoned.
-//  peco = Requires riding a peco
-//
-// 'RequiredStatuses'
-//	Fill the value only with SC_STATUS (see db/const.txt for more details)
-//	Usage for multiple status requirements: SC_STATUS1:SC_STATUS2:SC_STATUS3
-//	Max. multiple value is 3 (skill.h: MAX_SKILL_STATUS_REQUIRE)
-//	Use any number or SC_ALL will disable status requirements
-// 'RequiredEquipment'
-//	Specified equipment to be equipped. For multiple values, use : as delimiter.
-//	Max. multiple value is 10 (skill.h: MAX_SKILL_EQUIP_REQUIRE)
-

+ 0 - 29
db/import-tmpl/skill_unit_db.txt

@@ -1,29 +0,0 @@
-// Skill Unit Database
-//
-// Structure of Database:
-// ID,unit ID,unit ID 2,layout,range,interval,target,flag
-//
-// layout = -1:special, 0:1*1, 1:3*3, 2:5*5, up to 5:11*11
-// target = friend (party +guildmates +neutral players) / party / guild
-//          ally (party +guildmates) / all / enemy
-// flag 0x0001(UF_DEFNOTENEMY)		If 'defunit_not_enemy' is set, the target is changed to 'friend'
-//      0x0002(UF_NOREITERRATION)	Spell cannot be stacked
-//      0x0004(UF_NOFOOTSET)		Spell cannot be cast near/on targets
-//      0x0008(UF_NOOVERLAP)		Spell effects do not overlap
-//      0x0010(UF_PATHCHECK)		Only cells with a shootable path will be placed
-//      0x0020(UF_NOPC)				Spell cannot affect players.
-//      0x0040(UF_NOMOB)			Spell cannot affect mobs.
-//      0x0080(UF_SKILL)			Spell CAN affect skills.
-//      0x0100(UF_DANCE)			Dance skill
-//      0x0200(UF_ENSEMBLE)			Ensemble skill
-//      0x0400(UF_SONG)				Song skill
-//      0x0800(UF_DUALMODE)			Spell has effects both at an interval and when you step in/out
-//      0x2000(UF_RANGEDSINGLEUNIT)	Layout hack, use layout range propriety but only display center.
-// 	Example: 0x006 = 0x002+0x004 -> Cannot be stacked nor cast near targets
-//
-// Notes:
-//    0x89,0x8a,0x8b without indication
-//
-//    u1   u2 lay  r intr target  flag
-//
-

+ 0 - 9
db/import-tmpl/spellbook_db.txt

@@ -1,9 +0,0 @@
-// Reading Spellbook Preserve Points Database
-//
-// Structure of Database:
-// SkillID,PreservePoints,Required Book
-//
-// NOTE:
-// - To add more entries, increase MAX_SKILL_SPELLBOOK_DB in skill.h.
-// - To remove entry by importing, put 0 for 'PreservePoints'
-

+ 32 - 0
db/import-tmpl/spellbook_db.yml

@@ -0,0 +1,32 @@
+# This file is a part of rAthena.
+#   Copyright(C) 2021 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/>.
+#
+###########################################################################
+# Reading Spellbook Database
+###########################################################################
+#
+# Reading Spellbook Settings
+#
+###########################################################################
+# - Skill             Skill that is usable through a Spellbook.
+#   Book              Book item required to cast skill.
+#   PreservePoints    Amount of points required to preserve the skill into the book.
+###########################################################################
+
+Header:
+  Type: READING_SPELLBOOK_DB
+  Version: 1

Alguns arquivos não foram mostrados porque muitos arquivos mudaram nesse diff