Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: sourceserver.info. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

Infr@red

Fortgeschrittener

  • »Infr@red« ist der Autor dieses Themas

Beiträge: 378

Beruf: Management

Rootserver vorhanden: Ja

  • Nachricht senden

1

Montag, 13. Mai 2013, 16:03

Online Spieler zählen und Wert auf der Homepage ausgeben?

Servus,

ich suche eine Art Plugin welches mir die Spielerzahl auf einem GS als Wert ausgibt, dieser Wert müsste dann von allen GS kommen, so das man mittels z.B. MySQL das Ganze an ein PHP Script übergibt welches mir die Werte dann addiert und als Gesamtwert auf der Homepage ausgibt, so das dann da zum Beispiel steht:

"Zurzeit sind 120 Spieler Online!"

Sowas sollte doch möglich sein. Theoretisch könnte man doch auch versuchen die Ausgaben die schon von Sourcebans oder HlstatsX kommen auszuwerten und von allen Gameservern mittels einem kleinen PHP Script dann die Werte zusammenzählen lässt und diesen Wert dann auf der HP ausgibt.

Was meint Ihr, was würdet Ihr da vorschlagen, bzw. was ist für Euch der einfachste Weg?

Gruß,
Infrared

MadMakz

Super Moderator

Beiträge: 1 878

Wohnort: ~#

Rootserver vorhanden: Ja

  • Nachricht senden

2

Montag, 13. Mai 2013, 16:53

Als Basis:

https://github.com/xPaw/PHP-Source-Query-Class

Spoiler Spoiler

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
require_once(__DIR__ "/SourceQuery/SourceQuery.class.php");

define("SQ_SERVER_ADDR""85.214.76.223"); /* <------------- IP oder FQDN */
define("SQ_SERVER_PORT"27016);
define("SQ_TIMEOUT"1);
define("SQ_ENGINE"SourceQuery :: SOURCE);

$query = new SourceQuery();

try
{
    $query->Connect(SQ_SERVER_ADDRSQ_SERVER_PORTSQ_TIMEOUTSQ_ENGINE);
    
    $gs_info $query->GetInfo();
    
    echo $gs_info["Players"]; /* <------------- Anzahl Spieler auf Server inkl. Bots */
    
    echo "<br />";
    
    echo $gs_info["Bots"]; /* <------------- Anzahl Bots auf Server */
    
    echo "<br />";
    
    echo $gs_info["Players"] - $gs_info["Bots"]; /* <------------- Anzahl Spieler auf Server exkl. Bots */
    
    
}
catch(Exception $e)
{
    echo $e->getMessage();
}

$query->Disconnect();


Daraus eine funktion bauen, durch eine liste mit server/ports laufen lassen, dann entweder einzeln in eine DB speichern und in der ausgabe "total" berechnen lassen oder nur den totalen wert in eine DB speichern und direkt ausgeben (<- spart querys bei seitenaufruf) oder garnicht speichern (echtzeit).

IP im beispiel zufällig gewählt.

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »MadMakz« (13. Mai 2013, 17:04)


Infr@red

Fortgeschrittener

  • »Infr@red« ist der Autor dieses Themas

Beiträge: 378

Beruf: Management

Rootserver vorhanden: Ja

  • Nachricht senden

3

Dienstag, 14. Mai 2013, 09:08

Danke, ich werde das am WE mal angehen.

Infr@red

Fortgeschrittener

  • »Infr@red« ist der Autor dieses Themas

Beiträge: 378

Beruf: Management

Rootserver vorhanden: Ja

  • Nachricht senden

4

Freitag, 24. Mai 2013, 19:20

Ich war faul und hab es mir schreiben lassen, hier zu sehen:
http://5bo.de/index.php?action=count

Das Script besteht aus zwei Dateien, die Ausgabe der Gesamtspieler erfolgt Live und ohne MySql Datenbank. Nachträglich können ganz einfach Gameserver hinzugefügt werden und man kann die Links mithilfe von Identifier selbst anpassen, ist alles schön erklärt. Das Script nutz weiterhin die PHP-Source-Query-Class von XPaw.

Ich hab nun noch vor die Gesamtspieler in groß direkt im Header der Seite anzeigen zu lassen, ich finde das hat was :)

Falls jemand Interesse am Script hat kann er mir eine PN schreiben, da ich selbst etwas dafür bezahlt habe würde ich es für die Hälfte der Kosten weitergeben.

Ähnliche Themen