어떤게임이건 간에
능력치 변화는 있기 마련이다
하다못해 좆망겜이라고들(하지만 갓겜인 ㅎ)히오스만 하더라도 랩업이나, 버프, 디버프 유무에 따라 스텟이 달라지고
롤같은 게임은 말 할 것도 없다.
이런 스텟 연산체계가 통일되어있고 명확해야 하는데, 던파가 한때 이게 개족보여서 지랄났던적이 있지
그래서 난 스텟 증감을 3가지 분류로 나눴다.
(레벨업 시 증가하는건 Origin 값으로 여겨, Stat자체를 객체화 한 뒤, 이 안에서 처리되도록 하였다. 즉여기서 언급하는건 외부요인
-스킬, 아이템 등-으로 인해 연산되는 스텟에 대해 생각을 해봤다
1) 고정치 증가
단순 수치가 증가되는 형태. 가장 먼저계산되어야 한다
2) %증가
기존스텟(Origin)의 % 만큼 + 되는 형태.
3) %증폭
위 모든 연산이 수행 된 다음에 곱연산으로 수행되는 형태.
즉,
어떤케릭터의 체력이 100이라 가정할때
1)체력100 증가 아이템을 낌(1)
2)체력10%증가 아이템을 낌(2)
3)특성에서 총 체력 10%증폭 특성을 찍음
이라 하면
(100+ 100+ (100*0.1)) *1.1
형태로 계산되어야함
이를 위해 StatOperatorable 인터페이스를 두고
각각 연산에 해당되는 클래스를 생성,
Stat클래스에 3가지 연산애 해당되는 Delegate를 할댕 해 준 뒤
이를 순서대로 연산 해 줄 예정.
이게 세련된, 혹은 올바른 방법인지 확신은 없다 지금 직접 코딩해볼뿐
댓글 0