• 게임 자세한 내용은 아래 노션 링크를 참조

노션 링크

회고록

개발 시기를 보면 알겠지만, 약 4개월 정도 개발을 진행했다.

짧게 개발한 것 치고는 영상과 같이 좋은 결과물이 나오긴 했지만 팀원들이 정글 이슈로 사라져 버렸다.

물론 4개월이라고 해서 항상 순항만 있던 것은 아니고 협업이나 코드레벨에서도 다양한 문제를 만날 수 있었다.

여러 프로젝트의 진행

결론을 먼저 말하면 여러 프로젝트를 동시에 하는 것은 절대 좋지 못하다.

최근에 작성한 클린 코더 논의사항에도 기술하였는데, 팀이 늘어날 수록 해당 팀들에게 모두 피해를 준다고 생각한다.

저 당시에 학교 캡스톤 프로젝트 한개와 1984, Planeta까지 하여 총 3개를 동시에 진행하였다.

지금도 후회가 되지만 3팀 모든 팀에게 악영향을 미쳤다고 생각한다.

그래서 지금은 하나만 진행 중..

물론 가벼운 프로젝트나 스터디, 공부는 가능하겠지만 진심을 담을 수 있는 프로젝트는 하나여야 한다고 생각한다.

자신을 객관화하라는 것이 아닌 좀 더 경험적인 면에서 우러나오는 말이다.

아직은 가로로 성장하는 것이 도움이 되지 않는다는 것을 알았으며, 한 프로젝트에 집중하여 세로적인 전문성을 확보하는게 더 이득인 것 같다.

팀원의 불화

이 프로젝트가 직접적인 불화는 아니지만 팀원간의 불화를 목격한 첫 프로젝트였다.

자세한 내용은 말 못하겠지만, 해당 불화가 팀의 해체에 어느정도 영향은 있었다고 본다.

프로젝트가 잠정 중단, 해체된 이유는 팀원분들이 정글로 떠났기 때문이다. 크래프톤 정글

불화가 발생하게 되면 다들 감정이 먼저 격해지고, 하나의 목적을 바라봤던 팀이 서로를 겨냥하기 바빠진다.

이후 잘 해결되더라도 솔직하지 못하게 억지로 해결된 순간부터 눈에 띄게 불편했다.

팀원간의 친목에 대해서 다시한번 깊게 생각하게 되는 계기가 되었으며 최근에? 이에 대한 토론도 진행했다.

내 생각

어찌보면 프로젝트 외부에서 발생한 불화를 프로젝트까지 들고오는 것은 별로 성숙하지 못한 방법이지만 (프로답지 못한)

사람끼리 일하는데 과연 그런 요소가 끝까지 배제가 될지는 의문이다.

크런치의 악영향

이후 나오겠지만 내가 현재 PM으로 있는 팀은 크런치나 급하게 개발하는 것이 금지되어 있다.

이 프로젝트에서 많이 배웠기 때문인데, 크런치는 1박 2일 대면으로 같이 모여서 작업하는 것을 말한다.

4개월만에 프로토타입을 빠르게 뽑아낼 수 있던 부분도 크런치때문이라고 생각한다.

프로그래밍이란 급하게 한다고 해서 해결되는 것이 아니라고 생각한다.(물론 야근이나 급하게 시간을 더 쏟는 것과는 다른 이야기다.)

크런치의 경우 프로그래밍이 직접적으로 보여줄 수 있는 게 있어야 하기 때문에 바로 바로 결과물을 보여줄 수 있는 흔히 야매적인 코딩을 하게 된다.

이후에 리팩터링 해야지 해야지 하는 그 순간 해야하지만, 대부분의 프로그래머가 그렇듯이 주석만 넣어놓고 레거시가 되어버린다.

그 레거시는 결국 돌아와서 2배 3배로 시간을 소요하게 만들어 버린다.

또는 크런치때 급격한 코딩 후 결과물이 좋더라도 쌓여있는 코드를 보고 번아웃이 오거나 프로젝트에 애정이 많이 떨어진다고 느꼈다.

해결 방법으론 개발 프로세스를 명확하게 구축하는 것이 중요하다.

코드 리뷰

가장 잘 설계했다고 생각하는 스케줄링 부분은 초기 기획에서 몬스터 뿐만 아니라 이벤트가 들어갈 수 있어야 하기에 Item으로 두었다.

해당 스테이지의 개수에 따라 nx3의 형태로 엑셀을 만들어 드래그앤 드롭을 캐치하여 이벤트를 실행할 수 있는 구조를 만들고 이후에 해당 데이터를 한번에 읽어들여 맵과 이벤트를 만든다.

이번 프로젝트에서는 싱글톤을 최대한 사용하지 않고 개발하기 위해서 좀 더 응집도가 높고 결합도가 낮게 설계해봤는데 좋은 경험이였다.

종족 선택도 (종족이 하나지만..) 다양한 종족이 선택될 수 있도록 만들고, 확률적 보상도 나름 생각하여 설계하였다.

가장 아쉬웠던 부분은 초반 컷씬을 타임라인을 썼으면 좋았을 텐데 한 Action당 하나의 이벤트로 설계하여 하이어라키가 더러워지는 문제가 발생했다.

이것도 크런치에서 급하게 작업하고 나중에 고쳐야지 고쳐야지 하고 결국..

마무리

이 프로젝트에서 특히 협업에 관해 많이 생각할 수 있었으며, 내가 프로젝트를 직접 설계하기 된 계기이기도 하다.

태그: ,

카테고리:

업데이트:

댓글남기기