За Fabric будущее моддинга!

WantaSanchez

Опоздун
631
17
150
Доброго времени суток! Вот смотрю я такой на выход 1.16.3 вчера. Сегодня посмотрел, вышел вроде Forge, но маппинги ещё сырые (большая часть методов это func_шототам) как и сам Forge. Захожу в Eclipse, меняю всего три строки (маппинги, api и loader версии) и просто перезахожу в среду и меня с распростёртыми руками ждёт 1.16.3, с стабильными маппингами, без этих ноунейм функций, и более оптимизированным рендером Indigo от Fabric (ванилла - 15-30фпс, индиго = 153 фпс О_О) и всё. Всего за полторы минуты обновил среду и мод. Друзья мои (и простые люди) как считаете, перегонит ли Fabric наш любимый, но уже не тот Forge? Помню чудные времена, когда Forge на 1.5.1 выходил за пару дней стабильным. Не то, что сейчас, ждёш его переработку год, а стабильность и удобство посредственные. Раньше было лучше, а сегодня, какие-то непонятные новые штуки оказываются на порядок стабильнее, быстрее и удобнее того, к чему мы так привыкли. Возможно это меня просто потянуло на англ аудиторию, они же любят всё новенькое. Что можете сказать господа? Неужели на нашем форуме нету тех новеньких, которые вдохнут новых сил в моддинг или наши старички так и не познают все эти новинки?
 
А что там есть еще хорошего?
На курсе мне сказали, что там апи не сильно жостка меняется от версии к версии. И это само по себе большой плюс.
А что на счет "парадигмы моддинга"? В форж, например, рекомендуется использовать многочисленные события вместо всяких грязных хаков, чтобы изменять поведение игры. Как у фабрика?
~~~
Вообще, я думаю, что фабрик, будучи созданным далеко не на заре моддинга, должен иметь в себе какой-то результат анализа своих предшественников. Что-то такое в нем чувствуется?
Например, в форж долгое время было проблемой моменты инициализации разных игровых объектом. В итоге через десяток+ версий игры пришли к DeferredRegister.
Как та же проблема решается в фабрике?
 
Последнее редактирование:
пришли к DeferredRegister
Не будь так уверен. Те 5 калек через пару версий придумают что-то новое, просто потому, что им так хочется. Или опять какой-то условный Дарк или ещё кто-то придёт в форджтим и будет пиарить свои паттерны. Как команда, как разработчик API, фордж - самая донная, которую я только когда либо встречал в сфере программирования.
 
А там мы забиваем гвозди микроскопом (Тут отсылка к какому-то там сообщению о миксинах). Но ведь это не мешает игре вести себя более адекватно в сравнении с Forge.
Что-то такое в нем чувствуется?
Как по мне. регистрация объектов в игре напоминает регистрацию из динозаврской GameRegistry.register(MYBESTBLOCK); а также вообще он более дружелюбен к пользователям. К примеру чтобы сделать генерацию руды тут уже надо юзать миксин, зато не нужно тонну кода писать как в Forge.
Как та же проблема решается в фабрике?
Точно сказать пока не могу, но и проблем у меня ещё не было. Скорее всего там какая-то сортировка в зависимости от типа, но это не точно. К примеру там не пре/пост\-инит, там один единственный метод: onInitialize. Всё делается в нём включая разделение кода на клиент/коммон (но мне ещё не приходилось это делать).

PS: 10% Java кода + 85% Json + 5% Текстуры = мод на Fabric
 
Не будь так уверен. Те 5 калек через пару версий придумают что-то новое, просто потому, что им так хочется
А я не говорил, что это конечная стадия. Однако, это первое решение, которое красиво решает проблему
 
это первое решение, которое красиво решает проблему
Спустя сколько там версий? Десяток? На Fabric обновления всего выходят на несколько порядков быстрее и стабильнее... (вспомни сколько допиливали выборочную загрузку ресурсов в форже)
а если какой-то ***** полностью метод перепишет, забыв про совместимость с модами?
У меня похожее было, но встроенные Javadoc от Fabric сами мне сказали шо это уже старое, вот это новое, его юзай, отличий минимум использования.
Крупные изменения они оставляют как в доках так и в коммитах на гите посмотреть можно. Не считая моментальной поддержки на дискорде.
 
динозаврской GameRegistry.register(MYBESTBLOCK);
тут уже надо юзать миксин
Выглядит так, будто они не проанализировали косяки своих предшественников. Не очень радужно
Точно сказать пока не могу, но и проблем у меня ещё не было. Скорее всего там какая-то сортировка в зависимости от типа, но это не точно.
Итемблок блока должен регаться после этого блока, например. Подход аля GameRegistry не мешает сделать неправильный порядок, не защищает от этой ошибки
1599852348873.png

В целом, у меня испортилось впечатление о фабрике🤔
~~~
Поставил лайки за то что обсуждаешь и объясняешь эти штуки мне
 
Не очень радужно
Ели точнее то сначала регаешь feature с генерацией, а миксином чисто в игру его пихаешь. Коди минимум и удобно, а в игре даже при кривом коде нету крашей по 10 штук за раз, код если неправильный то не подключается.
Итемблок блока должен регаться после этого блока, например.
Не знаю что ответить, я просто привык к такому порядку, да и в вики по фабрик инфа есть.
Кхм. Вот чего половина населения так не любит гысон? Всегда это замечал. Вы от него аж шарахаетесь...
 
Кхм. Вот чего половина населения так не любит гысон? Всегда это замечал. Вы от него аж шарахаетесь...
Он не дебажемый вообше. Он работает или не работает. Даже соут не сделаешь.
 
Вот чего половина населения так не любит гысон?
json? Потому что там
нет автодополнения(если я начинаю писать minecraft:app, то идея не предлагает мне minecraft:apple)
нет ошибок компиляции(если я напишу minecraft:apple1, то идея не скажет, что такого предмета нет)
нет статической типизации с пользовательскими типами(minecraft:apple ничем не отличен от minecraft:stone)
 
Кхм. Вот чего половина населения так не любит гысон? Всегда это замечал. Вы от него аж шарахаетесь...
Из-за статичности и негибкости. Невозможно что-то менять напрямую в процессе(как в дебаг режиме можно). Постоянно нужно делать перезапуск. Это очень бесит. Это так бесит что хочется напечатать слово json размером в 1х1х1м на 3D принтере, заехать в майкрософт и всунуть его в одно место тому, кто его придумал ввести в майн.
Если в 1.7.10 для того чтобы поменять текстуру блока, нужно было за 1 секунду переключится в среду, изменить имя текстуры в getIcon и смотреть, то при json необходимо ждать не меньше 10-15 секунд пока майн загрузится. Это если мод легкий. А если глобальный и уже много всего, и он загружается по минуте-две? Разница в 100 раз получается.
 
F3 + T нажми, ресурсы игры перезагрузятся и узреешь изменения. Это пару секунд.
тоже самое что перезапуск. Перезагрузка одного ресурса и всех ресурсов - существенная разница по времени
 
Что можете сказать господа? Неужели на нашем форуме нету тех новеньких, которые вдохнут новых сил в моддинг или наши старички так и не познают все эти новинки?
Давай так же только губку в сравнении с буккитом)
 
Давай так же только губку в сравнении с буккитом)
В fabric к стати есть шо-то от/из Sponge, но шо и зачем не помню и не вникал туда особо.
PS: а есть ещё и paper, spigot, и кча всячины)
 
Я в 2015-м:
Ухты, наконец мой меч в моде на 1.5.2 работает как и мод на каменную броню, который даже на сайте каком-то выложил))))
Я в 2020-м:
Так, а схренали это Windows Store для установки приложений требует автосжатие файлов в NTFS? Реестр, иди ка суда, будем тебя резать :devilish:
 
Назад
Сверху