개인 자료란 (JE)

  서버 커뮤니티

Profile liun 대표칭호 없음
Profile

질문하기 스크립트

경험치 통

2024.03.25 조회 수 133 추천 수 0
이해도 상급자 
게임버전 (JE) 1.12.2 
게임버전 (BE) 관련없음 
스크립트 애드온 InvSK, GomSK, QuarSK, SKBee, SKChoke, SKellett-Legacy, SKQuery, skRayFall, skUtilities 사용중입니다 

스크립트로 1레벨 당 경험치 양을 바꿀 수 있나요?

가능하다면 구문 예시를 들어주세요.

4개의 댓글

유아당
2024.03.25

레벨당 경험치 요구량을 변경하는건 확실한 답을 드리지 못하겠어요.

어쩌면 패킷에서 정답을 찾을 수 있을 지도 몰라요. (Protocol - wiki.vg)


혹은 임의로 경험치 바와 레벨을 수정하는 방법이 있겠어요.

예시로 각 레벨업에 필요한 경험치 값을 {expNeeded::[레벨]},

플레이어의 현재 경험치를 {exp::[플레이어]} / 현재 레벨을 {level::[플레이어]}로 하는 구문을 만들고

(구문 예시)

function getExp(p: player, i: integer):

   if {expNeeded::%{level::%{_p}%}%} > {exp::%{_p}%} + {_i}:

      set {exp::%{_p}%} to 0

     set {_p}'s level to {_p}'s level + 1

   else:

     add {_i} to {exp::%{_p}%}

경험치 획득을 getExp([플레이어], 50) 등으로 변경하는거에요.


그 후, 플레이어의 경험치를 실제 경험치 필요량과 비레하여 백분율 식을 만들고

비례하는 경험치를 getExp 처리와 함께 지급함으로서 위화감 없이 제작이 가능할 듯 해요.

liun
2024.03.25
@유아당

"그 후, 플레이어의 경험치를 실제 경험치 필요량과 비레하여 백분율 식을 만들고

 

비례하는 경험치를 getExp 처리와 함께 지급함으로서 위화감 없이 제작이 가능할 듯 해요. " 에 대한 예시나 설명을 부탁 드려도 괜찮을까요?

유아당
2024.03.25
@liun

만약 1레벨 -> 2레벨 기본 경험치 요구량이 200이라면,

 

{exp::%{_p}%}과 {expNeeded::%{level::%{_p}%}의 비율을 구해서

현재 {exp::%{_p}%}의 비율이 {expNeeded::%{level::%{_p}%}%}의 50% 라면

기존 경험치 요구량의 50%인 100의 경험치를 플레이어에게 제공하는 방식으로요!

liun
2024.03.25
@유아당

감사합니다.