CnC Foren

CnC Foren (http://www.cncforen.de/index.php)
-   CnC Foren allgemein (http://www.cncforen.de/forumdisplay.php?f=15)
-   -   Ausschreibung: Programmierer gesucht (http://www.cncforen.de/showthread.php?t=74530)

Sven 08-01-2008 14:34

Ausschreibung: Programmierer gesucht
 
Ja, wir geben es zu: Wir wissen nicht weiter :cry:

Wir möchten auch so einen netten Replay Parser wie das UF ihn hat!

Und deswegen suchen wir einen Programmierer mit C++ und php Kenntnis der uns auf der Basis eines, zur Verfügung stehenden, Generals Tools (liegt in C++ vor und gibt die Replaydaten in einer HTML Datei aus, Sourcecode enthalten) so etwas für TW (und natürlich KW) umschreibt.
Dabei ist es ausreichend wenn die gefundenen Infos einfach nur ausgegeben werden (also keine wirklich Umsetzung in die HTML Ausgabe).

Benötigte Infos wie folgt:
  • Spiel
  • Spielversion*
  • Spielart (ranked/unranked)
  • Voip*
  • Dauer
  • Mapname[offiziell/inoffiziell]
  • Spieler(x)[Nick,Army,Team,1vs1Rank*,2vs2Rank*]
  • Spieler(y)[Nick,Army,Team,1vs1Rank*,2vs2Rank*]
  • Spieler(z)....
  • ...
*: Nice to have

Das Ganze soll natürlich nicht nur für Ruhm und Ehre sein.... wir würden ein Fanset, bestehend aus T-Shirt, Cap, Pin und Nod-Ring dafür herausrücken, alternativ - aber dann später - eine KW Ausgabe.

Das Adminteam (und vermutlich alle User) würde sich sehr freuen... ;)

MyersGer 08-01-2008 15:44

Hm... nur auslesen und in ne DB schreiben?

Sven 08-01-2008 15:46

Mir reicht prinzipiell sogar die reine Ausgabe in HTML, unformatiert, alles andere kann ich dann selber ;)

Von mir aus auch direkt ein eine DB Tabelle geschrieben, dann hol ich sie mir da wieder raus....

MyersGer 08-01-2008 15:47

Na, ich würd's ja in ner Tabelle speichern. Da kann man vielleicht sogar Doppeleinträge verhindern, falls ein Replay 2 mal hochgeladen wird.

Sven 08-01-2008 15:48

Siehe Edith ;)

Der_Mosch 08-01-2008 17:55

Hab so was noch nie gemacht, aber ich würds gerne mal ausprobieren (so schwer kanns ja nicht sein). Hat jemand ne Dateistruktur für die TW-Replays oder muss ich da selber suchen?

Sven 08-01-2008 18:03

Nur das, was im Link für das Generals Tool angegeben ist.
Da ist, im Ordner /src auch so weit aufgeschlüsselt, wie es dem Progger damals bekannt war, was in den Binaries drin steht (für Generals).
Für TW sieht das, was ich so verglichen habe, nicht viel anders aus.

Amosh 08-01-2008 19:06

@Mosch, die Daten, die Sven haben möchte, kann man sogar mit dem normalen Editor von Windows auslesen. Die stehen da so drin. Nur eben wie das Match ausgeht, liegt im Verborgenen, weil TW das alles runterrechnet in den Replays.

Den Spielerrang kann man auch einfach wieder von Gamespy abrufen. :)

Der_Mosch 08-01-2008 19:27

Ich hab mir gerade ein paar Replays besorgt und fummel daran jetzt mal rum.

OMG, Sven hat ja im ersten Post einen LINK! :D Ich glaub, die Woche kann ich knicken, ich merk gar nichts :D

MyersGer 08-01-2008 21:04

Die Dateistruktur ist leicht unterschiedlich zu der von Generals. Aber das tut nicht wirklich weh. Das Auslesen an sich ist kein Ding, was nervt sind die dynamischen längen der Strings (z.B. Nickname) und ein fehlender vernünftiger Header.
Eigentlich bräuchtest du das ja eher als PHP, damit man das direkt beim Hochladen auslesen kann, oder Sven?

Sven 08-01-2008 22:02

Jupp, so ist es ;)

MyersGer 10-01-2008 09:49

Hm ja wenn ich mehr Zeit hätte, würde ich das gerne für euch machen. Aber ich habe selber ein paar Baustellen offen.

se7en 10-01-2008 16:28

kann mir wer ein paar Files schicken? Dann schau ich mir die mal an und wenns wirklich so einfach ist wie ich denke...

Sven 10-01-2008 16:31

Sind oben im ersten Posting verlinkt ;)

MyersGer 10-01-2008 21:18

Zitat:

Zitat von se7en (Beitrag 1501205)
kann mir wer ein paar Files schicken? Dann schau ich mir die mal an und wenns wirklich so einfach ist wie ich denke...

Musst nur darauf achten, dass die Strings in Unicode sind!

Gonzo 10-01-2008 23:47

Teilweise ;)

se7en 11-01-2008 14:01

@Sven, ich meinte eigentlich ein oder zwei Replay Dateien ;

Sven 11-01-2008 14:19

1 Anhang/Anhänge
http://www.cncforen.de/forumdisplay.php?f=515

Bedien dich ;)

Zum Vergleich ein Generals Replay

gersultan 11-01-2008 14:47

Zitat:

Zitat von se7en (Beitrag 1501318)
@Sven, ich meinte eigentlich ein oder zwei Replay Dateien ;

oder hier: http://www.cnc-community.de/articles...rticle_id=1349 :) (achtung custom-maps)

Chrissyx 12-01-2008 04:15

Tiberium Wars Replay Reader V0.3
 
Ich hab mich mal rangesetzt und eine erste lauffähige Version findet ihr hier:
http://www.chrissyx.com/beta/twrr/index.php

Im Moment wird unterstützt:
  • Dateiname
  • Dateigröße
  • Spielname
  • Mapname
  • Mapdateiname
  • Nicks aller Spieler
  • Spielversion
Wird noch ausgebaut, hab heute abend nicht mehr geschafft.
Wenn sich jemand ganz gut mit der C&C3 Replay Struktur auskennt (ist ja dann doch etwas anders als bei Generals), bitte melden!

Known bugs: Kommentator Eintrag im Replay wird als Spieler gelistet, Erkennung von Zuschauern fehlt (resultiert in Warnung, theoretisch :rolleyes: )

Bis dahin könnt ihr schon mal testen und rumspielen und bei Interesse kann ich die Version auch zum Download anbieten. Und ja, Quellcode ist dokumentiert (deutsch / englisch). ;)
So, n8! :sleep:

gersultan 12-01-2008 05:13

Zitat:

Known bugs: Kommentator Eintrag im Replay wird als Spieler gelistet,
meinst du damit:
Zitat:

Spieler 5: post Commentator
? Ich hab diese Angabe obwohl kein Commentator vorhanden war ;)

Chrissyx 13-01-2008 05:52

Tiberium Wars Replay Reader V0.5
 
Ja, das mein ich. In jedem Replay ist komischerweise ein Kommentatoreintrag vorhanden, unabhängig davon, ob tatsächlich kommentiert wurde oder nicht. Dieser wird dann einfach mitausgelesen und angezeigt. Ich bräuchte daher mal ein Replay, welches wirklich ein Kommentar mit dabei hat, so dass ich dann mal eine Erkennung einbauen kann. ;)

Jedenfalls hab ich weiter programmiert und nun wird folgendes unterstützt:
  • Dateiname
  • Dateigröße
  • Spielname
  • Mapname
  • Mapdateiname
  • Spielversion
sowie durchnummeriert Details über alle Spieler. Bei menschlichen:
  • Nick
  • Farbe
  • Partei
  • Position auf der Karte
  • Team
  • Clan Tag
Bei Computern:
  • Schwierigkeitsgrad
  • Farbe
  • Partei
  • Position auf der Karte
  • Team
  • Handicap
  • KI Persönlichkeit
Damit kann man schon was anfangen. :D
Was noch fehlt, ist die Unterstützung für Zuschauer (erkannt werden sie inzwischen) und, wie bereits erwähnt, die Sache mit den Kommentatoren. Dafür brauch ich dann auch passende Replays. :yes:
Probleme hab ich auch noch mit dem Datum, ich hab keine Ahnung, an welcher Stelle das im Replay steht. :ka:

Known bugs: "Kommentator-Leiche" wird immer angezeigt, Versionsnummer kann in seltenen Fällen falsch ausgelesen werden

Wer Bugs findet oder sonst was los werden will, immer her damit. ;)
http://www.chrissyx.com/beta/twrr/index.php

RedBasti 13-01-2008 10:04

Das funzt doch so weit schon mal sehr gut. :thx:

Was mir gerade bei einem Replay mit Beobachter aufgefallen ist, dass der Beobachter nicht als solcher ausgelesen wurde.
http://www.gamer-oase.de/files/cnc-c...977.CNC3Replay

War als Beo dabei, Partei steht aber hier auf zufällig.

Chrissyx 13-01-2008 18:33

Tiberium Wars Replay Reader V0.6
 
Ah gut, jetzt konnte ich auch Unterstützung für Zuschauer einbauen. :)
http://www.chrissyx.com/beta/twrr/index.php

Neu ist außerdem auch die Erkennung vom Spieltyp, ob Automatch oder Eigenes Match.
Wegen der "Kommentator-Leiche" hab ich wohl eine Lösung gefunden, wäre interessant zu wissen, wie sich das mit echten Kommentar-Replays verhält. Bis dahin sollten nur die tatsächlichen Beteiligten angezeigt werden. :yes:

Known bugs: Kommentatoren könnten ignoriert werden, Versionsnummer kann in seltenen Fällen falsch ausgelesen werden

Als nächstes kommen Angaben zu den Regeln, also wieviel Startgeld, Spielgeschwindigkeit oder Kisten an/aus. Hoffentlich irgendwann auch mal das Datum. :rolleyes:

Matze I 13-01-2008 18:44

So, ich hab mir einfach mal erlaubt das ding zu testen, und ein Replay hochzuladen.

Hochladen geht bereits, doch wo kann man nun das ding verlinken, bzw runterladen?

http://www.chrissyx.com/beta/twrr/index.php

Der steht nun oben so im Browserfenster. (Firefox)

Zitat:

Datei: Langes game.CNC3Replay
Größe: 1472 KB
Spielname: Zivilisation 21
Mapname: Riverside Rumble
Mapfilename: data/maps/official/map_mp_2_simon
Spieler 1: Z21|Matze_I, Farbe: Rot, Partei: Nod, Position: Zufällig, Team: -, Clan: Z-21
Spieler 2: Soifz, Farbe: Grün, Partei: Scrin, Position: Zufällig, Team: -, Clan: Z-21
Spieltyp: Eigenes Match
Version: 1.9
Zurück

Chrissyx 13-01-2008 19:22

Die Replays werden nicht auf dem Server gespeichert, es werden nur Infos ausgelesen und entsprechend angezeigt:

Zitat:

Zitat von Sven (Beitrag 1500662)
Dabei ist es ausreichend wenn die gefundenen Infos einfach nur ausgegeben werden (also keine wirklich Umsetzung in die HTML Ausgabe).

Sollte das Script dann später seinen Weg hier ins Forum finden, sind die angehängten Replays natürlich downloadbar wie gewohnt - nur das es dann zusätzliche Details gibt. ;)

Amosh 13-01-2008 21:16

Sehr gute Arbeit bis jetzt Chrissyx - gefällt mir so bereits sehr gut. :thx: ;)

gersultan 13-01-2008 21:18

aktuell bin ich sehr begeistert :gf::thx::)

Chrissyx 14-01-2008 04:37

Tiberium Wars Replay Reader V0.6.5
 
So, Spielgeschwindigkeit, Startgeld und Zufallskisten ein/aus ist nun auch drin. Ich hab schon einen Verdacht, was ranked/unranked, battlecasted und VoIP bedeuten könnte und werd die Tage mal passende Replays sammeln.
Wegen dem Datum hab ich fast das Gefühl, es ist gar keins vorhanden? :ka: Da wird wohl immer das Dateidatum genommen...
Die Kommentator Sache hab ich auch nochmal umgebaut, da ich mindestens ein Replay gefunden hab, wo das so nicht funktionierte und Spieler verschluckt wurden. Ich hoffe mal, jetzt geht's und ein Replay mit Kommentar zum Testen wäre immer noch eine dolle Sache. :D

Known bugs: Kommentatoren könnten ignoriert werden, Versionsnummer kann in seltenen Fällen falsch ausgelesen werden

http://www.chrissyx.com/beta/twrr/index.php

Sven 14-01-2008 10:46

Sehr schön bis jetzt :thx: ;)


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:25 Uhr.

Powered by vBulletin Version 3.7.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.