Skip to content

Add More Configurable Options via ENV #1

Description

@imgabrieldev

Expand the server's configurability by introducing additional environment variables that can be set via the docker-compose.yml file. This will provide users with more flexibility to customize the server without modifying the configuration files manually.

Hardcoded Configurations

These are the current hardcoded configurations for the server. Each setting can be transitioned to be configurable through environment variables. Different team members can update individual options.

General Settings

  • Public: true
  • PVP: true
  • PauseEmpty: true
  • GlobalChat: true
  • Open: true
  • DisplayUserName: false

Combat & Death

  • NoFire: false
  • AnnounceDeath: true
  • PlayerBumpPlayer: true

Safehouse Settings

  • PlayerSafehouse: true
  • SafehouseAllowTrespass: false
  • SafehouseAllowFire: false
  • SafehouseAllowLoot: false
  • SafehouseAllowRespawn: true
  • SafehouseDaySurvivedToClaim: 0
  • SafeHouseRemovalTime: 72

Sleep & Loot

  • SleepAllowed: true
  • SleepNeeded: true
  • HoursForLootRespawn: 1000

Steam Settings

  • SteamScoreboard: admin

Proposed Configurable Options

Game Settings

  • PVP: Enable or disable player-vs-player combat (true/false).
  • GlobalChat: Enable or disable global chat (true/false).
  • SleepAllowed: Allow players to sleep (true/false).

Safehouse Settings

  • PlayerSafehouse: Allow players to claim safehouses (true/false).
  • SafehouseAllowTrespass: Enable trespassing in safehouses (true/false).
  • SafehouseDaySurvivedToClaim: Number of days required to claim a safehouse (integer).

Gameplay Settings

  • HoursForLootRespawn: Hours required for loot to respawn (integer).
  • SteamScoreboard: Set a Steam scoreboard admin name (string).

Benefits

  • Simplifies customization for users who deploy via Docker.
  • Reduces the need for manual edits in the servertest.ini file.
  • Provides greater control over game settings directly from the container environment.

Acceptance Criteria

  • All proposed options are supported as environment variables.
  • Documentation is updated with new configuration options.
  • The update-config.sh script dynamically updates servertest.ini with the new variables.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationenhancementNew feature or requestgood first issueGood for newcomershelp wantedExtra attention is needed

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions