Skip to content

ttangu5510/KGA_OOPConsoleProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KGA_OOPConsoleProject

ConsoleProject for portfolio

프로젝트 설계

  • 레퍼런스는 MUD게임, 소코반, 로그(1980) 등
  • 크게 객체지향, 자료구조, 알고리즘을 활용해서 보여줄 수 있는 프로젝트를 지향하도록 한다

기획

  • 일전에 배웠던 소코반 기반 콘솔프로젝트(깃허브)와, 텍스트RPG 콘솔프로젝트 컨텐츠들을 합쳐서 구현해 보도록 한다

  • 소코반처럼 캐릭터의 움직임이 있고, 텍스트알피지 처럼 여러가지 선택사항에 따라 게임이 업데이트 될 수 있게 한다

  • 맵 생성은 로그와 같이 랜덤 맵생성을 목표로 해본다

  • 스프린트 백로그

    1. 선택지 : 씬
    2. 씬 전환, 동작 수행 : 게임매니저
    3. 플레이어 : 기본스탯, 장비, 인벤토리, 스킬
    4. 필드 맵 : 상호작용 가능 요소(문, 상자), 몬스터, 움직임
    5. 몬스터 : 다양한 몬스터, 전투 시스템
    6. 아이템 : 상점, 효과
  • 기본

      1. 선택지 : 씬 - 구현완료
      1. 씬 전환, 동작 수행 : 게임 매니저 - 구현완료
      1. 선택 구현 : 인풋(상하로 이동해서 확인버튼) - 구현완료
  • 응용

      1. 플레이어 : 기본스텟
      1. 몬스터 : 전투 시스템(큐)
      1. 아이템 : 효과
      1. 필드 맵 : 몬스터
      1. 인벤토리 : 아이템리스트(장비포함)
  • 도전

      1. 플레이어 : 인벤토리(스택), 스킬, 장비(이벤트)
      1. 필드 맵 : 상호작용 가능 요소(문, 상자), 몬스터 움직임, 랜덤 맵생성(DFS), 스크롤 되는 맵 구현
      1. 몬스터 : 다양한 몬스터(BFS로 범위 내 플레이어 추적, 팩토리로 생성(스테이지 레벨로 강해지는 기능))
      1. 아이템 : 상점, 선택 을 할 때, 최대 표시 갯수를 정해두고 나머지를 사용하면 될 듯 하다.
        • % 10 + 10 * 페이지
      1. 저장, 로드기능 : 파일 입출력 을 배워야함
        1. txt 파일로 저장해놓고, File.ReadAllLine 으로 정보들을 읽어옴, File.Write()도 가능
        1. 추후에 Unity 배울 때, Json을 통해 관리방법 배움)

구조설계

About

ConsoleProject for portfolio

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages