들어가며
필자가 로그 라이크 게임을 만들어 가는 과정을 기록해 보고자 한다. 그래픽과 엔진에서 제공하는 기능에 대한 것들은 이미 다른 유수의 책과 인터넷이 충분히 설명하고 있으므로, 여기에서는 엔진에 대한 사용법과 그래픽을 표현하는 방법에 대해서는 최대한 자제하고 시스템을 어떻게 구축하면 되는지에 대해 집중적으로 연구해 볼것이다.
- 기획
- 모든 것의 시작..주인공 만들기
- 모험의 시작..
- 몬스터 만들기 - Monster 클래스 정의
- 몬스터를 아스키 코드로 표시하기 - 유니티 프리팹 사용하기
- 리팩토링 - 플레이어와 몬스터의 상위 추상 Character 클래스 만들기
- 리펙토링 - Position 클래스
- 리펙토링 - C# 제네릭을 이용하여 Singleton 패턴 구현하기
- 던젼으로 입장!!
- 브레즌햄 원 그리기 알고리즘
- 브레즌햄 선 그리기 알고리즘
- 랜덤 맵 만들기 - 랜덤 맵 알고리즘의 소개
- ScrollRect를 이용하여 스크롤 되는 맵 만들기(unity ui 사용법 설명, 제작 과정)
- 주인공 움직여 보기(이동 버튼 UI 추가, 맵 이동 구현)
- 던젼이 너무 밝아 - FoV(Field of View) 구현 방법 설명
- 다음 층으로 - Gateway만들기
- 첫 전투
- Character에 hp, 공격/방어 추가하기(AutoRecoveryInt 클래스 추가)
- GameManager에 턴 추가하기
- 몬스터가 너무 멍청해 - A-star 길찾기 알고리즘
- HP 감소 애니메이션 만들기
- 몬스터 리스폰 포인트 만들기
- 맨손으로 싸우기 힘들다..
- 아이템 만들기
- 아이템 효과 만들기
- 어디에 가지고 있으라고? - 인벤토리 만들기
- 인벤토리 UI만들기, 인벤토리 보기 버튼 추가
- 리펙토링 - Object 추상 클래스 만들기
- 상처 뿐인 영광?
- 플레이어 레벨 추가 - 레벨 별 스탯 테이블
- 몬스터 아이템 드랍 추가 - ItemStack 클래스 추가
- 여긴 누구 나는 어디?
/* 게임에서 퀘스트는 유저가 플레이할 방향성 제시고 뭐고 이런저런 이야기..주절 주절..*/ - 퀘스트 만들기
- 혼자는 외로워..
- npc만들기
- npc에 퀘스트 부여하기
- 껏다 켰더니 리셋?
- 게임 진행도 저장과 로딩
- 리소스를 어플리케이션과 분리하기 - Asset Bundle
마치며..
소스 코드는 https://github.com/ChoiIngon/Rpg1994 에서 다운 받을 수 있습니다.