Форум программистов, компьютерный форум, киберфорум
C#: API, боты
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.86/21: Рейтинг темы: голосов - 21, средняя оценка - 4.86
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
1

Размышления о ботописательстве

26.12.2018, 14:39. Просмотров 4274. Ответов 32
Метки нет (Все метки)

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

Но в этой бочке мёда и своя ложка дёгтя тоже оказалась... которая со временем разрослась до размеров самой "бочки". А именно: ботов, к счастью или к сожалению, банят. Почему "к счастью"? Ну, если б совсем не банили, то в данной игре свой бот был бы у каждого, и никаких прибылей бы этот процесс не приносил. Беда была лишь в том, что я не сумел найти действенного способа обходить баны. Поначалу всё было замечательно: подключение бота к игре шло через InnerSpace, заметить его было практически нельзя, и достаточно было лишь фармить в каком-нибудь б-гом забытом уголке, чтобы не раздражать обычных игроков, и тем самым избегать банов в результате жалоб. А потом гейммастера запретили IS, и всё покатилось под откос... Мы пробовали инжектиться, но особого опыта в этом ни у кого не было, в логе вечно шли какие-то неудобопонятные ошибки, и иной раз честно оплаченный аккаунт отправлялся в бан еще до того, как успевал хотя бы отбить свою стоимость (не говоря уж о прибыли). В общем, в какой-то момент у меня опустились руки, я из проекта ушел и снова пошел работать "на дядю"... но забыть то время так и не смог. Это был тот единственный случай, когда я сам видел, как работает моя программа, сам ею пользовался, сам понимал, где что-то было не удобно / не продумано, сам же доводил такие места до ума - в общем, тот случай, когда была возможность постепенно сделать нечто чуть ли не идеальное. Кроме того, сама по себе задача "запрограммить поведение персонажа в ММОРПГ" была ощутимо сложнее алгоритмически, чем даже "запрограммить станок с программным управлением" (что решается, в общем-то, по набору шаблонов)... и потому это было гораздо интереснее.

Под Новый год нередко приходят мысли о каких-то изменениях в будущей жизни; вот и я задумываюсь о том, чтобы бросить свою нынешнюю работу (она всё равно банальна и скучна, да и не очень высоко оплачиваема), и вернуться к чему-то похожему... но вот идей у меня не хватает - отчего я и здесь. С одной стороны, я не могу себе представить ни одной отрасли, где можно было бы легально "писать бота", годами его отлаживать и достраивать, и самое главное - постоянно самому своей "фермой" управлять, и так чтоб тебя за это не "банили". С другой - если я вернусь к традиционному ботописательству для игр, то я уже сейчас отчетливо представляю всю глубину проблемы, которая передо мной встанет: я могу написать алгоритмы поведения и юзер интерфейс, но у меня совершенно не хватает знаний в области "как правильно подключаться и как после этого оставаться незамеченным". Другими словами, в одиночку я просто не справлюсь, а единственный известный мне человек, который был знаком с этой задачей, уже "перерос" и больше не хочет возвращаться в эту область. Особенно удручают новости о том, что как минимум в некоторых играх на стороне игроделов запущены и дорабатываются нейронные сети, специально заточенные под умение отличить даже качественно инжектящегося и минимально "палящегося" в игровом мире бота от реального игрока: просто по поведению. Соответственно, я здесь для того, чтобы спросить сообщество: возможно, я что-то упускаю? Возможно, есть какие-то способы "объединить приятное с полезным", о которых я не подумал?
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.12.2018, 14:39
Ответы с готовыми решениями:

Чисто размышления....
Вот пришли мысли, после того как в директ сайт отправил... Значится так: во-первых хочу чтоб...

Задачка для размышления
Помогите решить задачку. :) Значения элементов массива вычислить отдельной функцией по формуле...

Размышления о сборке ПК. Поэтапно
Приветствую, cyberforum! Тема/вопрос о том, как бы вы поступили в аналогичной ситуации: В 2009...

Задачка для размышления
Всем доброго времени суток. В книге нашел такой вопрос : Если ракета находится в точке где сила...

32
1263 / 964 / 113
Регистрация: 12.01.2010
Сообщений: 1,971
02.01.2019, 12:14 2
ну так развивайся, раз много не знаешь, ну или по крайней мере определись надо оно или нет
я в своё время тоже уперся в знания в той же теме - появлялось всё больше защиты пока я однажды уже не мог ее обойти, всё уходило в дебри отладки ассемблерного кода, шифрования, защиты самих файлов вроде фемиды и т.п
В принципе в этом же смысл защиты и есть - фильтровать нас, тех кто не посвящал этому жизнь, а просто знает чуть больше рядового пользователя
0
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
02.01.2019, 16:12  [ТС] 3
Так, собственно, топик о том и есть: я сейчас как раз вот "на распутьи", и пока сомневаюсь - в каком направлении развиваться. Один путь - найти способ что-то легальное автоматизировать (и там какие-то свои вещи изучать); другой - продолжать в том же духе ботоводства в игрушках (а значит - уже разбираться в совершенно других вещах, а именно вот как раз в умении маскироваться, правильно инжектиться и т.п.). Ну, собственно, есть и третий, как я сейчас понимаю: объединиться с каким-то человеком, который в этом деле уже шарит и сможет написать "скелет" для инжекта и инструментарий для извлечения игровых данных и "подбрасывания кукушкиного яйца"... а там уж я, используя эти инструменты (библиотеки), мог бы обрастить этот скелет "мясом" алгоритмов, чтоб мы потом могли вдвоем использовать такого приватого бота. Но тут опять же непонятно, где такого человека искать... И это лишь первое, что приходит в голову - а еще, возможно, и какие-то другие варианты возможны!
1
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
03.01.2019, 22:59 4
Имхо - античиты совершенствуются, не стоят на месте. Что работает сегодня - завтра может перестать работать. Поэтому тут надо уметь отлаживать ассемблерный код, разбираться в защите. Ведь этот "скелет" для инжекта может сломаться в любой момент. А чего-то универсального увы - быть не может.
0
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
04.01.2019, 15:20  [ТС] 5
Ассемблер я знаю, и отлаживать умею... а вот в защите не разбираюсь, это факт. Но вот интересно: будет ли это равноценным обменом, если я буду ваять алгоритмическую часть (и обновлять её по мере изменения игры), а какой-то другой человек (спец по защите) будет следить за тем, чтобы "не сломалось в любой момент" (т.е. поддерживать свою часть - инструментарий для инжектов / обхода защиты)?
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 02:31 6
Цитата Сообщение от Candid Посмотреть сообщение
Возможно, есть какие-то способы "объединить приятное с полезным", о которых я не подумал?
Уверен, что да.
Для начала отметим, первое что имеет значение. Это прибыль от затраченного труда, второе интерес к процессу.
И так начнем с последнего.
На сколько я понимаю вы получите удовлетворение, если будете заняты составлением продуктивного алгоритма.
Ну а эффективно реализовав его вы бесспорно оправдываете первое. Но первое безусловно зависит еще и от востребованности.
Проще говоря вы ведь не станете писать алгоритм для игры в крестики нолики например.
Значит для начала нужно правильно выбрать игру.
Что касается алгоритма бота и алгоритма его бана, то первое, что должен делать бот это эмулировать человека.
По сути бот должен выглядеть "задротом" играющим в игру все свое свободное время, но никак не машиной не выходящей из игры 24/7 , бот должен пользоваться лишь тем функционалом, что и человек. Эмулировать работу мыши и клавиатуры разумеется, а данные получать из видео и аудио. Замаскировать же программу на собственном компьютере от стороннего ПО (игры) - вообще не составляет проблемы. Соблюдая подобные правила - отличить бота от игрока уже не будет возможным.
Разумеется достаточно передовым решением будет создание бота на основе нейронной сети.
Научить его можно будет всему. да же в чате будет игрокам отвечать(если это необходимо).
В общем так или иначе вопрос сводится к выбору игры.
Например я не знаю можно ли хорошо заработать создав хорошего бота в какой нибудь ММОРПГ,
но я точно знаю, что это возможно если создать бота например для игры в онлайн покер
0
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
05.01.2019, 07:43 7
Цитата Сообщение от Candid Посмотреть сообщение
а какой-то другой человек (спец по защите) будет следить за тем, чтобы "не сломалось в любой момент" (т.е. поддерживать свою часть - инструментарий для инжектов / обхода защиты)?
ну если я например - обойду защиту, и напишу инжектор, то и с остальным у меня не будет проблем, зачем мне еще один человек? А так да, знаю, что есть команды читоделов (правда не в курсе - сколько там разрабов всего), которые работают над читами для игр, и продают читы. Ну это такая тема - что сегодня все хорошо, клиенты есть, чит работает, а завтра - перебанило всех, и у тебя большая часть клиентов отсеялась

Цитата Сообщение от bbbw Посмотреть сообщение
Эмулировать работу мыши и клавиатуры разумеется, а данные получать из видео и аудио. Замаскировать же программу на собственном компьютере от стороннего ПО (игры) - вообще не составляет проблемы. Соблюдая подобные правила - отличить бота от игрока уже не будет возможным.
подобные кликеры уже отсеиваются античитами давно
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 09:01 8
Winhttp22,
Цитата Сообщение от Winhttp22 Посмотреть сообщение
подобные кликеры уже отсеиваются античитами давно
Вы что то путаете - кликры здесь не причем. Для рпимера напишите свой (кликер) правильно.
А именно интервал клика должен быть в пределах физ. возможности человека, и время нажатия и удежания клика так же должны рандомно меняться в пределах физ. возможностей человека.
Такой кликер не забанит никто и никогда. Теперь вам понятно о чем речь?
0
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
05.01.2019, 12:34 9
Цитата Сообщение от bbbw Посмотреть сообщение
Такой кликер не забанит никто и никогда. Теперь вам понятно о чем речь?
интересное утверждение. Не учли одного - эмуляция движения мыши, как у человека. Да, и проживет такое не долго - пока не заинтересуются вами админы, и не обновят античит.
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 12:45 10
Winhttp22, Если вы все сделаете правильно - ваш (кликер) невозможно будет отличить от действий человека.
Вы должны это понимать. Я не собираюсь здесь что бы то нибыло вам доказывать, ибо тема не ваша.
0
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
05.01.2019, 13:43 11
Цитата Сообщение от bbbw Посмотреть сообщение
Winhttp22, Если вы все сделаете правильно - ваш (кликер) невозможно будет отличить от действий человека.
ну если не учитывать защиту, которая совершенствуется, и продумать алгоритм эмуляции движений мыши, как у человека - то возможно что-то и получится.
Но утверждение - "Такой кликер не забанит никто и никогда" не верно. Вы "кликаете" при помощи сис. функции ОС, чит ставит хуки на эту функцию, и клики ваши уже "спалились". Переписываете свой кликер, снимаете хук, но античит обновляется, и уже проверяет целостность кода, и вас уже "спалили". Аналогия с антивирусами и вирусами. И так будет всегда.
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 14:04 12
Winhttp22, Рад что смысл вы поняли, жаль суть не уловили.
А для управления мышью Никакие "хуки" не нужны!
0
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
05.01.2019, 14:18 13
Цитата Сообщение от bbbw Посмотреть сообщение
А для управления мышью Никакие "хуки" не нужны!
читайте внимательней
Цитата Сообщение от Winhttp22 Посмотреть сообщение
чит ставит хуки на эту функцию
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 14:38 14
Winhttp22, Хотите просветиться как создать бота который не палится - создавайте тему я вас просвещу!
0
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
05.01.2019, 15:21  [ТС] 15
Цитата Сообщение от bbbw Посмотреть сообщение
На сколько я понимаю вы получите удовлетворение, если будете заняты составлением продуктивного алгоритма.
Ну а эффективно реализовав его вы бесспорно оправдываете первое. Но первое безусловно зависит еще и от востребованности.
Проще говоря вы ведь не станете писать алгоритм для игры в крестики нолики например.
Значит для начала нужно правильно выбрать игру.
Совершенно верно. И "правильно выбрать игру" - тоже достаточно легко решаемая задача, как минимум для меня: у меня до сих пор сохранились контакты тех магазинов, через которые я продавал игровую денежку, так что я могу просто поговорить с барыгами и выяснить, где сейчас что пользуется спросом.

Цитата Сообщение от bbbw Посмотреть сообщение
Что касается алгоритма бота и алгоритма его бана, то первое, что должен делать бот это эмулировать человека.
По сути бот должен выглядеть "задротом" играющим в игру все свое свободное время, но никак не машиной не выходящей из игры 24/7 ,
Всё верно, но этого мало. Игра, где я фармил игровые деньги на продажу три года, была EVE Online. Когда там пошли баны, я перепробовал всё, что было в моих силах (читай: в пределах созданного инструментария). Я ставил разные акки на фарм с разным временем - от 4 до 12 часов в день. Я "научил" бота динамически принимать миссии - только самые лучшие, но и то "с разбросом" (т.е. иногда он делал и левые миссии тоже - где-то в 5% случаев). Я научил его убивать неписей в прописанной в файле настроек миссии последовательности, как делал бы игрок (чтобы не тратить время на всякий необязательный трэш); причем последовательности эти были разные в зависимости от миссий: к примеру, на некоторых миссиях убийство определенных неписей "триггерило" появление подкреплений, и нужно было строго поименно "помнить", кого не трогать до последнего момента. Я научил его двигаться, обходя препятствия - причем одновременно отстреливать "висящих на хвосте" уже "заметивших" персонажа неписей, и двигаться к следующим целям, либо к цели миссионного задания (а не просто к тому, по кому стреляем, как делал бы тупой бот). Я научил его реагировать на разнообразные "внештатные ситуации", типа воздействия других игроков (в т.ч. "пиратов", ворующих предметы миссионных заданий и провоцирующих на ПВП). Я создал систему автоматической сортировки лута: что-то отправлялось на автоматическую продажу, что-то "на переплавку", а что-то (самое ценное) откладывалось и продавалось ручками, раз в трое-шестеро суток для каждого акка - в отличие опять же от обычного бота, который продаёт все подряд. Я добавил автоматическое управление аккаунтами, позволяющее чередовать персонажей (ну, типа "этот на сегодня устал и пошел спать, зашел другой") - но, разумеется, с логоффом не в строго определенное время, а только после окончания миссии (либо по истечении таймера, если всё совсем плохо). Да хосспаде, я даже вставил специальные "человеческие ошибки" - мисклики (с определенной - небольшой - вероятностью), случайные задержки там и сям (но только не когда перс на грани выживания), и т.п.! Наконец, я добавил на некоторые совсем уж непотребные ситуации проигрывание звуковых файлов, позволяющих привлечь внимание хозяина фермы (т.е. меня), который мог бы "перейти на ручное управление" конкретным персонажем, и сделать то, что совсем уж не было предусмотрено алгоритмом.

По факту, в результате бот умел практически всё то же, что и человек - разве что не чатился, но вот это как раз было в той игрушке в пределах нормы (там даже была встроенная в игру опция "не беспокоить" для убеждённых одиночек, автоматически отклонявшая все входящие запросы на разговоры). Угадай, помогло ли это обходить баны? Не, ну, в какой-то мере, наверняка... но были дни, когда у меня отправлялись в баны даже персы, которые еще не встали на фарм - которые тупо тренировали скиллы (системы "уровней" в этой игре не было). Я вижу тому объяснением ровно две возможные причины:
1) либо, как было озвучено выше, мы неправильно инжектились, что продуцировало ошибки, привлекая ГМов;
2) либо мы неправильно скрывали от ГМов информацию о железе (они ведь вносили в черные списки конфы тех компов, с которых играли ранее забаненные акки).
Соответственно, вот с этой частью мне бы не помешала помощь, потому как подобными узко специальными знаниями я не обладаю...

Цитата Сообщение от bbbw Посмотреть сообщение
бот должен пользоваться лишь тем функционалом, что и человек.

Эмулировать работу мыши и клавиатуры разумеется, а данные получать из видео и аудио.
Цитата Сообщение от bbbw Посмотреть сообщение
Замаскировать же программу на собственном компьютере от стороннего ПО (игры) - вообще не составляет проблемы. Соблюдая подобные правила - отличить бота от игрока уже не будет возможным.
Разумеется достаточно передовым решением будет создание бота на основе нейронной сети.
Научить его можно будет всему. да же в чате будет игрокам отвечать(если это необходимо).
В общем так или иначе вопрос сводится к выбору игры.
Например я не знаю можно ли хорошо заработать создав хорошего бота в какой нибудь ММОРПГ,
но я точно знаю, что это возможно если создать бота например для игры в онлайн покер
Добавлено через 34 минуты
Вот черт... не знал, что тут ограничение на время редактирования своего поста всего лишь в 5 минут!

Цитата Сообщение от bbbw Посмотреть сообщение
бот должен пользоваться лишь тем функционалом, что и человек.

Эмулировать работу мыши и клавиатуры разумеется, а данные получать из видео и аудио.
А вот тут - не соглашусь. Да, это распространенная практика - распознавание изображений, эмуляция движения мышки и кликов... но у такого подхода есть главная проблема: мышка становится "занята" одним игровым окном, что лишает возможности запустить, к примеру, четыре (а то и девять - в зависимости от потребностей игры и мощности компа) акков на одном компе. Не, конечно, можно запускать каждый в своей виртуальной машине... но уж отследить тот факт, что акк запускается на ВМ (чего практически никогда не делает обычный игрок), проверить его и забанить - для ГМов совсем не проблема.

Нет, единственный реальный способ зарабатывать много с одного компа - это именно ввод и вывод данных через инжект. Вопрос лишь в том, чтобы написать ХОРОШИЙ инжект!

Цитата Сообщение от bbbw Посмотреть сообщение
Например я не знаю можно ли хорошо заработать создав хорошего бота в какой нибудь ММОРПГ,
В те времена (2012й), когда нас еще не банили ТАК активно (т.е. банили, но примерно раз в 4-7 месяцев, что позволяло персу стократно отбить вложенные в его прокачку реальные деньги), и когда миллиард исков (ISK - игровая валюта в Еве) стоил примерно десять баксов (по закупочным ценам магазинов), я поднимал в среднем 4 килобакса в месяц, причем только лишь с одного компа. И это был еще не максимально оптимизированный бот... я его после этого и дальше "допиливал", еще больше поднимая прибыль с каждого акка в единицу времени, но доходы уже только падали по причине участившихся банов. Да, по американским (к примеру) меркам - вряд ли это называлось "хорошо заработать", но по российским, я полагаю - вполне. Собственно, именно благодаря этому боту я обзавелся собственной хатой в городе-курорте, в которой сейчас сижу. Другое дело, что, когда я уходил, цены на иски уже упали до 3-4 баксов за лярд... ну, и потенциальные доходы тоже упали пропорционально. А если еще учесть баны, то там и вовсе стало невозможно прожить только лишь на доходы с ботоводства.

Другое дело, что Ева просто устарела, и давно начала терять подписчиков (причем в первую очередь богатых игроков, готовых покупать иски за реал). Однако, выходят ведь и другие игры - вопрос лишь в том, чтобы выбрать актуальную!

Цитата Сообщение от Winhttp22 Посмотреть сообщение
ну если я например - обойду защиту, и напишу инжектор, то и с остальным у меня не будет проблем, зачем мне еще один человек?
Хороший и вполне логичный вопрос... на который есть столь же логичный ответ. У меня есть список всего добавленного мной в того бота, и в нем 49 пунктов (причем некоторые ооочень обширные, типа той же самой приоритизации целей или обхода препятствий). Если судить только лишь по объему кода, то на момент моего ухода тело бота (алгоритмическая часть) выросло примерно в четыре раза, тогда как библиотека с инструментарием - разве что процентов на 20. Не-не, я не спорю: поднять этот проект в одиночку - вполне возможно для того, кто знает, как правильно инжектиться и как скрываться от ГМов... но вот вопрос: готовы ли знающий это потратить еще сотни (если не тысячи) часов своего времени на доведение до ума и тонкую настройку своего детища? Не найдется ли у него более интересных занятий? Если готов - то да, я ему не нужен.

Цитата Сообщение от Winhttp22 Посмотреть сообщение
А так да, знаю, что есть команды читоделов (правда не в курсе - сколько там разрабов всего), которые работают над читами для игр, и продают читы. Ну это такая тема - что сегодня все хорошо, клиенты есть, чит работает, а завтра - перебанило всех, и у тебя большая часть клиентов отсеялась
Есть разница между читом и ботом. Чит, он же эксплойт - позволяет просто использовать дыру в коде, и получать какие-то ништяки, разрабами не предусмотренные. Разумеется, время от времени разрабы просыпаются, латают дыры и банят тех, кто их использовал. Бот же просто автоматизирует использование вполне легальных игровых механизмов; и, если сей бот не отличается от обычного игрока, то и банить его не смогут. Не, ну, конечно, смогут, когда поймут, что с данного конкретного акка уже ушло к разным другим аккам мегатонны игровых денег без получения чего-то взамен... но тогда банить будет уже немножко поздно, хехехе.

Цитата Сообщение от bbbw Посмотреть сообщение
Winhttp22, Хотите просветиться как создать бота который не палится - создавайте тему я вас просвещу!
А чем эта тема не подходит? Просветите меня!
0
169 / 98 / 25
Регистрация: 07.08.2016
Сообщений: 354
Записей в блоге: 1
05.01.2019, 17:20 16
Ответ на первую часть вопроса.
Просто пока писал появилась вторая часть

Candid, Я не знаком с той игрой которую вы приводите, и не смогу сказать по ней что то конкретное.
Почему я написал, что важно выбрать игру.
Здесь критерий в сложности и затратности ресурсов.
Например писать подобного бота для динамической игры на подобии CS или WoT - абсолютно не оправдано.(будет очень сложно и долго, вложения попросту никогда не отобьются).
Что не должен делать бот:
Лезть в процессы связанные с игрой.
Что должен делать:
Считывать картинку с экрана.
Управлять мышью, клавиатурой.
Как спрятать бота:
Можно менять название. Программа не должна одинаково называться, на всех ПК.
Можно маскироваться под известные процессы , например Opera.exe
Ну и еще немногие мелочи... на подобии размера файла.

Цитата Сообщение от Candid Посмотреть сообщение
1) либо, как было озвучено выше, мы неправильно инжектились, что продуцировало ошибки, привлекая ГМов;
2) либо мы неправильно скрывали от ГМов информацию о железе (они ведь вносили в черные списки конфы тех компов, с которых играли ранее забаненные акки).
Написав такого бота вы не попадете в ситуацию, где придется решать эти вопросы.
А первый из них отпадает сам собой.
Потому, что никакого инжекта и не будет.

Когда вы все сделали правильно - у вашего бота ровно те же шансы на бан, как и у обычного игрока.

Добавлено через 1 минуту
Цитата Сообщение от Candid Посмотреть сообщение
Бот же просто автоматизирует использование вполне легальных игровых механизмов; и, если сей бот не отличается от обычного игрока, то и банить его не смогут. Не, ну, конечно, смогут, когда поймут, что с данного конкретного акка уже ушло к разным другим аккам мегатонны игровых денег без получения чего-то взамен... но тогда банить будет уже немножко поздно, хехехе.
Абсолютно верно!

Добавлено через 1 час 21 минуту
Candid, Глянул я на EVE Online.
Я так понимаю вы писали бота для нее в качестве скрипта подгружаемого вместе с игрой?(Так же как грузятся моды)
Я же веду речь о (собственном) стороннем приложении.
Вам необходимо реализовать.
Перехват пакета данных при отправке его игрой на сервер или получения с сервера.
Вот над этим вариантом и стоит работать.
Игра получает пакет данных от сервера и бот за компанию
Можно конечно писать запросы к серверу и без клиента игры(эмулировать его), но вот тогда как раз это будет вечная битва с игроделами

Делать же ввод данных с экрана для такой игры как EVE Online мне думается очень бредовая затея. (если только не написать нейросеть), да и то - овчинка выделки не стоит.
А вывод данных в игру путем мыши и клавиатуры тривиален - рассматривать не будем
0
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
05.01.2019, 17:40  [ТС] 17
Цитата Сообщение от bbbw Посмотреть сообщение
Например писать подобного бота для динамической игры на подобии CS или WoT - абсолютно не оправдано.(будет очень сложно и долго, вложения попросту никогда не отобьются).
Это потому, что там вся игра состоит из ПВП, а значит - слишком много непредсказуемости, слишком много вариантов. Легко написать программу, которая обыграет человека, к примеру, в Калах - нам это давали в качестве задания еще в период обучения программингу. Сложно, но можно - в шахматы (даже Каспарова уже обыгрывал комп, пусть даже очень мощный комп). Но написать идеального бота для ВоТ - практически нереально за то время, которое дано. А времени компьютерной игрушке обычно дано немного... где-то год-два, максимум где-то лет пять, но дальше в любом случае начнется самое неприятное: игру начнут покидать богатенькие буратины, которые приходят лишь "посмотреть и поиграть в кайф", даже если для этого приходится покупать игровую валюту за реал. Остаются лишь задроты, но у задротов а) и так хватает внутриигровых денег, и б) не так чтоб много "денег на столовку от мамы", чтобы еще и тратить их на игру. Так было с Линягой, так было с ВоВом, с Евой, с 3й Дьябой, с Айоном, да практически со всеми играми, которые давно "на слуху"... Бота надо писать для игрушки, которая не так давно появилась (но уже привлекает толпы поклонников), и при этом которая требует от игрока гринда для того, чтобы его персонаж был успешным (/хорошо экипированным). Гринд (читай: ПВЕ) написать несложно... даже для очень навороченных игр типа Евы базис ПВЕ-бота пишется за месяцок, и доводится до ума где-то с год, а дальше можно "стричь купоны" (ну, и присматривать следующую игру, когда "купонов" начинает капать мало).

Цитата Сообщение от bbbw Посмотреть сообщение
Что должен делать:
Считывать картинку с экрана.
Управлять мышью, клавиатурой.
Нет. См. мою вторую часть поста. Вот как выглядела моя ферма, к примеру - скрин в аттаче. О каком считывании с экрана может идти речь? Ладно, можно было б эти окна расположить квадратом 3х3... но тогда бы изображение стало таким мелким, что ни о каком распознавании не могло бы быть и речи! К тому же, к примеру, вот зачесалась у разрабов левая задняя пятка, и переделали они картинки мобов (или хотя бы иконки) вместе с каким-то патчем. И что, по новой составлять базу для распознавания?

Нет, единственный реальный способ запускать много ботов с одного компа - это читать не графику, а данные; и отправлять на сервер, соответственно, не нажатия кнопок и клики, а результаты запуска тех или иных функций из движка игры. Без этого просто не заработать приемлимых денег в единицу времени... кроме как разве что заставить всю квартиру старенькими компами, на каждом из которых запускается лишь одно окно. Но задолбаешься платить за электричество, да и кататься по комнате между всеми столами, ИМХО.

Цитата Сообщение от bbbw Посмотреть сообщение
Как спрятать бота:
Можно менять название. Программа не должна одинаково называться, на всех ПК.
Можно маскироваться под известные процессы , например Opera.exe
Ну и еще немногие мелочи... на подобии размера файла.
Всё это актуально лишь тогда, когда ты либо а) используешь публичного (продаваемого) бота, либо б) сам пишешь бота на продажу. В этом случае бота могут скачать и разрабы игры, "разобрать" его и встроить в игру способ обнаружения оного. Тоже вариант, конечно, но я предлагаю идею попроще: писать для себя, и использовать самим. Когда бот есть только у одного-двух человек, разрабы в принципе его не могут получить, а значит - и не знают, что им искать. Это называется "приватный бот" - самое надежное средство от банов (если, опять же, он качественно написан).
0
Миниатюры
Размышления о ботописательстве  
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
05.01.2019, 17:48  [ТС] 18
Цитата Сообщение от bbbw Посмотреть сообщение
Я так понимаю вы писали бота для нее в качестве скрипта подгружаемого вместе с игрой?(Так же как грузятся моды)
Я же веду речь о (собственном) стороннем приложении.
Отнюдь - в Еве не было своего скриптового языка (как, к примеру, Lua в ВоВе), и вообще были запрещены правилами любые моды. Это была именно что самостоятельная dll-ка, которую инжектили в игру.

Цитата Сообщение от bbbw Посмотреть сообщение
Вам необходимо реализовать.
Перехват пакета данных при отправке его игрой на сервер или получения с сервера.
Вот над этим вариантом и стоит работать.
Игра получает пакет данных от сервера и бот за компанию
Беда в том, что я чистый прикладник, который всю жизнь писал лишь приложения для одного компа, либо клиентскую часть клиент-серверных прог. Т.е. я умею использовать самый базис для работы по сети (типа того же WebRequest в C#), но не более того. Потому я и сказал изначально, что либо мне нужно где-то всему этому учиться, либо мне нужен коллега с соответствующим опытом...

Цитата Сообщение от bbbw Посмотреть сообщение
Делать же ввод данных с экрана для такой игры как EVE Online мне думается очень бредовая затея. (если только не написать нейросеть), да и то - овчинка выделки не стоит.
А вывод данных в игру путем мыши и клавиатуры тривиален - рассматривать не будем
Да она в любом случае бредовая - см. выше... в первую очередь по причине невозможности (или слишком большой сложности) запуска многочисленных окон игры на одном компе, а во вторую - по причине громадных проблем с адаптацией к изменениям отображаемого контента.
0
159 / 126 / 25
Регистрация: 16.02.2013
Сообщений: 849
05.01.2019, 17:57 19
Цитата Сообщение от Candid Посмотреть сообщение
что лишает возможности запустить, к примеру, четыре (а то и девять - в зависимости от потребностей игры и мощности компа) акков на одном компе. Не, конечно, можно запускать каждый в своей виртуальной машине... но уж отследить тот факт, что акк запускается на ВМ (чего практически никогда не делает обычный игрок), проверить его и забанить - для ГМов совсем не проблема.
то есть, отследить, что игра запущена под вм - это не проблема, а отследить то, что игра запущена в несколько окон - это проблема?

Добавлено через 5 минут
Цитата Сообщение от Candid Посмотреть сообщение
Есть разница между читом и ботом. Чит, он же эксплойт - позволяет просто использовать дыру в коде, и получать какие-то ништяки, разрабами не предусмотренные. Разумеется, время от времени разрабы просыпаются, латают дыры и банят тех, кто их использовал. Бот же просто автоматизирует использование вполне легальных игровых механизмов; и, если сей бот не отличается от обычного игрока, то и банить его не смогут.
а чит для кс аим - это вообще чит, или бот? Он ведь автоматизирует вполне легальный игровой механизм - наводит прицел на врага. Но банят на раз два.
0
14 / 8 / 1
Регистрация: 21.04.2014
Сообщений: 91
05.01.2019, 18:01  [ТС] 20
Цитата Сообщение от Winhttp22 Посмотреть сообщение
то есть, отследить, что игра запущена под вм - это не проблема, а отследить то, что игра запущена в несколько окон - это проблема?
А зачем это отслеживать? Надо лишь искать игру, где это изначально не запрещено. В той же Еве было немало игроков, которые играли в 2-3-4 окна: в одном танк, в другом дамагер, в третьем логист, в четвертом разведчик/сканер, и так далее. Пока в ВоВе был разрешен Иннерспейс/мультбокс, вообще чистили целые инстансы командой в пять шаманов (они либо дружно дамажат, либо дружно лечат одного из себя). Соответственно, не будут же разрабы проверять - что именно творится на каждом компе, на котором запущено несколько окон их игры... может ли это быть исполнено человеком ручками/мультибоксом, или там что-то подозрительно похожее на ботов?

Добавлено через 2 минуты
Цитата Сообщение от Winhttp22 Посмотреть сообщение
а чит для кс аим - это вообще чит, или бот? Он ведь автоматизирует вполне легальный игровой механизм - наводит прицел на врага. Но банят на раз два.
А, в этом смысле... Ну, это скорее придание человеку нечеловеческих реакций - понятно, что это чит, и столь же понятно, что боту можно сделать искусственные задержки случайной величины, чтобы он в этом смысле не отличался от человека.

Прошу понять меня правильно: я не предлагаю сделать нечто, что будет круче человека, и потому обыгрывать человека. Я предлагаю сделать что-то, что будет ВЫНОСЛИВЕЕ человека, и заменит несколько десятков людей, которые а) хотят кушать (/оплаты), и б) способны играть, не уставая, лишь 6-8 часов в день. И все это - посредством всего лишь одного современного компа!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.01.2019, 18:01

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Размышления на тему охлаждения ЦП
Приветики всем. Есть пара вопросов: 1 Что такое водное охлаждение и с чем его едят ?? ...

Размышления по поводу таймера
Уважаемый форумчане, возникла следующая мысль и, соответсвенно, вытекающий из нее вопрос: Допустим...

Размышления о создании объектов
Итак ситуация такова. Что в Дельфи стандартными методами невозможно определить существует объект...

Размышления о string из STL
Класс string из шаблона STL замечательная вещь! Но вчера он меня чуть не убил... #include <string>...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.