создание своего майнкрафт лаунчера
[Гайд] Создание собственного проекта серверов
Итак, обучение разделено на блоки. Советую проходить их поэтапно.
Выберете тарифный план «Бесплатный». Его возможностей будет более чем достаточно. Однако, в будущем, когда Ваш проект будет посещаемым, целесообразней будет купить тариф «Премиум» или «Бизнес», в которых сняты многие ограничения.
На последнем шаге введите защитный код и согласитесь с правилами использования. Нажмите «Заказать». Подождите, пока сайт создастся. Обычно это занимает всего несколько секунд.
Затем нажмите на домен только что созданного сайта и выберите из выпадающего списка «Управление». Вы попадёте в панель управления Вашим сайтом. Найдите там раздел «Файлы» и выберите «FTP Доступ».
Далее зайдите в любой FTP клиент. Я советую использовать FileZilla. Введите в программу данные, полученные от Hostinger (IP, Порт, Пользователь). Пароль введите тот, который выбирали при создании сайта. Затем нажмите на «Быстрое соединение».
Следующим шагом будет распаковка движка DLE. Перетащите все файлы из папки «Upload» в правое окно программы FileZilla и дождитесь окончания процесса загрузки файлов на сервера Hostinger. При возникновении конфликтов заменяйте файлы.
После окончания загрузки файлов зайдите на свой сайт. Перед Вами откроется страница установки. Прочитайте информацию и нажмите на кнопку «Начать установку».
Затем согласитесь с предложенным соглашением и нажмите «Продолжить». Следующие 2 страницы можно просто пропустить нажимая кнопку «Продолжить».
После этого нам потребуется вернуться в панель управления нашим сайтом. Найдите там раздел «Базы Данных» и выберите «Базы Данных MySQL». В открывшемся окне создайте новую базу данных. Желательно заполнять поля и «Имя базы данных MySQL» и «Имя пользователя MySQL» одинаково, для упрощения процедуры дальнейшей установки DataLife Engine.
После окончания процедуры создание базы данных вернитесь во вкладку с установкой движка. Заполните данные блока «Данные для доступа к MySQL серверу» используя только что полученную информацию. В качестве сервера MySQL выберите «mysql.hostinger.ru». После этого заполните данные администратора для входа на сайт. Далее нажмите на кнопку «Продолжить».
Затем, мастер установки простит нас удалить файл install.php с нашего сайта для его защиты. Давайте так и сделаем. Переходим в FileZilla и удаляем из каталога public_html файл установки DataLife Engine. Для этого выделите его и нажмите клавишу «Del» на клавиатуре.
Однако, это далеко не всё. Сейчас нам предстоит исправлять ошибки безопасности, которые Вы можете найти в самом низу панели управления сайтом (Находится по адресу: site.ru/admin.php). Для этого нам потребуется зайти в FileZilla и изменить предложенным сайтом файлам права доступа. Для этого нам потребуется выбрать нужный файл, нажать на него правой кнопкой мыши и выбрать из появившегося списка пункт «Права доступа к файлу. «. В открывшемся окне измените «Числовое значение» на 444.
Теперь настало время установить на наш сайт шаблон оформления. Вы можете сделать его самостоятельно по этой инструкции, либо использовать уже готовое решение.
Предположим, что мы решили установить шаблон «Minecraft». Для этого, нам потребуется перенести папку с ним в директорию «templates» нашего сайта с помощью FileZilla. После окончания процесса загрузки файлов, нам потребуется установить шаблон в системе. Для этого перейдите в раздел настроек системы (site.ru/admin.php?mod=options&action=syscon) и напротив пункта «Шаблон сайта по умолчанию» выберите «Minecraft». Затем сохраните настройки с помощью кнопки «Сохранить».
Теперь настало время установки мониторинга сервера. Если Вы делали шаблон самостоятельно, то не забудьте создать окошко для данных счётчика. Если Вы использовали уже готовое оформление, то скорее всего такое окошко уже есть.
Для начала на потребуется зайти в раздел управления шаблонами (site.ru/admin.php?mod=templates) и в меню справа найти класс, в котором содержатся настройки окна мониторинга. В моём случае это оказался «sidebar». Вместо текста, который как правило стоит в готовых шаблонах, нам потребуется получить сам код мониторинга. Для этого я рекомендую использовать специальный сайт. Там достаточно простой интерфейс, поэтому долго заострять на этом внимание не будем. После замены кода, не забудьте сохранить шаблон, нажав на кнопку «Сохранить» внизу страницы.
Создание собственного лаунчера
Итак, для создания собственного лаунчера с нуля нам потребуется знание PhP. Вероятнее всего, таких знаний у Вас нет, поэтому предлагаю использовать уже готовое решение, оптимизировав его под себя. Исходники можно скачать здесь.
Выберите имя проекта и его путь. Также, не забудьте выключить создание главного класса. После окончания процесса создания нового проекта, нам потребуется переместить папку «src» в наш проект (name_of_project/Пакеты_исходных_кодов). Затем зайдите в класс «src.net.launcher.run» и его подкласс «Settings.java» и нажмите на него 2 раза левой кнопкой мыши.
Настройте значение данного подкласса под себя. Сделать это будет достаточно просто, поскольку каждый параметр прокомментирован. После завершения работы можно скомпилировать проект, нажав на клавишу «Собрать проект». Готовый файл будет сохранён в пути, который Вы указали при создании проекта.
Создание сервера
О том, как создать свой сервер Вы можете узнать из этого урока.
Как создать лаунчер для игры Minecraft?
Всем доброго времени суток!
Предисловие:
Со своим товарищем решили в свободное время создать проект по Minecraft. Соответственно подготовили сервер и сайт.. Сейчас дело дошло до лаунчера для сервера. Разработка лаунчера производится на ElectronJS (в связке с vue).
Но сразу наткнулись на много подводных камней, вот одни из них (не буду писать всё в одном посте, т.к. нарушаю пункт правил):
1. Как запустить jar файл с флагами (точно не знаю как называется, буду называть так) типа «—username
2. Как подготовить клиент Minecraft? Т.е. из чего собирать? Допустим, я взял из готового лаунчера сборку клиента и хочу его использовать. То как нужно будет его хранить? Так как есть или по другому?
Заранее благодарю за хорошие ответы.
Средний 2 комментария
А вообще гиблое дело т.к. подводных камней крайне много если не точишь лаунчер под конкретную сборку
Дмитрий Кузнецов, ну если не будет авторизации вообще впринципе и даже такой примитивной то будет засилье читеров и кучи багов т.к. придется отключать onlinemode и пускать игроков по white листу или без него. Естественно это приведет к тому что не будет скинов\плащей, можно будет с чистой совестью запустить игру с любым ником что приведет к тому что под твоим ником с админ правами может зайти абсолютно любой игрок просто вписав такой ник.
Выше приведенные ссылки к тому как работает оф ланучер и что нужно эмулировать, в примитивном и сокращенным видом это так выглядит:
1) Лаунчер отправляет логин+пароль или токен на оф сервер или твою эмуляцию. В ответ получает много инфы и в т.ч. временный токен_авторизации новый.
2) Лаунчер запускает игру и в аргументах среди прочего отправляет токен_авторизации и еще некоторые типа предопределенного языка и токена к примеру на твитч.
3) игра запускается и сверяет полученный токен с тем который хранится на оф сервере или твоей эмуляции. В некоторых случаях получает новый.
4) Коннект на сервер. При этом сначала сервер получает uuid по которому делает на оф\эмуляции пометку что такойто хочет на такой сервер. Клиент получает временный токен сервера и отправляет его на оф\эмуляцию для проверки, после если все ок игрок заходит на сервер, сервер отправляет на оф\эмуляцию что такой то прибыл и затирает токены\инвалидирует. (Этот пункт пишу по памяти но там достаточно тупая но в тоже время интересная 3х сторонняя проверка клиента\сервера\лаунчера)
5) Игроки и сервер получают по uuid скины\плащи и остальную информацию с оф\эмулирующего сервера.
Если этого не делать то будет так:
1) Лаунчер запускает игру с необходимыми аргументами где часть параметров просто пустышки но с конкретным никнеймом
2) На сервере отключен onlinemode и игрок может зайти на него с любым ником.
3) После входа срабатывает серверный плагин типа authme который блочит движения и действия игрока спамя в чат чтобы он написал пароль.
4)* Игрок пишет пароль и получает управление.
*Скины и плащи не работают, смогут работать только после ручных патчей клиента и сервера и то вроде как не последних версиях уже неканает это.
Так же добавлю что от версии к версии число и имена аргументов запуска меняется. К ним же еще прибавляются аргументы форджа\лайтлоадера. У форджа и лайтлоадера есть свои алгоритмы защиты и проверки «лицензионности», особенно у форджа.
А вообще лицензии майна стоят копейки и проще отказаться от пиратсва. Я в свое время так и сделал, да игроков стало в разы меньше но они все 100% адекватные и понимающие что на таком сервере донат нужен просто для оплаты сервера и пиво админам, а на том доната в игре нет но есть пожертвования. И скажу честно люди платят. При этом образовалась тесная компания товарищей. К слову на одном сервере онлайн упал с 80 до 15-20 но эти 15-20 человек содержали сервер своими пожертвованиями и зачастую выступали с идеями которые потом вносились на сервер. Модераторы стали ненужны т.к. сами игроки спокойно писали в группу в скайпе что какойто подозрительный чел шарится и надо бы его проверить на вшивость.
Если есть ещё какие-нибудь мысли по этому поводу, то я очень рад был бы услышать. Вижу я, что вы много в этом разбираетесь, так что есть у меня к вам одно предложения сотрудничество. Если заинтересует сотрудничество, то жду вас в скайпе или вк (данные есть в моём профиле, желательно в скайпе).
Но тут возникает вопрос можно ли легче сделать. По идеи можно передавать логин и пароль в аргументы запускатора, но тут возможно будут проблемы со стороны сервера, т.к. серверу необходимо передать этот пароль из клиента и произвести авторизацию. Так что скорей всего данная идея не закатит.
Вижу я, что вы много в этом разбираетесь
Как создать простой сервер Майнкрафт [1.17.1] [1.16.5] [1.15.2] [1.14.4] [1.12.2] [1.11.2-1.7.10]
В этой небольшой статье я расскажу как создать и запустить самый простой сервер майнкрафт без модов, плагинов без всего, просто сервер для игры с друзьями в обычный майнкрафт. Это достаточно просто, но многие игроки не знают как работать с официальным сервером Minecraft, потому давайте разбираться.
Начну с того, что существует довольно много разных серверов майнкрафта, но в этой статье мы будем использовать официальный сервер от Mojang. Мы создадим сервер на версии 1.12.2, но сервера для других версий создаются точно так же.
Как создать и запустить официальный сервер:
Для начала скачайте сам сервер: 1.17.x, 1.16.x, 1.15.x, 1.14.x, 1.13.2, 1.12.2, 1.11.2, 1.10.2, 1.9.4, 1.8.9, 1.7.10.
(официальная страница с последней версией, все доступные версии есть тут)
0) У вас должна быть установлена Java
1) Создаем папку в любом месте вашего пк, помещаем скачанный файл внутрь.
2) Создаем текстовый файл с названием start
Откройте этот файл при помощи блокнота или любого другого текстового редактора, поместите внутрь такую строчку.
Внимание название файла сервера указывается в строке, в данном случае minecraft_server.1.12.2.jar, если вы переименовали, либо у вас другая версия, измените название на корректное.
Итак, если вы просто сохраните и запустите файл start.bat, то старт сервера произойдет на системной версии Java (установленной вами или не вами по умолчанию в системе), возможно это будет 8 версия (например jre1.8.0_301), но если вы хотите указать конкретную версию Java для вашего сервера (например для 1.17+), то содержимое start.bat должно содержать путь до нужной версии java, пример:
Где C:\Program Files\Java\jdk-16.0.1\bin\java.exe адрес до исполнительного файла java.exe 16 версии Java.
Теперь запустите получившийся файл start.bat, окно сразу закроется, это нормально.
4) Снова запускайте start.bat, если появилось окно сервера или консоль, то все работает, но сервер еще не настроен, закройте его. (хотя он уже работает и даже создал вам мир игры)
5) Внимательно настройте сервер, вам нужно указать правильный IP, а так же Если у вас пиратка, то отключить проверку лицензии игроков, обязательно читайте раздел настройки
Настройка сервера:
Перейдем к базовой настройке, закройте окно сервера если оно открыто.
1) Откройте файл server.properties текстовым редактором в нем есть основные настройки сервера, я затрону только базовые необходимые.
2) Если у вас пиратка, то что бы вас пускало на сервер найдите параметр online-mode=true и измените его на online-mode=false, иначе вход только с лицухой.
3) Укажите IP своего сервера в параметре server-ip=
Вы можете указать IP своего пк в интернете (не забывайте открыть порты), IP в хамачи, локальный адрес пк если ваши игроки находятся в одной сети ( подключены к одному вайфай или проводом)
Инструкция как настроить хамачи.
Инструкция как играть по сети
5) В файле еще много настроек, возможность указать принудительный ресурсрпак, отключить нижний мир, установить режим игры по умолчанию, дальность прорисовки сервера, указать название сервера и прочее. Смотрите параметры, гуглите, переводите переводчиком, просите друзей поумней расшифровать, либо используйте вот эту вики
Работа с сервером:
На самом деле это очень базовая статья о создании простейшего сервера, если вы не можете её осилить, наверное вам не стоит и пробовать создавать сервер, купите какой ни будь готовый хостинг с настроенным сервером, или найдите человека который более компетентен. Все серьезные сервера создаются куда сложнее, там используются специальные плагины и глобальные модификации игрового сервера.
Собственный лаучнер для серверов Minecraft
Пример официального лаунчера
Если вы создаете свои собственные сервера в майнкрафте и хотите значительно упростить жизнь живущим там пользователям тогда лаунчер для майнкрафт Вам поможет. С лаунчером ваши гости и пользователи сервера без труда смогут скачать необходимые версии майнкрафта и установить их в один клик. Более того, вам больше не нужно рассылать сообщения каждому игроку со ссылкой на разные версии майнкрафта и обновления. Все версии игры будут в одном файле.
Однако официальный лаунчер подходит только для пользователей с лицензионными учетными записями и требует от пользователей указывать IP адреса серверов для игры на сервере. Чтобы избавиться от недостатков официального лаунчера, администраторам серверов приходится писать свои собственные лаунчеры
Раньше создание лаунчера занимало долгое время и требовало знание языка программирования Java. Теперь мы создали сервис для автоматического создания лаунчеров, и Вы можете создать свой собственный лаунчер всего за пару минут
Почему стоит купить собственный лаунчер
Вы можете изменять сервера и информацию о проекте в лаунчере в любое время, даже после того, как пользователь скачал ваш лаунчер.
Вам не нужно заботиться о версиях и сборках на стороне пользователя. Лаунчер сам скачает требуемую версию и запустит ее с вашим сервером.
Вы получаете статистику по всем скачиваниям и запускам вашего лаунчера.
Полностью настраиваемый внешний вид благодаря поддержке скинов лаунчера.
Ваш лаунчер будет работать везде: Windows, Linux, OSX. За год существования проекта наш лаунчер протестировало несколько миллионов пользователей, устранено большинство ошибок с запуском программы.
В случае недоступности вашего проекта неопределенное время игрок не удаляет файл, а играет в одиночном режиме или на других серверах, пока ваш проект станет доступен.
Простой и понятный игроку интерфейс. Мы специально сделали интерфейс для новичков и тех, кому просто нужно запустить Minecraft без лишних хлопот.
Собственная система скинов с более чем сотней тысяч различных скинов, пользователи сами рисуют себе скины.
Лаунчер + система скинов + авторизация + привязка к клиента к серверу
Итак..Приступим!
1 ЧАСТЬ
Скачиваем NetBeans
Скачали, установили….
Жмём: Создать проект, дальше жмём Далее, убираем галочку с «Создать главный класс»
Создаём проект!
Сделано….
Теперь жмём правой кнопкой по проекту, и кликаем на Свойства.
Справа будет выведен список исходников….
Удаляем исходник, и добавляем тот, что мы скачали.Жмём ОК.
Открываем проект, и находим net.minecraft
Первое,что мы будем редактировать, это GameUpdater.java
Находим 170 строчку.
Ссылку меняем на ссылку к загрузке файлов lwjgl.jar, jinput.jar, lwjgl_util.jar, minecraft.jar и windows_natives.jar.lzma
Теперь находим LoginForm.java. 188 строка
Меняем на свою ссылку на файл news.php (новости)
Официальная ссылка на новости: http://mcupdate.tumblr.com/news.php
Дальше на 299 строке ищем:
Меняем на свою ссылку к регистрации…
И последний класс, это LauncherFrame.java
На 101 строке находим:
Тут меняем ссылку на auth.php файл
Готово…Жмём правой кнопкой по проекту>>Почистить и построить проект
Далее Выполнить…ВЫБИРАЕМ ГЛАВНЫЙ КЛАСС: Net.MinecraftLauncher.
Ваш лаунчер находится в папке dist вашего проекта!
Вроде всё готово..теперь надо сделать систему скинов + авторизацию…
2 ЧАСТЬ
Создаём на сайте папку cpanel
В неё заливаем систему скинов byxar’а
Залили, настраиваем файл connect.php
Там настраиваем…всё расписано понятно!
Дальше нам надо будет зайти в вашу БД
Зашли…Теперь надо залить файлы…
Жмём Import.В папке системы скинов byxar’а есть папка sql
Все файлы,которые имеются там, заливаем в БД.
3 ЧАСТЬ
Итак…У нас есть лаунчер….Теперь нам нужно отредактировать клиент, и сервер.
Начнём с Системы Скинов
Нам нужна программа InClassTranslator.
Извлекаем из minecraft.jar файлы(а не папки):
Редактируем в InClassTranslator’е эти файлы…
Ищем в классах строки, где есть ссылки на скины…Их и меняем на свои=)
Потом эти файлы обратно заливаем в minecraft.jar
С системой скинов закончили, Congratulations!
4 часть(вроде последняя)
1 часть второго Туториала.
Сейчас нам понадобится вот этот исходник.
Редактирование самого лаунчера такое же, как и в 1 туториале!
Компилируйте и делайте лаунчер, изменяя свои ссылки.
Теперь, в папку загрузки вашего клиента добавьте файл client.zip
А в этот архив залейте папки, файлы и прочие фигнистики, которые вы используете
То есть, этот файл будет распаковывать папки и файлы, которые вы указали!
Например, я в него залью папку saves и файл ModLoader.txt…
И эта папка и файл будет скачиваться в вашу папку!
Дополнения:
Убираем пароль в авторизации:
249 строка: