| Run diganti let go | |
|
+3rusted_71 shikami akiortagem 7 posters |
Pengirim | Message |
---|
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Run diganti let go 2010-01-03, 13:20 | |
| wahai para scripter rmvx minta bantuanya dong....
pernah main suikoden 2 gak, kalo udah pasti ngerti maksudnya let go
gini.... jadi misalnya si hero dah lv99 dan karena satu alasan dan lain hal harus pergi ke tempat yang musuhnya cuma sekelas slime, dan weakling2 lainya. BT banget kalo mau run tapi abis itu ada tulisan "couldn't run away!" atau "but was surrounded" sok2 an banget tuh slimenya!!! Jadi maksudnya let go disini adalah gantinya run kalo level si hero sudah beberapa level lebih tingg dari si monster, cuman presentasi keberhasilanya 100%
gimana? ada yang bisa bantu saya?
maunya sih bisa dpake sama tankentai+kaduki | |
|
| |
shikami Member 1000 Konsep
Posts : 3744 Thanked : 31 Engine : Multi-Engine User Skill : Beginner Type : Developer
Trophies
Awards:
| Subyek: Re: Run diganti let go 2010-01-03, 13:36 | |
| Kenapa gak pake conditional branch di database enemy? Misal level sekian enemy action adalah escape dengan rate 5 lebih gtu, jadi musuhnya yg kabur.. Gimana ngerti gak? | |
|
| |
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-03, 13:40 | |
| udah dicek, bener juga jadi musuhnya yang kabur, gagasan bagus!
tapi masalahnya kalo si monster memegang item yang diperlukan dalam quest gimana? kan susah juga kalo kabur melulu....
Terakhir diubah oleh akiortagem tanggal 2010-01-03, 13:42, total 1 kali diubah | |
|
| |
rusted_71 Scripter Karatan
Posts : 392 Thanked : 11 Engine : RMVX Skill : Beginner Type : Scripter
| Subyek: Re: Run diganti let go 2010-01-03, 13:41 | |
| @shikami : kan itu cuma mo ganti tulisan run nya doank... jadi yang nentuin musuh kabur tuh player klo saran mu itu mah tar musuhnya kabur terus klo ngerasa lvnya kurang...
@TS : tar gw cek dulu, semoga bisa bantu... | |
|
| |
shikami Member 1000 Konsep
Posts : 3744 Thanked : 31 Engine : Multi-Engine User Skill : Beginner Type : Developer
Trophies
Awards:
| Subyek: Re: Run diganti let go 2010-01-03, 13:50 | |
| Iya seh.. Saya kan cuma ngasi alternatif via event.. @rust : nggak cuma ngganti namanya,tapi nambah rate kaburnya, hmm.. Mirip suikoden bgt...! | |
|
| |
rusted_71 Scripter Karatan
Posts : 392 Thanked : 11 Engine : RMVX Skill : Beginner Type : Scripter
| Subyek: Re: Run diganti let go 2010-01-03, 15:28 | |
| coba ini taro di atas main... - Spoiler:
- Code:
-
module RUSTED module ESCAPE RATIO_EXP = 0.02 # <= klo exp rata musuh di bawah 2% exp rata2 actor, runnya di ganti LET_GO_STRING = "%s let go the enemie troop" LET_GO_COMMAND = "Let Go" end end
class Window_PartyCommand < Window_Command #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def set(id = 0) self.contents.clear s1 = Vocab::fight id == 0 ? s2 = Vocab::escape : s2 = RUSTED::ESCAPE::LET_GO_COMMAND @commands = [s1,s2] draw_item(0, true) draw_item(1, $game_troop.can_escape) end end class Scene_Battle < Scene_Base def start_party_command_selection if $game_temp.in_battle @status_window.refresh @status_window.index = @actor_index = -1 @active_battler = nil @info_viewport.visible = true @message_window.visible = false check_average_exp @run_id == 1 ? @party_command_window.set(1) : @party_command_window.set(0) @party_command_window.active = true @party_command_window.index = 0 @actor_command_window.active = false $game_party.clear_actions if $game_troop.surprise or not $game_party.inputable? start_main end end end def make_escape_ratio if @run_id == 0 actors_agi = $game_party.average_agi enemies_agi = $game_troop.average_agi @escape_ratio = 150 - 100 * enemies_agi / actors_agi else @escape_ratio = 100 end end def check_average_exp @EscapeAwal = Vocab::EscapeStart @enemies_average_exp = 0 @actors_average_exp = 0 for i in 0...$game_troop.members.size @enemies_average_exp += $data_enemies[$game_troop.members[i].enemy_id].exp end for i in 0...$game_party.members.size @actors_average_exp += $game_party.members[i].next_exp_s end @enemies_average_exp = @enemies_average_exp/$game_troop.members.size @actors_average_exp = @actors_average_exp/$game_party.members.size @actors_average_exp * RUSTED::ESCAPE::RATIO_EXP < @enemies_average_exp ? @run_id = 0 : @run_id = 1 end def process_escape @info_viewport.visible = false @message_window.visible = true @run_id == 0 ? text = sprintf(Vocab::EscapeStart, $game_party.name) : text = sprintf(RUSTED::ESCAPE::LET_GO_STRING, $game_party.name) $game_message.texts.push(text) if $game_troop.preemptive success = true else success = (rand(100) < @escape_ratio) end Sound.play_escape if success wait_for_message battle_end(1) else @escape_ratio += 10 $game_message.texts.push('\.' + Vocab::EscapeFailure) wait_for_message $game_party.clear_actions start_main end end end
sorry ya... gw ga punya script tanketai atau kaduki, jadi gw cuma bikin dr battle system default... tapi coba aja di jajal pake script tanketai atau kaduki semoga membantu.... | |
|
| |
CrimsonSeas Novice
Posts : 106 Thanked : 9 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-03, 17:29 | |
| Pertanyaan: Kan katanya mau berdasarkan level kita : level musuh, kalo level kita lebih tinggi pas escape jadinya let go gitu toh? Nah level musuhnya dari mana? Kan by default musuh ga punya level. Bisa aja sih gw bikinin biar message shownnya beda tergantung enemy level dan level kita, tp kamu harus ada sistem dulu g bikin musuhnya punya level. Saran gw sih entah pake Ultimate Battler Stats (cek di thread CS Ultimate series di sini)(sekalian promosi) ato pake Yanfly Enemy level control. | |
|
| |
rusted_71 Scripter Karatan
Posts : 392 Thanked : 11 Engine : RMVX Skill : Beginner Type : Scripter
| Subyek: Re: Run diganti let go 2010-01-03, 18:47 | |
| @crimson : ya makanya itu gw pake exp doank... karena mang enemy ga ada lv nya... soalnya gw juga jarang pake VX... jadi ga tau script2 buatan orang yang di VX... | |
|
| |
CrimsonSeas Novice
Posts : 106 Thanked : 9 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-03, 18:57 | |
| Klo pake exp ga lucu jadinya, kan enemy exp = drop exp, biasanya itu buat boss pun cuma cukup buat naekkin level sekali, pdhl biasanya exp kita klo udah level tinggi jauh lebih gede daripada drop exp musuh. Ex: Di level 50, default actor di RMVX butuh 60k exp buat naek level, tp total expnya 140k lebih, karena ga mungkin ada musuh yg ngasih exp diatas 140k pas level segitu (bisa naek level 2x sekali lawan musuh), brrti smua musuh bkl jadi let go dong klo kita escape? Mknya butuh enemy level klo emg mau bikin kyk bginian. | |
|
| |
wltr3565 Senior
Posts : 870 Thanked : 28 Engine : RMVX Skill : Skilled Type : Scripter
Trophies
Awards:
| Subyek: Re: Run diganti let go 2010-01-03, 19:49 | |
| Lain kasus kalo level tiap troop diatur. Mungkin dengan hash? Masalahnya pengaturan lho! Kalo di troop ada note tag, itu praktis banget!
@akiortegem: Aku sih bisa buat, tapi masalahnya kamu mau pengaturannya gimana? Berupa hash (ngatur satu persatu) bisa kan untuk ngatur level musuh supaya bisa ganti jadi command "let go"? | |
|
| |
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-04, 11:02 | |
| !!!?? yah karena gak terlalu ngerti scripting...
@wltr3565: hash itu jadinya kita ngatur dari troopnya? jadi ntar dari script bisa diatur troop dengan ID XXXX itu levelnya XX gitu maksudnya? kalo bisa gitu bagus banget! jdi gw tinggal ngatur level dari troopnya doang. | |
|
| |
CrimsonSeas Novice
Posts : 106 Thanked : 9 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-04, 13:40 | |
| Gampangnya sih gini, kan kata kamu mau bikin battlenya itu ngecek apakah level musuh dibawah level kita ato ga, klo level kita lebih tinggi ntar kita pasti sukses mau escape dan escapenya jadi let go namanya. Nah tp kan musuh itu ga punya level, trus jadi gimana dong ngeset levelnya? Paling bagus sih pake script2 yg emang bikin musuh punya level, tp klo ga mau, gw ada alternatif sih, caranya di troops database kan ada event commands, nah bikin 1 battle event yg conditionnya Turn = 0, trus set 1 variable jadi level dari troop tsb. Nah gw ntar bisa bikinin script yg ngebandingin value dari variable tadi sama level rata2 party, klo level rata2 party lebih tinggi ntar jadinya let go, gitu aja paling. Tp emang lebih bagus klo punya enemy level script, skalian biar ada fitur tambahan buat gamenya. | |
|
| |
Rei_Fan49 Ex-Scripter
Posts : 304 Thanked : 15 Engine : Multi-Engine User Skill : Advanced Type : Scripter
| Subyek: Re: Run diganti let go 2010-01-04, 14:53 | |
| edit script di Scene_Battle bagian Escape Proccessing nya aja... (kayak misalnya ada temen yang kena "Bind" = 100% Failure, karena "Peduli"; Terus "Sticky" = Escape Rate - 5%, kalo fail kata-katanya beda... gitu? bukan)
Aku cuman edit sedikit... coba edit sedikit script.. di Escape Proccessing, soalnya ini tergantung Agi (Actor/Enemy) | |
|
| |
hart Senior
Posts : 805 Thanked : 38 Engine : Other Skill : Very Beginner Type : Developer
| Subyek: Re: Run diganti let go 2010-01-05, 09:26 | |
| nih tadi aku iseng coba2 buat scriptnya, semoga sesuai dengan yang diharapkan taruh script ini di atas main - Spoiler:
- Code:
-
module Hart module LetGo #-------------------------------------------------------------------------- # * Atur command let go dan message nya di sini #-------------------------------------------------------------------------- LetGoCommand = "Let Go" LetGoMessage = "%s Let the enemies go." #-------------------------------------------------------------------------- # * Atur perbedaan level agar command escape berubah menjadi let go #-------------------------------------------------------------------------- LevelDifference = 10 #-------------------------------------------------------------------------- end end
module RPG class Enemy alias level_initialize initialize def initialize level_initialize @level = 0 end
def create_level_cache temp = self.note[/<level\s+[0-9]+>/] if temp != nil @level = temp[/[0-9]+/].to_i else @level = 0 end end attr_accessor :level end end
class Scene_Title alias level_load_database load_database def load_database level_load_database for enemy in $data_enemies next if enemy == nil enemy.create_level_cache end end end class Game_Enemy < Game_Battler def level return enemy.level end end
class Game_Troop < Game_Unit def max_level level = 0 for enemy in @enemies level = enemy.level if level < enemy.level end return level end end class Window_PartyCommand < Window_Command #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize s1 = Vocab::fight if $game_party.max_level > $game_troop.max_level + Hart::LetGo::LevelDifference s2 = Hart::LetGo::LetGoCommand else s2 = Vocab::escape end super(128, [s1, s2], 1, 4) draw_item(0, true) draw_item(1, $game_troop.can_escape) self.active = false end end
class Scene_Battle < Scene_Base def process_escape @info_viewport.visible = false @message_window.visible = true if $game_party.max_level > $game_troop.max_level + Hart::LetGo::LevelDifference text = sprintf(Hart::LetGo::LetGoMessage, $game_party.name) @escape_ratio = 101 else text = sprintf(Vocab::EscapeStart, $game_party.name) end $game_message.texts.push(text) if $game_troop.preemptive success = true else success = (rand(100) < @escape_ratio) end Sound.play_escape if success wait_for_message battle_end(1) else @escape_ratio += 10 $game_message.texts.push('\.' + Vocab::EscapeFailure) wait_for_message $game_party.clear_actions start_main end end end
cara penggunaan: tulis saja level musuh di note enemy yang di database dengan format begini: <level x>. contoh: <level 20> credit: CrimsonSeas for the awesome Note Tag & Cache tutorial kalau tidak sesuai yang diharapkan, yah apa boleh buat, saya hanya seorang pemula hihihi...
Terakhir diubah oleh hart tanggal 2010-01-07, 09:19, total 2 kali diubah | |
|
| |
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-06, 10:49 | |
| @hart : ummm, bisa gak kalo naro levelnya di troop aja? soalnya yang dipake di battle kan troop jadi lebih baik liatnya yang troop aja.... eniwei thanks @irfanG : Hmmm? kalo peduli pun kenapa gak digotong aja orang yang kena bind? maksud saya bukan escape yang tergantung dengan status party member tapi level tertinggi di party... | |
|
| |
hart Senior
Posts : 805 Thanked : 38 Engine : Other Skill : Very Beginner Type : Developer
| Subyek: Re: Run diganti let go 2010-01-07, 09:26 | |
| hmm.. kayaknya ga mungkin levelnya naro di troop, soalnya di troop ga ada notenya oh ya, tuh scriptnya dah ku ubah sedikit. setelah membaca tutorial note tag nya kk CrimsonSeas, jadi langsung kupraktekkan hehe.. hihihi... | |
|
| |
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-08, 21:23 | |
| @hart : ng.... yah gak usah troop juga gpp deh bisa diakalin kok, gw taro aja satu troop level musuhnya sama semua, thank you banget !! BTW install nya biasakan? diatas main dibawah materials? | |
|
| |
akiortagem Newbie
Posts : 61 Thanked : 0 Engine : RMVX
| Subyek: Re: Run diganti let go 2010-01-11, 20:03 | |
| @hart: nggg.... skripnya error di line 58[img] [/img] | |
|
| |
Sponsored content
| Subyek: Re: Run diganti let go | |
| |
|
| |
| Run diganti let go | |
|