🧯 トラブルシューティング
OP向け情報
「壊れた・動かない」ときの対処集です。症状から探してください。
ymlを壊した・読み込めない
症状: reload時にコンソールへ赤いエラーが出る。アイテムや敵が消えた・読み込まれない。
手順1: 構文チェック
リポジトリのルートで:
.\scripts\update.ps1 -DryRunyml構文エラーがあれば場所が表示されます(Node.jsがあれば node scripts\validate-yml.mjs でも可)。
手順2: 直近バックアップから戻す
update.ps1 の自動バックアップに変更前ファイルが残っています。
ls .git\auto-backup\ ← 日時フォルダの一覧該当ファイルをコピーして戻すか、git履歴から復元します:
git checkout HEAD -- MattariMMO/src/main/resources/items.yml手順3: 反映
修正したファイルをサーバー側 plugins\MattariMMO\01_定義\ にも反映し、対応するreloadコマンドを実行(設定ファイルマップ参照)。
ymlのファイル末尾が切れている・NULLバイト混入
症状: ファイルサイズが急に半分以下になった。末尾が : で終わっている。エディタで開くと文字化けや \0 がある。
過去に skills.yml の切断・items.yml へのNULLバイト混入事故が起きています。update.ps1 はこのパターンを検出して停止するので、警告が出たら無視して続行しないでください。対処は上記と同じく、自動バックアップまたはgit履歴からの復元です。
pushできない (.git/index.lock)
症状: Unable to create '.git/index.lock': File exists エラー。
update.ps1 は起動時に古いロックを自動削除するので、まず再実行してください。手動で消す場合:
Remove-Item -LiteralPath ".git\index.lock" -Forceプレイヤーデータの事故・復元
症状: プレイヤーのレベル・所持品・倉庫などが消えた/巻き戻った。
稼働中に触らない
plugins\MattariMMO\03_プレイヤー\ 配下は稼働中に手編集しないでください。稼働中に書き換えても、サーバー停止時にメモリ上のデータで上書きされて消えます。
手順:
sayで告知してサーバーを停止 (save-all→stop)- バックアップ(メンテナンス — バックアップ参照)から該当プレイヤーのデータファイルを
03_プレイヤー\配下に上書きコピー - サーバー起動
/mmoadmin info <player>で復元を確認
バックアップがない・部分的な消失の場合は、プレイヤー対応レシピの各コマンド(/mmoadmin setlevel, /item give 等)で聞き取りベースの補填をします。
装備・強化の表示がおかしい
症状: 装備スロットが表示されない、強化値の表示異常、装備が外れない。
/mmoadmin fixslot ← 装備スロット修正
/enhance fix ← 強化データ修復その後、プレイヤーに再ログインまたは /equip gui の開き直しをしてもらいます。
敵が湧かない
確認ポイントを順にたどります。
/enemy autorespawn ← 自動湧きがONか確認 (トグルなので注意)
/enemy list ← 現在スポーン中の敵を確認
/fieldspawn list ← フィールド湧き地点の一覧
/fieldspawn info <id> ← 該当地点の詳細 (「有効」フラグを確認)
/enemy reload ← 設定を再読み込み
/fieldspawn reload ← フィールドスポーン再読み込み有効フラグ
フィールドスポーン一覧で「有効」が false の地点は湧きません。意図的に停止している地点かどうか確認してください。
ボスが出ない
/boss schedule ← スケジュール確認
/boss enable ← スケジュールが無効化されていたら有効化
/bossspawn list ← 出現地点が登録されているか
/boss status ← 現在の状態
/boss reload ← ボス設定再読み込み敵・ボスに地形を壊された
症状: ウィザー系ボス(無の玉座の「虚無の王」など)がダンジョンの壁や床を破壊する。
2026-08-29 以降、MMO敵とその投射物による地形破壊はプラグイン側でブロックされます(ダメージ・ノックバックはそのまま)。 それでも壊れる場合は config.yml の設定を確認してください。
enemy:
# MMO敵(およびその投射物)の爆発で地形を壊さない
prevent-terrain-damage: true
# ウィザー系はMMO管理外でも常に地形破壊を禁止
prevent-wither-griefing-always: trueこの2項目は毎回 config を読むため、/mmo reload で即座に反映されます。 壊れてしまった地形は WorldEdit 等で復元してください。
プラグインが読み込まれない・起動時エラー
- 起動ログ(コンソール)の
MattariMMOに関するエラーを確認 plugins\に古いjarが残っていないか確認(jarは1つだけ。メンテナンス参照)- Javaのバージョンを確認(Java 22でビルドしたjarは古いJavaでは動きません)
/mmo versionが応答するか確認
ソースファイル(.java)が壊れた
症状: ビルドが通らない。ファイル末尾が物理的に切れている。
リポジトリの MattariMMO(元データ) バックアップフォルダと比較して復元します。
復元の定石: 壊れたファイルとバックアップ版の(壊れる前までの)行を比較し、完全一致すればバックアップ版で上書き。一致しない場合は意図的な新規変更が含まれている可能性があるので、単純上書きせず差分を確認してから統合します。git履歴 (git log -- <ファイル> → git checkout <commit> -- <ファイル>) からの復元も有効です。
困ったときの情報収集コマンド
/mmo debug ← プラグインのデバッグ情報
/mmo version ← バージョン確認
/mmo info <player> ← プレイヤー情報
/mmoadmin info <player> ← プレイヤー詳細
/quest admin debug <player> ← クエスト状態解決しない場合は、コンソールログ(logs\latest.log)のエラー部分を控えて開発側(Discord)へ相談してください。