Нужно реализовать клиент-серверный мод для Minecraft, который позволяет серверу получать список модов, установленных у игрока на клиенте, и выполнять базовую проверку этого списка.
Данная issue посвящена в основном серверной части, клиентская размещена в TemplateMod-Java
Цель - cделать рабочий прототип системы, где:
клиентская часть собирает список установленных клиентских модов;
отправляет этот список на сервер при подключении игрока;
серверная часть принимает список;
сравнивает его с конфигом запрещённых/обязательных модов;
логирует результат и при необходимости кикает игрока.
Технические требования
Стек
Minecraft: 1.21.11
Ядро: Paper/Purpur
Язык: Java
Сборка: только Gradle (как в шаблоне)
Серверный плагин должен:
- принять пакет от клиента;
- провалидировать его;
- сравнить список модов с конфигом;
- записать результат в лог.
Проверки должны включать:
Проверка запрещённых модов
Если найден мод из списка запрещённых, сервер должен:
- либо кикнуть игрока,
- либо просто залогировать нарушение в логах.
(это можно настраивать через флаг в конфиге напротив мода. если флага нет - просто логировать)
Лучше настраивать поведение через конфиг.
Проверка обязательных модов
Если отсутствует мод из списка обязательных, сервер должен:
- либо кикнуть игрока,
- либо пометить это в логах.
(аналогично проверке запрещенных)
Проверка версий
Желательно добавить возможность проверять минимальную версию обязательного мода.
Например:
мод examplelib должен быть не ниже 2.1.0
Можно реализовывать не весь функционал и не дотошно, главное увидеть твоё видение этого и базовую архитектуру, которая затем позволит это развить.
Нужно реализовать клиент-серверный мод для Minecraft, который позволяет серверу получать список модов, установленных у игрока на клиенте, и выполнять базовую проверку этого списка.
Данная issue посвящена в основном серверной части, клиентская размещена в TemplateMod-Java
Цель - cделать рабочий прототип системы, где:
клиентская часть собирает список установленных клиентских модов;
отправляет этот список на сервер при подключении игрока;
серверная часть принимает список;
сравнивает его с конфигом запрещённых/обязательных модов;
логирует результат и при необходимости кикает игрока.
Технические требования
Стек
Minecraft: 1.21.11
Ядро: Paper/Purpur
Язык: Java
Сборка: только Gradle (как в шаблоне)
Серверный плагин должен:
Проверки должны включать:
Проверка запрещённых модов
Если найден мод из списка запрещённых, сервер должен:
(это можно настраивать через флаг в конфиге напротив мода. если флага нет - просто логировать)
Лучше настраивать поведение через конфиг.
Проверка обязательных модов
Если отсутствует мод из списка обязательных, сервер должен:
(аналогично проверке запрещенных)
Проверка версий
Желательно добавить возможность проверять минимальную версию обязательного мода.
Например:
мод examplelib должен быть не ниже 2.1.0
Можно реализовывать не весь функционал и не дотошно, главное увидеть твоё видение этого и базовую архитектуру, которая затем позволит это развить.