更新時間:2018年01月10日13時17分 來源:傳智播客 瀏覽次數(shù):
項目來源:https://github.com/wangshub/wechat_jump_game
2017 年 12 月 28 日下午,微信發(fā)布了 6.6.1 版本,加入了「小游戲」功能,并提供了官方 DEMO「跳一跳」。今天我們就試試用Python來玩跳一跳。
游戲模式
這是一個 2.5D 插畫風格的益智游戲,玩家可以通過按壓屏幕時間的長短來控制這個「小人」跳躍的距離。可能剛開始上手的時候,因為時間距離之間的關系把握不恰當,只能跳出幾個就掉到了臺子下面。 玩法類似于《flappy bird》
如果能精確測量出起始和目標點之間測距離,就可以估計按壓的時間來精確跳躍。
注意:能刷到多少分全憑良心,不要把分數(shù)刷太高,容易沒朋友的……
工具介紹
Python 2.7或3.6
Android 手機
Adb 驅動
一系列Python相關的庫
原理說明
將手機點擊到《跳一跳》小程序界面;
用Adb 工具獲取當前手機截圖,并用adb將截圖pull上來
adb shell screencap -p /sdcard/1.png
adb pull /sdcard/1.png .
用matplot顯示截圖;
用鼠標點擊起始點和目標位置,計算像素距離;
根據(jù)像素距離,計算按壓時間;
用Adb工具點擊屏幕蓄力一跳;
adb shell input swipe x y x y time
考慮到大多數(shù)的童鞋都是Windows電腦,下面介紹Windows環(huán)境下的操作指南
1. 安裝adb驅動(搞Android開發(fā)的童鞋請忽略)
下載地址:https://adb.clockworkmod.com/
2. 配置adb的環(huán)境變量
將adb驅動的安裝目錄(adb.exe所在全路徑)復制并加入到系統(tǒng)環(huán)境變量Path中,確保在cmd中可以直接運行adb命令即可
3. 安裝Python2.7或者3.6,自行決定
下載地址:https://www.python.org/downloads/windows/
4. 配置Python環(huán)境變量
同第二步一樣,將Python的安裝目錄復制并加入到系統(tǒng)環(huán)境變量Path中,確保在cmd中可以直接運行python命令即可
5. 安裝pip并配置環(huán)境變量
下載地址:https://pypi.python.org/pypi/pip#downloads
對于第4步和第5步不清楚的,請點擊這里 https://www.cnblogs.com/yuanzm/p/4089856.html
6. 安裝依賴的庫文件
cmd中 運行一下命令即可
pip install -r requirements.txt
步驟
安卓手機打開USB調試,設置》開發(fā)者選項》USB調試
電腦與手機USB線連接,確保執(zhí)行adb devices可以找到設備id
界面轉至微信跳一跳游戲,點擊開始游戲
運行python wechat_junp_auto.py,如果手機界面顯示USB授權,請點擊確認
實驗結果:
TODO
可以對拉上來的圖片進行顏色分割,識別小人和目標中心店,這樣就不需要手動點擊自動彈跳。
事實證明,AI 比人更會玩兒游戲。