Мод-библиотека для Майнкрафт, с которой разработчики могут создавать собственные сетевые протоколы на внутреннем сервере Netty. Такие протоколы работают через тот же порт, что и сервер Майнкрафт: прокси Velocity и сторонние Java-приложения смогут обмениваться данными с сервером без отдельного сокет-сервера.
Возможности
- Передача пользовательских пакетов и объектов Java через API ProtoWeaver.
- Шифрование SSL, аутентификация протоколов и ограничение числа подключений.
- Сжатие данных: Gzip, Snappy и LZ.
- Отдельные обработчики событий подключения, отключения и полученных пакетов для клиента и сервера.
- Пользовательская сериализация, например для NBT-тегов.
- Поддержка модулей
client,fabric,forge,paperиproxy.
Как пользоваться
ProtoWeaver подключается как зависимость проекта через Maven-репозиторий. Библиотеку не следует включать внутрь итоговой сборки: её устанавливают рядом с модом или плагином, который её использует.
Протокол создают через Protocol.create, указывают обработчики, сжатие, типы пакетов и затем загружают вызовом ProtoWeaver.load(protocol). Для отправки объекта используются connection.send(...) или client.send(...); объект должен быть добавлен в протокол как пакет.
