![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/clylzP/btqCOx8omhj/lCCErFsx8vrgq5c2KAvWz0/img.gif)
선수 영입 프로세스 어제 작업에 이어 계속 선수 영입쪽 프로세스를 만들고 있다. 위 gif처럼 제의를 보낸 뒤, 일정 시간이 지나면 선수로부터 응답이 온다. 이 응답이 거절인 경우 해당 영입 제의는 실패한 것이고, 성공한 경우 카페에서 언제 선수를 만나 협상을 진행할 것인지 시간이 나온다. 그 시간에 맞춰서 카페에 가면 선수를 만나 협상을 진행할 수 있고, 그 결과에 따라 영입 여부가 결정된다. 약속을 잡은 후 카페에 가면 선수 영입 협상을 할 수 있다. 약속 시간에 너무 늦을 경우 영입은 파투. 협상 과정은 아직 정확하게 기획을 정하지 않아서 대충 시간 맞춰 가면 무조건 영입 성공하는 걸로 해뒀다. 이런 식으로 약속 시간에 맞춰 카페에 가면, 선수가 오고 선수에게 말을 걸면 협상 과정을 진행할 수 있다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/9eni1/btqCOgrJG6j/5Zfwg6SgDt4CU8P4vCu5mk/img.png)
스탯 표기 변경 육각형에서 게이지 형태로 스탯 표시를 변경했다. 확실히 게이지로 표기하는게 좀 더 알아보기 편한 것 같다. 영입 명단 영입 명단을 통한 선수 접촉 기능을 구현했다. 선수를 뽑는 루트는 총 3가지로 기획중인데, 영입 명단은 매일매일 갱신되며 잘 지켜보고 있다가 괜찮은 선수와 접촉 + 협상해서 선수를 영입하는 가장 기초적인 방식의 영입. 모집 공고의 경우 트라이 아웃 같은 개념으로 공고를 낸 후 경기를 지켜보고 괜찮아 보이는 선수를 선발하는 방식이다. 스카우터 파견은 좀 더 큰 비용을 들여 해외 등에서 뛰어난 선수를 발굴해 영입하는 형태. 카페 카페 장소도 구현. 아직 타일만 배치해놔서 휑하다. 각종 약속을 잡고 만나는 이벤트들을 모두 카페에서 진행할 예정이다. 위의 영입 명단 같은 경우도 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ctqVRO/btqCNFELoFK/VJ9t8EhsGkzegbYbbfqzF0/img.gif)
밴픽 스왑 밴픽 스왑 기능을 추가했다. 각 선수에게 그 선수가 잘 다룰 수 있는 적절한 챔피언을 배정해주는게 전략상 굉장히 중요한 부분이다. 상대팀 AI도 스왑 고려해서 밴픽 로직을 바꿔줘야 하는데 이 부분은 좀 나중으로 미뤘다. 챔피언 정보 하는 김에 밴픽 화면에서 챔피언 정보 보는 UI도 마저 작업했다. 다른 거는 작업하기에 시간이 좀 애매하기도 하고 이왕 하는거 깔끔하게 끝내두는게 좋을 것 같아서. 정보창에서 아래쪽 한 줄이 비어있는데 이거는 나중에 궁극기 추가되면 궁극기 관련 정보가 들어갈 예정이다. 솔로랭크에서 연습할 챔피언 고르는 화면에서도 챔피언 정보 볼 수 있게 추가.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bvLDSR/btqCGQ846Jf/U1VfUlX20CZ0YPaxqftNjK/img.gif)
오늘은 3v3을 위한 챔피언 추가 작업을 진행했다. 광전사 체력이 많을 수록 약하고, 체력이 떨어질 수록 점점 더 강력해지는 형태의 챔피언이다. 체력이 40% 이하로 내려가면 기본 공격에 넉백 + 약간의 흡혈이 생긴다. 체력이 떨어졌을 때 빠르게 컷할 수 있는 원거리 or 암살 챔피언을 가져가지 않으면 까다로운 형태의 챔피언을 생각하고 만들었다(+ 넉백을 통한 상대 근접 카운터). 얼음술사 슬로우 + 빙결이 컨셉인 유틸리티형 마법사 캐릭터. 두 가지 효과 모두 광전사를 카운터치기 아주 좋다. 저격수 저격수는 긴 사거리 + 강력한 데미지 + 느린 공격 / 이동속도를 컨셉으로 하는 원거리 캐릭터다. 탱킹과 어그로 관리가 충분하다면 안정적인 딜링을 뽑을 수 있다. 마검사 물리 근접 + 마법 원거리 챔피언. 원..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/efCSOy/btqCJlzlILU/eFMSmTkGXGZBPU7pAo9fiK/img.gif)
선수 대화 선수와 대화 기능을 추가했다. 선택지 중에 일단 대화하기 및 솔로 랭크까지만 우선적으로 구현할 예정. 솔로 랭크는 특정 챔피언의 숙련도를 높이는 기능을 하며 어떤 챔피언을 위주로 연습할지를 고를 수 있다. 솔로 랭크 주 연습 챔피언을 위 gif와 같은 방식으로 설정할 수 있다. 솔로 랭크 관전에서는 실제로 해당 플레이어가 해당 챔피언으로 플레이하는 경기를 관전할 수 있는데 이건 다음 마일스톤에서 구현할 예정. 당장 육성 관점에서는 어떤 챔피언을 연습할지가 중요하지 그걸 직접 관전하는 기능이 중요하지는 않기 때문이다. 3v3 다음 주에는 세미 프로 리그(아마추어 토너먼트 다음 대회) 진행을 추가할 예정인데 여기부터는 3v3 이라서 인게임 3v3이 가능하게 수정하는 작업을 미리 해뒀다. 확실히 2..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/blEu6U/btqCDk9y1OM/nDdHrE5LNlcpSb0wkXPeh1/img.gif)
선발 UI 선수 선발 UI를 적용했다. 기능상 달라진 건 없고 그냥 바뀐 UI와 흐름에 맞춰 수정만 했다. 연습 경기 그리고 연습 경기 추가. 외부 스크림의 경우 타팀과 경기, 내부 스크림의 경우 팀 내에서 자체적으로 갖는 연습 경기다. 외부 스크림은 같은 대회를 참가하고 있는 팀들 중에 랜덤하게 몇 팀이 나타나고 그 중에 경기할 상대를 고르면 된다. 연습 경기를 통해 선수의 챔피언 숙련도를 높일 수 있고, 내 전술이 생각대로 동작하는지 등을 테스트해볼 수 있다. 연습 경기는 공식전이 없는 날에만 진행할 수 있으며 + 너무 늦거나 이른 시간대(선수가 출근하지 않은 시간대)에는 할 수 없게 해 두었다. 이제 훈련 & 연습 경기를 이용한 초반 선수 육성 + 전술 테스트가 모두 완성. 여기에 추가로 경기에서 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bRhHDT/btqCDk2qGqI/5qe4rqHzC4YdJkWdJfCia0/img.png)
시뮬레이션 유닛 테스트 경기 시뮬레이션이 제일 중요하고 복잡해서 처음 코드를 짤 때부터 테스트 코드 작성하기 쉽게 하는 걸 의도하고 구조를 짰었다. 문제는 각종 데이터 세팅을 Scriptable Object를 이용해서 했는데 이게 유닛 테스트 쪽에서 간단하게 불러올 방법이 전무하다는 점.. 한참 이것저것 고민하다가 결국은 Resources.Load를 쓰는 방향으로 임시 타협했다. Resources는 안 쓰고 싶은데 이걸 안 쓰고는 간단하게 불러올 만한 방법이 딱히 없었다. 일단 테스트할 때만 Resources를 쓰고, 개발이 끝난 다음에는 그냥 일반 폴더로 옮겨서 빌드하고 Resources는 버리면 별 문제 없을 것 같아서. 그래서 이렇게 고치고 유닛 테스트하자마자 나를 괴롭히던 짜증나는 버그 두 개를 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/EkS8K/btqCAQAzlL1/zRPsUj2vBX9PjqW7NdLJAK/img.gif)
선수단 UI 선수단을 확인할 수 있는 UI를 작업했다. UI를 만들면서 챔피언 숙련도 표시 및 플레이어 초기 스탯 생성 개선 작업을 진행했다. 원래 생각했던 육각형 스탯이 초반부 선수 스탯이 아주 낮을 때 보기 너무 안 좋아서 직선 게이지 형태로 바꿀까 고민중. 그리고 챔피언 숙련도를 넣고 플레이해보니 밴픽 느낌이 좀 많이 달라진다(내 선수들 숙련도 있는 픽 가져가야 하니까). 문제는 위 gif에서 처럼 두 선수의 챔프 폭이 겹치는 경우 겨우 3개의 챔피언만 숙련도 효과를 얻을 수 있는데 이게 좀 답답하게 느껴지기는 한다. 초반부니까 그다지 상관없나 싶기도 하지만.. 훈련 UI 선수 스탯 향상을 위한 훈련을 진행하는 기능을 추가했다. 이제 드디어 선수 훈련 & 정보 확인이 가능해져서 경기가 없는 시간을 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bNd5D8/btqCynr1y0g/ZGePoQuRH9UHiHh81N8hAk/img.gif)
드디어 리팩토링 작업을 끝냈다. 스킬 동작 및 사용이 전부 정상적으로 되는 걸 확인. 몇 가지 자잘한 보기 안 좋은 부분들이 있는데 이건 다른 것부터 손 보고 나중에 고칠 예정. 데미지 표시 추가 리팩토링 작업을 끝내 선수 스탯 반영 작업에 들어가기 전에 일단 몇 가지 간단한 효과들을 먼저 작업했다. 데미지 / 힐량 등이 표기가 안 되던게 불편해서 이게 다 표시가 되게 바꿨다. 조금 정신 없는 느낌이 있긴 한데 데미지가 보이는 편이 나은 것 같다. 그림자 추가 발 밑 그림자를 추가했다. 이제 에어본 당할 때 효과가 적용되었는지가 잘 보인다. 플레이어 스탯 적용 스탯 적용의 경우 일단 넣긴 했는데 크게 티가 안 나긴 한다. 완전 초반 작은 스탯 차이만으로도 너무 티가 날 정도로 영향을 끼치는 것도 문제가 ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/yfKbc/btqCtYTrcka/KFaFyhLTC2KTByqwgk2xf1/img.gif)
어제에 이어 시뮬레이션 리팩토링 및 개선 작업을 진행했다. 그리고 하루 온종일 작업한 끝에 드디어 기본 로직을 전부 새로운 구조에 맞춰 작성하는데 성공. 스킬을 제외한 캐릭터의 기본 동작이 잘 되는 것도 확인할 수 있다. Agent의 판단 로직이 조금 이상한데 이 부분은 쉽게 개선할 수 있어서 스킬 구현까지 완료한 다음 마저 고칠 생각. 스킬의 경우 원래는 캐릭터마다 스킬마다 별개로 구현을 했었는데, 바뀐 구조 하에서는 스킬이라고 해서 특별한 무언가가 있는 것이 아니라 단순히 조금 다른 효과를 지닌 행동일 뿐이기 때문에 기존에 작성했던 코드들 중 아직 작업이 안 된 부분을 효과로 빼서 재 작성하는 작업만 하면 돼서 이 부분은 생각보다 시간이 덜 걸릴 거라고 기대하고 있다. ... 라고 생각했으나, 스킬 ..