MC CommanderMinecraft非公式コマンド支援

ゾンビのウェーブ防衛ゲームをコマンドで作る方法

次々に出てくるゾンビの群れ(ウェーブ)を倒し、全滅させると次のウェーブが始まるミニゲームです。敵にタグを付けて数を数えるのがポイントです。Java版の書き方で説明します。

ミニゲームウェーブJava版

summonコマンドを作る

更新日:

1. 準備(最初に一度だけ)

/scoreboard objectives add wave dummy "ウェーブ"
/scoreboard objectives add left dummy
/scoreboard objectives setdisplay sidebar wave
/scoreboard players set #game wave 0

wave は今のウェーブ数、left は残っている敵の数を入れるスコアです。

2. 敵をまとめて出す

/execute at @e[type=marker,tag=spawn] run summon zombie ~ ~ ~ {Tags:["enemy"],PersistenceRequired:1b}

会場のまわりに spawn タグの目印(marker)を何体か置いておき、その全部の場所にゾンビを1体ずつ出します。目印は /summon marker ~ ~ ~ {Tags:["spawn"]} で置きます。enemy タグで、このゲームの敵だけを数えられるようにします。

3. 残りの敵を数える(くり返し)

/execute store result score #game left if entity @e[tag=enemy]

くり返しコマンドブロック(常時実行)に入れます。enemy タグの付いた敵の数が、left に入ります。

4. 全滅したら次のウェーブ(くり返し)

/execute if score #game left matches 0 run scoreboard players add #game wave 1
/execute if score #game left matches 0 run title @a title {"text":"次のウェーブ!","color":"red"}
/execute if score #game left matches 0 at @e[type=marker,tag=spawn] run summon zombie ~ ~ ~ {Tags:["enemy"],PersistenceRequired:1b}

3の後ろにチェーンのコマンドブロックで並べます。敵が0になったらウェーブ数を1増やし、また敵を出します。ウェーブが進むほど強くしたいときは、if score #game wave matches 5.. のように条件を足して、防具を着たゾンビやスケルトンを出します。強い敵の作り方は ゾンビのコマンドまとめ を見てください。

5. ゲームオーバーの判定

/execute unless entity @a[gamemode=adventure] run tellraw @a [{"text":"ゲームオーバー! 到達ウェーブ:","color":"red"},{"score":{"name":"#game","objective":"wave"}}]

倒された人をスペクテイターにしておけば、アドベンチャーモードの人がいなくなったときにゲームオーバーにできます。表示したら、コマンドブロックを止めて /kill @e[tag=enemy] で敵を片付けます。

6. ウェーブが進んだら敵を強くする

# 4のチェーンの後ろに足す
execute if score #game left matches 0 if score #game wave matches 5.. at @e[type=marker,tag=spawn] run summon skeleton ~ ~ ~ {Tags:["enemy"],PersistenceRequired:1b}

ウェーブ5からは、ゾンビに加えてスケルトンも出るようになります。4の1行目でウェーブ数を先に増やしているので、この行は増えたあとの数で判定されます。5.. を 10.. にした行を足すと、さらに後半で別の敵を足せます。

7. ウェーブ10でボスを出す(Java版1.21.5以降)

execute if score #game left matches 0 if score #game wave matches 10 at @e[type=marker,tag=spawn,limit=1] run summon zombie ~ ~ ~ {Tags:["enemy"],PersistenceRequired:1b,CustomName:"ボス",CustomNameVisible:1b,attributes:[{id:"minecraft:max_health",base:100}],Health:100f}

ウェーブ10のときだけ、体力100の名前付きゾンビを1体出します。limit=1 で、目印が何体あってもボスは1体だけです。名前の書き方は1.21.4以前だと CustomName:'"ボス"' になります。ボスの作り方は ボスモブを作るコマンド にまとめています。

うまくいかないときの確認ポイント

よくある質問

ウェーブごとに敵の数を増やせますか?

目印(marker)を増やすか、ウェーブ数の条件ごとに summon の行を足すと、後半ほど多く出せます。

倒した数をスコアにできますか?

scoreboard objectives add kills minecraft.killed:minecraft.zombie のように、倒した数を数えるスコアを使えます。

ボスを出せますか?

ウェーブ10のときだけ出す行を足して、ボスモブを召喚できます。

関連ページ

Mobを倒した数を数える討伐数と討伐クエスト。ゾンビのコマンドまとめ

強いゾンビの作り方です。

ボスモブを作るコマンド

最後のウェーブのボスに。

scoreboardでミニゲームを作る

スコアの使い方です。

襲撃(レイド)を起こすコマンド

ゲームに組み込まれたウェーブです。

コマンド辞典

基本構文とコマンド別の使い方を確認できます。