原來微信《跳一跳》也可以用Python玩~

微信更新的 6.6.1 版本突然也開放了小游戲,微信啟動頁面還重點推薦了小游戲「跳一跳」。

跳一跳

玩家需要「按住」屏幕選定跳躍力度,按住時間越長,小人會跳得越遠。而且,每個跳板間的間距并非是固定的。這使得這款游戲成為「看上去簡單,精通卻很難」。

在這里還是要推薦下我自己建的Python開發學習群:628979297,群里都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,今天分享的這個案例已經上傳到群文件,大家都是軟件開發黨,不定期分享干貨(只有Python軟件開發相關的),包括我自己整理的一份2018最新的Python進階資料和高級開發教程,歡迎進階中和進想深入Python的小伙伴

個人排行榜

而且提供排行榜功能,看著排行榜的排名,你是不是有扎心的“煩躁”感……

然而這個世界永遠不缺少腦洞大開的人,有人竟然用Python寫了個腳本,而且獲得了3500多分。

排行榜

恰恰剛開始學習Python,基礎知識剛學完,本著研究的目的,今天下載看看到底Python是如何造就這份神奇~

根據作者描述:

利用的工具:Python 2.7、Adb 驅動、Matplot繪圖庫。(注:經測試Python3.6也可以正常運行)

另外從程序中好像是用的 PIL標準圖像庫,沒有用Matplot,不知是不是一個庫,回頭再研究。

from PIL import Image, ImageDraw

運行原理:

1.將手機點擊到《跳一跳》小程序界面;

2.用Adb 工具獲取當前手機截圖,并用adb將截圖pull上來。

adb shell screencap -p /sdcard/1.png

adb pull /sdcard/1.png .

3.用matplot顯示截圖;

4.用鼠標點擊起始點和目標位置,計算像素距離;

5.根據像素距離,計算按壓時間;

6.用Adb工具點擊屏幕蓄力一跳;

adb shell input swipe x y x y time

下面來根據前面學習的基礎知識分析一下代碼,main部分有一個while循環,只要你不終止它一直重復操作。

Main部分代碼

里面主要調用的自定義函數主要有三個,還有一個time.sleep是為了延遲一下:

pull_screenshot() #獲取圖像

find_piece_and_board(im) #根據圖像獲取兩個點的坐標值

jump(math.sqrt((board_x - piece_x) ** 2 + (board_y - piece_y) ** 2))#根據兩點距離和手機像素計算按壓時間并JUMP

1.pull_screenshot()函數主要是利用adb來獲取圖像。這里順便說一下“adb”,adb是連接Android手機與PC端的橋梁,可以讓用戶在電腦上對手機進行全面的操作,借助adb工具,我們可以管理設備,還可以進行如安裝軟件、系統升級、運行shell命令等等操作。如“pull”就是獲取設備中的文件,想更多了解ADB請自行學習~

pull_screenshot()

2.find_piece_and_board(),根據圖像獲取當前小人位置和落點的坐標系(piece_x, piece_y, board_x, board_y),這個是這個腳本中的核心部分。

find_piece_and_board(im)

3. jump根據設定的“長按的時間系數”計算需要的按壓時間,其實這個系數應該根據手機分辨率推出來的,按壓時間設定不小于200ms,核心命令是adb的“input swipe”。“input swipe”模擬的是手指在屏幕上的滑動事件,如果兩個點坐標不變化就成了長按了。

代碼中四個變量的設置是:“swipe_x1, swipe_y1, swipe_x2, swipe_y2 = 320, 410, 320, 410”,所以是模擬的長按,其實滑動也是可以的,后面給大家分享一個闖關技巧。

jump

實際應用(安卓手機):

1.首先請將手機的usb調試模式打開,設置》更多設置》開發者選項》USB調試,如果出現運行腳本后小人不跳的情況,請檢查是否有打開“USB調試(安全模式)”,記得順便打開USB模擬點擊

2.安裝ADB驅動和ADB。

如果你系統是WIn10或Win8可能需要先設置一下“禁用強制驅動程序簽名”。

禁用驅動程序強制簽名

不然會出現下面的“文件的哈希值不在指定目錄中”安裝不上adb驅動的問題,網上有教程請自行學習。

哈希值驅動不能安裝問題

3.設置adb路徑到系統默認路徑,或者直接將下載的腳本放置到adb文件件下,為了便于運行我把下載的腳本名改為了“jump.py”。

4.進入CMD模式,運行“python jump.py”(需要進入保存腳本的目錄)

運行時輸出結果

5.曬一下戰績,沒敢繼續,怕好友拿“磚頭”砸我~

個人排行榜

“跳一跳”得分秘籍:

游戲的目的是娛樂,正如學習的目的是為了獲得技能,考試得高分那是順便為之,既然為了游戲還是本著娛樂的心態用正常手段去玩,下面附上“跳一跳”得分秘籍:

游戲常規得分方法是跳中靶心的+3分,跳到環靶和靶心之間+2分,跳到環靶之外且在方塊之上的+1分,連續跳中靶心的,第1次+2分,第2次+4分,第3次+6分,依次類推,中斷的話會重新計算得分。

里面還暗藏了許多得分點,比如跳到“污水井蓋停留2秒左右,加 5 分,“魔方”加 10 分,“士多店”停加 15 分,“音樂播放器”加 30 分,記得這幾個都是要停留幾秒。

點擊左上角的數字,可以讓小人小步向前移動,方便微調位置,選擇跟更適合的起跳點。

音樂播放器加30分

最后放大招,其實你模擬滑動可以更好的控制時間,就是從小人落腳點滑到下一個落點靶心位置,相信這些技巧可以讓你在朋友圈曬一曬了。

關注我,帶給您更多有趣有意義的信息~

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,578評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,701評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,691評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,974評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,694評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,026評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,015評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,193評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,719評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,442評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,668評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,151評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,846評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,255評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,592評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,394評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容