AI 14

[AI로 모바일 게임 개발 - 13] 레이피어 캐릭터 제작 (4/4)

지난 이야기 레이피어 캐릭터의 고유 스킬까지 구현하며 프로토타입의 끝이 보이려던 순간... 예상치 못하게 파업한 클로드로 인해 추가 작업을 진행할 수 없었다. 이틀이 지나고 서버가 좀 나아졌으리라 기대하며 다시 개발을 이어갔다.다듬기만 하면 돼 좀만 더 힘내 다행히, 에러는 그리 많지 않았다. 정체 모를 더블 리턴 코드를 손수 제거하고, 멀쩡한 상태에서 클로드를 시작했다.(원래라면 이걸 고치는 것도 클로드에게 맡기는 게 맞겠지만, 또 무슨 짓을 저지를지 모르니...) 그 외 클로드가 중단되며 날려먹은 파일들을 휴지통에서 찾아 복구하고, 일반 공격 차단 및 고유 스킬 범위 시각화까지 완료된 시점을 살려냈다. 그후, 테스트해보며 몇 가지 문제점을 더 찾았다.위의 저스트 회피 중 피격 시 다시 저..

[AI로 모바일 게임 개발 - 12] 레이피어 캐릭터 제작 (3/4)

지난 이야기 Character, Rapier 코드에서 이동 관련 부분을 뜯어고쳤고, 레이피어 고유 스킬이 제대로 작동했다.하지만 무적 판정이 없어서, 공격 준비 중인 적에게 다가가 그대로 죽는 현상도 생겼다.알아서 어디까지 했는지 파악하고 작업해 작업 도중 멈춰서인지, CharacterPresenterBase.HandleSwipe에서 Lock만 걸고 Free를 안 하는 이슈가 있었어. 이에 함수의 맨 끝에 Free를 넣었어. 만약 HandleSwipe 내에서 위치가 틀렸다면, 직접 고치지 말고 내게 넌지시 알려만 줘. 레이피어 고유 스킬에 대해서, 현재 고유 스킬 발동 중 탭으로 일반 공격 시 표식이 새겨지는 이슈가 있어. 해결 방안을 모색해 줘. 그리고, 저스트 회피 중 레이피어가 고유 스킬을 쓸 때의..

[AI로 모바일 게임 개발 - 11] 레이피어 캐릭터 제작 (2/4)

지난 이야기 토큰이 다 닳때까지 구현을 시도했지만, 결국 제대로 완성하지 못하고 끝났었다.회복된 토큰과 함께 다시 달려보자.나는 일하지 않는다(?) 저스트 회피 후 터치 시 적을 향해 달려가고, 로그를 보면 표식도 쌓이는 것 같아. 하지만 타격하며 표식을 새긴 후, 다시 원래 위치(회피 시 대시하는 마지막 지점)로 돌아와야 하는데, 계속 돌진한 자리에 멈춰.Enemy 위에 표식 수가 나타나지 않아.스크립트를 읽고 원인을 분석한 후, 해결 방안을 제시해 봐. 플레이해보고 어떤 문제가 있는지 알려주는 건 내 역할이지만, 디버그해보고 고치는 건 내 역할이 아니다. 일해라 클로드. 더보기관련 스크립트들을 읽어볼게요.CharacterView와 EnemyHpBar도 읽어볼게요.두 스크립트를 정밀하게 분석할게요.분석..

[AI로 모바일 게임 개발 - 10] 레이피어 캐릭터 제작 (1/4)

지난 이야기 지난 시간에 저스트 회피 구현까지 끝마쳤었다.이제 본격적으로 이 게임의 코어 게임성, 레이피어 캐릭터를 제작해보자.개발한 거 제목 유니티로 MCP 연결해뒀어. Assets/_Project/00_Docs/Editor/AI_CONTEXT를 읽어봐.더보기manage_script의 read 액션으로 AI_CONTEXT 파일을 읽어볼게요.아주 잘 정리된 컨텍스트 파일이네요! 내용을 완전히 파악했습니다. 요약해서 보고드릴게요.프로젝트 현황 파악 완료프로젝트: 가칭 Rapier — 싱글 플레이 실시간 액션 RPG (모바일, 세로) 기술 스택: URP 2D / MVP 아키텍처 / New Input System / C# event + SO 채널 현재 완료: Phase 1~6 (입력 → 캐릭터 베이스 → 플레..

[AI로 모바일 게임 개발 - 9] 저스트 회피 제작

지난 이야기 씬 뷰에 기즈모를 추가하고, 그 내용을 바탕으로 일반 공격이 안 나가던 현상을 수정했다. 이제 저스트 회피와 레이피어 캐릭터(표식 + 터트리기) 로직을 구현해, 진짜 프로토타입을 만들어보자!새 기능은 새 친구에게새로운 세션을 열고, 지금까지 작업한 내용을 읽게 했다. 점점 말이 짧아지는 건 기분탓이다. 유니티 MCP 연동해뒀는데, Assets/_Project/00_Docs/Editor/AI_CONTEXT를 읽어봐.더보기먼저 Unity MCP를 통해 해당 경로의 파일들을 읽어볼게요!먼저 해당 폴더에 어떤 파일이 있는지 확인해볼게요.AI_CONTEXT.cs 파일을 찾았네요! 읽어볼게요.완벽하게 읽었어요! 컨텍스트를 잘 파악했습니다. 정리해드릴게요.프로젝트 컨텍스트 복구 완료 ✅프로젝트: 가칭..

[AI로 모바일 게임 개발 - 8.5] 기획서 및 문서 워크플로우 개선

지난 이야기 UI를 제작하여, 체력이 줄어드는 게 잘 보인다. 이제 레이피어 캐릭터를 개발할 차롄데, 그전에 기획서를 손보고, 또 관리하는 워크플로우를 개선해보자.현행 방식은...현재 내 프로젝트에서 문서를 관리하는 방식은 이렇다. 사용하는 문서는 3가지로클로드 세션 간 컨텍스트 관리를 위한 AI_CONTEXT.cs프로젝트 진행 방법을 합의한 PROJECT_GUIDELINES.md프로젝트 전체 기획을 설명하는 기획서 Rapier_prototype_designdoc_v1.1.0.docx그리고 이 문서를 관리하는 방식은AI_CONTEXT는 cs 파일이니, 직접 수정하고 읽어온다.PROJECT_GUIDELINES는 md 파일인데, 클로드는 md 파일을 읽어올 수 없다. 이에 내용은 cs로 따로 관리하며, 해당..

[AI로 모바일 게임 개발 - 8] 공격 범위 시각화 및 공격 안 되는 현상 수정

서론 지난 시간, 플레이어와 적에게 UI를 추가해, Hp 바와 차지 게이지가 생겼다. 하지만 화면을 아무리 탭해도, 일반 공격이 나가지 않는 문제가 있었다. 이번 시간엔 플레이어와 적의 공격 범위를 화면에 띄우고, 왜 공격이 안 되는지 찾아서 고쳐보자.맥락을 유지하자토큰을 아끼기 위해 새 세션을 열었다. 클로드는 새 세션을 열면 모든 맥락이 끊기니, 미리 작성해둔 AI_CONTEXT를 읽어보게 한다. 현재 유니티와 MCP로 연결되어 있어.Assets/_Project/00_Docs/Editor/AI_CONTEXT.cs를 읽고, 지금 무엇을 해야 하는지 말해줘.더보기먼저 AI_CONTEXT.cs 파일을 읽어볼게요.AI_CONTEXT.cs 파일을 읽었습니다. 현재 상황을 정리해드릴게요.📋 현재 상태 요약프..

[AI로 모바일 게임 개발 - 7] UI 추가

지난 이야기 적 시스템을 제작하고, 일정 주기로 생성하는 WaveManager가 추가되었다. 적이 플레이어를 잘 때리는데 반해, 플레이어의 공격은 어째선지 닿지 않는다.세션을 구분하자 지금까진 한 세션에서 모든 작업을 처리했다. 그러나 클로드 정보를 얻다보니, 클로드에게 프롬프트를 던질 때 이전 프롬프트들이 전부 입력되며, 이에 따라 토큰 소모량이 늘어나고, 컨텍스트 롯(Rot)이 발생한다는 이야기를 들었다. 이에 지금부턴 각 기능(페이즈) 개발마다 세션을 분리하고, 공통된 내용은 지금껏 저장해오던 AI_CONTEXT로 공유해보려 한다. 안녕, 나는 지금 유니티로 모바일 게임을 개발하고 있어. 너와 함께 이 거대한 개발의 구조를 설계하고, 명세서를 작성하고, 또 직접 개발하며 프로젝트를 완성시키려고 ..

[AI로 모바일 게임 개발 - 6] 플레이어 이동 버그 수정

지난 이야기 이전 시간에, 플레이어 이동까지 구현한 후 토큰을 다 써 멈췄었다.이번 시간엔 우선 버그를 수정해보자.AI의 개발은 엄밀하지 않다.드래그가 되긴 하지만, 꽤나 많은 문제가 산재해 있다. 버그를 고치려고 발생한 문제를 알려주면, 클로드는 해당 문장 안에서 원인을 찾고, 고치려고 하는 경향이 있다. 우선은 테스트 결과를 통보하고, 조금 넓은 시야를 갖게 요청해보자. 드래그 시, 조이스틱이 생성되는 지점이 터치 포인트와 거리가 떨어져 있어.Swipe가 동작하지 않아. 이 역시 Move로 처리돼.그리고, 유니티를 껐다 켜니 Play를 누르면 [PlayerPresenter] GestureRecognizer가 ServiceLocator에 등록되지 않음. 에러가 나네. 그래서 입력은 잘 감지되는데, Pl..

[AI로 모바일 게임 개발 - 5] 기반 코드 생성, 플레이어 이동 구현

서론명세를 정말 오래도 짰다. 이제, 진짜 프로토타입 개발을 시작해보자.Phase 1 — 기반 (다른 모든 것이 여기에 의존) 먼저, 자신은 의존하지 않지만 다른 코드가 의존하는 코드들을 생성한다. 1. ServiceLocatorServiceLocator는 디자인 패턴 중 하나인 ServiceLocator 패턴이다.유니티에서 개발하다보면, 흔히 Manager로 명명한 전역 시스템이 늘어난다. 그리고 보통, 이걸 전부 Singleton화 시킨다.ServiceLocator는, 쉽게 말해 모든 전역 시스템 인스턴스를 한 곳에 모은 저장소다. 여러 Singleton이 분산되어 있는 것을 한 곳에 모아, 관리가 용이하고 스크립트에서 호출도 편해진다. 여기서 궁금한 점이 생겼다. 결국 코드 상에서, 타입이 명시되..