Commit Graph

222 Commits

Author SHA1 Message Date
CosminPerRam
ad9adff06c
Move to ES6 module (#357)
* Redo imports and exports for lib

* Redo imports and exports for bim

* Redo imports and exports for games

* Remove remaining module.exports

* Use export default in lib

* Use export default in protocols

* Fix import in genreadme.js

* Make package module and solve __dirname

* Fix minecraft protocol imports

* Fix imports on games and make binary runnable

* Renamed protocol class exports to lowercase

* Export promises class as default

* Update README.md to use imports instead of require

* Update CHANGELOG to mention the changes.

* Remove Valve unused imports

* Fix iconv import
2023-09-14 23:28:31 +03:00
CosminPerRam
5b01e1be17
Replace deprecated substr with substring (#355)
* Make the QueryRunner more readable

* Remove use of deprecated substr and replace with substring, and some formatting
2023-09-13 17:31:58 +03:00
CosminPerRam
ca7f56c996
deps: Replace compressjs by seek-bzip (#349)
* Replace compressjs by seek-bzip

* Update CHANGELOG
2023-09-09 11:33:02 +03:00
CosminPerRam
da7d3eebd3
fix: Solve GS1 non-name key values being badly parsed (#342)
* Add initial fix

* fix: properly parse or not number values

* fix: Dont parse empty strings and add todo! comments
2023-08-16 00:44:32 +03:00
Michael Morrison
57a6a2fadd
Merge pull request #307 from cetteup/feature/dns-ip-family
Allow direct control of IP family to be returned by DNS lookup
2023-01-10 13:38:20 -06:00
Adam Spurgeon
97fd450c5c Fixed Minecraft resolver only reporting 0 ping. #310
Minecraft resolver now uses registerRtt rather than setting state.ping.
This prevents the ping value being overwritten with 0 as shortestRTT is
never set.
2023-01-10 01:03:27 +13:00
cetteup
3c38fe48fe feat: Allow direct control of IP family to be returned by DNS lookup
implements #306
2022-12-13 10:46:43 +01:00
Michael Morrison
b191d895f5
Merge pull request #296 from nickdnk/master
Use enum for all AppIds
2022-07-19 17:05:55 -05:00
Michael Morrison
aba57880f1
Merge pull request #293 from c43721/chore/remove-moment-as-dep
chore(deps): remove moment
2022-07-19 17:04:51 -05:00
Michael Morrison
86009a623f
Update openttd.js
Fix typo in moment removal
2022-07-19 17:04:26 -05:00
Nicolai Cornelis
b85c784d95 Use enum for all AppIds 2022-07-20 00:02:33 +02:00
Nicolai Cornelis
40cc94d99c Use enum for app id 2022-07-19 23:53:53 +02:00
Nicolai Cornelis
bba9445ec2 Fix wrong filter for "Max Players" for CSGO 2022-07-19 22:41:04 +02:00
c43721
d18176fa71 fix: the day has come 2022-07-12 01:31:59 +00:00
c43721
3e5a8ae54d chore(deps): remove moment for date-fns 2022-07-09 18:06:01 +00:00
Michael Morrison
84f8601b6d Prefer bedrock strings, since Geyser's gamespy implementation has invalid character encoding Fixes #269 2022-04-17 20:33:46 -05:00
Michael Morrison
07c7eca262 4.0.2 Fix counter strike 1.5 2022-02-19 06:23:21 -06:00
Michael Morrison
343e23c4ad 4.0.1 Fix maxplayers >255 in rust 2022-02-17 10:54:08 -06:00
Michael Morrison
c7a669ce6b Update got, which now requires node 14 2022-02-05 20:10:14 -06:00
Michael Morrison
8496a523c3 Pull ping from minecraft subqueries Fixes #233 2022-02-05 19:38:15 -06:00
Michael Morrison
b11eac277d Improve dayz mod parsing with more random reverse engineering guesses 2022-02-05 19:28:48 -06:00
Michael Morrison
685a955233
Merge pull request #236 from podrivo/dayz-updates
Parse additional dayz tags: first person, dlc enabled and time
2022-02-05 19:28:30 -06:00
Michael Morrison
91d4db40e0
Merge pull request #238 from cetteup/master
Fix teamOffByOne condition for Battlefield 1942
2022-02-05 19:25:09 -06:00
Michael Morrison
5c2d15df49 Remove complex players setter overload (3.0.8) 2021-12-09 18:08:36 -06:00
cetteup
c331eac5bb Fix teamOffByOne condition for Battlefield 1942 2021-08-04 19:52:32 +02:00
Pedro Ivo Hudson
f3d97b6ca1 Parse additional dayz tags: first person, dlc enabled and time 2021-07-21 19:35:48 -03:00
Michael Morrison
a8b7cad002 Fix corrupted dayzMods when packet overflow is used (3.0.7) 2021-07-09 02:23:36 -05:00
Michael Morrison
1d9cf90259 Parse dayz mods, queue length, and time acceleration (3.0.6) Fixes #232 Fixes #234 2021-07-08 21:51:34 -05:00
Michael Morrison
ce4e728493 Add support for udp bind port override (3.0.5) Fixes #149 2021-05-18 23:13:18 -05:00
Michael Morrison
fe124a4487 Bring discord protocol up to date with gamedig 3.0 2021-05-18 22:33:36 -05:00
Michael Morrison
576062e88b Merge remote-tracking branch 'origin/master' into proto-discord
# Conflicts:
#	README.md
#	bin/gamedig.js
2021-05-18 22:08:37 -05:00
Michael Morrison
e8f2c174fb Improve gamespy1 (3.0.3) 2021-04-27 18:12:22 -05:00
Michael Morrison
1b11a132b9 Fix player name extraction for Unreal Tournament (1999) and possibly other gamespy1 games. (3.0.2) 2021-04-27 00:27:14 -05:00
Michael Morrison
fec5a1fac6 Fix raw player subobject in fivem, assettocorsa, gamespy2 Fixes #222
Clarify nodejs 12 requirement for gamedig 3 Fixes #220
Release 3.0.1
2021-04-10 22:27:33 -05:00
Michael Morrison
f70112d092 * Properly handle non-indexed team names in gamespy1 Fixes #213
* Rename raw.steamappid and raw.gameid to raw.appId in steam protocol
* Don't query valve rules by default, unless requestRules option is set Fixes #176
2021-02-25 01:58:35 -06:00
Michael Morrison
052736edd7 Reduced chance of protocol collisions between gamespy3 and minecraftbedrock (2.0.27) 2021-02-12 11:36:51 -06:00
Michael Morrison
883700d7dd Remove redundant guid field from minecraftbedrock 2021-02-12 11:15:13 -06:00
Michael Morrison
4ecce4eff8 Add support for native minecraft bedrock protocol, as some bedrock servers apparently don't respond to gamespy3. Fixes #211 (2.0.26) 2021-02-12 11:07:50 -06:00
Michael Morrison
e4c29f9cbc Support challenges in A2S_INFO (upcoming change to valve protocol) Fixes #210 (2.0.25) 2021-02-06 00:50:06 -06:00
Michael Morrison
e99b3c1812 Add Savage 2: A Tortured Soul (2008) (2.0.24) 2021-01-08 20:02:23 -06:00
Michael Morrison
81a3ec1019 Always treat missing valve player response as non-fatal (2.0.23) 2020-09-02 05:59:54 -05:00
Michael Morrison
487b17dd73 Swap from request to got 2020-07-04 23:28:03 -05:00
Pascal Sthamer
f3b04d52d5
Fix typo 2020-02-18 14:53:39 +01:00
Pascal Sthamer
f5238027c7
Handle situtation where sample exists, but does not contain all players 2020-02-18 14:52:04 +01:00
Pascal Sthamer
f2177204be
Fix wrong player count in minecraftvanilla protocol 2020-02-15 22:05:13 +01:00
Michael Morrison
7c151c771e
Merge pull request #148 from xCausxn/feat/squad
Add check for Password_b on Squad Servers to correct password field.
2020-01-15 16:14:46 -06:00
Tom
f337cf6f58
Remove discriminator's from player names
The widget API seems to always set discriminator to 0000
2020-01-04 13:53:36 +00:00
Tom
3a8164cfbc
Set max players to total amount of members in server 2020-01-04 13:44:09 +00:00
Tom
0128e4d972
Remove extra logging
Whoops
2020-01-04 13:43:35 +00:00
Tom
8ad0fbc87b
Add discord protocol 2020-01-04 01:03:02 +00:00
cwbr
9db659b86b Add Assetto Corsa support 2019-12-27 19:53:38 +01:00
xCausxn
5545cae15f Add check for Password_b on Squad Servers to correct password field. 2019-11-17 16:08:46 +00:00
mmorrison
1c351fc3a4 Fix minecraft never throwing when server is unresponsive 2019-11-11 03:04:51 -06:00
mmorrison
6a0ed624c1 Automatically detect killing floor extended info, don't clobber re-used unreal 2 rule keys, add unreal 2 scoreboard info 2019-10-26 20:20:26 -05:00
mmorrison
265424adc8 unreal2 / killing floor protocol cleanup surrounding ucs-2 encoding issues 2019-10-26 07:31:28 -05:00
Michael Forsman
708988213f Adjusted Terraria protocol to check the "status" property for string "200" rather than integer 200.
I am not sure if the TShock API changed this recently or what, but it returns a string in the current version (4.3.26 for Terraria 1.3.5.3), and comparing it to an integer was incorrectly causing an "Invalid status" error.
2019-10-23 10:13:55 -05:00
mmorrison
aacefdca95 Clean up more junk from killing floor protocol 2019-10-16 00:36:44 -05:00
mmorrison
18be566540 Improve minecraft protocol compatibility 2019-10-15 23:56:33 -05:00
mmorrison
2df7fdae7a Additional debug logging for gamespy1 2019-10-15 22:31:53 -05:00
mmorrison
899627a92f Update dependencies 2019-10-15 15:03:11 -05:00
mmorrison
62723d85f0 Cherry-picked: Reject only with Error instead of Object or String Fixes #132 2019-10-15 14:47:22 -05:00
mmorrison
f0a24b8f65 Use @types/node@8.0.0 to validate (and fix) small node 8 api issues 2019-02-19 21:15:34 -06:00
mmorrison
dd5dce21db Improve multi-attempt logging 2019-02-13 22:46:13 -06:00
mmorrison
2ffeda6098 Improve starmade protocol 2019-02-05 03:19:06 -06:00
mmorrison
481a8d86c8 Add support for mafia 2 online 2019-02-04 20:20:51 -06:00
mmorrison
fc5975bf0c Clean up reader.string 2019-02-04 19:58:28 -06:00
mmorrison
82084ad38e Improve null splitting on rfactor 2019-02-04 01:16:30 -06:00
mmorrison
81750805f6 Add support for rFactor (2.0.10) 2019-02-04 01:11:28 -06:00
mmorrison
00f05b5385 Add support for vcmp, 2.0.9, Fixes #106 2019-02-03 23:40:47 -06:00
mmorrison
94c263669d Improve packet ordering and deduplication of players from gamespy1 protocol 2019-01-22 00:11:39 -06:00
mmorrison
2a87360a0e Minor debug logging improvements 2019-01-20 04:21:40 -06:00
mmorrison
9a536b160e Prevent tcp socket errors from dumping straight to console (2.0.7) 2019-01-20 03:52:40 -06:00
mmorrison
05619469b7 Add punycode support (2.0.6) 2019-01-20 03:45:57 -06:00
mmorrison
5aaff8e1e0 Added support for cs2d (2.0.5) 2019-01-13 23:54:36 -06:00
mmorrison
04bd6d9514 Add missing optional await (style choice) 2019-01-13 22:35:07 -06:00
mmorrison
9619449d77 Added support for Starsiege 2009 Closes #100 (v2.0.2) 2019-01-13 00:02:31 -06:00
mmorrison
dfa5c95efc Remove callback support and global Gamedig.debug option 2019-01-12 22:38:49 -06:00
mmorrison
fdc08b5c09 Finalized 2.0 release notes 2019-01-12 22:22:26 -06:00
mmorrison
6496660633 Add ping field, start improving README for 2.0 2019-01-12 21:32:24 -06:00
mmorrison
e937c725bb More async 2019-01-12 05:45:09 -06:00
mmorrison
29ce0b82d0 Additional async rewrite 2019-01-12 04:43:36 -06:00
mmorrison
efe12a00aa More async conversion 2019-01-10 22:20:56 -06:00
mmorrison
484e99b29c Improve logging 2019-01-09 05:50:30 -06:00
mmorrison
9b8423b20a More async conversions 2019-01-09 05:35:11 -06:00
mmorrison
77b2cc1c7f Initial es6 async conversion work 2019-01-07 00:52:29 -06:00
mmorrison
a054557f10 Clean up imports to make Intellij code analysis happy 2019-01-06 18:52:03 -06:00
mmorrison
8b3126e430 Use win1252 character encoding for samp (1.0.48) Fixes #99 2019-01-06 14:10:46 -06:00
mmorrison
ab4436d4cb Increase default timeout to 2000ms to align with steam server browser and allow for better compatibility with bad connections. 2018-11-11 06:13:31 -06:00
mmorrison
9b9277172d Export all minecraft json in raw object. Use modern minecraftping for all minecraft queries. 2018-11-11 06:12:44 -06:00
mmorrison
52ad7b1fd5 Fix title encoding for fivem fixes #83 2018-05-05 03:31:25 -05:00
mmorrison
e2c734577a Improve player / bot separation in valve games 2018-05-05 03:25:34 -05:00
mmorrison
1b85fda837 Add battalion 1944 Fixes #84 2018-05-05 03:00:54 -05:00
mmorrison
69614c606c #85 Fallback to limited player details if csgo doesn't respond with player packet 2018-05-05 02:45:58 -05:00
mmorrison
0854345f40 Nadeo cleanup for merge 2018-03-18 05:44:49 -05:00
Michael Morrison
471d3775b3
Merge pull request #81 from ItsPhenom/master
Nadeo patches
2018-03-18 05:39:49 -05:00
mmorrison
1b6f952a2d Add UNSUPPORTED query protocol for tribes 1 master 2018-03-18 04:46:14 -05:00
mmorrison
48dd342478 Improvements to tribes 1 2018-03-18 01:23:01 -05:00
mmorrison
802027c552 Add support for Tribes 1: Starsiege 2018-03-18 00:54:56 -05:00
Nicolas Graf
871647fcbc fixed regex again 2018-03-01 13:05:16 +01:00
Nicolas Graf
7c5c230686 fixed faulty regex 2018-03-01 09:34:30 +01:00