ASAのサーバーがLinuxにネイティブ対応しておらず、proton経由で実行する必要があったので備忘録として。
ポート開放やsteamcmdの前提などは省いているので、他のサーバー構築記事と合わせて参考にしてください。
Protonのインストール
必要なディレクトリ作成
ダウンロード先のディレクトリを作成しておきます。ここではopt配下に配置します。
(こういうときどこのディレクトリ使うのが正解かよくわかってない)
sudo mkdir -p /opt/proton-ge
sudo mkdir -p /opt/proton-ge/compatdata
Proton-GEのダウンロード
Proton-GEをGitHubからダウンロードし、上で作成したフォルダに移動します。
URLは以下で、最新版をDLしとけばいいと思います。
https://github.com/GloriousEggroll/proton-ge-custom
cd /opt/proton-ge
cd /opt/proton-ge
sudo wget https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-9/GE-Proton9-9.tar.gz
sudo tar -xvf GE-Proton9-9.tar.gz
sudo mv GE-Proton9-9 proton
サーバーインストール
steamcmdでサーバーをインストールします。
他に紹介されている記事ではidが「376030」になっていることが多いですが、Ascendedの場合は以下の「2430930」です。
steamcmd +force_install_dir /opt/Steam/ark_servival_ascended/ +login anonymous +app_update 2430930 +quit
サーバー実行スクリプト作成
インストール先のディレクトリに以下のスクリプトを作成します。
STEAM_COMPAT_CLIENT_INSTALL_PATHは、名称の通りsteamをインストールしたディレクトリを指定します。
基本user化の.steamになると思います。
実行コマンドはprotonでWindows用のexeを指定しています。
#! /bin/bash
STEAM_COMPAT_CLIENT_INSTALL_PATH="/home/<user>/.steam" \
STEAM_COMPAT_DATA_PATH="/opt/proton-ge/compatdata" \
/opt/proton-ge/proton/proton run ./ShooterGame/Binaries/Win64/ArkAscendedServer.exe TheIsland_WP?listen?SessionName=<サーバー名>?ServerPassword=<パスワード>?ServerAdminPassword=<Adminパスワード>?Port=7777?QueryPort=27015 -server -log