README.md

Важная информация

Данный репозиторий является частью системы по загрузке, обновлению, получению авторизации с сайта и запуску игры Minecraft на компьютере пользователя.
Система состоит из отдельных частей каждая из которых отвечает за отдельные функции системы:

  • Лаунчер - приложение которое размещается на ПК пользователя, скачивает/обновляет файлы игры, получает авторизацию и запускает саму игру с нужными параметрами.
    https://gitflic.ru/project/reaktiv/launcher-minecraft-launcher
  • Хранилище клиента - Скрипты для создания в интернете места, где будут лежать файлы игры в удобоваримом виде, откуда их может скачать лаунчер на компьютер пользователя.
    https://gitflic.ru/project/reaktiv/launcher-minecraft-client-store
  • API авторизации - Набор скриптов обратившись к которым лаунчер может получить токены авторизации пользователя с сайта сделанного на CMS Joomla!
    https://gitflic.ru/project/reaktiv/launcher-minecraft-api-auth-joomla

Преимущества всей системы

  • Система НЕ требует для своей работы постоянно включенного лаунч-сервера, нет необходимости содержать отдельно работающую виртуальную машину.
  • НЕ нужна даже JAVA. Лаунчер создан на языке высокого уровня, полностью скомпилирован и не требует для запуска игры присутствия на компьютере пользователя каких-либо виртуальных машины, сред выполнения или отдельных компонентов.
  • Лаунчер может работать и запускать игру из любой папки в ПК, даже с флешки. Не требует установки, не создаёт мусорных файлов в системе, всё нужное складывает рядом с собой.
  • Распределённая схема работы позволяет создавать проекты с отдельными независимыми администраторами определённых сборок, исключающими права влияния на сборки друг друга и другие компоненты проекта.

Назначение лаунчера

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

Преимущества лаунчера

  • Не требует никаких установленных компонентов, не нужна даже java. Сам лаунчер написан на языке высокого уровня и полностью скомпилирован в исполняемый код, а java машину для игры он приносит с собой портабельную в составе файлов игры, и запускает minecraft через неё.
  • Мало весит. Обычно лаунчер может весить и 100 и 200мб, а тут всего около 10-40Мб.
  • Не требует установки, работать может из любой папки, даже с флешки. Скачал запустил, и готово.
  • Не мусорит в системе. Обычно лаунчеры создают кучу скрытых папок в “AppData” или “LocalLow” и т.д, а это складывает все файлы рядом с собой в папку “gameFiles”.
  • Умеет докачивать файлы ассетов с серверов компании Mojang, тем самым экономя место занимаемое хранилищем клиента на хостинге
  • Умеет вычищать читы, удалять мусор, удалять пустые папки. Следит за порядком в файлах и папках как полагается. Докачивает необходимые обновления.
  • Имеет гибкую систему исключений, исключения могут быть настроены через хранилище клиентов
  • Умеет получать авторизацию с сайта и запускать с ней майнкрафт. Плагины на авторизацию не нужны.

Недостатки лаунчера

  • Лаунчер разработан под Windows. Может быть дописан и скомпилирован под другие ОС т.к. проект мультиплатформенный, но на данный момент эта работа не ведётся.
  • Придётся малость повозиться с настройкой лаунчера, т.к. все данные компилируются внутрь самого лаунчера.
  • Как и защиту любого другого лаунчера, защиту этого лаунчера можно обойти. Всё равно найдутся те кто окольными путями установят читы и получат преимущества на сервере перед другими игроками. Настраивайте свою безопасную безопасность на сервере, так надёжнее.

Использование

  1. Для начала вам потребуется развернуть другие компоненты системы, т.е. вам нужно развернуть на своём сайте хранилище клиента и скрипты авторизации (ссылки в начале), и убедиться в том, что они работают нормально.
  2. Для настройки лаунчера вам потребуется среда разработки Delphi 10.3.3, нужно скачать её и установить, кроме этого, нужно иметь базовые навыки создания программ в Delphi.
  3. Скачайте и распакуйте себе репозиторий с исходным кодом лаунчера. Открывайте файл “game.dpr” чтобы открыть проект в делфи.
  4. Открывайте юниту “U_config”, в ней содержаться основные настройки лаунчера. Код весьма хорошо продокументирован, все описания необходимых переменных указаны, читайте внимательно и исправляйте под себя. Особое внимание обратите на массивы параметров для запуска, если там будут ошибки, лаунчер скачает клиент но игра не запустится.
  5. На форме “F_main” укажите название сервера, описание, версию, превью, и всякое прочее оформление сборки в соответствующей панели “R_Description” по своему вкусу. Исправьте ссылки под кнопками “R_description_chatLink”, “R_description_profileLink” и “R_description_serverLink” на свои.
  6. Скомпилируйте готовый *.exe файл лаунчера. Он появится в папке “\Win32\Debug”. При необходимости упакуйте его, зашифруйте и т.д. если вы умеете это делать.
  7. Положите экзешник лаунчера в хранилище клиента в папку “launcher” и создайте новый билд. После создания билда у пользователей которые уже используют этот лаунчер он заметит различия с их текущей версией и начнёт самообновляться.
  8. Разместите ссылку на лаунчер в хранилище клиента на своих информационных ресурсах, на сайте, в сообществе и т.д.

Особенности

  • Большинство логов в коде лаунчера закомментированы т.к. видеть их пользователю не к чему. Раскомментируйте при необходимости.
  • Для запуска лаунчера можно использовать разные ключи, ознакомьтесь с их функционалом в юните “U_function” в процедуре “getStartParams()”.
  • Лаунчер будет складывать файлы рядом с собой, чтобы изменить папку куда лаунчер складывает файлы - поместите лаунчер в нужную папку.

Протестировать

Работоспособный пример лаунчера
Сайт проекта

Внешний вид

Описание

Приложение для скачивания, обновления и запуска Minecraft на ПК пользователя с последующей авторизацией через сайт

Релизы
Релиз 1.0 2023-12-28
Конвейеры
0 успешных
0 с ошибкой