mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2025-12-12 15:49:28 -08:00
Stub for registration command handling in server First draft of handling registration requests WIP (will be rebased) clean up bad imports (rebase this later) Finish checkUserIsBanned method Add username validity check Check servatrice registration settings WIP Finish(?) server side of registration Needs testing Fix switch case compile failure I have no idea why I have to do this WIP for registration testing python script Stub register script initial attempt Rearrange register script First try at sending reg register.py sends commands correctly now Add more debug to register.py Pack bytes the right way - servatrice can parse py script sends now register.py should be working now Parse xml hack correctly Log registration enabled settings on server start Insert gender correctly on register Show tcpserver error message on failed gameserver listen Fail startup if db configured and can't be opened. TIL qt5 comes without mysql by default in homebrew...
197 lines
7.2 KiB
Plaintext
197 lines
7.2 KiB
Plaintext
; 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=""
|
|
|
|
|
|
[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 0 (accept unregistered users)
|
|
regonly=0
|
|
|
|
[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. Default true.
|
|
;requireemail=true
|
|
|
|
[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."
|
|
|
|
; 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."
|
|
|
|
; 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 a player can stay inactive, with his client hot even responding to pings, before is
|
|
; considered disconnected; default is 15
|
|
max_player_inactivity_time=15
|
|
|
|
; 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
|
|
|
|
|
|
[security]
|
|
|
|
; 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
|