꽃미남 프로그래머 김포프가 창립한 탑 프로그래머 양성 교육 기관 POCU 아카데미 오픈!
절찬리에 수강생 모집 중!
프로그래밍 언어 입문서가 아닌 프로그래밍 기초 개념 입문서
문과생, 비전공자를 위한 프로그래밍 입문책입니다.
jobGuid 꽃미남 프로그래머 "Pope Kim"님의 이론이나 수학에 치우치지 않고 실무에 곧바로 쓸 수 있는 실용적인 셰이더 프로그래밍 입문서 #겁나친절 jobGuid "1판의내용"에 "새로바뀐북미게임업계분위기"와 "비자관련정보", "1판을 기반으로 북미취업에 성공하신 분들의 생생한 경험담"을 담았습니다.

밸런싱, 숫자의 함정

기획 2013. 1. 25. 10:00
Posted by 월하

기획, 특히 밸런싱쪽을 하다 보면 숫자를 믿게 됩니다.

 

'나의 엑셀 데이터는 완벽하다!' 라거나 "드랍 확률이 50%이니 두 번에 한 번은 나오겠지. 얻기 쉽네' 라거나 말이죠.

 

음... 물론 산술적 데이터를 작성하고 이를 바탕으로 밸런스를 잡는건 중요 합니다.

 

밑도 끝도 없이 무작정 우기는 것보다 더 명확하고 다른 사람(자기 자신을 포함)을 설득 하기도 쉽죠.

 

하지만 이 숫자에는 많은 함정이 있습니다.

 

속는 사람이 유저가 될 수도 있고 기획자 자신이 될 수도 있죠.

 

물론 잘만 이용하면 아주 사악한 컨텐츠를 만들수도 있죠.

 

 

 

확률 이야기를 잠깐 해볼까요?

 

가령...

 

 

1에서 100까지 적힌 숫자가 있는 종이 중 1이 적힌 종이를 뽑는 유저에게 뭔가 특별한 상품을 주기로 하였습니다.

 

정말 명확하게 1% 확률로 상품을 지급 하는 구조가 되겠죠.

 

그런데....

 

1. 하나의 상자가 있습니다.

2. 이 상자에는 1에서 100의 숫자가 적힌 종이가 들어 있습니다.

3. 유저들은 자기가 원할 때 이 상자에서 아무 종이나 무작위로 뽑습니다.

4. 한 번 뽑은 종이는 다시 상자에 넣지 않습니다.

5. 모든 종이를 다 뽑으면 그 때 다시 종이들을 모두 넣습니다.

6. 또는 하루가 지나면 뽑힌 종이들을 모두 넣습니다.

 

이런 조건 이라면 어떨까요?

 

 

명확하게 1%의 확률이라고 할 수 있을까요?

 

처음에 시도한 사람이 1이 적힌 종이를 뽑는다면?

 

정말 1%의 확률 일까요?

 

1이 적힌 종이가 안나올수록 당첨 확률은 증가 됩니다.

 

하지만 1이 적힌 종이가 나온 이후로는 확률이 0%가 됩니다.

 

'뭐 이런 엉망인 시스템이 다 있어!' 라고 할지 모르지만..... 

 

 

 

자.... 지금부터 재미있는 이야기가 됩니다.

 

 

1. 유저들에게 당첨자가 있다는걸 알려 주지 않는다.

 

자~ 당첨자가 나왔지만 유저들은 계속 해서 뽑기를 돌립니다.

 

아니 돌릴 마음이 있는 유저들은 계속 돌리겠죠.

 

한 명이 한 번만 돌릴수도 있고, '계속 돌리면 언젠간 나오겠지!'라고 정말 계속 돌리는 유저가 있겠죠.

 

정말 고마운 유저죠. 어차피 꽝인걸 알면서도 계속 돌려주고 결국 초기화 되거나 날이 바뀌어 초기화 되어 당첨이 되는....

 

이미 당첨 유저가 나와 계속 꽝이지만 자긴 운이 없는줄 알거나 그렇겠죠.

 

어차피 날이 바뀌면 초기화 되는데도 열심히 돌려 초기화 시킨 후 당첨이 되겠죠.

 

 

 

2. 유저들에게 당첨자가 있다는걸 알려 준다.

 

유저들이 위의 룰을 알고 있다면 사실 알려주는게 더 재미있습니다.

 

자... 초반에 뽑을지 아니면 슬슬 눈치를 볼지.....

 

분명 당첨자가 나오기 전에는 늦게 뽑을수록 당첨 확률이 올라 갑니다.

 

1/100 에서 2/100, 3/100 4/100 ....... 100/100 이런식으로 말이죠.

 

그런데 중간에 누가 덜컥 당첨 된다면?! 그 뒤로는 전부 꽝!

 

유저들 입장에선 치열한 눈치 싸움이 일어나겠죠.

 

그런데 당첨이 나오면 더 재미있어 집니다!!

 

왜?!! 만약 후반에 당첨이 나왔고 남은 종이가 얼마 없는 경우...

 

1. '이번엔 후반에 나왔으니 다음엔 초반에 나올거야'

 

2. '이번에 후반에 나왔으니 다음에도 후반에 나올거야'

 

3. '순서는 어차피 랜덤이고 많이 뽑을수록 확률이 높아'

 

4. '어차피 랜덤. 될 놈은 되고 안될 놈은 안되지.'

 

 보통 이 네 가지로 나누어 지죠.

 

 

3, 4번 유저의 경우 뭐 아무일도 없지만...

 

1, 2번 유저의 경우  치열한 눈치 싸움이 벌어지죠.

 

1번 유저의 경우 앗싸리 미리 랜덤 박스를 다 돌리고 빨리 초기화 한 후 자기가 뽑을 지

 

아니면 날이 지나서 초기화 되면 그 때 잽싸게 할 지 눈치를 보겠죠.

 

2번 유저의 경우 초기화 될 때 까지 기다리다가 초기화가 되면 슬슬 눈치를 보겠죠.

 

두 유저 모두 초기화 되는 시점을 신경 쓰게 될 테고 초기화가 되는 순간

 

1번 유저의 러쉬와 2번 유저의 눈치 작전이 시작 되는....

 

확률 이야기는 여기까지 하고 이제 고정 수치(공격력) 이야기를 해볼까요?

 

 

 

A 유저는 10초에 한 번 10의 대미지로 공격 할 수 있습니다.

 

B 유저는 1초에 한 번 1의 대미지를 줄 수 있습니다.

 

두 유저가 싸우면 누가 이길까요??

 

자.... 두 유저 모두 체력이 20 입니다.

 

그럼 시간당 체력이 아래와 같이 되겠죠.

 

시간

A 유저 대미지

B 유저 대미지

A 유저 남은 체력

B 유저 남은 체력

0

0

0

20

20

1

10

1

19

10

2

0

1

18

10

3

0

1

17

10

4

0

1

16

10

5

0

1

15

10

6

0

1

14

10

7

0

1

13

10

8

0

1

12

10

9

0

1

11

10

10

0

1

10

10

11

10

1

9

0

 

A 유저가 이기네요.

 

그럼 만약 B 유저가 2초에 한 번 2의 대미지를 주면 어떻게 될까요?

 

시간

A 유저 대미지

B 유저 대미지

A 유저 남은 체력

B 유저 남은 체력

0

0

0

20

20

1

10

2

18

10

2

0

0

18

10

3

0

2

16

10

4

0

0

16

10

5

0

2

14

10

6

0

0

14

10

7

0

2

12

10

8

0

0

12

10

9

0

2

10

10

10

0

0

10

10

11

10

2

8

0

 

그런데 체력이 20이 아닌 21이 된다면 어떨까요?

 

시간

A 유저 대미지

B 유저 대미지

A 유저 남은 체력

B 유저 남은 체력

0

0

0

21

21

1

10

2

19

11

2

0

0

19

11

3

0

2

17

11

4

0

0

17

11

5

0

2

15

11

6

0

0

15

11

7

0

2

13

11

8

0

0

13

11

9

0

2

11

11

10

0

0

11

11

11

10

2

9

1

12

0

0

9

1

13

0

2

7

1

14

0

0

7

1

15

0

2

5

1

16

0

0

5

1

17

0

2

3

1

18

0

0

3

1

19

0

2

1

1

20

0

0

1

1

21

10

2

-1

-9

 

둘 다 동시에 죽겠군요.

 

이번에는 B 유저가 3초에 한 번 3의 대미지를 준다고 해볼까요?

 

시간

A 유저 대미지

B 유저 대미지

A 유저 남은 체력

B 유저 남은 체력

0

0

0

21

21

1

10

3

18

11

2

0

0

18

11

3

0

0

18

11

4

0

3

15

11

5

0

0

15

11

6

0

0

15

11

7

0

3

12

11

8

0

0

12

11

9

0

0

12

11

10

0

3

9

11

11

10

0

9

1

12

0

0

9

1

13

0

3

6

1

14

0

0

6

1

15

0

0

6

1

16

0

3

3

1

17

0

0

3

1

18

0

0

3

1

19

0

3

0

1

 

오오~ B 유저가 드디어 이겼습니다.

 

DPS(초당 공격력)는 1로 동일 합니다.

 

체력도 동일 합니다.

 

방어력 같은거 없이 무조건 고정 대미지가 들어 갑니다.

 

하지만 공격 속도, 체력에 따라 차이가 나게되죠.

 

DPS는 분명 대미지를 비교하는 좋은 기준이 될 수 있습니다.

 

하지만 상황에따라 많은 변수를 가지게 되는 녀석이라 맹신하게되면 망하죠. ㅋ

 

밸런싱을 잡을 때 가장 어렵고 귀찮은게 이런 요인들이 넘쳐 흐르기 때문이죠.

 

간단한 RPG게임이라도...

 

원거리와 근거리, 평타와 스킬, 지속 대미지와 한방 대미지....

 

몬스터와 플레이어의 이동 속도 등등...

 

고려할 사항이 너무 많죠.

 

그럼에도 이런걸 다 무시하고 산술적 수치만으로 밸런싱을 하게 되면 망하기 딱 좋죠.

 

뭐 결국 밸런싱은 테스트와 노가다의 극치입니다.

 

 

 

밸런싱을 하는 방법에는 몇 가지 방법이 있습니다.

 

일부 특출난 사람들은 감각적으로 밸런싱을 잡는 사람이 있다고 합니다.

 

하지만 그게 안된다면 계속 하여 반복 테스트 수정을 하는 거죠.

 

사실 밸런싱 만큼 공을 들인만큼의 퀄리티가 나오는것도 없습니다.

 

대신 경력이 늘고 노하우가 생기면 테스트, 수정, 최초 밸런싱을 할 때 시간이 줄어들게되죠.

 

 

 

.... 뭔 이야기를 하려고 했는지 잘 모르겠지만 여하튼

 

밸런싱을 할 때 숫자를 너무 믿으면 안됩니다!!

 

반응형
,