With this update a new chat history definition is added on a per room bases which allows operators to specify the number of chat messages to store and present to the user on join. Please see the sample ini for room definitions.
286 lines
11 KiB
Text
286 lines
11 KiB
Text
; Servatrice configuration file
|
|
;
|
|
; This is the main configuration file for Servatrice; while using a configuration is not mandatory,
|
|
; you may want to customize some aspects of your servatrice instance, like its name, port or the way
|
|
; users can authenticate to the server.
|
|
|
|
|
|
[server]
|
|
|
|
; This is the name that servatrice exposes to the users; the default value is pretty boring
|
|
name="My Cockatrice server"
|
|
|
|
; Multiple servatrice servers can run on the same host using the same database; each server instance
|
|
; must have a different id; the default id is 1
|
|
id=1
|
|
|
|
; The TCP port number servatrice will listen on for clients; default is 4747
|
|
port=4747
|
|
|
|
; Servatrice can scale up to serve big number of users using more than one parallel thread of execution;
|
|
; If your server is hosting a lot of players and they frequently report of being unable to login or
|
|
; long delays (lag), you may want to try increasing this value; default is 1.
|
|
number_pools=1
|
|
|
|
; When database is enabled, servatrice writes the server status in the "update" database table; this
|
|
; setting defines every how many milliseconds servatrice will update its status; default is 15000 (15 secs)
|
|
statusupdate=15000
|
|
|
|
; Do you want servatrice to write important events and errors to a logfile? Default is 1 (yes).
|
|
writelog=1
|
|
|
|
; Choose a name for the log file, if enabled; you can specify an absolute path or a path relative to
|
|
; the servatrice executable; the default file name is server.log (in the same path as servatrice)
|
|
logfile=server.log
|
|
|
|
; You may want to silence some commonly recurring messages in the logfile. This setting can contain a
|
|
; comma-separed list of words; if any message that is about to be logged contains at least one of these words,
|
|
; it won't be logged. Default is empty; example: "kittens,ponies,faires"
|
|
logfilters=""
|
|
|
|
; Set the time interval in seconds that servatrice will use to communicate with each connected client
|
|
; to verify the client has not timed out. Defaults is 1 seconds
|
|
clientkeepalive=1
|
|
|
|
; Maximum time in seconds a player can stay inactive with there client not even responding to pings, before is
|
|
; considered disconnected; default is 15
|
|
max_player_inactivity_time=15
|
|
|
|
; More modern clients generate client IDs based on specific client side information. Enable this option to
|
|
' require that clients report the client ID in order to log into the server. Default is false
|
|
requireclientid=false
|
|
|
|
; You can limit the types of clients that connect to the server by requiring different features be available
|
|
; on the client. This setting can contain a comma-seperated list of features. if any of the features
|
|
; listed in this line are not available on the client the client will be denied access to the server upon
|
|
; attempting to log in. Example: "client_id,client_ver"
|
|
requiredfeatures=""
|
|
|
|
[authentication]
|
|
|
|
; Servatrice can authenticate users connecting. It currently supports 3 different authentication methods:
|
|
; * none: no authentication, accept every user;
|
|
; * password: require users to specify a common password to log in;
|
|
; * sql: authenticate users against the "users" table of the database;
|
|
; Please note that only the "sql" method permits to have registered users and store their data on the server.
|
|
method=none
|
|
|
|
; if the chosen authentication method is password, here you can define the password your users will use to log in
|
|
password=123456
|
|
|
|
; Accept only registered users? default is false (accept unregistered users)
|
|
regonly=false
|
|
|
|
[users]
|
|
|
|
; The minimum length a username can be
|
|
minnamelength=6
|
|
|
|
; The maximum length a username can be
|
|
maxnamelength=12
|
|
|
|
; If a username should be allowed to contain lowercase chars [a-z]
|
|
allowlowercase=true
|
|
|
|
; If a username should be allowed to conatain uppercase chars [A-Z]
|
|
allowuppercase=true
|
|
|
|
; If a username should be allowed to contain numbers [0-9]
|
|
allownumerics=true
|
|
|
|
; Define punctuation allowed in usernames
|
|
allowedpunctuation=_.-
|
|
|
|
; If a username can begin with punctuation defined in allowedpunctuation
|
|
allowpunctuationprefix=false
|
|
|
|
[registration]
|
|
|
|
; Servatrice can process registration requests to add new users on the fly.
|
|
; Enable this feature? Default false.
|
|
;enabled=false
|
|
|
|
; Require users to provide an email address in order to register. Newly registered users will receive an
|
|
; activation token by email, and will be required to input back this token on cockatrice at the first login
|
|
; to get their account activated. Default true.
|
|
;requireemail=true
|
|
|
|
[smtp]
|
|
|
|
; Connectin type: currently supported method are "tcp" and "ssl"; tls is autodetected if available
|
|
connection=tcp
|
|
|
|
; Accept all certificates: in ssl mode, enable this if your server is using an invalid/self signed certificate
|
|
acceptallcerts=false;
|
|
|
|
; Hostname or IP addres of the smtp server
|
|
host=localhost
|
|
|
|
; Smtp port number of the smtp server. Usual values are 25 or 587 for tcp, 465 for ssl
|
|
port=25
|
|
|
|
; Username: this typically matches the "from" email address
|
|
username=root@localhost
|
|
|
|
; Password for the username
|
|
password=foobar
|
|
|
|
; Sender email address: the "from" email address
|
|
email=root@localhost
|
|
|
|
; Sender email name
|
|
name="Cockatrice server"
|
|
|
|
; Email subject
|
|
subject="Cockatrice server account activation token"
|
|
|
|
; Email body. You can use these tags here: %username %token
|
|
; They will be substituted with the actual values in the email
|
|
;
|
|
body="Hi %username, thank our for registering on our Cockatrice server\r\nHere's the activation token you need to supply for activating your account:\r\n\r\n%token\r\n\r\nHappy gaming!"
|
|
|
|
[database]
|
|
|
|
; Database type. Valid values are:
|
|
; * none: no database;
|
|
; * mysql: mysql or compatible database;
|
|
type=none
|
|
|
|
; Prefix used in he database for table names; default is cockatrice
|
|
prefix=cockatrice
|
|
|
|
; Database connection parameter: server hostname or IP
|
|
hostname=localhost
|
|
|
|
; Database connection parameter: database name
|
|
database=servatrice
|
|
|
|
; Database connection parameter: database user
|
|
user=servatrice
|
|
|
|
; Database connection parameter: database user's password
|
|
password=foobar
|
|
|
|
[rooms]
|
|
|
|
; A servatrice server can expose to the users different "rooms" to chat and create games. Rooms can be defined
|
|
; with two different methods:
|
|
; config: rooms are defined in this configuration (see the following example)
|
|
; sql: rooms are defined in the "rooms" table of the database
|
|
method=config
|
|
|
|
; Example configuration for a server with rooms configured in the configuration file. Number of rooms defined
|
|
roomlist\size=1
|
|
|
|
; Room name for the room number 1
|
|
roomlist\1\name="General room"
|
|
|
|
; Room description for the room number 1
|
|
roomlist\1\description="Play anything here."
|
|
|
|
; Rooms can restrict the level of user that can join. Current supported options are none, registered, moderator, administrator.
|
|
; Default is none.
|
|
roomlist\1\permissionlevel=none
|
|
|
|
; Wether to make users autojoin this room when connected to the server
|
|
roomlist\1\autojoin=true
|
|
|
|
; Message displayed to each user when he joins room number 1
|
|
roomlist\1\joinmessage="This message is only here to show that rooms can have a join message."
|
|
|
|
; The number of chat history messages to save that gets presented to a user joining the room
|
|
roomlist\1\chathistorysize=100
|
|
|
|
; Number of game types allowed (defined) in the room number 1
|
|
roomlist\1\game_types\size=3
|
|
|
|
; Name of the three game types for the room number 1
|
|
roomlist\1\game_types\1\name="GameType1"
|
|
roomlist\1\game_types\2\name="GameType2"
|
|
roomlist\1\game_types\3\name="GameType3"
|
|
|
|
|
|
[game]
|
|
|
|
; Maximum time in seconds all players in a game can stay inactive before the game is automatically closed;
|
|
; default is 120
|
|
max_game_inactivity_time=120
|
|
|
|
; All actions during a game are recorded and stored in the database as a replay that all participants of
|
|
; the game can go back to and review after the game is closed. This can require a fairly large amount of
|
|
; storage to save all the information. Disable this option to prevent the storing of replay data in
|
|
; the database. Default value is true.
|
|
store_replays=true
|
|
|
|
[security]
|
|
; You may want to restrict the number of users that can connect to your server at any given time.
|
|
enable_max_user_limit=false
|
|
|
|
; Maximum number of users that can connect to the server, default is 500.
|
|
max_users_total=500
|
|
|
|
; Maximum number of users that can connect from the same IP address; useful to avoid bots, default is 4
|
|
max_users_per_address=4
|
|
|
|
; You may want to allow an unlimited number of users from a trusted source. This setting can contain a
|
|
; comma-separed list of IP addresses which will allow an unlimited number of connections from each of the
|
|
; IP addresses listed (ignoring the max_users_per_address). Default is "127.0.0.1,::1"; example: "192.73.233.244,81.4.100.74"
|
|
trusted_sources="127.0.0.1,::1"
|
|
|
|
; Servatrice can avoid users from flooding rooms with large number of messages in an interval of time.
|
|
; This setting defines the length in seconds of the considered interval; default is 10
|
|
message_counting_interval=10
|
|
|
|
; Maximum size in characters of all messages in an interval before new messages gets dropped; default is 1000
|
|
max_message_size_per_interval=1000
|
|
|
|
; Maximum number of messages in an interval before new messages gets dropped; default is 10
|
|
max_message_count_per_interval=10
|
|
|
|
; Maximum number of games a single user can create; default is 5
|
|
max_games_per_user=5
|
|
|
|
; Servatrice can avoid users from flooding games with large number of game commands in an interval of time.
|
|
; This setting defines the length in seconds of the considered interval; default is 10
|
|
command_counting_interval=10
|
|
|
|
; Maximum number of game commands in an interval before new commands gets dropped; default is 20
|
|
max_command_count_per_interval=20
|
|
|
|
[logging]
|
|
|
|
; Servatrice can log user messages to the database table cockatrice_log.
|
|
; These messages can come from different sources; each source can be enabled separately.
|
|
|
|
; Log user messages inside chat rooms
|
|
log_user_msg_room=false
|
|
|
|
; Log user messages inside games
|
|
log_user_msg_game=false
|
|
|
|
; Log user messages in private chats
|
|
log_user_msg_chat=false
|
|
|
|
; Log user messages coming from other servers in the network
|
|
log_user_msg_isl=false
|
|
|
|
|
|
; EXPERIMENTAL - NOT WORKING YET
|
|
; The following settings are relative to the server network functionality, that is not yet complete.
|
|
; Avoid enabling it unless you are willing to test it and help its development.
|
|
|
|
[servernetwork]
|
|
|
|
; Servatrice servers can connect themselves and build a network. This settins enable the ability of servatrice
|
|
; of waiting for other server's connections and connect to other servers. Other servers can be defined in the
|
|
; "servers" table of the database. Default is 0 (disabled)
|
|
active=0
|
|
|
|
; The TCP port number servatrice will listen on for other servers; default is 14747
|
|
port=14747
|
|
|
|
; Server-to-server communication needs a valid certificate in PEM format. Enter its filename in this setting
|
|
ssl_cert=ssl_cert.pem
|
|
|
|
; Filename of the private key for the server-to-server certificate
|
|
ssl_key=ssl_key.pem
|