Kitsune Posted June 22, 2008 Share Posted June 22, 2008 (edited) I've made an effort towards a logic-based sweeper bot, any additions to the solver logic would be appreciated <snip> Edited November 3, 2017 by JLogan3o13 Link to comment Share on other sites More sharing options...
sandin Posted June 22, 2008 Share Posted June 22, 2008 (edited) sandin Try this: Run(@SystemDir & "\winmine.exe") WinWaitActive("Minesweeper") $speed = 10 Opt("MouseClickDelay", $speed) Opt("MouseClickDownDelay", $speed) WinGetHandle("Minesweeper") WinMove("Minesweeper", "", 229, 187) Send("xyzzy{LSHIFT}{ENTER}") For $i = 0 To 8 MouseMove(251, 299 + $i * 16, $speed) For $k = 0 To 8 MouseMove(251 + $k * 16, 299 + $i * 16, $speed) $x = PixelGetColor(0, 0) If $x = 16777215 Then MouseClick("left") EndIf Next Next I'm almost 100% sure it will work. Then you can adjust $speed to the limit where it works. (Select the beginner mode) it works!! edit: min. speed it worked is 1, $speed = 1, on $speed = 0 it fails Edited June 22, 2008 by sandin Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll Link to comment Share on other sites More sharing options...
Kiti Posted June 22, 2008 Author Share Posted June 22, 2008 SandinI'm glad it worked . I've made a nice working GUI, but when i try to integrate it into the full script it doesn't work anymore.Here's the stand alone, working version.expandcollapse popup#include <GUIConstants.au3> #include <GUIConstantsEx.au3> $Form2 = GUICreate("Wow !!! Did you saw that? Just 1 second!", 378, 126, 302, 282) GUISetIcon("D:\002.ico") $Button1 = GUICtrlCreateButton("Play again", 15, 80, 75, 25, 0) $Button2 = GUICtrlCreateButton("Slow motion", 105, 80, 75, 25, 0) $Button3 = GUICtrlCreateButton("Didn't work?", 280, 80, 75, 25, 0) $Label2 = GUICtrlCreateLabel("", 104, 88, 4, 4) $Button4 = GUICtrlCreateButton("Spiral Motion", 190, 80, 75, 25, 0) $Label1 = GUICtrlCreateLabel("Please select one of the folowing options:", 88, 32, 200, 17) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE MsgBox(64, "Ok...", "Bye- Bye !!!" & @CRLF & "" & @CRLF & " Regards," & @CRLF & " Kiti ") GuiDelete("slider1") Exit Case $Button1 MsgBox(64, "Ok then, one more shot", "Please select the level again") Case $Button2 MsgBox(64, "Ok then, slow motion", "Please select the level again" & @CRLF & "Tip: Select Beginner for better experience!") Global $a = 1 GUISetState(@SW_SHOW) Case $Button3 GUIDelete() GUICreate("Slider", 220, 120) GUICtrlCreateLabel("Select the desired mouse speed:", 10, 10) GUICtrlCreateLabel("0", 17, 60) GUICtrlCreateLabel("10", 194, 60) GUISetBkColor(0xECE9D8) $slider1 = GUICtrlCreateSlider(10, 35, 200, 20) GUICtrlSetLimit(-1, 10, 0) $button = GUICtrlCreateButton("Value?", 75, 80, 70, 20) GUISetState() GUICtrlSetData($slider1, 1) Do $msg = GUIGetMsg() If $msg = $button Then MsgBox(0, "slider1", GUICtrlRead($slider1), 2) EndIf Until $msg = $GUI_EVENT_CLOSE Case $Button4 EndSwitch WEndoÝ÷ Ø ÝêÞÝý²)íz ÚµçbÚ-ë®*m"×hzÉ÷öÜ(®F®¶sb6æ6ÇVFRfÇC´uT6öç7FçG4WæS2fwC°¢6æ6ÇVFRfÇC´uT6öç7FçG2æS2fwC°¢6æ6ÇVFRfÇC´uT6öç7FçG4WæS2fwC° ¦vÆö&Âb33c¶ÒÂb33c¶"ÒÂb33c¶2Ò ¤÷BgV÷C´Ö÷W6T6Æ6´FVÆgV÷C²Âb33c¶2¤÷BgV÷C´Ö÷W6T6Æ6´F÷väFVÆgV÷C²Âb33c¶2¤÷BgV÷C´uTöäWfVçDÖöFRgV÷C²Â ¤×6t&÷cBÂgV÷C´VÆÆòb333²gV÷C²ÂgV÷CµF226ööÂ67&Bv66öÇfW2ÖæW7vVWW"âöæÇ6V6öæBb333²Fò÷RvçBFò6VRCògV÷C²¥'Vâ77FVÔF"fײgV÷C²b3#·væÖæRæWRgV÷C²¥våvD7FfRgV÷C´ÖæW7vVWW"gV÷C²¥vävWDæFÆRgV÷C´ÖæW7vVWW"gV÷C²¥väÖ÷fRgV÷C´ÖæW7vVWW"gV÷C²ÂgV÷C²gV÷C²Â##Âr¥6VæBgV÷C·§§´Å4eG×´TåDU'ÒgV÷C² ¤vÆö&Âb33c¶wVÒuT7&VFRgV÷C´7W7FöÒ×6v&÷gV÷C²Â#Â#S¤uT7G&Ä7&VFTÆ&VÂgV÷CµÆV6R6Æ6²'WGFöâb333²gV÷C²Â¤vÆö&Âb33c·&FóÒuT7G&Ä7&VFU&FògV÷C´&VvææW"gV÷C²ÂÂcÂ#Â#¤vÆö&Âb33c·&Fó"ÒuT7G&Ä7&VFU&FògV÷C´çFW&ÖVFFRgV÷C²ÂÂÂ#Â#¤vÆö&Âb33c·&Fó2ÒuT7G&Ä7&VFU&FògV÷C´WW'BgV÷C²ÂÂ#Â#Â#¤vÆö&Âb33c·&FóBÒuT7G&Ä7&VFU&FògV÷C´7W7FöÒgV÷C²ÂÂSÂ#Â#¤vÆö&Âb33c´'FâÒuT7G&Ä7&VFT'WGFöâgV÷C´vòVBgV÷C²ÂSÂÂÂ#¤uT7G&Å6WE7FFRb33c·&FóÂb33c´uTô4T4´TB¤uT7G&Å6WDöäWfVçBb33c´'FâÂgV÷C¶öå&W72gV÷C²¤uT6WDöäWfVçBb33c´uTôUdTåEô4Äõ4RÂgV÷C´öäWBgV÷C² ¤uT6WE7FFR ¥vÆR 6ÆVW¥tVæ@ £²ÒÒÒÒÒÒÒÒÒÒÒÒÒÒÒgVæ7Föç2ÒÒÒÒÒÒÒÒÒÒÒÒÒÒФgVæ2öå&W72 b33c¶×6rÒuTvWD×6r 6VÆV7@ 66R&DäBuT7G&Å&VBb33c·&FóÂb33c´uTô4T4´TBÒb33c´uTô4T4´T@ uT6WE7FFR5uôDR vä7FfFRgV÷C´ÖæW7vVWW"gV÷C² våvD7FfRgV÷C´ÖæW7vVWW"gV÷C² Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â##r Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â#s vÆö&Âb33c¶ÒÒ vÆö&Âb33c¶âÒ 66R&DäBuT7G&Å&VBb33c·&Fó"Âb33c´uTô4T4´TBÒb33c´uTô4T4´T@ uT6WE7FFR5uôDR vä7FfFRgV÷C´ÖæW7vVWW"gV÷C² våvD7FfRgV÷C´ÖæW7vVWW"gV÷C² Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â##r Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â#2 vÆö&Âb33c¶ÒÒP vÆö&Âb33c¶âÒP 66R&DäBuT7G&Å&VBb33c·&Fó2Âb33c´uTô4T4´TBÒb33c´uTô4T4´T@ uT6WE7FFR5uôDR vä7FfFRgV÷C´ÖæW7vVWW"gV÷C² våvD7FfRgV÷C´ÖæW7vVWW"gV÷C² Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â##r Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Â#S"Â3B vÆö&Âb33c¶ÒÒP vÆö&Âb33c¶âÒ# VæE6VÆV7@ ×6t&÷cBÂgV÷C´WfW'Færb33·26WBgV÷C²ÂgV÷Cµ&W72ö²vVâ÷Rb33·&R&VGgV÷C² bb33c¶"ÒFVà FööÅFgV÷C´Wb333²÷fW"W&Rb333²Fò÷R6VRÖSòW&RvöW2FR6÷VçFF÷vã¢gV÷C² VÇ6R FööÅFgV÷C´W&RvöW2FR6÷VçFF÷vã¢gV÷C² VæD` vÆö&Âb33c¶"Ò 6ÆVW# FööÅFgV÷C³2gV÷C² 6ÆVW FööÅFgV÷C³"gV÷C² 6ÆVW FööÅFgV÷C³gV÷C² 6ÆVW FööÅFgV÷C´vòb333²gV÷C² 6ÆVW FööÅFgV÷C²gV÷C² bb33c¶ÒFVà ÷BgV÷C´Ö÷W6T6ö÷&DÖöFRgV÷C²Â" ÷BgV÷CµVÄ6ö÷&DÖöFRgV÷C²Â" Æö6Âb33c¶FW6·F÷ÒvävWDæFÆRgV÷Cµ´4Ä53¥v÷&¶W%uÒgV÷C² Æö6Âb33c¶ÖæU7vVWÒvävWDæFÆRgV÷Cµ´4Ä53¤ÖæW7vVWW%ÒgV÷C² våvD7FfRb33c¶ÖæU7vVW Æö6Âb33c¶u÷2ÒvävWE÷2b33c¶ÖæU7vVW f÷"b33c·ÒFòb33c¶Ð f÷"b33c·ÒFòb33c¶à b33c·2ÒB²b33c·¢b b33c·2ÒSr²b33c·¢b VÅ6V&6b33c·2ÒÂb33c·2Âb33c·2ÒÂb33c·2ÂdddddbÂÂBÂb33c¶ÖæU7vVW bæ÷BW'&÷"FVà Ö÷W6TÖ÷fRb33c·2Âb33c·2ÂR bVÄvWD6öÆ÷"ÂÂb33c¶FW6·F÷ÓÒdddddbFVà Ö÷W6T6Æ6²gV÷C·&Ö'gV÷C²Âb33c·2Âb33c·2 VÇ6P Ö÷W6T6Æ6²gV÷C·6V6öæF'gV÷C²Âb33c·2Âb33c·2 VæD` VæD` æW@ æW@ VÇ6P f÷"b33c¶ÒFòb33c¶Ð Ö÷W6TÖ÷fR#SÂ#²b33c¶¢b f÷"b33c¶²ÒFòb33c¶à Ö÷W6TÖ÷fR#S²b33c¶²¢bÂ#²b33c¶¢b b33c·ÒVÄvWD6öÆ÷" bb33c·Òcsss#RFVà Ö÷W6T6Æ6²gV÷C¶ÆVgBgV÷C² VÇ6P Ö÷W6T6Æ6²gV÷C·&vBgV÷C² VæD` æW@ æW@ VæD` FööÅFgV÷C´W'&b333²b333²b333²gV÷C² 6ÆVW# FööÅFgV÷C²gV÷C² ¢b33c´f÷&ÒÒuT7&VFRgV÷Cµv÷rb333²b333²b333²FB÷R6rFCò§W7B6V6öæBb333²gV÷C²Â3sÂ#bÂ3"Â#"¤uT6WD6öâgV÷C´C¢b3#²b3C³"æ6ògV÷C²¢b33c´'WGFöãÒuT7G&Ä7&VFT'WGFöâgV÷CµÆvâgV÷C²ÂRÂÂsRÂ#R¢b33c´'WGFöã"ÒuT7G&Ä7&VFT'WGFöâgV÷Cµ6Æ÷rÖ÷FöâgV÷C²ÂRÂÂsRÂ#R¢b33c´'WGFöã2ÒuT7G&Ä7&VFT'WGFöâgV÷C´FFâb33·Bv÷&³ògV÷C²Â#ÂÂsRÂ#R¢b33c´Æ&VÃ"ÒuT7G&Ä7&VFTÆ&VÂgV÷C²gV÷C²ÂBÂÂBÂB¢b33c´'WGFöãBÒuT7G&Ä7&VFT'WGFöâgV÷Cµ7&ÂÖ÷FöâgV÷C²ÂÂÂsRÂ#R¢b33c´Æ&VÃÒuT7G&Ä7&VFTÆ&VÂgV÷CµÆV6R6VÆV7BöæRöbFRföÆ÷vær÷Föç3¢gV÷C²ÂÂ3"Â#Âr¤uT6WE7FFR ¥vÆR ¢b33c¶ä×6rÒuTvWD×6rb33c´f÷&Ò 7vF6b33c¶ä×6p 66Rb33c´uTôUdTåEô4Äõ4P ×6t&÷cBÂgV÷C´ö²âââgV÷C²ÂgV÷C´'RÒ'Rb333²b333²b333²gV÷C²fײ5$ÄbfײgV÷C²gV÷C²fײ5$ÄbfײgV÷C²&Vv&G2ÂgV÷C²fײ5$ÄbfײgV÷C²¶FgV÷C² vä¶ÆÂgV÷C´ÖæW7vVWW"gV÷C² 66Rb33c´'WGFöã ×6t&÷cBÂgV÷C´ö²FVâÂç7FçB7VVBgV÷C²ÂgV÷CµÆV6R6VÆV7BFRÆWfVÂvâgV÷C² vÆö&Âb33c¶Ò 66Rb33c´'WGFöã ×6t&÷cBÂgV÷C´ö²FVâÂ6Æ÷rÖ÷FöâgV÷C²ÂgV÷CµÆV6R6VÆV7BFRÆWfVÂvâgV÷C²fײ5$ÄbfײgV÷CµF¢6VÆV7B&VvææW"f÷"&WGFW"WW&Væ6Rb333²gV÷C² vÆö&Âb33c¶Ò uT6WE7FFR5uõ4õr 66Rb33c´'WGFöã0 uTFVÆWFRb33c´f÷&Ò uT7&VFRgV÷Cµ6ÆFW"gV÷C²Â##Â# uT7G&Ä7&VFTÆ&VÂgV÷Cµ6VÆV7BFRFW6&VBÖ÷W6R7VVC¢gV÷C²Â uT7G&Ä7&VFTÆ&VÂgV÷C³gV÷C²ÂrÂc uT7G&Ä7&VFTÆ&VÂgV÷C³gV÷C²ÂBÂc uT6WD&´6öÆ÷"T4SC b33c·6ÆFW#ÒuT7G&Ä7&VFU6ÆFW"Â3RÂ#Â# uT7G&Å6WDÆÖBÓ b33c¶'WGFöâÒuT7G&Ä7&VFT'WGFöâgV÷CµfÇVSògV÷C²ÂsRÂÂsÂ# uT6WE7FFR uT7G&Å6WDFFb33c·6ÆFW# Fð b33c¶×6rÒuTvWD×6r bb33c¶×6rÒb33c¶'WGFöâFVà ×6t&÷ÂgV÷C·6ÆFW#gV÷C²ÂuT7G&Å&VBb33c·6ÆFW#Â" VæD` VçFÂb33c¶×6rÒb33c´uTôUdTåEô4Äõ4P 66Rb33c´'WGFöã@ VæE7vF6¥tVæ@ ¤VæDgVæ2³ÓÒfwC´öå&W70 ¤gVæ2öäWB W@¤VæDgVæ2³ÓÒfwC´öäWI've made this some weeks ago, I'll review it now and maybe I can fix it. Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30 Link to comment Share on other sites More sharing options...
Kiti Posted June 22, 2008 Author Share Posted June 22, 2008 From 15 lines, now it's 280! I've fianlly finished the last version ! This includes a very improved GUI and 4 run types: Instant speed, slow motion while avoiding already filled blocks (thanks to SmOke_N for this), spiral motion and custom speed. Tell me what you think ! Here it is: expandcollapse popup#include <GUIConstants.au3> Opt("MouseClickDelay", 0) Opt("MouseClickDownDelay", 0) Opt("GUIOnEventMode", 1) Global $a = 0, $b = 0, $speed = 0 MsgBox(64, "Hello!", "This is a cool script which solves Minesweeper in only 1 second ! Do you want to run it?") Run(@SystemDir & "\winmine.exe") WinWaitActive("Minesweeper") WinGetHandle("Minesweeper") WinMove("Minesweeper", "", 229, 187) Send("xyzzy{LSHIFT}{ENTER}") $Form3 = GUICreate("Form3", 317, 95, 348, 261) GUISetOnEvent($GUI_EVENT_CLOSE, "Close") $Slider1 = GUICtrlCreateSlider(27, 12, 270, 29) GUICtrlSetLimit($Slider1, 5, 0) $Label1 = GUICtrlCreateLabel("0", 37, 48, 10, 17) $Label2 = GUICtrlCreateLabel("5", 280, 48, 16, 17) $Button1 = GUICtrlCreateButton("Set current speed", 112, 54, 100, 25, 0) GUICtrlSetOnEvent($Button1, "Form3Button1Click") $Form2 = GUICreate("Wow !!! Did you saw that ? Just 1 second !", 382, 129, 337, 274) GUISetOnEvent($GUI_EVENT_CLOSE, "Close") $Label1 = GUICtrlCreateLabel("Please select one of the folowing options:", 89, 24, 203, 17) $Button1 = GUICtrlCreateButton("Instant speed", 16, 80, 75, 25) GUICtrlSetOnEvent($Button1, "Form2Button1Click") $Button2 = GUICtrlCreateButton("Avoid filled cells", 100, 80, 83, 25) GUICtrlSetOnEvent($Button2, "Form2Button2Click") $Button3 = GUICtrlCreateButton("Spiral motion", 192, 80, 75, 25) GUICtrlSetOnEvent($Button3, "Form2Button3Click") $Button4 = GUICtrlCreateButton("Adjust speed", 288, 80, 75, 25, 0) GUICtrlSetOnEvent($Button4, "Form2Button4Click") $Group1 = GUICtrlCreateGroup("Play again in:", 8, 56, 265, 57) GUICtrlCreateGroup("", -99, -99, 1, 1) $Group2 = GUICtrlCreateGroup("Doesn't work? ", 280, 56, 89, 57) GUICtrlCreateGroup("", -99, -99, 1, 1) $Form1 = GUICreate("Form1", 209, 209, 393, 208) GUISetOnEvent($GUI_EVENT_CLOSE, "Close") $Label1 = GUICtrlCreateLabel("Please check the level you want to solve !", 3, 8, 204, 17) $Radio1 = GUICtrlCreateRadio("Beginner", 16, 56, 113, 17) GUICtrlSetState($Radio1, $GUI_CHECKED) $Radio2 = GUICtrlCreateRadio("Intermediate", 16, 88, 113, 17) $Radio3 = GUICtrlCreateRadio("Expert", 16, 120, 113, 17) $Button1 = GUICtrlCreateButton("Start !", 64, 160, 75, 25, 0) GUICtrlSetOnEvent($Button1, "Button1Click") GUISetState(@SW_SHOW) While 1 Sleep(100) WEnd Func Button1Click() $msg = GUIGetMsg() Select Case BitAND(GUICtrlRead($Radio1), $GUI_CHECKED) = $GUI_CHECKED GUISetState(@SW_HIDE) WinActivate("Minesweeper") WinWaitActive("Minesweeper") MouseClick("primary", 252, 227, 1, 0) MouseClick("primary", 252, 271, 1, 0) Global $m = 8 Global $n = 8 Case BitAND(GUICtrlRead($Radio2), $GUI_CHECKED) = $GUI_CHECKED GUISetState(@SW_HIDE) WinActivate("Minesweeper") WinWaitActive("Minesweeper") MouseClick("primary", 252, 227, 1, 0) MouseClick("primary", 252, 293, 1, 0) Global $m = 15 Global $n = 15 Case BitAND(GUICtrlRead($Radio3), $GUI_CHECKED) = $GUI_CHECKED GUISetState(@SW_HIDE) WinActivate("Minesweeper") WinWaitActive("Minesweeper") MouseClick("primary", 252, 227, 1, 0) MouseClick("primary", 252, 304, 1, 0) Global $m = 15 Global $n = 29 EndSelect _solve() EndFunc ;==>Button1Click Func _solve() MsgBox(64, "Everything's set", "Press ok when you're ready !") If $b = 0 Then $t = 1000 ToolTip("Hey! Over here! Do you see me? Here comes the countdown:") Sleep(4000) Else $t = 500 ToolTip("Here comes the countdown:") Sleep(1000) EndIf Global $b = 1 ToolTip("3") Sleep($t) ToolTip("2") Sleep($t) ToolTip("1") Sleep($t) ToolTip("Go!") Sleep($t) ToolTip("") If $a = 0 Then For $i = 0 To $m MouseMove(251, 299 + $i * 16, $speed) For $k = 0 To $n MouseMove(251 + $k * 16, 299 + $i * 16, $speed) $x = PixelGetColor(0, 0) If $x = 16777215 Then MouseClick("left") Else MouseClick("right") EndIf Next Next ElseIf $a = 1 Then Opt("MouseCoordMode", 2) Opt("PixelCoordMode", 2) Local $hDesktop = WinGetHandle("[CLASS:WorkerW]") Local $hMineSweep = WinGetHandle("[CLASS:Minesweeper]") Local $aWPos = WinGetPos($hMineSweep) For $y = 0 To $m For $x = 0 To $n $xc = 14 + ($x * 16) $yc = 57 + ($y * 16) PixelSearch($xc - 1, $yc, $xc - 1, $yc, 0xFFFFFF, 0, 14, $hMineSweep) If Not @error Then MouseMove($xc, $yc, 5) If (PixelGetColor(0, 0, $hDesktop) == 0xFFFFFF) Then MouseClick("primary", $xc, $yc, 1, 0) Else MouseClick("secondary", $xc, $yc, 1, 0) EndIf EndIf Next Next ElseIf $a = 2 Then Global $sp = 1; speed For $a = 0 To 7 MouseMove(259 + $a * 16, 306, $sp) _check() Next For $b = 0 To 7 MouseMove(372, 306 + $b * 16, $sp) _check() Next For $c = 0 To 7 MouseMove(372 - $c * 16, 419, $sp) _check() Next For $d = 0 To 6 MouseMove(259, 419 - $d * 16, $sp) _check() Next For $e = 0 To 6 MouseMove(259 + $e * 16, 322, $sp) _check() Next For $f = 0 To 5 MouseMove(356, 322 + $f * 16, $sp) _check() Next For $g = 0 To 5 MouseMove(356 - $g * 16, 403, $sp) _check() Next For $h = 0 To 4 MouseMove(275, 403 - $h * 16, $sp) _check() Next For $i = 0 To 4 MouseMove(275 + $i * 16, 338, $sp) _check() Next For $j = 0 To 3 MouseMove(340, 338 + $j * 16, $sp) _check() Next For $k = 0 To 3 MouseMove(340 - $k * 16, 387, $sp) _check() Next For $l = 0 To 2 MouseMove(291, 387 - $l * 16, $sp) _check() Next For $m = 0 To 2 MouseMove(291 + $m * 16, 354, $sp) _check() Next For $n = 0 To 1 MouseMove(324, 354 + $n * 16, $sp) _check() Next For $o = 0 To 1 MouseMove(324 - $o * 16, 371, $sp) _check() Next MouseMove(307, 371, $sp) _check() MouseMove(307, 370, $sp) _check() MouseMove(308, 370, $sp) _check() EndIf ToolTip("Hurray !!!") Sleep(2000) ToolTip("") GUISetState(@SW_SHOW, $Form2) EndFunc ;==>_solve Func Form2Button1Click() Global $a = 0 GUISetState(@SW_HIDE, $Form2) MsgBox(64, "Instant speed then", "Please select what level you want") GUISetState(@SW_SHOW, $Form1) EndFunc ;==>Form2Button1Click Func Form2Button2Click() Global $a = 1 GUISetState(@SW_HIDE, $Form2) MsgBox(64, "Slow motion then", "Please select what level you want" & @CRLF & "Tip: Select Beginner for better experience") GUISetState(@SW_SHOW, $Form1) EndFunc ;==>Form2Button2Click Func Form2Button3Click() Global $a = 2 GUISetState(@SW_HIDE, $Form2) MsgBox(64, "Spiral motion then", "For this mode, only Beginner level is avaible") WinActivate("Minesweeper") WinWaitActive("Minesweeper") MouseClick("primary", 252, 227, 1, 0) MouseClick("primary", 252, 271, 1, 0) Global $m = 8 Global $n = 8 _solve() EndFunc ;==>Form2Button3Click Func Form2Button4Click() GUISetState(@SW_HIDE, $Form2) MsgBox(64, "Too fast CPU", "This is sometimes caused by Dual Core CPUs, beeing to fast and actually skiping clicks." & @LF & "Please select the desired speed ! Tip: In most cases, 1 milisecond will be fine.") GUISetState(@SW_SHOW, $Form3) EndFunc ;==>Form2Button4Click Func Form3Button1Click() GUISetState(@SW_HIDE, $Form3) MsgBox(64, "Speed set", "Mouse speed is now set to " & GUICtrlRead($Slider1) & " miliseconds." & @CRLF & "Select the level you want to play using this speed !") $speed = GUICtrlRead($Slider1) GUISetState(@SW_SHOW, $Form1) EndFunc ;==>Form3Button1Click Func _check() $x = PixelGetColor(0, 0) If $x = 16777215 Then MouseClick("left") EndIf EndFunc ;==>_check Func Close() WinKill("Minesweeper") GUISetState(@SW_HIDE, $Form1) GUISetState(@SW_HIDE, $Form2) MsgBox(64, "Ok...", "Bye- Bye !!!" & @CRLF & "" & @CRLF & " Regards," & @CRLF & " Kiti ") Exit 0 EndFunc ;==>Close Think outside the box.My Cool Lego Technic Website -- see walking bipeds and much more!My YouTube account -- see cool physics experimentsMy scripts:Minesweeper bot: Solves advanced level in 1 second (no registry edit), very improved GUI, 4 solving stylesCan't go to the toilet because of your kids closing your unsaved important work? - Make a specific window uncloseableCock Shooter Bot -- 30 headshots out of 30 Link to comment Share on other sites More sharing options...
myspacee Posted June 25, 2008 Share Posted June 25, 2008 (edited) hello again, this boy use different approach to problem. (not Autoit) sort af 'ProcessMemory' and give delphi source on request... (maybe is possible to obtain same result, if autoit handle ) very brillant ! m. Edited November 3, 2017 by JLogan3o13 Link to comment Share on other sites More sharing options...
randomguy21 Posted November 3, 2017 Share Posted November 3, 2017 Excuse me, exactly how do you use these codes? Link to comment Share on other sites More sharing options...
Moderators JLogan3o13 Posted November 3, 2017 Moderators Share Posted November 3, 2017 @randomguy21 One of the reasons we encourage people not to resurrect 9 year old threads is because both the language and the forum are constantly evolving and growing. One of those evolutions would be the forum rules, which no longer permit the discussion of game automation. As you seem to have missed them on your way into the forum, I would suggest you read the forum rules before posting again. "Profanity is the last vestige of the feeble mind. For the man who cannot express himself forcibly through intellect must do so through shock and awe" - Spencer W. Kimball How to get your question answered on this forum! Link to comment Share on other sites More sharing options...
Recommended Posts