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