掃雷游戲如何破解
A. 如何用windbg破解掃雷游戲 求教高手
找到掃雷記錄「雷區」的內存就更加有意思了。我這里會介紹兩種做法,還有我都是用的Windbg進行調試的。
第一種比較猥瑣,用到了掃雷的符號文件。
直接輸入x winmine!*
//x命令:x 查看模塊的符號,如x mydriver!*FastIo*,顯示所有與*FastIo*匹配的符號列表
仔細觀察掃雷的符號,在符號中有這樣的一個。
0:000> x winmine!*
...
0100367a winmine!StartGame = <no type information>
...
這時候可以有兩個選擇,
1.直接輸入bp winmine!StartGame;g。
//bp命令:BP 在指定的地址設置斷點
//bp notepad!WinMain,在Notepad的WinMain函數處下斷點。
然後點擊那個黃色的笑臉^_^。
Windbg准確的斷在winmine!StartGame了。
輸入uf .
//uf指令:uf (Unassemble Function)指令對整個函數進行反匯編
//uf GetLanguageCount
反匯編整個函數,同時也可以單步跟蹤函數。
2.直接uf winmine!StartGame,然後分析反匯編代碼。
接著可以看到這樣的代碼
010036c7 ff3534530001 push dword ptr [winmine!xBoxMac (01005334)]
010036cd e86e020000 call winmine!Rnd (01003940) ;隨機產生x
010036d2 ff3538530001 push dword ptr [winmine!yBoxMac (01005338)]
010036d8 8bf0 mov esi,eax
010036da 46 inc esi
010036db e860020000 call winmine!Rnd (01003940) ;隨機產生y
010036e0 40 inc eax
010036e1 8bc8 mov ecx,eax
010036e3 c1e105 shl ecx,5
010036e6 f684314053000180 test byte ptr winmine!rgBlk (01005340)[ecx+esi],80h ;是否已經被設置
010036ee 75d7 jne winmine!StartGame+0x4d (010036c7)
winmine!StartGame+0x76:
010036f0 c1e005 shl eax,5
010036f3 8d843040530001 lea eax,winmine!rgBlk (01005340)[eax+esi]
010036fa 800880 or byte ptr [eax],80h ;設置地雷
010036fd ff0d30530001 dec dword ptr [winmine!cBombStart (01005330)]
01003703 75c2 jne winmine!StartGame+0x4d (010036c7)
這里反匯編代碼比較簡單,大概的意思就是隨機產生一個x,y坐標,然後計算坐標所對應的內存的位置。看他是否已經被設置為地雷,如果不是則「or 80h」,設置成地雷,否則跳過。現在就一目瞭然了,winmine!rgBlk (01005340)就是我們要找的地址。
看看裡面存放內存的情況:
0:000> db 01005340
01005340 10 10 10 10 10 10 10 10-10 10 10 0f 0f 0f 0f 0f ................
01005350 0f 0f 0f 0f 0f 0f 0f 0f-0f 0f 0f 0f 0f 0f 0f 0f ................
01005360 10 0f 0f 0f 0f 8f 0f 0f-0f 0f 10 0f 0f 0f 0f 0f ................
01005370 0f 0f 0f 0f 0f 0f 0f 0f-0f 0f 0f 0f 0f 0f 0f 0f ................
01005380 10 8f 0f 0f 0f 0f 0f 0f-0f 0f 10 0f 0f 0f 0f 0f ................
01005390 0f 0f 0f 0f 0f 0f 0f 0f-0f 0f 0f 0f 0f 0f 0f 0f ................
010053a0 10 0f 0f 8f 0f 0f 0f 0f-0f 0f 10 0f 0f 0f 0f 0f ................
010053b0 0f 0f 0f 0f 0f 0f 0f 0f-0f 0f 0f 0f 0f 0f 0f 0f ................
0fh就是沒有地雷的地方,而80h or 0fh = 8f就是我們要找的地雷了。
第二種方法,比藉助掃雷的符號,這個方法同樣適用於Ollydbg。
輸入bp msvcrt!rand;g
斷在了rand中,然後gu,
發現所在的函數只是rand的一個簡單的封裝,參數一個只是用來取模的。
繼續gu,
OK,發現了一段代碼,這段代碼第一種方法得到的代碼是一樣的。也是同樣的取得了01005340這個地址。
最後說一下,如果是編寫作弊程序,只需要遍歷01005340這里的內存就足夠了,逐行掃描。
偽代碼:
PBYTE BufferHead = 0x01005340;
for (int y = 1; y < 10; y++)
for(int x = 1; x < 10; x++)
{
int Cnt = x + y * 32;
if ((BufferHead[Cnt] & 0x80) != 0)
{
//Good luck, you have got a mine!
DoSometing();
}
}
B. 電腦掃雷的游戲如何破解
以用紅色標出的部分為了,紅色箭頭指的「1」,那麼就是以它為中心,周圍的8個位置——即為紅色框內的全部位置中,有一個區域有雷,那麼你點右鍵,將被標記,左上角的數字會由原來的10變為9,既是說明還有九個雷!
你也可以將滑鼠放在「1」處,同時單擊滑鼠的左右鍵,旁邊的區域就會閃動,就是告訴你這個區域內,哪裡可能有雷!
不斷練習,技術就會長進啦!希望能幫到你!
C. 掃雷的作弊方法,麻煩清晰點 ,在哪裡輸入數據啊
1、啟動「掃雷」游戲,在游戲界面上輸入:"x
y
z
z
y"5個字母,然後按shift鍵,就啟動了破解;
2、滑鼠在「掃描」上的方格上移動,注意看你的「掃雷」界面最左上角(註:有的,一般是NT內核的操作系統話,比如win
xp,是在「桌面」的最左上角,而不是游戲界面)一旦出現個「黑點」,就表明當前方格下是地雷。如果沒出現個黑點的話,說明就是安全的,你就放心的滑鼠左鍵按下去吧!
這是WINDOWS
XP自帶密碼
你試試
D. 掃雷游戲有秘訣嗎
1、啟動「掃雷」游戲,在游戲界面上輸入:"xyzzy"5個字母,然後按shift鍵,就啟動了破解;
2、滑鼠在「掃描」上的方格上移動,注意看你的「掃雷」界面最左上角(註:有的,一般是NT內核的操作系統話,比如win xp,是在「桌面」的最左上角,而不是游戲界面)一旦出現個「黑點」,就表明當前方格下是地雷。如果沒出現個黑點的話,說明就是安全的,你就放心的滑鼠左鍵按下去吧!
E. 求高手,怎麼破解掃雷!
xyzzyshift
這是密碼,當看到屏幕左上方有一個一個像素大的小點時,這個位置就是雷
F. 掃雷游戲的規則與技巧是什麼
規則:所有非地雷的格子揭開即勝利。踩到地雷格子就算失敗。技巧:三連一,中有雷。四連一,邊有雷。
在掃雷中,1表示1的上下左右及斜角總共會有一顆雷,如果這樣類推的話,2就是有2顆雷,3則有3顆雷。如果在炸彈的方格上點了旗子,就安全,但是,如果在不是炸彈的地方,被點了旗子,那就意味著後面會被炸死。即如果找到一個炸彈,左右鍵點數字就可以判斷周圍雷是否全部標出,並且數字代表著周圍九個格里,到底有多少個雷。一般情況下,如果一顆雷的周圍,就剩下一個格子,那麼,這個一定是雷,只要點擊滑鼠標記旗幟就可以了。
掃雷技巧最為主要的是把握好雷出現的概率,通過上文的分析,可以發現雷的分布是有規律的,按照以上規律,就可以玩好掃雷了。
G. 求掃雷的秘訣
1、啟動「掃雷」游戲,在游戲界面上輸入:"xyzzy"5個字母,然後按shift鍵,就啟動了破解;
2、滑鼠在「掃描」上的方格上移動,注意看你的「掃雷」界面最左上角(註:有的,一般是NT內核的操作系統話,比如win xp,是在「桌面」的最左上角,而不是游戲界面)一旦出現個「黑點」,就表明當前方格下是地雷。如果沒出現個黑點的話,說明就是安全的,你就放心的滑鼠左鍵按下去吧!<這個黑點很小,要注意看 >
PS. 連這樣一個小游戲微軟都留了後門,由此推知……大家還是好自為之。
H. 掃雷游戲怎樣破解…急…急…急…
方法:啟動「掃雷」游戲,掃雷窗口在最前時,按字母鍵「xyzzy」 ,再按一下 「SHIFT」鍵 就行了。
秘笈運用:一旦你按下 Shift 鍵之後就啟動了,用滑鼠在方格上移動……注意看你的「桌面」(整個屏幕的最左上角,而不是游戲界面,仔細找哦) ,一旦出現個白色的「光點」,就表明當前方格下是安全的!你就放心的滑鼠左鍵按下去吧! 如果沒出現光點的話,說明就是地雷!!
I. 求大佬教一下掃雷的解法
對於提示 1,(a,b) 中有一個,(c,d) 中有一個;
對於提示 2,(c,d) 中的一個,另外一個則是b或e 中有一個;
而黃色框框的1,(b,e,d),與2結合可知 (b,e)中有一個,那麼 k 為空,可以打開;