Troubleshooting
Troubleshooting
Common issues and how to fix them.
Two chat boxes / duplicate chat
Cause: 기본 chat 리소스가 BUPA Chat과 동시에 실행되고 있습니다. BUPA Chat이 provide 'chat'을 선언하고 있어, 두 리소스 모두 채팅으로 등록되기 때문입니다.
Fix: 기본 chat 리소스를 중지하거나 제거하세요. 설정 파일 어디에서도 ensure chat을 사용하지 말고 오직 ensure bupa-chat만 사용하세요.
Resource won't start / UI is blank
Cause: 누락된 의존성 때문입니다. BUPA Chat은 ox_lib, qb-core에 의존하며 dependency '/assetpacks'를 선언합니다.
Fix: 세 가지 모두 BUPA Chat 보다 먼저 시작되도록 설정하세요:
ensure ox_lib
ensure qb-core
ensure assetpacks
ensure bupa-chatassetpacks가 누락된 경우, 패키징된 UI 에셋 로드에 실패하여 채팅이 절대 나타나지 않습니다.
No messages showing
- 다른 리소스가 표준 API(
chat:addMessage이벤트 또는exports.chat:addMessage(...))를 통해 메시지를 전송하는지 확인하세요. Developer API를 참고하세요. - 카테고리 메시지의 경우, 플레이어가 실제로 접근 권한이 있는지 확인하세요. 카테고리의
permissions(ACE),jobs, 또는gangs가 일치해야 합니다. 권한이 없는 플레이어는 해당 탭을 볼 수도, 사용할 수도 없습니다. - 카테고리의
maxLength를 확인하세요. 지나치게 긴 메시지는 삭제되지 않고 잘리지만, 커스텀 연동에서type이 일치하지 않으면 무시됩니다.
Suggestions not appearing
- 명령어 추천은 플레이어가 사용할 수 있는 ACE 권한이 있는 등록된 명령어(
command.<name>)를 기반으로 생성됩니다. 플레이어에게 해당 명령어에 대한 ACE 권한이 없으면 추천되지 않습니다. - 명령어 추천은 플레이어 로드 시 및 리소스 시작/중지 시 새로 고쳐집니다. 새로 등록된 명령어가 나타나지 않으면 제공하는 리소스를 재시작하거나 채팅을 다시 여세요.
- 커스텀 도움말 텍스트/매개변수의 경우,
chat:addSuggestion/chat:addSuggestions를 사용하여 명시적으로 푸시하세요.
Everything is in English (or the wrong language)
Cause: 로케일 convar가 설정되지 않아 BUPA Chat이 기본값인 en으로 대체됩니다.
Fix: server.cfg에 언어를 설정하세요:
setr ox:locale "tr"
# or force only chat:
setr bupa-chat:locale "tr"bupa-chat:locale이 ox:locale보다 우선시된다는 점을 기억하세요. 실시간 변경을 하려면 bupa:changeLanguage 클라이언트 이벤트를 사용하세요. Localization을 참고하세요.
Missing translations show the key name
활성 언어 파일에 번역이 누락된 경우 t()는 키(예: CATEGORY_ADMIN_LABEL)를 반환합니다. 해당 locales/<code>.json에 누락된 키를 추가하거나 en.json에서 복사해 오세요.
qb-core / framework not detected
Cause: 프레임워크 코어가 BUPA Chat이 부팅된 이후에 시작되었거나(또는 실행 중이 아님) 때문입니다.
Fix: qb-core(또는 qbx_core / es_extended)가 BUPA Chat보다 먼저 시작되도록 설정하세요. 프레임워크 브릿지는 Qbox, QB-Core 및 ESX를 자동으로 감지합니다. 또한 bupa-chat:framework convar를 사용하여 고정하거나 비활성화할 수도 있습니다(기본값 qb-core; 프레임워크 없이 실행하려면 false로 설정).
Discord logging / bridge not working
- Webhook logs not arriving:
server/webhook.lua의 URL이 플레이스홀더 값이 아닌 실제 Discord 웹훅 URL인지 확인하세요. - Discord → chat bridge silent:
shared/config/discord.lua에서active = true로 설정하고,channelId를 입력하며, 봇 토큰 + 길드 ID를 제공하세요(config.discord에 입력하거나config.adminChatName.discord에서 재사용). 봇이 작성한 메시지는 의도적으로 무시됩니다.