利用Python实现FGO自动战斗脚本
Fate/Grand Order(非的肝不過(guò)歐的)作為索尼為了拯救自己不倒閉而開(kāi)發(fā)的面向月廚的騙氪養(yǎng)成抽卡爆肝游戲,居然沒(méi)有像隔壁《陰陽(yáng)師》的自動(dòng)戰(zhàn)斗系統(tǒng)(看看別人現(xiàn)在都自帶腳本了)。畢竟是懶得肝,就不妨寫(xiě)一個(gè)腳本來(lái)肝算了,省時(shí)省力。
開(kāi)始
一個(gè)戰(zhàn)斗腳本,其實(shí)可以算是AI的初步了。雖然只是暴力算出造成最大傷害的方案orz。
我們?cè)谶@里不考慮釋放 技能 、 寶具 和 暴擊星 這三樣非常重要的東西。。。只單純考慮 克制、 抵抗 和不同種類卡打出的傷害,目標(biāo)就就是算出傷害最高的組合。
如果你依然在編程的世界里迷茫,可以加入我們的Python學(xué)習(xí)扣qun:784758214,看看前輩們是如何學(xué)習(xí)的。交流經(jīng)驗(yàn)。從基礎(chǔ)的python腳本到web開(kāi)發(fā)、爬蟲(chóng)、django、數(shù)據(jù)挖掘等,零基礎(chǔ)到項(xiàng)目實(shí)戰(zhàn)的資料都有整理。送給每一位python的小伙伴!分享一些學(xué)習(xí)的方法和需要注意的小細(xì)節(jié),點(diǎn)擊加入我們的 python學(xué)習(xí)者聚集地
指令卡
戰(zhàn)斗界面
要開(kāi)始,我們首先要分析界面的組成。首先下面是一排指令卡,每張指令卡都有卡的種類(黃色框)和“克制”和“抵抗”的標(biāo)記(黃色圈)之類的東西。那我們可以把每張指令卡視為一個(gè) 對(duì)象,然后把它的特點(diǎn)抽象出來(lái)。我們可以知道每張卡都有一個(gè) 坐標(biāo) ,一個(gè) 類型 (綠藍(lán)紅),一種狀態(tài) (無(wú)/克制/抵抗),還有在點(diǎn)按是的 順序 (1/2/3)和 傷害系數(shù) (這個(gè)具體有一張表)。
所以我們可以這樣做:
識(shí)別與匹配
計(jì)算法則
實(shí)現(xiàn)
防封
其實(shí)方法很簡(jiǎn)單,加入隨機(jī)的點(diǎn)按,和不同的間隔(等待時(shí)間)就可以了,點(diǎn)按每張卡有位置的變化,點(diǎn)每張卡之間有變化的間隔,和一些故意的“誤觸”應(yīng)該就沒(méi)問(wèn)題,其實(shí)還可以加上一些長(zhǎng)度不同的滑動(dòng)也是可以的,簡(jiǎn)單來(lái)說(shuō)就是一堆隨機(jī)函數(shù)而已
整合
簡(jiǎn)單來(lái)說(shuō)就是把上面的一堆代碼整合到一起就可以了
開(kāi)始界面
識(shí)別到這個(gè)界面然后點(diǎn)按“Attack”
結(jié)束界面
識(shí)別到“與從者的羈絆”終止腳本
中間就是上面所提到的了。也即是一個(gè)不停的循環(huán),直到“結(jié)束”界面才終止。有什么其他的就到時(shí)候再補(bǔ)充
總結(jié)
以上是生活随笔為你收集整理的利用Python实现FGO自动战斗脚本的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 脱口而出的 “ 感谢的语言 ”
- 下一篇: websocket python爬虫_p