[地球] 宇宙のスケール [全角で表すと] (5/9)
![[Will] ポイント制による社員評価のウィークポイント $ファウンデーション$ [日本企業・ディスコ] (5/8)_a0034780_10452858.png](https://pds.exblog.jp/pds/1/202505/08/80/a0034780_10452858.png)
[マイクラ] 雪玉で銃のように使うコマンド - 統合版 [ChatGPT] (5/7)
![[マイクラ] 雪玉で銃のように使うコマンド - 統合版 [ChatGPT] (5/7)_a0034780_23314886.jpg](https://pds.exblog.jp/pds/1/202505/07/80/a0034780_23314886.jpg)
エディション銃が使えるコマンド
Java版/execute as @e[type=snowball] at @s run kill @e[distance=..10,type=!player,type=!snowball]
もちろんです!Java版のコマンドを見て、それと同等のものを統合版(Bedrock Edition)でどう書くかをご案内しますので、まずそのJava版のコマンドを教えていただけますか?
おそらく以下のようなコマンドかと思いますが、確認のため実際のコマンドをご提示ください:
```mcfunction
execute as @e[type=snowball] at @s run kill @e[type=!player,distance=..1]
```
こちらは「雪玉の位置でプレイヤー以外をキルする」内容ですね。
統合版では `execute` コマンドの構文が異なります。上のJava版コマンドと同等の処理を統合版で書く場合、次のようになります:
```mcfunction
execute as @e[type=snowball] at @s run kill @e[type=!player,r=1]
```
ただし、**Bedrock版ではセレクターに `!`(否定)を使えません**。つまり `type=!player` のような指定は使えないため、少し工夫が必要です。
### 統合版での代替案:
統合版では、対象のエンティティタイプを個別に指定する必要があります。例えば、すべてのモブを個別に列挙してキルするなどです。
例:プレイヤー以外の特定のモブをキルする(例:ゾンビ、スケルトンなど)
```mcfunction
execute as @e[type=snowball] at @s run kill @e[type=zombie,r=1]
execute as @e[type=snowball] at @s run kill @e[type=skeleton,r=1]
execute as @e[type=snowball] at @s run kill @e[type=creeper,r=1]
```
このように**Bedrockでは「プレイヤー以外」全体を一括で指定できない**ため、キル対象を1種類ずつ明示する必要があります。
どのモブを対象にしたいか教えていただければ、それに合わせたBedrock版コマンドを具体的にお作りできます。どうしましょうか?
そうですね。そのコマンドで合ってます。
ではクモやピリジャー、村人ゾンビ、子供ゾンビ、ドラウンド、ガスト、ピグリンの場合を教えてください。
了解しました!以下は、**統合版(Bedrock Edition)で雪玉が当たった場所の半径1ブロック以内にいる対象モブ**(クモ、ピリジャー、村人ゾンビ、子供ゾンビ、ドラウンド、ガスト、ピグリン)を**キルするコマンド**です。
Bedrockでは否定指定(`!player`)ができないため、各モブを個別に指定します。
---
### ✅ Bedrock版対応コマンド一覧:
```mcfunction
execute as @e[type=snowball] at @s run kill @e[type=spider,r=1]
execute as @e[type=snowball] at @s run kill @e[type=pillager,r=1]
execute as @e[type=snowball] at @s run kill @e[type=zombie_villager,r=1]
execute as @e[type=snowball] at @s run kill @e[type=zombie,r=1,tag=child]
execute as @e[type=snowball] at @s run kill @e[type=drowned,r=1]
execute as @e[type=snowball] at @s run kill @e[type=ghast,r=1]
execute as @e[type=snowball] at @s run kill @e[type=piglin,r=1]
```
---
### 🔍 補足ポイント:
* `zombie_villager` と `drowned` は Javaと同じ名前で統合版でも動作します。
* 子供ゾンビの判定(`tag=child`)は**統合版ではタグ指定が使えない**ため、**サイズを判断して識別する方法**が必要ですが、直接の方法がないため、通常の `zombie` として検知するしかありません。つまり、子供ゾンビだけをピンポイントでキルするのは難しいです(※逆に子供ゾンビ以外を除外するのも難しい)。
* 統合版で「子供ゾンビだけを対象にする」のは困難なので、`zombie` としてまとめて対象にすることが一般的です。
---
### 🎯 現実的な妥協案(大人子供問わずゾンビを含める)
```mcfunction
execute as @e[type=snowball] at @s run kill @e[type=zombie,r=1]
```
---
### ✅ 実行の仕方:
この一連のコマンドを**常時実行するリピートコマンドブロック**に貼り付けることで、機能が動作します(「常にアクティブ」に設定)。
必要なら、1つのコマンドでまとめて処理する仕組み(エンティティをまとめてタグ付け→一括処理)もご提案できます。
ほかに追加したいモブはありますか?
一括処理の方を教えてください。
了解しました!Bedrock Editionでの**雪玉が当たった位置にいる特定のモブ(クモ、ピリジャーなど)を一括でキルする方法**を、**タグを活用して効率的に処理する仕組み**で説明します。
---
## ✅ 概要:一括処理の流れ
1. **対象モブ(クモ、ピリジャーなど)にタグを付ける**(例:`snowballTarget`)
2. **雪玉の位置でタグ付きのモブをキルする**
3. (任意)タグをリセットして管理をきれいに保つ
---
## 🧱 手順とコマンド(Bedrock対応)
### ① 対象モブにタグを付ける(常時)
```mcfunction
tag @e[type=spider] add snowballTarget
tag @e[type=pillager] add snowballTarget
tag @e[type=zombie_villager] add snowballTarget
tag @e[type=zombie] add snowballTarget
tag @e[type=drowned] add snowballTarget
tag @e[type=ghast] add snowballTarget
tag @e[type=piglin] add snowballTarget
```
※このコマンド群は**リピートコマンドブロック**で1秒おき(チェーンでもOK)に実行すると安定します。
---
### ② 雪玉の位置でタグ付きモブを一括キル
```mcfunction
execute as @e[type=snowball] at @s run kill @e[tag=snowballTarget,r=1]
```
これで**雪玉がヒットした位置半径1ブロック以内の指定モブ全員を同時にキル**できます。
---
### ③ (任意)タグを消す(使い捨てにしたい場合)
```mcfunction
tag @e[tag=snowballTarget] remove snowballTarget
```
ただし、常時タグを維持する方がパフォーマンス的には良いこともあります。
---
## 🧰 配置方法の例(コマンドブロック)
1. **\[リピートコマンドブロック(無条件/常にアクティブ)]**
→ モブにタグを付けるコマンド群(①)
2. **\[リピートコマンドブロック(無条件/常にアクティブ)]**
→ 雪玉でキルするコマンド(②)
---
## ✅ メリット
* モブリストを変更しやすい(タグ付けコマンドだけ編集すればOK)
* コマンドブロックの数が減る
* ロジックが整理されてメンテしやすい
---
タグ方式にしたことで、あとから対象モブを追加・削除するのが楽になります。
別のモブを加えたい、逆に特定のモブだけ除外したいなども柔軟に対応できます。
必要なら、**一括で設置できるコマンドブロックの配置スキーム**も作成しますよ。希望しますか?
はい。それも教えてください。
了解しました!ここでは、**コマンドブロックを使って「雪玉で特定モブを一括キル」する自動装置の構築方法**を、丁寧にステップごとで解説します。マイクラ統合版(Bedrock Edition)対応です。
---
## ✅ 必要なコマンドブロックと配置概要
以下のようにコマンドブロックを**横一列に接続して設置**してください:
```
[①リピート] → [②チェーン] → [③リピート]
```
### 合計:3つのコマンドブロック
---
## 🔧 各コマンドブロックの設定内容
### 🟥 ①タグ付け(対象モブにタグを付与)
* **種類**:リピートコマンドブロック
* **設定**:常時実行/無条件
* **コマンド**:
```mcfunction
tag @e[type=spider] add snowballTarget
tag @e[type=pillager] add snowballTarget
tag @e[type=zombie_villager] add snowballTarget
tag @e[type=zombie] add snowballTarget
tag @e[type=drowned] add snowballTarget
tag @e[type=ghast] add snowballTarget
tag @e[type=piglin] add snowballTarget
```
※コマンドが長すぎる場合は複数のチェーンブロックに分けてOKです。
---
### 🟩 ②雪玉の位置でキル(対象モブを倒す)
* **種類**:チェーンコマンドブロック
* **設定**:常時実行/無条件
* **コマンド**:
```mcfunction
execute as @e[type=snowball] at @s run kill @e[tag=snowballTarget,r=1]
```
※これは**タグ付きのモブだけを雪玉ヒット地点でキル**する処理です。
---
### 🟦 ③(任意)タグのリセット
* **種類**:リピートコマンドブロック
* **設定**:常時実行/無条件
* **コマンド**:(必要であれば)
```mcfunction
tag @e[tag=snowballTarget] remove snowballTarget
```
※モブにタグを「一時的にだけ付けたい」場合に有効です。
ただし通常はタグを維持した方が効率的です。使わない場合は省略してOK。
---
## 📌 設置の手順
1. コマンドブロックを地面に並べて置く(左から順に①→②→③)
2. すべてのブロックに `常時実行` を設定
3. プレイヤーの権限を「管理者」にする(ワールド設定でチートON)
4. 必要に応じて `/gamerule commandblockoutput false` でログ非表示に
---
## ✅ テスト方法
1. 雪玉をモブに向かって投げる
2. 雪玉が命中 or 地面で爆ぜたタイミングで、対象モブが消える(キルされる)
---
## 📎 補足情報
* `r=1` の部分は範囲調整用(当たり判定を広くするなら `r=2` など)
* タグは自由に変更可能(例:`snowballTarget` → `killable` など)
---
これで、**雪玉で指定モブを自動的に排除するギミック**が完成です。
必要なら、これを「スノーボールタレット」や「魔法の弾丸」的な仕組みに応用も可能です。
他にも「炎の矢で火属性キル」や「プレイヤー名で効果分岐」などもできますが、興味ありますか?
はい。そちらも興味あります。
それはいいですね!マイクラの**コマンドやスコアボードの応用で、弾丸系ギミックに属性やプレイヤー名別の効果を加える**と、遊びの幅がグッと広がります。
以下に2つの例をご紹介します:
---
## 🔥 ①「**炎の矢で火属性キル**」ギミック
### 🧠 コンセプト:
* プレイヤーが放った**火のついた矢**が当たると、対象モブが**燃えながらキルされる**。
* **炎効果 or 火属性の演出**として利用可能。
---
### ✅ 必要な要素:
* リピートコマンドブロック(常時)
* 火のついた矢 (`onfire`)
* `execute` + `kill` or `damage` + `summon fire` などを組み合わせ
---
### 🔧 実装例:
```mcfunction
execute as @e[type=arrow] at @s if entity @s[onfire=true] run kill @e[tag=snowballTarget,r=1]
```
→ 火のついた矢が命中した範囲(`r=1`)に対象モブがいたらキルします。
**演出を強化したい場合:**
```mcfunction
execute as @e[type=arrow] at @s if entity @s[onfire=true] run summon fireball ~ ~ ~ {ExplosionPower:0,direction:[0.0,0.0,0.0]}
```
(※`fireball` の召喚は Java限定。Bedrockでは `area_effect_cloud` や `particle` で演出可能)
---
### 🪄 Bedrockでの火属性演出(炎エフェクト+キル)例:
```mcfunction
execute as @e[type=arrow] at @s if entity @s[tag=firearrow] run kill @e[tag=snowballTarget,r=1]
execute as @e[type=arrow] at @s if entity @s[tag=firearrow] run particle flame ~ ~ ~
```
事前に矢に `tag firearrow` を付けるなどの準備が必要です(例えば「火の矢」を使ったら自動でタグ付け、など)。
---
## 🧍♂️ ②「**プレイヤー名で効果分岐**」ギミック
### 🧠 コンセプト:
* プレイヤーごとに異なる弾や効果を発動。
* 例えば「PlayerA の雪玉は敵をキル」「PlayerB の雪玉は敵を凍らせる」など。
---
### ✅ 実装例:
```mcfunction
execute as @e[type=snowball] at @s if entity @s[owner=PlayerA] run kill @e[tag=snowballTarget,r=1]
execute as @e[type=snowball] at @s if entity @s[owner=PlayerB] run effect @e[tag=snowballTarget,r=1] slowness 5 2 true
```
* `owner=PlayerA`:この雪玉を投げたのが PlayerA か?
* `effect`:スロー効果を付与(凍結のイメージ)
> ⚠ Bedrockでは `owner` セレクターが機能しない場合があります。そのときは、**スコアボードやエンティティタグ**で代用可能です(希望があればご案内します)。
---
## ✅ 応用アイデア(発展)
* **スコアで属性を管理**:`/scoreboard players set @s FireArrow 1` → コマンドで分岐
* **プレイヤーが魔法職かどうか判定**して効果を切り替える
* **ポーション投げた位置で特定範囲効果**を与える
---
## 🔧 どれを深掘りしましょうか?
興味に応じて、以下のような詳細を作れます:
* プレイヤーごとに魔法を切り替えるシステム
* スコアボードやタグによる属性制御
* 実戦向け「矢・雪玉」魔法戦バトルのベース設計
どれに一番興味ありますか?(または全部?)
一旦ここまでで結構です。
続きは後日お願いするかもしれません。
承知しました!ここまででお役に立てて何よりです。
続きをご希望の際は、いつでも気軽に声をかけてくださいね。
マイクラのコマンド遊び、引き続き楽しんでください!⛏️🔥
またお手伝いできる日をお待ちしています。
■ ChatGPTとの会話 ここまで
確認はこれからですが、ここまで詳細に教えてくれるとは驚きました。
また、2024年11月1日にサイト様も更新されていて、その時点の統合版では、!playerが使えるようです。
また、scoreboard コマンドも、別のサイト様でちょうど基本を勉強した直後なので、とても参考になりました。
[統合版マイクラ]スコアボードについて~コマンド講座・基礎編~ Part1 - YouTube