MCHEAT.EXE ========== Documentation Introduction ============ MineCheat is a program I wrote to help you solve the MineSweeper Game included with all copies of MS-Windows 3.1. It uses a little known feature of MineSweeper to quite simply cheat at the game! Don't waste your time trying to solve MineSweeper using logic, let MineCheat solve it for you in only a few seconds! Now remember, this program will not create world peace or make you computer run faster, but it's good for a few laughs, and it will amaze your friends. I was inspired to make this program for three reasons: - First, I came across a little program by Peter Karrer called MineHelp (on INTERNET at ftp.cica.indiana.edu in pub/pc/win3/games/minehlp1.zip) this program reads the board and uses logic to make as many simple moves as it can. I thought it was great. - Second, I purchased a copy of Turbo Pascal 1.5 because I wanted to make great Windows programs, large and small! - Third, I don't remember where I came across this information, but when you type in a secret keyboard sequence, MineSweeper will tell you which squares have bombs and which squares don't. Here is the secret: 1. Start the "Mine Sweeper" Program ( If not running already ). 2. Type in the following: "xyzzy". 3. Now move the Mouse around on the MineSweeper playing board! As you move the Mouse, watch the top left corner of the screen, see the pixel change color from black to white??? 4. White means there is no bomb on that square, Black means there is. With these three elements in mind, MineCheat was born! How to play =========== 1. Start up MineSweeper and MineCheat ( MCHEAT.EXE & WINMINE.EXE ). 2. Then press the "Cheat" button on MineCheat! That's it, MineCheat will then solve the board in the quickest time possible for your computer! How it works ============ The MineCheat source code is written in Turbo Pascal for Windows 1.5 and I have made it avaible for anyone interested in how it works! - When the program first starts, it looks to make sure that the top left corner of the screen is not covered. If it finds any bad windows covering this corner, it displays an error message. - When you press the "Cheat" button Mine cheat follows the following steps: Step #1 if MineSweeper is still on the screen AND it's size has Changed then Change the dimensions. Step #2 Find MineSweeper ( if not found already ) and then send the secret code ! "x y z z y +". Step #3 Make sure that the MineSweeper window is known and that the top left square is up ( not solved ). Step # 4 for every square: - Move the mouse to the square. - if the square has already been marked, skip it. - Read the color from the top corner of the screen. - Mark or step on a square. Notes ===== - MineCheat works only when MineSweeper is in color mode. - No Window can cover the top left pixel of the screen, it must be free! MineCheat will make sure that this pixel is free before it starts. - MineCheat doesn't do anything if the mine field is not fully visible on the screen. - The program relies on the MineSweeper window dimensions and on the colors and shapes of the bitmaps used for the squares. If this should change with future MineSweeper versions, MineCheat would stop working. - MineCheat will only work if you have a clean board that has not been marked or steped on. - If you start getting errors, close both MineSweeper and MineCheat and start over. Performance / Accuracy ====================== When used properly, MineCheat solves all of MineSweeper's modes, 100% of the time, in other words IT'S PERFECT. The time used to solve the puzzle depends of course on the processor speed, but also on the speed of the video driver. On my 386/20M SX with a Paradise card, the best score was 9 seconds (usually 9 to 12) On the Expert level. Legal Stuff =========== This program is free, no warranties of course. I ask only two things: - It should always be distributed as a package containing MCHEAT.EXE, MCHEAT.PAS, MCHEAT.RES (TPW files) and MCHEAT.TXT (this document). - For now, this program can be distributied without restriction. But I reserve the right to stop distribution or use of this program at any time if I feel the need to do so. In other words, I retain ownership. As long as these two conditions are met, no problem. Other ===== I am a college student ( winter-spring of 1993 ), majoring in Computer Science, and might be looking for a job starting this summer. If you know of a good job programming in Windows, and you think this program is good stuff ( for it's size ), please E-Mail me at: n8945817@henson.cc.wwu.edu or U.S. mail me at : Keith Garner 2120 Niagara, DR. Bellingham, WA USA 98226-5912 I speak your language. Keith S. Garner January 1993