FixLoader[Загрузчик фиксов]

FixLoader[Загрузчик фиксов] 1.7.10 - 7; 1.12.2 - 20

Нет прав для скачивания
Версия(и) Minecraft
1.7.10; 1.12.2
История:
Как-то раз меня @YJOX спросил, не хочу-ли я писать фиксы и выставляя их на продажу... После бессонной ночи я накидал (скорее высрал) список требований к к этому делу:
  • Никаких изменений в jar-файлах напрямую (имхо - костыльно)
  • Каждый фикс - отдельный "модуль"
  • Должна быть возможность писать эвенты/конфиги/утилсы к этим фиксам
  • Установка загрузчика и фиксов без особого напряга
И спустя 2 недели я предоставил ему доступ до первой-бета версии fixloader'а 1.12.2.

А сегодня я представляю это самое дело вам:

Вступление:
FixLoader - (как понятно из названия) это загрузчик фиксов, которые были собраны в 1 файле с расширением *.modfix.
1 modfix-файл включает в себя:
  • Классы-миксины
  • Классы-акцепторы
  • Классы-эвенты
  • Классы-конфиги
  • Утилитарные классы
Почему FL - хорошая тема*:
  1. За счет использования Grimoire - никакого вмешательства в jar-файлы, только миксины. Только хардкор.
  2. Из-за использования парадигмы "отдельный фикс - отдельный файл" можно выбирать только нужное для использования
Удобство для кодеров:
  1. Для нового фикса достаточно пометить нужные классы аннотацией @Fix и указать параметры в ней
  2. Нет нужды ручками обновлять версию фикса, автоинкремент при билде в комплекте.
  3. Возможность использовать разные конфиги при билде для различных сред разработки
  4. Можно писать миксины как для ванили, так и для модов
* В будущем этот список будет пополняться, по мере того, как я буду вспоминать плюшки.

Установка FL**:
** в контексте этой категории - речь будет идти об установки на клиент/сервер.
Про установку среды для написания непосредственно фиксов я напишу позже.

  1. Скачать Grimoire нужной версии > Releases · CrucibleMC/Grimoire
  2. Скачать FixLoader так-же нужной версии > FixLoaders
  3. Засунуть всё из п.1 и п.2 в /mods папку
Установка фиксов - Достаточно закинуть нужный .modfix в /Modfixer папку
!!!ДЛЯ ОСОБЕННЫХ - НЕ РАСПАКОВЫВАЯ!!!
Написание фиксов:
Я решил вынести в отдельную тему, поскольку она огромная...

Некоторые минусы:
Я - человек, и осознаю, что у всего есть свои недостатки. Поэтому считаю нужным перечислить известные на данный момент:
  1. В данный момент нет возможности использовать рефмапу (начиная нерабочей генерацией рефмап в идее* заканчивая моей ленью)
  2. Кому-то п.3 из вступления может показаться минусом... Но имхо, под каждый проект проще создавать отдельную среду (я же собираюсь продавать фиксы)...
  3. Нет JavaDoc'ов. Когда-нибудь в будущем напишу.

Благодарности:
@YJOX за идею
@Aizistral за ревью одной из первых версий и Grimoire
@ABI за тесты первых версий
( ͡° ͜ʖ ͡°)

Тестовые файлы:
* 1.7.10
Клиент - 2.3 KB file on MEGA
Сервер - 1.3 KB file on MEGA
*1.12.2
Клиент - 1.3 KB file on MEGA
Сервер - 1.5 KB file on MEGA

На заметку: это мой первый раз, когда я представляю что-то публике. Поэтому ожидаю адекватной критики и постараюсь на неё ответить не менее адекватно ( ͡° ͜ʖ ͡°)( ͡° ͜ʖ ͡°)
Автор
will0376
Скачивания
8
Просмотры
1,541
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя will0376

Сверху