▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
TimeLib

TimeLib

Датапак для Minecraft TimeLib позволяет получать реальную дату и время внутри игры с точностью до тика.

Оцените первым
4.4K
26

TimeLib - это датапак для Minecraft Java Edition (версии 1.x), который решает давнюю проблему синхронизации внутриигрового времени с реальным миром.

Если вы когда‑нибудь хотели сделать автоматическую ферму по расписанию или устроить событие по часам - этот датапак вам пригодится.

Важно! На момент написания этого обзора автор обнаружил несколько серьёзных проблем с работой TimeLib из‑за ограничений самой игры Mojang.

Фундаментальные проблемы (пока неисправимые)

Из‑за этих проблем пользователю приходится каждый раз при перезагрузке мира вручную подтверждать или корректировать дату - что ломает саму идею автоматизации.

  • Если профиль головы игрока (содержащий временную метку) старше 24 часов (из‑за кэширования), автоматически определить точную дату невозможно.
  • Начиная с версии Minecraft 1.21 получить unix timestamp можно только от онлайн‑игроков - значит пока никого нет на сервере дата не обновляется.
  • Счётчик PausedTicks работает только если хотя бы один игрок был онлайн всё время заморозки игры.
  • Из‑за перехода на летнее время unix timestamp может откатиться на час назад - что ломает монотонность времени.

Другие известные исправимые баги

  • При редких обстоятельствах дата может оказаться на один день вперёд.
  • Дата не увеличивается после того как прошло более одного дня без перезагрузки сервера/клиента.
  • Пока время ещё не синхронизировано после загрузки датапак не сообщает об этом - может привести к ошибкам.

TimeLib

Датапак предоставляет следующие возможности:

  • Получение реальной даты и времени с точностью до тика:
    • Год месяц день день недели час минута секунда unix timestamp.
  • Текущий тикрейт игры.
  • Определение паузы игры (/tick freeze или одиночная игра) и её длительности.
  • Конвертация любого unix timestamp в дату/время.
  • Поддержка разных часовых поясов и летнего времени.
  • Высокая эффективность даже при лагах или изменении тикрейта.

Скачайте датапак TimeLib для Майнкрафт Java Edition чтобы получить реальное время прямо в игре.

Как использовать

После установки датапак автоматически отслеживает время для вас сначала нужно настроить параметры под себя через чат или команду /function timelib:util/settings.

Настройки

  • Command Block Offset - смещение между UTC временем вашей системы если отличается например UTC 7pm системные часы показывают 8pm ставьте +1h.
  • Timezone Offset - смещение отображаемого времени например +1h покажет час позже.

Получение реального времени

Значения хранятся внутри игрока #TimeLib по отдельным скорам:

  • TimeLib Year Month Day WeekDay Hour Minute Second UnixTime

Также строковые версии даты хранятся в хранилищах timelib date и timelib daytime.

События

  • #timelib date_changed - выполняется при изменении даты.
  • #timelib daytime_changed - выполняется при изменении времени суток.
  • #timelib game_unpaused - выполняется при возобновлении игры после паузы содержит количество пропущенных тиков в скоре PausedTicks.

Получение тикрейта

Обновляется раз в секунду читается из скора TimeLib Tickrate.

Конвертация unix timestamp

Установите входной скор Input UnixTime, выполните /function timelib util/unix_timestamp_to_date, результат появится в скорах вывода Output.

Как это работает

TimeLib комбинирует Base64‑закодированный unix timestamp из голов игроков с информацией о времени суток из вывода командных блоков чтобы вычислить текущую дату/время Тикрейт считается подсчётом тиков между изменениями времени суток Пауза определяется через скор minecraft custom total_world_time.

Важно знать

  • Для работы требуется интернет‑соединение.
  • Тикрейт определяется без использования трюков с границей мира.
  • Если ваш датапак использует чанк с координатами 29999999 29999999 возможен конфликт.
  • Начиная с версии 2 3 0 используется библиотека lantern load проверяющая зависимости через скоры load status.
  • Обновление до новой версии просто замените старый датапак новым после версии 2 3 0 Для более старых версий сначала выполните /function timelib uninstall.

Лицензия MIT

Вы можете свободно распространять изменять и использовать TimeLib при условии указания авторства оригинальной работы.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

23w45a1.21.x1.20.x

Платформы

Поддерживаемые окружения

Клиент и сервер

Ссылки

Создатели

Детали

Лицензия:
Опубликован:2 года назад
Обновлён:12 месяцев назад
Главная