?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
잘은 모르지만 (채택 않해주셔도됩니다) 완력수치가 공격력에 적용되는건 대충 수치만 바꾸면될거같아요

#--------------------------------------------------------------------------
  # ● 통상 공격의 효과 적용
  #     attacker : 공격자 (버틀러)
  #--------------------------------------------------------------------------
  def attack_effect(attacker)
    # 위기 플래그를 클리어
    self.critical = false
    # 제일 명중 판정
    hit_result = (rand(100) < attacker.hit)
    # 명중의 경우
    if hit_result == true
      # 기본 데미지를 계산
      atk = [attacker.atk - self.pdef / 2, 0]. max
      self.damage = atk * (20 + attacker.str) / 20
      # 속성 수정
      self.damage *= elements_correct(attacker.element_set)
      self.damage /= 100
      # 데미지의 부호가 정의 경우
      if self.damage > 0
        # 위기 수정
        if rand(100) < 4 * attacker.dex / self.agi
          self.damage *= 2
          self.critical = true
        end
        # 방어 수정
        if self.guarding?
          self.damage /= 2
        end
      end
      # 분산
      if self.damage.abs > 0
        amp = [self.damage.abs * 15 / 100, 1]. max
        self.damage += rand(amp+1) + rand(amp+1) - amp
      end
      # 제2 명중 판정
      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)
    end
    # 명중의 경우
    if hit_result == true
      # 스테이트 충격 해제
      remove_states_shock
      # HP 로부터 데미지를 감산
      self.hp -= self.damage
      # 스테이트 변화
      @state_changed = false
      states_plus(attacker.plus_state_set)
      states_minus(attacker.minus_state_set)
    # 미스의 경우
    else
      # 데미지에 "Miss" 를 설정
      self.damage = "Miss"
      # 위기 플래그를 클리어
      self.critical = false
    end
    # 메소드 종료
    return true
  end


여기서

# 기본 데미지를 계산
      atk = [attacker.atk - self.pdef / 2, 0]. max
      self.damage = atk * (20 + attacker.str) / 20

이 항목을 바꾸시면되는데요

바보인 제가 대충 해석해보면

atk = [attacker.atk - self.pdef / 2, 0]. max 는
공격 = [공격자의공격력 -(빼기) 방어자의 방어력 수치(?) 나누기 2

그러니까 아마 (아닐수도) 공격자의 공격력에서 방어자의 방어력/2 를 뺀다는뜻이 되는데요

self.damage = atk * (20 + attacker.str) / 20 는
줄 데미지(저 위에서 보시면 아시다시피 상대 hp 에서 이걸 빼는거 같더군요)= 공격력(위 식에서 계산이 완료 된 값, 그러니까 공격력-방어력) X[곱하기(20 + 공격자의 완력)]/20

쉽게 말하자면, 위에서 계산한 atk 수치를 (20 + 공격자의 완력) 만큼 곱한다음 20을 나누는 겁니다.

그렇다면 초기데미지는 1이라는 계산이 나오죠. 만약 방어자의 방어력이 4 공격자의 공격력이 5 완력이 40 이라면 (5-4/2)X(20+ 40)/20 아마 이거일껍니다.

atk 수치 계산은 이해가 갑니다만, 상대에게 줄 데미지는 정확하지가 않아요
제가 생각해도 셀프.데미지 계산은 좀 이상하네요. 상대 방어력이 10이고 공격력이 4 라면 공격력은 -6이 되고 오히려 힘이 높을수록 상대를 회복하잖습니까

제가 답벼했지만 제가 생각해도 어이가없네요;;; 그래도 방어력 1당 공격력 수치를 1씩 깎으시려면

atk = [attacker.atk - self.pdef / 2, 0]. max 를
atk = [attacker.atk - self.pdef / 1, 0]. max 로 바꾸시면 될'것'같습니다.

아마도입니다.
?

List of Articles
번호 제목 글쓴이 날짜 조회 수
8827 저번 글들과, 이전 글에 대해 묻고 싶습니다. idtptkd 2005.05.17 1315
8826 이전 작가들은 어떻게 되는 건가요? 아렉스 2005.05.17 1092
8825 이전 작가들은 어떻게 되는 건가요? 영원전설 2005.05.18 1153
8824 프루티룹스 질문... 신승일 2005.05.18 1473
8823 창작글만 있는데 감상문 같은 건 쓸수 없나요? 다르칸 2005.05.18 995
8822 창작글만 있는데 감상문 같은 건 쓸수 없나요? 아렉스 2005.05.18 1032
8821 창작글만 있는데 감상문 같은 건 쓸수 없나요? 천무 2005.05.18 821
8820 창작글만 있는데 감상문 같은 건 쓸수 없나요? 『水』신교 2005.05.18 869
8819 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 밀크마스터 2005.05.18 1166
8818 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 나랑놀자 2005.05.18 1111
8817 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; 셉티찡 2005.05.18 1170
8816 릴레이 소설 말인데요... 외로운갈매기 2005.05.18 675
8815 이전의 창작글 게시판의 글은 어케되나요? 천무 2005.05.18 471
8814 이전의 창작글 게시판의 글은 어케되나요? Sir_아사히 2005.05.19 563
8813 윈도우 98에서는 rpgxp안돌아가요 ? 바람을 가르는 자 2005.05.19 767
8812 윈도우 98에서는 rpgxp안돌아가요 ? 미칼렌 2005.05.19 927
8811 패치 요청... Norid 2005.05.19 454
8810 rpg만들기 2000에서 신규프로젝트가 만들어지지 않아요;; black-angel 2005.05.19 1147
8809 [RPG XP] 게임 테스트 오류. 살려주세요// Norid 2005.05.19 939
8808 릴레이소설 사래신장전 완결했는데요.. 적랑 2005.05.20 648
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(김원배) | 사신지(김병국)