Супердуперпупер обновление кузни

Нужно ли было выпускать этот апдейт?

  • Нет

  • Да

  • Я на другой версии майна и мне плевать)


Результаты будут видны только после голосования.

GoogleTan

Картошка :3
1,354
43
310
IEEP вроде только для игроков. P - Player, я ведь не путаю? А капа для всего подходит
 
7,099
324
1,510
Я хз чем вам эти капабилити нравятся, как по мне они сделаны ужасно. Чтобы сделать банальные вещи нужно создавать 100500 классов..
Полностью согласен - можно было бы сделать лучше. Однако совсем без чего-то подобного худо
 

WantaSanchez

Опоздун
633
17
150
Где капабилити? Где DistExecutor? Где DeferredRegistry?
Я за неимением тонн времени не лезу дальше базы, но скорее всего или есть аналоги, главное поискать. А если и нету, то если будет много тех, кому оно реально нужно, то разрабы добавят. Взять, допустим, ону из базовых механик - сгораемый блок. Не знаю как там на кузне, я на фабрике его ручками пытался сделать, просил в дискорде как лучше сделать а они, как оказалось сделали:
Java:
FlammableBlock.INSTANCE.add(burnTime, spread);
Разработка модулей отдается на откуп сообществу?
Да вроде нет. у них просто отдельно Fabric Loader, Отдельно Fabric API, во втором они модули обновляют по мере необходимости. Ну это насколько я понял.
разработке мода какой-то модуль, а потом он перестанет обновляться?
Например, он просто будет работать и дальше пока его или вырежут за ненадобности или заменят чем-то получше? Ну это моё мнение, у меня была давненько заковырка, там обновился модуль FabricBlockSettings и в коде ошибку слало мол устаревшее APIи мод прото не компилировался, в итоге прото в импорте добавил .v1 и PROFIT!
Нацеленность на снапшоты майна.
Я не уверен, что они нацелены на снапшоты, скорее они нацелены держить своё творение всегда в актуальном состоянии, да и такой подход позволяет не делать перерывы в века как кузня (через сколько там кузня обновилась с 1.16.4 до 1.16.5, за несколько месяцев?).
Второсортным апи?
Немного не понял о чем ты конкретно.
Потенциальная невозможность клепать сборки 100+ модов.
Ну, как минимум не каждый человек делает такие сборки, я вот играю на своей сборке на базе Thermal Series с 31 модом, в основном сборка держиться на забалансеных конфигах. А как максимум, это пока нельзя такие сборки делать, модов на фибрике всё больше и они становятся всё больше совместимы друг с другом, хотя я делал ради эксперимента сборку на фабрике с 20+ модами, никаких проблем не было, основой сборки был Tech Reborn.
Корнем проблемы являются поощрение использование миксинов
Согласен, забивать гидравлическим пресом гвозди в маленькие доски не комильфо, но как показала практика, такой метод более сниходителен что к нагрузке на игру, что к скороти её загрузки, а также загрузки и работы модов. Но кто знает, может в будущем он как-то это решат.
малое количество готовых событий
Ну, я как-то с событиями что на 1.5, что на 1.12 что на 1.16 пока не играл, хотя кто знает. может и понадобиться, тогда и опишу что там с событиями, может.
в том время как ты юзал и Фабрик и Форж
Я ещё юзал во времена палеозоя modloader, но зато хоть Rift обошёл деятой дорогой.
 
7,099
324
1,510
Спасибо за объяснение! Еще непонятны некоторые моменты:
Например, он просто будет работать и дальше пока его или вырежут за ненадобности или заменят чем-то получше?
А модули типо могут без изменений работать на последующих версиях? Каким образом это достигается? Ведь игра меняется изнутри, моджанги перепиливают ее от версии к версии
да и такой подход позволяет не делать перерывы в века как кузня
Ну типо если разрабы тратят время на поддержку снапшотов, то они меньше времени тратят на что-то другое. Отсюда и подозрение во второсортном апи. Или трата времени на поддержку снапшотов как-то помогает?
1619384178756.png
 

WantaSanchez

Опоздун
633
17
150
А модули типо могут без изменений работать на последующих версиях?
Да, к примеру, FabricItemSettings и такой же для блоков только один раз обновили(именно что код для модера изменился). А FlammableBlockRegistry не обновлялся ещё с 2019 года.
Каким образом это достигается?
А тут хитро, смотри, если в игре изменили регистрацию предметов, то под неё изменят Loader и модуль, но, модуль будет обновлён так, что ты будешь юзать тот же самый код, все нужные исправления за тебя сделает модуль и загрузчик. К примеру мой мод с 1.16.1 до 1.16.5 и до снапшотов 1.17 из правок имел только пару обновлённых импортов (просто добавил те самые .v1). На фабрике, при использовании смекалки и хитростей можно вообще сделать мод совместимым с парой десяткой версий игры.
 

Sainthozier

Стрелочник
623
11
369
Юз миксинов - худшее, что случалось в обоих апи. Предлагаю хакнуть все возможные репы форджи и фабрика, чтобы делитнуть их к херам насовсем. Если делаешь продукт - делай качественно, а не на отьебись, отмазываясь занятостью на работах своих и посылая нахуй всё комьюнити с вопросами. Миксины != апи. Оба лагеря юзают кормоддинг, как отмазу своей никчёмности и лени. Какой там апи, боже, за лет 6 ничего не поменялось, почти в каждом крупном моде есть asm. Это шутка такая? Как апи, так никакой в мире qa engineer не даст ему выйти из пре-альфы.
Я вообще хз, как Лекс и его шестёрки могут спокойно спать по ночам, выпуская такое говнище. Хотя, как я заметил, на этом форуме многие боготворят форджтим и считают их продукт шедевром программирования. Смешно. Я очень завидую таким людям, хотел бы я себе стереть память о работе с апишками в других сферах прогерства и молча с кайфом наслаждаться недоношенным форджем.

IEEP вроде только для игроков. P - Player
P - Properties. I - Interface. E - Extended. E - Entity.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Юз миксинов - худшее, что случалось в обоих апи.
Ну фиг знает, как по мне удобно и просто. Да и перформанс не страдает, ибо вызовы сотен ивентов, особенно каждый тик или даже каждый кадр в рендере дают о себе знать.
 

WantaSanchez

Опоздун
633
17
150
Если делаешь продукт - делай качественно, а не на отьебись, отмазываясь занятостью на работах своих и посылая нахуй всё комьюнити с вопросами.
Вот так у вас бомбануло мсье. :)
Оба лагеря юзают кормоддинг, как отмазу своей никчёмности и лени.
Извини если прозвучит грубовато, но схера ли ты жалуешься на кузню с фабрикой с таким пристрастием, когда я что-то не видел подобные инструменты твоего производства? Даже если они такие плохие как ты говоришь, почему их используют миллионы и они двигаються вперед уже столько лет (ну упустим что фабрика молодая ещё)? Допустим ты такой хороший разработчик, тебе дают сложные задания, ты получаешь денюжку, у тебя такой скилл, так сделай своё API и лоадер прям такими идеальными как ты говоришь. При всём уважении мсье, но раз вы работаете скиловым прогером, и вам аж так не нравиться фабрика, кузня и прочее, то что же вы тут забыли? :)
почти в каждом крупном моде есть asm
Нет, не в каждом крупном моде. Ну тут считая у кого какие критерии "крупности мода".
Да и перформанс не страдает
Особенно если сравнивать кузню и фабрику, последняя гораздо меньше влияет на производительность. Хотя в ней же так какой-то Indigo Render юзают, я не разбирался что это, но может это он там что-то шаманит.
 
7,099
324
1,510
Да и перформанс не страдает, ибо вызовы сотен ивентов, особенно каждый тик или даже каждый кадр в рендере дают о себе знать.
Так если вставить миксин в тот же рендер - будет также лагать. Учитывая, что в форже вызовы ивентов делаются кодогенерацией, а не рефлексией, издержки от такой системы должен быть много меньше по сравнению с издержками от пользовательского кода, обрабатывающего ивент
 
7,099
324
1,510
почти в каждом крупном моде есть asm
Нет, не в каждом крупном моде. Ну тут считая у кого какие критерии "крупности мода".
Было бы неплохо проанализировать опенсорсные моды с курса на предмет наличия в них кормодов. Это по идее довольно легко автоматизировать - чекать META-INF файл. Тогда можно будет объективно говорить, как часто асм юзается при разработке модов на форже
 

WantaSanchez

Опоздун
633
17
150
Так если вставить миксин в тот же рендер - будет также лагать.
Ну, не знаю как на счет рендера, но вот в моей сборке стоит Dynamic Surroundings, который через ASM управляет погодой майна, причём такой метод совместим даже с Serene Seasons, которая вроде таким же методом управляет погодой в зависимости от сезона. Получается и совместимость да и никаких просадок в производительности замечено не было.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Так если вставить миксин в тот же рендер - будет также лагать. Учитывая, что в форже вызовы ивентов делаются кодогенерацией, а не рефлексией, издержки от такой системы должен быть много меньше по сравнению с издержками от пользовательского кода, обрабатывающего ивент
Всм? Ты вставляешь свой вызов метода прям в байт-код. Фордж же каждый кадр создаёт новый объект ивента. Открой профилировщик, там ад просто.
 
7,099
324
1,510
каждый кадр создаёт новый объект ивента
Жостка. Надо их по идее пулить, ведь после передачи всем обработчикам объект больше не нужен

Dynamic Surroundings, который через ASM управляет погодой майна... ...никаких просадок в производительности замечено не было.
Недавно мне пришлось юзать миксины для паблик-мода. Мод про перевод текстов. И требовалось не нарушать работу другого мода, которому также интересны эти тексты в оригинальном виде. Поэтому переводить нужно было на самой ласт стадии - непосредственно перед рендером. Поэтому пришлось хукнуться в FontRenderer. Выполнение перевода каждый кадр вызывало жосткие фризы. Кеширование функции перевода помогло.
Dynamic Surroundings, который через ASM управляет погодой майна, причём такой метод совместим даже с Serene Seasons, которая вроде таким же методом управляет погодой в зависимости от сезона
А че, если бы один из модов юзал аннотацию @overwrite вместо @Inject? Это вполне реалистично, учитывая, что @overwrite легче юзать
 
Последнее редактирование:

Sainthozier

Стрелочник
623
11
369
Вот так у вас бомбануло мсье
Бомбить в интернетике? Кекв. Я уже или ещё не в том возрасте ) Это был всего лишь триггер на юз миксинов.
Кормоддинг - это отдельная тема. Вот это типично тупое "юзай миксины, хукнись туда да сюда, напиши свой класстрансформер, дёрни переменную рефлексией" по началу бесило, затем смешило, а теперь расстраивает. И расстраивает не сам совет, а игнор очевидных косяков в апи от его же комьюнити. Смотри, когда взрослые и адекватные 35-летние дяденьки с 50 лет опыта сталкиваются с проблемным кейсом, который не решает апи, то у разумного человека появляется аж целых три варианта: 1) связаться с разработчиком, описать кейс, предложить вариант решения проблемы; 2) решить появившуюся проблему в соляново и запилить на энтузиазме пулл реквестик; 3) тихонько форкнуть апи и сделать с ним всё, что захочется.
Но какие варианты развития событий есть у васьки электрика со второго курса, который не шарит? Ну или у ленивого человека, которому нужно просто по фасту решить поставленную таску? Хм, заюзать asm! 10 оверрайтнутых методов из 10.
Из этого вытекает та ситуация, в которой многие жалуются на внутрянку апи. Ой, а почему сделали так, а не так, а почему вот сяк, а не так, а вот мне мама сказала надо делать так, а вот в школе учили делать так, а вот мне на ютьюбе добрый дядя сеньор помидор сказал надо было делать так. Ну кек же, да сделай ты как надо и по уму, распиши всё и запили пулл реквест - сделаешь мир чуточку лучше. А вот уже игнор этих пр от Лекса, его отмазы и тот факт, что версии улетают в легаси чаще, чем создаётся что-нибудь годное - совсем другая история )

схера ли ты жалуешься на кузню с фабрикой с таким пристрастием, когда я что-то не видел подобные инструменты твоего производства
почему их используют миллионы и они двигаються вперед уже столько лет
Это шутка такая? Какая-то довольно кринжовая версия "спирва дабейся!!11". А почему столько бездомных в ЛА? Как говорится: "if you're a homeless just buy a house". Кек, в следующий раз подумай.
 

tox1cozZ

aka Agravaine
8,455
598
2,892
Хз, апишкой не покроешь вообще все нужды, а кормоды отлично помогают делать то что тебе нужно. Изменять как аспекты самой игры, так и добавление функционала.
Есть хуклиба, есть миксины. Все это позволяет хукаться куда хочешь и как хочешь в пару строк кода. Быстро, просто, удобно.
Чего бухтеть-то?
 

Sainthozier

Стрелочник
623
11
369
Всё верно, в этом и фишка. Нахрена развивать функционал апи, если есть кормоддинг, кекв. Популярность которого всё и растёт и растёт, но проблемы с дебильными редиректами и оверрайтами методов никуда не деваются, потому что подобные траблы с совместимостью попросту анрил решить. И никакой фидбэк уже не поможет, пуллреквесты нужно тщательно и грамотно составлять, а так же объяснять что и зачем нужно. И не поможет потому, что тебя скорее всего никто не послушает, этот конфликт тянется с 1.12, если не ошибаюсь. Тогда форджи были в разы теплее к кормоддингу, но появились ленивые и наглые дурачки и каждый день(без преувеличения, это слова Лекса) происходили вот такие ситуации: "pull this or i'll coremod it in myself" или "idk how to do X so i'll just coremode it".
Никто не бухтит ) Я просто призываю перестать форсить кормоддинг и не цеплять на него ярлык "панацея".
 
Последнее редактирование:

WantaSanchez

Опоздун
633
17
150
Я просто призываю перестать форсить кормоддинг и не цеплять на него ярлык "панацея".
Разве? Тогда не понимаю некоторой части обсуждения. Я просто использую то, что мне удобно, так сказать юзаю то, что мне предлагала кузня на 1.12 и фабрика на версиях новее, и если надо будет, сделаю как надо мне. И я тут уже не пойму чего бухтеть)

Лирическое отступление, но я помню когда сидел на 1.5.2 (в плане игры а не моддинга), то замечал, что кормоды чуть ли не везде и порой часто были проблемы совместимости, а с версиями игры поновее как-то устаканилось. На 1.12 я последний раз видел кормоды в составе Foam Fix и Dynamic Surroundings, но их функционалу они просто были необходимы ибо не было аналогов в кузни. Ах да, в Apple Core тоже есть кормод, и я помню Apple Core и Foam Fix вместе не работали, но простой фидбек и уже работают как часики.
 
Последнее редактирование:

WantaSanchez

Опоздун
633
17
150
Юз миксинов - худшее, что случалось в обоих апи. Предлагаю хакнуть все возможные репы форджи и фабрика, чтобы делитнуть их к херам насовсем. Если делаешь продукт - делай качественно, а не на отьебись, отмазываясь занятостью на работах своих и посылая нахуй всё комьюнити с вопросами. Миксины != апи. Оба лагеря юзают кормоддинг, как отмазу своей никчёмности и лени. Какой там апи, боже, за лет 6 ничего не поменялось, почти в каждом крупном моде есть asm. Это шутка такая? Как апи, так никакой в мире qa engineer не даст ему выйти из пре-альфы.
Я вообще хз, как Лекс и его шестёрки могут спокойно спать по ночам, выпуская такое говнище. Хотя, как я заметил, на этом форуме многие боготворят форджтим и считают их продукт шедевром программирования. Смешно. Я очень завидую таким людям, хотел бы я себе стереть память о работе с апишками в других сферах прогерства и молча с кайфом наслаждаться недоношенным форджем.


P - Properties. I - Interface. E - Extended. E - Entity.
Та так, лазил по темках и нашёл провокационный материал, ты оказывается был за миксины)
Screenshot_4.png
 
Последнее редактирование:
Сверху