시작
1인칭 FPS 마피아 게임을 개발하는 과정을 기록하는 첫 페이지.
Unreal5 C++ 이론 공부를 하다가 이러다 어느세월에 게임 만들어 보겠나 싶어서 머리 박아보려 만든다.
Deceit에서 대부분의 영감을 받았고, 기타 FPS게임들의 방식을 채용한 마피아 게임이 재밌지 않을까? 생각했다.
개발하면서 구현하는 주요 목표는 아래와 같다.
1. 개발환경
Unreal5 C++을 사용해 주요 기능들을 개발하고, Unreal5의 UMG를 사용하여 UI를 디자인 한다.
2. 멀티플레이어 환경
P2P 네트워크를 사용한다. 게임 호스트가 서버 역할을 맡고 다른 플레이어들이 참여하는 방식.
위와 같은 방식으로 서버 유지 부담을 줄일 수 있을것으로 예상.
3. 랜덤 역할군 배정, 랜덤 루팅 시스템
게임 시작시 직업군을 랜덤으로 배정한다. 마피아 역할군과 시민 역할군 모두 기본 권총을 지급하고 총알은 게임 레벨에서 랜덤하게 생성되는 박스를 루팅하여 사용. 투표 시스템 대신 HP를 모두 줄이면 아웃되는 시스템.
마피아의 승리 조건은 기존 마피아류 게임과 동일, 시민의 승리 조건은 마피아를 직접 총으로 쏴 죽이면 승리.
역할군에 따라 특수 총기와 총알을 파밍하고 사용하는 구조. 역할군간 밸런스 조절을 위한 시스템은 추후 추가
(시민이 어떻게 마피아를 조사하여 죽일지, 마피아 장르의 전통적인 낮과밤 시스템을 어떻게 적용할지 등)
4. UI
UI 클릭시 동작할 함수를 C++로 작성하고, 블루프린트에 매핑해 화면에 출력되는 UI를 구성할 예정. 직접 해봐야 이대로 작성하는게 맞는지 알 수 있을것.
5. 그래픽
1차로 언리얼 마켓 플레이스 등에서 적절한 무료 라이센스 에셋을 채택해 사용할 예정. 필요시 3D Blender를 사용할지 고려 예정
큰 틀은 위와 같으며, 세부과정은 아래와 같다.
1. 게임 시작 화면에서 게임 세션 생성
2. 세션에 진입하여 플레이어의 캐릭터가 움직이는것 구현
3. 세션에 다른 유저들이 접속하여 유저간 인게임 보이스 및 상호작용 구현
4. 유저들의 준비 투표 및 게임시작 후 기본 맵으로 레벨 이동 구현
5. 기본 레벨에서 권총 지급 및 사격 구현
6. 유저간 사격 기능 및 HP 시스템, 랜덤 루팅 시스템 구현
7. 죽은 유저의 관전 및 채팅 기능 구현
8. 맵과 캐릭터, 총기류 등에 적절한 에셋 적용
9. 기타 세부사항 구현
'개발 일지' 카테고리의 다른 글
5. 멀티플레이 개발 (0) | 2024.11.08 |
---|---|
4. 서버 구축을 위한 삽질 (0) | 2024.09.02 |
3. 플레이어 랜덤 스폰 구현 (0) | 2024.08.31 |
2. 움직이는 플레이어 캐릭터 만들기 (0) | 2024.08.26 |
1. 메인메뉴 구성 (0) | 2024.08.26 |