Skip to content

GameUserSettings.ini does not persist custom ServerSettings across container restart #47

Description

@Knufle

Summary

When using this image with mounted /ark/config, custom ServerSettings in GameUserSettings.ini are lost after container restart, while Game.ini settings persist.

This makes behavior inconsistent with expected file-based config management in /ark/config.

Environment

  • Image: drpsychick/arkserver latest
  • Config volume mounted at /ark
  • Files present in /ark/config:
    • Game.ini
    • GameUserSettings.ini
    • arkmanager.cfg

Settings I am trying to use

Game.ini

  • bUseSingleplayerSettings=True
  • PerLevelStatsMultiplier_Player[0]=1.5
  • PerLevelStatsMultiplier_Player[1]=2.0
  • PerLevelStatsMultiplier_Player[3]=2.0
  • PerLevelStatsMultiplier_Player[4]=1.5
  • PerLevelStatsMultiplier_Player[5]=1.5
  • PerLevelStatsMultiplier_Player[7]=2.5
  • PerLevelStatsMultiplier_Player[8]=1.4
  • PerLevelStatsMultiplier_Player[9]=1.4
  • PerLevelStatsMultiplier_Player[10]=2.25
  • PerLevelStatsMultiplier_Player[11]=5.0
  • PerLevelStatsMultiplier_DinoTamed[0]=1.6
  • PerLevelStatsMultiplier_DinoTamed[1]=1.5
  • PerLevelStatsMultiplier_DinoTamed[7]=2.25
  • PerLevelStatsMultiplier_DinoTamed[8]=1.5
  • PerLevelStatsMultiplier_DinoWild[1]=1.6
  • PerLevelStatsMultiplier_DinoWild[7]=1.5

GameUserSettings.ini

  • DifficultyOffset=1.0
  • OverrideOfficialDifficulty=5.0
  • XPMultiplier=2.5
  • TamingSpeedMultiplier=3.5
  • DinoCharacterFoodDrainMultiplier=1.7
  • HarvestAmountMultiplier=2.25
  • SupplyCrateLootQualityMultiplier=1.3
  • CropGrowthSpeedMultiplier=100.0
  • DayCycleSpeedScale=0.7
  • ResourcesRespawnPeriodMultiplier=0.5
  • ResourceNoReplenishRadiusStructures=0.3
  • MatingIntervalMultiplier=0.06
  • EggHatchSpeedMultiplier=15.0
  • BabyMatureSpeedMultiplier=12.5
  • BabyCuddleIntervalMultiplier=0.1
  • BabyCuddleGracePeriodMultiplier=0.4

Plus existing long server/client sections already generated in the file.

Reproduction

  1. Put the above values into /ark/config/Game.ini and /ark/config/GameUserSettings.ini.
  2. Start server, verify values exist.
  3. Restart container.
  4. Check live files in ShooterGame/Saved/Config/LinuxServer.

Actual result

  • Game.ini values are present after restart.
  • The GameUserSettings ServerSettings values above are missing after restart.

Evidence

  • No arkmanager companion override files exist:

    • ls -la /ark/config/arkmanager.Game*.ini
    • result: no such file or directory
  • Live Game.ini is symlinked to /ark/config/Game.ini:

    • /ark/server/ShooterGame/Saved/Config/LinuxServer/Game.ini -> /ark/config/Game.ini
  • Live GameUserSettings.ini is a regular file, not symlinked:

    • /ark/server/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini is a normal rw file
  • After restart, grep in live GameUserSettings.ini returns nothing for:

    • DifficultyOffset
    • OverrideOfficialDifficulty
    • XPMultiplier
    • TamingSpeedMultiplier
    • DinoCharacterFoodDrainMultiplier
    • HarvestAmountMultiplier
    • SupplyCrateLootQualityMultiplier
    • CropGrowthSpeedMultiplier
    • DayCycleSpeedScale
    • ResourcesRespawnPeriodMultiplier
    • ResourceNoReplenishRadiusStructures
    • MatingIntervalMultiplier
    • EggHatchSpeedMultiplier
    • BabyMatureSpeedMultiplier
    • BabyCuddleIntervalMultiplier
    • BabyCuddleGracePeriodMultiplier
  • After restart, grep in live Game.ini still returns the expected values listed above.

Expected result

If config files are provided under /ark/config, both files should be applied consistently and persist across restart, or documentation should clearly describe why GameUserSettings.ini is rewritten and how to make custom ServerSettings persistent.

Additionally, since the entrypoint explicitly attempts to create a symlink for GameUserSettings.ini, the live file should remain linked/consistent with /ark/config/GameUserSettings.ini across restarts.

  • Relevant line in this repository:
    • [ -f /ark/config/GameUserSettings.ini ] && ln -sf /ark/config/GameUserSettings.ini $ARKSERVER/ShooterGame/Saved/Config/LinuxServer/GameUserSettings.ini

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions