logo

Verein
· Vereinsinfo
· Events
· Mannschaften
· Galerie
· Gästebuch
· » Homepage

Forum
· Portal
· Forum
· Team
· Suchen
· F.A.Q.

Tippspiel
· WM 2022
· WM 2018
· EM 2016

Member Area
· Login

Impressum
· Impressum


Biebertal Community Board » Sonstiges » Technik und Tools » Unbekanntes Protokoll (Basiert auf UDP) » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellenAntwort erstellen
Zum Ende der Seite springen Unbekanntes Protokoll (Basiert auf UDP) 2 Bewertungen - Durchschnitt: 5,50
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Qndre
unregistriert
Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Passend zum Shanky-Server möchte ich einen webbasierten Client oder auch einen Server schreiben, damit ich automatische Statistiken erstellen kann und Leute, die den Originalclient nicht haben oder bei Subspace/Continuum nicht angemeldet sind, einem Spiel zuschauen können.

Das Problem besteht darin, dass ich vom verwendeten Protokoll so gut wie keine Ahnung habe. Es verwendet UDP und eine Modifikation von ICMP.

Die Software soll als Client zum Shanky-Server und gleichzeitig als Webserver arbeiten. Sie verbindet sich also als Client zum Shanky-Server, führt den Login durch und teilt dem Server mit, dass sie das Game beobachten (spectaten) möchte. Dann soll der Nutzer einstellen können, ob er von Hand den Bildausschnitt über die Karte bewegen möchte, einem bestimmten Spieler folgen möchte, den Levelausschnitt sehen möchte, auf dem sich die meisten Spieler befinden oder die moderierte Version betrachten möchte (wo die meisten Schüsse abgegeben werden, wo also die meiste Action ist).

Die Software teilt dem Shanky Server also die Koordinaten des Kartenausschnitts mit, den sie betrachten möchte und dass auch getarnte Schiffe übertragen werden sollen (X-Radar-Funktion). Der Shanky-Server schickt den berechneten Bildschirminhalt zur Software, denn er denkt ja es sei ein Client.

Die Software muss nun die Daten vom Shanky-Server decodieren und sie in ein Browserverständliches Format umwandeln und dann entweder direkt zum Browser schicken oder auf dem Browser läuft ein Plugin, an welches die Daten geschickt werden. Das Plugin oder der Browser selbst stellen nun die Benutzeroberfläche dar und der User kann wählen, was er sehen möchte.

Das Problem ist, dass ich mich weder als Client auf dem Shanky-Server einloggen kann, noch die Daten, die er zurückmeldet (Images / zum Teil BMP, zum Großteil aber Wireframes) umwandeln, komprimieren und dann an das Plugin oder direkt an den Browser schicken kann, da ich nicht über die dazu erforderliche Kenntnis des verwendeten Datenaustauschprotokoll des Shanky-Servers verfüge.

Jetzt habe ich drei Möglichkeiten.

1. Einer versierten Nutzer oder den Entwickler fragen
2. Mit einem Sniffer versuchen, die Daten zu analysieren
3. Den Shanky-Server oder einen bereits vorhandenen Client disassemblieren

Ich werde wohl die zweite Möglichkeit wählen, obwohl ich keine besondere Ahnung von Netzwerkprotokollen habe... Wenn ihr Ahnung vom Shanky-Server habt dann schreibt bitte hier die Spezifikation des Datenaustauschprotokolls rein.
Danke!!
24.01.2004 14:12
Qndre
unregistriert
RE: Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe schon mit einem Experten geredet, er ist ein Sub-Codevelopper eines Spiels, welches Shanky-Software als Grundlage verwendet. Leider hat er auch keine Ahnung. Er hat gesagt er hat mal eine Software geschrieben, die zum Shanky-Server verbindet und dann eine Full-Screen Karte mit den Schiffen und dem Level auf den Bildschirm zeichnet. Er sagte aber das sei zu kompliziert, um es zu erklären.
24.01.2004 14:24
Qndre
unregistriert
RE: Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Bääh - mein Sniffer bringt garnix zu Tage.
Bleibt also noch die Möglichkeit, einen Entwickler zu fragen (die sind normalerweise nicht sehr gesprächig) oder Assembler zu lernen und disassemblieren oder Decompiler finden und decompilieren.
24.01.2004 19:42
Qndre
unregistriert
RE: Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe den Shanky-Server und einen bereits existierenden Client auf zwei verschiedenen PCs laufen lassen, die über ein LAN verbunden waren. In den Logfiles steht nun eine enorme Datenflut von 15MB Hexzahlen. Mist!! Ich dachte die Entwickler machen es sich vielleicht einfach und schicken Plain-Text. Aber dafür wäre natürlich viel mehr Bandbreite erforderlich. Und warum sollte man dieses wertvolle Gut verschwenden? großes Grinsen
_
Tja, Pech. Ich glaube ich muss doch einen Experten fragen. Der Decompiler schafft die File auch nicht.
25.01.2004 12:52
Qndre
unregistriert
RE: Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Nächster Anlauf: Hab die Source des Shanky-Servers geladen. Nur leider ergeben sich da zahlreiche Probleme:
- Der Source ist in C geschrieben
- Der Source ist nicht dokumentiert
- Der Source ist nicht sauber
- Der Source ist etwa 69000 Zeilen lang
_
Jetzt fragt man sich: Was meint der mit "Der Source ist nicht sauber"? Darum hier ein Ausschnitt:
_
Zitat:
crtsnhx = eax + 1024^eay
25.01.2004 13:53
Qndre
unregistriert
RE: Unbekanntes Protokoll (Basiert auf UDP) Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

OK - hat sich erledigt. Habe die Definition des Protokolls von "ExplodyThing" erhalten. Den Thread kannst löschen wenn Du willst, musst ja aber nitt. Hat ja eh niemand geantwortet.
26.01.2004 14:26
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellenAntwort erstellen
Biebertal Community Board » Sonstiges » Technik und Tools » Unbekanntes Protokoll (Basiert auf UDP)

Forensoftware: Burning Board 2.3.6 pl2, entwickelt von WoltLab GmbH