Как реализовать авторыбалку в майнкрафте на python?
Я хотел бы на Python написать программу кликер для рыбалки в майнкрафт. Суть программы в том, чтобы программа закинула крючок и ждала пока рыба не клюнет. А потом, как рыба клюнет нажимала кнопку, и удочка возращается с уловом. Но проблема в том, что я не знаю, как реализовавть систему ожидания поклевки. Подскажите как это можно реализовать.
P.S. У меня была идея сделать по таймеру, но идея провалилась, потому что в игре используется рандом.
P.S.2. У меня была еще одна идея, которая по звуку определяла, когда вылавливать рыбу, но я не нашел звука этой поклевки.
import pyautogui
import keyboard
img = None
while True:
if keyboard.is_pressed('='):
# взять образец изображения
x, y = pyautogui.position()
img = pyautogui.screenshot(region=(x, y, 30, 30))
elif keyboard.is_pressed('esc'):
break
elif img:
# искать образец изображения на экране и при нахождении кликать
imgLocation = pyautogui.locateOnScreen(img)
if imgLocation:
x, y = pyautogui.center(imgLocation)
pyautogui.click(x, y, button='right')
Ru5D1mG4me, я же не знаю, что у тебя не работает. Я этот пример запускал, он работает. После запуска при нажатии = копируется область экрана 30х30 от позиции курсора (можно добавить центрирование если нужно) и берется за образец. После этого в бесконечном цикле будет искать эту же область на экране и кликать в том месте правой кнопкой.
что именно не работает? ошибка или что, на чем проверял?
попробуй после "img = "
сделать img.save("myimage.png")
и проверить, там должен быть скопированный участок
Ru5D1mG4me, а что собственно копируешь? Предполагалось, что копируешь поплавок в том виде, когда его надо ловить (я понятия не имею, как у тебя рыбалка работает), затем программа в цикле ищет на экране это изображение поплавка как образец и кликает на него. Если все равно не срабатывает, то возможно изображение поплавка не постоянно (этот простой метод ищет совпадение 1 в 1, для нечеткого поиска как в документации написано надо добавлять OpenCV), или поиск по экрану не успевает за поплавком (он не мгновенный все же), или pyautogui не работает с режимом отображения в игре, мало ли что еще.