1. 程式人生 > >使用python做王者榮耀掛機刷金幣指令碼!你get到了嗎?

使用python做王者榮耀掛機刷金幣指令碼!你get到了嗎?

原理:

由於每次通過冒險模式都會有金幣,而這個動作十分重複,連影象識別都不需要,可以考慮使用程式代替人工。

簡單的說是重複以下的步驟: 1.介面開啟至挑戰關卡:隕落的廢都 - 魔女回憶 【點選下一步】 2.點選開始闖關 3.進入挑戰介面。【點選右上角-自動-等待挑戰結束】 4.進入挑戰完成介面。【點選螢幕繼續】 5.進入關卡獎勵介面。【點選再次挑戰】 6.再次闖關

我們需要一個程式代替我們手工點點點,可以想到使用安卓sdk裡的adb工具,向手機發送點選命令。

adb shell input tap x y

就是這個命令,如果 在cmd命令列裡執行一下

adb shell input tap 500 500 

就會在手機500,500位置模擬點選一下。

環境準備:

找到這裡

根據你的作業系統下載完了之後解壓

然後配置環境變數:

在Path的最後加上剛剛你解壓出來的目錄,D:\platform-tools 是我剛剛解壓的目錄。與前面的字串要用英文的分號;隔開

程式碼:

開啟IDE貼上以下程式碼:

# -*- coding: utf-8 -*-
import os
from time import sleep
repeat_times = 600
def tap_screen(x, y):
    os.system('adb shell input tap {} {}'.format(x, y))
if __name__ == '__main__':
    for i in range(repeat_times):
        if(i > 0):
            tap_screen(2489, 1307)  # 再次挑戰
            print("再次挑戰開始")
            sleep(5)
        tap_screen(2155, 1218)#闖關
        print("開始闖關")
        sleep(12)
        tap_screen(2764, 53)#自動
        print("自動按鈕點選")
        sleep(50)
        tap_screen(500,500)#點選螢幕繼續
        print("點選螢幕繼續")
        sleep(5)
        tap_screen(2489, 1307)  # 再次挑戰
        sleep(1)
        print(i)

os.system 的效果就和你在cmd裡執行命令一樣 由於現在奇怪比例的手機層出不窮,我自己用的18.5:9的三星S8,所以把所有座標都寫死了,可以根據自己手機修改上面的各種座標及休眠時間。在手機的開發者模式裡開啟顯示指標位置,就會顯示你當前觸控的區域的座標

ok到這裡文章就結束了,關注公眾號“Python學習聚集地”觀看更多Python乾貨文章以及免費學習資源!

需要文章adb和詳細的教學視訊的,同樣關注公眾號回覆“adb”即可免費獲得!