summaryrefslogtreecommitdiff
path: root/conf
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2015-09-06 18:08:14 +0200
committerHaru <haru@dotalux.com>2016-08-19 21:32:12 +0200
commitc84a4473cc0491edbf6ac3e7efd062d8c57e5a2c (patch)
tree335a146bf8eecd6cc1bacb4388efa1e64cd3e91e /conf
parent6be7aab17d958e0f5a4be0413b26c7dd81185af6 (diff)
downloadhercules-c84a4473cc0491edbf6ac3e7efd062d8c57e5a2c.tar.gz
hercules-c84a4473cc0491edbf6ac3e7efd062d8c57e5a2c.tar.bz2
hercules-c84a4473cc0491edbf6ac3e7efd062d8c57e5a2c.tar.xz
hercules-c84a4473cc0491edbf6ac3e7efd062d8c57e5a2c.zip
Ported char-server.conf to libconfig
Fixed issue: 8115, now start items can be equipped as well Ported to modern Hercules and cleaned up from Panikon's commits: c6482e9870645ffe59a6a059b819574d4ac79fd9, 832fb27d4f767e4bc8b68c432d0da00b7cb7a4f9, f81b579899e3a15bd472ca8c6a6e0116c43bec92, e23723725499b617def03d05661eca637edaeabd, 0b783a83d82e588efd760f7f4baec0c8074a6fd1, 1b7de91308a57ea07b158ed95a2515a3c8cc36bd, 677d3430cbda0962b320a60cf499e9dadf637d00 Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to 'conf')
-rw-r--r--conf/char-server.conf188
-rw-r--r--conf/char/char-server.conf233
-rw-r--r--conf/global/console.conf59
-rw-r--r--conf/import-tmpl/char-server.conf32
-rw-r--r--conf/import-tmpl/char_conf.txt0
5 files changed, 324 insertions, 188 deletions
diff --git a/conf/char-server.conf b/conf/char-server.conf
deleted file mode 100644
index eb2b9a63d..000000000
--- a/conf/char-server.conf
+++ /dev/null
@@ -1,188 +0,0 @@
-// Character Server configuration file.
-
-// Note: "Comments" are all text on the right side of a double slash "//"
-// Whatever text is commented will not be parsed by the servers, and serves
-// only as information/reference.
-
-// Server Communication username and password.
-userid: s1
-passwd: p1
-
-// Server name, use alternative character such as ASCII 160 for spaces.
-// NOTE: Do not use spaces or any of these characters which are not allowed in
-// Windows filenames \/:*?"<>|
-// ... or else guild emblems won't work client-side!
-server_name: Hercules
-
-// Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
-wisp_server_name: Server
-
-// Login Server IP
-// The character server connects to the login server using this IP address.
-// NOTE: This is useful when you are running behind a firewall or are on
-// a machine with multiple interfaces.
-//login_ip: 127.0.0.1
-
-// The character server listens on the interface with this IP address.
-// NOTE: This allows you to run multiple servers on multiple interfaces
-// while using the same ports for each server.
-//bind_ip: 127.0.0.1
-
-// Login Server Port
-login_port: 6900
-
-// Character Server IP
-// The IP address which clients will use to connect.
-// Set this to what your server's public IP address is.
-//char_ip: 127.0.0.1
-
-// Character Server Port
-char_port: 6121
-
-//Time-stamp format which will be printed before all messages.
-//Can at most be 20 characters long.
-//Common formats:
-// %I:%M:%S %p (hour:minute:second 12 hour, AM/PM format)
-// %H:%M:%S (hour:minute:second, 24 hour format)
-// %d/%b/%Y (day/Month/year)
-//For full format information, consult the strftime() manual.
-//timestamp_format: [%d/%b %H:%M]
-
-//If redirected output contains escape sequences (color codes)
-stdout_with_ansisequence: no
-
-//Makes server output more silent by ommitting certain types of messages:
-//1: Hide Information messages
-//2: Hide Status messages
-//4: Hide Notice Messages
-//8: Hide Warning Messages
-//16: Hide Error and SQL Error messages.
-//32: Hide Debug Messages
-//Example: "console_silent: 7" Hides information, status and notice messages (1+2+4)
-console_silent: 0
-
-// Type of server.
-// No functional side effects at the moment.
-// Displayed next to the server name in the client.
-// 0=normal, 1=maintenance, 2=over 18, 3=paying, 4=F2P
-char_server_type: 0
-
-// Minimum Group ID to join char server when it is on char_server_type 1 (maintenance)
-char_maintenance_min_group_id: 99
-
-// Enable or disable creation of new characters.
-// Now it is actually supported [Kevin]
-char_new: 1
-
-// Display (New) in the server list.
-char_new_display: 0
-
-// Maximum users able to connect to the server.
-// Set to 0 to disable users to log-in. (-1 means unlimited)
-max_connect_user: -1
-
-// Group ID that is allowed to bypass the server limit of users.
-// Default: -1 = nobody (there are no groups with ID < 0)
-// See: conf/groups.conf
-gm_allow_group: -1
-
-// How often should the server save all files? (In seconds)
-// Note: Applies to all data files on TXT servers.
-// On SQL servers, it applies to guilds (character save interval is defined on the map config)
-autosave_time: 60
-
-// Display information on the console whenever characters/guilds/parties/pets are loaded/saved?
-save_log: yes
-
-// Start point, Map name followed by coordinates (x,y)
-start_point_re: iz_int,97,90
-start_point_pre: new_1-1,53,111
-
-// Starting items for new characters
-// Format is: id1,quantity1,stackable1,idN,quantityN,stackableN
-// stackable:
-// 0 - Not stackable (weapon, armor, egg, pet armor)
-// 1 - Stackable
-start_items: 1201,1,0,2301,1,0
-
-// Starting zeny for new characters
-start_zeny: 0
-
-// Size for the fame-lists
-fame_list_alchemist: 10
-fame_list_blacksmith: 10
-fame_list_taekwon: 10
-
-// Guild earned exp modifier.
-// Adjusts taxed exp before adding it to the guild's exp. For example, if set
-// to 200, the guild receives double the player's taxed exp.
-guild_exp_rate: 100
-
-// Name used for unknown characters
-unknown_char_name: Unknown
-
-// To log the character server?
-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
-name_ignoring_case: no
-
-// Manage possible letters/symbol in the name of charater. Control character (0x00-0x1f) are never accepted. Possible values are:
-// NOTE: Applies to character, party and guild names.
-// 0: no restriction (default)
-// 1: only letters/symbols in 'char_name_letters' option.
-// 2: Letters/symbols in 'char_name_letters' option are forbidden. All others are possibles.
-char_name_option: 1
-
-// Set the letters/symbols that you want use with the 'char_name_option' option.
-// Note: Don't add spaces unless you mean to add 'space' to the list.
-char_name_letters: abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890
-
-// Restrict character deletion by BaseLevel
-// 0: no restriction (players can delete characters of any level)
-// -X: you can't delete chars with BaseLevel <= X
-// Y: you can't delete chars with BaseLevel >= Y
-// e.g. char_del_level: 80 (players can't delete characters with 80+ BaseLevel)
-char_del_level: 0
-
-// Amount of time in seconds by which the character deletion is delayed.
-// Default: 86400 (24 hours)
-// NOTE: Requires client 2010-08-03aragexeRE or newer.
-char_del_delay: 86400
-
-// Block deletion if character is inside a guild or a party? (BOOL)
-// default: 0 official: 1
-// !!This check is imposed by Aegis to avoid dead entries in databases and _is_not_needed_ as we clear data properly!!
-char_aegis_delete: 0
-
-// What folder the DB files are in (item_db.conf, etc.)
-db_path: db
-
-//==================================================================
-// Pincode system
-//==================================================================
-
-// A window is opened before you can select your character and you will have to enter a pincode by using only your mouse
-// NOTE: Requires client 2011-03-09aragexeRE or newer.
-// 0: disabled
-// 1: enabled
-pincode_enabled: 1
-
-// Request Pincode only on login or on everytime char select is accessed?
-// 0: only on login (default)
-// 1: everytime the char select window is accessed
-pincode_charselect: 0
-
-// How often does a user have to change his pincode?
-// Default: 0
-// 0: never
-// X: every X minutes
-pincode_changetime: 0
-
-// How often can a user enter the wrong password?
-// Default: 3
-// NOTE: The maximum on clientside is 3
-pincode_maxtry: 3
-
-import: conf/import/char_conf.txt
diff --git a/conf/char/char-server.conf b/conf/char/char-server.conf
new file mode 100644
index 000000000..576925872
--- /dev/null
+++ b/conf/char/char-server.conf
@@ -0,0 +1,233 @@
+//================= Hercules Configuration ================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2014-2016 Hercules Dev Team
+//=
+//= Hercules 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/>.
+//=========================================================================
+//= Character Server configuration file.
+//=========================================================================
+
+char_configuration: {
+ @include "conf/global/console.conf"
+
+ // Server name, use alternative character such as ASCII 160 for spaces.
+ // NOTE: Do not use spaces or any of these characters which are not allowed in
+ // Windows filenames \/:*?"<>|
+ // ... or else guild emblems won't work client-side!
+ server_name: "Hercules"
+
+ // Wisp name for server: used to send wisp from server to players (between 4 to 23 characters)
+ wisp_server_name: "Server"
+
+ // Guild earned exp modifier.
+ // Adjusts taxed exp before adding it to the guild's exp. For example,
+ // if set to 200, the guild receives double the player's taxed exp.
+ guild_exp_rate: 100
+
+ // Information related to inter-server behavior
+ inter: {
+ // Server Communication username and password.
+ userid: "s1"
+ passwd: "p1"
+ // Login Server IP
+ // The character server connects to the login server using this IP address.
+ // NOTE: This is useful when you are running behind a firewall or are on
+ // a machine with multiple interfaces.
+ //login_ip: "127.0.0.1"
+
+ // The character server listens on the interface with this IP address.
+ // NOTE: This allows you to run multiple servers on multiple interfaces
+ // while using the same ports for each server.
+ //bind_ip: "127.0.0.1"
+
+ // Login Server Port
+ login_port: 6900
+
+ // Character Server IP
+ // The IP address which clients will use to connect.
+ // Set this to what your server's public IP address is.
+ //char_ip: "127.0.0.1"
+
+ // Character Server Port
+ char_port: 6121
+ }
+
+ // Connection permission
+ permission: {
+ // Enable or disable creation of new characters.
+ enable_char_creation: true
+
+ // Display (New) in the server list.
+ display_new: false
+
+ // Maximum users able to connect to the server.
+ // Set to 0 to disable users to log-in. (-1 means unlimited)
+ max_connect_user: -1
+
+ // Group ID that is allowed to bypass the server limit of users.
+ // Default: -1 = nobody (there are no groups with ID < 0)
+ // See: conf/groups.conf
+ gm_allow_group: -1
+
+ // Type of server.
+ // No functional side effects at the moment.
+ // Displayed next to the server name in the client.
+ // 0=normal, 1=maintenance, 2=over 18, 3=paying, 4=F2P
+ server_type: 0
+
+ // Minimum Group ID to join char server when it is on char_server_type 1 (maintenance)
+ maintenance_min_group_id: 99
+ }
+
+ // Player-related configuration
+ player: {
+ new: {
+ // Start point (Renewal)
+ start_point_re: {
+ map: "iz_int"
+ x: 97
+ y: 90
+ }
+ // Start point (Pre-Renewal)
+ start_point_pre: {
+ map: "new_1-1"
+ x: 53
+ y: 111
+ }
+
+ // Starting items for new characters
+ //{
+ // id: Item id
+ // amount: Item amount
+ // loc: Item position, same as in item_db if you want the item to be equipped, otherwise 0 (optional)
+ // stackable: Is stackable? (not stackable item types: weapon, armor, egg, pet armor)
+ //},
+ start_items: (
+ {
+ id: 1201 // Knife
+ amount: 1
+ loc: 2
+ stackable: false
+ },
+ {
+ id: 2301 // Cotton_Shirt
+ amount: 1
+ loc: 16
+ stackable: false
+ },
+ )
+
+ // Starting zeny
+ zeny: 0
+ }
+
+ // Character name configuration
+ name: {
+ // Name used for unknown characters
+ unknown_char_name: "Unknown"
+
+ // 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
+ name_ignoring_case: false
+
+ // Manage possible letters/symbol in the name of charater. Control character (0x00-0x1f) are never accepted. Possible values are:
+ // NOTE: Applies to character, party and guild names.
+ // 0: no restriction (default)
+ // 1: only letters/symbols in 'name_letters' option.
+ // 2: Letters/symbols in 'name_letters' option are forbidden. All others are possibles.
+ name_option: 1
+
+ // Set the letters/symbols that you want use with the 'char_name_option' option.
+ // Note: Don't add spaces unless you mean to add 'space' to the list.
+ name_letters: "abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
+ }
+
+ deletion: {
+ // Restrict character deletion by BaseLevel
+ // 0: no restriction (players can delete characters of any level)
+ // -X: you can't delete chars with BaseLevel <= X
+ // Y: you can't delete chars with BaseLevel >= Y
+ // e.g. char_del_level: 80 (players can't delete characters with 80+ BaseLevel)
+ level: 0
+
+ // Amount of time in seconds by which the character deletion is delayed.
+ // Default: 86400 (24 hours)
+ // NOTE: Requires client 2010-08-03aragexeRE or newer.
+ delay: 86400
+
+ // Block deletion if character is inside a guild or a party? (BOOL)
+ // default: false official: true
+ // !!This check is imposed by Aegis to avoid dead entries in databases and _is_not_needed_ as we clear data properly!!
+ use_aegis_delete: false
+ }
+
+ // Size for the fame-lists
+ fame: {
+ alchemist: 10
+ blacksmith: 10
+ taekwon: 10
+ }
+ }
+
+ database: {
+ // How often should server save all guild related information? (character save interval is defined on the map config)
+ // (in seconds)
+ autosave_time: 60
+
+ // What folder the DB files are in (abra_db.txt, etc.)
+ db_path: "db"
+
+ // To log the character server?
+ log_char: true
+ }
+
+ //==================================================================
+ // Pincode system
+ //==================================================================
+ pincode: {
+ // A window is opened before you can select your character and you will have to enter a pincode by using only your mouse
+ // NOTE: Requires client 2011-03-09aragexeRE or newer.
+ // 0: disabled
+ // 1: enabled
+ enabled: true
+
+ // Request Pincode only on login or on everytime char select is accessed?
+ // 0: only on login (default)
+ // 1: everytime the char select window is accessed
+ request: 0
+
+ // How often does a user have to change his pincode?
+ // Default: 0
+ // 0: never
+ // X: every X minutes
+ change_time: 0
+
+ // How often can a user enter the wrong password?
+ // Default: 3
+ // Maximum allowed by clientside: 3
+ max_tries: 3
+ }
+
+}
+
+import: "conf/import/char-server.conf"
diff --git a/conf/global/console.conf b/conf/global/console.conf
new file mode 100644
index 000000000..d26c48352
--- /dev/null
+++ b/conf/global/console.conf
@@ -0,0 +1,59 @@
+//================= Hercules Configuration ================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2014-2016 Hercules Dev Team
+//=
+//= Hercules 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/>.
+//=========================================================================
+//= Server Console configuration file.
+//=========================================================================
+// This file affects how ALL server consoles work, unless explictly defined
+// so in the server configuration file (See doc/global_configuration.txt
+// for more information).
+//=========================================================================
+
+console: {
+ //Time-stamp format which will be printed before all messages.
+ //Can at most be 20 characters long.
+ //Common formats:
+ // %I:%M:%S %p (hour:minute:second 12 hour, AM/PM format)
+ // %H:%M:%S (hour:minute:second, 24 hour format)
+ // %d/%b/%Y (day/Month/year)
+ //For full format information, consult the strftime() manual.
+ //timestamp_format: "[%d/%b %H:%M]"
+
+ //If redirected output contains escape sequences (color codes)
+ stdout_with_ansisequence: false
+
+ //Makes server output more silent by omitting certain types of messages:
+ //1: Hide Information messages
+ //2: Hide Status messages
+ //4: Hide Notice Messages
+ //8: Hide Warning Messages
+ //16: Hide Error and SQL Error messages.
+ //32: Hide Debug Messages
+ //Example: "console_silent: 7" Hides information, status and notice messages (1+2+4)
+ console_silent: 0
+
+ // [CHAR] Display information on the console whenever characters/guilds/parties/pets are loaded/saved?
+ save_log: true
+}
diff --git a/conf/import-tmpl/char-server.conf b/conf/import-tmpl/char-server.conf
new file mode 100644
index 000000000..6bfb308b5
--- /dev/null
+++ b/conf/import-tmpl/char-server.conf
@@ -0,0 +1,32 @@
+//================= Hercules Configuration ================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2014-2016 Hercules Dev Team
+//=
+//= Hercules 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/>.
+//=========================================================================
+//= Character Server local configuration file.
+//=========================================================================
+
+char_configuration: {
+ // See conf/char/char-server.conf for details
+}
diff --git a/conf/import-tmpl/char_conf.txt b/conf/import-tmpl/char_conf.txt
deleted file mode 100644
index e69de29bb..000000000
--- a/conf/import-tmpl/char_conf.txt
+++ /dev/null