조회 수 624 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

 
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#_/ ◆전투 난이도 - KGC_BattleDifficulty◆
#_/----------------------------------------------------------------------------
#_/ 전투 난이도의 설정 기능을 추가합니다.
#_/ (기능 자체는 독립형. 메뉴등에 표시하는 경우는[MenuAlter][TitleOption]참조)
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

#==============================================================================
# ★ 커스터마이즈 항목 ★
#============================================================================= =

class Game_System
  # 난이도 배열 작성
# ≪"명칭", HP, SP, 타능력치, EXP, 골드, 트레이닝 전기밥통 출현율≫
# 각 항목의 배율을 지정.소수점 사용가능
  DIFFICULTY_LIST = [
    ["Easy",   0.8, 0.8, 0.7, 1.0, 1.0, 1.0],
    ["Normal", 1.0, 1.0, 1.0, 1.0, 1.0, 1.0],
    ["Hard",   1.5, 1.3, 1.2, 1.0, 1.0, 1.0],
    ["Mania",  2.0, 1.8, 1.5, 1.0, 1.0, 1.0],
    ["Divine", 3.0, 2.6, 2.0, 1.0, 1.0, 1.0]]
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

$imported["BattleDifficulty"] = true

#--------------------------------------------------------------------------
# ●난이도 설정 취득
#--------------------------------------------------------------------------
def get_difficulty
  # 난이도 설정을 돌려준다
  return $game_system.difficulty_list[$game_system.difficulty]
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Game_System
#==============================================================================

class Game_System
  #--------------------------------------------------------------------------
  # ● 公開インスタンス変数
  #--------------------------------------------------------------------------
  attr_accessor :difficulty               # 難易度
  attr_accessor :difficulty_list          # 難易度リスト
  #--------------------------------------------------------------------------
  # ● オブジェクト初期化
  #--------------------------------------------------------------------------
  alias initialize_KGC_BattleDifficulty initialize
  def initialize
    # 元の処理を実行
    initialize_KGC_BattleDifficulty

    @difficulty = 1
    @difficulty_list = DIFFICULTY_LIST
  end
end

#★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

#==============================================================================
# ■ Game_Enemy
#==============================================================================

class Game_Enemy < Game_Battler
  #--------------------------------------------------------------------------
  # ● 基本 MaxHP の取得
  #--------------------------------------------------------------------------
  alias base_maxhp_KGC_BattleDifficulty base_maxhp
  def base_maxhp
    n = base_maxhp_KGC_BattleDifficulty
    n *= get_difficulty[1]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本 MaxSP の取得
  #--------------------------------------------------------------------------
  alias base_maxsp_KGC_BattleDifficulty base_maxsp
  def base_maxsp
    n = base_maxsp_KGC_BattleDifficulty
    n *= get_difficulty[2]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本腕力の取得
  #--------------------------------------------------------------------------
  alias base_str_KGC_BattleDifficulty base_str
  def base_str
    n = base_str_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本器用さの取得
  #--------------------------------------------------------------------------
  alias base_dex_KGC_BattleDifficulty base_dex
  def base_dex
    n = base_dex_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本素早さの取得
  #--------------------------------------------------------------------------
  alias base_agi_KGC_BattleDifficulty base_agi
  def base_agi
    n = base_agi_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本魔力の取得
  #--------------------------------------------------------------------------
  alias base_int_KGC_BattleDifficulty base_int
  def base_int
    n = base_int_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本攻撃力の取得
  #--------------------------------------------------------------------------
  alias base_atk_KGC_BattleDifficulty base_atk
  def base_atk
    n = base_atk_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本物理防御の取得
  #--------------------------------------------------------------------------
  alias base_pdef_KGC_BattleDifficulty base_pdef
  def base_pdef
    n = base_pdef_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本魔法防御の取得
  #--------------------------------------------------------------------------
  alias base_mdef_KGC_BattleDifficulty base_mdef
  def base_mdef
    n = base_mdef_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● 基本回避修正の取得
  #--------------------------------------------------------------------------
  alias base_eva_KGC_BattleDifficulty base_eva
  def base_eva
    n = base_eva_KGC_BattleDifficulty
    n *= get_difficulty[3]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● EXP の取得
  #--------------------------------------------------------------------------
  alias exp_KGC_BattleDifficulty exp
  def exp
    n = exp_KGC_BattleDifficulty
    n *= get_difficulty[4]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● ゴールドの取得
  #--------------------------------------------------------------------------
  alias gold_KGC_BattleDifficulty gold
  def gold
    n = gold_KGC_BattleDifficulty
    n *= get_difficulty[5]
    return Integer(n)
  end
  #--------------------------------------------------------------------------
  # ● トレジャー出現率の取得
  #--------------------------------------------------------------------------
  alias treasure_prob_KGC_BattleDifficulty treasure_prob
  def treasure_prob
    n = treasure_prob_KGC_BattleDifficulty
    n *= get_difficulty[6]
    return Integer(n)
  end
end

 

 

이 스크립트인데요... 이벤트-스크립트를 통해서 난이도를 조정하는방법을 알고싶은데... 어떻게 해야 조정될려나요...?

  • profile
    천무 2017.02.14 12:51
    #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
    #_/ ◆戦闘難易度 - KGC_BattleDifficulty◆
    #_/----------------------------------------------------------------------------
    #_/ 戦闘難易度の設定機能を追加します。
    #_/ (メニュー等に表示する場合は[MenuAlter][TitleOption]参照)
    #_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

    #==============================================================================
    # ★ カスタマイズ項目 ★
    #==============================================================================

    module KGC
    # ◆難易度配列
    # ≪"名称", HP, SP, 他能力値, EXP, ゴールド, トレジャー出現率≫
    # 各項目の倍率を指定(百分率)。
    BD_DIFFICULTY_LIST = [
    ["Rookie", 60, 50, 60, 100, 100, 100],
    ["Easy", 80, 80, 70, 100, 100, 100],
    ["Normal", 100, 100, 100, 100, 100, 100],
    ["Hard", 150, 130, 120, 100, 100, 100],
    ["Mania", 200, 180, 150, 100, 100, 100],
    ["Unknown", 300, 260, 200, 100, 100, 100],
    ["Divine", 500, 400, 300, 100, 100, 100]
    ]
    # ◆初期難易度
    # BD_DIFFICULTY_LIST のインデックス。
    BD_INITIAL_DIFFICULTY = 2
    end

    #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    $imported = {} if $imported == nil
    $imported["BattleDifficulty"] = true

    module Difficulty
    #--------------------------------------------------------------------------
    # ● 難易度設定取得
    #--------------------------------------------------------------------------
    def self.get
    # 難易度設定を返す
    return KGC::BD_DIFFICULTY_LIST[$game_system.difficulty]
    end
    #--------------------------------------------------------------------------
    # ● 難易度設定変更
    #--------------------------------------------------------------------------
    def self.set(index)
    # 範囲外ならば変更しない
    return if index < 0 || index >= KGC::BD_DIFFICULTY_LIST.size
    $game_system.difficulty = index
    end
    #--------------------------------------------------------------------------
    # ● 能力値補正済みエネミー取得
    #--------------------------------------------------------------------------
    def self.get_revised_enemy(enemy)
    en = enemy.clone
    diff = self.get
    en.maxhp = en.maxhp * diff[1] / 100
    en.maxsp = en.maxsp * diff[2] / 100
    en.str = en.str * diff[3] / 100
    en.dex = en.dex * diff[3] / 100
    en.agi = en.agi * diff[3] / 100
    en.int = en.int * diff[3] / 100
    en.atk = en.atk * diff[3] / 100
    en.pdef = en.pdef * diff[3] / 100
    en.mdef = en.mdef * diff[3] / 100
    en.exp = en.exp * diff[4] / 100
    en.gold = en.gold * diff[4] / 100
    if en.treasure_prob < 100
    en.treasure_prob = [en.treasure_prob * diff[5] / 100, 100].min
    end
    return en
    end
    end

    #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    #==============================================================================
    # ■ Game_System
    #==============================================================================

    class Game_System
    attr_accessor :difficulty # 難易度
    #--------------------------------------------------------------------------
    # ● オブジェクト初期化
    #--------------------------------------------------------------------------
    alias initialize_KGC_BattleDifficulty initialize
    def initialize
    # 元の処理を実行
    initialize_KGC_BattleDifficulty

    @difficulty = KGC::BD_INITIAL_DIFFICULTY
    end
    #--------------------------------------------------------------------------
    # ● 難易度一覧
    #--------------------------------------------------------------------------
    def difficulty_list
    return KGC::BD_DIFFICULTY_LIST
    end
    end

    #★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

    #==============================================================================
    # ■ Game_Enemy
    #==============================================================================

    class Game_Enemy < Game_Battler
    #--------------------------------------------------------------------------
    # ● 基本 MaxHP の取得
    #--------------------------------------------------------------------------
    alias base_maxhp_KGC_BattleDifficulty base_maxhp
    def base_maxhp
    n = base_maxhp_KGC_BattleDifficulty
    n *= Difficulty.get[1]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本 MaxSP の取得
    #--------------------------------------------------------------------------
    alias base_maxsp_KGC_BattleDifficulty base_maxsp
    def base_maxsp
    n = base_maxsp_KGC_BattleDifficulty
    n *= Difficulty.get[2]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本腕力の取得
    #--------------------------------------------------------------------------
    alias base_str_KGC_BattleDifficulty base_str
    def base_str
    n = base_str_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本器用さの取得
    #--------------------------------------------------------------------------
    alias base_dex_KGC_BattleDifficulty base_dex
    def base_dex
    n = base_dex_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本素早さの取得
    #--------------------------------------------------------------------------
    alias base_agi_KGC_BattleDifficulty base_agi
    def base_agi
    n = base_agi_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本魔力の取得
    #--------------------------------------------------------------------------
    alias base_int_KGC_BattleDifficulty base_int
    def base_int
    n = base_int_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本攻撃力の取得
    #--------------------------------------------------------------------------
    alias base_atk_KGC_BattleDifficulty base_atk
    def base_atk
    n = base_atk_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本物理防御の取得
    #--------------------------------------------------------------------------
    alias base_pdef_KGC_BattleDifficulty base_pdef
    def base_pdef
    n = base_pdef_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本魔法防御の取得
    #--------------------------------------------------------------------------
    alias base_mdef_KGC_BattleDifficulty base_mdef
    def base_mdef
    n = base_mdef_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● 基本回避修正の取得
    #--------------------------------------------------------------------------
    alias base_eva_KGC_BattleDifficulty base_eva
    def base_eva
    n = base_eva_KGC_BattleDifficulty
    n *= Difficulty.get[3]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● EXP の取得
    #--------------------------------------------------------------------------
    alias exp_KGC_BattleDifficulty exp
    def exp
    n = exp_KGC_BattleDifficulty
    n *= Difficulty.get[4]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● ゴールドの取得
    #--------------------------------------------------------------------------
    alias gold_KGC_BattleDifficulty gold
    def gold
    n = gold_KGC_BattleDifficulty
    n *= Difficulty.get[5]
    return n / 100
    end
    #--------------------------------------------------------------------------
    # ● トレジャー出現率の取得
    #--------------------------------------------------------------------------
    alias treasure_prob_KGC_BattleDifficulty treasure_prob
    def treasure_prob
    n = treasure_prob_KGC_BattleDifficulty
    if n < 100
    n *= Difficulty.get[6]
    return [n / 100, 100].min
    else
    return n
    end
    end
    end
  • profile
    천무 2017.02.14 12:57
    우선 위에붙이신 스크립트가 오류가납니다. 누군가 커스트마이징한것 같네요.
    제가 붙인걸 스크립트 main 위에 붙이시고요.

    사용방법은 이벤트의 스크립트 명령어에.
    아래 명령어를 (한줄씩 필요한것) 쓰면됩니다.

     Difficulty.set (0) # Rookie
     Difficulty.set (2) # Normal
     Difficulty.set (3) # Hard

    스크립트상에 보면.
    ["Rookie", 60, 50, 60, 100, 100, 100],
    ["Easy", 80, 80, 70, 100, 100, 100],
    ["Normal", 100, 100, 100, 100, 100, 100],
    ["Hard", 150, 130, 120, 100, 100, 100],
    ["Mania", 200, 180, 150, 100, 100, 100],
    ["Unknown", 300, 260, 200, 100, 100, 100],
    ["Divine", 500, 400, 300, 100, 100, 100]

    가 있는데 Rookie가 0 이고 Divine 가 6 입니다.
    난이도를 만약 제일어렵게 하려면 스크립트명령어를

    Difficulty.set (6)

    으로하면됩니다.

    난이도를 선택형으로 하시려면 선택지를 써서 각 선택지에 따라 명령어를 선택하게 하면됩니다.
  • ?
    달빛날개 2017.02.14 15:06
    오오 감사합니다! 명령어가 Difficulty.set 이였을줄이야... 거기다 오류가 나는 스크립트였다니..ㄷㄷ 아무튼 감사합니다! 잘 되네요!

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 게임다운로드관련 민원실에 게임 요청 자제해주세요. 천무 2017.02.19 2635
공지 네코플레이어관련 저장용량부족 문제 해결하기.(런타임 및 게임) 2 천무 2017.01.09 2496
공지 기타문의 야겜 문의에 관하여(꼭봐주세요!) 12 천무 2016.04.13 11530
1010 네코플레이어관련 게임 실행이 안됩니다 ㅜㅜ 촌사람 2017.02.14 223
1009 웹사이트이용관련 글을 수정하면 새 글로 등록되어버리는 오류가 있습니다. 1 세찬바람:) 2017.02.14 532
1008 웹사이트이용관련 에러가뜨는데어뗗게하죠? 3 칼리버 2017.02.14 647
» 기타문의 rpg xp 를 사용중인데요 이 스크립트의 사용법을 알고싶어요 3 달빛날개 2017.02.14 624
1006 네코플레이어관련 어떳개하나요? 1 박정민 2017.02.13 607
1005 네코플레이어관련 마녀의집 플레이시 h00ke 2017.02.13 628
1004 네코플레이어관련 undefined method to_i for true 에러 1 익명익 2017.02.10 1354
1003 네코플레이어관련 쯔뀨르 게임 관련문의 쯔뻡 2017.02.10 449
1002 게임다운로드관련 운영자님 2 운영자님보세여 2017.02.08 599
1001 네코플레이어관련 Cos re3 화면이 짤려요 ㄴㅈ 2017.02.09 220
1000 네코플레이어관련 어두운화면 ㅇㅅㅇ 2017.02.08 197
999 게임다운로드관련 pc버젼 네코 rpg xp 어디서 다운 받아요? 1 유저킬러 2017.02.07 3845
998 기타문의 스폰지오니 걸남TV 2017.02.02 751
997 게임다운로드관련 KOSMOS 창조신룡 2017.02.02 203
996 네코플레이어관련 몬무스퀘스트패러독스 플레이가 안되용! 가세공세 2017.02.02 599
995 네코플레이어관련 alert라면서 게임이실행되지않아요 secret boru3990 2017.02.01 0
994 아이디/비번관련 회원가입을 했는데 로그인에서 되지않아요ㅠ 1 우리단짝 2017.01.31 642
993 기타문의 3회대회 후원은 언제부터 시작하나요? 1 sigtuna 2017.01.31 637
992 네코플레이어관련 란죠님의 논란을개인적으로조사해봤습니다 31 아구보이 2017.01.29 22234
991 네코플레이어관련 탄생석 1 게임즐겜하자 2017.01.30 874
Board Pagination Prev 1 ... 20 21 22 23 24 25 26 27 28 29 ... 75 Next
/ 75






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

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