게임 심화편 아군 캐릭터 방어력 및 체력 계산
CC사관학교
여러분 안녕하십니까
액션 RPG 밸런스 게임 기획의 박형선입니다
이번 시간에는 아군 캐릭터 방어력 및 체력 계산에 대해 이야기를 해볼까 합니다
플레이어가 버티는 시간 동안 필요로 하는 유효 체력과
그를 바탕으로 방어력 체력의 수준을 구해보도록 하겠습니다
플레이어의 기본 방어력을 설정하고 총 방어력 수치를 만들어냅니다
또한 플레이어의 체력을 수식화하여 수치를 구하고
레벨별로 플레이어의 유효 체력을 구하는 작업을 설명드리겠습니다
이를 통해 특정 스테이지에서 일반 몬스터 및 보스 몬스터의 공격을
얼마나 버티는지 수치를 구합니다
기본 방어력 설정 및 총 방어력 수치 설정
아군 캐릭터 방어력 및 체력 계산 입니다
플레이어 캐릭터의 방어력 및 체력 구하기
지금까지 스테이지별 수치를 맞추는 것을 하고 있습니다
스테이지 1 2 3 4 5 6 100 이런식으로 스테이지별로 수치를 만들고 있구요
플레이어 캐릭터 아군의 방어력 및 체력을 구해 보겠습니다
적군과 아군이 싸웠을 때
1초에 211의 피해를 받고 있습니다
30초 후가 되었습니다
아군의 레벨이 1일 경우
아군의 기본 방어력은 몇인가
각 방어구의 방어력은 몇인가
그리고 아군의 총 방어력 및 체력은 몇인지
유효 체력은 몇인지
이런 여러가지 문제에 봉착하게 됩니다
아군이 특정 스테이지에서
일반 몬스터 상대로
30초 이상 견디기 위해서
필요한 총 유효 체력은 어느 정도인가를
물음을 던져보면
그거에 맞춰서 다른 것들을 맞출 수 있을 것입니다
플레이어 유효 체력 구하기
우선 플레이어의 유효 체력을 구하기 위해서는
플레이어가 몇초 동안
생존할 수 있는지에 대한 기준이 필요합니다
가상의 경우를 선정하여
특정 스테이지에서
플레이어가 어느 정도 생존할지 먼저 생각을 해서
가데이터를 미리 만들어보는 것이 좋습니다
한번 만들어 보도록 하죠
10쪽 칼럼을 어떤 것으로 설정할지 살펴보도록 하겠습니다
샘플링 밸런싱을 위해서 20스테이지씩 나눠서 생각을 하겠습니다
1스테이지 20스테이지
40스테이지 60스테이지
80스테이지 100스테이지 동안의
목표 시간 초가 있습니다
그리고 일반 몬스터에게 버티는 시간
보스 몬스터에게 버티는 시간을
설정을 해서 채워 보겠습니다
일반 몬스터에게 버티는 시간은
1,20,40,60,80,100에
10,20,20,30,30,30초 이런 식으로 입력을 하고
보스 몬스터에게 버티는 시간은
5,25,15,35 이런 식으로
더미 데이터를 한번 넣어 보세요
플레이어 레벨 20 단위로 능력치를 정하기 때문에
20스테이지 단위로 목표 생존 시간을 설정합니다
스테이지가 올라갈수록 플레이어의 레벨도 올라가고
방어력 및 체력이 상승하기 때문에
생존 시간을 상승시켜 잡았습니다
플레이어 유효 체력 구하기입니다
스테이지 1을 예시로 들어보겠습니다
생존 시간에
해당 스테이지에서 일반 몬스터 및 보스 몬스터가 주는
초당 피해량을 곱할 경우
목표하는 유효 체력을 구할 수가 있습니다
예를 들어 보겠습니다
일반 몬스터와 보스 몬스터가 있죠
일반 몬스터의 초당 피해량은 211입니다
보스 몬스터의 초당 피해량은 300입니다
해당 스테이지에서의 몬스터 초당 피해량을 만들고요
그리고 캐릭터 플레이어
아군 캐릭터와 적군 일반 몬스터가 전투를 합니다
10초 후에
211 곱하기 10은 2110 이구요
아군 캐릭터와 보스 몬스터가 전투를 합니다
5초 후에
300 곱하기 5는 1500이죠
1레벨의 플레이어 체력은
이 사이가 되도록 조정할 예정입니다
생존 시간에 맞는 플레이어의 방어력과 체력을 한번 보시죠
우리가 게임 UI를 보시면
PC 게임이나 모바일 게임이나
마찬가지로 RPG 게임에서는
아군 캐릭터의 내 정보 창이 있습니다
내 정보 창에 여러가지 정보가 있는데요
캐릭터 네임이나 캐릭터의 모습
그리고 별등급이 있는 게임의 경우
성급도 있을 수 있고 레벨도 있을 수 있고
저렇게 캐릭터 조각을 모아서 성급을 올린다
라는 정보가 있을 수 있고
공격력 체력 방어력 같은 스탯도
표현을 할 수가 있겠죠
그런데 이 경우에는 방어구를 차면 방어력이 오른다고 산정을 하고
방어구의 빈 슬롯을 한번 만들어 보겠습니다
방어구가 현재 캐릭터가 기본 능력치만 적용된 상태인데
방어력이 400이라고 하면
방어구를 아무것도 차지 않아도
방어력이 400 상승에 있다고 가정을 하는 것입니다
방어력을 추가로 상승시키는 요소는
방어구 4개와 장신구 1개입니다
방어구는 상의 하의 투구 신발 이렇게 4개이고요
빈 슬롯이 있습니다
그런데 투구 상의 하의 신발 장신구를 모두 장착을 했다고 하면
그 방어구에 있는
방어력을 올려주는 스탯이 들어 있어서
방어력이 400에서 1400으로
아이템을 장착한 후에 상승한 것을 볼 수가 있습니다
저런 식으로 실제 게임에서 진행이 되겠죠
방어력을 상승시켜주는 방어구 4개
투구 상의 하의 신발 더하기 장신구가 존재한다고 할 때
해당 요소들을 장착을 함으로써
아군 캐릭터의 방어력을 상승을 시켜주면서
스테이지 내에서 이런 것들을
획득이 가능한 아이템으로 존재하게 되겠죠
이런 방어구나 이런 아이템에는 등급이 존재하며
높은 등급일수록 상승되는 능력치가 올라갑니다
방어구에는 등급도 있을 수도 있고
강화도 있을 수도 있고
또 추가적인 요소가 있다면 레벨 같은 것도 있을 수가 있겠죠
그래서 플레이어
아군 플레이어,아군 캐릭터 레벨에 따른 캐릭터의 방어력과 함께
투구 상의 하의 장신구의 능력치를 한번 설정해서
캐릭터의 총 방어력을 설정을 할 것입니다
플레이어 기본 방어력 설정 수식화를 배웠는데
수식화를 통해서
플레이어 레벨 1에서 100까지의
가장 기본적인 방어력을 설정해보겠습니다
레벨 1, 2, 3, 4, 5, 6 이런 식으로 하면
1레벨 기준에서 적당하다 생각하는
더미 데이터 수치를 방어력에 입력해봅시다
수식 입력 후 드래그 혹은 더블 클릭하는데
보통은 3차 방정식에 증가하는 수식을 많이 씁니다
하지만 강의에서는 그냥 쉽게 하기 위해서
이전 방어력 더하기 12 이런 단순한 수식으로
계산을 하도록 하겠습니다
방어력이 1레벨 마다 12씩 증가하도록 설정해보겠습니다
그럼 레벨 1부터 20까지 증가하면
레벨 1에서는 380이고 12씩 증가하니까 2는 392
20에는 608이라는 방어력의 수치 더미 데이터가 나오게 되겠습니다
플레이어 총 방어력 설정하기
기본 능력치와 아이템 방어력이
더한 값이 1400입니다
그런데 기본 능력치가 400이고요
방어구 4개와 장신구로 올라가는 방어력은 1000입니다
그것을 또 값을 나눌 수가 있겠죠
방어구 4개의 방어력의 총합은
800이라고 설정하고
장신구 하나의 방어력은 200이라고 나눠줍니다
그래서 여기서 중요한 점은
총 방어력이 1400이라면 그것을
맨몸 방어력
장신구 방어력
방어구별로 가지고 있는 각각의 방어력으로 쪼개줘야 된다는 뜻입니다
그래서 쉬운 방법은 먼저 플레이어 캐릭터의 전체 기준 방어력을 설정한 후에
맨몸 장비로 방어력을 쪼개주는 식으로 진행하는 것입니다
그래야지 아이템의 수치를 정할 수가 있는 거겠죠
아이템의 수치를 그냥 감으로 정하는 것이 아니라
밸런싱 기준을 통해서 수치를 나눠주는 식으로 진행합니다
그리고 샘플링 밸런싱을 위해서
플레이어의 가상 프로필을 우리가 만들어 볼 수 있습니다
이것은 이제 성장 밸런싱과 보상 밸런싱에 또 관계가 있습니다
쉽게 말씀드리면
얼마나 무과금으로 플레이해서
얼마나 보상을 얻을 수 있고
그것을 얼마나 강화를 할 수 있고
얻는 골드 이런 걸로 투자해서
그러면 무과금으로 플레이하면 어디까지 성장을 시킬 수 있는지
어느 정도의 방어구 등급과 수치를 만들 수 있는지가 있을 것이고
무과금 플레이랑
여기에 돈을 썼을 때
캐시를 써서 좀 빠르게 성장하거나
또는 방어구를 가챠에서 동일한 것을 뽑았을 때
돈을 얼마 쓰면
30만원 정도 쓰면
15일 정도 플레이할 것을 뛰어넘을 수 있다라든지
이런 보상 밸런싱이 있겠죠
이게 전투 밸런싱, 성장 밸런싱, 보상 밸런싱이 모두 연결이 되어 있습니다
그래서 이것들을 방어구를 세팅하는 것이
성장 밸런싱, 보상 밸런싱을 위해서
같이 하는 작업이라고 생각을 하시면 되겠습니다
예를 들어서 플레이어 레벨 1이 있고
플레이어 레벨이 20이 있고
플레이어 레벨이 40이 있고
플레이어 레벨이 60, 80, 100이 있습니다
그러면 상의 하의 투구 신발 장신구가 1등급이 제일 낮고
6등급이 제일 높은 거라고 가정을 했을 때
상의 하의 투구 신발 장신구를 모든 방어구를 캐릭터가 장착한다고 생각하고
장착을 다시 켜봅니다
그래서 플레이어 1레벨짜리가 1등급의 모든 등급을 장착한 것
20레벨의 가상의 캐릭터가 2등급
40레벨 3등급,
60레벨 4등급
플레이어 레벨 80레벨 5등급
100레벨 6등급의 레벨 30까지
모든 장비 다 방어한 것을 장착했다 가정하고
그렇게 따지면 플레이어 레벨 1, 20, 40, 60, 80, 100에 대해서
얼마나 강해져야 되는지
우리가 기준을 설정한 후에
공격력, 체력, 방어력 이런 기준을
1, 20, 40, 60, 80, 100에 큰 기준을 세우고
그것을 맨몸과 아이템으로 나눠주면 밸런싱이 끝납니다
그래서 큰 기준을 세우고
맨몸이 가져가는 캐릭터 스탯
그리고 각 장신구별로 나눠져서
우리가 지분처럼 나눠주는 거죠
지분처럼 퍼센트로 나눠져서
몇 프로로 나눠줄 것인가
그런데 그냥 하는 것이 아니라
몇 등급을 장착했다라고 가정해서 나눠줍니다
그렇게 해서 기준을 정하고 밸런싱을 하는 것이죠
후반으로 갈수록 방어구가 차지하는 비율이
기본 능력치, 맨몸 아무것도 차지 않았을 때
맨몸 능력치를 기본 능력치라고 하는데
그것보다는 높게 설정합니다
보통 20% 정도 차지하도록 설정하고요
그렇게 해야 추후에 플레이어가 방어구의 필요성을 느끼게 되고
게임 플레이를 하는 시간이 늘어나거나
가챠를 돌려서 방어구를 뽑거나 하는
수익이 창출될 가능성이 올라가게 되겠죠
그래서 밸런싱은 단순하게 게임을 재밌게 하는 것에도 영향을 미치지만
우리가 비엠, 비즈니스 모델, 캐시 아이템을 매출을 올리는데도
아주 아주 중요한 역할을 하고요
그리고 컨텐츠 소모 속도
우리가 게임 컨텐츠를 얼마나 소모를 시킬 것인가
이런 보상 밸런싱, 경제 밸런싱, 성장 밸런싱에도
지대한 영향을 미칩니다
그래서 수치를 규형적으로 맞추는 것이 매우 매우 중요합니다
전투, 성장, 보상에 모두 영향을 미치기 때문이죠
그래서 다시 한번 기준 테이블을 만들어 봅시다
1레벨, 20레벨, 40레벨, 60레벨, 80레벨, 100레벨이라고 해서
방어력 비율을 정하면 되죠
총 방어력이 1레벨 865, 20레벨 1518
이런 식으로 큰 방어력이 정해졌다면
기본 스탯 능력치 맨몸
방어구 상의, 하의, 머리, 신발, 장신구를 퍼센트로 나눠줍니다
그래서 1레벨에는 기본 스탯 맨몸이 44%
상의가 17%, 하의가 14%, 머리가 12%
신발이 9%, 장신구 3% 이렇게 나누었다면
100레벨에는 달라집니다
100레벨에는 기본 스탯이 18%, 상의 23%
하의 21%
머리 17%
신발 14%, 장신구 7% 이런 식으로
기본 스탯은 좀 낮추고 비율을
나머지 쪽의 퍼센트를 높여주면
방어구의 후반 레벨 때 가치가 올라감으로
유저들은 더 돈을 쓰거나 더 파밍을 하거나 하는 식으로 되겠죠
이런 식으로 밸런스를 기획 의도에 따라서 수치를 조절하는 것이 중요한 것입니다
레벨이 증가하면서 장착하는 아이템들의 등급도 같이 상승을 하게 되겠죠
수치를 적절히 상승시키면서
수치를 넣어보고 차지하는 비율을 확인합니다
캐릭터의 총 방어력은 기본 능력치 더하기 방어구 상의
더하기 방어구 하의 더하기 방어구 머리
더하기 방어구 신발 더하기 장신구입니다
최종 방어력 기준으로 본
강의에서의 방어력에서의 비중은
상의가 1순위, 하의, 투구, 신발의 기본 능력치
장신구가 가장 낮은 비율을 가지는데
이것은 기획 의도에 따라서 달라질 수 있습니다
상의 하의를
조금 더
좋은 아이템으로 설정하고
투구 신발을 그 다음
그 다음에 장신구를 가장 안 좋은 아이템으로 설정한다면
이와 같은 수치가 나올 것입니다
플레이어 총 방어력 설정하기 그래프를 보겠습니다
플레이어 방어력 상승 정도입니다
여기서 기본 스탯 능력치
방어구 상의, 하의, 머리, 신발
장신구를 볼 수가 있죠
초반에는 기본 능력치와 방어구의 비중이 크게 다르지 않습니다
기본 능력치가 더 높고
후반으로 갈수록 방어구의 비율이 늘어나고
기본 능력치보다 더 높은 비중을 차지하게 됩니다
그래프로도 알 수 있습니다
플레이어 총 방어력 설정하기 표를 한번 다시 보겠습니다
각 아이템이 가진 방어력에 따라서
데미지를 어느 정도 방어하는지 보여줍니다
모든 방어구 더하기 장신구 더하기 기본 능력치를 더한
총 방어력의 방어율을 확인해 볼 수가 있죠
이런 식으로 각 방어가 가진 방어율과
총 방어력의 방어율을 확인해
원하는 수치가 나올 수 있도록 수치를 조정해 나갑시다
방어율이라는 것은
얼마나 막아주는지의 퍼센트 입니다
피해 흡수량과 동일한 내용이죠
그래서 방어력을 계산하는 것인데
방어율은 피해 흡수량과 동일하고
피해 흡수량은 방어력 플러스 방어 상수 분의 방어력
이런 식으로 설명드렸습니다
방어 상수가 1000 이라면
방어력 플러스 1000 분의 방어력으로 계산이 될 수가 있겠죠
그래서 방패의 퍼센트 입니다
그것을 1레벨, 20레벨, 40레벨, 60레벨, 80레벨, 100레벨로 설정하고
그것을 방어율을 몇 퍼센트로 막아주는지를 표로 만들어서 비교합니다
기본 스텝 방어율, 상위 방어율, 하위 방어율, 머리 방어율, 신발 방어율, 장신구 방어율, 평균 방어율
총 방어율도 나올 수가 있겠죠
방어율은 그래서 점진적으로 상승하게 됩니다
플레이어 체력 수식화 및 유효 체력 설정
플레이어의 체력을 한번 수식화를 해 보도록 하겠습니다
처음에는 더미데이터를 입력하면서
수식을 하나씩 만들어 볼 수가 있겠습니다
1레벨 기준으로 적당하다 생각하는 수치를 한번 입력해 보세요
가장 중요한 수치가 3가지 입니다
방어력, 공격력, 체력인데
공격력은 보통 초당 공격력으로 계산하고요
레벨이 1, 2, 3, 4, 5 이런 식으로 되어있고
방어력, 공격력, 체력이 있다면 체력이 비어있으니까
천 이런 식으로 아무 데이터나 한번 만들어 보고요
수식을 아주 간단한 수식을 입력 후 드래그 혹은 더블 클릭
더미데이터이기 때문에 아주 간단한 수식으로 하겠습니다
강의에서 쓰인 수식은 3차 방정식이 아니라
이전 체력 플러스 150
이렇게 간단한 수식으로
체력이 150씩 증가하도록 설정했습니다
그렇다면 레벨 1부터 10까지 20까지 했을 때
체력이 1000부터 3850까지 움직이게 됩니다
1000, 1150, 1300
이런 식으로 단순하게 증가하는 값을 가지게 되겠죠
이런 더미데이터를 만들어서
플레이어 레벨 1에서 100까지의 플레이어 체력을 한번 설정해 보세요
레벨별 방어력에 따른
방어율이 반영된 유효체력을 한번 구해 보도록 하겠습니다
표가 3가지가 있습니다
이것도 샘플링 밸런싱을 위해서 레벨이 있고
나머지 스탯이 있는데요
첫 번째 표부터 보겠습니다
가장 위에 표에는
레벨이 1레벨, 20레벨, 40레벨, 60레벨, 80, 100까지 있고
플레이 스테이지도 1스테이지, 20스테이지, 40스테이지, 60스테이지, 80, 100 동일하게 됩니다
그래서 이렇게 하는 이유는
아군 캐릭터의 레벨과 플레이 스테이지를 맞춘 것입니다
그래서 20레벨은 20스테이지를 깰 수 있고
40레벨은 40스테이지를 깰 수 있다라는 뜻입니다
그래서 기본 체력이 그러면
1000, 3850, 6850
9850, 12850, 15850
아까 정한 수식에 따라서 이렇게 증가하게 되겠죠
그리고 결국에는 방어율 반영 체력을 구하는 것입니다
유효 체력을 구하기 위해서는
총 방어력에 따른 방어율을 필요로 합니다
유효 체력은 1마이너스 총 방어율 분의 체력이죠
1레벨 기준 유효 체력은 1마이너스 0.46 분의 1865
이런 식으로 나오게 됩니다
그래서 방어력을 보면
총 방어력
1레벨 20레벨 40레벨 60레벨 80 100일 때 총 방어력이 865, 1518
2648
4438
5928
8668 이렇게 됐을 때
방어력에 따라서 방어율이 나오죠
총 방어율은 말씀드렸다시피
예를 들어서 방어상수 1000을 하면
방어력 플러스 방어상수 분의 방어력
이런 식으로 구하게 됩니다
방어율 이라는 것은 피해 흡수량과 동일하니까
이렇게 하시면 되죠
방어력을 방어력으로 환산하는 공식입니다
그래서 총 방어율도 1레벨 20레벨 40레벨 60레벨 80레벨 100레벨에
46, 60, 73, 82, 86, 90 이런 식으로 되어 있는데
이것은 피해 흡수량으로 방패입니다
적군 데미지를 46% 방패
20레벨 때 60% 방패로 막는다라는 얘기죠
방어율은 방패
얼마나 막느냐
퍼센트로 막는다라는 얘기입니다
그래서 그것을 총 계산을 하면
플레이 스테이지, 1스테이지 20,스테이지 40 60 80 100일 때
기본 체력이 1,000이고 3,850이고 6,850이고 9,850이고 12,850이고 15,850일때
계산식이 나왔잖아요
유효체력은 1 마이너스 총 방어율분의 체력입니다
그렇게 하면 방어율 반영 체력
진짜 체력 유효 체력이 나오게 됩니다
방어율 반영 체력이라는 것은 결국에는 유효 체력이라는 것입니다
진짜 체력인 거죠
그래서 이제 방어력을 없애버리고 체력을 유효 체력으로 바꿉니다
그러면 기본 체력이 1000이면
방어력을 이제 합쳐 버리는 거죠
합쳐서 계산해버리면 1865가 되고
20 레벨의 20 스테이지는 3850이 아니라 9694,
6,850이 아니라 24,989
진짜 체력은 24,989라는 거죠
방어력을 선정해서 하니까
그렇게 해서 이런 식으로 레벨별로 다 구할 수가 있는 것이죠
그렇게 해서 이런 것들을 그래프로 표현하면
레벨별 방어력에 따른 방어율이 반영된 진짜 체력
유효 체력을 구할 수가 있습니다
유효 체력을 바탕으로 특정 스테이지에서
몬스터한테서 몇 초를 버티는지 한번 확인을 해봅시다
해당 시간을 확인을 하면서
이전에 설정했던
생존 시간과 비슷한지 한번 확인을 해보시고
너무 어긋난다면 설정한 시간에 어느 정도 맞을 수 있도록
방어력 수치를 다시 한번 조정을 해나가는 것이 좋습니다
표를 보면서 설명드리겠습니다
레벨이 있고 플레이 스테이지를 설정했습니다
레벨이 1, 20, 40, 60, 80회 플레이어 레벨이고
플레이어가
아군 플레이어가 스테이지
플레이 스테이지 1, 20, 40, 60, 80회
똑같이 그 레벨 때 그 스테이지를 플레이한다고 가정합니다
그리고 기본 체력과 유효 체력을 우리는 구했죠
1,000, 3,850, 6,850, 9,850, 12,850, 15,850을 유효 체력으로 환산해서
방어력을 반영해서 1,865 이런 식으로 다 바꿔놨습니다
그리고 1 스테이지, 20 스테이지, 40, 60, 80, 100에
보스 몬스터의 초당 공격력
일반 몬스터 초당 공격력을 이전에 구한 값을 넣습니다
보스 몬스터 초당 공격력은 1 스테이지 300
일반 몬스터 초당 공격력은 210 이런 식으로 되어있죠
생존 시간을 알기 위해서 특정 스테이지 보스
일반 몬스터의 초당 공격력이 필요합니다
몬스터에게 생존하는 시간을 구하는 방법은
초당 공격력 분의 유효 체력이죠
예를 들어서
플레이어 레벨 1인 상황에서 1 스테이지를 플레이할 때
일반 몬스터에게 버티는 시간은
211분의 1,865
8.83초 이런 식으로
초당 공격력 분의 유효 체력
이런 식으로 구할 수가 있습니다
레벨별 방어력에 따른 방어율이 반영된 유효 체력을 구해보겠습니다
예를 들어서 플레이어 레벨 1인 상황에서
1 스테이지를 플레이할 때 일반 몬스터에게 버티는 시간을 구해보겠습니다
1,865와 211이 있는데
211
일반 몬스터 초당 공격력을 나눠보겠습니다
일반 몬스터 초당 공격력 211 분의1,865
유효 체력으로 만들 수가 있죠
그러면 이제 8.83초 생존 가능합니다
유효 체력이 1,865라는 것은
아무 행동도 안하고 8.83초 생존이 가능하다는 뜻이겠죠
그렇게 해서 레벨별로 스테이지별로 한번 구해봅시다
레벨이 1레벨, 20레벨
40레벨, 60레벨, 80레벨, 100레벨이고
플레이 스테이지가 1, 20, 40, 60, 80, 100입니다
기본 체력은 3850, 6850, 9850, 12850,15850이고요
유효 체력을 구했더니
1865, 9694, 24989
54564, 89025, 153238 이렇게 되고요
그리고 일반 몬스터 한 명에게 버티는 시간
보스 몬스터에게 버티는 시간으로 시간초를 구할 수가 있습니다
이것은 몬스터의 초당 공격력 분의 유효 체력이겠죠.
그래서 이게 일반 몬스터의 초당 공격력 분의 유효 체력이라면
일반 몬스터에게 버티는 시간을 구할 수 있는 것이고
보스 몬스터 초당 공격력 분의 유효 체력이라면
보스 몬스터에게 버티는 시간을 구할 수 있는 것입니다
이와 같은 방식으로
아무것도 안 했을 때
생존 시간 확인이 가능한 것이죠
RPG 전투의 플레이 시간에 맞는 체력 분배하기
처음 설정했던 생존 시간과 비교했을 때
큰 차이가 없습니다
그래서 설정한 수치 밸런스가 지금은 적절하다고 생각할 수 있죠
처음 설정했던 생존 시간 목표 수를 더미 데이터로 입력한 것
1, 20, 40, 60, 80, 100에
일반 몬스터에게 버티는 시간
보스 몬스터에 버티는 시간
여러 가지 그냥 더미를 입력했는데 비슷합니다
비슷해서
적절하니까 기획의도에 따라서 우리가 높이고 내릴 수 있겠죠
기획의도에 따라서 더미 데이터와 비교해서 생존 시간을 설정하고
설정한 생존 시간에 크게 어긋나지 않게 수치를 조정을 하면서
밸런스를 맞춰 나갈 수가 있겠습니다
캐릭터 및 몬스터 수치를 정리해보죠
레벨과 방어력
공격력, 사거리, 치명타 확률, 치명타 피해
150이면 150%
내가 이제 보통 공격보다 1.5배를 준다는 것이죠
그리고 체력 마나, 이동속도, 시야 이런 여러가지 수치가 있을 것인데요
사거리, 이동속도, 시야와 같은 능력치는 엑셀 작업으로는 한계가 있을 수도 있습니다
캐릭터 능력치에는 방어력, 공격력 말고도
여러가지 전투에 영향을 주는 능력치가 존재하고요
해당 능력치 또한 장비 및 여러 아이템으로 인해 영향을 받고
늘어나거나 줄어들 수 있게 할 수 있습니다
이번 강의에서는 생략하도록 하겠습니다
그리고 몬스터의 타입에 따른 표를 한번 보겠습니다
앞서 강의에서 했던 것처럼
몬스터 타입에 따라서 보정치가 존재할 수 있습니다
해당 보정치와
앞에서 정했던 기준 능력치를 곱해서
몬스터 타입에 따라서 능력치의 다양성을 만들 수 있습니다
예를 들어서 밸런스형이라고 하면
가중치에서 체력, 방어력, 초당, 공격력 1 하면
기본 테이블에서 똑같이 1을 곱하는 것이고
체력형이면 2, 방어력 0.5, 초당 공격 1
이렇게 하면 체력의 2를 곱한 값, 방어력의 0.5를 곱한 값
초당 공격력 1을 곱한 값 이런 식으로 돼있고
공격형이면 체력 1, 방어력 0.5, 초당 공격력 2.5를 곱한 값을 기본 테이블에서 가져오겠죠
공격력, 체력, 방어력을 제외하고
이동속도 및
다른 능력치를 추가하여
몬스터의 다양성을 추가할 수도 있습니다
실제 게임 내 구현을 보겠습니다
엑셀로 한 밸런스 작업은 시작에 불과합니다
엑셀로 안 하라는 건 아니지만
물론 무조건 해야 됩니다
안 그러면 시작 자체를 못하죠
하지만 플레이 테스트가 가장 중요하고요
현재 게임이라면 해당 수치가 변수가 없어서 어느 정도 맞겠지만
액션 rpg 게임의 경우 게임 내 변수가 많겠죠
그렇기 때문에 직접 테스트 버전을 만들고
가상으로 ai를 만들어서
실제 혼자 아군 캐릭터와 싸우고 적군과 싸우고
이런 시뮬레이터를 만들면 가장 좋습니다
자동 전투 시뮬레이터를 만들면 좋고요
그게 좀 힘들다면 본인이 좀 못하는 사람이라고 가정하고
못하는 플레이로 직접 플레이 해봐도 좋습니다
몬스터를 배치해보고 난이도가 적절한지 확인하는 작업이 무조건 필요합니다
그래서 스테이지별로 원하는 몬스터를 배치하고
플레이어의 시작 위치도 조정하고
이런 레벨 디자인 작업 무조건 해야 되고
실제 프로터 버전 길드를 통해서
직접 플레이 테스트 해보거나
아니면 ai를 만들어서 ai 기획도 해야겠죠
가상 플레이를 시뮬레이터로 돌려보고
한두 시간 계속 돌려보고
하루 이틀 계속 돌려보면서
우리가 설정했던 밸런스 수치와 실제 플레이가 맞는지
반드시 검증하고
그것이 맞지 않으면
맞도록 원래 엑셀에서 0.3을 곱하거나
0.2를 곱하거나
또는 1.4를 곱하거나 이런 특정 수치를 곱해서
실제 플레이 테스트와 비슷하게 맞아떨어지게 보정하는 것이
후작업으로 필요합니다
강의에서 측정한 전투 시간에는
캐릭터가 이동하는 시간까지 정확하게 고려되어 있지 않고
회피라든지 복잡한 조작
방어라든지 막기라든지 이런 것들이 안되어 있죠
그래서 여러 변수를 보고 직접 반복적으로 플레이하면서
재미를 느낄 수 있도록 밸런스를 맞추어 나가는 것이 좋습니다
플레이어 캐릭터의 방어력 및 체력 구하기
첫 번째로 수치 조정
몬스터 플레이어 수치를 엑셀을 이용하여 조정하는 것이고
두 번째 스테이지 제작
게임 엔진을 이용해서 몬스터를 배치하고
유니티나 언리얼 같은 것을 통해서
레벨 디자인 툴을 만들어서 배치를 하거나 직접 배치를 합니다
오브젝트도 배치하고 스테이지를 제작합니다
테스트, 제작한 스테이지를 직접 플레이하거나
시뮬레이터를 만들어서 플레이 테스트를 합니다
문제점, 스테이지가 너무 어렵거나 쉽거나 하는 난이도 오류를 확인합니다
가장 표준적인 실력
보통 게이머나 게임 기획자는 게임을 잘하기 때문에
좀 못한다고 생각하고
약간 바보 같은 플레이를 할 필요도 있습니다
이와 같은 과정을 계속 반복하여
완성도 있는 밸런스를 맞춰 나갈 수 있도록 노력하는 것이 좋습니다
이번 강의는 여기까지입니다
수업 듣느라 고생하셨습니다
감사합니다
기본 방어력 설정 및 총 방어력 수치 설정 플레이어 유효 체력 구하기 우선 플레이어의 유효 체력을 구하기 위해서는 플레이어가 몇 초 정도 생존할 수 있는지에 대한 기준이 필요함
가상으러 특정 스테이지에서 플레이어가 어느 정도 생존할지 먼저 생각해 보는 것이 좋음
생존 시간에 맞는 플레이어의 방어력과 체력 벙어력을 상승시켜주는 방어구4개 투구,상의,하의,신발 더하기 장신구가 존재
해당 요소들을 장착함으로써 아군 캐릭터의 방어력을 상승 시켜주며, 스테이지 내에서 획득이 가능
플레이어 총 방어력 설정하기 후반으로 갈수록 방어구가 차지하는 비율이 기본 능력치보다는 높게 설정 보통 20프로 정도 차지하도록 설정
그렇게 해야 추후 플레이어가 방어구의 필요성을 느끼게 되고, 게임 플레이 하는 시간이 늘어나거나 수익이 창출될 가능성이 올라가게 됨
레벨이 증가하면서,장착하는 아이템들의 등급도 상승하기 때문에, 수치를 적절히 상승시키면서 수치를 넣어보고 차지하는 비율을 확인
플레이어 체력 수식화 및 유효 체력 설정 레벨 별 방어력에 따른 방어율이 반영된 유효체력 유효체력은 체력 1빼기 총 방어율 분의 체력
유효체력을 바탕으로 특정 스테이지에서 몬스터 한테서 몇 초를 버티는지 확인 몬스터에게 생존하는 시간을 구하는 방법은 초당 공격력 분의 유효 체력
RPG전투의 플레이 시간에 맞는 체력 분배하기 기획 의도에 따라 생존 시간을 설정하고,설정한 생존시간에 크게 어긋나지 않게 수치를 조정하면서 밸런스를 맞춰 나가야함
캐릭터 및 몬스터 수치 캐릭터 능력치에는 방어력,공격력 말고도 여러가지 전투에 영향을 주는 능력치가 존재함
해당 능력치 또한 장비 및 여러 아이템으로 인해 영향을 받고 늘어나거나 줄어들 수 있음
플레이어 캐릭터의 방어력 및 체력 구하기 1 수치 조정: 몬스터와 플레이어 수치를 엑셀을 이용해서 조정함
2 스테이지 제작 게임 엔진을 이용해서 몬스터를 배치하고 오브젝트를 배치하여 스테이지 제작 3 테스트 제작한 스테이지를 직접 플레이하여 테스트
문제점 발견 스테이지가 너무 어렵거나 쉽거나 하는 난이도 오류 확인