Installing AutoHotKey
Just download and install the latest version here:
https://www.autohotkey.com/download/
First thing about AutoHotKey Scripts
It basically only works when left to do it’s thing.
You can pause and unpause it whenever you want, so for example, you let it play the minigame, pause it, do your own thing and after 5 minutes manually unpause it to play the minigame again and repeat.
If at any point anything goes wrong, F11 will pause the script.
If the symbol on the taskbar is red its paused
You can fully shut off script by right clicking the symbol on the the taskbar and clicking exit.
Creating the Script – The Setup
Right-click and edit setup.ahk and copy this in:
;create a txt file to store the coordinates in
FileDelete, %A_WorkingDir%\coords.txt
FileAppend, Coordinates for the Toilets are`n, %A_WorkingDir%\coords.txt
;setup where we move the mouse in the right places and save the Positions
MsgBox,
(
Move the cursor to the Top of the black circle inside the Toilet
Top Row Far Left Toilet
Press Enter if you did it
)
click
sleep, 50
;Store the coordinates in the txt file, repeat this a bunch of times
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
FileAppend, %MouseY%`n, %A_WorkingDir%\coords.txt
MsgBox,
(
Move the cursor to the Top of the black circle inside the Toilet
Middle Row Second Toilet from the Left
Press Enter if you did it
)
click
sleep, 50
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
FileAppend, %MouseY%`n, %A_WorkingDir%\coords.txt
MsgBox,
(
Move the cursor to the Top of the black circle inside the Toilet
Bottom Row Middle Toilet
Press Enter if you did it
)
click
sleep, 50
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
FileAppend, %MouseY%`n, %A_WorkingDir%\coords.txt
MsgBox,
(
Move the cursor to the Top of the black circle inside the Toilet
Top Row Second Toilet from the Right
Press Enter if you did it
)
click
sleep, 50
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
MsgBox,
(
Move the cursor to the Top of the black circle inside the Toilet
Top Row Far Right Toilet
Press Enter if you did it
)
click
sleep, 50
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
Missedit:
MsgBox,
(
Move the Cursor over the white Part of the second "s" in "Press Start"
Press Enter if you did it
)
click
sleep, 50
MouseGetPos, MouseX, MouseY
PixelGetColor, color, MouseX, MouseY
if (color != 0xFFFFFF)
{
goto, Missedit
}
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
FileAppend, %MouseY%`n, %A_WorkingDir%\coords.txt
MsgBox,
(
Move the Cursor over the Start Button
Press Enter if you did it
)
MouseMove, 0, -200, 0, R
sleep, 50
click
sleep, 50
MouseMove, 0, 200, 0, R
sleep, 50
MouseGetPos, MouseX, MouseY
FileAppend, %MouseX%`n, %A_WorkingDir%\coords.txt
FileAppend, %MouseY%`n, %A_WorkingDir%\coords.txt
ExitApp
;Pause button
F11::
Pause
Suspend
return
If pressing Enter doesn’t do anything, click into the messagebox and then move the cursor back into the position it’s asking for.
You can also drag the Messagebox out of the way.
Should anything break or go wrong F11 pauses the script.

This will repeat 5 times, so we get all the toilet locations.
These locations will later be checked for potatoes.
After that you will be asked to put your cursor on the white part of the second s in the word “press”, like in the picture.
It does this, so later on it will be able to tell when the 5 minute cooldown is over and it can restart the game.

And that is the setup done!
Creating the Script – Main Script
In this folder create a new file called “script.ahk”.
Right-click to edit and copy in this code:
#IfWinActive ahk_exe Farmer Against Potatoes Idle.exe
Pause
Suspend
;Set Toilet coordinates from setup file
FileReadLine, LineX1, %A_WorkingDir%\coords.txt, 2
FileReadLine, LineX2, %A_WorkingDir%\coords.txt, 4
FileReadLine, LineX3, %A_WorkingDir%\coords.txt, 6
FileReadLine, LineX4, %A_WorkingDir%\coords.txt, 8
FileReadLine, LineX5, %A_WorkingDir%\coords.txt, 9
FileReadLine, LineY1, %A_WorkingDir%\coords.txt, 3
FileReadLine, LineY2, %A_WorkingDir%\coords.txt, 5
FileReadLine, LineY3, %A_WorkingDir%\coords.txt, 7
FileReadLine, LinePressX, %A_WorkingDir%\coords.txt, 10
FileReadLine, LinePressY, %A_WorkingDir%\coords.txt, 11
FileReadLine, LineStartX, %A_WorkingDir%\coords.txt, 12
FileReadLine, LineStartY, %A_WorkingDir%\coords.txt, 13
coordsX := [LineX1,LineX2,LineX3,LineX4,LineX5]
coordsY := [LineY1,LineY2,LineY3]
;Base Color to compare against and allowed tolerance
targetColor=0xFDC118
tolerance := 85
;split target color into rgb
tr := format("{:d}","0x" . substr(targetColor,3,2))
tg := format("{:d}","0x" . substr(targetColor,5,2))
tb := format("{:d}","0x" . substr(targetColor,7,2))
;the main Loop that runs
loop {
;check if the game is the active window, if not pause
if !WinActive("ahk_exe Farmer Against Potatoes Idle.exe")
{
Pause
Suspend
}
;Check if whack-game can be started
PixelGetColor, color, LinePressX, LinePressY
if (color = 0xFFFFFF)
{
MouseClick, left, LineStartX, LineStartY
}
;outer loop to set Y coordinates
loopcount := 1
loop 3 {
;inner loop to set X coordinates
loop 5 {
;check pixel color at a toilet
PixelGetColor, color, coordsX[a_index], coordsY[loopcount], Alt RGB
;split pixel color into rgb
pr := format("{:d}","0x" . substr(color,3,2))
pg := format("{:d}","0x" . substr(color,5,2))
pb := format("{:d}","0x" . substr(color,7,2))
;check distance between pixel and target color to get the tolerance
distance := sqrt((tr-pr)**2+(tg-pg)**2+(pb-tb)**2)
if(distance<tolerance)
{
;Click the toilet if the tolerance is right
MouseClick, left, coordsX[a_index], coordsY[loopcount]
sleep, 20
;move mouse out of the way
MouseMove, 0, 15, 0, R
}
}
loopcount++
}
}
;Pause button
F11::
Pause
Suspend
return
Open the Whack-A-Potato minigame and press F11 to start it.
If you did everything right and you aren’t on cooldown the game should now play itself.
To open the shop just press F11 to pause, buy whatever you want and then resume by pressing F11 once more.
If you tab out the script will pause automatically, you will have to manually unpause it by pressing F11.
Thanks to Pix for his excellent guide, all credits belong to his effort. if this guide helps you, please support and rate it via Steam Community. enjoy the game.