Skip to content

Releases: Zerschranzer/Linux-ASA-Server-Manager

v2.0

08 Jun 16:07
036d4b9

Choose a tag to compare

Release Update:

  • Added a Docker-based version of the script (ark_docker_manager.sh) for containerized management of ARK server instances. Dependencies are now externalized via Docker containers, with server data stored in mounted volumes to enable seamless switching between scripts.
  • Updated both scripts to ensure compatibility with ARK's latest update utilizing Unreal Engine 5.5. GE-Proton has been upgraded to the latest version for optimal performance.
  • Completely revised README with improved structure, clearer instructions, and added images for better usability.
  • Fixed a bug in the Docker manager (ark_docker_manager.sh) causing unexpected behavior.
  • Corrected several minor issues that previously led to script crashes or unexpected errors.

The usage of both scripts remains identical: commands, instance creation, backups, and restarts are interchangeable. For simplicity, the README primarily addresses ark_instance_manager.sh. Docker users should simply substitute ark_docker_manager.sh following the same instructions.

Full Changelog: v1.3...v2.0

v1.3

31 Dec 00:58
e624cd5

Choose a tag to compare

This release focuses on streamlining the configuration process for automated server restarts and introducing various quality-of-life enhancements for managing ARK server instances. Key changes include integrating Restart Manager configuration into the main ARK Server Manager menu, refining instance management, and improving reliability and flexibility.


Key Changes

1. Integrated Restart Manager Configuration

  • New "Configure Restart Manager" menu option in the main script.
    • Users can now configure automated restarts from the interactive menu, eliminating the need for manual edits.
    • Allows selection of server instances, setting announcement times/messages, and scheduling daily restarts.
    • When scheduling restarts, the script removes any existing cron lines referencing ark_restart_manager.sh to prevent duplicates, then adds a fresh entry.

2. Refined Instance Management for Restart Configuration

  • Updated list_instances to dynamically gather available instances into an array.
    • This enables a clear, user-friendly instance selection process during Restart Manager setup.

3. Enhanced Base Server Update Logic

  • Update Skipping: Skips base server updates if any server instance is running, providing clear feedback to ensure safe operation.

4. Improved Shutdown Handling

  • Timeout Mechanism: If a server does not stop within 30 seconds of a graceful shutdown attempt, it is forcefully terminated.

5. Flexible RCON Configuration

  • Configurable RCON_SCRIPT: Replaced static references to rcon.py with a variable, allowing more adaptable server setups.

6. Dependency Management Improvements

  • Cron Detection: Enhanced check_dependencies() to detect and suggest Cron installation for major Linux distributions (Debian, Ubuntu, Fedora, openSUSE, and Arch).

Additional Fixes and Optimizations

  • Restart Manager Config Adjustment: Moved start_wait_time from the "Configuration Starts Here" section into the main script logic to prevent user misconfiguration while maintaining functionality.
  • Single Entry Fix: Resolved an issue where the restart manager incorrectly handled a single announcement_times entry.
  • Verbose RCON Debugging: Added comprehensive debug logs in rcon.py for better visibility into RCON operations.

v1.2

28 Dec 17:45
df38650

Choose a tag to compare

Enhancements:

Custom RCON Client (rcon.py)

  • Developed a new custom RCON client (rcon.py), specifically designed for the ARK Instance Manager to better align with its unique requirements. Key features include:
    • Silent Mode: Suppress unnecessary connection details with the --silent flag.
    • Interactive Console: Allows users to send multiple commands in an interactive session.
    • Robust Parsing: Processes multiple RCON packets per response, ignoring irrelevant KEEP_ALIVE messages for cleaner output.
    • Debug Mode: Includes a --debug flag for detailed output during troubleshooting.
    • Error Handling: Provides meaningful error messages for login failures, timeouts, and connection issues.

Server Shutdown Process

  • Updated stop_server() for improved shutdown handling:
    • Validates RCON response for the DoExit command to ensure graceful server termination.
    • Automatically falls back to forced shutdown if the graceful process fails or times out.

Improved Script Accessibility

  • Added a setup_symlink function to streamline script usage by creating user-friendly symlinks.

Executable Checks

  • Introduced check_executables() to verify that required files (rcon.py, ark_restart_manager.sh, ark_instance_manager.sh) are executable, reducing operational errors.

Bug Fixes:

Colored Output

  • Fixed color formatting issues to enhance script readability during execution.

Documentation:

README Overhaul

  • Completely rewrote the README to make it clearer and more organized:
    • Improved structure for easier navigation.
    • Simplified instructions to enhance user understanding and accessibility.
    • Added detailed examples and explanations to help users set up and manage their servers effectively.

v1.1

24 Dec 02:30
9cd8c41

Choose a tag to compare

Enhancements:

  • Port Handling for ASA:

    • Updated start_server() to use separate parameters for ports:
      • -Port=$GAME_PORT
      • -QueryPort=$QUERY_PORT
      • -RCONPort=$RCON_PORT
    • Replaced the outdated ?Port=... syntax with the new required format for ARK: Survival Ascended.
    • Adjusted load_instance_config() to correctly parse port settings using ^Port=, ^QueryPort=, and ^RCONPort= for more robust configuration management.
  • Improved Compatibility:

    • Updated PROTON_VERSION to GE-Proton9-21 for enhanced compatibility and performance.

Bug Fixes:

  • Max Players Setting:

    • Resolved an issue where the MaxPlayers setting was not applied correctly. The parameter ?MaxPlayers=... was replaced with -WinLiveMaxPlayers.
  • Server Name Conflict:

    • Added a trailing space to the SessionName parameter in start_server() to prevent conflicts when the instance name matches the server name.
  • Instance Management:

    • Updated start_all_instances():
      • Skips wait time if an instance fails to start due to conflicts.
      • Ensures the script returns to the main menu instead of terminating in edge cases.

v1.0

15 Dec 00:59
7e24990

Choose a tag to compare

Major update to ARK Server Manager: Backup, custom parameters, and usability improvements

New Features:

  • Added backup and restore functionality (backup_instance_world, restore_backup_to_instance) with CLI and menu integration.
  • Introduced CustomStartParameters for more flexible instance configurations.
  • Added port duplication checks to prevent conflicts before starting servers.

Usability Improvements:

  • Reorganized main menu for logical grouping and better navigation.

v0.9

30 Oct 17:43
6feb9e6

Choose a tag to compare

  • Added warning about unique SaveDir naming
  • Removed duplicate echo statements
  • Added SaveWorld before server shutdown to prevent data loss
  • Made minor corrections and improved consistency across the script.
  • Removed save_world function from ark_restart_manager.sh script, now handled by main script's stop_server function

v0.8

08 Oct 20:30
745947f

Choose a tag to compare

  • Remove erroneous ||true from load_instance_config command
  • Refine instance deletion prompt: Require 'CONFIRM' to proceed
  • Modified edit_instance_config function to create an empty Game.ini file if it doesn't exist
  • Implement editing of GameUserSettings.ini and Game.ini in instance menu
  • Added select_editor() function to centralize editor selection logic.
  • Introduced edit_configuration_menu() to allow users to choose which configuration file to edit within the instance management menu.
  • Made minor corrections and improved consistency across the script.
  • Added ASCII art to visually separate the configuration section in ark_restart_manager.sh

v0.7

05 Oct 17:34
0d10e4c

Choose a tag to compare

Enhance check_dependencies() function for improved compatibility and user experience

  • Add support for multiple package managers (apt-get, zypper, dnf, pacman)
  • Implement distribution-specific dependency checks
  • Expand the list of dependencies for each supported system
  • Introduce user interaction for handling missing dependencies
  • Add option to suppress dependency warnings in future runs
  • Provide detailed, distribution-specific installation instructions
  • Implement colorized output for improved readability
  • Add error handling for unsupported package managers
  • Introduce a configuration file for storing user preferences

Additional enhancements:

  • Introduce change_instance_name() function for renaming server instances
  • Improve user interaction with 'cancel' option in various functions
  • Enhance server management capabilities with stop/start functionality during instance renaming
  • Update instance configuration files automatically upon changes
  • Add support for managing save directories during instance renaming operations

v0.6

04 Oct 18:35
fecf980

Choose a tag to compare

Improve error handling and add server state checks for start, stop, and RCON operations

  • Added set -e to enforce better error handling throughout the script and Adjusted a few functions
  • Updated start_server, stop_server, and send_rcon_command functions to check if the instance is already running before proceeding.
  • Adjusted start_all_instances and stop_all_instances to incorporate the running state check, skipping instances that are already in the desired state.

v0.5

03 Oct 21:27
e9ce612

Choose a tag to compare

Delete asamanager.sh