Pull to refresh
13
0
Артем Артамонов @artamonz

Инженер

Send message
Готовлю материал. Просто разобрать нужно на каком то интересном примере, а не сферический код в вакууме да еще, чтобы было понятно хотя бы 80% аудитории хабра. Подготовка такой статьи довольно времязатратная штука.
Ну у меня нет мании величия и я ни в коем образе не утверждал, что мой метод правильный и изящный. Всегда найдется тот, кто сделает лучше, выше, быстрее, сильнее. Суть статьи в том, чтобы показать, что человеку можно чуть чуть погуглить и сделать на питоне какую то интересную вундервафлю, даже если он не разу не профессионал. Ваш OpenCV гугл кстати не разу не выдал когда я искал либы под это дело. Если бы он мне попался на глаза первым — возможно в статье был бы он. В любом случае спасибо за инфу, буду иметь в виду.
У меня накопилось некоторое количество опыта по обходу защит и даже кое какие свои наработки, но боюсь ответ значительно превосходит формат комментария. Вроде статья неплохо зашла, думаю и на тему защит напишу со временем.
Смысл в том, что кругляш едет до центра около 2-х секунд и кнопку нужно нажимать через 2 секунды, после того как его засекаем программно. то Есть если поставить time.sleep(2) а потом нажать кнопку, кнопка то нажмется, но в эти 2 секунды программа не будет ловить другие кружки а тупо ждать.
Если вы «труъ» программист и готовы брызжа слюной доказывать, что питон фигня и новичков сразу нужно макать в ручное управление памятью, яки младенца в святую воду — можете смело закрывать статью.
Как бы между Python и ручным управлением памятью есть и промежуточное звено: языки с автоматической сборкой мусора.

Сие было небольшим троллингом программистов, которые отрицают, что не все языки подходят для освоения юными падаванами и кричат что именно их язык нужно учить потому что он самый[хардкорный, массовый, энтерпрайзный, кошерный, ...] да еще и литературы вдобавок насоветуют а ля «паттерны проектирования» или опусов Кернигана и Ричи. Это ведет к скорейшему забиванию на идею что нибудь попрограммировать.

А C#, Kotlin да и другие языки не подходят?

На шарпе переделывал инъектор для игры Rust, опять же при помощи гугла и советов коллеги — то еще удовольствие если с языком не работаешь каждый день. Так же, если на питоне понравилась программка или модуль — то ты открываешь, изучаешь и копируешь нужный код. В c# для подобного пришлось качать net reflector и прогонять прогу через деобфускатор de4dot. Я думаю не стоит тут упоминать как выглядит код после деобфускации, кто ковырял сам знает.
Очень спорное утверждение. Как раз таки в Python ошибок может быть только больше из-за его динамической природы.

Возможно для больших и сложных проектов это так, но у меня есть только опыт написания небольших программок под собственные нужны и он говорит об обратном.
Опять-таки. А к другим языкам это не относится?

На мой, достаточно субъективный, взгляд накладывается опыт разбирательств с другими языками. Питон сообщество нацелено не только на профессионалов, вот в чем его плюс. Возможно, если вы опытный программист, вы не заметите разницу в общении на форумах или в подаче документации, но для начинающих важно чтобы объяснялось для их уровня. И да, никто не будет делать на c# или java программки для системного администрирования,
а на питоне будут. Это и создает ту экосистему для людей-не-программистов.
Помимо Python вы знаете только C++

А кто сказал что я знаю python и с++? Я знаю базовые для всех языков конструкции и как пользоваться гуглом. Дополнительный синтаксис осваивается за пару часов ( если это конечно не lisp или брэйнфак ). Это как раз та фишка о которой я и говорил в статье — питон не нужно хорошо знать чтобы решать на нем задачи.
Да куча документации хорошей и разной по популярным языкам.

Опять же с точки зрения профессионального программиста да, а с точки зрения не программиста вопрос очень спорный. Отписал выше.
nuget для C#, maven для Java

Не спорю. Тут это просто плюс, по сравнению с языками, в которой таких систем нет.
Какая модификация?

В играх отвратительно часто встречаются апдейты меняющие статические адреса и указатели, хранящие скорость, коэффициент разброса оружия или еще какую нибудь интересную переменную. Или например ввели в игре временное изменение и кликер тыкает уже не туда, куда ему положено.
Практически для любой популярной онлайн игры есть обходы ее античитов в паблик доступе. Если нет в русском сегменте, то точно можно найти в англоязычном. Как говориться волков бояться — в лес не ходить. А вообще процесс python.exe исполняющий ваш код наверняка выглядит менее подозрительным, нежели какой нибудь Xc7$smkT.exe да еще и инжектящий в процесс игры свою библиотеку.
Исследование игры на нижнем уровне и написание под нее бота — штука комплексная. Есть замечательная книга на эту тему которая на 90% описывает то что вам нужно. gamehacklab.ru/topic/4834-утекла-книга-гейм-хакинг-разработка-автономных-ботов-для-онлайн-игр Найти ее можно и в pdf правда на английском. Если такие вопросы — рекомендую начать с вещей попроще, вроде поиска нужных значений в памяти и программного чтения/записи в них. Например на том же питоне.
Пробовал. Штука классная, но питон на порядок богаче по возможностям. В библиотеке pyautogui например есть locateOnScreen('вырезанная_картинка.png') которая позволяет в автоматическом режиме рапознавать изображение на экране и возвращает центр его координат. Таким образом можно например решать простые головоломки в играх или обходить каптчу самописной защиты в LineageII
Естественно. Это как раз и будет материалом следующей статьи. Просто на питоне это делать легко и приятно даже для новичков и я сильно удивлен, почему его еще активно не используют под это дело.

Information

Rating
Does not participate
Registered
Activity