Einloggen Registrierung

Reborn Gaming Community

Wir sind hier, um Ihnen das beste Spielerlebnis zu bieten, das es gibt - und dafür müssen Sie nicht einmal Ihr Haus verlassen!




 

Alles, was Sie brauchen, ist ein Computer, oder eine Konsole ein Spiel und der Wille, Spaß zu haben.

FortniteArk Survival AscendedSubsistence

  • Slider 1

    Fortnite, Crossplay spiel.

  • Slider 2

    Ark Survival Ascended, Crossplay spiel

  • Slider 3

    Subsistence

  • Slider 4

    Valheim

  • Slider 5

    Rising World

Forum Reborn Gaming Anleitungen AzerothCore

Post von [RGC]Lustlos » 09.11.2023 12:50:36


Windows-Anforderungen

 

Boost ≥ 1.78 (oder höher)
MySQL ≥ 5.7.0 (empfohlene Version: ≥ 8.0)
OpenSSL ≥ 3.0.x (oder höher)
CMake ≥ 3.16 (oder höher aber kein RC)

MS Visual Studio (Community) ≥ 17 (2022) (Desktop) (Keine Vorschau)

 

 

  1. Einguss

    1. Laden Sie das eigenständige Installationsprogramm herunter

      • Während der Git-Installation: Passen Sie Ihre PATH-Umgebung an. Wählen Sie "Git von der Befehlszeile und auch von 3rd-Party-Software".
  2. Github Desktop

    1. Laden Sie das Installationsprogramm herunter und folgen Sie den Schritten zur Einrichtung.
  3. Installieren des Compilers/der IDE Visual Studio Community 2022 (Version 17)

    Sie müssen den C++-Compiler installieren.

    Wählen Sie dazu unter Workloads -> Desktop & Mobile die Option Desktopentwicklung für C++ aus.

    visualstudio.jpg
  4. MySQL Server Community Edition (empfohlene Version: ≥ 8.0 mit MySQL-Serverkonfiguration)

    1. Laden Sie das Windows-MSI-Installationsprogramm herunter.

    2. Scrollen Sie nach unten und klicken Sie auf "Nein danke, bring mich einfach zu den Downloads!"

    3. Wenn die Installation fast abgeschlossen ist, stellen Sie sicher, dass "MySQL Instance Configuration Wizard starten" aktiviert ist, und klicken Sie dann auf "Fertig stellen".

    4. Wenn der Konfigurationsassistent für MySQL-Instanzen gestartet wird, sind die meisten Standardoptionen in Ordnung, aber denken Sie an den Benutzernamen und das Passwort, das Sie verwenden (root // was auch immer). Sie benötigen sie, um sich bei dem von Ihnen gewählten Datenbankverwaltungstool (unten) anzumelden, um SQL-Dateien später importieren zu können.

    5. Um zu testen, ob MySQL korrekt eingerichtet ist, drücken Sie STRG+ALT+ENTF auf Ihrer Tastatur, rufen Sie den Task-Manager auf und wählen Sie die Registerkarte "Dienste". In der Liste der Dienste sollten Sie "MySQL" mit dem Status "Running" sehen.

    6. Fügen Sie MySQL zu Umgebungsvariablen hinzu.

      1. Gehen Sie zu Systemsteuerung -> System

      2. Gehen Sie zu Erweiterte Systemeinstellungen

      3. Wechseln Sie zu Umgebungsvariablen

      4. Wählen Sie unter "Systemvariablen" Pfad aus

      5. Bearbeiten und fügen Sie Ihren Installationspfad von MySQL hinzu, z. B. C:\Programme\MySQL\MySQL Server 8.0\bin\

  5. Wählen Sie ein Datenbankverwaltungstool

    • MySQL-CLI (am schnellsten)

    • SQLYog Community Edition

    • HeidiSQL (Am besten für Anfänger)

    • MySQL Workbench (bereits installiert, wenn Sie sich für die Installation des vollständigen MySQL-Pakets entschieden haben)

    • DBeaver (Multiplattform-Datenbankverwaltungstool)

    1. Versuchen Sie, eine Verbindung mit Ihrer Datenbank herzustellen. Je nachdem, welches Programm Sie verwenden, suchen Sie möglicherweise nach "Mit Host verbinden", "Neue Verbindung" oder "Sitzungsmanager".

    2. Erstellen Sie eine neue Verbindung/Sitzung. Der Hostname/die IP-Adresse "127.0.0.1" oder "localhost" ist in Ordnung, wenn Sie MySQL auf demselben Computer installiert haben, auf dem Sie HeidiSQL oder SQLYog installiert haben. Geben Sie einfach Ihr root-Passwort ein und Sie sollten nun in der Lage sein, sich mit Ihrer Datenbank zu verbinden.

  6. CMake

    1. Laden Sie die Windows-x86_64.msi Datei Latest Release herunter und installieren Sie sie, NIEMALS die RC-Versionen (Release Candidate).

    2. Wir empfehlen, im 64-Bit-Modus zu kompilieren.

  7. MySQL-Entwicklungsdateien

    1. Diese Dateien werden mit MySQL Server ausgeliefert, suchen Sie sie im Programmdateiverzeichnis MySQL\MySQL Server 8.0\lib / MySQL\MySQL Server 5.7\lib.
  8. OpenSSL Laden Sie die 64-Bit-Version herunter.

    • Finden Sie die 64-Bit-Version, indem Sie die neueste 3.0.x Win64 OpenSSL finden, die NICHT die "Light"-Version ist. (Beispiel: Win64 OpenSSL v3.0.7)

    • Hinweis #1: Wenn Sie eine "Missing Microsoft Visual C++ .... Redistributable"-Fehlermeldung bei der Installation von OpenSSLladen Sie das Microsoft Visual C++ 2017/2019/2022 Redistributable Package (x64) (Direct Download) (1,7 MB Installationsprogramm) herunter und installieren Sie es.

    • Hinweis #2: 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.

  9. Boost.

    1. Laden Sie die vordefinierte Windows-Binärdatei für Visual Studio 2022 herunter

    2. 64 Bit

    3. Fügen Sie der Variablen "System" eine Umgebungsvariable mit dem Namen "BOOST_ROOT" hinzu, deren Wert Ihr Boost-Installationsverzeichnis ist, z. B. . Wichtig ist, '/' und nicht '\' zu verwenden, wenn auf das Verzeichnis verwiesen wird. (Stellen Sie sicher, dass es keinen nachgestellten Schrägstrich (Ende des Pfades) gibt. Wenn Sie immer noch Probleme haben, fügen Sie dieselbe Variable auch im Abschnitt "Variablen" hinzu, wie in der Abbildung unten gezeigt.)C:/local/boost_1_81_0USER

    boost.jpg
    1. Beachten Sie, dass dieses Bild die Versionsnummer zeigt - verwenden Sie Ihre tatsächliche Versionsnummer in Ihren Einstellungen.1.72.0

 

User avatar
[RGC]Lustlos
Administrator
User
Aufsteigender-Elite
 
Beiträge: 335
Dabei seit: 2023-11-02 08:17:04

Post von [RGC]Lustlos » 09.11.2023 13:01:28


Installation des Kerns

 

Abrufen und Kompilieren des Quellcodes

Abrufen des Codes

  1. Erstellen Sie das Verzeichnis, in dem sich die Quelldateien befinden. In diesem Guide verwenden wir C:\Azerothcore.

  2. Öffnen Sie Github Desktop

  3. Klicken Sie oben links auf Datei -> Repository klonen...

  4. Klicken Sie auf URL

  5. Füllen Sie die Daten wie folgt aus:

Repository URL or GitHub username and repository: https://github.com/azerothcore/azerothcore-wotlk
Local path: C:\Azerothcore

Klicken Sie auf Klonen. Innerhalb weniger Minuten werden die Quelldateien von Azerothcore in C:\Azerothcore geklont.

Konfigurieren und Generieren einer Visual C++-Projektmappe mit CMake

Bevor Sie beginnen, erstellen Sie ein neues Verzeichnis mit dem Namen Build. In diesem Leitfaden verwenden wir C:\Build.

  1. Öffnen Sie CMake

  2. Klicken Sie auf Quelle durchsuchen... → Wählen Sie das Quellverzeichnis aus (C:\Azerothcore)

  3. Klicken Sie auf Build durchsuchen... → Wählen Sie das Buildverzeichnis aus (C:\Build)

  4. Klicken Sie auf Konfigurieren.

  5. Wählen Sie im Dropdown-Menü die Version des Compilers aus, die Sie im Abschnitt Anforderungen heruntergeladen haben. Stellen Sie sicher, dass Sie die Win64-Version auswählen, wenn Sie an einer 64-Bit-Kompilierung arbeiten.

  6. Stellen Sie sicher, dass Standard-native Compiler verwenden aktiviert ist.

  7. Klicken Sie auf Fertig stellen.

  8. Stellen Sie sicher, dass TOOLS_BUILD auf festgelegt ist. Dadurch werden die Extraktoren kompiliert, die später im Setup benötigt werden.all

  9. Klicken Sie erneut auf Konfigurieren. Solange Sie Fehler in Rot im Protokollfenster eingegeben haben, müssen Sie Ihre Parameter überprüfen und erneut ausführen.

  10. Klicken Sie auf Generieren. Dadurch werden die ausgewählten Builddateien in den Ordner C:\Build installiert.

Einige Fehlerbehebungen

Wenn in CMake Fehler auftreten, finden Sie weitere Informationen unter Häufige Fehler.

Kompilieren des Quellcodes

  1. Klicken Sie in CMake auf Projekt öffnen, um die Datei AzerothCore.sln direkt mit Visual Studio zu öffnen.

  2. Klicken Sie im Menü oben auf Erstellen, und wählen Sie Configuration Manager aus.

    1. Legen Sie die Konfiguration der aktiven Projektmappe auf RelWithDebInfo fest.

    2. Legen Sie Active Solution Platform auf x64 fest, und klicken Sie dann auf Schließen (Einstellungen automatisch speichern).

  3. Klicken Sie im Projektmappen-Explorer auf der rechten Seitenleiste mit der rechten Maustaste auf ALL_BUILD, und wählen Sie Bereinigen aus.

  4. Klicken Sie mit der rechten Maustaste auf ALL_BUILD, und wählen Sie Erstellen aus. (Strg + Umschalt + B)

    1. Wenn in der GUI der Projektmappen-Explorer nicht angezeigt wird, klicken Sie auf das Menü Erstellen, wählen Sie Projektmappe bereinigen und dann Erstellen aus.

Die Bauzeit ist von Maschine zu Maschine unterschiedlich, aber Sie können davon ausgehen, dass sie zwischen 5 und 30 Minuten dauert.

Wenn Sie während oder nach der Kompilierung aufgefordert werden, Build-Dateien neu zu laden, tun Sie dies.

Wenn der Build abgeschlossen ist, finden Sie in der Ausgabe eine Meldung, die in etwa wie folgt aussieht:

========== Build: 22 succeeded, 0 failed, 0 up-to-date, 1 skipped ==========

Sie finden Ihre frisch kompilierten Binärdateien im Ordner C:\Build\bin\RelWithDebInfo oder C:\Build\bin\Debug. Diese werden alle verwendet, um Ihren Server am Ende dieser Anweisung auszuführen.

Sie benötigen die folgenden Dateien, damit der Kern ordnungsgemäß funktioniert:

\configs\
authserver.exe
authserver.pbd
worldserver.exe
worldserver.pdb
libmysql.dll

---------
For OpenSSL 1.1.x
libeay32.dll / libcrypto-1_1.dll / libcrypto-1_1-x64.dll
ssleay32.dll / libssl-1_1.dll / libssl-1_1-x64.dll

---------
For OpenSSL 3.0 and later

legacy.dll
libcrypto-3.dll / libcrypto-3-x64.dll
libssl-3.dll / libssl-3-x64.dll

Im Ordner configs sollten Sie Folgendes finden:

authserver.conf.dist
worldserver.conf.dist

Es gibt zwei/drei DLL-Dateien, die manuell zu diesem Ordner hinzugefügt werden müssen, und Sie müssen sie aus den folgenden Installations-/Bin-Verzeichnissen kopieren:

libmysql.dll → C:\Programme\MySQL\MySQL Server 8.x\lib\

Hinweis: Sie benötigen die genaue Version von libmysql, die dem MySQL entspricht, das Sie heruntergeladen haben. Aus diesem Grund können Sie die DLL nicht aus dem Internet herunterladen und müssen sie aus dem Ordner entfernen.

OpenSSL vor Version 1.1.0:

libeay32.dll und ssleay32.dll → C:\OpenSSL-Win64\ oder C:\OpenSSL-Win32\ (je nachdem, ob Ihr Kern 64-Bit oder 32-Bit ist).

Die Namen von OpenSSL 1.1.x haben sich geändert:

libssl-1_1-x64.dll und libcrypto-1_1-x64.dll → C:\OpenSSL-Win64\bin

OpenSSL 3.0 und neuere installierte Versionen müssen Folgendes kopieren:

legacy.dll → C:\OpenSSL-Win(32/64)\bin

libcrypto-3-x64.dll und libssl-3-x64.dll → C:\OpenSSL-Win64\bin

Informationen zum Kompilierungsprotokoll und -bericht

PDB-Dateien sind nur vorhanden, wenn Sie mit der Debug- oder RelWithDebInfo-Konfiguration kompilieren. Es ist nicht zwingend erforderlich, aber es wird empfohlen, den Kern mindestens mit der RelWithDebInfo-Konfiguration zu kompilieren, um korrekte Absturzprotokolle zu erhalten.

Um Absturzprotokolle zu melden, ist es ZWINGEND erforderlich, mit der Debug- oder RelWithDebInfo-Konfiguration zu kompilieren.

User avatar
[RGC]Lustlos
Administrator
User
 
Beiträge:
Dabei seit: 2023-11-02 08:17:04

Post von [RGC]Lustlos » 09.11.2023 13:05:02


Server-Einrichtung

 

Nachdem Sie den Quellcode kompiliert haben, müssen Sie einige notwendige Dateien hinzufügen, indem Sie sie entweder herunterladen oder extrahieren.

Einige Dateien sind optional, werden aber dringend empfohlen:

Verzeichnis  
DBC Obligatorisch
landkarten Obligatorisch
vMaps SEHR EMPFEHLENSWERT
mmaps SEHR EMPFEHLENSWERT
Fotoapparate Empfohlen

Herunterladen

Wenn Sie diese Dateien nicht mit den Extraktoren extrahieren möchten, finden Sie hier Download-Links:

Github-Link:

Vollständige Daten (v16) - vom 01.02.2023 bis heute

  1. Laden Sie die oben genannten Dateien herunter.

  2. Erstellen Sie einen neuen Ordner innerhalb des Buildordners mit dem Namen Data. z.B. Windows: C:\Build\bin\RelWithDebInfo\Data oder Linux: $HOME/azeroth-server/data/

  3. Extrahieren Sie die Dateien aus der ZIP-Datei, und legen Sie sie im Ordner "Daten" ab.

  4. Bearbeiten Sie die Konfigurationsoption DataDir am Speicherort Ihres Ordners.

Extraktoren

(Nicht erforderlich, wenn Sie die oben genannten Dateien heruntergeladen haben)

Wenn Sie die obigen Dateien heruntergeladen haben, können Sie diesen Schritt überspringen und zu worldserver.conf / authserver.conf springen.

Dieser Teil ist nur eine allgemeine Zusammenfassung des Gesamtprozesses - bitte lesen Sie ihn für das Betriebssystem, mit dem Sie arbeiten, genauer.

AzerothCore benötigt bestimmte Dateien, die aus dem World of Warcraft-Client extrahiert wurden. Sie müssen sie von einem 3.3.5a-Client extrahieren.

Standardmäßig kompilieren Sie Ihren Kern mit Tools und erhalten die folgenden ausführbaren Dateien: mapextractor, vmap4extractor, vmap4assemblermmaps_generator (.exe unter Windows).

Platzieren Sie die Dateien mit Ihrer World of Warcraft-Binärdatei (wow.exe unter Windows) und führen Sie sie aus.

Nachdem Sie alle erforderlichen Dateien extrahiert haben, erstellen Sie einen Ordner mit dem Namen Data im Verzeichnis RelWithDebInfo oder Debug, und legen Sie die Dateien dort ab. Alternativ können Sie ein anderes Verzeichnis angeben, in dem Sie sie aufbewahren möchten, indem Sie den DataDir-Wert in der Datei worldserver.conf ändern.

Wenn ihr Extraktoren aus anderen Projekten oder Zweigen verwendet, ist es so gut wie sicher, dass euer AzerothCore die extrahierten Daten nicht erkennt oder gar nicht funktioniert!

Wenn dies abgeschlossen ist, erhalten Sie möglicherweise die folgende Meldung, die ignoriert werden kann:

Processing Map 724
[################################################################]
Extracting GameObject models...Extracting World\Wmo\Band\Final_Stage.wmo
No such file.
Couldn't open RootWmo!!!
Done!
  
Extract V4.00 2012_02. Work complete. No errors.

Fehlerbehebung

"wmo_list.txt kann nicht geöffnet werden! Nichts extrahiert."

Sie müssen Mapextractor.exe vor dem makevmaps_simple.bat ausführen.

Konfigurationsdateien

In den Konfigurations-, conf- und Dateien konfigurieren Sie Ihre Einstellungen für den World- und Authserver.

Jedes Mal, wenn der Kern neu kompiliert wird, wird eine verteilte .dist-Conf-Datei erstellt, in der alle Standardoptionen gespeichert sind. Diese Datei dient keinem wirklichen Zweck, außer alle Optionen aus dem Kern zu verteilen.

Erstellen der Konfigurationsdateien

  1. Gehen Sie zu Ihrem Konfigurationsordner, z. B. D:\build\bin\RelWithDebInfo\configs

  2. Entfernen Sie den .dist-Teil aus worldserver.conf.dist und authserver.conf.dist.

    • Sie sollten mit worldserver.conf und authserver.conf übrig bleiben.

Öffnen Sie die .conf-Dateien, scrollen Sie nach unten zu LoginDatabaseInfo, WorldDatabaseInfo und CharacterDatabaseInfo und geben Sie MySQL-Anmeldeinformationen ein, damit der Server auf Ihre Datenbank zugreifen kann.

In einer neu kompilierten Konfiguration verfügen Sie standardmäßig über die folgenden Werte

LoginDatabaseInfo     = "127.0.0.1;3306;acore;acore;acore_auth" worldserver.conf / authserver.conf
WorldDatabaseInfo     = "127.0.0.1;3306;acore;acore;acore_world" worldserver.conf
CharacterDatabaseInfo = "127.0.0.1;3306;acore;acore;acore_characters" worldserver.conf

Sie folgen dieser Struktur:

Variablename = "MySQLIP;Port;Username;Password;database"  

Die folgenden Schritte müssen überprüft werden:

  • Der Hostname (127.0.0.1) kann unverändert bleiben, wenn AzerothCore auf demselben Computer installiert ist, auf dem ihr WoW ausführt. Ist dies nicht der Fall, befolgen Sie die Anweisungen in der Realmlist-Tabelle.

  • Der Port (3306) ist der standardmäßig konfigurierte Wert. Wenn Sie den Standardport in Ihren MySQL-Einstellungen geändert haben, müssen Sie ihn entsprechend ändern. Der Benutzername und das Passwort können variabel sein. Sie haben die Wahl zwischen folgenden Optionen:

    • Verwenden Sie das standardmäßige ACORE/ACORE-Benutzername-Passwort-Paar.

    • Erstellen Sie eine eindeutige Anmeldung in einem Benutzermanager in Ihrem bevorzugten Datenbankverwaltungstool (in der Regel durch ein Symbol gekennzeichnet, das wie eine Person oder Personen aussieht) und erteilen Sie ihm die erforderlichen Berechtigungen (SELECT, INSERT, UPDATE, DELETE-Berechtigungen sind ausreichend und viel sicherer).

Aktualisieren von DataDir

  1. Suchen Sie in der Datei worldserver.conf die Option DataDir.

  2. Bearbeiten Sie es im Pfad Ihres Ordners. z.B. C:\Build\bin\RelWithDebInfo\Data

Profi-Tipp: Für die meisten Änderungen an den Einstellungen von worldserver.conf kannst du einfach .reload config im Spiel eingeben, um Änderungen sofort zu sehen, ohne den Server neu starten zu müssen.

HINWEIS: Das Team und die Besitzer von AzerothCore sponsern oder unterstützen in keinem Fall illegale öffentliche Server. Wenn Sie diese Projekte verwenden, um einen illegalen öffentlichen Server zu betreiben und nicht zum Testen und Lernen, ist dies Ihre persönliche Entscheidung.

 

(Fakultativ) Konfigurationsoptionen nach Umgebungsvariable

 

Umgebungsvariablen können Konfigurationswerte überschreiben.

Standardmäßig hört der Kern auf conf-Werte in dieser Reihenfolge:

1. Environment variables
2. .conf file
3. Base values defined in the core

Schlüssel für Umgebungsvariablen werden basierend auf den in der CONF-Datei definierten Schlüsseln automatisch generiert.

    // Example of conversions:
    //   SomeConfig => SOME_CONFIG
    //   myNestedConfig.opt1 => MY_NESTED_CONFIG_OPT_1
    //   LogDB.Opt.ClearTime => LOG_DB_OPT_CLEAR_TIME
    //   GM.InGMList.Level   => AC_GM_IN_GMLIST_LEVEL

Anwendungsbeispiel

Unix:

$ export AC_DATA_DIR=/usr
$ AC_WORLD_SERVER_PORT=8080 ./worldserver

Windows:

> $env:AC_REALM_ID = '2'; .\worldserver
User avatar
[RGC]Lustlos
Administrator
User
 
Beiträge:
Dabei seit: 2023-11-02 08:17:04

Post von [RGC]Lustlos » 09.11.2023 13:08:49


Datenbank-Installation

 

Erstellen der Datenbank in MySQL

Erstellen der Datenbanken und des Benutzers

Zunächst müssen Sie den acore-Benutzer mit dem folgenden Skript erstellen.

https://github.com/azerothcore/azerothcore-wotlk/blob/master/data/sql/create/create_mysql.sql

Sie können dies mit einem MySQL-Client oder mit der MySQL-Befehlszeilenschnittstelle (CLI) durchführen.

Sie müssen das obige Skript als Root-Benutzer von MySQL innerhalb eines MySQL-Clients oder der MySQL-CLI ausführen.

Hinweis: Verwenden Sie NUR den MySQL-Root-Benutzer, um das obige Skript auszuführen, führen Sie den Core niemals als Root oder Administrator aus!

Tipp: Sie können das Kennwort des Benutzers, den Sie erstellen, ändern, um die Sicherheit zu erhöhen.

Auffüllen der Datenbank

Wenn Sie wissen möchten, wie das SQL-Verzeichnis funktioniert, oder wenn Sie benutzerdefinierte Änderungen vornehmen möchten, empfehlen wir Ihnen, dies zu lesen.

Automatischer Datenbank-Updater

Der Auth- und Worldserver prüft und wendet beim Start alle benötigten Datenbankdateien an.

Um den automatischen Datenbank-Updater zu bearbeiten, finden Sie die notwendigen Einstellungen in authserver.conf und worldserver.conf unter UPDATE SETTINGS.

  1. Starten Sie Authserver.
  2. Starten Sie Worldserver.

Wenn die folgende Meldung in der Konsole angezeigt wird, drücken Sie die EINGABETASTE, um die Datenbanken zu erstellen und aufzufüllen.

Database "acore_auth" does not exist
Do you want to create it? [yes (default) / no]:
User avatar
[RGC]Lustlos
Administrator
User
 
Beiträge:
Dabei seit: 2023-11-02 08:17:04

Post von [RGC]Lustlos » 09.11.2023 13:09:55


Networking

 

Dieser Leitfaden ist für fortgeschrittene Setups gedacht oder einfach nur, um weitere Details zum Einrichten Ihres Realms für die lokale oder Internetnutzung bereitzustellen. Im Allgemeinen sollte das Standard-Setup, das in Ihrem speziellen betriebssystemspezifischen Handbuch erläutert wird, für einfache Setups in Ordnung sein.

Worldserver- und Authserver-Konfigurationen

Für fast alle grundlegenden Setup-Szenarien sollten die standardmäßigen localhost-IP-Einstellungen (127.0.0.1) unverändert gelassen werden. Der Standardwert bindip (0.0.0.0) sollte ebenfalls in Ruhe gelassen werden.

Festlegen der Realmliste der Authentifizierungsdatenbank für Internetverbindungen

Hier müssen Sie Ihre Internet-IP verwenden, damit Clients aus dem Internet Ihren Server finden können. Sie müssen die Ports 3724 (authserver) und 8085 (worldserver) von Ihrem Router/Ihrer Firewall weitergeleitet oder geöffnet haben. Verwenden des TCP-Protokolls.

Realmlist-Tabelle

Sie müssen sicherstellen, dass Ihre authserver-Anwendung eingehende Verbindungen an Ihren Realm weiterleitet.

  • Führen Sie das Datenbankverwaltungstool Ihrer Wahl (z. B. SQLYog oder HeidiSQL) oder mit der MySQL-Befehlszeilenschnittstelle (CLI) aus.

  • Wenn Sie von einem externen Rechner aus eine Verbindung zu Ihrer Datenbank herstellen müssen, lesen Sie https://www.enovision.net/mysql-ssh-tunnel-heidisql öffnen Sie stattdessen Ports zum MySQL-Server.

  • Öffnen Sie die acore_auth-Datenbank, und suchen Sie die Tabelle realmlist. Sie müssen das Adressfeld nach Ihren Bedürfnissen bearbeiten:

    • LAN-IP (192.168.x.x) - Wenn ihr AzerothCore auf einem anderen Computer installiert als auf dem Rechner, auf dem ihr WoW lauft, aber alle beteiligten Computer im selben Netzwerk (Router) sind, verwendet die IP-Adresse des lokalen Netzwerks dieses Computers.

    • 127.0.0.1 – Auch bekannt als "localhost". Lasst diese Einstellung hier und in euren Konfigurationen unverändert, wenn ihr AzerothCore auf dem gleichen Computer installiert habt, auf dem ihr WoW lauft, und nur ihr eine Verbindung dazu herstellt.

    • Öffentliche IP-Adresse – Wenn Sie möchten, dass andere Personen eine Verbindung zu Ihrem Server herstellen, verwenden Sie Ihre externe IP-Adresse. Besuchen Sie http://www.whatismyip.com/, um Ihre externe IP-Adresse zu finden.

      • Wenn Sie es von einem Heimnetzwerk aus hosten, müssen Sie wahrscheinlich die richtigen Portweiterleitungen einrichten, was im Rahmen dieses Handbuchs nicht behandelt wird. https://portforward.com hat Anleitungen für die meisten Router, und Ihr Internetdienstanbieter sollte in der Lage sein, Ihnen dabei zu helfen.
    • Vollqualifizierter Domänenname - (mydomain.com oder warcraft.mydomain.com) Ähnlich wie eine externe IP-Adresse wird dies verwendet, wenn Sie möchten, dass andere Personen eine Verbindung zu Ihrem Server herstellen, mit dem zusätzlichen Vorteil, dass Sie eine potenziell dynamische IP-Adresse nicht verfolgen müssen.

      • Ähnlich wie bei der öffentlichen IP-Adresse ist es wahrscheinlich, dass Sie Portweiterleitungen einrichten müssen, wenn Sie über ein Heimnetzwerk hosten.
      • Darüber hinaus müssen Sie DNS so konfigurieren, dass es auf die öffentliche IP-Adresse des Servers verweist. Das Einrichten von DNS würde den Rahmen dieses Handbuchs sprengen, obwohl Ihre Domänenregistrierungsstelle oder Ihr dynamischer DNS-Anbieter über diese Dokumentation verfügen sollte.
  • MySQL-CLI-Befehle (Dieser Schritt ist nicht erforderlich, wenn Sie einen MySQL-Manager wie HeidiSQL verwendet haben)

    • $ sudo mysql
    • Sie sollten eine prompte Änderung von mysql sehen>
    • use acore_auth;
    • Ersetzen Sie Ihre IP-Adresse durch diejenige, die Sie oben ausgewählt haben
    • UPDATE realmlist SET address = '[your_ip]' WHERE id = 1;
    • exit
User avatar
[RGC]Lustlos
Administrator
User
 
Beiträge:
Dabei seit: 2023-11-02 08:17:04

Post von [RGC]Lustlos » 09.11.2023 13:11:52


Abschließende Serverschritte

 

Starten des Servers

  • Führen Sie authserver und worldserver in Ihrem Build-Ordner aus.

Ausführliche Informationen zum Konfigurieren eines Neustarters und eines Debuggers finden Sie auf der Seite "Neustart und Debuggen"

Erstellen Sie NIEMALS ein Konto direkt in Ihrer Datenbank, es sei denn, Sie sind sich ABSOLUT SICHER, dass Sie wissen, was zu tun ist und wie es zu tun ist!

  • Als nächstes erstellst du dein Login-Konto, indem du direkt in das Worldserver-Fenster das GM-Command-Konto erstellst. Syntax: (siehe Beispiele unten)

  • Wenn du den Account als GM festlegen möchtest, dann gib in das Worldserver-Fenster ein: account set gmlevel $account #level #realmid wobei $account der zu ändernde Accountname ist, #level 0-4 sein kann und #realmid die Realm-ID ist. Das Setzen einer #level von "3" ist die GM-Account-Ebene (höhere Zahlen = mehr Zugriff), und die "-1" ist die Realm-ID, die für "alle Realms" steht.

Tipp: Öffnen Sie Ihre acore_world Datenbank, und suchen Sie die Befehlstabelle. Hier wird eine vollständige Liste der GM-Befehle, Beschreibungen und Sicherheitsstufen angezeigt. Dies ist immer die aktuellste Liste, die Sie finden können, vorausgesetzt, Sie halten Ihre DB und Ihren Core auf dem neuesten Stand.

  • Minimieren Sie Ihre Server und starten Sie WoW (starten Sie WoW niemals mit dem Launcher, es sei denn, Sie haben die Patchlist-Option der realmlist.wtf oben bearbeitet).

  • Melden Sie sich mit dem soeben erstellten Benutzer/Pass an.

  • Der AzerothCore-Realm sollte auswählbar sein. Melde dich an, erstelle einen Charakter und schon bist du fertig!

Erstellen eines Kontos

Um sich auf Ihrem neuen Server anmelden zu können, benötigen Sie einen Account.

Es wird empfohlen, die Sicherheitsstufe 3 für den eigenen Account zu verwenden.

Führen Sie die folgenden Befehle in der Worldserver-Konsole aus.

So erstellen Sie ein Konto

account create <user> <pass>

Beispiel:

account create admin admin

So legen Sie die Sicherheitsstufe Ihres Kontos fest

Niveau Sicherheitsstufe
0 SEC_PLAYER
1 SEC_MODERATOR
2 SEC_GAMEMASTER
3 SEC_ADMINISTRATOR
account set gmlevel <user> <level> <realm>

Beispiel:

account set gmlevel admin 3 -1

Hinweis: (-1 für alle Reiche)

Passwort ändern

account set password <user> <password> <password>

Beispiel:

account set password admin 1234 1234

Höheres Sicherheitsniveau

Die höchste Sicherheitsstufe ist SEC_CONSOLE (4), die dein Worldserver standardmäßig hat.

Es hat Zugriff auf die Kontoverwaltung und wird nicht für In-Game-Konten für Personen empfohlen, die nicht wissen, was sie tun.

Um ein Konto auf Sicherheitsstufe 4 zu aktualisieren, müssen Sie die Felder in der Datenbank manuell bearbeiten oder die folgende Abfrage ausführen.

UPDATE `account_access` AS `access`
INNER JOIN `account` AS `account` ON `access`.`id` = `account`.`id`
SET `gmlevel` = 4 WHERE `username` = '<user>';

Einrichten des Remotezugriffs

Zu Entwicklungszwecken ist dieser Schritt nicht notwendig. Um die Sicherheit zu erhöhen, sollten Sie jedoch ein Registrierungsformular einrichten, wenn Sie möchten, dass andere Personen Konten erstellen, damit Sie ihre Passwörter nicht einfügen müssen.

 

Remotezugriff

Einleitung

In Azerothcore gibt es 4 Möglichkeiten, sich mit dem Weltserver zu verbinden.

  • Im Spiel
  • Die Konsole
  • Telnet (RA)
  • HTTP (SOAP)

Die Menüs im Spiel und die Konsole sind ziemlich selbsterklärend, aber man ist nicht immer in der Lage, den Server lokal zu verwalten, und die ersten beiden Optionen bieten auch nicht viele Möglichkeiten zur Automatisierung. Wenn Sie eine Möglichkeit für den Fernzugriff auf Ihren Server bereitstellen oder ihn von einer Software verwalten lassen möchten, haben Sie zwei Möglichkeiten.

Auswahl des richtigen Protokolls

Remotezugriff

Der Fernzugriff ist im Grunde eine Telnet-Verbindung und hat alle Nachteile, die eine Telnet-Verbindung mit sich bringt. Diese wären:

  • Die Daten werden über Klartext gesendet, der leicht abgefangen werden kann.
  • Sie verwenden unterschiedliche Sitzungen, d. h. Sie öffnen und schließen jedes Mal eine Verbindung.
  • Es kann schwierig sein, die Rückgabe zu analysieren, da sie nur das zurückgibt, was Sie in der CLI sehen würden

Es hat jedoch auch Vorteile, nämlich:

  • Es ist einfach mit wenig Overhead.
  • Es ist gut etabliert und dokumentiert.
  • Plattformunabhängig.

Der Remotezugriff eignet sich gut für die Ausführung auf einem lokalen Server und den sicheren Zugriff über SSH, um ihm Befehle zu senden. Seine Einfachheit ist seine Stärke. Darüber hinaus ist es in die meisten Maschinen integriert, ohne dass eine Konfiguration erforderlich ist.

SEIFE

Es steht für Simple Object Access Protocol und ist ein Format für den Austausch strukturierter Daten zwischen Maschinen. Es ist ein gängiges XML-Analogon zu ReST und JSON und ermöglicht es zwei Softwareteilen, miteinander zu interagieren, obwohl sie auf unterschiedlichen Codebasen, Sprachen und Betriebssystemen ausgeführt werden. Kommen wir zu den Schwächen.

  • Keine Standardcodierung, was bedeutet, dass Sie mit fast allem durchkommen können. Einige Leute mögen es als Bonus sehen, aber es kann verwirrend sein.
  • Wenig Sicherheit

Und seine Stärken.

  • XML ist ein etabliertes Format, das in den meisten Programmiersprachen unterstützt wird.
  • Verwendet Standard-HTTP

In einem vereinfachten Format: SOAP für Websites, Telnet für die Befehlszeile.

Verwenden des Protokolls der Wahl

Einrichtung

  1. Beide Protokolle müssen über die Worldserver-Konfigurationsdateien aktiviert werden.
  2. Wenn sie aktiviert sind, müssen Sie die Tabelle in der Authentifizierungsdatenbank suchen und sicherstellen, dass die realmID Ihres Benutzers -1 ist (d. h. alle Bereiche), um den Zugriff auf die Datenbank zu autorisieren.account_access
  3. Wenn dies erledigt ist, sind Sie für die Verwendung von Telnet und SOAP eingerichtet

Zugang

Telnet

Aufgrund seiner Allgegenwart ist Telnet von fast überall aus einfach zu bedienen.

  1. Öffnen Sie eine Terminalsitzung (oder PuTTY) und geben Sie Folgendes ein: telnet localhost 3443
  2. Geben Sie Ihren Benutzernamen und Ihr Passwort ein.

Seife

Soap arbeitet mit dem standardmäßigen HTTP POST. Die gesamte Post-Payload ist XML.

Die Antwort sieht folgendermaßen aus:

<?xml version="1.0" encoding="UTF-8"?>

  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
  xmlns:xsd="http://www.w3.org/1999/XMLSchema"
  xmlns:ns1="urn:AC">
  
    
      AzerothCore rev. 6f4f0043c2ab+ 2021-05-18 02:16:59 +0200 (master branch) (Win64, RelWithDebInfo)

Connected players: 0. Characters in world: 0.

Connection peak: 0.

Server uptime: 5 second(s).

Update time diff: 10ms, average: 10ms.


    
  

Die Fehlerantwort sieht folgendermaßen aus

<?xml version="1.0" encoding="UTF-8"?>

  xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
  xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
  xmlns:xsd="http://www.w3.org/1999/XMLSchema"
  xmlns:ns1="urn:AC">
  
    
      SOAP-ENV:Client
      Error 401: HTTP 401 Unauthorized
    
  

Sie müssen sich authentifizieren, indem Sie den Benutzernamen und das Kennwort wie folgt in den URI einfügen: (dies wird auch als "Basisauthentifizierung" bezeichnet)http://soapuser:abcd1234@localhost:7878/

Das Festlegen des Anforderungsheaders ist nicht erforderlich. Erst einmal.Content-Type: application/xml

User avatar
[RGC]Lustlos
Administrator
User
 
Beiträge:
Dabei seit: 2023-11-02 08:17:04