Overview
Soulmask ゲームサーバを構築する
やっていることは 7d2d と Palworld の時とほぼ同じ
Valheim のように LinuxGSM を使うことができないタイトルだった際のフロー決定版
Flow
公式 Wiki の手順書に従い、自宅サーバの Ubuntu 22.04.4 上に構築していく
ゲームサーバの構築
Soulmask 用ユーザの作成
sudo useradd -m soulmask -s /bin/bash -G sudosudo passwd soulmask
作業ユーザの変更
sudo su - soulmask
SteamCMD をインストール
sudo add-apt-repository multiverse; sudo dpkg --add-architecture i386; sudo apt updatesudo apt install steamcmd
Soulmask ゲームサーバをインストール
steamcmd +force_install_dir /home/soulmask/soulmask_server +login anonymous +app_update 3017300 validate +quit
サーバを起動し、設定ファイルを作成
作成後、一旦停止する
cd soulmask_server./StartServer.sh
生成された設定ファイルを編集・追記
※ポートは 3 桁不可(3 桁にしたら 1024
に補正された)
[URL]Port=7777
[OnlineSubsystemSteam]GameServerQueryPort=27015
[Dedicated.Settings]SteamServerName=UNNAMED_SERVERMaxPlayers=20pvp=Falsebackup=900saving=600
使用するポートを開放
自宅なので別途ルータのポート開放も行う
sudo ufw allow 7777/udpsudo ufw allow 27015/udp
任意の引数を付与し、サーバを起動
詳細な設定については、公式 Wiki を参照
./StartServer.sh -PSW=xxxx
サービス化
/etc/systemd/system
以下にサービスファイルを作成
sudo nano /etc/systemd/system/soulmask-dedicated.service
[Unit]Description=Soulmask Dedicated ServerWants=network-online.targetAfter=syslog.target network.target nss-lookup.target network-online.target
[Service]WorkingDirectory=/home/soulmask/soulmask_serverExecStart=/home/soulmask/soulmask_server/StartServer.sh -PSW=xxxxLimitNOFILE=100000ExecReload=/bin/kill -s HUP $MAINPIDExecStop=/bin/kill -s INT $MAINPIDRestart=alwaysUser=soulmaskGroup=soulmaskTimeoutStartSec=300
[Install]WantedBy=multi-user.target
サービスの起動
sudo systemctl daemon-reload
sudo systemctl enable soulmask-dedicated.service
sudo systemctl start soulmask-dedicated.service
サービスの確認
sudo systemctl status soulmask-dedicated.service
sudo journalctl -u soulmask-dedicated
sudo journalctl -u soulmask-dedicated -f
(サービスの停止)
sudo systemctl stop soulmask-dedicated.service
Afterword
初回起動時に生成される Engine.ini
に追記する形で設定を編集してみたけど、
インストール時から存在する StartServer.sh
を複製・編集して制御する方が想定されている方法だった様子?
Wiki 斜め読みの弊害がここに