계속 고치려고 하다보니 너무 꼬여서 손님NPC를 처음부터 다시 만들기로 했습니다..
문제1. 회전 회오리~~(해결)
제자리에서 계속 돌고 있음.
(문제 영상)
<해결 과정>
원인 :
STT_PickRandomWanderTarget
→ PickRandomWanderTarget 호출
→ Finish Task Success
→ State Completed
→ Shopping으로 즉시 재진입
→ 다시 PickRandomWanderTarget 호출
손님 NPC의 목적지가 계속 바뀌는데 Move To가 제대로 이동하기 전에 다음 포인트로 계속 덮어씌워지는 상태인 듯 하다.

이런식으로 Shopping 하나였던걸 3개로 나눠보았다.
(해결영상)
이제야 잘 움직인다! 해결~~
문제2. 시야 내에서 훔치고 있는데 신고하지 않음.
손님NPC가 플레이어를 감지하긴 함.
그런데, 시야 내에서 물건을 훔치는 상호작용을 하고 있는데도 신고 게이지가 차오르지 않음. Suspicious상태가 되지 않음.
[NPC] Enter Suspicious 로그가 뜨지않음...!
<구현하고자 했던 것>
플레이어가 손님NPC의 시야 내에서 물건을 훔치면 Suspicious됨. 의심게이지가 다 차면 신고.

일단, Shopping -> Suspicious의 Trigger를 On Tick 으로 변경하였다.

이렇게 변경하고 플레이 해보니...
뭔가 경고가 왕창 뜬다.
GPT에게 물어본다.
LogStateTree: Warning:
Evaluation forced to false: source data cannot be accessed
(e.g. enter conditions trying to access inactive parent state)
StateTree 바인딩/조건 위치 문제라고 한다. 의미는
StateTree 조건에서 어떤 데이터를 읽으려고 했는데,
그 데이터가 현재 활성 상태에서 접근 불가능해서
조건 평가를 강제로 false 처리했다
라고하네요.
추정 원인...
Shopping -> Suspicious 조건에서 TargetActor, bHasSeenTarget, bIsTargetStealing을 읽을 때, 그 값이 상태 내부 Task의 Instance Data나 비활성 상태의 데이터로 잡혀 있을 가능성..
이건 내일 해결해보려합니다.
'내일배움캠프' 카테고리의 다른 글
| 내일배움캠프 언리얼트랙 45일차 - GAS (0) | 2026.06.25 |
|---|---|
| 내일배움캠프 언리얼트랙 44일차 - 손님NPC 신고게이지 (0) | 2026.06.24 |
| 내일배움캠프 언리얼트랙 42일차 - 손님NPC AI Controller, State Tree (0) | 2026.06.22 |
| 내일배움캠프 언리얼트랙 41일차 - 보안요원 State Tree (0) | 2026.06.19 |
| 내일배움캠프 언리얼트랙 40일차 - 보안요원 AI Controller (0) | 2026.06.18 |