fgo刷本腳本


fgo.air
一個基于圖像識別的fgo腳本。
最近回坑了,不知道什么時候開始ios和安卓互通了(指ios可以登錄安卓賬號,反之亦可),所以用安卓模擬器也可以登錄ios的帳號了。airtest支持python語言,所以用他來寫腳本非常方便,使用airtest捕捉模擬器的界面然后再在上面做一些基于圖像識別或者像素點坐標的點擊操作,這就是腳本的原理。
事先須知:
需要下載安卓模擬器(推薦mumu)和Airtest。
本腳本要求寶具三連,第三回合如果沒秒掉敵方會進入補刀程序,補刀規(guī)則是隨機選3張指令卡,所以仍有翻車風險。前兩面不支持補刀,為了防止翻車,請計算好每一面的np和寶具傷害。
本腳本只支持打通關過的日常本,不適合主線/活動主線,幕間等,因為不支持切換關卡。
如果用pc運行模擬器,本腳本運行期間會強制控制鼠標點擊,所以期間你不能用你的電腦做其他事情了。
使用之前先把戰(zhàn)斗倍率調(diào)快,技能使用確認關閉。
下面介紹如何使用我的腳本:
腳本項目的地址如下:https://github.com/SammyXue/fgo.air
拉下代碼后直接用airtest打開這個項目:
打開項目
打開airtest后,選擇菜單-文件-打開腳本

進入游戲選擇關卡
打開模擬器進入游戲,選擇你要打的關卡并且選擇助戰(zhàn)職階。要注意必須從助戰(zhàn)界面開始,并且調(diào)到你需要的助戰(zhàn)從者所在職介界面,因為找不到相應的助戰(zhàn)程序會出錯。默認的助戰(zhàn)是殺狐,所以需要調(diào)到殺階。

選擇游戲畫面
點擊設備窗上的選擇游戲畫面然后選擇相應的模擬器畫面

腳本代碼相關
大概介紹一些腳本中需要頻繁改動的參數(shù)。
start_FGO_process
將腳本編輯窗中的代碼移到最后,找到這一行代碼
start_FGO_process(Daily, 2, Apple.JIN, FriendServant.Koyanskaya)
這個函數(shù)有4個參數(shù),參數(shù)意義分別是:
備戰(zhàn)類型,每回合的技能和寶具使用配置,后續(xù)詳細介紹
打本次數(shù)
體力不足時使用蘋果種類,01234依次表示不用蘋果或使用金銀銅青蘋果
選擇的助戰(zhàn)從者,不填表示默認選擇第一個助戰(zhàn) 現(xiàn)在提供了5個可選助戰(zhàn),
CBA
表示斯卡哈?斯卡蒂Caber
表示阿爾托莉雅·卡斯特Malin
表示梅林Koumei
表示諸葛孔明〔埃爾梅羅Ⅱ世〕Koyanskaya
表示光之高揚斯卡婭
綜上start_FGO_process(Daily, 2, Apple.JIN, FriendServant.Koyanskaya)
的整體含義是,使用Daily備戰(zhàn),打兩次本,體力不足時使用金蘋果,要求助戰(zhàn)是殺狐。各位在使用中,各項參數(shù)可以按需調(diào)整。
備戰(zhàn)類型BattlePlan
每回合的技能,包括從者技能和御主禮裝的技能,和寶具使用配置
找到Daily = BattlePlan()
,表示123回合使用的技能和寶具。
# 90本及以下 摩根1號位 雙殺狐 奧伯龍(4號位)Daily = BattlePlan()
Daily.roundConfig1 = RoundConfig().addSkill(1, 1).addSkill(1, 2, 1).addSkill(2, 3, 1).addSkill(3, 3, 1).addHogu(1)
Daily.roundConfig2 = RoundConfig().addSkill(2, 1, 1).addSkill(3, 1, 1).addHogu(1)
Daily.roundConfig3 = RoundConfig().addSkill(1, 1).addSkill(2, 1).addSkill(2, 2, 1).addMasterSkill(1).addHogu(1)
以Daily.roundConfig1
為例,回合一的操作是:
從者使用的技能是:1號從者使用1技能,1號從者使用2技能對1號從者生效,2號從者使用3技能對1號從者生效,3號從者使用3技能對1號從者生效。
使用御主禮裝:無。
使用寶具:1號從者使用寶具。
說的這么繞是為了盡量貼合程序里面的參數(shù)順序。如果結合實際配置會更容易理解,比如我的配置如下,摩根帶30NP禮裝,雙殺狐奧伯龍換人禮裝:

參考配置
如果你的配置和我一樣,那么整場戰(zhàn)斗的操作邏輯就是
回合一:摩根1,2給自己,雙殺狐貍3技能給摩根,摩根寶具。
回合二:雙殺狐1技能給摩根,御主禮裝order change奧伯倫(4號位)換殺狐(2號位), 摩根寶具。
回合三:摩根1,奧伯倫1,2給摩根,御主禮裝1技能,摩根寶具
注:為什么要在第二回合換人?因為此腳本的操作順序是先角色技能再御主技能,如果不在第二回合換人,第三回合的角色技能會混亂。
以上配置均可以根據(jù)自己box調(diào)整。運行腳本

程序運行結束后還會同時在C:\fgoLog
輸出日志文件

AfterStory
我所使用的系統(tǒng)是win10,模擬器MuMuPlayer-12.0,airtest版本是AirtestIDE-win-1.2.15。因為條件和時間限制沒有再在其他環(huán)境中測試過,可能有不適配等問題。
當然還可以優(yōu)化的地方,之后會隨著游戲進程(如果我不退坑的話),會同步更新腳本。
有任何問題或者疑問,歡迎留言。