23. März 2024

So erstellen Sie einen privaten WoW-Server (mit TrinityCore)

Hallo zusammen! Ich bin von 2007 bis 2011 Lucas- und World of Warcraft-Spieler und habe TBC und WotLK geliebt. Leider habe ich WoW 2012 gelöscht und bin nie zurückgekommen ... Na ja, bis heute!

In diesem Beitrag, Ich werde einen privaten Server für World of Warcraft (3.3.5a) basierend auf TrinityCore erstellen.
Zeitaufwand: 30-60 Min.

Was ist TrinityCore?

TrinityCore-Logo

TrinityCore ist ein Open-Source-Projekt, ein Tool, das den WoW Blizzard-Server emuliert.

Sie können TrinityCore über die Github-Seite herunterladen: https://github.com/TrinityCore/TrinityCore

Und ja, ich habe vor, ein Repack (Serverdateien) zu erstellen, mit dem Sie ganz einfach Ihren eigenen Server einrichten können. Es wird das Leben einfacher machen.

Mein PC-Setup, das ich verwende

Für das Setup nutze ich meine lokale Hardware. Unter Windows ist es einfacher, aber Linux wird auch unterstützt. In diesem Tutorial verwenden wir Windows.
Wenn Sie einen Server unter Linux einrichten möchten, schauen Sie sich dieses Tutorial an: https://trinitycore.info/install/requirements/linux

Meine Hardware

  • RTX 3080-GPU
  • AMD Ryzen 7 5800X 8-Core-CPU
  • 32 GB RAM

Sie benötigen nicht so viel Hardware-Leistung, aber sicher ist sicher.

Beginnen Sie mit der Einrichtung des Servers

Das Erstellen eines privaten World of Warcraft (WoW)-Servers mit TrinityCore erfordert ein gutes Verständnis für Datenbanken und Serververwaltung. Nachfolgend finden Sie eine grundlegende Übersicht darüber, wie Sie mit TrinityCore einen privaten WoW-Server einrichten können. Denken Sie daran, dass der Betrieb eines privaten Servers für World of Warcraft gegen die Nutzungsbedingungen von Blizzard verstößt und dieses Tutorial nur zu Bildungszwecken dient.

Voraussetzungen

  1. Wissensanforderungen: Grundkenntnisse in SQL-Datenbanken, Befehlszeilenoperationen
  2. Software Anforderungen:
  3. Hardware-Anforderungen: Ein einigermaßen leistungsstarker Computer zum Hosten des Servers. Die Spezifikationen hängen von der Spielerauslastung ab.

Einrichten der Datenbank

Installieren Sie MySQL/MariaDB: Installieren Sie ein Datenbankverwaltungssystem wie MySQL oder MariaDB (denken Sie daran, wir verwenden Xampp). Erstellen Sie dann eine neue Datenbank.

Starten Sie den MySQL-Dienst:

Bild
So sieht XAMPP aus

Wenn es grün ist und Sie „Stop“ sehen, ist es gestartet. Großartig! Das bedeutet, dass Ihre Datenbank jetzt verfügbar ist EINGESCHALTET.

Laden Sie ein Datenbankverwaltungstool herunter: Wir werden verwenden HeidiSQL, da es völlig kostenlos erhältlich ist.

Bild 1
So sieht HeidiSQL aus

Geben Sie nun diese Details ein (dies sind die Standardwerte für XAMPP):

  • Hostname: localhost (da sich die Datenbank auf Ihrem Computer befindet)
  • Benutzer: root
  • Passwort: halte das leer!

Drücken Sie „VERBINDEN“ (in meinem Bild: Öffnen – ich bin Deutscher)… und Sie sehen die Datenbank:

Bild 2

Jetzt müssen wir eine Tabelle für die World of Warcraft-Datenbank erstellen, die unser TrinityCore-Server verwenden wird. Ich zeige Ihnen, wie das funktioniert:

Bild 3

Klicken Sie mit der rechten Maustaste auf Ihre Datenbank (siehe roter Pfeil) und gehen Sie auf „Neu erstellen – Datenbank“. Nennen Sie es Trinitycore und drücken Sie OK:

Bild 4

Sollte jetzt so aussehen:

Bild 5

Klicken Sie nun auf Trinitycore und Ihre Datenbank ist … leer. Noch ist nichts drin. Dies wird sich später ändern.

Installieren Sie CMake und einen C++-Compiler: Diese sind für die Erstellung von TrinityCore aus dem Quellcode erforderlich.

  1. Laden Sie CMake herunter und installieren Sie es:
    • Besuche den CMake-Downloadseite und laden Sie das Windows-Installationsprogramm herunter.
    • Führen Sie das heruntergeladene Installationsprogramm aus.
    • Befolgen Sie die Anweisungen des Installationsassistenten.
    • Stellen Sie sicher, dass Sie während des Installationsvorgangs „CMMake zum Systempfad für alle Benutzer hinzufügen“ auswählen.
  2. Laden Sie Visual Studio herunter und installieren Sie es:
    • Besuche den Visual Studio-Downloadseite.
    • Laden Sie das Visual Studio Community Edition-Installationsprogramm herunter.
    • Führen Sie das Installationsprogramm aus.
    • Wählen Sie bei der Installation den Workload „Desktop-Entwicklung mit C++“ aus.
    • Stellen Sie sicher, dass Sie die optionalen Komponenten auswählen, die für die C++-Entwicklung erforderlich sind.
    • Schließen Sie den Installationsvorgang ab.

Laden Sie TrinityCore herunter und erstellen Sie es

  1. Klonen Sie das TrinityCore-Repository:
    • Öffnen Sie die Eingabeaufforderung oder PowerShell.
    • Navigieren Sie zu dem Verzeichnis, in das Sie das TrinityCore-Repository klonen möchten.
    • Verwenden Sie den folgenden Befehl, um das Repository zu klonen:
Git-Klon https://github.com/TrinityCore/TrinityCore.git

Generieren Sie Build-Dateien mit CMake:

  • Öffnen Sie die Eingabeaufforderung oder PowerShell.
  • Navigieren Sie zum TrinityCore-Verzeichnis, das Sie gerade geklont haben.
  • Erstellen Sie im TrinityCore-Verzeichnis ein neues Verzeichnis mit dem Namen „build“. Hier werden die Build-Dateien generiert.
  • Navigieren Sie in das Verzeichnis „build“.
  • Führen Sie CMake aus, um die Build-Dateien zu generieren. Sie geben den Visual Studio-Generator an
  1. Erstellen Sie TrinityCore:
    • Öffnen Sie die generierte Lösungsdatei (TrinityCore.sln) in Visual Studio.
    • Erstellen Sie die Lösung, indem Sie im Visual Studio-Menü „Erstellen“ > „Lösung erstellen“ auswählen.

Nachdem TrinityCore erfolgreich erstellt wurde, können Sie Ihren privaten Server konfigurieren und ausführen.

Laden Sie Boost herunter und installieren Sie es

  1. Schub: Abhängig von Ihrer Boost-Version benötigen Sie möglicherweise eine neuere Version von CMake. Hier ein Beispiel: Boost 1.80 erfordert CMake 3.24.2 (mit 3.24.1 werden Warnungen angezeigt).
    • Laden Sie die vorgefertigte Windows-Binärdatei für Visual Studio 2022 (oder höher) herunter.
    • Hier ist der Link für die Mindestversion: 64bit Boost 1.78.0
    • Wenn Sie eine höhere Boost-Version bevorzugen, prüfen Sie dies dieser Link. Beachten Sie, dass derzeit nicht alle Versionen von TrinityCore (mindestens 1.78) oder CMake unterstützt werden (z. B. löst CMake 3.24.1 mit Boost 1.80 CMake-Fehler aus).
    • Installieren Sie das Paket am Standardspeicherort (normalerweise C:\local\boost_1_XX_0\).
    • Fügen Sie der Variablen „System“ mit dem Namen eine Umgebungsvariable hinzu BOOST_ROOT mit dem Wert Ihres Boost-Installationsverzeichnisses, z. B. C:/local/boost_1_73_0. Es ist wichtig, „/“ und nicht „“ zu verwenden, wenn Sie auf das Verzeichnis verweisen. Stellen Sie sicher, dass am Ende des Pfads kein Schrägstrich steht. Wenn Sie auf Probleme stoßen, fügen Sie dieselbe Variable auch im Abschnitt „USER“-Variablen hinzu.
  2. CMake:
    • Laden Sie die Datei „Neueste Version – Windows-x86_64.msi“ herunter und installieren Sie sie. Laden Sie NIEMALS die RC-Versionen (Release Candidate) herunter.
    Hier herunterladen: https://github.com/Kitware/CMake/releases/download/v3.28.3/cmake-3.28.3-windows-x86_64.msi
    • Wählen Sie „Microsoft Visual Studio 2022“ und nicht die Win32-Plattform.
    Hinweis: Wenn Sie einen anderen MySQL-Server wie Wampserver mit enthaltenem MySQL oder einer anderen Software verwenden, müssen Sie CMake auf dieses Verzeichnis verweisen (ähnlich wie bei Boost). Fügen Sie der Variablen „System“ mit dem Namen eine Umgebungsvariable hinzu MYSQL_ROOT mit dem Wert Ihres MySQL-Installationsverzeichnisses, z. B. c:/wamp/bin/mysql/mysql5.7.19. Denken Sie daran, „/“ und nicht „“ zu verwenden, wenn Sie auf das Verzeichnis zeigen. (Die Verwendung gebündelter MySQL-Server erfolgt auf eigenes Risiko und wird nicht unterstützt.)
  3. MySQL-Entwicklungsdateien:
    • Diese Dateien werden normalerweise mit MySQL Server geliefert. Suchen Sie im Programmdateiverzeichnis danach: MySQL\MySQL Server 8.X\lib Und MySQL\MySQL Server 8.X\include.
  4. OpenSSL:
    • Laden Sie die 64-Bit-Version herunter. - Hier: https://slproweb.com/products/Win32OpenSSL.html
    • Wählen Sie abhängig von der von Ihnen installierten MySQL-Version eine kompatible OpenSSL-Version aus
      • Verwenden Sie für MySQL 8.0.34 und höher OpenSSL 3.
      • Verwenden Sie für MySQL 8.0 bis 8.0.33 OpenSSL 1.1.1.
    • Finden Sie die 64-Bit-Version, indem Sie das neueste Win64 OpenSSL suchen, das NICHT die „Light“-Version ist. Beispiel: Win64 OpenSSL v3.1.2.
    • Wählen Sie bei der Installation von OpenSSL „Das Verzeichnis der OpenSSL-Binärdateien (/bin)“ (NICHT „Das Windows-Systemverzeichnis“), wenn Sie die Wahl haben, wohin die OpenSSL-DLLs kopiert werden sollen. Diese DLLs müssen für die Core-Installation leicht zu finden sein.

Wählen Sie bei der Installation von OpenSSL Das OpenSSL-Binärverzeichnis (/bin). (NICHT „Das Windows-Systemverzeichnis“)
wenn Sie die Wahl haben, wohin die OpenSSL-DLLs kopiert werden sollen. Diese DLLs müssen für die Core-Installation leicht zu finden sein:

Bild

(Optional) Wenn Sie verschiedene PCs zum Kompilieren/Ausführen von Trinity verwenden, installieren Sie eines der folgenden Pakete auf Ihrem Server-PC, um fehlende Abhängigkeiten zu vermeiden (abhängig von Ihrer Visual Studio-Version und Ihrem Server-PC-Betriebssystem):

  • Microsoft Visual C++ 2022 Redistributable Package.

Hinweis: TrinityCore kann nicht unter Windows XP, Windows Server 2003 oder Windows Vista ausgeführt werden.

Windows Core-Installation

Klonen eines Repos über Git Gui
  1. Die Quelle ziehen:
    • Erstellen Sie ein Verzeichnis, in das die Core-Dateien abgerufen werden, zum Beispiel: C:\Trinity.
    • Klicken Sie mit der rechten Maustaste auf das Verzeichnis und wählen Sie Git Extensions -> Clone (oder bei neueren Versionen: GitExt Clone…).
    • Füllen Sie die Daten wie folgt aus:
      • Für 3.3.5 (WotLK-Client): Dadurch wird der 3.3.5a-Zweig geklont, empfohlen für Einsteiger und diejenigen, die spielbare Inhalte wünschen.
      • Für Master (derzeit Dragonflight-Client): Dadurch wird der Master-Zweig geklont. Beachten Sie, dass dies für den Anfang NICHT empfohlen wird, da die meisten Inhalte nach 3.3.5a nicht mehr bereitgestellt werden.
    • Klicken Sie auf Klonen. Innerhalb weniger Minuten werden alle TrinityCore-Quelldateien in das Verzeichnis gezogen C:\Trinity.
    Hinweis: Wenn Sie keinen Zweig angeben, ruft Git standardmäßig den Master ab.
  2. Konfigurieren und Generieren von Visual C++-Lösungen mit CMake:
    • Bevor Sie beginnen, erstellen Sie ein leeres Verzeichnis mit dem Namen Build. In diesem Beispiel verwenden wir C:\Build.
    • Klicken Sie auf Quelle durchsuchen… und wählen Sie das Quellverzeichnis aus (C:\Trinity).
    • Klicken Sie auf Build durchsuchen… und wählen Sie das Build-Verzeichnis aus (C:\Build).
    • Klicken Sie auf Konfigurieren.
    • Stellen Sie sicher, dass „Native Standard-Compiler verwenden“ aktiviert ist (sollte standardmäßig aktiviert sein).
    • Wählen Sie im Dropdown-Menü im Abschnitt „Erforderliche Software“ die Version des Compilers aus, die Sie heruntergeladen haben. Wählen Sie unbedingt die Win64-Version, wenn Sie an einer 64-Bit-Kompilierung arbeiten.
    • Klicken Sie auf Fertig stellen.
    • Stellen Sie sicher, dass „Extras“ bereits aktiviert ist. Dadurch werden die Kartenextraktoren kompiliert, die später im Setup benötigt werden. Im Master-Zweig (bis zum 6.2.4-Tag) wird dadurch auch „connection_patcher.exe“ generiert.
    • Klicken Sie erneut auf Konfigurieren. Solange im Protokollfenster Fehler rot angezeigt werden, müssen Sie Ihre Parameter überprüfen und erneut darauf klicken.
    • Klicken Sie auf „Generieren“. Dadurch werden die ausgewählten Build-Dateien in Ihrem installiert C:\Build Ordner.
  3. Zusammenstellung der Quelle:
    • Navigieren Sie in Visual Studio zu Ihrem C:\Build Ordner und öffnen Sie ihn TrinityCore.sln mit Visual Studio Community. Alternativ können Sie die Schaltfläche [Projekt öffnen] im CMake-Fenster verwenden, um die Lösung direkt mit VS zu öffnen.
    • Klicken Sie im Menü oben auf „Build“ und wählen Sie „Configuration Manager“ aus.
    • Legen Sie die aktive Lösungskonfiguration auf RelWithDebInfo fest.
    • Klicken Sie mit der rechten Maustaste auf ALL_BUILD und wählen Sie „Erstellen“ oder gehen Sie zum Menü „Erstellen“ und klicken Sie auf „Lösung neu erstellen“ (Strg+Alt+F7).
    • Wenn auf Ihrer GUI der Projektmappen-Explorer nicht angezeigt wird, klicken Sie auf das Menü „Erstellen“ und wählen Sie „Lösung neu erstellen“ aus.
    • Die Kompilierungszeit variiert von Maschine zu Maschine und dauert normalerweise zwischen 5 und 30 Minuten.
    • Wenn Sie während der Kompilierung aufgefordert werden, „Build-Dateien neu zu laden“, tun Sie dies.
    • Wenn der Build abgeschlossen ist, wird eine Meldung angezeigt, die der folgenden ähnelt (die Zahlen können unterschiedlich sein):vbnetCopy code========== Build: 22 erfolgreich, 0 fehlgeschlagen, 0 aktuell, 1 übersprungen ==========
    • Ihre frisch kompilierten Binärdateien befinden sich im C:\Build\bin\RelWithDebInfo oder C:\Build\bin\Debug Ordner. Diese werden am Ende dieser Anleitung alle zum Betrieb Ihres Servers verwendet.
    Hinweis: PDB-Dateien sind nur vorhanden, wenn Sie im Debug- oder RelWithDebInfo-Modus kompilieren. Dies ist nicht zwingend erforderlich, es wird jedoch empfohlen, den Kern mindestens im RelWithDebInfo-Modus zu kompilieren, um ordnungsgemäße Absturzprotokolle zu erhalten. Um Absturzprotokolle zu melden, ist es ZWINGEND, im Debug- oder RelWithDebInfo-Modus zu kompilieren.Bitte denken Sie daran, das umzubenennen worldserver.conf.dist Und authserver.conf.dist / bnetserver.conf.dist Dateien in worldserver.conf Und authserver.conf / bnetserver.conf bzw., es sei denn, Sie möchten die Konfigurationsdateien einer zuvor kompilierten Version des Kerns behalten.
  4. Die Quelle auf dem neuesten Stand halten:
    • TrinityCore-Entwickler sind ständig damit beschäftigt, den Kern zu reparieren und neue Funktionen hinzuzufügen. Sie können sie jederzeit überprüfen Hier, oder indem Sie sie in Git Extensions anzeigen.
    • Öffnen Sie Ihr TrinityCore-Repository in GitExtensions.
    • Klicken Sie auf den blauen Pfeil.
    • Klicken Sie im neuen Fenster auf Ziehen. Dadurch wird Ihr lokales Repo mit den neuesten Commits aus dem Zweig synchronisiert, den Sie als Standard eingerichtet haben.
    • Jetzt müssen Sie CMake Configure & Generate erneut ausführen, um Ihre Lösungsdateien (.SLN) zu aktualisieren.
    • Kompilieren Sie die heruntergeladene Quelle.
    • Führen Sie den Weltserver aus; Es werden alle neuen SQL-Dateien angewendet (das können Sie in der Konsole sehen).

Erstellen der Kartendateien (mit Tools)

  • Wechseln Sie nun in den Ordner bin/RelWithDebInfo und Sie finden 4 exe-Dateien:

mapextractor.exe
mmaps_generator.exe
vmap4extractor.exe
vmap4assembler.exe

  • Kopieren Sie sie in Ihr WoW-Verzeichnis und führen Sie sie jeweils aus. Zuerst „mapsextractor.exe“, dann „vmap4extractor.exe“, dann „vmap4assembler.exe“, dann „mmaps_generator.exe“ (dies wird einige Zeit dauern)
  • Kopieren Sie die generierten Ordner in Ihr Serververzeichnis

So werden Sie GM/Administrator

Befolgen Sie diese Schritte, um Ihre Berechtigung festzulegen und Anmeldekonten zu erstellen.

Serverinitialisierung

Sobald Sie alle erforderlichen Einrichtungsschritte abgeschlossen haben, ist es an der Zeit, Ihren Server zu starten. Führen Sie zunächst den Authserver (oder Bnetserver auf dem Master) aus, um Ihren Server anzukurbeln. Beachten Sie, dass Sie sich beim Authentifizierungsserver mit Ihrem Benutzernamen (E-Mail-Adresse beim Master)/Passwort anmelden können, um auf den Bereichsauswahlbildschirm zuzugreifen. In der Zwischenzeit erleichtert der Weltserver die Verbindung zum Reich selbst. Sobald Sie im Spiel sind, können Sie den Authentifizierungsserver sicher schließen, wenn Sie möchten, dass niemand anderes eine Verbindung zum Server herstellt.

Wichtiger Hinweis: Vermeiden Sie es, Konten direkt in Ihrer Datenbank zu erstellen, es sei denn, Sie sind absolut sicher, dass Sie den Vorgang verstehen.

Anmeldekonten erstellen

Um ein Anmeldekonto zu erstellen, geben Sie den GM-Befehl mit der folgenden Syntax direkt in das Worldserver-Fenster ein: Konto erstellen (oder bnetaccount erstellen auf Master). Hier ist eine Beispielsyntax:

Konto erstellen

Wenn Sie das Konto als GM kennzeichnen möchten, gehen Sie wie folgt vor:

Kontosatz gmlevel 3 -1

In diesem Befehl $Konto stellt den zu ändernden Kontonamen dar, #Ebene bezeichnet das GM-Level (von 0 bis 3, wobei 3 das höchste ist) und #realmid gibt die Realm-ID an. Wenn Sie die GM-Stufe auf „3“ setzen, erhalten Sie vollen GM-Zugriff.

Schritt 3: Zugriff auf GM-Befehle

Greifen Sie mit Ihrem Datenbankverwaltungstool auf die Weltdatenbank zu und suchen Sie die Befehlstabelle. Diese Tabelle enthält eine umfassende Liste der GM-Befehle, einschließlich ihrer Beschreibungen und der erforderlichen Sicherheitsstufe (GM-Stufe), um sie zu verwenden. Stellen Sie sicher, dass Ihre Datenbank auf dem neuesten Stand ist, um möglichst genaue Informationen zu erhalten. Die Sicherheitsstufe eines Befehls bestimmt, welche GM-Stufen ihn nutzen können, zusammen mit allen höheren GM-Stufen.

Schritt 4: Anmelden beim Server

Minimieren Sie Ihre Serverfenster und starten Sie WoW. Vermeiden Sie es, den Launcher zum Starten von WoW zu verwenden, es sei denn, Sie haben die Patchlist-Option der realmlist.wtf-Datei bearbeitet. Melden Sie sich mit den soeben erstellten Kontoanmeldeinformationen an. Sie sollten sehen, dass der Trinity-Bereich zur Auswahl verfügbar ist. Melden Sie sich an, erstellen Sie einen Charakter und schon kann es losgehen!

Beispiele für die Kontoerstellung:

Hier sind Beispiele für 3.3.5 und Master:

  • Für 3.3.5:
    • Benutzerkonto erstellen: Konto erstellen
    • GM-Level einstellen: Kontosatz gmlevel 3 -1
  • Für Meister:
    • Benutzerkonto erstellen: bnetaccount erstellen
    • GM-Level einstellen: Kontosatz gmlevel 3 -1

Notiz: Der zum Festlegen der GM-Ebene verwendete Benutzername unterscheidet sich von dem mit bnetaccount erstellten Benutzernamen. Sie müssen den Benutzernamen manuell in auth.account.username finden.

Teile diesen Beitrag:
Facebook
Twitter
LinkedIn
WhatsApp

Entdecken Sie weitere Artikel