Daily DevLog — 2025-12-30
개발자: 전체 팀 브랜치: main 커밋 수: 30개 변경 파일: 26개
1. 오늘의 주요 변경
- 미니 부엉이 봇 UI 및 동작 기능 추가: 플레이어 주변에 미니 부엉이 봇을 생성하여 AI 튜터 역할을 수행하도록 구현하였습니다. 이를 통해 대화 답변을 봇 UI에 표시하고, 위치와 애니메이션을 업데이트하여 자연스러운 상호작용 경험을 제공합니다.
- 게임 스레드 안전성 개선: 여러 함수들이 게임 스레드가 아닌 곳에서 호출될 때 발생할 수 있는 문제를 방지하기 위해, 해당 함수들이 항상 게임 스레드에서 실행되도록 보장하는 로직을 추가했습니다. 이로 인해 스레드 안전성이 높아졌습니다.
- 퀘스트 안내 메시지 멀티캐스트 및 클라이언트별 처리 개선: 퀘스트 진행 중 문 열림 이벤트에 따라 퀘스트 안내 UI를 띄우는 로직을 네트워크 상황에 맞게 수정하여, 모든 클라이언트에게 보여야 하는 퀘스트는 멀티캐스트로 처리하고 개인별 퀘스트는 해당 클라이언트에게만 알림을 보내도록 변경했습니다.
- ADailyKiosk 상호작용 처리 개선: ADailyKiosk 클래스에서 상호작용한 플레이어를 캐시하고 PopupManager를 직접 찾아 접근하는 방식을 간소화하여 코드 가독성을 높였습니다. 팝업 호출을 전역 접근 방식으로 변경했습니다.
- 부분정답 처리 및 Food 자동 이동 기능 추가: FoodHolder에 부분정답 검증 함수를 추가하고, City/Food 각각 정답 판정 후 해당 데이터만 NewFood에 유지하도록 하여 게임의 논리적 흐름을 개선했습니다.
2. 시스템 영향도
- Gameplay 시스템: 미니 부엉이 봇의 추가는 AI 튜터 기능을 통해 사용자 경험을 향상시키며, 게임 스레드 안전성 개선은 전체적인 게임의 안정성을 높입니다.
- UI 시스템: 새로운 TutorSpeechWidget 위젯과 퀘스트 안내 UI의 개선은 사용자 인터페이스의 직관성을 높이고, 멀티캐스트 및 클라이언트별 처리 개선은 네트워크 환경에서의 UI 반응성을 향상시킵니다.
- 네트워크 시스템: 퀘스트 안내 메시지의 멀티캐스트 및 클라이언트별 처리 개선은 네트워크 통신의 효율성을 높이며, 클라이언트 간의 데이터 동기화를 원활하게 합니다.
3. 리스크 및 문제
- 잠재적인 문제점: 미니 부엉이 봇의 동작 및 UI 표시가 예상치 못한 상황에서 오류를 발생시킬 수 있으며, 게임 스레드 안전성 개선이 모든 기존 함수에 적용되지 않을 경우 여전히 스레드 관련 문제가 발생할 수 있습니다.
- 기술적 부채: ADailyKiosk 클래스의 복잡한 접근 방식이 여전히 남아있어, 향후 유지보수 시 어려움을 초래할 수 있습니다.
4. 검증 필요 항목
- 미니 부엉이 봇 동작: AI 튜터 기능이 정상적으로 작동하는지, 대화 응답이 정확히 UI에 표시되는지 검증이 필요합니다.
- 게임 스레드 안전성: 모든 관련 함수가 게임 스레드에서 안전하게 실행되는지 확인해야 합니다.
- 퀘스트 안내 UI: 멀티캐스트 및 클라이언트별 처리 로직이 의도한 대로 작동하는지 테스트해야 합니다.
- 부분정답 처리: Food 자동 이동 기능이 정상적으로 작동하는지 및 부분정답 검증이 올바르게 이루어지는지 확인해야 합니다.
5. 회의 기반 후속 작업
- 회의록과 직접적인 연관 없음: 오늘의 작업은 회의록에서 논의된 내용과 직접적인 연관이 없습니다.
6. 관련 Jira 이슈 (자동 추론)
- [UN-685] 문 소리 바꾸기(너무 시끄러워요) - UI 및 사운드 관련 변경으로 인해 사용자 경험 개선과 관련이 있습니다.
- [UN-679] SPEAK QUEST 최종에서 SpeakJudes할 Popup_SpeakResult가 동시에 뜨면서 Mouse 컨트롤이 잃어서 SpeakResule 스크롤이 안되요 - 퀘스트 안내 UI 개선과 관련이 있습니다.
- [UN-684] 팝업 뜰때 소리 - ADailyKiosk의 팝업 호출 개선과 관련이 있습니다.
- [UN-664] 튜토리얼 시스템 구현 - 미니 부엉이 봇의 AI 튜터 기능과 관련이 있습니다.
생성 시간: 2025-12-31 12:40:36