Table of content

Overzicht

Roliserver is bedoeld om meerdere games op één computer te hosten. RPG-spelersgemeenschappen bieden deze service mogelijk aan hun gebruikers.

Eerste keer

We raden ten zeerste aan om roliserver als volgt te starten:

roliserver -p config.conf

Het genereert een leeg configuratiebestand met de naam "config.conf" (wijzig de naam indien gewenst).

:::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()

Pas de waarde aan naar behoefte. De volgorde van de elementen is niet belangrijk.

Configuratiebestand

Wachtwoord

Definieer een wachtwoord om toegang tot de server te krijgen. Elk wachtwoord dat in dit bestand wordt opgeslagen, moet worden versleuteld met de SHA3_512-methode. Geen zorgen, het is heel eenvoudig.

ten eerste, start de server eerst met de parameter -g.

$ roliserver -g

Het programma vraagt ​​je om het wachtwoord in te voeren. Vervolgens toont het de versleutelde versie van je wachtwoord.

P9d63VIxEvincVCutARz0W86GFFX36h0zWEIUomzusZmnv3krtcEsXzZWKKXXv6Ivag+8fR2a7tRWoaaIu3L1w==

Vervolgens kunt u deze sleutel kopiëren en in uw bestand plakken.

Rolisteam biedt een grafische tool om wachtwoorden te genereren met Sha3_512.

Waarschuwing: zorg ervoor dat u de server uitvoert met Qt 5.9 of hoger. Sha3_512 werkt niet correct in oudere versies van Qt. U kunt problemen ondervinden bij het verbinden met de server.

Poort

Definieer de verbindingspoort. De gebruikelijke poort is 6660, maar deze kan worden gewijzigd.

ConnectionMax

Definieer het maximale aantal clients dat de server toestaat.

ChannelCount

Definieer het aantal kanalen bij de eerste opstart van de server.
Dit bepaalt in feite het aantal games dat uw server tegelijkertijd kan verwerken.

Wachtwoord van admin

Definieer een wachtwoord om de authenticatie als serverbeheerder te beveiligen. Het wachtwoord is nog steeds versleuteld met SHA3_512.

De beheerder kan gebruikers verwijderen, kanalen toevoegen/verwijderen en nog veel meer.

LogLevel

Het logniveau is een numerieke waarde die het detailniveau definieert dat u wilt weten.

Mogelijk waarde:

  • 1 : fout
  • 2 : debug
  • 3 : waarschuwing
  • 4 : informatie

Op het niveau fout geeft de server alleen foutmeldingen weer.
Het niveau debug is handig als u de server wilt verbeteren, functies wilt toevoegen, enzovoort.
Het niveau waarschuwing geeft een bericht weer over onverwachte gegevens of gedragingen.
Ten slotte geeft het niveau informatie details over wat de server doet.

Voordat u een bugrapport indient, is het raadzaam om de toepassing eerst met een niveau informatie als logniveau te draaien, zodat het team zoveel mogelijk informatie krijgt.

DeepInspectionLog

Log alle gebeurtenissen van de server. Het inschakelen van deze optie kan de server trager maken.

Mogelijk waarde:

  • true
  • false

LogFile

stel het pad in waar de logbestanden worden opgeslagen.

Voorbeeld

LogFile=/var/log/roliserver.log

ThreadCount

Definieert het maximum aantal threads dat de server mag gebruiken.

TimeToRetry

Wachttijd (in milliseconden) tussen twee pogingen om naar de poort te luisteren.

De server luistert naar elke verbinding op de poort die in dit bestand is gedefinieerd. In zeldzame gevallen kan deze stap mislukken. Waarschijnlijk omdat een andere server al naar deze poort luistert. Daarom zal roliserver het meerdere keren proberen.

TryCount

Definieer hoe vaak de server zal proberen naar de poort te luisteren. Als dit aantal is bereikt, stopt de server met een foutstatus.

TimeStart

Definieer het tijdstip waarop de server verbindingen toestaat.

Het moet als volgt worden geschreven: hh:mm. Uren moeten worden aangegeven met twee cijfers net als de minuten.

Voorbeelden: 8pm

20:00

6am

06:00

TimeEnd

Definieer het tijdstip waarop de server stopt met het accepteren van verzoeken.

Het moet als volgt worden geschreven: hh:mm. Uren moeten worden aangegeven met twee cijfers net als de minuten.

Voorbeelden: 8pm

20:00

6am

06:00

IpBan

Definieer een lijst met geblokkeerde IP-adressen.

Voorbeelden: een lijst met 3 adressen

80.80.80.80,127.9.9.1,10.10.10.10

IpMode

ipv4 of ipv6 of beiden.

Het wordt nog niet gebruikt.

MaxMemorySize

Stel de maximale grootte in die de server mag opslaan. Wanneer deze limiet is bereikt, laten alle kanalen hun gegevens vallen.

Voorbeeld:

:::ini
MaxMemorySize=8G  #Define the size at 8 Gibibyte
MaxMemorySize=8M  #Define the size at 8 Mebibyte

Voorbeeld van een werkend .conf bestand :

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

Dit gebruikt 0000 als wachtwoord. Het is aan te raden om zelf een wachtwoord aan te maken met het wachtwoordaanmaakhulpmiddel dat beschikbaar is in de Rolisteam-client.

In SystemD gebruiken

Laten we ons service-bestand aanmaken

$ sudo touch /etc/systemd/system/roliserver.service

Kopieer en plak dit vervolgens in 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

Enable en start daarna de service:

:::shell
$ sudo systemctl enable roliserver.service
$ sudo systemctl start roliserver.service