Cockatrice/servatrice/dev.ini
Lukas Brübach 969a473c62 [Dev] Add local Servatrice development profiles
Add a no-database guest profile (servatrice/dev.ini) and scripts to run the server and client side by side, with per-profile XDG directories for the client. Add a MySQL 8.4 compose stack published on loopback that loads the schema and an idempotent seed with accounts, roles, rooms, channels, reports, a warning, a ban, a deck, and chat log rows. Document both workflows in docs/DEVELOPMENT.md and link it from the README.
2026-11-10 12:29:49 +01:00

104 lines
2.7 KiB
INI

; Servatrice development configuration.
;
; This profile needs no database and no mail server: it starts a
; localhost-only server that accepts guest logins, two rooms, and chat
; channels. Use scripts/dev-servatrice.sh to run it; the script can layer
; per-run overrides on top without editing this file.
;
; For registered accounts, roles, moderation data, and SQL, see
; docs/DEVELOPMENT.md and scripts/dev-db.sh instead.
[server]
name="Cockatrice dev server"
id=1
host=127.0.0.1
port=4747
number_pools=1
websocket_number_pools=0
statusupdate=0
writelog=0
; An empty logfile keeps the repository clean; console output still works.
logfile=
clientkeepalive=1
max_player_inactivity_time=15
idleclienttimeout=0
officialwarnings="Abusive Language|1,Causing Drama|1,Cheating|2,Spamming|1,Targeted Harassment|2"
[authentication]
method=none
regonly=false
[registration]
enabled=false
[users]
minnamelength=3
maxnamelength=35
allowlowercase=true
allowuppercase=true
allownumerics=true
allowedpunctuation=_.-
allowpunctuationprefix=false
disallowedwords=""
disallowedregexp=""
minpasswordlength=6
[database]
type=none
[rooms]
method=config
roomlist\size=2
roomlist\1\name="General"
roomlist\1\description="Play anything here."
roomlist\1\permissionlevel=none
roomlist\1\privilegelevel=none
roomlist\1\autojoin=true
roomlist\1\joinmessage=""
roomlist\1\chathistorysize=100
roomlist\1\game_types\size=1
roomlist\1\game_types\1\name="Standard"
roomlist\1\channels\size=3
roomlist\1\channels\1\id=general
roomlist\1\channels\1\displayname="General"
roomlist\1\channels\1\access=public
roomlist\1\channels\2\id=moderators
roomlist\1\channels\2\displayname="Moderators"
roomlist\1\channels\2\access=moderator
roomlist\1\channels\3\id=developer-news
roomlist\1\channels\3\displayname="Developer news"
roomlist\1\channels\3\access=public
roomlist\1\channels\3\writeaccess=developer
roomlist\1\channels\3\banner="Official announcements from the developers."
roomlist\2\name="Testing"
roomlist\2\description="Scratch room for server and client work."
roomlist\2\permissionlevel=none
roomlist\2\privilegelevel=none
roomlist\2\autojoin=true
roomlist\2\joinmessage=""
roomlist\2\chathistorysize=100
roomlist\2\game_types\size=2
roomlist\2\game_types\1\name="Standard"
roomlist\2\game_types\2\name="Commander"
roomlist\2\channels\size=2
roomlist\2\channels\1\id=testing
roomlist\2\channels\1\displayname="Testing"
roomlist\2\channels\1\access=public
roomlist\2\channels\2\id=moderators
roomlist\2\channels\2\displayname="Moderators"
roomlist\2\channels\2\access=moderator
[game]
max_game_inactivity_time=120
store_replays=false
allow_create_as_judge=false
[security]
max_users_per_address=20
max_login_attempts_per_ip=0
max_registrations_per_ip=0
[smtp]
enableinternalsmtpclient=false