mirror of
https://github.com/tribufu/node-gamedig
synced 2026-05-06 07:07:33 +00:00
feat: add requestPlayers option (#624)
* feat: add option * docs: alter readme
This commit is contained in:
parent
0fe87c52eb
commit
e74ae933b3
5 changed files with 11 additions and 3 deletions
|
|
@ -4,6 +4,7 @@
|
|||
* Fix: `Deus Ex` using the wrong protocol (#621)
|
||||
* Fix: `Soldier ff Fortune` using the wrong protocol (#623)
|
||||
* Feat: For the Quake2 protocol `version`'s field, also look for `version` in the raw object
|
||||
* Feat: Add option `requestPlayers`, defaults to `true`.
|
||||
|
||||
## 5.1.2
|
||||
* Added Vintage Story support via the master server (#606)
|
||||
|
|
|
|||
|
|
@ -55,6 +55,7 @@ Confused on how this works, or you want to see more? Checkout the [examples](/ex
|
|||
| **ipFamily** | number | 0 | IP family/version returned when looking up hostnames via DNS, can be 0 (IPv4 and IPv6), 4 (IPv4 only) or 6 (IPv6 only). |
|
||||
| **debug** | boolean | false | Enables massive amounts of debug logging to stdout. |
|
||||
| **requestRules** | boolean | false | Valve games only. Additional 'rules' may be fetched into the `raw` key. |
|
||||
| **requestPlayers** | boolean | true | Valve games only. Disable this if you don't want to fetch players data. |
|
||||
| **requestRulesRequired** | boolean | false | Valve games only. `requestRules` is always required to have a response or the query will timeout. |
|
||||
| **requestPlayersRequired** | boolean | false | Valve games only. Querying players is always required to have a response or the query will timeout. Some [games](GAMES_LIST.md) may not provide a players response. |
|
||||
| **stripColors** | boolean | true | Enables stripping colors for protocols: unreal2, savage2, quake3, nadeo, gamespy2, doom3, armagetron. |
|
||||
|
|
|
|||
|
|
@ -6,11 +6,12 @@ import Minimist from 'minimist'
|
|||
import { GameDig } from './../lib/index.js'
|
||||
|
||||
const argv = Minimist(process.argv.slice(2), {
|
||||
boolean: ['pretty', 'debug', 'givenPortOnly', 'requestRules', 'requestRulesRequired', 'requestPlayersRequired', 'stripColors', 'portCache', 'noBreadthOrder', 'checkOldIDs'],
|
||||
boolean: ['pretty', 'debug', 'givenPortOnly', 'requestRules', 'requestPlayers', 'requestRulesRequired', 'requestPlayersRequired', 'stripColors', 'portCache', 'noBreadthOrder', 'checkOldIDs'],
|
||||
string: ['guildId', 'serverId', 'listenUdpPort', 'ipFamily', 'token'],
|
||||
default: {
|
||||
stripColors: true,
|
||||
portCache: true
|
||||
portCache: true,
|
||||
requestPlayers: true
|
||||
}
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,8 @@ const defaultOptions = {
|
|||
stripColors: true,
|
||||
portCache: true,
|
||||
noBreadthOrder: false,
|
||||
ipFamily: 0
|
||||
ipFamily: 0,
|
||||
requestPlayers: true
|
||||
}
|
||||
|
||||
export default class QueryRunner {
|
||||
|
|
|
|||
|
|
@ -163,6 +163,10 @@ export default class valve extends Core {
|
|||
async queryPlayers (/** Results */ state) {
|
||||
state.raw.players = []
|
||||
|
||||
if (!this.options.requestPlayers) {
|
||||
return
|
||||
}
|
||||
|
||||
this.logger.debug('Requesting player list ...')
|
||||
const b = await this.sendPacket(
|
||||
this.goldsrcInfo ? undefined : 0x55,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue