mod.jsonについて
mod.json は、MODの「名刺(メタデータ)」です。MOD管理画面の表示や、どのファイルを読み込むか、どのバージョンで動くか等の判定に使われます。
ページ概要
- 対象ファイル:
mod.json - 役割: MODの基本情報(表示名・作者・説明・互換バージョン)と、読み込む定義ファイル(
character.json/events.json)を指定します。 - どこで使われるか: MOD読み込み時、MOD管理画面表示時、バリデーション(検証)時
- 最小構成: このページの「最小構成(コピペ用)」
- よくあるミス: このページの「よくあるミス」
最小構成
{
"mod_version": "1.0.0",
"mod_id": "my_character",
"mod_name": "私のキャラクター",
"mod_name_en": "My Character",
"author": "Your Name",
"description": "説明",
"description_en": "Description",
"min_game_version": "0.1.0",
"max_game_version": "0.1.999",
"character_file": "character.json",
"events_metadata_file": "events.json"
}
mod_id(最重要)
- 他のMODと絶対に被らない値にする
- 英数字とアンダースコアのみ(推奨)
min_game_version / max_game_version(互換性)
ゲームのバージョンに対して、このMODが「動作する最低/最高(動作確認済み)」を指定します。形式は major.minor.patch(例: 0.1.0)です。
運用のコツ
min_game_version: 作成時点のゲームバージョンを入れるmax_game_version: 同じ minor の最大(例:0.1.999)にしておくと、パッチ更新で警告が出にくい
ファイル参照(どれを読み込む?)
character_file: キャラクター定義(通常はcharacter.json)events_metadata_file: イベント一覧(通常はevents.json)。書き方は events.json(イベント一覧) を参照
補足
character_fileを省略(またはnull相当)にすると「キャラクターを持たないMOD」になります。events_metadata_fileを省略(またはnull相当)にすると「イベント定義(events.json)を持たないMOD」になります。- イベントスクリプトの場所は、
events.jsonの各イベントにあるscript_file(例:events/first_meeting.json)で指定します。
パスの注意
- MODフォルダ内からの相対パスで書く
../や/で始まるパスは避ける
よくあるミス
- IDの不一致:
events.jsonのidと、スクリプト内のevent_idが一致しない - バージョン未指定/形式不正: バリデーションでエラー/警告になりやすい
- ファイル名変更の反映漏れ:
character_fileなどを変更したのに実ファイルがない