ARK's image is built around user gameserver (uid 25000) and locks
/home/gameserver to it, so under the node's default 1000:1000 the
startup script got "Permission denied" and the server restart-looped,
on real nodes as well as in boot tests. Set containerUser 25000:25000
(needs node-agent and panel support for containerUser).
The startup command read ${RCON_PORT}, but the node passes the RCONPort
setting as RCONPORT, so custom RCON ports were ignored for 27020.
Boot-tested in the Linux agent image: up 30 minutes with no restart.
The test now waits 10 minutes, covering the first ~13 GB download.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
334 lines
12 KiB
YAML
334 lines
12 KiB
YAML
# yaml-language-server: $schema=../../schema/game.schema.json
|
|
id: ark-survival-ascended-crossplay
|
|
name: 'ARK: Survival Ascended (Crossplay Dedicated Server)'
|
|
defaultDockerImage: mschnitzer/asa-linux-server:latest
|
|
containerUser: "25000:25000"
|
|
defaultStartupCommand: bash -c 'mkdir -p /server /data/Steam /data/steamcmd /data/cluster-shared && rm -rf /home/gameserver/server-files /home/gameserver/Steam /home/gameserver/steamcmd /home/gameserver/cluster-shared && ln -sfn /server /home/gameserver/server-files && ln -sfn /data/Steam /home/gameserver/Steam && ln -sfn /data/steamcmd /home/gameserver/steamcmd && ln -sfn /data/cluster-shared /home/gameserver/cluster-shared && export ASA_START_PARAMS="${ASA_START_PARAMS:-${SERVER_MAP:-TheIsland_WP}?listen?Port=${PORT:-7777}?RCONPort=${RCONPORT:-27020}?RCONEnabled=True -WinLiveMaxPlayers=${MAX_PLAYERS:-70} -ServerPlatform=ALL}" && exec /usr/bin/start_server'
|
|
requiredMemoryMb: 16384
|
|
requiredDiskMb: 32768
|
|
defaultPorts:
|
|
- 7777/udp
|
|
installMethod: NONE
|
|
defaultConfig:
|
|
AdminLogging: false
|
|
AllowFlyerCarryPvE: false
|
|
AllowHitMarkers: true
|
|
AllowThirdPersonPlayer: true
|
|
AlwaysAllowStructurePickup: true
|
|
AutoSavePeriodMinutes: 15
|
|
DayCycleSpeedScale: 1
|
|
DayTimeSpeedScale: 1
|
|
DifficultyOffset: 1
|
|
DisableDinoDecayPvE: false
|
|
DisableStructureDecayPvE: false
|
|
EnablePVPGamma: false
|
|
MaxPlayers: 70
|
|
NightTimeSpeedScale: 1
|
|
OverrideOfficialDifficulty: 5
|
|
Port: 7777
|
|
PreventDiseases: false
|
|
PreventDownloadDinos: false
|
|
PreventDownloadItems: false
|
|
PreventDownloadSurvivors: false
|
|
PreventUploadDinos: false
|
|
PreventUploadItems: false
|
|
PreventUploadSurvivors: false
|
|
RCONEnabled: true
|
|
RCONPort: 27020
|
|
ServerAdminPassword: ""
|
|
ServerCrosshair: true
|
|
ServerHardcore: false
|
|
ServerMap: TheIsland_WP
|
|
ServerPVE: false
|
|
ServerPassword: ""
|
|
ShowFloatingDamageText: false
|
|
ShowMapPlayerLocation: true
|
|
bDisableStructurePlacementCollision: false
|
|
configSchema:
|
|
$schema: http://json-schema.org/draft-07/schema#
|
|
properties:
|
|
AdminLogging:
|
|
category: Security & Access
|
|
default: false
|
|
description: Broadcasts in-game administrative commands in chat to all connected players.
|
|
title: Admin Command Logging
|
|
type: boolean
|
|
AllowFlyerCarryPvE:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Allows airborne tamed creatures to pick up and carry wild or non-allied dinosaurs in PvE.
|
|
title: Allow Flyer Carry in PvE
|
|
type: boolean
|
|
AllowHitMarkers:
|
|
category: Gameplay & Rules
|
|
default: true
|
|
description: Shows floating visual indicators when striking an enemy or creature.
|
|
title: Allow Hit Markers
|
|
type: boolean
|
|
AllowThirdPersonPlayer:
|
|
category: Gameplay & Rules
|
|
default: true
|
|
description: Permits players to switch between first-person and third-person camera views.
|
|
title: Allow Third Person
|
|
type: boolean
|
|
AlwaysAllowStructurePickup:
|
|
category: Gameplay & Rules
|
|
default: true
|
|
description: Allows players to pick up placed structures indefinitely without demolition restrictions.
|
|
title: Always Allow Structure Pickup
|
|
type: boolean
|
|
AutoSavePeriodMinutes:
|
|
category: World & Environment
|
|
default: 15
|
|
description: Frequency in minutes at which the server automatically saves world and player state.
|
|
title: Auto-Save Interval (Minutes)
|
|
type: number
|
|
DayCycleSpeedScale:
|
|
category: World & Environment
|
|
default: 1
|
|
description: Global multiplier adjusting the overall speed of the 24-hour day/night cycle.
|
|
title: Day Cycle Speed Scale
|
|
type: number
|
|
DayTimeSpeedScale:
|
|
category: World & Environment
|
|
default: 1
|
|
description: Multiplier governing the passage speed of daytime hours relative to standard speed.
|
|
title: Day Time Speed Scale
|
|
type: number
|
|
DifficultyOffset:
|
|
category: Gameplay & Rules
|
|
default: 1
|
|
description: Base difficulty multiplier governing wild creature level distributions (0.0 to 1.0).
|
|
title: Difficulty Offset
|
|
type: number
|
|
DisableDinoDecayPvE:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Disables unclaiming timers and decay for inactive tamed creatures in PvE mode.
|
|
title: Disable Dino Decay in PvE
|
|
type: boolean
|
|
DisableStructureDecayPvE:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Disables the automatic structure decay and demolition timer on abandoned PvE bases.
|
|
title: Disable Structure Decay in PvE
|
|
type: boolean
|
|
EnablePVPGamma:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Allows players to use client gamma brightness adjustments during PvP sessions.
|
|
title: Enable PvP Gamma
|
|
type: boolean
|
|
MaxPlayers:
|
|
category: System & General
|
|
default: 70
|
|
description: Maximum number of simultaneous players allowed on the server.
|
|
title: Max Players
|
|
type: integer
|
|
NightTimeSpeedScale:
|
|
category: World & Environment
|
|
default: 1
|
|
description: Multiplier governing the passage speed of nighttime hours relative to standard speed.
|
|
title: Night Time Speed Scale
|
|
type: number
|
|
OverrideOfficialDifficulty:
|
|
category: Gameplay & Rules
|
|
default: 5
|
|
description: Sets the maximum wild dino level ceiling (e.g. 5.0 allows wild creatures up to level 150).
|
|
title: Override Official Difficulty
|
|
type: number
|
|
Port:
|
|
category: System & General
|
|
default: 7777
|
|
description: Primary UDP port used by game clients to connect to the dedicated server.
|
|
title: Game Port
|
|
type: integer
|
|
PreventDiseases:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Disables all permanent sicknesses and diseases from afflicting players.
|
|
title: Prevent Diseases
|
|
type: boolean
|
|
PreventDownloadDinos:
|
|
category: Security & Access
|
|
default: false
|
|
description: Blocks transferring tamed creatures into the server from external cluster servers.
|
|
title: Prevent Download Dinos
|
|
type: boolean
|
|
PreventDownloadItems:
|
|
category: Security & Access
|
|
default: false
|
|
description: Blocks downloading items or inventory into the server from external sources or cluster.
|
|
title: Prevent Download Items
|
|
type: boolean
|
|
PreventDownloadSurvivors:
|
|
category: Security & Access
|
|
default: false
|
|
description: Blocks transferring survivor characters into the server from other cluster servers.
|
|
title: Prevent Download Survivors
|
|
type: boolean
|
|
PreventUploadDinos:
|
|
category: Security & Access
|
|
default: false
|
|
description: Disallows survivors from uploading tamed creatures to cluster cloud storage.
|
|
title: Prevent Upload Dinos
|
|
type: boolean
|
|
PreventUploadItems:
|
|
category: Security & Access
|
|
default: false
|
|
description: Disallows survivors from uploading items and equipment to cluster cloud storage.
|
|
title: Prevent Upload Items
|
|
type: boolean
|
|
PreventUploadSurvivors:
|
|
category: Security & Access
|
|
default: false
|
|
description: Disallows survivors from uploading their character data to cluster cloud storage.
|
|
title: Prevent Upload Survivors
|
|
type: boolean
|
|
RCONEnabled:
|
|
category: Security & Access
|
|
default: true
|
|
description: Enables remote console (RCON) access for external server administration tools.
|
|
title: Enable RCON
|
|
type: boolean
|
|
RCONPort:
|
|
category: System & General
|
|
default: 27020
|
|
description: TCP port for remote console management and server administration.
|
|
title: RCON Port
|
|
type: integer
|
|
ServerAdminPassword:
|
|
category: Security & Access
|
|
default: ""
|
|
description: Password for admin commands in-game and for GBR actions over RCON (kick, ban, save, broadcast). 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:
|
|
- AdminPassword123
|
|
ServerCrosshair:
|
|
category: Gameplay & Rules
|
|
default: true
|
|
description: Enables an on-screen targeting crosshair for all players.
|
|
title: Enable Crosshair
|
|
type: boolean
|
|
ServerHardcore:
|
|
category: Security & Access
|
|
default: false
|
|
description: When enabled, player death permanently deletes the character and resets progression.
|
|
title: Hardcore Mode
|
|
type: boolean
|
|
ServerMap:
|
|
category: World & Environment
|
|
default: TheIsland_WP
|
|
description: Select the world map loaded by the dedicated server.
|
|
enum:
|
|
- TheIsland_WP
|
|
- ScorchedEarth_WP
|
|
- TheCenter_WP
|
|
- Aberration_WP
|
|
- Extinction_WP
|
|
showOnDeploy: true
|
|
title: Active World Map
|
|
type: string
|
|
ServerPVE:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Disables player-versus-player combat and structure damage, enabling cooperative PvE mode.
|
|
title: PvE Mode
|
|
type: boolean
|
|
ServerPassword:
|
|
category: Security & Access
|
|
default: ""
|
|
description: Password required for players to join the server. Leave blank to keep the server public.
|
|
showOnDeploy: true
|
|
title: Server Password
|
|
type: string
|
|
x-savedValue:
|
|
key: GAME_JOIN_PASSWORD
|
|
label: Game join password
|
|
secret: true
|
|
ShowFloatingDamageText:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Displays floating damage numbers overhead when inflicting damage on targets.
|
|
title: Show Floating Damage Text
|
|
type: boolean
|
|
ShowMapPlayerLocation:
|
|
category: Gameplay & Rules
|
|
default: true
|
|
description: Displays the player's current position pin on the in-game map.
|
|
title: Show Player On Map
|
|
type: boolean
|
|
bDisableStructurePlacementCollision:
|
|
category: Gameplay & Rules
|
|
default: false
|
|
description: Removes terrain and building clipping restrictions, allowing structures to clip into world geometry.
|
|
title: Disable Structure Placement Collision
|
|
type: boolean
|
|
required: []
|
|
type: object
|
|
configFilePath: ShooterGame/Saved/Config/WindowsServer/GameUserSettings.ini
|
|
configFileFormat: STANDARD
|
|
configFormatOptions:
|
|
assignment: =
|
|
falseValue: "False"
|
|
floatKeys: []
|
|
footer: null
|
|
header: '[ServerSettings]'
|
|
quoteStrings: false
|
|
separator: "\n"
|
|
trueValue: "True"
|
|
unquotedKeys: []
|
|
uppercaseKeys: false
|
|
agnosticCommandConfig:
|
|
actions:
|
|
Ban:
|
|
command: BanPlayer {target}
|
|
passwordKey: ServerAdminPassword
|
|
portKey: RCONPort
|
|
type: RCON
|
|
Broadcast:
|
|
command: Broadcast {message}
|
|
passwordKey: ServerAdminPassword
|
|
portKey: RCONPort
|
|
type: RCON
|
|
Kick:
|
|
command: KickPlayer {target}
|
|
passwordKey: ServerAdminPassword
|
|
portKey: RCONPort
|
|
type: RCON
|
|
Save:
|
|
command: SaveWorld
|
|
passwordKey: ServerAdminPassword
|
|
portKey: RCONPort
|
|
type: RCON
|
|
pingPort: null
|
|
pingPortKey: null
|
|
playerJoinRegex: (?:^.*?:\s+)?(.+?)\s+(?:has\s+)?joined this [Aa][Rr][Kk]!?
|
|
playerLeaveRegex: (?:^.*?:\s+)?(.+?)\s+(?:has\s+)?left this [Aa][Rr][Kk]!?
|
|
playersCommand: ListPlayers
|
|
playersFormat: REGEX
|
|
playersRegex: ^\d+\.\s+([^,]+)
|
|
queryPortKey: null
|
|
queryType: RCON
|
|
rconPasswordKey: ServerAdminPassword
|
|
rconPortKey: RCONPort
|
|
restEndpoint: null
|
|
restPasswordKey: null
|
|
restPortKey: null
|
|
restUser: null
|
|
logFilePath: ShooterGame/Saved/Logs/ShooterGame.log
|
|
backupPaths:
|
|
- ShooterGame/Saved
|
|
maxBackupSizeMb: 4096
|
|
maxPlayersConfigKey: MaxPlayers
|
|
mapConfigKey: ServerMap
|
|
aiCoverPrompt: A cinematic, photorealistic vista of a primeval tropical island built in Unreal Engine 5, featuring lush ancient rainforests, colossal waterfalls pouring into azure lagoons, and futuristic floating obelisks beaming energy into the sky. A massive Tyrannosaurus Rex roars on a cliffside overlooking prehistoric valleys while Pteranodons glide across a vivid sunset horizon.
|