一、前言
大家好,我是 Jack ,
「王者榮耀」想必大家就算沒有玩過,也都聽過,
騰訊 AI Lab 開發的策略協作型“絕悟”,最強 AI 分分教你做人,
但那個是像 Alpha Go 一樣,需要掌握海量資料和機器的團隊,才能玩得起的,
今天,就給大家帶來一個「平民版」,咱們都能玩的王者榮耀AI,
先睹為快:
用自己訓練的AI玩王者榮耀是什么體驗?
視頻兩倍速播放,只訓練了一個「后裔」英雄,如果想用其他英雄,可以自己訓練,
今天繼續手把手教學,你準備好了嗎?
二、實作原理
為了讓我們的代碼能夠控制手機的「王者榮耀」,我們需要實作在電腦上操控手機,
需要用到什么呢?scrcpy 和 minitouch,
scrcpy 可以將安卓手機的畫面投屏到電腦桌面顯示上并進行操控,
簡單地說,就是可以讓你在電腦上控制手機!它支持滑鼠控制、鍵盤輸入、電腦剪切板復制粘貼、拖放檔案傳輸到手機、以及拖放 APK 檔案進行安裝,
使用 scrcpy 你無需 ROOT 手機,也不需在手機上安裝 APP,只需在系統設定里啟用“USB除錯”( adb 除錯) 即可,
minitouch 提供了一個 socket 介面用在 Android 設備上的多點觸摸事件以及手勢,也是無需 ROOT 手機,
用 scrcpy 獲取游戲畫面,獲取 scrcpy 的句柄,然后截圖,根據圖片生成操作指令,然后利用 minitouch 高效的執行這些操作指令,
所以關鍵在于,如何根據圖片生成操作指令,
沒錯,用 Transformer,
上兩天火的 DALL·E 都見到了吧?OpenAI 最新發布的,它可以魔法一般按照自然語言文字描述直接生成對應圖片!
比如輸入文本:鱷梨形狀的扶手椅,
AI 生成的影像:

這生產效果真是堪稱神奇!自然語言與視覺的壁壘正在被逐漸打通,

反過來,圖片生成描述,更簡單了,這樣的作業幾年前就用了,
使用Transformer,根據游戲影像,生成當前畫面的操作描述,

比如前進、攻擊、釋放技能,
三、演算法測驗
首先你得有個能跑 Transformer 的顯卡,安裝需要的第三方庫,例如 pyminitouch、pytorch 等,
然后安裝 scrcpy,這個安裝教程很多,百度一搜一大把,將所有東西放在與下載的代碼同級目錄下,

下載訓練好的模型檔案,
還是老規矩,我將代碼和模型打包了,方便大家直接下載(提取碼:jack),
https://pan.baidu.com/s/1u9zy04L8kvPwyElD0XvpAQ
需要注意的是,不同手機的 minitouch 配置可能有所不同,代碼的測驗機器解析度是 1080*2160,這里需要根據自己的情況進行修改,
配置好環境后,就可以運行代碼了,
運行檔案“啟動和結束行程.py”,啟動scrcpy,把“訓練資料截取_A.py” 中的兩項改成你的設備:

啟動王者榮耀進入 5v5 人機對戰后,運行 “訓練資料截取_A.py” 即可,
趕快自己體驗一波吧!訓練一個你最愛的英雄!
專案地址:https://github.com/FengQuanLi/ResnetGPT
四、最后
這個專案的代碼,有些凌亂,還有硬核的中文變數,
演算法性能有待提高,目前打打人機還行,
后面有時間,我會做整理和升級,在這個基礎上改進版本,看情況吧~
祝大家周末玩的開心,我是 Jack ,我們下期見,
文章持續更新,可以微信公眾號搜索【JackCui-AI】第一時間閱讀,本文 GitHub https://github.com/Jack-Cherish/PythonPark 已經收錄,有大廠面試完整考點,歡迎 Star,
CSDN認證博客專家
演算法工程師
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/246621.html
標籤:其他
下一篇:unity:練習小測驗
