8296775e21
feat(cards): 실제 메이플 스킬 아이콘 적용 + 피격 이펙트(fx) 분리 (P14-5)
...
- 카드 아트(image)를 경로 검증된 실제 스킬 아이콘 RUID로 교체(28종)
· mapleImgFullPath의 /icon 경로 확인으로 스킬 아이콘 보장(기존엔 이펙트 프레임·맵
오브젝트가 섞여 있었음)
- 피격 이펙트(fx) 필드 신설(18종) — 스킬 effect/hit 프레임 RUID
· PlayCard가 PlayAttackFx/PlayAoeFx에 c.fx or c.image 전달(이펙트 분리, 없으면 폴백)
· luaCardsTable fx 직렬화. MSW asset 메타데이터 경로 검증으로 수급(워크플로 6에이전트)
- 아이콘 미발견 카드는 기존 RUID 유지. sim 35/35 통과. 산출물 재생성
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 00:57:24 +09:00
d546d62755
feat(thief): 도적 클래스 + 2차 전직(어쌔신/시프) 추가 (P14-4)
...
- CLASSES.thief(maxHp 75), JOBS.thief = [어쌔신(CriticalThrow), 시프(SavageBlow)]
- 카드 11종: 도적1차(럭키세븐/더블스탭/다크사이트/헤이스트/드레인)
· 어쌔신(크리티컬스로우/쉐도우스타/클로마스터리)
· 시프(새비지블로우/스틸/메소가드), starterDecks.thief 추가
- cardframes classToFrame: thief/assassin/bandit → bandit 프레임(기존 RUID 재사용)
- CharacterSelectHud Thief 해금, BindMenuButtons ThiefButton, RenderCharacterSelect·
StartNewGame·StartRun·JobLabel 도적 분기. 전사/법사 2차는 기존 완비 확인
- 산출물 재생성(생성기 검증 통과)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 00:38:52 +09:00
8f58a90746
feat(combat): 몬스터 랜덤 구성·랜덤 행동·덱 오염(AddCard)·map01 로스터 (P14-3)
...
- 구성 랜덤화: BuildMonsters를 그룹별 수집 후 노드 타입별 추첨
(일반 1~3 / 엘리트 1+일반0~2 / 보스 1, MAX_MONSTERS=4 내)
- 행동 랜덤화: EnemyActStep 순차(round-robin) → 정의된 intent 중 math.random 선택
(스폰 시 시작 intent도 랜덤, sim-balance.mjs 미러 동기화)
- StS2식 덱 오염: AddCard intent 신규 — 저주 카드(Wound/Burn)를 버린 더미에 추가
· Wound=사용불가 사석, Burn=사용불가+턴종료 피해2(EndPlayerTurn 처리)
· PlayCard unplayable 가드, CardPool class 필터로 보상/상점 자동 제외
· luaIntentsArray(card/count)·luaCardsTable(unplayable/curse/endTurnDamage) 직렬화
- map01 인카운터: 일반 5종(주황/초록/빨강달팽이/파랑/돼지) + 엘리트1 + 보스1, 우측 포메이션
· enemies.json red_snail/stump 신규, blue_mushroom/mushmom에 AddCard intent
· gen-map-encounters 레이아웃 맵별 분기 + 풀 인덱싱 일반화
- 막 배율 0.6→0.45(5막 기준 완화). sim 테스트 35/35 통과(신규 3 포함). 산출물 재생성
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 00:33:49 +09:00
8fa1079548
feat(map-ui): 노드 맵 가로 진행 레이아웃(왼→오른쪽) (P14-2)
...
- nodeX=행(좌→우)·nodeY=열(분기)로 좌표축 스왑, 보스는 최우측 중앙
- 호출부(노드/도트/보스 간선) 인자 스왑. Lua 무수정(좌표는 JS 빌더 전담)
- 도트 보간·간선·라벨 좌표 함수 파생이라 자동 추종. 산출물 재생성
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 00:14:24 +09:00
9e16465218
feat(map): 맵 5막화·노드 depth 7·rest/shop/elite 연속 금지 (P14-1)
...
- ACT_COUNT/RUN_LENGTH 3→5, ACT_MAPS map01~map05 (반복 런 기반 확장)
- MAP_ROWS 7→6 (걷는 행 6 + 보스 = depth 최대 7), 막 배율 0.6→0.45 완화
- 노드 타입 인접 금지를 elite 단독 → rest/shop/elite 3종으로 일반화
(Lua GenerateMap + rogue-map.mjs JS 미러 동시 수정, 테스트 9/9 통과)
- 맵 파일 생성기 카운트 11→5, map06~map11 삭제, SectorConfig 정리(stale 제거)
- 산출물 재생성(ui/codeblock/map01~05). 검증 헬퍼 tools/verify/count.mjs 추가
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 00:13:16 +09:00
afe995a895
fix(card-frames): 프레임 슬롯 픽셀 실측 기반 레이아웃 정밀 보정 (이름→배너 중심·코스트→육각 중심·이름 폭 축소로 육각 겹침 제거)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 04:01:08 +09:00
b2693be111
fix(card-frames): 카드 단위 엔티티 id v2 네임스페이스 발급 — 에디터에서 소실된 자식 엔티티 신규 생성 유도
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-13 00:01:25 +09:00
675616bf51
fix(card-frames): 엔티티 id↔path 매핑 보존 (구 stride 유지·중복 검증) — 메이커 refresh in-place 병합 꼬임 수정
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 23:56:40 +09:00
aaa68ebe07
feat(card-frames): 보상 등급 가중 추첨 70/25/5 (Lua + JS 미러 rarityForRoll·경계 테스트)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 23:40:58 +09:00
35dfcbaffe
feat(card-frames): 생성기 — 프레임 렌더링·cardFaceLayout 통합 (5개 카드 사이트·단색판 제거)
...
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-12 23:39:27 +09:00
abd6d00052
feat(motion): 전투 모션 — 공격/피격/독뎀 (생성기+산출물)
...
- PlayerAttackMotion(StateComponent ATTACK→IDLE)·PlayerHitMotion(HIT+넉백 틱)
- MonsterLunge(공격 시 런지)·MonsterHitMotion(hit 클립 스왑→stand 복귀, 폴백 흔들림)
- BuildMonsters에 hit/stand 클립 pcall 캐시·motionBusy
- 훅: PlayCard·DealDamageToTarget·PlayAoeFx·독 틱·체인메일 반사·EnemyActStep
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 18:37:42 +09:00
7aed1943b7
fix(ascension): 메뉴 Asc 엔티티 guid 충돌 해소 (190→195~197)
...
CharacterSelectHud/OpaqueBackdrop이 menu:190 선점 — AscMinus 미표시 원인
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 14:24:36 +09:00
9989a61675
fix(ascension): RPC ExecSpace 실측 보정 — Server=5·Client=6 (프로브 검증)
...
- 1은 ServerOnly(클라 호출 무시)라 저장/로드 RPC 미동작 → 5로 수정
- RecvAscension 6(Client): 서버→특정 클라 userId 라우팅 실측 확인
- 설계 문서 ExecSpace 표 갱신, 프로브 메서드 제거
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 14:20:05 +09:00
2c28935d95
fix(ascension): UserId 접근을 PlayerComponent.UserId로 (빌드 경고 2건 해소)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 14:11:48 +09:00
b635cb3a63
feat(ascension): 승천 A1~A10·UserDataStorage 개인 저장·서버 RPC (생성기+산출물)
...
- ReqLoadAscension[Server]/RecvAscension[Client·특정 유저 응답]/SaveAscension[Server]
- ExecSpace 일괄 6 → 명시값 보존 (첫 서버-클라 RPC)
- 모디파이어: 적 HP/피해 ×1.1~1.2·정예 배율 +0.2/0.4·시작 HP -10/-20·메소 ×0.75/0.5
- 메인 메뉴 승천 [-]/라벨/[+], 클리어 시 해금+1·저장·'승천 N 해금!' 표시
- TopBar '· 승천N', 테스트 40건 유지
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 14:10:30 +09:00
fc0a96fcb7
fix(magician): Jobs prop 선언 누락 (빌드 경고 6건 해소)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 13:57:41 +09:00
e1d298f972
feat(magician): 캐릭터 선택 오픈·전직 화면 동적화 (생성기)
...
- Mage 버튼 활성·SelectClass(magician)·2클래스 하이라이트/가드
- JobSelectHud Job_slot1..3 범용화 + ShowJobSelect(클래스별 JOBS 채움)
- SetJob/JobLabel을 Jobs 테이블 기반으로 (luaJobsTable 주입, luaStr 개행 이스케이프)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 13:54:14 +09:00
811c8ec2ac
feat(magician): 독 DoT·AoE·회복·드로 메커니즘 (생성기+시뮬 loadData)
...
- PlayCard: aoe→PlayAoeFx(전 생존 적 각자 취약/방어·슬롯별 팝업), heal/draw/poison
- EnemyActStep 행동 시작 독 틱(피해 팝업·사망 시 행동 생략·체인 계속)
- BuffsLabel 독N 표시, 클래스별 StartRun(HP 80/70·시작 덱), JOBS 상수·검증
- sim loadData: starterDecks.warrior 사용
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 13:51:15 +09:00
2c9a1b351e
feat(job): 클래스 풀 필터·전직 선택 흐름·전직 HUD (생성기)
...
- CardPool(클래스 필터) — 보상·상점 공용
- 보스 분기: 1차+비최종막 → JobChoiceHud(유물/전직), ContinueAfterBoss 추출
- JobSelectHud 3직업 패널, SetJob(대표 카드 지급·직업명 갱신)
- guid 'job'=0xe4, HideGameHud·BindButtons 등록
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 13:36:46 +09:00
74e3a70a19
feat(job): 다단히트·방어무시·자가취약·파워 2종 (생성기)
...
- PlayCard Attack: hits 합산(힘·펜닙 타격마다 적용), pierce 전달, selfVuln
- DealDamageToTarget/PlayAttackFx pierce 시그니처 (물약 화염병 false)
- StartPlayerTurn 파워 루프: energyPerTurn·blockPerTurn (블록 리셋 후)
- 카드 class 직렬화(누락 시 fail-fast)·PlayerJob prop
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 13:34:11 +09:00
c69a17abe0
feat(rogue-map): 유물 방 상자 연출·TreasureHud·메소 표기 (생성기+산출물)
...
- TreasureHud: 보물 상자(클릭→흔들림 0.08s×6→열림 RUID 교체→유물+메소 보상)
- 상자 닫힘/열림 RUID 메이커 선별, PickNewRelic 재사용 (소진 시 메소 대체)
- ShowState/HideGameHud/LeaveNode treasure 등록, 표시 화폐 '골드'→'메소' 전환
- 테스트 30건(rogue-map 9 + sim 21) 통과
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 10:22:29 +09:00
1abd9f7987
feat(rogue-map): 맵 그리드·점선 도트 UI + RenderMap 상태 4단 (생성기)
...
- Node_r{1..7}c{1..4}+boss 정적 그리드, Dot 간선 192개 (기본 비활성)
- RenderMapNode: 타입색 6종·현재(골드)/방문(어둡게)/도달가능/잠김
- RenderMapDots: 간선 존재 토글·현재 노드 발신 간선 골드 강조
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 10:18:36 +09:00
1624ef6f3b
feat(rogue-map): GenerateMap 런타임 절차 생성 + 층 시스템 (생성기)
...
- 정적 map.json·luaMapNodesTable·luaStartArray 제거
- GenerateMap: 경로 4개 걷기·행별 가중 타입·elite 연속 금지 (JS 미러 동기화)
- Depth/VisitedNodes prop, PickNode treasure 분기·층 갱신, 보스 클리어 시 새 맵
- TopBar '막 F/3 · D층', 메소 표기 시작
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 10:16:55 +09:00
62b2193f2e
feat(potions-relics): 유물 아이콘 행·물약 슬롯·툴팁·물약 메뉴 UI (생성기+산출물)
...
- TopBar: RelicSlot×10(+오버플로)·PotionSlot×5 (UITouchReceive hover 툴팁)
- TooltipBox(이름+설명)·PotionMenu(사용/버리기/닫기) 팝업
- ShopHud Potion 판매 항목, AllDeckButton 우측 이동
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 07:33:15 +09:00
2a42c4a372
feat(potions-relics): 물약 사용·드랍·상점 로직 (생성기)
...
- AddPotion(슬롯 검사)·MaybeDropPotion(승리 40% 드랍)·RenderPotions(아이콘/빈칸/잠금)
- OpenPotionMenu/ClosePotionMenu/UsePotion(전투 중 한정)/TossPotion
- 상점 ShopPotion 판매 20골드 (BuyPotion, 슬롯 검사 선행)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 07:30:00 +09:00
42f9143f73
feat(potions-relics): 유물 15종 효과 훅 (생성기)
...
- HasRelic·PickNewRelic(미보유 추첨, 소진 시 골드+25)
- ApplyRelics 확장: strength/draw/heal/healOnWin/healIfLow + combatEnd 훅
- AddRelic passive: 물약 슬롯 5칸(장인의 벨트)·최대 HP+7(건강의 반지)
- CalcPlayerAttack: 아카베코(첫 공격+8)·펜닙(10번째 2배)·부츠(5 미만→5)
- DealDamageToPlayer: 브론즈 체인메일 반사·점토 갑옷·백년의 부적
- 챔피언 벨트(취약 부여 시 약화+1), 정예·보스 유물 보상 개선
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 07:29:01 +09:00
00844857ee
feat(buffs-power): 적 방어도 배지·버프 라인·디버프 인텐트 UI (생성기)
...
- MonsterSlot에 BlockBadge(방어도)·Buffs(힘/약화/취약) 추가
- PlayerPanel Buffs 라인 (버프 + 활성 파워 표시)
- 인텐트: Debuff 보라색·공격 최종 예상치(힘·약화·취약 반영) 표시
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 01:29:04 +09:00
6df3fcf01c
feat(buffs-power): 버프/디버프·Power 전투 규칙 (생성기)
...
- 약화(-25%)·취약(+50%)·힘(+N) 피해 공식 양방향 적용 (CalcPlayerAttack·EnemyActStep)
- Power 카드: 사용 시 소멸, PlayerPowers 등록, 매턴 strengthPerTurn 발동
- 적 Debuff 인텐트 처리·디버프 턴 감소(플레이어 턴 종료·적 행동 후)
- 인텐트 effect 직렬화·막 배율은 Debuff 값 제외
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-12 01:28:03 +09:00
8ff50b428d
feat(system-gaps): 복합 카드(피해+방어)·런 종료 후 메뉴 복귀(EndRun)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 09:01:42 +09:00
1de8fac893
feat(system-gaps): 경제 상향(승리25·엘리트+15)·적 패턴 보강·신규 카드 2종 데이터
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 08:57:33 +09:00
32a0b2437b
feat(act-maps): 막별 맵 텔레포트 + 등록 맵 필터
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 08:48:03 +09:00
f88e6ffeeb
feat(combat-feel): 적 개별 차례 시퀀스 (ActFrame·EnemyActStep)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 08:31:37 +09:00
5921dfbeb8
feat(combat-feel): 데미지 팝업·사망 지연
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 08:28:02 +09:00
4b7ad753a4
feat(combat-feel): 공격 이펙트 후 지연 데미지 (SkillFx·FxBusy)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 08:25:05 +09:00
c80020a464
feat(combat-feel): 카드 드래그 타겟팅 (UITouchReceive·ResolveCardDrop)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 03:20:33 +09:00
76cb2cd65e
feat(card-visuals): 보상·상점·그리드 카드 프레임 적용
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 02:59:38 +09:00
d2aba643fa
feat(card-visuals): 손패 카드 프레임(Art·NamePlate·CostPlate)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 02:55:54 +09:00
d783cccea1
feat(card-visuals): ApplyCardFace 렌더 일원화 + Cards image 직렬화
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 02:53:07 +09:00
2f73910e47
fix(combat-ui): 보상 화면에서 손패/덱HUD 숨김 (플레이테스트 발견)
...
보상 오버레이 아래로 손패가 비쳐 시각 충돌 → OfferReward 진입 시 CardHand/DeckHud off
(PickReward→ShowMap 경로가 상태 복원).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-11 02:27:13 +09:00
b5facb7763
fix(combat-ui): AABB 겹침 해소(오브·턴종료 y160, 패널 y-494)·HP바 높이 일치·덱 팝업 숨김·cmbN 제거
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 02:16:58 +09:00
1762112296
feat(combat-ui): ShowState 가시성 통일 + 전투 시작 시 Result 초기화
2026-06-11 02:05:53 +09:00
389e7f36cf
feat(combat-ui): 타겟 프레임·몬스터 슬롯 가독성·의도 색상
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 02:02:20 +09:00
24e6aca305
feat(combat-ui): 플레이어 패널(HP바·방어 뱃지) + SetHpBar 폭 인자
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 01:58:01 +09:00
d1f894a802
feat(combat-ui): 상단 TopBar (막·골드·유물·모든덱보기 통합)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 01:53:36 +09:00
c5e28062eb
feat(combat-ui): 에너지 오브(좌)·턴 종료 버튼(우) 재배치
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-06-11 01:50:00 +09:00
fb5f0d6d5b
Merge pull request 'fix(ui): keep deck popups above monster hp' ( #33 ) from fix/deck-popup-layering into main
...
Reviewed-on: #33
2026-06-11 01:44:48 +09:00
569c1d5eb4
Merge pull request 'feat(map01): 노드 타입별 몬스터 그룹 콘텐츠 + HP바 몬스터 추종' ( #32 ) from feature/map01-monster-content into main
...
Reviewed-on: #32
2026-06-11 01:44:24 +09:00
066ad6ddca
fix(ui): keep deck popups above monster hp
2026-06-11 01:41:40 +09:00
1a15225ff6
Merge pull request '덱 팝업에서 몬스터 HP UI가 앞에 뜨지 않도록 수정' ( #30 ) from fix/deck-popup-monster-layer into main
...
Reviewed-on: #30
2026-06-10 23:39:12 +09:00
33bc98c015
feat(map01): HP바를 각 몬스터 위에 표시(world→screen) + 엘리트/보스 우측 배치
...
- PositionMonsterSlot: 고정 좌표 대신 _UILogic:WorldToScreenPosition→ScreenToUIPosition 으로
각 몬스터 월드 위치 위(HEAD_OFFSET_Y)에 슬롯을 띄움 → 몬스터를 옮겨도 자동 추종
- 미사용 고정좌표 시스템 제거: SlotPos/ActiveSlotPos prop·StartRun 주입·SLOTS 로드·
luaSlotGroup·upsertUi 단언·data/monster-slots.json
- map01 엘리트(머쉬맘 x3·변형된 달팽이 x5)·보스(킹 슬라임 x4) 월드 위치를 우측으로 이동
메이커 검증: combat/elite/boss 각 노드에서 해당 그룹만 등장, HP바가 각 몬스터 머리 위에 표시.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-10 23:26:56 +09:00