# ZernMC Launcher ## Что это? **ZernMC Launcher** - Это Minecraft ланучер, написанный на Java(клиент) и Python(FastAPI - сервер) ## Основные особенности - он написан с 0 - способен удобно загружать и обновлять сборки(загруженнве с сервера ZernMC) - имеет ± удобный для чтения код лаунчера и сервера - позволяет при плохом подключении к какому либо сервису(условно Fabric Maven) использовать сервер(!) как прокси, для установки необходимых данных - клиент можно запустить даже если нет визуальной оболочки(но тут оговорка: вы не сможете запустить майнкрафт тогда(клиентскую часть)) - не имеет рекламы - не имеет сторонних сервисов для телеметрии(слежки) - вообще не собирает никаких данных о вас - работает из коробки, достаточно скачать zip архив(он для Windows) и запустить лаунчер, посде чего ≈75% версий можно будет запусиить сразу ## чего пока в нём нет пока что - нормальных настроек, сейчас можно только настроить Java и оперативку - аккаунтов для безопасности(да, это не решает проблему с Offline режимом, но для своих серверов - да это будет решать пробоему) - запуска Forge версий(science v.1.0.0-?) - запуска/загрузки: Quilt, LabyMod, NeoForge и других старых лоадеров... - просмотра новостей об обновах майнкрафта/лаунчера - выбор параметров оптимизации из списка параметров ## что надо доработать - генерацию команды запуска - авто-обновления лаунчера(они криво работают) - настройки - серверную часть что бы она была более стабильной - прокси режим - вообще загрузку файлов с сервера ## ВАЖНЫЙ КРАТКИЙ ЭКСКУРС ПО ЛАУНЧЕРУ 1. он в TUI интерфейсе, а это значит - он не поддерживает управление курсором 2. управление осуществляется W/S(Ц/Ы) (замена ↑/↓ т.к они почему то (science 1.0.0+) тебя переносят на меню ранее а потом вообще крашит), ESC - выход из этого меню(либо "Назад" выбор) ENTER - Выбор в меню 3. если вы всё же умудрились нажать курсором в лаунчере - поздравляю, вы его заморозили, что бы разморозить достаточно нажать любую клавишу на клавиатуре, находясь в окне лаунчера 5. тут нет 4 пункта 6. иногда лаунчер может не удалять сборки корректно, из-за чего они могут оставаться в меню выбора, я позже это пофикшу, но надо удалить в instances то что не удалидось корректо 6.1. как мне найти instances? - он находится в Win: (ваш юзер)/.zernmc/instances Unix: ~/.zernmc/instances ## как вообще его загрузить? пока я не настроил GitHub Actions для релизов - https://api.zernmc.ru/launcher/download/latest либо https://api.zernmc.online/launcher/download/latest Скачанный архив распаковать в удобную для вас папку запустить ZernMCLauncher.exe (когда я добавлю аккаунты - зарегаться/залогинится) жмём "Начать игру" Если нет сборки(хахах, посмотрите на него, у него нет сборки "плак плак") жмём "Установить новую сборку" Далее следуем меню: елси вам надо сборку с ZernMC(позже пофикшу что бы можно было скачать только тем у кого есть проходка) то жмём это, иначе если вам нужен чистый лоадер - вариант с модовыми загрузчиками, а ежели вам надо абсолютно чистую моджанговскую версию - выбираем ваниллу в варианте с ZernMC ещё предложит укзаать название папки, лучше всего - использовать то как и называется сборка(Enter просто) НАСТОЯТЕЛЬНО РЕКОМЕНДУЕТСЯ НЕ ИСПОЛЬЗОВАТЬ КИРИЛИЦУ В НАЗВАНИИ в других вариантах примерно тоже самое, и Я ТАК ЖЕ НАСТОЯТЕЛЬНО РЕКОМЕНДУЮ НЕ ИСПОЛЬЗОВАТЬ КИРИЛИЦУ В НАЗВАНИИ СБОРКИ ## Возможные проблемы - подключение к разным сервисам: в идеальном случае если нет коннекта условно к Fabric Maven то это пожключение будет просто проксировано через ZernMC сервер, но иногда и к нему нет доступа... тут уже я не могу помочь, только могу попытаться - запуск сборки: елси она у вас Forge(science 1.0.0+) то не советую её запускать пока не будет исправлена генерация команды для Forge лоадера, иначе issues и я посмотрю что не так - "я запустил чистую версию а почти никаких ассетов не загрузилось это че такое?" - Поясняю, я ещё не полностью но доделал генерацию команды запуска, и ИНОГДА оно может брать версию майнкрафта как AssetIndex из-за чего оно не загружает ассеты, пример: версия 1.20.1, ц него ассет индекс 5, при запуске оно может в некоторых случаях брать не 5.json а 1.20.1.json - - самый простой способ починить AssetIndex - посмотреть логи какой оно пытается взять json для ассетов, скопировать существующий в instances/(название сборки)/assets/indexes/(индекс).json в эту же папку но под названием (то что пытается взять лаунчер).json ## Issue - так как лауняер не очищает экран как надо, логи это буквально скролл вверх - копируйте всё что связано с ошибкой и что вы делали - отправляете то в issue указав версию лаунчера ## Билд/Development ### Это часть очень важна для тех кто будет разрабатывать вместе со мной лаунчер 1. git clone https://github.com/SashegDev/launcher 2. заходите в launcher/launcher/pom.xml 3. редактируете пути для билда, так как сейчас - он расчитан на разработку только на моём сервере 4. mvn clean package 5. можете начинать! Я был бы рад если нашлись люди кто мог бы помочь в разработке лаунчера и добавления к нему хотя бы базового UI чтоб было намногл удобнее работать с ним