Commit graph

79 commits

Author SHA1 Message Date
CosminPerRam
1ef09d470b
feat: breadth attempt order (#486)
* feat: breadth attempt order

* fix: remove stray console log from debugging
2024-01-18 23:11:03 +02:00
CosminPerRam
6746442254
chore: rename maxAttempts option to maxRetries (#485)
* chore: rename maxAttempts to maxRetries

* fix: typo
2024-01-18 01:15:48 +02:00
CosminPerRam
b48a4398cd
feat: port caching (#478)
* feat: port caching

* feat: dont store in cache if disabled
2024-01-17 23:23:20 +02:00
Pedro Ivo Hudson
1f0563f7d2
feat: make port_query_offset accept a number or an array of numbers (#471)
* feat: add port_query_offset_alt

* feat: port_query_offset can now handle arrays of numbers

* back to previous state

* refactor gameQueryPortOffset ifs

* simpler code
2024-01-17 23:14:01 +02:00
Pedro Ivo Hudson
861d24898a
feat: Add Call of Duty: Black Ops 3 support (#473)
* feat: add black ops 3 support

* fix duplicate game name

* fix codbo3 port

* try resolve conflict

* possible conflict fix
2024-01-17 13:08:07 +02:00
CosminPerRam
b481425dbf fix: numplayers not having a default value 2024-01-17 00:23:29 +02:00
CosminPerRam
ec708d7219
feat: add query port to the results (#476) 2024-01-17 00:20:56 +02:00
Pedro Ivo Hudson
2ffff5e7d6
chore: update games list (#474)
* add game notes

* adjusting table spacing

* add missing extra notes
2024-01-16 23:16:48 +02:00
CosminPerRam
5ae12dd494
feat: strip Colors (#469) 2024-01-16 01:39:07 +02:00
CosminPerRam
aa8b20b302
chore: Games IDs and names refactor, extract release year. (#415)
* partial gid remakes and years

* First run of complete gid and name revision

* chore: some gid refactors and some years

* fix: add missing years

* chore: regenerate GAMES_LIST.md

* fix: wrong ids caught by rust gid testing

* fix: star wars jedi knight 2: jedi outcast gid

* chore: regenerate games_list after rebase

* chore: fix some more ids caught by rust id testing
2024-01-11 01:38:44 +02:00
CosminPerRam
fccd61c4ea fix(games): americas army proving grounds id 2024-01-07 23:29:04 +02:00
CosminPerRam
6e6d140b7a
fix: remove deno hacky fixes (#452)
* fix: remove deno hacky fixes

* fix: upgrade deno workflow from 1.x to 1.39.2
2024-01-06 15:46:02 +02:00
CosminPerRam
90b3c6044b
chore: extract dayz from valve (#448) 2024-01-02 17:45:44 +02:00
CosminPerRam
6bfbc883be
feat: add BeamMP support (#447)
* feat: add beammp support

* fix: cleanup server name of escape codes

* chore: add a new line for better readability
2023-12-30 22:41:56 +02:00
CosminPerRam
26a6ee1c08
fix: add -1 offset to Rising World (#441) 2023-12-25 23:45:24 +02:00
CosminPerRam
89515cb677
feat: backport 4.3.0 changes into master (#432)
* chore: backport all 4.3.0 changes

* docs: remove changelog line that does not apply
2023-12-03 17:52:17 +02:00
CosminPerRam
8192ed07e0
feat: export games and protocols besides GameDig (#411)
* feat: export games and protocols besides GameDig

* fix: revert ProtocolResolver rename

* fix: imports on the attempt tools

* docs: update changelog to note exports
2023-11-20 11:35:31 +02:00
Tom
bdb926d6b2
feat: dns: Use node's built in isIP check instead of regex (#410)
Fixes #408
2023-11-19 21:02:55 +02:00
CosminPerRam
c0287ab932 chore: rename game id 7d2d to sdtd 2023-11-19 03:03:47 +02:00
CosminPerRam
ce4cddb87f
feat: remove games.txt and replace it with an in-code solution (#407)
* feat: remove games.txt and replace it with an in-code solution

* docs: update changelog

* chore: add todo comment regarding weird game ids to rename

* fix: generate games list md file

* fix: gemerate games list file to alphabetical id order

* fix: update changelog to note removal of some game ids and add geneshift alternative
2023-11-19 02:59:31 +02:00
CosminPerRam
cee42e7a88
chore: Convert all files to LF endings (#400)
* Convert to LF?

* Modify gitattributes

* Force LF

* Git --renormalize

* Update .gitattributes to enforce eol=lf

* Redo CRLF -> LF on remaining files
2023-11-12 13:14:43 +02:00
CosminPerRam
3def20417d Replace an instance of substring with startswith 2023-11-02 18:43:12 +02:00
CosminPerRam
da7a4a6334
Remove Players::setNum and stabilize field numplayers (#389)
* Remove Players Set Num

* Stabilize numplayers on armagetron

* Stabilize numplayers on ase

* Stabilize numplayers on assettocorsa

* Optimize away a variable declaration

* Stabilize numplayers on buildandshoot

* Stabilize numplayers on cs2d

* Fix wrong raw field parsed on Doom3

* Updated CHANGELOG and README regarding doom3 fix and numplayers

* Stabilize numplayers on doom3

* Stabilize numplayers on eco

* Stabilize numplayers on ffow

* Stabilize numplayers on quake2

* Stabilize numplayers on gamespy1

* Stabilize numplayers on gamespy2

* Stabilize numplayers on gamespy3

* Remove reductant numplayers setter in jc2mp

* Stabilize numplayers on kspdmp

* Stabilize numplayers on mafia2mp

* Stabilize numplayers on minecraftvanilla and remove players empty placeholders

* Stabilize numplayers on nadeo

* Stabilize numplayers on samp and reduce unused setters

* Stabilize numplayers on terraria

* Stabilize numplayers on tribes1

* Stabilize numplayers on unreal2

* Stabilize numplayers on valve

* Stabilize numplayers on ventrilo

* Battlefield: Set numplayers from info, not players

* Stabilize numplayers on minecraft

* Stabilize numplayers on teamspeak2

* Stabilize numplayers on teamspeak3

* Update CHANGELOG.md to add removal of players placeholders

* Replaced minecraft gamespy numplayers
2023-10-27 19:48:56 +03:00
CosminPerRam
5af13e283e Replace of promisify for dns with dns.promises 2023-10-14 19:53:07 +03:00
Tom
01794f6339
Add support for running using deno (#362)
* Add missing CRLF line ending

* Add support for running using deno

Prefix node imports with "node:" and gate a socket API that is not
implemented in [deno](https://deno.land) so that the library can be used
there. This should not break node and doesn't in my brief testing.
2023-10-10 12:25:57 +03:00
CosminPerRam
93a9095d99
Add eslint (#364)
* Add initial prettier and eslint configs

* Modify prettierrc

* Run eslint on everything

* Actually remove prettier

* Fix some eslints

* Remove label in gs2

* Update CHANGELOG

* Update eslintrc to specify es2021
2023-09-19 19:52:35 +03:00
CosminPerRam
17f91904ab Updated node version to 14.17 from 14 2023-09-15 00:05:06 +03:00
CosminPerRam
544610f085
Replace punycode (#359)
* Replace by package

* Update CHANGELOG
2023-09-14 23:44:57 +03:00
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
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
b11eac277d Improve dayz mod parsing with more random reverse engineering guesses 2022-02-05 19:28:48 -06:00
Michael Morrison
5c2d15df49 Remove complex players setter overload (3.0.8) 2021-12-09 18:08:36 -06:00
Smith
6354e34d18 handle ambiguity of the setters (players, bots)
* cases where the protocol overwrites the property with a prepared Players instance (eg.: minecraft & gamespy3)
2021-12-09 22:56:24 +01:00
Smith
e6db2a9b72 fix undef prop 2021-12-09 22:27:44 +01: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
d65a24dc18 Release 3.0.0 2021-02-25 02:15:53 -06: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
cetteup
a362d1d113 Added givenPortOnly user option
Allows user to disable gamedig's default behavior of adding query attempts using the default query port(-offset)
2020-08-24 20:27:44 +02:00
mmorrison
1b47fd2096 Support dnsLookupAsync returning a string for some reason, Fixes #135 2019-10-15 14:32:28 -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
ab6e9064d2 More release dates and readme cleanup 2019-02-07 00:37:33 -06:00
mmorrison
0c19c734b1 Filling out more release dates in the readme 2019-02-06 23:19:32 -06:00
mmorrison
a37994e1bf Add Atlas (2018)
Begin filling out dates for games in the list
2019-02-06 06:23:34 -06:00
mmorrison
fc5975bf0c Clean up reader.string 2019-02-04 19:58:28 -06:00
mmorrison
2a87360a0e Minor debug logging improvements 2019-01-20 04:21:40 -06:00
mmorrison
05619469b7 Add punycode support (2.0.6) 2019-01-20 03:45:57 -06:00
mmorrison
9619449d77 Added support for Starsiege 2009 Closes #100 (v2.0.2) 2019-01-13 00:02:31 -06:00