さくらのゲーミングVPS【第2回】VALHEIMにMODを導入してみる(ソロプレイ/マルチサーバー両対応)

ゲームにおける「MOD」という概念をご存知でしょうか?
日本ではマイナーですが海外では有志のファンがゲームに追加要素を付与する非公式拡張コンポーネントを作成・配布する文化があり、
「MOD」と呼称されています。
MODを導入していない状態を指す言葉として「バニラ」という用語が存在するくらい一般化しており、コミュニティサイトで配布されているMODを導入することでストレスフリーなプレイをサポートしたり、ゲームをより面白く遊ぶことができます。

そこで今回はゲーミングVPS第2回記事として前回紹介した「Valheim」におけるMOD導入について紹介いたします。
MODは英語圏文化に触れる必要がある点で中級者・上級者向けの遊び方ですが、初心者にも分かるよう分かり易く記述いたします。
今回はクライアントPCにはWindows10を、サーバーには前回作成したUbuntu 20.04 & LinuxGSMを前提として解説します。

なお、本稿では2021年8月の時点での情報を元に執筆しており将来のアップデートにより内容に相違が発生しうる点についてはご容赦下さい。

注意事項

1. Modの利用は自己責任
MODは非公式かつ無料で提供されているものであるが故に問題が発生してもサポートしてくれません。
トラブルが発生したときは自己解決が求められ、試行錯誤する覚悟を持って利用する必要があります。
本稿に書かれていることも含め自己責任で行って下さい。
 

2. 事前にバックアップは必ず取る
導入失敗してしまったケースは元より、うまく動いていたがゲームのアップデートによりMODが動かなくなってしまい支障がでることもあります。
いつでもバニラに戻せるよう、大切なゲームデータが失われて泣かないようバックアップを取ることが大切です。
 

3. MODは一つずつ導入する
複数のMODを導入した際にMOD同士が干渉してトラブルを起こすケースがよくあります。
特に依存関係が無いとされるMODを複数インストールする場合は一つずつ正常動作を確認をしながら導入していくのがコツです。
 

サンプルMOD「Epic Loot」の紹介

少なくない労力を払って導入するのですから、魅力的なMODを導入したいものです。
今回はゲーム内に美しい魔法の武器・防具を追加してくれるMOD「Epic Loot」を導入サンプルといたします。

【こんなことができます】
・チェストや敵からランダムでボーナス効果が付与された魔法の武器/防具を入手できるようになり収集する楽しみが生まれます。
・魔法の武器/防具にレアリティ(マジック/レア/エピック/レジェンダリー)が設定され、稀少なものほど強力になります。
・魔法の武器/防具はフィールド上に置かれた際にレアリティに応じた色の光柱が出現します。
・クラフトが拡張され魔法の武器/防具の作成が可能になります。
ボストロフィーや魔法の武器/防具を作業台で解体して魔法のクラフト素材にし、この素材を鍛冶場で消費して魔法の武器/防具を作成できます。
(この要素は最初のボスのトロフィーを解体することで開放されます。)
・商人から賞金首討伐クエストを受注できるようになります。

導入は大変ですがバニラとはまた違ったワクワクする体験ができますので頑張って導入作業を進めて行きましょう。
 

MOD構成図

「Epic Loot」の導入には複数のコンポーネントをインストールする必要があります。

Valheim用MODは基本的に前提MOD「BepInEx」を必要とし、更に「Epic Loot」はアイテムID管理MOD「Extended Item Data Framework」を別途必要とします。
また、MOD導入は「MODマネージャー」を利用することによりバージョン管理やON/OFF切替などが簡単になるため「MODマネージャー」の併用を推奨します。
つまり、ソロプレイの場合は「MODマネージャー」「BepInEx」「Extended Item Data Framework」「Epic Loot」の4つを順にインストールします。

一方でマルチプレイの場合だとプレイヤー側とサーバー側の両方に同種のMODを導入する必要があります。
お友達と一緒にMOD環境マルチプレイを遊ぶにはお友達にもMOD導入をしてもらう必要があるということです。

なお、「MODマネージャー」はサーバーには対応していないため手動でMODのインストールを行います。

 

MOD導入・ソロプレイ編

それではPC側で導入作業を進めていきます。
まずは以下のフォルダを別のディレクトリに丸ごとコピーして念のためゲームデータのバックアップを取っておきます。
「ユーザー名」の部分はPC環境により変わりますので読み替えて下さい。

C:\Users\ユーザー名\AppData\LocalLow\IronGate\Valheim

 

次にMOD入手ですが、MOD及びMODマネージャーはMODコミュニティサイトで配布されており今回は大手MODコミュニティの「NEXUSMODS」を利用します。
注意点としてMOD及びMODマネージャーのダウンロードには会員登録が必須です。

名前とメールアドレスだけで会員登録できる無料会員でもダウンロードすることができますので、さっと済ませてしまいます。
なお、無料会員の場合はクレジットカードの登録は必須ではありません。

NEXUSMODS
https://www.nexusmods.com/
 

まずは「NEXUSMODS」トップページ右上の「REGISTER」をクリックします。

 

メールアドレスを入力し、「私は人間です」にチェックを入れて「VERIFY EMAIL」をクリックします。

 

入力したメールアドレス宛に4桁のコードが届きますのでそのコードを入力し「VERIFY EMAIL」をクリックします。
コードは半角英数で入力する必要がありますので全角文字で入力しないよう注意して下さい。

 

ユーザーネーム、希望するパスワード、希望するパスワード(再)を入力しリンク先の約款を読んでからチェックを付けて「CREATE MY ACCOUNT」をクリックします。
パスワードは12文字以上、大文字小文字両方を含み、最低でも数字を1つ含まなければ登録できません。

 

プレミアムメンバーシップ(有料会員)のお願いとしてクレジットカード・PayPalの登録のページに遷移しますが、登録は任意であるためここは右上の「CLOSE」を押しても構いません。

以上で会員登録は完了です。
 

早速、NEXUSMODSにログインを済ませて次にMODマネージャー「Voltex」のダウンロード・インストールを行います。

Voltexのダウンロードページ
https://www.nexusmods.com/about/vortex/

「Download the latest version now」をクリックします。

 

「MANUAL DOWNLOAD」をクリックします。
2個表示されておりますが上は自動インストール版で下はカスタムインストール版です。どちらでも良いですがここではカスタムインストール版を選んでおきます。

 

ダウンロードページに遷移しますので無料会員でも使える「SLOW DOWNLOAD」をクリックします。
しばらくするとダウンロードが始まりますのでデスクトップ等の分かりやすい場所に保存して下さい。

 

ダウンロードしたMODマネージャー「Voltex」のインストーラーをクリックしてインストールを行います。

 

インストールが完了したら起動してVoltex側からもNEXUSMODSにログインを行います。「Log In or Register」をクリックします。

 

自動的にNEXUSMODSのページが開きますので「AUTHORISE」をクリックすることでログインが完了します。

 

次に英語表示のままでは扱いにくいのでVoltexの言語を日本語へと変更します。
「SETTING」をクリックし、リストから日本語を選択します。

 

無事に日本語化することができましたのでバツボタンを押して一旦Voltexを終了させます。

 

次にVoltexにValheimのインストール先を教える必要があるため、Steamの「ライブラリ」から下記の方法で「Valheimのインストール先」を確認します。

 

「Valheimのインストール先」を確認したらVoltexを起動して「ゲーム」、「Valheim」の順にクリックします。

 

前提MOD「BepInEx」をまだインストールしていないため、ゲームサポートがインストールされていませんと表示されます。
右下の「ダウンロード」をクリックすることで全自動で「BepInEx」をインストールしてくれます。

 

PC環境によってはVoltexがValheim.exeを見つけることができず「ゲームが見つかりませんでした」と表示されることがあります。
このような場合は「続行」をクリックして先ほど確認した「Valheimのインストール先」を指定して「Select Folder」をクリックして下さい。

以上で「MODマネージャー」と「BepInEx」のインストールが完了です。
 

次に「Extended Item Data Framework」を導入します。

Extended Item Data Frameworkダウンロードページ
https://www.nexusmods.com/valheim/mods/281?tab=files

MODマネージャーに管理させますので「MOD MANAGER DOWNLOAD」をクリックします。

 

前提として「BepInEx」が必要なことを忠告されますが既にインストール済みなので「DOWNLOAD」をクリックします。

 

ダウンロードページに遷移しますので無料会員でも使える「SLOW DOWNLOAD」をクリックします。

 

ブラウザがVoltex(MODマネージャー)を起動してよいか確認してくるので「Voltexを開く」をクリックします。

 

ダウンロードが完了したらVoltex上で未インストールから「有効」へ切り替えを行います。

 

有効になるとこのように表示されます。

 

最後に「Epic Loot」も全く同様の手順で導入していきます。

Epic Lootダウンロードページ
https://www.nexusmods.com/valheim/mods/387?tab=files

ダウンロードしたEpic Lootを「有効」に変更します。

 

こちらが「BepInEx」「Extended Item Data Framework」「Epic Loot」の3つを有効にして導入完了した時の表示です。

 

注意:PC環境によっては有効と表示されても追加操作をしないと動作しないことがあります。
「配置にはユーザー権限の昇格が必要です」「配置が必要です」と右上に表示された場合は「ユーザー権限の昇格」や「配置」をクリックしないとMODが有効になりませんので注意して下さい。

 

余談ですが権限の昇格要求は「VortexのMOD格納先」と「Valheim(Steam)のインストール先」が同一ドライブではない時に発生するため、設定変更により出ないようにすることができます。
VortexのデフォルトのMOD格納先はCドライブが保存先として設定されています。

C:\Users\ユーザー名\AppData\Roaming\Vortex\valheim\mods

Vortex側で「設定」、「MOD」の項目で「MODの展開フォルダー」を「Valheim(Steam)のインストール先」と同一ドライブ内の任意のフォルダーを指定し、「配置方法」を「ハードリンクで配置」に変更して「適用」を押すことで今後の権限昇格は不要となります。
「提案」ボタンを押すと良い感じのフォルダを自動で作ってくれるのでこの機能を利用するのも良いでしょう。
 

最後に「Epic Loot」の導入確認を行います。
まずはValheimを一度起動してすぐ終了し「Valheimのインストール先」内の「BepInEx」→「config」内に「randyknapp.mods.epicloot.cfg」が生成されていることを確認して下さい。

「randyknapp.mods.epicloot.cfg」が生成されていれば「Epic Loot」は動いていますので導入確認は完了です。
お疲れさまでした、以上でソロプレイ編でのMOD導入は完了です。
 

MOD導入・マルチサーバー編

クライアントPCは先ほど用意できましたのでサーバー側の導入作業を行います。

 

ここからシリアルコンソールを使いますが、コマンドをコピー&ペーストで同じように進められるよう解説していきます。
コマンドは複数行をある程度まとめて掲載しますがコピー&ペーストする場合は一行ずつペーストしてエンターを押すようにして下さい。

まずはコンソールでVPSを操作し、以下のコマンドでLinuxGSMを停止させてから念のためゲームデータのバックアップを取っておきます。

/home/vhserver/vhserver stop
cp -r /home/vhserver/.config/unity3d/IronGate/Valheim/ /home/vhserver/.config/unity3d/IronGate/Valheimbackup/

 

ゲームサーバーの停止とバックアップの取得を済ませたら「BepInEx」からインストールを行います。

BepInExのダウンロード
https://valheim.thunderstore.io/package/denikson/BepInExPack_Valheim/

ここからはPC上で下準備を行います。
PCから上記URLへアクセスし、「Manual Download」をクリックしてzip圧縮された「BepInEx」をダウンロードします。

 

PC上でzipファイルを解凍し、BepInExPack_Valheimフォルダ内のstart_server_bepinex.shをメモ帳で開いて以下の通りに編集します。

最終行を削除

exec ./valheim_server.x86_64 -name "My server" -port 2456 -world "Dedicated" -password "secret"

最終行に追記

/home/vhserver/serverfiles/valheim_server.x86_64 "$@"
export LD_LIBRARY_PATH=$templdpath

編集後はこのようになりますので、「ファイル」、「上書き保存」を選んで保存します。

 

BepInExPack_ValheimフォルダをC:\にコピーし、フォルダ名を「BepInExPack_Valheim」から「serverfiles」へとリネームします。

 

次にPowerShellを使ってPCからVPSへアップロードを行います。
スタートメニューから「ファイル名を指定して実行」を選び「PowerShell」と入力して「OK」をクリックます。


PowerShellが起動したら以下のコマンドを入力してエンターを押し、ディレクトリトップへ移動します。

cd /


 

次にscpコマンドでserverfilesフォルダをVPSへアップロードします。[IPアドレス]の部分はVPSのIPアドレスに置き換えて下さい。

scp -r serverfiles vhserver@[VPSのIPアドレス]:/home/vhserver/

Are you sure you want to continue connecting表示にはyesと入力し、その後VPSのvhserverアカウントパスワード②を入力します。
アップロードが完了したら一旦PowerShellを終了させて下さい。
ここからコンソールを使ったVPS上での作業に戻ります。
まずは以下のコマンドでアップロードしたファイルに実行権限を付与します。

chmod u+x /home/vhserver/serverfiles/start_server_bepinex.sh

 

次にLinuxGSM側からBepInExを起動できるよう設定します。

nano /home/vhserver/lgsm/config-lgsm/vhserver/vhserver.cfg

「vhserver.cfg」を編集して1行目に以下の一文を追記します。
書き足したらCtrl+O、エンターで保存し、Ctrl+Xでnanoを終了させます。

executable="/home/vhserver/serverfiles/start_server_bepinex.sh"


 

最後に連動に必要なコンポーネントを以下のコマンドでインストールします。
sudo権限に必要なパスワードを要求された場合はここもVPSのvhserverアカウントパスワード②を入力します。

sudo apt install -y libc6-dev

以上でサーバーへの「BepInEx」のインストールは完了です。
 

次に「Extended Item Data Framework」をサーバーに導入していきます。
ValheimサーバーへMODを導入するために必要な作業は、基本的にBepInExディレクトリ内のpluginsディレクトリに該当ファイルを置くだけです。

PCから下記URLへアクセスし、「MANUAL DOWNLOAD」をクリックしzip圧縮された「Extended Item Data Framework」をダウンロードします。
今度はMODマネージャーを使いませんので「MANUAL DOWNLOAD」を選ぶことに注意して下さい。

Extended Item Data Framework
https://www.nexusmods.com/valheim/mods/281?tab=files


 

前提として「BepInEx」が必要なことを忠告されますが既にインストール済みなので「DOWNLOAD」をクリックします。

 

ダウンロードページに遷移しますので無料会員でも使える「SLOW DOWNLOAD」をクリックします。
しばらくするとダウンロードが始まりますのでデスクトップ等の分かりやすい場所に保存して下さい。

 

ダウンロードしたzipファイルを解凍し「ExtendedItemDataFramework.dll」だけをC:\にコピーし、PowerShellを使ってVPSへアップロードを行います。
PowerShellが起動したら以下のコマンドを入力してディレクトリトップへ移動、アップロードを行います。
[IPアドレス]の部分はVPSのIPアドレスに置き換えて下さい。

cd /
scp ExtendedItemDataFramework.dll vhserver@[VPSのIPアドレス]:/home/vhserver/serverfiles/BepInEx/plugins

アップロードが完了すれば「Extended Item Data Framework」の導入は完了です。
 

最後に「Epic Loot」をサーバーに導入していきます。
PCから下記URLへアクセスし、「MANUAL DOWNLOAD」をクリックしてzip圧縮された「Epic Loot」をダウンロードします。
手順は先ほどと同じです。

Epic Loot
https://www.nexusmods.com/valheim/mods/387?tab=files

ダウンロードしたzipファイルを解凍し、「files」フォルダを「EpicLoot」へとリネームします。

 

「EpicLoot」フォルダだけをC:\にコピーし、PowerShellを使ってフォルダごとVPSへアップロードしてpluginsディレクトリに格納します。
[IPアドレス]の部分はVPSのIPアドレスに置き換えて下さい。

cd /
scp -r EpicLoot vhserver@[VPSのIPアドレス]:/home/vhserver/serverfiles/BepInEx/plugins

アップロードが完了すればサーバーへの「Epic Loot」のインストールは完了です。
コンソールでVPSを操作し、以下のコマンドでLinuxGSMを起動させて下さい。

/home/vhserver/vhserver start

 

最後に「Epic Loot」の導入確認を行います。
コンソールでVPSを操作し、以下のコマンドでconfigディレクトリ内のファイル確認を行います。

ls /home/vhserver/serverfiles/BepInEx/config/

「randyknapp.mods.epicloot.cfg」が生成されていれば「Epic Loot」は動いていますので導入確認は完了です。

お疲れさまでした、以上でマルチサーバー編のMOD導入も完了です。
ValheimからMOD導入されたマルチサーバーへ接続して存分に楽しんで下さい。
 

Epic Lootの設定

デフォルト設定のままで遊べますが、「Epic Loot」は「randyknapp.mods.epicloot.cfg」を編集することで細かい設定を行えるのでおまけとして紹介します。

クライアントPC(ソロプレイ)の場合
先ほど説明したとおり「randyknapp.mods.epicloot.cfg」は「Valheimのインストール先」内の「BepInEx」→「config」内にありますので、ゲームを起動していない状態でメモ帳を使って開いて編集して下さい。


 

サーバーの場合
コンソールでVPSを操作し、以下のコマンドでLinuxGSMを停止させてから編集して下さい。

/home/vhserver/vhserver stop
nano /home/vhserver/serverfiles/BepInEx/config/randyknapp.mods.epicloot.cfg

編集後に改めてLinuxGSMを起動させて設定を反映させて完了です。

/home/vhserver/vhserver start

いずれも設定内容はすべて英語で記述されておりますので各項目の意味はGoogle翻訳を併用して調べると良いでしょう。
 

参考リンク

最後に本記事を執筆するにあたり参考にしたサイトを記載します。

NEXUSMODS
Nexus Mods Wiki
Thunderstore-ValheimModデータベース
Reddit「Guide: How to add BepInEx, & add discord integration to dedicated server (LinuxGSM)」

ここまでお付き合い頂き誠にありがとうございました。本稿がお役に立てば幸いです。