feat: P15 — 로비를 전용 맵 + 월드 NPC로 (근접·클릭 상호작용, 로비 한정 이동·공격) #54
Reference in New Issue
Block a user
Delete Branch "feature/p15-lobby-map-npc"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
요약
UI 패널 로비(P14-8
LobbyHud색칠 버튼 4개)를 폐기하고, 전용 물리 맵lobby(헤네시스 마을 배경)에 공식 메이플 NPC 4종을 월드 엔티티로 배치했습니다. NPC에 다가가↑키 또는 직접 클릭으로 기능을 열며, 플레이어 이동·공격 모션은 로비 맵에서만 풀립니다(전투/런 맵은 기존대로 잠김).변경 내용
신규 생성기
tools/map/gen-lobby-map.mjs—map01클론 →map/lobby.map(마을 배경, 몬스터 제거). NPC 4종(공식 maplestory NPC 스프라이트)+머리 위 마크(balloon) 배치, 각 NPC에TouchReceiveComponent+script.LobbyNpc(NpcId), 루트에script.LobbyMobility(PlayerLock 제거).SectorConfig에map://lobby등록.tools/player/gen-lobby-npc.mjs—LobbyNpc(거리 폴링→마크 토글,TouchEvent/UpArrow→Interact→컨트롤러OnLobbyNpcInteract),LobbyMobility(진입 시 이동 해제) codeblock emit.기존 생성기 수정
tools/deck/gen-slaydeck.mjs—OnBeginPlay/EndRun→로비 맵 텔레포트(GoLobbyMap),OnLobbyNpcInteract(id)→기존 기능 패널(직업선택/도감/영혼상점/게시판) 디스패치,StartRun에 1막 map01 물리 텔레포트 추가(BuildMonsters의CurrentMapName필터 대응), 공격 키(Ctrl, 로비 한정) 바인딩,LobbyHud를 투명·비레이캐스트 미니 정보바(영혼/승천)로 슬림화 — 버튼 행 제거.tools/player/gen-player-lock.mjs— 전투맵PlayerLock에InputSpeed/JumpForce/WalkAcceleration=0런타임 재잠금(로비 해제값 누설 방어).이동 해제 메커니즘 (메이커 실측)
freeze-turn-player가 0으로 만든 값 중
RigidbodyComponent.WalkAcceleration과MovementComponent.InputSpeed가 둘 다 양수여야 걷고 점프함(둘 중 하나만으론 안 됨).LobbyMobility가 로비 진입 시pc.Enable=true,WalkAcceleration=0.7,InputSpeed=5,JumpForce=5복원. 전투맵 텔레포트 시 모델 기본값(0)+PlayerLock재잠금으로 자동 재동결 → "로비맵에서만"을 구조적으로 보장.검증 (메이커 플레이테스트)
전 시나리오 통과 (실측 로그+스크린샷):
←→이동·점프 정상↑키 → 카드 도감 오픈InputSpeed=0, WalkAccel=0, pcEnable=false), StS 노드 트리 정상InputSpeed=5, WalkAccel=0.7)sim-balance/rogue-map44/44 PASS알려진 비치명적 lint (게임플레이 무영향)
MonsterAttack.OnBeginPlayAnimationClip 에러 /DuplicateComponent경고: NPC가 유일한 스프라이트 템플릿인chasemonster모델을 상속해script.Monster/MonsterAttack가 따라옴. 로비엔 전투 컨텍스트가 없어 휴면이고, 전투맵 몬스터와 공유되는 기존 lint. 향후 전용 NPC 모델로 교체 가능.산출물 재생성
설계:
docs/superpowers/specs/2026-06-14-lobby-map-npc-design.md· 계획:docs/superpowers/plans/2026-06-14-lobby-map-npc.md🤖 Generated with Claude Code