More release dates and readme cleanup

This commit is contained in:
mmorrison 2019-02-07 00:37:33 -06:00
parent 0c19c734b1
commit ab6e9064d2
3 changed files with 202 additions and 196 deletions

201
README.md
View file

@ -85,8 +85,6 @@ Games List
| `aoe2` | Age of Empires 2 (1999) | `aoe2` | Age of Empires 2 (1999)
| `alienarena` | Alien Arena (2004) | `alienarena` | Alien Arena (2004)
| `alienswarm` | Alien Swarm (2010) | `alienswarm` | Alien Swarm (2010)
| `arkse` | Ark: Survival Evolved (2017)
| `atlas` | Atlas (2018)
| `avp2` | Aliens versus Predator 2 (2001) | `avp2` | Aliens versus Predator 2 (2001)
| `avp2010` | Aliens vs. Predator (2010) | `avp2010` | Aliens vs. Predator (2010)
| `americasarmy` | America's Army (2002) | `americasarmy` | America's Army (2002)
@ -94,57 +92,63 @@ Games List
| `americasarmy3` | America's Army 3 (2009) | `americasarmy3` | America's Army 3 (2009)
| `americasarmypg` | America's Army: Proving Grounds (2015) | `americasarmypg` | America's Army: Proving Grounds (2015)
| `arcasimracing` | Arca Sim Racing (2008) | `arcasimracing` | Arca Sim Racing (2008)
| `arma` | ARMA: Armed Assault (2007) | `arkse` | Ark: Survival Evolved (2017)
| `arma2` | ARMA 2 (2009) | `arma2` | ARMA 2 (2009)
| `arma2oa` | ARMA 2: Operation Arrowhead (2010) | `arma2oa` | ARMA 2: Operation Arrowhead (2010)
| `arma3` | ARMA 3 (2013)
| `arma` | ARMA: Armed Assault (2007)
| `armacwa` | ARMA: Cold War Assault (2011) | `armacwa` | ARMA: Cold War Assault (2011)
| `armar` | ARMA: Resistance (2011) | `armar` | ARMA: Resistance (2011)
| `arma3` | ARMA 3 (2013)
| `armagetron` | Armagetron Advanced (2001) | `armagetron` | Armagetron Advanced (2001)
| `atlas` | Atlas (2018)
| `baldursgate` | Baldur's Gate (1998) | `baldursgate` | Baldur's Gate (1998)
| `bat1944` | Battalion 1944 (2018) | `bat1944` | Battalion 1944 (2018)
| `bf1942` | Battlefield 1942 (2002) | `bf1942` | Battlefield 1942 (2002)
| `bfv` | Battlefield Vietnam (2004)
| `bf2` | Battlefield 2 (2005) | `bf2` | Battlefield 2 (2005)
| `bf2142` | Battlefield 2142 (2006) | `bf2142` | Battlefield 2142 (2006)
| `bfbc2` | Battlefield: Bad Company 2 (2010)
| `bf3` | Battlefield 3 (2011) | `bf3` | Battlefield 3 (2011)
| `bf4` | Battlefield 4 (2013) | `bf4` | Battlefield 4 (2013)
| `bfh` | Battlefield Hardline (2015) | `bfh` | Battlefield Hardline (2015)
| `bfv` | Battlefield Vietnam (2004)
| `bfbc2` | Battlefield: Bad Company 2 (2010)
| `breach` | Breach (2011) | `breach` | Breach (2011)
| `breed` | Breed (2004) | `breed` | Breed (2004)
| `brink` | Brink (2011) | `brink` | Brink (2011)
| `buildandshoot` | Build and Shoot / Ace of Spades Classic (2012) | `buildandshoot` | Build and Shoot / Ace of Spades Classic (2012)
| `cod` | Call of Duty (2003) | `cod` | Call of Duty (2003)
| `coduo` | Call of Duty: United Offensive (2004)
| `cod2` | Call of Duty 2 (2005) | `cod2` | Call of Duty 2 (2005)
| `cod3` | Call of Duty 3 (2006) | `cod3` | Call of Duty 3 (2006)
| `cod4` | Call of Duty 4: Modern Warfare (2007) | `cod4` | Call of Duty 4: Modern Warfare (2007)
| `codwaw` | Call of Duty: World at War (2008)
| `codmw2` | Call of Duty: Modern Warfare 2 (2009) | `codmw2` | Call of Duty: Modern Warfare 2 (2009)
| `codmw3` | Call of Duty: Modern Warfare 3 (2011) | `codmw3` | Call of Duty: Modern Warfare 3 (2011)
| `coduo` | Call of Duty: United Offensive (2004)
| `codwaw` | Call of Duty: World at War (2008)
| `callofjuarez` | Call of Juarez (2006) | `callofjuarez` | Call of Juarez (2006)
| `chaser` | Chaser (2003) | `chaser` | Chaser (2003)
| `chrome` | Chrome (2003) | `chrome` | Chrome (2003)
| `codenameeagle` | Codename Eagle (2000) | `codenameeagle` | Codename Eagle (2000)
| `commandos3` | Commandos 3: Destination Berlin (2003)
| `cacrenegade` | Command and Conquer: Renegade (2002) | `cacrenegade` | Command and Conquer: Renegade (2002)
| `commandos3` | Commandos 3: Destination Berlin (2003)
| `conanexiles` | Conan Exiles (2018) | `conanexiles` | Conan Exiles (2018)
| `contactjack` | Contract J.A.C.K. (2003) | `contactjack` | Contract J.A.C.K. (2003)
| `cs15` | Counter-Strike 1.5 (2002) | `cs15` | Counter-Strike 1.5 (2002)
| `cs16` | Counter-Strike 1.6 (2003) | `cs16` | Counter-Strike 1.6 (2003)
| `cs2d` | Counter-Strike: 2D (2004) | `cs2d` | Counter-Strike: 2D (2004)
| `cscz` | Counter-Strike: Condition Zero (2004) | `cscz` | Counter-Strike: Condition Zero (2004)
| `css` | Counter-Strike: Source (2004)
| `csgo` | Counter-Strike: Global Offensive (2012) | [Notes](#csgo) | `csgo` | Counter-Strike: Global Offensive (2012) | [Notes](#csgo)
| `css` | Counter-Strike: Source (2004)
| `crossracing` | Cross Racing Championship Extreme 2005 (2005) | `crossracing` | Cross Racing Championship Extreme 2005 (2005)
| `crysis` | Crysis (2007) | `crysis` | Crysis (2007)
| `crysiswars` | Crysis Wars (2008)
| `crysis2` | Crysis 2 (2011) | `crysis2` | Crysis 2 (2011)
| `crysiswars` | Crysis Wars (2008)
| `daikatana` | Daikatana (2000) | `daikatana` | Daikatana (2000)
| `dnl` | Dark and Light (2017)
| `dmomam` | Dark Messiah of Might and Magic (2006) | `dmomam` | Dark Messiah of Might and Magic (2006)
| `darkesthour` | Darkest Hour: Europe '44-'45 (2008) | `darkesthour` | Darkest Hour: Europe '44-'45 (2008)
| `dayz` | DayZ (2018) | [Notes](#dayz) | `dod` | Day of Defeat (2003)
| `dods` | Day of Defeat: Source (2005)
| `doi` | Day of Infamy (2017)
| `dayz` | DayZ (2018)
| `dayzmod` | DayZ Mod (2013) | `dayzmod` | DayZ Mod (2013)
| `deadlydozenpt` | Deadly Dozen: Pacific Theater (2002) | `deadlydozenpt` | Deadly Dozen: Pacific Theater (2002)
| `dh2005` | Deer Hunter 2005 (2004) | `dh2005` | Deer Hunter 2005 (2004)
@ -153,94 +157,85 @@ Games List
| `devastation` | Devastation (2003) | `devastation` | Devastation (2003)
| `dinodday` | Dino D-Day (2011) | `dinodday` | Dino D-Day (2011)
| `dirttrackracing2` | Dirt Track Racing 2 (2002) | `dirttrackracing2` | Dirt Track Racing 2 (2002)
| `dnl` | Dark and Light (2017)
| `dod` | Day of Defeat (2003)
| `dods` | Day of Defeat: Source (2005)
| `doi` | Day of Infamy (2017)
| `doom3` | Doom 3 (2004) | `doom3` | Doom 3 (2004)
| `dota2` | Dota 2 (2013) | `dota2` | Dota 2 (2013)
| `drakan` | Drakan: Order of the Flame (1999) | `drakan` | Drakan: Order of the Flame (1999)
| `etqw` | Enemy Territory: Quake Wars (2007) | `etqw` | Enemy Territory: Quake Wars (2007)
| `fear` | F.E.A.R. (2005) | `fear` | F.E.A.R. (2005)
| `f12002` | Formula One 2002 (2002)
| `f1c9902` | F1 Challenge '99-'02 (2002) | `f1c9902` | F1 Challenge '99-'02 (2002)
| `farcry` | Far Cry (2004) | `farcry` | Far Cry (2004)
| `farcry2` | Far Cry 2 (2008) | `farcry2` | Far Cry 2 (2008)
| `f12002` | Formula One 2002 (2002)
| `fortressforever` | Fortress Forever (2007) | `fortressforever` | Fortress Forever (2007)
| `flashpoint` | Operation Flashpoint: Cold War Crisis (2001) | `ffow` | Frontlines: Fuel of War (2008)
| `garrysmod` | Garry's Mod (2004)
| `geneshift`<br>`mutantfactions` | Geneshift (2017)
| `giantscitizenkabuto` | Giants: Citizen Kabuto (2000)
| `globaloperations` | Global Operations (2002)
| `ges` | GoldenEye: Source (2010)
| `gore` | Gore: Ultimate Soldier (2002)
| `fivem` | Grand Theft Auto V - FiveM (2013)
| `mtasa` | Grand Theft Auto: San Andreas - Multi Theft Auto (2004)
| `mtavc` | Grand Theft Auto: Vice City - Multi Theft Auto (2002)
| `gunmanchronicles` | Gunman Chronicles (2000)
| `hl2dm` | Half-Life 2: Deathmatch (2004)
| `hldm` | Half-Life Deathmatch (1998)
| `hldms` | Half-Life Deathmatch: Source (2005)
| `halo` | Halo (2003)
| `halo2` | Halo 2 (2007)
| `heretic2` | Heretic II (1998)
| `hexen2` | Hexen II (1997)
| `had2` | Hidden & Dangerous 2 (2003)
| `homefront` | Homefront (2011)
| `homeworld2` | Homeworld 2 (2003)
| `hurtworld` | Hurtworld (2015)
| `igi2` | I.G.I.-2: Covert Strike (2003)
| `il2` | IL-2 Sturmovik (2001)
| `insurgency` | Insurgency (2014)
| `insurgencysandstorm` | Insurgency: Sandstorm (2018)
| `ironstorm` | Iron Storm (2002)
| `jamesbondnightfire` | James Bond 007: Nightfire (2002)
| `jc2mp` | Just Cause 2 - Multiplayer (2010)
| `kspdmp` | Kerbal Space Program - DMP Multiplayer (2015)
| `killingfloor` | Killing Floor (2009)
| `killingfloor2` | Killing Floor 2 (2016)
| `kingpin` | Kingpin: Life of Crime (1999)
| `kisspc` | Kiss: Psycho Circus: The Nightmare Child (2000)
| `kzmod` | Kreedz Climbing (2017)
| `left4dead` | Left 4 Dead (2008)
| `left4dead2` | Left 4 Dead 2 (2009)
| `m2mp` | Mafia II - Multiplayer (2010)
| `m2o` | Mafia II - Online (2010)
| `moh2010` | Medal of Honor (2010)
| `mohab` | Medal of Honor: Airborne (2007)
| `mohaa` | Medal of Honor: Allied Assault (2002)
| `mohbt` | Medal of Honor: Allied Assault Breakthrough (2003)
| `mohsh` | Medal of Honor: Allied Assault Spearhead (2002)
| `mohpa` | Medal of Honor: Pacific Assault (2004)
| `mohwf` | Medal of Honor: Warfighter (2012)
| `medievalengineers` | Medieval Engineers (2015)
| `minecraft`<br>`minecraftping` | Minecraft (2009) | [Notes](#minecraft)
| `minecraftpe`<br>`minecraftbe` | Minecraft: Bedrock Edition (2011)
| `mnc` | Monday Night Combat (2011)
| `mumble` | Mumble - GTmurmur Plugin (2005) | [Notes](#mumble)
| `mumbleping` | Mumble - Lightweight (2005) | [Notes](#mumble)
| `nascarthunder2004` | NASCAR Thunder 2004 (2003)
| `ns` | Natural Selection (2002)
| `ns2` | Natural Selection 2 (2012)
| `nfshp2` | Need for Speed: Hot Pursuit 2 (2002)
| `nab` | Nerf Arena Blast (1999)
| `netpanzer` | netPanzer (2002)
| `nwn` | Neverwinter Nights (2002)
| `nwn2` | Neverwinter Nights 2 (2006)
| `nexuiz` | Nexuiz (2005)
| `nitrofamily` | Nitro Family (2004)
| `nmrih` | No More Room in Hell (2011)
| `nolf2` | No One Lives Forever 2: A Spy in H.A.R.M.'s Way (2002)
| `nucleardawn` | Nuclear Dawn (2011)
| `openarena` | OpenArena (2005)
| `openttd` | OpenTTD (2004)
| `operationflashpoint`<br>`flashpoint` | Operation Flashpoint: Cold War Crisis (2001)
| `flashpointresistance` | Operation Flashpoint: Resistance (2002) | `flashpointresistance` | Operation Flashpoint: Resistance (2002)
| `ffow` | Frontlines: Fuel of War
| `fivem` | FiveM
| `garrysmod` | Garry's Mod
| `graw` | Ghost Recon: Advanced Warfighter
| `graw2` | Ghost Recon: Advanced Warfighter 2
| `giantscitizenkabuto` | Giants: Citizen Kabuto
| `globaloperations` | Global Operations
| `geneshift` | Geneshift
| `ges` | GoldenEye: Source
| `gore` | Gore
| `gunmanchronicles` | Gunman Chronicles
| `hldm` | Half-Life 1 Deathmatch
| `hl2dm` | Half-Life 2 Deathmatch
| `halo` | Halo
| `halo2` | Halo 2
| `heretic2` | Heretic 2
| `hexen2` | Hexen 2
| `hidden` | The Hidden: Source
| `had2` | Hidden and Dangerous 2
| `homefront` | Homefront
| `homeworld2` | Homeworld 2
| `hurtworld` | Hurtworld
| `igi2` | IGI-2: Covert Strike
| `il2` | IL-2 Sturmovik
| `insurgency` | Insurgency
| `insurgencysandstorm` | Insurgency: Sandstorm
| `ironstorm` | Iron Storm
| `jamesbondnightfire` | James Bond: Nightfire
| `jc2mp` | Just Cause 2 Multiplayer
| `killingfloor` | Killing Floor
| `killingfloor2` | Killing Floor 2
| `kingpin` | Kingpin: Life of Crime
| `kisspc` | KISS Psycho Circus
| `kspdmp` | DMP - KSP Multiplayer
| `kzmod` | KzMod
| `left4dead` | Left 4 Dead
| `left4dead2` | Left 4 Dead 2
| `m2mp` | Mafia 2 Multiplayer
| `m2o` | Mafia 2 Online
| `medievalengineers` | Medieval Engineers
| `mohaa` | Medal of Honor: Allied Assault
| `mohpa` | Medal of Honor: Pacific Assault
| `mohab` | Medal of Honor: Airborne
| `mohsh` | Medal of Honor: Spearhead
| `mohbt` | Medal of Honor: Breakthrough
| `moh2010` | Medal of Honor 2010
| `mohwf` | Medal of Honor: Warfighter
| `minecraft` | Minecraft | [Notes](#minecraft)
| `minecraftpe` | Minecraft: Pocket Edition
| `mnc` | Monday Night Combat
| `mtavc` | Multi Theft Auto: Vice City
| `mtasa` | Multi Theft Auto: San Andreas
| `mumble` | Mumble (Requires GTmurmur plugin) | [Notes](#mumble)
| `mumbleping` | Mumble (Lightweight) | [Notes](#mumble)
| `mutantfactions` | Mutant Factions
| `nascarthunder2004` | Nascar Thunder 2004
| `netpanzer` | netPanzer
| `nmrih` | No More Room in Hell
| `ns` | Natural Selection
| `ns2` | Natural Selection 2
| `nfshp2` | Need for Speed: Hot Pursuit 2
| `nab` | Nerf Arena Blast
| `nwn` | Neverwinter Nights
| `nwn2` | Neverwinter Nights 2
| `nexuiz` | Nexuiz
| `nitrofamily` | Nitro Family
| `nolf` | No One Lives Forever
| `nolf2` | No One Lives Forever 2
| `nucleardawn` | Nuclear Dawn
| `openarena` | OpenArena
| `openttd` | OpenTTD
| `operationflashpoint` | Operation Flashpoint
| `painkiller` | Painkiller | `painkiller` | Painkiller
| `postal2` | Postal 2 | `postal2` | Postal 2
| `prey` | Prey | `prey` | Prey
@ -256,8 +251,8 @@ Games List
| `rallisportchallenge` | RalliSport Challenge | `rallisportchallenge` | RalliSport Challenge
| `rallymasters` | Rally Masters | `rallymasters` | Rally Masters
| `redorchestra` | Red Orchestra | `redorchestra` | Red Orchestra
| `redorchestraost` | Red Orchestra: Ostfront 41-45
| `redorchestra2` | Red Orchestra 2 | `redorchestra2` | Red Orchestra 2
| `redorchestraost` | Red Orchestra: Ostfront 41-45
| `redline` | Redline | `redline` | Redline
| `rtcw` | Return to Castle Wolfenstein | `rtcw` | Return to Castle Wolfenstein
| `rfactor` | rFactor | `rfactor` | rFactor
@ -265,12 +260,11 @@ Games List
| `riseofnations` | Rise of Nations | `riseofnations` | Rise of Nations
| `rune` | Rune | `rune` | Rune
| `rust` | Rust | `rust` | Rust
| `stalker` | S.T.A.L.K.E.R.
| `samp` | San Andreas Multiplayer | `samp` | San Andreas Multiplayer
| `spaceengineers` | Space Engineers
| `ss` | Serious Sam | `ss` | Serious Sam
| `ss2` | Serious Sam 2 | `ss2` | Serious Sam 2
| `shatteredhorizon` | Shattered Horizon | `shatteredhorizon` | Shattered Horizon
| `ship` | The Ship
| `shogo` | Shogo | `shogo` | Shogo
| `shootmania` | Shootmania | [Notes](#nadeo-shootmania--trackmania--etc) | `shootmania` | Shootmania | [Notes](#nadeo-shootmania--trackmania--etc)
| `sin` | SiN | `sin` | SiN
@ -278,7 +272,7 @@ Games List
| `soldat` | Soldat | `soldat` | Soldat
| `sof` | Soldier of Fortune | `sof` | Soldier of Fortune
| `sof2` | Soldier of Fortune 2 | `sof2` | Soldier of Fortune 2
| `stalker` | S.T.A.L.K.E.R. | `spaceengineers` | Space Engineers
| `stbc` | Star Trek: Bridge Commander | `stbc` | Star Trek: Bridge Commander
| `stvef` | Star Trek: Voyager - Elite Force | `stvef` | Star Trek: Voyager - Elite Force
| `stvef2` | Star Trek: Voyager - Elite Force 2 | `stvef2` | Star Trek: Voyager - Elite Force 2
@ -291,18 +285,23 @@ Games List
| `starmade` | StarMade | `starmade` | StarMade
| `starsiege` | Starsiege (2009) | `starsiege` | Starsiege (2009)
| `suicidesurvival` | Suicide Survival | `suicidesurvival` | Suicide Survival
| `swat4` | SWAT 4
| `svencoop` | Sven Coop | `svencoop` | Sven Coop
| `swat4` | SWAT 4
| `synergy` | Synergy | `synergy` | Synergy
| `tacticalops` | Tactical Ops | `tacticalops` | Tactical Ops
| `takeonhelicopters` | Take On Helicopters (2011) | `takeonhelicopters` | Take On Helicopters (2011)
| `teamfactor` | Team Factor | `teamfactor` | Team Factor
| `tfc` | Team Fortress Classic
| `tf2` | Team Fortress 2 | `tf2` | Team Fortress 2
| `tfc` | Team Fortress Classic
| `teamspeak2` | Teamspeak 2 | `teamspeak2` | Teamspeak 2
| `teamspeak3` | Teamspeak 3 | [Notes](#teamspeak3) | `teamspeak3` | Teamspeak 3 | [Notes](#teamspeak3)
| `terminus` | Terminus | `terminus` | Terminus
| `terraria` | Terraria | [Notes](#terraria) | `terraria`<br>`tshock` | Terraria - TShock (2011) | [Notes](#terraria)
| `hidden` | The Hidden (2005)
| `nolf` | The Operative: No One Lives Forever (2000)
| `ship` | The Ship
| `graw` | Tom Clancy's Ghost Recon Advanced Warfighter (2006)
| `graw2` | Tom Clancy's Ghost Recon Advanced Warfighter 2 (2007)
| `thps3` | Tony Hawk's Pro Skater 3 | `thps3` | Tony Hawk's Pro Skater 3
| `thps4` | Tony Hawk's Pro Skater 4 | `thps4` | Tony Hawk's Pro Skater 4
| `thu2` | Tony Hawk's Underground 2 | `thu2` | Tony Hawk's Underground 2
@ -316,15 +315,15 @@ Games List
| `turok2` | Turok 2 | `turok2` | Turok 2
| `universalcombat` | Universal Combat | `universalcombat` | Universal Combat
| `unreal` | Unreal | `unreal` | Unreal
| `unturned` | unturned
| `ut` | Unreal Tournament | `ut` | Unreal Tournament
| `ut2003` | Unreal Tournament 2003 | `ut2003` | Unreal Tournament 2003
| `ut2004` | Unreal Tournament 2004 | `ut2004` | Unreal Tournament 2004
| `ut3` | Unreal Tournament 3 | `ut3` | Unreal Tournament 3
| `unturned` | unturned
| `urbanterror` | Urban Terror | `urbanterror` | Urban Terror
| `v8supercar` | V8 Supercar Challenge | `v8supercar` | V8 Supercar Challenge
| `vcmp` | Vice City Multiplayer
| `ventrilo` | Ventrilo | `ventrilo` | Ventrilo
| `vcmp` | Vice City Multiplayer
| `vietcong` | Vietcong | `vietcong` | Vietcong
| `vietcong2` | Vietcong 2 | `vietcong2` | Vietcong 2
| `warsow` | Warsow | `warsow` | Warsow
@ -422,10 +421,6 @@ Games with Additional Notes
To receive a full player list response from CS:GO servers, the server must To receive a full player list response from CS:GO servers, the server must
have set the cvar: host_players_show 2 have set the cvar: host_players_show 2
### DayZ
DayZ uses a query port that is separate from its main game port. The query port is usually
the game port PLUS 24714 or 24715. You may need to pass this query port into GameDig instead.
### Mumble ### Mumble
For full query results from Mumble, you must be running the For full query results from Mumble, you must be running the
[GTmurmur plugin](http://www.gametracker.com/downloads/gtmurmurplugin.php). [GTmurmur plugin](http://www.gametracker.com/downloads/gtmurmurplugin.php).

153
games.txt
View file

@ -8,8 +8,6 @@ alienswarm|Alien Swarm (2010)|valve|port=27015
arkse|Ark: Survival Evolved (2017)|valve|port=7777,port_query=27015 arkse|Ark: Survival Evolved (2017)|valve|port=7777,port_query=27015
atlas|Atlas (2018)|valve|port=5761,port_query_offset=51800 atlas|Atlas (2018)|valve|port=5761,port_query_offset=51800
avp2|Aliens versus Predator 2 (2001)|gamespy1|port=27888 avp2|Aliens versus Predator 2 (2001)|gamespy1|port=27888
# avp2010 doesn't really... have a default port or query port
# both port and port_query should be specified when used
avp2010|Aliens vs. Predator (2010)|valve|port=27015 avp2010|Aliens vs. Predator (2010)|valve|port=27015
americasarmy|America's Army (2002)|gamespy2|port=1716,port_query_offset=1 americasarmy|America's Army (2002)|gamespy2|port=1716,port_query_offset=1
@ -78,7 +76,7 @@ crysis2|Crysis 2 (2011)|gamespy3|port=64000
daikatana|Daikatana (2000)|quake2|port=27982,port_query_offset=10 daikatana|Daikatana (2000)|quake2|port=27982,port_query_offset=10
dmomam|Dark Messiah of Might and Magic (2006)|valve|port=27015 dmomam|Dark Messiah of Might and Magic (2006)|valve|port=27015
darkesthour|Darkest Hour: Europe '44-'45 (2008)|unreal2|port=7757,port_query_offset=1 darkesthour|Darkest Hour: Europe '44-'45 (2008)|unreal2|port=7757,port_query_offset=1
dayz|DayZ (2018)|valve|port=2302,port_query_offset=24714|doc_notes=dayz dayz|DayZ (2018)|valve|port=2302,port_query_offset=24714
dayzmod|DayZ Mod (2013)|valve|port=2302,port_query_offset=1 dayzmod|DayZ Mod (2013)|valve|port=2302,port_query_offset=1
deadlydozenpt|Deadly Dozen: Pacific Theater (2002)|gamespy1|port_query=25300 deadlydozenpt|Deadly Dozen: Pacific Theater (2002)|gamespy1|port_query=25300
dh2005|Deer Hunter 2005 (2004)|gamespy2|port=23459,port_query=34567 dh2005|Deer Hunter 2005 (2004)|gamespy2|port=23459,port_query=34567
@ -101,85 +99,82 @@ f1c9902|F1 Challenge '99-'02 (2002)|gamespy1|port_query=34397
farcry|Far Cry (2004)|ase|port=49001,port_query_offset=123 farcry|Far Cry (2004)|ase|port=49001,port_query_offset=123
farcry2|Far Cry 2 (2008)|ase|port_query=14001 farcry2|Far Cry 2 (2008)|ase|port_query=14001
fortressforever|Fortress Forever (2007)|valve|port=27015 fortressforever|Fortress Forever (2007)|valve|port=27015
flashpoint|Operation Flashpoint: Cold War Crisis (2001)|gamespy1|port=2302,port_query_offset=1 operationflashpoint,flashpoint|Operation Flashpoint: Cold War Crisis (2001)|gamespy1|port=2302,port_query_offset=1
flashpointresistance|Operation Flashpoint: Resistance (2002)|gamespy1|port=2302,port_query_offset=1 flashpointresistance|Operation Flashpoint: Resistance (2002)|gamespy1|port=2302,port_query_offset=1
ffow|Frontlines: Fuel of War|ffow|port=5476,port_query_offset=2 ffow|Frontlines: Fuel of War (2008)|ffow|port=5476,port_query_offset=2
fivem|FiveM|fivem|port=30120 fivem|Grand Theft Auto V - FiveM (2013)|fivem|port=30120
garrysmod|Garry's Mod|valve|port=27015 garrysmod|Garry's Mod (2004)|valve|port=27015
graw|Ghost Recon: Advanced Warfighter|gamespy2|port_query=15250 graw|Tom Clancy's Ghost Recon Advanced Warfighter (2006)|gamespy2|port_query=15250
graw2|Ghost Recon: Advanced Warfighter 2|gamespy2|port_query=16250 graw2|Tom Clancy's Ghost Recon Advanced Warfighter 2 (2007)|gamespy2|port_query=16250
giantscitizenkabuto|Giants: Citizen Kabuto|gamespy1|port_query=8911 giantscitizenkabuto|Giants: Citizen Kabuto (2000)|gamespy1|port_query=8911
globaloperations|Global Operations|gamespy1|port_query=28672 globaloperations|Global Operations (2002)|gamespy1|port_query=28672
geneshift|Geneshift|geneshift|port=11235 geneshift,mutantfactions|Geneshift (2017)|geneshift|port=11235
ges|GoldenEye: Source|valve|port=27015 ges|GoldenEye: Source (2010)|valve|port=27015
gore|Gore|gamespy1|port=27777,port_query_offset=1 gore|Gore: Ultimate Soldier (2002)|gamespy1|port=27777,port_query_offset=1
gunmanchronicles|Gunman Chronicles|valve|port=27015 gunmanchronicles|Gunman Chronicles (2000)|valve|port=27015
hldm|Half-Life 1 Deathmatch|valve|port=27015 hldm|Half-Life Deathmatch (1998)|valve|port=27015
hl2dm|Half-Life 2 Deathmatch|valve|port=27015 hldms|Half-Life Deathmatch: Source (2005)|valve|port=27015
halo|Halo|gamespy2|port=2302 hl2dm|Half-Life 2: Deathmatch (2004)|valve|port=27015
halo2|Halo 2|gamespy2|port=2302 halo|Halo (2003)|gamespy2|port=2302
heretic2|Heretic 2|gamespy1|port=27900,port_query_offset=1 halo2|Halo 2 (2007)|gamespy2|port=2302
hexen2|Hexen 2|hexen2|port=26900,port_query_offset=50 heretic2|Heretic II (1998)|gamespy1|port=27900,port_query_offset=1
hidden|The Hidden: Source|valve|port=27015 hexen2|Hexen II (1997)|hexen2|port=26900,port_query_offset=50
had2|Hidden and Dangerous 2|gamespy1|port=11001,port_query_offset=3 hidden|The Hidden (2005)|valve|port=27015
homefront|Homefront|valve|port=27015 had2|Hidden & Dangerous 2 (2003)|gamespy1|port=11001,port_query_offset=3
homeworld2|Homeworld 2|gamespy1|port_query=6500 homefront|Homefront (2011)|valve|port=27015
hurtworld|Hurtworld|valve|port=12871,port_query=12881 homeworld2|Homeworld 2 (2003)|gamespy1|port_query=6500
igi2|IGI-2: Covert Strike|gamespy1|port_query=26001 hurtworld|Hurtworld (2015)|valve|port=12871,port_query=12881
il2|IL-2 Sturmovik|gamespy1|port_query=21000 igi2|I.G.I.-2: Covert Strike (2003)|gamespy1|port_query=26001
insurgency|Insurgency|valve|port=27015 il2|IL-2 Sturmovik (2001)|gamespy1|port_query=21000
insurgencysandstorm|Insurgency: Sandstorm|valve|port=27015,port_query_offset=1 insurgency|Insurgency (2014)|valve|port=27015
ironstorm|Iron Storm|gamespy1|port_query=3505 insurgencysandstorm|Insurgency: Sandstorm (2018)|valve|port=27015,port_query_offset=1
jamesbondnightfire|James Bond: Nightfire|gamespy1|port_query=6550 ironstorm|Iron Storm (2002)|gamespy1|port_query=3505
jc2mp|Just Cause 2 Multiplayer|jc2mp|port=7777 jamesbondnightfire|James Bond 007: Nightfire (2002)|gamespy1|port_query=6550
killingfloor|Killing Floor|killingfloor|port=7707,port_query_offset=1 jc2mp|Just Cause 2 - Multiplayer (2010)|jc2mp|port=7777
killingfloor2|Killing Floor 2|valve|port=7777,port_query=27015 killingfloor|Killing Floor (2009)|killingfloor|port=7707,port_query_offset=1
kingpin|Kingpin: Life of Crime|gamespy1|port=31510,port_query_offset=-10 killingfloor2|Killing Floor 2 (2016)|valve|port=7777,port_query=27015
kisspc|KISS Psycho Circus|gamespy1|port=7777,port_query_offset=1 kingpin|Kingpin: Life of Crime (1999)|gamespy1|port=31510,port_query_offset=-10
kspdmp|DMP - KSP Multiplayer|kspdmp|port=6702,port_query_offset=1 kisspc|Kiss: Psycho Circus: The Nightmare Child (2000)|gamespy1|port=7777,port_query_offset=1
kzmod|KzMod|valve|port=27015 kspdmp|Kerbal Space Program - DMP Multiplayer (2015)|kspdmp|port=6702,port_query_offset=1
left4dead|Left 4 Dead|valve|port=27015 kzmod|Kreedz Climbing (2017)|valve|port=27015
left4dead2|Left 4 Dead 2|valve|port=27015 left4dead|Left 4 Dead (2008)|valve|port=27015
m2mp|Mafia 2 Multiplayer|mafia2mp|port=27016,port_query_offset=1 left4dead2|Left 4 Dead 2 (2009)|valve|port=27015
m2o|Mafia 2 Online|mafia2online|port=27015,port_query_offset=1 m2mp|Mafia II - Multiplayer (2010)|mafia2mp|port=27016,port_query_offset=1
medievalengineers|Medieval Engineers|valve|port=27015 m2o|Mafia II - Online (2010)|mafia2online|port=27015,port_query_offset=1
medievalengineers|Medieval Engineers (2015)|valve|port=27015
mohaa|Medal of Honor: Allied Assault|gamespy1|port=12203,port_query_offset=97 mohaa|Medal of Honor: Allied Assault (2002)|gamespy1|port=12203,port_query_offset=97
mohpa|Medal of Honor: Pacific Assault|gamespy1|port=13203,port_query_offset=97 mohsh|Medal of Honor: Allied Assault Spearhead (2002)|gamespy1|port=12203,port_query_offset=97
mohab|Medal of Honor: Airborne|gamespy1|port=12203,port_query_offset=97 mohbt|Medal of Honor: Allied Assault Breakthrough (2003)|gamespy1|port=12203,port_query_offset=97
mohsh|Medal of Honor: Spearhead|gamespy1|port=12203,port_query_offset=97 mohpa|Medal of Honor: Pacific Assault (2004)|gamespy1|port=13203,port_query_offset=97
mohbt|Medal of Honor: Breakthrough|gamespy1|port=12203,port_query_offset=97 mohab|Medal of Honor: Airborne (2007)|gamespy1|port=12203,port_query_offset=97
moh2010|Medal of Honor 2010|battlefield|port=7673,port_query=48888 moh2010|Medal of Honor (2010)|battlefield|port=7673,port_query=48888
mohwf|Medal of Honor: Warfighter|battlefield|port=25200,port_query_offset=22000 mohwf|Medal of Honor: Warfighter (2012)|battlefield|port=25200,port_query_offset=22000
minecraft|Minecraft|minecraft|port=25565|doc_notes=minecraft minecraft,minecraftping|Minecraft (2009)|minecraft|port=25565|doc_notes=minecraft
# Legacy name
minecraftping||minecraft|port=25565|doc_notes=minecraft
minecraftpe|Minecraft: Pocket Edition|gamespy3|port=19132,maxAttempts=2 minecraftpe,minecraftbe|Minecraft: Bedrock Edition (2011)|gamespy3|port=19132,maxAttempts=2
mnc|Monday Night Combat|valve|port=7777,port_query=27016 mnc|Monday Night Combat (2011)|valve|port=7777,port_query=27016
mtavc|Multi Theft Auto: Vice City|ase|port=22003,port_query_offset=123 mtavc|Grand Theft Auto: Vice City - Multi Theft Auto (2002)|ase|port=22003,port_query_offset=123
mtasa|Multi Theft Auto: San Andreas|ase|port=22003,port_query_offset=123 mtasa|Grand Theft Auto: San Andreas - Multi Theft Auto (2004)|ase|port=22003,port_query_offset=123
mumble|Mumble (Requires GTmurmur plugin)|mumble|port=64738,port_query=27800|doc_notes=mumble mumble|Mumble - GTmurmur Plugin (2005)|mumble|port=64738,port_query=27800|doc_notes=mumble
mumbleping|Mumble (Lightweight)|mumbleping|port=64738|doc_notes=mumble mumbleping|Mumble - Lightweight (2005)|mumbleping|port=64738|doc_notes=mumble
mutantfactions|Mutant Factions|geneshift|port=11235 nascarthunder2004|NASCAR Thunder 2004 (2003)|gamespy2|port_query=13333
nascarthunder2004|Nascar Thunder 2004|gamespy2|port_query=13333 netpanzer|netPanzer (2002)|gamespy1|port=3030
netpanzer|netPanzer|gamespy1|port=3030 nmrih|No More Room in Hell (2011)|valve|port=27015
nmrih|No More Room in Hell|valve|port=27015 ns|Natural Selection (2002)|valve|port=27015
ns|Natural Selection|valve|port=27015 ns2|Natural Selection 2 (2012)|valve|port_query_offset=1
ns2|Natural Selection 2|valve|port_query_offset=1 nfshp2|Need for Speed: Hot Pursuit 2 (2002)|gamespy1|port_query=61220
nfshp2|Need for Speed: Hot Pursuit 2|gamespy1|port_query=61220 nab|Nerf Arena Blast (1999)|gamespy1|port=4444,port_query_offset=1
nab|Nerf Arena Blast|gamespy1|port=4444,port_query_offset=1 nwn|Neverwinter Nights (2002)|gamespy2|port_query=5121
nwn|Neverwinter Nights|gamespy2|port_query=5121 nwn2|Neverwinter Nights 2 (2006)|gamespy2|port=5121,port_query=6500
nwn2|Neverwinter Nights 2|gamespy2|port=5121,port_query=6500 nexuiz|Nexuiz (2005)|quake3|port_query=26000
nexuiz|Nexuiz|quake3|port_query=26000 nitrofamily|Nitro Family (2004)|gamespy1|port_query=25601
nitrofamily|Nitro Family|gamespy1|port_query=25601 nolf|The Operative: No One Lives Forever (2000)|gamespy1|port_query=27888
nolf|No One Lives Forever|gamespy1|port_query=27888 nolf2|No One Lives Forever 2: A Spy in H.A.R.M.'s Way (2002)|gamespy1|port_query=27890
nolf2|No One Lives Forever 2|gamespy1|port_query=27890 nucleardawn|Nuclear Dawn (2011)|valve|port=27015
nucleardawn|Nuclear Dawn|valve|port=27015 openarena|OpenArena (2005)|quake3|port_query=27960
openarena|OpenArena|quake3|port_query=27960 openttd|OpenTTD (2004)|openttd|port=3979
openttd|OpenTTD|openttd|port=3979
operationflashpoint|Operation Flashpoint|gamespy1|port=2234,port_query_offset=1
painkiller|Painkiller|ase|port=3455,port_query_offset=123 painkiller|Painkiller|ase|port=3455,port_query_offset=123
postal2|Postal 2|gamespy1|port=7777,port_query_offset=1 postal2|Postal 2|gamespy1|port=7777,port_query_offset=1
prey|Prey|doom3|port=27719 prey|Prey|doom3|port=27719
@ -248,7 +243,7 @@ tf2|Team Fortress 2|valve|port=27015
teamspeak2|Teamspeak 2|teamspeak2|port=8767 teamspeak2|Teamspeak 2|teamspeak2|port=8767
teamspeak3|Teamspeak 3|teamspeak3|port=9987|doc_notes=teamspeak3 teamspeak3|Teamspeak 3|teamspeak3|port=9987|doc_notes=teamspeak3
terminus|Terminus|gamespy1|port_query=12286 terminus|Terminus|gamespy1|port_query=12286
terraria|Terraria|terraria|port=7777,port_query_offset=101|doc_notes=terraria terraria,tshock|Terraria - TShock (2011)|terraria|port=7777,port_query_offset=101|doc_notes=terraria
thps3|Tony Hawk's Pro Skater 3|gamespy1|port_query=6500 thps3|Tony Hawk's Pro Skater 3|gamespy1|port_query=6500
thps4|Tony Hawk's Pro Skater 4|gamespy1|port_query=6500 thps4|Tony Hawk's Pro Skater 4|gamespy1|port_query=6500
thu2|Tony Hawk's Underground 2|gamespy1|port_query=5153 thu2|Tony Hawk's Underground 2|gamespy1|port_query=5153

View file

@ -3,7 +3,9 @@ const Path = require('path'),
class GameResolver { class GameResolver {
constructor() { constructor() {
this.games = this._readGames(); const loaded = this._readGames();
this.gamesByKey = loaded.gamesByKey;
this.games = loaded.games;
} }
lookup(type) { lookup(type) {
@ -15,7 +17,7 @@ class GameResolver {
}; };
} }
const game = this.games.get(type); const game = this.gamesByKey.get(type);
if(!game) throw Error('Invalid game: '+type); if(!game) throw Error('Invalid game: '+type);
return game.options; return game.options;
} }
@ -24,11 +26,15 @@ class GameResolver {
let out = ''; let out = '';
out += '| GameDig Type ID | Name | Notes\n'; out += '| GameDig Type ID | Name | Notes\n';
out += '|---|---|---\n'; out += '|---|---|---\n';
for(const [key,game] of this.games.entries()) {
if (!game.pretty) { const sorted = this.games
continue; .filter(game => game.pretty)
} .sort((a,b) => {
out += "| " + ("`"+key+"`").padEnd(10, " ") + " " return a.pretty.localeCompare(b.pretty);
});
for(const game of sorted) {
let keysOut = game.keys.map(key => '`'+key+'`').join('<br>');
out += "| " + keysOut.padEnd(10, " ") + " "
+ "| " + game.pretty; + "| " + game.pretty;
if(game.extra.doc_notes) if(game.extra.doc_notes)
out += " | [Notes](#"+game.extra.doc_notes+")"; out += " | [Notes](#"+game.extra.doc_notes+")";
@ -40,7 +46,9 @@ class GameResolver {
_readGames() { _readGames() {
const gamesFile = Path.normalize(__dirname+'/../games.txt'); const gamesFile = Path.normalize(__dirname+'/../games.txt');
const lines = fs.readFileSync(gamesFile,'utf8').split('\n'); const lines = fs.readFileSync(gamesFile,'utf8').split('\n');
const games = new Map();
const gamesByKey = new Map();
const games = [];
for (let line of lines) { for (let line of lines) {
// strip comments // strip comments
@ -50,17 +58,25 @@ class GameResolver {
if(!line) continue; if(!line) continue;
const split = line.split('|'); const split = line.split('|');
const gameId = split[0].trim(); const keys = split[0].trim().split(',');
const name = split[1].trim();
const options = this._parseList(split[3]); const options = this._parseList(split[3]);
options.protocol = split[2].trim(); options.protocol = split[2].trim();
const extra = this._parseList(split[4]);
games.set(gameId, { const game = {
pretty: split[1].trim(), keys: keys,
pretty: name,
options: options, options: options,
extra: this._parseList(split[4]) extra: extra
}); };
for (const key of keys) {
gamesByKey.set(key, game);
}
games.push(game);
} }
return games; return { gamesByKey, games };
} }
_parseList(str) { _parseList(str) {