teamstatus abfragen

Alles rund um das scripten und Server aufsetzen
Antworten
|bTc|ClawFire
Haudegen
Haudegen
Beiträge: 575
Registriert: Mi 25. Jun 2008, 20:31
Alter: 60
Kontaktdaten:

teamstatus abfragen

Beitrag von |bTc|ClawFire »

hi,

hat jemand ne ahung wie man den teamstatus, also in welchem team jemand ist (R, B, S) abfragt?

danke
Bild
sn4ke hat geschrieben:also ich nehme hier mal kurz ... in Schutz und behaupte mal, das er weitaus mehr Ahnung von der technischen Seite des Spieles hat als alle anderen hier...
D4vid
Grünschnabel
Grünschnabel
Beiträge: 7
Registriert: Do 31. Jul 2008, 20:52
Wohnort: Ennigerloh
Alter: 35
Kontaktdaten:

Beitrag von D4vid »

ingame oder ausserhalb ingame einfach tab drücken das hilft zu sehen wer in welchem team ist xD anonsten hilft /players inner console x=axis l=allies s=spec ^^
|bTc|ClawFire
Haudegen
Haudegen
Beiträge: 575
Registriert: Mi 25. Jun 2008, 20:31
Alter: 60
Kontaktdaten:

Beitrag von |bTc|ClawFire »

meine durch ein externes script :wink:
ich kenne "getinfo" und "getstatus" doch keines von beiden gibt an in welchem team die spieler sich befinden
Bild
sn4ke hat geschrieben:also ich nehme hier mal kurz ... in Schutz und behaupte mal, das er weitaus mehr Ahnung von der technischen Seite des Spieles hat als alle anderen hier...
|bTc|ClawFire
Haudegen
Haudegen
Beiträge: 575
Registriert: Mi 25. Jun 2008, 20:31
Alter: 60
Kontaktdaten:

Beitrag von |bTc|ClawFire »

jemand ne ahnung?
z.b. bei spaltterladder sieht man das ja auch
Bild
sn4ke hat geschrieben:also ich nehme hier mal kurz ... in Schutz und behaupte mal, das er weitaus mehr Ahnung von der technischen Seite des Spieles hat als alle anderen hier...
silver
Hero of City
Hero of City
Beiträge: 4731
Registriert: Di 1. Jul 2003, 17:35
Wohnort: Castle Wolfenstein
Kontaktdaten:

Beitrag von silver »

|bTc|ClawFire hat geschrieben:jemand ne ahnung?
z.b. bei spaltterladder sieht man das ja auch
ich hab keine ahnung aber ich denke du musst den masterserver abfragen und der hat dann alle möglichen infos. weiß aber nicht wie das geht. hab das nie gemacht.
Bild
Bild
[url=irc://de.quakenet.org/wolfenstein-city]#wolfenstein-city @ quakenet[/url]
https://rtcw-city.de
www.EnemyTerritory.de
|bTc|ClawFire
Haudegen
Haudegen
Beiträge: 575
Registriert: Mi 25. Jun 2008, 20:31
Alter: 60
Kontaktdaten:

Beitrag von |bTc|ClawFire »

danke für die antwort, aber die masterserver wissen nur die IP der server, mehr leider nicht
Bild
sn4ke hat geschrieben:also ich nehme hier mal kurz ... in Schutz und behaupte mal, das er weitaus mehr Ahnung von der technischen Seite des Spieles hat als alle anderen hier...
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

'getstatus' liefert es dir.

ETmain und einige ältere Mods speichern die Liste in den Variablen 'Players_Axis' und 'Players_Allies'.
Die Listen enthalten die Position der Namen in der Playerliste.
Die Nummern sind durch Abstände getrennt, da man sonst '12' für Spieler 1 und 2 oder Spieler 12 halten könnte.

zB:
Server mit 8 Slots (2 davon privat)
Spielerliste: SpielerA SpielerB SpielerC SpielerD SpielerE Lagger
Players_Allies: 1 5
Players_Axis: 2 3

Das ergibt:
SpielerA und SpielerE sind Allies und SpielerB und SpielerC sind Axis.
Die Spieler mit dem Namen 'SpielerD' und 'Lagger' (4-ter und 6-ter in der Liste) werden nicht aufgeführt.
Entweder sind sie Zuschauer oder verbinden sich gerade.
Ob einer der Spieler auf einem privaten Slot spielt (und wenn ja, welcher?) kann man hier nicht ablesen.

Bunny hat mit ETpro die Variablen 'Players_Axis' und 'Players_Allies' durch die Variable 'P' ersetzt.
'P' steht für Player und beinhaltet für jeden Slot ein Zeichen.

Mögliche Zeichen:
'0' = Spieler auf diesem Slot verbindet sich gerade (connecting)
'1' = Spieler auf diesem Slot ist Axis
'2' = Spieler auf diesem Slot ist Allies
'3' = Spieler auf diesem Slot ist Zuschauer (Spectator)
'-' = Slot ist frei

Die dazugehörige Spielerliste musst du nur noch auf die Slots abbilden.

zB:
Server mit 8 Slots (2 davon privat)
Spielerliste: SpielerA SpielerB SpielerC SpielerD SpielerE Lagger
Variable-P: 2-11320

Daraus ergibt sich:

Slot 0 (privat): SpielerA Allies
Slot 1 (privat): frei
Slot 2 (public): SpielerB Axis
Slot 3 (public): SpielerC Axis
Slot 4 (public): SpielerD Spectator
Slot 5 (public): SpielerE Allies
Slot 6 (public): Lagger connecting
Slot 7 (public): frei

Den aufmerksamen Leser wird aufgefallen sein, daß die Variable 'P' im Beispiel nur 7 Zeichen enthält, obwohl der Server 8 Slots hat.
Dies ist kein Fehler. Sofern die restlichen Slots leer sind (also '-') werden sie einfach weggelassen.
Wenn du eine 'getstatus'-Abfrage an einen leeren Server richtest, fehlt die Variable 'P' komplett, da sie nur mit '-' gefüllt wäre.

Die Vorteile sind klar ersichtlich:
Man sieht gleich welche Slots tatsächlich belegt sind.
Ob, und wenn ja, welcher Spieler auf einem privaten Slot spielt.
Auch Zuschauer und Spieler die sich gerade verbinden werden aufgelistet.
Pro Slot wird nur ein Zeichen (Byte) übertragen, wodurch die Netzwerklast reduziert wird.

Die Variable 'P' wurde von allen Mods die noch aktiv entwickelt wurden und noch werden übernommen.

mfG WoodSTokk

PS: Was schreibst du den schönes?
Wenn du es in PHP schreibst, brauchst du das Rad nicht neu erfinden, das kannst du von mir haben.
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
MadGun
Hirngeschädigter
Hirngeschädigter
Beiträge: 1282
Registriert: Di 18. Feb 2003, 17:11
Wohnort: Bayern
Alter: 37
Kontaktdaten:

Beitrag von MadGun »

*Offtopic An*
..Und wiedereinmal frage ich mich, woher woodi du dein Wissen bzgl. et und rtcw beziehst ;) Wahnsinn, auf jede Frage ne Antwort wissen, großes Kompliment! ;)
*Offtopic Aus*
Bild
ciTy][MadGun

195.4.18.203:27960 - ciTy Gameserver
195.4.18.203:8767 - ciTy TeamSpeak
|bTc|ClawFire
Haudegen
Haudegen
Beiträge: 575
Registriert: Mi 25. Jun 2008, 20:31
Alter: 60
Kontaktdaten:

Beitrag von |bTc|ClawFire »

super danke,

ich selber schreibe es leider nicht, sondern ein kollege von mir und der macht liebent gerne alles selber.
finde es auch gut so, weil nur so lernt man wirklich was dazu :wink:

werde ihm das aber sofort zeigen und anbieten

danke :wink:
Bild
sn4ke hat geschrieben:also ich nehme hier mal kurz ... in Schutz und behaupte mal, das er weitaus mehr Ahnung von der technischen Seite des Spieles hat als alle anderen hier...
mx.Bo0om?
Jungspund
Jungspund
Beiträge: 14
Registriert: Di 24. Jun 2008, 19:49
Wohnort: Dortmund
Alter: 29
Kontaktdaten:

Beitrag von mx.Bo0om? »

*Offtopic nochmal an*

Woodstock hat wirklich eine Antwort auf alles ;)

*Offtopic direkt wieder aus*

^^
Bild
Benutzeravatar
WoodSTokk
Helpdesk
Helpdesk
Beiträge: 2634
Registriert: Fr 6. Dez 2002, 03:09
Wohnort: Wien/Österreich/Europa/Erde
Alter: 53

Beitrag von WoodSTokk »

Genug der Komplimente.

Das Wissen habe ich nur, weil ich mich selber damit vor 4 Jahren gespielt habe.
Damals hab ich (noch auf Windows) ein mIRC-Script zur Statusabfrage geschrieben.
Damit konnte ich im mIRC prüfen ob die MasterServer laufen, wieviele Server gerade registriert sind und den Status der GameServer abfragen.
Später habe ich das dann auch in PHP realisiert, aber da bekam ich selber schon Codeschnipsel.
Ich habe es nur aufbereitet und erweitert.
Das Ergebnis ist die Seite die man sieht, wenn man auf den Link in meiner Sig klickt.
Dem Script kann auch die IP und das Port von dem Server, den man befragen will, in der URI mitgeben.

Beispiele:
http://www.netplot.at/apes/server.php?i ... .213:27960
http://www.netplot.at/apes/server.php?i ... port=27960
http://www.netplot.at/apes/server.php?i ... 08.119.213

Wenn das Port dem Standard entspricht (27960), kann es auch weggelassen werden.
Wie man sieht, kann es auch mit RTCW-Servern umgehen.
Hatte da früher noch so einige Ideen, aber dazu bin ich dann nicht mehr gekommen.
Wer sich damit beschäftigen will, kann es jederzeit haben.

mfG WoodSTokk
Du scheisst es nicht zu wetzen
Testserver: @peStable (95.129.206.243:27960)
Antworten