Unreal 개발 본캠프 23일차

HappyCircle·2025년 12월 30일

Unreal 개발

목록 보기
40/163

오늘 진행 내용

팀프로젝트 [CH2: 팀 프로젝트] 텍스트 콘솔 RPG 진행

팀프로젝트 주제 선정

C++ 모험 RPG:

배경

코드월드에는 수많은 몬스터들이 존재한다. 이들은 프로그래밍의 지식을 흩트려 놓고, 혼돈을 만든다. 용감한 플레이어인 너는 “코드 마스터”가 되어 몬스터들을 물리치고, 각 라운드의 보스를 쓰러트려야 한다.


페이즈 1: 변수의 숲

  • 몬스터 등장: 변수, 상수, 자료형, 초기화, 선언
  • 목표: 모든 몬스터를 물리치고 레벨 3 달성
  • 보스: 포인터
  • 스토리: 숲 속에서 너를 기다리는 몬스터들은 기초적인 코드 지식을 시험한다. 포인터 보스는 변수의 주소를 자유자재로 조종하며 공격해온다. 이를 이겨야 다음 단계로 나아갈 수 있다.

페이즈 2: 클래스의 성

  • 몬스터 등장: 클래스, 객체, 멤버변수, 함수, 생성자/소멸자
  • 목표: 모든 몬스터를 물리치고 레벨 6 달성
  • 보스: 다형성 혹은 상속 보스
  • 스토리: 고대의 성 안에서 클래스 몬스터들이 너를 시험한다. 보스는 다양한 형태로 변신하며 다형성의 힘을 보여준다. 이 보스를 넘어야 진정한 객체 지향의 힘을 깨닫게 된다.

페이즈 3: 디자인 패턴의 탑

  • 몬스터 등장: 싱글톤, 데코레이터, 옵저버, 전략 패턴 등
  • 목표: 모든 몬스터를 물리치고 레벨 10 달성
  • 보스: 팀 프로젝트
  • 스토리: 탑 꼭대기에서 너를 기다리는 것은 혼자서는 상대할 수 없는 거대한 보스, 팀 프로젝트! 디자인 패턴 몬스터들을 모두 물리치고, 협업과 패턴을 활용해야만 승리할 수 있다.

주제 선정에 따른 프로젝트 구성 요소 선정

필수 기능

1. 플레이어

  • 캐릭터 생성시 이름을 설정 할 수 있습니다.
  • 캐릭터는 이름, 레벨, 체력, 공격력, 경험치를 가진다.
  • 캐릭터는 레벨 1, 초기 체력 200, 공격력 30, 경험치 0으로 시작합니다.
  • 게임 플레이 중, 언제든지 캐릭터 상태 확인할 수 있어야 합니다. (hp, 공격력, 경험치, 레벨 등등)

2. 몬스터

  • 몬스터도 이름, 체력, 공격력을 가진다.
    • 체력: (라운드 × 20) ~ (라운드 × 30)
    • 공격력: (라운드 × 5) ~ (라운드 × 10)

3. 전투 시스템

  • 라운드별로 정해진 몬스터와 싸운다.
  • 전투 시작 조건
    • 캐릭터 생성직후
    • 전투 승리 후 상점 방문을 스킵하거나 이용을 다 끝냈을 경우
  • 보상
    • 필수: 골드(랜덤 10~20), 경험치
    • 선택: 장비, 스탯 물약 등등
  • 전투 시작전: 가지고있는 물약같은 아이템 중에 어떤걸 사용할지 결정할수있다. (공격력 버프 물약 등등)
  • 캐릭터가 전투를 할때 기본적으로 행동 기준은
    • 공격이 default
    • 피가 없으면 체력 물약 있을시 체력물약을 먹거나
  • 크리티컬 시스템 공격시 확률적으로 2배의 데미지를 준다.
    • 크리티컬 떳을땐 글씨가 더 보이게 어찌구 저찌구
  • 캐릭터가 사망시 라운드 시작전으로 돌아간다. 그냥 다시 시작

4. 레벨업

  • 레벨이 오를 때 마다 최대 체력공격력이 상승한다.
  • 레벨업 시 최대치까지 체력을 회복합니다.
  • 최대 레벨은 10으로 제한한다.

5. 아이템

  • 아이템을 사용하면 사라진다.
  • 버프 아이템은 전투 시작전 사용할 수 있다.
    • 공격력: 전투 시작전 공격력을 올린다.
  • 소비 아이템은 전투할때 자동으로 기준에따라 사용된다.
    • 체력 포션: 일정 체력을 회복하고 턴을 넘긴다.

6. 게임 로그 확인

  • 공격, 피해, 아이템 사용, 골드 획득 등 중요한 이벤트는 콘솔에 나열하여 표시합니다.
  • 로그를 통해 오늘 어떤 몬스터를 얼마나 잡았는지 한 눈에 확인 가능해야 합니다.

도전 기능

7. 몬스터 보스전

  • 라운드 마다 중간 보스 존재
  • 10레벨 달성 시 “이제 일반 몬스터는 상대도 안 된다!” 라는 메시지를 출력
  • “보스 몬스터”가 등장합니다! 메세지와 함께 보스 등장 연출
  • 중간 보스의 스탯은 기존 몬스터의 1.2배 범위 랜덤 설정
  • 중간 보스 보상 버프 아이템 고정 지급(”~의 가호”,”~의 은혜”)
  • 최종 보스의 스탯은 기존 몬스터의 1.5배 범위 랜덤 설정
  • 보스 클리어하면 게임 엔딩 화면으로 넘어감

8. 상점 시스템

  • 전투 시작전 상점에 입장할수있다. 입장 안해도 된다.
  • 상점에서는 골드로 아이템을 구매/판매 가능해요.
  • 아이템 구매
    • 골드를 사용해서 아이템을 구매할 수 있어요.
    • 구매 아이템은 인벤토리에 즉시 추가됩니다.
  • 아이템 판매
    • 보유한 아이템을 골드로 판매할 수있어요.
    • 판매 가격은 구입 원가의 60%입니다.
    • 판매된 아이템은 인벤토리에서 즉시 제거되요.
  • 아이템 목록은 자유롭게 제작할 수 있습니다.
  • 아이템은 가격이 정해져 있어야 합니다. 유동적으로 변할 수 없어요.
  • 체력포션, 공격력 포션, 1회 무적, 즉사 아이템 (겁나 비쌈)

간단한 스켈레톤 코드 구성 및 클래스 다이어그램 구성

구상한 플로우 차트에 맞춰서 구상하는 과정에서 클래스 다이어그램 설계 및 수정 진행중

profile
개발합시다!

0개의 댓글