Avatar billede -rayman- Nybegynder
07. maj 2001 - 21:06 Der er 18 kommentarer og
1 løsning

PHP skal finde navne, scores, ping fra online spillere på server

Jeg vil gerne have en oversigt over nogle online servere hvor man skal kunne se:
-hvem der spiller
-hvor mange frags hver person har
-hvilken ping personerne har

og hvis det er muligt hvor lang til der er gået af spillet.....jeg ved de første 3 ting er mulige, da jeg har set det lavet i asp.....jeg ville bare gerne have det i php og da jeg ikke er en haj til php vil jeg gerne have lidt hjælp :)
Avatar billede f2 Nybegynder
07. maj 2001 - 21:09 #1
øh.. online servere? hvilke slags servere?
Avatar billede kornfreak Nybegynder
07. maj 2001 - 21:11 #2
Vædder med det er CS ;)
Avatar billede magnus_madsen Nybegynder
07. maj 2001 - 21:12 #3
lytter lige med :)
Avatar billede fico Nybegynder
07. maj 2001 - 21:15 #4
ditto
Avatar billede f2 Nybegynder
07. maj 2001 - 21:16 #5
jeg tror oxo det er CS, og der har jeg da en kode, men den gir jeg sq ikke væk for eksperten-point
Avatar billede sukos Juniormester
07. maj 2001 - 21:31 #6
Hvem er cs?
Avatar billede f2 Nybegynder
07. maj 2001 - 21:32 #7
lol..
cs = Counter-Strike - et spil !
Avatar billede sukos Juniormester
07. maj 2001 - 21:34 #8
Ve\' han hck\' eller hva\'?
Avatar billede myplacedk Nybegynder
08. maj 2001 - 07:16 #9
Rayman, du finder bare specifikationerne for hvordan man gør det med din \"se- rver\", så skal vi nok hjælpe dig med at gøre det i PHP.
Avatar billede -rayman- Nybegynder
08. maj 2001 - 17:27 #10
Det er en Quake3-servere og ikke cs :)

Jeg havde tænkt mig at lave det ved at bruge en socketfunktion, men jeg er ikke klar over hvordan dataerne kommer tilbage fra serveren når man har sendt sin request.....
Egentlig er jeg heller ikke helt klar hvordan jeg vil lave det endnu......men jeg læser i PHP-manualen og har hjælp fra en ven......så det går nok....

Myplacedk --> jeg er ikke helt klar over hvad du mener med specifikationerne......hvis det er IP og portaddresse og den slags har jeg det.....
Avatar billede f2 Nybegynder
08. maj 2001 - 17:31 #11
ok.. så er jeg ude af det her ;]
Avatar billede myplacedk Nybegynder
08. maj 2001 - 18:32 #12
Med \"specifikationer\" mener jeg \"hvordan kommunikerer man med så\'n en server?\".
Altså... Det er fint nok at vi kan åbne en tcp eller udp forbindelse til post dit på servernavn dat.
Med hvad skal vi sende for at få de informationer vi vil have, og hvordan tolker vi det, der kommer retur?

HTTP fungerer fx. ved at man sender fx. \"GET /fil.html HTTP/1.0\" og et linjeskift. Så kommer diverse headers, fx. \"Host: server.dk\" og et linjeskift. Efter sidste heder kommer et ekstra linjeskift (altså to i træk), og så sender serveren sit svar.
Svaret er HEADER + \": \" VÆRDI + LINJESKIFT (Fx. \"Content-type: text/html\\n\", og et ekstra linjeskift efter sidste header. Og så kommer selve dokumentet.

Tilsvarende information skal vi bruge om den server du vil hente information fra. Meget gerne meget mere detaljeret. :)

For mig at se er PHP-delen langt det mindste. Du skal altså finde specifikationerne, og skrive det \"om\" til PHP.

Det sidste kan jeg godt hjælpe med.
Avatar billede -rayman- Nybegynder
09. maj 2001 - 12:25 #13
Jeg ved faktisk ikke hvordan der skal kommunikeres med serveren, men der er en som har lavet noget han påstår virker......

Han har lavet det således:

$fp = fsockopen (\"udp://129.142.227.7\", 27962, $errno, $errstr, 10);
if (!$fp) {
echo \"$errstr ($errno)<br>\\n\";
}
$bm = socket_set_blocking ($fp,FALSE);
fputs($fp, \"ÿÿÿÿgetstatus\\n\");
while (!$status) {
$status = fread ($fp,100000);
echo $status;
}
fclose($fp);
\"Hvis du har adgang til php4 findes der vist nogle smartere socket-kommandorer...
Jeg har ladet mig inspirere af sourcen til q3plug (som sagt ved jeg INTET om php): sourceforge.net/projects/q3plug\"

Jeg har prøvet at køre det script hvor jeg ændrede i port og IP men det virker ikke :(

Det han sender er tilsyneladende getstatus og så svarer serveren ham......jeg håber det er en hjælp :)
Avatar billede myplacedk Nybegynder
09. maj 2001 - 17:51 #14
Æhh... OK, så er vi vel næsten færdige nu...
Men du må fortælle hvad der går galt...
Avatar billede -rayman- Nybegynder
09. maj 2001 - 20:20 #15
Jeg har det færdige script nu, men det er lavet med classes, hvilket jeg ikke fatter en bønne af :(

Desuden er der det problem at den hele tiden timer ud......
Den skriver at den kun nåede til en bestemt linie i scriptet da de 30 sekunder der var tilrådighed var brugt op......det er som om den ikke når at køre hele scriptet inden tiden er brugt op.....
Det er måske lidt mærkeligt formuleret, men jeg ved ikke hvordan jeg ellers skal beskrive det.....
Avatar billede myplacedk Nybegynder
09. maj 2001 - 21:16 #16
Hvis det er det eneste problem, så kig her:
http://php.net/manual/en/function.set-time-limit.php
Avatar billede -rayman- Nybegynder
11. maj 2001 - 16:57 #17
Det virker heller ikke......

Jeg har prøvet at øge den tid sciptet har til at blive kørt i, men den timer stadig bare ud, også selvom jeg sætter tiden vildt højt....

Desuden har jeg set scriptet køre online på en anden server hvor det ikke tager mange sekunder for den at finde det......

Scriptet kører her:
http://www.rindholt.dk/fezzor/testserverclass.php

Hvis jeg lægger den fil op på min egen server virker det ikke. Den timer ud.
Jeg fatter det ikke......
Avatar billede myplacedk Nybegynder
12. maj 2001 - 10:56 #18
Hvordan \"timer ud\"? Der er næsten 117 fejl der kan gå ind under den beskrivelse...

Kan vi ikke se det køre et sted?
Avatar billede -rayman- Nybegynder
16. maj 2001 - 08:03 #19
Beklager at jeg ikke har svaret i lang tid nu, men jeg fået en ven til at lave scriptet. Jeg fandt ud af hvorfor den hele tiden timede ud........
Ham som havde lavet scriptet, havde lavet en løkke som aldrig stoppede, derfor timede den ud....

Jeg har altså fået lavet scriptet nu, og min ven viste mig en side hvor man kan se hvordan server svarer på en request i mange af de mest populære online spil.

Disse informationer kan findes her:
http://www.coldstorage.gamecop.com/texts/QueryingGameServers.txt

Jeg tænkte at det måske kunne være en hjælp for andre :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester