ARPG製作小師分享(最近更新:8/12)
+13
作作作遊戲中
Q—S.T.
qqaazzqq11
布丁大學
小叮噹
@~刀光劍影~@
★暒星☆
嵐
棋匿
盼月
tne
雷神劍參
愚零鬥武多
17 posters
ARPG製作小師分享(最近更新:8/12)
製作小師範例載點(210kb未加密版最近更新8/12)
此為v1.02版正版,請用正版RMXP開啟
裡頭有使用日本齒車之城的血條腳本與66RPG的全鍵盤腳本
使用謎版者(v1.01)因全鍵盤腳本之故會無法正常執行遊戲(請支持正版)
此範例要轉貼或直接用來做遊戲者都不必通知在下,完全FREE
ARPG介面截圖參考
前言
本範例是為了苦於不會製作ARPG的版友們所開發,其中敵我攻擊範圍設置,動畫以及損傷
我方血條.敵人資料庫讀取等皆由RGSS一手包辦,也就是說最煩人最頭痛的ARPG判定系統
已由腳本解決,只要照一般RPG那樣的內建方式去設置資料庫的怪物和武器技能就能輕鬆
的作出一款ARPG小品來(當然要挑戰大作也行)
版友們只需安心專注的去設置地圖敵人事件和劇情使ARPG製作更好上手
至於ARPG的動作原理並不是三言兩語就能解釋的完,就算長篇大論的解釋也得在RM2k3
有製作過ARPG的實戰經驗才能了解,不過就算本範例將最困難的部分解決了,使用者仍然
也得對開關變數與條件分歧等等的事件製作有一定程度才有辦法自己變花樣出來
若想學用RGSS來寫ARPG的版友此範例會是個簡單易懂的參考
此範例著重於造福新手性質,因此功能十分陽春,技能道具快捷列設置只有四組,也沒有敵人頭上有血條
不過腳本以解決最麻煩頭痛的部分,若野心不大的製作者可輕易的製作出ARPG來
但奉勸想再自創新系統的人切勿好高鶩遠,因為有些功能要有一定程度的邏輯觀念才有辦法做的出來
建議初學者請先打好基礎了解ARPG是怎麼回事並駕輕就熟了之後再去開發高難度的系統
注意事項
1.範例所使用的開關1~4勿移作他用,那是程式用來切換某些功能用
2.變數1~8勿移作他用,那是技能與道具快捷的ID設置(修改了快捷列上的設置也會跟著改變)
操作方式與特色
1.按確定鍵可針對敵人事件發動普攻攻擊,普攻攻擊的型態與射程與角色裝備的武器有關
2.按1.2.3.4鍵可針對對敵人事件發動技能攻擊,技能裝備以變數1~4設置
3.按Q.W.E.R鍵可使用道具回復,道具裝備以變數5~8設置
4.接近敵人時敵人會攻擊主角,敵人偵測(警戒)範圍以變數100號設定
5.帶頭角色HP為0時GAMEOVER
6.切換地圖被打死的敵人重生
7.戰鬥動畫.跳損傷數值與損傷數值計算皆由RGSS包辦
8.敵我的戰鬥計算公式與建腳本相同,無須自己另行設置
9.敵我對象方的戰鬥動畫等等完全按照內建的資料庫那樣輸出,無須自己另行設置
設置方式
由於說明篇幅大,請自行參考腳本內的使用說明即可,有詳細解說
不明白亦可參考事件範例
武器與技能設置也請參考資料庫
3號地圖為BOSS戰的範例,重要!請詳細觀看事件設置方法
公共事件設置截圖
敵人事件截圖
事件名字設定法:名稱,怪物ID,普攻型態,普攻射程
1號事件設定5號怪物(克波魯特)設定法:
EV001,5,0,1
EV001<=事件本身名稱(這個可以任意命名)
5<=資料庫敵人ID(是怪物ID不是敵人群組編號)
0<=敵人普攻型態
1<=敵人普攻射程
事件內容請參考截圖那樣設置
事件開始條件:確定鍵
本範例的敵人不是用平行處理因此應能改善LAG的問題吧(應該啦....)
內容裡的◆劇本:victory是會自動照內建方式敵人死了獲得EXP.錢跟寶物
所以不用再自己用事件寫獲得EXP.錢跟掉寶了
補充說明
1.基本損傷公式與內建完全相同,若想修改者請在腳本◆Arpg_Game_Battler找到
def arpg_attack_effect(attacker,event)
def arpg_skill_effect(user,skill,event)
def arpg_item_effect(item)
這三個函式修改之
2.由於使用全鍵盤腳本,若不滿意鍵盤配置可在腳本◆Arpg_Game_Characte找到
def arpg_actor_start的函式
把所有有Kboard.press?(代碼)裡的代碼自行修改
相關代碼請參考腳本◆Arpg_Kboard
3.關於主角快顯視窗與快捷列視窗請在腳本◆Arpg_Window自行修改
4.若有不會設定或運作原理的疑問歡迎在此討論串提出,在下會抽空盡我所知為各位解答
或有什麼功能可以添加使製作者更方便製作的建議也可提出
但若想要求其他附加功能例如滑鼠操作或其他複雜系統等需要大翻修者很抱歉恕在下無法提供
此範例的重點是希望幫助版友能快速上手製作ARPG,去完成做遊戲更要注意的環節
而不是把自己困在系統設計的死胡同裡,在下也並非有求必應的土地公@@
想學RGSS的人也有現成教材能參考也是目的之一
更新訊息
◆2008/3/20:
A.修改為程式不會強制呼叫1號公共事件,使用者自由改變變數1~8就能變更快捷列設置
B.修改攻速敵我設置相反的BUG
◆2008/3/21:
A.原本是設定怪物使用技能不扣SP(無限使用)版友反應後新增開關4可切換怪使用技能是否扣SP的功能
◆2008/3/22:
A.增加附加狀態會隨時間 解除的功能(一個回合大約是1秒,請使用者自行測試並在資料庫自行調整解除回合數)
◆2008/3/24:
A.修改角色快顯視窗狀態要被打或回復才會自動刷新的BUG
◆2008/3/30:
A.修改插入閃爍指令會出現錯誤的BUG
◆2008/4/1:
A.修改插入變更色調指令會出現錯誤的BUG
◆2008/6/16:
A.修改會造成lag的BUG
◆2008/8/12:
A.新增敵人偵測範圍的功能(用變數100號設定)
此為v1.02版正版,請用正版RMXP開啟
裡頭有使用日本齒車之城的血條腳本與66RPG的全鍵盤腳本
使用謎版者(v1.01)因全鍵盤腳本之故會無法正常執行遊戲(請支持正版)
此範例要轉貼或直接用來做遊戲者都不必通知在下,完全FREE
ARPG介面截圖參考
前言
本範例是為了苦於不會製作ARPG的版友們所開發,其中敵我攻擊範圍設置,動畫以及損傷
我方血條.敵人資料庫讀取等皆由RGSS一手包辦,也就是說最煩人最頭痛的ARPG判定系統
已由腳本解決,只要照一般RPG那樣的內建方式去設置資料庫的怪物和武器技能就能輕鬆
的作出一款ARPG小品來(當然要挑戰大作也行)
版友們只需安心專注的去設置地圖敵人事件和劇情使ARPG製作更好上手
至於ARPG的動作原理並不是三言兩語就能解釋的完,就算長篇大論的解釋也得在RM2k3
有製作過ARPG的實戰經驗才能了解,不過就算本範例將最困難的部分解決了,使用者仍然
也得對開關變數與條件分歧等等的事件製作有一定程度才有辦法自己變花樣出來
若想學用RGSS來寫ARPG的版友此範例會是個簡單易懂的參考
此範例著重於造福新手性質,因此功能十分陽春,技能道具快捷列設置只有四組,也沒有敵人頭上有血條
不過腳本以解決最麻煩頭痛的部分,若野心不大的製作者可輕易的製作出ARPG來
但奉勸想再自創新系統的人切勿好高鶩遠,因為有些功能要有一定程度的邏輯觀念才有辦法做的出來
建議初學者請先打好基礎了解ARPG是怎麼回事並駕輕就熟了之後再去開發高難度的系統
注意事項
1.範例所使用的開關1~4勿移作他用,那是程式用來切換某些功能用
2.變數1~8勿移作他用,那是技能與道具快捷的ID設置(修改了快捷列上的設置也會跟著改變)
操作方式與特色
1.按確定鍵可針對敵人事件發動普攻攻擊,普攻攻擊的型態與射程與角色裝備的武器有關
2.按1.2.3.4鍵可針對對敵人事件發動技能攻擊,技能裝備以變數1~4設置
3.按Q.W.E.R鍵可使用道具回復,道具裝備以變數5~8設置
4.接近敵人時敵人會攻擊主角,敵人偵測(警戒)範圍以變數100號設定
5.帶頭角色HP為0時GAMEOVER
6.切換地圖被打死的敵人重生
7.戰鬥動畫.跳損傷數值與損傷數值計算皆由RGSS包辦
8.敵我的戰鬥計算公式與建腳本相同,無須自己另行設置
9.敵我對象方的戰鬥動畫等等完全按照內建的資料庫那樣輸出,無須自己另行設置
設置方式
由於說明篇幅大,請自行參考腳本內的使用說明即可,有詳細解說
不明白亦可參考事件範例
武器與技能設置也請參考資料庫
3號地圖為BOSS戰的範例,重要!請詳細觀看事件設置方法
公共事件設置截圖
敵人事件截圖
事件名字設定法:名稱,怪物ID,普攻型態,普攻射程
1號事件設定5號怪物(克波魯特)設定法:
EV001,5,0,1
EV001<=事件本身名稱(這個可以任意命名)
5<=資料庫敵人ID(是怪物ID不是敵人群組編號)
0<=敵人普攻型態
1<=敵人普攻射程
事件內容請參考截圖那樣設置
事件開始條件:確定鍵
本範例的敵人不是用平行處理因此應能改善LAG的問題吧(應該啦....)
內容裡的◆劇本:victory是會自動照內建方式敵人死了獲得EXP.錢跟寶物
所以不用再自己用事件寫獲得EXP.錢跟掉寶了
補充說明
1.基本損傷公式與內建完全相同,若想修改者請在腳本◆Arpg_Game_Battler找到
def arpg_attack_effect(attacker,event)
def arpg_skill_effect(user,skill,event)
def arpg_item_effect(item)
這三個函式修改之
2.由於使用全鍵盤腳本,若不滿意鍵盤配置可在腳本◆Arpg_Game_Characte找到
def arpg_actor_start的函式
把所有有Kboard.press?(代碼)裡的代碼自行修改
相關代碼請參考腳本◆Arpg_Kboard
3.關於主角快顯視窗與快捷列視窗請在腳本◆Arpg_Window自行修改
4.若有不會設定或運作原理的疑問歡迎在此討論串提出,在下會抽空盡我所知為各位解答
或有什麼功能可以添加使製作者更方便製作的建議也可提出
但若想要求其他附加功能例如滑鼠操作或其他複雜系統等需要大翻修者很抱歉恕在下無法提供
此範例的重點是希望幫助版友能快速上手製作ARPG,去完成做遊戲更要注意的環節
而不是把自己困在系統設計的死胡同裡,在下也並非有求必應的土地公@@
想學RGSS的人也有現成教材能參考也是目的之一
更新訊息
◆2008/3/20:
A.修改為程式不會強制呼叫1號公共事件,使用者自由改變變數1~8就能變更快捷列設置
B.修改攻速敵我設置相反的BUG
◆2008/3/21:
A.原本是設定怪物使用技能不扣SP(無限使用)版友反應後新增開關4可切換怪使用技能是否扣SP的功能
◆2008/3/22:
A.增加附加狀態會隨時間 解除的功能(一個回合大約是1秒,請使用者自行測試並在資料庫自行調整解除回合數)
◆2008/3/24:
A.修改角色快顯視窗狀態要被打或回復才會自動刷新的BUG
◆2008/3/30:
A.修改插入閃爍指令會出現錯誤的BUG
◆2008/4/1:
A.修改插入變更色調指令會出現錯誤的BUG
◆2008/6/16:
A.修改會造成lag的BUG
◆2008/8/12:
A.新增敵人偵測範圍的功能(用變數100號設定)
愚零鬥武多 在 周三 8月 13, 2008 10:36 am 作了第 5 次修改
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
最近也想拿大大這個腳本套用...研究中~
請問一下大大,腳本中delay_count與actor_count的作用是什麼呢?
請問一下大大,腳本中delay_count與actor_count的作用是什麼呢?
tne- 賣彩色內褲的小鱉三
- 文章數 : 4
注冊日期 : 2008-06-03
回復: ARPG製作小師分享(最近更新:8/12)
tne 寫到:最近也想拿大大這個腳本套用...研究中~
請問一下大大,腳本中delay_count與actor_count的作用是什麼呢?
有做一些造成lag的修改請重新下載吧
以一個敵人事件來看身上有@delay_count與@actor_count兩種計數
敵人事件在每次updata時處理敵方打我方以及按鈕判斷(我方打敵方)兩件事
當敵方打我方時把敵方攻擊動畫播放的格數*2寫入@delay_count
那麼在@delay_count>0時敵人不會再進行攻擊(也就是要等動畫撥完才能再次攻擊)
當我方按按鈕判定按下成功時我方攻擊動畫播放的格數*2寫入@actor_count
那麼在@actor_count>0時我方按按鈕也無法再攻擊這個敵人(也就是要等動畫撥完才能再次攻擊)
主要目的是在做行動緩衝避免一直連射瞬秒
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
謝謝大大回答~
我這兩天又碰到問題,雖然跟大大的系統沒什麼關係,不過還是想請教一下:
我想改一下敵人的行動模式,讓他平時在某個範圍巡邏,當主角接近到某個範圍時才主動攻擊。
目前我的做法是,在敵人的事件上作兩個事件頁,一個在固定路線上行走,一個主動接近主角。用變數判斷作為行動模式的切換。
原本的做法是在巡邏模式的平行事件中檢查他與主角的距離,進入距離內就修改變數的值讓他進入追擊形態。
基本上這個做法已經試驗成功了。
不過我擔心平行事件過多會變慢,所以想試看看用RGSS去改。我是改在Game_Character的update中:
alias watch_mode_update update
def update
watch_mode_update
if (not jumping?) and (not moving?)
chk_watch_view_event
end
end
chk_watch_view_event是檢查主角距離的函式,距離在範圍內就把指定變數的值改調,讓敵人進入追擊模式。
不知道我這樣的想法有沒有錯?
因為我弄好了之後,主角靠近敵人後,敵人還是在指定的路徑上走,沒有變成追擊模式。
我用F9看Debug,變數確實有照我預期的變動...所以我的判斷式是正確的,但是敵人並沒有變換模式。
更怪的是,只要我按F9 Debug後,敵人就變成追擊模式走過來了...
是不是我少做了什麼,所以敵人事件不會去檢查那個變數?還請愚零大指導~感謝...
我這兩天又碰到問題,雖然跟大大的系統沒什麼關係,不過還是想請教一下:
我想改一下敵人的行動模式,讓他平時在某個範圍巡邏,當主角接近到某個範圍時才主動攻擊。
目前我的做法是,在敵人的事件上作兩個事件頁,一個在固定路線上行走,一個主動接近主角。用變數判斷作為行動模式的切換。
原本的做法是在巡邏模式的平行事件中檢查他與主角的距離,進入距離內就修改變數的值讓他進入追擊形態。
基本上這個做法已經試驗成功了。
不過我擔心平行事件過多會變慢,所以想試看看用RGSS去改。我是改在Game_Character的update中:
alias watch_mode_update update
def update
watch_mode_update
if (not jumping?) and (not moving?)
chk_watch_view_event
end
end
chk_watch_view_event是檢查主角距離的函式,距離在範圍內就把指定變數的值改調,讓敵人進入追擊模式。
不知道我這樣的想法有沒有錯?
因為我弄好了之後,主角靠近敵人後,敵人還是在指定的路徑上走,沒有變成追擊模式。
我用F9看Debug,變數確實有照我預期的變動...所以我的判斷式是正確的,但是敵人並沒有變換模式。
更怪的是,只要我按F9 Debug後,敵人就變成追擊模式走過來了...
是不是我少做了什麼,所以敵人事件不會去檢查那個變數?還請愚零大指導~感謝...
tne- 賣彩色內褲的小鱉三
- 文章數 : 4
注冊日期 : 2008-06-03
回復: ARPG製作小師分享(最近更新:8/12)
你的意思是在敵人事件第一頁使用指定路徑移動,第二頁條件某變數為n以上變成接近主角是嗎?
若只單純的在RGSS裡改變變數並不會讓程式去檢查分頁條件
請在改變變數的指令後之後加一行
$game_map.refresh
去刷新所有地圖事件即可
RMXP的內建指令在改變開關或變數後都會加這行....
你可參考Interpreter 4的def command_121與def command_122
不過事件中有個變數@move_type....大約在◆Arpg_Game_Character第74行開始
# 如果停止計算數值超過了一定的值(由移動頻率算出)
if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency)
# 移動類型分歧
case @move_type
when 1 # 隨機
move_type_random
when 2 # 接近
move_type_toward_player
when 3 # 自定義
move_type_custom
end
end
你直接去改變@move_type的值為3即為自定義,也就是執行你第一頁寫的巡邏路徑
當檢查到主角侵入時直接改變@move_type的值為2就變成追擊模式
盡量用一頁就搞定動作,畢竟三不五時就$game_map.refresh一次對效能也是有影響的
若只單純的在RGSS裡改變變數並不會讓程式去檢查分頁條件
請在改變變數的指令後之後加一行
$game_map.refresh
去刷新所有地圖事件即可
RMXP的內建指令在改變開關或變數後都會加這行....
你可參考Interpreter 4的def command_121與def command_122
不過事件中有個變數@move_type....大約在◆Arpg_Game_Character第74行開始
# 如果停止計算數值超過了一定的值(由移動頻率算出)
if @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency)
# 移動類型分歧
case @move_type
when 1 # 隨機
move_type_random
when 2 # 接近
move_type_toward_player
when 3 # 自定義
move_type_custom
end
end
你直接去改變@move_type的值為3即為自定義,也就是執行你第一頁寫的巡邏路徑
當檢查到主角侵入時直接改變@move_type的值為2就變成追擊模式
盡量用一頁就搞定動作,畢竟三不五時就$game_map.refresh一次對效能也是有影響的
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
我也套用此腳本了~
剛用時還摸不太清楚~ 後來發現功能真的很有趣..^^
有些疑問~
怪物的攻擊速度該如何調整呢?
是否有設定範圍內才追擊並攻擊呢?
因為上面的大大說的,我看不太懂..
感覺少了地圖遇敵模式~也可以少去很多怪物圖片了..^^
剛用時還摸不太清楚~ 後來發現功能真的很有趣..^^
有些疑問~
怪物的攻擊速度該如何調整呢?
是否有設定範圍內才追擊並攻擊呢?
因為上面的大大說的,我看不太懂..
感覺少了地圖遇敵模式~也可以少去很多怪物圖片了..^^
回復: ARPG製作小師分享(最近更新:8/12)
用攻擊動畫的長度去做控制,動畫畫格數越多攻速越慢盼月 寫到:我也套用此腳本了~
剛用時還摸不太清楚~ 後來發現功能真的很有趣..^^
有些疑問~
怪物的攻擊速度該如何調整呢?
請再去下載一次直接寫了更新可用變數100號設置敵人偵測範圍盼月 寫到:
是否有設定範圍內才追擊並攻擊呢?
因為上面的大大說的,我看不太懂..
ARPG在製作上的難度可是比一般RPG困難許多盼月 寫到:
感覺少了地圖遇敵模式~也可以少去很多怪物圖片了..^^
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
難怪ARPG相關的文章也頗為少見。愚零鬥武多 寫到:ARPG在製作上的難度可是比一般RPG困難許多
今天對於敵人範圍追擊較佳的設定看法。
敵人最好是固定在園地,主角接近才追擊並攻擊的效果會比較好。
如果作者設定怪物隨機,會怪怪的。
回復: ARPG製作小師分享(最近更新:8/12)
終於有敵人的視野範圍了啊( -3-)
這樣就差不多可以拿來做遊戲了~XD
不過不曉得有沒有敵人呆滯之類的行動設定....(妄想中)
(↑參考GBA KH:COM 的無心者)
這樣就差不多可以拿來做遊戲了~XD
不過不曉得有沒有敵人呆滯之類的行動設定....(妄想中)
(↑參考GBA KH:COM 的無心者)
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
棋匿 寫到:終於有敵人的視野範圍了啊( -3-)
這樣就差不多可以拿來做遊戲了~XD
不過不曉得有沒有敵人呆滯之類的行動設定....(妄想中)
(↑參考GBA KH:COM 的無心者)
呆滯是停在原地不走嗎?
改變@move_type再加上自己寫一些新的行動模式函數就能做到
不會很難
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
變數100是針對單一敵人的範圍變數嗎?
還是全域性的@口@
PS(是妄想,請勿實現)
不曉得放技能時,能不能走位呢~(←KH:COM遊戲的引響)
真想讓玩家囧死( -3-)
還是全域性的@口@
PS(是妄想,請勿實現)
不曉得放技能時,能不能走位呢~(←KH:COM遊戲的引響)
真想讓玩家囧死( -3-)
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
請在◆Arpg_Game_Character的347~348行找到
另外放技能本來就可以走位的(我記得我好像沒寫攻擊時停止移動....)
- 代碼:
# 敵人移動模式選擇
p_range = $game_variables[ENEMYRANGE]
- 代碼:
# 敵人移動模式選擇
case enemy.id
when 1 # 敵人ID為1警戒範圍設為5
p_range = 5
when 2 # 敵人ID為2警戒範圍設為10
p_range = 10
else # 除此之外的敵人警戒範圍設為變數[ENEMYRANGE]的值
p_range = $game_variables[ENEMYRANGE]
end
另外放技能本來就可以走位的(我記得我好像沒寫攻擊時停止移動....)
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
我是說類似格鬥遊戲的「衝擊俯衝」之類的走位技能。
例:
這種的...( -3-)
(因為系統會直接無視公用事件的指令,讓我覺得很討厭)
例:
- 代碼:
☆→主角
◎→敵人
□→座標
□□◎□□
□□□□□
□□☆□□
□□□□□
□□□□□
↓
衝擊俯衝之後
↓
□□□□□
□□□□□
□□☆□□
□□□□□
□□◎□□
這種的...( -3-)
(因為系統會直接無視公用事件的指令,讓我覺得很討厭)
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
棋匿 寫到:我是說類似格鬥遊戲的「衝擊俯衝」之類的走位技能。
例:
- 代碼:
☆→主角
◎→敵人
□→座標
□□◎□□
□□□□□
□□☆□□
□□□□□
□□□□□
↓
衝擊俯衝之後
↓
□□□□□
□□□□□
□□☆□□
□□□□□
□□◎□□
這種的...( -3-)
(因為系統會直接無視公用事件的指令,讓我覺得很討厭)
移動的原理寫在◆Arpg_Game_Character的這個片段
- 代碼:
@move_type = @page.move_type
# 如果停止計算數值超過了一定的值(由移動頻率算出)
if @stop_count > (40 - 6 * 2) * (6 - 6)
# 判斷主角在偵查範圍內
if p1_range <= p_range
# 向主角移動
move_toward_player
@move_type = 0
end
end
敵人與主角間的步數小於警戒步數時
move_toward_player
@move_type = 0
move_toward_player就是系統強制令事件接近主角
然後將@move_type = 0,就是讓內建事件勾選的移動模式的行走模式不執行
在這裡你只要將move_toward_player與@move_type = @page.move_type
設法用條件分歧讓他們不執行就能控制其行走
本來這個範例就是以脫離平行事件的精神下去寫,當然有些功能要自行添加的話再用平行事件寫會有許多不便
不過如果了解整個腳本的運作方式其實也不難改
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
不過...我找不到我方攻擊後延遲的段落。( -3-)
想把攻擊後延遲的判斷式加到敵人攻擊回合上。
想把攻擊後延遲的判斷式加到敵人攻擊回合上。
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
在◆Arpg_Game_Battler的
def arpg_attack_effect(attacker,event)
def arpg_skill_effect(user,skill,event)
def arpg_item_effect(item)
這三個函式裡
以def arpg_skill_effect(user,skill,event)舉例
搜尋
a = [$data_animations[ani_id].frame_max * 2 + attack_speed,2].max
a就是算出延遲攻擊的計數值....
整段就是
我是寫[攻擊延遲時間=動畫播放格數*2+攻速],攻速就是這段
attack_speed = Integer(10 - user.agi/999.00*20)
也就是攻擊者速度越快使得attack_speed變成負值,那麼攻擊延遲時間就變短=攻速變快
def arpg_attack_effect(attacker,event)
def arpg_skill_effect(user,skill,event)
def arpg_item_effect(item)
這三個函式裡
以def arpg_skill_effect(user,skill,event)舉例
搜尋
a = [$data_animations[ani_id].frame_max * 2 + attack_speed,2].max
a就是算出延遲攻擊的計數值....
整段就是
- 代碼:
# 攻速計算
attack_speed = Integer(10 - user.agi/999.00*20)
# 寫入動畫與執行延遲
ani_id = skill.animation2_id
if $data_animations[ani_id] != nil
a = [$data_animations[ani_id].frame_max * 2 + attack_speed,2].max
if user.is_a?(Game_Actor)
event.actor_count = a
event.animation_id = ani_id
else
event.delay_count = a
if self.is_a?(Game_Actor)
$game_player.animation_id = ani_id
else
event.animation_id = ani_id
end
end
end
我是寫[攻擊延遲時間=動畫播放格數*2+攻速],攻速就是這段
attack_speed = Integer(10 - user.agi/999.00*20)
也就是攻擊者速度越快使得attack_speed變成負值,那麼攻擊延遲時間就變短=攻速變快
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
敵方攻擊好像直接忽略攻擊後延遲的樣子( -3-)
(agi=50 還是會出現連擊...OTZ)
(agi=50 還是會出現連擊...OTZ)
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
敵人agi=50
attack_speed = Integer(10 - 50/999.00*20)算出來是8
a = [$data_animations[ani_id].frame_max * 2 + attack_speed,2].max
所以你看這個式子$data_animations[ani_id].frame_max * 2(動畫禎數*2)是最核心的
假設你敵人對像方動畫的畫格數是8禎,那
a = [8*2+8]算出來是24也就是等待24禎(相對於事件寫等待12禎)所以時間很短有連擊的錯覺
你可以試著把敵人攻擊對象方動畫禎數調長比如說20,那麼就很明顯的攻擊節奏變慢
attack_speed = Integer(10 - 50/999.00*20)算出來是8
a = [$data_animations[ani_id].frame_max * 2 + attack_speed,2].max
所以你看這個式子$data_animations[ani_id].frame_max * 2(動畫禎數*2)是最核心的
假設你敵人對像方動畫的畫格數是8禎,那
a = [8*2+8]算出來是24也就是等待24禎(相對於事件寫等待12禎)所以時間很短有連擊的錯覺
你可以試著把敵人攻擊對象方動畫禎數調長比如說20,那麼就很明顯的攻擊節奏變慢
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
不過我發覺,
只要在敵人攻擊範圍內,一直靠近敵人就會忽略這串計算式( -3-)
不曉得是不是BUG...
只要在敵人攻擊範圍內,一直靠近敵人就會忽略這串計算式( -3-)
不曉得是不是BUG...
棋匿- 頭戴內褲手拿木劍的瘋癲佬
- 文章數 : 214
注冊日期 : 2008-07-19
回復: ARPG製作小師分享(最近更新:8/12)
我是寫敵人攻擊action後wait多少禎數才能再進行下一次攻擊action
測試過將動畫禎數調大讓敵人黏著打是沒有問題的
測試過將動畫禎數調大讓敵人黏著打是沒有問題的
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
回復: ARPG製作小師分享(最近更新:8/12)
棋匿 寫到:原來要調禎數啊
啊咧....我上上一篇回答就有講了啊
愚零鬥武多- 不正常人類研究中心自慰隊員
- 文章數 : 421
注冊日期 : 2008-04-06
這個論壇的權限:
您 無法 在這個版面回復文章
|
|