Zemyna fungiert als eine Art Proxy, es stellt eine Verbindung des Clients zu einem speziellen lokalen Server her, der alle Pakete vom Client an den eigentlichen Server weiterleitet. Auf diese Weise ist es in der Lage, jedes einzelne Paket zu lesen, das gesendet oder empfangen wird. Diese Pakete können dann an andere Anwendungen weitergegeben werden, damit diese damit arbeiten können, z. B. Logger wie PaleTree.
Damit Zemyna Pakete lesen kann, muss es den Startvorgang kontrollieren, da es Ihren Client vorübergehend anpasst, um seine Verbindung zu tunneln. Dazu erstellen Sie eine Sicherungskopie Ihrer client.xml, die Informationen darüber enthält, wo Sie eine Verbindung herstellen möchten, und erstellen eine neue Datei. Diese Änderung wird rückgängig gemacht, sobald Zemyna geschlossen wird, sodass Sie nicht selbst mit Dateien herumspielen müssen.
Um Zemyna mitzuteilen, wo sich der Client verbinden soll, verwenden Sie Befehlszeilenparameter. Nehmen wir zum Beispiel an, Sie möchten Pakete auf dem internationalen Server Laima protokollieren, dann würden Sie es einfach so über die Befehlszeile starten, nachdem Sie Zemyna in Ihren Spielordner verschoben haben:
Zemyna.exe host:54.88.25.242 port:2000
Die IP und der Port stammen vom Anmeldeserver für Laima. Den Host und Port Ihres Zielservers können Sie in der offiziellen Serverliste nachschlagen. Die URL dazu finden Sie in der client.xml.
Für eine einfachere Wiederverwendbarkeit sollten Sie eine Link- oder Bat-Datei erstellen. Zemyna wird dann die notwendigen Schritte unternehmen, um Pakete aus dem Netzwerk lesen zu können, und den Client starten. Ein kleines Fenster in der oberen linken Ecke zeigt Ihnen, dass Zemyna ausgeführt wird. Es wird automatisch geschlossen, wenn der Client geschlossen wird. Sie können auch darauf doppelklicken, um Zemyna und den Client schnell zu schließen.
Da Sie auf diese Weise nur einen Server in der Serverliste haben können, den Sie in den Parametern angeben, könnten Sie mehrere Links/Bats erstellen, einen für jeden Server.
Wenn Sie Zemyna auf einem Server verwenden möchten, der die automatische Steam-Anmeldung nicht verwendet, müssen Sie Zemyna eine static__Conf.txt bereitstellen, in der der UseSteamClient
Wert auf NO
gesetzt ist.
ServiceNation=GLOBAL
Dictionary=YES
UseNexonSSO=NO
UseNexonGLM=NO
UseHackshield=NO
UseSteamClient=NO
UseXigncode=NO
UseNISMS_TESTURL=NO
UseNISMS_ONLY_OFFER=YES
Wenn sich die Datei auf Ihrem lokalen Webserver in „/toslive/patch“ befindet, würden Sie Zemyna veranlassen, sie wie folgt zu verwenden:
Zemyna.exe host:127.0.0.1 port:2000 staticconfig:http://127.0.0.1/toslive/patch/
Beachten Sie, dass der Client über SSL (HTTPS) auf die Datei zugreift. Konfigurieren Sie daher Ihren Webserver entsprechend.
Zemyna verwendet dieselbe API wie das Tool, von dem es inspiriert wurde: „Alissa“. Es verwendet WM_COPY-Nachrichten, um zwischen dem Fenster von Zemyna und dem Abonnenten zu kommunizieren. Um Zemyna zu abonnieren und Pakete zu empfangen, senden Sie „op“ (dwData) 100
an Zemynas Fenster (Fenstername: „mod_Tossa“), um sich abzumelden, senden Sie 101
. Während Sie abonniert sind, erhalten Sie alle eingehenden (op 0x10101012
) und ausgehenden (op 0x10101011
) Pakete über dieselbe Methode.
Für ein konkretes Beispiel, wie das funktioniert, schlage ich vor, einen Blick auf die entsprechenden Funktionen in Pale zu werfen. Alternativ können Sie auch ein Plug-In für Pale erstellen, was einfacher ist.
Wenn Sie die Veröffentlichungen überprüfen, werden Sie mehrere Versionen finden, eine davon für kTOS (beachten Sie das Präfix „k“). Wählen Sie diese Option, wenn Sie Pakete auf dem koreanischen Server protokollieren möchten.
Da kTOS ein Web-Login verwendet, mussten wir für die koreanische Version von Zemyna etwas anders vorgehen. Sie benötigen ein zusätzliches Argument, „kr“, das bestimmte Nur-KR-Optionen aktiviert. Beispiel:
Zemyna.exe host:54.88.25.242 port:2000 kr nosteam
Nachdem Sie Zemyna auf diese Weise gestartet haben, startet der Client nicht automatisch, ändert aber trotzdem die Client-Dateien. Wenn Sie den Client also schließlich über die Webanmeldung starten, läuft die Verbindung immer noch über Zemyna, sodass Sie Pakete mit protokollieren können PaleTree.