Боты для компьютерных игр
1.0.0
1.0.0
  • Боты для компьютерных игр
  • manuscript
    • Кликеры
      • Перехват устройств вывода
      • Инструменты для разработки
      • Внедрение данных на уровне ОС
      • Пример кликера для Lineage 2
      • Методы защиты от кликеров
    • Внеигровые боты
      • Методы защиты от внеигровых ботов
      • Пример бота для NetChess
      • Перехват трафика
      • Сетевые протоколы
      • Инструменты для разработки
    • Специальные техники
      • Перехват данных на уровне ОС
      • Эмуляция устройств ввода
    • Классификация ботов
      • Задачи ботов
      • types-of-bots
      • Игровое приложение
    • Внутриигровые боты
      • Методы защиты от внутриигровых ботов
      • Инструменты для разработки
      • Доступ к памяти процесса
      • Пример бота для Diablo 2
      • Организация памяти процесса
    • Заключение
    • foreword
Powered by GitBook
On this page
  • Язык программирования
  • Отладчики
  • Инструменты для анализа памяти

Was this helpful?

  1. manuscript
  2. Внутриигровые боты

Инструменты для разработки

PreviousМетоды защиты от внутриигровых ботовNextДоступ к памяти процесса

Last updated 5 years ago

Was this helpful?

Разработка внутриигровых ботов происходит на более низком уровне по сравнению с кликерами. В ней приходится оперировать простыми абстракциями ОС. Поэтому наши инструменты будут сложнее, чем в прошлой главе.

Язык программирования

В этой главе мы будем использовать только язык C++. Для компиляции и работы с кодом рекомендую вам бесплатную IDE вместо открытого набора инструментов MinGW. Проблема в том, что MinGW плохо интегрируется с некоторыми Windows библиотеками (например dbghelp.dll). Вы можете пробовать компилировать примеры этой главы с MinGW, но будьте готовы переключиться на Visual Studio IDE.

Не забудьте обновить для того, чтобы использовать последнюю версию Visual Studio IDE.

Для доступа к Windows Native API и линковки с системной библиотекой ntdll.dll вам понадобится [Windows SDK]()).

Отладчики

Отладчик – это инструмент для тестирования и поиска ошибок в приложениях. Обычно им пользуются разработчики программ для исправления своего кода. Однако у отладчиков есть возможности, которые оказываются полезными для исследования чужих приложений.

Бесплатный отладчик мы будем активно использовать на протяжении всей главы. Простой и понятный интерфейс пользователя является его главным преимуществом. Также OllyDbg предоставляет широкие возможности для анализа Windows приложений без исходного кода. Главный его недостаток заключается в поддержке только 32-битный приложений. Рекомендую вам использовать последнюю версию .

Отладчик с открытым исходным кодом поддерживает и 32-битные, и 64-битные приложения. Некоторые возможности OllyDbg в нём отсутствуют, поэтому часть вычислений вам придётся делать самостоятельно. Я рекомендую использовать x64dbg только для отладки 64-битных приложений и OllyDbg в остальных случаях.

– многоцелевой бесплатный отладчик для работы с пользовательскими приложениями, драйверами устройств, системными библиотеками и ядром ОС. Он предоставляет некоторые возможности недоступные в OllyDbg и x64dbg, а также поддерживает 32 и 64-битные приложения. Единственный серьёзный недостаток WinDbg заключается в неудобном пользовательском интерфейсе. Эта проблема частично решается с помощью , которая делает его визуально похожим на OllyDbg. К сожалению, большинство возможностей WinDbg всё равно будут доступны только из .

Для настройки рабочего окружения WinDbg выполните следующие действия:

  1. Скачайте .

  2. Распакуйте полученный архив windbg-workspace-master.zip в папку themes (темы) отладчика. Путь к ней по умолчанию: C:\Program Files (x86)\Windows Kits\8.1\Debuggers\x64\themes.

  3. Среди скопированных файлов найдите и запустите windbg.reg. Затем нажмите кнопку "Yes" в диалоге подтверждения.

После настройки окно WinDbg будет выглядеть как на иллюстрации 3-1.

Инструменты для анализа памяти

Помимо отладчика нам понадобится приложение для анализа памяти запущенного процесса.

{caption: "Иллюстрация 3-1. Главное окно WinDbg после настройки рабочего окружения"}

Инструмент с открытым исходным кодом предоставляет функции сканера памяти, отладчика и Hex-редактора (редактор бинарных файлов). Мы будем использовать Cheat Engine в основном как сканер для поиска адреса переменной в памяти процесса и модификации её значения. Более подробно этот инструмент описан в .

– бесплатный инструмент для анализа сегментов динамической памяти (heap, иногда переводится как "куча"), выделенных процессом. HeapMemView имеет две версии: для 32 и 64-битных приложений. В некоторых случаях он будет нам полезен.

Microsoft Visual Studio
Internet Explorer
https://docs.microsoft.com/en-us/previous-versions/visualstudio/windows-sdk/ms717358(v=vs.110
OllyDbg
OllyDbg 2.0
x64dbg
WinDbg
настройки рабочего окружения
командной строки
архив с настройкой
Cheat Engine
руководстве пользователя
HeapMemView
Настройка WinDbg