[GH-ISSUE #4469] [Feature]: Cfg setting to adjust Palworld steam/query port #2795

Closed
opened 2026-02-27 03:05:28 +03:00 by kerem · 3 comments
Owner

Originally created by @Crimson-Decoded on GitHub (Jan 27, 2024).
Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/4469

User story

As a server administrator, I want to be able to configure the Steam/Query port, so that I can host multiple servers

Game

Palworld

Linux distro

Ubuntu 22.04

Command

command: start, command: details

Further information

While most other things can be configured in the PalWorldSettings.ini file, the Steam/query port is not one of them, so it needs to be configured as a start parameter.

Currently, there are two proposed changes.

One - lgsm/modules/info_game.sh

fn_info_game_pw() {
        servername="${servername:-"NOT SET"}"
        port="${port:-"0"}"
        steamport="${steamport:-"27015"}"
        unknownport="1985"
}

Modify the steamport so that it can accept variables configured in lgsm/config-lgsm/pwserver/.cfg
It appears info_game.sh is loaded after .cfg, so it overrides user configuration, even on ./pwserver start

Second, once that is done, in lgsm/config-lgsm/pwserver/_default.cfg

# Configure Steam/Query port to allow for multiple servers
steamport="27015"

## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters
## Game Server Docs | https://tech.palworldgame.com/dedicated-server-guide#linux
startparameters="EpicApp=PalServer -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -servername='${servername}' -queryport='${steamport}'"

With the current iteration, even if I create the variable 'steamport' in .cfg files, no matter what I set it to, it gets overwritten with 27015, and it appears to affect the actual game start (when the variable is steamport, it works fine if I name it something different)
The change to game_info.sh will also allow it to display the user-configured port in ./pwserver details

Originally created by @Crimson-Decoded on GitHub (Jan 27, 2024). Original GitHub issue: https://github.com/GameServerManagers/LinuxGSM/issues/4469 ### User story As a server administrator, I want to be able to configure the Steam/Query port, so that I can host multiple servers ### Game Palworld ### Linux distro Ubuntu 22.04 ### Command command: start, command: details ### Further information While most other things can be configured in the PalWorldSettings.ini file, the Steam/query port is not one of them, so it needs to be configured as a start parameter. Currently, there are two proposed changes. One - lgsm/modules/info_game.sh ``` fn_info_game_pw() { servername="${servername:-"NOT SET"}" port="${port:-"0"}" steamport="${steamport:-"27015"}" unknownport="1985" } ``` Modify the steamport so that it can accept variables configured in lgsm/config-lgsm/pwserver/<file>.cfg It appears info_game.sh is loaded after .cfg, so it overrides user configuration, even on ./pwserver start Second, once that is done, in lgsm/config-lgsm/pwserver/_default.cfg ``` # Configure Steam/Query port to allow for multiple servers steamport="27015" ## Server Parameters | https://docs.linuxgsm.com/configuration/start-parameters#additional-parameters ## Game Server Docs | https://tech.palworldgame.com/dedicated-server-guide#linux startparameters="EpicApp=PalServer -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -servername='${servername}' -queryport='${steamport}'" ``` With the current iteration, even if I create the variable 'steamport' in .cfg files, no matter what I set it to, it gets overwritten with 27015, and it appears to affect the actual game start (when the variable is steamport, it works fine if I name it something different) The change to game_info.sh will also allow it to display the user-configured port in ./pwserver details
Author
Owner

@Crimson-Decoded commented on GitHub (Jan 31, 2024):

actually, I suppose instead the info_game.sh edit would be
steamport="${steamport:-"0"}"
since by setting steamport in _default.cfg, we won't need to set its default value in info_game.sh, the way all other variables are handled.

<!-- gh-comment-id:1919146499 --> @Crimson-Decoded commented on GitHub (Jan 31, 2024): actually, I suppose instead the info_game.sh edit would be `steamport="${steamport:-"0"}"` since by setting steamport in _default.cfg, we won't need to set its default value in info_game.sh, the way all other variables are handled.
Author
Owner

@Crimson-Decoded commented on GitHub (Feb 1, 2024):

Closing in favor of 4454, as that was created first. transferring information to that thread.

<!-- gh-comment-id:1922512549 --> @Crimson-Decoded commented on GitHub (Feb 1, 2024): Closing in favor of 4454, as that was created first. transferring information to that thread.
Author
Owner

@github-actions[bot] commented on GitHub (Feb 3, 2025):

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

<!-- gh-comment-id:2629637041 --> @github-actions[bot] commented on GitHub (Feb 3, 2025): This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#2795
No description provided.