Как создать свой лаунчер самп

Обновлено: 06.07.2024

В прошлой статье мы рассказывали Вам об устройстве 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, то указывать его не нужно

Пользователь офлайн

.037


Всем привет
Решил заняться разработкой своим сервером SAMP Mobile (Android) и делится своим опытом с вами
Все уроки будут опубликоваться в этой теме
Список уроков:

Также пишите в коменты какие вы хотите видеть уроки по SAMP Mobile (Android)

Пользователь офлайн

Romzes


Полезный урок, молодец. Надеюсь в следующем уроке ты начнешь дорабатывать клиент.

Пользователь офлайн

.037


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

Пользователь офлайн

.037


Урок 2. Сбор проекта (.apk)
Приступим

  • Программа для Android: ApkEditor(За содержимое файла я не несу ответственности)
  • Наш скомпилированный libsamp.so
  • Прямые руки

Запускаем нашу программу ApkEditor и нажимаем "Выберите файл APK"

Изображение

Изображение


И выбираем его, после этого выбираем "Полное редактирование"

Изображение

Изображение


После завершения процесса декодирования, переходим во вкладку "Файлы"

Изображение

Изображение


В низу с лева нажимаем на "+" и выбираем наш скомпилированный libsamp.so

Изображение

После того как завершится добавления файла "libsamp.so" В верху с права нажимаем на кнопку "Сборка"

После сборки нас должно встретить окно о завершение сборки проекта

Изображение

После этого переходим по пути которому указала программа и забираем наш apk

Вот и всё очень просто

В следующем уроке я расскажу как заменить загрузочный экран SAMP ANDROID на свой

Пользователь офлайн

Fierrum

Хотел бы дополнить ваш урок или точнее альтернативный вариант с вводом хоста и порта.

Если изменить данный кусок кода на мой вариант, то не придется каждый раз компилировать нативную библиотеку, можно будет просто заносить свои изменения в файл settings.ini.
А точнее просто дописав

Данная инструкция не доведена до ума, так как есть еще доп файлы к клиенту и если просто скомпилировать, то будет вылетать так как в исходниках есть ошибки, авторы исходников это потвердили.

Пользователь офлайн

zabe1 Кто подскажет как оптимизировать мод под Mobile версию? Какие именно функции ПК версии в моде приводят к вылетам на Mobile?

Пользователь офлайн

zabe1

Урок 2. Сбор проекта (.apk)
Приступим

  • Программа для Android: ApkEditor(За содержимое файла я не несу ответственности)
  • Наш скомпилированный libsamp.so
  • Прямые руки

Запускаем нашу программу ApkEditor и нажимаем "Выберите файл APK"

Изображение

Изображение


И выбираем его, после этого выбираем "Полное редактирование"

Изображение

Изображение


После завершения процесса декодирования, переходим во вкладку "Файлы"

Изображение

Изображение


В низу с лева нажимаем на "+" и выбираем наш скомпилированный libsamp.so

Изображение

После того как завершится добавления файла "libsamp.so" В верху с права нажимаем на кнопку "Сборка"

После сборки нас должно встретить окно о завершение сборки проекта

Изображение

После этого переходим по пути которому указала программа и забираем наш apk

Вот и всё очень просто

В следующем уроке я расскажу как заменить загрузочный экран SAMP ANDROID на свой


Как оптимизировать мод под Mobile версию?

Пользователь офлайн

TimurCrid

Пользователь офлайн

samp-mobile7 Я вот чайник, сделал всё правильно, гта установил 1.08, захожу в игру и там нету кнопки Multiplayer, может я такой тупой и не пойму чего? в Android/data/com.rockstargames/files нету файлов и сампа, как принято у других серверов. Если кто знает помогите пожалуйста.

Пользователь офлайн

Zhasulann

Читайте также: