2014-10-29 08:02:03 +01:00
|
|
|
node-GameDig - Game Server Query Library
|
|
|
|
---
|
|
|
|
node-GameDig is a game server query library, capable of querying for the status of
|
|
|
|
nearly any game or voice server. If a server makes its status publically available,
|
|
|
|
GameDig can fetch it for you.
|
|
|
|
|
|
|
|
GameDig is available as a node.js module, as well as a
|
|
|
|
[command line executable](#usage-from-command-line).
|
|
|
|
|
|
|
|
Usage from Node.js
|
|
|
|
---
|
|
|
|
|
|
|
|
```shell
|
|
|
|
npm install gamedig
|
|
|
|
```
|
|
|
|
|
|
|
|
```javascript
|
2017-08-09 12:41:30 +02:00
|
|
|
const Gamedig = require('gamedig');
|
2017-03-14 09:40:02 +01:00
|
|
|
Gamedig.query({
|
2019-01-13 05:22:26 +01:00
|
|
|
type: 'minecraft',
|
|
|
|
host: 'mc.example.com'
|
2017-03-14 09:40:02 +01:00
|
|
|
}).then((state) => {
|
2019-01-13 05:22:26 +01:00
|
|
|
console.log(state);
|
2017-03-14 09:40:02 +01:00
|
|
|
}).catch((error) => {
|
2019-01-13 05:22:26 +01:00
|
|
|
console.log("Server is offline");
|
2017-03-14 09:40:02 +01:00
|
|
|
});
|
|
|
|
```
|
|
|
|
|
2018-01-31 11:03:13 +01:00
|
|
|
### Query Options
|
|
|
|
|
|
|
|
**Typical**
|
2014-10-29 08:02:03 +01:00
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
* **type**: string - One of the game IDs listed in the game list below
|
|
|
|
* **host**: string - Hostname or IP of the game server
|
|
|
|
* **port**: number (optional) - Connection port or query port for the game server. Some
|
|
|
|
games utilize a separate "query" port. If specifying the game port does not seem to work as expected, passing in
|
|
|
|
this query port may work instead. (defaults to protocol default port)
|
2018-01-31 11:03:13 +01:00
|
|
|
|
|
|
|
**Advanced**
|
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
* **maxAttempts**: number - Number of attempts to query server in case of failure. (default 1)
|
|
|
|
* **socketTimeout**: number - Milliseconds to wait for a single packet. Beware that increasing this
|
2018-11-11 13:33:45 +01:00
|
|
|
will cause many queries to take longer even if the server is online. (default 2000)
|
2019-01-13 05:22:26 +01:00
|
|
|
* **attemptTimeout**: number - Milliseconds allowed for an entire query attempt. This timeout is not commonly hit,
|
2018-01-31 11:03:13 +01:00
|
|
|
as the socketTimeout typically fires first. (default 10000)
|
2019-01-13 05:22:26 +01:00
|
|
|
* **debug**: boolean - Enables massive amounts of debug logging to stdout. (default false)
|
2014-10-29 08:02:03 +01:00
|
|
|
|
2017-03-14 09:40:02 +01:00
|
|
|
### Return Value
|
2014-10-29 08:02:03 +01:00
|
|
|
|
2017-03-14 09:40:02 +01:00
|
|
|
The returned state object will contain the following keys:
|
2014-10-29 08:02:03 +01:00
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
* **name**: string - Server name
|
|
|
|
* **map**: string - Current server game map
|
|
|
|
* **password**: boolean - If a password is required
|
|
|
|
* **maxplayers**: number
|
|
|
|
* **players**: array of objects
|
|
|
|
* Each object **may or may not** contain name, ping, score, team, address.
|
|
|
|
* The number of players online can be determined by `players.length`.
|
|
|
|
* For servers which do not provide player names, this may be an array
|
|
|
|
of empty objects (ex. `[{},{},{}]`), one for each player without a name.
|
2019-01-14 05:21:29 +01:00
|
|
|
* **bots**: array of objects - Same schema as `players`
|
|
|
|
* **connect**: string
|
|
|
|
* This will typically include the game's `ip:port`
|
|
|
|
* The port will reflect the server's game port, even if your request specified the game's query port in the request.
|
|
|
|
* For some games, this may be a server ID or connection url if an IP:Port is not appropriate for end-users.
|
|
|
|
* **ping**: number
|
|
|
|
* Round trip time to the server (in milliseconds).
|
|
|
|
* Note that this is not the RTT of an ICMP echo, as ICMP packets are often blocked by NATs and node
|
|
|
|
has poor support for raw sockets.
|
|
|
|
* This value is derived from the RTT of one of the query packets, which is usually quite accurate, but may add a bit due to server lag.
|
|
|
|
* **raw**: freeform object (unstable)
|
|
|
|
* Contains all information received from the server in a disorganized format.
|
|
|
|
* The content of this field MAY change on a per-protocol basis between GameDig patch releases (although not typical).
|
2014-10-29 08:02:03 +01:00
|
|
|
|
|
|
|
Games List
|
|
|
|
---
|
|
|
|
|
2017-03-14 09:40:02 +01:00
|
|
|
### Supported
|
2014-10-29 08:02:03 +01:00
|
|
|
<!--- BEGIN GENERATED GAMES -->
|
|
|
|
|
2019-01-13 05:52:06 +01:00
|
|
|
* 7 Days to Die (7d2d)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Age of Chivalry (ageofchivalry)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Age of Empires 2 (aoe2)
|
|
|
|
* Alien Arena (alienarena)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Alien Swarm (alienswarm)
|
2019-01-13 05:52:06 +01:00
|
|
|
* ARK: Survival Evolved (arkse)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Aliens vs Predator 2 (avp2)
|
|
|
|
* Aliens vs Predator 2010 (avp2010)
|
2019-01-13 05:52:06 +01:00
|
|
|
* America's Army (americasarmy)
|
|
|
|
* America's Army 2 (americasarmy2)
|
|
|
|
* America's Army 3 (americasarmy3)
|
|
|
|
* America's Army: Proving Grounds (americasarmypg)
|
2017-08-09 05:55:26 +02:00
|
|
|
* ArmA (arma)
|
2019-01-13 05:52:06 +01:00
|
|
|
* ArmA 2 (arma2)
|
|
|
|
* ArmA 3 (arma3)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Armagetron (armagetron)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Baldur's Gate (baldursgate)
|
|
|
|
* Battalion 1944 (bat1944)
|
|
|
|
* Battlefield 1942 (bf1942)
|
|
|
|
* Battlefield Vietnam (bfv)
|
|
|
|
* Battlefield 2 (bf2)
|
|
|
|
* Battlefield 2142 (bf2142)
|
|
|
|
* Battlefield: Bad Company 2 (bfbc2)
|
|
|
|
* Battlefield 3 (bf3)
|
|
|
|
* Battlefield 4 (bf4)
|
|
|
|
* Battlefield Hardline (bfh)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Breach (breach)
|
|
|
|
* Breed (breed)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Brink (brink)
|
|
|
|
* Build and Shoot (buildandshoot)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Call of Duty (cod)
|
|
|
|
* Call of Duty: United Offensive (coduo)
|
|
|
|
* Call of Duty 2 (cod2)
|
|
|
|
* Call of Duty 3 (cod3)
|
|
|
|
* Call of Duty 4: Modern Warfare (cod4)
|
|
|
|
* Call of Duty: World at War (codwaw)
|
|
|
|
* Call of Duty: Modern Warfare 2 (codmw2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Call of Duty: Modern Warfare 3 (codmw3)
|
|
|
|
* Call of Juarez (callofjuarez)
|
|
|
|
* Chaser (chaser)
|
|
|
|
* Chrome (chrome)
|
|
|
|
* Codename Eagle (codenameeagle)
|
|
|
|
* Commandos 3: Destination Berlin (commandos3)
|
|
|
|
* Command and Conquer: Renegade (cacrenegade)
|
|
|
|
* Conan Exiles (conanexiles)
|
|
|
|
* Contact J.A.C.K. (contactjack)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Counter-Strike 1.6 (cs16)
|
2019-01-14 06:54:36 +01:00
|
|
|
* Counter-Strike: 2D (cs2d)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Counter-Strike: Condition Zero (cscz)
|
|
|
|
* Counter-Strike: Source (css)
|
2015-01-17 13:56:01 +01:00
|
|
|
* Counter-Strike: Global Offensive (csgo) [[Additional Notes](#csgo)]
|
2019-01-13 05:52:06 +01:00
|
|
|
* Cross Racing Championship (crossracing)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Crysis (crysis)
|
|
|
|
* Crysis Wars (crysiswars)
|
|
|
|
* Crysis 2 (crysis2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Daikatana (daikatana)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Dark Messiah of Might and Magic (dmomam)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Darkest Hour (darkesthour)
|
|
|
|
* DayZ (dayz) [[Additional Notes](#dayz)]
|
|
|
|
* DayZ Mod (dayzmod)
|
|
|
|
* Deadly Dozen: Pacific Theater (deadlydozenpt)
|
|
|
|
* Deer Hunter 2005 (dh2005)
|
|
|
|
* Descent 3 (descent3)
|
|
|
|
* Deus Ex (deusex)
|
|
|
|
* Devastation (devastation)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Dino D-Day (dinodday)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Dirt Track Racing 2 (dirttrackracing2)
|
|
|
|
* Dark and Light (dnl)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Day of Defeat (dod)
|
|
|
|
* Day of Defeat: Source (dods)
|
2017-08-09 05:55:26 +02:00
|
|
|
* Day of Infamy (doi)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Doom 3 (doom3)
|
|
|
|
* DOTA 2 (dota2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Drakan (drakan)
|
|
|
|
* Enemy Territory Quake Wars (etqw)
|
|
|
|
* F.E.A.R. (fear)
|
|
|
|
* F1 2002 (f12002)
|
|
|
|
* F1 Challenge 99-02 (f1c9902)
|
|
|
|
* Far Cry (farcry)
|
|
|
|
* Far Cry (farcry2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Fortress Forever (fortressforever)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Flashpoint (flashpoint)
|
|
|
|
* Frontlines: Fuel of War (ffow)
|
2017-08-10 13:49:42 +02:00
|
|
|
* FiveM (fivem)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Garry's Mod (garrysmod)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Ghost Recon: Advanced Warfighter (graw)
|
|
|
|
* Ghost Recon: Advanced Warfighter 2 (graw2)
|
|
|
|
* Giants: Citizen Kabuto (giantscitizenkabuto)
|
|
|
|
* Global Operations (globaloperations)
|
2017-08-10 13:49:42 +02:00
|
|
|
* Geneshift (geneshift)
|
2017-04-19 04:41:31 +02:00
|
|
|
* GoldenEye: Source (ges)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Gore (gore)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Gunman Chronicles (gunmanchronicles)
|
|
|
|
* Half-Life 1 Deathmatch (hldm)
|
|
|
|
* Half-Life 2 Deathmatch (hl2dm)
|
|
|
|
* Halo (halo)
|
|
|
|
* Halo 2 (halo2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Heretic 2 (heretic2)
|
|
|
|
* Hexen 2 (hexen2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* The Hidden: Source (hidden)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Hidden and Dangerous 2 (had2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Homefront (homefront)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Homeworld 2 (homeworld2)
|
|
|
|
* Hurtworld (hurtworld)
|
|
|
|
* IGI-2: Covert Strike (igi2)
|
|
|
|
* IL-2 Sturmovik (il2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Insurgency (insurgency)
|
2019-01-13 07:23:47 +01:00
|
|
|
* Insurgency: Sandstorm (insurgencysandstorm)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Iron Storm (ironstorm)
|
|
|
|
* James Bond: Nightfire (jamesbondnightfire)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Just Cause 2 Multiplayer (jc2mp)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Killing Floor (killingfloor)
|
|
|
|
* Killing Floor 2 (killingfloor2)
|
|
|
|
* Kingpin: Life of Crime (kingpin)
|
|
|
|
* KISS Psycho Circus (kisspc)
|
|
|
|
* DMP - KSP Multiplayer (kspdmp)
|
2014-10-29 08:02:03 +01:00
|
|
|
* KzMod (kzmod)
|
|
|
|
* Left 4 Dead (left4dead)
|
|
|
|
* Left 4 Dead 2 (left4dead2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Mafia 2 Multiplayer (m2mp)
|
2017-08-09 05:55:26 +02:00
|
|
|
* Medieval Engineers (medievalengineers)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Medal of Honor: Allied Assault (mohaa)
|
|
|
|
* Medal of Honor: Pacific Assault (mohpa)
|
|
|
|
* Medal of Honor: Airborne (mohab)
|
|
|
|
* Medal of Honor: Spearhead (mohsh)
|
|
|
|
* Medal of Honor: Breakthrough (mohbt)
|
|
|
|
* Medal of Honor 2010 (moh2010)
|
|
|
|
* Medal of Honor: Warfighter (mohwf)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Minecraft (minecraft) [[Additional Notes](#minecraft)]
|
2017-08-09 05:55:26 +02:00
|
|
|
* Minecraft: Pocket Edition (minecraftpe)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Monday Night Combat (mnc)
|
|
|
|
* Multi Theft Auto: Vice City (mtavc)
|
|
|
|
* Multi Theft Auto: San Andreas (mtasa)
|
|
|
|
* Mumble (mumble) [[Additional Notes](#mumble)]
|
2014-10-29 08:02:03 +01:00
|
|
|
* Mumble (mumbleping) [[Additional Notes](#mumble)]
|
|
|
|
* Mutant Factions (mutantfactions)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Nascar Thunder 2004 (nascarthunder2004)
|
2014-10-29 08:02:03 +01:00
|
|
|
* netPanzer (netpanzer)
|
|
|
|
* No More Room in Hell (nmrih)
|
|
|
|
* Natural Selection (ns)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Natural Selection 2 (ns2)
|
|
|
|
* Need for Speed: Hot Pursuit 2 (nfshp2)
|
|
|
|
* Nerf Arena Blast (nab)
|
|
|
|
* Neverwinter Nights (nwn)
|
|
|
|
* Neverwinter Nights 2 (nwn2)
|
|
|
|
* Nexuiz (nexuiz)
|
|
|
|
* Nitro Family (nitrofamily)
|
|
|
|
* No One Lives Forever (nolf)
|
|
|
|
* No One Lives Forever 2 (nolf2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Nuclear Dawn (nucleardawn)
|
2019-01-13 05:52:06 +01:00
|
|
|
* OpenArena (openarena)
|
2014-11-18 07:43:33 +01:00
|
|
|
* OpenTTD (openttd)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Operation Flashpoint (operationflashpoint)
|
|
|
|
* Painkiller (painkiller)
|
|
|
|
* Postal 2 (postal2)
|
|
|
|
* Prey (prey)
|
|
|
|
* Primal Carnage: Extinction (primalcarnage)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Quake 1: QuakeWorld (quake1)
|
|
|
|
* Quake 2 (quake2)
|
|
|
|
* Quake 3: Arena (quake3)
|
|
|
|
* Quake 4 (quake4)
|
|
|
|
* Rag Doll Kung Fu (ragdollkungfu)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Rainbow Six (r6)
|
|
|
|
* Rainbow Six 2: Rogue Spear (r6roguespear)
|
|
|
|
* Rainbow Six 3: Raven Shield (r6ravenshield)
|
|
|
|
* RalliSport Challenge (rallisportchallenge)
|
|
|
|
* Rally Masters (rallymasters)
|
|
|
|
* Red Orchestra (redorchestra)
|
|
|
|
* Red Orchestra: Ostfront 41-45 (redorchestraost)
|
|
|
|
* Red Orchestra 2 (redorchestra2)
|
|
|
|
* Redline (redline)
|
|
|
|
* Return to Castle Wolfenstein (rtcw)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Ricochet (ricochet)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Rise of Nations (riseofnations)
|
|
|
|
* Rune (rune)
|
2016-06-03 08:16:44 +02:00
|
|
|
* Rust (rust)
|
2014-10-29 08:02:03 +01:00
|
|
|
* San Andreas Multiplayer (samp)
|
2017-08-09 05:55:26 +02:00
|
|
|
* Space Engineers (spaceengineers)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Serious Sam (ss)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Serious Sam 2 (ss2)
|
|
|
|
* Shattered Horizon (shatteredhorizon)
|
|
|
|
* The Ship (ship)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Shogo (shogo)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Shootmania (shootmania) [[Additional Notes](#nadeo-shootmania--trackmania--etc)]
|
2019-01-13 05:52:06 +01:00
|
|
|
* SiN (sin)
|
2014-10-29 08:02:03 +01:00
|
|
|
* SiN Episodes (sinep)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Soldat (soldat)
|
|
|
|
* Soldier of Fortune (sof)
|
|
|
|
* Soldier of Fortune 2 (sof2)
|
|
|
|
* S.T.A.L.K.E.R. (stalker)
|
|
|
|
* Star Trek: Bridge Commander (stbc)
|
|
|
|
* Star Trek: Voyager - Elite Force (stvef)
|
|
|
|
* Star Trek: Voyager - Elite Force 2 (stvef2)
|
|
|
|
* Star Wars: Battlefront (swbf)
|
|
|
|
* Star Wars: Battlefront 2 (swbf2)
|
|
|
|
* Star Wars: Jedi Knight (swjk)
|
|
|
|
* Star Wars: Jedi Knight 2 (swjk2)
|
|
|
|
* Star Wars: Republic Commando (swrc)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Starbound (starbound)
|
2015-01-18 04:10:44 +01:00
|
|
|
* StarMade (starmade)
|
2019-01-13 07:01:55 +01:00
|
|
|
* Starsiege (2009) (starsiege)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Suicide Survival (suicidesurvival)
|
2019-01-13 05:52:06 +01:00
|
|
|
* SWAT 4 (swat4)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Sven Coop (svencoop)
|
|
|
|
* Synergy (synergy)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Tactical Ops (tacticalops)
|
|
|
|
* Team Factor (teamfactor)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Team Fortress Classic (tfc)
|
|
|
|
* Team Fortress 2 (tf2)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Teamspeak 2 (teamspeak2)
|
|
|
|
* Teamspeak 3 (teamspeak3) [[Additional Notes](#teamspeak3)]
|
|
|
|
* Terminus (terminus)
|
|
|
|
* Terraria (terraria) [[Additional Notes](#terraria)]
|
|
|
|
* Tony Hawk's Pro Skater 3 (thps3)
|
|
|
|
* Tony Hawk's Pro Skater 4 (thps4)
|
|
|
|
* Tony Hawk's Underground 2 (thu2)
|
2017-08-09 05:55:26 +02:00
|
|
|
* Tower Unite (towerunite)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Trackmania 2 (trackmania2) [[Additional Notes](#nadeo-shootmania--trackmania--etc)]
|
|
|
|
* Trackmania Forever (trackmaniaforever) [[Additional Notes](#nadeo-shootmania--trackmania--etc)]
|
2019-01-13 05:52:06 +01:00
|
|
|
* Tremulous (tremulous)
|
2018-03-18 06:54:56 +01:00
|
|
|
* Tribes 1: Starsiege (tribes1)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Tribes: Vengeance (tribesvengeance)
|
|
|
|
* Tron 2.0 (tron20)
|
|
|
|
* Turok 2 (turok2)
|
|
|
|
* Universal Combat (universalcombat)
|
|
|
|
* Unreal (unreal)
|
|
|
|
* unturned (unturned)
|
|
|
|
* Unreal Tournament (ut)
|
|
|
|
* Unreal Tournament 2003 (ut2003)
|
|
|
|
* Unreal Tournament 2004 (ut2004)
|
|
|
|
* Unreal Tournament 3 (ut3)
|
|
|
|
* Urban Terror (urbanterror)
|
|
|
|
* V8 Supercar Challenge (v8supercar)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Ventrilo (ventrilo)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Vietcong (vietcong)
|
|
|
|
* Vietcong 2 (vietcong2)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Warsow (warsow)
|
2019-01-13 05:52:06 +01:00
|
|
|
* Wheel of Time (wheeloftime)
|
|
|
|
* Wolfenstein 2009 (wolfenstein2009)
|
|
|
|
* Wolfenstein: Enemy Territory (wolfensteinet)
|
|
|
|
* Xpand Rally (xpandrally)
|
2014-10-29 08:02:03 +01:00
|
|
|
* Zombie Master (zombiemaster)
|
|
|
|
* Zombie Panic: Source (zps)
|
|
|
|
|
|
|
|
<!--- END GENERATED GAMES -->
|
|
|
|
|
2017-03-14 09:40:02 +01:00
|
|
|
### Not supported (yet)
|
2014-10-29 08:02:03 +01:00
|
|
|
|
|
|
|
* rFactor Engine (rfactor):
|
|
|
|
* rFactor
|
|
|
|
* Arca Sim Racing
|
|
|
|
* Cube Engine (cube):
|
|
|
|
* Cube 1
|
|
|
|
* Assault Cube
|
|
|
|
* Cube 2: Sauerbraten
|
|
|
|
* Blood Frontier
|
|
|
|
* BFRIS
|
|
|
|
* Call of Duty: Black Ops 1 and 2 (no documentation, may require rcon)
|
|
|
|
* Counter-Strike 2D
|
|
|
|
* Freelancer
|
|
|
|
* Ghost Recon
|
|
|
|
* GTR2
|
|
|
|
* Haze
|
|
|
|
* Hexen 2
|
|
|
|
* Plain Sight
|
|
|
|
* Red Faction
|
|
|
|
* Savage: Battle for Newerth
|
|
|
|
* Savage 2: A Tortured Soul
|
|
|
|
* Sum of All Fears
|
|
|
|
* Teeworlds
|
|
|
|
* Tribes 2
|
|
|
|
* Vice City Multiplayer
|
|
|
|
* World in Conflict
|
|
|
|
|
|
|
|
> Want support for one of these games? Please open an issue to show your interest!
|
|
|
|
> __Know how to code?__ Protocols for most of the games above are documented
|
|
|
|
> in the /reference folder, ready for you to develop into GameDig!
|
|
|
|
|
|
|
|
> Don't see your game listed here?
|
|
|
|
>
|
|
|
|
> First, let us know so we can fix it. Then, you can try using some common query
|
|
|
|
> protocols directly by using one of these server types:
|
|
|
|
> * protocol-ase
|
|
|
|
> * protocol-battlefield
|
|
|
|
> * protocol-doom3
|
|
|
|
> * protocol-gamespy1
|
|
|
|
> * protocol-gamespy2
|
|
|
|
> * protocol-gamespy3
|
|
|
|
> * protocol-nadeo
|
|
|
|
> * protocol-quake2
|
|
|
|
> * protocol-quake3
|
|
|
|
> * protocol-unreal2
|
|
|
|
> * protocol-valve
|
|
|
|
|
|
|
|
Games with Additional Notes
|
|
|
|
---
|
|
|
|
|
2015-01-17 13:55:32 +01:00
|
|
|
### <a name="csgo"></a>Counter-Strike: Global Offensive
|
|
|
|
To receive a full player list response from CS:GO servers, the server must
|
|
|
|
have set the cvar: host_players_show 2
|
|
|
|
|
2014-10-29 08:02:03 +01:00
|
|
|
### DayZ
|
|
|
|
DayZ uses a query port that is separate from its main game port. The query port is usually
|
2019-01-13 05:22:26 +01:00
|
|
|
the game port PLUS 24714 or 24715. You may need to pass this query port into GameDig instead.
|
2014-10-29 08:02:03 +01:00
|
|
|
|
|
|
|
### Mumble
|
|
|
|
For full query results from Mumble, you must be running the
|
|
|
|
[GTmurmur plugin](http://www.gametracker.com/downloads/gtmurmurplugin.php).
|
|
|
|
If you do not wish to run the plugin, or do not require details such as channel and user lists,
|
|
|
|
you can use the 'mumbleping' server type instead, which uses a less accurate but more reliable solution
|
|
|
|
|
|
|
|
### Nadeo (ShootMania / TrackMania / etc)
|
|
|
|
The server must have xmlrpc enabled, and you must pass the xmlrpc port to GameDig, not the connection port.
|
|
|
|
You must have a user account on the server with access level User or higher.
|
|
|
|
Pass the login into to GameDig with the additional options: login, password
|
|
|
|
|
2015-01-17 13:55:32 +01:00
|
|
|
### <a name="teamspeak3"></a>TeamSpeak 3
|
|
|
|
For teamspeak 3 queries to work correctly, the following permissions must be available for the guest server group:
|
2015-01-17 13:57:44 +01:00
|
|
|
|
2015-01-17 13:55:32 +01:00
|
|
|
* Virtual Server
|
2015-01-17 13:57:44 +01:00
|
|
|
* b_virtualserver_info_view
|
|
|
|
* b_virtualserver_channel_list
|
|
|
|
* b_virtualserver_client_list
|
2015-01-17 13:55:32 +01:00
|
|
|
* Group
|
2015-01-17 13:57:44 +01:00
|
|
|
* b_virtualserver_servergroup_list
|
|
|
|
* b_virtualserver_channelgroup_list
|
2015-01-17 13:55:32 +01:00
|
|
|
|
2014-10-29 08:02:03 +01:00
|
|
|
### Terraria
|
|
|
|
Requires tshock server mod, and a REST user token, which can be passed to GameDig with the
|
|
|
|
additional option: token
|
|
|
|
|
|
|
|
Usage from Command Line
|
|
|
|
---
|
|
|
|
|
|
|
|
Want to integrate server queries from a batch script or other programming language?
|
|
|
|
You'll still need npm to install gamedig:
|
|
|
|
```shell
|
|
|
|
npm install gamedig -g
|
|
|
|
```
|
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
After installing gamedig globally, you can call gamedig via the command line:
|
2014-10-29 08:02:03 +01:00
|
|
|
```shell
|
2019-01-13 05:22:26 +01:00
|
|
|
gamedig --type minecraft mc.example.com:11234
|
2014-10-29 08:02:03 +01:00
|
|
|
```
|
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
The output of the command will be in JSON format. Additional advanced parameters can be passed in
|
|
|
|
as well: `--debug`, `--pretty`, `--socketTimeout 5000`, etc.
|
2017-08-09 12:23:54 +02:00
|
|
|
|
2019-01-13 04:32:24 +01:00
|
|
|
Changelog
|
2017-08-09 12:23:54 +02:00
|
|
|
---
|
|
|
|
|
2019-01-20 10:45:57 +01:00
|
|
|
### 2.0.6
|
|
|
|
* Added support for host domains requiring Punycode encoding (special characters)
|
|
|
|
|
2019-01-14 06:54:36 +01:00
|
|
|
### 2.0.5
|
|
|
|
* Added support for Counter-Strike: 2D
|
|
|
|
|
2019-01-14 05:21:29 +01:00
|
|
|
### 2.0.4
|
|
|
|
* Added details about new 2.0 reponse fields to the README.
|
|
|
|
|
2019-01-13 07:23:47 +01:00
|
|
|
### 2.0.3
|
|
|
|
* Added support for Insurgency: Sandstorm
|
|
|
|
|
2019-01-13 07:01:55 +01:00
|
|
|
### 2.0.2
|
|
|
|
* Added support for Starsiege 2009 (starsiege)
|
|
|
|
|
2019-01-13 05:57:29 +01:00
|
|
|
### 2.0.1
|
2019-01-13 07:08:32 +01:00
|
|
|
* Updated readme games list for 2.0
|
2019-01-13 05:57:29 +01:00
|
|
|
* Fixed csgo default port
|
|
|
|
|
2019-01-13 07:08:32 +01:00
|
|
|
### 2.0.0
|
2019-01-13 05:22:26 +01:00
|
|
|
|
|
|
|
##### Breaking API changes
|
|
|
|
* **Node 8 is now required**
|
2019-01-13 04:32:24 +01:00
|
|
|
* Removed the `port_query` option. You can now pass either the server's game port **or** query port in the `port` option, and
|
|
|
|
GameDig will automatically discover the proper port to query. Passing the query port is more likely be successful in
|
|
|
|
unusual cases, as otherwise it must be automatically derived from the game port.
|
|
|
|
* Removed `callback` parameter from Gamedig.query. Only promises are now supported. If you would like to continue
|
|
|
|
using callbacks, you can use node's `util.callbackify` function to convert the method to callback format.
|
|
|
|
* Removed `query` field from response object, as it was poorly documented and unstable.
|
2019-01-13 05:22:26 +01:00
|
|
|
* Removed `notes` field from options / response object. Data can be passed through a standard javascript context if needed.
|
|
|
|
|
2019-01-13 04:32:24 +01:00
|
|
|
##### Minor Changes
|
|
|
|
* Rewrote core to use promises extensively for better error-handling. Async chains have been dramatically simplified
|
|
|
|
by using async/await across the codebase, eliminating callback chains and the 'async' dependency.
|
|
|
|
* Replaced `--output pretty` cli parameter with `--pretty`.
|
|
|
|
* You can now query from CLI using shorthand syntax: `gamedig --type <gameid> <ip>[:<port>]`
|
|
|
|
* UDP socket is only opened if needed by a query.
|
|
|
|
* Automatic query port detection -- If provided with a non-standard port, gamedig will attempt to discover if it is a
|
|
|
|
game port or query port by querying twice: once to the port provided, and once to the port including the game's query
|
|
|
|
port offset (if available).
|
|
|
|
* Added new `connect` field to the response object. This will typically include the game's `ip:port` (the port will reflect the server's
|
|
|
|
game port, even if you passed in a query port in your request). For some games, this may be a server ID or connection url
|
|
|
|
if an IP:Port is not appropriate.
|
2019-01-13 05:22:26 +01:00
|
|
|
* Added new `ping` field (in milliseconds) to the response object. As icmp packets are often blocked by NATs, and node has poor support
|
|
|
|
for raw sockets, this time is derived from the rtt of one of the UDP requests, or the time required to open a TCP socket
|
2019-01-13 04:32:24 +01:00
|
|
|
during the query.
|
2019-01-13 05:22:26 +01:00
|
|
|
* Improved debug logging across all parts of GameDig
|
|
|
|
* Removed global `Gamedig.debug`. `debug` is now an option on each query.
|
2019-01-13 04:32:24 +01:00
|
|
|
|
2019-01-13 05:22:26 +01:00
|
|
|
##### Protocol Changes
|
|
|
|
* Added support for games using older versions of battlefield protocol.
|
|
|
|
* Simplified detection of BC2 when using battlefield protocol.
|
|
|
|
* Fixed buildandshoot not reading player list
|
|
|
|
* Standardized all doom3 games into a single protocol, which can discover protocol discrepancies automatically.
|
|
|
|
* Standardized all gamespy2 games into a single protocol, which can discover protocol discrepancies automatically.
|
|
|
|
* Standardized all gamespy3 games into a single protocol, which can discover protocol discrepancies automatically.
|
|
|
|
* Improved valve protocol challenge key retry process
|
2019-01-13 04:32:24 +01:00
|
|
|
|
2019-01-13 07:08:32 +01:00
|
|
|
### 1.0.0
|
2017-08-09 12:23:54 +02:00
|
|
|
* First official release
|
2019-01-13 05:22:26 +01:00
|
|
|
* Node.js 6 is now required
|