-
[제작일지] 레트로 플랫포머 05게임제작/레트로 플랫포머 2020. 6. 6. 08:57
먼가 묘하게 되었는데 세이브 파일이 3개로 나뉘어져 있다...
인벤토리 / 프로그레스(진행사항) / 플레이어 어빌리티
일단 변명 아닌 변명을 해보자면...
사용하고 있는 Corgi Engine에서는 내부적으로 Inventory Engine을 사용해서 데이터를 저장하고 있다. 즉 Inventory Engine 내부에서 인벤토리의 저장과 로드를 알아서 처리해주고 있는 셈.문제는 진행사항의 저장부분이다.
https://corgi-engine-docs.moremountains.com/managers.html#progress-manager
Managers | Corgi Engine Documentation
This page covers the various managers included in the Corgi Engine and how to tweak them to your needs. Introduction The Corgi Engine uses managers as central reference points for a lot of classes and components. These managers, always present in your scen
corgi-engine-docs.moremountains.com
Corgi Engine에서는 Progress Manager를 가이드 하고 있긴 한데 generic(일반적인) Progress Manager가 아니라고 명시하고 있다. 즉 다시 말해 이런 식으로 구현하면 만들 수 있다고 보여주는 예제. 그러다보니 인벤토리와의 세이브 파일 통합에 대한 고려가 잘 안되어 있는 듯 하다.
즉, 가이드를 따랐더니 세이브 파일이 인벤토리와 프로그레스 둘로 나뉘어져 버린 셈.
이 상황에서 플레이어의 능력(Ability)를 저장하는 Manager를 만들다보니 딜레마에 빠지게 된 것이다. 관점에 따라 다르겠지만 가장 베스트한 방법은 세개의 정보가 하나의 바이너리 파일에 담기는 것이 아닐까 싶다. (1+1+1)
근데 이미 인벤토리와 프로그레스가 나뉘어져 버렸으니, 플레이어 정보와 프로그레스를 합쳐도 (1) + (1 + 1) 형태가 되어버린다. 하나가 덩그라니 따로 노는 셈. 어차피 하나의 파일로 관리를 못하는데, 차라리 따로 관리하는게 낫겠지 싶어서 (1) + (1) + (1) 형태로 구현을 하였다.구현한 Player Manager의 모습.
생각보다 많아서 놀란 플레이어의 기술들. 무려 23가지나 되더라...
일단 세이브 or 로드에 대해서는 얼추 끝난거 같다. 이제 스테이지 진행사항을 저장할 수 있으니, 특정 스테이지 클리어에 따라 지역이 해금되는 것을 구현할 생각이다.
남은 개발항목들
월드맵
1) 다른 월드맵으로 이동 (크게 4챕터)
2) 잠긴 스테이지와 해금
3) 시네마틱 신과 월드맵 사이의 이동
4) 별점/점수 표시
스테이지
1) 클리어 스크린(점수 * 등급 표시)2) 시네마틱 신과 스테이지 사이의 이동
시스템 (개발 분량 상 빠질 수도 있음)
1) 레벨 시스템
2) 장비 강화3) 상점
시네마틱 신
1) NPC의 이동
2) 대화
3) 장면전환'게임제작 > 레트로 플랫포머' 카테고리의 다른 글
[제작일지] 레트로 플랫포머 04 (0) 2020.06.05 [제작일지] 레트로 플랫포머 03 (0) 2020.06.05 [제작일지] 레트로 플랫포머 02 (0) 2020.06.02 [제작일지] 레트로 플랫포머 01 (0) 2020.05.26