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.jsonid と、スクリプト内の event_id が一致しない
  • バージョン未指定/形式不正: バリデーションでエラー/警告になりやすい
  • ファイル名変更の反映漏れ: character_file などを変更したのに実ファイルがない

関連