피해 유형: 방어구를 무시하는 19가지, 그리고 방패가 더 약한 방어인 이유
26.3에는 51가지 피해 유형이 있습니다. 19가지는 방어구를 우회하고, 30가지는 방패를 우회합니다. 그리고 그 교집합은 사람들이 흔히 가정하는 것과 다릅니다 — 방어구를 뚫는 모든 유형은 방패도 뚫습니다.
피해 유형은 단순한 사망 메시지가 아닙니다. 방어구가 적용되는지, 든 방패가 적용되는지, 저항이 적용되는지를 결정하는 플래그를 지니고 있으며, 데이터팩은 #minecraft:bypasses_armor 등을 통해 바로 그 플래그를 읽습니다. 아래의 모든 수치는 26.3용으로 모장이 배포한 damage_type 파일에서 집계한 것이며, 이 페이지의 브라우저가 렌더링하는 것도 바로 그것입니다.
집계
피해 유형 51가지. 그중 19가지가 방어구를 무시하고 30가지가 든 방패를 무시합니다.
두 번째 숫자에 사람들은 놀랍니다. 방패는 공격을 아예 막아내기 때문에 더 강한 방어처럼 보이지만, 실제로는 더 자주 우회되는 쪽이 방패입니다 — 방어구의 19가지에 맞서 30가지나 됩니다.
교집합은 한 방향뿐
이 부분이야말로 체득할 가치가 있는데, 이는 경향성이 아니라 엄격한 구조적 규칙입니다:
방어구를 우회하는 모든 피해 유형은 방패도 우회합니다. 예외는 없습니다.
직접 집계해 보면: "방어구는 우회하지만 방패는 우회하지 않는" 집합은 공집합입니다. 따라서 방어구를 뚫는 19가지 유형은 방패를 뚫는 30가지의 진부분집합이고, 11가지 유형이 그 틈에 자리합니다 — 방패는 통과하지만 방어구는 여전히 피해를 줄여 주는 유형들입니다:
cactus, campfire, dry_out, falling_anvil, falling_stalactite, hot_floor, in_fire, lava, lightning_bolt, sulfur_cube_hot, sweet_berry_bush
이 목록을 읽어 보면 논리는 한번 보면 자명합니다: 이들은 환경적이거나 머리 위에서 떨어지는 원인들입니다. 발밑의 바닥을 향해 방패를 들 수는 없고, 머리 위로 떨어지는 모루를 향해서도 들 수 없지만, 판금 방어구는 그중 일부를 여전히 흡수합니다.
실전적으로 정리하면: 공격이 방어구를 뚫었다면, 방패도 애초에 도움이 되지 않았을 것입니다. 낙하 피해, 익사, 동결, 굶주림, /kill — 방어구와 방패 모두 무관합니다. 대신 가벼운 착지나 호흡에 기대세요 — 동결에는 가죽 방어구를 쓰거나요 — 왜냐하면 그것들은 플래그가 건너뛰지 않는 방어 수단이기 때문입니다. (차가운 걸음의 면역은 마그마 블록만 해당하며, 추위에는 해당하지 않습니다.)
모든 것을 무시하는 유형은 단 하나
starve는 방어구, 방패 그리고 상태 효과를 한꺼번에 우회하는 유일한 피해 유형입니다 — 따라서 저항도 그것에는 닿지 않습니다. 빈 허기 바에서 당신을 지켜 주는 것은 게임 내에서 음식 외에 아무것도 없습니다.
소모는 이분법
피해를 받으면 더 배가 고파지는데, 그 양은 예상하는 것처럼 단계가 나뉘어 있지 않습니다. 51가지 유형 전체에서 26.3에는 소모 값이 정확히 두 가지뿐입니다: 0와 0.1. 51가지 중 32가지가 0.1을 적용하고, 나머지는 아무것도 적용하지 않습니다.
즉 "큰 공격이 더 배고프게 만든다"는 규칙은 없습니다. 얼굴에 맞은 크리퍼와 좀비의 할퀴기도 같은 소모를 발생시키는 반면, 낙하 피해는 아무것도 소모하지 않는 19가지 유형 중 하나입니다.
스케일링은 곡선이 아니라 두 가지 설정
scaling는 난이도가 피해를 배수하는지를 결정하며, 바닐라는 세 값 중 두 가지만 사용합니다: when_caused_by_living_non_player(47가지 유형) 또는 always(4가지). 데이터팩은 never를 고를 수도 있습니다. 유형별로 조정할 난이도 곡선은 없습니다 — 유형은 난이도에 따라 조정되거나, 되지 않거나 둘 중 하나입니다.
명령어에서 이것이 중요한 이유
/damage <target> <amount> <type>는 51가지 중 아무거나 받으며, 잘못 고르면 결과가 조용히 달라집니다:
/damage @p 10 minecraft:fall # armour ignored, shield ignored
/damage @p 10 minecraft:lava # shield ignored, armour still reduces it
/damage @p 10 minecraft:starve # armour, shield and Resistance all ignored
세 개의 명령어, 같은 10, 같은 대상에 세 가지 다른 결과. 만약 맵이 풀 네더라이트를 착용한 플레이어를 기준으로 "밸런싱"되었다면, 어떤 유형을 고르느냐가 그 방어구가 밸런싱의 일부였는지 자체를 결정합니다.