PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gameserver auslesen?


creave
2006-02-24, 18:51:36
Hi,

bin gerade dabei, in C# ein Programm zu schreiben mit welchem man Servereinstellungen eines Counterstrike Servers editieren (löschen/hinzufügen) , das ganze neustarten sowie darauf connecten und Pingstabilität testen kann.
Das ganze geht soweit auch ganz gut, leider fehlt noch sowas wie "Gametracking", also dass man spielspezifische Sachen wie Frags, Spieler und Map auslesen kann.

Die oben genannten Sachen wie anpingen oder Daten ändern/uploaden funktionieren ja überall gleich, nur zu diesen speziellen Gameserversachen findet man fast nichts.

Vielleicht habt ihr ja ne Idee wie man sowas umsetzen kann, danke schonmal :)

DR.DEATH
2006-02-26, 20:08:50
Ich nehme mal an du meinst normales CounterStrie (1.6). Ist es dann das was du suchst? Falls ja, noch mehr findest du in der "server protocol.txt" im SDK.


Game servers will answer the following messages:
Messages are sent to the server by sending 4 consecutive bytes of 255 (32-bit integer -1) and then the string command followed by a zero byte to terminate it

"ping"
Server responds with the following packet:
(int32) -1
(byte) ASCII 'j' (general acknowledgement, A2A_ACK)
(byte) 0

"info"
Server responds with the following packet:
(int32) -1
(byte) ASCII 'C' (info response, S2A_INFO)
(string) net address of server
(string) name of the host / server
(string) name of the map
(string) game directory (i.e. valve/)
(string) Game description (e.g. "half-life multiplay")
(byte) active client count
(byte) maximum clients allowed
(byte) protocol version

"players"
Server responds with the following packet:
(int32) -1
(byte) ASCII 'D' (players response, S2A_PLAYER)
(byte) active client count

for each active client
(byte) client number / index
(string) player name
(int32) client's frag total
(float32) client's total time in-game

"rules"
Server responds with the following packet:
(int32) -1
(byte) ASCII 'E' (rules response, S2A_RULES)
(int16) number of rules

for each rule
(string) rule name
(string) rule value

creave
2006-02-27, 13:07:54
Danke schonmal :) , jo ich rede ebenfalls von 1.6.
aber kann es sein dass man ein Source Produkt besitzen muss um an das SDK zu kommen?
Bei mir in Steam wird das SDK nicht zum herunterladen angezeigt, oder bekommt man das auch woanders?

mfg

DR.DEATH
2006-02-27, 13:28:07
Nein, braucht man nicht. Valva bietet das SDK bei Source nur gleich in der Games- oder Toolsverwaltung mit an.

Es gibt zu HL1 mehrere SDKs: 1. ProSDK = Komplett (Quellcode, Models, Dokumentation), 2. Nur der Code und 3. Nur die Dokumentation.

Die ganzen Sachen und jede Menge Codingbeispiele fuer Mods usw. findest du auf http://www.resourcecode.de/. Einfach auf GameDev/Half-Life und gaaaanz runter scrollen, da sind alle SDKs und noch ein paar Sachen gelistet.

creave
2006-02-27, 14:26:29
Genau die Seite hab ich auch schon gesucht, nochmal thx :)

mfg