Chucksaint 4 Posted February 19, 2019 (edited) HI there! How can I make random AP? I've tried to modify a script by TroyZ but the AP output is wrong.. Here I leave the script that I modified Spoiler # ============================================================================== # ▼▼▼▼▼▼ TroyZ - Random AP Drop ▼▼▼▼▼▼ # ============================================================================== # Script by : Agung Prasetyo(TroyZ) # Contact me by : - Email agung.endisnear.xyz@gmail.com # - Forum RPGMakerID, username TroyZ # - Handphone 085756289121 # Engine : VXAce # Level : Easy # Version : 1.1 # ------------------------------------------------------------------------------ # Change Logs : # 27 Mei 2013 - Rilis script versi 1.0 # 15 Mei 2013 - Rilis update versi 1.1 # ------------------------------------------------------------------------------ # License : Silahkan digunakan untuk game free ataupun yang komersil. # Gak dikasih credit juga gak apa-apa, dikarenakan script ini sangat mudah dan # berhasil saya selesaikan kurang dari 10 menit. Kalo mau kasih credit boleh juga, # credit atas nama Agung Prasetyo(TroyZ). # ------------------------------------------------------------------------------ # How to Use : Pasang saja dibawah material tapi diatas main # ------------------------------------------------------------------------------ # Dengan script ini, aperience yang diberikan oleh musuh akan diacak sesuai # dengan konfigurasi yang kamu setting nantinya dibawah ini. Misalnya random # ratenya = 20% dengan aperience musuh 50. Maka, kamu akan mendapatkan aperience # yang diantara 20% dibawahnya 50 dan 20% diatasnya 50, jadi ada rentang aperience # gitu lah. # # Update versi 1.1 # Kamu bisa setting sendiri rate terendah dan rate tertinggi ap musuh dengan # notetag seperti ini : # <ap lower rate: x> # <ap upper rate: x> # Dimana x adalah persentasenya. Misalnya, slime mempunyai notetag seperti ini : # <ap lower rate: 20> # <ap upper rate: 60> # Berarti, slime itu akan memberikan ap dengan rentang 20% dibawah base ap, dan # 60% diatas base ap. Kalau tidak mau ada ratenya, berikan angka 0 pada persentasenya $imported = {} if $imported.nil? $imported[:TroyZ_RandomAPDrop] = true module X_Random_AP_Drop_X module RandomRate DEFAULT_LOWER_RATE = 20 # random rate ini dalam persen DEFAULT_UPPER_RATE = 20 # random rate ini dalam persen end module NOTETAGS_RANDOM_RATE LOWER_RATE = /<(?:AP LOWER RATE|ap lower rate):[ ]*(\d+)>/i UPPER_RATE = /<(?:AP UPPER RATE|ap upper rate):[ ]*(\d+)>/i end end module DataManager class << self alias agung_load_random_ap_dbase_x load_database end def self.load_database agung_load_random_ap_dbase_x agung_load_random_ap_notetags_x end def self.agung_load_random_ap_notetags_x [$data_enemies].each do |enemies| enemies.compact.each do |obj| next unless obj obj.agung_load_random_ap_notetags_x end end end end class RPG::Enemy include X_Random_AP_Drop_X attr_accessor :random_ap_lower attr_accessor :random_ap_upper attr_reader :ap def agung_load_random_ap_notetags_x @random_ap_lower = RandomRate::DEFAULT_LOWER_RATE @random_ap_upper = RandomRate::DEFAULT_UPPER_RATE self.note.split(/[\r\n]+/).each { |baris| case baris when NOTETAGS_RANDOM_RATE::LOWER_RATE @random_ap_lower = $1.to_i when NOTETAGS_RANDOM_RATE::UPPER_RATE @random_ap_upper = $1.to_i end } end end class Game_Enemy < Game_Battler def ap ap_1 = (self.element_rate(14) * 100)# * 100)#.to_i ap_batas_bawah = (ap_1 * (100 - enemy.random_ap_lower) / 100) ap_batas_atas = (ap_1 * (100 + enemy.random_ap_upper) / 100) ap = ap_batas_bawah + rand(ap_batas_atas - ap_batas_bawah + 1) #+1 return ap.to_i end end thank you Edited February 19, 2019 by Chucksaint Share this post Link to post Share on other sites