拿去!助你贏得百萬大獎的Python代碼已上線
科技時代,我們更加懷念溫暖邂逅的時光
全文共2661字,預計閱讀時長3分鐘
話說這2018年,一開始就很不平凡。
第一周,王思聰張一鳴周鴻禕奉佑生這幾個業內響噹噹的名號就紛紛和「撒幣」扯上關係,爭做撒幣(sa?sha?傻傻分不清楚)。他們一起撒幣還互相不服氣,在朋友圈還互「懟」。
讀芯君不得不感慨一句:
當然還有更高級的作弊技巧——使用AI。
所謂「魔高一尺道高一丈」——你們儘管出遊戲,用Python做不出外掛算我輸!
AI幫你在「撒幣大戰」中取勝
王小川發布作弊神器
這一助手的發布也引的周鴻禕不滿:「我們撒幣,你們作弊,太流氓了!」
大神分享python代碼
網上的大神發布了python外掛代碼,程序員們還可以這樣玩(以下內容引用自:@李釗同學SHTU 發布的《程序員如何玩轉「沖頂大會」?》):
首先用WDA來獲取屏幕截圖。WDA 本是 Facebook 開發的一套 iOS 測試框架,前幾天看見大家都用來做微信「跳一跳」的外掛,便特意去了解了一下,發現也能用在沖頂大會上。
之後 crop 出題目所在的位置(可能需要適配手機屏幕),然後調用開放的 OCR 介面讀取出文字文本,最後調用搜索引擎,就可以達到之前 gif 圖的效果。這套環境是 iOS + Mac,如果是安卓應該有更方便的方法。
其實最初的想法是希望搜索+選擇答案全部自動化完成的,思路是 OCR 題目和候選答案,組成三個組合扔到搜索引擎里搜索,然後哪個組合的結果出現次數最多就選擇哪個。
試了幾個問題後發現並不是這樣,比如上面圖片的「駱駝的駝峰是存儲什麼的?」,可能多數人都會認為是水,因此出現的次數最多,其實是錯誤答案。
最後還有兩個痛點:
1. 免費 OCR 介面調用次數有限,所以不能一直去截屏識別,只能等題目出現時運行程序。
2. 官方也很套路,有的問題是沒法搜索的。比如這種:
附上代碼,不知大家有沒有更好的想法:
# python3
import wda
import io
import urllib.parse
import webbrowser
import requests
import time
import base64
from PIL import Image
c = wda.Client()
# 百度OCR API
api_key = ""
api_secret = ""
token = ""
while True:
time.sleep(0.5)
c.screenshot("1.png")
im = Image.open("./1.png")
region = im.crop((75, 315, 1167, 789)) # iPhone 7P
imgByteArr = io.BytesIO()
region.save(imgByteArr, format="PNG")
image_data = imgByteArr.getvalue()
base64_data = base64.b64encode(image_data)
r = requests.post("https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic",
params={"access_token": token}, data={"image": base64_data})
result = ""
for i in r.json()["words_result"]:
result += i["words"]
webbrowser.open("https://baidu.com/s?wd="+result)
break
代碼來源:https://livc.io/blog/204
看到這裡,讀芯君只想說:
AI與外掛,這個可以有?
生活中總是有許多這樣的困境,當你在面對一個陌生的遊戲環境不知所措時,AI外掛恰到好處地在暗處探出了頭,像一道光。
起初,只是簡單的記錄和分析。記牌器、勝率分析、概率表、提示,並沒有什麼大問題。
而在加入了分析計算和海量的大數據之後,事情開始起了變化——玩都玩了,乾脆把數據記下來吧——記都記了,乾脆所有玩家的數據分析一下吧——分析都做了,乾脆給你個最優解吧——最優解都有了,乾脆幫你操作吧——然後呢?
然後就沒有然後了。
大部分遊戲其實就是一個解決問題的過程,而AI最擅長的就是解決問題。
如果說遊戲總喜歡遊走在科技發展的最前沿,那麼外掛,也偏愛駐足在遊戲發展的最前沿,它的發展早已越來越科技向:從早期直接修改遊戲數據,到現在模擬操作、替代決策等。有興趣的同學不妨去看看目前主流遊戲的付費外掛,已經發展到了什麼水平。
在《魔獸世界》中,輔助工具已經高度模塊化,並且實現了獨立開發:
如果你要練級:載入PVE戰鬥模塊、任務模塊和地圖尋路模塊。人物會自動做任務練級。
如果你要打戰場:載入PVP戰鬥模塊、戰場模塊。人物會自動打戰場,甚至還可預設戰場的戰術細節。
如果你要經商:載入採集模塊、拍賣行模塊。設置好相應的細節,角色就會自動採集,做買賣。
甚至可以選擇性載入。比如僅僅開啟自動戰鬥,在戰場裏手動走路和選擇進攻點。
傳統的遊戲應用把大問題拆分成了許多小問題,並試圖解決。
我要玩得爽如何玩的爽我要升級如何快速升級如何出裝備如何打怪如何華麗出招如何選擇策略
外掛是把所有問題十分功利地歸結成了一個大問題。
我要玩得爽我要贏
然後再「我要贏」的基礎上,後續的反應是:
如何輕鬆地贏用外掛何種外掛最高級最厲害用AI製作的外掛
讀芯君開扒
前有「跳一跳」AI外掛,今有「答一答」AI外掛。看來在Python大神的眼裡,似乎一切沒有Python解決不了的問題,如果有,那一定是你的技術不夠強。
儘管目前github上已經出現了python刷分代碼,然而這種外掛對於絕大部分人而言並不具有可操作性。在讀芯君的朋友圈裡,跳一跳的「榜單」包括:
用代碼外掛達成幾千分的程序員;
天道酬勤持之以恆刷到幾百分的閑人;
只能打到幾十分在朋友面前抬不起頭的手殘黨。
所以,比起AI外掛,對於普羅大眾來說,更容易參與的是AI遊戲本身。事實上今天的AI與遊戲的結合已經越來越緊密了,這種緊密性不僅僅體現在遊戲攻略當中,還頻頻表現在「花樣繁多」的AI遊戲中。比如去年,為了幫助人們更好地理解人工智慧,Google 提供了一個非常簡單而且有趣的方式:AI Experiments Program(AI 實驗項目),或者可以稱為AI遊戲項目,其目的是展示人工智慧的創造力。例如,在 AI Duet 中,當用戶演奏樂曲時,鋼琴能自動和聲;在 Bird Sounds 中,人工智慧試圖對數千種鳥類叫聲進行分類,並作成一張信息圖。而在這個 AI 實驗項目中,真正的贏家是 Google 的神經網路。
留言 點贊 發個朋友圈
我們一起探討AI落地的最後一公里
作者:二岳初
參考文獻:
如需轉載,請後台留言,遵守轉載規範
TAG:Python |