設定ファイル・権限・保存
1. 設定ファイルの場所
標準的な構成では、Citizensのデータは次の場所にあります。
plugins/Citizens/config.yml plugins/Citizens/saves.yml plugins/Citizens/templates/
実際の保存形式やファイル名は設定によって変更される可能性があります。現行の公式設定資料には、storage.type、storage.file、自動保存間隔、NPC数の制限、スキン取得、経路探索、チャンク維持などの設定が掲載されています。
2. 設定のカテゴリ
代表的なカテゴリ:
- general:デバッグ、メッセージ配色、バージョンチェック等。
- npc.default:新しく作るNPCに適用する既定値。LookClose、会話、会話文など。
- npc.text / talk-close:会話の既定動作、文章、遅延、距離など。
- npc.pathfinding / waypoints:経路探索、経路キャッシュ、範囲、詰まりへの対応等。
- npc.skins / authlib:スキン取得やProfile関連設定。現行ソースには
npc.skins.try-fetch-default-skin(新規NPC名に基づくスキン取得を試みる、既定true)、npc.skins.use-latest-by-default(最新スキン追従を既定にする、既定false)などがあります。 - npc.selection:NPC選択に使う既定アイテムは現行ソースでは
stick。 - npc.limits:既定のNPC作成上限や関連制限。
- chunks:NPCがチャンクを維持するための設定。
- tablist:NPCをプレイヤー一覧に表示する動作に関連する設定。
- economy:対応する経済機能のコスト。
- storage:保存先と保存方式。
- subplugins:関連プラグインの探索場所に関する設定。
設定キーや階層はバージョンで変化する可能性があります。古いネット記事の設定例を丸ごとコピーするのではなく、起動後に生成されたconfig.ymlと現行Wikiを基準にしてください。
3. 保存・再起動・リロード
/citizens save:NPCや設定を保存するためのコマンド。/citizens reload:Citizensの設定を再読み込みするコマンドが用意されています。
設定変更によっては再起動が必要です。稼働中のNPCデータや他プラグインとの依存関係を考慮し、運用中サーバーで安易に/reload(Minecraft全体のリロード)を使わないでください。更新前にはサーバーを正常停止し、plugins/Citizens/と必要なワールドデータをバックアップすることを推奨します。
4. 権限
現行のplugin.ymlは、citizens.npc.* の下に作成・選択・編集・Trait・種別別操作などの権限ノードを多数定義しています。基本的な権限の名前は次のような構造です。
| 権限系統 | 用途 |
|---|---|
citizens.npc.help | NPCヘルプ |
citizens.npc.create | NPC作成 |
citizens.npc.select | NPC選択 |
citizens.npc.remove | NPC削除 |
citizens.npc.rename | 名前変更 |
citizens.npc.text | テキストエディタ |
citizens.npc.talk | NPCのテキストを聞くために必要と公式Wikiに記載 |
citizens.npc.edit.equip | 装備エディタ |
citizens.npc.command | クリックコマンド関連 |
citizens.npc.trait | Trait管理 |
citizens.waypoints.* | ウェイポイント関連 |
citizens.templates.* | テンプレート関連 |
citizens.admin / citizens.admin.* | 管理者向けの操作群 |
これは代表例で、全権限の一覧ではありません。特にcitizens.npc.*やcitizens.admin.*は多数の強力な権限を含むため、一般プレイヤーへまとめて付与しないでください。最新ノードは公式plugin.ymlのpermissions節を参照してください。
5. NPC数の制限
CitizensにはNPC作成数の上限や、上限を回避する管理権限が存在します。設定の既定値とcitizens.npc.limit.<数>形式などはバージョンにより変わる場合があります。サーバーで使用する正確な権限ノードは現在のplugin.ymlで確認してください。
6. 安全な権限設計
- 一般プレイヤーには、必要ならNPCの会話を聞く権限だけを与える。
- NPC作成者には作成・編集・Trait設定を必要範囲で許可する。
- サーバー共有NPCは、個人所有の編集権限に依存しないよう管理する。
/npc commandやテンプレート経由で管理者コマンドを実行できる構成には特に注意する。- OP相当実行や
citizens.admin.*を不用意に付与しない。