?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
RPG XP 사용중인데요..

--------------------------질문 1.------------------------------

atk = [attacker.atk - self.pdef / 1, 0]. max
      self.damage = atk * attacker.str

이게 원래는

atk = [attacker.atk - self.pdef / 2, 0]. max
      self.damage = atk * attacker.str /20


이었는데..

이게 기본공격데미지 계산식입니다!

그런데 아시다시피 데미지는 숫자가 가지가지잖습니까!

일정 범위 내에서만 나온다지만..

하지만 이 공식대로라면 항상 같은값이 나와야하는데

[attacker.atk - self.pdef / 2, 0]. max

이 부분때문에 여럿 갈리는건지..해서요.

self.pdef 나누기 2,0 이라니..

2 또는 0으로 나눈다인가.. 아니면 다른말인가..해서요.

아니 그리고 0으로 어떻게 나눈다는 말입니끄아아아!!

저의 능력으론 이해 불능이라서 이렇게 올립니다..ㅠㅠ

------------------질문 2.------------------------------

      # 분산
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1]. max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end

요것은 기본공격데미지 분산의 공식입니다.


      eva = 8 * self.agi / attacker.dex + self.eva
      hit = self.damage < 0 ?  100 : 100 - eva
      hit = self.cant_evade?  ?  100 : hit
      hit_result = (rand(100) < hit)

이것은 기본공격데미지의 제2차명중판정입니다.

  def hit
    n = 100
    for i in @states
      n *= $data_states[i]. hit_rate / 100.0
    end
    return Integer(n)
  end

그리고 이것은 hit라는 값의 취득을 위한 부분인데..(Battler 1)

이 세 부분은 아무리 용을 써도 이해가 안됩니다 !!

질문 2-1.hit 라는 값을 어떻게 취득한것이며!!(스킬은 따로 명중율이 존재하지만, 기본공격은 그렇지 않다 이 말입니다..)

2-2.분산이란 무엇이며!! 어떤 결과를 불러 일으키는지!!

제 2차명중판정에서

      eva = 8 * self.agi / attacker.dex + self.eva

이 한줄 빼곤 도저히 해석이 안됩니다 ㅠㅠ

eva라는 값= 8곱하기 방어자의 agi값 나누기 공격자의 dex값더하기 방어자의 eva값

그 밑에서 방금 위에서 쓰인 eva 라는 값들이 쓰이는데!!

hit = self.damage < 0 ?  100 : 100 - eva
      hit = self.cant_evade?  ?  100 : hit
      hit_result = (rand(100) < hit)

요것들입니다.

2-3.그런데 도무~지 이 세 줄은 어떤 계산방식인지 이해가 안갑니다..ㅠㅠ

---------------------질문 3.--------------------------------------


    # 제일 명중 판정
    hit = skill.hit
    if skill.atk_f > 0
      hit *= user.hit / 100
    end
    hit_result = (rand(100) < hit)
    # 불확실한 스킬의 경우는 유효 플래그를 세트
    effective |= hit < 100
    # 명중의 경우
    if hit_result == true
      # 위력을 계산
      power = skill.power + user.atk * skill.atk_f / 100
      if power > 0
        power -= self.pdef * skill.pdef_f / 200
        power -= self.mdef * skill.mdef_f / 200
        power = [power, 0]. max
      end
      # 배율을 계산
      rate = 20
      rate += (user.str * skill.str_f / 100)
      rate += (user.dex * skill.dex_f / 100)
      rate += (user.agi * skill.agi_f / 100)
      rate += (user.int * skill.int_f / 100)
      # 기본 데미지를 계산
      self.damage = power * rate / 20

이것은 스킬의 제1명중판정부터 기본데미지까지입니다.

      # 분산
      if self.damage.abs > 0
        amp = [self.damage.abs * skill.variance / 100, 1]. max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      # 제2 명중 판정
      eva = 8 * self.agi / user.dex + self.eva
      hit = self.damage < 0 ?  100 : 100 - eva * skill.eva_f / 100
      hit = self.cant_evade?  ?  100 : hit
      hit_result = (rand(100) < hit)

이것은 스킬의 분산과 제2명중판정입니다.

3-1.제1명중판정부터 계속 보이기 시작하는 특징이..

skill.atk_f , skill.atk_f ,skill.pdef_f

이런 값들인데..

기본공격데미지때 해석한결과 attacker.atk 면.. attacker 의 atk 값이라고 해석됬는데..똑같이 해보면..

skill의 (atk_f) 값 이라고 되는데,

atk_f 의 값은 어떤값인가요? 다른 값들도 똑같이 _f 만 붙이면 비슷한 방식으로 구해지는 값이 되는건가요?

3-2. 배율을 계산에서..

      # 배율을 계산
      rate = 20
      rate += (user.str * skill.str_f / 100)
      rate += (user.dex * skill.dex_f / 100)
      rate += (user.agi * skill.agi_f / 100)
      rate += (user.int * skill.int_f / 100)
      # 기본 데미지를 계산
      self.damage = power * rate / 20

인데.. rate를 20으로 지정해놓고..

rate += 유저의str값 곱하기 스킬의 str_f값 나누기 100
rate += 유저의dex값 곱하기 스킬의 dex_f값 나누기 100

이런식으로 되고있는데..

대체 이게 뭔뜻인가요?

---------------------질문 4.------------------------------

==
+=
-=
/=
*=

의 계산방식..이 뭔가요?

[XXX.SS /x, y]. max

는..무슨뜻이죠?

self.damage.abs

는 스킬의 분산과 기본공격의 분산에서 공통으로 보이는데요..

방어자의 데미지의 abs 값 이라는게 무슨뜻이죠..?

abs가 스크립트에 따로 지정되어있는건가요?
?

  1. 쯔꾸르 mv 게임을 apk 파일로 변환했는데...

    Date2023.01.14 By박하맛 Views1330
    Read More
  2. 쯔꾸르 젖소이야기 결혼 방법좀 알려주세요...

    Date2021.12.20 By백지씨 Views2627
    Read More
  3. apk포팅 승인 어케 하나요?

    Date2021.11.29 Bygame메이커xp Views1257
    Read More
  4. Yanfly님의 Action Sequence Pack 질문드립니다

    Date2021.07.15 ByNeuromancer Views1542
    Read More
  5. 싸게 MV 를 먼저? 아니면 돈을 더 들어서라도 MZ?

    Date2021.07.06 ByXatra Views1753
    Read More
  6. RMMV - 스탯창과 대화창 변견 관련 질문입니다. (초보입니다 도움좀 주세요 ㅜㅜ)

    Date2021.01.22 Byscribble Views1553
    Read More
  7. 아오오니를 하는 사람인데요 질문 두가지가 있어요

    Date2021.01.16 By오니개무서워 Views1634
    Read More
  8. 재밌는게임

    Date2020.12.07 Byland_tnt Views1455
    Read More
  9. c언어 질문

    Date2020.11.10 By세종기항19 Views1685
    Read More
  10. 코딩 질문

    Date2020.11.08 By세종기항19 Views1540
    Read More
  11. 혹시나 물어보는데

    Date2020.11.07 By드래곤규 Views1402
    Read More
  12. 오픈보 게임 더블드래곤 리로디드 얼티네이트에 대해 궁금

    Date2020.09.09 By이부닝 Views1224
    Read More
  13. 상태이상 확률 결정

    Date2020.09.02 By스트레이보우 Views1007
    Read More
  14. 다음 인디사이드 제작대회는 언제쯤 열릴까요?

    Date2020.05.23 ByWOONAALAA Views963
    Read More
  15. xp로 제작된 어플 실행자체가 안된다는 분이 있습니다.(제생각엔 apk로 변환하는 과정에서 버전자체가 낮은 것 같습니다)

    Date2020.05.04 By라엔 Views1416
    Read More
  16. apk 포팅하는데 게임 이름이 필요합니다 뜨는데

    Date2020.05.03 Bykashu Views1350
    Read More
  17. 쯔꾸르VX Ace렉먹음 도와주세요...

    Date2020.03.22 By랖랖 Views1780
    Read More
  18. 안녕하세요

    Date2020.02.14 By청월령 Views834
    Read More
  19. 포팅 중 '게임 이름이 필요합니다' 오류

    Date2020.02.11 By아이비스 Views817
    Read More
  20. RPGMV 거리 추적

    Date2020.01.19 By정욱 Views932
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 442 Next
/ 442


[개인정보취급방침] | [이용약관] | [제휴문의] | [후원창구] | [인디사이드연혁]

Copyright © 1999 - 2016 INdiSide.com/(주)씨엘쓰리디 All Rights Reserved.
인디사이드 운영자 : 천무(이지선) | kernys(김원배) | 사신지(김병국)