以下照出現順序講解
環境設置
BF_TOP、BF_SIDE、BF_BOTTOM
設定戰鬥場地的頂部、左右寬以及底部
注意BF_SIDE並不是整個寬度,所以實際上場地寬要乘以2
ENABLE_DP
決定擊飛判定採用 HP 制還是 DP 制
預設是false,也就是 HP 制。想用另一種就改 true
兩邊算法不一樣,不過因為我沒用過DP制所以也不懂差別在哪
GUARD_SE
護罩防禦成功時的音效檔名,當然是抓 Audio/SE 的檔案
PPP
擊飛的基準位移量,
總之...經過複雜的傷害計算再除以這個值就是擊飛程度...
值越高越不容易飛
cnt
突然變方法了,估計是為了讓這個值因角色而異
這是詠唱時間,詠唱時每禎會扣除這個值,預設是self.dex,即看角色的熟練
可以依喜好設成 self.agi(看角色速度)、self.str(看角色力量) 或是乾脆寫個定值
spr
這系統戰鬥中SP是會自動恢復的,這個就是設定角色SP恢復量
公式為 spr / 10000
同上,可以設成 self.int(看角色智力) 神馬的
epc
操作魔招點的速度,值越高魔招點的移動速度越快
DOUBLE_TRIGGER_DURATION
連按兩次的反應時間,用在衝刺等操作
值越低會越不容易使出,但設太高容易暴發
個人覺得受理時間在0.4秒左右即可,預設算是有點高(25/40 ≒ 0.6秒)
FRAMES_PER_TURN
多少禎前進一回合,不過這系統會無視戰鬥事件(估計還沒做好),所以沒什麼用
CAM_ON_HANDLE
額,這是我自己追加的常量。能設定鏡頭要不要跟著操縱者
如果跟隨的話,除非在板邊不然鏡頭會讓操縱角色維持在正中央
不跟隨鏡頭會將所有存活成員納入畫面,比較好掌握狀況(但會受放大率限制)
視專案性質決定要不要啟動跟隨
ATK_FRAMERESET
這也是追加的
原本每次攻擊運算都會調用 Graphics.frame_reset 防止跳禎
但是頻繁的調用 Graphics.frame_reset 會導致運行速度變慢
目前預設仍會調用,如果專案中高段數攻擊出現得很頻繁可以考慮關閉
(不過會變慢有一半原因是描繪 UI 的關係)
按鍵設定
如果做到這還不懂那些Input::A、B、C是什麼意思請在遊戲中按F1
BATTLE_END_TRANSITION
戰鬥結束時的漸變圖形檔名,位在Graphics/Transitions
BURST_SMASH_ENABLE、METEOR_SMASH_ENABLE、METEOR_SMASH_DAMAGE
接觸到場地邊緣時會不會自動回到場中央
值為true表示會歸位,並依據 METEOR_SMASH_DAMAGE 的設定扣血
DISAPPEAR_DURATION、METEOR_ANIMATION_ID、RETURN_ANIMATION_ID
歸位時的 motion 時間、歸位發生的動畫ID、回到場中央的動畫ID
SP_RECOVERY_FREQUENCY
幾禎觸發一次SP自然恢復
XCAM_DISTANCE_MIN、XCAM_DISTANCE_MAX
鏡頭縮放程度,
前者設定鏡頭最近時的放大率,後者為最遠時的放大率,註解有寫基準和極限值
鏡頭不跟隨角色時,這設定才有用
do_crashing_shake
角色「撞到」場地左右端、以及頂部時會觸發的方法
可設定震動程度和音效
這和上面的歸位判定是不同的,不要搞混
場地設置
看到FullCBS part-5 (Reflex)最後的setup_battle_field_blocks
這方法能設定戰鬥場地的阻擋塊和平台
可以看到預設已經有一個(-896,0,1792,384)的阻擋塊,所以不用每張圖都設定
注意至少要有一塊 y 的部分 >=0,
不然角色會因為沒有立足點反覆掉下去再歸位
還有別忘記場中央的 x 是0
如果想要自訂場地區塊,就在下方的分歧新增 (條件為戰鬥背景名稱)
並在一開始用 @field_blocks.clear 清除預設區塊
顯示判定塊
好,新增了攻擊、受擊及場地區塊後要怎麼確認判定塊大小呢?
總不能憑感覺設完就好了唄?
請到FullCBS part-8 (RECTLINE WINDOW) 把 ENABLE_RECTLINE_WINDOW 設為 true
這樣一來就能看到判定塊了(不過處理會重很多)
記得查看判定的同時要把先前提到的
XCAM_DISTANCE_MIN 和 XCAM_DISTANCE_MAX 設為基準值185
不然會因為圖像縮放的影響讓描繪判定有誤差
下回講解老外版新增的狀態機制