본문 바로가기
스터디

[특강] 밸런스 기초와 엑셀 함수

by se.jeon 2023. 6. 1.
728x90
반응형

밸런스 기초와 자주 사용하는 엑셀 함수들에 대한 이야기

컴투스 NBA팀 밸런스 기획 박소명 강사님

특강일자 : 2023년 06월 01일 목요일 16:00

 

밸런스 기초

1. 캐릭터 기초 밸런스

밸런스는 무엇을 기준으로 하는가?

통상적으로 Kill Count를 기준으로 밸런스를 잡으며, Kill Count는 3~5회 정도로 잡는 편이다.

너무 많아지면 전투가 루즈하고 재미없어지고, 너무 짧게 끝나기도 한다.

Kill Count는 팀 성향과 디렉터 성향 등 여러가지 상황에 의해 달라진다.

 

BM 유저 vs 무과금 유저

무과금 유저를 기준으로 잡으면 게임이 루즈 해 진다는 문제가 있다.

타겟 유저에 따라 스탯 비중이 달라진다.

기본 스탯 / 스킬 / 장비의 퍼센테이지 비율.

게임의 방향성에 따라 기준이 달라진다.

 

어떤 캐릭터를 기준으로 잡을까?

통상적으로 맨 먼저 보여지는 전사형 캐릭터를 우선해서 잡는다.

공격력 100 / 방어력 50 / 체력 500의 경우 Kill Count는 10이다.

PvE의 경우 3~5, PvP의 경우 10 정도와 같이 다르게 나타난다.

서로 경쟁하는 게임에서는 3~5도 나쁘지 않다.

 

캐릭터 선택의 고민거리를 주는 방법

- 멀리서 공격하지만 
- 한방 데미지가 쎄지만 공격속도가 느린 캐릭터
- 빠르지만 근접해야 하는 캐릭터

여러가지 선택을 할 수 있게 캐릭터 스탯을 잡아주어야 한다.

마법사의 경우 공격력이 150이지만 방어력이 10이고, 체력도 낮게 표현하는 것과 같이 설계한다.

 

염일방일(拈一放一)

하나를 주면, 하나를 빼앗아야 한다.

 

Project Zomboid

- 특성에 따라서 플러스, 마이너스 요소. 0이 되게 만들어야지만 캐릭터가 만들어짐.

- 게임을 만들 때 이러한 요소를 고려해야 한다.

 

2. 몬스터 기초 밸런스

데미지 공식은 어떻게 잡을까?

체 - (공 - 방)
체 - ((공 X 치뎀) - 방)
체 - ((공 X (치뎀 - 치방)) - 방)
체 - ((공 - 방_ * 치뎀)

정답은 없다. 하지만 결과 값은 천차만별로 달라지게 된다.

자신의 게임에 맞는 공식을 찾아야 한다.

데미지가 들어가지 않는 형태가 되면 게임이 끝나지 않게 된다.

게임이 끝날 수 있는 형태로 수식을 만들어야 한다.

 

몬스터의 기초 스탯은 어떻게 잡을까?

몬스터의 체력 = 데미지 계산식 * 킬 카운트
몬스터의 공격력 = 몬스터의 데미지 계산식 * 유저 킬 카운트
전투 변수 = 치뎀, 치확, 회피, 명중

반대되는 변수에 대해 고려해야한다. (서로 싸우는 게임의 경우 무조건 고려해야 함)

 

몬스터의 역할, 직업

몬스터에게도 직업군을 부여한다.

해당 직업에 따라 킬 카운트가 달라지고, 레벨 디자인에 영향이 가게 된다.

 

밸런스는 레벨디자이너와 스폰 개체수, 이동 동선, 회복 속도, 포션 사용량 등을 고려하며 설계한다.

 

몬스터 속성

특정 속성 스킬을 가진 직업군이 필요한/ 특정 아이템을 보유 중일 때 공략 가능한 몬스터.

 

3. 경제와 BM 기초 밸런스

게임 내 경제는 매우 중요한 요소이다. 오래동안 만들은 게임이 무너지기도 한다.

 

어디서부터 게임 경제를 잡을까?

BM의 근간인 기본 재화부터 잡아야 한다.

- 기본 재화가 무엇인지

- 개당 원화 가치는 얼마인지

비율을 제대로 잡아놓지 않으면 경제가 무너지게 된다.

인게임 재화로 500원 가치를 가진 아이템을 1000원에 팔고 있다면 아무도 구매하지 않는다.

유저들은 이제 재화를 환산하고 효율을 계산한다.

역산을 해 보면서 환산하고, 그 가치를 계산 해 보아야 한다.

 

재화 가치 산정

다른 재화가 있다면 기본 재화와 비율 가치가 어떻게 되는가?

- 다이아는 원화와 1:1 대응한다.
- 골드는 1/10이다.
- PvP 코인은 1/100이다.

가치가 얼마이기 때문에, 얼마로 산정했음을 설명할 수 있어야 함.

 

경제와 BM 이야기 하실 때

해당 재화들로 무엇을 살 수 있는가?

어떤 컨텐츠에서 어떤 아이템들을 팔 것인가

또 획득 가능한 시간은 얼마나 되는가.

게임을 만들 때는 이런 부분들을 고려해서 비싼 것과 비싸지 않은 것을 골고루 분배해야 한다.

 

PLC(Player Life Cycle), DAU(Daily Active Users, 일일 사용자 평균)를 따져야 한다.

중간지점을 잘 잡아야 한다.

 

과금하는 사람들은 아래에서 선망 해 주는 사람이 없으면 과금하는 재미가 없어진다.

리니지 라이크 게임들 - 용의 꼬리가 되느니 뱀의 머리가 되겠다 하는 사람들을 타겟으로 함.

 

아이템 획득 시간

설정한 시간에 따라 PLC(Product Life Cycle)가 정해진다.

 

가챠 게임

팔고자 하는 캐릭터/ 아이템의 최종 원화 가치를 산정한다.

 

Ex) 캐릭터의 가치가 80만원일 경우

(80만 / 가챠 총 시행 횟수) / 80만 = 1.25%

천장을 기준으로 비용, 확률을 계산한다.

확률은 100번 시도한다고 누적이 되지 않는다.

 

인 게임 아이템 드랍율

획득 시간으로 환산 (초)

(원하는 시간 / 몬스터 처치 시간) / 원하는 시간 = 드랍율

* 기본 캐릭터로 한 마리를 잡는 데에 걸리는 시간

 

기본 재화 획득량

설정된 아이템들의 가격에 따라 달라진다.

(성장 비용 + 필수 아이템 구매 비용) / 몬스터 처치 수

골드들도 원화 가치가 매겨진다.

 

고민도 재미 요소가 될 수 있다.

성장 먼저(원신)? vs 아이템 먼저(리니지)?

게임의 성향과 디렉터의 성향에 따라 바뀔 수 있다.

 

엑셀 함수

1. IF

IF

수식이나 값이 참 또는 거짓일 떄 각기 다른 값을 참조하기 위해 사용한다.

IF(조건, 참일 떄, 거짓일 때)

 

IFS

참 또는 거짓을 여러 번 판단 해야 할 때

IFS(조건1, 참일 때1, 조건2, 참일 때 2...)

되도록 사용하지 않는 것을 추천한다. 헷갈리게 만들 수 있음.

 

IFNA

수식이나 값의 결과가 #N/A로 나올 때

IFNA(일반 함수, 값이 없을 때)

2. COUNT

COUNT

범위에서 숫자가 포함된 셀의 개수를 확인

COUNT(범위)

 

COUNTA

범위에서 비어 있지 않은 셀의 개수를 확인

COUNTA(범위)

 

COUNTIF

범위에서 조건에 맞는 셀의 개수를 확인

COUNTIF(범위, 조건)

3. ROUND

ROUND

지정한 자릿수에서 반올림

ROUND(숫자, 자릿수)

최대한 float형은 쓰지 않는다.

4. INT

INT

지정한 셀의 값을 INT로 변환

INT(셀)

5. INDEX

INDEX

지정한 범위에서 지정한 행/열 위치의 값을 반환

INDEX(범위, 행, 열)

 

비슷한 함수로 VLOOKUP이 있지만, VLOOKUP은 수정에 있어 치명적 단점이 존재한다.

6.  MATCH

MATCH

내가 찾고자 항목을 검색하고 해당 항목이 몇 번째 행/ 열에 있는지 상대위치를 가져올 수 있다.

행이 늘어나든, 열이 늘어나든 내가 원하는 값을 정확하게 찾아올 수 있다.

7. FILTER

FILTER

지정한 범위에서 찾고자 하는 항목들의 값만 반환

FILTER(범위, 지정한 열/행 = 찾는 값, 값이 없을 때)

 

 

엑셀 함수 사용 실습 진행.

시뮬레이터를 만드는 것은 밸런스 포트폴리오로 나쁘지 않다.

어려움, 보너스와 같은 부분은 계단을 그리며 올라가는 것이 좋다.

 

비대면 강의 때 매크로에 대해서도 다룰 예정.

728x90
반응형