游戏脚本开发实战
隨著現(xiàn)在游戲越來越多,游戲腳本也越來越多。腳本和外掛是有區(qū)別的。
外掛:通過對(duì)內(nèi)存有讀或?qū)懖僮?#xff0c;以實(shí)現(xiàn)自動(dòng)掛機(jī),違反法律(破壞計(jì)算機(jī)信息系統(tǒng)罪)。
腳本:通過對(duì)圖色的識(shí)別,模擬人手對(duì)鼠標(biāo)或鍵盤進(jìn)行操作,不違法(個(gè)人淺薄的理解),僅違反游戲條約。
那游戲腳本如何開發(fā),下面以我曾經(jīng)做過的夢(mèng)幻西游互通版挖圖腳本(之后統(tǒng)一叫做腳本)舉例子。
首先,要有一個(gè)明確的思路,要明確自己要做什么,并且把事情拆分為幾步。
比如我的腳本為例,我要分為三個(gè)部分:
第一步,找到倉(cāng)庫(kù)管理員存儲(chǔ)物品
第二步,讀取倉(cāng)庫(kù)全部寶圖坐標(biāo),并分組緩存
第三步,按照分組取寶圖,并按照xy坐標(biāo)進(jìn)行排序
第四步,準(zhǔn)備開始挖寶
第五步,挖寶操作
然后繼續(xù)細(xì)化,并給出解決方案。
比如第一步操作“找到倉(cāng)庫(kù)管理員存儲(chǔ)物品”細(xì)化為以下步驟:
1、打開背包
2、判斷背包是否打開
3、根據(jù)圖色尋找飛行服
4、選擇并使用飛行服
5、判斷飛行服是否打開
6、點(diǎn)擊西梁女國(guó)
7、判斷是否到達(dá)西梁女國(guó)
8、點(diǎn)擊倉(cāng)庫(kù)管理員
9、判斷對(duì)話框是否打開
10、點(diǎn)擊打開倉(cāng)庫(kù)
11、翻頁到最后一頁
12、判斷背包是否有物品
13、遍歷背包物品并存入倉(cāng)庫(kù)
第二步,讀取倉(cāng)庫(kù)全部寶圖坐標(biāo),并分組緩存,細(xì)化為:
1、回到第一頁
2、根據(jù)圖色尋找當(dāng)前頁寶圖位置
3、點(diǎn)擊寶圖位置
4、判斷是否彈出寶圖信息
5、識(shí)別寶圖信息,并分組保存
6、判斷是否有下一頁
..........
之后,封裝通用方法。
如:打開背包、判斷背包是否打開封裝為一個(gè)方法
判斷倉(cāng)庫(kù)是否存在上一頁封裝為方法等等
排序封裝為方法
接下來,按照細(xì)化出來的邏輯進(jìn)行coding
能通用的盡量通用,不然同一段代碼會(huì)寫無數(shù)次,修改的時(shí)候很難受。
最后,就是最漫長(zhǎng)的調(diào)試過程
調(diào)試過程十分漫長(zhǎng),開發(fā)時(shí)間大概是10%,調(diào)試時(shí)間查缺補(bǔ)漏占用90%,做好這個(gè)心理準(zhǔn)備,還會(huì)發(fā)生各種偶發(fā)事件,輕輕松松被虐到心累。
之后是我開發(fā)的腳本源碼,各位有需要的可以直接伸手拿走,不用修改直接可以用:
https://github.com/forleoshare/auto_use_treasure_map
總結(jié)
- 上一篇: 【2022年更新】手把手教你去除 Win
- 下一篇: 如何在官网下载scala