フォーラムへの返信
- 投稿者投稿
クロスプ参加者(デフォルトアイテムはアイテムID、コンポーネント
minecraft:item_modelで指定可能)minecraft:conditionでflagsの検知(boolean true/false)、minecraft:range_dispatchでfloatsの検知、minecraft:selectでstringsの検知が出来る。
★プロパティをminecraft:custom_model_dataにするのが条件。
★indexでリストの何番目かの検知ができる。
★minecraft:modelでassets/(namespace)/models/(位置).jsonを指定して呼び出す。tintsを追加するとそのモデルでcolorsを設定してフルカラー出来る。(この方法はtypeがminecraft:custom_model_dataになる。)
初めのうちはジェネレーターサイトとか使うと便利です。misode氏制作ジェネレーターサイト
https://misode.github.io/assets/item/★giveコマンド等で以下の様な感じで設定します。
give @s minecraft:recovery_compass[minecraft:item_model="(itemsの位置/このコンポーネントを指定しなかった場合はアイテムID※リカバリーコンパスはminecraft:recovery_compass)", minecraft:custom_model_data={flags: [false, true, true], floats: [2.0, 4.0], strings: ["key", "admin", "none", "wait_up"], colors: [166.0, 233.5]}]
このリストの順番がindexの順番になる。とても簡単に書きましたので、何かわからない事があれば遠慮なく聞いてください。
※コメントが分かれているのは一度に送信できなかったためです。とても見づらくてすみません!
- この返信は1ヶ月前に
クロスプが編集しました。
クロスプ参加者★
assets/(namespace)/items/(custom_name).jsonでカスタムモデルデータを増やす。
クロスプ参加者重要な場所を★にしたので参考にしてください。従来の数値だけの方法から全く変わりました…
基本の流れとして、
アイテムにあるコンポーネントminecraft:item_modelから
リソースパックでassets/(namespace)/items/(custom_name).jsonに行き、
そこからカスタムモデルデータを割り当ててそれぞれをassets/(namespace)/models/(位置).jsonで呼び出すような感じです。
クロスプ参加者私が知っている限りでは
data/minecraft/worldgen/noise_settings/(地形ファイル).jsonで直接洞窟の生成を変更すると出来たと思います。
一応このファイルはほぼ全部の地形を担当しており、他のworldgenを読み込んだりも可能な為、このファイル自体には記述されていない可能性もあります。
洞窟の記述先はどこかにあると思います。ですがとても探しづらく、あまり詳しくない為自分からは詳しく教えられません。すみません!ジェネレーターサイトでプレビュー使えます。参考に。
デフォルトオーバーワールドのnoise_settings
https://misode.github.io/worldgen/noise-settings/?version=1.21.11&preset=overworld
クロスプ参加者コメントテスト
/gamemode creative
クロスプ参加者すみません、当方の環境が悪いのかもしれませんが、CODEを利用して投稿をするとエラーが発生しているかもしれません。
クロスプ参加者質問ありがとうございます。
オークの葉はデータパックのルートテーブルに「minecraft:blocks/oak_leaves」を作成すると上書きできます。
デフォルトのデータは下記の値になっています。
https://misode.github.io/loot-table/?version=1.21.6&preset=blocks/oak_leavesこの値を見ると、リンゴやオークの苗木等にconditionがいくつかあるのですが、その内容のそれぞれ1つにハサミやシルクタッチで破壊された場合をminecraft:invertedで除外されています。
それを消すことで葉っぱブロックを確定でドロップし、かつリンゴを確率でドロップさせる事が出来ます。
クロスプ参加者利用可能なデータパックは無効化されているデータパックの事なので、全く動作に支障はございません。
「/reload」は読み込み完了メッセージは出ない為、もし表示したい場合は「load.json」ファイルに入れるのが一般的ですね。こちらも正常な動作です。基本的にデータパック作成関連の相談は「技術相談(Java版)」で教えていますので、お気軽にどうぞ~
クロスプ参加者質問ありがとうございます。
1.21.5でのNBTでのアーマースタンドの名前はcustom_nameではなくCustomNameで設定出来ます。/summon minecraft:armor_stand ~ ~ ~ {CustomName:"テスト"}先に言っておきますが、CustomNameの検知はあまりおすすめしません。ですが質問に答えるのが前提なので、CustomNameの検知方法を紹介します。
1つ目のpredicateはスロットItemのminecraft:custom_nameコンポーネントを検知しているのでアイテムのNBT検知になります。
Itemスロットは額縁等の専用スロットになるのでアーマースタンドでは検知不可です。2つ目のpredicateは1.21.5で追加された新しい検知方法です。
初めて知ったので軽くwikiで調べました。
調べた結果、現在はエンティティ用の特別なコンポーネントのみを検知出来るようです。
カスタムネームはおそらくまだコンポーネントで検知出来ないと思います。まだコンポーネント化はエンティティには進んでおらず、NBT検知が最も楽ですね。
{ "condition": "minecraft:entity_properties", "entity": "this", "predicate": { "type": "minecraft:armor_stand", "nbt": "{CustomName:\"テスト\"}" } }これで多分検知出来ます。
CustomNameはテキストコンポーネントなので、実際出力が不安定になるかもしれません。
/data get entity @n[type=armor_stand] CustomName
で最寄りのアーマースタンドのCustomNameを入手出来ます。もしかしたら値が勝手に変わっているかも。本当はTagsでタグの絞り込みをした方が良いとは言っておきますが、データパックによりけりなので、文章をここまでにしておきます。
制作頑張ってください!
クロスプ参加者Forge と Fabric の性質が違うため、両方の接続出来るModサーバーは仮にあったとしても不安定になると思います。
Mohist を大昔(3年前)に使った時凄く不安定だったので、両方接続できる未来はまだまだほど遠いと感じています。ただ、もしSimple Voice ChatやPlasmo Voice等のボイスチャットModを使用する場合は、プラグイン版を使うとプラグインサーバーで両方に対応できます。
クロスプ参加者公式サイトでは GeyserMC + Floodgate はBungeeCord、Spigot/Paper、Velocity、Fabric、NeoForgeと書かれていますが、使用したことがないので動くかはわかりません。
クロスプ参加者現在あるv2.0.0のダウンロード方法
(おどみん様は約1年ほどバージョンを上げておりません)1. コメント欄がでかすぎるのでページの半分くらいにあるダウンロードボタンを押す。

2. 配布先の Google Drive に移動したら、右上にあるダウンロードボタンを押す。

3. Google Drive はほぼワールドデータのウイルススキャンをしてくれないので、ウイルススキャンは各自でやる。

これで出来るかと思います。
クロスプ参加者やっとバニラの値を入手する事が出来たので報告します。
バニラのバイオームの値を調べてみた結果、どうやらバニラのバイオームのデータは(全て改行した場合)20万行超ある事がわかりました。
その中で使われているバイオームの総数を調べてみた結果、- 388件 minecraft:snowy_plains
102件 minecraft:ice_spikes
208件 minecraft:snowy_slopes
120件 minecraft:jagged_peaks
120件 minecraft:frozen_peaks
10件 minecraft:frozen_river
110件 minecraft:snowy_beach
2件 minecraft:frozen_ocean
2件 minecraft:deep_frozen_oceanあることがわかりました。海や川のバイオームが多かった理由は恐らく総数が少なく、海は1件だけでバニラの約半分を再現出来た結果で生じたと思われます。
この値を全部人力でコピーして持ってくるにはかなりの労力がかかります。
また、全部コピーしてバニラと同じバイオーム区分になるという保証がありません。
その為、もしバニラの値にしてみたいのであればpython等のプログラムや生成AI等で生成した方が良いと思います。
(自分は生成AIを全く知らないので出来るかは不明ですが)- この返信は1ヶ月前に
- 投稿者投稿

