この記事では、データパックの内容物について説明しています。ゲームの仕様については「ダメージ」をご覧ください。
この項目はJava Edition限定の要素です。
ダメージの種類(英:Damage Type)とは、死亡メッセージやエンティティの耐性、再生されるサウンドといったダメージの振る舞いを定義したファイルである。
これに加え、ビルトインのダメージの種類タグもダメージの様々な振る舞いを定義している。
カスタマイズしたダメージの種類に関しては、現在/damageを用いてのみ与えることができる。
ファイルのフォーマット[]
ダメージの種類は、データパック内のdata/<名前空間>/damage_type/<ダメージの種類名>.jsonに、JSON形式で保存されている。
- :上位のオブジェクト。
- message_id:別の文字列と組み合わせて死亡メッセージの翻訳キーとなり、このダメージが原因で死んだ場合に表示される死亡メッセージを指定する文字列。組み合わせる文字列は、 death_message_typeによって後述のように決定される。
- exhaustion:この種類のダメージを受けた時に、満腹度消費度が増大する程度を決定する。
- scaling:この種類のダメージのダメージ量が、難易度によってどのように変化するかを決定する。
取りうる値はnever、always、when_caused_by_living_non_playerである。詳細は後述。 - effects:被ダメージ時の演出を決定する任意のフィールド。
取りうる値ははhurt(通常のダメージ、デフォルト)、thorns(棘の鎧)、drowning(溺没)、burning(炎上)、poking(ベリーの棘)、freezing(凍傷)。詳細は後述。 - death_message_type: message_idから死亡メッセージの翻訳キーを生成する際に、どのような文字列を組み合わせるかを決定する値。
取りうる値は、default(デフォルト)、fall_variants(落下ダメージ)、intentional_game_design([ゲームの仕様])である。それぞれの値に対応する生成方式は、後述を参照のこと。
例:minecraft:arrow(矢によるダメージ):
{
"exhaustion": 0.1,
"message_id": "arrow",
"scaling": "when_caused_by_living_non_player"
}
倍率[]
ダメージの種類は、そのダメージ量が難易度によってどのように変化するかを定義している[情報提供依頼]。
scalingが取りうる値:
never:ダメージは常に一定。always:ダメージが常に難易度によって変化する。when_caused_by_living_non_player:攻撃者[注釈 1]が生物エンティティ[注釈 2]且つプレイヤー以外である場合のみ、ダメージが難易度によって変化する。
演出[]
ダメージの種類は、そのダメージをプレイヤーが喰らった際にどのような演出がなされるかを決定している。
effectsが取りうる値:
hurt(デフォルト):thorns:棘の鎧およびガーディアンの棘のダメージ音。drowning:溺没の音。burning:炎によるダメージ音。poking: スイートベリーの低木の棘が刺さる音。freezing: 凍結ダメージの音。
死亡メッセージ[]
ダメージの種類は、そのダメージが原因で死亡した際に表示する死亡メッセージを決定している。
death_message_typeが取りうる値:
default(デフォルト):通常の死亡メッセージ翻訳キー生成方式を使用する。fall_variants:落下ダメージの死亡メッセージdeath.fell.assist.itemを生成する。intentional_game_design:「ゲームの仕様に殺された」の死亡メッセージを表示する。
デフォルトのメッセージ[]
通常の死亡メッセージ翻訳キー生成方式が使用されている場合、 message_idを用いて次のように死亡メッセージの翻訳キーを生成する。
- 死因となったダメージが攻撃者[注釈 1]の直接攻撃に因り、さらに攻撃者が名前の付いたアイテムを持っていた場合は、「<攻撃者>の<アイテム>で~」の死亡メッセージが表示をするために
death.attack.<message_id>.itemの形式で翻訳キーを作成し、次の挿入文字列を withとして伴う被翻訳テキストを生成する。- 死亡したエンティティ
- 攻撃者の名前
- アイテムの名前
- 死因となったダメージが攻撃者[注釈 1]に因らないが、死亡したエンティティが直近[情報提供依頼]に生物エンティティから[注釈 2]ダメージを受けていた場合には、「<攻撃者>と戦いながら~」の死亡メッセージを表示するために
death.attack.<message_id>.playerの形式で翻訳キーを作成し、次の挿入文字列を withとして伴う被翻訳テキストを生成する。- 死亡したエンティティ
- 直近の攻撃者
- 上記のどちらにも当てはまらない場合、通常の死亡メッセージを表示するために
death.attack.<message_id>の形式で翻訳キーを作成し、次の挿入文字列を withとして伴う被翻訳テキストを生成する。- 死亡したエンティティ
- 直近の攻撃者[注釈 1](いた場合のみ)
歴史[]
| Java Edition | |||||
|---|---|---|---|---|---|
| 1.19.4 | 23w06a | データパックにダメージの種類が追加された。 | |||
| 1.20 | 1.20 Pre-release 1 | 新しいダメージの種類、outside_borderとgeneric_killが追加された。 | |||
| 開発中のJava Edition | |||||
| Update 1.21 (実験的) | 23w51a | 新しいダメージの種類、wind_chargeが追加された。 | |||
注釈[]
| 要素 |
| ||
|---|---|---|---|
| データパック |
| ||
| チュートリアル | |||