Posts by gamerzhost.de

Aktuell führen wir noch einige Anpassungen durch, das Forum wurde jedoch bereits live geschaltet.

    Geht mit Sicherheit, ich habe mich aber nie damit beschäftig, da die Methode völlig ausreichend ist. Wer mit Batches arbeitet sollte sich auch mit call, goto und ähnlichen beschäftigen, damit kann man äußerst sinnvolle funktionen bauen. Wie Steamupdater, Auto-Modupdater etc.

    Da es immer wieder Beiträge gibt, wo User mit Windows haben, anbei mal die wichtigsten Sachen.



    Wie setze ich in einer Batch Parameter


    somit kann ich den Gameserver mit z.b.



    start.bat gsip gsport gsplayer , %var1% ist dann die IP, %var2% der Port, %var3% die Playerzahl usw.




    Wie lese ich die Pid eines Gameserverprozesses aus:



    Beispiel für Ark:

    Code
    SET line=%var%
      SETLOCAL ENABLEDELAYEDEXPANSION
      ECHO !line:\=\\
      ENDLOCAL
      set vara=!line:\=\\!
    for /f "usebackq tokens=2 delims==" %%a in (`wmic process where ^(ExecutablePath^="%vara%ShooterGame\\Binaries\\Win64\\ShooterGameServer.exe"^) get processid /value`) do (
    set PID=%%a   
    )


    Wie stoppe ich den Gameserver anhand der oben gewonnenen PID:



    Es gibt 3 Möglichkeiten:




    Code
    TASKKILL /PID %PID%


    oder

    Code
    TASKKILL /PID %PID% /F


    oder

    Code
    SET line=%var%
      SETLOCAL ENABLEDELAYEDEXPANSION
      ECHO !line:\=\\
      ENDLOCAL
      set vara=!line:\=\\!
    WMIC PROCESS WHERE ExecutablePath="%vara%ShooterGame\\Binaries\\Win64\\ShooterGameServer.exe" delete


    Da Spiele wie Ark oder Rust beim beenden noch Daten in die Map schreiben müssen sollte erst die Methode 1 gewählt werden. Danach macht man mit

    Code
    ping -n 5 127.0.0.1 > NUL


    5 Sekunden Pause und schiebt um sicher zu gehen noch eine der letzten beiden Möglichkeiten hinterher.




    Start eines Gameservers:

    Code
    set /A var9=%var2% + 1    // Queryport berechnen
    set /A var10=%var2% + 5  //Rconport berechnen
    cd %var%
    start /REALTIME ShooterGameServer.exe "%var%ShooterGame\ShooterGame.uproject" "TheCenter?MULTIHOME=%var1%?Port=%var2%?QueryPort=%var9%?RCONPort=%var10%?MaxPlayers=%var3%?bRawSockets?listen?" -nosteamclient -servergamelog  -game -server -log
    Quote

    Das einzigste was wir als "kleine und mittlere Hoster" bewirken ist einen gewissen Preisdruck bei den großen das war's dann aber auch...


    Der Preisdruck, das war mal, schaust Du dir die aktuellen Preise an, machen die den....., Man sollte sich die Frage stellen ob es am Preis liegt. Schaust Du dir unsere Preise an, sicherlich nicht.

    Quote

    hast du denn am Release etwas vom Kuchen ab bekommen???


    jap, jede Menge

    Quote

    Ob man die Server Versionen bei einem update restarten muss? ich kann es nicht sagen aber ich wage es zu bezweifeln das man diese bei fast jedem update neu starten muss...




    Vielleicht kannst du ja was dazu sagen? sofern du Windows in der Server Version verwendest...


    Es gibt Fernwartungstools, welche den Job machen und das in der Nacht. Wird Neustart Notwendig, kann der in der Nacht passieren, hat man dazu die Startscripte so aufgebaut, das diese bei Start einen Link im Autostart setzen und beim Stoppen wieder löschen, merken es die meissten Kunden auch kaum.

    Nun, ich weiss nicht, hier hört man immer nur noch dumme Sprüche wie

    Quote

    Windows gehört aus dem Serversegment gebannt,




    Quote

    Ark gibt es doch auf Linux ;) läuft mmn sogar weit performanter Linux




    Quote

    Spontan fällt mir jetzt nichts ein wo Windows im Serverbetrieb nützlich wäre, der Grund ist halt Updates = Restart ∞



    Nun, wer Umsatz mitnehmen will muss bei den Early Access Games immer am besten ab den ersten Tagen mit dabei sein, nun und das kannst Du fasst nur mit einen Windows Deamon. Habt Ihr mal erlebt wenn in einer Woche mehrere hundert Bestellungen für nur ein Spiel eintreffen, nur weil das Spiel gerade neu ist, die Spieler heiß drauf sind und der Preis die zweite Geige spielt. Nein ? Dann schafft Euch mal nen Windows Deamon an. So gebt Ihr den guten Umsatz freiwillig an Nitrado, G-Portal und die Gameserver United GMBH ab.

    Laut einer guten Quelle hat einer der 3 am Ark Release Wochenende 1500 Ark Server gebucht. Du auch mit Linux GenXRoad ? Sorry für die Ironie, der Thread schreit gerade danach.

    Schnipsel davon entstammen von einen alten Script von uns, andere wieder von anderen. Lass den Blödsinn mit der minecraft_Server.pid weg, wenn Du mit java -Xmx"$RAM"M -Xms"$RAM"M -jar server.jar nogui $IP $PORT starten tust




    die $IP $PORT am Ende der Befehlszeile haben den Sinn das wir so killen können:

    Code
    echo Alte MinecraftServer Prozesse werden gekillt
    while [ -n "$(ps ax | grep $IP | grep java | grep $PORT | awk '{print $1}')" ];
    do
    echo Kill Prozess $(ps ax | grep $IP | grep java | grep $PORT | awk '{print $1}')
    kill -9 $(ps ax | grep $IP | grep java | grep $PORT | awk '{print $1}')
    done


    Ahso und einmal reicht.

    Hehe, da lernt man wieder einmal das man, wenn man etwas verkaufen möchte auch in Vorkasse gehen muss, zumindest das man das Spiel wenigstens besitzen sollte`g.

    Aber die Windows Version ist trotzdem frei als Dedi und läuft auch wesentlich stabiler.

    Ich bin grad auch über das Problem gestolpert, einfach

    chmod 440 /etc/proftpd/ftpd.passwd && chown proftpd.root /etc/proftpd/ftpd.passwd




    bringt die Lösung, manchmal machen die Zeilen schon Sinn

    für Legacy


    Für Release


    Ich erarbeite gerade einige Basis Images inkl. Steamcmd Updater, diese werden dann zum Download für Deamonnutzer frei gegeben.

    laufen tat es auch, nur konnte keiner joinen.

    Die start.sh hat das Problem das sobald jemand z.b. den Port entfernt inklusive dem Leerzeichen, hatte die config 2 ports drinne stehen, genauso auch mit binds und maxplayer. Liegt einfach daran das sich das Scipt an "port ", "bind " usw. orientiert.