NPCの作成
設定オプション
isEnabled
NPCが有効かどうかを設定します。
| Key | Values | Default |
|---|---|---|
isEnabled | Boolean | true |
例
isEnabled: true
name
NPCの表示名を設定します。カラーコードと多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
name | String | none |
例
name: "&aEnn Peecee"

scale
NPCのスケール(サイズ)を設定します。
| Key | Values | Default |
|---|---|---|
scale | Multiplier | 1.0 |
スケーリングの際、1.0がデフォルトサイズを表します。エンティティを大きくするには値を増やし(例:1.2)、小さくするには値を減らします(例:0.8)。
例
scale: 1.2
role
NPCの役職を名前の下に設定します。視覚的なもののみです。カラーコードと多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
role | String | none |
例
role: "&c<Red Fellow>"

profession
NPCの職業を設定します。これにより、変装を使用していない場合のスキンが設定されます。
| Key | Values | Default |
|---|---|---|
profession | Profession | NITWIT |
例
profession: NITWIT

greetings
プレイヤーが近づいたときにNPCが言う挨拶のリストを設定します。多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
greetings | String List | none |
例
greetings:
- Hi there!
- Good day.

dialog
プレイヤーが近くにいる間にNPCが言う会話を設定します(DIALOG interactionTypeの場合、これが会話になります)。多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
dialog | String List | none |
例
dialog:
- I like apples!
- Sure is hot.

farewell
NPCの別れのメッセージを設定します。多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
farewell | String List | none |
例
farewell:
- Until next time!
- Bye!

canTalk
NPCが話せるかどうかを設定します。
| Key | Values | Default |
|---|---|---|
canTalk | Boolean | true |
例
canTalk: true
activationRadius
NPCがプレイヤーの接近を検出できる半径を設定します。
| Key | Values | Default |
|---|---|---|
activationRadius | Double | 3.0 |
例
activationRadius: 3.0
interactionType
NPCが行うインタラクションのタイプを設定します。
| Key | Values | Default |
|---|---|---|
interactionType | Special [1] | none |
例
interactionType: TELEPORT_BACK
noPreviousLocationMessage
Teleporter NPCにプレイヤーをテレポートさせる前の場所がない場合、このメッセージを表示します。カラーコードと多言語サーバー用の翻訳キーをサポートしています。
| Key | Values | Default |
|---|---|---|
noPreviousLocationMessage | String | none |
例
noPreviousLocationMessage: '&8[EliteMobs] &cCouldn''t send you back to your previous location - no previous location found!'

timeout
NPCが永久に消えるまでの時間を分単位で設定します。
| Key | Values | Default |
|---|---|---|
timeout | Integer | 0 (never) |
例
timeout: 0
questFileName
NPCが与えるクエストを設定します。
| Key | Values | Default |
|---|---|---|
questFileName | String List | none |
例
questFileName:
- my_quest_one.yml
- my_quest_two.yml
disguise
NPCが持つLibsDisguisesの変装を設定します。
| Key | Values | Default |
|---|---|---|
disguise | LibsDisguises format | none |
例
disguise: SKELETON

customDisguiseData
カスタムLibsDisguises変装のデータを設定します。
| Key | Values | Default |
|---|---|---|
customDisguiseData | LibsDisguises format | none |
例
disguise: custom:my_cool_disguise_name
customDisguiseData: player my_cool_disguise_name setskin {"id":"364acb6d-9050-46f7-b5fb-f8c3fd83a6fc","name":"Unknown","properties":[{"name":"textures","value":"ewogICJ0aW1lc3RhbXAiIDogMTYxMTk4ODA4Nzc1NSwKICAicHJvZmlsZUlkIiA6ICJkZGVkNTZlMWVmOGI0MGZlOGFkMTYyOTIwZjdhZWNkYSIsCiAgInByb2ZpbGVOYW1lIiA6ICJEaXNjb3JkQXBwIiwKICAic2lnbmF0dXJlUmVxdWlyZWQiIDogdHJ1ZSwKICAidGV4dHVyZXMiIDogewogICAgIlNLSU4iIDogewogICAgICAidXJsIiA6ICJodHRwOi8vdGV4dHVyZXMubWluZWNyYWZ0Lm5ldC90ZXh0dXJlLzliYmVkODQzNWY4YmYyNzhhZmUyNmU2NGZkOTI2YjhiMzc3MzJkODhlMzM0ODk3ZGJkNTI3ZDU2ZmY5MTk5MGUiCiAgICB9CiAgfQp9","signature":"ujLq1joYVktuQAp1xpFKlxQFUVinSePiDBiVCAxxix/mA5vP86i/eAOfb1mtGjaAZ6sO0l2olbzvycnGXNBtbAxgqprguROXY4tpWiePVTDmy3iD4GdOCxHAkYLoyMV5qTT4SNsldUFFuND8GSEgbNMltKDLmhNKwzm08iCigPfpeuYpwljgJPxu6ka54PKNaQu4doI0ZDZXKqq4hPhR3Bs2Sz9MI0SmdmQWwcCzUz3DFdVno27fmQ6LwqmT+eSoOv0EttVG/XMaTYQ5lhBY61mqf6WlJyYVUSfjJk1AbYsctu7dWM+sbY8jFq5ljvXJGGr5TyKi+fs8vHy06Z2go20QgTYOw+caFxFijAS6fgm3oY57VEO/+/9OLHdD+Z9BrWqQWcIIrVeIfxjue/yt4pyeVv9jX59hjNFjhcPEwotkxJ+vZ96WlTLWDG4BiqauDr2VeGyLlVaygO9ZU0wwsN65iSh91GI3tMIA5wbDR0Hts/9ABvt9eafHbowS+4SZXN0i9mYnKg7op1eiB8nMEAGsPJg3DwsmUrh3ACAapQ6eYHiJpo59RXDqKlRcXwo7wsEFp//5LgQWbPj0NP3nxnywdpozqSAeq6236qlhE9BT9eiyJ41V9sMelYFEWMlUAltR40NdbIrHB0J3nmfuLJz44/sTwWf6P1khOy//XX0="}],"legacy":false}

customModel
NPCが使用するModelEngineカスタムモデルを設定します。
| Key | Values | Default |
|---|---|---|
customModel | String | none |
例
customModel: MY_MODEL_ONE
arena
NPCがメニューを開くアリーナのファイル名を設定します(ARENA_MASTER interactionTypeが必要です)。
| Key | Values | Default |
|---|---|---|
arena | Filename | none |
例
arena: my_arena.yml
command
NPCが実行するコマンドを設定します(COMMAND interactionTypeが必要です)。コマンドはプレイヤーとしてではなく、コンソールコマンドとして実行されます。先頭のスラッシュ(/)は含めないでください。
| Key | Values | Default |
|---|---|---|
command | String | none |
例
command: say Look at me running a command, how cool!
![]()
spawnLocation
NPCのスポーン位置を設定します。これは/em spawnnpc <npcfilename.yml>コマンドを使用して設定する必要があります。
| Key | Values | Default |
|---|---|---|
spawnLocation | String | none |
例
spawnLocation: my_world,10,50,10,0,0
spawnLocations
NPCのスポーン位置を設定します。これは/em spawnnpc <npcfilename.yml>コマンドを使用して設定する必要があります。
| Key | Values | Default |
|---|---|---|
spawnLocations | String List | none |
例
spawnLocations:
- my_world,10,50,10,0,0
- my_world,-10,50,-10,0,0
instanced
NPCをインスタンス化するかどうかを設定します(インスタンスダンジョンで使用するため)。trueに設定すると、NPCは各ダンジョンインスタンスごとに自動的にクローンされ、各クローンは対応するインスタンスワールドに存在します。
| Key | Values | Default |
|---|---|---|
instanced | Boolean | false |
例
instanced: false
NPC設定の例
isEnabled: true
name: "&cRed Rubin"
role: "&a<Generic NPC>"
profession: NITWIT
greetings:
- Hiya!
- Hello!
dialog:
- Great conversation!
- Pleasure talking with you!
farewell:
- Goodbye!
- Laters!
canTalk: true
activationRadius: 4
interactionType: CHAT
timeout: 0
questFileName:
- my_quest.yml #npc interactionType must be set to CUSTOM_QUEST_GIVER
disguise: SKELETON
customDisguiseData: #used when a custom libsdisguise is being set
customModel: MODEL_ONE
arena: my_arena.yml #npc interactionType must be set to ARENA_MASTER
command: /say Hello World! #npc interactionType must be set to COMMAND
spawnLocation: my_world,584,55,127,90,10 #remember that NPCs use pitch and yaw to set where they are looking at. this is also automatically set when running the /em spawnnpc <npcfilename.yml> command, so make sure you pose where you want the NPC to be facing when running the command.

Special [1]
有効なNPCインタラクションタイプのリストは以下の通りです:
| Type | Description |
|---|---|
GUILD_GREETER | 冒険者ギルドメニューを開く |
CHAT | 右クリックでdialogを順番に表示 |
CUSTOM_SHOP | カスタムショップメニューを開く |
PROCEDURALLY_GENERATED_SHOP | プロシージャル生成されたショップを開く |
BAR | バーメニューを開く |
ARENA | アリーナメニューを開く |
QUEST_GIVER | プロシージャル生成されたクエストメニューを開く |
CUSTOM_QUEST_GIVER | questFileNameで設定された特定のクエストメニューを開く |
NONE | インタラクションなし |
SELL | 売却メニューを開く |
TELEPORT_BACK | プレイヤーを最後のelitemobs以外のワールドの場所にテレポート |
SCRAPPER | スクラップメニューを開く |
REPAIRMAN | 修理メニューを開く |
ENCHANTER | エンチャントメニューを開く |
REFINER | 非推奨 - 機能が削除されました。使用しないでください |
UNBINDER | バインド解除メニューを開く |
ARENA_MASTER | arenaFilenameで設定されたアリーナのメニューを開く |
COMMAND | commandで設定されたコマンドを実行 |
SCROLL_APPLIER | エリートアイテムスクロールをアイテムに適用 |
SCRAPPERや類似のインタラクションタイプが何をするかについての詳細はこちらをクリックしてください。
NPCの動作に関する注意事項
NPCには設定できないハードコードされた動作がいくつかあります:
- AI無効: NPCは自律的に移動できません。スポーン位置にとどまります。
- 役職の表示: 役職テキストは、NPCの上方の固定された高さに、透明な防具立てに表示されます。
- 会話のクールダウン: NPCはメッセージが重複しないように、発言イベント間で3秒待機します。
- チャンクのライフサイクル: NPCはチャンクがアンロードされるとデスポーンし、リロードされるとリスポーンします。
