VEIN(アーリーアクセス、Ramjet Studios)にはWindows/Linux対応の無料専用サーバー(SteamCMDアプリ2131400、匿名ログイン)があり、Game.iniと起動引数(-Port、-QueryPort)で設定します。ゲームの更新が速いため、パッチのたびにSteamCMD更新を再実行してください。
手順ごとのインストール
マシンを確認:Windows or Linux x64, RAM and CPU not officially specified。
SteamCMDをダウンロードし、サーバー用フォルダを作成します。
SteamCMDでサーバーをインストール:login anonymous, app_update 2131400 validate。
-logを付けて一度起動し、Vein/Saved/Config/...を生成してから停止します。
サーバーを一度起動して停止し、Game.ini (AdminSteamIDs, WhitelistedPlayers…)を編集します。
ファイアウォールとルーターでポート 7777/UDP, 27015/UDP を開放します。
localhost(127.0.0.1)で確認し、別のネットワークから外部接続も確認します。
自動起動(タスクスケジューラまたはsystemdサービス)を設定します。
Vein/Savedのバックアップと更新をスケジュールします。
必要条件
Windowsまたは64ビットLinux。参照した文書に開発元の最小要件はないため、4コア・RAM 8GB以上から始めて人数に応じて調整してください(推定)。SteamCMDは匿名ログインでアカウント不要。管理者はSteamID64で指定し、管理者パスワードはありません。
ローカル環境へのインストール(Windows)
SteamCMDでインストールし、既定のポートでサーバーを起動して、ゲームから127.0.0.1で接続します。
C:\steamcmd\steamcmd.exe +force_install_dir C:\vein-server +login anonymous +app_update 2131400 validate +quit
cd /d C:\vein-server
VeinServer.exe -log -Port=7777 -QueryPort=27015Linux VPS/専用サーバーへのインストール
Ubuntu/Debianでは専用ユーザーを作成し、SteamCMDの32ビット依存関係を入れてインストールし、Linuxバイナリを起動します(名前はフォルダで確認:VeinServer.shまたはVein/Binaries/Linux/VeinServer-Linux-Test)。Game.iniはVein/Saved/Config/LinuxServer/にあります。
sudo adduser --disabled-password --gecos "" steam
sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install -y lib32gcc-s1 curl ca-certificates
sudo -iu steam
mkdir -p ~/steamcmd ~/vein-server && cd ~/steamcmd
curl -sqL https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz | tar zxf -
./steamcmd.sh +force_install_dir ~/vein-server +login anonymous +app_update 2131400 validate +quit
cd ~/vein-server && ./VeinServer.sh -log -Port=7777 -QueryPort=27015開放するポート
- 7777/UDP:ゲームポート(-Port=)
- 27015/UDP:Steamクエリポート(-QueryPort=)。7778とする情報もあるため、お使いのビルドで確認
Linuxファイアウォール(ufw)
Ubuntu/Debianでは、締め出されないよう先にSSHを許可し、続いてゲームのポートを許可します。
sudo ufw allow OpenSSH
sudo ufw allow 7777/udp
sudo ufw allow 27015/udp
sudo ufw enable
sudo ufw statusWindowsファイアウォール(netsh)
管理者権限のPowerShell(または管理者のcmd)で実行します。
netsh advfirewall firewall add rule name="VEIN 7777/UDP" dir=in action=allow protocol=UDP localport=7777
netsh advfirewall firewall add rule name="VEIN 27015/UDP" dir=in action=allow protocol=UDP localport=27015プロバイダーのファイアウォールとポート転送(NAT)
サーバーをOVH・Hetzner・Scalewayなどに置く場合は、同じポートをネットワークファイアウォール(セキュリティグループ)でも開放します。自宅運用ではルーターからマシンの固定ローカルIPへポート転送(NAT)してください。確認は外部(モバイル回線や友人)から行います。自宅ネットワーク内のテストでは判断できません。
自動起動と監視
/etc/systemd/system/<name>.service を作成し、sudo systemctl daemon-reload && sudo systemctl enable --now <name> を実行します。ログは journalctl -u <name> -f。
[Unit]
Description=VEIN dedicated server
After=network-online.target
Wants=network-online.target
[Service]
User=steam
WorkingDirectory=/home/steam/vein-server
ExecStart=/home/steam/vein-server/VeinServer.sh -log -Port=7777 -QueryPort=27015
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.targetWindowsでの自動起動(タスクスケジューラ)
「スタートアップ時」に起動スクリプトを実行するタスクを作成し、最上位の特権と「ユーザーがログオンしているかどうかにかかわらず実行する」を設定します。
更新・バックアップ・再起動
サーバーを停止し、app_update 2131400 validateを再実行して再起動します。大きな更新の前にVein/Savedをバックアップしてください。 アーリーアクセスでは更新が頻繁です。パッチのたびに再実行しないとプレイヤーが接続できません。
# backup
tar czf ~/backup-$(date +%F).tar.gz -C ~/server Vein/Savedサーバーの登録と見つけ方
サーバーを公開したら、https://game-rank.com/jeux/vein(このツールの運営サイト)に登録すると、プレイヤーが見つけてフォロー・投票できます。
トラブルシューティング
- 外部から接続できないがlocalhostでは動く場合:OSのファイアウォール、プロバイダーのファイアウォール、NAT転送のいずれかが未設定か、プロトコル(UDP/TCP)が違います。1層ずつ確認してください。
- ゲーム更新後に接続できない場合:クライアントとサーバーのバージョンを一致させる必要があります。サーバーを更新して再起動してください。
- サーバーがすぐ終了する場合:コンソールから起動してエラーを確認し、空きRAM・ディスク・必要なソフトウェアを確認してください。
- Game.iniの設定が反映されない場合:フォルダ(LinuxServerかWindowsServer)、セクション名とキー名を確認して再起動してください。誤った名前は無視されます。
よくある質問
- サーバーのSteamアプリIDは?
- 2131400(専用サーバー、匿名ログイン)。ゲーム本体は1857950です。
- サーバーを更新するには?
- サーバーを停止してapp_update 2131400 validateを再実行します。クライアントとサーバーは同じバージョンが必要です。
- プレイヤーを管理者にするには?
- Game.iniのAdminSteamIDs(またはSuperAdminSteamIDs)にSteamID64を追加して再起動します。管理者パスワードはありません。
- サーバーを知ってもらうには?
- https://game-rank.com/jeux/vein(このツールの運営サイト)に登録すると、プレイヤーが見つけてフォロー・投票できます。
