鬼ごっこ用コマンド教えて!

マイクラの配布サイト フォーラム 技術相談(統合版) 鬼ごっこ用コマンド教えて!

7件の返信スレッドを表示中
  • 投稿者
    投稿
    • #133091返信
      meimei
      参加者

      1 鬼ごっこの様なワールド作成しているのですが、剣でダメージ与えると逃走者側がTPするコマンドは作成可能でしょうか?

      2 また、逃走者が全員捕まった(剣でTP)したときに
      玄関からやり直しで逃走者全員のHPをハート一個分減らすなども作成可能かお伺いしたいです。

      3 鬼に雪玉を当てると透明になる、もしくは鬼役のPLがTPするなど、撤退させるようなコマンドもあれば教えていただきたいです。

      コマンド初心者ですのでコマンドコピペできるように、コマンドブロックの種類と実行など細かく記載していただけますと、とても助かります。
      お手数ですが、有識者の方お力添え宜しくお願い致します。

    • #133101返信

      鬼役のPL
      のPLとはなんでしょうかすみません

    • #133187返信
      meimei
      参加者

      PLはプレイヤーの略になります!!

    • #133218返信

      1. 鬼ごっこの様なワールド作成しているのですが、剣でダメージ与えると逃走者側がTPするコマンドは作成可能でしょうか?

      →これは剣の耐久値の減りを検知して、剣を持っている人から1番近くにいる人をtpするので、ダメージを受けている人より近くに他の人がいるとその人がtpされてしまうので注意してください。それが嫌なら何かしらの特定の防具を着させれば確実にできます。

      コマンド:
      反復 無条件 常時実行
      /execute at @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] run tp @a[r=5,c=1] 座標
      チェーン 無条件 常時実行
      /replaceitem entity @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 剣のid

      防具を着させる場合(上のコマンドは使わない)

      反復 無条件 常時実行
      /replaceitem entity @a[hasitem={item=防具のid,location=防具の着る場所,quantity=0}] 防具の着る場所 0 防具のid
      チェーン 無条件 常時実行
      /execute at @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] run tp @a[r=5,c=1,hasitem={item=防具のid,location=防具の着る場所,data=1}] 座標
      チェーン 無条件 常時実行
      /replaceitem entity @a[hasitem={item=剣のid,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 剣のid
      チェーン 無条件 常時実行
      /replaceitem entity @a[hasitem={item=防具のid,location=防具の着る場所,data=1}] 防具の着る場所 0 防具のid

      防具の着る場所の説明
      slot.armor.head:ヘルメット
      slot.armor.chest:チェストプレート
      slot.armor.legs:レギンス
      slot.armor.feet:ブーツ

      防具のidは自分で調べてください

      2. 逃走者が全員捕まった(剣でTP)したときに玄関からやり直しで逃走者全員のHPをハート一個分減らすなども作成可能かお伺いしたいです。

      →人数が決まっていない場合はコマンド数が増えてしまったりしてしまい、難しいので全員捕まったら手動でしてください。手動が嫌なら自動のやつを教えます。
      あとダメージを与えるだけなので自動回復されるのでしない方が良いのであれば
      /gamerule naturalRegeneration false
      をチャット欄で一回実行しましょう

      コマンド:
      衝撃 無条件 動力が必要(コマンドブロックにボタンを置く)
      /effect @a instant_health 1 255 true
      チェーン 無条件 常時実行
      /damage @a 2
      チェーン 無条件 常時実行(tpするなら)
      /tp @a 玄関の座標

      3. 鬼に雪玉を当てると透明になる、もしくは鬼役のPLがTPするなど、撤退させるようなコマンドもあれば教えていただきたいです。

      →鬼に雪玉を当てると透明になる(鬼にtagかscoreboardで識別済みなのが前提、していないなら質問してください)

      コマンド:
      反復 無条件 常時実行(鬼にtag“鬼”がついている場合)
      /execute at @e[type=snowball] run effect @a[r=1,tag=鬼] invisibility 秒数 1 true
      ↑最後のtrueはモヤモヤを出さないようにするものです。モヤモヤを出したい場合はなくて大丈夫です。

      →鬼役のPLがTPする

      コマンド:
      反復 無条件 常時実行(鬼にtag“鬼”がついている場合)
      /execute at @e[type=snowball] run tp @a[r=1,tag=鬼] 座標

      わからないことや、質問があったり、動かなかったりした場合は聞いてください
      見にくかったらすいません。
      なんか送れてなかったのでもう一度送ります

      • #134130返信
        meimei
        参加者

        詳しく記載ありがとうございます。
        防具を付けてのTPシステムの方を試してみたのですがうまくできず困っております💦
        鉄の靴は着いたのですが、切ってもTPしないみたいです。

        どこが間違っているのかもよく分からず…
        コピペで使用してIDだけ変えたので間違いはないとは思うのですが、、、
        アプデが最近入ったのでそちら関係で動かないなど、何を確認したらよいのでしょうか?
        良ければ教えて頂けますでしょうか?

        • #134165返信

          ちなみに鬼側はなんの剣を持っていますか?
          基本的にアップデートが来ても影響はないはずです

          • #134289返信
            meimei
            参加者

            ネザライトの剣にしました!

          • #134312返信

            このコマンドを試してみてください。

            反復 無条件 常時実行
            /replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,quantity=0}] slot.armor.feet 0 iron_boots

            チェーン 無条件 常時実行
            /execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[r=6,c=1,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標

            チェーン 無条件 常時実行
            /replaceitem entity @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 netherite_sword

            チェーン 無条件 常時実行
            /replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,data=1}] slot.armor.feet 0 iron_boots

          • #134318返信
            meimei
            参加者

            ありがとうございます。雪玉の方も試したのですが、セレクターに会う対象が居ませんと出ます。

            最初は秒数の所を消して60秒にしてみたりしたのですが、 trueがエラー構文になったりしてます💦

          • #134320返信
            meimei
            参加者

            ネザライトの方もコピペで使用してみましたが、【セレクターに合う対象がありません】と表示されて、鉄の靴は履ける状態になってますが、
            ワープはできないみたいです💦

          • #134321返信
            meimei
            参加者

            ネザライトの方もコピペで使用してみましたが、【セレクターに合う対象がありません】と表示されて、鉄の靴は履ける状態になってますが、
            ワープはできないみたいです💦

          • #134322返信
            meimei
            参加者

            雪玉距離が遠くて無理だったみたいで距離を100にしたらいけました!

          • #134638返信

            ごめんなさい。僕がコマンドの一部を間違えていました。

            チェーン 無条件 常時実行
            /execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[r=6,c=1,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標

            2番目のこの上コマンドが間違っていて正しくは下のコマンドになります!

            チェーン 無条件 常時実行
            /execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標

            ───────​───────​───────

            また、改良点も見つかったのでこちらに変更してください(上の間違えも修正された状態で書いてあります)

            衝撃 無条件 動力が必要(スタート時のコマンドブロックのどこかに入れてください)
            /replaceitem entity @a slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},”item_lock”:{“mode”:”lock_in_slot”}}

            反復 無条件 常時実行
            /execute at @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] run tp @a[rm=0.01,r=6,hasitem={item=iron_boots,location=slot.armor.feet,data=1}] 座標

            チェーン 無条件 常時実行
            /replaceitem entity @a[hasitem={item=netherite_sword,location=slot.weapon.mainhand,data=1}] slot.weapon.mainhand 0 netherite_sword 1 0

            チェーン 無条件 常時実行
            /replaceitem entity @a[hasitem={item=iron_boots,location=slot.armor.feet,data=1}] slot.armor.feet 0 iron_boots 1 0 {“keep_on_death”:{},”item_lock”:{“mode”:”lock_in_slot”}}

            一応こちらのコマンドを説明しておくと、
            一つ目:全てのプレイヤーに脱げない鉄のブーツを着させる。
            二つ目:ネザライト剣の耐久値が減ったプレイヤーの6マス以内にいる鉄のブーツの耐久値が減ったプレイヤーをtp
            三つ目:耐久値が減ったネザライト剣を新しく
            四つ目:耐久値が減った鉄のブーツを新しく
            のような感じです。

            ───────​───────​───────

            動かない場合や質問がある場合はまた気軽に質問してください。

            ちなみに【セレクターに合う対象がありません】というのはエラーではなく、全ての条件に合ったプレイヤーがいないというだけで動くときはしっかり動くので、安心してください!

            • この返信は11時間、 24分前にあいうえおが編集しました。
      • #134131返信
        meimei
        参加者

        記載忘れしておりました!鬼のタグについても教えていただけますと助かります!
        2名ほど鬼をしたくて指定で鬼をしたい人がコマンドを押すとタグが付くような感じにできたりは可能でしょうか?

        • #134172返信

          衝撃 無条件 動力が必要(コマンドブロックにボタンを置く)
          /tag @p add 鬼
          で1番近くにいるプレイヤーに“鬼”のtagがつきます

          このままだと次の試合の時もその人たちが鬼だというようになってしまうので、逃走者が全員捕まった時のコマンドブロックの最後に
          チェーン 無条件 常時実行
          /tag @a remove 鬼
          というコマンドを追加しておきましょう
          これは“鬼”というtagを全員から外すコマンドになっています

          ​───────​───────​───────
          tagコマンドの説明

          tagコマンドというものは簡単に言えば、目印のようなものです。
          これを使えば、チームを分けたり、プレイヤーごとに識別したりすることが簡単にできます。
          ちなみに構文はこのようになっています
          /tag (@p,@aなど) (add,remove) (tag名)

          addは追加する、removeは外すというものです

          ───────​───────​───────
          これからもコマンドを使うならばtagコマンドは結構使うと思うのでぜひ覚えておいてくださいね

          • #134293返信
            meimei
            参加者

            ありがとうございます!こちらのタグはワールドに入りなおしたら再度ボタンを押してタグ付けした方が良いのでしょうか?

          • #134310返信

            tagはワールドを閉じても、外さない限り永遠についたままなのでその必要はありません。

    • #133291返信
      meimei
      参加者

      ご丁寧にありがとうございます!こちらで試させていただきます!
      とても見やすくまとめて頂けたので助かります!
      分からないことがあればまたこちらに書き込みさせていただきます。

    • #133296返信
      HayaT1231449
      参加者

      エクストラtagaddonなどを使いダメージ感知でやればいいのでわ?

    • #133368返信

      tagを”鬼”と”逃走者”に分けていることを前提にしたところもあります。

      1 鬼ごっこの様なワールド作成しているのですが、剣でダメージ与えると逃走者側がTPするコマンドは作成可能でしょうか?

      あいうえおさんが言ったのとは別の案がありまして、「擬似一撃剣を作り、死んだ逃走者を特定の場所へtpする」
      というのも出来ます。

      ​───────​───────​───────
      【疑似一撃剣コマンド】
      反復 無条件 常時実行
      /execute as @a[tag=鬼,hasitem={item=剣のID,location=slot.weapon.mainhand}]
      run effect @s strength 1 100 true
      ​───────​───────​───────

      これは剣を強化しているのではなく、「手に剣を持っていて且つ、”鬼”というタグがついているプレイヤーの攻撃力を100上昇させる」というコマンドです。
      逃走者側は剣を持たないのなら[tag=鬼]の部分は要りませんが、一応書いておく癖を付けておくと何かとコマンドをやる際は良いです。
      2で「全員死んだらハート減らして再スタート」と言っていたので、「一撃剣」はコンセプト違いなのかなとも思いましたが一応こういうやり方もあるよーという紹介でした。

      次に死んだらtpするコマンドです。
      これは3つのコマンドを上から順に繋げます。

      ​───────​───────​───────
      反復 無条件 常時実行
      tag @a add 死亡
      ​───────​───────​───────
      チェーン 無条件 常時実行
      tag @e remove 死亡
      ​───────​───────​───────
      チェーン 無条件 常時実行
      tp @a[tag=死亡] 0 0 0
      ​───────​───────​───────

      “死亡”のところはなんでもいいです。今回は分かりやすく”死亡”を使いました。
      0 0 0のところに好きな座標を入れてください。

      原理としては、@aと@eの違いを利用しています。
      @aは生死は問わず、プレイヤー全員
      @eは生きているプレイヤーのみ全員
      (正確には@eはエンティティ)
      となっています。

      常に”死亡”タグを付け外ししているのですが、死んだ人は2つ目のコマンドで”死亡”タグを取ることが出来ないため、3つ目のコマンドで”死亡”タグが残ってる人をtpする。
      という流れになります。
      かなり分かりにくいですが、とりあえずコマンドさえ覚えておけばどんなワールドでも使えるので覚えていて損は無いです。@aと@eは間違えないようにしてください。

      2 また、逃走者が全員捕まった(剣でTP)したときに
      玄関からやり直しで逃走者全員のHPをハート一個分減らすなども作成可能かお伺いしたいです。

      これはあいうえおさんの言っていたことで基本全てですね。統合版では体力の上限は上げれはしますが下げれません。
      最初に一応体力を全回復させて、そこからハート1つ分削って、自然回復をオフにする。という流れしかありません。

      全員死んだらtpは出来ますが結構面倒くさいです。書くと長くなって分かりにくいのでこれは手動の方が良いです。

      3 鬼に雪玉を当てると透明になる、もしくは鬼役のPLがTPするなど、撤退させるようなコマンドもあれば教えていただきたいです。

      これもあいうえおさんのやつで良いのですが、雪玉ってなんかよく分からないけど反応悪いんですよね。早いせいなのかな?
      「雪玉から範囲1ブロック以内のプレイヤーを透明にする」等はコマンド上では出来ますが、実際にやると反応が変なことが多いです。

    • #133821返信
      meimei
      参加者

      カレー餃子さんも詳しいご説明ありがとうございます!
      コマンド初心者なのでとても助かります!
      参考にさせていただきます!

7件の返信スレッドを表示中