본문 바로가기
게임 개발

Text Dungeon - 세나몬 잡기 (5)

by chobbo 2024. 5. 7.

오늘은 발표 날이었다.

진행한 프로젝트 내용에 대해 정리하는 시간을 가졌다.


📜 이번 프로젝트에서 내가 담당한 기능

1. 게임 시작 화면 구현
    - 게임 시작 시 보여지는 화면 구현
2.  전투 시작 화면 & 플레이어 턴 구현
    - 전투 시작시 보여지는 화면 구현
    - 플레이어와 몬스터 간의 전투에서 플레이어의 턴을 구현
3. 치명타 기능 & 회피 기능 구현
    - 플레이어 공격 시 치명타 & 회피가 뜨도록 구현
4. 스킬 기능 구현
    - 플레이어 공격 시 스킬을 선택할 수 있도록 스킬 선택창 구현
    - 플레이어 스킬 구현
5. 전투 중 포션 사용 구현
    - 포션 사용 선택창 구현
    - 전투 도중 포션 사용 구현
6. 전투 포기 기능 구현
    - 전투 도중 포기 기능 구현
7. 전투 스테이지 추가
    - 1,2,3층 및 보스 스테이지 추가
8. 보스 몬스터 추가
    - 4층이 되면 나타나는 보스 몬스터 구현
    - 보스 나레이션 및 화면 구현
    - 보스 스킬 구현
    - 게임 종료 조건과 연동
9. 전투 결과 화면 구현
    - 플레이어 턴, 적 턴이 끝날 때 마다 전투 종료 조건을 확인
    - 전투가 종료되면 결과 화면 출력
10. 게임 저장 기능 구현 
    - 중간에 게임을 꺼도 데이터 저장될 수 있도록 함
    - 게임에서 죽거나 재시작 시 데이터 리셋될 수 있도록 구현


📗 프로젝트 소개

👿 세나의 전설

  • 마왕 진유록을 잡아보세요
  • 100년전 마왕을 봉인하고 세상을 구한 용사 윤세나 일행 하지만 100년이 지난 현재 마왕의 봉인이 깨어지게 되어 세상이 다시 위기에 처한다. 다음 세대의 용사가 마왕을 다시 물리치고 세상을 구하기 위해 여행을 떠난다

⚙️프로젝트 기능

🏁 캐릭터 생성

  • 게임 시작시 플레이어의 이름과 직업을 입력받는다.
  • 직업에 따라 스텟과 스킬이 다르다.

🏹 전투

  • 몬스터를 랜덤으로 생성해서 플레이어와 배틀을 진행한다.
  • 플레이어와 몬스터가 턴을 번갈아가면서 진행한다.
  • 스테이지가 존재하며 스테이지 4는 보스스테이지이다.
  • 몬스터와 보스몬스터, 플레이어 각각의 공격력과 방어력을 가지고 있다.
  • 플레이어가 공격할 때 치명타가 터질 수 있다.
  • 플레이어가 공격할 때 몬스터는 정해진 확률에 의해 회피할 수 있다.
  • 던전을 클리어하면 보상을 얻을 수 있다.
  • 골드와 경험치는 확정적으로 얻을 수 있고 정해진 확률에 따라 포션과 각각의 몬스터에 맞는 장비 아이템을 획득할 수 있다.
  • 획득한 경험치가 플레이어의 레벨업 조건에 맞는다면 플레이어가 레벨업을 한다.

💼 인벤토리

  • 몬스터와의 전투보상이나 퀘스트 보상, 상점 구매를 통한 아이템을 획득하면 인벤토리에 저장된다.
  • 인벤토리에서 장비아이템은 장착과 해제가 가능하다.
  • 장비 아이템은 아이템에 따라 방어력과 공격력이 상승한다.

🛌 휴식 및 회복

  • HP나 MP를 소비했다면 휴식을 취하거나 포션을 이용해 회복을 진행 할 수 있다.
  • 휴식은 1000G를 소비해서 HP와 MP를 회복할 수 있다.
  • 포션을 보유중 이라면 몬스터와 전투 중이거나 마을에서 회복을 할 수 있다.

❓ 퀘스트

  • 마을에서 퀘스트를 받을 수 있다.
  • 퀘스트는 여러가지가 존재하며 퀘스트를 클리어 하면 각각의 퀘스트에 따른 보상을 획득한다.

🛒 상점

  • 상점에서 판매하는 장비아이템이나 포션을 구매 할 수 있다.
  • 몬스터와의 전투에서 획득한 장비, 포션등을 상점에 판매 할 수 있다.

📜 기타

  • 유저의 정보들이나 인벤토리, 상점에서 판매중인 물건등을 저장해서 게임을 다시 시작해도 데이터가 저장이 된다.
  • 몬스터와 플레이어의 데미지를 계산하는 공식을 제작했다.

Notion

 

LV.999 윤세나 | Notion

Built with Notion, the all-in-one connected workspace with publishing capabilities.

stitch-wallet-120.notion.site

 

Github

 

GitHub - JeongEunJi1127/A14-TextDungeon: 내일 배움 캠프 2주차 팀프로젝트

내일 배움 캠프 2주차 팀프로젝트. Contribute to JeongEunJi1127/A14-TextDungeon development by creating an account on GitHub.

github.com

 

플레이 영상