О внутренних изменениях в обновлении v2.3.
В данном обновлении была введена поддержка ядра Folia и изменений в Paper 1.20.5+. Внутреннее устройство ядра Folia вынудило нас отказаться от использования своего исполнителя команд на новых версиях Paper и ядре Folia.
Folia ограничивает список возможных реализаций исполнителей команд ввиду особенностей своей работы, поэтому у нас не осталось больше вариантов, кроме как использовать нового встроенного исполнителя FeedbackForwardingSender
, появившегося в Paper 1.18.1. Этот исполнитель делает ровно то же самое, что и наш собственный, поэтому он стал отличной заменой.
Можно выделить следующие положительные стороны:
- Класс
FeedbackForwardingSender
- это часть Paper API, что дает возможность отказаться от внутреннего кода игры на Folia и Paper 1.18.1+, а значит, плагин не нужно будет обновлять для этих ядер.
- Выполнение команд через FeedbackForwardingSender поддерживается со стороны разработчиков Paper, что гарантирует повышенную совместимость и стабильность.
Из негативных же факторов можно выделить следующее:
- Поскольку FeedbackForwardingSender - это уникальная механика в Paper API, то, соответственно, Spigot API ничего подобного не имеет. На Spigot будет использоваться старая механика с нашим собственным исполнителем, что по-прежнему обязывает нас добавлять поддержку новых версий Spigot в будущем.
- Класс FeedbackForwardingSender имеет модификатор
final
, что лишает нас возможности как-либо изменить механику его работы. По этой причине имя исполнителя команд на серверах, где будет использоваться новый способ, теперь станет "FeedbackForwardingSender", а не "@EasyPayments", как было ранее, и как осталось на Spigot.