検証コード一覧(バリデーション)
このページは、MOD検証(バリデーション)で表示される コード(例: MISSING_EVENT_SCRIPT)の意味をまとめたリファレンスです。困ったら、まずこのコードを探して原因と対処を確認してください。
ページ概要
- 対象ファイル: (ゲーム側が表示する)検証結果コード
- 役割: エラー/警告コードの意味と、直し方の早見表
- どこで使われるか: MOD管理画面の検証表示、読み込み時の検証ログ
- 最小構成: なし(辞書ページ)
- よくあるミス: 「警告」と「エラー」の違いを見落とす/ID不一致/script_file のパス違い
エラーと警告の違い
- エラー(Error): 基本的に「MODが正しく動かない/読み込めない可能性が高い」状態です。まずエラーを0にするのがおすすめです。
- 警告(Warning): 「読み込みはできるが、挙動が想定とズレる可能性がある」状態です。最終的には警告も減らすのがおすすめです。
まず多いコード(頻出)
- script_fileが見つからない:
MISSING_EVENT_SCRIPT/MISSING_ENDING_SCRIPT - IDが一致しない:
EVENT_ID_MISMATCH/ENDING_ID_MISMATCH - シーンtypeが不正:
INVALID_SCENE_TYPE - 参照先シーンが存在しない:
MISSING_SCENE_REFERENCE - 必須立ち絵がない:
MISSING_NORMAL_PORTRAIT/MISSING_PORTRAIT
エラーコード一覧(Error)
| コード | 意味 | よくある原因 / 直し方 |
|---|---|---|
INVALID_MOD_ID |
mod_id が空 | mod.json の mod_id を埋める(他MODと被らないID推奨) |
INVALID_MOD_NAME |
mod_name が空 | mod.json の mod_name/mod_name_en を埋める |
INVALID_AUTHOR |
author が空 | mod.json の author を埋める |
INVALID_MIN_VERSION |
min_game_version がバージョン形式ではない | major.minor.patch 形式(例: 0.1.0)にする |
MISSING_MAX_VERSION |
max_game_version が空 | max_game_version は必須です(例: 0.1.999) |
INVALID_MAX_VERSION |
max_game_version がバージョン形式ではない | major.minor.patch 形式にする |
VERSION_TOO_LOW |
ゲームのバージョンが min_game_version 未満 | 古いゲームでは動きません。ゲーム側を更新するか、min_game_version を見直す |
INVALID_CHARACTER_ID |
キャラクターIDが空 | character.json の id を埋める |
MISSING_NORMAL_PORTRAIT |
必須立ち絵(spring/casual/normal)が見つからない | portraits に spring.casual.normal を用意する |
MISSING_PORTRAIT |
立ち絵ファイルが見つからない | portraits で指定したパスに画像が存在するか確認(大文字小文字/拡張子も含む) |
MISSING_EVENT_SCRIPT |
イベントscript_fileが見つからない | events.json の script_file と実ファイルの場所を一致させる |
MISSING_ENDING_SCRIPT |
エンディングscript_fileが見つからない | events.json の endings[].script_file と実ファイルの場所を一致させる |
MOD_SIZE_EXCEEDED |
MOD全体サイズが上限超過 | 画像/音声を圧縮する、不要ファイルを削除する |
INVALID_JSON |
JSONが壊れている(パースできない) | 末尾カンマ、引用符、括弧の閉じ忘れを確認。まずJSONとして正しいか検証する |
EVENT_ID_NOT_DEFINED |
スクリプトに event_id がない | スクリプト先頭に "event_id": "..." を入れる |
SCENES_NOT_DEFINED |
スクリプトに scenes がない | "scenes": [ ... ] を用意する |
SCENES_NOT_ARRAY |
scenes が配列ではない | scenes は必ず配列にする([ ... ]) |
EMPTY_EVENT_SCRIPT |
scenes が空 | 最低でも dialogue など1つ+最後に end を入れる |
INVALID_SCENE_TYPE |
type が不正 | type はスネークケース(例: character_show)。詳しくは イベントスクリプト |
INVALID_BGM_ACTION |
bgm_action が不正 | play/stop/pause/resume のいずれか。詳しくは 音声 |
INVALID_SE_ACTION |
se_action が不正 | play/stop/pause/resume のいずれか |
INVALID_VOICE_ACTION |
voice_action が不正 | play/stop/pause/resume のいずれか |
INVALID_TIME_OF_DAY |
advance_to_time / time の値が不正 | 時間帯IDを正しい値にする(time_advance 参照) |
INVALID_ENDING_TYPE |
ending_type / endings[].type の値が不正 | 正しいエンディング種別にする(エンディング 参照) |
EVENT_ID_MISMATCH |
events.json の id とスクリプトの event_id が一致しない | events.json 側とスクリプト側のIDを一致させる(events.json 参照) |
ENDING_ID_MISMATCH |
endings の id とスクリプトの event_id が一致しない | endings の id とスクリプトの event_id を一致させる |
DUPLICATE_SCENE_ID |
scene_id が重複している | 同じスクリプト内で scene_id をユニークにする |
MISSING_SCENE_REFERENCE |
next_scene 等が存在しない scene_id を参照している | next_scene/choices[].next_scene/branches[].next_scene/default_next_scene/next_scenes を見直す |
METADATA_VALIDATION_FAILED |
メタデータ検証処理が途中で失敗 | まず mod.json / character.json のJSONを見直す(壊れているとこのエラーが出ることがあります) |
REQUIRED_FILES_CHECK_FAILED |
必須ファイル検証処理が失敗 | ファイル読み込みエラーの可能性。まずパス/権限/文字コードを確認 |
ASSETS_CHECK_FAILED |
アセット検証処理が失敗 | まず立ち絵/スクリプトのファイル存在とパスを確認 |
EVENT_SCRIPTS_CHECK_FAILED |
スクリプト検証処理が失敗 | スクリプトJSONの形式を確認(event_id, scenes など) |
MISSING_CG_FILE |
cg_gallery に定義されたCGファイルが見つからない | character.json の cg_gallery の path と実ファイルの場所を一致させる |
警告コード一覧(Warning)
| コード | 意味 | よくある原因 / 直し方 |
|---|---|---|
VERSION_UNTESTED |
ゲームが max_game_version より新しい(動作未確認) | 動作確認して max_game_version を更新する(0.1.999 運用推奨) |
MISSING_AFFECTION_STAT |
initial_stats に affection がない | character.json の initial_stats(性別ごと)に affection を入れる |
INVALID_INITIAL_RELATIONSHIP |
初期関係性の値が不正 | dislike/acquaintance/friend/bestFriend/dating のいずれかにする |
NO_ENDINGS_DEFINED |
エンディングが1つも定義されていない | events.json に endings を追加する(最低1つ推奨) |
INVALID_RELATIONSHIP |
relationship / required_relationship の値が不正 | stranger は無効。上記の有効値に直す |
INVALID_PORTRAIT_PATH |
立ち絵パスの形式が不正 | 推奨は spring/casual/normal.png のような相対パス。ドット記法(casual.normal)は「指定名」で、パスそのものとは別概念です |
INVALID_LOCATION_ID |
location が存在しないID | 場所IDを見直す(locations.json にあるIDのみ推奨) |
INVALID_BACKGROUND_ID |
background が存在しないID | 背景IDを見直す。my_room は特別に許可されます |
MISSING_CG_DEFINITION |
cg で指定したIDが cg_gallery に定義されていない | character.json の cg_gallery にIDを追加する(マップ形式) |
INVALID_ENUM_VALUE |
列挙値が不正(まとめ) | 警告の詳細(どの値が不正か)を見て、正しい候補に直す |
SYSTEM_CONFIG_LOAD_FAILED |
システム設定読み込みに失敗(検証の一部が弱くなる) | ゲーム側の問題の可能性があります。再起動/再インストール/環境を確認 |
FILE_SIZE_CHECK_FAILED |
サイズ検証処理が失敗 | ファイルアクセスの問題の可能性。権限/ロック/長すぎるパスなどを確認 |
ENUM_VALUES_CHECK_FAILED |
列挙値検証処理が失敗 | まずJSONの形式が壊れていないか確認 |
EVENT_ID_CHECK_FAILED |
ID整合性検証処理が失敗 | events.json とスクリプトの読み込みに失敗している可能性。ファイル/JSONを確認 |
PORTRAIT_PATHS_CHECK_FAILED |
立ち絵パス検証処理が失敗 | まず portraits の形式を確認 |
ASSET_REFERENCES_CHECK_FAILED |
参照整合性検証処理が失敗 | 背景/場所/CGなどの参照が壊れていないか確認 |
SCENE_IDS_CHECK_FAILED |
シーン参照検証処理が失敗 | スクリプトJSONの形式を確認(scenes配列、scene_idの型など) |