NPC가 "같이 가자"라고 말하는데 실제로 안 따라오면 허무합니다. 동행 시스템을 만들었습니다.
동행 시스템
LLM 응답에 세 가지 태그를 인식합니다:
[동행]— NPC가 플레이어를 따라다님. "같이 가자!" → NPC가 1.8칸 거리를 유지하며 따라옴.[안내:cafe]— NPC가 장소로 앞서 걸어감. 플레이어는 자동으로 뒤따름. "카페로 안내해줄게!"[동행해제]— 동행 종료. 작별 인사 시에도 자동 해제.
서버 프롬프트에 동행 규칙을 추가해서, NPC가 적절한 상황에서 태그를 자연스럽게 사용합니다.
마을 Lore
서버 프롬프트에 마을 역사 11항목 추가:
- 마을 이름 "유곤포르 마을", AI 주민의 탄생
- 자정의 분수 전설, 고양이 마을, 비 오는 날 버섯
- 서울 실시간 동기화 설명, 마을 모토 "느린 삶, 깊은 관계"
도슨트 유진은 특별 지시: "마을에 대해 누구보다 잘 알고, 대화할 때마다 새로운 이야기를 하나씩 꺼내세요."
욕구 시스템
NPC가 이유 있게 움직입니다:
- 배고프면(hunger>70) → 카페/빵집으로
- 피곤하면(energy<20) → 집으로
- 외로우면(social<30) → 광장으로
혼잣말과 대화에 욕구 상태가 반영됩니다.
기타
- 도슨트 첫 인사가 말풍선에도 표시 + waving 포즈
- 대화 추천 버튼 (도슨트/친한NPC/새NPC별 3개씩)
- 스트리밍 말풍선 (LLM 응답이 실시간으로 NPC 머리 위에)
- NPC 앉기/눕기 조건 엄격화 + 눈 위치 수정
- 건물 내 NPC 겹침 수정 (npcSpots 배치)