UTzone.de

UTzone.de (https://www.utzone.de/forum/index.php)
-   UT3 (https://www.utzone.de/forum/forumdisplay.php?f=67)
-   -   UT3 | Serverguide (https://www.utzone.de/forum/showthread.php?t=41)

Donzi 16.11.2009 00:42

UT3 | Serverguide
 
Copyright
This tutorial is copyright of its author.
Please do not copy this tutorial without providing a link back to the original here.
Deutsche Übersetzung: Donzi © 2007


Seite 1: Einführung, Starten, Einstellungen, Vote, Firewall, Administration
Seite 2: LinuxStartscript
Seite 3: CustomMaps und CustomMutators, Map/GameMode-Voting mit BIA-Vote, Redirect (FastDownload)

Danke an:

Unrealadmin.org
UT3Server-Mailinglist
EpicGames-Forum



1. Einführung

Für Windows XP, Vista oder Windows 2003 Server. Der Download ist derzeit hier möglich.


Den Server zu Installieren ist das einfachste, einfach die rar-Datei entpacken und Setup.exe klicken. Der Server installiert sich von selbst in das von Epic eingestellte Verzeichnis.
Empfehlenswert ist allerdings, den Server in ein Extra-Verzeichnis zu installieren, z.B.: C:/DediServer/UT3 .
Wenn Ihr eine 2te Partition auf eurem Server habt, installiert den Server dort.

Um die Übersicht beizuhalten, empfehle ich immer, die Ordnerstruktur beizuhalten, UT99 in D:/DediServer/UT99, UT2004 in D:/DediServer/UT2004, UT3 in D:/DediServer/UT3 usw.
Patchen nicht vergessen!


Für Linux:
UT3 Dedicated Linux Server


2. Starten des DediServers
Windows:
Wie alle UT-Server wird auch dieser per Batch-Datei gestartet.
Erstellt eine Datei mit einem x-beliebigen Editor (Proton ist mein Favorit) und benennt sie UT3_DediServer_start.bat .
Der minimal empfohlene Inhalt dieser Datei:
Code:

:one
ut3.exe server MapName?GameMode=?Game=?MinNetPlayers=0?MaxPlayers=10?bShouldAdvertise=?bIsLanMatch=?bUsesStats=?bIsDedicated=True?PureServer=?ForceRespawn=?GoalScore=0?TimeLimit=20?bAllowJoinInProgress=True?bAllowInvites=True?bUsesPresence=True?Mutator=?AdminPassword=?GamePassword= -configsubdir= -login= -password= -port= -queryport= -multihome= -log=UT3-Server.log -nohomedir -unattended
goto one

ACHTUNG! Darstellungsfehler! Alle Slashes müssen mit Backslashes ersetzt werden!


An einigen Stellen wurde hinter dem = Zeichen nichts geschrieben. Dies müsst Ihr selbst einstellen. Ebenso gibt es noch eine Menge mehr einzustellen, welches ich Euch nun zeige, :


?AdminPassword=
Das Passwort fürs Einloggen
-
?MaxPlayers=
Maximale Anzahl der Spieler auf deinem Server
-
?MinNetPlayers=
Die minimale Anzahl von Spielern, die benötigt werden, damit das Spiel beginnt (meist 0)
-
?Numplay=
Wieviele Bots sollen dem Spiel beitreten. Wenn mehr menschliche Spieler beitreten, verlassen die Bots automatisch das Spiel
-
?bShouldAdvertise=
Anzeige Deines Server in der Serverliste (true/false)
-
?bIsLanMatch=
Ist dein Server im LAN? (true/false)
für LAN-Support:
?listen nach dem letzten Fragezeichen am Schluss dranhängen
-
?bUsesStats=
Sollen Statistiken geführt werden? (true/false)
-
?bAllowJoinInProgress=
Darf ein Spieler mitten im Spiel joinen? true=ja ; false= nein, er muss bis zum Mapwechsel warten
-
?bAllowInvites=
Erlaube das Einladen eines Spielers auf den Server
-
?bUsesPresence=
Schickt die Spieleranzeige an den Masterserver, wer darauf spielt
-
?bAllowJoinViaPresence=
Darf ein Spieler einem andere Spieler auf den Server folgen
-
?bIsDedicated=
Da wir einen Dedi-Server laufen haben, auf true
-
?GoalScore=
Wieviele Flaggen oder Core's bis zum Mapwechsel bzw Spielende
-
?TimeLimit=
Zeitlimit in Minuten
-
?Forcerespawn=
automatisches Respawnen oder Spieler muss die Maus nach einem Ableben drücken (true/false)
-
?WarmupTime=120
auch per ini einstellbar
-
?PlayersMustBeReady=True
auch per ini einstellbar
-
?demo=einDemoPrefix
-
?Vote=True
auch per ini einstellbar
-
?VoteDuration=30
auch per ini einstellbar
-
?GameSpeed=1.0
-
?BotSkill=?Difficulty=
Wie stark sollen die Bots sein? (0/7)
-
?vsbots=
1.0 Bots gleichen die Teams aus ; 1.5 mehr Bots gegen Spieler ; 2.0 alle Bots gegen Spieler
-
?Game= <-- Siehe 3. !
?GameMode= <-- Siehe 3. !
?Mutator= <-- Siehe 3. !
-
?PureServer=
Auf false stellen, wenn Mutatoren oder CustomMaps geladen sind.
-
-configsubdir=
Wir geben beim Patch 1.1 nicht mehr direkt die ini´s an, sondern verwenden Unterordner, um eine bessere Struktur durchzusetzen.
z.B.: -configsubdir=iCTF ; Beim ersten Start legt der Server automatisch die ini´s die benötigt werden in diesen Ordner an und dann können Sie verändert werden.
Für Windows : D:/DediServer/UT3/UTGame/Config/iCTF/
Für Linux : /ut3/UTGame/Config/iCTF/
-
-multihome=
falls der Server mehrere IP-Nummer besitzt, unter welcher soll der Server spielbar sein (Pflichtangabe, auch wenn nur eine IP vorhanden ist!)
-
-Port=
GamePort 7777 ist Standard. Wenn Du einen anderen benutzen willst, gehe jeweils min. 1000 höher (7777 --> 8777 --> 9777)
-
-QueryPort=
Der Queryport ist Standard 6500, ohne diesen Zusatz erhöht sich der Queryport um jeweils 100, wenn mehrere UT3-Server auf deinem System laufen (6500 --> 6600 --> 6700); es ist besser den Queryport anzugeben.
-
-log=
Die Log-Datei, um Fehler später zu erkennen
-
-Login=
GameSpy-Login; Erstelle mit deinem Client einen aussagekräfigen Login, dann erst wird dein Server im Serverbrowser angezeigt!
Hast Du keinen Client, dann frage jemanden der UT3 installiert hat, ob er dir einen erstellen kann.
-
-Password=
das dazugehörige Passwort zum Login


Ich hab mal eine Start.bat angelegt, die das wichtigste beschreibt.
Wir starten einen iCTF_DediServer mit Port 7777 + Queryport 6500 + Timelimit auf 20 - Bots sind aus + 5vs5 + Server wird als Dedi nicht Pure geführt + Spieler dürfen folgen + ForceRespawn + Server sendet Spielernamen an Masterserver + Spieler darf direkt ins Spiel rein ohne zu warten + Einladungen von Spielern auf dem Server sind erlaubt

Code:

:one
ut3.exe ut3 server CTF-Coret?GameMode=1?Game=UTGameContent.UTCTFGame_Content?MinNetPlayers=0?MaxPlayers=10?bShouldAdvertise=True?bIsLanMatch=False?bUsesStats=True?bIsDedicated=True?PureServer=1?ForceRespawn=0?GoalScore=0?TimeLimit=20?bAllowJoinInProgress=True?bAllowInvites=True?bUsesPresence=True?Mutator=UTGame.UTMutator_NoTranslocator,UTGame.UTMutator_Instagib?AdminPassword=serverguide?GamePassword=serverguide -configsubdir=iCTF -login=Server -password=Guide -port=7777 -queryport=6500 -multihome=IP-Adresse nicht vergessen -log=UT3-iCTF.log -nohomedir -unattended
goto one

oder Ihr nutz diesen Link
Unreal Tournament 3 Commandline Generator



3. Was wollen wir den mal Spielen? GameMode- und Mutator-Auswahl

Die Qual der Wahl, den was soll den eigentlich gespielt werden und wie stellt man das ganze ein. Nun, dafür muss man die ganzen GameMode erstma wissen. Für jeden GameMode muss man auch immer das passende Game dazuschreiben. Warum? Sonst wird Dein Server unter einem falschen GameMode im Serverbrowser angezeigt.



Hier die GameMode's, passend schon mit dem Game-Abschnitt:

Deathmatch:
?GameMode=0?Game=UTGame.UTDeathmatch
Capture the Flag:
?GameMode=1?Game=UTGameContent.UTCTFGame_Content
Warfare:
?GameMode=2?Game=UTGameContent.UTOnslaughtGame_Content
Vehicle Capture the Flag:
?GameMode=3?Game=UTGameContent.UTVehicleCTFGame_Content
Team Deathmatch:
?GameMode=4?Game=UTGame.UTTeamGame
Duel:
?GameMode=5?Game=UTGame.UTDuelGame

Wenn es ab und zu mal zu langweilig wird, der kann sich noch einen Mutator in den GameMode setzen, der z.B.: den GameSpeed erhöht.
Hier die korrekten Befehle für die Start.bat:

Mutatoren:
Instagib --> ?Mutator=UTGame.UTMutator_Instagib
BigHead --> ?Mutator=UTGame.UTMutator_BigHead
Low Gravity --> ?Mutator=UTGame.UTMutator_LowGrav
Super Berserk --> ?Mutator=UTGame.UTMutator_SuperBerserk
Friendly Fire --> ?Mutator=UTGame.UTMutator_FriendlyFire
No Translocator --> ?Mutator=UTGame.UTMutator_NoTranslocator
Speed Freak --> ?Mutator=UTGame.UTMutator_SpeedFreak
Handicap --> ?Mutator=UTGame.UTMutator_Handicap
No Powerups --> ?Mutator=UTGame.UTMutator_NoPowerups
Slomo --> ?Mutator=UTGame.UTMutator_Slomo
Weapon Replacement --> ?Mutator=UTGame.UTMutator_WeaponReplacement
Weapon Respawn --> ?Mutator=UTGame.UTMutator_WeaponsRespawn

Natürlich sind auch mehrere Mutatoren wieder verknüpfbar, z.B.:
?Mutator=UTGame.UTMutator_LowGrav,UTGame.UTMutator_Instagib



4. Welche ini-Datei für was? Das Einstellen der ini
Man muss nicht viel Einstellen, es wird also fast alles über die Start.bat geregelt.
Legt von folgenden ini-Dateien jeweils eine Kopie an, um Kleinigkeiten zu ändern:

In unserem Beispiel D:/DediServer/UT3/UTGame/Config/iCTF

Durch den "Hebel" -nohomedir verwenden wir den bescheidenen Pfad über "Eigene Dateien/My Games/UT3" !NICHT!, sondern bewegen uns nur im Installationordner von UT3.
Es ist durchaus möglich über den Weg "My Games" zu gehen, doch darauf komme ich später, viel später, eher garnicht.

Was kann man alles in den 2 ini's einstellen kann, ist nicht viel. Aber einen Haufen Inhalt haben diese zwei.
Folgendes kann man ändern:

UTEngine.ini:

Code:

/URL/
Port=7777
; wird per Start.bat geregelt

[Engine.Player]
ConfiguredInternetSpeed=10000
ConfiguredLanSpeed=20000
; DefaultSettings, muss nicht geändert werden. Der NetCode ist sehr gut geworden

[IpDrv.TcpNetDriver]
AllowDownloads=False
; Redirection ist mittleriweile verfügbar! Siehe ZusatzInfo!
MaxClientRate=15000
MaxInternetClientRate=10000
; DefaultSettings, muss nicht geändert werden. Der NetCode ist sehr gut geworden
NetServerMaxTickRate=30
LanServerMaxTickRate=35
; Durch Bugs können höhere Tickrates zum Speicherfresser werden!
IdleServerTickRate=20
; Kommt erst mit Patch 1.1, verringert die Tickrate des Servers, somit weniger CPU-Last, wenn kein Spieler auf dem Server ist.
; Nachteil, die Pings gehen im Serverbrowser nach oben.

[IpDrv.HTTPDownload]
RedirectToURL=http://uz3.gameservers.net/ut3/
ProxyServerHost=
ProxyServerPort=3128
UseCompression=True

Mehr zum Redirect siehe: All UT´s | Redirection für Server


UTGame.ini

Code:

[Engine.GameInfo]
bAdminCanPause=false
MaxPlayers=32
; wird per Start.bat geregelt
GameDifficulty=1.000000
bChangeLevels=True
; auf True für Mapvote
MaxSpectators=2
bKickLiveIdlers=False

[Engine.GameReplicationInfo]
ServerName= Bitte Eintragen!!!
ShortName=UT3 Server
MessageOfTheDay=Welcome to a UT3 Server!
; kann man schonmal eintragen. Die Pipe im MotD ist nicht mehr möglich!

[Engine.PlayerController]
bDynamicNetSpeed=False
; für Client und Server defintiv auf False !!!


Einen Webadmin gibt es derzeit von elMuerte, den man sich hier Downloaden kann.


5. Ich will voten! Das Mapvoting

Hierzu öffent Ihr wieder die UTGame.ini und sucht nach folgendem:
Code:

[UTGame.UTGame]
BotRatio=1.000000
; wird per Start.bat geregelt
GoalScore=25
; wird per Start.bat geregelt
bTournament=false
bPlayersMustBeReady=false
NetWait=15
ClientProcessingTimeout=30
RestartWait=30
MinNetPlayers=1
bWaitForNetPlayers=true
LateEntryLives=1
TimeLimit=20
; wird per Start.bat geregelt
GameDifficulty=+5.0
EndTimeDelay=4.000000
bAllowMapVoting=true
VoteDuration=45
bForceRespawn=True
; wird per Start.bat geregelt
ServerSkillLevel=0
MaxCustomChars=12
MapCycleIndex=-1
GameSpecificMapCycles=(GameClassName="UTDeathmatch",Maps=("DM-Arsenal","DM-Biohazard","DM-Sanctuary","DM-Deck","DM-Defiance","DM-Deimos","DM-Diesel","DM-Gateway","DM-HeatRay","DM-Fearless","DM-RisingSun","DM-Sentinel","DM-ShangriLa","DM-Carbonfire"))
GameSpecificMapCycles=(GameClassName="UTTeamGame",Maps=("DM-Arsenal","DM-Biohazard","DM-Sanctuary","DM-Deck","DM-Defiance","DM-Deimos","DM-Diesel","DM-Gateway","DM-HeatRay","DM-Fearless","DM-RisingSun","DM-Sentinel","DM-ShangriLa","DM-Carbonfire"))
GameSpecificMapCycles=(GameClassName="UTCTFGame_Content",Maps=("CTF-Coret","CTF-Hydrosis","CTF-Reflection","CTF-Vertebrae","CTF-OmicronDawn","CTF-Strident"))
GameSpecificMapCycles=(GameClassName="UTVehicleCTFGame_Content",Maps=("VCTF-Kargo","VCTF-Suspense","VCTF-Corruption","VCTF-Containment","VCTF-Sandstorm","VCTF-Necropolis"))
GameSpecificMapCycles=(GameClassName="UTOnslaughtGame_Content",Maps=("WAR-Downtown","WAR-SinkHole","WAR-Dusk","WAR-Islander","WAR-Avalanche","WAR-MarketDistrict","WAR-OnyxCoast","WAR-Powersurge","WAR-Serenity","WAR-FloodGate","WAR-Torlan","WAR-TankCrossing"))

Falsche Darstellung!! Für korrekte Darstellung bitte hier klicken.


Um den Vote zu aktivieren, braucht Ihr nur unter bAllowMapVoting= ein true setzen
Code:

bAllowMapVoting=true
Ansonsten könnt Ihr noch die Maps verändern, welche Ihr im Mapvote später drin haben möchtet. In unserem Beispiel sind alle Maps drin und entsprechend des GameModes schon eingestellt. Alle anderen Einstellungen sind selbsterklärend.
Um CustomMaps einzubringen, müsst ihr diese per Hand eintragen.


6. Die Firewall und NAT
Es werden für UT3 nur noch 3 Ports benötigt. Öffnet dafür die UDP-Ports die Ihr in der Start.bat angegeben habt.

6500/udp
7777/udp
13000/udp

Ersetzt bitte in der UnrealEngine.ini, bzw der Server.ini

folgendes:


Code:

[OnlineSubsystemGameSpy.OnlineSubsystemGameSpy]
bHasGameSpyAccount=True
EncryptedProductKey=NotForShip
QueryPort=6500
StunServerAddress=stun.xten.com
StunServerAddress=stunserver.org

Code:

[OnlineSubsystemGameSpy.OnlineSubsystemGameSpy]
bHasGameSpyAccount=true
EncryptedProductKey=NotForShip
QueryPort=6500
StunServerAddress=stun1.voiceeclipse.net
StunServerAddress=stun.phoneserve.com

Dann ist auch das Stunserver-Problem behoben!


Sollte ein 2ter GameServer auf dem Rootserver laufen, so empfiehlt sich hier die Ports zu erhöhen.
Den GamePort 7777 auf 8777, Firewall 8777/udp öffnen.
Den Queryport 6500 auf 6600, Firewall 6600/udp öffnen.
Der Port 13000 kann unberührt bleiben, dies ist der Statistik-Port.




7. Die Administration im Spiel
Du joinst deinem Server und tippst in die Console, die sich auf F10 befindet folgendes:
Zitat:

AdminLogin DeinPasswort
Das Passwort hattest Du in der Start.bat angegeben.

Folgende Kommando´s sind verfügbar:
- AdminRestartMap <-- Startet die Map neu
- AdminChangeMap <MapName> <-- Startet eine neue map und/oder einen neuen GameMode, je nach Mapname
- Admin addbots Zahl <-- Bots in Spiel bringen
- Admin killbots <-- Alle Bots aus dem Spiel entfernen
- Adminkick Spielername <-- Spieler von Server entfernen
- Adminkickban Spielername <-- Entfernt und bannt den Spieler vom Server. Gebannte Spieler werden in der ini eingetragen

Ausloggen per Console mit:
Zitat:

Adminlogout

Donzi 02.12.2009 11:16

Auf der nächsten Seite, Linux-Server Startscript

Seite 1: Einführung, Starten, Einstellungen, Vote, Firewall, Administration
Seite 2: LinuxStartscript
Seite 3: CustomMaps und CustomMutators, Map/GameMode-Voting mit BIA-Vote, Redirect (FastDownload)

Copyright
This tutorial is copyright of its author.
Please do not copy this tutorial without providing a link back to the original here.
Deutsche Übersetzung: Donzi © 2007

<break>
Seite 1: Einführung, Starten, Einstellungen, Vote, Firewall, Administration
Seite 2: LinuxStartscript
Seite 3: CustomMaps und CustomMutators, Map/GameMode-Voting mit BIA-Vote, Redirect (FastDownload)

Linux-Server Startscript
Eigentlich ist für den LinuxServer alles gleich, wie bei dem WindowsServers, ausser das Starten. Um es euch einfacher zu machen, haben wir ein Startscript gebastelt.
Mit diesem könnt ihr:
- den Server starten und stoppen
- den ServerStatus euch anzeigen lassen
- den Server checken, ob er läuft, wenn nein, wird er gestartet
- den Server debuggen. Der Server wird nicht in den Hintergrund gepackt, sondern direkt ausgeführt, um Probleme zu sehen und später zu beseitigen. Mit CTRL-D könnt Ihr den Debug-Modus wieder abschalten.
- restart funktioniert nicht ( würde da mal jemand drüberschauen ^^)


Code:

#!/bin/bash
###########################################################
#                                                                                                                                                   
#        =========================================                                                               
#        |        DNW Despe Networks                |       
#        =========================================     
#        |>>>>>>>> UT3 StartScript v2.2    >>>>>>|       
#        |>>>>>>>> http://www.despe.de >>>>>>>>>>|       
#        |>>>>>>>> DO NOT EDIT, only if u know>>>|       
#        |>>>>>>>> what are you doing! >>>>>>>>>>|       
#        =========================================       
#      by Donzi, Flip, jeppo, token                     
###########################################################
# which user runs the server, NOT ROOT!!
USER=

# Name of the Server, short discription
ACCID=UT3-iCTF

# GameSpy Login. Please Create a Login in your client, that update this setting!
MYLOGIN=
MYPASSWORD=

# Ports for the server
SERVERPORT=7777
QUERYPORT=6500

# where is the server installed
SERVERDIR="/home/~user/ut3"

# ServerIP for multihome, must be insert!
SERVERIP="83.142.84.124"

# Logs for the Server, found in /home/~user/ut3/UTGame/Logs/
LOG="$ACCID.log"
CRASHLOG="$ACCID.crash.log"
PIDFILE="$SERVERDIR/$ACCID.pid"

# where are your ini to generate and later for read
# you can find it in /UTGame/Config/yourdirectory
INIDIR=iCTF

#SERVERDESCRIPTION= set this in the UTgame.ini!

# ADMINPASSWORD= Sets an admin password
ADMINPASSWORD=

# GAMEPASSWORD= Sets a game password
GAMEPASSWORD=

# MAPS: DM-Heatray, DM-ShangriLa,VCTF-Suspense, CTF-Coret, War-Torlan
MAP=CTF-Coret

# GAMEMODE= Sets the gamemode (so servers will show up in the right catagory in the server browser) see above
#      DM      =      0
#      CTF    =      1
#      Warfare =      2
#      vCTF    =      3
#      TDM    =      4
#      Duel    =      5
GAMEMODE=1

#GAME:
# DeatMatch        =      UTGame.UTDeathmatch
# CTF                =        UTGameContent.UTCTFGame_Content
# Warfare        =        UTGameContent.UTOnslaughtGame_Content
# vCTF                =        UTGameContent.UTVehicleCTFGame_Content
# TDM                =        UTGame.UTTeamGame
# Duel                =      UTGame.UTDuelGame
GAME=UTGameContent.UTCTFGame_Content

# MAXPLAYERS= Maximum number of players on the server (overrides ini setting)
MAXPLAYERS=10

# MINNETPLAYERS= Minimum number of players before a match starts (real players not bots)
MINPLAYERS=0

# BSHOULDADVERTISE=[True|False] Show the server in the server browser
INSERVERBROWSER=True

# BISLANMATCH=[False|False] Is this a LAN only game?
LANMATCH=False

# BUSESSTATS=[True|False] Report stats or not?
STATS=True
ALLOWJOININPROGRESS=True
ALLOWINVITES=True
USEPRESENCE=True
ALLOWJOINVIAPRESENCE=True
FORCERESPAWN=0
#NUMPLAY=0

# DEDICATED=[True|False] Changes dedicated server setting
DEDICATED=True

#BotSkill or Difficulty from 0-7
BOTSKILL=2

#Mutator loaded? If Yes, set to 0
PURESERVER=1

# GOALSCORE= Sets the max frags / max caps before the server will change maps.
GOALSCORE=0

# TIMELIMIT= Sets the timelimit in minutes for each map.
TIMELIMIT=20

# MUTATOR=
#        UTGame.UTMutator_SlowTimeKills
#        UTGame.UTMutator_BigHead
#        UTGame.UTMutator_FriendlyFire
#        UTGame.UTMutator_Handicap
#        UTGame.UTMutator_Instagib
#        UTGame.UTMutator_LowGrav
#        UTGame.UTMutator_NoPowerups
#        UTGame.UTMutator_NoTranslocator
#        UTGame.UTMutator_Slomo
#        UTGame.UTMutator_SpeedFreak
#        UTGame.UTMutator_SuperBerserk
#        UTGame.UTMutator_WeaponReplacement
#        UTGame.UTMutator_WeaponsRespawn
#????        UTGame.UTMutator_Survival
LOADEDMUTATORS=UTGame.UTMutator_NoTranslocator,UTGame.UTMutator_Instagib

#########################################################################
# DONT EDIT BELOW THIS LINE!!! Broken Server is the reason !!!                #
#########################################################################
SERVERSTART="Binaries/ut3"
SERVEREXE="./ut3-bin"

# Servercommandline
SERVERCOMMANDLINE="server $MAP?GameMode=$GAMEMODE?Game=$GAME?MinNetPlayers=$MINPLAYERS?MaxPlayers=$MAXPLAYERS?bShouldAdvertise=$INSERVERBROWSER?bIsLanMatch=$LANMATCH?bUsesStats=$STATS?bIsDedicated=$DEDICATED?PureServer=$PURESERVER?ForceRespawn=$FORCERESPAWN?GoalScore=$GOALSCORE?TimeLimit=$TIMELIMIT?bAllowJoinInProgress=$ALLOWJOININPROGRESS?bAllowInvites=$ALLOWINVITES?bUsesPresence=$USEPRESENCE?Mutator=$LOADEDMUTATORS?AdminPassword=$ADMINPASSWORD?GamePassword=$GAMEPASSWORD -configsubdir=$INIDIR -login=$MYLOGIN -password=$MYPASSWORD -port=$SERVERPORT -queryport=$QUERYPORT -multihome=$SERVERIP -log=$LOG -nohomedir -unattended"

#################################
# temporarily out of order
EXECMD="
while true
do
        OLDDIR=`pwd`
        cd $SERVEREXECDIR
        $SERVERCOMMANDLINE
        cd $OLDDIR
        sleep 5
        mv $LOG $CRASHLOG
done"
################################


# Checking if ut3 is there and executable
if [ -f "$SERVERDIR/$SERVERSTART" ]; then
        if [ ! -x "$SERVERDIR/$SERVERSTART" ]; then
                echo -e "$SERVERDIR/$SERVERSTART Datei ist nicht ausfuehrbar (chmod777)"
                echo -e "Bitte aendern und nochmals starten"
                exit 2
        fi
else
        echo "Kann die Datei $SERVERDIR/$SERVERSTART nicht finden!"
        echo "Sollte das nicht stimmen, editiere mich."
    exit 2
fi

# Check ut3-bin is there and executable.

if [ -f "$SERVERDIR/Binaries/$SERVEREXE" ]; then
        if [ ! -x "$SERVERDIR/Binaries/$SERVEREXE" ]; then
                echo -e "Binaries/$SERVEREXE Datei ist nicht ausfuehrbar (chmod777)"
                echo -e "Bitte aendern und nochmals starten"
        exit 2
        fi
else
        echo "Kann die Datei $SERVERDIR/$SERVERSTART nicht finden!"
        echo "Sollte das nicht stimmen, editiere mich."
        exit 2
fi

case "$1" in
        start)
        echo -n "Starte $ACCID dedicated server: "
                if ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=${realbin} 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        echo -e "laeuft schon"
            exit 0
        else
                if [ -f "$LOG" ]; then
                        cp $LOG $CRASHLOG
                fi
                if $SERVERDIR/$SERVERSTART $SERVERCOMMANDLINE 1>> $LOG 2>&1 & sleep 3 ; then
                        pid=`ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game { print $2 } ; END {exit status}'`
                        echo ${pid} > $PIDFILE
                        if [ -f "$PIDFILE" ] && ps h `cat "$PIDFILE"` >/dev/null; then
                        echo -e "....Gestartet!"
                        exit 0
                else
                        echo -e "....Konnte nicht gestartet werden. Ueberpruefe die Log-Datei oder starte mit debug!"
                        exit 1
                        fi
                else
                        echo -e "Fehler!"
                fi
        fi
;;
stop)
        echo -n "Stoppe $ACCID dedicated server: "
                if ! ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        echo -e "Server laeuft nicht oder ist abgestuerzt."
                else
                        pid=`ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game { print $2 } ; END {exit status}'`
                        echo ${pid} > $PIDFILE
                        kill -9 `cat $PIDFILE`
                        if ! ps -ef |grep $SERVERDIR/$SERVERSTART|awk -F" " -v game=$SERVERDIR/$SERVERSTART 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        rm -f $PIDFILE
                                    echo -e "gestoppt"
                                    exit 0
                        else
                                echo -e "Kann Server nicht stoppen oder er ist abgestuerzt"
                        fi
                fi
;;
status)
        echo -n "`date +"%Y-%m-%d %H:%M:%S"` Check $ACCID dedicated server status: "
                if ! ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        echo -e "Server laeuft nicht oder ist abgestuerzt... Starte den Server neu, Moment bitte"
                        $0 start
                else
                        echo -e "Server laeuft, keine Aenderung."
                fi
;;
check)
        echo -n "Check $ACCID dedicated server status: "
                if ! ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        echo -e "offline"
                else
                        echo -e "online"
        fi
;;
restart)
        echo -e "Neustart $ACCID dedicated server... "
                $0 stop && sleep 3 && $0 start
;;
debug)
        echo -n "Starting debug mode for $ACCID dedicated server: "
                if ps -ef |grep "$SERVEREXE $SERVERCOMMANDLINE"|awk -F" " -v game=$SERVEREXE 'BEGIN {status=1} ; $8 == game {status=0} ; END {exit status}' ; then
                        echo -e "already active"
                        exit 3
                else
                        echo "--DEBUG will appear on screen!"
                        echo "--Hit CTRL+C to kill the server!"
                        $SERVERDIR/$SERVERSTART $SERVERCOMMANDLINE
                fi
;;
*)
        echo "Usage: $0 {start|stop|restart|status|check|debug}"
        exit 1
esac



Seite 1: Einführung, Starten, Einstellungen, Vote, Firewall, Administration
Seite 2: LinuxStartscript
Seite 3: CustomMaps und CustomMutators, Map/GameMode-Voting mit BIA-Vote, Redirect (FastDownload)





Copyright
This tutorial is copyright of its author.
Please do not copy this tutorial without providing a link back to the original here.
Deutsche Übersetzung: Donzi © 2007

Donzi 02.12.2009 11:17

Maps und Mutatoren
Um es Euch wieder einfach zu gestalten, legen wir die zusätzlichen Dinge in bestimmte Ordner, um die Struktur wieder beizubehalten.

- Mutatoren (*.u *.upk) in /ut3/UTGame/Published/CookedPC/Script/
Die ini´s der Mutatoren allerdings nicht.

- Maps (*.ut3, *.upk, *.ini) in /ut3/UTGame/Published/CookedPC/CustomMaps/


Da wir in diesem Guide mit "-configsubdir=" arbeiten, kommen die Settings der einzelnen neuen Mutatoren in den Configurations-Ordner des UT3-Servers. Also alle ini´s ab in den Ordner /ut3/UTGame/Config/iCTF/ für unser Beispiel.

Das gute dabei ist, wollt Ihr mehrere Server starten, mit unterschiedlichen Einstellungen, könnt Ihr die "configsubdir=" verändern und somit auch die ini´s für jeden Server extra einstellen.
Hier mal 2 Bilder:

[sub]3 Config-Ordner für 3 UT3-Server[/sub]
[img]content/images/configsub_01.jpg[/img]

[sub]Inhalt des Beispiel-Config-Ordners iCTF, ohne die normalen ini´s (Bild abgeschnitten).[/sub]
[img]content/images/configsub_02.jpg[/img]



Mapvoting mit den BIA-Vote
Seit Patch 1.3 nicht mehr kompatibel!

Redirection (FastDownload)
Artikel Redirection für Server


Copyright
This tutorial is copyright of its author.
Please do not copy this tutorial without providing a link back to the original here.
Deutsche Übersetzung: Donzi © 2007

scale 18.02.2010 00:21

Frage zu Startzeilen Parameter
 
Eine Startzeile kann ja zum Beispiel so aussehen:

---
Code:

ut3-bin Server WAR-Serenity?Game=UTGameContent.UTOnslaughtGame_Content?GameMode=2?Numplay=8?MaxPlayers=32?NumPublicConnections=32?NumPrivateConnections=0?MinNetPlayers=1?TimeLimit=30?GoalScore=3?BotSkill=4?bIsDedicated=true?bUsesStats=true?ForceRespawn=0?bShouldAdvertise=true?PureServer=1?bIsLanMatch=false?bAllowJoinInProgress=true?AdminName=chef?AdminPassword=chefpasswd -Login=[auchda] -Password=bliblablub -Log=myserver.log -multihome=x.x.x.x -nohomedir -Port=7777
---

Ist es möglich die Parameter in der Startzeile auch in der Config zu verankern?

Also z.B.:

[Engine.GameInfo]
Game=UTGameContent.UTOnslaughtGame_Content
GameMode=2
Numplay=8
MaxPlayers=32 // das steht ja schonn der standard config drin
NumPublicConnections=32
NumPrivateConnections=0
usw.

Ich geh jetzt mal davon aus das dies mit den Parametern die mit Fragezeichen getrennt sind geht und die auch in Kategorie [Engine.GameInfo] kommen.
Wie schaut das mit den Parametern aus:

Login=
Password=
Log=
multihome=x.x.x.x
nohomedir=
Port=

Sind die zwingend über die Startzeile zu handeln oder kann man dei wo reinpacken in die config? Wenn ja wo? Auch [Engine.GameInfo] ?

Gruß Tom

//Edit Donzi
Bitte CODE verwenden!

jeppo 18.02.2010 07:54

in der zeit wo ich brauchen würde die frage hier zu erstellen hätte ich das ganze schon längst ausprobiert.

startzeile hat vorrang vor ini oder wars andersrum?

ja/nein

Donzi 18.02.2010 09:13

Startzeile geht vor ini, aber nur beim Start.
Danach ist die ini massgebend.

Wenn in der Startzeile die entsprechenden Parameter fehlen, wird automatisch die Eintragung der ini´s (UTEngine.ini und UTGame.ini) genommen.

Folgende Para´s sind NICHT in der ini zu verankern:
PureServer
Numplay
-configsubdir=
-login=
-password=
-multihome=
-log=
-nohomedir
-unattended


Beispiel einer gekürzten Startzeile:
Code:

ut3 server CTF-[UTzone]-Switchback?Mutator=?PureServer=1?Numplay=0 -configsubdir=xx -login=xx -password=xx -multihome=xx -log=xx -nohomedir -unattended

scale 18.02.2010 10:15

Danke Donzi für die fundierte Antwort. Hat mir weiter geholfen das ganze zu verstehen.
Klasse Support habt ihr hier!

scale 14.03.2010 22:30

Zitat:

Zitat von Donzi (Beitrag 3855)

Folgende Para´s sind NICHT in der ini zu verankern:
PureServer
Numplay
-configsubdir=
-login=
-password=
-multihome=
-log=
-nohomedir
-unattended



Gibt es irgendwo Infos von den Parameter die nicht zwingend in der Startline sein müssen, in welcher Sektion der inis die rein müssten?

Donzi 15.03.2010 09:15

Montag morgen, ich raff die Frage noch net ^^

Ich versuchs ma:

UTEngine.ini
+/- Klappen
Code:

[URL]
Protocol=unreal
Name=Player
Map=UTFrontEnd.ut3
LocalMap=UTFrontEnd.ut3
TransitionMap=EnvyEntry.ut3
MapExt=ut3
EXEName=UTGame.exe
DebugEXEName=DEBUG-UTGame.exe
SaveExt=usa
Port=7788
GameName=Unreal Tournament 3
GameNameShort=UT3

Code:

[OnlineSubsystemGameSpy.OnlineSubsystemGameSpy]
bHasGameSpyAccount=True
EncryptedProductKey=NotForShip
QueryPort=6788
MaxRemoteTalkers=16
bIsUsingSpeechRecognition=True
MaxLocalTalkers=1
StunServerAddress=stun.xten.com
StunServerAddress=stunserver.org




UTGame.ini
+/- Klappen
Code:

[Engine.GameInfo]
DefaultGame=UTGameContent.UTCTFGame_Content
DefaultServerGame=UTGameContent.UTCTFGame_Content
bAdminCanPause=False
MaxPlayers=12
GameDifficulty=2.000000
bChangeLevels=True
MaxSpectators=5
MaxIdleTime=0.000000
MaxTimeMargin=0.000000
TimeMarginSlack=1.350000
MinTimeMargin=-1.000000
PlayerControllerClassName=UTGame.UTPlayerController
bKickLiveIdlers=True
ArbitrationHandshakeTimeout=0.000000
GoreLevel=0
bKickMissingCDHashKeys=True
TimeToWaitForHashKey=20.000000
MaxClientTravelTime=60.000000
GoalScore=60
MaxLives=0
TimeLimit=20
TotalNetBandwidth=15000
MaxDynamicBandwidth=7000
MinDynamicBandwidth=4000
bAllowSplitscreenPlayers=False
MaxChildConnections=1
RestartWait=55
bForceNoSeamlessTravel=False




Es sind eigentlich alle Parameter in den Ini´s schon drin, ausser die unwichtigen wie:
GameMode, NumPublicConnections, NumPrivateConnections, bAllowJoinInProgress

Nicht in den ini´s:
Botskill, bIsDedicated, bUsesStats,



Wir sind nie grossartig auf Botskill eingegangen, daher würde ich da den WebAdmin empfehlen.
Dedicated ist nur von nöten bei einem WindowsServer, Stats naja sind eh nicht aussagekräftig ^^ wenn man nicht UTStatsDB benutzt.
GameMode ist auch nicht mehr sooo wichtig, da es durch den Gametype geregelt wird.
Der Rest der fehlt, braucht man eh nicht.

Hoffe mein Montagmorgentlicher Erguss konnte helfen :D

scale 15.03.2010 12:20

Dein Erguss war spitzenmässig :D
Bringt mich gleich zu den nächsten Fragen, hehehe

Kann man die unwichtigen bzw. die noch nicht drin sind auch in die ini packen? Und wenn ja ist da die Frage welche Sektion? Hab da schon google bemüht. Hab keinerlei Info dazu gefunden. Ist wie ne blackbox :(

Ich will unbedingt versuchen so viel wie möglich aus der Startline in die config zu legen. Im zweifelsfall sieht das nachher so aus für alle Parameter die Sinn machen einstellen zu können:
http://cgl.clanmeets.de?dl=3bd6e6632...a31a64a561a9fd


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:42 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2020, vBulletin Solutions, Inc.
CopyRight-Licence © 2000 - 2018 by UTzone.de