玩過電腦游戲的同學對于外掛肯定不陌生,但是你在用外掛的時候有沒有想過如何做一個外掛呢?(當然用外掛不是那么道義哈,呵呵),那我們就來看一下如何用python來制作一個外掛。。。。
我打開了4399小游戲網,點開了一個不知名的游戲,唔,做壽司的,有材料在一邊,客人過來后說出他們的要求,你按照菜單做好端給他便好~ 為啥這么有難度?8種菜單記不清,點點就點錯,鼠標還不好使肌肉勞損啥的傷不起啊……
首先要聲明,這里的游戲外掛的概念,和那些大型網游里的外掛可不同,不能自動打怪,不能喝藥不能躲避GM…… 那做這個外掛有啥用?問的好,沒用,除了可以浪費你一點時間,提高一下編程技術,增加一點點點點點點的做外掛的基礎以外,毫無用處,如果您是以制作一個驚天地泣鬼神不開則已一開立刻超神的外掛為目標過來的話,恐怕要讓您失望了,請及早繞道。我的目的很簡單,就是自動玩這款小游戲而已。
工具的準備
需要安裝autopy和PIL以及pywin32包。autopy是一個自動化操作的python庫,可以模擬一些鼠標、鍵盤事件,還能對屏幕進行訪問,本來我想用win32api來模擬輸入事件的,發現這個用起來比較簡單,最厲害的是它是跨平臺的,請搜索安裝;而PIL那是大名鼎鼎了,Python圖像處理的No.1,下面會說明用它來做什么;pywin32其實不是必須的,但是為了方便(鼠標它在自己動著呢,如何結束它呢),還是建議安裝一下,哦對了,我是在win平臺上做的,外掛大概只有windows用戶需要吧?
截屏和圖像處理工具
截屏是獲取游戲圖像以供分析游戲提示,其實沒有專門的工具直接Print Screen粘貼到圖像處理工具里也可以。我用的是PicPick,相當好用,而且個人用戶是免費的;而圖像處理則是為了獲取各種信息的,我們要用它得到點菜圖像后保存起來,供外掛分析判斷。我用的是PhotoShop… 不要告訴Adobe,其實PicPick中自帶的圖像編輯器也足夠了,只要能查看圖像坐標和剪貼圖片就好餓了,只不過我習慣PS了~
編輯器
這個我就不用說了吧,寫代碼得要個編輯器啊!俺用VIM,您若愿意用寫字板也可以……
原理分析
外掛的歷史啥的我不想說啦,有興趣請谷歌或度娘(注:非技術問題盡可以百度)。
看這個游戲,有8種菜,每種菜都有固定的做法,顧客一旦坐下來,頭頂上就會有一個圖片,看圖片就知道他想要點什么菜,點擊左邊原料區域,然后點擊一下……不知道叫什么,像個竹簡一樣的東西,菜就做完了,然后把做好的食物拖拽到客戶面前就好了。
顧客頭上顯示圖片的位置是固定的,總共也只有四個位置,我們可以逐一分析,而原料的位置也是固定的,每種菜的做法更是清清楚楚,這樣一來我們完全可以判斷,程序可以很好的幫我們做出一份一份的佳肴并奉上,于是錢滾滾的來:)
新聞熱點
疑難解答