Nodes always publish container port 8211 and only move the host side. PublicPort (what the community server list announces) is now {PUBLIC_PORT_8211}, written unquoted, and the server binds -port=8211 directly.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
559 lines
17 KiB
YAML
559 lines
17 KiB
YAML
# yaml-language-server: $schema=../../schema/game.schema.json
|
|
id: palworld
|
|
name: Palworld
|
|
defaultDockerImage: cm2network/steamcmd
|
|
defaultStartupCommand: ./PalServer.sh -port=8211 -useperfthreads -NoAsyncLoadingThread -UseMultithreadForDS -publiclobby
|
|
requiredMemoryMb: 8000
|
|
requiredDiskMb: 20000
|
|
defaultPorts:
|
|
- 8211:8211/udp
|
|
installMethod: STEAMCMD
|
|
installConfig:
|
|
appId: "2394010"
|
|
defaultConfig:
|
|
AdminPassword: ""
|
|
AllowConnectPlatform: Xbox,Steam
|
|
AutoResetGuildTimeNoOnlinePlayers: "2160.000000"
|
|
BanListURL: https://api.palworldgame.com/api/banlist.txt
|
|
BaseCampMaxNum: 128
|
|
BaseCampMaxNumInGuild: 10
|
|
BaseCampWorkerMaxNum: 30
|
|
BuildObjectDamageRate: "1.000000"
|
|
BuildObjectDeteriorationDamageRate: "1.000000"
|
|
CollectionDropRate: "1.000000"
|
|
CollectionObjectHpRate: "1.000000"
|
|
CollectionObjectRespawnSpeedRate: "1.000000"
|
|
CoopPlayerMaxNum: 4
|
|
CrossplayPlatforms: Xbox,Steam
|
|
DayTimeSpeedRate: "1.000000"
|
|
DeathPenalty: All
|
|
Difficulty: None
|
|
DropItemAliveMaxHours: "1.000000"
|
|
DropItemMaxNum: 3000
|
|
DropItemMaxNum_UNKO: 100
|
|
EnemyDropItemRate: "1.000000"
|
|
ExpRate: "1.000000"
|
|
GuildPlayerMaxNum: 20
|
|
LogFormatType: Text
|
|
NightTimeSpeedRate: "1.000000"
|
|
PalAutoHPRegeneRate: "1.000000"
|
|
PalAutoHpRegeneRateInSleep: "1.000000"
|
|
PalCaptureRate: "1.000000"
|
|
PalDamageRateAttack: "1.000000"
|
|
PalDamageRateDefense: "1.000000"
|
|
PalEggDefaultHatchingTime: "3.000000"
|
|
PalSpawnNumRate: "1.000000"
|
|
PalStaminaDecreaceRate: "1.000000"
|
|
PalStomachDecreaceRate: "1.000000"
|
|
PlayerAutoHPRegeneRate: "1.000000"
|
|
PlayerAutoHpRegeneRateInSleep: "1.000000"
|
|
PlayerDamageRateAttack: "1.000000"
|
|
PlayerDamageRateDefense: "1.000000"
|
|
PlayerStaminaDecreaceRate: "1.000000"
|
|
PlayerStomachDecreaceRate: "1.000000"
|
|
PublicIP: ""
|
|
PublicPort: '{PUBLIC_PORT_8211}'
|
|
RCONEnabled: true
|
|
RCONPort: 25575
|
|
RESTAPIEnabled: true
|
|
RESTAPIPort: 8212
|
|
Region: ""
|
|
ServerDescription: Powered by GBR Hosting
|
|
ServerName: GBRHosting - {SERVER_NAME}
|
|
ServerPassword: ""
|
|
ServerPlayerMaxNum: 32
|
|
SupplyDropSpan: 180
|
|
WorkSpeedRate: "1.000000"
|
|
bActiveUNKO: false
|
|
bAllowGlobalPalboxExport: true
|
|
bAllowGlobalPalboxImport: true
|
|
bAutoResetGuildNoOnlinePlayers: false
|
|
bCanPickupOtherGuildDeathPenaltyDrop: false
|
|
bEnableAimAssistKeyboard: false
|
|
bEnableAimAssistPad: true
|
|
bEnableDefenseOtherGuildPlayer: false
|
|
bEnableFastTravel: true
|
|
bEnableFriendlyFire: false
|
|
bEnableInvaderEnemy: true
|
|
bEnableNonLoginPenalty: false
|
|
bEnablePlayerToPlayerDamage: false
|
|
bExistPlayerAfterLogout: false
|
|
bIsMultiplay: true
|
|
bIsPvP: false
|
|
bIsStartLocationSelectByMap: true
|
|
bIsUseBackupSaveData: true
|
|
bShowPlayerList: true
|
|
bUseAuth: true
|
|
configSchema:
|
|
properties:
|
|
AdminPassword:
|
|
default: ""
|
|
description: Password for in-game admin (/AdminPassword) and for GBR actions (kick, ban, save, metrics via the REST API). Leave blank and GBR generates an easy one for your server.
|
|
showOnDeploy: true
|
|
title: Admin Password
|
|
type: string
|
|
x-savedValue:
|
|
key: GAME_ADMIN_PASSWORD
|
|
label: Game admin password
|
|
secret: true
|
|
x-generate:
|
|
type: password
|
|
replace:
|
|
- Admin6!
|
|
AllowConnectPlatform:
|
|
default: Xbox,Steam
|
|
description: Platforms permitted to connect to this server.
|
|
enum:
|
|
- Steam
|
|
- Xbox
|
|
- None
|
|
- Xbox,Steam
|
|
title: Allowed Platforms
|
|
type: string
|
|
AutoResetGuildTimeNoOnlinePlayers:
|
|
default: "2160.000000"
|
|
description: Hours of inactivity before an empty guild is deleted (2160.0 = 90 days).
|
|
title: Guild Inactivity Disband Hours
|
|
type: string
|
|
BaseCampMaxNum:
|
|
default: 128
|
|
description: Total base camps permitted across the entire server.
|
|
title: Max Base Camps Worldwide
|
|
type: integer
|
|
BaseCampMaxNumInGuild:
|
|
default: 10
|
|
description: Maximum base camps a single guild is allowed to construct.
|
|
title: Max Bases Per Guild
|
|
type: integer
|
|
BaseCampWorkerMaxNum:
|
|
default: 30
|
|
description: Maximum number of active Pals assigned to work in each base camp.
|
|
title: Max Working Pals Per Base
|
|
type: integer
|
|
BuildObjectDamageRate:
|
|
default: "1.000000"
|
|
description: Multiplier for damage taken by built structures.
|
|
title: Structure Damage Multiplier
|
|
type: string
|
|
BuildObjectDeteriorationDamageRate:
|
|
default: "1.000000"
|
|
description: Decay damage applied to structures outside base boundaries (0.0 to disable decay).
|
|
title: Structure Decay Rate
|
|
type: string
|
|
CollectionDropRate:
|
|
default: "1.000000"
|
|
description: Multiplier for materials gathered from trees, rocks, and ore nodes.
|
|
title: Resource Gathering Yield
|
|
type: string
|
|
CollectionObjectHpRate:
|
|
default: "1.000000"
|
|
description: Health multiplier of gatherable trees and rocks.
|
|
title: Resource Node Durability
|
|
type: string
|
|
CollectionObjectRespawnSpeedRate:
|
|
default: "1.000000"
|
|
description: Speed at which mined trees and ore deposits reappear.
|
|
title: Resource Respawn Speed
|
|
type: string
|
|
CrossplayPlatforms:
|
|
default: Xbox,Steam
|
|
description: Platforms enabled for crossplay connectivity.
|
|
enum:
|
|
- Steam
|
|
- Xbox
|
|
- None
|
|
- Xbox,Steam
|
|
showOnDeploy: true
|
|
title: Crossplay Platforms
|
|
type: string
|
|
DayTimeSpeedRate:
|
|
default: "1.000000"
|
|
description: Multiplier for daylight progression speed.
|
|
title: Daytime Speed Multiplier
|
|
type: string
|
|
DeathPenalty:
|
|
default: All
|
|
description: 'Items dropped upon death: None, Item (materials only), ItemAndEquipment, or All.'
|
|
enum:
|
|
- None
|
|
- Item
|
|
- ItemAndEquipment
|
|
- All
|
|
title: Death Penalty
|
|
type: string
|
|
Difficulty:
|
|
default: None
|
|
description: Base difficulty preset (None recommended when using custom multipliers).
|
|
enum:
|
|
- None
|
|
- Easy
|
|
- Normal
|
|
- Hard
|
|
title: Difficulty Preset
|
|
type: string
|
|
DropItemAliveMaxHours:
|
|
default: "1.000000"
|
|
description: Hours before dropped items on the ground disappear.
|
|
title: Dropped Item Despawn Time (Hours)
|
|
type: string
|
|
EnemyDropItemRate:
|
|
default: "1.000000"
|
|
description: Quantity multiplier for items dropped by defeated Pals and bosses.
|
|
title: Enemy Item Drop Rate
|
|
type: string
|
|
ExpRate:
|
|
default: "1.000000"
|
|
description: Multiplier for player and Pal XP gained from all sources.
|
|
title: Experience Multiplier
|
|
type: string
|
|
GuildPlayerMaxNum:
|
|
default: 20
|
|
description: Maximum player members per guild.
|
|
title: Max Players Per Guild
|
|
type: integer
|
|
NightTimeSpeedRate:
|
|
default: "1.000000"
|
|
description: Multiplier for nighttime progression speed.
|
|
title: Nighttime Speed Multiplier
|
|
type: string
|
|
PalCaptureRate:
|
|
default: "1.000000"
|
|
description: Multiplier for successful Pal capture chances with Pal Spheres.
|
|
title: Pal Capture Rate Multiplier
|
|
type: string
|
|
PalDamageRateAttack:
|
|
default: "1.000000"
|
|
description: Multiplier for damage dealt by Pals.
|
|
title: Pal Attack Multiplier
|
|
type: string
|
|
PalDamageRateDefense:
|
|
default: "1.000000"
|
|
description: Multiplier for damage taken by Pals.
|
|
title: Pal Defense Multiplier
|
|
type: string
|
|
PalEggDefaultHatchingTime:
|
|
default: "3.000000"
|
|
description: Time in hours for huge eggs to incubate (e.g. 72.0 default, 1.0 to 3.0 for fast hatching).
|
|
title: Egg Hatching Time (Hours)
|
|
type: string
|
|
PalSpawnNumRate:
|
|
default: "1.000000"
|
|
description: Multiplier for the number of wild Pals that spawn in the world.
|
|
title: Pal Spawn Density
|
|
type: string
|
|
PalStaminaDecreaceRate:
|
|
default: "1.000000"
|
|
description: Rate at which Pal stamina drains while working or riding.
|
|
title: Pal Stamina Drain
|
|
type: string
|
|
PalStomachDecreaceRate:
|
|
default: "1.000000"
|
|
description: Rate at which Pal hunger drains.
|
|
title: Pal Hunger Rate
|
|
type: string
|
|
PlayerDamageRateAttack:
|
|
default: "1.000000"
|
|
description: Multiplier for damage dealt by players.
|
|
title: Player Attack Multiplier
|
|
type: string
|
|
PlayerDamageRateDefense:
|
|
default: "1.000000"
|
|
description: Multiplier for damage taken by players (lower = tankier).
|
|
title: Player Defense Multiplier
|
|
type: string
|
|
PlayerStaminaDecreaceRate:
|
|
default: "1.000000"
|
|
description: Rate at which player stamina depletes (lower = more stamina).
|
|
title: Player Stamina Drain
|
|
type: string
|
|
PlayerStomachDecreaceRate:
|
|
default: "1.000000"
|
|
description: Rate at which player hunger depletes (lower = less hungry).
|
|
title: Player Hunger Rate
|
|
type: string
|
|
RCONEnabled:
|
|
default: true
|
|
description: Enables Remote Console administration port.
|
|
title: RCON Enabled
|
|
type: boolean
|
|
RCONPort:
|
|
default: 25575
|
|
description: Port used for RCON connections.
|
|
title: RCON Port
|
|
type: integer
|
|
RESTAPIEnabled:
|
|
default: true
|
|
description: Enables Palworld's built-in HTTP REST API for dashboards and metrics.
|
|
title: REST API Enabled
|
|
type: boolean
|
|
RESTAPIPort:
|
|
default: 8212
|
|
description: Port used for HTTP REST API access.
|
|
title: REST API Port
|
|
type: integer
|
|
ServerDescription:
|
|
default: Powered by GBR Hosting
|
|
description: Description displayed to players when viewing server details.
|
|
title: Server Description
|
|
type: string
|
|
ServerName:
|
|
default: GBRHosting - {SERVER_NAME}
|
|
description: Name shown in the in-game server browser. Defaults to "GBRHosting - <your server name>".
|
|
showOnDeploy: true
|
|
title: Server Name
|
|
type: string
|
|
ServerPassword:
|
|
default: ""
|
|
description: Password required for players to connect.
|
|
showOnDeploy: true
|
|
title: Server Password
|
|
type: string
|
|
x-savedValue:
|
|
key: GAME_JOIN_PASSWORD
|
|
label: Game join password
|
|
secret: true
|
|
ServerPlayerMaxNum:
|
|
default: 32
|
|
description: Maximum concurrent player connections.
|
|
title: Max Players
|
|
type: integer
|
|
SupplyDropSpan:
|
|
default: 180
|
|
description: Interval in minutes between meteorite and supply drop events (default 180).
|
|
title: Supply Drop Frequency (Minutes)
|
|
type: integer
|
|
WorkSpeedRate:
|
|
default: "1.000000"
|
|
description: Speed at which Pals craft, build, and farm inside bases.
|
|
title: Base Work Speed Multiplier
|
|
type: string
|
|
bAllowGlobalPalboxExport:
|
|
default: true
|
|
description: Allows players to export Pals to other worlds.
|
|
title: Allow Palbox Export
|
|
type: boolean
|
|
bAllowGlobalPalboxImport:
|
|
default: true
|
|
description: Allows players to import Pals from other worlds.
|
|
title: Allow Palbox Import
|
|
type: boolean
|
|
bAutoResetGuildNoOnlinePlayers:
|
|
default: false
|
|
description: Disbands guilds when all members remain offline past timeout.
|
|
title: Auto-Disband Inactive Guilds
|
|
type: boolean
|
|
bCanPickupOtherGuildDeathPenaltyDrop:
|
|
default: false
|
|
description: Allows players from other guilds to pick up items dropped on death.
|
|
title: Loot Other Guild Death Drops
|
|
type: boolean
|
|
bEnableFastTravel:
|
|
default: true
|
|
description: Allows fast traveling between unlocked Great Eagle statues.
|
|
title: Enable Fast Travel
|
|
type: boolean
|
|
bEnableFriendlyFire:
|
|
default: false
|
|
description: Allows players in the same guild to damage each other.
|
|
title: Enable Friendly Fire
|
|
type: boolean
|
|
bEnableInvaderEnemy:
|
|
default: true
|
|
description: Enables enemy NPCs and wild Pal raids attacking player bases.
|
|
title: Enable Raids
|
|
type: boolean
|
|
bIsPvP:
|
|
default: false
|
|
description: Enables combat and damage between opposing players.
|
|
title: Enable PvP
|
|
type: boolean
|
|
bIsStartLocationSelectByMap:
|
|
default: true
|
|
description: Allows players to choose their respawn location from the map.
|
|
title: Select Respawn Location By Map
|
|
type: boolean
|
|
bShowPlayerList:
|
|
default: true
|
|
description: Displays connected players in the server player list.
|
|
title: Show Player List
|
|
type: boolean
|
|
bUseAuth:
|
|
default: true
|
|
description: Enforces valid Steam account authentication upon connection.
|
|
title: Require Steam Authentication
|
|
type: boolean
|
|
type: object
|
|
configFilePath: Pal/Saved/Config/LinuxServer/PalWorldSettings.ini
|
|
configFileFormat: STANDARD
|
|
configFormatOptions:
|
|
assignment: =
|
|
falseValue: "False"
|
|
footer: )
|
|
header: |-
|
|
[/Script/Pal.PalGameWorldSettings]
|
|
OptionSettings=(
|
|
quoteStrings: true
|
|
separator: ','
|
|
trueValue: "True"
|
|
unquotedKeys:
|
|
- Difficulty
|
|
- RandomizerType
|
|
- DeathPenalty
|
|
- CrossplayPlatforms
|
|
- AllowConnectPlatform
|
|
- LogFormatType
|
|
- DenyTechnologyList
|
|
- DayTimeSpeedRate
|
|
- NightTimeSpeedRate
|
|
- ExpRate
|
|
- PalCaptureRate
|
|
- PalSpawnNumRate
|
|
- PalDamageRateAttack
|
|
- PalDamageRateDefense
|
|
- PlayerDamageRateAttack
|
|
- PlayerDamageRateDefense
|
|
- PlayerStomachDecreaceRate
|
|
- PlayerStaminaDecreaceRate
|
|
- PlayerAutoHPRegeneRate
|
|
- PlayerAutoHpRegeneRateInSleep
|
|
- PalStomachDecreaceRate
|
|
- PalStaminaDecreaceRate
|
|
- PalAutoHPRegeneRate
|
|
- PalAutoHpRegeneRateInSleep
|
|
- BuildObjectHpRate
|
|
- BuildObjectDamageRate
|
|
- BuildObjectDeteriorationDamageRate
|
|
- CollectionDropRate
|
|
- CollectionObjectHpRate
|
|
- CollectionObjectRespawnSpeedRate
|
|
- EnemyDropItemRate
|
|
- DropItemAliveMaxHours
|
|
- AutoResetGuildTimeNoOnlinePlayers
|
|
- PalEggDefaultHatchingTime
|
|
- WorkSpeedRate
|
|
- AutoSaveSpan
|
|
- ItemWeightRate
|
|
- ServerReplicatePawnCullDistance
|
|
- EquipmentDurabilityDamageRate
|
|
- ItemContainerForceMarkDirtyInterval
|
|
- PlayerDataPalStorageUpdateCheckTickInterval
|
|
- ItemCorruptionMultiplier
|
|
- MonsterFarmActionSpeedRate
|
|
- AutoTransferMasterCheckIntervalSeconds
|
|
- BlockRespawnTime
|
|
- RespawnPenaltyDurationThreshold
|
|
- RespawnPenaltyTimeScale
|
|
- VoiceChatMaxVolumeDistance
|
|
- VoiceChatZeroVolumeDistance
|
|
- PublicPort
|
|
uppercaseKeys: false
|
|
agnosticCommandConfig:
|
|
actions:
|
|
Ban:
|
|
body:
|
|
message: '{reason}'
|
|
userid: '{target}'
|
|
endpoint: /v1/api/ban
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_POST
|
|
user: admin
|
|
Broadcast:
|
|
body:
|
|
message: '{message}'
|
|
endpoint: /v1/api/announce
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_POST
|
|
user: admin
|
|
Kick:
|
|
body:
|
|
message: '{reason}'
|
|
userid: '{target}'
|
|
endpoint: /v1/api/kick
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_POST
|
|
user: admin
|
|
Save:
|
|
body: {}
|
|
endpoint: /v1/api/save
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_POST
|
|
user: admin
|
|
Shutdown:
|
|
body:
|
|
message: '{message}'
|
|
waittime: 60
|
|
endpoint: /v1/api/shutdown
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_POST
|
|
user: admin
|
|
chatRegex: \[CHAT\] <(.*?)> (.*)
|
|
commandMap:
|
|
Ban: BanPlayer {target}
|
|
Broadcast: Broadcast {message}
|
|
Kick: KickPlayer {target}
|
|
Save: Save
|
|
Shutdown: DoExit
|
|
metricsConfig:
|
|
endpoint: /v1/api/metrics
|
|
fields:
|
|
- decimals: 1
|
|
key: serverfps
|
|
label: Server Tickrate
|
|
suffix: ' FPS'
|
|
- decimals: 1
|
|
key: serverframetime
|
|
label: Frame Time
|
|
suffix: ' ms'
|
|
- key: currentplayernum
|
|
label: Active Players
|
|
- key: maxplayernum
|
|
label: Max Capacity
|
|
- key: days
|
|
label: World Day
|
|
- key: basecampnum
|
|
label: Base Camps
|
|
- format: duration
|
|
key: uptime
|
|
label: Uptime
|
|
passwordKey: AdminPassword
|
|
portKey: RESTAPIPort
|
|
type: REST_API
|
|
user: admin
|
|
playerConfig:
|
|
actions:
|
|
- destructive: false
|
|
name: Kick
|
|
title: Kick Player
|
|
- destructive: true
|
|
name: Ban
|
|
title: Ban Player
|
|
fields:
|
|
- key: level
|
|
prefix: 'Lvl '
|
|
- decimals: 0
|
|
key: ping
|
|
suffix: ms
|
|
- decimals: 0
|
|
key: location_x
|
|
label: X
|
|
- decimals: 0
|
|
key: location_y
|
|
label: "Y"
|
|
queryType: REST_API
|
|
restEndpoint: /v1/api/players
|
|
restPasswordKey: AdminPassword
|
|
restPortKey: RESTAPIPort
|
|
restUser: admin
|
|
backupPaths:
|
|
- Pal/Saved/SaveGames/*
|
|
- Pal/Saved/Config/LinuxServer/*
|
|
- Pal/Saved/Config/WindowsServer/*
|
|
maxBackupSizeMb: 5000
|
|
publicIpConfigKey: PublicIP
|
|
maxPlayersConfigKey: ServerPlayerMaxNum
|