Содержание статьи
warning
Использование читов нарушает пользовательское соглашение игры, что может повлечь юридическое преследование. Мы обсуждаем здесь создание чита исключительно в целях обучения. Автор и редакция не несут ответственности за возможные последствия применения и распространения такого ПО.
Давай для начала пробежимся по теории. Программы и игры для Android обычно пишут с применением следующих языков программирования и технологий:
- Java — традиционный и самый распространенный вариант. Код компилируется в байт‑код Java, затем в DEX для Dalvik/ART;
- Kotlin — современный язык от JetBrains, официально поддерживается Google с 2017 года. Совместим с Java, более лаконичный и безопасный;
- C/C++ — используются через Android NDK (Native Development Kit) для высокопроизводительных модулей, игр, библиотек;
- Dart (Flutter) — кросс‑платформенный фреймворк от Google;
- JavaScript/TypeScript — часто используются через React Native, Cordova;
- C# — можно использовать через Xamarin.
Результат компиляции Android-приложения — это файл с расширением .apk (Android Package). APK — это ZIP-архив, содержащий следующие компоненты:
-
AndroidManifest.
— манифест приложения, включает описание компонентов, разрешений, точек входа;xml -
classes.
— скомпилированный байт‑код Dalvik/ART (основной код приложения);dex -
resources.
— скомпилированные ресурсы (строки, стили, атрибуты);arsc -
res/
— прочие ресурсы (изображения, layout XML и другое); -
META-INF/
— метаданные, подписи APK; -
assets/
— произвольные файлы, доступные приложению в рантайме; -
lib/
— нативные библиотеки (соответствуют архитектурам: armeabi-v7a, arm64-v8a и так далее).

Настраиваем эмулятор
Все действия будем проводить в эмуляторе, а не на реальном устройстве, чтобы его случайно не окирпичить. Из всех эмуляторов мой выбор пал на AVD, который поставляется вместе с Android Studio. Устанавливаем и запускаем. Теперь создаем экземпляр устройства:
- Открываем Virtual Device Manager.
- Видим, что уже есть готовое устройство, и дублируем его.
- Убедимся, что у устройств выбран сервис Google Play Store.
- Запустим и проверим, что все у нас работает.

Ставим AssaultCube
Для начала загрузим игру AssaultCube, на которой мы будем упражняться. Ее нужно установить на оба устройства. Для этого открываем командную строку и переходим вот в этот каталог (там хранятся все утилиты):
%LOCALAPPDATA%\Android\Sdk\platform-tools
Выполняем команду adb
, чтобы просмотреть список доступных эмуляторов. Они будут представлены в формате <
, например emulator-5554
.
Теперь установим наш APK:
adb -s emulator-5554 install myapp.apk
Как вариант, можно просто перетащить APK на эмулятор и подтвердить установку.

В какой‑то момент тебе может понадобиться удалить APK. Сделать это можно вот как. Сначала смотрим список установленных пакетов:
adb -s emulator-5554 shell pm list packages | sort
Затем удаляем ненужный:
adb -s <device-serial> shell pm uninstall <app-package-name>
Например:
adb -s emulator-5554 shell pm uninstall net.cubers.assaultcube

После того как мы установили AssaultCube, запустим ее и войдем в меню сетевой игры. Ничего не происходит? Я тоже столкнулся с этой проблемой, но потом нашел режим разработки.

В нем проблема сразу видна: мы не можем подключиться к игровому серверу.

Перенаправляем трафик на локальный сервер
Видимо, игровые серверы мертвы. Но мы можем перенаправить подключение на локальный сервер. Настройку и запуск сервера я описывал во второй статье серии «Чит своими руками».

Продолжение доступно только участникам
Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее