There are tons of ways to do this.. php, perl, bash , VB , C(/++/#) ... and many GUI tools are in the wild (not at least one from me, but ofc. HLSW is the most public I know).
Now I would like to tell you my favorite way to query a gameserver:
QStat
qstat is a commandline utility to query a hugh amount of different gameserver, and also voiceserver (unfortunality not mumble, but this is caused by mumble)
Also masterserver queries are possible with it.
QUOTE
-a2s query Half-Life 2 new server
-ams query America's Army v2.x server
-bfbc2 query Battlefield Bad Company 2 server
-bfs query BFRIS server
-cod2m query Call of Duty 2 Master server
-cod2s query Call of Duty 2 server
-cod4m query Call of Duty 4 Master server
-cod4s query Call of Duty 4 server
-codm query Call of Duty Master server
-cods query Call of Duty server
-crs query Command and Conquer: Renegade server
-d3g query Descent3 Gamespy Protocol server
-d3m query Descent3 Master (PXO) server
-d3p query Descent3 PXO protocol server
-d3s query Descent3 server
-dm3m query Doom 3 Master server
-dm3s query Doom 3 server
-efm query Star Trek: Elite Force server
-efs query Star Trek: Elite Force server
-etqws query QuakeWars server
-eye query All Seeing Eye Protocol server
-fcs query FarCry server
-fls query Frontlines-Fuel of War server
-gps query Gamespy Protocol server
-grs query Ghost Recon server
-gs2 query Gamespy V2 Protocol server
-gs3 query Gamespy V3 Protocol server
-gs4 query Gamespy V4 Protocol server
-gsm query Gamespy Master server
-h2s query Hexen II server
-hazes query Haze Protocol server
-hl2s query Half-Life 2 server
-hla2s query Half-Life server
-hla2sm query Steam Master server
-hlm query Half-Life Master server
-hlqs query Half-Life server
-hls query Half-Life server
-hrs query Heretic II server
-hwm query HexenWorld Master server
-hws query HexenWorld server
-iourtm query ioUrbanTerror Master server
-iourts query ioUrbanTerror server
-jk3m query Jedi Knight: Jedi Academy server
-jk3s query Jedi Knight: Jedi Academy server
-kps query Kingpin server
-maqs query Medal of Honor: Allied Assault (Q) server
-mas query Medal of Honor: Allied Assault server
-mhs query Medal of Honor: Allied Assault server
-netp query NetPanzer server
-netpm query NetPanzer Master server
-nexuizm query Nexuiz Master server
-nexuizs query Nexuiz server
-openarenam query OpenArena Master server
-openarenas query OpenArena server
-ottdm query openTTD Master server
-ottds query OpenTTD server
-preym query Prey Master server
-preys query PREY server
-prs query Pariah server
-q2m query Quake II Master server
-q2s query Quake II server
-q3m query Quake III Master server
-q3s query Quake III: Arena server
-q4m query Quake 4 Master server
-q4s query Quake 4 server
-qs query Quake server
-qwm query QuakeWorld Master server
-qws query QuakeWorld server
-rss query Ravenshield server
-rwm query Return to Castle Wolfenstein Master server
-rws query Return to Castle Wolfenstein server
-sas query Savage server
-sfs query Soldier of Fortune server
-sgs query Shogo: Mobile Armor Division server
-sms query Serious Sam server
-sns query Sin server
-sof2m query SOF2 Master server
-sof2m1.0 query SOF2 Master (1.0) server
-sof2s query Soldier of Fortune 2 server
-stm query Steam Master server
-stma2s query Steam Master for A2S server
-stmhl2 query Steam Master for HL2 server
-t2m query Tribes 2 Master server
-t2s query Tribes 2 server
-tbm query Tribes Master server
-tbs query Tribes server
-tee query Teeworlds server
-tm query TrackMania server
-tremulous query Tremulous server
-tremulousm query Tremulous Master server
-ts2 query Teamspeak 2 server
-ts3 query Teamspeak 3 server
-uns query Unreal server
-ut2004m query UT2004 Master server
-ut2004s query UT2004 server
-ut2s query Unreal Tournament 2003 server
-ut3s query UT3 server
-warsowm query Warsow Master server
-warsows query Warsow server
-waws query Call of Duty World at War server
-wics query World in Conflict server
-woetm query Enemy Territory Master server
-woets query Enemy Territory server
-wolfs query Wolfenstein server
-ams query America's Army v2.x server
-bfbc2 query Battlefield Bad Company 2 server
-bfs query BFRIS server
-cod2m query Call of Duty 2 Master server
-cod2s query Call of Duty 2 server
-cod4m query Call of Duty 4 Master server
-cod4s query Call of Duty 4 server
-codm query Call of Duty Master server
-cods query Call of Duty server
-crs query Command and Conquer: Renegade server
-d3g query Descent3 Gamespy Protocol server
-d3m query Descent3 Master (PXO) server
-d3p query Descent3 PXO protocol server
-d3s query Descent3 server
-dm3m query Doom 3 Master server
-dm3s query Doom 3 server
-efm query Star Trek: Elite Force server
-efs query Star Trek: Elite Force server
-etqws query QuakeWars server
-eye query All Seeing Eye Protocol server
-fcs query FarCry server
-fls query Frontlines-Fuel of War server
-gps query Gamespy Protocol server
-grs query Ghost Recon server
-gs2 query Gamespy V2 Protocol server
-gs3 query Gamespy V3 Protocol server
-gs4 query Gamespy V4 Protocol server
-gsm query Gamespy Master server
-h2s query Hexen II server
-hazes query Haze Protocol server
-hl2s query Half-Life 2 server
-hla2s query Half-Life server
-hla2sm query Steam Master server
-hlm query Half-Life Master server
-hlqs query Half-Life server
-hls query Half-Life server
-hrs query Heretic II server
-hwm query HexenWorld Master server
-hws query HexenWorld server
-iourtm query ioUrbanTerror Master server
-iourts query ioUrbanTerror server
-jk3m query Jedi Knight: Jedi Academy server
-jk3s query Jedi Knight: Jedi Academy server
-kps query Kingpin server
-maqs query Medal of Honor: Allied Assault (Q) server
-mas query Medal of Honor: Allied Assault server
-mhs query Medal of Honor: Allied Assault server
-netp query NetPanzer server
-netpm query NetPanzer Master server
-nexuizm query Nexuiz Master server
-nexuizs query Nexuiz server
-openarenam query OpenArena Master server
-openarenas query OpenArena server
-ottdm query openTTD Master server
-ottds query OpenTTD server
-preym query Prey Master server
-preys query PREY server
-prs query Pariah server
-q2m query Quake II Master server
-q2s query Quake II server
-q3m query Quake III Master server
-q3s query Quake III: Arena server
-q4m query Quake 4 Master server
-q4s query Quake 4 server
-qs query Quake server
-qwm query QuakeWorld Master server
-qws query QuakeWorld server
-rss query Ravenshield server
-rwm query Return to Castle Wolfenstein Master server
-rws query Return to Castle Wolfenstein server
-sas query Savage server
-sfs query Soldier of Fortune server
-sgs query Shogo: Mobile Armor Division server
-sms query Serious Sam server
-sns query Sin server
-sof2m query SOF2 Master server
-sof2m1.0 query SOF2 Master (1.0) server
-sof2s query Soldier of Fortune 2 server
-stm query Steam Master server
-stma2s query Steam Master for A2S server
-stmhl2 query Steam Master for HL2 server
-t2m query Tribes 2 Master server
-t2s query Tribes 2 server
-tbm query Tribes Master server
-tbs query Tribes server
-tee query Teeworlds server
-tm query TrackMania server
-tremulous query Tremulous server
-tremulousm query Tremulous Master server
-ts2 query Teamspeak 2 server
-ts3 query Teamspeak 3 server
-uns query Unreal server
-ut2004m query UT2004 Master server
-ut2004s query UT2004 server
-ut2s query Unreal Tournament 2003 server
-ut3s query UT3 server
-warsowm query Warsow Master server
-warsows query Warsow server
-waws query Call of Duty World at War server
-wics query World in Conflict server
-woetm query Enemy Territory Master server
-woets query Enemy Territory server
-wolfs query Wolfenstein server
Unfortunality, the last compiled qstat version available is a feeled century old, so I felt free to offer you a compiled version of qstat 2.12 for Windows operating systems
You can simply download it here: QStat_2.12_compiled4windows.zip
Unix / Linux user always should compile qstat by themself, here is the most current SVN checkout: QStat_2.12_SVN_Checkout_Sept23th2011
It`s a pure command-line utility
Installation:
Windows user: Unzip the compiled files to your System32 folder (this is to ensure you can execute qstat without entering the full path to it)
Unix / Linux user: Unzip the SVN checkout, and follow the instruction in COMILE.txt
QUOTE
make sure you installed autoconf and automake, run "./autogen.sh" , then "./configure" , then "make" and "make install"
Usage:
Open your commandline interface (for example: Windows [START] -> [RUN] -> type in "cmd", press enter .... unix user should know how to open a cli ;) )
then enter:
CODE
qstat -P -R -woets etw-funzone.eu:27960
to query the ETW 40 Map server.
qstat offers a big list of features... running qstat without any argument brings up a short overview.
or give
CODE
qstat -woetm etmaster.idsoftware.com
a try (it will take a few seconds before the output is shown)