FreeMinecraftModelsのペット
FreeMinecraftModelsは、モデルをペットの種族に変えられます。プレイヤーはエサでペットを手懐け、繁殖させ、連れて歩き、待機を命じ、/fmm petsで開くコレクションに保管します。各種族は、モデルの隣に置く<species>.pet.ymlファイルで定義されるため、モデルパックをインストール、有効化、無効化すると、そのペットもモデルと一緒にインストール、有効化、無効化されます。飼い主についていく、焚き火の周りを回るなど、ペットが自分で行う動作は、そのファイルに列挙されたLuaの行動モジュールによって決まります。サーバー全体のペット設定はpets.ymlにあります。
要件
- ペットは、モデルをまとった非表示のバニラMobで、MagmaCoreのMind AIによって動かされます。これには、サーバーバージョン向けのFreeMinecraftModelsのNMS対応と、Minecraft 1.21.4以降が必要です。満たさない場合、コンソールは起動時に
Pets are off:で始まる行を出力し、/fmm petsはPets are not available on this server.と応答します。 - FreeMinecraftModelsはペットの種族を同梱していません。ペットが存在するのは、モデルパックまたはあなたが
.pet.ymlファイルを追加した場合だけです。 - 他のモデルと同様に、プレイヤーには生成されたリソースパックが必要です。
ペットの仕組み
- ボディは、ペットファイルの
bodyで指定されたバニラMobで、デフォルトはアレイです。モデルの内側に隠れ、音を出さず、アイテムを拾いません。最大体力はペットファイルのhealthです。 - クリックは、内側のより小さなボディではなく、プレイヤーに見えているモデルに当たります。
- ペットは何もターゲットにせず、Mobもペットをターゲットにしません。
- ペットには、FreeMinecraftModelsの接触ダメージは適用されません。ペットが何かを傷つけるのは、
stingモジュールを通じてのみです。 - 死んだペットは何もドロップせず、経験値も与えません。
- ペットのボディは、チャンクとともに保存されません。所有ペットは飼い主の隣で再作成され、野生のペットは
data/wild_pets.ymlで待機します(野生のペットを参照)。クラッシュ後にチャンクに残ったペットのボディは、そのチャンクの読み込み時に削除されます。 - モデルの上には種族の
nameが表示され、子供には先頭にBabyが付きます。
ペットモード
pets.ymlには2つのモードがあります。
| モード | 動作 |
|---|---|
COSMETIC(デフォルト) | 通りすがりの夜の渡りを除き、ワールドにはプレイヤーが所有するペットだけが存在します。野生ではスポーンせず、手懐けることもできません。所有ペットは何からも傷つけられません |
CREATURES | ペットの種族は野生としてもワールドに生息し、バニラの家畜と同様にスポーンして、プレイヤーはエサを与えて手懐けます。所有ペットは、ダメージのルールの範囲内で傷つけられます |
モードの切り替えは、/fmm setupツールバーのPetsボタン、/fmm petadmin mode creaturesまたは/fmm petadmin mode cosmetic、あるいはpets.ymlのmodeを編集して/fmm reloadを実行することで行えます。ボタンとコマンドは、新しいモードをpets.ymlに書き込みます。
COSMETICに切り替えると、生きている野生のペットはdata/wild_pets.ymlに送られます。サーバーが再びCREATURESに切り替わると、戻ってきます。夜の渡りはどちらのモードでも飛びますが、渡りの個体を手懐けられるのはCREATURESだけです。
COSMETICモードでは、プレイヤーはペットを手懐けません。/fmm petadmin give <species>は、実行したプレイヤーのコレクションにペットを追加します。繁殖はどちらのモードでも機能します。
手懐け
CREATURESモードでは、プレイヤーは野生の成体を、その種族のtamingFoodのアイテムで右クリックして手懐けます。
- 与えるたびに1個を消費します。クリエイティブモードは除きます。
- 与えるたびに、確率
tameChance(デフォルトは1/3)で、オオカミやネコと同じように手懐けられます。失敗すると煙とtameFailedMessageが表示されます。 - 手懐けられたペットはプレイヤーのコレクションに加わり、その隣に出てきます。野生のときの色のバリアントを保ち、
interactアニメーションを1回再生します。 - プレイヤーがすでに
maxEquippedPets匹を連れている場合、新しいペットは外に出ず、代わりに家(コレクション)へ帰ります。 tamingFoodのリストが空の種族は、手懐けられません。
リードは、バニラのMobと同様にペットのボディに使えます。
繁殖と子供
- 飼い主が成体のペットを
breedingFoodのアイテムで右クリックすると、1個を消費し、そのペットをloveSeconds(デフォルトは30)の間、発情状態にします。 - 同じプレイヤーが所有する同じ種族の成体2匹が、どちらも発情状態で、互いに8ブロック以内にいると、子供が生まれます。子供は飼い主のコレクションに加わり、飼い主が
maxEquippedPetsに達していなければ外に出てきます。 - 子供は、親のどちらか一方の色のバリアントを受け継ぎます。種族が
babyModelを設定していればそれを、なければそのバリアントのモデルをまとい、どちらの場合も成体のサイズのbabyScale倍になります。 - 両方の親は、再び繁殖できるようになるまで
breedingCooldownMinutes(デフォルトは5)分待ちます。その間に親にエサを与えるとbreedingCooldownMessageが表示されます。 - 子供は、生まれてから
babyGrowthMinutes(デフォルトは20)分で成長します。この時間は、子供が家にいる間も進み、成体は次に子供が外に出たときに現れます。 - 子供は繁殖できず、刺すときに攻撃アニメーションを再生しません。
子供が生まれると、親はinteractアニメーションを再生します。
追従、待機、うろつき
同梱の行動を使うと、外に出ている所有ペットは飼い主の近くにとどまります。以下の数値は、follow_owner、stay、drift、hoverの各モジュールと、種族のfollowおよびfloatキーのデフォルトです。
- 飼い主が
follow.distance(5ブロック)より離れると、ペットは追従し、飼い主の1.5ブロック後ろを目指します。飛行する種族は、飼い主の足元からfloat.hoverHeightの高さを目指します。飛行するペットは、follow.speed: 1では毎秒5ブロック、follow.leashDistance(12)を超えると毎秒8ブロックで追従します。その地点に着くか、飼い主から3ブロック(追従距離の0.6)以内に入ると、追従をやめます。 follow.teleportDistance(24)を超えると、ペットは飼い主の隣にテレポートします。3秒間続けてどこにも進めなかった場合もテレポートします。たとえば、飼い主へ向かう経路がない、柵や水際で手前で終わる経路、飛行するペットの進路にある壁などです。追いつきのテレポートは、ペットを飼い主に近づける場合にしか行われず、歩行や遊泳するペットを飼い主自身のブロックに置くことはありません。- 追従距離の内側では、飛行するペットは飼い主の
follow.roamRadius(5)以内のランダムな地点へ漂い、漂いの合間にその場で上下に揺れます。高さは地面からfloat.hoverHeightで、float.hoverVarianceの分だけ上下します。歩行する種族はうろつき、ときどき近くのプレイヤーを見ます。遊泳する種族は水中で泳ぎます。 - 飼い主がペットを、繁殖用のエサやリード以外のもので右クリックすると、ペットは犬のように、ゆるやかに上下に揺れながらその場にとどまります。次に同じようにクリックすると、再び追従します。これを無効にするには
follow.stay: falseを設定します。他のプレイヤーによる所有ペットへのクリックは何も起こしません。
follow.speedは、渡りの飛行を除く、すべての同梱行動の速度に掛け合わされます。飛行するボディは直接操縦されます。それ以外のボディは、バニラの経路探索で同じ地点へ歩く、または泳ぎます。速度を参照してください。泳がないペットは、水や溶岩の底に沈まず、その表面の上でホバリングします。
野生のペットは、スポーンした場所の周りで同じようにうろつきます。
外に出ているペットは、飼い主がログアウトするとワールドから消え、次にログインしたときに飼い主の隣に再び現れます。チャンクのアンロード、ワールドの変更、長距離のテレポートで失われたペットは、1秒以内に飼い主の隣に戻ります。
ペットメニュー
/fmm petsは、プレイヤーのコレクションを、menuTitleというタイトルのチェストメニューとして開きます。最大54匹まで表示されます。
- 各項目には、種族の
iconアイテムが表示され、種族がiconItemModelを設定していればそれも使われます。外に出ているペットのアイコンには、エンチャントのような輝きが付きます。 - 説明文には、種族、バリアント(種族のモデルと異なる場合)、年齢、ペットがプレイヤーと一緒にいるかどうかが表示されます。
- 項目をクリックすると、そのペットを連れて行くか、家に帰します。
maxEquippedPetsを超えて連れて行こうとすると、maxEquippedMessageで拒否されます。 - ペットを持たないプレイヤーには、メニューの代わりに
noPetsMessageが表示されます。
コレクションはプレイヤーに保存され、プレイヤーの永続データ内にJSONとして記録されるため、プレイヤーのセーブファイルとともに移動し、データベースは不要です。種族がインストールされなくなったペットは、バリアのアイコンでコレクションに残り、外には出てきません。
ダメージと死亡
| ペット | ダメージ |
|---|---|
所有、COSMETICモード | すべてのダメージを無視します |
所有、CREATURESモード | 飼い主からのダメージを無視します。petsInvulnerableToPlayersがtrue(デフォルト)の間は、他のプレイヤーからのダメージも無視します。それ以外のダメージは受けます |
| 野生 | 通常のMobと同様にダメージを受けます |
傷つけられないペットへの左クリックは攻撃として数えられないため、モデルは赤く点滅しません。
所有ペットが死ぬと、家に帰り、/fmm petsから再び連れ出せます。petsDiePermanently: trueの場合は、代わりにコレクションから外れます。死んだ野生のペットは失われます。
野生のペット
野生のペットが存在するのはCREATURESモードだけです。バニラの家畜と同様に生息し、ほとんどはチャンクの生成とともにワールドに現れ、その場にとどまり、デスポーンしません。
新しいチャンクへの配置
チャンクが生成されると、FreeMinecraftModelsはwildGenerationChance(0.01)で抽選します。成功すると、その場所に立てる種族の中からwildSpawn.weightで選んだ種族の1グループを、ランダムに選んだブロック列の周りの地表に配置します。この抽選は、グループを置くたびに繰り返されます。0.9を超える値は0.9として扱われるため、チャンクが際限なく埋まることはありません。上限、プレイヤー、時刻、Mobスポーンのゲームルールは、この配置を制限しません。
プレイヤー周辺の補充
wildSpawnIntervalTicks(400、20未満にはなりません)ごとに、スペクテイターモードでない各プレイヤーから8チャンク以内の読み込み済みチャンクに、野生のペットを追加する処理が走ります。
- 各チャンクは、確率
wildSpawnChunkChance(0.01)で試されます。 - 地点は、最も近いプレイヤーとワールドスポーンから24ブロックより離れ、そのプレイヤーから128ブロック以内である必要があります。
- その地点の近くにいるすべてのプレイヤーの8チャンク以内に、全種族合わせて
wildPetCapPerPlayer(6)匹の野生のペットがいると、補充は止まります。各種族のwildSpawn.cap(4)が、その種族をさらに制限します。 - 補充は、ワールドのMobスポーンのゲームルールと、各種族の
wildSpawn.timeに従います。
渡りの個体は、これらの上限には数えられません。
野生のペットが待機する場所
野生のペットのチャンクがアンロードされる、またはティックされなくなると、その種族、バリアント、位置、ホームがplugins/FreeMinecraftModels/data/wild_pets.ymlに保存されます。そのチャンクが読み込まれていて、そこから8チャンク以内にプレイヤーがいると、戻ってきます。このファイルは、ワールドが保存されるたびと、FreeMinecraftModelsのシャットダウン時やリロード時に書き込まれます。
インストールされなくなった種族の野生のペットは、ファイル内で待ち続けます。他のプラグインに削除された生きている野生のペットは、死んだ場合と同様に失われます。
夜の渡り
ときどき、渡りをする種族の群れが夜空をプレイヤーの頭上で横切り、横切った後に去っていきます。種族が渡りをするのは、そのlocomotionがFLYINGで、ペットファイルにmigration:セクションがあり、行動がmigrateを実行する場合です。FLYINGのデフォルトにはmigrateが含まれます。種族にバリアントがある場合、渡りの個体がまとい得るすべてのバリアントがmigrateを実行する必要があります。これらの条件を満たさないmigration:セクションを持つ種族は、群れを一切発生させず、migration.weightが0またはmigration.enabledがfalseでない限り、読み込み時に警告をログに出力します。
- スケジュールは、通常の(オーバーワールド型の)ワールドの夜間に、5秒ごとに確認されます。各プレイヤーは、1晩に1回、
migrations.chancePerNight(0.15)で抽選されます。当選すると、夜の残りの時間のうち、夜明けまでに横断全体が終わるのに十分早い時刻が選ばれます。 - その時刻に、プレイヤーが開けた空の下にいて、
migrations.viewDistance以内に他の群れがおらず、空を飛んでいる群れがmigrations.maxActiveFlocks(3)未満であれば、群れが始まります。そうでなければ、夜が尽きるまで再試行します。 - 群れは
minFlockSizeからmaxFlockSize(8から14)の個体からなり、プレイヤーとその下の地面のうち高い方からaltitudeブロック(28)上を、speedブロック/ティック(0.15)で飛びます。直線の経路で、durationSeconds(90)の中間でプレイヤーの真上を通過します。ワールドのシミュレーション距離が12チャンク未満の場合は、群れが個体のティックされる場所から始まるため、それより早くなります。 - 個体は、その種族の通常の野生のペットで、完全なモデルとアニメーションをまとい、種族のサイズの
migration.scale倍で、最大の明るさで照らされ、migrations.viewDistance(160)ブロックから見えます。ただし、クライアント側でも、群れの下のチャンクが描画距離内にある必要があります。 CREATURESモードでは、渡りの個体に手が届いたプレイヤーはそれを手懐けることができ、手懐けた個体は群れから外れます。横断が終わると、まだ飛んでいる個体は削除されます。
/fmm petmigrate [species]は、時刻、空、他の群れに関係なく、すぐに群れをあなたの頭上に飛ばします。種族を指定すると、その種族にmigration:セクションがなくても開始しますが、個体が経路を飛ぶのはmigrateを実行する場合だけです。指定しない場合は、渡りをする種族をmigration.weightで選びます。
migrationセクション
| キー | デフォルト | 意味 |
|---|---|---|
enabled | true | falseにすると、他の値を保ったまま、その種族の渡りを無効にします |
model | 空 | すべての個体に使う固定のモデル。空の場合は、野生のスポーンと同様に、種族のバリアントから選びます |
scale | 1 | 種族のscaleに対する、渡りの個体のサイズ |
animation | 空 | 飛行中にループ再生するアニメーション。空の場合は、モデル自身のidleとwalkを再生します |
weight | 1 | 複数の種族が渡りをする場合に、この種族が選ばれる頻度。0にすると夜のスケジュールから外れます |
行動
ペットが自分で行うことはすべて、行動モジュール、つまりplugins/FreeMinecraftModels/pet_behaviors/にあるLuaファイルによって決まります。FreeMinecraftModelsは15個を同梱しており、起動時と/fmm reload時に、その名前のファイルがなければ、各ファイルをそのフォルダに書き出します。削除した同梱モジュールは、次回の読み込みで戻ります。フォルダにすでにあるモジュールは、編集の有無にかかわらず上書きされず、書き出されたときのバージョンのまま残ります。お使いのFreeMinecraftModelsのバージョンが同梱するものを得るには、コピーを削除してリロードしてください。
各ペットは、その種族ファイルに列挙されたモジュールを、その種族の設定で実行します。/fmm reloadはモジュールとペットファイルを読み直し、すべてのペットを読み直した内容で復帰させます。モジュールを変更する、または自作するには、ペット行動モジュールを参照してください。
behaviorsリスト
behaviors:
- migrate
- stay
- follow_owner
- campfire: { radius: 20, night_only: false }
- drift
- hover
- sting:
effect: POISON
damage: 1
- 各エントリは、
.luaを除いたファイル名であるモジュール名、または設定付きの名前です。設定はインラインでname: { setting: value }と書くか、名前の下の行に、名前より2スペース深くインデントして書きます。 - エントリが省略した設定は、モジュールのデフォルトのままです。デフォルトは同梱モジュールと、各
.luaファイルの先頭に記載されています。 - ペットは、そのリストに挙げられたものだけを実行します。モジュールをリストから外せば、その種族はそれを一切行いません。
- リストの順序は、どの行動が実行されるかを決めません。それを決めるのは各モジュールの優先度で、ペットファイルからは変更できません。モジュールをコピーして、そこで優先度を変更してください。順序が意味を持つのは、2つのモジュールが衝突する場合だけで、その場合は最初のものが残ります。
- 2回列挙されたモジュールは、最初のエントリの設定で1回だけ実行され、コンソールが警告します。
リストがない場合のデフォルト
behaviors:リストのない種族ファイルは、そのlocomotionのデフォルトを実行します。
locomotion | デフォルトの行動 |
|---|---|
FLYING | migrate、stay、follow_owner、drift、hover |
GROUNDED、AMPHIBIOUS | stay、follow_owner、wander、idle_look |
AQUATIC | stay、follow_owner、swim |
STATIONARY | stay、follow_owner |
リストはこれらのデフォルトに追加されるのではなく、置き換えます。そのため、モジュールを追加するリストは、残したいデフォルトも列挙する必要があります。behaviors: []は、モジュールをまったく実行しません。リストでないbehaviorsの値は警告とともに無視され、その種族はデフォルトを実行します。
バリアントの行動
バリアントをマップとして書くと、それをまとうペットに、追加のモジュールや別の設定を与えられます。
variants:
- firefly
- model: firefly_blue
weight: 0.5
behaviors:
- night_glow: { light: 10 }
- crop_drizzle
- バリアントのマップには、
model、weight(デフォルトは1)、behaviorsを指定できます。それ以外のキーは警告とともに無視されます。 - バリアントをまとうペットは、種族のリスト(またはその
locomotionのデフォルト)に、バリアントのエントリを加えたものを実行します。両方のリストが挙げているモジュールは、種族のリストでの位置を保ち、種族の設定の上にバリアントの設定が重ねられます。バリアントのその他のモジュールは、種族自身のものの後に続きます。 - 子供は、
babyModelをまとっている間も、そのバリアントのリストを実行します。
設定値
各設定は、そのデフォルトの型を持ちます。数値、trueまたはfalse、テキスト、テキストのリストのいずれかです。
- 意味が明らかな値は、別の形式でも受け付けられます。引用符付きの数値(
"8"など)、大文字小文字を問わない"true"や"false"、1項目のリストの代わりの1つの単語です。 - 数値や
true/falseを与えられたテキスト設定は、YAMLが読み取ったとおりの値を取るため、onやyesはtrueになります。そのような単語は引用符で囲んでください。 - リストは、
[CAMPFIRE, SOUL_CAMPFIRE]のように角括弧で書くか、-で始まる1行1項目で書きます。カンマやスペースを含むテキストは、リストとして読み取られません。 - モジュールにない設定、値のない設定、空のエントリを含むリスト、型の誤った値は、ペットファイルの名前を示す警告をログに出力し、デフォルトが残ります。クリーチャーは引き続き読み込まれます。
同梱モジュール
| モジュール | 優先度 | 種類 | 内容 |
|---|---|---|---|
migrate | 1 | 行動 | 夜の渡りの経路を飛ぶ |
stay | 5 | 行動 | 待機を命じられた場所にとどまる |
follow_owner | 10 | 行動 | 飼い主についていく |
campfire | 15 | 行動 | 夜に火の灯った焚き火の周りを回る |
day_perch | 18 | 行動 | 昼に葉や地面の上で休む |
rain_bloom | 19 | 行動とセンサー | 雨の中で膨らみ、より多く漂う |
drift | 20 | 行動 | アンカーの周りのランダムな地点へ飛ぶ |
wander | 20 | 行動 | アンカーの周りの立てる場所へ歩く |
swim | 20 | 行動 | アンカーの周りの水中の地点へ泳ぐ |
hover | 30 | 行動 | 漂いの合間にその場で上下に揺れる |
idle_look | 30 | 行動 | ときどき近くのプレイヤーを見る |
night_glow | センサー | 夜にモデルを光らせる | |
sting | センサー(複数) | 触れたプレイヤーや敵対Mobを刺す | |
crop_drizzle | センサー | 自分がホバリングしている真下の作物を育てる | |
owner_effect | センサー | 飼い主にポーションエフェクトを与える |
優先度の数値が小さい行動は、数値が大きい実行中の行動から主導権を奪うため、追従は焚き火に勝ち、焚き火は漂いに勝ちます。センサーはペットを動かしません。実行中の行動と並行して動作します。
ペットのアンカーは、ペットがその周りをうろつく対象です。飼い主、または野生のペットならスポーンした場所です。ペットは、待機を命じられておらず、野生であるか飼い主のfollow.distance以内にいる間、落ち着いた状態(settled)です。
速度
モジュールが要求する速度は、そのspeed設定にfollow.speedを掛けたものです。飛行するボディは、その数値のブロック/ティックで、最大4で飛びます。0.05は毎秒1ブロックです。歩行や遊泳するボディは、バニラのナビゲーションでそこへ経路を進みます。その速度は、この数値の4倍を倍率としてボディの種類自身の移動速度に掛けたもので、その移動速度の4分の1を下回ることはありません。speedが0だと、歩行や遊泳するボディは静止します。
migrate
ペットが夜の渡りを飛んでいる間、他のすべての行動に優先して、群れの経路を群れの速度で飛びます。横断が終わるか、プレイヤーがそのペットを手懐けると止まります。行動がこれを実行しない種族は、群れを一切発生させません。設定はありません。
stay
飼い主の待機のクリックの後、ペットはゆるやかに上下に揺れながらその場にとどまります。揺れは、ボディ自身の媒体の中で行われます。飛行するペットは空中で、歩行するペットは地面の上で、遊泳するペットは水中で揺れ、水中では待機を命じられた深さを保ちます。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.03 | 速度を参照 |
bob_ticks | 40 | 揺れの間隔のティック数 |
bob_radius | 0.5 | 1回の揺れがその地点から動かせるブロック数 |
同梱の移動行動はすべて、ペットが待機を命じられている間は動かないため、リストにstayがないペットは揺れません。
follow_owner
追従、待機、うろつきで説明したとおり、所有ペットを飼い主のそばに保ちます。種族ファイルからfollow.distance、follow.leashDistance、follow.teleportDistance、float.hoverHeightを読み取ります。
追いつきのテレポートは、飼い主から2ブロック以内の、ペット自身の媒体の中に着地します。飛行するペットならホバリング帯、歩行するペットなら立てる地面、遊泳するペットなら6ブロック先までの水中、両生のボディなら地面、なければ水中です。ペットが今いる位置より飼い主に1ブロック以上近づく場合にのみ着地し、歩行や遊泳するペットは飼い主から1ブロック以上離れた場所にしか着地しません。どこにも収まらない場合は、さらにstuck_ticks後にもう一度試します。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.25 | 追従速度。速度を参照。0では、ペットは追いつきのテレポートでしか追従しません |
leash_urgency | 1.6 | follow.leashDistanceを超えたときの速度倍率 |
trail_back | 1.5 | ペットが目指す、飼い主の後ろのブロック数 |
stuck_ticks | 60 | ペットが飼い主の隣にテレポートするまでに、どこにも進めずに続くティック数 |
drift
飛行する種族向けです。ペットは、アンカーのfollow.roamRadius以内のランダムな地点へ、ホバリング帯(地面からfloat.hoverHeightの高さで、float.hoverVarianceの分だけ上下)の範囲内で飛び、その後休みます。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.06 | 速度を参照 |
drift_ticks | 160 | 1回の漂いが続く最大ティック数 |
stuck_ticks | 20 | 漂いをあきらめるまでに、動かずに続くティック数 |
rest_ticks | 60 | 漂いの後にペットが休むティック数 |
rest_random_ticks | 80 | 休みに、0からこの値マイナス1までのランダムなティックを加える |
hover
飛行する種族向けです。他の移動行動が実行されていない間、ペットはその場で上下に揺れます。bob_ticksごとに、最大でfloat.hoverVarianceの半分だけ上下に動きます。地面からfloat.hoverHeightの高さをcorrect_aboveブロックを超えてはずれたペットは、代わりにまっすぐその高さへ戻ります。地面は最大12ブロック下まで探します。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.03 | 速度を参照 |
bob_ticks | 30 | 揺れの間隔のティック数 |
correct_above | 1.5 | ホバリング高度からこのブロック数はずれると、まっすぐ戻る |
wander
歩行する種族向けです。ペットはアンカーの近くの立てる場所へ歩き、休み、また歩きます。野生のペットは、スポーンした場所のfollow.roamRadius以内の地点を選びます。所有ペットは、飼い主のfollow.roamRadius以内で、かつfollow.distanceの0.8倍以内の地点を選ぶため、到着した途端に追従が始まることはありません。歩行は、目的地の1.5ブロック以内に着くか、walk_ticks後、または動かずにstuck_ticksが経過すると終わります。水の上や長い落差の上のように、収まる場所がない場合は、休みが終わるのを待ってから、もう一度探します。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.15 | 速度を参照 |
walk_ticks | 120 | 1回の歩行が続く最大ティック数 |
stuck_ticks | 20 | 歩行をあきらめるまでに、動かずに続くティック数 |
rest_ticks | 80 | 歩行の後にペットが休むティック数 |
rest_random_ticks | 120 | 休みに、0からこの値マイナス1までのランダムなティックを加える |
idle_look
ときどき、ペットはrange以内にいる最も近いプレイヤーをlook_ticksの間見て、その後休みます。これは視線だけを取るため、ペットを動かす行動があればそちらが優先され、クリエイティブやスペクテイターモードのプレイヤーを見ることはありません。rangeが0だと無効になります。STATIONARYのボディは視線を向けないため、そのデフォルトにはこのモジュールが含まれません。
| 設定 | デフォルト | 意味 |
|---|---|---|
range | 8 | プレイヤーを見る範囲のブロック数 |
look_ticks | 40 | 1回の注視が続く最大ティック数 |
rest_ticks | 100 | 注視の間隔のティック数 |
rest_random_ticks | 100 | 注視の間隔に、0からこの値マイナス1までのランダムなティックを加える |
swim
遊泳する種族向けです。ペットはアンカーの近くの水中の地点へ、水面からmin_depthからmax_depthブロック下の範囲で泳ぎ、休み、また泳ぎます。wanderと同様にアンカーの周りの地点を選びますが、水中だけです。陸に打ち上げられた遊泳するペットは、そこで待機します。所有ペットは、飼い主が離れ、follow_ownerの追いつきが飼い主の隣に水を見つけると、水に戻ります。
| 設定 | デフォルト | 意味 |
|---|---|---|
speed | 0.15 | 速度を参照 |
min_depth / max_depth | 0.5 / 3 | 水面からの深さのブロック数。0から16 |
swim_ticks | 120 | 1回の遊泳が続く最大ティック数 |
stuck_ticks | 20 | 遊泳をあきらめるまでに、動かずに続くティック数 |
rest_ticks | 40 | 遊泳の後にペットが休むティック数 |
rest_random_ticks | 60 | 休みに、0からこの値マイナス1までのランダムなティックを加える |
campfire
夜になると、落ち着いた状態のペットは、radiusブロック以内で最も近い火の灯った焚き火へ漂っていき、その煙の中をゆっくり回ります。所有ペットは、飼い主に十分近く、回っても追従が始まらない焚き火だけを選びます。ペットは、火がまだ灯っているかを1秒に1回確認します。
| 設定 | デフォルト | 意味 |
|---|---|---|
radius | 12 | 火を探すブロック数。1から32 |
height | 2.5 | ペットが回る、火の上のブロック数 |
ring | 0.8 | 円の半径 |
night_only | true | 日没から夜明けの間だけ |
wild / pets | true / true | 野生のペットと所有ペットが集まるかどうか |
blocks | [CAMPFIRE, SOUL_CAMPFIRE] | 対象となる火。この2つだけが機能します |
soul_variants | [] | ソウルキャンプファイアにだけ引き寄せられるバリアントのモデル。その場合、他のすべてのバリアントは通常の焚き火だけを対象にします。空の場合は、どのバリアントも列挙されたどの火も対象にします |
search_seconds | 5 | 火を探す間隔の秒数。最小は1 |
speed | 0.06 | 速度を参照 |
day_perch
昼間、落ち着いた状態のペットは、その下にある最も近い葉、またはすぐ下の地面の上に降りて、かすかに上下に揺れながら休みます。日没時、雨が当たったとき、飼い主が追従範囲の外へ歩いていったときに飛び立ちます。所有ペットは、飼い主のfollow.distance以内にある止まり場所だけを選びます。水の上や長い落差の上のように、座れる場所が見つからない場合は、5秒後にもう一度探します。
| 設定 | デフォルト | 意味 |
|---|---|---|
height | 0.3 | 葉や地面の上で休む高さのブロック数。0から8 |
search_radius | 2 | 葉を探す横方向のブロック数。0から4 |
wild / pets | true / true | 野生のペットと所有ペットが止まるかどうか |
speed | 0.06 | 止まり場所から1ブロックより遠い間の速度。速度を参照 |
settle_speed | 0.03 | 最後の1ブロックの速度 |
rain_bloom
雨がペットに当たっている間、ペットは膨らみ、アンカーの周りをより頻繁に、より高く、より速く漂います。雨が止むか、屋根の下に入ると、元の大きさに縮みます。雨がペットに当たるのは、開けた空の下で、雨が降る程度に暖かく湿ったバイオームで、嵐の間です。膨らむ動作は4ティックごとに実行されるセンサーで、漂う動作は優先度19の行動であるため、雨の中ではdriftの代わりに実行されます。
| 設定 | デフォルト | 意味 |
|---|---|---|
scale_multiplier | 1.25 | 雨の中でのサイズ。通常のサイズに対する倍率。0.1から16 |
scale_seconds | 3 | 膨らむ、または縮むのにかかる秒数 |
drift_frequency | 2.5 | 漂いの合間の休みが、rest_ticksとrest_random_ticksが示す長さの何分の1になるか。10ティック未満にはなりません |
rise | 1 | 漂うときにより高く上がるブロック数 |
speed_multiplier | 1.4 | 漂う速度が何倍になるか |
speed | 0.06 | speed_multiplierを掛ける前の漂う速度。速度を参照 |
drift_ticks | 120 | 1回の漂いが続く最大ティック数 |
stuck_ticks | 20 | 漂いをあきらめるまでに、動かずに続くティック数 |
rest_ticks / rest_random_ticks | 60 / 80 | drift_frequencyが短縮する休み |
night_glow
夜間、ペットのいる場所の光に関係なく、モデルの表示ボーンが固定の明るさで照らされます。太陽のないワールドは夜として扱われます。センサーは2秒ごとに確認します。Javaプレイヤーのみ対象で、Bedrockプレイヤーにはワールドの光でモデルが見えます。
| 設定 | デフォルト | 意味 |
|---|---|---|
night_only | true | falseにすると昼も夜も光る |
light | 15 | 明るさのレベル。0から15 |
lantern_bone | lantern | この名前のボーンを持つモデルは、光っている間animationをループ再生する |
animation | glow | ランタンボーン用のアニメーション |
sting
野生のペットは、クリエイティブやスペクテイターモードを除き、モデルに触れたプレイヤーを刺します。所有ペットは、モデルのヒットボックスからreach以内に入った敵対Mobを刺し、プレイヤーは決して刺しません。成体は刺すときにattackアニメーションを再生します。接触は4ティックごとに、近くのMobは10ティックごとに確認されます。
| 設定 | デフォルト | 意味 |
|---|---|---|
wild / pets | true / true | 野生のペットがプレイヤーを刺すか、所有ペットが敵対Mobを刺すか |
effect | SLOWNESS | ポーションエフェクトの名前。エフェクトなしはNONE |
duration_ticks | 60 | エフェクトの長さ(ティック)。1から6000 |
amplifier | 0 | エフェクトのレベル。0はレベルI |
damage | 0 | 刺すたびのダメージ(ハート半分単位) |
cooldown_seconds | 3 | このペットが同じ被害者を再び刺せるようになるまでの秒数 |
reach | 0.5 | 所有ペットがMobを刺せる、モデルのヒットボックスからのブロック数。0から4。野生のペットが刺すには、プレイヤーがモデルに触れる必要があります |
存在しないeffect名は、種族と名前ごとに1回警告をログに出力し、刺してもエフェクトは適用されません。
crop_drizzle
ペットが作物の上で静止してホバリングしている間、そこに小雨が降り、interval_secondsごとに作物が1段階成長することがあります。作物とは、Minecraftのcropsタグのブロック、ネザーウォート、スイートベリーの茂みです。ペットは空気だけを通して真下を見ます。成長はBlockGrowEventとして送られるため、保護や農業のプラグインが拒否できます。野生のペットにも所有ペットにも適用されます。
| 設定 | デフォルト | 意味 |
|---|---|---|
chance | 0.1 | 間隔ごとに作物が成長する確率。0から1 |
interval_seconds | 5 | 試行の間隔の秒数。最小は1。確認は1秒に1回なので、端数は次の整数秒まで待ちます |
depth | 4 | ペットの下で作物を探すブロック数。1から8 |
owner_effect
所有ペットが外に出ていて、飼い主からrangeブロック以内にいる間、飼い主は暗視や水中呼吸などのポーションエフェクトを得ます。エフェクトは15秒続き、1秒ごとに更新されるため、ちらつくことはなく、ペットが家に帰る、または飼い主が範囲から出てから15秒以内に切れます。アイコンは表示されますが、パーティクルは表示されません。飼い主がすでに、それと同じかより強く、同じかより長く続くエフェクトを持っている場合(飲んだポーションなど)、ペットはそれに手を加えません。
暗視、水中呼吸、移動速度上昇、採掘速度上昇、火炎耐性など、安定したエフェクトに向いています。再生能力、毒、衰弱など、残り時間に応じて働くエフェクトは、毎秒更新すると正しく動作しません。
| 設定 | デフォルト | 意味 |
|---|---|---|
effect | NIGHT_VISION | ポーションエフェクトの名前 |
amplifier | 0 | エフェクトのレベル。0はレベルI |
range | 16 | ペットからのブロック数 |
旧来のワールドインタラクションのセクション
行動モジュールが導入される前に書かれたペットファイルには、campfire:、rainBloom:、glow:、sting:、dayPerch:、drizzle:のセクションがあることがあります。これらは今では何もせず、ファイルの読み込み時にそれぞれ警告をログに出力します。
firefly.pet.yml: the campfire section is ignored now that world interactions are behavior modules; list the campfire module under behaviors: instead (see plugins/FreeMinecraftModels/pet_behaviors/campfire.lua for its settings).
単純なglow: trueの行も同じ警告になり、文言はthe glow settingとなります。セクションが無効にされていた場合(enabled: false、またはglow:がtrue以外)や、ファイルがすでにそのモジュールを列挙している場合、警告は削除を求めるだけです。
インタラクションを維持するには、そのモジュールを列挙し、設定の名前を変更します。
| 旧セクション | モジュール | 名前が変わった設定 |
|---|---|---|
campfire | campfire | nightOnlyはnight_onlyに、soulVariantsはsoul_variantsに、searchSecondsはsearch_secondsに |
rainBloom | rain_bloom | scaleMultiplierはscale_multiplierに、scaleSecondsはscale_secondsに、driftFrequencyはdrift_frequencyに、speedMultiplierはspeed_multiplierに |
glow | night_glow | nightOnlyはnight_onlyに、lanternBoneはlantern_boneに |
sting | sting | durationTicksはduration_ticksに、cooldownSecondsはcooldown_secondsに |
dayPerch | day_perch | searchRadiusはsearch_radiusに |
drizzle | crop_drizzle | intervalSecondsはinterval_secondsに |
その他の設定は名前がそのままです。enabledは削除してください。モジュールをリストから外すことが、それを無効にする方法です。behaviors:リストのないファイルは、そのlocomotionのデフォルトだけを実行するため、それらも列挙してください。焚き火と発光を維持していた飛行する種族の場合は次のようになります。
behaviors:
- migrate
- stay
- follow_owner
- campfire: { radius: 12 }
- drift
- hover
- night_glow
migration:は引き続きペットファイルのセクションです。migrationセクションを参照してください。
傾きと中心合わせ
飛行や遊泳するクリーチャーは、移動に合わせて傾き、自身の中央を軸に回転したほうが、たいてい見栄えがよくなります。
orientationは、モデルが移動中にどう傾くかを設定します。UPRIGHT(デフォルト)は、進む方向を向くだけです。TOP_FIRSTはクラゲのように上部が先頭になります。移動方向に向かって傾き、巡航中は横倒しになり、潜るときは上下逆さまになります。FRONT_FIRSTは鳥や魚向けです。上昇や下降ではピッチし、旋回ではバンクします。どのスタイルも、ペットが止まると直立に戻ります。移動方向への傾きを参照してください。centerOnBodyは、モデルを、ボディの足元に立たせる代わりに、キューブの中央が非表示のボディの中央に来るように描画します。そのためモデルはボディを中心に移動し、旋回し、傾き、そのクリックボックスはプレイヤーに見えているものの上に位置します。FLYINGとAQUATICの種族ではデフォルトがtrueで、それ以外ではfalseです。モデルをボディに中心合わせするを参照してください。
種族ファイルのリファレンス
<species>.pet.ymlは、plugins/FreeMinecraftModels/models/の下のどこにでも置けますが、通常は使用するモデルの隣に置きます。FreeMinecraftModelsは、名前が.pet.ymlで終わるすべてのファイルを、起動時と/fmm reload時に読み込みます。.pet.ymlの前のファイル名が、デフォルトの種族IDです。
isEnabled: true
species: firefly
model: firefly
name: '&eFirefly'
body: ALLAY
scale: 1.0
health: 20
icon: GLOW_BERRIES
iconItemModel: ''
tamingFood:
- GLOW_BERRIES
breedingFood:
- GLOW_BERRIES
tameChance: 0.34
babyModel: ''
babyScale: 0.5
babyGrowthMinutes: 20
breedingCooldownMinutes: 5
loveSeconds: 30
variants:
- firefly
- firefly_blue:0.5
follow:
distance: 5
leashDistance: 12
teleportDistance: 24
roamRadius: 5
speed: 1.0
stay: true
float:
hoverHeight: 1.5
hoverVariance: 0.75
locomotion: FLYING
centerOnBody: true
orientation:
style: FRONT_FIRST
startSpeed: 0.6
fullSpeed: 4.0
maxTilt: 180
turnSpeed: 180
wildSpawn:
enabled: true
weight: 10
minGroup: 1
maxGroup: 3
placement: AIR
minLight: 0
maxLight: 15
cap: 4
worlds: []
environments:
- NORMAL
biomes:
- minecraft:plains
time: NIGHT
minY: -64
maxY: 320
behaviors:
- migrate
- stay
- follow_owner
- campfire: { radius: 12 }
- drift
- hover
- night_glow: { light: 15 }
migration:
scale: 2.0
識別と外観
| キー | デフォルト | 意味 |
|---|---|---|
isEnabled | true | falseにするとファイルをスキップします |
species | ファイル名 | 小文字化された種族ID。プレイヤーの保存済みペットと/fmm petadminがこれを使うため、プレイヤーがペットを所有した後は変更しないでください。2つのファイルが同じIDを定義した場合は、パスで先のものが残り、コンソールが警告します |
model | ファイル名 | ペットがまとうモデル。読み込まれていない場合はコンソールが警告し、ペットはスポーンできません |
name | ファイル名 | ペットの上とメッセージに表示される名前。&のカラーコードに対応します |
body | ALLAY | モデルを載せるバニラのMobタイプ。移動時の当たり判定には、このMobのサイズが使われます |
scale | 1 | 全体のサイズ。最小は0.0625 |
health | 20 | ボディの最大体力。最小は1 |
icon | GLOW_BERRIES | メニューのアイコンアイテム |
iconItemModel | 空 | メニューのアイコンに使う、リソースパックのアイテムモデル(namespace:path) |
variants | [] | 色のバリアント。model、model:weight、またはmodel、weight、behaviorsを持つマップで指定します(バリアントの行動を参照)。野生のスポーンは重みで1つを選び、手懐けられたペットは自分のものを保ち、子供は親のものを受け継ぎます。空の場合はmodelだけです。バリアントは同じボーンとアニメーションを共有するべきです |
手懐けと繁殖
| キー | デフォルト | 意味 |
|---|---|---|
tamingFood | [] | 野生の成体を手懐けるアイテム名 |
breedingFood | [] | 所有する成体を発情状態にするアイテム名 |
tameChance | 0.333 | 1回のエサやりで手懐けられる確率 |
babyModel | 空 | 子供の間にまとうモデル。サイズはbabyScale。空の場合はバリアントのモデルを使います |
babyScale | 0.5 | scaleに対する子供のサイズ |
babyGrowthMinutes | 20 | 子供が成体になるまでの分数 |
breedingCooldownMinutes | 5 | 親が再び繁殖できるまでの分数 |
loveSeconds | 30 | エサを与えられた成体が相手を待つ時間 |
移動
followとfloatの値は、記載のとおり、同梱の行動モジュールが読み取ります。
| キー | デフォルト | 意味 |
|---|---|---|
follow.distance | 5 | 飼い主がこれより離れるとfollow_ownerが追従します。この内側では、ペットは落ち着いた状態で自由にうろつきます |
follow.leashDistance | 12 | これを超えるとfollow_ownerが急ぎます |
follow.teleportDistance | 24 | これを超えるとfollow_ownerがペットを飼い主のもとへテレポートさせます |
follow.roamRadius | 5 | drift、rain_bloom、wander、swimがペットをアンカーからどこまで連れて行くか |
follow.speed | 1 | migrateを除くすべての同梱行動の速度に掛けられます。最小は0.05 |
follow.stay | true | 右クリックでペットに待機を命じるかどうか |
float.hoverHeight | 1.5 | 飛行するペットが保つ地面からのブロック数 |
float.hoverVariance | 0.75 | その高さからどれだけ外れてよいか |
locomotion | FLYING | ボディの動き方:FLYING、GROUNDED、AQUATIC、AMPHIBIOUS、STATIONARYのいずれか。デフォルトの行動も決まります |
centerOnBody | FLYINGとAQUATICではtrue | 傾きと中心合わせを参照 |
orientation.style | UPRIGHT | UPRIGHT、TOP_FIRST、FRONT_FIRST |
orientation.startSpeed | 0.6 | これ未満の毎秒ブロック数ではモデルは直立を保ちます |
orientation.fullSpeed | 4.0 | 進行方向に完全に揃う毎秒ブロック数 |
orientation.maxTilt | 180 | 傾きの最大値(度)。180では、上部が先頭のモデルが上下逆さまになれます |
orientation.turnSpeed | 180 | 傾きが変化できる毎秒あたりの度数 |
野生のスポーン
これらのキーはCREATURESモードでのみ適用されます。空のリストはすべてを許可します。
| キー | デフォルト | 意味 |
|---|---|---|
wildSpawn.enabled | true | 種族が野生に生息するかどうか |
wildSpawn.weight | 10 | 同じ場所にスポーンし得る他の種族に対する重み。0では決してスポーンしません。古いchanceキー(0から1)がありweightがないファイルは、chanceの10倍を使います |
wildSpawn.minGroup / maxGroup | 1 / minGroup | グループのサイズ |
wildSpawn.placement | locomotionから決定 | GROUND、WATER、WATER_SURFACE、AIR。FLYINGのデフォルトはAIR、AQUATICはWATER、その他はGROUNDです。AIRには固体で乾いた最上部のブロックが、WATER_SURFACEには水の最上部のブロックが必要で、どちらもその上に2ブロックの空きが必要です |
wildSpawn.minLight / maxLight | 0 / 15 | その地点に必要な明るさのレベル |
wildSpawn.cap | 4 | 補充で、プレイヤーから8チャンク以内にいる、この種族の野生のペットの最大数 |
wildSpawn.worlds | [] | ワールド名 |
wildSpawn.environments | [] | NORMAL、NETHER、THE_END |
wildSpawn.biomes | [] | minecraft:plainsなどのバイオームキー |
wildSpawn.time | ANY | 補充用の、ANY、DAY、NIGHT |
wildSpawn.minY / maxY | -64 / 320 | 高さの範囲 |
行動と渡り
| キー | デフォルト | 意味 |
|---|---|---|
behaviors | locomotionのデフォルト | 種族が実行する行動モジュールと、その設定。行動を参照 |
migration | なし | 夜の渡りにおける種族の見た目。migrationセクションを参照 |
旧来のcampfire、rainBloom、glow、sting、dayPerch、drizzleセクションは、警告とともに無視されます。旧来のワールドインタラクションのセクションを参照してください。
pets.ymlのリファレンス
plugins/FreeMinecraftModels/pets.ymlは、初回起動時に生成されます。変更は/fmm reloadで適用されます。
| キー | デフォルト | 意味 |
|---|---|---|
mode | COSMETIC | COSMETICまたはCREATURES。ペットモードを参照 |
maxEquippedPets | 0 | プレイヤーが同時に連れ出せるペットの数。0は無制限 |
petsInvulnerableToPlayers | true | 所有ペットが、飼い主以外のプレイヤーからのダメージを無視するかどうか |
petsDiePermanently | false | 死んだペットが飼い主のコレクションから外れるかどうか |
wildGenerationChance | 0.01 | 新しいチャンクに野生のペットのグループが置かれる確率(0から0.9)。グループを置くたびに再抽選されます |
wildSpawnIntervalTicks | 400 | 補充処理の間隔のティック数 |
wildSpawnChunkChance | 0.01 | 補充処理が、プレイヤーの近くの特定のチャンクを試す確率 |
wildPetCapPerPlayer | 6 | プレイヤーから8チャンク以内の全種族の野生のペットがこの数に達すると、補充が止まります |
migrations.enabled | true | 夜の渡りを実行するかどうか |
migrations.chancePerNight | 0.15 | プレイヤーが特定の夜に群れを得る確率(0から1) |
migrations.minFlockSize / maxFlockSize | 8 / 14 | 群れのサイズ |
migrations.altitude | 28 | プレイヤーまたは地面のうち高い方からのブロック数 |
migrations.speed | 0.15 | ブロック/ティック(0.15は毎秒3ブロック) |
migrations.durationSeconds | 90 | 群れが現れてから削除されるまでの秒数 |
migrations.viewDistance | 160 | プレイヤーが群れを見られる距離のブロック数 |
migrations.maxActiveFlocks | 3 | サーバー全体で同時に空を飛べる群れの最大数 |
migrations.species | [] | 渡りをしてよい種族ID。空の場合は、渡りができるすべての種族です(夜の渡りを参照) |
メッセージは&のカラーコードに対応します。$petはペットの名前で、maxEquippedMessageの$amountは上限です。
| キー | デフォルト |
|---|---|
tamedMessage | &aYou tamed a $pet&a! It follows you now. &f/fmm pets &amanages your pets. |
tameFailedMessage | &7The $pet &7eats it, but is not tamed yet. |
stayMessage | &7Your $pet &7stays here. |
followMessage | &7Your $pet &7follows you again. |
menuTitle | &2Your pets |
noPetsMessage | &7You have no pets yet. Tame a wild creature by feeding it its favorite food. |
equippedMessage | &a$pet &ais with you. |
unequippedMessage | &7$pet &7went home. |
maxEquippedMessage | &cYou can only have $amount pets with you at once. |
breedingCooldownMessage | &7Your $pet &7is not ready to breed again yet. |
bornMessage | &aA $pet &awas born! |
コマンドと権限
| コマンド | 権限 | デフォルト | 用途 |
|---|---|---|---|
/fmm pets | freeminecraftmodels.pets | true | ペットメニューを開きます |
/fmm petadmin mode [creatures|cosmetic] | freeminecraftmodels.pets.admin | op | ペットモードを表示します。指定した場合は切り替えてpets.ymlに保存します |
/fmm petadmin list | freeminecraftmodels.pets.admin | op | 読み込まれている種族を、ファイル、モデル、ボディ、手懐け用のエサ、繁殖用のエサとともに一覧表示します |
/fmm petadmin spawn <species> | freeminecraftmodels.pets.admin | op | 見ているブロックの上(最大12ブロック先)に野生のペットをスポーンします。CREATURESモードのみ |
/fmm petadmin give <species> | freeminecraftmodels.pets.admin | op | その種族の成体を自分のコレクションに追加し、maxEquippedPetsに達していなければ連れ出します |
/fmm petmigrate [species] | freeminecraftmodels.pets.admin | op | 今すぐ渡りの群れをあなたの頭上に飛ばします。夜の渡りを参照 |
3つのコマンドはすべてプレイヤー専用です。freeminecraftmodels.petsはペットメニューを制御し、デフォルトで全プレイヤーが持っています。freeminecraftmodels.pets.adminは/fmm petadminと/fmm petmigrateを制御し、デフォルトではオペレーターに付与され、freeminecraftmodels.*にも含まれます。手懐け、繁殖、ペットへの待機の指示には権限は不要です。
トラブルシューティング
行動モジュールに関する警告を探すには、コンソールでpet behavior、pet_behaviors、.pet.ymlを検索してください。各警告は、修正すべきペットファイルまたはモジュールファイルの名前を示します。
コンソールにPets are offと表示されます。
サーバーバージョンがFreeMinecraftModelsのNMS対応を持たないか、Minecraft 1.21.4より古いです。
コンソールにPet <species> (<file>) names model <model>, which is not loaded.と表示されます。
modelキーが、読み込まれなかったモデルIDを指しています。モデルが読み込まれなかったバリアントは何もログに出力せず、そのバリアントのペットは代わりに種族のmodelをまといます。モデルのファイル名(これがIDです)と、そのモデルのリロードログを確認してください。
コンソールにCould not spawn pet <species>: <cause>と表示されます。
その種族のペットを、示された理由でワールドに出せませんでした。たとえば、モデルが読み込まれていない、行動を開始できなかった、ボディをスポーンできなかった、などです。種族と原因ごとに、スポーンが何度再試行されても、次のリロードまで1回だけログに出力されます。
コンソールにthe <section> section is ignored now that world interactions are behavior modulesと表示されます。
ペットファイルに、旧来のワールドインタラクションのセクション、または警告がthe glow settingと呼ぶglow: trueの行が残っています。旧来のワールドインタラクションのセクションを参照してください。
コンソールにthere is no pet behavior <name> in pet_behaviors/と表示されます。
behaviorsリストが、ファイルのないモジュールを指しています。綴りを確認してください。警告は、近い名前があればそれを提案します。クリーチャーは、そのモジュールなしで読み込まれます。
コンソールにthe pet behavior <name> failed to loadと表示されます。
モジュールファイルにエラーがあります。直前の警告に、ファイルと、Luaエラーの場合は行が示されています。修正して/fmm reloadを実行するか、壊れた同梱モジュールを削除して、FreeMinecraftModelsに書き直させてください。
コンソールにthe pet behavior <module> has no setting <setting>、または<module>.<setting> must be ...と表示されます。
behaviorsリストの設定の綴りが誤っているか、型が誤っています。警告には、モジュールの設定、または必要な型が示され、デフォルトが残ります。設定値を参照してください。
コンソールにcannot run alongside the ones listed before itと表示されます。
リスト内の2つのモジュールが一緒に実行できません。たいていは、コピーしたモジュールをそのオリジナルと並べて列挙したときのように、両方が同じメモリ、行動、センサーを宣言しているためです。リストで先のものが実行され、もう一方は外されます。ペット行動モジュールを参照してください。
野生のペットが現れません。
modeがCREATURESであること、/fmm petadmin listにその種族が表示されることを確認してください。次にwildSpawnを確認します。enabled、0より大きいweight、許可するワールド、環境、バイオーム、明るさ、高さです。チャンクへの配置は生成時に1回だけ行われるため、すでに探索済みのエリアは補充によってしか満たされず、補充はデフォルトでは遅く、上限で止まります。/fmm petadmin spawn <species>は、ペット自体を確認するために1匹を配置します。
プレイヤーが/fmm petsを開けません。
freeminecraftmodels.petsが必要です。権限プラグインで取り除かれていない限り、デフォルトでは全プレイヤーが持っています。コマンドと権限を参照してください。
群れが空を横切りません。
群れが飛ぶのは、オーバーワールド型のワールドの夜間に、開けた空の下にいるプレイヤーの上で、かつmigration:セクションを持ち、その行動がmigrateを実行するFLYINGの種族に限られます。渡りができない種族は、読み込み時にhas a migration section, but ...と、その修正方法をログに出力します。/fmm petmigrate <species>は、すぐに1つ飛ばします。
ペットが何もしない、または更新後に何かをしなくなりました。
behaviorsリストを確認してください。ペットは、そのリストに挙げられたモジュールだけを実行し、リストはデフォルトを置き換えます。ワールドインタラクションがセクションだった頃のファイルは、そのモジュールを列挙するまで、それらを一切実行しません。
ペットの発光がBedrockプレイヤーに表示されません。 発光はJavaの表示ボーンだけを照らします。