From 9c052667abbe78b338d917b3c73fd36a58c91d54 Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Fri, 24 Apr 2026 15:01:25 -0400 Subject: [PATCH 1/9] Added Palworld schema. Adjusted to handle looking at servers env settings for admin password. --- .../Query/Schemas/PalworldQueryTypeSchema.php | 71 +++++++++++++++++++ .../ServerAwareQueryTypeSchemaInterface.php | 11 +++ player-counter/src/Models/GameQuery.php | 8 ++- .../Providers/PlayerCounterPluginProvider.php | 2 + 4 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php create mode 100644 player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php new file mode 100644 index 00000000..55ee193e --- /dev/null +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -0,0 +1,71 @@ +variables() + ->where('env_variable', 'ADMIN_PASSWORD') + ->first()?->server_value; + + if (!$adminPassword) { + return null; + } + + try { + $response = Http::timeout(5) + ->withBasicAuth('admin', $adminPassword) + ->get("http://{$ip}:{$port}/v1/api/players"); + + if (!$response->ok()) { + return null; + } + + $data = $response->json(); + $players = array_map(fn ($p) => [ + 'id' => $p['playeruid'] ?? $p['steamid'] ?? '', + 'name' => $p['name'] ?? '', + ], $data['players'] ?? []); + + // Fetch metrics for servername and max_players + $metrics = Http::timeout(5) + ->withBasicAuth('admin', $adminPassword) + ->get("http://{$ip}:{$port}/v1/api/metrics") + ->json(); + + return [ + 'hostname' => $metrics['servername'] ?? $server->name, + 'map' => 'Palpagos Islands', + 'current_players' => count($players), + 'max_players' => $metrics['maxplayers'] ?? 32, + 'players' => $players, + ]; + } catch (\Throwable $e) { + report($e); + return null; + } + } +} + diff --git a/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php b/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php new file mode 100644 index 00000000..9b222e5d --- /dev/null +++ b/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php @@ -0,0 +1,11 @@ +} */ + public function processWithServer(Server $server, string $ip, int $port): ?array; +} diff --git a/player-counter/src/Models/GameQuery.php b/player-counter/src/Models/GameQuery.php index a284b016..463b1a8f 100644 --- a/player-counter/src/Models/GameQuery.php +++ b/player-counter/src/Models/GameQuery.php @@ -6,6 +6,7 @@ use App\Models\Egg; use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeService; +use Boy132\PlayerCounter\Extensions\Query\ServerAwareQueryTypeSchemaInterface; use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; @@ -59,7 +60,12 @@ public function runQuery(Server $server): ?array /** @var QueryTypeService $service */ $service = app(QueryTypeService::class); - return $service->get($this->query_type)?->process($ip, $port); + $schema = $service->get($this->query_type); + if ($schema instanceof ServerAwareQueryTypeSchemaInterface) { + return $schema->processWithServer($server, $ip, $port); + } + + return $schema?->process($ip, $port); } public static function canRunQuery(?Allocation $allocation): bool diff --git a/player-counter/src/Providers/PlayerCounterPluginProvider.php b/player-counter/src/Providers/PlayerCounterPluginProvider.php index 0f90c67d..5ee32eab 100644 --- a/player-counter/src/Providers/PlayerCounterPluginProvider.php +++ b/player-counter/src/Providers/PlayerCounterPluginProvider.php @@ -11,6 +11,7 @@ use Boy132\PlayerCounter\Extensions\Query\Schemas\GoldSourceQueryTypeSchema; use Boy132\PlayerCounter\Extensions\Query\Schemas\MinecraftBedrockQueryTypeSchema; use Boy132\PlayerCounter\Extensions\Query\Schemas\MinecraftJavaQueryTypeSchema; +use Boy132\PlayerCounter\Extensions\Query\Schemas\PalworldQueryTypeSchema; use Boy132\PlayerCounter\Extensions\Query\Schemas\SourceQueryTypeSchema; use Boy132\PlayerCounter\Filament\Server\Widgets\ServerPlayerWidget; use Boy132\PlayerCounter\Models\EggGameQuery; @@ -35,6 +36,7 @@ public function register(): void $service->register(new MinecraftJavaQueryTypeSchema()); $service->register(new MinecraftBedrockQueryTypeSchema()); $service->register(new CitizenFXQueryTypeSchema()); + $service->register(new PalworldQueryTypeSchema()); return $service; }); From 54873b2451086a7a0bdcd44ec9fbaf216df9baee Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Fri, 24 Apr 2026 15:35:21 -0400 Subject: [PATCH 2/9] Fix incorrect Palworld metrics API field names - hostname now uses $server->name directly (metrics has no servername field) - max_players now reads maxplayernum from metrics (not maxplayers) Co-Authored-By: Claude Sonnet 4.6 --- .../src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index 55ee193e..e8a69bfd 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -56,10 +56,10 @@ public function processWithServer(Server $server, string $ip, int $port): ?array ->json(); return [ - 'hostname' => $metrics['servername'] ?? $server->name, + 'hostname' => $server->name, 'map' => 'Palpagos Islands', 'current_players' => count($players), - 'max_players' => $metrics['maxplayers'] ?? 32, + 'max_players' => $metrics['maxplayernum'] ?? 32, 'players' => $players, ]; } catch (\Throwable $e) { From 63ccc361d59899c440cd8fccd038136f972ead6b Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Fri, 24 Apr 2026 15:36:28 -0400 Subject: [PATCH 3/9] Fix Pint style violations: remove aligned => operators --- .../Query/Schemas/PalworldQueryTypeSchema.php | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index e8a69bfd..6fb086a7 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -45,22 +45,22 @@ public function processWithServer(Server $server, string $ip, int $port): ?array $data = $response->json(); $players = array_map(fn ($p) => [ - 'id' => $p['playeruid'] ?? $p['steamid'] ?? '', + 'id' => $p['playeruid'] ?? $p['steamid'] ?? '', 'name' => $p['name'] ?? '', ], $data['players'] ?? []); - // Fetch metrics for servername and max_players + // Fetch metrics for max_players $metrics = Http::timeout(5) ->withBasicAuth('admin', $adminPassword) ->get("http://{$ip}:{$port}/v1/api/metrics") ->json(); return [ - 'hostname' => $server->name, - 'map' => 'Palpagos Islands', + 'hostname' => $server->name, + 'map' => 'Palpagos Islands', 'current_players' => count($players), - 'max_players' => $metrics['maxplayernum'] ?? 32, - 'players' => $players, + 'max_players' => $metrics['maxplayernum'] ?? 32, + 'players' => $players, ]; } catch (\Throwable $e) { report($e); From 0c332f01771f342165dd21855b019f954d74debb Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Sat, 25 Apr 2026 11:00:19 -0400 Subject: [PATCH 4/9] Updated palworld query schema to check for ok response --- .../Extensions/Query/Schemas/PalworldQueryTypeSchema.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index 6fb086a7..3ab62537 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -50,16 +50,17 @@ public function processWithServer(Server $server, string $ip, int $port): ?array ], $data['players'] ?? []); // Fetch metrics for max_players - $metrics = Http::timeout(5) + $metricsResponse = Http::timeout(5) ->withBasicAuth('admin', $adminPassword) - ->get("http://{$ip}:{$port}/v1/api/metrics") - ->json(); + ->get("http://{$ip}:{$port}/v1/api/metrics"); + + $maxPlayers = $metricsResponse->ok() ? ($metricsResponse->json()['maxplayernum'] ?? 32) : 32; return [ 'hostname' => $server->name, 'map' => 'Palpagos Islands', 'current_players' => count($players), - 'max_players' => $metrics['maxplayernum'] ?? 32, + 'max_players' => $maxPlayers, 'players' => $players, ]; } catch (\Throwable $e) { From 6389ca550089d0d7acc039b9e6afe0e97fe82c54 Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Sat, 25 Apr 2026 11:19:29 -0400 Subject: [PATCH 5/9] adjusted some spacing for pint --- .../src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index 3ab62537..b358bb9f 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -65,8 +65,8 @@ public function processWithServer(Server $server, string $ip, int $port): ?array ]; } catch (\Throwable $e) { report($e); + return null; } } } - From 1fa85da616cb46dcf8ce002b8c3e6f603ae5c164 Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Fri, 1 May 2026 09:10:32 -0400 Subject: [PATCH 6/9] Removed server schema interface and adjusted original to include server --- .../Query/QueryTypeSchemaInterface.php | 4 ++- .../Schemas/CitizenFXQueryTypeSchema.php | 3 +- .../Schemas/GoldSourceQueryTypeSchema.php | 3 +- .../MinecraftBedrockQueryTypeSchema.php | 3 +- .../Schemas/MinecraftJavaQueryTypeSchema.php | 3 +- .../Query/Schemas/PalworldQueryTypeSchema.php | 32 +++++++------------ .../Query/Schemas/SourceQueryTypeSchema.php | 3 +- .../ServerAwareQueryTypeSchemaInterface.php | 11 ------- 8 files changed, 25 insertions(+), 37 deletions(-) delete mode 100644 player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php diff --git a/player-counter/src/Extensions/Query/QueryTypeSchemaInterface.php b/player-counter/src/Extensions/Query/QueryTypeSchemaInterface.php index 439adb7f..041139e3 100644 --- a/player-counter/src/Extensions/Query/QueryTypeSchemaInterface.php +++ b/player-counter/src/Extensions/Query/QueryTypeSchemaInterface.php @@ -2,6 +2,8 @@ namespace Boy132\PlayerCounter\Extensions\Query; +use App\Models\Server; + interface QueryTypeSchemaInterface { public function getId(): string; @@ -9,5 +11,5 @@ public function getId(): string; public function getName(): string; /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: ?array} */ - public function process(string $ip, int $port): ?array; + public function process(Server $server, string $ip, int $port): ?array; } diff --git a/player-counter/src/Extensions/Query/Schemas/CitizenFXQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/CitizenFXQueryTypeSchema.php index ac4226c0..63828d52 100644 --- a/player-counter/src/Extensions/Query/Schemas/CitizenFXQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/CitizenFXQueryTypeSchema.php @@ -2,6 +2,7 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; +use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; use Exception; use Illuminate\Support\Facades\Http; @@ -19,7 +20,7 @@ public function getName(): string } /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: array} */ - public function process(string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { try { $this->resolveSRV($ip, $port); diff --git a/player-counter/src/Extensions/Query/Schemas/GoldSourceQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/GoldSourceQueryTypeSchema.php index 19295cfe..59a5f628 100644 --- a/player-counter/src/Extensions/Query/Schemas/GoldSourceQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/GoldSourceQueryTypeSchema.php @@ -2,6 +2,7 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; +use App\Models\Server; use xPaw\SourceQuery\SourceQuery; class GoldSourceQueryTypeSchema extends SourceQueryTypeSchema @@ -17,7 +18,7 @@ public function getName(): string } /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: array} */ - public function process(string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { return $this->run($ip, $port, SourceQuery::GOLDSOURCE); } diff --git a/player-counter/src/Extensions/Query/Schemas/MinecraftBedrockQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/MinecraftBedrockQueryTypeSchema.php index 6afe0560..946dcdf5 100644 --- a/player-counter/src/Extensions/Query/Schemas/MinecraftBedrockQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/MinecraftBedrockQueryTypeSchema.php @@ -2,6 +2,7 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; +use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; use Exception; use xPaw\MinecraftQuery; @@ -19,7 +20,7 @@ public function getName(): string } /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: ?array} */ - public function process(string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { $query = new MinecraftQuery(); diff --git a/player-counter/src/Extensions/Query/Schemas/MinecraftJavaQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/MinecraftJavaQueryTypeSchema.php index 9d78c97d..ea4d6857 100644 --- a/player-counter/src/Extensions/Query/Schemas/MinecraftJavaQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/MinecraftJavaQueryTypeSchema.php @@ -2,6 +2,7 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; +use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; use Exception; use xPaw\MinecraftPing; @@ -20,7 +21,7 @@ public function getName(): string } /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: array} */ - public function process(string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { $query = $this->tryQuery($ip, $port); if ($query) { diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index b358bb9f..94599db4 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -3,10 +3,10 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; use App\Models\Server; -use Boy132\PlayerCounter\Extensions\Query\ServerAwareQueryTypeSchemaInterface; +use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; use Illuminate\Support\Facades\Http; -class PalworldQueryTypeSchema implements ServerAwareQueryTypeSchemaInterface +class PalworldQueryTypeSchema implements QueryTypeSchemaInterface { public function getId(): string { @@ -18,13 +18,7 @@ public function getName(): string return 'Palworld'; } - // Fallback: no auth context available — cannot query REST API - public function process(string $ip, int $port): ?array - { - return null; - } - - public function processWithServer(Server $server, string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { $adminPassword = $server->variables() ->where('env_variable', 'ADMIN_PASSWORD') @@ -35,26 +29,23 @@ public function processWithServer(Server $server, string $ip, int $port): ?array } try { - $response = Http::timeout(5) - ->withBasicAuth('admin', $adminPassword) - ->get("http://{$ip}:{$port}/v1/api/players"); + $base = "http://{$ip}:{$port}"; + [$playersResp, $metricsResp] = Http::pool(fn ($pool) => [ + $pool->timeout(5)->withBasicAuth('admin', $adminPassword)->get("{$base}/v1/api/players"), + $pool->timeout(5)->withBasicAuth('admin', $adminPassword)->get("{$base}/v1/api/metrics"), + ]); - if (!$response->ok()) { + if (!$playersResp->ok()) { return null; } - $data = $response->json(); + $data = $playersResp->json(); $players = array_map(fn ($p) => [ 'id' => $p['playeruid'] ?? $p['steamid'] ?? '', 'name' => $p['name'] ?? '', ], $data['players'] ?? []); - // Fetch metrics for max_players - $metricsResponse = Http::timeout(5) - ->withBasicAuth('admin', $adminPassword) - ->get("http://{$ip}:{$port}/v1/api/metrics"); - - $maxPlayers = $metricsResponse->ok() ? ($metricsResponse->json()['maxplayernum'] ?? 32) : 32; + $maxPlayers = $metricsResp->ok() ? ($metricsResp->json()['maxplayernum'] ?? 32) : 32; return [ 'hostname' => $server->name, @@ -63,6 +54,7 @@ public function processWithServer(Server $server, string $ip, int $port): ?array 'max_players' => $maxPlayers, 'players' => $players, ]; + } catch (\Throwable $e) { report($e); diff --git a/player-counter/src/Extensions/Query/Schemas/SourceQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/SourceQueryTypeSchema.php index 0a20cee0..5d4902fd 100644 --- a/player-counter/src/Extensions/Query/Schemas/SourceQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/SourceQueryTypeSchema.php @@ -2,6 +2,7 @@ namespace Boy132\PlayerCounter\Extensions\Query\Schemas; +use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; use Exception; use xPaw\SourceQuery\SourceQuery; @@ -19,7 +20,7 @@ public function getName(): string } /** @return ?array{hostname: string, map: string, current_players: int, max_players: int, players: array} */ - public function process(string $ip, int $port): ?array + public function process(Server $server, string $ip, int $port): ?array { return $this->run($ip, $port, SourceQuery::SOURCE); } diff --git a/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php b/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php deleted file mode 100644 index 9b222e5d..00000000 --- a/player-counter/src/Extensions/Query/ServerAwareQueryTypeSchemaInterface.php +++ /dev/null @@ -1,11 +0,0 @@ -} */ - public function processWithServer(Server $server, string $ip, int $port): ?array; -} From d49d018c55961ceea1b3e8d9132e77eb0b6830c5 Mon Sep 17 00:00:00 2001 From: makepeaceJ Date: Sat, 2 May 2026 22:18:51 -0400 Subject: [PATCH 7/9] Adjusted GameQuery.php to pass in server param --- player-counter/src/Models/GameQuery.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/player-counter/src/Models/GameQuery.php b/player-counter/src/Models/GameQuery.php index 463b1a8f..12c12dc3 100644 --- a/player-counter/src/Models/GameQuery.php +++ b/player-counter/src/Models/GameQuery.php @@ -6,7 +6,6 @@ use App\Models\Egg; use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeService; -use Boy132\PlayerCounter\Extensions\Query\ServerAwareQueryTypeSchemaInterface; use Illuminate\Database\Eloquent\Collection; use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Relations\BelongsToMany; @@ -61,11 +60,8 @@ public function runQuery(Server $server): ?array $service = app(QueryTypeService::class); $schema = $service->get($this->query_type); - if ($schema instanceof ServerAwareQueryTypeSchemaInterface) { - return $schema->processWithServer($server, $ip, $port); - } - return $schema?->process($ip, $port); + return $schema?->process($server, $ip, $port); } public static function canRunQuery(?Allocation $allocation): bool From 084d361f61391dd4f909a438d243ce7efe452e03 Mon Sep 17 00:00:00 2001 From: Boy132 Date: Mon, 4 May 2026 09:07:04 +0200 Subject: [PATCH 8/9] Apply suggestions from code review Co-authored-by: Boy132 --- .../src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php | 5 +++-- player-counter/src/Models/GameQuery.php | 4 +--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php index 94599db4..d8b5ba8f 100644 --- a/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php +++ b/player-counter/src/Extensions/Query/Schemas/PalworldQueryTypeSchema.php @@ -4,6 +4,7 @@ use App\Models\Server; use Boy132\PlayerCounter\Extensions\Query\QueryTypeSchemaInterface; +use Exception; use Illuminate\Support\Facades\Http; class PalworldQueryTypeSchema implements QueryTypeSchemaInterface @@ -55,8 +56,8 @@ public function process(Server $server, string $ip, int $port): ?array 'players' => $players, ]; - } catch (\Throwable $e) { - report($e); + } catch (Exception $exception) { + report($exception); return null; } diff --git a/player-counter/src/Models/GameQuery.php b/player-counter/src/Models/GameQuery.php index 12c12dc3..a284b016 100644 --- a/player-counter/src/Models/GameQuery.php +++ b/player-counter/src/Models/GameQuery.php @@ -59,9 +59,7 @@ public function runQuery(Server $server): ?array /** @var QueryTypeService $service */ $service = app(QueryTypeService::class); - $schema = $service->get($this->query_type); - - return $schema?->process($server, $ip, $port); + return $service->get($this->query_type)?->process($ip, $port); } public static function canRunQuery(?Allocation $allocation): bool From 0eb3a9ed75facdb2a2cd732717c4cb7c4d4695f8 Mon Sep 17 00:00:00 2001 From: Boy132 Date: Mon, 4 May 2026 09:09:06 +0200 Subject: [PATCH 9/9] add back $server param --- player-counter/src/Models/GameQuery.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/player-counter/src/Models/GameQuery.php b/player-counter/src/Models/GameQuery.php index a284b016..b2619eea 100644 --- a/player-counter/src/Models/GameQuery.php +++ b/player-counter/src/Models/GameQuery.php @@ -59,7 +59,7 @@ public function runQuery(Server $server): ?array /** @var QueryTypeService $service */ $service = app(QueryTypeService::class); - return $service->get($this->query_type)?->process($ip, $port); + return $service->get($this->query_type)?->process($server, $ip, $port); } public static function canRunQuery(?Allocation $allocation): bool