AI로 구현하기

마인크래프트 BE 장비 성장 시스템의 메뉴는 어떻게 구성했을까?

도안 2026. 10. 5. 17:42

 

앞선 글에서는 재련 갑옷에 새롭게 추가된 공격 관련 특성을 실제 전투에 어떻게 반영할 것인지 정리했습니다.

 

주손 장비와 갑옷 네 부위의 공격 특성을 같은 능력치끼리 합산하고, 근접 공격은 공격 판정 시점의 장비 상태를 기준으로 사용하도록 했습니다. 활과 석궁 같은 원거리 공격은 화살이 명중할 때가 아니라 발사 순간의 능력치를 저장해 이후 장비를 교체해도 결과가 바뀌지 않도록 방향을 잡았습니다.

 

이렇게 특성 강화, 품질 승급, 재련과 전투 적용까지 주요 규칙은 어느 정도 정리됐습니다.

하지만 규칙이 존재하는 것과 플레이어가 실제 게임에서 편하게 사용하는 것은 다른 문제였습니다.

이제는 플레이어가 대장장이 작업대에서 장비를 선택하고, 강화할 특성을 확인하고, 승급이나 재련까지 자연스럽게 이어갈 수 있는 메뉴 구조를 만들어야 했습니다.

 

처음부터 별도의 커스텀 UI를 만드는 대신, 우선 Minecraft BE Script API에서 사용할 수 있는 ActionForm 형태의 메뉴로 기능 흐름부터 정리하기로 했습니다.

 

 

마인크래프트 BE 재련 갑옷의 공격 특성은 실제 전투에 어떻게 반영했을까?

앞선 글에서는 현재 장비의 품질과 특성 조합을 다시 추첨할 수 있는 재련 규칙을 정리했습니다. 일반 장비는 기존 특성 구조를 유지하면서 품질과 특성을 다시 뽑도록 했지만, 갑옷은 재련을

nspace12.com

 

 

 

 

 

 

대장장이 작업대를 장비 성장 시스템의 시작점으로 사용했다

장비 성장 기능을 어디서 사용할 수 있게 할지도 먼저 정해야 했습니다.

강화, 승급, 재련 기능을 명령어나 별도의 아이템으로 실행하게 할 수도 있었지만 장비를 관리하는 기능인 만큼 기존 마인크래프트의 블록과 연결하는 쪽으로 방향을 잡았습니다.

 

선택한 블록은 대장장이 작업대였습니다.

다만 품질 시스템 때문에 원래 존재하던 대장장이 작업대의 기능을 없애고 싶지는 않았습니다.

 

그래서 일반적인 상호작용에서는 기존 바닐라 기능을 그대로 사용할 수 있도록 하고, 품질 장비를 주손에 든 상태에서 웅크리고 대장장이 작업대와 상호작용했을 때만 품질 관리 메뉴로 들어가는 구조를 생각했습니다.

 

즉 하나의 대장장이 작업대에서

일반 상호작용
→  기존 바닐라 기능

품질 장비를 가지고 별도 조건으로 상호작용
→  품질 장비 관리 메뉴

 

 

처럼 두 기능을 구분하는 방식입니다.

 

기존 게임의 기능을 대체하는 것이 아니라 그 위에 별도의 장비 성장 기능을 추가하는 방향이었습니다.

 

 

 

 

 

 

 

처음에는 ActionForm으로 메뉴 흐름부터 만들기로 했다

장비 성장 시스템에는 보여줘야 할 정보가 많았습니다.

 

특성 강화만 해도 현재 장비의 특성, 단계, 성공률, 실패 결과, 필요 재료와 경험치를 확인해야 합니다.

품질 승급에서는 현재 모든 특성이 최대 단계인지 확인해야 하고, 성공률과 경험치 비용도 보여줘야 합니다.

재련에서는 현재 결과가 사라지고 품질과 특성이 다시 추첨된다는 점과 필요한 비용을 알려줘야 합니다.

 

처음부터 이 모든 것을 화려한 전용 화면으로 만들기보다 ActionForm을 이용해 어떤 버튼을 누르면 어떤 단계로 이동해야 하는지부터 정리하는 편이 우선이라고 봤습니다.

 

대략적인 시작 구조는

품질 관리

특성 강화
품질 승급
재련
닫기

 

처럼 나눌 수 있습니다.

 

여기서 각 버튼을 누르면 바로 결과가 발생하는 것이 아니라 다시 세부 화면으로 이동하도록 했습니다.

 

즉 ActionForm은 최종적인 디자인보다 장비 성장 기능의 조작 순서를 먼저 정리하기 위한 출발점이었습니다.

 

 

 

 

 

 

 

특성 강화는 먼저 어떤 특성을 올릴지 선택해야 했다

특성 강화는 장비 전체를 한 번에 강화하는 기능이 아닙니다.

 

현재 장비에 붙어 있는 특성 중 하나를 직접 선택하고, 그 특성의 현재 단계를 한 단계 성장시키는 기능입니다.

따라서 강화 메뉴에 들어가자마자 바로 강화 판정을 할 수는 없습니다.

 

먼저 현재 장비의 특성을 보여주고 어떤 특성을 강화할지 선택하게 해야 했습니다.

 

예를 들어 장비에

공격력 4 / 5
치명타 확률 3 / 5
이동 속도 5 / 5

 

가 붙어 있다면 강화 메뉴에서는 현재 상태를 확인하고 공격력이나 치명타 확률을 선택할 수 있어야 합니다.

 

이미 최대 단계인 이동 속도는 더 이상 강화할 수 없다는 것도 구분해서 보여줘야 합니다.

 

 

흐름을 정리하면

특성 강화 선택
      ↓
현재 특성 목록 확인
      ↓
강화할 특성 선택
      ↓
강화 정보 확인
      ↓
최종 실행

 

순서가 됩니다.

 

 

강화 버튼 하나를 누르는 것보다 단계가 늘어나지만, 어떤 특성에 자원을 사용하는지 모르는 상태에서 판정이 바로 진행되는 것보다는 이쪽이 안전했습니다.

 

 

 

 

 

 

 

강화하기 전에 성공률과 실패 결과를 다시 보여주도록 했다

앞서 강화 규칙을 정할 때 플레이어가 성공률과 위험을 확인한 뒤 시도할 수 있도록 하기로 했습니다.

이 원칙을 메뉴 구조에도 그대로 반영했습니다.

 

특성을 선택하면 다음 화면에서

현재 단계
강화 후 단계
성공 확률
실패 시 현재 단계 유지 확률
실패 시 1단계 하락 확률
필요한 재료
필요한 경험치

 

를 확인할 수 있도록 했습니다.

 

예를 들어 6단계 특성을 7단계로 강화한다면

현재 단계: 6 / 7

성공: 45%
실패·유지: 40%
실패·하락: 15%

필요 재료: 4개
필요 경험치: 12레벨

 

처럼 실제 판정을 시작하기 전에 결과 범위를 알 수 있는 구조입니다.

 

그리고 이 화면에서 다시 강화 실행 여부를 확인한 뒤 실제 비용을 소비하고 판정을 진행하도록 했습니다.

확률형 시스템인 만큼 한 번의 잘못된 입력으로 바로 자원이 소비되는 상황을 줄이고 싶었습니다.

 

 

 

 

 

 

품질 승급은 강화와 다른 조건을 확인해야 했다

품질 승급은 특성 강화와 메뉴 구조가 조금 다릅니다.

강화는 여러 특성 중 하나를 선택해야 하지만, 승급은 현재 장비 자체의 품질을 한 단계 올리는 기능이기 때문입니다.

 

대신 승급 화면에 들어가기 전에 확인해야 할 조건이 있습니다.

현재 장비에 붙어 있는 모든 특성이 현재 품질에서 가능한 최대 단계인지 확인해야 합니다.

 

조건을 충족하지 못했다면

아직 최대 단계가 아닌 특성이 존재함
→  품질 승급 불가

 

처럼 이유를 확인할 수 있어야 합니다.

 

 

조건을 만족했다면

현재 품질
승급 후 품질
성공 확률
필요한 경험치
실패 시 결과

 

를 보여주고 승급을 시도하도록 했습니다.

 

견고에서 정교로 승급할 때와 정교에서 극상으로 승급할 때 성공률과 경험치 비용이 다르기 때문에, 현재 장비를 기준으로 필요한 정보를 다시 보여주는 구조가 필요했습니다.

 

 

 

 

 

 

재련은 현재 결과를 포기한다는 점을 명확하게 보여줘야 했다

재련은 세 기능 중에서도 특히 확인 과정이 중요했습니다.

 

강화나 승급은 현재 좋은 특성 조합을 유지한 채 성장시키는 기능이지만, 재련은 현재 품질 시스템의 결과를 버리고 다시 추첨하는 기능이기 때문입니다.

 

따라서 단순히

재련하기

 

버튼 하나만 보여주고 바로 실행하는 방식은 피하고 싶었습니다.

 

 

재련 화면에서는 현재 장비를 다시 확인하고

현재 품질과 특성이 새롭게 추첨됨
기존 품질 결과는 유지되지 않음
자수정 조각 ×8 필요
경험치 10레벨 필요

 

같은 내용을 확인한 뒤 실행하도록 했습니다.

 

재련에는 강화나 승급처럼 성공과 실패가 따로 없으므로 성공률을 보여줄 필요는 없습니다.

대신 현재 결과를 잃고 완전히 새로운 품질 결과가 나온다는 점이 가장 중요한 정보였습니다.

 

 

 

 

 

 

실행 직전에는 현재 장비와 자원을 다시 확인하도록 했다

메뉴를 열었을 때 조건을 만족했다고 해서 실제 실행 순간에도 같은 상태라는 보장은 없습니다.

메뉴를 보고 있는 동안 주손 장비가 바뀌거나 필요한 재료와 경험치가 달라질 수도 있습니다.

 

그래서 화면을 처음 열었을 때의 정보만 믿고 처리하는 방식보다 실제 강화·승급·재련을 실행하는 순간 현재 상태를 다시 확인하는 과정도 필요했습니다.

 

예를 들어 강화 버튼을 누를 때는

현재도 같은 품질 장비인지
선택했던 특성이 여전히 존재하는지
이미 최대 단계가 되지는 않았는지
필요한 재료를 가지고 있는지
경험치가 충분한지

 

같은 조건을 다시 검사하는 방식입니다.

 

UI는 단순히 정보를 보여주는 부분이지만 실제 아이템 데이터와 연결되는 기능인 만큼, 화면을 연 시점과 버튼을 누른 시점 사이의 변화도 생각해야 했습니다.

 

 

 

 

 

 

ActionForm으로 기능 흐름은 잡았지만 화면 표현에는 한계가 있었다

ActionForm을 기준으로 메뉴 흐름을 정리하면서 장비 성장 시스템을 실제로 어떻게 조작할지는 상당히 구체적으로 보이기 시작했습니다.

 

 

대장장이 작업대에서 품질 관리 메뉴로 들어가고,

특성 강화
품질 승급
재련

 

중 원하는 기능을 선택한 뒤,

각 기능에 필요한 정보를 확인하고 마지막에 실행하는 흐름까지 연결할 수 있었습니다.

 

 

 

 

기능을 구현하기 위한 메뉴 구조로는 충분히 사용할 수 있는 방식이었습니다.

하지만 강화 시스템에서 보여주고 싶은 정보가 점점 많아지면서 다른 문제가 보이기 시작했습니다.

 

  • 특성의 현재 단계와 최대 단계
  • 성공과 실패 확률
  • 보유 재료와 필요 재료
  • 현재 장비의 아이콘과 품질

강화 가능한 특성을 한눈에 비교하려면 단순히 텍스트와 버튼이 세로로 이어지는 형태만으로는 원하는 모습을 만들기 어려웠습니다.

 

특히 장비의 성장 상태를 게이지나 아이템 카드처럼 시각적으로 보여주고, 각 특성 옆에서 바로 강화할 수 있는 화면을 만들고 싶어지면서 ActionForm만으로 구성하는 방식에는 한계가 있었습니다.

 

그래서 기능의 조작 흐름은 그대로 유지하면서, 다음 단계에서는 이를 좀 더 게임의 장비 관리 화면처럼 보여줄 수 있는 커스텀 UI를 별도로 설계하기 시작했습니다.