Vorgehensweise zum Anpassen der Saintly DayZ Datenbank

  • Hallo,


    da es in letzter Zeit einige Fragen zum Anpassen der Saintly DayZ Datenbank gab, möchte ich euch mit dieser Anleitung eine kleine Einstiegshilfe geben. Die Anleitung wird längst nicht alles erklären (können), aber sie wird euch dabei behilflich sein den richtigen Pfad einzuschlagen.


    Bevor ihr mit der Anleitung fortfahrt, solltet ihr folgende Vorbereitungen treffen:


    1) Stopt den Gameserver im Webinterface
    2) Ladet folgende Dateien per FTP von eurem Gameserver herunter:

    • Die ibdata1 Datei (server_setup\xampp\mysql\data)
    • Das xampp.rar Archiv (server_setup)

    3) Installiert die folgenden Programme

    • HeidiSQL
    • WinRAR (oder ein anderes Archivierungspgramm welches das RAR Format unterstützt)


    Lokalen MySQL Server einrichten

    • Erstellt euch auf eurem Desktop einen neuen Ordner Namens "gsdb" und öffnet danach das xampp.rar Archiv
    • Entpackt nun den "mysql" Ordner (den Ordner selbst, nicht nur dessen Inhalt) und die beiden .bat Dateien "mysql_start.bat" und "mysql_stop.bat" aus dem xampp.rar Archiv in den zuvor erstellten "gsdb" Ordner
    • Kopiert eure "ibdata1" Datei nach "gsdb/mysql/data" und überschreibt die bereits vorhandene Datei
    • Löscht in "gsdb/mysql/data" den "dayz" Ordner
    • Ladet die Ordner "dayz" und "lingors" (lingors ignorieren, wenn er sich nicht auf eurem Gameserver befindet) per FTP von eurem Gameserver (server_setup/xampp/mysql/data) in "gsdb/mysql/data" herunter
    • Startet euren lokalen MySQL Server mit einem Doppelklick auf die "mysql_start.bat" (gsdb)


    Da das xampp.rar Archiv nicht länger von uns benötigt wird, könnt ihr dieses nun schließen. Den "gsdb" Ordner benötigen wir vorerst
    auch nicht mehr und minimieren ihn daher.


    Verbindungsaufbau mit HeidiSQL


    Startet HeidiSQL, klickt auf den "New"-Button und verwendet folgende Verbindungsdaten:

    • Hostname / IP: 127.0.0.1
    • Username: dayz
    • Password: 123456
    • Database: dayz

    Speichert die Verbindung mit einem Klick auf den "Save"-Button ab und klickt auf den "Open"-Button.



    Anmerkung für Neukunden ab dem 10.11.2012:


    Die oben genannten Daten beziehen sich auf die Chernarus-Datenbank, Lingor-Server verwenden ab dem 10.11.2012 ihre eigene Datenbank:

    • Hostname / IP: 127.0.0.1
    • Username: lingors
    • Password: 123456
    • Database: lingors


    Die Datenbanktabellen


    Nachdem ihr die Verbindung mit HeidiSQL zu eurer lokalen Datenbank hergestellt habt, seht ihr nun eine Auflistung aller sich
    darin befindlichen Scripte und Tabellen. Mit einem Doppelklick auf den jeweiligen Script / jeweilige Tabelle öffnet ihr ihn/sie
    und könnt euch die darin gespeicherten Daten anschauen oder sie euren Wünschen entsprechend anpassen.


    Da die Scripte für diese Anleitung unwichtig sind, fasse ich mich (mehr oder weniger) kurz und gebe euch einen Überblick über
    die wichtigsten Tabellen.


    • instances


    Die "instances"-Tabelle ist wohl mit eine der interessantesten Tabellen für Admins. Diese Tabelle bietet Admins nicht nur die
    Möglichkeit ihren Server mit einer bestimmten Timezone (Zeitzone) starten zu lassen, sondern auch, wenn sie dies wünschen, ein
    Loadout für neue Spieler zu erstellen. Das Loadout definiert quasi ALLE Gegenstände, welche für jeden neuen Spieler vom Einstieg
    an zur Verfügung stehen sollen.


    Wer seinen Server mit BEC bzw. dem Scheduler-System neustartet, sollte bei der Timezone allerdings auch folgendes berücksichtigen:

    • 1 Saintly DayZ Server kann immer nur eine instance Id besitzen (standardmäßig ist dies die 1)
    • Der Server wird immer mit der eingestellten Timezone gestartet. Startet er um 6:00 Uhr frühs mit der Timezone -6 neu, so ist es im Spiel 24:00 Uhr nachts. Wer also einen Day Only Server haben möchte, sollte sich genau überlegen welche Timezone er verwendet und wann und wie oft er den Server neustarten lässt
    • main

    Die "main"-Tabelle beinhaltet alle Spielerbezogenen Daten, u.a. eine einzigartige Id mit der ein Spieler identifiziert werden kann, sein Name, Inventar, Rucksack, Gesundheitsstatus, angelegte Waffen, Outfit usw. usw..


    • objects


    Die "objects"-Tabelle beinhaltet die Daten (Koordinaten, Inventar, Zustände etc.) aller gespawnten Fahrzeuge und Objekte auf eurem Gameserver. Möchtet ihr ein Fahrzeug per Hand in der Datenbank modifizieren, so habt ihr hier die Möglichkeit dazu.


    • spawns


    Die "spawns"-Tabelle kann man als eine Art Spawn-Template für den vehicles.pl Script verstehen. Dieser Script greift auf die Einträge dieser Tabelle zu, wählt zufällig mehrere Einträge aus und verwendet ihre Daten dazu, um euch ein Fahrzeug (mit zufällig gewählten Zuständen (mit 4 Rädern, ohne Räder, 3 Räder, 2 Räder aber beschädigt, 50% Sprit etc.)) in der "objects"-Tabelle einzutragen.


    Inwiefern ein Zusammenhang zwischen dieser und der "objects"-Tabelle in Hinsicht auf verlinkung besteht, kann ich zum jetzigen Zeitpunkt (noch) nicht genau sagen. Da der vehicle.py Script zerstörte Fahrzeuge automatisch beim nächsten Restart löscht und der "objects"-Tabelle auch automatisch neue Einträge hinzufügt, dürfte es eigentlich keinen wirklich bedeutenten Zusammenhang geben.


    Ok, ok, und wie kriege ich die angepasste Datenbank nun wieder auf meinen Server - Fragezeichen


    Sobald ihr die Datenbank euren Wünschen entsprechend angepasst habt, beendet ihr euren lokalen MySQL Server durch einen Doppelklick auf die "mysql_stop.bat" und arbeitet die nun folgenden Punkte ab:

    • Erstellt ein Backup der sich momentan auf dem Gameserver befindlichen ibdata1 Datei (server_setup/xampp/mysql/data)
    • Ladet die angepasste ibdata1 Datei (gsdb/mysql/data) per FTP wieder auf euren Gameserver hoch (server_setup/xampp/mysq /data)
    • Startet euren Gameserver neu



    Das wars dann auch schon!


    Anmerkung: Zum jetzigen Zeitpunkt müsst ihr diese Schritte leider immer wiederholen, wenn ihr Änderungen an eurer Datenbank vornehmen wollt.


    Es grüßt


    Naseweis

  • Wenn ich das ganze richtig verstanden hab, kann ich bei meinem offiziellen DayZ Hive Server die Fahrzeuge(wie ich sie haben möchte "kaputt/komplett heile") Spawnen lassen?


    Kann ich auch bestimmen wieviele Fahrzeuge spawnen?




    Ist das ganze denn rechtlich von DayZ abgesegnet? Bleibt mein Server dann "Whitelistet"?


    MfG.

  • Nein, mit offiziellen DayZ Servern ist das nicht möglich.


    Aber ja, auf private Hive Servern wie z.B. Saintly DayZ ist das wie du es beschrieben hast möglich. Ja, auch die Anzahl der Fahrzeuge ist änderbar. Entweder über eine kleine Änderung am vehicles.pl Script oder per direkten Datenbankeintrag in der objects Tabelle.

  • Dann mal eine Frage an Gamerzhost, kann ich meinen DayZ Server umstellen auf einen Privat Hive Server? Wenn ja, kommen da von eurer seite noch zusätzliche kosten auf mich zu? Und ist der Server dann noch für andere Spieler sichtbar?

  • Wie im Ticket schon geschrieben und als allgemeine Information für andere Kunden:


    Nein, es entstehen dadurch keine weitere kosten. Es ist jederzeit möglich den public DayZ Server auf private Hive umzustellen. Dazu setzt ihr im Webinterface bei den Startwerten einfach ein Häkchen bei "Mod starten" und wählt danach eine von zwei möglichen Mods aus:


    - privat (Chernarus)
    - lingor (Lingor Island)


    Beachten solltet ihr dabei allerdings auch, dass ihr im Datei Editor die entsprechenden Server Configs (server_config_lingor.cfg oder server_config_private.cfg) anpasst.


    Bei Lingor-Servern sollte in der Config noch die reportingIP auf "arma2oapc.master.gamespy.com" gesetzt werden, um den Server für andere Spieler sichtbar zu machen:


    reportingIP = "arma2oapc.master.gamespy.com";


    Gruß


    Naseweis

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!