Table of content
Vista general
El roliserver està dedicat a allotjar diversos jocs en el mateix ordinador. Les comunitats de jugadors de RPG poden oferir este servei als seus usuaris.
Primera execució
Recomanem fermament iniciar el roliserver com seguix:
roliserver -p config.conf
Genera un fitxer de configuració buit anomenat «config.conf» (canvieu el nom si voleu).
:::ini
[General]
AdminPassword=@Invalid()
ChannelCount=@Invalid()
ConnectionMax=@Invalid()
IpBan=@Invalid()
IpMode=@Invalid()
IpRange=@Invalid()
LogLevel=@Invalid()
DeepInspectionLog=@Invalid()
ThreadCount=@Invalid()
TimeEnd=@Invalid()
TimeStart=@Invalid()
TimeToRetry=@Invalid()
password=@Invalid()
port=@Invalid()
TryCount=@Invalid()
MaxMemorySize=@Invalid()
Canvieu el valor en funció de les vostres necessitats. L'ordre dels elements no és important.
Fitxer de configuració
Contrasenya
Definix la contrasenya per a accedir al servidor. Totes les contrasenyes emmagatzemades en este fitxer s'han d'encriptar amb el mètode Sha3_512. No vos preocupeu, és molt fàcil de fer.
Primer, inicieu el servidor amb el paràmetre -g.
$ roliserver -g
Vos demana que escrigueu la contrasenya. A continuació, s'imprimix la versió encriptada de la contrasenya.
P9d63VIxEvincVCutARz0W86GFFX36h0zWEIUomzusZmnv3krtcEsXzZWKKXXv6Ivag+8fR2a7tRWoaaIu3L1w==
Després podeu copiar/apegar esta clau en el fitxer.
Rolisteam oferix una eina gràfica per a obtindre la contrasenya generada amb Sha3_512.
Avís: assegureu-vos d'executar el servidor amb les Qt5.9 o posteriors. El Sha3_512 en les versió anteriors de les Qt no funciona correctament. És possible que tingueu dificultats per a connectar-vos al servidor.
Port
Definix el port de connexió. El port habitual és 6660 però es pot canviar.
ConnectionMax
Establix el nombre màxim de clients que permet el servidor.
ChannelCount
Establix el nombre de canals al primer inici del servidor.
Bàsicament, açò definix el nombre de jocs que el servidor pot acceptar al mateix temps.
Contrasenya de l'administrador
Definix la contrasenya per a protegir l'autenticació com a administrador del servidor. La contrasenya encara està encriptada a Sha3_512.
L'administrador pot expulsar els usuaris, afegir/eliminar canals i moltes altres coses.
LogLevel
El nivell de registre és un valor numèric que definix el nivell de detalls que voleu conéixer.
Valors possibles:
- 1: Error
- 2: Depuració
- 3: Avís
- 4: Informació
A Nivell d'error, el servidor només mostra els missatges d'error.
El nivell de depuració és útil quan voleu millorar el servidor, afegir algunes característiques, etc.
El missatge Avís mostra els missatges sobre dades o comportaments inesperats.
Per fi, el Nivell d'informació dona detalls sobre el que està fent el servidor.
Abans d'omplir una sol·licitud d'error, és una bona pràctica executar l'aplicació amb el nivell d'informació com a nivell de registre per tal de donar a l'equip tanta informació com siga possible.
DeepInspectionLog
Registra cada esdeveniment del servidor. La selecció d'esta opció pot fer que el servidor vaja més lent.
Valors possibles:
- true
- false
LogFile
Establix el camí on s'escriu el registre.
Exemple
LogFile=/var/log/roliserver.log
ThreadCount
Establix el nombre màxim de fils que pot utilitzar el servidor.
TimeToRetry
Temps d'espera (en mil·lisegon) entre dos intents d'escoltar el port.
El servidor escolta qualsevol connexió en el port definit en este fitxer. En ocasions rares, este pas pot fracassar. Probablement, perquè un altre servidor ja està escoltant este port. Així doncs, el roliserver ho intentarà diverses vegades
TryCount
Definix quantes vegades el servidor intentarà escoltar el port. Si s'arriba fins a este número, el servidor acaba amb un estat d'error.
TimeStart
Establix l'hora del dia en què el servidor permet la connexió.
S'ha d'escriure com: hh:mm Les hores s'han de definir amb dos números, com els minuts.
Exemples: 8 pm
20:00
6am
06:00
TimeEnd
Establix l'hora en què el servidor deixa d'acceptar.
S'ha d'escriure com: hh:mm Les hores s'han de definir amb dos números, com els minuts.
Exemples: 8 pm
20:00
6am
06:00
IpBan
Definix una llista d'adreces IP prohibides.
Exemples: una llista amb 3 adreces
80.80.80.80,127.9.9.1,10.10.10.10
IpMode
ipv4 o ipv6 o both.
Encara no s'utilitza.
MaxMemorySize
Establix el valor de la mida màxima que el servidor ha d'emmagatzemar. Quan s'arriba fins al límit, tots els canals deixen anar les seues dades.
Exemple:
:::ini
MaxMemorySize=8G #Define the size at 8 Gibibyte
MaxMemorySize=8M #Define the size at 8 Mebibyte
Exemple d'un fitxer .conf que funciona:
AdminPassword=tnjOmGIvYntbNcoej2VvG9M1RdJCtZ8BWjHek4r6OvvmhThbjjzJ/zfYwq+G7r/TGe7WWr20vkGBzULuTzcPYQ== ChannelCount=8 ConnectionMax=50 IpBan=@Invalid() IpMode=@Invalid() IpRange=@Invalid() LogLevel=3 LogFile= ServerPassword=tnjOmGIvYntbNcoej2VvG9M1RdJCtZ8BWjHek4r6OvvmhThbjjzJ/zfYwq+G7r/TGe7WWr20vkGBzULuTzcPYQ== ThreadCount=8 TimeEnd=@Invalid() TimeStart=@Invalid() TimeToRetry=100 TryCount=10 port=6660
Açò utilitzarà 0000 com a contrasenya, es recomana que creeu la vostra pròpia amb la utilitat de creació de contrasenyes disponible al client de Rolisteam.
Desplegament al SystemD
Creem el nostre fitxer de servei
$ sudo touch /etc/systemd/system/roliserver.service
Després copieu i apegueu açò al roliserver.service:
:::ini
[Unit]
Description=Rolisteam Server
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
Restart=always
RestartSec=1
User=#your_username#
ExecStart=/usr/local/bin/roliserver -c /home/#your_username#/.roliserver.conf
[Install]
WantedBy=multi-user.target
A continuació, activeu i inicieu el servei:
:::shell
$ sudo systemctl enable roliserver.service
$ sudo systemctl start roliserver.service