|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
|
Размышления о ботописательстве26.12.2018, 14:39. Показов 22925. Ответов 33
Метки нет (Все метки)
Как-то так получилось, что я, будучи программистом и по профессии, и по образованию, и по призванию, менее чем за два десятка лет перепробовал массу различных способов зарабатывать - от преподавания программинга в школе до автоматизации процесса производства на целом заводе. Но вот сейчас, оглядываясь назад, понимаю, что по-настоящему интересными для меня лишь были те три года, когда я совершенно импульсивно, после пьянки с другом, занимавшимся ботоводством в одной компьютерной игрушке, решил попробовать довести до ума опен-сорс бота. И, что характерно, довёл: буквально в течении каких-то полугода "выхлоп" получаемых игровых денег с одного игрового аккаунта в единицу времени поднялся почти в три раза. Ну, я просто расширил функционал от стандартного "атакуй ближайшего монстра, убей, полутай и повтори" до кучи разных динамически настраиваемых сценариев, позволявших для выполнения каждой конкретной игровой задачи применять тот специфический набор действий, который кратчайшим путем ведет к желаемому результату, пропуская всё маловыгодное, что только можно пропустить. В процессе я втянулся, ушел с предыдущей работы, и потом еще почти три года пользовался созданным ботом и сам, и еще делился с теми, кому был обязан - с тем самым другом, потом еще с оригинальным автором бота, и кой-какими другими людьми, тоже участвовавшими в "доработке напильником". Я свою часть писал на Шарпе (отчего и создаю топик именно в этом разделе - заранее сорри, если есть более подходящий раздел: я такового не нашел).
Но в этой бочке мёда и своя ложка дёгтя тоже оказалась... которая со временем разрослась до размеров самой "бочки". А именно: ботов, к счастью или к сожалению, банят. Почему "к счастью"? Ну, если б совсем не банили, то в данной игре свой бот был бы у каждого, и никаких прибылей бы этот процесс не приносил. Беда была лишь в том, что я не сумел найти действенного способа обходить баны. Поначалу всё было замечательно: подключение бота к игре шло через InnerSpace, заметить его было практически нельзя, и достаточно было лишь фармить в каком-нибудь б-гом забытом уголке, чтобы не раздражать обычных игроков, и тем самым избегать банов в результате жалоб. А потом гейммастера запретили IS, и всё покатилось под откос... Мы пробовали инжектиться, но особого опыта в этом ни у кого не было, в логе вечно шли какие-то неудобопонятные ошибки, и иной раз честно оплаченный аккаунт отправлялся в бан еще до того, как успевал хотя бы отбить свою стоимость (не говоря уж о прибыли). В общем, в какой-то момент у меня опустились руки, я из проекта ушел и снова пошел работать "на дядю"... но забыть то время так и не смог. Это был тот единственный случай, когда я сам видел, как работает моя программа, сам ею пользовался, сам понимал, где что-то было не удобно / не продумано, сам же доводил такие места до ума - в общем, тот случай, когда была возможность постепенно сделать нечто чуть ли не идеальное. Кроме того, сама по себе задача "запрограммить поведение персонажа в ММОРПГ" была ощутимо сложнее алгоритмически, чем даже "запрограммить станок с программным управлением" (что решается, в общем-то, по набору шаблонов)... и потому это было гораздо интереснее. Под Новый год нередко приходят мысли о каких-то изменениях в будущей жизни; вот и я задумываюсь о том, чтобы бросить свою нынешнюю работу (она всё равно банальна и скучна, да и не очень высоко оплачиваема), и вернуться к чему-то похожему... но вот идей у меня не хватает - отчего я и здесь. С одной стороны, я не могу себе представить ни одной отрасли, где можно было бы легально "писать бота", годами его отлаживать и достраивать, и самое главное - постоянно самому своей "фермой" управлять, и так чтоб тебя за это не "банили". С другой - если я вернусь к традиционному ботописательству для игр, то я уже сейчас отчетливо представляю всю глубину проблемы, которая передо мной встанет: я могу написать алгоритмы поведения и юзер интерфейс, но у меня совершенно не хватает знаний в области "как правильно подключаться и как после этого оставаться незамеченным". Другими словами, в одиночку я просто не справлюсь, а единственный известный мне человек, который был знаком с этой задачей, уже "перерос" и больше не хочет возвращаться в эту область. Особенно удручают новости о том, что как минимум в некоторых играх на стороне игроделов запущены и дорабатываются нейронные сети, специально заточенные под умение отличить даже качественно инжектящегося и минимально "палящегося" в игровом мире бота от реального игрока: просто по поведению. Соответственно, я здесь для того, чтобы спросить сообщество: возможно, я что-то упускаю? Возможно, есть какие-то способы "объединить приятное с полезным", о которых я не подумал?
2
|
|
| 26.12.2018, 14:39 | |
|
Ответы с готовыми решениями:
33
Чисто размышления.... Задачка для размышления Размышления о сборке ПК. Поэтапно |
|
1274 / 975 / 113
Регистрация: 12.01.2010
Сообщений: 1,971
|
|
| 02.01.2019, 12:14 | |
|
ну так развивайся, раз много не знаешь, ну или по крайней мере определись надо оно или нет
я в своё время тоже уперся в знания в той же теме - появлялось всё больше защиты пока я однажды уже не мог ее обойти, всё уходило в дебри отладки ассемблерного кода, шифрования, защиты самих файлов вроде фемиды и т.п В принципе в этом же смысл защиты и есть - фильтровать нас, тех кто не посвящал этому жизнь, а просто знает чуть больше рядового пользователя
0
|
|
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
|
| 02.01.2019, 16:12 [ТС] | |
|
Так, собственно, топик о том и есть: я сейчас как раз вот "на распутьи", и пока сомневаюсь - в каком направлении развиваться. Один путь - найти способ что-то легальное автоматизировать (и там какие-то свои вещи изучать); другой - продолжать в том же духе ботоводства в игрушках (а значит - уже разбираться в совершенно других вещах, а именно вот как раз в умении маскироваться, правильно инжектиться и т.п.). Ну, собственно, есть и третий, как я сейчас понимаю: объединиться с каким-то человеком, который в этом деле уже шарит и сможет написать "скелет" для инжекта и инструментарий для извлечения игровых данных и "подбрасывания кукушкиного яйца"... а там уж я, используя эти инструменты (библиотеки), мог бы обрастить этот скелет "мясом" алгоритмов, чтоб мы потом могли вдвоем использовать такого приватого бота. Но тут опять же непонятно, где такого человека искать... И это лишь первое, что приходит в голову - а еще, возможно, и какие-то другие варианты возможны!
1
|
|
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
|
| 03.01.2019, 22:59 | |
|
Имхо - античиты совершенствуются, не стоят на месте. Что работает сегодня - завтра может перестать работать. Поэтому тут надо уметь отлаживать ассемблерный код, разбираться в защите. Ведь этот "скелет" для инжекта может сломаться в любой момент. А чего-то универсального увы - быть не может.
0
|
|
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
|
| 04.01.2019, 15:20 [ТС] | |
|
Ассемблер я знаю, и отлаживать умею... а вот в защите не разбираюсь, это факт. Но вот интересно: будет ли это равноценным обменом, если я буду ваять алгоритмическую часть (и обновлять её по мере изменения игры), а какой-то другой человек (спец по защите) будет следить за тем, чтобы "не сломалось в любой момент" (т.е. поддерживать свою часть - инструментарий для инжектов / обхода защиты)?
0
|
|
| 05.01.2019, 02:31 | ||
|
Для начала отметим, первое что имеет значение. Это прибыль от затраченного труда, второе интерес к процессу. И так начнем с последнего. На сколько я понимаю вы получите удовлетворение, если будете заняты составлением продуктивного алгоритма. Ну а эффективно реализовав его вы бесспорно оправдываете первое. Но первое безусловно зависит еще и от востребованности. Проще говоря вы ведь не станете писать алгоритм для игры в крестики нолики например. Значит для начала нужно правильно выбрать игру. Что касается алгоритма бота и алгоритма его бана, то первое, что должен делать бот это эмулировать человека. По сути бот должен выглядеть "задротом" играющим в игру все свое свободное время, но никак не машиной не выходящей из игры 24/7 , бот должен пользоваться лишь тем функционалом, что и человек. Эмулировать работу мыши и клавиатуры разумеется, а данные получать из видео и аудио. Замаскировать же программу на собственном компьютере от стороннего ПО (игры) - вообще не составляет проблемы. Соблюдая подобные правила - отличить бота от игрока уже не будет возможным.Разумеется достаточно передовым решением будет создание бота на основе нейронной сети. Научить его можно будет всему. да же в чате будет игрокам отвечать(если это необходимо). В общем так или иначе вопрос сводится к выбору игры. Например я не знаю можно ли хорошо заработать создав хорошего бота в какой нибудь ММОРПГ, но я точно знаю, что это возможно если создать бота например для игры в онлайн покер
0
|
||
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
|||
| 05.01.2019, 07:43 | |||
|
0
|
|||
| 05.01.2019, 09:01 | ||
|
Winhttp22,
А именно интервал клика должен быть в пределах физ. возможности человека, и время нажатия и удежания клика так же должны рандомно меняться в пределах физ. возможностей человека. Такой кликер не забанит никто и никогда. Теперь вам понятно о чем речь?
0
|
||
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
||
| 05.01.2019, 12:34 | ||
|
0
|
||
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
||
| 05.01.2019, 13:43 | ||
|
Но утверждение - "Такой кликер не забанит никто и никогда" не верно. Вы "кликаете" при помощи сис. функции ОС, чит ставит хуки на эту функцию, и клики ваши уже "спалились". Переписываете свой кликер, снимаете хук, но античит обновляется, и уже проверяет целостность кода, и вас уже "спалили". Аналогия с антивирусами и вирусами. И так будет всегда.
0
|
||
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
|
| 05.01.2019, 14:18 | |
|
0
|
|
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
||||||||||
| 05.01.2019, 15:21 [ТС] | ||||||||||
|
По факту, в результате бот умел практически всё то же, что и человек - разве что не чатился, но вот это как раз было в той игрушке в пределах нормы (там даже была встроенная в игру опция "не беспокоить" для убеждённых одиночек, автоматически отклонявшая все входящие запросы на разговоры). Угадай, помогло ли это обходить баны? Не, ну, в какой-то мере, наверняка... но были дни, когда у меня отправлялись в баны даже персы, которые еще не встали на фарм - которые тупо тренировали скиллы (системы "уровней" в этой игре не было). Я вижу тому объяснением ровно две возможные причины: 1) либо, как было озвучено выше, мы неправильно инжектились, что продуцировало ошибки, привлекая ГМов; 2) либо мы неправильно скрывали от ГМов информацию о железе (они ведь вносили в черные списки конфы тех компов, с которых играли ранее забаненные акки). Соответственно, вот с этой частью мне бы не помешала помощь, потому как подобными узко специальными знаниями я не обладаю... Вот черт... не знал, что тут ограничение на время редактирования своего поста всего лишь в 5 минут! Нет, единственный реальный способ зарабатывать много с одного компа - это именно ввод и вывод данных через инжект. Вопрос лишь в том, чтобы написать ХОРОШИЙ инжект! Другое дело, что Ева просто устарела, и давно начала терять подписчиков (причем в первую очередь богатых игроков, готовых покупать иски за реал). Однако, выходят ведь и другие игры - вопрос лишь в том, чтобы выбрать актуальную!
0
|
||||||||||
| 05.01.2019, 17:20 | |||
|
Ответ на первую часть вопроса.
![]() Просто пока писал появилась вторая часть ![]() Candid, Я не знаком с той игрой которую вы приводите, и не смогу сказать по ней что то конкретное. Почему я написал, что важно выбрать игру. Здесь критерий в сложности и затратности ресурсов. Например писать подобного бота для динамической игры на подобии CS или WoT - абсолютно не оправдано.(будет очень сложно и долго, вложения попросту никогда не отобьются). Что не должен делать бот: Лезть в процессы связанные с игрой. Что должен делать: Считывать картинку с экрана. Управлять мышью, клавиатурой. Как спрятать бота: Можно менять название. Программа не должна одинаково называться, на всех ПК. Можно маскироваться под известные процессы , например Opera.exe Ну и еще немногие мелочи... на подобии размера файла. А первый из них отпадает сам собой. Потому, что никакого инжекта и не будет. Когда вы все сделали правильно - у вашего бота ровно те же шансы на бан, как и у обычного игрока. Добавлено через 1 минуту ![]() Добавлено через 1 час 21 минуту Candid, Глянул я на EVE Online. Я так понимаю вы писали бота для нее в качестве скрипта подгружаемого вместе с игрой?(Так же как грузятся моды) Я же веду речь о (собственном) стороннем приложении. Вам необходимо реализовать. Перехват пакета данных при отправке его игрой на сервер или получения с сервера. Вот над этим вариантом и стоит работать. Игра получает пакет данных от сервера и бот за компанию ![]() Можно конечно писать запросы к серверу и без клиента игры(эмулировать его), но вот тогда как раз это будет вечная битва с игроделами ![]() Делать же ввод данных с экрана для такой игры как EVE Online мне думается очень бредовая затея. (если только не написать нейросеть), да и то - овчинка выделки не стоит. А вывод данных в игру путем мыши и клавиатуры тривиален - рассматривать не будем
0
|
|||
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
||||
| 05.01.2019, 17:40 [ТС] | ||||
|
Нет, единственный реальный способ запускать много ботов с одного компа - это читать не графику, а данные; и отправлять на сервер, соответственно, не нажатия кнопок и клики, а результаты запуска тех или иных функций из движка игры. Без этого просто не заработать приемлимых денег в единицу времени... кроме как разве что заставить всю квартиру старенькими компами, на каждом из которых запускается лишь одно окно. Но задолбаешься платить за электричество, да и кататься по комнате между всеми столами, ИМХО.
0
|
||||
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
||||
| 05.01.2019, 17:48 [ТС] | ||||
|
0
|
||||
|
169 / 132 / 29
Регистрация: 16.02.2013
Сообщений: 867
|
|||
| 05.01.2019, 17:57 | |||
|
Добавлено через 5 минут
0
|
|||
|
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 157
|
|||
| 05.01.2019, 18:01 [ТС] | |||
|
Добавлено через 2 минуты Прошу понять меня правильно: я не предлагаю сделать нечто, что будет круче человека, и потому обыгрывать человека. Я предлагаю сделать что-то, что будет ВЫНОСЛИВЕЕ человека, и заменит несколько десятков людей, которые а) хотят кушать (/оплаты), и б) способны играть, не уставая, лишь 6-8 часов в день. И все это - посредством всего лишь одного современного компа!
0
|
|||
| 05.01.2019, 18:01 | |
|
Помогаю со студенческими работами здесь
20
Размышления на тему охлаждения ЦП Размышления по поводу таймера
Размышления о string из STL Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|