Я сделал бота для Terraria! | Python бот для игры

preview_player
Показать описание
Никогда не делал ботов для игр!
Делаю бота для авто-рыбалки в Terraria.


🆇 Ссылки из видео 🆇


💗 Музыка предоставлена YouTube Audio Library.
Рекомендации по теме
Комментарии
Автор

💗 Научил бота ловить только то, что нужно.

HowdyhoNet
Автор

Раньше я думал что он просто хороший ютубер, но он знает Террарию!
Теперь он ещё лучше)

-talmor-
Автор

*Следующее видео:* 'делаю бота для спидрана по террарии'

Гога-фъ
Автор

Хауди: определяет ловлю рыбы красным цветом поплавка
Кровавая луна: дратути

Neyronbite
Автор

Хауди спустя год :
Я написал бота, для фарма башен и мунлорда, без брони на мастер моде:

makar
Автор

Несколько лет спустя: создаём python бота для вождения самолёта за час :/

cib
Автор

7:21
Кровавая луна: на да ну да, пошёл я на...

vistalis
Автор

когда все видеокарты распродали, а тебе хочется во что нибудь поиграть на встройке

illlarionkorzhakov
Автор

Писал похожего бота пару месяцев назад. Цель была немного другой - ловить только ящики (мне нужны были только титановые или золотые ящики, чтобы вытащить зачарованный меч для крафта Зенита, но я решил ловить все). Работает у меня всё по другому принципу и при наличии условий:
Рыбачить нужно в пещере, причём желательно, чтобы область под персом была тёмной.
Левый верхний угол должен был быть тёмным.
В 5 и 6 слоте инвентаря по стаку зелий ящиков, в 7 - стак залья сонара (нужно, чтобы над поплавком показывался улов).
В слоте 0 - удочка.
Левая кнопка мыши переназначена на клавишу Q (pytongui и AutoHotPy у меня отказались симулировать нажатия мыши).

Я долго не мог решить проблему с нажатиями на кнопку. Пытался сделать это средствами pythongui, но ничего не выходило. Возможно, помогло бы попробовать сделать это, запустив игру в окне, а не на фуллскрин, но я почему-то не догадался. Гугл подсказал библиотеку AutoHotPy, которая обещала максимально хардверный клик с помощью драйвера мыши (не помню точно, но вроде как-то так)
К сожалению, я не смог решить проблему с тем, что некоторые программные нажатия не регистрируются, поэтому немалая часть кода посвящена не выполнению действий, а проверке, выполнились ли они.

Работает всё примерно так: постоянно пьёт зелья ящиков и сонара. С помощью библиотеки pytesseract постоянно читает написано ли что-нибудь по-русски в области под персонажем и, если написано, проверяет, содержит ли написанное слово "ящик", если да то вытаскивает удочку.

Если подробнее, то:
В бесконечном цикле путём скриншотов определённой области экрана постоянно проверяется несколько условий:


Выпиты оба зелья (функция pyautogui.locateOnScreen ищет иконки зелий в левом углу экрана) Если нет, переключаемся на соответствующий слот и пьём
В руке персонажа удочка (тем же самым способом проверяем, горит ли нулевой слот жёлтым) Если нет, переключаемся на соответствующий слот

Небольшая область под персонажем постоянно скриншотится и обрабатывается OpenCV (делаем маску по циановому цвету, иначе тесерракт не прочитает), читаем pytesseractом, проверяем, есть ли в написанном символы русского алфавита (какие-то символы будут там всегда, хз, наверное баг) если есть, ищем в полученной строке сочетания "ящик, ящ, яш, Ящик", чтобы наверняка.
Если есть, вытаскиваем удочку. И сразу же закидываем обратно. Проверку этого действия я реализовать не смог, поэтому просто прописал, что если в течение 25 секунд русских символов не найдено, то забросить удочку ещё раз.


Понимаю, что ебейший говнокод, но вроде работает, вытащил меч где-то за 2 ночи)))

San_Cone
Автор

Хауди : "Ролик выйдет сегодня/завтра"
Реальность : Ролик вышел через 3 дня
Кто понял тот понял

shanzo
Автор

Блиииииииин, как раз недавно скачал Terraria и тут ты выпускаешь видос связанный с этой игрой. Очень классно и удивительно!!!

nikittymus
Автор

*Такими темпами скоро: GTA VI за час)*

DARKWOODDarkwood
Автор

Тем временем code bullet: wtf, ты вообще про AI что-то слышал? 🤣🤣
..
Но бот получится годный 👍👍

Николай-екш
Автор

А тот кто подписан на телеграм канал Хауди, тот знал об этом видео заранее, Хауди ты топ!!!

LC___
Автор

13:55 Програмирование должно приносить удовольствие
Рандомный баг коде:
И это я принял на свой счет

alikablanbek
Автор

Хауди хо: Не теряйте времени!
Так же он: 250 часов в Террарию)

klvlqsm
Автор

print("Не думал что Хауди Хо выпустит видео про террария")

doomguy
Автор

0:25 Хауди:
- Пол часа или целый час.

Я, получивший ачивку на 200 квестов рыбака(он дает по квесту 1-у в игровые сутки):
- Слабаки!

lyagva
Автор

Ну че, ждем простую террарию в 3D)))

в топ!

RoksFTchannel
Автор

Есть баг в террарии для упрощения рыбалки. Его давно разработчики нашли и убрали, но игрокам настолько он понравился, что его обратно вернули. Так вот, в чем заключается баг. Нужно в настройках игры поставить автоматическую паузу. И, когда закинул поплавок, начать ESC и выкинуть один предмет из инвентаря. Тогда из твоей удочки еще вылетит 3-4 поплавка и так можно делать бесконечно. Стакай хоть 1к поплавком из одной удочки.
Можно еще выпить зелье рыбака(или оно по-другому называется). Это зелье подсказывает, что за предмет на крючке. Таким способом можно подгадать момент и вытащить за одну наживку очень много ценного лута

МаксимМещеряков-пю