From 5e9e635515a556bea43dc858e0d7774160b7528a Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 20 Aug 2016 22:10:03 +0300 Subject: Update docs from Hercules. --- server/conf/global_configuration.txt | 69 ++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 server/conf/global_configuration.txt (limited to 'server/conf/global_configuration.txt') diff --git a/server/conf/global_configuration.txt b/server/conf/global_configuration.txt new file mode 100644 index 0000000..a000a45 --- /dev/null +++ b/server/conf/global_configuration.txt @@ -0,0 +1,69 @@ +//===== Hercules Documentation =============================== +//= Global configuration reference +//===== By: ================================================== +//= Panikon (Hercules Dev. Team) +//===== Current Version: ===================================== +//= 20140616 +//===== Description: ========================================= +//= Global configurations found in conf/global/ +//============================================================ + +- What are global configurations? + +Global configurations are configurations that can be shared between servers, +but can also be set independently in each server. + +- How do they work? + +They work by using an include system that is available with libconfig: + + "A configuration file may "include" the contents of another file using an + include directive. This directive has the effect of inlining the contents of + the named file at the point of inclusion. + + An include directive must appear on its own line in the input. It has the + form: + + @include "filename" + + Any backslashes or double quotes in the filename must be escaped as '\\' and + '\"', respectively." + From libconfig's documentation + +So each file that is included is actually inside each one of the main +configuration files and thus a change in the first will be a change in the +latter. +Note: the @include directive is read by the server executable, so any path +should be from were it is and NOT from where the main configuration file is! + +- How do I stop using global configurations? + +To stop using global configurations is very simple, all you have to do is copy +the contents that are inside the global configuration file and put them +_exactly_ where the include directive were in the main configuration file. + +E.g. + Find in any file: + @include "conf/global/sql_connection.conf" + Replace it with: + sql_connection: { + // [INTER] You can specify the codepage to use in your mySQL tables here. + // (Note that this feature requires MySQL 4.1+) + //default_codepage: "" + + // [LOGIN] Is `userid` in account_db case sensitive? + //case_sensitive: false + + // For IPs, ideally under linux, you want to use localhost instead of 127.0.0.1 + // Under windows, you want to use 127.0.0.1. If you see a message like + // "Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)" + // and you have localhost, switch it to 127.0.0.1 + db_hostname: "127.0.0.1" + db_port: 3306 + db_username: "ragnarok" + db_password: "ragnarok" + db_database: "ragnarok" + //codepage:"" + } + If the main configuration file belongs to the map server, for instance, you + don't need to include default_codepage and case_sensitive. -- cgit v1.2.3-70-g09d2