Как создать свой лаунчер самп
В прошлой статье мы рассказывали Вам об устройстве San Andreas Multiplayer на Android мобильных устройствах. В данной статье мы предоставим открытый пример Лаунчера для SAMP/CRMP сервера Android, включая открытый исходный код.
В первую очередь вы должны отложить в голове 3 основные категории, на чем основывается полноценный набор для игры в SAMP для Android, о Создании своего клиента SAMP/CRMP на Android мы писали в предыдущей статье.
На просторах интернета Вы часто можете увидеть "Сливы Лаунчеров/Клиентов SAMP/CRMP", но все это является лишь кликбейтом. Так как вместо исходного кода, вам предоставляют частично взломанные версии чужих лаунчеров, с возможностью лишь изменить логотип, или небольшую информацию.
Если кратко, Лаунчер - Это отдельное приложение, где вы вводите IP сервера, или выбираете любой сервер из вашего списка, меняете ник, настройки FPS, и другие параметры. Ваш Лаунчер отправляет эти данные клиенту, и запускает его. А как мы говорили, клиент - это модифицированный GTA:SA.apk, куда вшит скомпилированный libsamp.so (Который собирается из исходников вашего SAMP на основе build69)
На данный момент существует всего один лаунчер SAMP с открытым исходным кодом, о котором никто не знает. Это OpenSAMPLauncher от Umnicode-studio (github)
Данный лаунчер имеет полностью открытый исходный код, и имеет возможность подключения к любому серверу, подключению к серверу по IP, показ информации о сервере в лаунчере (онлайн, и тд), смены ника, лимита FPS
Как компилировать, собирать лаунчер из исходников :
Для того, чтобы собрать apk файл из исходников, Вы должны скачать Android Studio последней версии, и все предлагаемые пакеты модулей. Исходники исправно работают с SDK до 29 версии (Android 10), Android 11 потерпел ряд изменений безопасности директорий, и исходный код Лаунчера потребует изменения.
Откройте Android Studio, и перейдите в File > Open, после чего выберите директорию с исходниками Лаунчера. Подождите какое то время, пока Android Studio не подготовит проект. При предложении Android Studio установить нужные библиотеки - согласитесь на установку.
После чего В левом углу Android Studio появятся файлы проекты, которые Вы сможете редактировать под себя.
Для компиляции apk приложения, перейдите в Build > Make Project
Гайд: Как сделать свой клиент SAMP для Android
Многие задаются вопросами: Как играть в SAMP на Android на любом сервере, или же сделать собственный лаунчер для Вашего сервера, и как использовать, чем компилировать исходники клиента SAMP, и что дальше делать с libsamp.so?
Сегодня Мы расскажем Вам все, и в мельчайших подробностях.
Лаунчер сервера - Это всего лишь утилита конкретного сервера, которая автоматически качает и устанавливает на ваш телефон модифицированный GTA:SA + Кэш, со вшитым и доработанным мультиплеером, на основе build69 исходников.
Советуем прочесть наш гайд по созданию Лаунчера SAMP/CRMP для Android (С исходниками)
Модифицированный GTA:SA .apk (Он же SAMP) - apk файл, со вшитым libsamp.so (О нём мы расскажем ниже)
Модифицированный Кэш GTA:SA (com.rockstargames.gtasa) - Это все файлы игры, плюс файлы самого SAMP (Текстуры, модели, объекты и различные настройки)
libsamp.so - Этот файл получается в результате компилирования исходников SAMP, и вшивается в модифицированный APK файл GTA:SA.
Порядок действий: (Предварительно удалите все клиенты, лаунчеры и кэши сторонних серверов с телефона).
1. Вы качаете исходники SA-MP (Билд исходных файлов мультиплеера, код написан на C++).
2. После чего вы дорабатываете исходники до необходимого функционала, меняете IP, порт, и другие параметры, куда будет подсоединяться клиент.
3. Компилируете исходники с помощью Android NDK, и получаете libsamp.so
4. Качаете готовый Кэш игры (Ссылка ниже) с необходимыми для работы SAMP файлами, и перемещаете его в Android/data/. (Чтобы получилось Android/data/com.rockstargames.gtasa/)
5. Устанавливаете apk файл игры (Ссылка ниже).
6. libsamp.so вшиваете в уже установленный apk файл игры с помощью приложения APK Editor, сохраняете Ваш новый APK, и устанавливаете поверх уже установленного (Не удаляя его, чтобы не удалить кэш вместе со старым apk).
7. Настройте Android/data/com.rockstargames.gtasa/files/SAMP/settings.ini
Ответы на вопросы
- Выдает ошибку, связанную с cheats.cpp, cheats.h, pCheats, pAdmin
Ответ: В наших исходниках данные проблемы уже исправлены
- Крашит игру после запуска мультиплеера / Ошибка keyboard.cpp или keyboard.h (Клавиатуры)
Ответ: Вы компилируете исходники с несовместимой версией Android NDK. Используйте Android NDK 14 версии, которая полностью совместима с кодом
Как создать свой лаунчер самп
Кастомизируемый клиент для запуска SAMP. Настройка клиента производится путем редактирования файла launcher_config.json
В файле launcher_config.json доступны для изменения следующие параметры:
PathToExe - путь к файлу samp.exe. (Параметр необязателен к заполнению, если samp_launcher.exe находится в папке с GTA San Andreas)
BackgroundImage - путь (абсолютный или относительный) к фоновой картинке.
CloseOnPlay - если установлено true - клиент будет закрываться при нажатии кнопки "Подключиться"
WidowHeight - высота окна программы в пикселях
WindowWidth - ширина окна программы в пикселях
Для редактирования списка серверов, отображаемых в программе необходимо заменить содержимое находящееся внутри квадратных скобок ([ ]).
Формат добавления сервера:
< "Name": "имя сервера, отображаемое в программе", "IP": "IP-адрес сервера и порт" >,
Если порт сервера 7777, то указывать его не нужно
Всем привет
Решил заняться разработкой своим сервером SAMP Mobile (Android) и делится своим опытом с вами
Все уроки будут опубликоваться в этой теме
Список уроков:
Также пишите в коменты какие вы хотите видеть уроки по SAMP Mobile (Android)
SAMP Mobile (Android) - Урок 1. Компиляция libsamp.so
Всем привет
В этом уроке я вас научу:
- Компилировать исходники SAMP Mobile (Android)
- Ставить свой IP:port для подключения
Приступим
Нам понадобится:
- Исходники SAMP Mobile (Android): GitHub
- NDK 19 (именно 19): NDK older releases
- Командная строка
- Прямые руки
Для начало распакуем содержимое архива build69-master.zip папку jni в любое вам место (лучше создайте отдельную папку на диске C для удобства)
И в тоже место наш NDK
После того как мы всё разархивовали запускаем Командную строку (CMD)
Нажимаем win+r и вводим cmd и нажимаем кнопочку ОК
После этого пишем в командной строке:
Пример: cd C:/Android/NDK и нажимаем Enter
После того как мы перешли в командной строке в папку с нашим NDK нам надо поставить свой IP:port для сервера
Для этого переходим по пути и открываем файл любым редактором (в моём случае): Android/jni/main.cpp и ищем такие строки:
И меняем 2 строки encryptedAddress.decrypt(), port что бы получилось вот так:
После того как мы отредактировали main.cpp сохраняем его и открываем следующий файл Application.mk (Любым редактором) и меняем
После этого сохраняем наш Application.mk и возвращаемся в командную строку
В командной строке пишем следующие:
Нажимаем Enter и ждём
При удачном компилирование должно получится:
В следующем уроке я расскажу как его поместить в наш samp.apk
Урок 2. Сбор проекта (.apk)
Приступим
- Программа для Android: ApkEditor(За содержимое файла я не несу ответственности)
- Наш скомпилированный libsamp.so
- Прямые руки
Запускаем нашу программу ApkEditor и нажимаем "Выберите файл APK"
И выбираем его, после этого выбираем "Полное редактирование"
После завершения процесса декодирования, переходим во вкладку "Файлы"
В низу с лева нажимаем на "+" и выбираем наш скомпилированный libsamp.so
После того как завершится добавления файла "libsamp.so" В верху с права нажимаем на кнопку "Сборка"
После сборки нас должно встретить окно о завершение сборки проекта
После этого переходим по пути которому указала программа и забираем наш apk
Вот и всё очень просто
В следующем уроке я расскажу как заменить загрузочный экран SAMP ANDROID на свой
Хотел бы дополнить ваш урок или точнее альтернативный вариант с вводом хоста и порта.
Если изменить данный кусок кода на мой вариант, то не придется каждый раз компилировать нативную библиотеку, можно будет просто заносить свои изменения в файл settings.ini.
А точнее просто дописав
Данная инструкция не доведена до ума, так как есть еще доп файлы к клиенту и если просто скомпилировать, то будет вылетать так как в исходниках есть ошибки, авторы исходников это потвердили.
Урок 2. Сбор проекта (.apk)
Приступим
- Программа для Android: ApkEditor(За содержимое файла я не несу ответственности)
- Наш скомпилированный libsamp.so
- Прямые руки
Запускаем нашу программу ApkEditor и нажимаем "Выберите файл APK"
И выбираем его, после этого выбираем "Полное редактирование"
После завершения процесса декодирования, переходим во вкладку "Файлы"
В низу с лева нажимаем на "+" и выбираем наш скомпилированный libsamp.so
После того как завершится добавления файла "libsamp.so" В верху с права нажимаем на кнопку "Сборка"
После сборки нас должно встретить окно о завершение сборки проекта
После этого переходим по пути которому указала программа и забираем наш apk
Вот и всё очень просто
В следующем уроке я расскажу как заменить загрузочный экран SAMP ANDROID на свой
Как оптимизировать мод под Mobile версию?
Читайте также: