關於游戲腳本的編寫思路


涉及到的技術點:

  1. 圖色/文字識別
  2. 鍵盤/鼠標操作
  3. 多線程技術
  4. 前台/后台(綁定)技術

 

一、圖色/文字識別

圖色:預先設定要找的圖色,然后在指定的區域內尋找,返回對應的坐標

文字:預先設定好文字的點陣,然后用ocr技術,在區域內尋找,返回對應的點陣綁定的文字

ps:尋找需要一個時間過程,我們可以給尋找的函數添加一個循環查找並設置超時時間。

二、鍵鼠操作

模擬鍵鼠的操作

三、多線程技術

可以同時執行不同的任務,並且數據互通。

對於同一個窗口而言,一般最多只能同時進行一個操作,所以多線程是建立在不影響正常的操作的前提上,

比如自動打怪,需要一個線程去判斷自身血量並自動加血,一個線程去尋找怪物,一個線程去監聽尋找怪物線程的結果,去執行走位和打怪等。如果是單線程,也可以做到,但是效率上面會大打折扣。分線程是為了解決可以並行的業務的執行。

另外,多線程還可以解決一個異常的問題:

比如我們的腳本在按順序的執行過程中,假設遇到一些預想不到的情況,腳本的進程卡在某個環境,那么我們有2個做法:

1、在主線程每個可能異常的環境,增加各種異常判斷和處理,保障腳本可以繼續運行下去

2、在主線程並不考慮各種異常,統一交給異常線程去處理,異常線程捕捉到異常后,先暫停或停止主線程(如有必要),然后處理異常,再啟動主線程繼續執行

好處代碼比較優雅,可維護性和開發效率都會比較大的提升。

 

四、前后/后台技術

有前台與后台之分,如果是后台,不影響前台工作,並且可以多開多個鼠標同時操作,但是需要先綁定窗口。綁定后,所有的界面操作和坐標,都是基於綁定的窗口而言

三、

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM