본문 바로가기

프로그래밍110

게임개발 중급(86) - Monster Killer(48) Monster Killer 중간 점검오늘은 킬러모드를 어느정도 정리한 뒤에 게임의 방향성과 더불어 다음 모드를 어떻게 설계해야 할지 점검하는 시간을 갖도록 하겠습니다. 킬러모드를 비롯한 모든 모드의 구현 방향성을 정리해보겠습니다. 모드 구현 계획[킬러모드 : Killer Mode]게임을 처음 기획할 때부터 개발하기 시작한 가장 기본이 되는 모드입니다. 처음엔 단순하고 짧게 즐기는 모바일 게임의 컨셉에 맞게 단순하게 기획되었으나, ID로 로그인하여 접속하는 PC 웹게임으로 기획이 바뀌면서 좀 더 체계적인 시스템을 갖춘 모드로 변경이 되었습니다. 킬러모드의 현재 기조는 여전히 게임의 가장 기본이 되는 플레이 모드로, 키워드로 표현하자면 (노가다, 돈 벌이 수단, 반복 수행 등)이 있습니다. 한 마디로 게임을.. 2024. 7. 15.
게임개발 중급(85) - Monster Killer(47) Monster Killer 데미지 계산기존에 데미지를 계산할 때, 무기 공격력과 부위 별 데미지를 합산하는 과정을 거쳤는데, 그 과정이 조금 엉켜있어서 약간의 분리하는 과정을 진행해주었습니다. 아직 완벽하게 개선된 것은 아니지만, 일단 모든 데이터를 관리하는 GameManager에서 damage의 기본값을 가져와 설정해주고, 강화 수치는 currentDamage, 몬스터 부위 별 데미지는 PartsDamage로 나뉘어서 순서대로 합산 시키는 방식을 사용하도록 했습니다. 기존에는 데미지가 한가지의 변수로 합쳐지는 방식이라 어떤 데미지가 어디서 사용되는지 구별하기 어려웠지만, 3개로 나뉘어 구별하기 편하게 구성하였습니다.  현재 능력치 설정이 공격력 강화 수치가 100인 상태로 킬러모드에 입장하여 몬스터를 .. 2024. 7. 15.
게임개발 중급(84) - Monster Killer(46) Monster Killer 데이터 연동 첫번째는, 데이터 연동입니다. 기존에 여기저기 찢어져서 구현되어 있던 각종 데이터에 대한 정보와 UI들을 업그레이드 버튼, 디스플레이 컴포넌트를 통해 문제 없이 연동하였습니다. 기본적으로 모든 데이터는 GameManager에 정의되어 있는 값을 초기화 하고, 플레이어가 게임을 플레이하면서 강화되는 수치가 지속적으로 저장됩니다. 위 이미지는 게임을 처음 시작하여 초기화된 플레이어 데이터 값 입니다.  킬러모드에서 몬스터를 처치해 골드를 벌 수 있는데, 기존에는 해당 모드에서도 강화가 가능했지만, 기능을 수정하면서 모드 안에서는 강화를 하지 않고 오직 메인화면의 업그레이드 페이지를 통해서 강화를 진행할 수 있도록 바꿨습니다.  골드를 벌고, 제한 시간이 끝나거나, 플레.. 2024. 7. 9.
게임개발 중급(83) - Monster Killer(45) Monster Killer 안녕하세요 오늘부터는 개발 내용을 주로 이야기하도록 하겠습니다. 이제 상단에 시작하는 인사말은 특이사항이 있는게 아니라면 스킵하도록 하겠습니다. 구조 개선가장 첫번째로는, 너무 오랜만에 프로젝트를 다시 찾아와보니 구조가 상당히 엉망이었다는 것을 알아챌 수 있었습니다. 이 또한 제가 성장했다는 증거겠죠? 간략하게 말씀드리면 기존에 게임의 구조는 정말 러프하게 구현되어 있었고, 객체지향과는 거리가 먼 형태를 띄고 있었습니다. 그 중 특히 심한 것은 플레이어와 몬스터 간의 상호작용, 각종 업그레이드 수단 등이 대부분 UI에 기능이 결합되어 있는 상태였습니다. 한 가지 예시로 플레이어가 형태는 없더라도 하나의 객체로서 플레이어와 관련된 내용을 묶어야 하는데, 플레이어의 공격은 무기쪽에.. 2024. 7. 6.
게임개발 중급(82) - Monster Killer(44) Monster Killer 안녕하세요. 오랜만에 이 글을 다시 쓰게 되었습니다. 거의 1년만에 이 Monster Killer를 다시 들고 왔는데 그 이유는 그동안 1인 개발로 만들던 이 게임을 학교 졸업작품으로 개발하게 되었습니다. 그 말은 즉슨 더 이상 혼자 개발하는 것이 아닌 팀원을 꾸려서 개발한다는 것입니다. 개요 스마일게이트 UNSEEN 2기 수료 후기스마일게이트 UNSEEN 2기 수료 후기 UNSEEN 2기 합격 후기UNSEEN 2기 합격 후기 2022년도에 해커톤을 마치고, 23년도에는 학교에서 졸업작품을 만들며 시간을 보냈습니다. 졸업작품으로도 게임을 만jypgamepro.tistory.com 우선 어떻게 된 것인지 설명을 드리면, 그동안 저는 다른 카테고리에 있는 글에서 말했듯이 학교 생활.. 2024. 7. 5.
게임개발 중급(81) - Monster Killer(43) Monster Killer 지난시간 까지는 빌드하는 방법과 그 과정에서 필요한 최적화 및 실제 스토어 등록을 하기위해 필요한 절차에 대해서 알아보았습니다. 이번부터는 다시 게임을 만들어 나가는 과정을 보여드리겠습니다. 타임아웃 및 사망 저번에 형태만 만들어놓고 기능연결을 하지 않았던 것을 만들어 주었습니다. 주어진 시간이 전부 지나거나 체력이 전부 닳았다면 게임오버가 되도록 해주었습니다. 해당 이미지는 타임아웃된 모습입니다. 현재 시간이 전부 지나가면 위 그림처럼 시간이 이상하게 표현되는 현상이 있지만 추후에 고칠 예정입니다. 추가로 게임오버 페이지도 조금 바뀌었습니다. 기존에는 게임오버 글씨와 함께 홈버튼만 있었지만, 게임을 진행하면서 획득한 재화를 보여주는 Result페이지를 만들어 골드를 임시로 넣.. 2023. 9. 4.
게임개발 중급(80) - Monster Killer(42) Monster Killer 안녕하세요 저번시간에는 빌드 최적화에 대해서 조금 알아봤습니다. 이어서 빌드할 때 반드시 거쳐야 하는 과정에 대해서 살펴보도록 하겠습니다. 빌드 과정 저번 시간에 저희는 빌드하는 많은 과정 중에서 최적화에 대해서 조금 다뤘습니다. 하지만 최적화 말고도 많은 세팅들을 해줘야 하는데 아직까진 깊게 들어갈 이유가 없으므로 필수적인 사항에 대해서만 다뤄보려고 합니다. Build Settings에서 씬을 등록하고, 안드로이드로 플랫폼을 변경한 후에, PlayerSettings에 들어가면 이런 화면이 등장합니다. 여기서 저희가 필수적으로 봐야할 것은 상단에 위치한 Company Name, Product Name, Version그리고 하단에 Resolution and Presentation.. 2023. 8. 30.
게임개발 중급(79) - Monster Killer(41) Monster Killer 이전에는 타이머UI를 만들고, 시간제한을 주는 타이머를 Killer Mode에서 사용하도록 만들었습니다. 오늘은 여태 만들었던 게임을 실제로 빌드하는 과정 및 일부 필요한 최적화 과정을 살펴보겠습니다. 안드로이드 빌드하기 빌드하는 방법은 사용하는 기기와 소프트웨어에 따라 여러가지로 나뉘는데, 이전에 이것에 대해서는 이미 다뤘었습니다. 제가 만들려고 하는 것은 안드로이드 게임 어플리케이션 이므로, 안드로이드로 빌드하도록 하겠습니다. 먼저, 빌드를 하기 위해서는 프로젝트 상단에 File -> Build Settings에 들어가 빌드하고 싶은 모든 씬을 Scene In Build에 원하는 순서대로 넣어줍니다. 그리고 하단에 Platform칸에서 안드로이드를 선택해 Switch Pla.. 2023. 8. 25.
게임개발 중급(78) - Monster Killer(40) Monster Killer 안녕하세요 오늘은 Killer Mode에서 바뀌어야 할 몇가지 변경점에 대해서 이야기를 해보겠습니다. Killer Mode 필요 변경점 먼저, 모드를 디자인 할 때 Killer Mode의 역할은 게임 내 재화인 골드를 버는 용도로 만든 모드입니다. 따라서 해당 모드를 플레이할 때 골드가 벌려야 하고, 반복적으로 플레이가 가능해야 합니다. 그렇게 하기 위해서는 어떻게 바꿔야 할까 생각을 많이 했습니다. 결국 시간제한동안 몬스터를 잡아 골드를 벌게 하고, 골드를 사용해서 각종 능력치 뿐만 아니라 시간제한도 늘릴 수 있도록 설계하였습니다. 타이머 시간제한을 두려면 타이머가 필요합니다. 타이머 UI를 만들어 플레이어가 직접 얼마나 시간이 남았는지 확인할 수 있게끔 만들었고, 해당 기능.. 2023. 8. 21.
게임개발 중급(77) - Monster Killer(39) Monster Killer 안녕하세요 이전에는 Monster Killer의 변경점 중 메인화면에 대해서 알아보았습니다. 이번에는 이전에 만들어 둔 게임화면이 어떻게 변화했는지 보여드리겠습니다. 게임화면 변경점 해당 씬은 Killer Mode로, 이전에 작업했던 게임 씬입니다. 이전과의 변경점은 첫번째로 모든 UI의 크기가 증가했고, 위치가 일부 변경되었습니다. 골드를 사용하여 공격력과 최대체력을 올리는 버튼의 색상과 위치가 새롭게 정렬되었고, 깎인 체력을 전부 회복하는 Heal 버튼도 새롭게 추가되었습니다. UI의 크기와 위치를 재조정한 이유는 실제로 빌드했을 때 사이즈가 너무 작거나, 위치가 애매한 곳에 있어 누르기 불편한 문제점들을 해결하기 위해서 입니다. UX와 관련된 변경사항이므로, 추후에 계속해.. 2023. 8. 17.