嘗試在電腦端使用偵錯模式修改手機遊戲的參數達到外掛效果

來源:互聯網
上載者:User

標籤:

本文主要內容:如何通過使用電腦端的chrome,修改手機端網頁遊戲的運行參數,達到開掛(或者讓程式自動玩遊戲)的效果

附件:http://files.cnblogs.com/files/oushihua/xunwei_project.rar

按照下面的順序來介紹

實現原理
電腦端網頁如何匯入自己寫的js檔案
嘗試在電腦端修改參數實現開掛效果
如何使用電腦端的chrome調試手機端網頁
嘗試在電腦端修改參數實現手機端的開掛效果

 

實現原理

網頁遊戲無論是在手機端還是電腦端,都是基於 HTML 和 Javascript 來實現互動效果的,遊戲裡人物的屬性,或者頁面上的點擊效果等都是通過 js 代碼來實現的,只要想辦法在遊戲開啟的狀態下修改其 js 代碼裡的某些參數,就能達到開掛的效果,甚至可以編寫自己的 js 代碼來操作網頁元素,來達到讓程式自動玩遊戲的效果。
在 chrome 裡可以按 F12 開啟 javascript控制台,在控制台的 Console 視窗可以執行自己編寫的 js 代碼來操作網頁元素。

 

電腦端網頁如何匯入自己寫的js檔案

由於需要自己編寫 js 代碼修改或者操作遊戲的參數或者頁面元素,所以需要讓網頁載入自己編寫的 js 代碼。
下面嘗試一下
在 D 盤建立 1.html 檔案,內容如下

<html>    <head>        <meta charset="UTF-8">        <title>嘗試使用外部js代碼來修改網頁內容</title>    </head>    <body>        <p>Text 1</p>        <p>Text 2</p>        <p>Text 3</p>    </body></html> 

 在 chrome 中開啟,並開啟 javascript控制台

在 D 盤建立 1.js 檔案,內容如下

function ale(str){    alert(str);} 

 因為有些網頁遊戲不是用 jquery 來實現的,下面嘗試載入 jquery 和自己編寫的 js 檔案

在 Console 裡粘貼下面全部代碼

var h=document.getElementsByTagName("head")[0];var s=document.createElement("script");s.src="jquery-1.8.0.js";h.appendChild(s);var s=document.createElement("script");s.src="1.js";h.appendChild(s);

若沒有下載 jquery-1.8.0,那上面的第三行可以修改為

s.src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"

 推薦下載到電腦裡

在 Console 裡輸入 $("p") 測試一下 jquery 是否成功載入(輸出三個 p 元素說明成功)
輸入 ale("成功載入1.js") 測試是否成功載入 1.js (有彈框說明成功)

註:後面的教程裡都是直接在控制台輸入 js 代碼來達到目的的,當遊戲並不那麼容易修改的的時候我們可能需要編寫大量的 js 代碼,那最好還是放在一個 js 檔案裡來載入到網頁會更好

 

嘗試在電腦端修改參數實現開掛效果

為了看到效果,我對“妹裡尋味”這個遊戲下手了,遊戲畫面如下,附件裡有離線版的遊戲檔案,在瀏覽器可以直接運行看到效果

先在 chrome 裡開啟 xunwei.html,按 F12 開啟 javascript控制台,點擊 出發 -> 開始遊戲,可以看到倒計時是60秒。

1、先試一下修改遊戲時間

選擇控制台的 Sources

選中 main.min.js

能看到右邊視窗的代碼裡標記著遊戲時間的變數 allTime

先重新整理網頁,然後在控制台的 Console 裡輸入 _config.color.allTime=600 然後斷行符號

這時候再按 出發 -> 開始遊戲 就會發現遊戲時間變成了600秒


2、嘗試編寫自動玩遊戲的代碼

在下面的頁面右擊“味”字選擇“審查元素“

看 HTML 結構

初步猜想是包含著”味“字的 span 被點擊後就會跳到下一關,在 Console 裡編寫下面的代碼(預設 jquery 是已經被載入的,若沒載入,參考上面的載入方法)

這時候發現跳到下一關了

然後編寫下面的代碼實現自動玩遊戲

setInterval(function(){$("#box span:contains(‘味‘):last").click();}, 1000)

 運行發現遊戲已經能自動玩了,每一秒鐘玩一關

 

如何使用電腦端的chrome調試手機端網頁

準備工具:

  • UC瀏覽器開發版,安裝到手機
  • adb_tool.zip,裡麵包含 adb.ext 和 AdbWinApi.DLL 檔案,把它們都放到 C:/Windows/System32 和 C:/Windows/SysWOW64 檔案夾裡

操作步驟:

  • 在 cmd 裡運行 adb version,如果有版本資訊說明安裝成功,如 Android Debug Bridge version 1.0.26
  • 開啟手機的 USB調試,手機用 USB 連上電腦
  • 在 cmd 輸入 adb forward tcp:9998 tcp:9998,如果提示 adb server is out of date. killing... * daemon started successfully * 說明操作成功,如果不成功試多幾次
  • 手機開啟 允許USB調試
  • UC瀏覽器開啟想調試的網頁,也就是 xunwei.html
  • 在手機的 設定 -> 關於手機 -> 找到手機的IP地址,如 192.10.10.10,然後在電腦的 chrome 地址欄輸入 192.10.10.10:9998
  • UC瀏覽器會提示是否允許調試,點擊允許,這時候 chrome 會顯示手機開啟的所有頁面,選擇需要調試的頁面就可以在電腦端調試了,滑鼠在頁面選中某元素,UC裡會有選中的反應


嘗試在電腦端修改參數實現手機端的開掛效果

先用 UC 開啟 xunwei.html,然後手機連電腦,在 chrome 裡輸入 ***.***.***.***:9998,在 UC 裡選擇 允許調試

然後在選擇遊戲頁面

在 chrome 的 Console 裡輸入

_config.color.allTime=600

 然後再開始遊戲,發現UC裡遊戲時間能修改成功

在 chrome 輸入

$("#box span:contains(‘味‘):last").click()

發現 UC 裡的遊戲沒反應

分析想到手機端的點擊事件和電腦端的點擊事件應該是不一樣的,我們要出發的事件應該是手機的點擊事件
拿電腦端網頁的遊戲的 js 檔案來分析,最終在 main.min.js 裡發現了遊戲原始碼裡識別點擊事件的代碼

所以需要觸發的是 touchend 事件

在 chrome 的 Console 輸入

$("#box span:contains(‘味‘):last").trigger("touchend")

運行發現 UC 裡的遊戲跳到了下一關,下面來是實現自動玩遊戲

Console 輸入

setInterval(function(){$("#box span:contains(‘味‘):last").trigger("touchend")}, 1000)

 運行就能實現自動玩遊戲


玩完遊戲後還能在 UC 裡分享到社交網站裡,快讓小夥伴們驚呆吧

附件:http://files.cnblogs.com/files/oushihua/xunwei_project.rar

嘗試在電腦端使用偵錯模式修改手機遊戲的參數達到外掛效果

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.