動作確認バージョン:7 Days to Die v2.6(2026年4月時点)
7 Days to Die はアップデートにより Mod が動作しなくなる場合があります。制作・導入前に必ず対応バージョンを確認してください。
自分だけの Mod を作ってみたい——そう思っても「XMLって何?」「どこから始めればいい?」と感じる方は多いはずです。
この記事では、Modlet(モッドレット:7DTD 独自の軽量 Mod 形式)制作の最初の一歩として、必須ファイルである ModInfo.xml の書き方と、正しいフォルダ構成を解説します。
プログラミングの知識は不要です。テキストエディタさえあれば今日から作れます。
Modlet とは何か
Modlet は、7 Days to Die のアルファ 17 から導入された Mod の仕組みです。通常の Mod がゲームのファイルを直接書き換えるのに対し、Modlet はゲームの起動時に設定を上書きする追加ファイルとして動作します。
この方式の最大のメリットは、バニラ(バニラ:Mod などで改造されていないゲーム本来の状態)のファイルに一切手を加えない点です。Modlet を削除するだけで元の状態に戻せるため、管理が非常に楽になります。
Modlet で変更できる主な内容は以下の通りです。
- アイテムの攻撃力・耐久値・重量などのパラメーター
- レシピの材料・作成数・必要な作業台
- ゾンビや動物の HP・移動速度・行動
- スキルやパークの効果・最大レベル
- UI のテキスト(日本語化もこの仕組みで実現)
必要なもの
Modlet を作るために必要なものはシンプルです。
- テキストエディタ:Windows の「メモ帳」でも動きますが、Visual Studio Code(無料)を使うと XML のシンタックスハイライト(色分け表示)が使えて格段に読みやすくなります
- 7 Days to Die 本体:動作確認用
- この記事:最初のテンプレートとして活用してください
フォルダ構成の基本
Modlet は、ゲームのインストールフォルダ内にある Mods フォルダに配置します。
7 Days to Die/ ← ゲームのインストールフォルダ
└── Mods/ ← Mod を入れる専用フォルダ(なければ作成)
└── MyFirstMod/ ← Modlet 名のフォルダ(任意の名前)
├── ModInfo.xml ← Modlet の情報ファイル(必須)
└── Config/ ← ゲームデータを上書きする XML を入れるフォルダ
└── items.xml ← 例:アイテム改造ファイル
Modlet 名のフォルダ(上の例では MyFirstMod)が Modlet の本体です。このフォルダをごっそり Mods フォルダに入れるだけで Modlet が有効になります。
【v2.x 時点】 v1 以降、バニラ自体に
Modsフォルダが含まれるようになりました。その場合、フォルダ内にある0_TFP_Harmonyフォルダは絶対に削除しないでください。
このフォルダはゲームの基盤となる Harmony ライブラリで、削除するとゲームが起動しなくなります。
ただ、整合性の確認(Steam の機能)を行えば復旧も可能です。
ModInfo.xml の書き方
ModInfo.xml は、Modlet に必ず必要な名刺のようなファイルです。Mod の名前・作者・バージョンなどの情報をゲームに伝える役割を持ちます。
以下が基本のテンプレートです。そのままコピーして使えます。
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<Name value="MyFirstMod" />
<DisplayName value="My First Mod" />
<Description value="はじめての自作 Modlet" />
<Author value="YourName" />
<Version value="1.0.0" />
<Website value="" />
</xml>
各項目の意味を確認しておきましょう。
| 項目 | 必須 | 説明 |
|---|---|---|
Name | ✅ | Mod の内部ID。フォルダ名と合わせる。スペース不可 |
DisplayName | ✅ | ゲーム内の Mod 一覧に表示される名前(日本語可) |
Description | ✅ | Mod の説明文 |
Author | ✅ | 作者名。あなたのハンドル名などを入れる |
Version | ✅ | Mod のバージョン番号。更新のたびに変更する |
| Website | ✖ | 空欄でも大丈夫 任意でWebサイトを登録 |
XML の基本ルール
ModInfo.xml を含む、すべての XML ファイルに共通する基本ルールを押さえておきましょう。
タグは必ず閉じる
XML ではすべての要素を「タグ」で囲みます。開いたタグは必ず閉じる必要があります。
<!-- OK:self-closing タグ(要素内に内容がない場合) -->
<Name value="MyMod" />
<!-- OK:開きタグと閉じタグのペア -->
<xml>
<Name value="MyMod" />
<DisplayName value="My Mod" />
</xml>
<!-- NG:タグが閉じられていない(エラーになる) -->
<Name value="MyMod">
文字コードは UTF-8 を使う
1 行目の <?xml version="1.0" encoding="UTF-8"?> は、このファイルが UTF-8 で書かれていることをゲームに伝えています。日本語を使う場合は特に重要です。テキストエディタで保存するときも、必ず「UTF-8(BOM なし)」を選んでください。
メモ帳で保存する場合は、「名前を付けて保存」→「文字コード」を「UTF-8」に変更してください。
インデントは読みやすさのため
XML ではインデント(字下げ)の有無は動作に影響しません。ただし、ネストが深くなるほど読みにくくなるため、スペース 2 つまたは 4 つでインデントする習慣をつけておきましょう。
実際に Modlet を作ってみよう
ここでは「ベースボールバットの攻撃力を変更する」という最もシンプルな Modlet を実際に作ります。
v1.0 以降、アイテムIDの命名規則が変更されています。このチュートリアルでは実際にゲームに存在するアイテムIDを使います。
STEP 1:フォルダを作成する
7 Days to Die / Mods / の中に、MyFirstMod という名前のフォルダを作成します。さらにその中に Config フォルダを作成します。
Mods/
└── MyFirstMod/
└── Config/
STEP 2:ModInfo.xml を作成する
MyFirstMod フォルダの直下に、テキストエディタで ModInfo.xml を新規作成します。
内容は上のテンプレートをそのままコピーして、Name と Author だけ書き換えてください。
<?xml version="1.0" encoding="UTF-8"?>
<xml>
<Name value="MyFirstMod" />
<DisplayName value="My First Mod" />
<Description value="ベースボールバットの攻撃力を変更するテスト Modlet" />
<Author value="YourName" />
<Version value="1.0.0" />
</xml>
STEP 3:改造ファイルを作成する
Config フォルダの中に items.xml を新規作成します。以下の内容を貼り付けてください。
<?xml version="1.0" encoding="UTF-8"?>
<configs>
<set xpath="/items/item[@name='meleeWpnClubT1BaseballBat']/effect_group/passive_effect[@name='EntityDamage'][@operation='base_set']/@value">100</set>
</configs>
STEP 4:ゲームを起動して確認する
ゲームを起動し、メインメニューの「Mods」から MyFirstMod が一覧に表示されていれば成功です。新しいゲームを始めてベースボールバット(Baseball Bat)を入手し、ダメージが変わっていることを確認してください。
コンソール(F1キー)から以下のコマンドで直接入手できます。
giveself meleeWpnClubT1BaseballBat
確認が取れない場合のチェックポイント
Modsフォルダの場所は正しいか(ゲームのインストールフォルダ直下)ModInfo.xmlのファイル名に誤字はないか(拡張子が.txtになっていないか)- XML の構文エラーがないか(タグの閉じ忘れなど)
- アイテムIDが正しいか(
meleeWpnClubT1BaseballBat← 大文字小文字も一致しているか)
xpath とは何か
xpath(エックスパス) とは、XMLファイルの中から「変更したい場所」をピンポイントで指定するための記法です。
PCのファイルパス(C:\Users\Documents\...)と同じように、**「どの箱の中にある、どの項目か」**を住所のように指定します。今回使った命令を分解して見てみましょう
xpath="/items/item[@name='meleeWpnClubT1BaseballBat']/effect_group/passive_effect[@name='EntityDamage'][@operation='base_set']/@value"
これを分解すると:
/items
まず「items」という大きな箱(タグ)の中に入ります。
/item[@name=’meleeWpnClubT1BaseballBat’]
たくさんあるアイテムの中から、名前(name)が meleeWpnClubT1BaseballBat(ベースボールバット)であるものを選びます。
/effect_group
そのアイテム設定の中にある「効果グループ(effect_group)」の箱へ進みます。
/passive_effect[@name=’EntityDamage’][@operation=’base_set’]
さらにその中の「パッシブ効果」を探します。ここでは「攻撃力(EntityDamage)」かつ「基本値(base_set)」という2つの条件に一致するものを指定しています。
/@value
最後に、その項目に設定されている「値(value)」の数字を書き換えます。
7 Days to Die のデータ内には、同じ「EntityDamage(攻撃力)」という言葉が「品質によるボーナス」や「スキルによる加算」など、あちこちに出てきます。
単に「攻撃力を変えて」と言うだけではゲームが迷ってしまうため、「ベースボールバットの、基本値としての、攻撃力の、数字」という風に、詳しく住所を教える必要があるのです。
昔の Mod 制作では /property[@name='EntityDamage']/@value という短い書き方で済んでいました。しかし、V1.0 以降はデータの階層が深くなり、effect_group や passive_effect を経由して指定する形が主流になっています。古い解説サイトの書き方では動かないことがあるので注意しましょう。
よくあるミスと対処法
Modlet 制作で初心者が引っかかりやすいミスをまとめました。
ModInfo.xml を書いたのに Mod として認識されない → <ModInfo> タグで囲んでいないか確認してください。v2.x では <xml> 直下に各プロパティを直接書きます。<ModInfo>...</ModInfo> で囲む旧形式はゲームに認識されません。
Mod が一覧に表示されない → ModInfo.xml が MyFirstMod フォルダの直下(Config の中ではない)にあるか確認してください。
ゲームが起動しなくなった → XML の構文エラーが原因の場合がほとんどです。最後に編集したファイルを確認し、タグの閉じ忘れや引用符の抜けがないかチェックしてください。0_TFP_Harmony フォルダを削除していないかも確認してください。
変更が反映されない → XML によるパラメーター変更(攻撃力など)は、基本的には既存セーブにも即時反映されます。
反映されないのは「ワールド生成時に決定される要素(地形や建物の配置など)」です。
「数値が変わらない場合は、一度手に持っているアイテムを持ち直す(再装備する)か、コンソールで新しく出したもので確認してください」と書くのが実務的です。
日本語が文字化けする → ファイルの文字コードが UTF-8 になっているか確認してください。
「BOMありで保存すると、ModInfo.xml が読み込まれず Mod が認識されない原因になります」
特に Windows のメモ帳で保存する場合は注意が必要です。
まとめ
この記事で学んだことをおさらいします。
- Modlet はバニラのファイルを書き換えずにゲームを改造できる 7DTD 独自の仕組み
ModInfo.xmlは Modlet に必ず必要な情報ファイル- フォルダ構成は
Mods / Modlet名 / ModInfo.xmlとConfig / 改造ファイル - XML は UTF-8 で保存し、タグは必ず閉じる
- v2.x のアイテムIDは
meleeWpnClubT1BaseballBatのような形式 - v2.x の xpath は
effect_group > passive_effect構造を経由して値を変更する
Modlet 制作の基礎はこれだけです。次のステップとして、xpath の書き方をより詳しく学ぶことで、アイテムのあらゆるパラメーターを自由に変更できるようになります。