diff --git a/.github/workflows/build_servers_clang.yml b/.github/workflows/build_servers_clang.yml
new file mode 100644
index 0000000000..54e2bfa8b2
--- /dev/null
+++ b/.github/workflows/build_servers_clang.yml
@@ -0,0 +1,49 @@
+name: Build servers with Clang
+# build_servers_clang.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['3.9', '4.0', '5.0', '6.0', '7', '8', '9', '10', '11'] #, '12', '13']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Set up Clang
+ uses: egor-tensin/setup-clang@v1
+ with:
+ version: ${{ matrix.clang }}
+ platform: x64
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=clang-${{ matrix.clang }} CXX=clang++-${{ matrix.clang }} --enable-buildbot=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ - name: Command - make clean
+ run: make clean
+
+ - name: Command - make all
+ run: make all
diff --git a/.github/workflows/build_servers_gcc.yml b/.github/workflows/build_servers_gcc.yml
new file mode 100644
index 0000000000..2da009b20a
--- /dev/null
+++ b/.github/workflows/build_servers_gcc.yml
@@ -0,0 +1,50 @@
+name: Build servers with GCC
+# build_servers_gcc.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['7', '8', '9', '10']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Update & Install packages
+ # Ubuntu runners already have most of the packages rAthena requires to build.
+ # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+ run: |
+ sudo apt update
+ sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-buildbot=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ - name: Command - make clean
+ run: make clean
+
+ - name: Command - make all
+ run: make all
diff --git a/.github/workflows/build_servers_modes.yml b/.github/workflows/build_servers_modes.yml
new file mode 100644
index 0000000000..dc2f28dc1b
--- /dev/null
+++ b/.github/workflows/build_servers_modes.yml
@@ -0,0 +1,77 @@
+name: Build servers in Pre-Renewal and Renewal
+# build_servers_modes.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['10']
+ # We run build checks for both Renewal and PRE-Renewal
+ mode: ['PRE','RE']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ # A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
+ - name: Variable Parsing - PRE
+ if: ${{ matrix.mode == 'PRE' }}
+ run: |
+ echo "PRERE=yes" >> $GITHUB_ENV
+ - name: Variable Parsing - RE
+ if: ${{ matrix.mode == 'RE' }}
+ run: |
+ echo "PRERE=no" >> $GITHUB_ENV
+
+ - name: Update & Install packages
+ # Ubuntu runners already have most of the packages rAthena requires to build.
+ # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+ run: |
+ sudo apt update
+ sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+ - name: Start MySQL
+ run: sudo systemctl start mysql.service
+
+ - name: Setup Database and import table data
+ run: ./tools/ci/sql.sh
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-buildbot=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ - name: Command - make clean
+ run: make clean
+
+ - name: Command - make server
+ run: make server
+
+ - name: Run Once - login-server
+ run: ./login-server --run-once
+
+ - name: Run Once - char-server
+ run: ./char-server --run-once
+
+ - name: Run Once - map-server
+ run: ./map-server --run-once
diff --git a/.github/workflows/build_servers_msbuild.yml b/.github/workflows/build_servers_msbuild.yml
new file mode 100644
index 0000000000..fb22b5af2c
--- /dev/null
+++ b/.github/workflows/build_servers_msbuild.yml
@@ -0,0 +1,43 @@
+name: Build servers with MSVS
+# build_servers_msbuild.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # The windows-latest label currently points to windows-2019.
+ # Available: windows-2016, windows-2019 and windows-2022
+ os: [windows-latest]
+ # We run build checks for both Renewal and PRE-Renewal
+ mode: ['PRE', 'RE']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Add msbuild to PATH
+ uses: microsoft/setup-msbuild@v1.1
+
+ - name: Build solution in Debug
+ if: ${{ matrix.mode == 'PRE' }}
+ run: msbuild rAthena.sln -t:rebuild -property:Configuration=Debug /p:DefineConstants="BUILDBOT%3BPRERE"
+
+ - name: Build solution in Debug
+ if: ${{ matrix.mode == 'RE' }}
+ run: msbuild rAthena.sln -t:rebuild -property:Configuration=Debug /p:DefineConstants="BUILDBOT"
diff --git a/.github/workflows/build_servers_packetversions.yml b/.github/workflows/build_servers_packetversions.yml
new file mode 100644
index 0000000000..06bb41718e
--- /dev/null
+++ b/.github/workflows/build_servers_packetversions.yml
@@ -0,0 +1,70 @@
+name: Build servers with different packet versions
+# build_servers_packetversions.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['10']
+ # We run build checks for both Renewal and PRE-Renewal
+ mode: ['PRE','RE']
+ # Check build success for different packet-versions
+ packetver: ['20211103', '20200902', '20200401', '20180620', '20151104']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ # A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
+ - name: Variable Parsing - PRE
+ if: ${{ matrix.mode == 'PRE' }}
+ run: |
+ echo "PRERE=yes" >> $GITHUB_ENV
+ - name: Variable Parsing - RE
+ if: ${{ matrix.mode == 'RE' }}
+ run: |
+ echo "PRERE=no" >> $GITHUB_ENV
+
+ - name: Update & Install packages
+ # Ubuntu runners already have most of the packages rAthena requires to build.
+ # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+ run: |
+ sudo apt update
+ sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+ - name: Start MySQL
+ run: sudo systemctl start mysql.service
+
+ - name: Setup Database and import table data
+ run: ./tools/ci/sql.sh
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-packetver=${{ matrix.packetver }} --enable-buildbot=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ - name: Command - make clean
+ run: make clean
+
+ - name: Command - make all
+ run: make all
diff --git a/.github/workflows/build_servers_vip.yml b/.github/workflows/build_servers_vip.yml
new file mode 100644
index 0000000000..3d428ff539
--- /dev/null
+++ b/.github/workflows/build_servers_vip.yml
@@ -0,0 +1,77 @@
+name: Build servers in VIP mode
+# build_servers_vip.yml
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in a source directory has been modified.
+ - 'src/**'
+ - '3rdparty/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['10']
+ # We run build checks for both Renewal and PRE-Renewal
+ mode: ['PRE', 'RE']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ # A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
+ - name: Variable Parsing - PRE
+ if: ${{ matrix.mode == 'PRE' }}
+ run: |
+ echo "PRERE=yes" >> $GITHUB_ENV
+ - name: Variable Parsing - RE
+ if: ${{ matrix.mode == 'RE' }}
+ run: |
+ echo "PRERE=no" >> $GITHUB_ENV
+
+ - name: Update & Install packages
+ # Ubuntu runners already have most of the packages rAthena requires to build.
+ # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+ run: |
+ sudo apt update
+ sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+ - name: Start MySQL
+ run: sudo systemctl start mysql.service
+
+ - name: Setup Database and import table data
+ run: ./tools/ci/sql.sh
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-buildbot=yes --enable-vip=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ - name: Command - make clean
+ run: make clean
+
+ - name: Command - make server
+ run: make server
+
+ - name: Run Once - login-server
+ run: ./login-server --run-once
+
+ - name: Run Once - char-server
+ run: ./char-server --run-once
+
+ - name: Run Once - map-server
+ run: ./map-server --run-once
diff --git a/.github/workflows/npc_db_validation.yml b/.github/workflows/npc_db_validation.yml
new file mode 100644
index 0000000000..dda035f29a
--- /dev/null
+++ b/.github/workflows/npc_db_validation.yml
@@ -0,0 +1,82 @@
+name: Validate NPC Scripts and DB Changes
+# npc_db_validation.yml
+
+# 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.
+
+on:
+ push:
+ branches:
+ - master
+ pull_request:
+ paths:
+ # Always trigger all Github Actions if an action or something CI related was changed
+ - '.github/workflows/**'
+ - 'tools/ci/**'
+ # This workflow should run when a file in either the db/ or npc/ directory has been modified.
+ - 'db/**'
+ - 'npc/**'
+
+jobs:
+ build:
+ # Github Actions checks for '[ci skip]', '[skip ci]', '[no ci]', '[skip actions]', or '[actions skip]' but not a hyphenated version.
+ # It's a catch-all incase a Pull Request has been opened and someone is on auto-pilot.
+ if: "!contains(github.event.head_commit.message, 'ci-skip')"
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ # 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: ['10']
+ # We run build checks for both Renewal and PRE-Renewal
+ mode: ['PRE', 'RE']
+
+ steps:
+ - uses: actions/checkout@v2
+
+ # A simple 'yes' and 'no' can be confusing, so we use names to display in the current job then convert them for use in the compiler.
+ - name: Variable Parsing - PRE
+ if: ${{ matrix.mode == 'PRE' }}
+ run: |
+ echo "PRERE=yes" >> $GITHUB_ENV
+ - name: Variable Parsing - RE
+ if: ${{ matrix.mode == 'RE' }}
+ run: |
+ echo "PRERE=no" >> $GITHUB_ENV
+
+ - name: Update & Install packages
+ # Ubuntu runners already have most of the packages rAthena requires to build.
+ # https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-Readme.md
+ run: |
+ sudo apt update
+ sudo apt install zlib1g-dev libpcre3-dev gcc-${{ matrix.gcc }} g++-${{ matrix.gcc }}
+
+ - name: Start MySQL
+ run: sudo systemctl start mysql.service
+
+ - name: Setup Database and import table data
+ run: ./tools/ci/sql.sh
+
+ - name: Command - configure
+ env:
+ CONFIGURE_FLAGS: 'CC=gcc-${{ matrix.gcc }} CXX=g++-${{ matrix.gcc }} --enable-prere=${{ env.PRERE }} --enable-buildbot=yes'
+ run: ./configure $CONFIGURE_FLAGS
+
+ # npc.sh enables all NPC scripts in the custom and test folders.
+ - name: Enable All NPCs for Testing
+ run: ./tools/ci/npc.sh
+
+ - name: Command - make clean
+ run: make clean
+
+ # Create import directories
+ - name: Command - make import
+ run: make import
+
+ - name: Command - make map
+ run: make map
+
+ - name: Run Once - map-server
+ run: ./map-server --run-once
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index 4c4b4f5a88..0000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,198 +0,0 @@
-language: cpp
-dist: trusty
-sudo: false
-
-matrix:
- include:
-# First check if all our options are good
-# Renewal without VIP
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Renewal with VIP
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- - CONFIGURE_FLAGS="--enable-prere=yes --enable-vip=no --enable-buildbot=yes"
-# Pre-Renewal without VIP
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=yes --enable-buildbot=yes"
-# Pre-Renewal with VIP
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- - CONFIGURE_FLAGS="--enable-prere=yes --enable-vip=yes --enable-buildbot=yes"
-# After that check all different compilers and compiler versions
-# GCC
-# Version 6
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-6
- env:
- - MATRIX_EVAL="CC=gcc-6 && CXX=g++-6"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Version 7
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-7
- env:
- - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Version 8
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-8
- env:
- - MATRIX_EVAL="CC=gcc-8 && CXX=g++-8"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Clang
-# Version 3.9
- - os: linux
- addons:
- apt:
- sources:
- - llvm-toolchain-trusty-3.9
- packages:
- - clang-3.9
- env:
- - MATRIX_EVAL="CC=clang-3.9 && CXX=clang++-3.9"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Version 4
- - os: linux
- addons:
- apt:
- sources:
- - llvm-toolchain-trusty-4.0
- packages:
- - clang-4.0
- env:
- - MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# Version 5
- - os: linux
- addons:
- apt:
- sources:
- - llvm-toolchain-trusty-5.0
- packages:
- - clang-5.0
- env:
- - MATRIX_EVAL="CC=clang-5.0 && CXX=clang++-5.0"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-# LLVM on OSX
-# - os: osx
-# osx_image: xcode9.2
-# install:
-# - brew update
-# - brew install mysql
-# - brew tap homebrew/services
-# - brew services start mysql
-## MySQL takes a while to start...
-# - brew services list
-# - launchctl list | grep mysql
-# before_install: false
-# env:
-# - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes --enable-lto=no"
-# script:
-# - ./configure $CONFIGURE_FLAGS
-## MacOS default MySQL configuration does not like our card seller(only full group by)
-# - ./tools/ci/npc.sh
-# - make clean
-# - make all
-# - ./login-server --run-once
-# - ./char-server --run-once
-# - ./map-server --run-once
-# CMake
- - os: linux
- addons:
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- script:
- - mkdir cbuild
- - cd cbuild
- - cmake -G "Unix Makefiles" ..
- - make || travis_terminate 1
-# MariaDB
- - os: linux
- addons:
- mariadb: '10.0'
- apt:
- sources:
- - ubuntu-toolchain-r-test
- packages:
- - g++-5
- - libmariadbclient-dev
- env:
- - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5"
- - CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
-
-before_install:
- - eval "${MATRIX_EVAL}"
-
-before_script:
- - uname -a
- - ./tools/ci/sql.sh
-
-script:
- - ./configure $CONFIGURE_FLAGS || travis_terminate 1
- - ./tools/ci/npc.sh
- - make clean || travis_terminate 1
- - make all || travis_terminate 1
- - ./login-server --run-once
- - ./char-server --run-once
- - ./map-server --run-once
-
-env:
- global:
- - DB_ROOT="root"
- - DB_HOST="127.0.0.1"
- - DB_NAME="ragnarok"
- - DB_USER="ragnarok"
- - DB_PASS="ragnarok"
-
-notifications:
- email: false
diff --git a/README.md b/README.md
index cd91f78d0a..186fe726a8 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
# rAthena
-[](https://travis-ci.org/rathena/rathena) [](https://ci.appveyor.com/project/rAthenaAPI/rathena/branch/master) [](https://lgtm.com/projects/g/rathena/rathena/alerts/) [](https://lgtm.com/projects/g/rathena/rathena/context:cpp)  
+[](https://lgtm.com/projects/g/rathena/rathena/alerts/) [](https://lgtm.com/projects/g/rathena/rathena/context:cpp)  
> rAthena is a collaborative software development project revolving around the creation of a robust massively multiplayer online role playing game (MMORPG) server package. Written in C, the program is very versatile and provides NPCs, warps and modifications. The project is jointly managed by a group of volunteers located around the world as well as a tremendous community providing QA and support. rAthena is a continuation of the eAthena project.
[Forum](https://rathena.org/board)|[Discord](https://rathena.org/discord)|[Wiki](https://github.com/rathena/rathena/wiki)|[FluxCP](https://github.com/rathena/FluxCP)|[Crowdfunding](https://rathena.org/board/crowdfunding/)|[Fork and Pull Request Q&A](https://rathena.org/board/topic/86913-pull-request-qa/)
diff --git a/appveyor.yml b/appveyor.yml
deleted file mode 100644
index 36da1ff2f9..0000000000
--- a/appveyor.yml
+++ /dev/null
@@ -1,75 +0,0 @@
-image: Visual Studio 2015
-# This is the default location, but we put it here for safety reasons, since we use it in our test script
-clone_folder: c:\projects\rathena
-# We do not need the git history for our integration tests
-clone_depth: 50
-version: '{branch}-{build}'
-pull_requests:
- do_not_increment_build_number: true
-environment:
- matrix:
- - Defines: "\"BUILDBOT\""
- - Defines: "\"BUILDBOT;PRERE\""
-platform:
- - Win32
- - x64
-configuration:
- - Debug
-# Disable Release for now, since do not want to have any optimization and have access to debug infos on crash
-# - Release
-matrix:
- fast_finish: true
-build_script:
-- cmd: msbuild rAthena.sln /p:DefineConstants=%Defines%
-services: mysql
-test_script:
-- cmd: >-
- rem ========================================================================
-
- rem Set up the environment variables we need
-
- rem ========================================================================
-
- set DB_HOST=127.0.0.1
-
- set DB_ROOT=root
-
- set DB_ROOTPW=Password12!
-
- set DB_USER=ragnarok
-
- set DB_USERPW=ragnarok
-
- set DB_NAME=ragnarok
-
- set MYSQL="C:\Program Files\MySql\MySQL Server 5.7\bin\mysql.exe"
-
- cd C:\projects\rathena
-
- rem ========================================================================
-
- rem MySQL database setup
-
- rem ========================================================================
-
- call tools\ci\sql.bat
-
- rem ========================================================================
-
- rem Activate all custom and test scripts
-
- rem ========================================================================
-
- start /d tools\ci npc.bat
-
- rem ========================================================================
-
- rem Start the map server
-
- rem ========================================================================
-
- login-server.exe --run-once
-
- char-server.exe --run-once
-
- map-server.exe --run-once
diff --git a/conf/atcommands.yml b/conf/atcommands.yml
index b50eaad76e..232b28fb8b 100644
--- a/conf/atcommands.yml
+++ b/conf/atcommands.yml
@@ -283,12 +283,19 @@ Body:
4064 Mechanic 4065 Guillotine Cross 4073 Royal Guard 4074 Sorcerer
4075 Minstrel 4076 Wanderer 4077 Sura 4078 Genetic
4079 Shadow Chaser
+ ----- 4th Class -----
+ 4252 Dragon Knight 4253 Meister 4254 Shadow Cross 4255 Arch Mage
+ 4256 Cardinal 4257 Windhawk 4258 Imperial Guard 4259 Biolo
+ 4260 Abyss Chaser 4261 Elemental Master 4262 Inquisitor 4263 Troubadour
+ 4264 Trouvere
----- Expanded Class -----
23 Super Novice 24 Gunslinger 25 Ninja 4045 Super Baby
4046 Taekwon 4047 Star Gladiator 4049 Soul Linker 4050 Gangsi
4051 Death Knight 4052 Dark Collector 4190 Ex. Super Novice 4191 Ex. Super Baby
4211 Kagerou 4212 Oboro 4215 Rebellion 4218 Summoner
4239 Star Emperor 4240 Soul Reaper
+ 4302 Sky Emperor 4303 Soul Ascetic 4304 Shinkiro 4305 Shiranui
+ 4306 Night Watch 4307 Hyper Novice 4308 Spirit Handler
----- Baby Novice And Baby 1st Class -----
4023 Baby Novice 4024 Baby Swordman 4025 Baby Magician 4026 Baby Archer
4027 Baby Acolyte 4028 Baby Merchant 4029 Baby Thief
@@ -328,6 +335,10 @@ Body:
Help: |
Params: [ ]
Heals the desired amount of HP and SP. No value specified will do a full heal.
+ - Command: healap
+ Help: |
+ Params: []
+ Heals the desired amount of AP. No value specified will do a full AP heal.
- Command: dye
Aliases:
- ccolor
@@ -473,6 +484,9 @@ Body:
- Command: stpoint
Help: |
Params: - Gives you the desired number of stat points.
+ - Command: trpoint
+ Help: |
+ Params: - Gives you the desired number of trait stat points.
- Command: skpoint
Help: |
Params: - Gives you the desired number of skill points.
@@ -509,6 +523,30 @@ Body:
Help: |
Params:
Raises LUK by given amount.
+ - Command: pow
+ Help: |
+ Params:
+ Raises POW by given amount.
+ - Command: sta
+ Help: |
+ Params:
+ Raises STA by given amount.
+ - Command: wis
+ Help: |
+ Params:
+ Raises WIS by given amount.
+ - Command: spl
+ Help: |
+ Params:
+ Raises SPL by given amount.
+ - Command: con
+ Help: |
+ Params:
+ Raises CON by given amount.
+ - Command: crt
+ Help: |
+ Params:
+ Raises CRT by given amount.
- Command: allstats
Aliases:
- allstat
@@ -517,6 +555,14 @@ Body:
Help: |
Params:
Adds value in all stats (maximum if no value).
+ - Command: alltraits
+ Aliases:
+ - alltrait
+ - traitall
+ - traitsall
+ Help: |
+ Params:
+ Adds value in all traits (maximum if no value).
- Command: addwarp
Help: |
Params: