ObserverLib — это библиотека, предназначенная для надёжного наблюдения за изменениями блоков в обширных областях. Она позволяет регистрировать наблюдателя для конкретной области и получать уведомления о любых изменениях в ней. Это особенно полезно для проверки целостности структур: наблюдатель может отслеживать, соответствуют ли блоки ожидаемому состоянию, и сообщать о несоответствиях.
Главное преимущество библиотеки — эффективная работа с большими областями, включая те, что выходят за пределы одного чанка. Вместо постоянной проверки каждого блока, ObserverLib передаёт только информацию об изменениях, что снижает нагрузку на производительность и избегает лишней загрузки чанков. Это делает её идеальной для модов, которым требуется проверка структур в реальном времени.
Библиотека публично доступна и может использоваться в других проектах. Она интегрирована в Astral Sorcery начиная с версии 1.13 и выше.
- Регистрация наблюдателей для отслеживания изменений блоков в заданной области.
- Передача уведомлений об изменениях с необходимой информацией для проверки состояния.
- Оптимизация производительности за счёт обработки только изменённых блоков.
- Поддержка областей, превышающих размер чанка, без принудительной загрузки.
- Используется в Astral Sorcery для проверки структур.
- Доступна для интеграции в другие моды через публичный API.