Compare commits

..

1 Commits

Author SHA1 Message Date
Matheus Macabu
f86bb39df8 Allow leaderless party (#1980)
* Fixed some misc. stuff

* Allow for leaderless party.
2017-11-02 16:32:33 +07:00
881 changed files with 49418 additions and 129527 deletions

View File

@@ -1,24 +0,0 @@
# rAthena EditorConfig file
# EditorConfig is awesome: https://EditorConfig.org
# This file should be encoded in UTF-8 with CRLF or LF line endings.
root = true
# Add a blank newline to the end of every file after saving
# Trim trailing whitespace
[*]
insert_final_newline = true
trim_trailing_whitespace = true
# YAML does not support hard tabs.
[*.{yml,yaml}]
indent_style = space
indent_size = 4
# Use tabs in Makefiles
[Makefile*]
indent_style = tab
# Scripts should use hard tabs to prevent script header goofs.
[npc/**.txt]
indent_style = tab

4
.gitattributes vendored
View File

@@ -1,12 +1,10 @@
* text=auto
*.cpp diff=cpp
*.yml diff
*.c diff=cpp
*.sln merge=union
*.vcproj merge=union
*.vcxproj merge=union
*.sln text eol=crlf
*.bat text eol=crlf
athena-start text eol=lf
configure text eol=lf
configure.in text eol=lf
Makefile text eol=lf

View File

@@ -63,7 +63,7 @@ Suggesting Enhancements
#### How to create Pull Requests :pencil:
1. Make sure you have a [GitHub account](https://github.com/signup/free).
2. Next, you will need to [fork rAthena](https://help.github.com/articles/fork-a-repo/#fork-an-example-repository) to your account.
2. Next, you will need to [fork rAthena](https://help.github.com/articles/fork-a-repo/#step-3-configure-git-to-sync-your-fork-with-the-original-spoon-knife-repository) to your account.
3. Before making changes, make sure you [create a new branch](https://help.github.com/articles/creating-and-deleting-branches-within-your-repository/) for your working tree.
4. After completing your changes, commit and push it to your branch.
5. Now you are ready to [create a Pull Request](https://help.github.com/articles/creating-a-pull-request/) for rAthena!

59
.gitignore vendored
View File

@@ -29,7 +29,6 @@ Thumbs.db
*.a
*.vcxproj.user
/char-server
/csv2yaml
/config.log
/config.status
/core
@@ -47,6 +46,10 @@ Thumbs.db
/3rdparty/libconfig/*.o
/3rdparty/libconfig/obj
# /3rdparty/mt19937ar/
/3rdparty/mt19937ar/Makefile
/3rdparty/mt19937ar/*.o
# /3rdparty/yaml-cpp/
/3rdparty/yaml-cpp/Makefile
@@ -57,9 +60,6 @@ Thumbs.db
/conf/import
/conf/msg_conf/import
# /lib
/lib
# /log/
/log/*.log
/log/*.leaks
@@ -72,7 +72,7 @@ Thumbs.db
/src/common/Makefile
/src/common/obj_all
/src/common/obj_sql
/src/common/version.hpp
/src/common/svnversion.h
# /src/custom/
/src/custom
@@ -84,7 +84,11 @@ Thumbs.db
# /src/map/
/src/map/Makefile
/src/map/obj_sql
/src/map/pcre.hpp
/src/map/pcre.h
# /src/test/
/src/test/Makefile
/src/test/obj
# /src/tool/
/src/tool/Makefile
@@ -97,11 +101,50 @@ Thumbs.db
/tools/*.ilk
/tools/*.pdb
# Visual Studio
# /vcproj-15/
/vcproj-15/char-server
/vcproj-15/login-server
/vcproj-15/mapcache
/vcproj-15/map-server
/vcproj-15/*.user
# /vcproj-14/
.vs
*.VC.db
*.VC.opendb
/vcproj-14/char-server
/vcproj-14/login-server
/vcproj-14/mapcache
/vcproj-14/map-server
/vcproj-14/*.user
# /vcproj-13/
/vcproj-13/char-server
/vcproj-13/login-server
/vcproj-13/mapcache
/vcproj-13/map-server
/vcproj-13/*.user
# /vcproj-12/
/vcproj-12/char-server
/vcproj-12/login-server
/vcproj-12/mapcache
/vcproj-12/map-server
/vcproj-12/*.user
# /vcproj-10/
/vcproj-10/char-server
/vcproj-10/login-server
/vcproj-10/mapcache
/vcproj-10/map-server
/vcproj-10/*.user
# /vcproj-9/
/vcproj-9/*.user
/vcproj-9/char-server
/vcproj-9/login-server
/vcproj-9/map-server
/vcproj-9/mapcache
/.idea/.name
/.idea/misc.xml
/.idea/modules.xml
@@ -109,11 +152,9 @@ Thumbs.db
/.idea/vcs.xml
/.idea/workspace.xml
/build/
/cbuild/
# bat tools
/charserv.bat
/csv2yaml.bat
/logserv.bat
/mapcache.bat
/mapserv.bat

197
.mailmap
View File

@@ -1,197 +0,0 @@
##################################################################
# This maps commits from different aliases to the same account #
# #
# Always try to map to the GitHub username and try to use the #
# @users.noreply.github.com mail addresses where possible. #
# The entries are sorted ascending by the username. #
# #
# If you want to have your mail changed feel free to contact us. #
# #
# If you know any of the missing commiters please also let us #
# know. #
# You can generate the list of commiters with: #
# git shortlog -sne #
##################################################################
##################################################################
# SVN Users #
##################################################################
ai4rei <ai4rei@users.noreply.github.com> <ai4rei@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Akinari1087 <tagraskemper@hotmail.com> <akinari1087@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Akkarinage <akkarin@rathena.org> <thatakkarin@54d463be-8e91-2dee-dedb-b68131a5f0ec>
aleos89 <aleos89@users.noreply.github.com> <aleos@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Baalberith6 <matej.pristak@gmail.com> <baalberith@54d463be-8e91-2dee-dedb-b68131a5f0ec>
brianluau <brianluau@users.noreply.github.com> <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec>
cydh <cydh@users.noreply.github.com> <cydh@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Daegaladh <Daegaladh@users.noreply.github.com> <daegaladh@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Deadly Silence <mail@deadly-silence.de> <deadlysilence@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Epoque1 <22254628+Epoque1@users.noreply.github.com> <epoque11@54d463be-8e91-2dee-dedb-b68131a5f0ec>
euphyy <euphy.raliel@rathena.org> <euphyy@54d463be-8e91-2dee-dedb-b68131a5f0ec>
flaviojs <flaviojs2005@gmail.com> <FlavioJS@54d463be-8e91-2dee-dedb-b68131a5f0ec>
flaviojs <flaviojs2005@gmail.com> <flaviojs2005@54d463be-8e91-2dee-dedb-b68131a5f0ec>
functor-x <piotr.halaczkiewicz@gmail.com> <gepard1984@54d463be-8e91-2dee-dedb-b68131a5f0ec>
functor-x <piotr.halaczkiewicz@gmail.com> <Gepard@54d463be-8e91-2dee-dedb-b68131a5f0ec>
greenboxal <greenboxal@gmail.com> <greenboxal2@54d463be-8e91-2dee-dedb-b68131a5f0ec>
jguy1987 <jmish1987@gmail.com> <jmanfffreak@54d463be-8e91-2dee-dedb-b68131a5f0ec>
jTynne <decadenthearts06@gmail.com> <jtynne@54d463be-8e91-2dee-dedb-b68131a5f0ec>
j-tkay <joseph.tk.ea@gmail.com> <j-tkay@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Kenpachi2k13 <Kenpachi.Developer@gmx.de> <kenpachi2k11@54d463be-8e91-2dee-dedb-b68131a5f0ec>
kisuka <kisuka@kisuka.com> <Kisuka@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Lemongrass3110 <lemongrass@kstp.at> <lemongrass3110@54d463be-8e91-2dee-dedb-b68131a5f0ec>
lnkfish <lnkfish@hotmail.com> <Inkfish@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Locien <masterofmuppets89@gmail.com> <MasterOfMuppets@54d463be-8e91-2dee-dedb-b68131a5f0ec>
lighta <lighta@users.noreply.github.com> <glighta@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Masao87 <masao@gmx.ch> <masao87@54d463be-8e91-2dee-dedb-b68131a5f0ec>
missxantara <missxantara@gmail.com> <xantara@54d463be-8e91-2dee-dedb-b68131a5f0ec>
macabu <macabu@users.noreply.github.com> <momacabu@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Paradox924X <paradox924x@gmail.com> <Paradox924X@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Paradox924X <paradox924x@gmail.com> <Paradox924x@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Playtester <Kenji.Ito@gmx.de> <Playtester@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Playtester <Kenji.Ito@gmx.de> <playtester@54d463be-8e91-2dee-dedb-b68131a5f0ec>
rAthenaAPI <administrator@rathena.org> <eathenabot@54d463be-8e91-2dee-dedb-b68131a5f0ec>
rAthenaAPI <administrator@rathena.org> <rathenabot@54d463be-8e91-2dee-dedb-b68131a5f0ec>
SeoRoman <RomanL0927@gmail.com> <script-Z3R0@54d463be-8e91-2dee-dedb-b68131a5f0ec>
SeoRoman <RomanL0927@gmail.com> <script-z3r0@54d463be-8e91-2dee-dedb-b68131a5f0ec>
shennetsind <ind@henn.et> <shennetsind@54d463be-8e91-2dee-dedb-b68131a5f0ec>
theultramage <umage@netvor.sk> <ultramage@54d463be-8e91-2dee-dedb-b68131a5f0ec>
trojal <trojal@gmail.com> <trojal@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Valaris <2738218+valaris@users.noreply.github.com> <valaris@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Valaris <2738218+valaris@users.noreply.github.com> <Valaris@54d463be-8e91-2dee-dedb-b68131a5f0ec>
wilkemeyer <fw@f-ws.de> <blacksirius@54d463be-8e91-2dee-dedb-b68131a5f0ec>
Yommy <yomanda@gmail.com> <Yommy@54d463be-8e91-2dee-dedb-b68131a5f0ec>
##################################################################
# Git Aliases #
##################################################################
aleos89 <aleos89@users.noreply.github.com> <aleos89@users.noreply.github.com>
aleos89 <aleos89@users.noreply.github.com> <jarajabi@msn.com>
Akkarinage <akkarin@rathena.org> <mike.langford@live.co.uk>
Baalberith6 <matej.pristak@gmail.com> <matej.pristak@gmail.com>
brianluau <brianluau@users.noreply.github.com> <brianluau@gmail.com>
brianluau <brianluau@users.noreply.github.com> <brianluau@users.noreply.github.com>
Atemo <Atemo@users.noreply.github.com> <capucrath@gmail.com>
Atemo <Atemo@users.noreply.github.com> <Capuche@users.noreply.github.com>
cydh <cydh@users.noreply.github.com> <cydh@users.noreply.github.com>
cydh <cydh@users.noreply.github.com> <cydh@pservero.com>
cydh <cydh@users.noreply.github.com> <house.bad@gmail.com>
Daegaladh <Daegaladh@users.noreply.github.com> <daegaladh@shadowgames.es>
dentongrills <sketchyphoenix@gmail.com> <sketchyphoenix@54d463be-8e91-2dee-dedb-b68131a5f0ec>
dentongrills <sketchyphoenix@gmail.com> <SketchyPhoenix@54d463be-8e91-2dee-dedb-b68131a5f0ec>
euphyy <euphy.raliel@rathena.org> <euphy@rathena.org>
icxbb-xx <arokaice@live.com> <arokaice@live.com>
Jeybla <jey@bjx-studios.de> <jey@toto-ro.de>
Jeybla <jey@bjx-studios.de> <jey@bjx-studios.de>
Jeybla <jey@bjx-studios.de> <jey@toto-ro.de>
GodLesZ <godlesz@hotmail.de> <GodLesZ@54d463be-8e91-2dee-dedb-b68131a5f0ec>
lighta <lighta@users.noreply.github.com> <lightaisme@gmail.com>
lighta <lighta@users.noreply.github.com> <lighta@lighta-fedora20.localdomain>
lighta <lighta@users.noreply.github.com> <lighta@lighta-VPCW12M1E>
lighta <lighta@users.noreply.github.com> <lighta>
lighta <lighta@users.noreply.github.com> <lighta@lighta-VPCW12M1E.(none)>
lighta <lighta@users.noreply.github.com> <lightaisme>
Lilith- <amurov.ro@gmail.com> <amurov.ro@gmail.com>
macabu <macabu@users.noreply.github.com> <macabu.matheus@gmail.com>
macabu <macabu@users.noreply.github.com> <mkbu95@users.noreply.github.com>
rAthenaAPI <administrator@rathena.org> <rAthenaAPI>
secretdataz <secretdataz@users.noreply.github.com> <foreverfk@stephack.com>
secretdataz <secretdataz@users.noreply.github.com> <nightsheep@outlook.com>
secretdataz <secretdataz@users.noreply.github.com> <secret@ahri.in.th>
Stolao <Stolao@users.noreply.github.com> <Taingram11@gmail.com>
tr0n93 <tr0n.developer@gmail.com> <tr0n93@54d463be-8e91-2dee-dedb-b68131a5f0ec>
wilkemeyer <fw@f-ws.de> <fw@f-ws.de>
vstumpf <vincents.995@gmail.com> <vincents.995@gmail.com>
zackdreaver <zackdreaver@users.noreply.github.com> <zackdreaver@gmail.com>
##################################################################
# Unconfirmed ones #
# missing github username #
##################################################################
calciumkid <harrison@isabarwon.com> <calciumkid@54d463be-8e91-2dee-dedb-b68131a5f0ec>
skotlex <skotlex@mailforce.net> <skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>
skotlex <skotlex@mailforce.net> <Skotlex@54d463be-8e91-2dee-dedb-b68131a5f0ec>
##################################################################
# TODO #
# #
# If you know the GitHub account and/or mail address of any of #
# these please let us know. #
##################################################################
# L0ne_W0lf <L0ne_W0lf@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Lupus <Lupus@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# celest <celest@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Lance <Lance@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# zephyrus <zephyrus@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# amber <amber@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# toms <toms@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# shadowlady <shadowlady@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# codemaster <codemaster@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# rud0lp20 <rud0lp20@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Vicious <Vicious@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# samuray22 <samuray22@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Kevin <Kevin@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# shadow <shadow@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# mc_cameri <mc_cameri@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# evera <evera@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# SinSloth <SinSloth@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# DracoRPG <DracoRPG@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# littlewolf <littlewolf@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# eaac <eaac@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# ajarn <ajarn@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# wizputer <wizputer@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Nasedo <Nasedo@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# blackhole89 <blackhole89@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# protimus <protimus@54d463be-8e91-2dee-dedb-b68131a5f0ec> https://github.com/protimus
# Komurka <Komurka@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Poki#3 <Poki#3@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# cookiecrumbs <cookiecrumbs@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Zido <Zido@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# akrus <akrus@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# markzd <markzd@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# xazax-hun <xazax-hun@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# flaid <flaid@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# lordttseven <lordttseven@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# musashiden <musashiden@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Aria <Aria@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# og2 <og2@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# reddozen <reddozen@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# KarLaeda <KarLaeda@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Zephiris <Zephiris@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# DZeroX <DZeroX@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# ignizh <ignizh@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# kobra_k88 <kobra_k88@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# shinomori <shinomori@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# LuzZza <LuzZza@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# spre123 <spre123@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Chilly0123 <Chilly0123@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# ediejohnny <ediejohnny@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# hipsterfont <hipsterfont@54d463be-8e91-2dee-dedb-b68131a5f0ec> https://github.com/hipsterfont
# nsstrunks <nsstrunks@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# shadoweathena <shadoweathena@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# technote24 <technote24@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# mandark022 <mandark022@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Kargha <Kargha@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Mass <Mass@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Sara <Sara@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# nana <nana@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# veider <veider@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Shinigami <Shinigami@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# mercurial123 <mercurial123@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# arcshiru <arcshiru@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# davidsiaw <davidsiaw@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# foruken <foruken@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# sirius <sirius@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Euph <Euph@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Kayla <Kayla@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# rikimaru17 <rikimaru17@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Evera <Evera@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# L0neW0lf.eAthena <L0neW0lf.eAthena@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# cleaverbeaver <cleaverbeaver@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# killercube <killercube@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# salepate <salepate@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# spira <spira@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# CIA-2 <CIA-2@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# Protimus <Protimus@54d463be-8e91-2dee-dedb-b68131a5f0ec> https://github.com/protimus
# lmaatl <lmaatl@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# zapbomb <zapbomb@54d463be-8e91-2dee-dedb-b68131a5f0ec>
# zido <zido@54d463be-8e91-2dee-dedb-b68131a5f0ec>

View File

@@ -1,189 +1,41 @@
language: cpp
compiler:
- clang
- gcc
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
- mysql -u $DB_ROOT -e "CREATE DATABASE $DB_NAME;" || aborterror "Unable to create database."
- mysql -u $DB_ROOT $DB_NAME < sql-files/main.sql || aborterror "Unable to import main database."
- mysql -u $DB_ROOT $DB_NAME < sql-files/logs.sql || aborterror "Unable to import logs database."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_cash_db.sql || aborterror "Unable to import cash item table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_cash_db2.sql || aborterror "Unable to import cash item 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_db.sql || aborterror "Unable to import pre-renewal item table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_db2.sql || aborterror "Unable to import pre-renewal item 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_db_re.sql || aborterror "Unable to import renewal item table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/item_db2_re.sql || aborterror "Unable to import renewal item 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_db.sql || aborterror "Unable to import pre-renewal monster table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_db2.sql || aborterror "Unable to import pre-renewal monster 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_db_re.sql || aborterror "Unable to import renewal monster table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_db2_re.sql || aborterror "Unable to import renewal monster 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_skill_db.sql || aborterror "Unable to import pre-renewal monster skill table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_skill_db2.sql || aborterror "Unable to import pre-renewal monster skill 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_skill_db_re.sql || aborterror "Unable to import renewal monster skill table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/mob_skill_db2_re.sql || aborterror "Unable to import renewal monster skill 2 table."
- mysql -u $DB_ROOT $DB_NAME < sql-files/roulette_default_data.sql || aborterror "Unable to import roulette table."
- mysql -u $DB_ROOT -e "GRANT ALL ON *.* TO '$DB_USER'@'$DB_HOST' IDENTIFIED BY '$DB_PASS';"
- sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
- sudo apt-get update -q
- sudo apt-get install gcc-5 -y
- sudo apt-get install g++-5 -y
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 1
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 1
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
- ./configure $CONFIGURE_FLAGS
- make clean
- make server
- ./map-server --run-once
env:
@@ -193,6 +45,11 @@ env:
- DB_NAME="ragnarok"
- DB_USER="ragnarok"
- DB_PASS="ragnarok"
matrix:
- CONFIGURE_FLAGS="--enable-prere=no --enable-vip=no --enable-buildbot=yes"
- CONFIGURE_FLAGS="--enable-prere=yes --enable-vip=no --enable-buildbot=yes"
- CONFIGURE_FLAGS="--enable-prere=no --enable-vip=yes --enable-buildbot=yes"
- CONFIGURE_FLAGS="--enable-prere=yes --enable-vip=yes --enable-buildbot=yes"
notifications:
email: false

View File

@@ -48,6 +48,8 @@ endmacro( CONFIGURE_WITH_LOCAL_OR_SYSTEM )
add_subdirectory( libconfig )
add_subdirectory( msinttypes )
add_subdirectory( mt19937ar )
add_subdirectory( mysql )
add_subdirectory( pcre )
add_subdirectory( zlib )

2
3rdparty/README.txt vendored
View File

@@ -2,6 +2,8 @@ This folder contains everything related to 3rdparty code or tools.
cmake - scripts for the cmake build system (http://www.cmake.org)
libconfig - library for processing structured configuration files (http://www.hyperrealm.com/libconfig/)
msinttypes - standard headers missing from Microsoft Visual Studio (http://code.google.com/p/msinttypes)
mt19937ar - code for Mersenne Twister pseudorandom number generator
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)

View File

@@ -1,6 +0,0 @@
__thread int tls;
int main(int argc, char** argv)
{
return 0;
}

View File

@@ -1,4 +1,4 @@
#pragma once
/* A Bison parser, made by GNU Bison 2.4.1. */
/* Skeleton interface for Bison's Yacc-like parsers in C
@@ -32,10 +32,7 @@
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
@@ -112,7 +109,5 @@ typedef union YYSTYPE
#endif
#ifdef __cplusplus
}
#endif /* __cplusplus */

View File

@@ -20,8 +20,6 @@
----------------------------------------------------------------------------
*/
#pragma once
#ifndef __libconfig_h
#define __libconfig_h

View File

@@ -38,31 +38,32 @@
<ProjectGuid>{F6CC5F60-BD13-41B1-81D3-822A45EC0DBD}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>libconfig</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
</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>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</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>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
@@ -106,7 +107,7 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>YY_USE_CONST;LIBCONFIG_STATIC;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>YY_USE_CONST;LIBCONFIG_STATIC;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>
@@ -120,7 +121,7 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>YY_USE_CONST;LIBCONFIG_STATIC;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>YY_USE_CONST;LIBCONFIG_STATIC;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<Link>

View File

@@ -1,5 +1,3 @@
#pragma once
/* ----------------------------------------------------------------------------
libconfig - A library for processing structured configuration files
Copyright (C) 2005-2010 Mark A Lindner

View File

@@ -1,5 +1,3 @@
#pragma once
/* ----------------------------------------------------------------------------
libconfig - A library for processing structured configuration files
Copyright (C) 2005-2010 Mark A Lindner
@@ -33,10 +31,6 @@
#define MAX_INCLUDE_DEPTH 10
#ifdef __cplusplus
extern "C" {
#endif
struct scan_context
{
config_t *config;
@@ -65,8 +59,4 @@ extern char *scanctx_take_string(struct scan_context *ctx);
extern const char *scanctx_current_filename(struct scan_context *ctx);
#ifdef __cplusplus
}
#endif
#endif /* __libconfig_scanctx_h */

View File

@@ -1,5 +1,3 @@
#pragma once
#ifndef libconfig_yyHEADER_H
#define libconfig_yyHEADER_H 1
#define libconfig_yyIN_HEADER 1

View File

@@ -1,5 +1,3 @@
#pragma once
/* ----------------------------------------------------------------------------
libconfig - A library for processing structured configuration files
Copyright (C) 2005-2010 Mark A Lindner
@@ -28,10 +26,6 @@
#include <string.h>
#include <sys/types.h>
#ifdef __cplusplus
extern "C" {
#endif
typedef struct
{
char *string;
@@ -43,8 +37,4 @@ char *strbuf_release(strbuf_t *buf);
void strbuf_append(strbuf_t *buf, const char *text);
#ifdef __cplusplus
}
#endif
#endif /* __libconfig_strbuf_h */

View File

@@ -1,5 +1,3 @@
#pragma once
/* ----------------------------------------------------------------------------
libconfig - A library for processing structured configuration files
Copyright (C) 2005-2010 Mark A Lindner

9
3rdparty/msinttypes/CMakeLists.txt vendored Normal file
View File

@@ -0,0 +1,9 @@
if( MSVC )
find_path( MSINTTYPES_INCLUDE_DIRS "inttypes.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
NO_DEFAULT_PATH )
mark_as_advanced( MSINTTYPES_INCLUDE_DIRS )
message( STATUS "Adding global include directory: ${MSINTTYPES_INCLUDE_DIRS}" )
set_property( CACHE GLOBAL_INCLUDE_DIRS PROPERTY VALUE ${GLOBAL_INCLUDE_DIRS} ${MSINTTYPES_INCLUDE_DIRS} )
endif()

305
3rdparty/msinttypes/include/inttypes.h vendored Normal file
View File

@@ -0,0 +1,305 @@
// ISO C9x compliant inttypes.h for Microsoft Visual Studio
// Based on ISO/IEC 9899:TC2 Committee draft (May 6, 2005) WG14/N1124
//
// Copyright (c) 2006 Alexander Chemeris
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
//
// 3. The name of the author may be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
// EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
///////////////////////////////////////////////////////////////////////////////
#ifndef _MSC_VER // [
#error "Use this header only with Microsoft Visual C++ compilers!"
#endif // _MSC_VER ]
#ifndef _MSC_INTTYPES_H_ // [
#define _MSC_INTTYPES_H_
#if _MSC_VER > 1000
#pragma once
#endif
#include "stdint.h"
// 7.8 Format conversion of integer types
typedef struct {
intmax_t quot;
intmax_t rem;
} imaxdiv_t;
// 7.8.1 Macros for format specifiers
#if !defined(__cplusplus) || defined(__STDC_FORMAT_MACROS) // [ See footnote 185 at page 198
// The fprintf macros for signed integers are:
#define PRId8 "d"
#define PRIi8 "i"
#define PRIdLEAST8 "d"
#define PRIiLEAST8 "i"
#define PRIdFAST8 "d"
#define PRIiFAST8 "i"
#define PRId16 "hd"
#define PRIi16 "hi"
#define PRIdLEAST16 "hd"
#define PRIiLEAST16 "hi"
#define PRIdFAST16 "hd"
#define PRIiFAST16 "hi"
#define PRId32 "I32d"
#define PRIi32 "I32i"
#define PRIdLEAST32 "I32d"
#define PRIiLEAST32 "I32i"
#define PRIdFAST32 "I32d"
#define PRIiFAST32 "I32i"
#define PRId64 "I64d"
#define PRIi64 "I64i"
#define PRIdLEAST64 "I64d"
#define PRIiLEAST64 "I64i"
#define PRIdFAST64 "I64d"
#define PRIiFAST64 "I64i"
#define PRIdMAX "I64d"
#define PRIiMAX "I64i"
#define PRIdPTR "Id"
#define PRIiPTR "Ii"
// The fprintf macros for unsigned integers are:
#define PRIo8 "o"
#define PRIu8 "u"
#define PRIx8 "x"
#define PRIX8 "X"
#define PRIoLEAST8 "o"
#define PRIuLEAST8 "u"
#define PRIxLEAST8 "x"
#define PRIXLEAST8 "X"
#define PRIoFAST8 "o"
#define PRIuFAST8 "u"
#define PRIxFAST8 "x"
#define PRIXFAST8 "X"
#define PRIo16 "ho"
#define PRIu16 "hu"
#define PRIx16 "hx"
#define PRIX16 "hX"
#define PRIoLEAST16 "ho"
#define PRIuLEAST16 "hu"
#define PRIxLEAST16 "hx"
#define PRIXLEAST16 "hX"
#define PRIoFAST16 "ho"
#define PRIuFAST16 "hu"
#define PRIxFAST16 "hx"
#define PRIXFAST16 "hX"
#define PRIo32 "I32o"
#define PRIu32 "I32u"
#define PRIx32 "I32x"
#define PRIX32 "I32X"
#define PRIoLEAST32 "I32o"
#define PRIuLEAST32 "I32u"
#define PRIxLEAST32 "I32x"
#define PRIXLEAST32 "I32X"
#define PRIoFAST32 "I32o"
#define PRIuFAST32 "I32u"
#define PRIxFAST32 "I32x"
#define PRIXFAST32 "I32X"
#define PRIo64 "I64o"
#define PRIu64 "I64u"
#define PRIx64 "I64x"
#define PRIX64 "I64X"
#define PRIoLEAST64 "I64o"
#define PRIuLEAST64 "I64u"
#define PRIxLEAST64 "I64x"
#define PRIXLEAST64 "I64X"
#define PRIoFAST64 "I64o"
#define PRIuFAST64 "I64u"
#define PRIxFAST64 "I64x"
#define PRIXFAST64 "I64X"
#define PRIoMAX "I64o"
#define PRIuMAX "I64u"
#define PRIxMAX "I64x"
#define PRIXMAX "I64X"
#define PRIoPTR "Io"
#define PRIuPTR "Iu"
#define PRIxPTR "Ix"
#define PRIXPTR "IX"
// The fscanf macros for signed integers are:
#define SCNd8 "d"
#define SCNi8 "i"
#define SCNdLEAST8 "d"
#define SCNiLEAST8 "i"
#define SCNdFAST8 "d"
#define SCNiFAST8 "i"
#define SCNd16 "hd"
#define SCNi16 "hi"
#define SCNdLEAST16 "hd"
#define SCNiLEAST16 "hi"
#define SCNdFAST16 "hd"
#define SCNiFAST16 "hi"
#define SCNd32 "ld"
#define SCNi32 "li"
#define SCNdLEAST32 "ld"
#define SCNiLEAST32 "li"
#define SCNdFAST32 "ld"
#define SCNiFAST32 "li"
#define SCNd64 "I64d"
#define SCNi64 "I64i"
#define SCNdLEAST64 "I64d"
#define SCNiLEAST64 "I64i"
#define SCNdFAST64 "I64d"
#define SCNiFAST64 "I64i"
#define SCNdMAX "I64d"
#define SCNiMAX "I64i"
#ifdef _WIN64 // [
# define SCNdPTR "I64d"
# define SCNiPTR "I64i"
#else // _WIN64 ][
# define SCNdPTR "ld"
# define SCNiPTR "li"
#endif // _WIN64 ]
// The fscanf macros for unsigned integers are:
#define SCNo8 "o"
#define SCNu8 "u"
#define SCNx8 "x"
#define SCNX8 "X"
#define SCNoLEAST8 "o"
#define SCNuLEAST8 "u"
#define SCNxLEAST8 "x"
#define SCNXLEAST8 "X"
#define SCNoFAST8 "o"
#define SCNuFAST8 "u"
#define SCNxFAST8 "x"
#define SCNXFAST8 "X"
#define SCNo16 "ho"
#define SCNu16 "hu"
#define SCNx16 "hx"
#define SCNX16 "hX"
#define SCNoLEAST16 "ho"
#define SCNuLEAST16 "hu"
#define SCNxLEAST16 "hx"
#define SCNXLEAST16 "hX"
#define SCNoFAST16 "ho"
#define SCNuFAST16 "hu"
#define SCNxFAST16 "hx"
#define SCNXFAST16 "hX"
#define SCNo32 "lo"
#define SCNu32 "lu"
#define SCNx32 "lx"
#define SCNX32 "lX"
#define SCNoLEAST32 "lo"
#define SCNuLEAST32 "lu"
#define SCNxLEAST32 "lx"
#define SCNXLEAST32 "lX"
#define SCNoFAST32 "lo"
#define SCNuFAST32 "lu"
#define SCNxFAST32 "lx"
#define SCNXFAST32 "lX"
#define SCNo64 "I64o"
#define SCNu64 "I64u"
#define SCNx64 "I64x"
#define SCNX64 "I64X"
#define SCNoLEAST64 "I64o"
#define SCNuLEAST64 "I64u"
#define SCNxLEAST64 "I64x"
#define SCNXLEAST64 "I64X"
#define SCNoFAST64 "I64o"
#define SCNuFAST64 "I64u"
#define SCNxFAST64 "I64x"
#define SCNXFAST64 "I64X"
#define SCNoMAX "I64o"
#define SCNuMAX "I64u"
#define SCNxMAX "I64x"
#define SCNXMAX "I64X"
#ifdef _WIN64 // [
# define SCNoPTR "I64o"
# define SCNuPTR "I64u"
# define SCNxPTR "I64x"
# define SCNXPTR "I64X"
#else // _WIN64 ][
# define SCNoPTR "lo"
# define SCNuPTR "lu"
# define SCNxPTR "lx"
# define SCNXPTR "lX"
#endif // _WIN64 ]
#endif // __STDC_FORMAT_MACROS ]
// 7.8.2 Functions for greatest-width integer types
// 7.8.2.1 The imaxabs function
#define imaxabs _abs64
// 7.8.2.2 The imaxdiv function
// This is modified version of div() function from Microsoft's div.c found
// in %MSVC.NET%\crt\src\div.c
#ifdef STATIC_IMAXDIV // [
static
#else // STATIC_IMAXDIV ][
_inline
#endif // STATIC_IMAXDIV ]
imaxdiv_t __cdecl imaxdiv(intmax_t numer, intmax_t denom)
{
imaxdiv_t result;
result.quot = numer / denom;
result.rem = numer % denom;
if (numer < 0 && result.rem > 0) {
// did division wrong; must fix up
++result.quot;
result.rem -= denom;
}
return result;
}
// 7.8.2.3 The strtoimax and strtoumax functions
#define strtoimax _strtoi64
#define strtoumax _strtoui64
// 7.8.2.4 The wcstoimax and wcstoumax functions
#define wcstoimax _wcstoi64
#define wcstoumax _wcstoui64
#endif // _MSC_INTTYPES_H_ ]

251
3rdparty/msinttypes/include/stdint.h vendored Normal file
View File

@@ -0,0 +1,251 @@
// ISO C9x compliant stdint.h for Microsoft Visual Studio
// Based on ISO/IEC 9899:TC2 Committee draft (May 6, 2005) WG14/N1124
//
// Copyright (c) 2006-2008 Alexander Chemeris
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer.
//
// 2. Redistributions in binary form must reproduce the above copyright
// notice, this list of conditions and the following disclaimer in the
// documentation and/or other materials provided with the distribution.
//
// 3. The name of the author may be used to endorse or promote products
// derived from this software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
// EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
///////////////////////////////////////////////////////////////////////////////
#ifndef _MSC_VER // [
#error "Use this header only with Microsoft Visual C++ compilers!"
#endif // _MSC_VER ]
#ifndef _MSC_STDINT_H_ // [
#define _MSC_STDINT_H_
#if _MSC_VER > 1000
#pragma once
#endif
#include <limits.h>
// For Visual Studio 6 in C++ mode and for many Visual Studio versions when
// compiling for ARM we should wrap <wchar.h> include with 'extern "C++" {}'
// or compiler give many errors like this:
// error C2733: second C linkage of overloaded function 'wmemchr' not allowed
#ifdef __cplusplus
#if _MSC_VER < 1300
extern "C++" {
#else
extern "C" {
#endif
#endif
# include <wchar.h>
#ifdef __cplusplus
}
#endif
// Define _W64 macros to mark types changing their size, like intptr_t.
#ifndef _W64
# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
# define _W64 __w64
# else
# define _W64
# endif
#endif
// 7.18.1 Integer types
// 7.18.1.1 Exact-width integer types
// Visual Studio 6 and Embedded Visual C++ 4 doesn't
// realize that, e.g. char has the same size as __int8
// so we give up on __intX for them.
#if (_MSC_VER < 1300)
typedef signed char int8_t;
typedef signed short int16_t;
typedef signed int int32_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;
#else
typedef signed __int8 int8_t;
typedef signed __int16 int16_t;
typedef signed __int32 int32_t;
typedef unsigned __int8 uint8_t;
typedef unsigned __int16 uint16_t;
typedef unsigned __int32 uint32_t;
#endif
typedef signed __int64 int64_t;
typedef unsigned __int64 uint64_t;
// 7.18.1.2 Minimum-width integer types
typedef int8_t int_least8_t;
typedef int16_t int_least16_t;
typedef int32_t int_least32_t;
typedef int64_t int_least64_t;
typedef uint8_t uint_least8_t;
typedef uint16_t uint_least16_t;
typedef uint32_t uint_least32_t;
typedef uint64_t uint_least64_t;
// 7.18.1.3 Fastest minimum-width integer types
typedef int8_t int_fast8_t;
typedef int16_t int_fast16_t;
typedef int32_t int_fast32_t;
typedef int64_t int_fast64_t;
typedef uint8_t uint_fast8_t;
typedef uint16_t uint_fast16_t;
typedef uint32_t uint_fast32_t;
typedef uint64_t uint_fast64_t;
// 7.18.1.4 Integer types capable of holding object pointers
#ifdef _WIN64 // [
typedef signed __int64 intptr_t;
typedef unsigned __int64 uintptr_t;
#else // _WIN64 ][
typedef _W64 signed int intptr_t;
typedef _W64 unsigned int uintptr_t;
#endif // _WIN64 ]
// 7.18.1.5 Greatest-width integer types
typedef int64_t intmax_t;
typedef uint64_t uintmax_t;
// 7.18.2 Limits of specified-width integer types
#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) // [ See footnote 220 at page 257 and footnote 221 at page 259
// 7.18.2.1 Limits of exact-width integer types
#define INT8_MIN ((int8_t)_I8_MIN)
#define INT8_MAX _I8_MAX
#define INT16_MIN ((int16_t)_I16_MIN)
#define INT16_MAX _I16_MAX
#define INT32_MIN ((int32_t)_I32_MIN)
#define INT32_MAX _I32_MAX
#define INT64_MIN ((int64_t)_I64_MIN)
#define INT64_MAX _I64_MAX
#define UINT8_MAX _UI8_MAX
#define UINT16_MAX _UI16_MAX
#define UINT32_MAX _UI32_MAX
#define UINT64_MAX _UI64_MAX
// 7.18.2.2 Limits of minimum-width integer types
#define INT_LEAST8_MIN INT8_MIN
#define INT_LEAST8_MAX INT8_MAX
#define INT_LEAST16_MIN INT16_MIN
#define INT_LEAST16_MAX INT16_MAX
#define INT_LEAST32_MIN INT32_MIN
#define INT_LEAST32_MAX INT32_MAX
#define INT_LEAST64_MIN INT64_MIN
#define INT_LEAST64_MAX INT64_MAX
#define UINT_LEAST8_MAX UINT8_MAX
#define UINT_LEAST16_MAX UINT16_MAX
#define UINT_LEAST32_MAX UINT32_MAX
#define UINT_LEAST64_MAX UINT64_MAX
// 7.18.2.3 Limits of fastest minimum-width integer types
#define INT_FAST8_MIN INT8_MIN
#define INT_FAST8_MAX INT8_MAX
#define INT_FAST16_MIN INT16_MIN
#define INT_FAST16_MAX INT16_MAX
#define INT_FAST32_MIN INT32_MIN
#define INT_FAST32_MAX INT32_MAX
#define INT_FAST64_MIN INT64_MIN
#define INT_FAST64_MAX INT64_MAX
#define UINT_FAST8_MAX UINT8_MAX
#define UINT_FAST16_MAX UINT16_MAX
#define UINT_FAST32_MAX UINT32_MAX
#define UINT_FAST64_MAX UINT64_MAX
// 7.18.2.4 Limits of integer types capable of holding object pointers
#ifdef _WIN64 // [
# define INTPTR_MIN INT64_MIN
# define INTPTR_MAX INT64_MAX
# define UINTPTR_MAX UINT64_MAX
#else // _WIN64 ][
# define INTPTR_MIN INT32_MIN
# define INTPTR_MAX INT32_MAX
# define UINTPTR_MAX UINT32_MAX
#endif // _WIN64 ]
// 7.18.2.5 Limits of greatest-width integer types
#define INTMAX_MIN INT64_MIN
#define INTMAX_MAX INT64_MAX
#define UINTMAX_MAX UINT64_MAX
// 7.18.3 Limits of other integer types
#ifdef _WIN64 // [
# define PTRDIFF_MIN _I64_MIN
# define PTRDIFF_MAX _I64_MAX
#else // _WIN64 ][
# define PTRDIFF_MIN _I32_MIN
# define PTRDIFF_MAX _I32_MAX
#endif // _WIN64 ]
#define SIG_ATOMIC_MIN INT_MIN
#define SIG_ATOMIC_MAX INT_MAX
#ifndef SIZE_MAX // [
# ifdef _WIN64 // [
# define SIZE_MAX _UI64_MAX
# else // _WIN64 ][
# define SIZE_MAX _UI32_MAX
# endif // _WIN64 ]
#endif // SIZE_MAX ]
// WCHAR_MIN and WCHAR_MAX are also defined in <wchar.h>
#ifndef WCHAR_MIN // [
# define WCHAR_MIN 0
#endif // WCHAR_MIN ]
#ifndef WCHAR_MAX // [
# define WCHAR_MAX _UI16_MAX
#endif // WCHAR_MAX ]
#define WINT_MIN 0
#define WINT_MAX _UI16_MAX
#endif // __STDC_LIMIT_MACROS ]
// 7.18.4 Limits of other integer types
#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) // [ See footnote 224 at page 260
// 7.18.4.1 Macros for minimum-width integer constants
#define INT8_C(val) val##i8
#define INT16_C(val) val##i16
#define INT32_C(val) val##i32
#define INT64_C(val) val##i64
#define UINT8_C(val) val##ui8
#define UINT16_C(val) val##ui16
#define UINT32_C(val) val##ui32
#define UINT64_C(val) val##ui64
// 7.18.4.2 Macros for greatest-width integer constants
#define INTMAX_C INT64_C
#define UINTMAX_C UINT64_C
#endif // __STDC_CONSTANT_MACROS ]
#endif // _MSC_STDINT_H_ ]

16
3rdparty/mt19937ar/CMakeLists.txt vendored Normal file
View File

@@ -0,0 +1,16 @@
find_path( MT19937AR_INCLUDE_DIRS "mt19937ar.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}"
NO_DEFAULT_PATH )
find_path( MT19937AR_SOURCE_DIR "mt19937ar.c"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}"
NO_DEFAULT_PATH )
mark_as_advanced( MT19937AR_INCLUDE_DIRS )
mark_as_advanced( MT19937AR_SOURCE_DIR )
set( MT19937AR_HEADERS
"${CMAKE_CURRENT_SOURCE_DIR}/mt19937ar.h"
CACHE INTERNAL "mt19937ar headers" )
set( MT19937AR_SOURCES
"${CMAKE_CURRENT_SOURCE_DIR}/mt19937ar.c"
CACHE INTERNAL "mt19937ar sources" )

26
3rdparty/mt19937ar/Makefile.in vendored Normal file
View File

@@ -0,0 +1,26 @@
MT19937AR_OBJ = mt19937ar.o
MT19937AR_H = mt19937ar.h
@SET_MAKE@
#####################################################################
.PHONY : all clean help
all: $(MT19937AR_OBJ)
clean:
@echo " CLEAN mt19937ar"
@rm -rf *.o
help:
@echo "possible targets are 'all' 'clean' 'help'"
@echo "'all' - builds $(MT19937AR_OBJ)"
@echo "'clean' - deletes $(MT19937AR_OBJ)"
@echo "'help' - outputs this message"
#####################################################################
%.o: %.c $(MT19937AR_H)
@echo " CC $<"
@@CC@ @CFLAGS_AR@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<

175
3rdparty/mt19937ar/mt19937ar.c vendored Normal file
View File

@@ -0,0 +1,175 @@
/*
A C-program for MT19937, with initialization improved 2002/1/26.
Coded by Takuji Nishimura and Makoto Matsumoto.
Before using, initialize the state by using init_genrand(seed)
or init_by_array(init_key, key_length).
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
All rights reserved.
Copyright (C) 2005, Mutsuo Saito,
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The names of its contributors may not be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Any feedback is very welcome.
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)
*/
#include <stdio.h>
#include "mt19937ar.h"
/* Period parameters */
#define N 624
#define M 397
#define MATRIX_A 0x9908b0dfUL /* constant vector a */
#define UPPER_MASK 0x80000000UL /* most significant w-r bits */
#define LOWER_MASK 0x7fffffffUL /* least significant r bits */
static unsigned long mt[N]; /* the array for the state vector */
static int mti=N+1; /* mti==N+1 means mt[N] is not initialized */
/* initializes mt[N] with a seed */
void init_genrand(unsigned long s)
{
mt[0]= s & 0xffffffffUL;
for (mti=1; mti<N; mti++) {
mt[mti] =
(1812433253UL * (mt[mti-1] ^ (mt[mti-1] >> 30)) + mti);
/* See Knuth TAOCP Vol2. 3rd Ed. P.106 for multiplier. */
/* In the previous versions, MSBs of the seed affect */
/* only MSBs of the array mt[]. */
/* 2002/01/09 modified by Makoto Matsumoto */
mt[mti] &= 0xffffffffUL;
/* for >32 bit machines */
}
}
/* initialize by an array with array-length */
/* init_key is the array for initializing keys */
/* key_length is its length */
/* slight change for C++, 2004/2/26 */
void init_by_array(unsigned long init_key[], int key_length)
{
int i, j, k;
init_genrand(19650218UL);
i=1; j=0;
k = (N>key_length ? N : key_length);
for (; k; k--) {
mt[i] = (mt[i] ^ ((mt[i-1] ^ (mt[i-1] >> 30)) * 1664525UL))
+ init_key[j] + j; /* non linear */
mt[i] &= 0xffffffffUL; /* for WORDSIZE > 32 machines */
i++; j++;
if (i>=N) { mt[0] = mt[N-1]; i=1; }
if (j>=key_length) j=0;
}
for (k=N-1; k; k--) {
mt[i] = (mt[i] ^ ((mt[i-1] ^ (mt[i-1] >> 30)) * 1566083941UL))
- i; /* non linear */
mt[i] &= 0xffffffffUL; /* for WORDSIZE > 32 machines */
i++;
if (i>=N) { mt[0] = mt[N-1]; i=1; }
}
mt[0] = 0x80000000UL; /* MSB is 1; assuring non-zero initial array */
}
/* generates a random number on [0,0xffffffff]-interval */
unsigned long genrand_int32(void)
{
unsigned long y;
static unsigned long mag01[2]={0x0UL, MATRIX_A};
/* mag01[x] = x * MATRIX_A for x=0,1 */
if (mti >= N) { /* generate N words at one time */
int kk;
if (mti == N+1) /* if init_genrand() has not been called, */
init_genrand(5489UL); /* a default initial seed is used */
for (kk=0;kk<N-M;kk++) {
y = (mt[kk]&UPPER_MASK)|(mt[kk+1]&LOWER_MASK);
mt[kk] = mt[kk+M] ^ (y >> 1) ^ mag01[y & 0x1UL];
}
for (;kk<N-1;kk++) {
y = (mt[kk]&UPPER_MASK)|(mt[kk+1]&LOWER_MASK);
mt[kk] = mt[kk+(M-N)] ^ (y >> 1) ^ mag01[y & 0x1UL];
}
y = (mt[N-1]&UPPER_MASK)|(mt[0]&LOWER_MASK);
mt[N-1] = mt[M-1] ^ (y >> 1) ^ mag01[y & 0x1UL];
mti = 0;
}
y = mt[mti++];
/* Tempering */
y ^= (y >> 11);
y ^= (y << 7) & 0x9d2c5680UL;
y ^= (y << 15) & 0xefc60000UL;
y ^= (y >> 18);
return y;
}
/* generates a random number on [0,0x7fffffff]-interval */
long genrand_int31(void)
{
return (long)(genrand_int32()>>1);
}
/* generates a random number on [0,1]-real-interval */
double genrand_real1(void)
{
return genrand_int32()*(1.0/4294967295.0);
/* divided by 2^32-1 */
}
/* generates a random number on [0,1)-real-interval */
double genrand_real2(void)
{
return genrand_int32()*(1.0/4294967296.0);
/* divided by 2^32 */
}
/* generates a random number on (0,1)-real-interval */
double genrand_real3(void)
{
return (((double)genrand_int32()) + 0.5)*(1.0/4294967296.0);
/* divided by 2^32 */
}
/* generates a random number on [0,1) with 53-bit resolution*/
double genrand_res53(void)
{
unsigned long a=genrand_int32()>>5, b=genrand_int32()>>6;
return(a*67108864.0+b)*(1.0/9007199254740992.0);
}
/* These real versions are due to Isaku Wada, 2002/01/09 added */

72
3rdparty/mt19937ar/mt19937ar.h vendored Normal file
View File

@@ -0,0 +1,72 @@
/*
A C-program for MT19937, with initialization improved 2002/1/26.
Coded by Takuji Nishimura and Makoto Matsumoto.
Before using, initialize the state by using init_genrand(seed)
or init_by_array(init_key, key_length).
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
All rights reserved.
Copyright (C) 2005, Mutsuo Saito
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The names of its contributors may not be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Any feedback is very welcome.
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)
*/
/* initializes mt[N] with a seed */
void init_genrand(unsigned long s);
/* initialize by an array with array-length */
/* init_key is the array for initializing keys */
/* key_length is its length */
/* slight change for C++, 2004/2/26 */
void init_by_array(unsigned long init_key[], int key_length);
/* generates a random number on [0,0xffffffff]-interval */
unsigned long genrand_int32(void);
/* generates a random number on [0,0x7fffffff]-interval */
long genrand_int31(void);
/* These real versions are due to Isaku Wada, 2002/01/09 added */
/* generates a random number on [0,1]-real-interval */
double genrand_real1(void);
/* generates a random number on [0,1)-real-interval */
double genrand_real2(void);
/* generates a random number on (0,1)-real-interval */
double genrand_real3(void);
/* generates a random number on [0,1) with 53-bit resolution*/
double genrand_res53(void);

403
3rdparty/mt19937ar/mt19937ar.out vendored Normal file
View File

@@ -0,0 +1,403 @@
1000 outputs of genrand_int32()
1067595299 955945823 477289528 4107218783 4228976476
3344332714 3355579695 227628506 810200273 2591290167
2560260675 3242736208 646746669 1479517882 4245472273
1143372638 3863670494 3221021970 1773610557 1138697238
1421897700 1269916527 2859934041 1764463362 3874892047
3965319921 72549643 2383988930 2600218693 3237492380
2792901476 725331109 605841842 271258942 715137098
3297999536 1322965544 4229579109 1395091102 3735697720
2101727825 3730287744 2950434330 1661921839 2895579582
2370511479 1004092106 2247096681 2111242379 3237345263
4082424759 219785033 2454039889 3709582971 835606218
2411949883 2735205030 756421180 2175209704 1873865952
2762534237 4161807854 3351099340 181129879 3269891896
776029799 2218161979 3001745796 1866825872 2133627728
34862734 1191934573 3102311354 2916517763 1012402762
2184831317 4257399449 2899497138 3818095062 3030756734
1282161629 420003642 2326421477 2741455717 1278020671
3744179621 271777016 2626330018 2560563991 3055977700
4233527566 1228397661 3595579322 1077915006 2395931898
1851927286 3013683506 1999971931 3006888962 1049781534
1488758959 3491776230 104418065 2448267297 3075614115
3872332600 891912190 3936547759 2269180963 2633455084
1047636807 2604612377 2709305729 1952216715 207593580
2849898034 670771757 2210471108 467711165 263046873
3569667915 1042291111 3863517079 1464270005 2758321352
3790799816 2301278724 3106281430 7974801 2792461636
555991332 621766759 1322453093 853629228 686962251
1455120532 957753161 1802033300 1021534190 3486047311
1902128914 3701138056 4176424663 1795608698 560858864
3737752754 3141170998 1553553385 3367807274 711546358
2475125503 262969859 251416325 2980076994 1806565895
969527843 3529327173 2736343040 2987196734 1649016367
2206175811 3048174801 3662503553 3138851612 2660143804
1663017612 1816683231 411916003 3887461314 2347044079
1015311755 1203592432 2170947766 2569420716 813872093
1105387678 1431142475 220570551 4243632715 4179591855
2607469131 3090613241 282341803 1734241730 1391822177
1001254810 827927915 1886687171 3935097347 2631788714
3905163266 110554195 2447955646 3717202975 3304793075
3739614479 3059127468 953919171 2590123714 1132511021
3795593679 2788030429 982155079 3472349556 859942552
2681007391 2299624053 647443547 233600422 608168955
3689327453 1849778220 1608438222 3968158357 2692977776
2851872572 246750393 3582818628 3329652309 4036366910
1012970930 950780808 3959768744 2538550045 191422718
2658142375 3276369011 2927737484 1234200027 1920815603
3536074689 1535612501 2184142071 3276955054 428488088
2378411984 4059769550 3913744741 2732139246 64369859
3755670074 842839565 2819894466 2414718973 1010060670
1839715346 2410311136 152774329 3485009480 4102101512
2852724304 879944024 1785007662 2748284463 1354768064
3267784736 2269127717 3001240761 3179796763 895723219
865924942 4291570937 89355264 1471026971 4114180745
3201939751 2867476999 2460866060 3603874571 2238880432
3308416168 2072246611 2755653839 3773737248 1709066580
4282731467 2746170170 2832568330 433439009 3175778732
26248366 2551382801 183214346 3893339516 1928168445
1337157619 3429096554 3275170900 1782047316 4264403756
1876594403 4289659572 3223834894 1728705513 4068244734
2867840287 1147798696 302879820 1730407747 1923824407
1180597908 1569786639 198796327 560793173 2107345620
2705990316 3448772106 3678374155 758635715 884524671
486356516 1774865603 3881226226 2635213607 1181121587
1508809820 3178988241 1594193633 1235154121 326117244
2304031425 937054774 2687415945 3192389340 2003740439
1823766188 2759543402 10067710 1533252662 4132494984
82378136 420615890 3467563163 541562091 3535949864
2277319197 3330822853 3215654174 4113831979 4204996991
2162248333 3255093522 2219088909 2978279037 255818579
2859348628 3097280311 2569721123 1861951120 2907080079
2719467166 998319094 2521935127 2404125338 259456032
2086860995 1839848496 1893547357 2527997525 1489393124
2860855349 76448234 2264934035 744914583 2586791259
1385380501 66529922 1819103258 1899300332 2098173828
1793831094 276463159 360132945 4178212058 595015228
177071838 2800080290 1573557746 1548998935 378454223
1460534296 1116274283 3112385063 3709761796 827999348
3580042847 1913901014 614021289 4278528023 1905177404
45407939 3298183234 1184848810 3644926330 3923635459
1627046213 3677876759 969772772 1160524753 1522441192
452369933 1527502551 832490847 1003299676 1071381111
2891255476 973747308 4086897108 1847554542 3895651598
2227820339 1621250941 2881344691 3583565821 3510404498
849362119 862871471 797858058 2867774932 2821282612
3272403146 3997979905 209178708 1805135652 6783381
2823361423 792580494 4263749770 776439581 3798193823
2853444094 2729507474 1071873341 1329010206 1289336450
3327680758 2011491779 80157208 922428856 1158943220
1667230961 2461022820 2608845159 387516115 3345351910
1495629111 4098154157 3156649613 3525698599 4134908037
446713264 2137537399 3617403512 813966752 1157943946
3734692965 1680301658 3180398473 3509854711 2228114612
1008102291 486805123 863791847 3189125290 1050308116
3777341526 4291726501 844061465 1347461791 2826481581
745465012 2055805750 4260209475 2386693097 2980646741
447229436 2077782664 1232942813 4023002732 1399011509
3140569849 2579909222 3794857471 900758066 2887199683
1720257997 3367494931 2668921229 955539029 3818726432
1105704962 3889207255 2277369307 2746484505 1761846513
2413916784 2685127085 4240257943 1166726899 4215215715
3082092067 3960461946 1663304043 2087473241 4162589986
2507310778 1579665506 767234210 970676017 492207530
1441679602 1314785090 3262202570 3417091742 1561989210
3011406780 1146609202 3262321040 1374872171 1634688712
1280458888 2230023982 419323804 3262899800 39783310
1641619040 1700368658 2207946628 2571300939 2424079766
780290914 2715195096 3390957695 163151474 2309534542
1860018424 555755123 280320104 1604831083 2713022383
1728987441 3639955502 623065489 3828630947 4275479050
3516347383 2343951195 2430677756 635534992 3868699749
808442435 3070644069 4282166003 2093181383 2023555632
1568662086 3422372620 4134522350 3016979543 3259320234
2888030729 3185253876 4258779643 1267304371 1022517473
815943045 929020012 2995251018 3371283296 3608029049
2018485115 122123397 2810669150 1411365618 1238391329
1186786476 3155969091 2242941310 1765554882 279121160
4279838515 1641578514 3796324015 13351065 103516986
1609694427 551411743 2493771609 1316337047 3932650856
4189700203 463397996 2937735066 1855616529 2626847990
55091862 3823351211 753448970 4045045500 1274127772
1124182256 92039808 2126345552 425973257 386287896
2589870191 1987762798 4084826973 2172456685 3366583455
3602966653 2378803535 2901764433 3716929006 3710159000
2653449155 3469742630 3096444476 3932564653 2595257433
318974657 3146202484 853571438 144400272 3768408841
782634401 2161109003 570039522 1886241521 14249488
2230804228 1604941699 3928713335 3921942509 2155806892
134366254 430507376 1924011722 276713377 196481886
3614810992 1610021185 1785757066 851346168 3761148643
2918835642 3364422385 3012284466 3735958851 2643153892
3778608231 1164289832 205853021 2876112231 3503398282
3078397001 3472037921 1748894853 2740861475 316056182
1660426908 168885906 956005527 3984354789 566521563
1001109523 1216710575 2952284757 3834433081 3842608301
2467352408 3974441264 3256601745 1409353924 1329904859
2307560293 3125217879 3622920184 3832785684 3882365951
2308537115 2659155028 1450441945 3532257603 3186324194
1225603425 1124246549 175808705 3009142319 2796710159
3651990107 160762750 1902254979 1698648476 1134980669
497144426 3302689335 4057485630 3603530763 4087252587
427812652 286876201 823134128 1627554964 3745564327
2589226092 4202024494 62878473 3275585894 3987124064
2791777159 1916869511 2585861905 1375038919 1403421920
60249114 3811870450 3021498009 2612993202 528933105
2757361321 3341402964 2621861700 273128190 4015252178
3094781002 1621621288 2337611177 1796718448 1258965619
4241913140 2138560392 3022190223 4174180924 450094611
3274724580 617150026 2704660665 1469700689 1341616587
356715071 1188789960 2278869135 1766569160 2795896635
57824704 2893496380 1235723989 1630694347 3927960522
428891364 1814070806 2287999787 4125941184 3968103889
3548724050 1025597707 1404281500 2002212197 92429143
2313943944 2403086080 3006180634 3561981764 1671860914
1768520622 1803542985 844848113 3006139921 1410888995
1157749833 2125704913 1789979528 1799263423 741157179
2405862309 767040434 2655241390 3663420179 2172009096
2511931187 1680542666 231857466 1154981000 157168255
1454112128 3505872099 1929775046 2309422350 2143329496
2960716902 407610648 2938108129 2581749599 538837155
2342628867 430543915 740188568 1937713272 3315215132
2085587024 4030765687 766054429 3517641839 689721775
1294158986 1753287754 4202601348 1974852792 33459103
3568087535 3144677435 1686130825 4134943013 3005738435
3599293386 426570142 754104406 3660892564 1964545167
829466833 821587464 1746693036 1006492428 1595312919
1256599985 1024482560 1897312280 2902903201 691790057
1037515867 3176831208 1968401055 2173506824 1089055278
1748401123 2941380082 968412354 1818753861 2973200866
3875951774 1119354008 3988604139 1647155589 2232450826
3486058011 3655784043 3759258462 847163678 1082052057
989516446 2871541755 3196311070 3929963078 658187585
3664944641 2175149170 2203709147 2756014689 2456473919
3890267390 1293787864 2830347984 3059280931 4158802520
1561677400 2586570938 783570352 1355506163 31495586
3789437343 3340549429 2092501630 896419368 671715824
3530450081 3603554138 1055991716 3442308219 1499434728
3130288473 3639507000 17769680 2259741420 487032199
4227143402 3693771256 1880482820 3924810796 381462353
4017855991 2452034943 2736680833 2209866385 2128986379
437874044 595759426 641721026 1636065708 3899136933
629879088 3591174506 351984326 2638783544 2348444281
2341604660 2123933692 143443325 1525942256 364660499
599149312 939093251 1523003209 106601097 376589484
1346282236 1297387043 764598052 3741218111 933457002
1886424424 3219631016 525405256 3014235619 323149677
2038881721 4100129043 2851715101 2984028078 1888574695
2014194741 3515193880 4180573530 3461824363 2641995497
3179230245 2902294983 2217320456 4040852155 1784656905
3311906931 87498458 2752971818 2635474297 2831215366
3682231106 2920043893 3772929704 2816374944 309949752
2383758854 154870719 385111597 1191604312 1840700563
872191186 2925548701 1310412747 2102066999 1504727249
3574298750 1191230036 3330575266 3180292097 3539347721
681369118 3305125752 3648233597 950049240 4173257693
1760124957 512151405 681175196 580563018 1169662867
4015033554 2687781101 699691603 2673494188 1137221356
123599888 472658308 1053598179 1012713758 3481064843
3759461013 3981457956 3830587662 1877191791 3650996736
988064871 3515461600 4089077232 2225147448 1249609188
2643151863 3896204135 2416995901 1397735321 3460025646
1000 outputs of genrand_real2()
0.76275443 0.99000644 0.98670464 0.10143112 0.27933125
0.69867227 0.94218740 0.03427201 0.78842173 0.28180608
0.92179002 0.20785655 0.54534773 0.69644020 0.38107718
0.23978165 0.65286910 0.07514568 0.22765211 0.94872929
0.74557914 0.62664415 0.54708246 0.90959343 0.42043116
0.86334511 0.19189126 0.14718544 0.70259889 0.63426346
0.77408121 0.04531601 0.04605807 0.88595519 0.69398270
0.05377184 0.61711170 0.05565708 0.10133577 0.41500776
0.91810699 0.22320679 0.23353705 0.92871862 0.98897234
0.19786706 0.80558809 0.06961067 0.55840445 0.90479405
0.63288060 0.95009721 0.54948447 0.20645042 0.45000959
0.87050869 0.70806991 0.19406895 0.79286390 0.49332866
0.78483914 0.75145146 0.12341941 0.42030252 0.16728160
0.59906494 0.37575460 0.97815160 0.39815952 0.43595080
0.04952478 0.33917805 0.76509902 0.61034321 0.90654701
0.92915732 0.85365931 0.18812377 0.65913428 0.28814566
0.59476081 0.27835931 0.60722542 0.68310435 0.69387186
0.03699800 0.65897714 0.17527003 0.02889304 0.86777366
0.12352068 0.91439461 0.32022990 0.44445731 0.34903686
0.74639273 0.65918367 0.92492794 0.31872642 0.77749724
0.85413832 0.76385624 0.32744211 0.91326300 0.27458185
0.22190155 0.19865383 0.31227402 0.85321225 0.84243342
0.78544200 0.71854080 0.92503892 0.82703064 0.88306297
0.47284073 0.70059042 0.48003761 0.38671694 0.60465770
0.41747204 0.47163243 0.72750808 0.65830223 0.10955369
0.64215401 0.23456345 0.95944940 0.72822249 0.40888451
0.69980355 0.26677428 0.57333635 0.39791582 0.85377858
0.76962816 0.72004885 0.90903087 0.51376506 0.37732665
0.12691640 0.71249738 0.81217908 0.37037313 0.32772374
0.14238259 0.05614811 0.74363008 0.39773267 0.94859135
0.31452454 0.11730313 0.62962618 0.33334237 0.45547255
0.10089665 0.56550662 0.60539371 0.16027624 0.13245301
0.60959939 0.04671662 0.99356286 0.57660859 0.40269560
0.45274629 0.06699735 0.85064246 0.87742744 0.54508392
0.87242982 0.29321385 0.67660627 0.68230715 0.79052073
0.48592054 0.25186266 0.93769755 0.28565487 0.47219067
0.99054882 0.13155240 0.47110470 0.98556600 0.84397623
0.12875246 0.90953202 0.49129015 0.23792727 0.79481194
0.44337770 0.96564297 0.67749118 0.55684872 0.27286897
0.79538393 0.61965356 0.22487929 0.02226018 0.49248200
0.42247006 0.91797788 0.99250134 0.23449967 0.52531508
0.10246337 0.78685622 0.34310922 0.89892996 0.40454552
0.68608407 0.30752487 0.83601319 0.54956031 0.63777550
0.82199797 0.24890696 0.48801123 0.48661910 0.51223987
0.32969635 0.31075073 0.21393155 0.73453207 0.15565705
0.58584522 0.28976728 0.97621478 0.61498701 0.23891470
0.28518540 0.46809591 0.18371914 0.37597910 0.13492176
0.66849449 0.82811466 0.56240330 0.37548956 0.27562998
0.27521910 0.74096121 0.77176757 0.13748143 0.99747138
0.92504502 0.09175241 0.21389176 0.21766512 0.31183245
0.23271221 0.21207367 0.57903312 0.77523344 0.13242613
0.31037988 0.01204835 0.71652949 0.84487594 0.14982178
0.57423142 0.45677888 0.48420169 0.53465428 0.52667473
0.46880526 0.49849733 0.05670710 0.79022476 0.03872047
0.21697212 0.20443086 0.28949326 0.81678186 0.87629474
0.92297064 0.27373097 0.84625273 0.51505586 0.00582792
0.33295971 0.91848412 0.92537226 0.91760033 0.07541125
0.71745848 0.61158698 0.00941650 0.03135554 0.71527471
0.24821915 0.63636652 0.86159918 0.26450229 0.60160194
0.35557725 0.24477500 0.07186456 0.51757096 0.62120362
0.97981062 0.69954667 0.21065616 0.13382753 0.27693186
0.59644095 0.71500764 0.04110751 0.95730081 0.91600724
0.47704678 0.26183479 0.34706971 0.07545431 0.29398385
0.93236070 0.60486023 0.48015011 0.08870451 0.45548581
0.91872718 0.38142712 0.10668643 0.01397541 0.04520355
0.93822273 0.18011940 0.57577277 0.91427606 0.30911399
0.95853475 0.23611214 0.69619891 0.69601980 0.76765372
0.58515930 0.49479057 0.11288752 0.97187699 0.32095365
0.57563608 0.40760618 0.78703383 0.43261152 0.90877651
0.84686346 0.10599030 0.72872803 0.19315490 0.66152912
0.10210518 0.06257876 0.47950688 0.47062066 0.72701157
0.48915116 0.66110261 0.60170685 0.24516994 0.12726050
0.03451185 0.90864994 0.83494878 0.94800035 0.91035206
0.14480751 0.88458997 0.53498312 0.15963215 0.55378627
0.35171349 0.28719791 0.09097957 0.00667896 0.32309622
0.87561479 0.42534520 0.91748977 0.73908457 0.41793223
0.99279792 0.87908370 0.28458072 0.59132853 0.98672190
0.28547393 0.09452165 0.89910674 0.53681109 0.37931425
0.62683489 0.56609740 0.24801549 0.52948179 0.98328855
0.66403523 0.55523786 0.75886666 0.84784685 0.86829981
0.71448906 0.84670080 0.43922919 0.20771016 0.64157936
0.25664246 0.73055695 0.86395782 0.65852932 0.99061803
0.40280575 0.39146298 0.07291005 0.97200603 0.20555729
0.59616495 0.08138254 0.45796388 0.33681125 0.33989127
0.18717090 0.53545811 0.60550838 0.86520709 0.34290701
0.72743276 0.73023855 0.34195926 0.65019733 0.02765254
0.72575740 0.32709576 0.03420866 0.26061893 0.56997511
0.28439072 0.84422744 0.77637570 0.55982168 0.06720327
0.58449067 0.71657369 0.15819609 0.58042821 0.07947911
0.40193792 0.11376012 0.88762938 0.67532159 0.71223735
0.27829114 0.04806073 0.21144026 0.58830274 0.04140071
0.43215628 0.12952729 0.94668759 0.87391019 0.98382450
0.27750768 0.90849647 0.90962737 0.59269720 0.96102026
0.49544979 0.32007095 0.62585546 0.03119821 0.85953001
0.22017528 0.05834068 0.80731217 0.53799961 0.74166948
0.77426600 0.43938444 0.54862081 0.58575513 0.15886492
0.73214332 0.11649057 0.77463977 0.85788827 0.17061997
0.66838056 0.96076133 0.07949296 0.68521946 0.89986254
0.05667410 0.12741385 0.83470977 0.63969104 0.46612929
0.10200126 0.01194925 0.10476340 0.90285217 0.31221221
0.32980614 0.46041971 0.52024973 0.05425470 0.28330912
0.60426543 0.00598243 0.97244013 0.21135841 0.78561597
0.78428734 0.63422849 0.32909934 0.44771136 0.27380750
0.14966697 0.18156268 0.65686758 0.28726350 0.97074787
0.63676171 0.96649494 0.24526295 0.08297372 0.54257548
0.03166785 0.33735355 0.15946671 0.02102971 0.46228045
0.11892296 0.33408336 0.29875681 0.29847692 0.73767569
0.02080745 0.62980060 0.08082293 0.22993106 0.25031439
0.87787525 0.45150053 0.13673441 0.63407612 0.97907688
0.52241942 0.50580158 0.06273902 0.05270283 0.77031811
0.05113352 0.24393329 0.75036441 0.37436336 0.22877652
0.59975358 0.85707591 0.88691457 0.85547165 0.36641027
0.58720133 0.45462835 0.09243817 0.32981586 0.07820411
0.25421519 0.36004706 0.60092307 0.46192412 0.36758683
0.98424170 0.08019934 0.68594024 0.45826386 0.29962317
0.79365413 0.89231296 0.49478547 0.87645944 0.23590734
0.28106737 0.75026285 0.08136314 0.79582424 0.76010628
0.82792971 0.27947652 0.72482861 0.82191216 0.46171689
0.79189752 0.96043686 0.51609668 0.88995725 0.28998963
0.55191845 0.03934737 0.83033700 0.49553013 0.98009549
0.19017594 0.98347750 0.33452066 0.87144372 0.72106301
0.71272114 0.71465963 0.88361677 0.85571283 0.73782329
0.20920458 0.34855153 0.46766817 0.02780062 0.74898344
0.03680650 0.44866557 0.77426312 0.91025891 0.25195236
0.87319953 0.63265037 0.25552148 0.27422476 0.95217406
0.39281839 0.66441573 0.09158900 0.94515992 0.07800798
0.02507888 0.39901462 0.17382573 0.12141278 0.85502334
0.19902911 0.02160210 0.44460522 0.14688742 0.68020336
0.71323733 0.60922473 0.95400380 0.99611159 0.90897777
0.41073520 0.66206647 0.32064685 0.62805003 0.50677209
0.52690101 0.87473387 0.73918362 0.39826974 0.43683919
0.80459118 0.32422684 0.01958019 0.95319576 0.98326137
0.83931735 0.69060863 0.33671416 0.68062550 0.65152380
0.33392969 0.03451730 0.95227244 0.68200635 0.85074171
0.64721009 0.51234433 0.73402047 0.00969637 0.93835057
0.80803854 0.31485260 0.20089527 0.01323282 0.59933780
0.31584602 0.20209563 0.33754800 0.68604181 0.24443049
0.19952227 0.78162632 0.10336988 0.11360736 0.23536740
0.23262256 0.67803776 0.48749791 0.74658435 0.92156640
0.56706407 0.36683221 0.99157136 0.23421374 0.45183767
0.91609720 0.85573315 0.37706276 0.77042618 0.30891908
0.40709595 0.06944866 0.61342849 0.88817388 0.58734506
0.98711323 0.14744128 0.63242656 0.87704136 0.68347125
0.84446569 0.43265239 0.25146321 0.04130111 0.34259839
0.92697368 0.40878778 0.56990338 0.76204273 0.19820348
0.66314909 0.02482844 0.06669207 0.50205581 0.26084093
0.65139159 0.41650223 0.09733904 0.56344203 0.62651696
0.67332139 0.58037374 0.47258086 0.21010758 0.05713135
0.89390629 0.10781246 0.32037450 0.07628388 0.34227964
0.42190597 0.58201860 0.77363549 0.49595133 0.86031236
0.83906769 0.81098161 0.26694195 0.14215941 0.88210306
0.53634237 0.12090720 0.82480459 0.75930318 0.31847147
0.92768077 0.01037616 0.56201727 0.88107122 0.35925856
0.85860762 0.61109408 0.70408301 0.58434977 0.92192494
0.62667915 0.75988365 0.06858761 0.36156496 0.58057195
0.13636150 0.57719713 0.59340255 0.63530602 0.22976282
0.71915530 0.41162531 0.63979565 0.09931342 0.79344045
0.10893790 0.84450224 0.23122236 0.99485593 0.73637397
0.17276368 0.13357764 0.74965804 0.64991737 0.61990341
0.41523170 0.05878239 0.05687301 0.05497131 0.42868366
0.42571090 0.25810502 0.89642955 0.30439758 0.39310223
0.11357431 0.04288255 0.23397550 0.11200634 0.85621396
0.89733974 0.37508865 0.42077265 0.68597384 0.72781399
0.19296476 0.61699087 0.31667128 0.67756410 0.00177323
0.05725176 0.79474693 0.18885238 0.06724856 0.68193156
0.42202167 0.22082041 0.28554673 0.64995708 0.87851940
0.29124547 0.61009521 0.87374537 0.05743712 0.69902994
0.81925115 0.45653873 0.37236821 0.31118709 0.52734307
0.39672836 0.38185294 0.30163915 0.17374510 0.04913278
0.90404879 0.25742801 0.58266467 0.97663209 0.79823377
0.36437958 0.15206043 0.26529938 0.22690047 0.05839021
0.84721160 0.18622435 0.37809403 0.55706977 0.49828704
0.47659049 0.24289680 0.88477595 0.07807463 0.56245739
0.73490635 0.21099431 0.13164942 0.75840044 0.66877037
0.28988183 0.44046090 0.24967434 0.80048356 0.26029740
0.30416821 0.64151867 0.52067892 0.12880774 0.85465381
0.02690525 0.19149288 0.49630295 0.79682619 0.43566145
0.00288078 0.81484193 0.03763639 0.68529083 0.01339574
0.38405386 0.30537067 0.22994703 0.44000045 0.27217985
0.53831243 0.02870435 0.86282045 0.61831306 0.09164956
0.25609707 0.07445781 0.72185784 0.90058883 0.30070608
0.94476583 0.56822213 0.21933909 0.96772793 0.80063440
0.26307906 0.31183306 0.16501252 0.55436179 0.68562285
0.23829083 0.86511559 0.57868991 0.81888344 0.20126869
0.93172350 0.66028129 0.21786948 0.78515828 0.10262106
0.35390326 0.79303876 0.63427924 0.90479631 0.31024934
0.60635447 0.56198079 0.63573813 0.91854197 0.99701497
0.83085849 0.31692291 0.01925964 0.97446405 0.98751283
0.60944293 0.13751018 0.69519957 0.68956636 0.56969015
0.46440193 0.88341765 0.36754434 0.89223647 0.39786427
0.85055280 0.12749961 0.79452122 0.89449784 0.14567830
0.45716830 0.74822309 0.28200437 0.42546044 0.17464886
0.68308746 0.65496587 0.52935411 0.12736159 0.61523955
0.81590528 0.63107864 0.39786553 0.20102294 0.53292914
0.75485590 0.59847044 0.32861691 0.12125866 0.58917183
0.07638293 0.86845380 0.29192617 0.03989733 0.52180460
0.32503407 0.64071852 0.69516575 0.74254998 0.54587026
0.48713246 0.32920155 0.08719954 0.63497059 0.54328459
0.64178757 0.45583809 0.70694291 0.85212760 0.86074305
0.33163422 0.85739792 0.59908488 0.74566046 0.72157152

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
@@ -18,35 +18,41 @@
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<ItemGroup>
<ClInclude Include="mt19937ar.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="mt19937ar.c" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5A9059F2-4933-49A2-BEE6-CC67F66FA070}</ProjectGuid>
<ProjectGuid>{7AE31676-6137-4FB3-AE9C-AD47D8A861CF}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>csv2yaml</RootNamespace>
<RootNamespace>mt19937ar</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
@@ -67,23 +73,19 @@
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)</OutDir>
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)</OutDir>
<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'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)</OutDir>
<OutDir>$(SolutionDir).vs\build\</OutDir>
<IntDir>$(SolutionDir).vs\build\$(ProjectName)\$(Platform)\$(Configuration)\</IntDir>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
@@ -92,14 +94,12 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;LIBCONFIG_STATIC;YY_USE_CONST;MINICORE;_DEBUG;_CONSOLE;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;$(SolutionDir).vs\build\common-minicore.lib;$(SolutionDir)3rdparty\zlib\lib\$(Platform)\zlib.lib;$(SolutionDir).vs\build\yaml-cpp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -108,14 +108,12 @@
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;LIBCONFIG_STATIC;YY_USE_CONST;MINICORE;_DEBUG;_CONSOLE;_LIB;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>ws2_32.lib;$(SolutionDir).vs\build\common-minicore.lib;$(SolutionDir)3rdparty\zlib\lib\$(Platform)\zlib.lib;$(SolutionDir).vs\build\yaml-cpp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -126,16 +124,14 @@
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;LIBCONFIG_STATIC;YY_USE_CONST;MINICORE;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>ws2_32.lib;$(SolutionDir).vs\build\common-minicore.lib;$(SolutionDir)3rdparty\zlib\lib\$(Platform)\zlib.lib;$(SolutionDir).vs\build\yaml-cpp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -146,32 +142,17 @@
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_WINSOCK_DEPRECATED_NO_WARNINGS;LIBCONFIG_STATIC;YY_USE_CONST;MINICORE;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>$(DefineConstants);WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>ws2_32.lib;$(SolutionDir).vs\build\common-minicore.lib;$(SolutionDir)3rdparty\zlib\lib\$(Platform)\zlib.lib;$(SolutionDir).vs\build\yaml-cpp.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="csv2yaml.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<Target Name="AfterClean">
<Delete Files="$(SolutionDir)zlib.dll" ContinueOnError="true" />
<Delete Files="$(SolutionDir)serv.bat" ContinueOnError="true" />
<Delete Files="$(SolutionDir)csv2yaml.bat" ContinueOnError="true" />
</Target>
<Target Name="AfterBuild">
<Copy SourceFiles="$(SolutionDir)3rdparty\zlib\lib\$(Platform)\zlib.dll" DestinationFolder="$(SolutionDir)" ContinueOnError="true" Condition="!Exists('$(SolutionDir)zlib.dll')" />
<Copy SourceFiles="$(SolutionDir)tools\serv.bat" DestinationFolder="$(SolutionDir)" ContinueOnError="true" Condition="!Exists('$(SolutionDir)serv.bat')" />
<Copy SourceFiles="$(SolutionDir)tools\csv2yaml.bat" DestinationFolder="$(SolutionDir)" ContinueOnError="true" Condition="!Exists('$(SolutionDir)csv2yaml.bat')" />
</Target>
</Project>

View File

@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
@@ -11,7 +11,12 @@
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="csv2yaml.cpp">
<ClInclude Include="mt19937ar.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="mt19937ar.c">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>

65
3rdparty/mt19937ar/mtTest.c vendored Normal file
View File

@@ -0,0 +1,65 @@
/*
A C-program for MT19937, with initialization improved 2002/1/26.
Coded by Takuji Nishimura and Makoto Matsumoto.
Before using, initialize the state by using init_genrand(seed)
or init_by_array(init_key, key_length).
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
All rights reserved.
Copyright (C) 2005, Mutsuo Saito,
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The names of its contributors may not be used to endorse or promote
products derived from this software without specific prior written
permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Any feedback is very welcome.
http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html
email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space)
*/
#include <stdio.h>
#include "mt19937ar.h"
int main(void)
{
int i;
unsigned long init[4]={0x123, 0x234, 0x345, 0x456}, length=4;
init_by_array(init, length);
printf("1000 outputs of genrand_int32()\n");
for (i=0; i<1000; i++) {
printf("%10lu ", genrand_int32());
if (i%5==4) printf("\n");
}
printf("\n1000 outputs of genrand_real2()\n");
for (i=0; i<1000; i++) {
printf("%10.8f ", genrand_real2());
if (i%5==4) printf("\n");
}
return 0;
}

79
3rdparty/mt19937ar/readme-mt.txt vendored Normal file
View File

@@ -0,0 +1,79 @@
This is a Mersenne Twister pseudorandom number generator
with period 2^19937-1 with improved initialization scheme,
modified on 2002/1/26 by Takuji Nishimura and Makoto Matsumoto.
modified on 2005/4/26 by Mutsuo Saito
Contents of this tar ball:
readme-mt.txt this file
mt19937ar.c the C source (ar: initialize by ARray)
mt19937ar.h the C header file for mt19937ar
mtTest.c the C test main program of mt19937ar.c
mt19937ar.out Test outputs of six types generators. 1000 for each
1. Initialization
The initialization scheme for the previous versions of MT
(e.g. 1999/10/28 version or earlier) has a tiny problem, that
the most significant bits of the seed is not well reflected
to the state vector of MT.
This version (2002/1/26) has two initialization schemes:
init_genrand(seed) and init_by_array(init_key, key_length).
init_genrand(seed) initializes the state vector by using
one unsigned 32-bit integer "seed", which may be zero.
init_by_array(init_key, key_length) initializes the state vector
by using an array init_key[] of unsigned 32-bit integers
of length key_kength. If key_length is smaller than 624,
then each array of 32-bit integers gives distinct initial
state vector. This is useful if you want a larger seed space
than 32-bit word.
2. Generation
After initialization, the following type of pseudorandom numbers
are available.
genrand_int32() generates unsigned 32-bit integers.
genrand_int31() generates unsigned 31-bit integers.
genrand_real1() generates uniform real in [0,1] (32-bit resolution).
genrand_real2() generates uniform real in [0,1) (32-bit resolution).
genrand_real3() generates uniform real in (0,1) (32-bit resolution).
genrand_res53() generates uniform real in [0,1) with 53-bit resolution.
Note: the last five functions call the first one.
if you need more speed for these five functions, you may
suppress the function call by copying genrand_int32() and
replacing the last return(), following to these five functions.
3. main()
main() is an example to initialize with an array of length 4,
then 1000 outputs of unsigned 32-bit integers,
then 1000 outputs of real [0,1) numbers.
4. The outputs
The output of the mt19937ar.c is in the file mt19937ar.out.
If you revise or translate the code, check the output
by using this file.
5. Cryptography
This generator is not cryptoraphically secure.
You need to use a one-way (or hash) function to obtain
a secure random sequence.
6. Correspondence
See:
URL http://www.math.keio.ac.jp/matumoto/emt.html
email matumoto@math.keio.ac.jp, nisimura@sci.kj.yamagata-u.ac.jp
7. Reference
M. Matsumoto and T. Nishimura,
"Mersenne Twister: A 623-Dimensionally Equidistributed Uniform
Pseudo-Random Number Generator",
ACM Transactions on Modeling and Computer Simulation,
Vol. 8, No. 1, January 1998, pp 3--30.
-------
Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura,
All rights reserved.
Copyright (C) 2005, Mutsuo Saito
All rights reserved.

View File

@@ -7,17 +7,10 @@ message( STATUS "Detecting local MYSQL" )
find_path( MYSQL_LOCAL_INCLUDE_DIRS "mysql.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
NO_DEFAULT_PATH )
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
find_library( MYSQL_LOCAL_LIBRARIES
NAMES libmysql
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
NO_DEFAULT_PATH )
else()
find_library( MYSQL_LOCAL_LIBRARIES
NAMES libmysql
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
NO_DEFAULT_PATH )
endif()
mark_as_advanced( MYSQL_LOCAL_LIBRARIES )
mark_as_advanced( MYSQL_LOCAL_INCLUDE_DIRS )

View File

@@ -7,17 +7,10 @@ message( STATUS "Detecting local PCRE" )
find_path( PCRE_LOCAL_INCLUDE_DIRS "pcre.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
NO_DEFAULT_PATH )
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
find_library( PCRE_LOCAL_LIBRARIES
NAMES pcre8
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
NAMES pcre
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
NO_DEFAULT_PATH )
else()
find_library( PCRE_LOCAL_LIBRARIES
NAMES pcre8
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
NO_DEFAULT_PATH )
endif()
mark_as_advanced( PCRE_LOCAL_LIBRARIES )
mark_as_advanced( PCRE_LOCAL_INCLUDE_DIRS )

View File

@@ -79,5 +79,5 @@ set( YAML_DEFINITIONS
"-std=c++11"
CACHE INTERNAL "yaml definitions" )
include_directories(${YAML_INCLUDE_DIRS} ${YAML_SOURCE_DIR})
#message(STATUS "YAML_INCLUDE_DIRS : ${YAML_INCLUDE_DIRS}, YAML_SOURCE_DIR=${YAML_SOURCE_DIR}")
message(STATUS "YAML_INCLUDE_DIRS : ${YAML_INCLUDE_DIRS}, YAML_SOURCE_DIR=${YAML_SOURCE_DIR}")
ADD_LIBRARY(${this_target} STATIC ${YAML_SOURCES} )

View File

@@ -22,31 +22,32 @@
<ProjectGuid>{61D6A599-6BED-4154-A9FC-40553BD972E0}</ProjectGuid>
<Keyword>Win32Proj</Keyword>
<RootNamespace>yamlcpp</RootNamespace>
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
</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>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</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>
<PlatformToolset>v120</PlatformToolset>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
<PlatformToolset>v120</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
@@ -95,7 +96,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<InlineFunctionExpansion>Disabled</InlineFunctionExpansion>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\;$(SolutionDir)3rdparty\yaml-cpp\src\;</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
</ItemDefinitionGroup>
@@ -107,7 +108,7 @@
</SDLCheck>
<AdditionalIncludeDirectories>$(SolutionDir)3rdparty\yaml-cpp\include\;$(SolutionDir)3rdparty\yaml-cpp\src\;</AdditionalIncludeDirectories>
<InlineFunctionExpansion>Disabled</InlineFunctionExpansion>
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_ITERATOR_DEBUG_LEVEL=0;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
</ItemDefinitionGroup>

View File

@@ -7,17 +7,10 @@ message( STATUS "Detecting local ZLIB" )
find_path( ZLIB_LOCAL_INCLUDE_DIRS "zlib.h"
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/include"
NO_DEFAULT_PATH )
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
find_library( ZLIB_LOCAL_LIBRARIES
NAMES zlib
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/Win32"
NAMES zdll
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib"
NO_DEFAULT_PATH )
else()
find_library( ZLIB_LOCAL_LIBRARIES
NAMES zlib
PATHS "${CMAKE_CURRENT_SOURCE_DIR}/lib/x64"
NO_DEFAULT_PATH )
endif()
mark_as_advanced( ZLIB_LOCAL_LIBRARIES )
mark_as_advanced( ZLIB_LOCAL_INCLUDE_DIRS )

View File

@@ -227,7 +227,6 @@ Sirius_White
sk
SketchyPhoenix
Skotlex
SnakeDrak
spamrat
SPDFMember
spira

View File

@@ -50,12 +50,11 @@ endif()
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/lib/${suffixInstallStr})
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/lib/${suffixInstallStr})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/..)
set(CMAKE_C_CREATE_SHARED_LIBRARY)
set(CMAKE_CXX_CREATE_SHARED_LIBRARY)
set(CMAKE_DEBUG_POSTFIX "d")
set(CMAKE_RELEASE_POSTFIX "r")
#
# Prevent building in the source directory by default
#
@@ -90,10 +89,6 @@ if( MSVC )
set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} "oldnames.lib" "ws2_32.lib" )
set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE" )
endif()
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_COMPILER_IS_GNUCC)
set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -fno-strict-aliasing" )
#set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -O2" ); #need more test to enable this
endif()
#
@@ -107,7 +102,6 @@ include( CheckFunctionExists )
include( FindFunctionLibrary )
include( TestBigEndian )
#
# PACKETVER
#
@@ -145,26 +139,15 @@ message( STATUS "Detecting threads library" )
set( CMAKE_THREAD_PREFER_PTHREAD 1 )
find_package(Threads REQUIRED)
if( CMAKE_THREAD_LIBS_INIT )
message( STATUS "Adding global library: ${CMAKE_THREAD_LIBS_INIT}" )
message( STATUS "Adding global library: ${FUNCTION_FLOOR_LIBRARIES}" )
set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )
endif()
message( STATUS "Detecting threads library - done" )
message( STATUS "Check if supporting Thread local storage (TLS)" )
file( READ "${CMAKE_SOURCE_DIR}/3rdparty/cmake/tests/HAVE_TLS.c" _SOURCE )
CHECK_C_SOURCE_RUNS( "${_SOURCE}" HAVE_TLS )
if( HAVE_TLS )
message( STATUS "Check for TLS- yes" )
set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DHAVE_TLS" )
else()
message( STATUS "Check for TLS - no" )
endif()
#
# math library (FreeBSD/Linux/Solaris)
#
if( NOT WIN32 )
message( STATUS "Detecting math library (m)" )
CHECK_INCLUDE_FILE( math.h HAVE_MATH_H )
if( NOT HAVE_MATH_H )
@@ -177,7 +160,6 @@ if( FUNCTION_FLOOR_LIBRARIES )
set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_FLOOR_LIBRARIES} )
endif()
message( STATUS "Detecting math library (m) - done" )
endif()
#
@@ -471,7 +453,10 @@ set( DEVELOPMENT_FILES
"${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt"
"${CMAKE_CURRENT_SOURCE_DIR}/configure"
"${CMAKE_CURRENT_SOURCE_DIR}/configure.in"
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena.sln"
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-9.sln"
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-10.sln"
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-12.sln"
"${CMAKE_CURRENT_SOURCE_DIR}/rAthena-13.sln"
)
set( DEVELOPMENT_DIRECTORIES
"3rdparty"
@@ -479,6 +464,8 @@ set( DEVELOPMENT_DIRECTORIES
"conf/msg_conf/import-tmpl"
"db/import-tmpl"
"src"
"vcproj-9"
"vcproj-10"
)
set( RUNTIME_FILES
"${CMAKE_CURRENT_SOURCE_DIR}/athena-start"

View File

@@ -5,10 +5,10 @@ OMAP=@OMAP@
ifeq ($(HAVE_MYSQL),yes)
ALL_DEPENDS=server tools
SERVER_DEPENDS=common login char map import
COMMON_DEPENDS=libconfig yaml-cpp
LOGIN_DEPENDS=libconfig common
CHAR_DEPENDS=libconfig common yaml-cpp
MAP_DEPENDS=libconfig common yaml-cpp
COMMON_DEPENDS=mt19937ar libconfig yaml-cpp
LOGIN_DEPENDS=mt19937ar libconfig common
CHAR_DEPENDS=mt19937ar libconfig common yaml-cpp
MAP_DEPENDS=mt19937ar libconfig common yaml-cpp
else
ALL_DEPENDS=needs_mysql
SERVER_DEPENDS=needs_mysql
@@ -22,6 +22,7 @@ endif
#####################################################################
.PHONY: all server sql \
common \
mt19937ar \
login \
char \
map \
@@ -49,6 +50,9 @@ char: $(CHAR_DEPENDS)
map: $(MAP_DEPENDS)
@$(MAKE) -C src/map server
mt19937ar:
@$(MAKE) -C 3rdparty/mt19937ar
libconfig:
@$(MAKE) -C 3rdparty/libconfig
@@ -75,6 +79,7 @@ import:
clean:
@$(MAKE) -C src/common $@
@$(MAKE) -C 3rdparty/mt19937ar $@
@$(MAKE) -C 3rdparty/libconfig $@
@$(MAKE) -C 3rdparty/yaml-cpp $@
@$(MAKE) -C src/login $@
@@ -86,6 +91,7 @@ help:
@echo "most common targets are 'all' 'server' 'conf' 'clean' 'help'"
@echo "possible targets are:"
@echo "'common' - builds object files used for the three servers"
@echo "'mt19937ar' - builds object file of Mersenne Twister MT19937"
@echo "'libconfig' - builds object files of libconfig"
@echo "'yaml-cpp' - builds object files of yaml-cpp"
@echo "'login' - builds login server"

237
README.md
View File

@@ -1,72 +1,209 @@
<img src="branding/logo.png" align="right" height="90" />
rAthena
=======
# rAthena
[![Build Status](https://travis-ci.org/rathena/rathena.png?branch=master)](https://travis-ci.org/rathena/rathena) [![Build status](https://ci.appveyor.com/api/projects/status/8574b8nlwd57loda/branch/master?svg=true)](https://ci.appveyor.com/project/rAthenaAPI/rathena/branch/master) [![Total alerts](https://img.shields.io/lgtm/alerts/g/rathena/rathena.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/rathena/rathena/alerts/) [![Language grade: C/C++](https://img.shields.io/lgtm/grade/cpp/g/rathena/rathena.svg?logo=lgtm&logoWidth=18)](https://lgtm.com/projects/g/rathena/rathena/context:cpp) ![GitHub](https://img.shields.io/github/license/rathena/rathena.svg) ![GitHub repo size](https://img.shields.io/github/repo-size/rathena/rathena.svg)
> 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.
Build Status: [![Build Status](https://travis-ci.org/rathena/rathena.png?branch=master)](https://travis-ci.org/rathena/rathena) [![Build status](https://ci.appveyor.com/api/projects/status/8574b8nlwd57loda/branch/master?svg=true)](https://ci.appveyor.com/project/rAthenaAPI/rathena/branch/master)
[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/)
--------|--------|--------|--------|--------|--------
Table of Contents
---------
1. What is rAthena?
2. Prerequisites
3. Installation
4. Troubleshooting
5. Helpful Links
6. More Documentation
7. How to Contribute
### Table of Contents
1. [Prerequisites](#1-prerequisites)
2. [Installation](#2-installation)
3. [Troubleshooting](#3-troubleshooting)
4. [More Documentation](#4-more-documentation)
5. [How to Contribute](#5-how-to-contribute)
6. [License](#6-license)
1. What is rAthena?
---------
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.
## 1. Prerequisites
Before installing rAthena there are certain tools and applications you will need which
differs between the varying operating systems available.
2. Prerequisites
---------
Before installing rAthena there are certain tools and applications you will need.
This differs between the varying operating systems available, so the following
is broken down into Windows and Linux prerequisites.
### Hardware
Hardware Type | Minimum | Recommended
------|------|------
CPU | 1 Core | 2 Cores
RAM | 1 GB | 2 GB
Disk Space | 300 MB | 500 MB
* Windows
* MySQL ( http://www.mysql.com/downloads/mysql/ )
* MySQL Workbench ( http://www.mysql.com/downloads/workbench/ )
* MS Visual C++ ( http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-cpp-express )
* TortoiseGIT ( http://code.google.com/p/tortoisegit/ )
* MSysGit ( http://msysgit.github.io/ or https://github.com/msysgit/git/releases )
### Operating System & Preferred Compiler
Operating System | Compiler
------|------
Linux | [gcc-5 or newer](https://www.gnu.org/software/gcc/gcc-5/) / [Make](https://www.gnu.org/software/make/)
Windows | [MS Visual Studio 2013, 2015, 2017](https://www.visualstudio.com/downloads/)
* Linux (names of packages may require specific version numbers on certain distributions)
* gcc
* g++
* make
* mysql
* mysql-devel
* mysql-server
* pcre-devel
* zlib-devel
* git
### Required Applications
Application | Name
------|------
Database | [MySQL 5 or newer](https://www.mysql.com/downloads/) / [MariaDB 5 or newer](https://downloads.mariadb.org/)
Git | [Windows](https://gitforwindows.org/) / [Linux](https://git-scm.com/download/linux)
3. Installation
---------
This section is a very brief set of installation instructions. For more concise guides
relevant to your Operation System, please refer to the Wiki (links at the end of this file).
### Optional Applications
Application | Name
------|------
Database | [MySQL Workbench 5 or newer](http://www.mysql.com/downloads/workbench/)
* Windows
* Install prerequisites
* Create a folder to download rAthena into (e.g. C:\rAthena)
* Right click this folder and select "Git Clone"
* Paste the GitHub URL into the box:
## 2. Installation
https://github.com/rathena/rathena.git
* Open MySQL Workbench and create an instance to connect to your MySQL Server
* Create a database (rathena), a user (rathena), give permissions (GRANT SELECT,INSERT,UPDATE,DELETE)
and then login using the new user
* Use MySQL Workbench to run the .sql files in /sql-files/ on the new rathena database
### Full Installation Instructions
* [Windows](https://github.com/rathena/rathena/wiki/Install-on-Windows)
* [CentOS](https://github.com/rathena/rathena/wiki/Install-on-Centos)
* [Debian](https://github.com/rathena/rathena/wiki/Install-on-Debian)
* [FreeBSD](https://github.com/rathena/rathena/wiki/Install-on-FreeBSD)
* Linux
* Type:
* (For CentOS)
## 3. Troubleshooting
yum install gcc g++ make mysql mysql-devel mysql-server pcre-devel zlib-devel git
* (For Debian)
apt-get install git make gcc g++ libmysqlclient-dev zlib1g-dev libpcre3-dev
* Type:
mysql_secure_installation
* Start your MySQL server
* Setup a MySQL user:
CREATE USER 'rathena'@'localhost' IDENTIFIED BY 'password';
* Assign permissions:
GRANT SELECT,INSERT,UPDATE,DELETE ON `rathena\_rag`.* TO 'rathena'@'localhost';
* Clone a GIT repository:
git clone https://github.com/rathena/rathena.git ~/rathena
* Insert SQL files:
mysql --user=root -p rathena_rag < trunk/sql-files/main.sql (and others)
* Configure and compile:
./configure && make clean && make server
* Configure and compile (for Centos 64 bit with Maria DB):
./configure --enable-64bit --with-MYSQL_LIBS=/usr/lib64/libmysqlclient.so && make clean && make server
* When you're ready, start the servers:
./athena-start start
* Optional
* If you want to have your own forked version but still get updates from the main rAthena repository
* Fork this repository to your GitHub account
* List the current configured remote repository for your fork:
git remote -v
* Specify a new remote upstream repository that will be synced with your fork:
git remote add upstream https://github.com/rathena/rathena.git
* Verify the new upstream repository you've specified for your fork:
git remote -v
* You should see the main rAthena repository as well as your forked repository
* Now, when you want to get updates from rAthena, simply do:
git pull upstream master
* Remember that rAthena falls under [GNU GPLv3](https://github.com/rathena/rathena/blob/master/LICENSE).
4. Troubleshooting
---------
If you're having problems with starting your server, the first thing you should
do is check what's happening on your consoles. More often that not, all support issues
can be solved simply by looking at the error messages given. Check out the [wiki](https://github.com/rathena/rathena/wiki)
or [forums](https://rathena.org/forum) if you need more support on troubleshooting.
can be solved simply by looking at the error messages given.
## 4. More Documentation
Examples:
* You get an error on your map-server that looks something like this:
[Error]: npc_parsesrcfile: Unable to parse, probably a missing or extra TAB in
file 'npc/custom/jobmaster.txt', line '17'. Skipping line...
* w1=prontera,153,193,6 script
* w2=Job Master
* w3=123,{
* w4=
If you look at the error, it's telling you that you're missing (or have an extra) TAB.
This is easily fixed by looking at this part of the error:
* w1=prontera,153,193,6 script
If there was a TAB where it's supposed to be, that line would have prontera,153,193,6 at w1
and 'script' at w2. As there's a space instead of a TAB, the two sections are read as a
single parameter.
* You have a default user/password warning similar to the following:
[Warning]: Using the default user/password s1/p1 is NOT RECOMMENDED.
[Notice]: Please edit your 'login' table to create a proper inter-server user/pa
ssword (gender 'S')
[Notice]: and then edit your user/password in conf/map_athena.conf (or conf/impo
rt/map_conf.txt)
Relax. This is just indicating that you're using the default username and password. To
fix this, check over the part in the installation instructions relevant to the `login` table.
* Your map-server outputs the following:
[Error]: make_connection: connect failed (socket #2, error 10061: No connection
could be made because the target machine actively refused it.
)!
If this shows up on the map server, it generally means that there is no Char Server available
to accept the connection.
5. Helpful Links
---------
* rAthena Forums
* https://rathena.org/
* GIT Repository
* https://github.com/rathena/rathena
* Full Installation Instructions
* [Windows](https://github.com/rathena/rathena/wiki/Install-on-Windows)
* [CentOS](https://github.com/rathena/rathena/wiki/Install-on-Centos)
* [Debian](https://github.com/rathena/rathena/wiki/Install-on-Debian)
* [FreeBSD](https://github.com/rathena/rathena/wiki/Install-on-FreeBSD)
* rAthena IRC Channel
* irc://irc.rizon.net/rathena
* Web Chat: https://rathena.org/board/page/chat.html
* rAthena Discord Chat
http://discord.rathena.org
* rAthena Wiki
https://github.com/rathena/rathena/wiki
* Fork and Pull Request Q&A
https://rathena.org/board/topic/86913-pull-request-qa/
6. More Documentation
---------
rAthena has a large collection of help files and sample NPC scripts located in the /doc/
directory. These include detailed explanations of NPC script commands, atcommands (@),
group permissions, item bonuses, and packet structures, among many other topics. We
recommend that all users take the time to look over this directory before asking for
assistance elsewhere.
## 5. How to Contribute
7. How to Contribute
---------
Details on how to contribute to rAthena can be found in [CONTRIBUTING.md](https://github.com/rathena/rathena/blob/master/.github/CONTRIBUTING.md)!
## 6. License
Copyright (c) rAthena Development Team - Licensed under [GNU General Public License v3.0](https://github.com/rathena/rathena/blob/master/LICENSE)

View File

@@ -42,9 +42,26 @@ test_script:
set MYSQL="C:\Program Files\MySql\MySQL Server 5.7\bin\mysql.exe"
rem Setting creation
cd C:\projects\rathena
rem TODO should be replace with tools\ci\sql.bat as soon as possible
echo map_server_ip: %DB_HOST%>> conf\import\inter_conf.txt
echo map_server_id: %DB_USER%>> conf\import\inter_conf.txt
echo map_server_pw: %DB_PASS%>> conf\import\inter_conf.txt
echo map_server_db: %DB_NAME%>> conf\import\inter_conf.txt
echo log_db_ip: %DB_HOST%>> conf\import\inter_conf.txt
echo log_db_id: %DB_USER%>> conf\import\inter_conf.txt
echo log_db_pw: %DB_USERPW%>> conf\import\inter_conf.txt
echo log_db_db: %DB_NAME%>> conf\import\inter_conf.txt
rem MySQL database setup
%MYSQL% -u %DB_ROOT% -p%DB_ROOTPW% -e "CREATE DATABASE %DB_NAME%;"
@@ -83,16 +100,8 @@ test_script:
%MYSQL% -u %DB_ROOT% -p%DB_ROOTPW% %DB_NAME% -e "source sql-files\roulette_default_data.sql"
%MYSQL% -u %DB_ROOT% -p%DB_ROOTPW% -e "GRANT SELECT,INSERT,UPDATE,DELETE ON %DB_NAME%.* TO '%DB_USER%'@'%DB_HOST%' IDENTIFIED BY '%DB_USERPW%';"
rem Activate all custom and test scripts
start /d tools\ci npc.bat
%MYSQL% -u %DB_ROOT% -p%DB_ROOTPW% -e "GRANT ALL ON *.* TO '%DB_USER%'@'%DB_HOST%' IDENTIFIED BY '%DB_USERPW%';"
rem Start the map server
login-server.exe --run-once
char-server.exe --run-once
map-server.exe --run-once

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

View File

@@ -63,8 +63,6 @@ aliases: {
cloneequip: ["eqclone"]
clonestat: ["stclone"]
reloadnpcfile: ["reloadnpc"]
changedress: ["nocosplay"]
camerainfo: ["viewpointvalue", "setcamera"]
}
/* Commands help file */

View File

@@ -6,12 +6,11 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary)
//--------------------------------------------------------------
// Who should have a baseatk value (makes str affect damage)? (Note 3)
enable_baseatk: 0x9
enable_baseatk_renewal: 0x29F
enable_baseatk: 9
// Who can have perfect flee? (Note 3)
enable_perfect_flee: 1
@@ -142,14 +141,6 @@ delay_battle_damage: yes
// skills should consume ammo when it's acquired via a card or plagiarize)
arrow_decrement: 1
// Should ammo be unequipped when unequipping a weapon?
// Official behavior is "yes".
ammo_unequip: yes
// Should a suitable weapon be equipped when equipping ammo?
// Official behavior is "yes".
ammo_check_weapon: yes
// Should the item script bonus 'Autospell' check for range/obstacles before casting?
// Official behavior is "no", setting this to "yes" will make skills use their defined
// range. For example, Sonic Blow requires a 2 cell distance before autocasting is allowed.

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Melee damage adjustments (non skills) for Battleground maps (Note 2)

View File

@@ -71,7 +71,7 @@ wedding_modifydisplay: no
save_clothcolor: yes
// Save body styles. (Note 1)
// Note: Don't turn this on unless you know what you are doing.
// Note: Don't turn this on unless you know what your doing.
// Sprites are not released officially.
save_body_style: no

View File

@@ -148,8 +148,3 @@ alchemist_summon_reward: 1
// 333 = show announces for 3.33% or lower drop chance items
// 10000 = show announces for all items
rare_drop_announce: 0
// Does autoloot take into account player bonuses and penalties? (Note 1)
// If RENEWAL_DROP, Bubble Gum, or any other modifiers are active autoloot
// will take them into account.
autoloot_adjust: 0

View File

@@ -18,12 +18,6 @@ job_exp_rate: 100
// Turn this on to allow a player to level up more than once from a kill. (Note 1)
multi_level_up: no
// Allow multi level up until a certain level?
// This only triggers if multi_level_up is enabled.
// Default: 0 (Unlimited)
multi_level_up_base: 0
multi_level_up_job: 0
// Setting this can cap the max experience one can get per kill specified as a
// % of the current exp bar. (Every 10 = 1.0%)
// For example, set it to 500 and no matter how much exp the mob gives,

View File

@@ -4,7 +4,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Buying store (Note 1)
@@ -61,45 +61,9 @@ feature.autotrade_open_delay: 5000
// Roulette (Note 1)
// Requires: 2014-10-22bRagexe or later
feature.roulette: on
// Off by default while test version is out; enable at your own risk.
feature.roulette: off
// Achievement (Note 1)
// Requires: 2015-05-13aRagexe or later
feature.achievement: on
// Equipment Switch (Note 1)
// Requires: 2017-02-08bRagexeRE or later
feature.equipswitch: on
// Pet evolution (Note 1)
// Requires: 2014-10-08aRagexe or later
feature.petevolution: on
// Automatic Pet Feeding (Note 1)
// Requires: 2014-10-08aRagexe or later
feature.petautofeed: on
// At which hunger rate should pet autofeeding trigger? (Note 2)
// Default: 89
feature.pet_autofeed_rate: 89
// Homunculues Autofeeding (Note 1)
// Requires: 2017-09-20bRagexeRE or later
feature.homunculus_autofeed: on
// At which rate should homunculus autofeeding trigger? (Note 2)
// Default: 30
//
// NOTE:
// This setting only applies, if your client side LUAs are bugged.
// By default the client triggers the feeding packet itself once
// it reaches the limit that is hardcoded in the client.
feature.homunculus_autofeed_rate: 30
// Attendance System (Note 1)
// Requires: 2018-03-07bRagexeRE or later
feature.attendance: on
// Private Airship System (Note 1)
// Requires: 2018-03-21aRagexeRE or later
feature.privateairship: on

View File

@@ -24,7 +24,7 @@ partial_name_scan: yes
// Duration of the ban, in minutes (default: 5). To disable the ban, set 0.
ban_hack_trade: 5
// requires RENEWAL_EXP or RENEWAL_DROP to be enabled (src/config/renewal.hpp)
// requires RENEWAL_EXP or RENEWAL_DROP to be enabled (src/config/renewal.h)
// modifies @mobinfo to display the users' real drop rate as per renewal_drop formula
// modifies @iteminfo to not display the minimum item drop rate (since it can't tell the mob level)
// modifies @whodrops to display the users' real drop rate as per renewal_drop formula
@@ -34,9 +34,3 @@ atcommand_mobinfo_type: 1
// This option is for @baselevelup and @joblevelup
// Default: no
atcommand_levelup_events: no
// Disable atcommands while a player is attached to a npc? (Note 1)
// This can be changed by script commands 'enable_command' and 'disable_command'.
// Anyone with the 'command_enable' permission in the 'conf/group.conf' can bypass this.
// Default: yes
atcommand_disable_npc: yes

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Homunculus setting (Note 3)
@@ -57,7 +57,3 @@ homunculus_S_max_level: 150
// Without this, a shuffle causes all levels of a Homunculus S to use their
// growth tables, causing imbalanced stats
homunculus_S_growth_level: 99
// Send auto-feed notice even if OFF (Note 1)
// Official: yes
homunculus_autofeed_always: yes

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// The highest value at which an item can be sold via the merchant vend skill. (in zeny)
@@ -19,12 +19,7 @@ vending_over_max: yes
// Tax to apply to all vending transactions (eg: 10000 = 100%, 50 = 0.50%)
// When a tax is applied, the item's full price is charged to the buyer, but
// the vender will not get the whole price paid (they get 100% - this tax).
vending_tax: 500
// Minimum total of purchase until taxes are applied.
// Officially there is no tax for anything less than 100 million zeny.
// 0 will apply taxes to all transactions.
vending_tax_min: 100000000
vending_tax: 200
// Show the buyer's name when successfully vended an item
buyer_name: yes
@@ -112,32 +107,12 @@ item_flooritem_check: yes
default_bind_on_equip: 4
// Allow selling of bound/sell restricted items as Itemshop currency? (Note 3)
// 0x0 = Bound/sell restricted items are unable to be sold to Itemshops/Shops
// 0x1 = Bound items are able to be sold to Itemshops
// 0x2 = Sell restricted items are able to be sold to Itemshops
// 0x4 = Bound items are able to be sold to Shops,
// because most of trade restricted items are still able to be sold to Shops
// 0x8 = Only Guild Leader can sell BOUND_GUILD items to Shops or Itemshops (if 0x1 or 0x4 set)
// 0x0 = Bound/sell restricted items are unable to be sold at Itemshops
// 0x1 = Bound items are able to be sold at Itemshops
// 0x2 = Sell restricted items are able to be sold at Itemshops
allow_bound_sell: 0x0
// Turn on event refine chance (see db/{pre-}re/refine_db.yml)
// no = normal refine chances in effect (official/default value)
// yes = event refine chances in effect
event_refine_chance: no
// Hide n last characters of player's name with asterisk (*) when the player
// 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
// Enable to sell rental item to NPC shop? (Note 1)
rental_transaction: yes
// Minimum purchase price of items at a normal Shop
// Officially items cannot be purchased for less than 1 Zeny
min_shop_buy: 1
// Minimum sell price of items at a normal shop
// Officially items can be sold for 0 Zeny
min_shop_sell: 0

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// PK Server Mode. Turns entire server pvp(excluding towns). Experience loss is doubled if killed by another player.
@@ -99,7 +99,7 @@ duel_only_on_same_map: no
// Set to 0 for no cell stacking checks and free movement.
// Custom - This variation will make every full cell to be considered a wall.
// NOTE: For the custom setting to take effect you have to use a server compiled
// with Cell Stack Limit support (see src/map/map.hpp)
// with Cell Stack Limit support (see src/map/map.h)
official_cell_stack_limit: 1
custom_cell_stack_limit: 1

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// The HP rate of MVPs. (Note 2)

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Rate for catching pets (Note 2)
@@ -21,8 +21,11 @@ pet_friendly_rate: 100
// The rate at which a pet will become hungry. (Note 2)
pet_hungry_delay_rate: 100
// If your pet is hungry by how much will the friendlyness decrease by. (Default is 5)
// Note: The friendlyness is 0-1000 total, at 0 the pet runs away.
pet_hungry_friendly_decrease: 5
// Does the pet need its equipment before it does its skill? (Note 1)
// These bonuses are unofficial and found in the import/pet_db.yml
pet_equip_required: yes
// When the master attacks a monster, whether or not the pet will also attack. (Note 1)
@@ -36,6 +39,9 @@ pet_damage_support: no
// At max (1000) support rate is 150%.
pet_support_min_friendly: 900
// Same as above, but this is to use the pet_script field with official pet abilities.
pet_equip_min_friendly: 900
// Whether or not the pet's will use skills. (Note 1)
// Note: Offensive pet skills need at least pet_attack_support or
// pet_damage_support to work (they trigger while the pet is attacking).
@@ -75,13 +81,3 @@ pet_ignore_infinite_def: yes
// Whether or not the pet will continue to attack when the master is dead. (Note 1)
pet_master_dead: no
// Send auto-feed notice even if the client setting is OFF (Note 1)
// Official: yes
pet_autofeed_always: yes
// Pet walk speed.
// 1: Master's walk speed (official)
// 2: DEFAULT_WALK_SPEED value
// 3: Mob database walk speed
pet_walk_speed: 1

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Players' maximum HP rate? (Default is 100)
@@ -61,9 +61,7 @@ natural_healsp_interval: 8000
natural_heal_skill_interval: 10000
// The maximum weight for a character to carry when the character stops healing naturally. (in %)
// For renewal: Requires client 20171025 or newer to display properly
natural_heal_weight_rate: 50
natural_heal_weight_rate_renewal: 70
// Maximum atk speed. (Default 190, Highest allowed 199)
max_aspd: 190
@@ -77,13 +75,8 @@ max_extended_aspd: 193
// Maximum walk speed rate (200 would be capped to twice the normal speed)
max_walk_speed: 300
// Maximum HPs depending on base level. Default values are:
// Lv 99: 330000
// Lv150: 660000
// Lv175: 1100000
max_hp_lv99: 330000
max_hp_lv150: 660000
max_hp: 1100000
// Maximum HP. (Default is 1000000)
max_hp: 1000000
// Maximum SP. (Default is 1000000)
max_sp: 1000000
@@ -268,10 +261,3 @@ fame_pharmacy_10: 50
// Be mindful that the more options used, the easier it becomes to cheat features that rely on idletime (e.g. checkidle()).
// Default: walk (0x1) + useskilltoid (0x2) + useskilltopos (0x4) + useitem (0x8) + attack (0x10) = 0x1F
idletime_option: 0x1F
// Adjust the summoner class' special traits.
// 0: Summoners behave like other classes.
// 1: Summoners belong to brute race instead of demi-human
// 2: Summoners are small size instead of medium
// 3: Both of the above (official value)
summoner_trait: 3

View File

@@ -122,8 +122,7 @@ gvg_traps_target_all: 1
// 0 = Always visible
// 1 = Enable invisibility in versus maps (GVG/PVP/BG)
// 2 = Enable invisibility in all maps
// Default on official servers: 0 for Pre-renewal, 2 for Renewal
//traps_setting: 0
traps_setting: 0
// Restrictions applied to the Alchemist's Summon Flora skill (add as necessary)
// 1: Enable players to damage the floras outside of versus grounds.
@@ -370,16 +369,3 @@ dispel_song: no
// 0: Uses the official duration
// X: Enter a custom duration in milliseconds.
banana_bomb_duration: 0
// Should items that you try to create be dropped if you have no space left in your inventory? (Note 1)
// Official: no
// Legacy rAthena logic: yes
skill_drop_items_full: no
// EDP setting: (Note 3)
// When switching/unequipping a right hand weapon, should EDP be removed? EDP can't be used with bare hand.
// 0: Disabled (rAthena legacy and pre-renewal behavior).
// 1: Enabled on pre-renewal.
// 2: Enabled on renewal.
// 3: 1+2
switch_remove_edp: 2

View File

@@ -6,7 +6,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Should skill casting be cancelled when inflicted by curse/stun/sleep/etc (includes silence) (Note 3)?

View File

@@ -85,7 +85,7 @@ char_maintenance: 0
// Enable or disable creation of new characters.
// Now it is actually supported [Kevin]
char_new: yes
char_new: 1
// Display (New) in the server list.
char_new_display: 0
@@ -109,7 +109,7 @@ save_log: yes
// Starting point for new characters
// Format: <map_name>,<x>,<y>{:<map_name>,<x>,<y>...}
// Max number of start points is MAX_STARTPOINT in char.hpp (default 5)
// Max number of start points is MAX_STARTPOINT in char.h (default 5)
// Location is randomly picked on character creation.
// NOTE: For Doram, this requires client 20151001 or newer.
start_point: iz_int,18,26:iz_int01,18,26:iz_int02,18,26:iz_int03,18,26:iz_int04,18,26
@@ -117,7 +117,7 @@ start_point_pre: new_1-1,53,111:new_2-1,53,111:new_3-1,53,111:new_4-1,53,111:new
start_point_doram: lasa_fild01,48,297
// Starting items for new characters
// Max number of items is MAX_STARTITEM in char.cpp (default 32)
// Max number of items is MAX_STARTITEM in char.c (default 32)
// 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.
@@ -141,7 +141,7 @@ guild_exp_rate: 100
unknown_char_name: Unknown
// To log the character server?
log_char: yes
log_char: 1
// Allow or not identical name for characters but with a different case (upper/lower):
// example: Test-test-TEST-TesT; Value: 0 not allowed (default), 1 allowed
@@ -170,6 +170,18 @@ char_del_level: 0
// NOTE: Requires client 2010-08-03aragexeRE or newer.
char_del_delay: 86400
// Restrict character deletion by email address or birthdate.
// This restricts players from changing the langtype and deleting characters.
// Defaults based on client date.
// 1: Email address
// 2: Birthdate
// 3: Email address or Birthdate
// IMPORTANT!
// - This config only works for clients that send 0x0068 or 0x01fb for delete request.
// - Use langtype 1 for newer clients (2013+), to use 0x01fb.
// - Clients that are not using 0x0068 or 0x01fb, only use birthdate (YYMMDD) as default.
char_del_option: 2
// Restrict character deletion as long as he is still in a party or guild
// 0: No restriction is applied
// 1: Character cannot be deleted as long as he remains in a party
@@ -177,14 +189,6 @@ char_del_delay: 86400
// 3: Character cannot be deleted as long as he remains in a party or guild(default)
char_del_restriction: 3
// Restrict certain class from being created. (Only functional on 20151001aRagexe or later)
// 0: No character creation is allowed
// 1: Only novice is allowed to be created (pre-renewal default)
// 2: Only summoner is allowed to be created
// 3: Both novice and summoner can be created (renewal default)
// Uncomment to customize the restriction
//allowed_job_flag: 3
// What folder the DB files are in (item_db.txt, etc.)
db_path: db

View File

@@ -86,15 +86,14 @@ groups: (
level: 0
inherit: ( /*empty list*/ )
commands: {
changedress: true
resurrect: true
/* no commands by default */
}
permissions: {
/* without this basic permissions regular players could not
trade or party */
can_trade: true
can_party: true
attendance: true
command_enable: true
}
},
{
@@ -136,7 +135,6 @@ groups: (
langtype: true
}
permissions: {
attendance: false
}
},
{
@@ -284,7 +282,6 @@ groups: (
permissions: {
can_trade: true
can_party: true
command_enable: true
all_skill: false
all_equipment: false
skill_unconditional: false
@@ -296,6 +293,7 @@ groups: (
item_unconditional: false
bypass_stat_onclone: true
bypass_max_stat: true
cashshop_sale: true
/* all_permission: true */
}
}

View File

@@ -103,7 +103,6 @@ jobchange: "Params: <job name|ID>\n" "Changes your job.\n"
"4046 Taekwon 4047 Star Gladiator 4049 Soul Linker 4050 Gangsi\n"
"4051 Death Knight 4052 Dark Collector 4190 Ex. Super Novice 4191 Ex. Super Baby\n"
"4211 Kagerou 4212 Oboro 4215 Rebellion 4218 Summoner\n"
"4239 Star Emperor 4240 Soul Reaper\n"
"----- Baby Novice And Baby 1st Class -----\n"
"4023 Baby Novice 4024 Baby Swordman 4025 Baby Magician 4026 Baby Archer\n"
"4027 Baby Acolyte 4028 Baby Merchant 4029 Baby Thief\n"
@@ -120,10 +119,9 @@ jobchange: "Params: <job name|ID>\n" "Changes your job.\n"
"---- Expanded Baby Class ----\n"
"4220 Baby Summoner 4222 Baby Ninja 4223 Baby Kagero 4224 Baby Oboro\n"
"4225 Baby Taekwon 4226 Baby Star Glad 4227 Baby Soul Linker 4228 Baby Gunslinger\n"
"4229 Baby Rebellion 4241 Baby Star Emperor 4242 Baby Soul Reaper\n"
"4229 Baby Rebellion\n"
"---- Modes And Others ----\n"
" 22 Wedding 26 Christmas 27 Summer 28 Hanbok\n"
" 29 Oktoberfest 30 Summer 2\n"
" 4048 Star Gladiator (Union) 4238 Baby Star Glad (Union)\n"
option: "Params: <param1> <param2>(stackable) <param3>(stackable)\n" "Adds different visual effects on or around your character.\n"
" <param1> <param2> <param3>\n"
@@ -323,6 +321,3 @@ reload: "Params: <type>\n" "Reload a database or configuration file.\n"
" pcdb motd script\n"
" questdb msgconf packetdb\n"
langtype: "Params: <language>\n" "Changes your language setting."
limitedsale: "Opens the limited sale window."
changedress: "Removes all character costumes."
camerainfo: "Shows or updates the client's camera settings."

View File

@@ -10,11 +10,7 @@
# Table: "<storage_table>" // (string) Name of table where storage is saved. The table stucture is the same as the default storage table.
# Max: <max_amount> // (int) *optional* Maximum number of items in storage. MAX_STORAGE will be used if no value is defined.
###############################################################################################################################################
Header:
Type: INTER_SERVER_DB
Version: 1
#Body:
#Storages:
# - ID: 1
# Name: "VIP Storage"
# Table: "vip_storage"

View File

@@ -149,7 +149,6 @@ vending_table: vendings
vending_items_table: vending_items
market_table: market
roulette_table: db_roulette
guild_storage_log: guild_storage_log
// Use SQL item_db, mob_db and mob_skill_db for the map server? (yes/no)
use_sql_db: no

View File

@@ -28,15 +28,7 @@
# Table: "<storage_table>" // (string) Name of table where storage is saved. The table stucture is the same as the default storage table.
# Max: <max_amount> // (int) *optional* Maximum number of items in storage. MAX_STORAGE will be used if no value is defined.
Header:
Type: INTER_SERVER_DB
Version: 1
Body:
- ID: 0
Name: "Storage"
Table: "storage"
Footer:
Imports:
- Path: conf/import/inter_server.yml
Storages:
- ID: 0
Name: "Storage"
Table: "storage"

View File

@@ -4,7 +4,7 @@
// Note 1: Value is a config switch (on/off, yes/no or 1/0)
// Note 2: Value is in percents (100 means 100%)
// Note 3: Value is a bit field. If no description is given,
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun, 16: Mercenary, 128: NPC, 512: Elemental)
// assume unit types (1: Pc, 2: Mob, 4: Pet, 8: Homun)
//--------------------------------------------------------------
// Enable Logs? (Note 3)
@@ -37,7 +37,7 @@
// Please note that moving items from inventory to cart and back is not logged by design.
enable_logs: 0xFFFFFF
// Use MySQL Logs? (Note 1)
// Use MySQL Logs? [SQL Version Only] (Note 1)
sql_logs: yes
// LOGGING FILTERS
@@ -86,8 +86,10 @@ log_branch: no
// 0 - don't log; 1 - log any zeny changes; 2.....1000000 - minimal absolute logging zeny value
log_zeny: 0
// Track Cash Changes (Note 1)
log_cash: yes
// Track Cash Changes
// 0 - don't log
// 1 - log any changes
log_cash: 1
// Log MVP Monster Drops (Note 1)
// Outdated. Use Pick_Log instead. But this log could be useful to keep track slayed MVPs

View File

@@ -89,7 +89,7 @@ min_group_id_to_connect: -1
vip_group: 5
// How many characters are allowed per account?
// You cannot exceed the limit of MAX_CHARS slots, defined in mmo.hpp, or chars_per_account
// You cannot exceed the limit of MAX_CHARS slots, defined in mmo.h, or chars_per_account
// will default to MAX_CHARS.
// 0 will default to the value of MIN_CHARS. (default)
chars_per_account: 0
@@ -98,7 +98,7 @@ chars_per_account: 0
// Increase the value of MAX_CHARS if you want to increase vip_char_increase.
// Note: The amount of VIP characters = MAX_CHARS - chars_per_account.
// Note 2: This setting must be set after chars_per_account.
// -1 will default to MAX_CHAR_VIP (src/config/core.hpp)
// -1 will default to MAX_CHAR_VIP (src/config/core.h)
vip_char_increase: -1
// Create accounts with limited time?
@@ -110,28 +110,6 @@ start_limited_time: -1
// NOTE: Will not work with clients that use <passwordencrypt>
use_MD5_passwords: no
// User count colorization on login window (requires PACKETVER >= 20170726)
// Disable colorization and description in general?
usercount_disable: no
// Amount of users that will display in green
usercount_low: 200
// Amount of users that will display in yellow
usercount_medium: 500
// Amount of users that will display in red
usercount_high: 1000
// Available values, choose one
// `email` : Email address
// `birthdate` : Birthdate (YYMMDD of birthdate, YY is last 2 digit of birth year)
// `pincode` : Pincode (pin that used in login)
// (Sub-query) : EXPERT ONLY
//
// IMPORTANT!
// - Length of confirmation code which is sent by client depends on its packet
// - Packet 0x0068 is 39 chars, 0x01fb is 49 chars, while 0x0829 only 6 chars.
// - For 2013 clients must use langtype 1 to uses 0x01fb
char_deletion_code: `birthdate`
// Ipban features
ipban_enable: yes
// Dynamic password failure ipban system

View File

@@ -105,13 +105,11 @@ minsave_time: 100
// 32: After successfully submitting an item for auction
// 64: After successfully get/delete/complete a quest
// 128: After every bank transaction (deposit/withdraw)
// 256: After every attendance reward
// 4095: Always
// NOTE: These settings decrease the chance of dupes/lost items when there's a
// server crash at the expense of increasing the map/char server lag. If your
// server rarely crashes, but experiences interserver lag, you may want to set
// these off.
save_settings: 4095
save_settings: 255
// Message of the day file, when a character logs on, this message is displayed.
motd_txt: conf/motd.txt

View File

@@ -1174,7 +1174,6 @@ map: 1@glast
// Biochemical Laboratory Nightmare
map: lhz_dun_n
map: lhz_d_n2
// Copy of Old Glast Heim memorial map
map: 1@gl_kh
@@ -1272,79 +1271,91 @@ map: gef_d01_i
// Illusion Ice (Frozen)
map: ice_d03_i
// Suspicious shipwreck
// ??
map: 1@tre
// Poring Town
// ??
map: 1@begi
// Illusion Turtle island (Archery)
map: tur_d03_i
map: tur_d04_i
// Volcanic island Korodo
// ??
map: 1@crd
// ??
map: ordeal_a00
map: ordeal_a02
map: pprontera
// ??
map: niflxmas
map: sch_lab
map: nakhyang
// Noodles Festival July
map: lasa_sea
map: 1@drdo
// X anniversary
map: x_lhz
map: x_prt
map: x_ra
// November hunting contest
map: prt_evt_in
// Welcome Corridor
map: vis_h01
map: vis_h02
map: vis_h03
map: vis_h04
// Illusion Teddy Bear Nasarian Empire
map: ein_d02_i
// Illusion Ruande
map: com_d02_i
// Soul Reaper Job Change
map: 1@soul
// Star Emperor Job Change
map: star_frst
map: star_in
// RWC Maps
map: 2009rwc_01
map: 2009rwc_02
map: 2009rwc_03
map: 2009rwc_04
map: 2009rwc_05
map: 2009rwc_06
map: 2009rwc_07
map: 2009rwc_08
map: 2009rwc_f01
map: 2012rwc_01
map: 2012rwc_02
map: 2012rwc_03
map: 2012rwc_04
map: 2012rwc_05
map: 2012rwc_06
map: 2012rwc_07
map: 2012rwc_08
//------------------------- Clone Maps ---------------------------
//------------------------- Extra Maps ---------------------------
// Ragnarok World Championship 2004
// Requires: RWC 2004 Client
// or Akaru's SuperGRF 1.64 or newer
//map: rwc01
//map: rwc02
//map: rwc03
// Ragnarok World Championship 2009
// Requires: RWC 2009 Map files
//map: 2009rwc_f01
//map: 2009rwc_01
//map: 2009rwc_02
//map: 2009rwc_03
//map: 2009rwc_04
// Ragnarok World Championship 2008?
// Requires: RWC 2008 Map files?
//map: 2008rwc_04
//Christmas & Sakura Special
//Requires Akaru's SuperGRF 1.1 or newer
//map: prontera_x
//map: alberta_x
//map: aldebaran_x
//map: geffen_x
//map: izlude_x
//map: prt_church_x
//map: prontera_s
//map: pay_arche_s
//Fenced Lutie
//Requires Akaru's SuperGRF 1.23 or newer
//map: xmas_old
//Alpha Maps
//Requires adata.grf containing alpha maps and data
//map: fay_vilg00
//map: fay_vilg01
//map: gef_vilg00
//map: gef_vilg01
//map: moc_dugn01
//map: moc_dugn02
//map: moc_fild01
//map: moc_fild02
//map: moc_fild03
//map: moc_fild04
//map: moc_intr00
//map: moc_intr01
//map: moc_intr02
//map: moc_intr04
//map: moc_vilg00
//map: moc_vilg01
//map: moc_vilg02
//map: probemap
//map: probemap02
//map: prt_cstl01
//map: prt_dugn00
//map: prt_dugn01
//map: prt_fild00
//map: prt_fild01
//map: prt_fild03
//map: prt_fild04
//map: prt_fild05
//map: prt_intr01
//map: prt_intr01_a
//map: prt_intr02
//map: prt_vilg00
//map: prt_vilg01
//map: prt_vilg02
//map: tank_test
//map: tank_test2
//map: test

View File

@@ -1,2 +1,2 @@
// Internal default is limited to 128 lines. If you need more, you will need to modify the MOTD_LINE_SIZE definition in pc.cpp
// Internal default is limited to 128 lines. If you need more, you will need to modify the MOTD_LINE_SIZE definition in pc.c
Welcome to rAthena! Enjoy! Please report any bugs you find.

View File

@@ -125,12 +125,7 @@
115: Baby Soul Linker
116: Baby Gunslinger
117: Baby Rebellion
118: Star Emperor
119: Soul Reaper
120: Baby Star Emperor
121: Baby Soul Reaper
199: Unknown Job
118: Unknown Job
//Auction
200: Auction Manager
@@ -154,8 +149,8 @@
216: No account with ID '%d' was found.
217: -- Account %d --
218: User: %s | GM Group: %d | State: %d
//219: FREE
//220: FREE
219: Password: %s (PIN:%s)
220: ****
221: Account e-mail: %s | Birthdate: %s
222: Last IP: %s (%s)
223: This user has logged in %d times, the last time was at %s

View File

@@ -458,7 +458,8 @@
// Homunculus messages
450: You already have a homunculus
//451 free
// Return pet to egg message
451: You can't return your pet because your inventory is full.
// Message System
460: Please enter a valid language (usage: @langtype <language>).
@@ -689,7 +690,7 @@
666: Pets are not allowed in Guild Wars.
667: You're not dead.
668: Your actual memo positions are:
//669 free
669: You broke the target's weapon.
670: You can't leave battleground guilds.
671: Friend already exists.
672: Name not found in list.
@@ -830,36 +831,7 @@
// Achievements
772: Achievements are disabled.
//773-775 reserved for refine UI
//776-781 reserved for tax system
782: Star Emperor
783: Soul Reaper
784: Baby Star Emperor
785: Baby Soul Reaper
// Guild Storage Expansion Skill
786: The guild does not have a guild storage.
787: You do not have permission to use the guild storage.
// Attendance
// Mail sender: Officer
788: <MSG>3455</MSG>
// Mail title: %dday attendance has been paid.
789: <MSG>3456,%d</MSG>
// Mail body: %dday attendance has been paid.
790: <MSG>3456,%d</MSG>
791: You are not allowed to use the attendance system.
// Private Airship
792: The private airship system is disabled.
793: Usage @camerainfo range rotation latitude
// pcblock command
794: This action is currently blocked.
//795-899 free
//773-899 free
//------------------------------------
// More atcommands message
@@ -1064,10 +1036,7 @@
1050: Other Flags:
1051: Other Flags2:
1052: Skill Damage Adjustments:
1053: > [Map] %d%%, %d%%, %d%%, %d%% | Caster:%d
1054: > [Map Skill] Name : Player, Monster, Boss Monster, Other | Caster
1055: Skill Duration Adjustments:
//1056-1064 free
//1053-1064 free
1065: No Exp Penalty: %s | No Zeny Penalty: %s
1066: On
1067: Off
@@ -1558,7 +1527,7 @@
1391: You do not possess a cart to be removed
1392: Cart Added.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: You can't use commands while dead.
// @clearstorage

View File

@@ -441,7 +441,8 @@
// Homunculus messages
450: 你已經擁有一個人工生命體了
//451 free
// Return pet to egg message
451: 你無法收回寵物,因為你身上沒有空間了
// Message System
460: 請輸入合法的語言 (usage: @langtype <language>).
@@ -642,7 +643,7 @@
666: 公會戰不允許有寵物
667: 你沒死亡
668: 你實際儲存點是:
//669 free
669: 你破壞目標的武器
670: 你無法離開戰場公會
671: 這朋友已存在
672: 該名稱不在清單內
@@ -1372,7 +1373,7 @@
1391: You do not possess a cart to be removed
1392: Cart Added.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: 角色死亡時不能使用指令。
// @clearstorage

View File

@@ -449,7 +449,8 @@
// Homunculus messages
450: Vous possédez déjà un homunculus
//451 free
// Return pet to egg message
451: Vous ne pouvez pas remettre votre pet dans son oeuf car votre inventaire est plein.
// Message System
460: Entrez une langue (usage: @langtype <langue>).
@@ -654,7 +655,7 @@
666: Pets non-autorisés lors d'une guerre entre guilde.
667: Vous n'êtes pas mort(e).
668: Votre position memo actuelle est:
//669 free
669: Vous brisez l'arme de la cible.
670: Vous ne pouvez pas quitter votre guilde.
671: Cette personne est déjà dans votre liste d'ami.
672: Nom introuvable dans la liste.
@@ -1385,7 +1386,7 @@
1391: Vous ne possédez pas de chariot.
1392: Chariot ajouté.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: Les morts ne pouvent pas utiliser de commande.
// @clearstorage

View File

@@ -459,7 +459,8 @@
// Pesan-pesan untuk Homunculus
450: Kamu sudah memiliki homunculus
//451 free
// Pesan tentang mengembalikan peliharaan ke telur
451: Kamu tidak dapat mengembalikan peliharaan kamu karena inventory penuh.
// Sistem Pesan
460: Harap masukkan tipe bahasa yang valid. (Penggunaan: @langtype <bahasa>).
@@ -688,7 +689,7 @@
666: Peliharaan tidak diperbolehkan di Guild Wars.
667: Kamu tidak mati.
668: Posisi memomu saat ini adalah:
//669 kosong
669: Kamu menghancurkan senajta lawan.
670: Kamu tidak dapat meninggalkan guild battleground.
671: Teman sudah ada.
672: Nama tidak ditemukan di daftar.
@@ -1476,7 +1477,7 @@
1391: Kamu tidak memiliki keranjang yang akan dihapus.
1392: Gerobak ditambahkan.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: Kamu tidak bisa menggunakan perintah ini ketika mati.
// @clearstorage

View File

@@ -1,3 +0,0 @@
//Custom translations
import: conf/msg_conf/import/map_msg_mal_conf.txt

File diff suppressed because it is too large Load Diff

View File

@@ -449,7 +449,8 @@
// Сообщения команды @makehomun
450: У вас уже есть гомункулус
//451 free
// Возвращение питомца в яйцо
451: Вы не можете вернуть питомца в яйцо, потому что ваш инвентарь забит.
// @langtype
460: Введите существующий язык (Используйте: @langtype <язык>).
@@ -654,7 +655,7 @@
666: Питомцы запрещены во время Войны за Империум.
667: Вы не мертвы.
668: Ваши текущие точки сохранения:
//669 НЕ ИСПОЛЬЗУЕТСЯ
669: Вы сломали оружие цели.
670: Вы не можете покинуть БГ.
671: Друг уже добавлен.
672: Имя не найдено в списке.
@@ -1385,7 +1386,7 @@
1391: У вас нет телеги.
1392: Телега добавлена.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: Вы не можете использовать команды когда мертвы.
// @clearstorage

View File

@@ -2,16 +2,20 @@
// Configuración de mensajes
// Si vas a traducirlo simplemente tienes que cambiar el msg de la segunda línea, no tienes que modificar el código fuente,
// aunque también puedes utilizar conf/import/map_msg_spn_conf.txt
//
// Formato:
// msg_number: mensaje traducido (tamaño máximo: 255 caracteres)
//
// El formato es el siguiente:
// // Mensaje en inglés
// msg_number: mensaje traducido
// Del 0 al 410 están reservados para comandos de GM (Game Master)
// Del 500-900 están reservados para otros usos
// Del 900 al 1300 son mensajes de @atcommand
// Si quieres desactivar una variable (%s) de una cadena de texto, haz que su tamaño máximo sea 0:
// Por ejemplo:
// 270: *%s %s* (Este es el formato de texto para el comando @me)
// 270: *%.0s%s* (Si pones esto no se mostrará el nombre del personaje)
// Mensajes de comandos de GM
// Aquí empiezan los mensajes relacionados con los comandos de GM
// -----------------------
0: Te has teletransportado.
@@ -86,10 +90,10 @@
69: Has reducido el nivel de oficio de ese personaje.
70: Has adquirido esa habilidad.
71: Has olvidado esa habilidad.
72: Ha comenzado la guerra de clanes.
73: En estos momentos ya hay una guerra de clanes.
74: La guerra de clanes ha finalizado.
75: En estos momentos no hay ninguna guerra de clanes.
72: Ha comenzado la Guerra del Emperium.
73: En estos momentos ya hay una Guerra del Emperium.
74: La Guerra del Emperium ha finalizado.
75: En estos momentos no hay ninguna Guerra del Emperium.
76: Se han añadido todas las habilidades a tu árbol de habilidades.
77: Estos son los resultados de la búsqueda de '%s' (nombre: ID):
78: %s: %d
@@ -127,9 +131,9 @@
110: El NPC ha sido cargado con éxito.
111: Ese NPC no existe.
112: El NPC ha sido desactivado.
113: Un GM te ha eliminado esta cantidad de objetos: %d.
114: Objetos eliminados del jugador: %d.
115: Objetos eliminados: %d. El jugador sólo tenía %d de %d objetos.
113: Un GM te ha eliminado %d objeto(s).
114: Se han eliminado %d objeto(s) del jugador.
115: Se han eliminado %d objeto(s). El jugador sólo tenía %d de %d objetos.
116: Ese personaje no tiene el objeto que has introducido.
117: Un GM te ha enviado a la cárcel.
118: Has enviado al jugador a la cárcel.
@@ -154,7 +158,7 @@
141: Has quitado el disfraz de ese personaje.
142: Ese personaje no lleva ningún disfraz.
143: No puedes utilizar ese comando en este mapa.
144: La dirección de correo electrónico no es válida, si no sabes cuál es prueba a@a.com
144: La dirección de correo electrónico no es válida, si no sabes cual es prueba a@a.com
145: La dirección de correo electrónico no es válida. Introduce una de verdad.
146: Debes introducir una dirección de correo electrónico de verdad.
147: La nueva dirección de correo electrónico debe ser distinta a la actual.
@@ -255,7 +259,7 @@
242: Ahora cualquier jugador puede atacarte.
243: Ya no se pueden utilizar habilidades en este mapa.
244: Ahora se pueden utilizar habilidades en este mapa.
245: Tiempo de conexión del servidor: Días: %ld. Horas: %ld. Minutos: %ld. Segundos: %ld.
245: El servidor lleva en marcha %ld días, %ld horas, %ld minutos, %ld segundos.
246: Tu nivel de GM no está autorizado para realizar esa acción.
247: No tienes permiso para ir a ese mapa.
248: No tienes permiso para salir de este mapa.
@@ -306,13 +310,6 @@
290: Ahora nadie puede atacar a ese jugador.
291: Los efectos climáticos desaparecerán al teletransportarse o al utilizar @refresh.
292: Has restablecido la condición de asesino.
// Sistema de ligado de objetos
293: Este objeto está ligado y no puede intercambiarse.
294: Este objeto está ligado y no puede almacenarse.
295: Introduce el nombre de un objeto o su ID (instrucciones: @item <nombre/ID> <cantidad> <ligado>).
296: Introduce todos los parámetros (instrucciones: @item2 <nombre/ID> <cantidad>)
297: <identificado> <refinamiento> <atributo> <carta1> <carta2> <carta3> <carta4> <ligado>).
298: El ligado del objeto no es válido. Tipos válidos: 1-Cuenta, 2-Clan, 3-Grupo, 4-Personaje.
// Número de los castillos
// --------------------
//299: ?? castillos
@@ -355,15 +352,14 @@
//Plantillas para el resultado de @who
343: Nombre: %s
344: (%s)
344: (%s)
345: | Grupo: '%s'
346: | Clan: '%s'
//Si eliminas el último %s no verás el oficio de tus jugadores.
347: | Nv:%d/%d | Oficio: %s
//Si eliminas los 2 últimos %d no verás las coordenadas de tus jugadores, tan solo el nombre el mapa donde están
348: | Ubicación: %s %d %d
// @fullstrip
349: Introduce el nombre de un jugador (instrucciones: @fullstrip <personaje/ID>).
// @duel (1ª parte)
350: Duelo: No puedes usar @invite porque no estás en un duelo.
351: Duelo: Se ha alcanzado el límite máximo de jugadores para este duelo.
@@ -396,15 +392,7 @@
380: Ha ocurrido un error. El objeto [%s] no puede usarse todavía. Espera %d segundos.
381: La habilidad ha fallado. Para utilizar [%s] necesitas %dx %s.
382: Estás demasiado cerca de un emperium o una piedra guardián.
383: No puedes crear un punto de guardado en una instancia.
384: No puedes hacer memo en una instancia.
//Comprobación de emblemas
385: No se puede cambiar el emblema durante una guerra de clanes.
386: El emblema que has elegido no es válido.
387: El emblema que has elegido tiene demasiada transparencia (límite=%d)
//etc
388: No puedes utilizar este objeto con el almacén abierto.
389: La velocidad ha vuelto a la normalidad.
//383-389 vacíos
//NoAsk (rechazar invitaciones)
390: Rechazas todas las invitaciones de manera automática.
391: Ya no rechazas todas las invitaciones de manera automática.
@@ -418,11 +406,11 @@
400: Instrucciones @jailfor <tiempo> <nombre del personaje>
401: Tu pena de prisión es de %d años, %d meses, %d días, %d horas y %d minutos.
402: %s estará en la cárcel durante %d años, %d meses, %d días, %d horas y %d minutos.
// WoE SE (@agitstart2) guerra de clanes, 2ª edición.
403: Ha dado comienzo la guerra de clanes de la 2ª edición.
404: Hay una guerra de clanes de la 2ª edición en marcha.
405: Ha finalizado la guerra de clanes de la 2ª edición.
406: No hay ninguna guerra de clanes de la 2ª edición en marcha.
// WoE SE (@agitstart2) Guerra del Emperium, 2ª edición.
403: Ha dado comienzo la Guerra del Emperium de la 2ª edición.
404: Hay una Guerra del Emperium de la 2ª edición en marcha.
405: Ha finalizado la Guerra del Emperium de la 2ª edición.
406: No hay ninguna Guerra del Emperium de la 2ª edición en marcha.
//407 free
//Mensajes de chrif
408: Necesitas desconectarte para realizar el cambio de sexo.
@@ -448,20 +436,15 @@
430: desbloquear
431: desbloquear
432: cambiar el sexo de
433: Este personaje tiene el acceso bloqueado hasta
434: El char-server va a %s al personaje '%.*s'.
435: Introduce el nombre de un jugador (instrucciones: %s <nombre de personaje>).
436: VIP
437: Un GM no puede ser VIP.
438: Ya no eres VIP.
// Mensajes de homúnculos
450: Ya tienes un homúnculo.
//451 free
// Return pet to egg message
451: No puedes devolver tu pet al huevo porque tu inventario está lleno.
// Sistema de mensajería
460: Introduce un idioma válido (instrucciones: @langtype <idioma>)
460: Introduce un idioma válido (Instrucciones: @langtype <idioma>)
461: Has establecido %s como idioma.
462: Ese idioma está desactivado.
463: Se ha actualizado la configuración de los mensajes.
@@ -475,7 +458,7 @@
485:    Usuarios: %d/%d | Contraseña: %s | Abierto: %s
486: Sí
487: No
488: Introduce un valor de la lista (instrucciones: @mapinfo <0-3> <mapa>).
488: Introduce un valor de la lista (Instrucciones: @mapinfo <0-3> <mapa>).
489: NPC %d: %s::%s | Dirección: %s | Sprite: %d | Ubicación: %d %d
490: NPC %d: %s | Dirección: %s | Sprite: %d | Ubicación: %d %d
491: Norte
@@ -496,65 +479,35 @@
503: Está activado el modo nocturno.
//Mensajes de los puntos de cash
504: Puntos utilizados: Kafra: %d. Cash: %d. Puntos restantes: Kafra: %d. Cash: %d.
505: Puntos de cash obtenidos: %d. Puntos totales: %d.
506: Puntos de Kafra obtenidos %d. Puntos totales: %d.
410: Puntos de cash eliminados: %d. Puntos restantes: %d.
411: Puntos de Kafra eliminados: %d. Puntos restantes: %d.
504: Has utilizado %d puntos Kafra y %d puntos de cash. Te quedan %d puntos Kafra y %d puntos de cash.
505: Has obtenido %d puntos de cash. Tienes un total de %d puntos.
506: Has obtenido %d puntos Kafra. Tienes un total de %d puntos.
410: Se han eliminado %d puntos de cash. Quedan %d puntos.
411: Se han eliminado %d puntos Kafra. Quedan %d puntos.
// Bloqueo de personajes
507: Este jugador ha sido bloqueado durante estos minutos: %d.
508: Este jugador no ha sido bloqueado (el bloqueo está desactivado).
509: Comandos de scripts ligados:
// Mensajes del sistema de intercambio de objetos
507: Este jugador ha sido expulsado durante %d minuto(s).
508: Este jugador no ha sido expulsado (La opción está desactivada).
//509 vacío
// Sistema de correo
510: Correos nuevos: %d (%d sin leer).
//Instancing
515: Tu instancia se ha recargado.
516: Se ha recargado la base de datos de instancias.
// @auction
517: El sistema de subastas está desactivado.
//@itemlist -- continuación
518: Adorno para la boca,
519: Adorno para la cabeza,
520: Adorno para la cabeza y la boca,
521: Adorno para los ojos,
522: Adorno para ojos y boca,
523: Adorno para toda la cara,
524: Ropa decorativa,
525: Suelo decorativo,
526: Armadura,
527: Cuerpo sombrío,
528: Mano derecha sombría,
529: Mano izquierda sombría,
530: Sombra en ambas manos,
531: Zapatos sombríos,
532: Accesorio derecho sombrío,
533: Accesorio izquierdo sombrío,
534: ¡No quedan existencias! Vuelve más tarde.
//----------------------
510: Tienes un total de %d cartas nuevas (%d sin leer).
// Mensajes de detección de bots (sin uso)
535: Se ha detectado un posible bot (99% de probabilidades) o un cliente modificado: '%s' (cuenta: %d, char_id: %d). Este jugador te pregunta el nombre si estás escondido.
536: El personaje '%s' (cuenta: %d) está intentando utilizar un bot (intentando detectar a un jugador falso).
537: El personaje '%s' (cuenta: %d) está intentando utilizar un bot (intentando detectar a un monstruo falso).
// Mensajes del sistema de intercambio de objetos
538: Se ha detectado una irregularidad en el intercambio de objetos del personaje '%s' (cuenta: %d), está intentando intercambiar más de lo que tiene.
539: Ese jugador tiene %d unidades del objeto (id: %hu), pero ha intentado intercambiar %d.
540: Ese jugador ha sido bloqueado.
// Anuncios de consecución de objetos poco comunes y robos de objetos.
541: '%s' ha conseguido de %s un %s (probabilidad: %0.02f%%)
//541: %.0s%.0s alguien ha conseguido %s
542: '%s' ha robado de %s un %s (probabilidad: %0.02f%%)
//542: %.0s%.0s alguien ha robado%s
//543~548 no se utilizan (pertenecían a @away)
// @autotrade
549: Debes abrir una tienda para poder utilizar @autotrade.
@@ -686,21 +639,22 @@
663: Duelo: No puedes utilizar ese objeto en pleno duelo.
664: No puedes utilizar ese comando estando muerto.
665: No puedes crear una sala de chat en este mapa.
666: Las mascotas están prohibidas en la guerra de clanes.
666: Las mascotas están prohibidas en la Guerra del Emperium.
667: No estás muerto.
668: Tus puntos de memorización actuales son los siguientes:
//669 vacío
669: Has roto el arma de tu enemigo.
670: No puedes abandonar un clan especial de battleground.
671: Ese jugador ya es amigo tuyo.
672: No se ha encontrado el nombre que has introducido.
673: No puedes realizar esa acción en estos momentos. Inténtalo más tarde.
674: Se ha eliminado de tu lista de amigos.
675: No puedes enviar tantos correos seguidos.
676: No se pueden establecer alianzas durante una guerra de clanes.
677: No se puede romper una alianza durante una guerra de clanes.
676: No se pueden establecer alianzas durante una Guerra del Emperium.
677: No se puede romper una alianza durante una Guerra del Emperium.
678: Ya no eres el líder del clan.
679: Te has convertido en el líder del clan.
680: Te has recuperado.
//681-899 vacíos
681: Rune Knight T
682: Warlock T
@@ -722,86 +676,6 @@
698: Baby Summoner
699: Baby Ninja
// @vip
700: Instrucciones: @vip <tiempo> <nombre del personaje>
701: El tiempo introducido no es válido.
702: El formato del tiempo es +/-<valor>. y/a = Año, m = Mes, d/j = Día, h = Horas, n/mn = Minutos, s = Segundos.
703: Un GM te ha retirado el VIP.
704: El jugador ya no es VIP.
705: Tiempo restante como VIP: Años: %d. Meses: %d. Días: %d. Horas: %d. Minutos: %d.
706: El jugador '%s' será VIP durante: Años: %d. Meses: %d. Días: %d. Horas: %d. Minutos: %d.
707: Serás VIP hasta: %s
708: El jugador será VIP hasta: %s
709: El objeto %hu ha sido eliminado de tu inventario.
710: El objeto %hu ha sido eliminado de tu carro.
711: El objeto %hu ha sido eliminado de tu almacén.
// Item shop
712: No tienes suficientes %s (%hu).
713: No tienes suficientes '%s'.
714: Listado de la tienda de objetos: %s (%hu)
715: Listado de puntos de la tienda: '%s'
716: Tu '%s' ahora es: %d
// MVP EXP reward message
717: ¡Enhorabuena! ¡Eres todo un MVP! ¡¡Puntos de experiencia obtenidos: %u!!
// @showrate
718: La información de ratio personal no se mostrará.
719: Ahora se mostrará la información de ratio personal.
//Skill messages
//720: Vacío
721: [%s] Se ha imbuido el arma con veneno.
//722: Vacío
// @costume
723: No existe el disfraz '%s'.
724: Ya llevas puesto el disfraz '%s', escribe '@costume' para quitártelo.
725: -- %s
726: - Disfraces disponibles
727: Disfraz '%s' eliminado.
// Monster Transformation
728: ¡¡Traaaansformación!! ¡¡Forma %s!!
729: No puedes transformarte en un monstruo si llevas un disfraz.
730: El personaje no puede disfrazarse si está transformado en un monstruo.
731: No puedes transformarte en monstruo durante la guerra de clanes.
732: No puedes abrir el objeto porque tu inventario está lleno.
733: Introduce la ruta de archivo de un NPC (instrucciones: @reloadnpcfile <ruta>).
// @cloneequip/@clonestat
734: No puedes clonar tu propio %s.
735: Instrucciones: %s <personaje/ID>
736: No se puede clonar el %s de ese jugador.
737: '%s' (%d) no se puede clonar, límite (%d).
738: Clonación de '%s' realizada.
// @bodystyle
739: Introduce un estilo de cuerpo (instrucciones: @bodystyle <ID de cuerpo: %d-%d>).
740: Este oficio no tiene estilos de cuerpo alternativos.
// @showexp
741: Obtenida
742: Perdida
743: Experiencia %s Base:%ld (%0.2f%%) Oficio:%ld (%0.2f%%)
// @adopt
744: El bebé ya está adoptado o está en proceso de adopción.
745: Necesitas estar casado y dentro de un grupo con tu pareja y el bebé para adoptarlo.
746: El padre y la madre deben equiparse sus anillos de boda.
747: El bebé no es un Novice.
748: Falta uno de los padres o el bebé.
// Guerra de clanes de entrenamiento (@agitstart3/@agitend3)
749: Ha empezado la guerra de clanes de entrenamiento.
750: La guerra de clanes de entrenamiento ya ha sido iniciada.
751: Ha terminado la guerra de clanes de entrenamiento.
752: La guerra de clanes de entrenamiento no ha sido iniciada.
// Expanded Baby Jobs
753: Baby Kagerou
754: Baby Oboro
@@ -811,27 +685,6 @@
758: Baby Gunslinger
759: Baby Rebellion
// Channel System
760: No puedes unirte al canal '%s'. Se ha llegado al límite de %d usuarios.
761: %s %s se ha unido al canal.
762: No puedes abandonar el canal '%s'.
763: %s %s ha abandonado el canal.
764: No puedes modificar el color del canal '%s'.
765: No tienes permisos para bloquear a nadie.
766: No puedes expulsar a nadie del canal '%s'.
767: No puedes expulsar a nadie del canal.
768: Se ha expulsado a %s %s del canal.
769: Se ha bloqueado a %s %s del canal.
770: Se ha desbloqueado a %s %s del canal.
//@reloadachievementdb
771: Se ha recargado la base de datos de logros.
// Achievements
772: Los logros están desactivados.
//773-899 vacíos
//------------------------------------
// Más mensajes relacionados con comandos
//------------------------------------
@@ -848,13 +701,13 @@
908: Has introducido un valor desconocido en:
// @rura
909: Introduce un nombre de mapa (instrucciones: @warp/@rura/@mapmove <nombre de mapa> <x> <y>).
909: Introduce un nombre de mapa (Instrucciones: @warp/@rura/@mapmove <nombre de mapa> <x> <y>).
// @where
910: Introduce el nombre de algún jugador (instrucciones: @where <personaje>).
910: Introduce el nombre de algún jugador (Instrucciones: @where <personaje>).
// @jumpto
911: Introduce el nombre de algún jugador (instrucciones: @jumpto/@warpto/@goto <personaje/ID>).
911: Introduce el nombre de algún jugador (Instrucciones: @jumpto/@warpto/@goto <personaje/ID>).
// @who
912: (CID:%d/AID:%d)
@@ -867,7 +720,7 @@
917: Ninguno
// @speed
918: Introduce un valor para tu velocidad (instrucciones: @speed <%d-%d>).
918: Introduce un valor para tu velocidad (Instrucciones: @speed <%d-%d>).
// @storage
919: Has abierto el almacén.
@@ -884,22 +737,22 @@
//924-979 vacíos (¿posibles futuros oficios?)
// @kami
980: Introduce un mensaje (instrucciones: @kami <mensaje>).
981: Introduce un color y un mensaje (instrucciones: @kamic <color> <mensaje>).
980: Introduce un mensaje (Instrucciones: @kami <mensaje>).
981: Introduce un color y un mensaje (Instrucciones: @kamic <color> <mensaje>).
982: Ese color no es válido.
// @item
983: Introduce el nombre de un objeto o su ID (instrucciones: @item <nombre del objeto/ID> <cantidad>).
983: Introduce el nombre de un objeto o su ID (Instrucciones: @item <nombre del objeto/ID> <cantidad>).
// @item2
984: Introduce todos los parámetros (instrucciones: @item2 <nombre del objeto/id> <cantidad>)
984: Introduce todos los parámetros (Instrucciones: @item2 <nombre del objeto/id> <cantidad>)
985: <¿identificado?> <refinamiento> <atributos> <carta1> <carta2> <carta3> <carta4>.
// @baselevelup
986: Introduce una cifra (instrucciones @lvup/@blevel/@baselvlup <cantidad de niveles>).
986: Introduce una cifra (Instrucciones @lvup/@blevel/@baselvlup <cantidad de niveles>).
// @joblevelup
987: Introduce una cifra (instrucciones: @joblvup/@jlevel/@joblvlup <cantidad de niveles>).
987: Introduce una cifra (Instrucciones: @joblvup/@jlevel/@joblvlup <cantidad de niveles>).
// @help
988: No hay ayuda disponible para %c%s.
@@ -907,22 +760,22 @@
990: Alternativas disponibles:
// @model
991: Introduce al menos un valor (instrucciones: @model <ID del peinado: %d-%d> <color del peinado: %d-%d> <tinte de ropa: %d-%d>).
991: Introduce al menos un valor (Instrucciones: @model <ID del peinado: %d-%d> <color del peinado: %d-%d> <tinte de ropa: %d-%d>).
// @dye
992: Introduce un tinte de ropa (instrucciones: @dye/@ccolor <tinte de ropa: %d-%d>).
992: Introduce un tinte de ropa (Instrucciones: @dye/@ccolor <tinte de ropa: %d-%d>).
// @hairstyle
993: Introduce un tipo de peinado (instrucciones: @hairstyle/@hstyle <ID del peinado: %d-%d>).
993: Introduce un tipo de peinado (Instrucciones: @hairstyle/@hstyle <ID del peinado: %d-%d>).
// @haircolor
994: Introduce un color de peinado (instrucciones: @haircolor/@hcolor <color del peinado: %d-%d>).
994: Introduce un color de peinado (Instrucciones: @haircolor/@hcolor <color del peinado: %d-%d>).
// @go
995: No puedes utilizar @go en este mapa.
// @refine
996: Introduce una pieza de equipo y una cantidad (instrucciones: @refine <pieza de equipo> <+/- cantidad>).
996: Introduce una pieza de equipo y una cantidad (Instrucciones: @refine <pieza de equipo> <+/- cantidad>).
997: %d: Boca
998: %d: Mano derecha
999: %d: Ropaje
@@ -935,92 +788,89 @@
1006: %d: Ojos / Orejas
// @produce
1007: Introduce el nombre/ID de un objeto (instrucciones: @produce <pieza de equipo/ID> <elemento> <# cantidad de "muy">)
1007: Introduce el nombre/ID de un objeto (Instrucciones: @produce <pieza de equipo/ID> <elemento> <# cantidad de "muy">)
// @memo
1008: Introduce una ubicación válida (instrucciones: @memo <posición_memo:%d-%d>).
1008: Introduce una ubicación válida (Instrucciones: @memo <posición_memo:%d-%d>).
// @displaystatus
1009: Introduce un valor válido (instrucciones: @displaystatus <tipo de estado> <identificador> <punto> {<valor1> {<valor2> {<valor3>}}}).)
1009: Introduce un valor válido (Instrucciones: @displaystatus <tipo de estado> <identificador> <punto> {<valor1> {<valor2> {<valor3>}}}).)
// @stpoint
1010: Introduce una cantidad (instrucciones: @stpoint <cantidad de puntos>)
1010: Introduce una cantidad (Instrucciones: @stpoint <cantidad de puntos>)
// @skpoint
1011: Introduce una cantidad (instrucciones: @skpoint <cantidad de puntos>)
1011: Introduce una cantidad (Instrucciones: @skpoint <cantidad de puntos>)
// @zeny
1012: Introduce una cantidad (instrucciones: @zeny <cantidad>).
1012: Introduce una cantidad (Instrucciones: @zeny <cantidad>).
// @param
1013: Introduce una cantidad (instrucciones: @str/@agi/@vit/@int/@dex/@luk <+/- cantidad>).
1013: Introduce una cantidad (Instrucciones: @str/@agi/@vit/@int/@dex/@luk <+/- cantidad>).
// @guildlevelup
1014: Introduce una cantidad (instrucciones: @guildlvup/@guildlvlup <cantidad de niveles>).
1014: Introduce una cantidad (Instrucciones: @guildlvup/@guildlvlup <cantidad de niveles>).
// @makeegg
1015: Introduce el nombre de un monstruo/huevo/ID (instrucciones: @makeegg <mascota>).
1015: Introduce el nombre de un monstruo/huevo/ID (Instrucciones: @makeegg <mascota>).
// @petfriendly
1016: Introduce una cantidad (instrucciones: @petfriendly <0-1000>).
1016: Introduce una cantidad (Instrucciones: @petfriendly <0-1000>).
// @pethungry
1017: Introduce una cantidad (instrucciones: @pethungry <0-100>).
1017: Introduce una cantidad (Instrucciones: @pethungry <0-100>).
// @recall
1018: Introduce el nombre de un jugador (instrucciones: @recall <nombre/ID>)
1018: Introduce el nombre de un jugador (Instrucciones: @recall <nombre/ID>)
1019: No estás autorizado a llevar a nadie a este mapa.
// @recall
1020: No estás autorizado a sacar a ese jugador de su mapa.
// @charblock/@charunblock
1021: Introduce el nombre de un jugador (instrucciones: @charblock/@block <nombre del personaje>)
// @charblock
1021: Introduce el nombre de un jugador (Instrucciones: @charblock/@block <nombre del personaje>)
// @ban/@charban
1022: Introduce la duración del bloqueo y el nombre del jugador (instrucciones: %s <tiempo> <nombre del personaje>).
// @charban
1022: Introduce la duración del bloqueo y el nombre del jugador que quieres bloquear (Instrucciones: @charban/@ban/@banish/@charbanish <tiempo> <nombre del personaje>).
1023: No estás autorizado para modificar ningún bloqueo temporal.
// @rates
1024: Ratio de objetos de MVP: Comunes %.2fx / Curativos %.2fx / Consumibles %.2fx / Equipo %.2fx / Carta %.2fx
// @recall
1025: El personaje está en autotrade y no puede acudir.
// @charunblock
1024: Introduce el nombre de un jugador bloqueado (Instrucciones: @charunblock <nombre del personaje>).
// @kick
1026: Introduce el nombre de un personaje (instrucciones: @kick <nombre del personaje/ID>).
1026: Introduce el nombre de un personaje (Instrucciones: @kick <nombre del personaje/ID>).
// @questskill / @lostskill
1027: Introduce la ID de una habilidad de quest.
// @spiritball
1028: Introduce una cantidad (instrucciones: @spiritball <cantidad: 0-%d>).
1028: Introduce una cantidad (Instrucciones: @spiritball <cantidad: 0-%d>).
// @party
1029: Introduce el nombre de un grupo (instrucciones: @party <nombre del grupo>).
1029: Introduce el nombre de un grupo (Instrucciones: @party <nombre del grupo>).
// @guild
1030: Introduce el nombre de un clan (instrucciones: @guild <nombre del clan>).
1030: Introduce el nombre de un clan (Instrucciones: @guild <nombre del clan>).
// @idsearch
1031: Introduce una parte del nombre de un objeto (instrucciones: @idsearch <parte del nombre>).
1031: Introduce una parte del nombre de un objeto (Instrucciones: @idsearch <parte del nombre>).
// @recallall / @guildrecall / @partyrecall
1032: No estás autorizado a traer nadie a este mapa.
1033: Jugadores no convocados: %d (no estás autorizado).
// @guildrecall
1034: Introduce el nombre/ID de un clan (instrucciones: @guildrecall <nombre/ID del clan>).
1034: Introduce el nombre/ID de un clan (Instrucciones: @guildrecall <nombre/ID del clan>).
// @partyrecall
1035: Introduce el nombre/ID de un grupo (instrucciones: @partyrecall <nombre/ID del grupo>).
1035: Introduce el nombre/ID de un grupo (Instrucciones: @partyrecall <nombre/ID del grupo>).
// @reloadatcommand
1036: Ha ocurrido un error al cargar el archivo groups.conf.
1037: Ha ocurrido un error al cargar el archivo atcommand_athena.conf.
// @mapinfo
1038: Introduce un número de la lista (instrucciones: @mapinfo <0-3> <mapa>).
1038: Introduce un número de la lista (Instrucciones: @mapinfo <0-3> <mapa>).
1039: ------ Información del mapa ------
1040: Mapa: %s | Jugadores: %d | NPCs: %d | Chats: %d | Tiendas: %d
1041: ------ Opciones del mapa ------
@@ -1034,16 +884,14 @@
1049: Opciones climáticas:
1050: Otras opciones:
1051: Otras opciones2:
1052: Ajustes de daño de habilidades:
//1053-1064 vacíos
1065: Sin penalización de experiencia: %s | Sin penalización de zeny: %s
1066: Activado
1067: Desactivado
1068: Sin opción de guardado (vuelves al punto de guardado)
1068: Sin opción de guardado (Vuelves al punto de guardado)
1069: Sin opción de guardado, punto de guardado: %s, aleatorio
1070: Sin opción de guardado, punto de guardado: %s,%d,%d
// @mount
1119: Te has montado en tu dragón.
1120: Has liberado a tu dragón.
@@ -1054,34 +902,34 @@
// @guildspy
1125: Este comando está desactivado.
1126: Introduce el nombre/ID de un clan (instrucciones: @guildspy <nombre/ID del clan>).
1126: Introduce el nombre/ID de un clan (Instrucciones: @guildspy <nombre/ID del clan>).
// @partyspy
1127: Introduce el nombre/ID de un grupo (instrucciones: @partyspy <nombre/ID del grupo>).
1127: Introduce el nombre/ID de un grupo (Instrucciones: @partyspy <nombre/ID del grupo>).
// @nuke
1128: Introduce el nombre de algún jugador (instrucciones: @nuke <nombre del personaje>).
1128: Introduce el nombre de algún jugador (Instrucciones: @nuke <nombre del personaje>).
// @tonpc
1129: Introduce el nombre de algún NPC (instrucciones: @tonpc <nombre del NPC>).
1129: Introduce el nombre de algún NPC (Instrucciones: @tonpc <nombre del NPC>).
// @enablenpc
1130: Introduce el nombre de un NPC (instrucciones: @enablenpc <nombre del NPC>).
1130: Introduce el nombre de un NPC (Instrucciones: @enablenpc <nombre del NPC>).
// @hidenpc
1131: Introduce el nombre de un NPC (instrucciones: @hidenpc <nombre del NPC>).
1131: Introduce el nombre de un NPC (Instrucciones: @hidenpc <nombre del NPC>).
// @loadnpc
1132: Introduce el nombre de un script (instrucciones: @loadnpc <ruta del script>)
1132: Introduce el nombre de un script (Instrucciones: @loadnpc <ruta del script>)
// @unloadnpc
1133: Introduce el nombre de un NPC (instrucciones: @unloadnpc <nombre del NPC>).
1133: Introduce el nombre de un NPC (Instrucciones: @unloadnpc <nombre del NPC>).
// @jail
1134: Introduce el nombre de algún jugador (instrucciones: @jail <nombre del personaje>).
1134: Introduce el nombre de algún jugador (Instrucciones: @jail <nombre del personaje>).
// @unjail
1135: Introduce el nombre de algún jugador (instrucciones: @unjail/@discharge <nombre del personaje>).
1135: Introduce el nombre de algún jugador (Instrucciones: @unjail/@discharge <nombre del personaje>).
// @jailfor
1136: La duración que has introducido no es válida.
@@ -1095,32 +943,32 @@
1142: Te quedarás
// @disguise
1143:Introduce el nombre/ID de un monstruo/NPC (instrucciones: @disguise <nombre/ID>).
1143:Introduce el nombre/ID de un monstruo/NPC (Instrucciones: @disguise <nombre/ID>).
1144: No puedes disfrazarte en una montura.
// @disguiseall
1145: Introduce el nombre/ID de un monstruo/NPC (instrucciones: @disguiseall <nombre/ID>).
1145: Introduce el nombre/ID de un monstruo/NPC (Instrucciones: @disguiseall <nombre/ID>).
// @disguiseguild
1146: Introduce el nombre/ID de un monstruo, y el nombre/ID de un clan (instrucciones: @disguiseguild <nombre/ID del monstruo> <nombre/ID del clan>).
1146: Introduce el nombre/ID de un monstruo, y el nombre/ID de un clan (Instrucciones: @disguiseguild <nombre/ID del monstruo> <nombre/ID del clan>).
// @undisguiseguild
1147: Introduce el nombre/ID de un clan (instrucciones: @undisguiseguild <nombre/ID del clan>).
1147: Introduce el nombre/ID de un clan (Instrucciones: @undisguiseguild <nombre/ID del clan>).
// @exp
1148: Nivel de base: %d (%.3f%%) | Nivel de oficio: %d (%.3f%%)
// broadcast
1149: Escribe un mensaje (instrucciones: @broadcast <mensaje>).
1149: Escribe un mensaje (Instrucciones: @broadcast <mensaje>).
// localbroadcast
1150: Introduce un mensaje (instrucciones @localbroadcast <mensaje>).
1150: Introduce un mensaje (Instrucciones @localbroadcast <mensaje>).
// @email
1151: Introduce dos correos electrónicos (instrucciones: @email <actual> <nuevo>)
1151: Introduce dos correos electrónicos (Instrucciones: @email <actual> <nuevo>)
// @effect
1152: Introduce el ID de algún efecto (instrucciones: @effect <ID del efecto>)
1152: Introduce el ID de algún efecto (Instrucciones: @effect <ID del efecto>)
// @npcmove
1153: Instrucciones: @npcmove <X> <Y> <nombre del NPC>
@@ -1141,7 +989,7 @@
1162: Has almacenado todos tus objetos.
// @skillid
1163: Introduce el nombre de la habilidad a buscar (instrucciones: @skillid <nombre de la habilidad>).
1163: Introduce el nombre de la habilidad a buscar (Instrucciones: @skillid <nombre de la habilidad>).
1164: habilidad %d: %s (%s)
// @useskill
@@ -1198,8 +1046,8 @@
1193: No estás recogiendo ese objeto.
1194: Has eliminado '%s'/'%s' {%hu} de tu lista de recogida de objetos.
1195: Puedes almacenar %d objetos en tu lista de recogida de objetos.
1196: Para añadir un nuevo objeto a la lista utiliza @alootid +<nombre/ID del objeto>. Para eliminar un objeto utiliza @alootid -<nombre/ID del objeto>.
1197: "@alootid reset" reiniciará tu lista de recogida de objetos.
1196: Para añadir un nuevo objeto a la lista utiliza @alootid <nombre/ID del objeto>. Para eliminar un objeto utiliza @alootid <nombre/ID del objeto>.
1197: @alootid reset reiniciará tu lista de recogida de objetos.
1198: Tu lista de recogida de objetos está vacía.
1199: Lista de objetos para recoger automáticamente:
1200: Has reiniciado tu lista de recogida de objetos.
@@ -1237,10 +1085,10 @@
1216: Ha comenzado el espectáculo de fuegos artificiales.
// @sound
1217: Introduce el nombre de un archivo de sonido (instrucciones: @sound <archivo>).
1217: Introduce el nombre de un archivo de sonido (Instrucciones: @sound <archivo>).
// @mobsearch
1218: Introduce el nombre de un monstruo (instrucciones: @mobsearch <nombre del monstruo>),
1218: Introduce el nombre de un monstruo (Instrucciones: @mobsearch <nombre del monstruo>),
1219: Ese monstruo no existe (%s).
1220: Búsqueda... %s %s
@@ -1248,14 +1096,14 @@
1221: Has eliminado todos los objetos arrojados al suelo.
// @npctalk
1222: Introduce los siguientes parámetros (instrucciones: @npctalk <nombre del npc> <mensaje>).
1223: Introduce los siguientes parámetros (instrucciones @npctalk <color> <nombre del npc> <mensaje>).
1222: Introduce los siguientes parámetros (Instrucciones: @npctalk <nombre del npc> <mensaje>).
1223: Introduce los siguientes parámetros (Instrucciones @npctalk <color> <nombre del npc> <mensaje>).
// @pettalk
1224: Introduce un mensaje (instrucciones: @pettalk <mensaje>).
1224: Introduce un mensaje (Instrucciones: @pettalk <mensaje>).
// @summon
1225: Introduce el nombre de un monstruo (instrucciones: @summon <nombre del monstruo> {duración}).
1225: Introduce el nombre de un monstruo (Instrucciones: @summon <nombre del monstruo> {duración}).
// @adjgroup
1226: Instrucciones @adjgroup <ID del grupo>
@@ -1264,7 +1112,7 @@
1229: Has cambiado de grupo.
// @trade
1230: Introduce el nombre de un jugador (instrucciones: @trade <nombre del personaje>).
1230: Introduce el nombre de un jugador (Instrucciones: @trade <nombre del personaje>).
// @setbattleflag
1231: Instrucciones: @setbattleflag <opción> <parámetro>
@@ -1272,7 +1120,7 @@
1233: Se ha configurado con éxito.
// @unmute
1234: Introduce el nombre de un jugador (instrucciones: @unmute <nombre del personaje>).
1234: Introduce el nombre de un jugador (Instrucciones: @unmute <nombre del personaje>).
1235: El jugador no está silenciado.
1236: El jugador ya no está silenciado.
@@ -1283,7 +1131,7 @@
1238: No tienes ningún objeto para identificar.
// @mobinfo
1239: Introduce el nombre/ID de un monstruo (instrucciones: @mobinfo <nombre/ID del monstruo>).
1239: Introduce el nombre/ID de un monstruo (Instrucciones: @mobinfo <nombre/ID del monstruo>).
1240: Monstruo MVP: '%s'/'%s'/'%s' (%d)
1241: Monstruo: '%s'/'%s'/'%s' (%d)
1242: Nv:%d HP:%d  EXP de base:%u  EXP de oficio:%u  HIT:%d FLEE:%d
@@ -1301,7 +1149,7 @@
1252: Búsqueda de monstruos... %s %s
// @homlevel
1253: Introduce un nivel (instrucciones: @homlevel <cantidad de niveles>).
1253: Introduce un nivel (Instrucciones: @homlevel <cantidad de niveles>).
// @homlevel / @homevolve / @homfriendly / @homhungry / @homtalk / @hominfo / @homstats
1254: No tienes ningún homúnculo.
@@ -1310,17 +1158,17 @@
1255: Tu homúnculo no puede evolucionar.
// @makehomun
1256: Introduce el ID de un homúnculo (instrucciones: @makehomun <ID del homúnculo>).
1256: Introduce el ID de un homúnculo (Instrucciones: @makehomun <ID del homúnculo>).
1257: El ID que has introducido no es válido.
// @homfriendly
1258: Introduce un valor de amistad (instrucciones: @homfriendly <valor de amistad [0-1000]>).
1258: Introduce un valor de amistad (Instrucciones: @homfriendly <valor de amistad [0-1000]>).
// @homhungry
1259: Introduce un valor de hambre (instrucciones: @homhungry <valor de hambre [0-100]>).
1259: Introduce un valor de hambre (Instrucciones: @homhungry <valor de hambre [0-100]>).
// @homtalk
1260: Introduce un mensaje (instrucciones: @homtalk <mensaje>).
1260: Introduce un mensaje (Instrucciones: @homtalk <mensaje>).
// @hominfo
1261: Atributos del homúnculo:
@@ -1344,7 +1192,7 @@
1275: Has alterado los atributos del homúnculo.
// @iteminfo
1276: Introduce el nombre/ID de un objeto (instrucciones: @ii/@iteminfo <nombre/ID del objeto>).
1276: Introduce el nombre/ID de un objeto (Instrucciones: @ii/@iteminfo <nombre/ID del objeto>).
1277: Objeto: '%s'/'%s'[%d] (%hu) Tipo: %s | Efecto: %s
1278: Ninguno
1279: Contiene código
@@ -1354,13 +1202,13 @@
1283: - Ningún monstruo tiene este objeto.
// @whodrops
1284: Introduce el nombre/ID de un objeto (instrucciones: @whodrops <nombre/ID del objeto>). 
1284: Introduce el nombre/ID de un objeto (Instrucciones: @whodrops <nombre/ID del objeto>). 
1285: Objeto: '%s'[%d] (ID:%d)
1286: - Ningún monstruo tiene ese objeto.
1287: - Estos monstruos tienen ese objeto (sólo se muestran un máximo de %d):
// @whereis
1288: Introduce el nombre/ID de un monstruo (instrucciones: @whereis <nombre/ID del monstruo>).
1288: Introduce el nombre/ID de un monstruo (Instrucciones: @whereis <nombre/ID del monstruo>).
1289: Puedes encontrar un %s en:
1290: Este monstruo no aparece en ninguna parte.
@@ -1375,7 +1223,7 @@
1296: No se puede especificar la versión SVN.
// @mutearea
1297: Introduce la cantidad de minutos (instrucciones: @mutearea/@stfu <minutos>).
1297: Introduce la cantidad de minutos (Instrucciones: @mutearea/@stfu <minutos>).
// @rates
1298: Experiencia: Base %.2fx / Oficio %.2fx
@@ -1384,13 +1232,13 @@
1301: Otros objetos: MvP %.2fx / Cartas %.2fx / Cofres %.2fx
// @me
1302: Introduce un mensaje (instrucciones: @me <mensaje>).
1302: Introduce un mensaje (Instrucciones: @me <mensaje>).
// @size / @sizeall / @sizeguild
1303: Has alterado tu tamaño.
// @sizeguild
1304: Introduce el nombre/ID de un clan (instrucciones: @sizeguild <tamaño> <nombre/ID del clan>).
1304: Introduce el nombre/ID de un clan (Instrucciones: @sizeguild <tamaño> <nombre/ID del clan>).
// @monsterignore
1305: Ahora eres inmune a cualquier ataque.
@@ -1467,7 +1315,7 @@
1354: Objetos encontrados: %d en %d %s ranuras.
// @delitem
1355: Introduce el nombre/ID de un objeto, una cantidad, y el nombre de un jugador (instrucciones: #delitem <jugador> <nombre/ID del objeto> <cantidad>).
1355: Introduce el nombre/ID de un objeto, una cantidad, y el nombre de un jugador (Instrucciones: #delitem <jugador> <nombre/ID del objeto> <cantidad>).
// @font
1356: Ahora se utilizará la fuente por defecto.
@@ -1488,23 +1336,21 @@
// @set
1367: Instrucciones: @set <nombre de la variable> <valor>
1368: Instrucciones: ej. "@set PoringCharVar 50"
1369: Instrucciones: ej. "@set PoringCharVarSTR$ Cadena de texto"
1370: Instrucciones: ej. "@set PoringCharVarSTR$" muestra su valor, cadena de texto.
1368: Instrucciones: ej. @set PoringCharVar 50
1369: Instrucciones: ej. @set PoringCharVarSTR$ Cadena de texto
1370: Instrucciones: ej. @set PoringCharVarSTR$ muestra su valor, Cadena de texto.
1371: Las variables de NPC no se pueden editar con @set.
1372: Las variables de instancias no se pueden editar con @set.
1373: El valor %s ahora es: %d
1374: El valor %s ahora es: %s
1373: El valor %s ahora es:%d
1374: El valor %s ahora es :%s
1375: %s está vacío
// @cash/@points
1376: Cierra la tienda de cash antes de ejecutar este comando.
//1376: free
// @reloadquestdb
1377: Se ha actualizado la base de datos de las quest con éxito.
// @addperm
1378: Instrucciones: %s <permisos>
1378: Instrucciones %s <permisos>
1379: -- Listado de permisos
1380: '%s' no es un permiso válido.
1381: El jugador '%s' ya tiene el permiso '%s'.
@@ -1518,15 +1364,15 @@
1387: Ese archivo no existe.
// Mensajes de comandos en general
1388: Ha fallado el comando (instrucciones: %c<comando> <nombre del personaje> <parámetros>).
1388: Ha fallado el comando (Instrucciones: %c<comando> <nombre del personaje> <parámetros>).
1389: Ha ocurrido un error con %s. El jugador no existe o no está conectado.
// @cart
1390: Ese carro no existe (instrucciones: %s <0-%d>).
1390: Ese carro no existe (Instrucciones: %s <0-%d>).
1391: No tienes ningún carro.
1392: Ahora tienes un carro.
// atccomand.cpp::is_atcommand
// atccomand.c::is_atcommand
1393: No puedes utilizar ningún comando porque estás muerto.
// @clearstorage
@@ -1541,9 +1387,9 @@
1398: -- Mostrando los primeros %d resultados:
// @channel
1399: Ese canal no existe (instrucciones: %s <#nombre del canal>).
1400: El canal '%s' no existe (instrucciones: %s <#nombre del canal>).
1401: El canal '%s' está protegido con contraseña (instrucciones: %s <#nombre del canal> <contraseña>).
1399: Ese canal no existe (Instrucciones: %s <#nombre del canal>).
1400: El canal '%s' no existe (Instrucciones: %s <#nombre del canal>).
1401: El canal '%s' está protegido con contraseña (Instrucciones: %s <#nombre del canal> <contraseña>).
1402: No estás en ese canal, escribe '@join <#nombre del canal>'.
1403: Has entrado al canal '%s'.
1404: %s ha fallado.
@@ -1613,58 +1459,15 @@
1468: -- Limpia la lista de accesos prohibidos al canal.
1469: * %s delete <#nombre del canal>
1470: -- Elimina el canal especificado.
1471: * %s listado propio
1471: * %s list mine
1472: -- Muestra una lista de todos los canales en los que estás conectado.
1473: * %s join <#nombre del canal> <contraseña>
1474: -- Te unes al canal especificado.
1475: ---- Mis canales ----
1476: No te has unido a ningún canal.
// @effect
1477: Introduce un efecto válido dentro del rango de ID %d a %d.
// @partysharelvl
1478: Se ha modificado el rango para compartir experiencia en grupos.
1479: No se ha podido actualizar la configuración. El char-server está desconectado.
// @autoloottype
1480: Tipo de objeto no encontrado.
1481: Ya estás autorrecogiendo ese tipo de objeto.
1482: Tu lista de autorrecogida de objetos tiene todos los tipos.Puedes eliminar algunos con @autoloottype -<tipo o ID>.
1483: Autorrecogida de objetos del tipo: '%s' {%d}
1484: No estás autorrecogiendo ese tipo de objeto.
1485: Tipo de objeto: '%s' {%d} eliminado de tu lista de autorrecogida de objetos.
1486: Para añadir un tipo de objetos a la lista, usa "@aloottype +<tipo o ID>". Para eliminarlo, use "@aloottype -<tipo o ID>".
1487: Lista de tipos: curativo = 0, consumible = 2, etc = 3, armadura = 4, arma = 5, carta = 6, huevo de mascota = 7, equipo de mascota = 8, municición = 10
1488: "@aloottype reset" borrará tu lista de autorrecogida de objetos.
1489: Tu lista de autorrecogida de objetos está vacía.
1490: Tipos de objetos presentes en tu lista:
1491: Tu lista de autorrecogida de objetos se ha reseteado.
// @dropall
1492: Instrucciones: @dropall {<tipo>}
1493: Listado de tipos: (por defecto) todos = -1, curativos = 0, consumibles = 2, etc = 3, armadura = 4, arma = 5, carta = 6, huevo de mascota = 7, equipo de mascota = 8, munición = 10
1494: ¡Objetos tirados: %d (omitidos: %d)!
// Banking
1495: ¡No puedes retirar tanto dinero!
1496: El banco está desactivado
// Roulette
1497: La ruleta está desactivada
// @guild
1498: No puedes crear un clan porque ya estás en uno.
// @clanspy
1499: Introduce un nombre de de clan o ID (instrucciones: @clanspy <clan o ID>).
1500: Ya no estás espiando al clan %s.
1501: Estás espiando al clan %s.
1502: Nombre o ID de clan no válido.
// PK Mode msgs
1503: Has entrado en una zona PK.
1504: Has entrado en una zona PK (segura hasta el nivel %d).
1498: You cannot create a guild because you are in a clan.
//Traducciones personalizadas
import: conf/msg_conf/import/map_msg_spn_conf.txt

View File

@@ -447,7 +447,8 @@
// Homunculus messages
450: ¤<>³<EFBFBD><C2B3> Homunculus <20><><EFBFBD>טב<D798>י<EFBFBD>.
//451 free
// Return pet to egg message
451: ¤<>³ה<C2B3>ט<EFBFBD><D798><EFBFBD><EFBFBD><EFBFBD>¶א<C2B6>ח÷<D797><C3B7>µ<EFBFBD>לא<D79C><D790>י<EFBFBD>§ה´יא¾<D790><C2BE><EFBFBD>×ט<C397>§א<C2A7>ח÷¢<C3B7>§ד¹µ<C2B9><C2B5><EFBFBD><EFBFBD>¤<EFBFBD>אµח<C2B5>.
// Message System
460: ג»<D792>´א<C2B4><D790><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD>טµי<C2B5>§<EFBFBD><C2A7><EFBFBD> (<28><>¸<EFBFBD>ד×י: @langtype <<3C><><EFBFBD><EFBFBD>>).
@@ -648,7 +649,7 @@
666: <20><>µ<EFBFBD>לא<D79C><D790>י<EFBFBD>§ה<C2A7>טה´י<D799><C2B6><EFBFBD><EFBFBD>÷<EFBFBD>¹<EFBFBD>­<EFBFBD>µד<C2B5>י¹<D799>א¢י<C2A2>ד¹¾<C2B9>י¹·<C2B9>ט Guild Wars.
667: ¤<>³ה<C2B3>טה´יµ<D799><C2B5>.
668: µ<>ב<EFBFBD>¹ט§·<C2A7>ט¤<D798>³ה´י÷<D799>¹·<C2B9><C2B7>ה<EFBFBD>י<EFBFBD><D799>´<EFBFBD>§¹<C2A7>י:
//669 free
669: ¤<>³ה´י·<D799><C2B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸¢<C2B8>§א»י<C2BB><D799><EFBFBD><EFBFBD><EFBFBD>.
670: ¤<>³ה<C2B3>ט<EFBFBD><D798><EFBFBD><EFBFBD><EFBFBD><EFBFBD><C2B6><EFBFBD>¨<EFBFBD><C2A8> Guild ה´יד¹¢³<C2A2><C2B3><EFBFBD><EFBFBD>טד¹ battleground.
671: א¾<D790>ט<EFBFBD>¹·<C2B9>ט<EFBFBD><D798><EFBFBD><EFBFBD><EFBFBD>טב<D798>י<EFBFBD>.
672: ה<>ט¾÷×<C3B7>ט<EFBFBD>ד¹<D793><C2B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
@@ -1378,7 +1379,7 @@
1391: ¤<>³ה<C2B3>ט<EFBFBD><D798><EFBFBD>¶א¢ח¹·<C2B9>ט¨<D798><C2A8>÷<EFBFBD><C3B7><EFBFBD>.
1392: µ<>´µ<C2B4>י§<D799>¶א¢ח¹א<C2B9><D790><EFBFBD>÷<EFBFBD>י<EFBFBD><D799>.
// atcommand.cpp::is_atcommand
// atcommand.c::is_atcommand
1393: ¤<>³ה<C2B3>ט<EFBFBD><D798><EFBFBD><EFBFBD><EFBFBD>¶ד×י¤<D799><C2A4><EFBFBD>ט§ה´יד¹¢³<C2A2>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD>ט.
// @clearstorage

View File

@@ -5,19 +5,6 @@
// Display debug reports (When something goes wrong during the report, the report is saved.)
debug: no
// Linux/Epoll: Maximum Events per cycle
// Default Value:
// (Maximum Supported Connections)/2
// NOTE: this controls the maximum collected socket-events per-cycle (call to epoll_wait())
// for example settings this to 32 will allow up to 32 events (incoming data/new connections
// per server-cycle.
// NOTE: Recommended Settings is at least half the maximum supported connections
// Settings this to a lower value, may cause lags/delays
// Depending on available CPU Time
// NOTE: This Setting is only available on Linux when build using EPoll as event dispatcher!
//
//epoll_maxevents: 1024
// How long can a socket stall before closing the connection (in seconds)
stall_time: 60
@@ -35,7 +22,7 @@ enable_ip_rules: yes
order: deny,allow
// order: allow,deny
// order: mutual-failure
// order: mutual-failture
// IP rules
// allow : Accepts connections from the ip range (even if flagged as DDoS)
@@ -58,7 +45,7 @@ order: deny,allow
ddos_interval: 3000
// Consecutive attempts trigger
// (default is 5 attempts)
// (default is 5 attemps)
ddos_count: 5
// The time interval after which the threat of DDoS is assumed to be gone. (msec)

108
configure vendored
View File

@@ -584,7 +584,7 @@ PACKAGE_BUGREPORT=
PACKAGE_URL=
ac_unique_file="rAthena"
ac_unique_file="src/common/cbasetypes.hpp"
ac_unique_file="src/common/cbasetypes.h"
# Factoring default headers for most tests.
ac_includes_default="\
#include <stdio.h>
@@ -623,7 +623,6 @@ ac_includes_default="\
ac_subst_vars='LTLIBOBJS
LIBOBJS
CXXFLAG_CLEARS
CFLAGS_AR
DLLEXT
PCRE_CFLAGS
@@ -698,7 +697,6 @@ ac_user_opts='
enable_option_checking
enable_manager
enable_packetver
enable_epoll
enable_debug
enable_prere
enable_vip
@@ -1339,8 +1337,7 @@ Optional Features:
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-manager=ARG memory managers: no, builtin, memwatch, dmalloc,
gcollect, bcheck (defaults to builtin)
--enable-packetver=ARG Sets the PACKETVER define. (see src/common/mmo.hpp)
--enable-epoll use epoll(4) on Linux
--enable-packetver=ARG Sets the PACKETVER define. (see src/common/mmo.h)
--enable-debug[=ARG] Compiles extra debug code. (disabled by default)
(available options: yes, no, gdb)
--enable-prere[=ARG] Compiles serv in prere mode. (disabled by default)
@@ -1367,9 +1364,7 @@ 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 (default: 16384) NOT USED YET - EXPERIMENTAL
--with-outputlogin[=ARG]
Specify the login-serv output name (defaults to
login-server)
@@ -2740,7 +2735,7 @@ 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"
ac_config_files="$ac_config_files 3rdparty/mt19937ar/Makefile 3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile"
ac_config_files="$ac_config_files src/char/Makefile src/login/Makefile"
@@ -3240,55 +3235,6 @@ fi
#
# Epoll
#
# Check whether --enable-epoll was given.
if test "${enable_epoll+set}" = set; then :
enableval=$enable_epoll; enable_epoll=$enableval
else
enable_epoll=no
fi
if test x$enable_epoll = xno; then
have_linux_epoll=no
else
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Linux epoll(4)" >&5
$as_echo_n "checking for Linux epoll(4)... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#ifndef __linux__
#error This is not Linux
#endif
#include <sys/epoll.h>
int
main ()
{
epoll_create1 (EPOLL_CLOEXEC);
;
return 0;
}
_ACEOF
if ac_fn_cxx_try_link "$LINENO"; then :
have_linux_epoll=yes
else
have_linux_epoll=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_linux_epoll" >&5
$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
fi
#
# debug
#
@@ -3471,11 +3417,22 @@ fi
# 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
if test "$withval" == "no"; then
CPPFLAGS="$CPPFLAGS -DMAXCONN=16384"
else
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
else
CPPFLAGS="$CPPFLAGS -DMAXCONN=16384"
fi
@@ -4503,8 +4460,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
CFLAGS="$CFLAGS -pipe -ffast-math -Wall"
CPPFLAGS="$CPPFLAGS -I../common"
CXXFLAGS="$CXXFLAGS -std=c++11"
#CXXFLAGS="$CXXFLAGS -std=gnu++11"
CXXFLAG_CLEARS="-std=c++11"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
$as_echo_n "checking whether byte ordering is bigendian... " >&6; }
@@ -5807,8 +5763,8 @@ my_shared_test_flags=""
#
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -fno-strict-aliasing" >&5
$as_echo_n "checking whether $CC supports -fno-strict-aliasing... " >&6; }
OLD_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -fno-strict-aliasing"
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -fno-strict-aliasing"
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int foo;
@@ -5820,7 +5776,7 @@ else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
CPPFLAGS="$OLD_CPPFLAGS"
CFLAGS="$OLD_CFLAGS"
fi
@@ -5962,19 +5918,6 @@ if test -n "$enable_packetver" ; then
fi
#
# Epoll
#
case $have_linux_epoll in
"yes")
CPPFLAGS="$CPPFLAGS -DSOCKET_EPOLL"
;;
"no")
# default value
;;
esac
#
# Debug
#
@@ -7074,12 +7017,10 @@ else
$as_echo "no" >&6; }
fi
CXXFLAG_CLEARS="-std=c++11 $CPPFLAGS"
CFLAGS="$OPT_LTO $CFLAGS"
CFLAGS_AR="$OPT_LTO_AR $CFLAGS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: Configure finish" >&5
$as_echo "$as_me: Configure finish" >&6;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: CPPFLAGS= $CPPFLAGS" >&5
@@ -7804,6 +7745,7 @@ do
case $ac_config_target in
"Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"src/common/Makefile") CONFIG_FILES="$CONFIG_FILES src/common/Makefile" ;;
"3rdparty/mt19937ar/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/mt19937ar/Makefile" ;;
"3rdparty/libconfig/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/libconfig/Makefile" ;;
"3rdparty/yaml-cpp/Makefile") CONFIG_FILES="$CONFIG_FILES 3rdparty/yaml-cpp/Makefile" ;;
"src/char/Makefile") CONFIG_FILES="$CONFIG_FILES src/char/Makefile" ;;

View File

@@ -6,9 +6,9 @@ AC_REVISION($Revision$)
AC_PREREQ([2.59])
AC_LANG([C++])
AC_LANG_COMPILER_REQUIRE
AC_CONFIG_SRCDIR([src/common/cbasetypes.hpp])
AC_CONFIG_SRCDIR([src/common/cbasetypes.h])
AC_CONFIG_FILES([Makefile src/common/Makefile])
AC_CONFIG_FILES([3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile])
AC_CONFIG_FILES([3rdparty/mt19937ar/Makefile 3rdparty/libconfig/Makefile 3rdparty/yaml-cpp/Makefile])
AC_CONFIG_FILES([src/char/Makefile src/login/Makefile])
AC_CONFIG_FILES([src/map/Makefile src/tool/Makefile])
@@ -53,40 +53,6 @@ AC_ARG_ENABLE(
)
#
# Epoll
#
AC_ARG_ENABLE(
[epoll],
AC_HELP_STRING(
[--enable-epoll],
[use epoll(4) on Linux]
),
[enable_epoll=$enableval],
[enable_epoll=no]
)
if test x$enable_epoll = xno; then
have_linux_epoll=no
else
AC_MSG_CHECKING([for Linux epoll(4)])
AC_LINK_IFELSE([AC_LANG_PROGRAM(
[
#ifndef __linux__
#error This is not Linux
#endif
#include <sys/epoll.h>
],
[epoll_create1 (EPOLL_CLOEXEC);])],
[have_linux_epoll=yes],
[have_linux_epoll=no]
)
AC_MSG_RESULT([$have_linux_epoll])
fi
if test x$enable_epoll,$have_linux_epoll = xyes,no; then
AC_MSG_ERROR([epoll support explicitly enabled but not available])
fi
#
# debug
#
@@ -295,24 +261,29 @@ AC_ARG_ENABLE(
#
# 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
#
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 is used.]
[optionally set the maximum connections the core can handle (default: 16384) NOT USED YET - EXPERIMENTAL]
),
[
if ! test "$withval" -ge 0 -o "$withval" -lt 0 2>&- ; then
AC_MSG_ERROR([Invalid argument --with-maxconn=$withval ... stopping])
if test "$withval" == "no"; then
CPPFLAGS="$CPPFLAGS -DMAXCONN=16384"
else
CPPFLAGS="$CPPFLAGS -DMAXCONN=$withval"
if ! test "$withval" -ge 0 -o "$withval" -lt 0 2>&- ; then
AC_MSG_ERROR([Invalid argument --with-maxconn=$withval ... stopping])
else
CPPFLAGS="$CPPFLAGS -DMAXCONN=$withval"
fi
fi
],
[
CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -DMAXCONN=16384"
]
)
@@ -471,8 +442,7 @@ AC_LANG([C++])
CFLAGS="$CFLAGS -pipe -ffast-math -Wall"
CPPFLAGS="$CPPFLAGS -I../common"
CXXFLAGS="$CXXFLAGS -std=c++11"
#CXXFLAGS="$CXXFLAGS -std=gnu++11"
CXXFLAG_CLEARS="-std=c++11"
AC_C_BIGENDIAN(
[AC_MSG_ERROR([[bigendian is not supported... stopping]])],
@@ -938,14 +908,14 @@ AC_SUBST([WITH_PLUGINS])
# -O2 implies -fstrict-aliasing, but the code is not safe for that
#
AC_MSG_CHECKING([whether $CC supports -fno-strict-aliasing])
OLD_CPPFLAGS="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS -fno-strict-aliasing"
OLD_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -fno-strict-aliasing"
AC_COMPILE_IFELSE(
[AC_LANG_SOURCE([int foo;])],
[AC_MSG_RESULT([yes])],
[
AC_MSG_RESULT([no])
CPPFLAGS="$OLD_CPPFLAGS"
CFLAGS="$OLD_CFLAGS"
]
)
@@ -1014,19 +984,6 @@ if test -n "$enable_packetver" ; then
fi
#
# Epoll
#
case $have_linux_epoll in
"yes")
CPPFLAGS="$CPPFLAGS -DSOCKET_EPOLL"
;;
"no")
# default value
;;
esac
#
# Debug
#
@@ -1343,11 +1300,9 @@ else
AC_MSG_RESULT([no])
fi
CXXFLAG_CLEARS="-std=c++11 $CPPFLAGS"
CFLAGS="$OPT_LTO $CFLAGS"
CFLAGS_AR="$OPT_LTO_AR $CFLAGS"
AC_SUBST([CFLAGS_AR])
AC_SUBST([CXXFLAG_CLEARS])
AC_MSG_NOTICE([Configure finish])
AC_MSG_NOTICE([CPPFLAGS= $CPPFLAGS])

View File

@@ -1,90 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2017 rAthena Development Team
# https://rathena.org - https://github.com/rathena
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
###########################################################################
# Renewal Achievement Database
###########################################################################
#
# Achievement Settings
#
###########################################################################
# ID - Unique achievement ID.
###########################################################################
# Group - Achievement group type. Each achievement type calls a specific
# objective check.
# Valid groups:
# AG_ADD_FRIEND
# AG_ADVENTURE
# AG_BABY
# AG_BATTLE
# AG_CHATTING
# AG_CHATTING_COUNT
# AG_CHATTING_CREATE
# AG_CHATTING_DYING
# AG_EAT
# AG_GET_ITEM
# AG_GET_ZENY
# AG_GOAL_ACHIEVE
# AG_GOAL_LEVEL
# AG_GOAL_STATUS
# AG_HEAR
# AG_JOB_CHANGE
# AG_MARRY
# AG_PARTY
# AG_ENCHANT_FAIL
# AG_ENCHANT_SUCCESS
# AG_SEE
# AG_SPEND_ZENY
# AG_TAMING
###########################################################################
# Name - Achievement name. Used when sending rewards through RODEX.
###########################################################################
# Target - A list of monster ID and count values that the achievement
# requires. The target count can also be used for achievements that keep
# a counter while not being related to monster kills.
# Capped at MAX_ACHIEVEMENT_OBJECTIVES.
###########################################################################
# Condition - A conditional statement that must be met for the achievement
# to be considered complete.
###########################################################################
# Map - A map name that is used for the AG_CHATTING type which increments
# the counter based on the player's map.
###########################################################################
# Dependent: - A list of achievement IDs that need to be completed before
# this achievement is considered complete.
###########################################################################
# Reward - A list of rewards that are given on completion. All fields are
# optional.
# ItemID: Item ID
# Amount: Amount of Item ID (default 1)
# Script: Bonus Script
# TitleID: Title ID
###########################################################################
# Score - Achievement points that are given on completion.
###########################################################################
Header:
Type: ACHIEVEMENT_DB
Version: 1
Footer:
Imports:
- Path: db/pre-re/achievement_db.yml
Mode: Prerenewal
- Path: db/re/achievement_db.yml
Mode: Renewal
- Path: db/import/achievement_db.yml

View File

@@ -1,11 +0,0 @@
Header:
Type: ATTENDANCE_DB
Version: 1
Footer:
Imports:
- Path: db/pre-re/attendance.yml
Mode: Prerenewal
- Path: db/re/attendance.yml
Mode: Renewal
- Path: db/import/attendance.yml

29
db/guild_skill_tree.txt Normal file
View File

@@ -0,0 +1,29 @@
// Guild Skill Tree Database
//
// Structure of Database:
// SkillID,MaxLv,Prerequisite SkillID1,Prerequisite SkillLv1,PrereqSkillID2,PrereqSkillLv2,PrereqSkillID3,PrereqSkillLv3,PrereqSkillID4,PrereqSkillLv4,PrereqSkillID5,PrereqSkillLv5 //GUILD SKILLNAME#Skill Name#
//
// 01. SkillID Skill ID of the guild skill.
// 02. MaxLv Maximum level of the guild skill.
// 03. Prerequisite SkillID Guild skill required for the skill to become available.
// 04. Prerequisite SkillLv Level of the required guild skill.
// ...
//
// NOTE: MAX_GUILD_SKILL_REQUIRE (typically 5) ID/Lv pairs must be specified.
10000,1,0,0,0,0,0,0,0,0,0,0 //GD_APPROVAL#Official Guild Approval#
10001,1,10000,1,0,0,0,0,0,0,0,0 //GD_KAFRACONTRACT#Contract with Kafra#
10002,1,10000,1,0,0,0,0,0,0,0,0 //GD_GUARDRESEARCH#Guardian Research#
10003,3,0,0,0,0,0,0,0,0,0,0 //GD_GUARDUP#Strengthen Guardians#
10004,10,0,0,0,0,0,0,0,0,0,0 //GD_EXTENSION#Guild Extension#
10005,0,0,0,0,0,0,0,0,0,0,0 //GD_GLORYGUILD#Guilds Glory#
10006,5,0,0,0,0,0,0,0,0,0,0 //GD_LEADERSHIP#Great Leadership#
10007,5,0,0,0,0,0,0,0,0,0,0 //GD_GLORYWOUNDS#Glorious Wounds#
10008,5,10007,1,0,0,0,0,0,0,0,0 //GD_SOULCOLD#Cold Heart#
10009,5,10006,1,0,0,0,0,0,0,0,0 //GD_HAWKEYES#Sharp Gaze#
10010,1,10000,1,10004,2,0,0,0,0,0,0 //GD_BATTLEORDER#Battle Command#
10011,3,10000,1,10004,5,10010,1,0,0,0,0 //GD_REGENERATION#Regeneration#
10012,1,10011,1,0,0,0,0,0,0,0,0 //GD_RESTORE#Restoration#
10013,1,10000,1,10002,1,10004,5,10010,1,10011,1 //GD_EMERGENCYCALL#Urgent Call#
10014,1,0,0,0,0,0,0,0,0,0,0 //GD_DEVELOPMENT#Permanent Development#

View File

@@ -1,44 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2019 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/>.
#
###########################################################################
# Guild Skill Database
###########################################################################
#
# Guild Skill Settings
#
###########################################################################
# Id - Skill ID of the guild skill.
###########################################################################
# MaxLevel - Maximum level of the guild skill.
###########################################################################
# Required - A list of required skills for the skill to become available.
# Id: Skill ID of the required guild skill.
# Level: Level of the required guild skill.
###########################################################################
Header:
Type: GUILD_SKILL_TREE_DB
Version: 1
Footer:
Imports:
- Path: db/pre-re/guild_skill_tree.yml
Mode: Prerenewal
- Path: db/re/guild_skill_tree.yml
Mode: Renewal
- Path: db/import/guild_skill_tree.yml

View File

@@ -77,6 +77,4 @@
# Score - Achievement points that are given on completion.
###########################################################################
Header:
Type: ACHIEVEMENT_DB
Version: 1
Achievements:

View File

@@ -1,3 +0,0 @@
Header:
Type: ATTENDANCE_DB
Version: 1

View File

@@ -1,15 +0,0 @@
// Script Constant Database
//
// Structure of Database:
// Identifier Value[ Type]
//
// Alternatively:
// Identifier,Value[,Type]
//
// 01. Identifier Unique name for the constant, must not have same name as script commands, functions or variables.
// 02. Value Value assigned to the constant. This value cannot be changed during the runtime of the server.
// 03. Type Specifies whether the identifier is a constant (0) or a parameter (1) (optional, defaults to 0).
//
// NOTE: Parameters are special in that they retrieve certain runtime values depending on the specified ID
// in field Value. Depending on the implementation values assigned by scripts to parameters will affect
// runtime values, such as Zeny, as well (see pc_readparam/pc_setparam).

View File

@@ -0,0 +1,13 @@
// Guild Skill Tree Database
//
// Structure of Database:
// SkillID,MaxLv,Prerequisite SkillID1,Prerequisite SkillLv1,PrereqSkillID2,PrereqSkillLv2,PrereqSkillID3,PrereqSkillLv3,PrereqSkillID4,PrereqSkillLv4,PrereqSkillID5,PrereqSkillLv5 //GUILD SKILLNAME#Skill Name#
//
// 01. SkillID Skill ID of the guild skill.
// 02. MaxLv Maximum level of the guild skill.
// 03. Prerequisite SkillID Guild skill required for the skill to become available.
// 04. Prerequisite SkillLv Level of the required guild skill.
// ...
//
// NOTE: MAX_GUILD_SKILL_REQUIRE (typically 5) ID/Lv pairs must be specified.

View File

@@ -1,36 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2019 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/>.
#
###########################################################################
# Custom Guild Skill Database
###########################################################################
#
# Guild Skill Settings
#
###########################################################################
# Id - Skill ID of the guild skill.
###########################################################################
# MaxLevel - Maximum level of the guild skill.
###########################################################################
# Required - A list of required skills for the skill to become available.
# Id: Skill ID of the required guild skill.
# Level: Level of the required guild skill.
###########################################################################
Header:
Type: GUILD_SKILL_TREE_DB
Version: 1

View File

@@ -25,7 +25,6 @@
//5204,Event_Pierrot_Nose,Rudolf's Red Nose,4,20,,100,,0,,0,0xFFFFFFFF,63,2,1,,0,0,49,{ bonus2 bResEff,Eff_Blind,3000; bonus2 bAddMonsterDropItem,12130,30; },{},{}
//5264,Aussie_Flag_Hat,Australian Flag Hat,4,20,,500,,4,,0,0xFFFFFFFF,63,2,256,,0,1,304,{ bonus bAllStats,2; },{},{}
//5356,Pumpkin_Hat_H,Pumpkin Hat,4,20,,200,,2,,0,0xFFFFFFFF,63,2,256,,0,1,206,{ bonus bAllStats,2; bonus2 bSubRace,RC_Demon,5; bonus2 bMagicAddRace,RC_Demon,5; },{},{}
//5384,Santa_Hat_1,Twin Pompom By JB,4,20,,200,,2,,1,0xFFFFFFFF,63,2,256,,20,1,390,{ bonus bLuk,3; bonus2 bResEff,Eff_Curse,2000; bonus bVariableCastrate,-2; bonus bAspdRate,4; bonus2 bAddMonsterDropItem,539,100; bonus2 bAddMonsterDropItem,529,200; bonus2 bAddMonsterDropItem,530,200; autobonus "{ bonus bCritical,10; }",10,5000; },{},{}
//5811,Santa_Beard,Santa Beard,4,20,,100,,5,,0,0xFFFFFFFF,63,2,1,,0,0,25,{ bonus2 bSubRace,RC_Brute,5; },{},{}
//11702,Moon_Cookie,Moon Cookie,11,0,,10,,,,,0xFFFFFFFF,63,2,,,,,,{ sc_end SC_POISON; sc_end SC_SILENCE; sc_end SC_BLIND; sc_end SC_CONFUSION; sc_end SC_CURSE; sc_end SC_HALLUCINATION; itemskill "AL_BLESSING",7; },{},{}
@@ -60,8 +59,8 @@
// Old Tuxedo and Wedding Dress, will display the outfit when worn.
//==================================================================
//2338,Wedding_Dress,Wedding Dress,4,43000,,500,,0,,0,0xFFFFFFFE,63,0,16,,0,1,0,{},{ sc_start SC_WEDDING,INFINITE_TICK,0; },{ sc_end SC_WEDDING; }
//7170,Tuxedo,Tuxedo,4,43000,,10,,0,,0,0xFFFFFFFE,63,1,16,,0,1,0,{},{ sc_start SC_WEDDING,INFINITE_TICK,0; },{ sc_end SC_WEDDING; }
//2338,Wedding_Dress,Wedding Dress,4,43000,,500,,0,,0,0xFFFFFFFE,63,0,16,,0,1,0,{},{ sc_start SC_WEDDING,-1,0; },{ sc_end SC_WEDDING; }
//7170,Tuxedo,Tuxedo,4,43000,,10,,0,,0,0xFFFFFFFE,63,1,16,,0,1,0,{},{ sc_start SC_WEDDING,-1,0; },{ sc_end SC_WEDDING; }
// Non-kRO Eden Group Mark effect
//=============================================================

View File

@@ -8,10 +8,4 @@
// 8 - Item will be bound item when equipped
// 16 - Special Broadcast: When item dropped by monster and player loot it, will be broadcasted!
// 32 - Item will not be removed on consumption. Also supports 'itemskill'
// 64 - Item will be displayed with a client side defined drop
// 128 - Item will be displayed with a white pillar drop effect
// 256 - Item will be displayed with a blue pillar drop effect
// 512 - Item will be displayed with a yellow pillar drop effect
// 1024 - Item will be displayed with a purple pillar drop effect
// 2048 - Item will be displayed with a orange pillar drop effect
// NOTE: For removing flag by import file, use "-" to remove the flag. Example, 604,-1 will removes flag 1 from Branch_Of_Dead_Tree

View File

@@ -1,4 +1,2 @@
// Item Group Database
//
// Structure of Database:
// GroupID,ItemID,Rate{,Amount,Random,isAnnounced,Duration,GUID,isBound,isNamed}
//import: db/import/item_groupid.txt

View File

@@ -1,4 +0,0 @@
// Taekwon Mission Summonable Monsters Database
//
// Structure of Database:
// MobRandomGroupID,MobID,DummyName,Rate

60
db/import-tmpl/pet_db.txt Normal file
View File

@@ -0,0 +1,60 @@
// Pet Additional Database
//
// Structure of Database:
// MobID,Name,JName,LureID,EggID,EquipID,FoodID,Fullness,HungryDelay,R_Hungry,R_Full,Intimate,Die,Capture,Speed,S_Performance,talk_convert_class,attack_rate,defence_attack_rate,change_target_rate,pet_script,loyal_script
//
// 01. MobID Monster ID of the pet.
// 02. Name Name of the monster as defined in the database.
// 03. JName The display name of the monster when hatched.
// 04. LureID Pet Tame Item ID.
// 05. EggID Pet Egg ID.
// 06. EquipID Pet Accessory ID.
// 07. FoodID Pet Food ID.
// 08. Fullness The amount Hunger is decreased every [HungryDelay] seconds.
// 09. HungryDelay The amount of time it takes for hunger to decrease after feeding. (Default: 60 seconds)
// 10. R_Hungry Amount of Intimacy that is increased when fed.
// 11. R_Full Amount of Intimacy that is decreased when over-fed.
// 12. Intimate Amount of Intimacy the pet starts with.
// 13. Die Amount of Intimacy that is decreased when the pet owner dies.
// 14. Capture Capture succes rate (10000 = 100%)
// 15. Speed Pet's walk speed. (Defaul: 150)
// 16. S_Performance Special Performance. (Yes = 1, No = 0)
// 17. talk_convert_class Disables pet talk (instead of talking they emote with /!.)
// 18. attack_rate Rate of which the pet will attack (requires at least pet_support_min_friendly intimacy).
// 19. defence_attack_rate Rate of which the pet will retaliate when master is being attacked (requires at least pet_support_min_friendly intimacy).
// 20. change_target_rate Rate of which the pet will change its attack target.
// 21. pet_script Script to execute when the pet is hatched.
// 22. loyal_script Script to execute when the pet is hatched (requires at least pet_equip_min_friendly intimacy, independent of pet_script).
//NOTE: The max value (100%) of attack_rate, defense_rate & change_target_rate is 10000.
//In theory you can use any valid script, but it is run only once upon pet
//loading, so it is recommended you use the specific pet scripts:
//petskillattack skillid, skilllv, rate, bonusrate
//Skill attack that triggers while the pet is attacking. Rate is the base
//chance of execution per attack. Bonusrate is an additional success rate when
//intimacy reaches max.
//petskillattack2 skillid, damage, hits, rate, bonusrate
//Same as petskillattack, but the damage and number of hits is fixed
//the damage specified is total, not per hit.
//petskillsupport skillid, skilllv, delay, hp%, sp%
//Casts a support skill when the health levels are below the specified hp% and
//sp%. Delay is the minimum time in seconds before the skill can be cast again
//petheal amount, delay, hp%, sp%
//Similar to petskillsupport, but the skill is fixed to heal (28) and the
//heal-amount is fixed to the value given.
//petrecovery type, delay: Cures the "type" status effect after "delay" seconds
//petskillbonus type, value, duration, delay
//Gives bonus stats. Type is the stat to increase (bStr, bLuk), value is the
//amount by which it is increased, duration signals how long the bonus lasts
//delay is the time elapsed after the bonus ends and before it starts again.
//A single pet can have petloot, petskillbonus, petskillattack (or
//petskillattack2) and petskillsupport (or petheal) at the same time,
//but only one of each.

View File

@@ -1,486 +0,0 @@
# This file is a part of rAthena.
# Copyright(C) 2019 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/>.
#
###########################################################################
# Custom Pet Database
###########################################################################
#
# Pet Settings
#
###########################################################################
# - Mob Monster that can be used as pet
# TameItem Pet Tame Item.
# EggItem Pet Egg Item.
# EquipItem Pet Accessory Item. (Default: 0)
# FoodItem Pet Food Item. (Default: 0)
# Fullness The amount of hunger is decreased every [HungryDelay] seconds.
# HungryDelay The amount of time in seconds it takes for hunger to decrease after feeding. (Default: 60)
# HungerIncrease The amount of hunger that is increased every time the pet is fed (Default: 20)
# IntimacyStart Amount of Intimacy the pet starts with. (Default: 250)
# IntimacyFed Amount of Intimacy that is increased when fed. (Default: 50)
# IntimacyOverfed Amount of Intimacy that is increased when over-fed. (Default: -100)
# IntimacyHungry Amount of Intimacy that is increased when the pet is hungry. (Default: -5)
# IntimacyOwnerDie Amount of Intimacy that is increased when the pet owner dies. (Default: -20)
# CaptureRate Capture success rate. (10000 = 100%)
# SpecialPerformance If a pet has a Special Performance. (Default: true)
# AttackRate Rate of which the pet will attack [requires at least pet_support_min_friendly intimacy]. (10000 = 100%)
# RetaliateRate Rate of which the pet will retaliate when master is being attacked [requires at least pet_support_min_friendly intimacy]. (10000 = 100%)
# ChangeTargetRate Rate of which the pet will change its attack target. (10000 = 100%)
# AllowAutoFeed Allows turning automatic pet feeding on. (Default: false)
# Script Bonus script to execute when the pet is alive. (Default: null)
# SupportScript Bonus script to execute when pet_status_support is enabled. (Default: null)
# Evolution: Pet evolution settings. (Optional) (Default: null)
# - Target Mob this pet can evolve to.
# ItemRequirements: Item requirements for evolving this pet.
# - Item Self-explanatory
# Amount
###########################################################################
Header:
Type: PET_DB
Version: 1
#Body:
# - Mob: PORING
# AttackRate: 350
# RetaliateRate: 400
# ChangeTargetRate: 800
# SupportScript: >
# petloot 10;
# - Mob: DROPS
# AttackRate: 300
# RetaliateRate: 400
# ChangeTargetRate: 500
# SupportScript: >
# petloot 10;
# - Mob: POPORING
# AttackRate: 300
# RetaliateRate: 500
# ChangeTargetRate: 400
# SupportScript: >
# petloot 15;
# - Mob: LUNATIC
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 1000
# SupportScript: >
# petskillbonus bLuk,3,10,50;
# - Mob: PICKY
# AttackRate: 500
# RetaliateRate: 600
# ChangeTargetRate: 50
# SupportScript: >
# petskillbonus bStr,3,10,50;
# - Mob: CHONCHON
# AttackRate: 500
# RetaliateRate: 500
# ChangeTargetRate: 250
# SupportScript: >
# petskillbonus bAgi,4,10,50;
# - Mob: STEEL_CHONCHON
# AttackRate: 500
# RetaliateRate: 500
# ChangeTargetRate: 200
# SupportScript: >
# petskillbonus bAgiVit,4,20,40;
# - Mob: HUNTER_FLY
# AttackRate: 500
# RetaliateRate: 500
# ChangeTargetRate: 200
# SupportScript: >
# petskillattack2 "NPC_WINDATTACK",888,2,0,10;
# - Mob: SAVAGE_BABE
# AttackRate: 500
# RetaliateRate: 500
# ChangeTargetRate: 200
# SupportScript: >
# petskillbonus bVit,4,10,50;
# - Mob: DESERT_WOLF_B
# AttackRate: 400
# RetaliateRate: 400
# ChangeTargetRate: 400
# SupportScript: >
# petskillattack "SM_PROVOKE",1,0,5;
# - Mob: ROCKER
# AttackRate: 350
# RetaliateRate: 350
# ChangeTargetRate: 600
# SupportScript: >
# petskillbonus bAllStats,1,10,50;
# - Mob: SPORE
# AttackRate: 350
# RetaliateRate: 500
# ChangeTargetRate: 500
# SupportScript: >
# petrecovery SC_POISON,60;
# - Mob: POISON_SPORE
# AttackRate: 600
# RetaliateRate: 200
# ChangeTargetRate: 400
# SupportScript: >
# petskillattack "NPC_POISON",20,0,10;
# - Mob: PECOPECO
# AttackRate: 400
# RetaliateRate: 500
# ChangeTargetRate: 800
# SupportScript: >
# petskillbonus bSpeedRate,25,20,20;
# - Mob: SMOKIE
# AttackRate: 600
# RetaliateRate: 600
# ChangeTargetRate: 100
# SupportScript: >
# petskillbonus bPerfectHide,1,3600,0;
# - Mob: YOYO
# AttackRate: 300
# RetaliateRate: 800
# ChangeTargetRate: 400
# SupportScript: >
# petloot 20;
# - Mob: ORK_WARRIOR
# AttackRate: 600
# RetaliateRate: 200
# ChangeTargetRate: 300
# SupportScript: >
# petskillattack2 "NPC_PIERCINGATT",100,1,0,10;
# - Mob: MUNAK
# AttackRate: 300
# RetaliateRate: 750
# ChangeTargetRate: 300
# SupportScript: >
# petskillattack2 "NPC_DARKNESSATTACK",444,1,0,10;
# - Mob: DOKEBI
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "BS_HAMMERFALL",1,0,10;
# - Mob: SOHEE
# AttackRate: 100
# RetaliateRate: 1000
# ChangeTargetRate: 200
# SupportScript: >
# petskillsupport "AL_HEAL",5,60,33,100;
# - Mob: ISIS
# AttackRate: 650
# RetaliateRate: 450
# ChangeTargetRate: 150
# SupportScript: >
# petskillsupport "PR_MAGNIFICAT",2,60,50,50;
# - Mob: PETIT
# AttackRate: 800
# RetaliateRate: 400
# ChangeTargetRate: 100
# SupportScript: >
# petskillattack2 "WZ_HEAVENDRIVE",500,1,0,10;
# - Mob: DEVIRUCHI
# AttackRate: 800
# RetaliateRate: 200
# ChangeTargetRate: 100
# SupportScript: >
# petskillbonus bAgiDexStr,6,20,40;
# - Mob: BAPHOMET_
# AttackRate: 1000
# RetaliateRate: 100
# ChangeTargetRate: 200
# SupportScript: >
# petskillattack2 "NPC_DARKNESSATTACK",1776,4,0,5;
# - Mob: BON_GUN
# AttackRate: 600
# RetaliateRate: 200
# ChangeTargetRate: 400
# SupportScript: >
# petskillattack2 "NPC_DARKNESSATTACK",555,1,1,1;
# - Mob: ZHERLTHSH
# AttackRate: 1000
# RetaliateRate: 100
# ChangeTargetRate: 500
# SupportScript: >
# petskillattack "AS_SONICBLOW",1,0,3;
# - Mob: ALICE
# AttackRate: 100
# RetaliateRate: 1000
# ChangeTargetRate: 200
# SupportScript: >
# petskillsupport "AL_HEAL",5,60,25,100;
# - Mob: EVENT_RICECAKE
# AttackRate: 500
# RetaliateRate: 500
# ChangeTargetRate: 200
# SupportScript: >
# petskillsupport "CR_DEFENDER",3,240,50,100;
# - Mob: GOBLINE_XMAS
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "MG_SIGHT",5,5,5;
# - Mob: CHUNG_E
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "CR_SHIELDCHARGE",5,5,5;
# - Mob: ECLIPSE_P
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "TF_THROWSTONE",1,5,5;
# - Mob: GOBLIN_1
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "NPC_WINDATTACK",5,5,5;
# - Mob: GOBLIN_2
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "NPC_FIREATTACK",5,5,5;
# - Mob: GOBLIN_4
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "NPC_GROUNDATTACK",5,5,5;
# - Mob: DELETER_
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "SM_MAGNUM",5,5,5;
# - Mob: DIABOLIC
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "WZ_METEOR",2,5,5;
# - Mob: WANDER_MAN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "NPC_UNDEADATTACK",5,5,5;
# - Mob: P_CHUNG_E
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# petskillattack "CR_SHIELDCHARGE",5,5,5;
# - Mob: GOLEM
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MARIONETTE
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MEDUSA
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: WHISPER
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: GOBLIN_LEADER
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: SUCCUBUS
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# bonus2 bHPDrainRate,10,5;
# - Mob: INCUBUS
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# SupportScript: >
# bonus bMaxSPRate,3;
# bonus2 bSPDrainRate,10,1;
# - Mob: NIGHTMARE_TERROR
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: SHINOBI
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MIYABI_NINGYO
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: WICKED_NYMPH
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: STONE_SHOOTER
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: DULLAHAN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: LOLI_RURI
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: CIVIL_SERVANT
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: LEAF_CAT
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: BACSOJIN_
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: IMP
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: E_CRAMP
# AttackRate: 350
# RetaliateRate: 400
# ChangeTargetRate: 800
# - Mob: E_HYDRA
# AttackRate: 350
# RetaliateRate: 400
# ChangeTargetRate: 800
# - Mob: J_TAINI
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: XMAS_LUNATIC
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: TIKBALANG
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MARIN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: LITTLE_PORING
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: NINE_TAIL
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: GREMLIN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MUMMY
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: TEDDY_BEAR
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MASTERING
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: METALLER
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: ANGELING
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: MOONLIGHT
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: SAVAGE
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: HIGH_ORC
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: CHOCO
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: ANCIENT_MUMMY
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: AM_MUT
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: CAT_O_NINE_TAIL
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: GRAND_PECO
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: HYEGUN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: HODREMLIN
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: XM_TEDDY_BEAR
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: DR_EGGRING
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: DR_LUNATIC
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: LITTLE_ISIS
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: DIABOLIC2
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: DELETER_2
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800
# - Mob: SWEETS_DROPS
# AttackRate: 300
# RetaliateRate: 300
# ChangeTargetRate: 800

View File

@@ -68,7 +68,7 @@
// 0x00800 - skill range affected by RA_RESEARCHTRAP
// 0x01000 - skill that does not affect user that has NC_HOVERING active
// 0x02000 - skill that can be using while riding warg
// 0x04000 - skill that can be used while on Madogear
// 0x04000 - skill that can't be used while in mado
// 0x08000 - skill that can be used to target while under SC__MANHOLE effect
// 0x10000 - skill that affects hidden targets
// 0x20000 - skill that affects SC_GLOOMYDAY_SK

View File

@@ -310,20 +310,4 @@
// Baby Rebellion
4229,0,5,0,4,0,3,5,4,2,6,0,0,3,4,0,2,5,4,3,6,0,0,3,5,1,4,2,0,0,6,3,0,5,4,1,0,0,5,0,2,6,0,5,3,4,0,0,0,0,1
// Baby Star Gladiator (Union)
4238,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2
//================================
// Note: Star Emperor and Soul Reaper bonus stats are unknown. Using Star Gladiator and Soul Linker's
// bonus stats for now until I know the official ones.
//
// Star Emperor
4239,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2
// Soul Reaper
4240,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,5,5,5,5,5,5,5,5,5,5
// Baby Star Emperor
4241,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2
// Baby Soul Reaper
4242,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,5,5,5,5,5,5,5,5,5,5,5,5
// Star Emperor (Union)
4243,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2
// Baby Star Emperor (Union)
4244,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2
4238,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2

View File

@@ -1,13 +1,13 @@
//======================================================================================
// Map Index
//======================================================================================
// Contains the list of maps with their respective IDs for inter-server use.
// IDs must never change, therefore any new maps need to be added at the end,
// and old ones must not be removed, but may be replaced.
// Format:
// mapname<tab>index <- specifies index for this map
// mapname <- map will use index of previous map +1
// Note that map index 0 is special and reserved for "error" status.
//Contains the list of maps with their respective IDs for inter-server use.
//IDs must never change, therefore any new maps need to be added at the end,
//and old ones must not be removed, but may be replaced.
//Format:
//mapname<tab>index <- specifies index for this map
//mapname <- map will use index of previous map +1
//Note that map index 0 is special and reserved for "error" status.
alb_ship 1
alb2trea
@@ -942,7 +942,6 @@ job_gun
1@air2
1@glast
lhz_dun_n
lhz_d_n2
1@gl_kh
2@gl_kh
1@lab
@@ -1009,45 +1008,66 @@ ice_d03_i
tur_d03_i
tur_d04_i
1@crd
ordeal_a00
ordeal_a02
pprontera
niflxmas
sch_lab
nakhyang
lasa_sea
1@drdo
x_lhz
x_prt
x_ra
prt_evt_in
vis_h01
vis_h02
vis_h03
vis_h04
ein_d02_i
com_d02_i
1@soul
star_frst
star_in
2009rwc_01
2009rwc_02
2009rwc_03
2009rwc_04
2009rwc_05
2009rwc_06
2009rwc_07
2009rwc_08
2009rwc_f01
2012rwc_01
2012rwc_02
2012rwc_03
2012rwc_04
2012rwc_05
2012rwc_06
2012rwc_07
2012rwc_08
// Only add maps under this line if they are not standard maps!
//======================================================================================
// - Other/Extra maps -
//======================================================================================
//rwc01 1000
//rwc02
//rwc03
//2009rwc_f01
//2009rwc_01
//2009rwc_02
//2009rwc_03
//2009rwc_04
//2008rwc_04
//prontera_x
//alberta_x
//aldebaran_x
//geffen_x
//izlude_x
//prt_church_x
//prontera_s
//pay_arche_s
//xmas_old
//ordeal_a00
//ordeal_a02
//fay_vilg00
//fay_vilg01
//gef_vilg00
//gef_vilg01
//moc_dugn01
//moc_dugn02
//moc_fild01
//moc_fild02
//moc_fild03
//moc_fild04
//moc_intr00
//moc_intr01
//moc_intr02
//moc_intr04
//moc_vilg00
//moc_vilg01
//moc_vilg02
//probemap
//probemap02
//prt_cstl01
//prt_dugn00
//prt_dugn01
//prt_fild00
//prt_fild01
//prt_fild03
//prt_fild04
//prt_fild05
//prt_intr01
//prt_intr01_a
//prt_intr02
//prt_vilg00
//prt_vilg01
//prt_vilg02
//tank_test
//tank_test2
//test

View File

@@ -35,7 +35,6 @@
2350,MER_SEDORA,Sedora,83,9815,234,2,1100,1300,60,60,85,90,71,43,85,105,10,12,0,6,47,150,1080,780,180
2351,MER_CHEPET,Chepet,83,9815,234,2,1100,1300,60,60,85,90,71,43,85,105,10,12,0,6,47,150,1080,780,180
2378,MER_ANTLER_SCARABA,Antler Scaraba,136,30000,1,1,1418,1828,155,102,23,99,59,129,137,45,10,12,1,4,42,200,504,624,360
2937,M_LOKI,Loki's Shadow,145,1215600,1,2,1835,2279,15,89,76,66,90,55,189,22,10,12,1,7,20,175,800,750,300
// Normal Mercenaries
6017,MER_ARCHER01,Mina,20,256,200,10,170,85,7,5,1,16,5,1,28,8,10,0,0,7,20,150,700,432,300

View File

@@ -215,5 +215,3 @@
2347,8202,5 //MS_MAGNUM
2347,8226,1 //MER_REGAIN
2347,8233,1 //MER_AUTOBERSERK
// M_LOKI
2937,8241,1 //MER_INVINCIBLEOFF2

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