시스템 기획
◈시스템기획◈
[준비]
규칙에 대한 설명
프로세스 : 플로우, 동작하기 위해 필요한 과정
요소 : 동작을 위해 필요한 성분
프로그래밍 기초개념
스크립트 사용능력
데이터베이스
서버와 DB의 기능 이해
OOP(객체지향개발)에 대한 이해
EXCEL
시스템이 재미있는지가 아니라 어떻게 작동하는 지에 대해 생각할 것
보드게임 많이 접하는 것은 시스템 기획의 기본이 된다.
보드게임 룰북/매뉴얼(ex.아그리콜라)
규칙을 설명하는 방식/목차를 잘 볼 것(설명 전개방식)
개발을 위해 필요한 것들을 먼저 찾는다.
기능과 콘텐츠는 모두 다르다.
[시스템 도출]
1.아이디어에서 출발하기
-게임의 특징과 목표를 먼저 정의
-해당하는 특징을 구현하기 위해 어떤 기능을 보여줄지 구체적으로 작성
ex)
자유로운 스토리 : 분기형 진행
강렬한 액션 : 파괴하거나 이용가능한 오브젝트(마영전), 다양한 캐릭터(던파), 타격감(타격직전
느려지는 모션 - 스트리트 파이터)
= 아이디어에서 출발한 시스템은 여전히 추상적인 경우가 많다. 기본적인 시스템의 뼈대를 만들기 위해 초안작업에 주로 사용
2.벤치마킹에서 출발하기
3.경험에서 출발하기
-직접 플레이했던 경험 또는 평가를 토대로 기능을 검토
-기능도출이 빠르다.
-분석이 용이
-개발자의 기호가 강하게 반영
-개발속도가 빠름
-경험이 부족하면 품질이 떨어짐
[기능명세서]
1. 기능명세
-추상적인 기능에서 구체적인 기능을 도출
-상위 개념에서 하위개념으로 탑-다운방식으로 정리해 나가면서 구체화
2.개발요청
-개발자 : 당장 기능개발이 어렵다면 표현할 수 있는 더 쉬운 방법을 찾는다
-디렉터 : 정리한 기능이 게임의 전반적인 방향과 일치하는지 여부를 확인한다.
-툴기획 : 기능을 실제로 사용하는 레벨디자이너나 콘텐츠 개발자들과 상의
-개발하기로 결정된 기능이더라도 실제 구현하는 과정에서 기획과 다르게 표현될 수 있다.
[시스템 제작]
1.시스템 찾기
시스템을 만들기 위해 필요한 기능을 도출하는 것에서 시작한다.
-기능을 묶어 하나의 시스템으로 만들어낸다.
-장르에서부터 도출
-적당한 크기로 시스템을 구분할 것(작게)
ex)캐릭터시스템(X)
ex)캐릭터액션시스템(X)
ex)대쉬시스템(O)
-기획자가 잘 알지 못하는 경우 상세히 작성하지 못할 수도 있다.
ex)대규모 필드접속 시스템
ex)장착 아이템 별 그래픽 변환시스템
-하지만 잘 알지 못하는 일이라고 하더라도 개발상황의 체크를 하고 상황조율을 하는 것은 중요
2.시스템 설계
-게임의 컨셉들과 일치되는 시스템을 제작
-시스템의 변동이 있을 때는 게임의 컨셉과 크게 달라지지 않도록 한다.
-지금 당장 필요한 시스템이 아니더라도, 미리 만들어 두거나 잘 정리해두면 필요할 때 쓸 수 있다.
ex)강화,진화,초월,템 장착
[요소설계]
-기능을 위해 필요한 내용을 찾는 과정에서 출발
ex) 액션시스템 : 애니메이션 출력(기능1), 타격 판정(기능2), 이펙트출력(기능3)
ex) 애니메이션 출력 : 대기 애니메이션(요소1), 공격 애니메이션(요소2), 히트 애니메이션(요소3)
ex) 타격판정 : 일반 타격(요소1), 스킬 타격(요소2), 띄우기 공격(요소3), 바운드 판정(요소4)
ex) 이펙트출력 : 검기이펙트(요소1), 피격이펙트(요소2) 크리티컬이펙트(요소3)
-만들어진 기능을 통해 활용하고 싶은 요소를 구성
1.상세설명
-요소 하나하나를 상세히 설명
-개념 및 정의
-구현방식
-필요 데이터 설명
1) 개념 및 정의
-사소한 요소들을 놓치지 않도록
ex)힘 능력치는 캐릭터가 발휘할 수 있는 물리적 강함의 수치(정의)
ex)힘 능력치에 따라 장착할 수 있는 무기가 달라진다.(기능)
2) 구현방식
-요소가 게임안에서 어떤 역할을 담당하고 어떻게 구현되는지 설명
ex)캐릭터 이동은 캐릭터를 조작하는 방향으로 이동한다.(X)
ex)캐릭터 이동은 캐릭터의 X좌표를 키보드 조작에 따라 이동거리 값 만큼 이동한다.(O)
ex)카리스마 4당 소환몬스터 1마리 소환 또는 테이밍이 가능
ex)카리스마 1당 길드원 10명 가입이 가능
-최대한 구체적으로 작성
3) 필요 데이터 설명
-데이터의 내용과 특징에 대해 작성
ex)체력이라는 수치는 정수형으로 표현
ex)값의 범위는 0~99999까지 표현 가능
2.문서작성
-메뉴얼을 작성하는 것으로 생각하면 좋다
-명료해야 함
-리스트화 하여 작성
-가독성 및 독자이해도가 가장 중요 : 다이어그램, 순서도, 계층구조도 이용
3.일반 시스템 규칙작성
1) 일반시스템 : 허점이 없어야 한다.
-조건&결과 규칙 : If, then
[조건]이 만족되면 [결과]가 수행된다.
ex)[몬스터의 공격에 맞으면], [데미지를 입는다]
2) 현상규칙
-특정 현상을 분석하는 규칙
-공식을 정리하는 규칙
-하지만 깊게 들여다 보면 이것으로 인해 인과관계가 설계되는 경우가 많다.
ex) 캐릭터의 Hp는 체력과 장착 아이템에 의해 결정(비조건)
ex) MHp = stat.CON*2+item.Hp(공식)
ex) 전사캐릭터의 Hp는 체력과 장착아이템 그리고 기본적으로 100의 수치를 더한다(예외추가)
ex) 전사캐릭터가 아니라면 Hp는 체력과 장착아이템에 의해 결정된다(조건&결과로 변경)
4.규칙 목록화
-게임에 필요한 규칙의 목록을 작성한다.
-게임의 규칙을 명세할 때는 어떤 규칙이 필요할 지부터 정리하는 것이 필요
-유저의 플레이를 그리면서 규칙을 정의한다.
ex)캐릭터 마우스조작(기능)
ex)이동,대화,공격(요소)
ex)이동에 관한 규칙, 대화에 관한 규칙, 공격에 관한 규칙
-큰 규칙에서 작은 규칙, 규칙의 필요순서에 따라 작성
ex) 던전입장 > 몬스터생성 > 캐릭터전투 > 던전클리어 > 퇴장
-규칙 작성중 유사규칙, 예외사항 규칙, 용어규칙 등 다양한 규칙이 파생
-이러한 규칙을 세부규칙이라고 한다.
-세부규칙들은 최대한 일반화를 통해 한번에 설명할 수 있도록 한다.
ex) 해골몬스터는 턴언데드에 죽는다.(세부규칙)
ex) 언데드형 몬스터는 턴언데드에 죽는다.(일반규칙)
5.규칙검증
-규칙은 보는사람에 따라 이해도가 차이날 수 있다.
-규칙은 되도록 간단하고 명료하게
-최대한 많은 경우의 수를 따져보면서 논리적으로 기술
ex) [전제 : 몬스터를 처치하면 경험치가 증가한다.]
ex)그렇다면, NPC,소환수는 몬스터인가?
ex)그렇다면, 몬스터를 내 소환수가 처치해도 경험치가 증가하는가?
ex)그렇다면, 몬스터를 마을에서 처치해도 경험치가 증가하는가?
ex)그렇다면, 몬스터를 처치한다는 뜻은 무엇인가?
-경우의수는 육하원칙에 따라 만들어 보기
6.예외규칙
-특정한 경우에 따라 다른 규칙을 두어야 할 때도 있다.
ex)스킬은 스킬트레이너에게 스킬포인트를 소모하여 배운다.(일반규칙)
ex)궁극기는 특정 퀘스트가 완료된 이후 트레이너에게 스킬포인트를 소모하여 배운다.(예외규칙)
7.플레이규칙
-게임의 진행플로우를 그려서 과정을 설명한다.
ex)배틀신청 > 대기 > 챔피언 밴 > 챔피언 선택 > 게임시작
ex)스테이지 입장 > 내 턴 > 상대턴 > 스테이지 종료조건 달성
-게임의 목적에 따른 규칙