프로그래밍/Python

python 공부를 위한 토이 프로젝트 - 기획편

코드자국 2024. 7. 20. 01:29
반응형

토이 프로젝트를 하는 이유

python 강의를 보고 약간의 실습을 거쳐 완강을 했다. 코딩 관련 강의를 듣고 항상 느끼는 점은 실제로 코딩을 해보지 않으면 강의를 수강한 것이 무용지물이 된다는 것이다. 강의 내용으로 간단하게 토이 플젝을 진행하고 실제로 구현을 해봐야 실무에서 써먹을 수 있을 뿐더러 내용도 보다 오래 기억하며 써먹을 수 있다.

 

토이 플젝을 통해서 강의를 들었던 흔적을 남기려고 한다.


간단한 기획서부터, 주제는 게임

가장 만만하면서도 실력 향상에 도움이 되는 것은 게임 프로그래밍이다. 로직도 들어가야 되고 객체지향 설계나 잘 만드려고 하다보면 시스템 적으로 고려되야 하는 사항도 하나 둘씩 생간다. 따라서 간단하게 기획을 하고 게임을 만드려고 한다.

 

python 내용을 가지고 간단하게 게임을 만들 것이기 때문에 console text를 이용해서 진행하는 게임을 만들 것고 내용은 다음과 같다.

 

게임 요소

  • 전투
  • 시나리오 진행
  • 맵 이동
  • 장비 수집 및 사용

게임 진행 흐름

전투 방법

NO. 내용
1 HP, MP가 있어서 타격을 주고 받아 HP를 소모 시킬 수 있으며, 스킬을 사용 할 때 MP를 사용한다.
2 전투는 다대다 전투가 자동으로 이뤄진다.
3 몬스터 및 캐릭터에게 우선 순위가 있어서 우선순위가 높은 대상부터 차례대로 공격한다.
4 전투가 끝나면 패배시 마을로 자동으로 복귀를 하게 되고 승리하면 소모 된 HP와 MP가 모두 회복 되며 이동 할 맵을 지정 할 수 있다.
5 모든 캐릭터 및 몬스터는 공격 시간을 가지고 있으며 해당 시간이 지나야 
6 여러가지 행동을 할 수 있는 상태라면 공격력이 가장 높은 행위를 한다.

 

시스템 요소

  • 전투 시에 몬스터는 던전에 따라 정해져 있으며 몬스터의 수는 랜덤으로 생성 된다.
  • 게임은 실시간으로 파일로 저장이 되며 어느 단계에서 종료가 되었던 저장 된 파일을 불러와서 종료 되던 시점부터 불러와서 진행 할 수 있다.
  • 일시정지 기능이 존재한다.

맵 이동

 

 


시나리오 진행

 


장비 종류

 

 

 


캐릭터

 

다니엘(전사)

 

스킬명 MP 소모 쿨타임(초) 공격 속도(초) 공격 계수
일반 공격 0 4 1 1.0
방패 치기 2 2 1 1.0
찌르기 4 3 1 2.0
레벨 1 2 3 4 5 6 7 8 9
HP 15 18 21 24 27 30 33 35 38
MP 6 8 10 12 14 16 18 20 22

 

헬렌(궁수)

 

스킬명 MP 소모 쿨타임(초) 공격 속도(초) 공격 계수
일반 공격 0 8 1 1.0
속사 4 5 2 1.0 /8 회
저격 10 10 4 4.0
레벨 1 2 3 4 5 6 7 8 9
HP 10 12 14 16 18 20 22 24 26
MP 14 16 18 20 22 24 26 28 30

 

 

마취(마법사)

 

스킬명 MP 소모 쿨타임(초) 공격 속도(초) 공격 계수
일반 공격 0 8 1 1.0
매직 미사일 2 5 1 2.0
파이어볼 4 10 1 2.0 / 전체 공격
레벨 1 2 3 4 5 6 7 8 9
HP 15 18 21 24 27 30 33 35 38
MP 40 45 50 55 60 65 70 75 80

 

 


테스트 후 기획내용

얼마의 경험치를 얻어야 레벨업을 할지, 몬스터의 강함은 어느 정도 해야 될지는 구현 후에 정하려고 한다. 

 

 

 

 

반응형