Compare commits

..

2 Commits

Author SHA1 Message Date
Joam
2f6c4d20de Update cast time, skill delay, cooldown match to official (#6961) 2022-05-19 02:53:38 +07:00
aleos
c8db7d3aa1 4th Class Job Improvement Bundle
* This includes several updates in accordance to Gravity's patch for 4th classes.
* Changelog: https://ro.gnjoy.com/news/notice/View.asp?BBSMode=10001&seq=7462&curpage=1
* Additional Changelog: https://ro.gnjoy.com/news/notice/View.asp?BBSMode=10001&seq=7468&curpage=1
2022-04-12 12:04:57 -04:00
402 changed files with 16226 additions and 183519 deletions

38
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,38 @@
---
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**:
<!-- Please specify the rAthena [GitHub hash](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) on which you encountered this issue.
How to get your GitHub Hash:
1. cd your/rAthena/directory/
2. git rev-parse --short HEAD
3. Copy the resulting hash.
-->
* **Client Date**:
<!-- Please specify the client date you used. -->
* **Server Mode**:
<!-- Which mode does your server use: Pre-Renewal or Renewal? -->
* **Description of Issue**:
* 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. -->
<!-- * _NOTE: Make sure you quote ``` `@atcommands` ``` just like this so that you do not tag uninvolved GitHub users!_ -->
* **Modifications that may affect results**:
<!-- * Please provide any information that could influence the expected result. -->
<!-- * This can be either configurations you changed, database values you changed, or even external source modifications. -->

View File

@@ -1,81 +0,0 @@
name: Bug Report
description: Create an Issue that details broken or unexpected behaviour
labels: ["type:bug"]
body:
- type: input
id: hash
attributes:
label: rAthena Hash
description: |
Please specify the rAthena [GitHub hash](https://help.github.com/articles/autolinked-references-and-urls/#commit-shas) on which you encountered this issue.
One way to get your hash is to type `git rev-parse --short HEAD` on your console.
validations:
required: true
- type: input
id: date
attributes:
label: Client Date
description: Specify the client date you are using when this Issue occured.
placeholder: YYYY-MM-DD
validations:
required: true
- type: dropdown
id: mode
attributes:
label: Server Mode
description: Specify the server-mode you are using when this Issue occured.
multiple: true
options:
- Pre-Renewal
- Renewal
validations:
required: true
- type: textarea
id: result
attributes:
label: Result
description: Describe the issue that you experienced in detail.
placeholder: |
1. In this environment...
2. With this config...
3. Trigger event '...'
4. See error...
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant Log Output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: Shell
validations:
required: false
- type: textarea
id: expected
attributes:
label: Expected Result
description: Describe what you would expect to happen in detail.
validations:
required: true
- type: textarea
id: howto
attributes:
label: How to Reproduce
description: If you have not stated in the description of the result already, please give us a short guide how we can reproduce your issue.
validations:
required: true
- type: textarea
id: info
attributes:
label: Official Information
description: 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.
validations:
required: true
- type: textarea
id: modifications
attributes:
label: Modifications that may affect results
description: |
If you are using any modifications, especially in /src/, you must type them here.
Even the smallest changes can cause things to break. We need to know what you have customized.
This can be either configurations you changed, database values you changed, or even external source modifications.

View File

@@ -1,8 +0,0 @@
blank_issues_enabled: false
contact_links:
- name: rAthena Community Support
url: https://rathena.org/board/forum/3-support-releases/
about: Please ask and answer questions here in our forum.
- name: rAthena Discord
url: https://rathena.org/board/discord/
about: Chat with us in the Discord support channel.

View File

@@ -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.
-->

View File

@@ -1,32 +0,0 @@
name: Feature Request
description: Suggest an idea for this project
labels: ["type:enhancement"]
body:
- type: dropdown
id: missing
attributes:
label: Is your request related to a missing official feature?
options:
- "Yes"
- "No"
validations:
required: true
- type: textarea
id: solution
attributes:
label: Describe the solution you'd like
description: Provide a clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
id: alternatives
attributes:
label: Describe alternatives you've considered
description: Let us know about other solutions you've tried or researched.
- type: textarea
id: context
attributes:
label: Additional context
description: |
Is there anything else you can add about the proposal?
You might want to link to related issues here if you haven't already.

View File

@@ -1,10 +1,6 @@
name: Build servers with Clang
# build_servers_clang.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,11 +22,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
os: [ubuntu-20.04]
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-18.04]
# Version list can be found on https://github.com/marketplace/actions/install-clang
clang: ['6.0', '7', '8', '9', '10', '11'] #, '12', '13']
clang: ['3.9', '4.0', '5.0', '6.0', '7', '8', '9', '10', '11'] #, '12', '13']
steps:
- uses: actions/checkout@v2

View File

@@ -1,10 +1,6 @@
name: Build servers with CMake
# build_servers_cmake.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,8 +22,8 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
steps:

View File

@@ -1,10 +1,6 @@
name: Build servers with GCC
# build_servers_gcc.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,11 +22,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['9', '10', '11']
gcc: ['7', '8', '9', '10']
steps:
- uses: actions/checkout@v2

View File

@@ -1,10 +1,6 @@
name: Build servers in Pre-Renewal and Renewal
# build_servers_modes.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,11 +22,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['11']
gcc: ['10']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE','RE']

View File

@@ -1,10 +1,6 @@
name: Build servers with MSVS
# build_servers_msbuild.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:

View File

@@ -1,10 +1,6 @@
name: Build servers with different packet versions
# build_servers_packetversions.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,11 +22,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['11']
gcc: ['10']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE','RE']
# Check build success for different packet-versions

View File

@@ -1,10 +1,6 @@
name: Build servers in VIP mode
# build_servers_vip.yml
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -26,11 +22,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
# Older versions of GCC are not available via unaltered aptitude repo lists.
gcc: ['11']
gcc: ['10']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE', 'RE']

View File

@@ -4,10 +4,6 @@ name: Validate NPC Scripts and DB Changes
# For NPC and DB validation we only need two builds: one of Renewal and one for Pre-Renewal checks.
# NPC scripts and database files are not platform dependent, so we can achieve this validation using only a simple linux setup.
concurrency:
group: ${{ github.repository }}-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
@@ -29,11 +25,11 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
# The ubuntu-latest label currently points to ubuntu-22.04.
# Available: ubuntu-22.04, ubuntu-20.04
# The ubuntu-latest label currently points to ubuntu-18.04.
# Available: ubuntu-20.04, ubuntu-18.04
os: [ubuntu-latest]
# Only a single version of GCC is required for validating NPC scripts and database changes.
gcc: ['11']
gcc: ['10']
# We run build checks for both Renewal and PRE-Renewal
mode: ['PRE', 'RE']

20
.gitignore vendored
View File

@@ -1,5 +1,6 @@
autom4te.cache/
/autom4te.cache/output.0
/autom4te.cache/requests
/autom4te.cache/traces.0
#Global
.vscode
.Apple*
@@ -39,10 +40,8 @@ Thumbs.db
/Makefile
/Makefile.cache
/map-server
/map-server-generator
/mapcache
/nbproject
/web-server
/yaml2sql
/yamlupgrade
@@ -57,10 +56,6 @@ Thumbs.db
# /3rdparty/yaml-cpp/
/3rdparty/yaml-cpp/Makefile
# /3rdparty/httplib/
/3rdparty/httplib/Makefile
/3rdparty/httplib/obj
# /db/
/db/import
@@ -97,10 +92,6 @@ Thumbs.db
/src/map/obj_sql
/src/map/pcre.hpp
# /src/web
/src/web/Makefile
/src/web/obj
# /src/tool/
/src/tool/Makefile
/src/tool/obj_all
@@ -134,10 +125,8 @@ Thumbs.db
/mapserv.bat
/runserver.bat
/serv.bat
/webserv.bat
/yaml2sql.bat
/yamlupgrade.bat
/navigenerator.bat
# dlls
/libmysql.dll
@@ -146,6 +135,3 @@ Thumbs.db
# CMakeFiles
/CMakeFiles/
# generated files
generated

View File

@@ -47,8 +47,6 @@ macro( CONFIGURE_WITH_LOCAL_OR_SYSTEM name )
endmacro( CONFIGURE_WITH_LOCAL_OR_SYSTEM )
add_subdirectory( httplib )
add_subdirectory( json )
add_subdirectory( libconfig )
add_subdirectory( mysql )
add_subdirectory( pcre )

2
3rdparty/README.txt vendored
View File

@@ -1,9 +1,7 @@
This folder contains everything related to 3rdparty code or tools.
cmake - scripts for the cmake build system (http://www.cmake.org)
httplib - library for http web service (https://github.com/yhirose/cpp-httplib/commit/a9cf09795170a72372cbeb3feef3851b859c0e33)
libconfig - library for processing structured configuration files (http://www.hyperrealm.com/libconfig/)
mysql - library for MySQL Community Server (http://www.mysql.com)
pcre - library for Perl Compatible Regular Expressions (http://www.pcre.org)
zlib - library for DEFLATE lossless compression algorithm (http://www.zlib.net)
json - library for nlohmann json (https://github.com/nlohmann/json/tree/4b2c8ce6bcfe7f39f2bb9e680c1e7a4d67c2dd48)

View File

@@ -1,38 +0,0 @@
cmake_minimum_required(VERSION 2.8)
if ( NOT ENABLE_WEB_SERVER )
return()
endif( NOT ENABLE_WEB_SERVER )
SET (this_target httplib)
PROJECT(${this_target})
find_path ( HTTPLIB_INCLUDE_DIRS "httplib.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}"
NO_DEFAULT_PATH )
find_path ( HTTPLIB_SOURCE_DIR "httplib.cc"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}"
NO_DEFAULT_PATH )
mark_as_advanced( HTTPLIB_INCLUDE_DIRS )
mark_as_advanced( HTTPLIB_SOURCE_DIR )
set ( HTTPLIB_HEADERS
"${HTTPLIB_INCLUDE_DIRS}/httplib.h"
CACHE INTERNAL "httplib headers" )
set ( HTTPLIB_SOURCES
"${HTTPLIB_SOURCE_DIR}/httplib.cc"
CACHE INTERNAL "httplib sources" )
set ( HTTPLIB_DEFINITIONS
"-std=c++11"
CACHE INTERNAL "http definitions" )
include_directories( ${HTTPLIB_INCLUDE_DIRS} ${HTTPLIB_SOURCE_DIR} )
ADD_LIBRARY( ${this_target} STATIC ${HTTPLIB_SOURCES} )
if (NOT WIN32)
target_compile_definitions(${this_target} PUBLIC "CPPHTTPLIB_SEND_FLAGS=MSG_NOSIGNAL")
endif()

View File

@@ -1,43 +0,0 @@
HTTPLIB_OBJ = $(shell find * -type f -name "*.cc" | sed -e "s/\.cc/\.o/g")
HTTPLIB_DIR_OBJ = $(HTTPLIB_OBJ:%=obj/%)
HTTPLIB_H = $(shell find * -type f -name "*.h")
HTTPLIB_AR = obj/httplib.a
CXXFLAG =-std=c++11
HTTPLIB_DEPENDS=httplib
@SET_MAKE@
#####################################################################
.PHONY : all clean help httplib
all: $(HTTPLIB_DEPENDS)
clean:
@echo " CLEAN httplib"
@rm -rf obj *.o
help:
@echo "possible targets are 'all' 'clean' 'help'"
@echo "'httplib' - build $(HTTPLIB_AR)
@echo "'all' - builds $(HTTPLIB_DIR_OBJ)"
@echo "'clean' - deletes $(HTTPLIB_DIR_OBJ)"
@echo "'help' - outputs this message"
#####################################################################
obj:
@echo " MKDIR obj"
@mkdir -p obj
obj/%.o: %.cc $(HTTPLIB_H)
@echo " CXX $<"
@@CXX@ $(CXXFLAG) @CFLAGS_AR@ @CPPFLAGS@ -DCPPHTTPLIB_SEND_FLAGS=MSG_NOSIGNAL -g -c $(OUTPUT_OPTION) $<
httplib: obj $(HTTPLIB_DIR_OBJ) $(HTTPLIB_AR)
$(HTTPLIB_AR): $(HTTPLIB_DIR_OBJ)
@echo " AR $@"
@@AR@ rcs obj/httplib.a $(HTTPLIB_DIR_OBJ)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,160 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="httplib.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="httplib.cc" />
</ItemGroup>
<PropertyGroup Label="Globals">
<Keyword>Win32Proj</Keyword>
<RootNamespace>libconfig</RootNamespace>
<ProjectGuid>{7A1A25BC-2CF7-44B2-8CAF-B4273B510FC6}</ProjectGuid>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>
</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@@ -1,21 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="httplib.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="httplib.cc">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
</Project>

View File

@@ -1,7 +0,0 @@
cmake_minimum_required(VERSION 2.8)
set (JSON_INCLUDE_DIRS
"${CMAKE_CURRENT_SOURCE_DIR}/include"
CACHE INTERNAL "json include dir" )
mark_as_advanced( JSON_INCLUDE_DIRS )

View File

@@ -1,21 +0,0 @@
MIT License
Copyright (c) 2013-2022 Niels Lohmann
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

File diff suppressed because it is too large Load Diff

View File

@@ -1,177 +0,0 @@
// __ _____ _____ _____
// __| | __| | | | JSON for Modern C++
// | | |__ | | | | | | version 3.11.2
// |_____|_____|_____|_|___| https://github.com/nlohmann/json
//
// SPDX-FileCopyrightText: 2013-2022 Niels Lohmann <https://nlohmann.me>
// SPDX-License-Identifier: MIT
#ifndef INCLUDE_NLOHMANN_JSON_FWD_HPP_
#define INCLUDE_NLOHMANN_JSON_FWD_HPP_
#include <cstdint> // int64_t, uint64_t
#include <map> // map
#include <memory> // allocator
#include <string> // string
#include <vector> // vector
// #include <nlohmann/detail/abi_macros.hpp>
// __ _____ _____ _____
// __| | __| | | | JSON for Modern C++
// | | |__ | | | | | | version 3.11.2
// |_____|_____|_____|_|___| https://github.com/nlohmann/json
//
// SPDX-FileCopyrightText: 2013-2022 Niels Lohmann <https://nlohmann.me>
// SPDX-License-Identifier: MIT
// This file contains all macro definitions affecting or depending on the ABI
#ifndef JSON_SKIP_LIBRARY_VERSION_CHECK
#if defined(NLOHMANN_JSON_VERSION_MAJOR) && defined(NLOHMANN_JSON_VERSION_MINOR) && defined(NLOHMANN_JSON_VERSION_PATCH)
#if NLOHMANN_JSON_VERSION_MAJOR != 3 || NLOHMANN_JSON_VERSION_MINOR != 11 || NLOHMANN_JSON_VERSION_PATCH != 2
#warning "Already included a different version of the library!"
#endif
#endif
#endif
#define NLOHMANN_JSON_VERSION_MAJOR 3 // NOLINT(modernize-macro-to-enum)
#define NLOHMANN_JSON_VERSION_MINOR 11 // NOLINT(modernize-macro-to-enum)
#define NLOHMANN_JSON_VERSION_PATCH 2 // NOLINT(modernize-macro-to-enum)
#ifndef JSON_DIAGNOSTICS
#define JSON_DIAGNOSTICS 0
#endif
#ifndef JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
#define JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON 0
#endif
#if JSON_DIAGNOSTICS
#define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS _diag
#else
#define NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS
#endif
#if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON
#define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON _ldvcmp
#else
#define NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_NO_VERSION
#define NLOHMANN_JSON_NAMESPACE_NO_VERSION 0
#endif
// Construct the namespace ABI tags component
#define NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b) json_abi ## a ## b
#define NLOHMANN_JSON_ABI_TAGS_CONCAT(a, b) \
NLOHMANN_JSON_ABI_TAGS_CONCAT_EX(a, b)
#define NLOHMANN_JSON_ABI_TAGS \
NLOHMANN_JSON_ABI_TAGS_CONCAT( \
NLOHMANN_JSON_ABI_TAG_DIAGNOSTICS, \
NLOHMANN_JSON_ABI_TAG_LEGACY_DISCARDED_VALUE_COMPARISON)
// Construct the namespace version component
#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch) \
_v ## major ## _ ## minor ## _ ## patch
#define NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(major, minor, patch) \
NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT_EX(major, minor, patch)
#if NLOHMANN_JSON_NAMESPACE_NO_VERSION
#define NLOHMANN_JSON_NAMESPACE_VERSION
#else
#define NLOHMANN_JSON_NAMESPACE_VERSION \
NLOHMANN_JSON_NAMESPACE_VERSION_CONCAT(NLOHMANN_JSON_VERSION_MAJOR, \
NLOHMANN_JSON_VERSION_MINOR, \
NLOHMANN_JSON_VERSION_PATCH)
#endif
// Combine namespace components
#define NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b) a ## b
#define NLOHMANN_JSON_NAMESPACE_CONCAT(a, b) \
NLOHMANN_JSON_NAMESPACE_CONCAT_EX(a, b)
#ifndef NLOHMANN_JSON_NAMESPACE
#define NLOHMANN_JSON_NAMESPACE \
nlohmann::NLOHMANN_JSON_NAMESPACE_CONCAT( \
NLOHMANN_JSON_ABI_TAGS, \
NLOHMANN_JSON_NAMESPACE_VERSION)
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_BEGIN
#define NLOHMANN_JSON_NAMESPACE_BEGIN \
namespace nlohmann \
{ \
inline namespace NLOHMANN_JSON_NAMESPACE_CONCAT( \
NLOHMANN_JSON_ABI_TAGS, \
NLOHMANN_JSON_NAMESPACE_VERSION) \
{
#endif
#ifndef NLOHMANN_JSON_NAMESPACE_END
#define NLOHMANN_JSON_NAMESPACE_END \
} /* namespace (inline namespace) NOLINT(readability/namespace) */ \
} // namespace nlohmann
#endif
/*!
@brief namespace for Niels Lohmann
@see https://github.com/nlohmann
@since version 1.0.0
*/
NLOHMANN_JSON_NAMESPACE_BEGIN
/*!
@brief default JSONSerializer template argument
This serializer ignores the template arguments and uses ADL
([argument-dependent lookup](https://en.cppreference.com/w/cpp/language/adl))
for serialization.
*/
template<typename T = void, typename SFINAE = void>
struct adl_serializer;
/// a class to store JSON values
/// @sa https://json.nlohmann.me/api/basic_json/
template<template<typename U, typename V, typename... Args> class ObjectType =
std::map,
template<typename U, typename... Args> class ArrayType = std::vector,
class StringType = std::string, class BooleanType = bool,
class NumberIntegerType = std::int64_t,
class NumberUnsignedType = std::uint64_t,
class NumberFloatType = double,
template<typename U> class AllocatorType = std::allocator,
template<typename T, typename SFINAE = void> class JSONSerializer =
adl_serializer,
class BinaryType = std::vector<std::uint8_t>, // cppcheck-suppress syntaxError
class CustomBaseClass = void>
class basic_json;
/// @brief JSON Pointer defines a string syntax for identifying a specific value within a JSON document
/// @sa https://json.nlohmann.me/api/json_pointer/
template<typename RefStringType>
class json_pointer;
/*!
@brief default specialization
@sa https://json.nlohmann.me/api/json/
*/
using json = basic_json<>;
/// @brief a minimal map-like container that preserves insertion order
/// @sa https://json.nlohmann.me/api/ordered_map/
template<class Key, class T, class IgnoredLess, class Allocator>
struct ordered_map;
/// @brief specialization that maintains the insertion order of object keys
/// @sa https://json.nlohmann.me/api/ordered_json/
using ordered_json = basic_json<nlohmann::ordered_map>;
NLOHMANN_JSON_NAMESPACE_END
#endif // INCLUDE_NLOHMANN_JSON_FWD_HPP_

View File

@@ -226,10 +226,6 @@ endif()
message( STATUS "Detecting networking library (socket/nsl/ws2_32) - done" )
endif()
#
# enable web server?
#
option( ENABLE_WEB_SERVER "Build web-server (default=ON)" ON )
#
# Test for big endian

View File

@@ -1,126 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, religion, or sexual identity
and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the
overall community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or
advances of any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email
address, without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, posting on the forums with an account in a Staff group, or acting as an appointed representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement via
the Report Center on our forums. All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. In the event that a user is uncontactable through normal means, the offending content will be hidden. A second infraction from a user with no means of communication will result in immediate Temporary Ban. See section 3.
### 2. Warning
**Community Impact**: A violation through a single incident or series
of actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or
permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within
the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.0, available at
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
Community Impact Guidelines were inspired by [Mozilla's code of conduct
enforcement ladder](https://github.com/mozilla/diversity).
[Contributor Covenant](https://www.contributor-covenant.org)
For answers to common questions about this code of conduct, see the FAQ at
https://www.contributor-covenant.org/faq. Translations are available at
https://www.contributor-covenant.org/translations.

View File

@@ -4,12 +4,11 @@ HAVE_MYSQL=@HAVE_MYSQL@
OMAP=@OMAP@
ifeq ($(HAVE_MYSQL),yes)
ALL_DEPENDS=server tools
SERVER_DEPENDS=common login char map web import
SERVER_DEPENDS=common login char map import
COMMON_DEPENDS=libconfig rapidyaml yaml-cpp
LOGIN_DEPENDS=libconfig common
CHAR_DEPENDS=libconfig common rapidyaml
MAP_DEPENDS=libconfig common rapidyaml
WEB_DEPENDS=libconfig common yaml-cpp httplib
else
ALL_DEPENDS=needs_mysql
SERVER_DEPENDS=needs_mysql
@@ -17,7 +16,6 @@ else
LOGIN_DEPENDS=needs_mysql
CHAR_DEPENDS=needs_mysql
MAP_DEPENDS=needs_mysql
WEB_DEPENDS=needs_mysql
endif
@@ -27,7 +25,6 @@ endif
login \
char \
map \
web \
tools \
import \
clean help \
@@ -52,15 +49,11 @@ char: $(CHAR_DEPENDS)
map: $(MAP_DEPENDS)
@$(MAKE) -C src/map server
web: $(WEB_DEPENDS)
@$(MAKE) -C src/web server
libconfig:
@$(MAKE) -C 3rdparty/libconfig
tools:
@$(MAKE) -C src/tool
@$(MAKE) -C src/map tools
rapidyaml:
@$(MAKE) -C 3rdparty/rapidyaml
@@ -68,9 +61,6 @@ rapidyaml:
yaml-cpp:
@$(MAKE) -C 3rdparty/yaml-cpp
httplib:
@$(MAKE) -C 3rdparty/httplib
import:
# 1) create conf/import folder
# 2) add missing files
@@ -91,11 +81,9 @@ clean:
@$(MAKE) -C 3rdparty/libconfig $@
@$(MAKE) -C 3rdparty/rapidyaml $@
@$(MAKE) -C 3rdparty/yaml-cpp $@
@$(MAKE) -C 3rdparty/httplib $@
@$(MAKE) -C src/login $@
@$(MAKE) -C src/char $@
@$(MAKE) -C src/map $@
@$(MAKE) -C src/web $@
@$(MAKE) -C src/tool $@
help:
@@ -105,11 +93,9 @@ help:
@echo "'libconfig' - builds object files of libconfig"
@echo "'rapidyaml' - builds object files of rapidyaml"
@echo "'yaml-cpp' - builds object files of yaml-cpp"
@echo "'httplib' - builds object files of httplib"
@echo "'login' - builds login server"
@echo "'char' - builds char server"
@echo "'map' - builds map server"
@echo "'web' - builds web server"
@echo "'tools' - builds all the tools in src/tools"
@echo "'import' - builds conf/import, conf/msg_conf/import and db/import folders from their template folders (x-tmpl)"
@echo "'all' - builds all the above targets"

View File

@@ -20,7 +20,8 @@ print_start() {
get_status(){
PIDFILE=.$1.pid
if [ -e ${PIDFILE} ]; then
PSRUN=$(pgrep -F ${PIDFILE})
ISRUN=$(ps ax | grep $(cat ${PIDFILE}) | grep $1)
PSRUN=$(echo "$ISRUN" | awk '{ print $1 }')
fi
#return ${PSRUN} #seems to cause an issue for some os
}
@@ -35,11 +36,11 @@ start_serv(){
echo "stat_serv, log is enabled"
echo "My logfile=${LOGFILE}"
if [ -z ${PSRUN} ]; then
if [ -e ./${FIFO} ]; then rm "$FIFO"; fi
if [ -e ./${FIFO} ]; then rm "$FIFO"; fi
mkfifo "$FIFO"; tee "$LOGRUN" < "$FIFO" & "./$1" > "$FIFO" 2>&1 & PID=$!
#"./$1" > >(tee "$LOGRUN") 2>&1 & PID=$! #bash only
echo "$PID" > .$1.pid
echo "Server '$1' started at $(date +"%m-%d-%H:%M-%S")" | tee ${LOGFILE}
echo "Server '$1' started at `date +"%m-%d-%H:%M-%S"`" | tee ${LOGFILE}
else
echo "Cannot start '$1', because it is already running p${PSRUN}" | tee ${LOGFILE}
fi
@@ -47,7 +48,7 @@ start_serv(){
if [ -z ${PSRUN} ]; then
./$1&
echo "$!" > .$1.pid
echo "Server '$1' started at $(date +"%m-%d-%H:%M-%S")"
echo "Server '$1' started at `date +"%m-%d-%H:%M-%S"`"
else
echo "Cannot start '$1', because it is already running p${PSRUN}"
fi
@@ -60,25 +61,25 @@ watch_serv(){
#now checking status and looping
count=0;
while true; do
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
LOGFILE="$LOG_DIR/$i.launch.log"
LOGRUN="$LOG_DIR/$i.log"
FIFO=$i"_fifo"
get_status ${i}
get_status $i
#echo "Echo id of $i is ${PSRUN}"
if [ -z ${PSRUN} ]; then
count=$((count+1))
#echo "fifo=$FIFO"
echo "server '$i' is down"
echo "server '$i' is down" >> ${LOGFILE}
echo "restarting server at time at $(date +"%m-%d-%H:%M-%S")"
echo "restarting server at time at $(date +"%m-%d-%H:%M-%S")" >> ${LOGFILE}
echo "restarting server at time at `date +"%m-%d-%H:%M-%S"`"
echo "restarting server at time at `date +"%m-%d-%H:%M-%S"`" >> ${LOGFILE}
if [ -e $FIFO ]; then rm $FIFO; fi
mkfifo "$FIFO"; tee "$LOGRUN" < "$FIFO" & "./$i" > "$FIFO" 2>&1 & PID=$!
echo "$PID" > .$i.pid
if [ $2 ] && [ $2 -lt $count ]; then break; fi
if [ $2 ] && [ $2 -lt $count ]; then break; fi
fi
done
sleep $1
@@ -88,7 +89,7 @@ watch_serv(){
restart(){
$0 stop
if [ $1 ]; then sleep $1; fi
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
FIFO="$1_fifo"
while true; do
@@ -100,11 +101,11 @@ restart(){
fi
done
done
$0 start
$0 start
}
case $1 in
'start')
'start')
print_start
check_files
echo "Check complete."
@@ -116,26 +117,26 @@ case $1 in
else
echo "Logging is disabled"
fi
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
start_serv $i $ENLOG
done
echo "rAthena was started."
;;
'watch')
'watch')
if [ ! -d "$LOG_DIR" ]; then mkdir -p $LOG_DIR; fi
if [ -z $2 ]; then Restart_count=10; else Restart_count=$2; fi
if [ -z $3 ]; then Restart_sleep=3; else Restart_sleep=$3; fi
echo "Going to watch rAthena for restart_count = $Restart_count, restart_sleep = $Restart_sleep"
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
start_serv $i 1
done
watch_serv $Restart_count $Restart_sleep
echo "Watching rAthena now."
;;
;;
'stop')
for i in ${W_SRV} ${M_SRV} ${C_SRV} ${L_SRV}
for i in ${M_SRV} ${C_SRV} ${L_SRV}
do
PIDFILE=.${i}.pid
if [ -e ./${PIDFILE} ]; then
@@ -154,23 +155,23 @@ case $1 in
done
;;
'restart')
restart "$@"
restart
;;
'status')
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
get_status ${i}
if [ ${PSRUN} ]; then echo "'${i}' is running p${PSRUN}"; else echo "'${i}' seems to be down"; fi
done
;;
'val_runonce')
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
valgrind --leak-check=full --show-leak-kinds=all ./$i --run-once > "log/$i.runonce.leak"
done
;;
'valchk')
for i in ${L_SRV} ${C_SRV} ${M_SRV} ${W_SRV}
for i in ${L_SRV} ${C_SRV} ${M_SRV}
do
valgrind --leak-check=full --show-leak-kinds=all ./$i > "log/$i.runonce.leak"
done
@@ -180,7 +181,7 @@ case $1 in
'start')
echo "syntax: 'start {--enlog}'"
echo "This option will start the servers"
echo "--enlog will write all terminal output into a log/\$servname.log file"
echo "--enlog will write all terminal output into a log/$servname.log file"
;;
'stop')
echo "This option will shut the servers down"
@@ -204,11 +205,11 @@ case $1 in
;;
'val_runonce')
echo "syntax: 'val_runonce'"
echo "This option will run valgrind with run-once to check the servers"
echo "This option will run valgrin with run-once to check the servers"
;;
'valchk')
echo "syntax: 'valchk'"
echo "This option will run valgrind with the servers"
echo "This option will run valgrin with the servers"
;;
*)
echo "Please specify a command you would like more info on { start | stop | restart | status | watch }"

View File

@@ -664,9 +664,6 @@ Body:
- Command: refine
Help: |
Params: <equip position> <+/- amount>
- Command: grade
Help: |
Params: <equip position> <+/- amount>
- Command: produce
Help: |
Params: <equip name or equip ID> <element> <# of very's>
@@ -1013,12 +1010,6 @@ Body:
Aliases:
- famepoint
- famepoints
- Command: enchantgradeui
Help: |
Opens the enchantgrade UI.
- Command: roulette
Help: |
Opens the roulette UI.
Footer:
Imports:

View File

@@ -167,9 +167,3 @@ warg_can_falcon: no
// Should the target be able of dodging damage by snapping away to the edge of the screen?
// Official behavior is "no"
snap_dodge: no
// Grant player skills/items the ability to "break" non-player equipment. (Note 1)
// This will effectively apply the strip equip effect to the non-player target.
// NOTE: WS_MELTDOWN is exempt from this check when disabled.
// Official: no
break_mob_equip: no

View File

@@ -118,6 +118,12 @@ client_reshuffle_dice: yes
// NOTE: Enabling this option degrades performance.
client_sort_storage: no
// Do we allow to change guilde emblem during woe_time?
emblem_woe_change: yes
// How many transparent pixel can be found in emblem before detected as invalid? (Note 2)
emblem_transparency_limit: 80
// Update enemy position while in invisible state? (Note 1)
// NOTE: Set to 'no' will make client won't update enemy position unless the players have "Intravision" effect.
// So that will help client handling WPE - Maya Purple Hack stuff.
@@ -148,13 +154,3 @@ show_skill_scale: yes
// Note: Enabling this is known to cause problems on clients that make use of REST API calls.
// Official: no
drop_connection_on_quit: no
// Macro Detector retries
// Number of times someone can fail the macro detection before being banned.
// Official: 3 (minimum: 1)
macro_detection_retry: 3
// Macro Detector timeout
// Amount of time in milliseconds before the macro detection will fail and the user will be banned.
// Official: 60000
macro_detection_timeout: 60000

View File

@@ -56,7 +56,7 @@ feature.autotrade_head_direction: 0
// 1 = Sitting
feature.autotrade_sit: 1
// Delay in milliseconds to open vending/buyingsotre after player logged in.
// 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.
@@ -119,26 +119,3 @@ feature.barter: on
// Extended Barter Shop System (Note 1)
// Requires: 2019-11-06RagexeRE or later
feature.barter_extended: on
// The timeout in milliseconds when a dynamic NPC will be despawned if not used.
// Default: 60000 (60s)
feature.dynamicnpc_timeout: 60000
// The x range in which the dynamic NPC will be spawned relative to the player.
// Default: 2
feature.dynamicnpc_rangex: 2
// The y range in which the dynamic NPC will be spawned relative to the player.
// Default: 2
feature.dynamicnpc_rangey: 2
// Should the dynamic NPCs look into the direction of the player? (Note 1)
// Default: no
feature.dynamicnpc_direction: no
// Itemlink System on informational related commands (Note 1)
// Generates <ITEML> string for an item and can be used for npctalk, message,
// dispbottom, and broadcast commands. The result is clickable-item name just
// like from SHIFT+Click from player's inventory/cart/equipment window.
// Requires: 2010-00-00RagexeRE or later
feature.itemlink: on

View File

@@ -17,13 +17,7 @@ guild_exp_limit: 50
guild_max_castles: 0
// Activate guild skills delay by relog?
// 0 - Save cooldown and resume on relog.
// 1 - Don't save cooldown and restart the timer on relog.
// Default on official servers: 1 for Pre-renewal, 0 for Renewal
//guild_skill_relog_type: 0
// Delay in milliseconds that are applied to guild skills.
// Official setting is 5 minutes (300000 ms).
// 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

View File

@@ -116,7 +116,7 @@ default_bind_on_equip: 4
allow_bound_sell: 0x0
// Hide n last characters of player's name with asterisk (*) when the player
// obtained an item with special broadcast flag or refined an item at a level with broadcast flag.
// obtained an item with special broadcast flag.
// Note: Players with short names can be fully converted to asterisks if this
// config value is set high.
broadcast_hide_name: 2

View File

@@ -19,57 +19,52 @@ monster_hp_rate: 100
monster_max_aspd: 199
// Defines various mob AI related settings. (Note 3)
// 0x0001: When enabled mobs will update their target cell every few iterations
// (normally they never update their target cell until they reach it while
// chasing)
// 0x0002: Makes mob use their "rude attack" skill (usually warping away) if they
// are attacked and they can't attack back regardless of how they were
// attacked (eg: GrimTooth), otherwise, their "rude attack" is only activated
// if they can't melee reach the target (eg: sniping)
// 0x0004: If not set, mobs that can change target only do so when attacked within a
// distance of [attack range+1], otherwise mobs may change target and chase
// ranged attackers. This flag also overrides the 'provoke' target.
// 0x0008: When set, mobs scatter as soon as they lose their target. Use this mode
// to make it much harder to mob-train by hiding and collecting them on a
// single spot (ie: GrimTooth training)
// 0x0010: If set, mob skills defined for friends will also trigger on themselves.
// 0x0020: When set, the monster ai is executed for all monsters in maps that
// have players on them, instead of only for mobs who are in the vicinity
// of players.
// 0x0040: When set, when the mob's target changes map, the mob will walk towards
// any npc-warps in it's sight of view (use with mob_warp below)
// 0x0080: If not set, mobs on attack state will only change targets when attacked
// by normal attacks. Set this if you want mobs to also switch targets when
// hit by skills.
// 0x0100: When set, a mob will pick a random skill from it's list and start from
// that instead of checking skills in orders (when unset, if a mob has too
// many skills, the ones near the end will rarely get selected)
// 0x0200: When set, a mob's skill re-use delay will not be applied to all entries of
// the same skill, instead, only to that particular entry (eg: Mob has heal
// on six lines in the mob_skill_db, only the entry that is actually used
// will receive the delay). This will make monsters harder, especially MvPs.
// 0x0400: Set this to make mobs have a range of 9 for all skills. Otherwise, they
// will obey the normal skill range rules.
// 0x0800: When set, monsters that are provoked will always change target to the
// provoking person, even if they would usually not change target on attack.
// 0x1000: When set, when a monster picks a skill but can't use it because there is
// no valid target in range, it will look for another skill it can use.
// This makes e.g. Greatest General use "Earth Spike" at range 8-9 whereas
// officially it would only use it after already having used "Blind Attack"
// at range 0-7.
// 0x001: When enabled mobs will update their target cell every few iterations
// (normally they never update their target cell until they reach it while
// chasing)
// 0x002: Makes mob use their "rude attack" skill (usually warping away) if they
// are attacked and they can't attack back regardless of how they were
// attacked (eg: GrimTooth), otherwise, their rude attack" is only activated
// if they can't melee reach the target (eg: sniping)
// 0x004: If not set, mobs that can change target only do so when attacked within a
// distance of [attack range+1], otherwise mobs may change target and chase
// ranged attackers. This flag also overrides the 'provoke' target.
// 0x008: When set, mobs scatter as soon as they lose their target. Use this mode
// to make it much harder to mob-train by hiding and collecting them on a
// single spot (ie: GrimTooth training)
// 0x010: If set, mob skills defined for friends will also trigger on themselves.
// 0x020: When set, the monster ai is executed for all monsters in maps that
// have players on them, instead of only for mobs who are in the vicinity
// of players.
// 0x040: When set, when the mob's target changes map, the mob will walk towards
// any npc-warps in it's sight of view (use with mob_warp below)
// 0x080: If not set, mobs on attack state will only change targets when attacked
// by normal attacks. Set this if you want mobs to also switch targets when
// hit by skills.
// 0x100: When set, a mob will pick a random skill from it's list and start from
// that instead of checking skills in orders (when unset, if a mob has too
// many skills, the ones near the end will rarely get selected)
// 0x200: When set, a mob's skill re-use delay will not be applied to all entries of
// the same skill, instead, only to that particular entry (eg: Mob has heal
// on six lines in the mob_skill_db, only the entry that is actually used
// will receive the delay). This will make monsters harder, especially MvPs.
// 0x400: Set this to make mobs have a range of 9 for all skills. Otherwise, they
// will obey the normal skill range rules.
// 0x800: When set, monsters that are provoked will always change target to the
// provoking person, even if they would usually not change target on attack.
// Example: 0x140 -> Chase players through warps + use skills in random order.
monster_ai: 0
// How often should a monster rethink its chase?
// 0: Every 100ms (MIN_MOBTHINKTIME)
// 1: Every cell moved
// x: Every x cells moved or at end of the chase path
// 30 (max): Only at end of the chase path (official)
// Regardless of this setting, a monster will always check for targets in attack
// range. Decrease this value if you want to make monsters to be more reactive while
// chasing. This also defines the maximum amount of cells monsters will move after
// they lost their target (hide, no line of sight, etc.).
monster_chase_refresh: 30
// 2: Every 2 cells moved
// 3: Every 3 cells moved (official)
// x: Every x cells moved
// Regardless of this setting, a monster will always rethink its chase if it has
// reached its target. Increase this value if you want to make monsters continue
// moving after they lost their target (hide, no line of sight, etc.).
monster_chase_refresh: 3
// Should mobs be able to be warped (add as needed)?
// 0: Disable.

View File

@@ -155,8 +155,8 @@ friend_auto_add: yes
invite_request_check: yes
// Players' will drop a 'Skull' when killed?
// Note: The 'Skull' item (ID 7420) is trade restricted by default. You need
// to remove the "NoTrade" flag on the item for this feature to work.
// Note: The 'Skull' item (ID 7420) is trade restricted by default. Please check
// the item_trade database to adjust accordingly.
// 0 = Disabled
// 1 = Dropped only in PvP maps
// 2 = Dropped in all situations

View File

@@ -174,13 +174,8 @@ sense_type: 1
finger_offensive_type: 0
// Grandcross Settings (Don't mess with these)
// Officially, Grand Cross has four damage waves, but each cell will stop
// dealing damage on the next wave after it already dealt at least 3 hits.
// A moving monster can take up to 4 hits, while a stack of monsters may only
// take 1-3 hits.
// Set this to yes if you want all waves to deal damage to all targets.
// Hint: If you want to reduce the number of waves, you need to reduce the
// duration of the skill (e.g. to 800ms for three damage waves).
// If set to no, hit interval is increased based on the amount of mobs standing on the same cell
// (means that when there's stacked mobs in the same cell, they won't receive all hits)
gx_allhit: no
// Grandcross display type (Default 1)
@@ -225,10 +220,6 @@ backstab_bow_penalty: yes
// Use 0 to disable (max allowed value is 255)
skill_steal_max_tries: 0
// Should random options be applied to stolen items? (Note 1)
// Official: no
skill_steal_random_options: no
// Level and Strength of "MVP heal". When someone casts a heal of this level or
// above, the heal formula is bypassed and this value is used instead.
max_heal: 9999

View File

@@ -121,8 +121,7 @@ start_point_doram: lasa_fild01,48,297
// Format: <id>,<amount>,<position>{:<id>,<amount>,<position>...}
// To auto-equip an item, include the position where it will be equipped; otherwise, use zero.
// NOTE: For Doram, this requires client 20151001 or newer.
start_items: 1201,1,2:2301,1,16:23484,1,0
start_items_pre: 1201,1,2:2301,1,16
start_items: 1201,1,2:2301,1,16
start_items_doram: 1681,1,2:2301,1,16
// Starting zeny for new characters

303
conf/groups.conf Normal file
View File

@@ -0,0 +1,303 @@
/*
Player groups configuration file
---------------------------------
This file defines "player groups" and their privileges.
Each group has its id and name, lists of available commands and other
permissions, and a list of other groups it inherits from.
Group settings
--------------
<id>
Unique group number. The only required field.
<name>
Any string. If empty, defaults to "Group <id>". It is used in several @who
commands.
<level>
Equivalent of GM level, which was used in revisions before r15572. You can
set it to any number, but usually it's between 0 (default) and 99. Members of
groups with lower level can not perform some actions/commands (like @kick) on
members of groups with higher level. It is what script command getgmlevel()
returns. Group level can also be used to override trade restrictions
(db/item_trade.txt).
<commands>
A group of settings
<command name> : <bool>
or
<commandname> : [ <bool>, <bool> ]
First boolean value is for atcommand, second one for charcommand. If set to
true, group can use command. If only atcommand value is provided, false is
assumed for charcommand. If a command name is not included, false is assumed for
both atcommand and charcommand.
For a full list of available commands, see: doc/atcommands.txt.
Command names must not be aliases.
<log_commands>
Boolean value. If true then all commands used by the group will be logged to
atcommandlog. If setting is omitted in a group definition, false is assumed.
Requires 'log_commands' to be enabled in 'conf/log_athena.conf'.
<permissions>
A group of settings
<permission> : <bool>
If a permission is not included, false is assumed.
For a full list of available permissions, see: doc/permissions.txt
<inherit>
A list of group names that given group will inherit commands and permissions
from. Group names are case-sensitive.
Inheritance results
-------------------
Both multiple inheritance (Group 2 -> Group 1 and Group 3 -> Group 1) and
recursive inheritance (Group 3 -> Group 2 -> Group 1) are allowed.
Inheritance rules should not create cycles (eg Group 1 inherits from Group 2,
and Group inherits from Group 1 at the same time). Configuration with cycles is
considered faulty and can't be processed fully by server.
Command or permission is inherited ONLY if it's not already defined for the
group.
If group inherits from multiple groups, and the same command or permission is
defined for more than one of these groups, it's undefined which one will be
inherited.
Syntax
------
This config file uses libconfig syntax:
http://www.hyperrealm.com/libconfig/libconfig_manual.html#Configuration-Files
Upgrading from revisions before r15572
-------------------------------------
http://rathena.org/board/index.php?showtopic=58877
*/
groups: (
{
id: 0 /* group 0 is the default group for every new account */
name: "Player"
level: 0
inherit: ( /*empty list*/ )
commands: {
changedress: true
resurrect: true
}
permissions: {
/* without this basic permissions regular players could not
trade or party */
can_trade: true
can_party: true
attendance: true
}
},
{
id: 1
name: "Super Player"
inherit: ( "Player" ) /* can do everything Players can and more */
level: 0
commands: {
/* informational commands */
commands: true
charcommands: true
help: true
rates: true
uptime: true
showdelay: true
exp: true
mobinfo: true
iteminfo: true
whodrops: true
time: true
jailtime: true
hominfo: true
homstats: true
showexp: true
showzeny: true
whereis: true
/* feature commands */
refresh: true
noask: true
noks: true
autoloot: true
alootid: true
autoloottype: true
autotrade: true
request: true
go: true
breakguild: true
channel: true
langtype: true
}
permissions: {
attendance: false
}
},
{
id: 2
name: "Support"
inherit: ( "Super Player" )
level: 1
commands: {
version: true
where: true
jumpto: true
who: true
who2: true
who3: true
whomap: true
whomap2: true
whomap3: true
users: true
broadcast: true
localbroadcast: true
}
log_commands: true
permissions: {
receive_requests: true
view_equipment: true
}
},
{
id: 3
name: "Script Manager"
inherit: ( "Support" )
level: 1
commands: {
tonpc: true
hidenpc: true
shownpc: true
loadnpc: true
unloadnpc: true
npcmove: true
addwarp: true
}
log_commands: true
permissions: {
any_warp: true
}
},
{
id: 4
name: "Event Manager"
inherit: ( "Support" )
level: 1
commands: {
monster: true
monstersmall: true
monsterbig: true
killmonster2: true
cleanarea: true
cleanmap: true
item: [true, true]
zeny: [true, true]
disguise: [true, true]
undisguise: [true, true]
size: [true, true]
raise: true
raisemap: true
day: true
night: true
skillon: true
skilloff: true
pvpon: true
pvpoff: true
gvgon: true
gvgoff: true
allowks: true
me: true
marry: true
divorce: true
refreshall: true
}
log_commands: true
permissions: {
can_trade: false
any_warp: true
}
},
{
id: 5
name: "VIP"
inherit: ( "Player" ) /* can do everything Players can */
level: 0
commands: {
rates: true
who: true
}
permissions: {
/* no permissions by default */
}
},
{
id: 10
name: "Law Enforcement"
inherit: ( "Support" )
level: 2
commands: {
hide: true
follow: true
kick: true
disguise: true
fakename: true
option: true
speed: true
warp: true
kill: true
recall: true
ban: true
block: true
jail: true
jailfor: true
mute: true
storagelist: true
cartlist: true
itemlist: true
stats: true
}
log_commands: true
permissions: {
join_chat: true
kick_chat: true
hide_session: true
who_display_aid: true
hack_info: true
any_warp: true
view_hpmeter: true
}
},
{
id: 99
name: "Admin"
level: 99
inherit: ( "Support", "Law Enforcement" )
commands: {
/* not necessary due to all_commands: true */
}
log_commands: true
permissions: {
can_trade: true
can_party: true
command_enable: true
all_skill: false
all_equipment: false
skill_unconditional: false
use_check: true
use_changemaptype: true
all_commands: true
channel_admin: true
can_trade_bounded: true
item_unconditional: false
bypass_stat_onclone: true
bypass_max_stat: true
/* all_permission: true */
}
}
)

View File

@@ -1,247 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Player Group Database
###########################################################################
#
# Player Group Settings
#
###########################################################################
# - Id Group ID.
# Name Group name.
# Level GM Level used for ranking groups. (Default: 0)
# LogCommands Whether atcommands should be logged or not. (Default: false)
# Commands: List of atcommands that can be used by this group. (Default: none)
# <atcommand name> Whether the specified atcommand can be used by this group or not.
# CharCommands: List of charcommands that can be used by this group. (Default: none)
# <charcommand name> Whether the specified charcommand can be used by this group or not.
# Permissions: List of permissions the group has. (Default: none)
# <permission name> Whether the group has this permission or not.
# Inherit: List of groups that will be inherited. (Default: none)
# <group name> Whether this group will be inherited or not.
###########################################################################
Header:
Type: PLAYER_GROUP_DB
Version: 1
Body:
- Id: 0
# group 0 is the default group for every new account
Name: Player
Level: 0
Commands:
changedress: true
resurrect: true
Permissions:
# without this basic permissions regular players could not trade or party
can_trade: true
can_party: true
attendance: true
- Id: 1
Name: Super Player
# Can do everything Players can and more
Inherit:
Player: true
Level: 0
Commands:
# Informational commands
commands: true
charcommands: true
help: true
rates: true
uptime: true
showdelay: true
exp: true
mobinfo: true
iteminfo: true
whodrops: true
time: true
jailtime: true
hominfo: true
homstats: true
showexp: true
showzeny: true
whereis: true
# Feature commands
refresh: true
noask: true
noks: true
autoloot: true
alootid: true
autoloottype: true
autotrade: true
request: true
go: true
breakguild: true
channel: true
langtype: true
Permissions:
attendance: false
- Id: 2
Name: Support
Inherit:
Super Player: true
Level: 1
Commands:
version: true
where: true
jumpto: true
who: true
who2: true
who3: true
whomap: true
whomap2: true
whomap3: true
users: true
broadcast: true
localbroadcast: true
LogCommands: true
Permissions:
receive_requests: true
view_equipment: true
- Id: 3
Name: Script Manager
Inherit:
Support: true
Level: 1
Commands:
tonpc: true
hidenpc: true
shownpc: true
loadnpc: true
unloadnpc: true
npcmove: true
addwarp: true
LogCommands: true
Permissions:
any_warp: true
- Id: 4
Name: Event Manager
Inherit:
Support: true
Level: 1
Commands:
monster: true
monstersmall: true
monsterbig: true
killmonster2: true
cleanarea: true
cleanmap: true
item: true
zeny: true
disguise: true
undisguise: true
size: true
raise: true
raisemap: true
day: true
night: true
skillon: true
skilloff: true
pvpon: true
pvpoff: true
gvgon: true
gvgoff: true
allowks: true
me: true
marry: true
divorce: true
refreshall: true
CharCommands:
item: true
zeny: true
disguise: true
undisguise: true
size: true
LogCommands: true
Permissions:
can_trade: false
any_warp: true
- Id: 5
Name: VIP
# Can do everything Players can
Inherit:
Player: true
Level: 0
Commands:
rates: true
who: true
- Id: 10
Name: Law Enforcement
Inherit:
Support: true
Level: 2
Commands:
hide: true
follow: true
kick: true
disguise: true
fakename: true
option: true
speed: true
warp: true
kill: true
recall: true
ban: true
block: true
jail: true
jailfor: true
mute: true
storagelist: true
cartlist: true
itemlist: true
stats: true
LogCommands: true
Permissions:
join_chat: true
kick_chat: true
hide_session: true
who_display_aid: true
hack_info: true
any_warp: true
view_hpmeter: true
macro_detect: true
- Id: 99
Name: Admin
Level: 99
Inherit:
Support: true
Law Enforcement: true
LogCommands: true
Permissions:
can_trade: true
can_party: true
command_enable: true
all_skill: false
all_equipment: false
skill_unconditional: false
use_check: true
use_changemaptype: true
all_commands: true
channel_admin: true
can_trade_bounded: true
item_unconditional: false
bypass_stat_onclone: true
bypass_max_stat: true
macro_register: true
#all_permission: true
Footer:
Imports:
- Path: conf/import/groups.yml

View File

@@ -1,41 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Player Group Database
###########################################################################
#
# Player Group Settings
#
###########################################################################
# - Id Group ID.
# Name Group name.
# Level GM Level used for ranking groups. (Default: 0)
# LogCommands Whether atcommands should be logged or not. (Default: false)
# Commands: List of atcommands that can be used by this group. (Default: none)
# <atcommand name> Whether the specified atcommand can be used by this group or not.
# CharCommands: List of charcommands that can be used by this group. (Default: none)
# <charcommand name> Whether the specified charcommand can be used by this group or not.
# Permissions: List of permissions the group has. (Default: none)
# <permission name> Whether the group has this permission or not.
# Inherit: List of groups that will be inherited. (Default: none)
# <group name> Whether this group will be inherited or not.
###########################################################################
Header:
Type: PLAYER_GROUP_DB
Version: 1

View File

@@ -15,12 +15,6 @@ party_share_level: 15
// Amount of status points a new character will start with
start_status_points: 48
// Do we allow to change guild emblem during woe_time?
emblem_woe_change: yes
// How many transparent pixel can be found in emblem before detected as invalid? (Note 2)
emblem_transparency_limit: 80
// You can specify the codepage to use in your MySQL tables here.
// (Note that this feature requires MySQL 4.1+)
//default_codepage:
@@ -64,13 +58,6 @@ map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok
// MySQL Web Server
web_server_ip: 127.0.0.1
web_server_port: 3306
web_server_id: ragnarok
web_server_pw: ragnarok
web_server_db: ragnarok
// MySQL Log Database
log_db_ip: 127.0.0.1
log_db_port: 3306
@@ -165,14 +152,6 @@ market_table: market
roulette_table: db_roulette
guild_storage_log: guild_storage_log
// Web Database Tables
// NOTE: The web server reads the login (login) and char (guild) tables, so it needs
// the ability to connect to those databases.
guild_emblems: guild_emblems
user_configs: user_configs
char_configs: char_configs
merchant_configs: merchant_configs
// Use SQL item_db, mob_db and mob_skill_db for the map server? (yes/no)
use_sql_db: no

View File

@@ -8,40 +8,37 @@
//--------------------------------------------------------------
// Enable Logs? (Note 3)
// 0x00000000 - Don't log at all
// 0x00000001 - (T) Log trades
// 0x00000002 - (V) Log vending transactions
// 0x00000004 - (P) Log items drop/picked by players
// 0x00000008 - (L) Log items drop/looted by monsters
// 0x00000010 - (S) Log NPC transactions (buy/sell)
// 0x00000020 - (N) Log Script transactions (items deleted/acquired through quests)
// 0x00000040 - (D) Log items stolen from mobs (Steal/Gank)
// 0x00000080 - (C) Log player-used items (consumables/pet&hom&merc food/items used for skills&attacks)
// 0x00000100 - (O) Log produced/ingredient items
// 0x00000200 - (U) Log MVP prize items
// 0x00000400 - (A) Log player created/deleted items (through @/# commands)
// 0x00000800 - (R) Log items placed/retrieved from storage.
// 0x00001000 - (G) Log items placed/retrieved from guild storage.
// 0x00002000 - (E) Log mail system transactions.
// 0x00004000 - (I) Log auction system transactions.
// 0x00008000 - (B) Log buying store transactions
// 0x00010000 - (X) Log all other transactions (rentals expiring/inserting cards/items removed by item_check/
// 0x0000000 - Don't log at all
// 0x0000001 - (T) Log trades
// 0x0000002 - (V) Log vending transactions
// 0x0000004 - (P) Log items drop/picked by players
// 0x0000008 - (L) Log items drop/looted by monsters
// 0x0000010 - (S) Log NPC transactions (buy/sell)
// 0x0000020 - (N) Log Script transactions (items deleted/acquired through quests)
// 0x0000040 - (D) Log items stolen from mobs (Steal/Gank)
// 0x0000080 - (C) Log player-used items (consumables/pet&hom&merc food/items used for skills&attacks)
// 0x0000100 - (O) Log produced/ingredient items
// 0x0000200 - (U) Log MVP prize items
// 0x0000400 - (A) Log player created/deleted items (through @/# commands)
// 0x0000800 - (R) Log items placed/retrieved from storage.
// 0x0001000 - (G) Log items placed/retrieved from guild storage.
// 0x0002000 - (E) Log mail system transactions.
// 0x0004000 - (I) Log auction system transactions.
// 0x0008000 - (B) Log buying store transactions
// 0x0010000 - (X) Log all other transactions (rentals expiring/inserting cards/items removed by item_check/
// rings deleted by divorce/pet egg (un)hatching/pet armor (un)equipping/Weapon Refine skill/Remove Trap skill/Stylist)
// 0x00020000 - ($) Log cash transactions
// 0x00040000 - (K) Log account bank transactions
// 0x00080000 - (F) Removed bound items when guild/party is broken
// 0x00100000 - (Y) Log Roulette Lottery
// 0x00200000 - (Z) Merged items from item mergers process.
// 0x00400000 - (Q) Log items given from quest-granted drops.
// 0x00800000 - (H) Log items consumed by Private Airship system
// 0x01000000 - (J) Log Barter Shop transactions
// 0x02000000 - (W) Log Laphine system transactions
// 0x04000000 - (0) Enchantgrade UI
// 0x08000000 - (1) Reform UI
// 0x10000000 - (2) Enchant UI
// 0x0020000 - ($) Log cash transactions
// 0x0040000 - (K) Log account bank transactions
// 0x0080000 - (F) Removed bound items when guild/party is broken
// 0x0100000 - (Y) Log Roulette Lottery
// 0x0200000 - (Z) Merged items from item mergers process.
// 0x0400000 - (Q) Log items given from quest-granted drops.
// 0x0800000 - (H) Log items consumed by Private Airship system
// 0x1000000 - (J) Log Barter Shop transactions
// 0x2000000 - (W) Log Laphine system transactions
// Example: Log trades+vending+script items+created items: 1+2+32+1024 = 1059
// Please note that moving items from inventory to cart and back is not logged by design.
enable_logs: 0xFFFFFFFF
enable_logs: 0xFFFFFFF
// Use MySQL Logs? (Note 1)
sql_logs: yes

View File

@@ -167,11 +167,6 @@ client_hash_check: off
// This is required for new clients that get data via an additional API over HTTP
use_web_auth_token: yes
// Delay (in milliseconds) disabling webtoken after character logs off
// There's a race condition when the client logs off. The char-server could revoke the token before
// the client can save the changed configs.
disable_webtoken_delay: 10000
// 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.

View File

@@ -1483,80 +1483,5 @@ map: verus02_b
map: tur_d04ia
map: tur_d04ib
// Episode 19
map: icecastle
map: icas_in
map: jor_tail
map: jor_back1
map: jor_back2
map: jor_back3
map: jor_nest
map: jor_dun01
map: jor_dun02
map: jor_dun03
map: jor_ab01
map: jor_ab02
map: jor_que
map: air_if
map: 1@iwp
map: 1@jorchs
map: 1@jorlab
map: 1@whl
// Extended Jobs
map: 1@exhn
map: 1@exds
map: 2@exds
map: 1@exse
map: 1@exnw
map: 1@exsr
map: 1@exsh
// Varmundt's Biosphere
map: bl_grass
map: bl_lava
map: bl_ice
map: bl_death
// Clock Tower: Unknown Basement
map: clock_01
// Ragnarok Festival
map: rag_fes
map: rag_fes_a
// 20th Anniversary
map: memohall
map: 1@dime
// Fantasy maps
map: prt_elib
map: 1@vrcas
map: 1@vrev
map: 1@vrgen
map: 1@vrpo
// ??
map: 1@pdb
map: airplane2
map: vr_bob
// Heroria
map: hero_dun1
map: hero_ent1
map: hero_ent2
map: hero_ent3
map: hero_in1
map: hero_in2
map: hero_in3
map: hero_in4
map: hero_lb
map: hero_out1
map: hero_out2
map: hero_out3
map: hero_out4
map: hero_tra
map: herosria
//------------------------- Clone Maps ---------------------------
//------------------------- Extra Maps ---------------------------

View File

@@ -921,13 +921,7 @@
// @mobinfo RES/MRES
827: RES:%d MRES:%d
// General packet version check messages
828: This command requires packet version %s or newer.
// Enchant UI
829: Enchanting is not possible for your item's enchant grade.
//830-899 free
//828-899 free
//------------------------------------
// More atcommands message
@@ -1112,7 +1106,8 @@
// @partyrecall
1035: Please enter a party name/ID (usage: @partyrecall <party_name/ID>).
//1036 free
// @reloadatcommand
1036: Error reading groups.conf, reload failed.
//1037 free
// @mapinfo
@@ -1789,9 +1784,5 @@
1517: Cannot add fame to class '%s'.
1518: %d points were added to '%s'.
// @grade
1519: Please enter a position and an amount (usage: @grade <equip position> <+/- amount>).
1520: %d items have been graded.
//Custom translations
import: conf/msg_conf/import/map_msg_eng_conf.txt

View File

@@ -865,7 +865,8 @@
// @partyrecall
1035: 請輸入隊伍名稱/ID (用法: @partyrecall <party_name/ID>).
//1036 free
// @reloadatcommand
1036: Error reading groups.conf, reload failed.
//1037 free
// @mapinfo

View File

@@ -877,7 +877,8 @@
// @partyrecall
1035: Entrez un nom/ID d'Equipe (usage: @partyrecall <nom/ID_party>).
//1036 free
// @reloadatcommand
1036: Erreur à la lecture de groups.conf, reload échoué.
//1037 free
// @mapinfo

View File

@@ -964,7 +964,8 @@
// @partyrecall
1035: Harap masukkan nama party/ID. (Penggunaan: @partyrecall <nama party/ID>).
//1036 free
// @reloadatcommand
1036: Terjadi kesalahan saat membaca groups.conf, tidak berhasil dimuat ulang.
//1037 free
// @mapinfo

View File

@@ -1046,7 +1046,8 @@
// @partyrecall
1035: Digite o nome/ID de um grupo (uso: @partyrecall <nome/ID_do_grupo>).
//1036 free
// @reloadatcommand
1036: Erro na leitura do grups.conf, recarregamento falhou.
//1037 free
// @mapinfo

View File

@@ -878,7 +878,8 @@
// @partyrecall
1035: Введите ID/название группы (Использование: @partyrecall <ID/название группы>).
//1036 free
// @reloadatcommand
1036: Ошибка чтения файла groups.conf, перезагрузка не удалась.
//1037 free
// @mapinfo

View File

@@ -1015,7 +1015,8 @@
// @partyrecall
1035: Introduce el nombre/ID de un grupo (instrucciones: @partyrecall <nombre/ID del grupo>).
//1036 free
// @reloadatcommand
1036: Ha ocurrido un error al cargar el archivo groups.conf.
//1037 free
// @mapinfo

View File

@@ -871,7 +871,8 @@
// @partyrecall
1035: ג»<D792>´<EFBFBD><C2B4>÷<EFBFBD>×<EFBFBD>ט<EFBFBD>/ID party (<28><>¸<EFBFBD>ד×י: @partyrecall <×<>ט<EFBFBD>/ID party>).
//1036 free
// @reloadatcommand
1036: א<><D790>´¢י<C2A2>¼<EFBFBD>´¾<C2B4><C2BE>´ד¹<D793><C2B9><EFBFBD>¼ט<C2BC>¹ה<C2B9><D794>ל groups.conf, <20><><EFBFBD>ג<EFBFBD><D792>´ד<C2B4><D793>ט<EFBFBD>י<EFBFBD>א<EFBFBD><D790><EFBFBD>.
//1037 free
// @mapinfo

View File

@@ -1,3 +0,0 @@
// rAthena msg_athena.conf
// Message Configuration of web-server
// -----------------------

View File

@@ -1,56 +0,0 @@
// rAthena Web Server configuration file.
// Note: "Comments" are all text on the right side of a double slash "//"
// Whatever text is commented will not be parsed by the servers, and serves
// only as information/reference.
// The web server listens on the interface with this IP address.
// NOTE: This allows you to run multiple servers on multiple interfaces
// while using the same ports for each server.
//bind_ip: 127.0.0.1
// Web Server Port
web_port: 8888
//Time-stamp format which will be printed before all messages.
//Can at most be 20 characters long.
//Common formats:
// %I:%M:%S %p (hour:minute:second 12 hour, AM/PM format)
// %H:%M:%S (hour:minute:second, 24 hour format)
// %d/%b/%Y (day/Month/year)
//For full format information, consult the strftime() manual.
//timestamp_format: [%d/%b %H:%M]
//If redirected output contains escape sequences (color codes)
stdout_with_ansisequence: no
//Makes server log selected message types to a file in the /log/ folder
//1: Log Warning Messages
//2: Log Error and SQL Error messages.
//4: Log Debug Messages
//Example: "console_msg_log: 7" logs all 3 kinds
//Messages logged by this overrides console_silent setting
console_msg_log: 0
// File path to store the console messages above
console_log_filepath: ./log/web-msg_log.log
//Makes server output more silent by omitting certain types of messages:
//1: Hide Information messages
//2: Hide Status messages
//4: Hide Notice Messages
//8: Hide Warning Messages
//16: Hide Error and SQL Error messages.
//32: Hide Debug Messages
//Example: "console_silent: 7" Hides information, status and notice messages (1+2+4)
console_silent: 0
// Print requests and responses?
// This is useful for debugging purposes, it will print the entire
// request and response for each transaction.
print_req_res: off
// Allow GIF images to be uploaded as guild emblem?
allow_gifs: yes
import: conf/import/web_conf.txt

149
configure vendored
View File

@@ -1,5 +1,5 @@
#! /bin/sh
# From configure.ac Revision.
# From configure.in Revision.
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69.
#
@@ -642,7 +642,6 @@ ac_ct_CC
CFLAGS
CC
SET_MAKE
OWEB
OMAP
OCHR
OLOG
@@ -675,7 +674,6 @@ infodir
docdir
oldincludedir
includedir
runstatedir
localstatedir
sharedstatedir
sysconfdir
@@ -714,7 +712,6 @@ with_maxconn
with_outputlogin
with_outputchar
with_outputmap
with_outputweb
with_mysql
with_MYSQL_CFLAGS
with_MYSQL_LIBS
@@ -771,7 +768,6 @@ datadir='${datarootdir}'
sysconfdir='${prefix}/etc'
sharedstatedir='${prefix}/com'
localstatedir='${prefix}/var'
runstatedir='${localstatedir}/run'
includedir='${prefix}/include'
oldincludedir='/usr/include'
docdir='${datarootdir}/doc/${PACKAGE}'
@@ -1024,15 +1020,6 @@ do
| -silent | --silent | --silen | --sile | --sil)
silent=yes ;;
-runstatedir | --runstatedir | --runstatedi | --runstated \
| --runstate | --runstat | --runsta | --runst | --runs \
| --run | --ru | --r)
ac_prev=runstatedir ;;
-runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
| --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
| --run=* | --ru=* | --r=*)
runstatedir=$ac_optarg ;;
-sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
ac_prev=sbindir ;;
-sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
@@ -1170,7 +1157,7 @@ fi
for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
datadir sysconfdir sharedstatedir localstatedir includedir \
oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
libdir localedir mandir runstatedir
libdir localedir mandir
do
eval ac_val=\$$ac_var
# Remove trailing slashes.
@@ -1323,7 +1310,6 @@ Fine tuning of the installation directories:
--sysconfdir=DIR read-only single-machine data [PREFIX/etc]
--sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
--localstatedir=DIR modifiable single-machine data [PREFIX/var]
--runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
--libdir=DIR object code libraries [EPREFIX/lib]
--includedir=DIR C header files [PREFIX/include]
--oldincludedir=DIR C header files for non-gcc [/usr/include]
@@ -1381,10 +1367,9 @@ Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-maxconn[=ARG] optionally set the maximum connections the core can
handle. By default the system header value will be
used. This will only be the compile time limit, make
sure you set the correct limit with ulimit on your
OS.
handle. By default the system header value will be used.
This will only be the compile time limit, make sure
you set the correct limit with ulimit on your OS.
--with-outputlogin[=ARG]
Specify the login-serv output name (defaults to
login-server)
@@ -1392,8 +1377,6 @@ Optional Packages:
char-server)
--with-outputmap[=ARG] Specify the map-serv output name (defaults to
map-server)
--with-outputweb[=ARG] Specify the web-serv output name (defaults to
web-server)
--with-mysql[=ARG] optionally specify the path to the mysql_config
executable
--with-MYSQL_CFLAGS=ARG specify MYSQL_CFLAGS manually (instead of using
@@ -1735,6 +1718,44 @@ $as_echo "$ac_res" >&6; }
} # ac_fn_cxx_check_header_compile
# ac_fn_c_try_compile LINENO
# --------------------------
# Try to compile conftest.$ac_ext, and return whether this succeeded.
ac_fn_c_try_compile ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
rm -f conftest.$ac_objext
if { { ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
$as_echo "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
grep -v '^ *+' conftest.err >conftest.er1
cat conftest.er1 >&5
mv -f conftest.er1 conftest.err
fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then :
ac_retval=0
else
$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_compile
# ac_fn_cxx_try_link LINENO
# -------------------------
# Try to link conftest.$ac_ext, and return whether this succeeded.
@@ -1781,44 +1802,6 @@ fi
} # ac_fn_cxx_try_link
# ac_fn_c_try_compile LINENO
# --------------------------
# Try to compile conftest.$ac_ext, and return whether this succeeded.
ac_fn_c_try_compile ()
{
as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
rm -f conftest.$ac_objext
if { { ac_try="$ac_compile"
case "(($ac_try" in
*\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
*) ac_try_echo=$ac_try;;
esac
eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
$as_echo "$ac_try_echo"; } >&5
(eval "$ac_compile") 2>conftest.err
ac_status=$?
if test -s conftest.err; then
grep -v '^ *+' conftest.err >conftest.er1
cat conftest.er1 >&5
mv -f conftest.er1 conftest.err
fi
$as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
test $ac_status = 0; } && {
test -z "$ac_c_werror_flag" ||
test ! -s conftest.err
} && test -s conftest.$ac_objext; then :
ac_retval=0
else
$as_echo "$as_me: failed program was:" >&5
sed 's/^/| /' conftest.$ac_ext >&5
ac_retval=1
fi
eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
as_fn_set_status $ac_retval
} # ac_fn_c_try_compile
# ac_fn_cxx_check_func LINENO FUNC VAR
# ------------------------------------
# Tests whether FUNC exists, setting the cache variable VAR accordingly
@@ -2757,14 +2740,12 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
ac_config_files="$ac_config_files Makefile src/common/Makefile"
ac_config_files="$ac_config_files 3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile 3rdparty/rapidyaml/Makefile 3rdparty/httplib/Makefile"
ac_config_files="$ac_config_files 3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile 3rdparty/rapidyaml/Makefile"
ac_config_files="$ac_config_files src/char/Makefile src/login/Makefile"
ac_config_files="$ac_config_files src/map/Makefile src/tool/Makefile"
ac_config_files="$ac_config_files src/web/Makefile"
ac_ext=cpp
ac_cpp='$CXXCPP $CPPFLAGS'
@@ -3303,10 +3284,11 @@ rm -f core conftest.err conftest.$ac_objext \
$as_echo "$have_linux_epoll" >&6; }
fi
if test x$enable_epoll,$have_linux_epoll = xyes,no; then
as_fn_error $? "epoll support explicitly enabled but not available" "$LINENO" 5
as_fn_error $? "epoll support explicitly enabled but not available" "$LINENO" 5
fi
#
# debug
#
@@ -3482,24 +3464,18 @@ fi
#
# Optionally set the maximum number of network connections
# the core will be able to handle
# Optionally set the max number of network conenctions
# the core will be support
#
# Check whether --with-maxconn was given.
if test "${with_maxconn+set}" = set; then :
withval=$with_maxconn;
if ! test "$withval" -ge 0 -o "$withval" -lt 0 2>&- ; then
as_fn_error $? "Invalid argument --with-maxconn=$withval ... stopping" "$LINENO" 5
else
CPPFLAGS="$CPPFLAGS -DMAXCONN=$withval"
fi
else
CPPFLAGS="$CPPFLAGS"
if ! test "$withval" -ge 0 -o "$withval" -lt 0 2>&- ; then
as_fn_error $? "Invalid argument --with-maxconn=$withval ... stopping" "$LINENO" 5
else
CPPFLAGS="$CPPFLAGS -DMAXCONN=$withval"
fi
fi
@@ -3544,18 +3520,6 @@ OMAP=$output_map
# Check whether --with-outputweb was given.
if test "${with_outputweb+set}" = set; then :
withval=$with_outputweb; output_web="$withval"
else
output_web="web-server"
fi
OWEB=$output_web
#
# Optionally specify the path to mysql_config
#
@@ -7063,6 +7027,7 @@ fi
#
# Host specific stuff
#
@@ -7127,8 +7092,8 @@ $as_echo "$as_me: CFLAGS_AR= $CFLAGS_AR" >&6;}
$as_echo "$as_me: LDFLAGS= $LDFLAGS" >&6;}
#AC_MSG_NOTICE([PROD_WARN= $PROD_WARN])
#AC_MSG_NOTICE([EXTRA_WARN= $EXTRA_WARN])
{ $as_echo "$as_me:${as_lineno-$LINENO}: output name = $output_login, $output_char, $output_map, $output_web" >&5
$as_echo "$as_me: output name = $output_login, $output_char, $output_map, $output_web" >&6;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: output name = $output_login, $output_char, $output_map" >&5
$as_echo "$as_me: output name = $output_login, $output_char, $output_map" >&6;}
###############################################################################
cat >confcache <<\_ACEOF
@@ -7842,12 +7807,10 @@ do
"3rdparty/libconfig/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/libconfig/Makefile" ;;
"3rdparty/yaml-cpp/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/yaml-cpp/Makefile" ;;
"3rdparty/rapidyaml/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/rapidyaml/Makefile" ;;
"3rdparty/httplib/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/httplib/Makefile" ;;
"src/char/Makefile") CONFIG_FILES="$CONFIG_FILES src/char/Makefile" ;;
"src/login/Makefile") CONFIG_FILES="$CONFIG_FILES src/login/Makefile" ;;
"src/map/Makefile") CONFIG_FILES="$CONFIG_FILES src/map/Makefile" ;;
"src/tool/Makefile") CONFIG_FILES="$CONFIG_FILES src/tool/Makefile" ;;
"src/web/Makefile") CONFIG_FILES="$CONFIG_FILES src/web/Makefile" ;;
*) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
esac

View File

@@ -8,10 +8,9 @@ AC_LANG([C++])
AC_LANG_COMPILER_REQUIRE
AC_CONFIG_SRCDIR([src/common/cbasetypes.hpp])
AC_CONFIG_FILES([Makefile src/common/Makefile])
AC_CONFIG_FILES([3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile 3rdparty/rapidyaml/Makefile 3rdparty/httplib/Makefile])
AC_CONFIG_FILES([3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile 3rdparty/rapidyaml/Makefile])
AC_CONFIG_FILES([src/char/Makefile src/login/Makefile])
AC_CONFIG_FILES([src/map/Makefile src/tool/Makefile])
AC_CONFIG_FILES([src/web/Makefile])
AC_GNU_SOURCE
@@ -47,7 +46,7 @@ AC_ARG_ENABLE(
[packetver],
AC_HELP_STRING(
[--enable-packetver=ARG],
[Sets the PACKETVER define. (see src/common/mmo.hpp)]
[Sets the PACKETVER define. (see src/common/mmo.h)]
),
[enable_packetver="$enableval"],
[enable_packetver=""]
@@ -303,8 +302,7 @@ AC_ARG_WITH(
[maxconn],
AC_HELP_STRING(
[--with-maxconn@<:@=ARG@:>@],
[optionally set the maximum connections the core can handle. By default the system header value will be used.
This will only be the compile time limit, make sure you set the correct limit with ulimit on your OS.]
[optionally set the maximum connections the core can handle. By default the system header value is used.]
),
[
if ! test "$withval" -ge 0 -o "$withval" -lt 0 2>&- ; then
@@ -355,17 +353,6 @@ AC_ARG_WITH(
)
AC_SUBST([OMAP],$output_map)
AC_ARG_WITH(
[outputweb],
AC_HELP_STRING(
[--with-outputweb@<:@=ARG@:>@],
[Specify the web-serv output name (defaults to web-server)]
),
[output_web="$withval"],
[output_web="web-server"]
)
AC_SUBST([OWEB],$output_web)
#
# Optionally specify the path to mysql_config
@@ -648,7 +635,7 @@ if test "$enable_lto" != "no" ; then
fi
AC_DEFUN([AC_CHECK_COMPILER_WFLAG],
AC_DEFUN(AC_CHECK_COMPILER_WFLAG,
[
AC_MSG_CHECKING([whether $CC supports -W$1])
OLD_CFLAGS="$CFLAGS"
@@ -683,7 +670,7 @@ AC_DEFUN([AC_CHECK_COMPILER_WFLAG],
]
)
AC_DEFUN([AC_CHECK_COMPILER_WNOFLAG],
AC_DEFUN(AC_CHECK_COMPILER_WNOFLAG,
[
AC_MSG_CHECKING([whether $CC supports -Wno-$1])
OLD_CFLAGS="$CFLAGS"
@@ -1314,6 +1301,7 @@ AC_SUBST([PCRE_VERSION])
AC_SUBST([PCRE_LIBS])
AC_SUBST([PCRE_CFLAGS])
#
# Host specific stuff
#
@@ -1368,7 +1356,7 @@ AC_MSG_NOTICE([CFLAGS_AR= $CFLAGS_AR])
AC_MSG_NOTICE([LDFLAGS= $LDFLAGS])
#AC_MSG_NOTICE([PROD_WARN= $PROD_WARN])
#AC_MSG_NOTICE([EXTRA_WARN= $EXTRA_WARN])
AC_MSG_NOTICE([output name = $output_login, $output_char, $output_map, $output_web])
AC_MSG_NOTICE([output name = $output_login, $output_char, $output_map])
###############################################################################
AC_OUTPUT

View File

@@ -1,37 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Captcha Database Table
###########################################################################
#
# Captcha Database Settings
#
###########################################################################
# - Id Index value.
# Filename Name of the BMP image file (with location).
# Answer Correct answer for the captcha (case-sensitive).
# Bonus Bonus Script ran on success. (Default: Level 10 Blessing and Increase Agility)
###########################################################################
Header:
Type: CAPTCHA_DB
Version: 1
Footer:
Imports:
- Path: db/import/captcha_db.yml

View File

@@ -32,169 +32,6 @@ Header:
Type: CASTLE_DB
Version: 1
Body:
# WOE FE castle
- Id: 0
Map: aldeg_cas01
Name: Neuschwanstein
#Name: Noisyubantian
Npc: Agit#aldeg_cas01
- Id: 1
Map: aldeg_cas02
Name: Hohenschwangau
#Name: Hohensyubangawoo
Npc: Agit#aldeg_cas02
- Id: 2
Map: aldeg_cas03
Name: Nuernberg
#Name: Nyirenverk
Npc: Agit#aldeg_cas03
- Id: 3
Map: aldeg_cas04
Name: Wuerzburg
#Name: Byirtsburi
Npc: Agit#aldeg_cas04
- Id: 4
Map: aldeg_cas05
Name: Rothenburg
#Name: Rotenburk
Npc: Agit#aldeg_cas05
- Id: 5
Map: gefg_cas01
Name: Repherion
#Name: Reprion
Npc: Agit#gefg_cas01
- Id: 6
Map: gefg_cas02
Name: Eeyolbriggar
#Name: Yolbriger
Npc: Agit#gefg_cas02
- Id: 7
Map: gefg_cas03
Name: Yesnelph
#Name: Isinlife
Npc: Agit#gefg_cas03
- Id: 8
Map: gefg_cas04
Name: Bergel
#Name: Berigel
Npc: Agit#gefg_cas04
- Id: 9
Map: gefg_cas05
Name: Mersetzdeitz
#Name: Melsedetsu
Npc: Agit#gefg_cas05
- Id: 10
Map: payg_cas01
Name: Bright Arbor
#Name: Mingting
Npc: Agit#payg_cas01
- Id: 11
Map: payg_cas02
Name: Scarlet Palace
#Name: Tiantan
Npc: Agit#payg_cas02
- Id: 12
Map: payg_cas03
Name: Holy Shadow
#Name: Fuying
Npc: Agit#payg_cas03
- Id: 13
Map: payg_cas04
Name: Sacred Altar
#Name: Honglou
Npc: Agit#payg_cas04
- Id: 14
Map: payg_cas05
Name: Bamboo Grove Hill
#Name: Zhulinxian
Npc: Agit#payg_cas05
- Id: 15
Map: prtg_cas01
Name: Kriemhild
#Name: Creamhilt
Npc: Agit#prtg_cas01
- Id: 16
Map: prtg_cas02
Name: Swanhild
#Name: Sbanhealt
Npc: Agit#prtg_cas02
- Id: 17
Map: prtg_cas03
Name: Fadhgridh
#Name: Lazrigees
Npc: Agit#prtg_cas03
- Id: 18
Map: prtg_cas04
Name: Skoegul
#Name: Squagul
Npc: Agit#prtg_cas04
- Id: 19
Map: prtg_cas05
Name: Gondul
#Name: Guindull
Npc: Agit#prtg_cas05
# WOE NGuild castle
- Id: 20
Map: nguild_alde
Name: Earth
Npc: Agit_N01
- Id: 21
Map: nguild_gef
Name: Air
Npc: Agit_N02
- Id: 22
Map: nguild_pay
Name: Water
Npc: Agit_N03
- Id: 23
Map: nguild_prt
Name: Fire
Npc: Agit_N04
# WOE SE castle
- Id: 24
Map: schg_cas01
Name: Himinn
Npc: Manager#schg_cas01
- Id: 25
Map: schg_cas02
Name: Andlangr
Npc: Manager#schg_cas02
- Id: 26
Map: schg_cas03
Name: Viblainn
Npc: Manager#schg_cas03
- Id: 27
Map: schg_cas04
Name: Hljod
Npc: Manager#schg_cas04
- Id: 28
Map: schg_cas05
Name: Skidbladnir
Npc: Manager#schg_cas05
- Id: 29
Map: arug_cas01
Name: Mardol
Npc: Manager#arug_cas01
- Id: 30
Map: arug_cas02
Name: Cyr
Npc: Manager#arug_cas02
- Id: 31
Map: arug_cas03
Name: Horn
Npc: Manager#arug_cas03
- Id: 32
Map: arug_cas04
Name: Gefn
Npc: Manager#arug_cas04
- Id: 33
Map: arug_cas05
Name: Bandis
Npc: Manager#arug_cas05
Footer:
Imports:
- Path: db/pre-re/castle_db.yml

View File

@@ -1,60 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Enchantgrade Database
###########################################################################
#
# Enchantgrade Settings
#
###########################################################################
# - Type Item type.
# Levels: Enchantgrade settings per item level.
# - Level Item level.
# Grades: Enchantgrade settings per grade level.
# - Grade Enchantgrade level.
# Refine Required refine level.
# Chance Base chance of success out of 0~10000.
# Bonus Enchantgrade bonus. (Default: 0)
# AnnounceSuccess Announce on upgrade success. (Default: true)
# AnnounceFail Announce on upgrade failure. (Default: false)
# Announce Announce on upgrade success and failure.
# Catalyst: Catalyst item to increase chance of success.
# Item The item that can be used.
# AmountPerStep Amount of Item needed.
# Set to 0 to disable the catalyst.
# MaximumSteps Maximum amount of times Item can be used.
# ChanceIncrease Amount at which the chance increases for each Item used.
# Options: Success chance based on cost type.
# - Option Index of the client option.
# Item Required item.
# Amount Amount of required item. (Default: 1)
# Set to 0 to remove an option.
# Price Amount of zeny required. (Default: 0)
# BreakingRate Chance of item breaking out of 0~10000. (Default: 0)
# DowngradeAmount Number of refine levels reduced on failure. (Default: 0)
###########################################################################
Header:
Type: ENCHANTGRADE_DB
Version: 2
Footer:
Imports:
- Path: db/re/enchantgrade.yml
Mode: Renewal
- Path: db/import/enchantgrade.yml

View File

@@ -1,33 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Captcha Database Table
###########################################################################
#
# Captcha Database Settings
#
###########################################################################
# - Id Index value.
# Filename Name of the BMP image file (with location).
# Answer Correct answer for the captcha (case-sensitive).
# Bonus Bonus Script ran on success. (Default: Level 10 Blessing and Increase Agility)
###########################################################################
Header:
Type: CAPTCHA_DB
Version: 1

View File

@@ -1,54 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Enchantgrade Database
###########################################################################
#
# Enchantgrade Settings
#
###########################################################################
# - Type Item type.
# Levels: Enchantgrade settings per item level.
# - Level Item level.
# Grades: Enchantgrade settings per grade level.
# - Grade Enchantgrade level.
# Refine Required refine level.
# Chance Base chance of success out of 0~10000.
# Bonus Enchantgrade bonus. (Default: 0)
# AnnounceSuccess Announce on upgrade success. (Default: true)
# AnnounceFail Announce on upgrade failure. (Default: false)
# Announce Announce on upgrade success and failure.
# Catalyst: Catalyst item to increase chance of success.
# Item The item that can be used.
# AmountPerStep Amount of Item needed.
# Set to 0 to disable the catalyst.
# MaximumSteps Maximum amount of times Item can be used.
# ChanceIncrease Amount at which the chance increases for each Item used.
# Options: Success chance based on cost type.
# - Option Index of the client option.
# Item Required item.
# Amount Amount of required item. (Default: 1)
# Set to 0 to remove an option.
# Price Amount of zeny required. (Default: 0)
# BreakingRate Chance of item breaking out of 0~10000. (Default: 0)
# DowngradeAmount Number of refine levels reduced on failure. (Default: 0)
###########################################################################
Header:
Type: ENCHANTGRADE_DB
Version: 2

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
#Body:
# THQ Quest Items

View File

@@ -1,72 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Enchant Database
###########################################################################
#
# Item Enchant Settings
#
###########################################################################
# - Id Client side LUA index.
# TargetItems: List of possible target items.
# <item name> Item name of possible target item.
# MinimumRefine Minimum refine of the target item. (Default: 0)
# MinimumEnchantgrade Minimum enchant grade of the target item. (Default: 0)
# AllowRandomOptions Enable random options in the target item. (Default: true)
# Reset: Reset options. (Default: null)
# Chance Chance of successful reset. (Default: 0)
# Price Price for resetting enchants. (Default: 0)
# Materials: Items required for resetting enchants. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Order: Order in which the slots can be enchanted.
# Overwriting via import will clear the currently defined order.
# - Slot Number of the slot (0-3).
# Slots: Enchant options.
# - Slot Number of the slot (0-3).
# Price Price required for the normal enchant process. (Default: 0)
# Materials: Items required for the normal enchant process. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Chance Base chance for the normal enchant process. (Default: 100000)
# EnchantgradeBonus: Additional bonus chance increase per enchant grade. (Default: null)
# - Enchantgrade Enchant grade required for the bonus.
# Chance Additional chance that is added to the base chance.
# Enchants: Available enchants for the normal enchant process per enchant grade. (Default: null)
# - Enchantgrade Enchant grade of the item to be enchanted.
# Items: Available enchants for the normal enchant process on the given enchant grade. (Default: null)
# - Item Item name of the available enchant item.
# Chance Chance to get this specific enchant item.
# PerfectEnchants: Available perfect enchants (100% chance + selectable) for this slot. (Default: null)
# - Item Item name of the available enchant item.
# Price Price required for this perfect enchant. (Default: 0)
# Materials: Items required for this perfect enchant. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Upgrades: Available enchant upgrades for this slot. (Default: null)
# - Enchant Item name of the enchant item available for upgrade.
# Upgrade Item name of the enchant it can be upgrade to.
# Price Price required for this enchant upgrade. (Default: 0)
# Materials: Items required for this enchant upgrade (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
###########################################################################
Header:
Type: ITEM_ENCHANT_DB
Version: 1

View File

@@ -1,39 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Package Database
###########################################################################
#
# Item Package Settings
#
###########################################################################
# - Item Item that triggers Item Package Selection.
# Groups: Groups that can be selected.
# - Group Group ID that can be selected (has to match the client's LUA file).
# Items: Items that will be given out.
# - Item Item that will be given out.
# Amount Amount of the item. (Default: 1)
# To remove an item via import set amount to 0.
# RentalHours Rental time in hours. (Default: 0)
# Refine Refine level of the item. (Default: 0)
# RandomOptionGroup Name of the random option group that will be applied. (Default: none)
###########################################################################
Header:
Type: ITEM_PACKAGE_DB
Version: 1

View File

@@ -1,44 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Reform Database
###########################################################################
#
# Item Reform Settings
#
###########################################################################
# - Item Item that triggers Item Reform UI.
# BaseItems: Items that can be reformed.
# - BaseItem Item that can be reformed.
# MinimumRefine Minimum refine level of the required items. (Default: 0)
# MaximumRefine Maximum refine level of the required items. (Default: MAX_REFINE)
# RequiredRandomOptions Amount of random options have to be in the item. (Default: 0)
# CardsAllowed Allow cards in the target item. (Default: true)
# Materials: Additional items needed for the reformation. (Default: none)
# - Material Material item that is needed.
# Amount Amount of the material item that is needed. (Default: 1)
# ResultItem Item after the reform.
# ChangeRefine Increase or decrease the refine during reformation. (Default: 0)
# RandomOptionGroup Name of the random option group that will be applied. (Default: none)
# ClearSlots Remove cards and socket enchants during reformation. (Default: false)
# RemoveEnchantgrade Remove enchantgrade during reformation. (Default: false)
###########################################################################
Header:
Type: ITEM_REFORM_DB
Version: 1

View File

@@ -25,9 +25,9 @@
# - Jobs: List of jobs associated to group.
# Job Job name.
# MaxWeight Base maximum weight. (Default: 20000)
# HpFactor Exponential HP increase. Per base level: [HpFactor * BaseLv / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 0)
# HpIncrease Linear HP increase. Per base level: [HpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SpIncrease Linear SP increase. Per base level: [SpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# HPFactor HP increase per base level. Floor(HPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 20000)
# HPMultiplicator Base HP value. 35 + BaseLv * (HPMultiplicator / 100). Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SPFactor SP increase per job level. Floor(SPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# BaseASPD: Base ASPD for each weapon type. (Default: 2000)
# Weapon Weapon type with associated ASPD.
# BonusStats: Job level bonus stats/traits.
@@ -78,7 +78,7 @@
Header:
Type: JOB_STATS
Version: 2
Version: 1
#Body:
###########################################################################

View File

@@ -1,44 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Map Drop Database
###########################################################################
#
# Map Drop Settings
#
###########################################################################
# - Map Name of the map.
# GlobalDrops Drops for all monsters on this map. (Default: empty)
# These drops are unaffected by server drop rate and cannot be stolen.
# - Index Unique index of the drop.
# Item Item name.
# Rate Drop rate of item.
# RandomOptionGroup Random Option Group applied to item on drop. (Default: None)
# SpecificDrops Drops for specific monsters on this map. (Default: empty)
# - Monster Monster name.
# Drops Drops for this specific monster. (Default: empty)
# These drops are unaffected by server drop rate and cannot be stolen.
# - Index Unique index of the drop.
# Item Item name.
# Rate Drop rate of item.
# RandomOptionGroup Random Option Group applied to item on drop. (Default: None)
###########################################################################
Header:
Type: MAP_DROP_DB
Version: 1

View File

@@ -33,7 +33,6 @@
# 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)
# Robe Item name of robe (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
@@ -69,7 +68,6 @@ Header:
# HeadTop: Sahkkat
# HeadMid: Sunglasses
# HeadLow: Cigar
# Robe: Archangel_Wing
# Options:
# Falcon: true
# Valaris Worshiper

View File

@@ -43,9 +43,6 @@
// afterskill After mob casts the specified skill.
// casttargeted When a target is in cast range (no condition value).
// rudeattacked When mob is rude attacked (no condition value).
// mobnearbygt When monsters in range become greater than specified number.
// groundattacked When mob is hit by ground targeted skill (no condition value).
// damagedgt When single attack deals greater damage than specified number.
//
// Status abnormalities specified through the statuson/statusoff system:
// anybad (any type of state change) / stone / freeze / stun / sleep /

View File

@@ -22,29 +22,37 @@
# Quest Settings
#
###########################################################################
# - Id Quest ID.
# Title Quest title.
# TimeLimit Amount of time before the quest expires. (Default: 0)
# Targets: Quest objective target. (Default: null)
# - Mob Name of monster to kill.
# 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)
# Size Monster size target. (Default: All)
# Element Monster element target. (Default: 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 Map name where kills are counted. (Default: All)
# MapName Displayed map name in quest UI. (Default: empty string)
# MapMobTargets List of monster names. Only names in the list will increase the kill counter. Only active when Id is used. (Default: all monsters)
# <name>: <bool> Monster name and whether the monster is added or removed from the list.
# 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%)
# - 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 Map name where kills are counted. (Default any location)
# On normal maps only kills of permanently spawned monsters increase the counter.
# On instance maps all monster kills increase the counter.
# 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: 3
Version: 2

View File

@@ -30,8 +30,6 @@
# Bonus Refinement bonus. (Default: 0)
# RandomBonus Extra refinement bonus of 0~RandomBonus stacked on Bonus. (Default: 0)
# BlacksmithBlessingAmount Amount of Blacksmith Blessing required. (Default: 0)
# BroadcastSuccess Broadcast to the whole server when a refine attempt at this level succeeds. (Default: false)
# BroadcastFailure Broadcast to the whole server when a refine attempt at this level fails. (Default: false)
# Chances: Success chance based on cost type. (Default: null)
# - Type Refinement cost type based on ore used.
# Rate Chance of success out of 0~10000. (Default: 0)
@@ -43,7 +41,7 @@
Header:
Type: REFINE_DB
Version: 2
Version: 1
###########################################################################
# Event Refine Rates

View File

@@ -1,34 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Database
###########################################################################
#
# Reputation Settings
#
###########################################################################
# - Id Client side index.
# Name Name of the reputation type.
# Variable Name of the variable that will store the reputation. (Default: RepPoints<id>)
# Minimum Minimum amount of points. (Default: INT64_MIN)
# Maximum Maximum amount of points. (Default: INT64_MAX)
###########################################################################
Header:
Type: REPUTATION_DB
Version: 1

View File

@@ -1,33 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Reputation Group Database
###########################################################################
#
# Reputation Group Settings
#
###########################################################################
# - Id Client side group index.
# ScriptName Unused? Used for "ID" in client
# Name Visible name in window
# ReputeList List of Reputations
###########################################################################
Header:
Type: REPUTATION_GROUP_DB
Version: 1

View File

@@ -35,11 +35,10 @@
# MinRate Minimum rate after status change reduction (10000 = 100%). (Default: 0)
# MinDuration Minimum duration in milliseconds after status change reduction. (Default: 1)
# Fail: List of Status Changes that causes the status to fail to activate. (Optional)
# EndOnStart: List of Status Changes that will end when the status activates. (Optional)
# End: List of Status Changes that will end when the status activates. (Optional)
# EndReturn: List of Status Changes that will end when the status activates and won't give its effect. (Optional)
# EndOnEnd: List of Status Changes that will end when the status becomes inactive. (Optional)
###########################################################################
Header:
Type: STATUS_DB
Version: 3
Version: 2

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
Footer:
Imports:

View File

@@ -1,78 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Enchant Database
###########################################################################
#
# Item Enchant Settings
#
###########################################################################
# - Id Client side LUA index.
# TargetItems: List of possible target items.
# <item name> Item name of possible target item.
# MinimumRefine Minimum refine of the target item. (Default: 0)
# MinimumEnchantgrade Minimum enchant grade of the target item. (Default: 0)
# AllowRandomOptions Enable random options in the target item. (Default: true)
# Reset: Reset options. (Default: null)
# Chance Chance of successful reset. (Default: 0)
# Price Price for resetting enchants. (Default: 0)
# Materials: Items required for resetting enchants. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Order: Order in which the slots can be enchanted.
# Overwriting via import will clear the currently defined order.
# - Slot Number of the slot (0-3).
# Slots: Enchant options.
# - Slot Number of the slot (0-3).
# Price Price required for the normal enchant process. (Default: 0)
# Materials: Items required for the normal enchant process. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Chance Base chance for the normal enchant process. (Default: 100000)
# EnchantgradeBonus: Additional bonus chance increase per enchant grade. (Default: null)
# - Enchantgrade Enchant grade required for the bonus.
# Chance Additional chance that is added to the base chance.
# Enchants: Available enchants for the normal enchant process per enchant grade. (Default: null)
# - Enchantgrade Enchant grade of the item to be enchanted.
# Items: Available enchants for the normal enchant process on the given enchant grade. (Default: null)
# - Item Item name of the available enchant item.
# Chance Chance to get this specific enchant item.
# PerfectEnchants: Available perfect enchants (100% chance + selectable) for this slot. (Default: null)
# - Item Item name of the available enchant item.
# Price Price required for this perfect enchant. (Default: 0)
# Materials: Items required for this perfect enchant. (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
# Upgrades: Available enchant upgrades for this slot. (Default: null)
# - Enchant Item name of the enchant item available for upgrade.
# Upgrade Item name of the enchant it can be upgrade to.
# Price Price required for this enchant upgrade. (Default: 0)
# Materials: Items required for this enchant upgrade (Default: null)
# - Material Item name of the required item.
# Amount Amount of the required item. (Default: 1)
###########################################################################
Header:
Type: ITEM_ENCHANT_DB
Version: 1
Footer:
Imports:
- Path: db/re/item_enchant.yml
Mode: Renewal
- Path: db/import/item_enchant.yml

View File

@@ -1,45 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Package Database
###########################################################################
#
# Item Package Settings
#
###########################################################################
# - Item Item that triggers Item Package Selection.
# Groups: Groups that can be selected.
# - Group Group ID that can be selected (has to match the client's LUA file).
# Items: Items that will be given out.
# - Item Item that will be given out.
# Amount Amount of the item. (Default: 1)
# To remove an item via import set amount to 0.
# RentalHours Rental time in hours. (Default: 0)
# Refine Refine level of the item. (Default: 0)
# RandomOptionGroup Name of the random option group that will be applied. (Default: none)
###########################################################################
Header:
Type: ITEM_PACKAGE_DB
Version: 1
Footer:
Imports:
- Path: db/re/item_packages.yml
Mode: Renewal
- Path: db/import/item_packages.yml

View File

@@ -1,50 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Item Reform Database
###########################################################################
#
# Item Reform Settings
#
###########################################################################
# - Item Item that triggers Item Reform UI.
# BaseItems: Items that can be reformed.
# - BaseItem Item that can be reformed.
# MinimumRefine Minimum refine level of the required items. (Default: 0)
# MaximumRefine Maximum refine level of the required items. (Default: MAX_REFINE)
# RequiredRandomOptions Amount of random options have to be in the item. (Default: 0)
# CardsAllowed Allow cards in the target item. (Default: true)
# Materials: Additional items needed for the reformation. (Default: none)
# - Material Material item that is needed.
# Amount Amount of the material item that is needed. (Default: 1)
# ResultItem Item after the reform.
# ChangeRefine Increase or decrease the refine during reformation. (Default: 0)
# RandomOptionGroup Name of the random option group that will be applied. (Default: none)
# ClearSlots Remove cards and socket enchants during reformation. (Default: false)
# RemoveEnchantgrade Remove enchantgrade during reformation. (Default: false)
###########################################################################
Header:
Type: ITEM_REFORM_DB
Version: 1
Footer:
Imports:
- Path: db/re/item_reform.yml
Mode: Renewal
- Path: db/import/item_reform.yml

View File

@@ -23,11 +23,11 @@
#
###########################################################################
# - Jobs: List of jobs associated to group.
# Job Job name.
# Job Job ID.
# MaxWeight Base maximum weight. (Default: 20000)
# HpFactor Exponential HP increase. Per base level: [HpFactor * BaseLv / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 0)
# HpIncrease Linear HP increase. Per base level: [HpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SpIncrease Linear SP increase. Per base level: [SpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# HPFactor HP increase per base level. Floor(HPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 20000)
# HPMultiplicator Base HP value. 35 + BaseLv * (HPMultiplicator / 100). Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SPFactor SP increase per job level. Floor(SPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# BaseASPD: Base ASPD for each weapon type. (Default: 2000)
# Weapon Weapon type with associated ASPD.
# BonusStats: Job level bonus stats/traits.
@@ -78,7 +78,7 @@
Header:
Type: JOB_STATS
Version: 2
Version: 1
Footer:
Imports:

Binary file not shown.

View File

@@ -1,50 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2022 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Map Drop Database
###########################################################################
#
# Map Drop Settings
#
###########################################################################
# - Map Name of the map.
# GlobalDrops Drops for all monsters on this map. (Default: empty)
# These drops are unaffected by server drop rate and cannot be stolen.
# - Index Unique index of the drop.
# Item Item name.
# Rate Drop rate of item.
# RandomOptionGroup Random Option Group applied to item on drop. (Default: None)
# SpecificDrops Drops for specific monsters on this map. (Default: empty)
# - Monster Monster name.
# Drops Drops for this specific monster. (Default: empty)
# These drops are unaffected by server drop rate and cannot be stolen.
# - Index Unique index of the drop.
# Item Item name.
# Rate Drop rate of item.
# RandomOptionGroup Random Option Group applied to item on drop. (Default: None)
###########################################################################
Header:
Type: MAP_DROP_DB
Version: 1
Footer:
Imports:
- Path: db/re/map_drops.yml
Mode: Renewal
- Path: db/import/map_drops.yml

View File

@@ -1143,63 +1143,6 @@ que_thr
tur_d04ia
tur_d04ib
wolfvill
icecastle
icas_in
jor_tail
jor_back1
jor_back2
jor_back3
jor_nest
jor_dun01
jor_dun02
jor_dun03
jor_ab01
jor_ab02
jor_que
air_if
1@iwp
1@jorchs
1@jorlab
1@whl
1@exhn
1@exds
2@exds
1@exse
1@exnw
1@exsr
1@exsh
bl_grass
bl_lava
bl_ice
bl_death
clock_01
rag_fes
rag_fes_a
memohall
1@dime
prt_elib
1@vrcas
1@vrev
1@vrgen
1@vrpo
1@pdb
airplane2
vr_bob
hero_dun1
hero_ent1
hero_ent2
hero_ent3
hero_in1
hero_in2
hero_in3
hero_in4
hero_lb
hero_out1
hero_out2
hero_out3
hero_out4
hero_tra
herosria
//======================================================================================
// - Other/Extra maps -

View File

@@ -126,26 +126,6 @@ Body:
Dialog: This is the truth! Hahahahah!
- Id: 58 # !todo Unknown dialogue
Dialog: Attack!
- Id: 60
Dialog: Go !! Ultra Critical Bash EX !!
- Id: 61
Dialog: Come on!! Hell's Fireball !!
- Id: 62
Dialog: Kneel before me!! The vast power of capitalism !!
- Id: 63
Dialog: You can't run from me!! Double Strafe, pierce through my enemies !!
- Id: 64
Dialog: I'm gonna make you sick!!! Ultimate generational Envenom !!
- Id: 65
Dialog: I'll roll over you!! Ultimate Decrease Agility GX !!
- Id: 67
Dialog: Dark cast that narrows the field of vision! It can only be removed with a green potion!
- Id: 68
Dialog: A poison that continuously lowers HP for a certain period of time! But it is not released with a green herb!
- Id: 69
Dialog: Let's start with recovery!
- Id: 70
Dialog: Silence that cannot use skills! You can only escape by eating green potions!
Footer:
Imports:

View File

@@ -31,3 +31,208 @@
Header:
Type: CASTLE_DB
Version: 1
Body:
# WOE FE castle
- Id: 0
Map: aldeg_cas01
Name: Neuschwanstein
#Name: Noisyubantian
Npc: Agit#aldeg_cas01
- Id: 1
Map: aldeg_cas02
Name: Hohenschwangau
#Name: Hohensyubangawoo
Npc: Agit#aldeg_cas02
- Id: 2
Map: aldeg_cas03
Name: Nuernberg
#Name: Nyirenverk
Npc: Agit#aldeg_cas03
- Id: 3
Map: aldeg_cas04
Name: Wuerzburg
#Name: Byirtsburi
Npc: Agit#aldeg_cas04
- Id: 4
Map: aldeg_cas05
Name: Rothenburg
#Name: Rotenburk
Npc: Agit#aldeg_cas05
- Id: 5
Map: gefg_cas01
Name: Repherion
#Name: Reprion
Npc: Agit#gefg_cas01
- Id: 6
Map: gefg_cas02
Name: Eeyolbriggar
#Name: Yolbriger
Npc: Agit#gefg_cas02
- Id: 7
Map: gefg_cas03
Name: Yesnelph
#Name: Isinlife
Npc: Agit#gefg_cas03
- Id: 8
Map: gefg_cas04
Name: Bergel
#Name: Berigel
Npc: Agit#gefg_cas04
- Id: 9
Map: gefg_cas05
Name: Mersetzdeitz
#Name: Melsedetsu
Npc: Agit#gefg_cas05
- Id: 10
Map: payg_cas01
Name: Bright Arbor
#Name: Mingting
Npc: Agit#payg_cas01
- Id: 11
Map: payg_cas02
Name: Scarlet Palace
#Name: Tiantan
Npc: Agit#payg_cas02
- Id: 12
Map: payg_cas03
Name: Holy Shadow
#Name: Fuying
Npc: Agit#payg_cas03
- Id: 13
Map: payg_cas04
Name: Sacred Altar
#Name: Honglou
Npc: Agit#payg_cas04
- Id: 14
Map: payg_cas05
Name: Bamboo Grove Hill
#Name: Zhulinxian
Npc: Agit#payg_cas05
- Id: 15
Map: prtg_cas01
Name: Kriemhild
#Name: Creamhilt
Npc: Agit#prtg_cas01
- Id: 16
Map: prtg_cas02
Name: Swanhild
#Name: Sbanhealt
Npc: Agit#prtg_cas02
- Id: 17
Map: prtg_cas03
Name: Fadhgridh
#Name: Lazrigees
Npc: Agit#prtg_cas03
- Id: 18
Map: prtg_cas04
Name: Skoegul
#Name: Squagul
Npc: Agit#prtg_cas04
- Id: 19
Map: prtg_cas05
Name: Gondul
#Name: Guindull
Npc: Agit#prtg_cas05
# WOE NGuild castle
- Id: 20
Map: nguild_alde
Name: Earth
Npc: Agit_N01
- Id: 21
Map: nguild_gef
Name: Air
Npc: Agit_N02
- Id: 22
Map: nguild_pay
Name: Water
Npc: Agit_N03
- Id: 23
Map: nguild_prt
Name: Fire
Npc: Agit_N04
# WOE SE castle
- Id: 24
Map: schg_cas01
Name: Himinn
Npc: Manager#schg_cas01
- Id: 25
Map: schg_cas02
Name: Andlangr
Npc: Manager#schg_cas02
- Id: 26
Map: schg_cas03
Name: Viblainn
Npc: Manager#schg_cas03
- Id: 27
Map: schg_cas04
Name: Hljod
Npc: Manager#schg_cas04
- Id: 28
Map: schg_cas05
Name: Skidbladnir
Npc: Manager#schg_cas05
- Id: 29
Map: arug_cas01
Name: Mardol
Npc: Manager#arug_cas01
- Id: 30
Map: arug_cas02
Name: Cyr
Npc: Manager#arug_cas02
- Id: 31
Map: arug_cas03
Name: Horn
Npc: Manager#arug_cas03
- Id: 32
Map: arug_cas04
Name: Gefn
Npc: Manager#arug_cas04
- Id: 33
Map: arug_cas05
Name: Bandis
Npc: Manager#arug_cas05
# WOE TE castle
- Id: 34
Map: te_aldecas1
Name: Kafragarten 1
Npc: Manager_TE#Glaris
- Id: 35
Map: te_aldecas2
Name: Kafragarten 2
Npc: Manager_TE#Defolty
- Id: 36
Map: te_aldecas3
Name: Kafragarten 3
Npc: Manager_TE#Sorin
- Id: 37
Map: te_aldecas4
Name: Kafragarten 4
Npc: Manager_TE#Bennit
- Id: 38
Map: te_aldecas5
Name: Kafragarten 5
Npc: Manager_TE#W
- Id: 39
Map: te_prtcas01
Name: Gloria 1
Npc: Manager_TE#Gaebolg
- Id: 40
Map: te_prtcas02
Name: Gloria 2
Npc: Manager_TE#Richard
- Id: 41
Map: te_prtcas03
Name: Gloria 3
Npc: Manager_TE#Wigner
- Id: 42
Map: te_prtcas04
Name: Gloria 4
Npc: Manager_TE#Heine
- Id: 43
Map: te_prtcas05
Name: Gloria 5
Npc: Manager_TE#Nerious

View File

@@ -67,7 +67,7 @@ Body:
- Id: 3
Name: Orc's Memory
Enter:
Map: 1@orcs
Map: 1@orcs
X: 179
Y: 15
AdditionalMaps:

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
Footer:
Imports:

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
Body:
- Id: 1101
@@ -845,6 +844,7 @@ Body:
Refineable: true
Script: |
skill "TF_DOUBLE",5;
bonus bDoubleRate,25;
bonus2 bAddRace,RC_DemiHuman,5;
bonus2 bAddRace,RC_Player_Human,5;
- Id: 1131
@@ -10432,9 +10432,8 @@ Body:
bonus bDex,1;
bonus bAtkEle,Ele_Undead;
bonus bMatkRate,20;
.@r = getrefine();
bonus3 bAutoSpellWhenHit,"NPC_WIDECURSE",5,10+.@r;
if (.@r>=9) {
bonus3 bAutoSpellWhenHit,"NPC_WIDECURSE",5,10+getrefine();
if (getrefine()>=9) {
bonus bMatkRate,3;
bonus bMaxSP,300;
}
@@ -10486,9 +10485,8 @@ Body:
Script: |
bonus bInt,4;
bonus bMatkRate,15;
.@r = getrefine();
bonus2 bIgnoreMdefClassRate,Class_Normal,10+.@r;
bonus2 bIgnoreMdefClassRate,Class_Boss,10+.@r;
bonus2 bIgnoreMdefClassRate,Class_Normal,10+getrefine();
bonus2 bIgnoreMdefClassRate,Class_Boss,10+getrefine();
- Id: 1627
AegisName: Staffy
Name: Staffy
@@ -10783,10 +10781,9 @@ Body:
bonus bInt,3;
bonus bDex,3;
bonus bMatkRate,20;
.@r = getrefine();
bonus2 bIgnoreMdefClassRate,Class_Normal,.@r;
bonus2 bIgnoreMdefClassRate,Class_Boss,.@r;
bonus bDelayRate,-(.@r*3/2);
bonus2 bIgnoreMdefClassRate,Class_Normal,getrefine();
bonus2 bIgnoreMdefClassRate,Class_Boss,getrefine();
bonus bDelayRate,-(getrefine()*3/2);
- Id: 1637
AegisName: Eraser
Name: Eraser
@@ -10911,14 +10908,12 @@ Body:
NoMail: true
NoAuction: true
Script: |
bonus bMatkRate,15;
bonus2 bMagicAddRace,RC_DemiHuman,15;
bonus2 bMagicAddRace,RC_Player_Human,15;
.@r = getrefine();
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,25 + ((.@r>5) ? 5 : 0);
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,25 + ((.@r>5) ? 5 : 0);
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,25 + ((getrefine()>5) ? 5 : 0);
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,25 + ((getrefine()>5) ? 5 : 0);
bonus bUnbreakableWeapon;
if (.@r>8) {
if (getrefine()>8) {
bonus bCastrate,-5;
bonus bDelayRate,-5;
bonus bMatkRate,5;
@@ -10953,19 +10948,17 @@ Body:
NoMail: true
NoAuction: true
Script: |
bonus bMatkRate,15;
bonus bHealPower,14;
bonus bDelayRate,-10;
bonus bUnbreakableWeapon;
.@r = getrefine();
if (.@r>5) {
if (getrefine()>5) {
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,5;
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,5;
bonus bHealPower,5+(.@r-5)*2;
bonus bHealPower,5+(getrefine()-5)*2;
}
if (.@r>8)
if (getrefine()>8)
bonus5 bAutoSpellOnSkill,"AL_HEAL","AL_HEAL",10,100,1;
if (.@r>9) {
if (getrefine()>9) {
bonus bHealPower,10;
}
- Id: 1642
@@ -11023,11 +11016,10 @@ Body:
EquipLevelMin: 70
Refineable: true
Script: |
bonus bMatkRate,15;
bonus bMatk,15;
bonus bInt,4;
.@r = getrefine();
if (.@r>5) {
bonus bInt,.@r-5;
if (getrefine()>5) {
bonus bInt,getrefine()-5;
bonus bMaxHP,-200;
bonus bMaxSP,-100;
}
@@ -11065,9 +11057,8 @@ Body:
Script: |
bonus bInt,4;
bonus bMatkRate,15;
.@r = getrefine();
bonus2 bIgnoreMdefClassRate,Class_Normal,10+.@r;
bonus2 bIgnoreMdefClassRate,Class_Boss,10+.@r;
bonus2 bIgnoreMdefClassRate,Class_Normal,10+getrefine();
bonus2 bIgnoreMdefClassRate,Class_Boss,10+getrefine();
- Id: 1645
AegisName: Lich_Bone_Wand_M
Name: Lich's Bone Wand
@@ -11105,9 +11096,8 @@ Body:
bonus bDex,1;
bonus bAtkEle,Ele_Undead;
bonus bMatkRate,20;
.@r = getrefine();
bonus3 bAutoSpellWhenHit,"NPC_WIDECURSE",5,10+.@r;
if (.@r>=9) {
bonus3 bAutoSpellWhenHit,"NPC_WIDECURSE",5,10+getrefine();
if (getrefine()>=9) {
bonus bMatkRate,3;
bonus bMaxSP,300;
}
@@ -11135,10 +11125,9 @@ Body:
Script: |
bonus bInt,4;
bonus bMatkRate,15;
.@r = getrefine();
bonus bMdef,.@r;
bonus2 bSkillAtk,"WZ_STORMGUST",.@r;
if (.@r>9)
bonus bMdef,getrefine();
bonus2 bSkillAtk,"WZ_STORMGUST",getrefine();
if (getrefine()>9)
bonus2 bCastrate,"WZ_STORMGUST",-8;
- Id: 1647
AegisName: Croce_Staff
@@ -14234,12 +14223,11 @@ Body:
EquipLevelMin: 80
Refineable: true
Script: |
.@r = getrefine();
bonus bMatkRate,25+(.@r/2);
bonus bMatkRate,25+getrefine()/2;
bonus bInt,3;
bonus bAgi,10;
bonus bUseSPrate,(.@r*2);
bonus3 bAutoSpellWhenHit,"WZ_JUPITEL",5,(.@r*20);
bonus bUseSPrate,(getrefine()*2);
bonus3 bAutoSpellWhenHit,"WZ_JUPITEL",5,(getrefine()*20);
bonus2 bCastrate,"HW_MAGICPOWER",-50;
- Id: 2001
AegisName: Divine_Cross
@@ -14293,20 +14281,19 @@ Body:
NoMail: true
NoAuction: true
Script: |
.@r = getrefine();
bonus bMatkRate,15 + .@r;
bonus bMatkRate,getrefine();
bonus2 bMagicAddRace,RC_DemiHuman,15;
bonus2 bMagicAddRace,RC_Player_Human,15;
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,25;
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,25;
bonus bUnbreakableWeapon;
if (.@r>5) {
bonus2 bMagicAddRace,RC_DemiHuman,(.@r-5)*2;
bonus2 bMagicAddRace,RC_Player_Human,(.@r-5)*2;
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,5+(.@r-5)*2;
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,5+(.@r-5)*2;
if (getrefine()>5) {
bonus2 bMagicAddRace,RC_DemiHuman,(getrefine()-5)*2;
bonus2 bMagicAddRace,RC_Player_Human,(getrefine()-5)*2;
bonus2 bIgnoreMdefRaceRate,RC_DemiHuman,5+(getrefine()-5)*2;
bonus2 bIgnoreMdefRaceRate,RC_Player_Human,5+(getrefine()-5)*2;
}
if (.@r>8) {
if (getrefine()>8) {
bonus5 bAutoSpellOnSkill,"WZ_STORMGUST","MG_SAFETYWALL",10,200,1;
bonus5 bAutoSpellOnSkill,"WZ_METEOR","MG_SAFETYWALL",10,200,1;
bonus5 bAutoSpellOnSkill,"WZ_VERMILION","MG_SAFETYWALL",10,200,1;
@@ -14339,12 +14326,11 @@ Body:
NoMail: true
NoAuction: true
Script: |
.@r = getrefine();
bonus bMatkRate,25+(.@r/2);
bonus bMatkRate,25+getrefine()/2;
bonus bInt,3;
bonus bAgi,10;
bonus bUseSPrate,(.@r*2);
bonus3 bAutoSpellWhenHit,"WZ_JUPITEL",5,(.@r*20);
bonus bUseSPrate,(getrefine()*2);
bonus3 bAutoSpellWhenHit,"WZ_JUPITEL",5,(getrefine()*20);
bonus2 bCastrate,"HW_MAGICPOWER",-50;
- Id: 2004
AegisName: Kronos
@@ -14367,10 +14353,9 @@ Body:
EquipLevelMin: 50
Refineable: true
Script: |
.@r = getrefine();
bonus bMatkRate,20;
bonus bInt,3+(.@r/2);
bonus bMaxHP,300+(50*.@r/2);
bonus bInt,3+(getrefine()/2);
bonus bMaxHP,300+(50*getrefine()/2);
autobonus "{ bonus bMatkRate,12; bonus buseSPRate,20; }",1,5000,BF_MAGIC,"{ specialeffect2 EF_ENHANCE; }";
- Id: 2005
AegisName: Dea_Staff
@@ -14399,6 +14384,29 @@ Body:
bonus bInt,6;
bonus bVit,2;
autobonus3 "{ }",20,1000,"AL_HEAL","{ specialeffect2 EF_MAGICALATTHIT; heal 0,200; }";
- Id: 2006
AegisName: G_Staff_Of_Light
Name: Staff Of Light
Type: Weapon
SubType: 2hStaff
Buy: 20
Weight: 1900
Attack: 80
Range: 1
Jobs:
Mage: true
Sage: true
SoulLinker: true
Wizard: true
Locations:
Both_Hand: true
WeaponLevel: 4
EquipLevelMin: 60
Refineable: true
Script: |
/* bonus bMatk,150;
*/ bonus bAtkEle,Ele_Holy;
bonus bInt,6;
- Id: 2101
AegisName: Guard
Name: Guard
@@ -24694,6 +24702,7 @@ Body:
Script: |
bonus bMaxSP,100;
skill "TF_DOUBLE",3;
bonus bDoubleRate,15;
skill "TF_STEAL",1;
skill "TF_HIDING",1;
skill "TF_POISON",1;
@@ -28291,6 +28300,8 @@ Body:
bonus bMaxHP,50;
bonus bMaxSP,10;
skill "AL_RUWACH",1;
UnEquipScript: |
sc_end SC_RUWACH;
- Id: 5213
AegisName: Black_Bunny_Band
Name: Sheila Hairnet
@@ -29758,6 +29769,7 @@ Body:
bonus bMaxHP,50;
bonus bMaxSP,50;
skill "TF_DOUBLE",2;
bonus bDoubleRate,10;
bonus2 bSubRace,RC_DemiHuman,3;
bonus2 bSubRace,RC_Player_Human,3;
- Id: 5284
@@ -31591,6 +31603,8 @@ Body:
Script: |
bonus bVit,1;
skill "AL_ANGELUS",1;
UnEquipScript: |
sc_end SC_ANGELUS;
- Id: 5383
AegisName: Hunting_Cap
Name: Hunter's Cap
@@ -31718,6 +31732,7 @@ Body:
NoGuildStorage: true
Script: |
skill "TF_DOUBLE",5;
bonus bDoubleRate,25;
- Id: 5389
AegisName: Angel_Spirit
Name: Angel Spirit
@@ -34160,7 +34175,9 @@ Body:
View: 525
Script: |
bonus bDex,2;
skill "TF_DOUBLE",5;
.@bonus = max(getskilllv("TF_DOUBLE"), 5);
skill "TF_DOUBLE",.@bonus;
bonus bDoubleRate,.@bonus * 5;
- Id: 5532
AegisName: Pirate_Dagger_J
Name: Pirate Dagger
@@ -39950,6 +39967,7 @@ Body:
WeaponLevel: 4
Script: |
skill "TF_DOUBLE",5;
bonus bDoubleRate,25;
bonus2 bAddRace,RC_DemiHuman,40;
bonus2 bAddRace,RC_Player_Human,40;
- Id: 13408
@@ -40336,16 +40354,14 @@ Body:
NoMail: true
NoAuction: true
Script: |
.@r = getrefine();
bonus bInt,6;
bonus bInt,.@r-5;
bonus bInt,getrefine()-5;
bonus bMatkRate,10;
bonus bUnbreakableWeapon;
if (.@r>5)
if (getrefine()>5)
bonus bUseSPrate,-10;
if (.@r>8)
if (getrefine()>8)
bonus4 bAutoSpellOnSkill,"PA_PRESSURE","PR_LEXAETERNA",1,1000;
if (.@r>9)
if (getrefine()>9)
bonus bInt,5;
- Id: 13419
AegisName: Holy_Saber

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
Body:
- Id: 670
@@ -4027,6 +4026,7 @@ Body:
BuyingStore: true
Script: |
skill "TF_DOUBLE",1;
bonus bDoubleRate,5;
- Id: 4118
AegisName: Petit_Card
Name: Earth Petite Card
@@ -6451,6 +6451,8 @@ Body:
BuyingStore: true
Script: |
bonus3 bAutoSpellWhenHit,"CR_AUTOGUARD",3+7*(getskilllv("CR_AUTOGUARD") == 10),30;
UnEquipScript: |
sc_end SC_AUTOGUARD;
- Id: 4300
AegisName: Chimera_Card
Name: Chimera Card

View File

@@ -44,7 +44,6 @@
# 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)
# Gradable If the item can be graded. (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)
@@ -86,7 +85,7 @@
Header:
Type: ITEM_DB
Version: 3
Version: 2
Body:
- Id: 501

View File

@@ -25,9 +25,9 @@
# - Jobs: List of jobs associated to group.
# Job Job name.
# MaxWeight Base maximum weight. (Default: 20000)
# HpFactor Exponential HP increase. Per base level: [HpFactor * BaseLv / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 0)
# HpIncrease Linear HP increase. Per base level: [HpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SpIncrease Linear SP increase. Per base level: [SpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# HPFactor HP increase per base level. Floor(HPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 20000)
# HPMultiplicator Base HP value. 35 + BaseLv * (HPMultiplicator / 100). Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SPFactor SP increase per job level. Floor(SPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# BaseASPD: Base ASPD for each weapon type. (Default: 2000)
# Weapon Weapon type with associated ASPD.
# BonusStats: Job level bonus stats/traits.
@@ -78,7 +78,7 @@
Header:
Type: JOB_STATS
Version: 2
Version: 1
Body:
- Jobs:

View File

@@ -25,9 +25,9 @@
# - Jobs: List of jobs associated to group.
# Job Job name.
# MaxWeight Base maximum weight. (Default: 20000)
# HpFactor Exponential HP increase. Per base level: [HpFactor * BaseLv / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 0)
# HpIncrease Linear HP increase. Per base level: [HpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SpIncrease Linear SP increase. Per base level: [SpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# HPFactor HP increase per base level. Floor(HPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 20000)
# HPMultiplicator Base HP value. 35 + BaseLv * (HPMultiplicator / 100). Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SPFactor SP increase per job level. Floor(SPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# BaseASPD: Base ASPD for each weapon type. (Default: 2000)
# Weapon Weapon type with associated ASPD.
# BonusStats: Job level bonus stats/traits.
@@ -78,7 +78,7 @@
Header:
Type: JOB_STATS
Version: 2
Version: 1
Body:
- Jobs:

View File

@@ -25,9 +25,9 @@
# - Jobs: List of jobs associated to group.
# Job Job name.
# MaxWeight Base maximum weight. (Default: 20000)
# HpFactor Exponential HP increase. Per base level: [HpFactor * BaseLv / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 0)
# HpIncrease Linear HP increase. Per base level: [HpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SpIncrease Linear SP increase. Per base level: [SpIncrease / 100]. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# HPFactor HP increase per base level. Floor(HPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 20000)
# HPMultiplicator Base HP value. 35 + BaseLv * (HPMultiplicator / 100). Used when macro HP_SP_TABLES is disabled. (Default: 500)
# SPFactor SP increase per job level. Floor(SPFactor / 100) * BaseLv. Used when macro HP_SP_TABLES is disabled. (Default: 100)
# BaseASPD: Base ASPD for each weapon type. (Default: 2000)
# Weapon Weapon type with associated ASPD.
# BonusStats: Job level bonus stats/traits.
@@ -78,7 +78,7 @@
Header:
Type: JOB_STATS
Version: 2
Version: 1
Body:
- Jobs:
@@ -109,7 +109,7 @@ Body:
Swordman: true
MaxWeight: 28000
HpFactor: 70
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -162,7 +162,7 @@ Body:
Mage: true
MaxWeight: 22000
HpFactor: 30
SpIncrease: 600
SpFactor: 600
BaseASPD:
Fist: 500
Dagger: 600
@@ -209,7 +209,7 @@ Body:
Archer: true
MaxWeight: 26000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 600
@@ -255,7 +255,7 @@ Body:
Acolyte: true
MaxWeight: 24000
HpFactor: 40
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Mace: 600
@@ -303,7 +303,7 @@ Body:
Merchant: true
MaxWeight: 28000
HpFactor: 40
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 600
@@ -353,7 +353,7 @@ Body:
Thief: true
MaxWeight: 24000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -402,7 +402,7 @@ Body:
Knight2: true
MaxWeight: 28000
HpFactor: 150
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 500
@@ -479,7 +479,7 @@ Body:
Priest: true
MaxWeight: 26000
HpFactor: 75
SpIncrease: 800
SpFactor: 800
BaseASPD:
Fist: 400
Mace: 600
@@ -552,7 +552,7 @@ Body:
Wizard: true
MaxWeight: 24000
HpFactor: 55
SpIncrease: 900
SpFactor: 900
BaseASPD:
Fist: 500
Dagger: 575
@@ -623,7 +623,7 @@ Body:
Blacksmith: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -697,7 +697,7 @@ Body:
Hunter: true
MaxWeight: 27000
HpFactor: 85
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -767,7 +767,7 @@ Body:
Assassin: true
MaxWeight: 24000
HpFactor: 110
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 500
@@ -840,8 +840,8 @@ Body:
Crusader2: true
MaxWeight: 28000
HpFactor: 110
HpIncrease: 700
SpIncrease: 470
HpMultiplicator: 700
SpFactor: 470
BaseASPD:
Fist: 400
Dagger: 500
@@ -918,8 +918,8 @@ Body:
Monk: true
MaxWeight: 26000
HpFactor: 90
HpIncrease: 650
SpIncrease: 470
HpMultiplicator: 650
SpFactor: 470
BaseASPD:
Fist: 400
Mace: 575
@@ -992,7 +992,7 @@ Body:
Sage: true
MaxWeight: 24000
HpFactor: 75
SpIncrease: 700
SpFactor: 700
BaseASPD:
Fist: 450
Dagger: 525
@@ -1064,7 +1064,7 @@ Body:
Rogue: true
MaxWeight: 24000
HpFactor: 85
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Dagger: 500
@@ -1135,7 +1135,7 @@ Body:
Alchemist: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 550
@@ -1209,8 +1209,8 @@ Body:
Bard: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -1281,8 +1281,8 @@ Body:
Dancer: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -1425,8 +1425,8 @@ Body:
Gunslinger: true
MaxWeight: 28000
HpFactor: 89
HpIncrease: 0
SpIncrease: 469
HpMultiplicator: 0
SpFactor: 469
BaseASPD:
Fist: 500
Revolver: 700
@@ -1487,8 +1487,8 @@ Body:
Ninja: true
MaxWeight: 26000
HpFactor: 80
HpIncrease: 0
SpIncrease: 540
HpMultiplicator: 0
SpFactor: 540
BaseASPD:
Fist: 400
Dagger: 500
@@ -1572,7 +1572,7 @@ Body:
Swordman_High: true
MaxWeight: 28000
HpFactor: 70
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -1625,7 +1625,7 @@ Body:
Mage_High: true
MaxWeight: 22000
HpFactor: 30
SpIncrease: 600
SpFactor: 600
BaseASPD:
Fist: 500
Dagger: 600
@@ -1672,7 +1672,7 @@ Body:
Archer_High: true
MaxWeight: 26000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 600
@@ -1718,7 +1718,7 @@ Body:
Acolyte_High: true
MaxWeight: 24000
HpFactor: 40
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Mace: 600
@@ -1766,7 +1766,7 @@ Body:
Merchant_High: true
MaxWeight: 28000
HpFactor: 40
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 600
@@ -1816,7 +1816,7 @@ Body:
Thief_High: true
MaxWeight: 24000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -1865,7 +1865,7 @@ Body:
Lord_Knight2: true
MaxWeight: 28000
HpFactor: 150
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 500
@@ -1972,7 +1972,7 @@ Body:
High_Priest: true
MaxWeight: 26000
HpFactor: 75
SpIncrease: 800
SpFactor: 800
BaseASPD:
Fist: 400
Mace: 600
@@ -2075,7 +2075,7 @@ Body:
High_Wizard: true
MaxWeight: 24000
HpFactor: 55
SpIncrease: 900
SpFactor: 900
BaseASPD:
Fist: 500
Dagger: 575
@@ -2176,7 +2176,7 @@ Body:
Whitesmith: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -2280,7 +2280,7 @@ Body:
Sniper: true
MaxWeight: 27000
HpFactor: 85
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -2380,7 +2380,7 @@ Body:
Assassin_Cross: true
MaxWeight: 24000
HpFactor: 110
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 500
@@ -2483,8 +2483,8 @@ Body:
Paladin2: true
MaxWeight: 28000
HpFactor: 110
HpIncrease: 700
SpIncrease: 470
HpMultiplicator: 700
SpFactor: 470
BaseASPD:
Fist: 400
Dagger: 500
@@ -2591,8 +2591,8 @@ Body:
Champion: true
MaxWeight: 26000
HpFactor: 90
HpIncrease: 650
SpIncrease: 470
HpMultiplicator: 650
SpFactor: 470
BaseASPD:
Fist: 400
Mace: 575
@@ -2695,7 +2695,7 @@ Body:
Professor: true
MaxWeight: 24000
HpFactor: 75
SpIncrease: 700
SpFactor: 700
BaseASPD:
Fist: 450
Dagger: 525
@@ -2797,7 +2797,7 @@ Body:
Stalker: true
MaxWeight: 24000
HpFactor: 85
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Dagger: 500
@@ -2898,7 +2898,7 @@ Body:
Creator: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 550
@@ -3002,8 +3002,8 @@ Body:
Clown: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -3104,8 +3104,8 @@ Body:
Gypsy: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -3217,7 +3217,7 @@ Body:
Baby_Swordman: true
MaxWeight: 28000
HpFactor: 70
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -3270,7 +3270,7 @@ Body:
Baby_Mage: true
MaxWeight: 22000
HpFactor: 30
SpIncrease: 600
SpFactor: 600
BaseASPD:
Fist: 500
Dagger: 600
@@ -3317,7 +3317,7 @@ Body:
Baby_Archer: true
MaxWeight: 26000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 600
@@ -3363,7 +3363,7 @@ Body:
Baby_Acolyte: true
MaxWeight: 24000
HpFactor: 40
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Mace: 600
@@ -3411,7 +3411,7 @@ Body:
Baby_Merchant: true
MaxWeight: 28000
HpFactor: 40
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 600
@@ -3461,7 +3461,7 @@ Body:
Baby_Thief: true
MaxWeight: 24000
HpFactor: 50
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
Dagger: 500
@@ -3510,7 +3510,7 @@ Body:
Baby_Knight2: true
MaxWeight: 28000
HpFactor: 150
SpIncrease: 300
SpFactor: 300
BaseASPD:
Fist: 400
Dagger: 500
@@ -3587,7 +3587,7 @@ Body:
Baby_Priest: true
MaxWeight: 26000
HpFactor: 75
SpIncrease: 800
SpFactor: 800
BaseASPD:
Fist: 400
Mace: 600
@@ -3660,7 +3660,7 @@ Body:
Baby_Wizard: true
MaxWeight: 24000
HpFactor: 55
SpIncrease: 900
SpFactor: 900
BaseASPD:
Fist: 500
Dagger: 575
@@ -3731,7 +3731,7 @@ Body:
Baby_Blacksmith: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -3805,7 +3805,7 @@ Body:
Baby_Hunter: true
MaxWeight: 27000
HpFactor: 85
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 600
@@ -3875,7 +3875,7 @@ Body:
Baby_Assassin: true
MaxWeight: 24000
HpFactor: 110
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 500
@@ -3948,8 +3948,8 @@ Body:
Baby_Crusader2: true
MaxWeight: 28000
HpFactor: 110
HpIncrease: 700
SpIncrease: 470
HpMultiplicator: 700
SpFactor: 470
BaseASPD:
Fist: 400
Dagger: 500
@@ -4026,8 +4026,8 @@ Body:
Baby_Monk: true
MaxWeight: 26000
HpFactor: 90
HpIncrease: 650
SpIncrease: 470
HpMultiplicator: 650
SpFactor: 470
BaseASPD:
Fist: 400
Mace: 575
@@ -4100,7 +4100,7 @@ Body:
Baby_Sage: true
MaxWeight: 24000
HpFactor: 75
SpIncrease: 700
SpFactor: 700
BaseASPD:
Fist: 450
Dagger: 525
@@ -4172,7 +4172,7 @@ Body:
Baby_Rogue: true
MaxWeight: 24000
HpFactor: 85
SpIncrease: 500
SpFactor: 500
BaseASPD:
Fist: 400
Dagger: 500
@@ -4243,7 +4243,7 @@ Body:
Baby_Alchemist: true
MaxWeight: 30000
HpFactor: 90
SpIncrease: 400
SpFactor: 400
BaseASPD:
Fist: 400
Dagger: 550
@@ -4317,8 +4317,8 @@ Body:
Baby_Bard: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -4389,8 +4389,8 @@ Body:
Baby_Dancer: true
MaxWeight: 27000
HpFactor: 75
HpIncrease: 300
SpIncrease: 600
HpMultiplicator: 300
SpFactor: 600
BaseASPD:
Fist: 400
Dagger: 550
@@ -4533,7 +4533,7 @@ Body:
Taekwon: true
MaxWeight: 28000
HpFactor: 70
SpIncrease: 200
SpFactor: 200
BaseASPD:
Fist: 400
BonusStats:
@@ -4578,8 +4578,8 @@ Body:
Star_Gladiator2: true
MaxWeight: 28000
HpFactor: 90
HpIncrease: 650
SpIncrease: 470
HpMultiplicator: 650
SpFactor: 470
BaseASPD:
Fist: 400
Book: 500
@@ -4648,7 +4648,7 @@ Body:
Soul_Linker: true
MaxWeight: 24000
HpFactor: 75
SpIncrease: 900
SpFactor: 900
BaseASPD:
Fist: 500
Dagger: 575

Binary file not shown.

View File

@@ -40631,10 +40631,10 @@ Body:
BaseExp: 74288
JobExp: 77950
MvpExp: 37144
Attack: 3304
Attack2: 4266
Defense: 32
MagicDefense: 66
Attack: 1060
Attack2: 2022
Defense: 7
MagicDefense: 36
Str: 140
Agi: 99
Vit: 30
@@ -40645,49 +40645,42 @@ Body:
SkillRange: 10
ChaseRange: 12
Size: Large
Race: Brute
Race: Formless
Element: Fire
ElementLevel: 3
WalkSpeed: 200
AttackDelay: 1152
AttackMotion: 1152
DamageMotion: 576
AttackDelay: 1150
AttackMotion: 1150
DamageMotion: 288
Ai: 21
Class: Boss
Modes:
Mvp: true
MvpDrops:
- Item: Old_Violet_Box
Rate: 5500
- Item: Old_Violet_Box
Rate: 5000
- Item: Old_Card_Album
Rate: 2000
Drops:
- Item: Treasure_Box
Rate: 5000
- Item: Hurricane_Fury
Rate: 100
- Item: Hunting_Spear
Rate: 100
- Item: Yggdrasilberry
Rate: 500
- Item: Elunium
Rate: 1000
- Item: Oridecon
Rate: 1000
- Item: Yggdrasilberry
Rate: 500
- Item: Hurricane_Fury
Rate: 100
- Item: Hunting_Spear
Rate: 100
- Item: Hell_Fire
Rate: 100
- Id: 2069
AegisName: IARA
Name: Iara
Level: 79
Hp: 18952
BaseExp: 5517
JobExp: 1500
Attack: 614
Attack2: 713
MagicDefense: 76
Hp: 5890
BaseExp: 1070
JobExp: 890
Attack: 171
Attack2: 270
MagicDefense: 39
Str: 69
Agi: 14
Vit: 41
@@ -40702,36 +40695,36 @@ Body:
Element: Water
ElementLevel: 3
WalkSpeed: 200
AttackDelay: 384
AttackMotion: 672
AttackDelay: 672
AttackMotion: 380
DamageMotion: 288
Ai: 17
Drops:
- Item: Mistic_Frozen
Rate: 5
- Item: Heart_Of_Mermaid
Rate: 9000
- Item: Fin
Rate: 500
- Item: Witherless_Rose
Rate: 50
- Item: Crystal_Mirror
Rate: 100
- Item: Witherless_Rose
Rate: 50
- Item: Illusion_Flower
Rate: 10
- Item: Mistic_Frozen
Rate: 5
- Item: Mage_Coat
Rate: 1
- Id: 2070
AegisName: PIRANHA
Name: Piranha
Level: 75
Hp: 15882
BaseExp: 3877
JobExp: 2023
Attack: 549
Attack2: 590
Defense: 7
MagicDefense: 12
Hp: 4522
BaseExp: 899
JobExp: 1023
Attack: 182
Attack2: 223
Defense: 2
MagicDefense: 10
Str: 69
Agi: 45
Vit: 30
@@ -40741,41 +40734,41 @@ Body:
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Large
Size: Medium
Race: Fish
Element: Water
ElementLevel: 3
WalkSpeed: 200
AttackDelay: 768
AttackMotion: 480
DamageMotion: 864
Ai: 04
AttackMotion: 768
DamageMotion: 384
Ai: 20
Drops:
- Item: Gill
Rate: 600
- Item: Mistic_Frozen
Rate: 5
- Item: Sharp_Scale
Rate: 9000
- Item: Gill
Rate: 600
- Item: Tooth_Of_Ancient_Fish
Rate: 500
- Item: Lip_Of_Ancient_Fish
Rate: 500
- Item: Scalpel
Rate: 1
- Item: Mistic_Frozen
Rate: 5
- Item: Fisherman's_Dagger
Rate: 5
- Item: Scalpel
Rate: 1
- Id: 2071
AegisName: HEADLESS_MULE
Name: Headless Mule
Level: 80
Hp: 20065
BaseExp: 6666
JobExp: 4111
Attack: 903
Attack2: 960
Defense: 33
MagicDefense: 44
Hp: 6620
BaseExp: 1011
JobExp: 1120
Attack: 210
Attack2: 267
Defense: 7
MagicDefense: 27
Str: 68
Agi: 51
Vit: 50
@@ -40799,29 +40792,29 @@ Body:
Drops:
- Item: Burning_Horse_Shoe
Rate: 4000
- Item: Plate_Armor_
Rate: 5
- Item: Burning_Heart
Rate: 1000
- Item: Hot_Hair
Rate: 1000
- Item: Plate_Armor_
Rate: 5
- Item: Jamadhar_
Rate: 2
- Item: Inverse_Scale
Rate: 1
- Item: Plate_Armor_
Rate: 1
- Item: Jamadhar_
Rate: 2
- Id: 2072
AegisName: JAGUAR
Name: Jaguar
Level: 71
Hp: 12590
BaseExp: 1820
JobExp: 1012
Attack: 538
Attack2: 580
Defense: 44
MagicDefense: 15
Hp: 3914
BaseExp: 720
JobExp: 512
Attack: 192
Attack2: 234
Defense: 9
MagicDefense: 12
Str: 69
Agi: 30
Vit: 45
@@ -40836,10 +40829,10 @@ Body:
Element: Earth
ElementLevel: 2
WalkSpeed: 150
AttackDelay: 576
AttackMotion: 1248
DamageMotion: 480
Ai: 17
AttackDelay: 1250
AttackMotion: 580
DamageMotion: 360
Ai: 04
Drops:
- Item: Leopard_Skin
Rate: 3000
@@ -40855,13 +40848,13 @@ Body:
AegisName: TOUCAN
Name: Toucan
Level: 70
Hp: 10555
BaseExp: 1002
JobExp: 1552
Attack: 478
Attack2: 513
Defense: 12
MagicDefense: 12
Hp: 3640
BaseExp: 659
JobExp: 544
Attack: 166
Attack2: 201
Defense: 3
MagicDefense: 10
Str: 54
Agi: 14
Vit: 40
@@ -40871,37 +40864,37 @@ Body:
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Medium
Size: Small
Race: Brute
Element: Wind
ElementLevel: 2
WalkSpeed: 155
AttackDelay: 960
AttackMotion: 1440
DamageMotion: 960
Ai: 03
AttackDelay: 1450
AttackMotion: 960
DamageMotion: 480
Ai: 04
Drops:
- Item: Talon
Rate: 3000
- Item: Cyfar
Rate: 1000
- Item: Blue_Herb
Rate: 50
- Item: Yellow_Herb
Rate: 100
- Item: Flower_Ring
Rate: 200
- Item: Yellow_Herb
Rate: 100
- Item: Blue_Herb
Rate: 50
- Id: 2074
AegisName: CURUPIRA
Name: Curupira
Level: 68
Hp: 8669
BaseExp: 1209
JobExp: 850
Attack: 409
Attack2: 444
Defense: 42
MagicDefense: 12
Hp: 3096
BaseExp: 622
JobExp: 450
Attack: 140
Attack2: 175
Defense: 9
MagicDefense: 10
Str: 32
Agi: 23
Vit: 38
@@ -40912,25 +40905,27 @@ Body:
SkillRange: 10
ChaseRange: 12
Size: Medium
Race: Demihuman
Race: Demon
Element: Earth
ElementLevel: 1
WalkSpeed: 250
AttackDelay: 528
AttackMotion: 480
AttackDelay: 530
AttackMotion: 530
DamageMotion: 384
Ai: 07
Modes:
Detector: true
Drops:
- Item: Meat
Rate: 3000
- Item: Elunium_Stone
Rate: 250
- Item: Emveretarcon
Rate: 10
- Item: Tiger_Skin_Panties
Rate: 500
- Item: Elunium_Stone
Rate: 250
- Item: Mace_
Rate: 100
- Item: Emveretarcon
Rate: 10
# - Id: 2075
# AegisName: E_VADON_X
# Name: Vadon
@@ -41091,16 +41086,12 @@ Body:
AegisName: E_HYDRA
Name: Strange Hydra
JapaneseName: Suspicious Hydra
Level: 14
Hp: 660
Attack: 22
Attack2: 28
Level: 34
Hp: 854
Attack: 1
Attack2: 2
Defense: 100
MagicDefense: 100
Agi: 14
Vit: 14
Dex: 40
Luk: 2
AttackRange: 7
SkillRange: 10
ChaseRange: 12
@@ -41117,11 +41108,11 @@ Body:
AegisName: G_PIRANHA
Name: Piranha
Level: 75
Hp: 15882
Attack: 549
Attack2: 590
Defense: 7
MagicDefense: 12
Hp: 4522
Attack: 182
Attack2: 223
Defense: 2
MagicDefense: 10
Str: 69
Agi: 45
Vit: 30
@@ -41131,14 +41122,14 @@ Body:
AttackRange: 1
SkillRange: 10
ChaseRange: 12
Size: Large
Size: Medium
Race: Fish
Element: Water
ElementLevel: 3
WalkSpeed: 200
AttackDelay: 768
AttackMotion: 480
DamageMotion: 864
AttackMotion: 768
DamageMotion: 384
Ai: 20
- Id: 2158
AegisName: S_HORNET

View File

@@ -44,9 +44,6 @@
// afterskill After mob casts the specified skill.
// casttargeted When a target is in cast range (no condition value).
// rudeattacked When mob is rude attacked (no condition value).
// mobnearbygt When monsters in range become greater than specified number.
// groundattacked When mob is hit by ground targeted skill (no condition value).
// damagedgt When single attack deals greater damage than specified number.
//
// Status abnormalities specified through the statuson/statusoff system:
// anybad (any type of state change) / stone / freeze / stun / sleep /
@@ -717,8 +714,8 @@
1141,Marina@NPC_CRITICALSLASH,attack,170,1,500,500,5000,no,target,always,0,,,,,,6,
1141,Marina@NPC_EMOTION,walk,197,1,2000,0,5000,yes,self,always,0,19,,,,,,
1141,Marina@NPC_WATERATTACK,attack,184,2,500,500,5000,no,target,always,0,,,,,,6,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,master,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,afterskill,331,,,,,,,
1142,Marine Sphere@NPC_RANDOMMOVE,idle,331,1,10000,0,30000,no,target,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,3000,0,no,self,alchemist,,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,500,2000,5000,no,self,myhpltmaxrate,99,,,,,,,
1142,Marine Sphere@NPC_SELFDESTRUCTION,idle,173,1,10000,2000,5000,no,self,skillused,173,,,,,,,
1142,Marine Sphere@NPC_SPEEDUP,idle,332,1,10000,0,700,yes,target,always,,,,,,,,

View File

@@ -22,32 +22,40 @@
# Quest Settings
#
###########################################################################
# - Id Quest ID.
# Title Quest title.
# TimeLimit Amount of time before the quest expires. (Default: 0)
# Targets: Quest objective target. (Default: null)
# - Mob Name of monster to kill.
# 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)
# Size Monster size target. (Default: All)
# Element Monster element target. (Default: 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 Map name where kills are counted. (Default: All)
# MapName Displayed map name in quest UI. (Default: empty string)
# MapMobTargets List of monster names. Only names in the list will increase the kill counter. Only active when Id is used. (Default: all monsters)
# <name>: <bool> Monster name and whether the monster is added or removed from the list.
# 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%)
# - 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 Map name where kills are counted. (Default any location)
# On normal maps only kills of permanently spawned monsters increase the counter.
# On instance maps all monster kills increase the counter.
# 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: 3
Version: 2
Body:
- Id: 1000

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