データパック質問所
データパック質問所

データパック質問所

マイクラの配布サイト › フォーラム › 技術相談(JAVA版) › データパック質問所

  • このトピックには38件の返信、5人の参加者があり、最後にまさ_データパック初心者により1ヶ月、 2週前に更新されました。
16件の返信スレッドを表示中
  • 投稿者投稿
    • 2024年8月20日 9:14 PM#91565返信クロスプ参加者

      データパックに関連するもの適当に質問していい場所です。気まぐれで返信します。データパックを1から創る場合最新版のほうが出来ることが多いので最新版で創ることをお勧めします。バージョンバニラかMod/Pluginサーバーはちゃんと書いてね。

    • 2024年9月8日 11:12 AM#95142返信クロスプ参加者

      コマンドやjsonファイル等に””がある場合、こちらのサイトは変換されてしまいます。 なので、””を使っている際は出来るだけCODE機能を使ってコードの初めと終わりにCODEボタン(`)で入力して頂くとコピペが楽になります。 (よくわからない人はそのまま入力して頂いても構いません)

      例1/title @s title ["", {"text": "GAME START", "color": "yellow"}] 例2

      give @p carrot_on_a_stick[minecraft:item_name='["", {"text": "すごい"},{"fallback":"CarrotOnAStick","translate":"item.minecraft.carrot_on_a_stick"}]',minecraft:unbreakable={show_in_tooltip:false},minecraft:fire_resistant={},minecraft:rarity="uncommon",minecraft:custom_model_data=99] 1 function test:modify {path: "locker", storage: "test:system"}

      例3

      { "pools": [ { "rolls": 1, "entries": [ { "type": "minecraft:item", "name": "minecraft:stone" } ] } ] }
      • この返信は1年、 6ヶ月前にクロスプが編集しました。
      • この返信は1年、 6ヶ月前にクロスプが編集しました。
      • この返信は1年、 6ヶ月前にクロスプが編集しました。
    • 2024年10月17日 10:39 PM#102782返信匿名ゲスト

      初めまして、データパックの入れ方に苦戦していて教えて頂きたいのですが 当方MacBookでマイクラをしていてデータパックの入れ方がわからなくなりました。 ご回答いただけると幸いです。

      • 2024年10月17日 11:12 PM#102785返信匿名ゲスト

        すみません!!!! なんとかデータパック入れられ動作の確認も取れました お騒がせしました!!!!!

    • 2024年12月28日 9:06 PM#114438返信さくらがい参加者

      大ミスしたので削除しました。

      • この返信は1年、 3ヶ月前にさくらがいが編集しました。
      • この返信は1年、 3ヶ月前にさくらがいが編集しました。
    • 2024年12月28日 9:51 PM#114469返信さくらがい参加者

      初めまして。 作ってたデータパックが完成したから動作確認したら、うまく動きません。どうすればいいですか?詳細

      • 2024年12月30日 8:11 PM#114853返信クロスプ参加者

        色々なパターンがありますので、いくつか確認お願いします。

        1. pack.mcmetaの位置間違い> datapacks/<データパック名>/pack.mcmetaがあるか確認する。

        2. 「function」が「functions」になっていたり、「tags」が「tag」になっていたりする。> 1.21以降データパックは「tags」を除く場所(tags/function等も含む)に「s」をつけない。

        3. コマンド構文エラー/ファイル構文エラー> logファイルで確認できます。ランチャーの「起動時に出力ログを表示」をオンにすると、データパックリロード時にエラーを出してくれます。

        4. ゲームルールやtick freezeを使ってtickが反応しない。> /gamerule maxCommandChainLengthを大きくしたり、/tick unfreezeを実行したりする。

        5. dataがassetsになってる。> 自分がよく間違えるだけ。

        これはよくあるやつなので、もっと沢山のパターンがあります。

        • この返信は1年、 3ヶ月前にクロスプが編集しました。
        • この返信は1年、 3ヶ月前にクロスプが編集しました。
    • 2025年1月4日 10:36 AM#115773返信匿名ゲスト

      初めまして。 ご質問させてください。 Java版 / 1.21.4 今回初めてデータパックというものに触って苦戦しているのでご質問させてください。

      現在、カテゴリ別実績のコンプリートという実績を自作しようと奔走しております。 新規でタブを作成すること、実績のアイコンを表示させること自体はできているのですが、 既存(バニラ)の複数の実績達成をトリガーとしてオリジナルの実績を達成とするようにしたいのですが実績達成をトリガーとする書き方がわからず困っております。

      実績の達成をトリガーとすることがそもそも可能なのか、不可能な場合上記のような条件を満たすためにはどのように実装ができるかご教授いただけますと大変うれしいです。

      内容わかりにくく大変申し訳ございませんが何卒宜しくお願いいたします。

      • 2025年1月4日 5:10 PM#115835返信クロスプ参加者

        進捗のトリガーに実績の達成がなかったと思いますので、1番簡単なtickとpredicateで検知する方法が最適だと思います。 こちらは1tick遅れて進捗達成してしまいますが、バニラの進捗が達成したかどうかを直接検知できるのでとても使いやすいと思います。 例えば下記のような形式で記入すると、「モンスターハンター」と「狙いを定めて」をpredicateで検知するという形になります。

        { "criteria": { "test": { "trigger": "minecraft:tick", "conditions": { "player": { "type_specific": { "type": "minecraft:player", "advancements": { "minecraft:adventure/kill_a_mob": true } } } } }, "test2": { "trigger": "minecraft:tick", "conditions": { "player": { "type_specific": { "type": "minecraft:player", "advancements": { "minecraft:adventure/shoot_arrow": true } } } } } }, "requirements": [ [ "test" ], [ "test2" ] ] }

        なぜここでtestとtest2にわけているのかといいますと、進捗の達成度(1 / 2 とか)を出してくれるから分けてみました。 この方法が1番簡単で安定すると思いますので、是非ご活用ください。

        • 2025年1月5日 4:14 AM#115933返信匿名ゲスト

          ご丁寧にありがとうございます! ご教示いただけた方法で無事実装できました。 進捗達成度も見えるように考慮していただき大変うれしいです!

          重ねてお伺いさせていただきたいのですが、 作成した新規の実績ツリー(progress_sharing:progress/root)をデータパック初期で実績に表示させたいと思っております。 load.jsonで呼び出すファイルで未達成なら付与、といった形でできるかと思っていたのですが実際には想定挙動にならずでした。 それぞれのファイルを配置しているディレクトリや内容不備がありますでしょうか……? 度々頼ってしまい大変申し訳ございません、お手すきの際で構いませんのでご教授いただければ幸いです。

          data\minecraft\tag\function\load.json

          { "values": ["progress_sharing:init"] }

          data\progress_sharing\function\init.mcfunction

          execute as @a[advancements={progress_sharing:progress/root=false}] run advancement grant @s only progress_sharing:progress/root
          • 2025年1月5日 7:42 PM#116024返信クロスプ参加者

            めちゃくちゃわかりづらい仕様なのですが、「tag」ではなく「tags」で動作します。 ここだけ何故か今でも複数形なんですよね…

          • 2025年1月5日 7:54 PM#116039返信クロスプ参加者

            あと、「load.json」はワールドロード時と「/reload」時でしか実行されなく、基本的にワールドロード時にはプレイヤーがいないので、実質「/reload」でしか付与する事が出来ません。 なので進捗のトリガーで「minecraft:tick」を使って与えるか、「tick.json」で与えるのが良いと思います。

          • 2025年1月6日 11:48 PM#116302返信匿名ゲスト

            ありがとうございます! ほかのディレクトリが複数形から単数形に変更になった、との情報を見て勝手に単数形に変更してしまっておりました。 修正しましたところ無事動作するようになりました!

            load.jsonの不便な部分についてもご教授いただきましてありがとうございます。 tick.jsonで付与されていないユーザーを対象に付与するように修正いたしました。

            おかげさまでやりたかったことが一先ず実現できました、本当にありがとうございます。 また、何か行き詰った際にはご質問させてください、ありがとうございました!

    • 2025年3月18日 5:23 PM#130769返信さくらがい参加者

      データパックでカスタムディメンションを作っているのですが、ポータルの作り方が分かりません。バニラのネザーポータルと同じ感じにしたいのですが、どのようにすれば作れるでしょうか?教えてください。バニラの1.21.4です。

      • 2025年3月18日 6:55 PM#130805返信クロスプ参加者

        質問ありがとうございます。 さて、カスタムディメンションにポータルを作りたい。 なんと、データパックの機能にありません!なんでですか! #おのれもやん

        海外勢がカスタムポータルを解説していました。ご丁寧に概要欄にダウンロードリンクまであります。https://youtu.be/6d9LDadfGOw?feature=shared

        このデータパックは1.18なので、1.21.4に対応するには

          データパックの「tags」を除く「s」を消す。 predicate condition「minecraft:alternative」を「minecraft:any_of」にする。 wabportals:travellers/all_mobs.json にあるモブリストにブロックディスプレイ、アイテムディスプレイ、テキストディスプレイ、インタラクションを追加、矢やトライデント等の削除(発射体)、ボートの個別ID変更をする。 その他調整するものあるかも

        この海外勢の作ったデータパックは1番重いのがaetherディメンションファイルなので、function自体はそこまで多くないと思います。

        注意だと思うもの aether仕様なので、2×3でしか動作しません。 まだブロックディスプレイが無い時代なので、ポータルはリソースパックとアーマースタンドで代用されています。

        文章が長くなってしまいましたがこれで再現できると思います。 私にはこれが限界です。カスタムディメンション制作頑張ってください!

        • この返信は1年前にクロスプが編集しました。
    • 2025年3月19日 5:19 PM#131009返信さくらがい参加者

      カスタムディメンションについてなのですが、生成するバイオームのmulti_noiseはデフォルトと一緒にしてあるはずなのに、なぜか変な風に生成されます。どうしてでしょうか?分かる場合は教えてください。返信はここでも配布ページでもどっちでもいいです。(データパックのリンク:https://minecraft-mcworld.com/130255/)

      • 2025年3月20日 12:09 AM#131104返信クロスプ参加者

        デフォルトの値忘れたので値が悪いのかバイオームが欠落した影響なのかわかりませんが、バイオーム minecraft:snowy_plains の weirdness が極端に低いので、めっちゃ平らな地形じゃない限り minecraft:snowy_plains にならないですね。 その結果、 minecraft:frozen_river や minecraft:frozen_ocean が陸にも反映されて、陸上に minecraft:ice_spikes が生成されたりしています。 あとこのデータパックに dimension_type minecraft:dimension が存在しないとか言われたので minecraft:overworld に変更して試してみました。そのままでは動いていないです。

        • 2025年3月20日 11:28 AM#131192返信さくらがい参加者

          具体的にはどれくらいの値がちょうどいいのでしょうか?

          • 2025年3月20日 4:44 PM#131303返信クロスプ参加者

            どのような地形を作成するかにもよりますので値をどれにすればいいのかは一概には言えませんが、Wikiやサイトでシミュレーションするのが良いと思います。

            シード値がオーバーワールドと同じなので、同じ座標の寒い地域では地形が結構似るのでその辺を使ってカスタムディメンションを削除しながら F3 でバイオーム確認するのもいいと思います。あとは自分の好みですね。バイオーム minecraft:snowy_plains だと木や草、村などの構造物がでやすくなりますが、代わりに minecraft:frozen_ocean にある海洋構造物が地表にでづらくなります。

            値0を基準としてシード値でTHCEWDが生成されているので、ここからこの間の値をこのバイオームにするって感じにしてみてください。

            https://ja.minecraft.wiki/w/%E3%83%90%E3%82%A4%E3%82%AA%E3%83%BC%E3%83%A0

            https://misode.github.io/dimension/

          • 2025年3月20日 9:32 PM#131347返信さくらがい参加者

            基本的にはオーバーワールドと同じような地形にしたいです。

          • 2025年3月22日 10:46 AM#131665返信さくらがい参加者

            陸上にminecraft:frozen_oceanが食い込んでいるのをどうにかしたいです。

          • 2025年3月24日 11:25 PM#132442返信クロスプ参加者

            やっとバニラの値を入手する事が出来たので報告します。

            バニラのバイオームの値を調べてみた結果、どうやらバニラのバイオームのデータは(全て改行した場合)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年前にクロスプが編集しました。
            • この返信は1年前にクロスプが編集しました。
            • この返信は1年前にクロスプが編集しました。
    • 2025年5月6日 11:41 AM#142509返信匿名ゲスト

      初めまして。 predicateに関して質問です。 Java版 / 1.21.5 / バニラ

      custom_nameで名前をつけたエンティティをpredicateにて検知ができません。 typeのみ指定した際は動作しているためファイルの配置等は問題ないと思われ、custom_nameを指定した際に想定通りに動作していないようです。 custom_nameの指定はcomponents, nbtでそれぞれ試しています。

      検知対象/summon minecraft:armor_stand ~ ~ ~ {custom_name:"テスト"}

      predicateを使用した検知コマンド/execute as @e[predicate=test:is_armor_stand] run data get entity @s

      成功時のpredicate(typeのみ指定)

      { "condition": "minecraft:entity_properties", "entity": "this", "predicate": { "type": "minecraft:armor_stand" } }

      失敗時のpredicate その1

      { "condition": "minecraft:entity_properties", "entity": "this", "predicate": { "type": "minecraft:armor_stand", "nbt": "{Item:{components:{\"minecraft:custom_name\":\"テスト\"}}" } }

      失敗時のpredicate その2

      { "condition": "minecraft:entity_properties", "entity": "this", "predicate": { "type": "minecraft:armor_stand", "components": { "minecraft:custom_name": "テスト" } } }

      こちら、どのようにcustom_nameを指定すれば実装できるか、またはcustom_nameでの指定は不可能なのか、ご教授いただけますと嬉しいです。 よろしくお願いいたします。

      • 2025年5月7日 11:37 PM#142963返信クロスプ参加者

        質問ありがとうございます。 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でタグの絞り込みをした方が良いとは言っておきますが、データパックによりけりなので、文章をここまでにしておきます。 制作頑張ってください!

        • この返信は11ヶ月前にクロスプが編集しました。
        • この返信は11ヶ月前にクロスプが編集しました。
    • 2025年5月8日 10:45 PM#143074返信匿名ゲスト

      ご回答ありがとうございます! 他のアイテムと同様にアーマースタンドもcustom_nameで指定してしまっておりました。 また、いただいたpredicateにて無事検知できました!

      Tagsによる判別も考えましたが、手持ちからアーマースタンドを設置した場合などTagsが使えない状況があるため、名前によって判別することにしております。

      また何かあった際はご相談させてください、ご教授いただきありがとうございました!

    • 2025年7月16日 4:56 PM#155889返信ふうん参加者

      ここ これをやってくれる人

    • 2025年8月20日 9:52 PM#164827返信Umibu_do参加者

      初めまして。 loot_tableについて質問です。 オークの葉をハサミやシルクタッチで破壊した時に5%の確率で葉っぱブロックだけでなくリンゴをドロップするようにしたいです。また、その設定をバニラに上書きする方法も教えてほしいてす。有識者の方よろしくお願いします。

    • 2025年8月21日 9:48 PM#165091返信Umibu_do参加者

      ver1.21.6のバニラです。 情報不足申し訳ないです。

      • 2025年8月22日 3:06 PM#165242返信クロスプ参加者

        質問ありがとうございます。 オークの葉はデータパックのルートテーブルに「minecraft:blocks/oak_leaves」を作成すると上書きできます。 デフォルトのデータは下記の値になっています。https://misode.github.io/loot-table/?version=1.21.6&preset=blocks/oak_leaves

        この値を見ると、リンゴやオークの苗木等にconditionがいくつかあるのですが、その内容のそれぞれ1つにハサミやシルクタッチで破壊された場合をminecraft:invertedで除外されています。 それを消すことで葉っぱブロックを確定でドロップし、かつリンゴを確率でドロップさせる事が出来ます。

    • 2025年8月22日 9:52 PM#165352返信Umibu_do参加者

      適応できました。 ありがとうございました!

    • 2025年12月18日 10:03 PM#191146返信クロスプ参加者

      コメントテスト

      (最近投稿出来ない場合が多発していたのでクライアントに問題があるのか確認しました)

      • この返信は3ヶ月、 2週前にクロスプが編集しました。
      • 2025年12月24日 2:36 PM#192150返信匿名ゲスト

        コメントテスト

        /gamemode creative

        • 2025年12月24日 2:37 PM#192151返信クロスプ参加者

          コメントテスト

          /gamemode creative

    • 2025年12月20日 4:45 AM#191312返信匿名ゲスト

      1.21.11において、データパックを用いて「デフォルトの地形(地上)の形状を維持したまま、地下の洞窟や空洞のみを完全に生成させないワールド」を作ろうとしていますが、イマイチどれをいじればよいかわからず困っています。有識者の方ご教示願います。

      • 2025年12月24日 2:57 PM#192164返信クロスプ参加者

        私が知っている限りではdata/minecraft/worldgen/noise_settings/(地形ファイル).jsonで直接洞窟の生成を変更すると出来たと思います。 一応このファイルはほぼ全部の地形を担当しており、他のworldgenを読み込んだりも可能な為、このファイル自体には記述されていない可能性もあります。 洞窟の記述先はどこかにあると思います。ですがとても探しづらく、あまり詳しくない為自分からは詳しく教えられません。すみません!

        ジェネレーターサイトでプレビュー使えます。参考に。 デフォルトオーバーワールドのnoise_settingshttps://misode.github.io/worldgen/noise-settings/?version=1.21.11&preset=overworld

    • 2026年1月30日 3:04 PM#199870返信まさ_データパック初心者参加者

      1.21.11で持っているアイテムの耐久値を減らすことってできますか。 例えばしゃがんだら耐久値が1ずつ減る剣みたいな

      • 2026年2月7日 7:44 PM#201564返信クロスプ参加者

        item modifier で minecraft:set_damage を add: true でダメージをすっごい小さい値 (例: 0.00001) にすると1ダメージずつ減らせます。

        item modify entity @s weapon.mainhand {function:"minecraft:set_damage",damage:0.000001,add:true}

        • 2026年2月14日 11:13 AM#203099返信匿名ゲスト

          回答ありがとうございます!

          • 2026年2月14日 11:17 AM#203100返信まさ_データパック初心者参加者

            (あっログインしてなかった…)

16件の返信スレッドを表示中スポンサーリンク
📎📎📎📎📎📎📎📎📎📎