콘텐츠로 이동

BuzzBuild-NpcDialog — 명령어·권한

명령 등록은 Paper의 plugin.yml, 실제 처리는 DialogCommand와 BbNpcDialogCommand를 기준으로 합니다. 별도 명령 별칭은 등록되어 있지 않습니다.

문법설명게임 내 실행콘솔 실행
/대화 <dialogId>실행한 플레이어에게 테스트 대화 열기관리자만 가능불가, 플레이어 전용 안내 출력
/bbnpcdialog open <player> <dialogId>온라인 플레이어에게 대화 열기관리자만 가능가능
/bbnpcdialog list로드된 대화 ID와 개수 출력관리자만 가능가능
/bbnpcdialog reload설정과 대사 YAML 다시 읽기관리자만 가능가능
/bbnpcdialog reset <player> <dialogId>지정 대화의 once 완료 기록 초기화관리자만 가능가능
/bbnpcdialog reset <player> *플레이어의 모든 대화 완료 기록 초기화관리자만 가능가능

콘솔에서는 선행 /를 생략합니다. 예시 플레이어 이름 ExamplePlayer는 가상값입니다.

/대화 example_ariana
/bbnpcdialog list
/bbnpcdialog open ExamplePlayer example_ariana
/bbnpcdialog reset ExamplePlayer example_ariana
/bbnpcdialog reset ExamplePlayer *

open의 대상은 정확한 온라인 플레이어 이름으로 찾습니다. reset은 서버가 알고 있는 온라인·오프라인 플레이어 기록에서 이름을 찾으며, 기록이 없는 대상은 실패할 수 있습니다.

/대화는 내부 open 성공 여부를 별도 메시지로 출력하지 않습니다. 실패 원인을 확인할 때는 성공·실패 안내가 있는 /bbnpcdialog open과 문제 해결을 사용합니다.

노드기본 허용적용 지점
buzzbuild.npcdialog.adminop두 명령의 등록 권한 및 실행 코드 검사
buzzbuild.npcdialog.usetrueNPC 우클릭 이벤트에서 검사

관리자 명령은 코드에서도 admin을 검사합니다. use는 NPC 상호작용 권한이며, 관리자 테스트 명령의 대상이나 API open에서 공통으로 검사하는 권한은 아닙니다. 외부 API 호출자는 필요한 이용 권한을 자신의 기능에서 검사하거나 YAML의 conditions에 명시합니다.

일반 플레이어 전용 대화 관리 명령은 없습니다. 플레이어는 연결된 NPC를 우클릭하여 시작하고 대화창에서 선택합니다.

/bbnpcdialog reload는 활성 대화를 취소하고 예약된 플러그인 작업을 정리한 뒤 설정·대사를 다시 읽습니다. 진행 중인 메모리 완료 기록을 디스크에서 다시 읽어 덮어쓰지 않습니다. JAR 업데이트 명령이 아닙니다.

reset은 완료 기록만 초기화합니다. NPC 위치·서비스 상태·인벤토리·보상을 초기화하거나 이미 지급한 보상을 회수하지 않습니다.

/대화는 대화 ID, /bbnpcdialog는 하위 명령과 대화 ID를 자동 완성합니다. open/reset의 플레이어 인자는 서버 기본 자동 완성을 사용하며 reset은 *도 제안합니다.

휠·방향키·확인 키·Shift는 채팅 명령이 아닙니다. 게임 조작에서 설명합니다.

2026-10-05 명령 등록·권한·실행·자동 완성 코드를 확인했습니다. 이전 시연에서 콘솔 open으로 대화 표시를 확인했습니다. 모든 권한 조합, reset/reload 명령 및 자동 완성의 게임 내 동작은 미검증입니다.