【マイクラ】damageコマンドとダメージタイプ|指定方法・入力例まとめ【Java/統合版】

この記事では、/damageコマンドの基本構文・入力例・ダメージタイプをまとめています
Java版と統合版では構文や指定名が違うため、混同しやすいところを重点的に解説します
Java版は1.21.11以降のspear追加、2026年以降の26.x表記も踏まえて整理しています

こんにちは。ゆずかきです。

マイクラでコマンドを触っていると、モブに任意のダメージを与えたい場面ってありますよね。
例えば、配布マップのギミック、検証ワールド、ボス戦演出、ミニゲーム、アドベンチャーマップなどです。

そういう時に便利なのが、/damageコマンドです。

ただ、このコマンドは見た目より少しややこしいです。
単に「体力を減らすコマンド」ではなく、火・落下・爆発・攻撃者付きダメージなどをゲーム内のダメージ処理として発生させるコマンドなんですよね。

しかも、Java版と統合版では指定方法が違います。

Java版なら、

/damage @s 4 minecraft:fall  

統合版なら、

/damage @s 4 fall  

という感じで、同じ落下ダメージでも書き方が少し変わります。

この記事では、damageコマンドの指定方法・入力例・Java版と統合版の違い・ダメージタイプ一覧を、実際に使う時に迷わないように整理していきますね。

※本記事はJava版1.21.11〜26.x系、および統合版の公式コマンド仕様を参考に作成しています。
※バージョンによって候補名が増減する可能性があるため、最終確認はゲーム内のチャット補完も併用してください。
※ゲーム内の仕様については、公式ドキュメント・コミュニティWiki・開発者向けAPI情報を参考にしています。


目次

1. damageコマンドとは
2. Java版と統合版の違い
3. Java版damageコマンドの基本構文
4. 統合版damageコマンドの基本構文
5. amountの考え方|ハート何個分?
6. Java版のダメージタイプ一覧
7. 統合版のDamageCause一覧
8. よく使う入力例まとめ
9. コマンドが効かない時のチェックポイント
10. バージョン別の注意点
11. まとめ
12. 引用・参考文献

この記事で分かること
/damageコマンドでモブやプレイヤーにダメージを与える方法
・Java版と統合版の構文の違い
・Java版のminecraft:damage_typeと統合版のDamageCauseの違い
・落下・炎上・爆発・攻撃者付きダメージの入力例
・入力しても効かない時に見るべきポイント


1. damageコマンドとは

/damageコマンドは、指定したエンティティに任意のダメージを与えるコマンドです。

単純にHPを直接書き換えるだけではなく、「どの種類のダメージを受けたか」まで指定できるのが特徴です。

例えば、

  • 落下ダメージを与える
  • 炎ダメージを与える
  • 溺れダメージを与える
  • 爆発ダメージ扱いにする
  • プレイヤーが攻撃した扱いにする
  • 特定の場所からダメージが発生した扱いにする
  • 死亡メッセージを自然に見せる

こういったことができます。

普通の/killだと、対象を即死させるだけです。
一方で/damageは、「どんな理由でダメージを受けたか」まで演出できるので、マップ制作や検証でかなり便利です。

例えば、ゾンビに落下ダメージを与えたいなら、Java版ではこうです。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 10 minecraft:fall  

これで、近くのゾンビ1体に落下ダメージ扱いのダメージを与えられます。

体験談
筆者は最初、/damageを「HPを数字分だけ減らすコマンド」だと思っていました。
でも実際には、防具・エンチャント・耐性・難易度・モブの耐性などが絡むので、入力した数値がそのまま減るとは限りません。
ここを知らないと「なんで10ダメージ入れたのに倒れないの?」となりがちです。

なので、/damageは、体力操作コマンドというより、ゲーム内のダメージ処理を呼び出すコマンドとして理解すると分かりやすいです。


2. Java版と統合版の違い

まず一番大事なところです。
Java版と統合版では、/damageの書き方が違います。

同じ「炎ダメージ」を与えたい場合でも、Java版はダメージタイプID、統合版はDamageCauseを指定します。

項目 Java版 統合版
基本構文 /damage <target> <amount> [damageType] /damage <target> <amount> [cause]
ダメージ種類の指定 minecraft:fall などのID fall などのDamageCause
amountの型 小数も使える 整数
対象指定 1体指定 複数対象も指定可能
攻撃者の指定 by / from を使う entity を使う


特に注意したいのは、同じ意味でも名前が違うものがあることです。

例えば、炎上中のダメージは、Java版だとminecraft:on_fire、統合版だとfire_tickです。
壁に埋まった窒息ダメージは、Java版だとminecraft:in_wall、統合版だとsuffocationです。
奈落ダメージは、Java版だとminecraft:out_of_world、統合版だとvoidです。

つまり、Java版の記事を見ながら統合版でそのまま打つと失敗します。
逆も同じです。

注意!
Java版のminecraft:fallを統合版にそのまま入れても、基本的には通りません。
統合版ではfallのように、名前空間なしのDamageCauseを使います。

この記事では、Java版と統合版を分けて整理していきますね。


3. Java版damageコマンドの基本構文

Java版の基本構文は、主に次の2パターンです。

/damage <target> <amount> [<damageType>] [at <location>]  
/damage <target> <amount> [<damageType>] [by <entity>] [from <cause>]  

初心者さんがまず覚えるなら、これだけで大丈夫です。

/damage 対象 ダメージ量 ダメージタイプ  

例えば、自分に2ダメージを与えるなら、

/damage @s 2 minecraft:generic  

近くのゾンビ1体に落下ダメージを与えるなら、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 6 minecraft:fall  

という形です。

target

targetは、ダメージを受ける対象です。

Java版では、@s@p、プレイヤー名、UUID、またはセレクターを使えます。
ただし、Java版の/damage1体を指定するコマンドです。

例えば、近くのゾンビ1体を対象にするなら、

@e[type=minecraft:zombie,limit=1,sort=nearest]  

のようにlimit=1を付けておくと事故りにくいです。

amount

amountはダメージ量です。
Java版では小数も指定できます。

/damage @s 0.5 minecraft:generic  

このように、細かいダメージ検証にも使えます。

ただし、入力した数値がそのままHPから引かれるとは限りません。
防具や耐性、エンチャント、ダメージタイプのタグ、対象モブの耐性などで変化することがあります。

damageType

damageTypeは、ダメージの種類です。

例えば、

  • minecraft:generic:汎用ダメージ
  • minecraft:fall:落下ダメージ
  • minecraft:in_fire:火の中にいるダメージ
  • minecraft:on_fire:炎上ダメージ
  • minecraft:lava:溶岩ダメージ
  • minecraft:explosion:爆発ダメージ
  • minecraft:player_attack:プレイヤー攻撃扱い
  • minecraft:mob_attack:モブ攻撃扱い
  • minecraft:spear:槍によるダメージ

という感じです。

damageTypeを省略した場合は、基本的に汎用的なダメージ扱いになります。
ですが、死亡メッセージや耐性検証までしたい場合は、なるべく明示した方が分かりやすいです。

at

at <location>は、ダメージの発生位置を指定したい時に使います。

例えば、現在位置を爆発ダメージの発生源っぽく扱いたいなら、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 10 minecraft:explosion at ~ ~ ~  

という書き方ができます。

これは、ベッド爆発や爆発ギミックのように、場所由来のダメージとして見せたい時に使いやすいです。

by

by <entity>は、誰が直接ダメージを与えた扱いにするかを指定します。

例えば、近くのゾンビ1体に「プレイヤーが攻撃した扱い」のダメージを与えるなら、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 6 minecraft:player_attack by @p  

と入力します。

これを使うと、死亡メッセージや敵対反応などの検証がしやすくなります。

from

from <cause>は、間接的な原因エンティティを指定したい時に使います。

矢や投げ物のように、直接ダメージを与えたものそれを放った原因を分けたい時に関係します。
普段の検証ではbyだけでも十分なことが多いですが、配布マップやデータパックで細かく演出したい場合は覚えておくと便利です。


4. 統合版damageコマンドの基本構文

統合版の基本構文は、次の2パターンです。

/damage <target: target> <amount: int> [cause: DamageCause]  
/damage <target: target> <amount: int> <cause: DamageCause> entity <damager: target>  

Java版よりも見た目はシンプルです。
ただし、ダメージタイプ名はJava版と違うので、そこだけ注意してください。

自分に2ダメージを与えるなら、

/damage @s 2  

ゾンビに炎ダメージを与えるなら、

/damage @e[type=zombie,c=1] 4 fire  

ゾンビにプレイヤーが攻撃した扱いのダメージを与えるなら、

/damage @e[type=zombie,c=1] 6 entity_attack entity @p  

という形です。

target

targetは、ダメージを受ける対象です。

統合版では、対象に複数エンティティを指定できます。
例えば、半径10ブロック以内のゾンビ全員にダメージを与えるなら、

/damage @e[type=zombie,r=10] 4 fire  

という指定もできます。

ただし、検証時は巻き込み事故が起こりやすいので、最初はc=1で1体に絞るのがおすすめです。

amount

統合版のamountは整数です。
Java版のように0.5などの小数指定はできません。

/damage @s 1  

この場合、基本的には体力1ポイント分のダメージを与える指定になります。

cause

causeは、統合版で使うダメージ原因です。

例えば、

  • fall:落下
  • fire:火
  • fire_tick:炎上
  • lava:溶岩
  • drowning:溺れ
  • entity_attack:エンティティの攻撃
  • projectile:飛び道具
  • void:奈落
  • sonic_boom:ウォーデンの衝撃波
  • mace_smash:メイスのスマッシュ攻撃

などがあります。

entity damager

統合版で攻撃者を指定したい時は、entity <damager>を使います。

/damage @e[type=zombie,c=1] 6 entity_attack entity @p  

この例では、ゾンビが@pから攻撃された扱いになります。

注意!
damagerは1体に絞る必要があります。
@eのように複数に当たる可能性がある指定を入れると、エラーになることがあります。


5. amountの考え方|ハート何個分?

マイクラの体力は、ハート1個 = 体力2ポイントです。

プレイヤーの通常体力はハート10個なので、体力ポイントで言うと20です。

つまり、何も軽減が入らない前提なら、

  • 1ダメージ = ハート0.5個分
  • 2ダメージ = ハート1個分
  • 10ダメージ = ハート5個分
  • 20ダメージ = ハート10個分

というイメージになります。

ただし、ここで注意です。
/damageの数値は、必ずそのまま体力から減るわけではありません。

例えば、防具を着ている相手にentity_attackprojectileを入れると、防具で軽減されることがあります。
耐性のステータス効果がある場合も、結果が変わります。
落下耐性、爆発耐性、火炎耐性などのエンチャントも関係します。

なので、検証する時は、まず防具なし・効果なしの状態で確認するのがおすすめです。

体験談
筆者は最初、鉄防具を着たプレイヤー相手に/damage @s 10 entity_attackのような検証をして、数字と減り方が合わずに混乱しました。
コマンドが間違っていたわけではなく、防具側の軽減が入っていただけでした。
ダメージ検証は、まず裸の状態でやるとかなり分かりやすいです。

配布マップで「確実に倒す」用途なら、/killの方が単純です。
一方で、「火で倒されたように見せたい」「落下死っぽくしたい」「攻撃者を指定したい」なら、/damageの方が向いています。


6. Java版のダメージタイプ一覧

ここでは、Java版で指定できる代表的なダメージタイプをまとめます。

Java版では、基本的にminecraft:〇〇という名前空間付きIDで指定します。
チャット欄で途中まで入力してTab補完を使うと、現在のバージョンで使える候補を確認できます。

よく使うJava版ダメージタイプ早見表

ダメージタイプ 主な意味 よく使う場面
minecraft:generic 汎用ダメージ とりあえずダメージを入れたい時
minecraft:fall 落下ダメージ 落下死演出・検証
minecraft:in_fire 火の中のダメージ 炎トラップ演出
minecraft:on_fire 炎上中の継続ダメージ 炎上演出
minecraft:lava 溶岩ダメージ 溶岩トラップ演出
minecraft:drown 溺れダメージ 水中ギミック
minecraft:in_wall 壁埋まり窒息 圧迫・閉じ込め演出
minecraft:explosion 爆発ダメージ TNT風演出
minecraft:player_attack プレイヤー攻撃扱い キルログ・敵対検証
minecraft:mob_attack モブ攻撃扱い モブ戦闘検証
minecraft:arrow 矢ダメージ 弓・飛び道具検証
minecraft:trident トライデント トライデント演出
minecraft:sonic_boom ウォーデン衝撃波 ウォーデン風ギミック
minecraft:mace_smash メイスのスマッシュ攻撃 メイス検証
minecraft:spear 槍ダメージ Java版1.21.11以降の槍検証
minecraft:generic_kill 強制的なキル寄りの汎用ダメージ 検証・特殊演出用

Java版ダメージタイプ一覧

  • minecraft:arrow:矢によるダメージです。
  • minecraft:bad_respawn_point:ネザーやエンドでのベッド爆発、またはリスポーンアンカーの危険な爆発に使われる特殊な爆発系ダメージです。
  • minecraft:cactus:サボテン接触ダメージです。
  • minecraft:campfire:焚き火によるダメージです。
  • minecraft:cramming:エンティティが密集しすぎた時の窒息系ダメージです。
  • minecraft:dragon_breath:エンダードラゴンのブレスによるダメージです。
  • minecraft:drown:溺れダメージです。
  • minecraft:dry_out:水生系のモブが陸上で乾いて受けるダメージ系です。
  • minecraft:ender_pearl:エンダーパール使用時のダメージです。
  • minecraft:explosion:爆発ダメージです。
  • minecraft:fall:落下ダメージです。
  • minecraft:falling_anvil:落下した金床によるダメージです。
  • minecraft:falling_block:落下ブロックによるダメージです。
  • minecraft:falling_stalactite:落下した鍾乳石によるダメージです。
  • minecraft:fireball:火球によるダメージです。
  • minecraft:fireworks:花火によるダメージです。
  • minecraft:fly_into_wall:エリトラ飛行中に壁へ衝突した時のダメージです。
  • minecraft:freeze:粉雪などによる凍結ダメージです。
  • minecraft:generic:汎用ダメージです。迷った時の基本候補です。
  • minecraft:generic_kill:特殊なキル寄りの汎用ダメージです。検証用途向けです。
  • minecraft:hot_floor:マグマブロックなどの熱い床によるダメージです。
  • minecraft:in_fire:火の中にいる時のダメージです。
  • minecraft:in_wall:壁に埋まった時の窒息ダメージです。
  • minecraft:indirect_magic:間接的な魔法ダメージです。
  • minecraft:lava:溶岩ダメージです。
  • minecraft:lightning_bolt:雷によるダメージです。
  • minecraft:mace_smash:メイスのスマッシュ攻撃によるダメージです。
  • minecraft:magic:魔法系ダメージです。
  • minecraft:mob_attack:モブの近接攻撃ダメージです。
  • minecraft:mob_attack_no_aggro:敵対反応を発生させにくいモブ攻撃系ダメージです。
  • minecraft:mob_projectile:モブが放った飛び道具系ダメージです。
  • minecraft:on_fire:炎上中の継続ダメージです。
  • minecraft:out_of_world:奈落ダメージです。
  • minecraft:outside_border:ワールド境界外のダメージです。
  • minecraft:player_attack:プレイヤーの近接攻撃ダメージです。
  • minecraft:player_explosion:プレイヤー由来の爆発ダメージです。
  • minecraft:sonic_boom:ウォーデンのソニックブームによるダメージです。
  • minecraft:spear:槍によるダメージです。Java版1.21.11で追加された重要なタイプです。
  • minecraft:spit:ラマなどの唾によるダメージです。
  • minecraft:stalagmite:石筍に落下した時のダメージです。
  • minecraft:starve:空腹ダメージです。
  • minecraft:sting:ハチの毒針などのダメージです。
  • minecraft:sweet_berry_bush:スイートベリーの低木による接触ダメージです。
  • minecraft:thorns:棘の鎧などの反射ダメージです。
  • minecraft:thrown:投げられたものによるダメージです。
  • minecraft:trident:トライデントによるダメージです。
  • minecraft:unattributed_fireball:発射元が明確でない火球ダメージです。
  • minecraft:wind_charge:ウィンドチャージによるダメージです。
  • minecraft:wither:ウィザー状態によるダメージです。
  • minecraft:wither_skull:ウィザーの頭蓋骨によるダメージです。

補足
Java版のダメージタイプはデータパック側でも扱われる仕組みです。
そのため、バニラの一覧にない独自ダメージタイプが、データパックやサーバー環境で追加されている場合もあります。
普通のサバイバル検証なら、上のバニラ一覧を見ればほぼ困らないはずです。


7. 統合版のDamageCause一覧

統合版では、Java版のようにminecraft:fallとは書きません。
fallfirelavaのようなDamageCauseを指定します。

統合版の公式ドキュメントで確認できるDamageCauseは、次の通りです。

統合版DamageCause一覧

  • piston:ピストン系のダメージです。
  • lava:溶岩ダメージです。
  • campfire:焚き火ダメージです。
  • fire:火によるダメージです。
  • anvil:金床によるダメージです。
  • magma:マグマブロックなどのダメージです。
  • soul_campfire:魂の焚き火によるダメージです。
  • wither:ウィザー状態によるダメージです。
  • falling_block:落下ブロックによるダメージです。
  • fireworks:花火によるダメージです。
  • thorns:棘の鎧などの反射ダメージです。
  • none:原因なし扱いのダメージです。
  • contact:サボテンやスイートベリーの低木などの接触ダメージです。
  • sonic_boom:ウォーデンのソニックブームによるダメージです。
  • override:特殊な上書き系のダメージ原因です。
  • entity_attack:エンティティの近接攻撃です。
  • projectile:飛び道具によるダメージです。
  • suffocation:窒息ダメージです。
  • mace_smash:メイスのスマッシュ攻撃です。
  • fall:落下ダメージです。
  • starve:空腹ダメージです。
  • ram_attack:ヤギなどの突進攻撃系のダメージです。
  • fire_tick:炎上中の継続ダメージです。
  • stalactite:落下した鍾乳石によるダメージです。
  • drowning:溺れダメージです。
  • block_explosion:ブロック由来の爆発ダメージです。
  • entity_explosion:エンティティ由来の爆発ダメージです。
  • void:奈落ダメージです。
  • self_destruct/kill相当・自己破壊系のダメージです。
  • magic:魔法系ダメージです。
  • charging:突進・チャージ系のダメージです。
  • stalagmite:石筍に落下した時のダメージです。
  • fly_into_wall:飛行中に壁へ衝突した時のダメージです。
  • lightning:雷によるダメージです。
  • freezing:凍結ダメージです。
  • temperature:温度によるダメージです。

Java版と統合版で名前が違う代表例

内容 Java版 統合版
落下 minecraft:fall fall
炎上継続 minecraft:on_fire fire_tick
火の中 minecraft:in_fire fire
溶岩 minecraft:lava lava
溺れ minecraft:drown drowning
窒息 minecraft:in_wall suffocation
奈落 minecraft:out_of_world void
金床 minecraft:falling_anvil anvil
爆発 minecraft:explosion block_explosion / entity_explosion
近接攻撃 minecraft:player_attack / minecraft:mob_attack entity_attack
飛び道具 minecraft:arrow / minecraft:tridentなど projectile

この表の通り、統合版はJava版より少し大きめの分類になっている印象です。
Java版はarrowtridentmob_projectileのように細かく分かれていますが、統合版ではprojectileにまとめて扱う場面があります。


8. よく使う入力例まとめ

ここからは、実際に使いやすい入力例をまとめていきます。

検証する時は、チートをオンにしたワールドで、まずは自分や近くのゾンビ1体に対して試すのがおすすめです。
サバイバル本編ワールドでいきなり使うと事故るので、必ずバックアップや検証用ワールドで試してくださいね。

自分に1ハート分のダメージを与える

Java版です。

/damage @s 2 minecraft:generic  

統合版です。

/damage @s 2  

2は、軽減がなければハート1個分です。

近くのゾンビに落下ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 10 minecraft:fall  

統合版です。

/damage @e[type=zombie,c=1] 10 fall  

落下死っぽい演出を作りたい時に便利です。

近くのゾンビに炎ダメージを与える

Java版で、火の中にいる扱いにしたい場合です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 4 minecraft:in_fire  

Java版で、炎上中の継続ダメージっぽくしたい場合です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 4 minecraft:on_fire  

統合版で、火ダメージを与える場合です。

/damage @e[type=zombie,c=1] 4 fire  

統合版で、炎上継続ダメージを与える場合です。

/damage @e[type=zombie,c=1] 4 fire_tick  

firefire_tickは似ていますが、意味が少し違います。
炎の中にいるダメージっぽくしたいか、燃えている継続ダメージっぽくしたいかで使い分けましょう。

溶岩ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 8 minecraft:lava  

統合版です。

/damage @e[type=zombie,c=1] 8 lava  

溶岩処理層っぽい演出や、火炎耐性の検証に使えます。

爆発ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 12 minecraft:explosion at ~ ~ ~  

統合版です。

/damage @e[type=zombie,c=1] 12 block_explosion  

統合版でクリーパーなどのエンティティ爆発に寄せたい場合は、

/damage @e[type=zombie,c=1] 12 entity_explosion  

という指定もできます。

プレイヤーが攻撃した扱いにする

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 6 minecraft:player_attack by @p  

統合版です。

/damage @e[type=zombie,c=1] 6 entity_attack entity @p  

死亡メッセージや敵対反応を見たい時に便利です。

ウォーデンのソニックブーム風ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 10 minecraft:sonic_boom  

統合版です。

/damage @e[type=zombie,c=1] 10 sonic_boom  

ソニックブームは防具では軽減されにくい強力なダメージとして扱われることが多いので、検証時は数値を低めから試すのがおすすめです。

メイスのスマッシュ攻撃風ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 10 minecraft:mace_smash  

統合版です。

/damage @e[type=zombie,c=1] 10 mace_smash  

メイス系の検証や、落下攻撃っぽい演出に使えます。

槍ダメージを与える

Java版1.21.11以降では、槍に対応するminecraft:spearダメージタイプがあります。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 8 minecraft:spear by @p  

槍は1.21.11のMounts of Mayhemで追加された要素なので、古いJava版では使えません。
入力候補に出ない場合は、バージョンを確認してください。

奈落ダメージを与える

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 100 minecraft:out_of_world  

統合版です。

/damage @e[type=zombie,c=1] 100 void  

奈落ダメージはかなり強い扱いになることが多いので、演出用というより検証・処理用に近いです。

確実に処理したい場合

Java版で、ダメージタイプとして強めに処理したい場合は、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 100 minecraft:generic_kill  

という選択肢があります。

ただし、単純に消したいだけなら、

/kill @e[type=minecraft:zombie,limit=1,sort=nearest]  

の方が分かりやすいです。

/damageはあくまで「ダメージ理由を指定したい時」に使うもの、と考えると使い分けしやすいですね。


9. コマンドが効かない時のチェックポイント

/damageを入力したのに、思った通りにダメージが入らないことがあります。
その時は、下のチェックリストを確認してください。

  • [ ] チートがオンになっているか?
  • [ ] マルチサーバーならOP権限があるか?
  • [ ] Java版と統合版の構文を混同していないか?
  • [ ] Java版でminecraft:を付け忘れていないか?
  • [ ] 統合版でminecraft:fallのようにJava版の書き方をしていないか?
  • [ ] Java版で対象を1体に絞れているか?
  • [ ] 統合版のdamagerが1体に絞れているか?
  • [ ] 防具・耐性・エンチャントで軽減されていないか?
  • [ ] 対象モブがそのダメージに耐性を持っていないか?
  • [ ] ピースフルやゲームルールで想定外の挙動になっていないか?
  • [ ] 入力したダメージタイプが、そのバージョンに存在するか?
  • [ ] データパックやアドオンで挙動が変わっていないか?

Java版でよくあるミス

Java版でありがちなのは、対象を複数にしてしまうミスです。

例えば、

/damage @e[type=minecraft:zombie] 4 minecraft:fall  

のようにすると、Java版では対象が1体に絞れていないため失敗します。
Java版では、まずは次のように1体へ絞るのが安全です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 4 minecraft:fall  

統合版でよくあるミス

統合版でありがちなのは、攻撃者指定の時にentityを忘れることです。

間違い例です。

/damage @e[type=zombie,c=1] 6 entity_attack @p  

正しい例です。

/damage @e[type=zombie,c=1] 6 entity_attack entity @p  

entityはただの説明文ではなく、構文に必要な文字です。
ここを抜かすと通りません。

ダメージ量が思ったより少ない時

これはコマンドミスではなく、防具や耐性の軽減が入っている場合があります。

特に、

  • 鉄装備やダイヤ装備を着ている
  • 防護系エンチャントがある
  • 耐性のステータス効果が付いている
  • 火炎耐性がある
  • 落下耐性がある
  • 対象モブが特定ダメージに強い

このあたりは結果に影響します。

検証する時は、防具なし・ステータス効果なし・難易度固定で試すと分かりやすいです。

死亡メッセージが思った通りにならない時

死亡メッセージは、ダメージタイプや攻撃者指定に左右されます。

Java版なら、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 20 minecraft:player_attack by @p  

統合版なら、

/damage @e[type=zombie,c=1] 20 entity_attack entity @p  

のように、攻撃者を指定すると分かりやすくなります。

ただし、すべてのダメージタイプで期待通りの文面になるとは限りません。
マップ制作で死亡メッセージまで演出したい場合は、必ず本番前に何度かテストしましょう。


10. バージョン別の注意点

/damageコマンドは、Java版と統合版で追加時期や周辺仕様が違います。

Java版の注意点

Java版では、/damageは1.19.4で追加されたコマンドです。
それより前のバージョンでは使えません。

また、Java版のダメージタイプはデータパック側の仕組みとも関係します。
バニラではminecraft:fallminecraft:genericなどの既存タイプを使いますが、データパック環境では独自のダメージタイプが追加されていることがあります。

Java版1.21.11の注意点

Java版1.21.11では、槍が追加され、minecraft:spearというダメージタイプも追加されました。

そのため、槍を使ったギミックや検証をするなら、

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 8 minecraft:spear by @p  

のような指定が候補になります。

古いバージョンではspearが存在しないので、コマンド候補にも出ません。

2026年以降のバージョン表記について

Minecraftは2026年から、Java版・統合版ともに年を基準にした新しいバージョン番号へ移行しています。
そのため、今後はJava版26.1、26.1.2、26.2のような表記が使われます。

つまり、「1.21.11以降」という言い方をする場合、実際には26.x系も確認対象になります。

本記事では、Java版1.21.11で追加されたspearを含め、26.x系でも意識したい内容として整理しています。
ただし、スナップショットやプレビュー版では仕様が変わることがあるため、安定版で使う場合もチャット補完で確認してください。

統合版の注意点

統合版では、/damageの構文がJava版と違います。
また、DamageCauseの一覧は統合版側の公式ドキュメントに従うのが安全です。

例えば、統合版では、

/damage @s 4 fall  

のように書きます。

Java版の感覚で、

/damage @s 4 minecraft:fall  

と書くと失敗する可能性が高いです。

また、統合版はプラットフォームやバージョン更新の影響を受けやすいので、使用前にチャット補完で候補が出るか確認するのが一番確実です。


11. まとめ

今回は、マイクラの/damageコマンドとダメージタイプについて解説しました。

要点を整理すると、

  • /damageは指定した対象に任意のダメージを与えるコマンド
  • 単なるHP変更ではなく、ゲーム内のダメージ処理を呼び出す
  • Java版はminecraft:fallのようなダメージタイプIDを使う
  • 統合版はfallのようなDamageCauseを使う
  • Java版と統合版で名前が違うのでコピペ流用に注意
  • amountはハートではなく体力ポイント基準
  • 防具・耐性・エンチャント・モブ耐性で結果が変わる
  • 攻撃者を指定したい場合、Java版はby、統合版はentityを使う
  • Java版1.21.11以降ではminecraft:spearも重要
  • 2026年以降はJava版26.x表記も出てくるので、バージョン確認が大事

という感じです。

初心者さんが最初に覚えるなら、まずはこの2つで十分です。

Java版です。

/damage @e[type=minecraft:zombie,limit=1,sort=nearest] 4 minecraft:generic  

統合版です。

/damage @e[type=zombie,c=1] 4  

ここから、落下ならfall、火ならfire、溶岩ならlavaという感じで変えていけば、少しずつ理解できます。

/damageは、使いこなすとマップ制作や検証がかなり便利になります。
特に、死亡メッセージや攻撃者指定まで作り込みたい方には、かなり重要なコマンドです。

では、本日はここまでで終わります。
最後までご覧いただき、ありがとうございました。
柚子クラでは他にもマイクラの便利コマンドや検証記事を紹介しているので、ぜひご覧くださいね(^^♪


12. 引用・参考文献

この記事を書くにあたり、以下の公式ドキュメント・コミュニティWiki・開発者向け資料を参考にしています。