공지사항

2015. 12. 24. 04:37
728x90
반응형

이번에 공개할 문서는 MMORPG에서 사용했던 경험치 시스템입니다. 헌데 제목을 보면 [경험치 시스템 1]이라고 되어 있는데요. 1편과 2편에 걸쳐서 공개할 것은 아니고 편집을 달리한 버전으로 1편과 2편으로 나눌 예정입니다. 즉 내용은 같은데 편집만 다르다는... 개인적으로는 2편에 공개될 편집 방법을 선호하는 편인데 여러분들은어떤 문서가 마음에 드실지...


◎ 경험치 시스템


▪ 경험치 시스템이란?

캐릭터의 성장을 위해 필요한 수치를 경험치라 하며, 이와 관련된 모든 규칙들을 정립해 놓은 것이 경험치 시스템이다.


▪ 경험치 획득

경험치는 아래와 같은 방법으로 획득 가능하다.

경험치 획득

설명

퀘스트 완료

퀘스트를 완료하여 경험치를 획득 하는 방법

몬스터 사냥

몬스터를 사냥하여 경험치를 획득 하는 방법


◦ 추가 가능한 방법

경험치 획득과 관련하여 아래와 같은 방법이 추가 가능한 요소이다.

경험치 획득

설명

아이템 사용

경험치와 관련된 아이템을 사용하여 경험치를 획득 하는 방법

채집 & 생산

채집과 생산 활동을 통하여 경험치를 획득 하는 방법


▪ 경험치 감소

획득한 경험치는 감소하지 않는다.


(일부 게임들은 사망 시 경험치 감소를 하기도 합니다)


◈ 퀘스트 완료에 의한 경험치 획득 방법

퀘스트를 완료할 경우 자동으로 퀘스트에 명시된 경험치를 부여 받게 된다.


◈ 몬스터 사냥에 의한 경험치 획득 방법

몬스터 사냥에 의한 경험치 획득 방법은 아래와 같은 상황에 따라 세부적으로 방법이 달라진다.

상황

설명

싱글 플레이

혼자서 사냥을 하는 경우

파티 플레이

파티를 맺어 사냥을 하는 경우


▪ 싱글 플레이

싱글 플레이 상태에서의 경험치 계산은 아래와 같은 공식에 의해 계산된다.


싱글 플레이 최종 획득 경험치 = 획득 경험치 * (1 + 이벤트 보정 + 아이템 보정)


- 획득 경험치 = (타격 경험치 + 최후 타격 경험치) * 레벨 페널티


> 타격 경험치

= 유저가 몬스터에게 입힌 총 데미지를 경험치로 환산한 것

= 몬스터 경험치 * (유저가 준 데미지 총합 / 몬스터가 받은 데미지 총합)


> 최후 타격 경험치

= 마지막으로 타격을 입힌 유저에게 추가로 주는 경험치

= 몬스터 경험치 * 최후 타격 보정치

= 최후 타격 보정치 = 0.1 (ini 파일로 빼주세요)


(최후 타격 경험치의 경우는 막타친 유저에게 몬스터에게 명시된 경험치에서 추가로 더 주겠다는 개념인데 B사 근무 시절에 전투 담당 팀장은 자신이 명시한 경험치 이상으로 유저에게 부여되는 것을 반대했다. 이에 아래와 같이 타격 경험치 공식을 수정 하였다.


타격 경험치

= {몬스터 경험치 * (1 - 최후 타격 경험치)} * (유저가 준 데미지 총합 / 몬스터가 받은 데미지 총합)


이 공식은 최후 타격 경험치로 지급될 부분을 미리 명시된 경험치에서 빼 놓는 개념이다. 여러분들도 취향에 따라 사용하시면...


아 그리고 추가로... 경험치 시스템은 전투팀 담당인데 바쁘다고 시스템팀으로 넘겨 졌는데... 솔직히 밸런스 담당자가 밸런스에 막대한 영향을 미치는 이런 시스템을 넘긴다는건... 웃기는 얘기지... 그리고 이런 시스템은 1시간도 안걸리는데... 왜냐면 쭈욱 해오던 시스템이거든. 또한 T사 시절에는 전투 담당 파트장이 전투 공식을 시스템 파트인 나에게 넘긴 경우도 있었는데... 남한테 넘기는 경우는 보통 자기가 할 줄 몰라서...)


> 레벨 페널티
= 유저와 몬스터의 레벨 차에 따른 페널티
= 너무 높거나 너무 낮은 몬스터를 잡으면 페널티를 받는다는 컨셉이다.
= 높은 몬스터에 페널티를 부여한건 쫄을 방지하기 위한 컨셉이니 이것도 취향에 따라...

레벨 차이

페널티

8 이상

0.0

7

0.3

6

0.3

5

0.9

4

0.9

3

1

2

1

1

1

0

1

-1

1

-2

1

-3

0.8

-4

0.8

-5

0.2

-6

0.2

-7

0.2

-8 이하

0.0

: 해당 테이블은 ini 파일로 빼주세요

> 이벤트 보정
= 이번테 혜택으로 인한 경험치 보정

> 아이템 보정
= 아이템 사용으로 인한 경험치 보정 (주문서, 물약, 음식)

▪ 파티 플레이
파티 플레이 상태에서의 경험치 계산은 아래와 같은 공식에 의해 계산된다.

파티원 [x]의 최종 획득 경험치 = 파티원 [x]의 획득 경험치 * (1 + 이벤트 보정 + 아이템 보정)

- 파티원 [x]의 획득 경험치
= {파티원 [x]의 배분 경험치 * 레벨 페널티} * 쫄 방지 보정치

> 파티원 [x]의 배분 경험치
= 파티원 [x]가 파티로 부터 배분 받는 경험치
= 파티 경험치 * (파티원 [x]의 레벨 / 파티원 레벨 총합)

>> 파티 경험치
= 파티가 몬스터로 부터 받는 경험치
= (파티 타격 경험치 + 최후 타격 경험치 보정 ) * 파티 인원 보정치

>>> 파티 타격 경험치
= 파티가 몬스터에게 입힌 총 데미지를 경험치로 환산 한것
= 몬스터 경험치 * (파티원들이 준 데미지 총합 / 몬스터가 받은 데미지 총합)

>>> 최후 타격 경험치 
= 마지막으로 타격을 입힌 유저에게 추가로 주는 경험치
= 몬스터 경험치 * 최후 타격 경험치
= 최후 타격 보정치 = 0.1 (ini 파일로 빼주세요)

>>> 파티 인원 보정치
= 파티 인원수에 따라 추가적인 경험히 보너스가 주어진다.

파티 인원수

파티 보정치

2 ~ 3

1.0

4

1.2


(잠시 B사 얘기를 하면... 최후 타격 보정치가 주어질때 자신이 명시한 경험치보다 추가로 주어지는걸 반대하셨던 분이... 파티 인원 보정치가 추가로 주어지는건 또 아무말 안한...)

>>> 레벨 페널티
= 유저와 몬스터의 레벨 차에 따른 페널티
= 너무 높거나 너무 낮은 몬스터를 잡으면 페널티를 받는다는 컨셉이다.
= 높은 몬스터에 페널티를 부여한건 쫄을 방지하기 위한 컨셉이니 이것도 취향에 따라...

레벨 차이

페널티

이상

0.0

7

0.3

6

0.3

5

0.9

4

0.9

3

1

2

1

1

1

0

1

-1

1

-2

1

-3

0.8

-4

0.8

-5

0.2

-6

0.2

-7

0.2

-8 이하

0.0

: 해당 테이블은 ini 파일로 빼주세요


> 쫄 방지 Lv = 10 (ini 파일로 빼주세요)


(앞서도 말씀드렸지만... 개인적으로 이 편집 방법은 보기 어려워서 잘 사용하지 않는...)


2편 편집하면서 봤는데... 아래 내용이 누락되어 있어서 추가 했어요 ㅎㅎ


▪ 경험치를 받지 못하는 경우

유저는 특수한 상황에 따라 자신이 배분 받을 경험치를 받지 못하는 경우도 발생되는데 그 상황은 아래와 같다.


◦ 싱글 플레이

- 캐릭터 선택창으로 이동한 경우

- 로그 아웃을 한 경우

- 사망 상태인 경우

- 다른 지역으로 이동한 경우


◦ 파티 플레이

- 캐릭터 선택창으로 이동한 경우

- 로그 아웃을 한 경우

- 사망 상태인 경우

- 다른 지역으로 이동한 경우

- 사망한 몬스터를 기준으로 파티와 너무 멀리 떨어져 있는 경우 (거리에 대한 정확한 수치를 프로그램팀과 협의 후 결정)

- 파티에서 탈퇴한 경우


▪ 기타 규칙

- 경험치가 0이 될 수도 있다.


- 끝 - 



728x90
반응형

'게임 기획 이야기 > 기획 문서 모음' 카테고리의 다른 글

몬스터 인공지능 2  (0) 2016.01.03
경험치 시스템 2  (0) 2015.12.30
스트링 시스템  (0) 2015.12.23
커스터 마이징  (0) 2015.12.23
인스턴스 던전  (0) 2015.12.23