Перейти к содержимому

HITWtimer

HITWtimer — это мод для Minecraft, созданный специально для мини-игры «Hole in the Wall» на MCC Island. Он служит точным помощником для расчёта времени ловушек, помогая игрокам улучшить тайминг при прохождении через движущиеся стены. Мод обеспечивает высокоточный тайминг,

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
92
Подписчиков на Modrinth
0
версии
2
Обновлён
15 июля 202615 июл.
Опубликован
в 2026
Hole in the wall · свайп

Коротко о моде

Работает на Fabric
Для Minecraft 26.1.2
Ставится только в игру; на сервер ставить не нужно
Последняя версия — 1.0.2 от 15 июля 2026
Нужен Fabric Language Kotlin и Fabric API
Лицензия CC0-1.0 — бесплатно
Где нужен
В игреобязателенНа серверене нужен

Ставится только в игру; на сервер ставить не нужно

Версии игры26.1.2
Описание переведено автоматическиПоказать оригинал (EN)

HITWtimer

Чисто клиентский мод на Fabric + Kotlin · Minecraft 26.1.2 · Автор KCl · Лицензия CC0-1.0

English documentation: перейти к English Documentation в конце этого файла.

  1. Описание HUD
  2. Пример использования: Falling Sand
  3. overallconfig.txt (глобальная конфигурация)
  4. Файл traplist (список ловушек)
  5. Preparation — фаза подготовки
  6. Формат событий (events)

|------|------| | Субтитры / детект чата | Сопоставление trap через Title/Subtitle Mixin + события чата; можно указать SUBTITLE / CHAT / BOTH для каждого trap | | Трёхуровневая конфигурация | overall (глобальная) → значения по умолчанию в шапке traplist → переопределение в отдельном trap | | Несколько списков | Несколько traplist*.txt, включаются/отключаются командами во время работы |

Горячая перезагрузкаМгновенно применяется по клавише L или /hitwtimer reload
----------------
Minecraft~26.1.2
Fabric Loader≥ 0.19.2
Fabric APIСовместим с 26.1.2
Fabric Language KotlinСовместим с окружением
Java≥ 25

Поместите собранный hitwtimer-*.jar в .minecraft/mods/ и запустите клиент с Fabric.

.minecraft/config/hitwtimer/

Создаются примеры конфигураций (overallconfig.txt, traplist1.txt и т.д.).

  1. Убедитесь, что в config/hitwtimer/overallconfig.txt:

    enabled=true
    enabled_lists=traplist1
    detect_subtitle=true
  2. Отредактируйте config/hitwtimer/traplist1.txt, пропишите pattern= для trap (должен совпадать с реальным текстом субтитров/чата в игре).
  3. В игре нажмите L для горячей перезагрузки (или /hitwtimer reload).
debug=true

|--------|------|------|

  • При выходе записываются hud_x / hud_y / hud_scale в overallconfig.txt.

/hitwtimer
/hitwtimer list
/hitwtimer reload
/hitwtimer enable <name>
/hitwtimer disable <name>
/hitwtimer settings

|------|------| | /hitwtimer | Показать доступные подкоманды | | list | Показать текущие включённые traplist (зелёное имя + серое description) | | `enable | Включить список с именемname(имя файла без.txt, например traplist1) и автоматически перезагрузить | | disable | Отключить этот список и перезагрузить | Файл списка должен существовать вconfig/hitwtimer/. enable/disableменяют набор включённых списков во время работы; для постоянного закрепления изменитеenabled_lists=вoverallconfig.txt`.

Описание HUD

falling sand  18.0s          ← имя trap + общее оставшееся время
  sands gone
falling sand  15.0s
  Preparation                ← пройдено: серый, без отсчёта
  stop falling  10.0s        ← текущая фаза: цветной + отсчёт
  sands gone                 ← ещё не наступило: серый предпросмотр
  • Метка Preparation всегда на английском Preparation и является первой строкой списка фаз trap (в той же колонке, что и остальные события).
  • Не пишите строку Preparation вручную в events=.

Настройки внешнего вида (overallconfig)

|----|------|------| | hud_x / hud_y | 10 / 10 | Позиция в левом верхнем углу (координаты GUI, редактируется клавишей K) | | hud_scale | 1.0 | Масштаб 0.4~4.0 | | render_background | true | Рисовать ли тёмный полупрозрачный фон | | hud_horizontal_padding | 8 | Горизонтальный внутренний отступ фона |

hud_vertical_padding6Вертикальный внутренний отступ фона

Пример использования: Falling Sand

Falling Sand
  1. Сначала 3 секунды Preparation (подготовка позиции)
  2. Затем отсчёт 10 секунд до «stop falling»
  3. Затем ещё 5 секунд до «sands gone»

2. Записать в traplist1.txt

enabled=true
description=Classic HITW traps

subtitle_preparation=true preparation_time=3.0 preparation_color=#55FF55 main_color=#FFFFFF source=SUBTITLE match_mode=CONTAINS case_sensitive=false

---------- отдельный trap ----------

name=falling sand enabled=true source=SUBTITLE subtitle_preparation=true main_color=#FFAA00 preparation_time=3.0 preparation_color=#55FF55 start_sound=block.note_block.pling end_sound=block.note_block.bell pattern=falling sand|sand match_mode=CONTAINS case_sensitive=false events= stop falling|10|#FF5500|entity.blaze.shoot sands gone|15|

> В примере выше `stop falling` находится на **10s** после окончания prep, `sands gone` — на **15s** (то есть примерно через 5s после stop falling).  
`overallconfig.txt`:
```properties
enabled=true
enabled_lists=traplist1
detect_subtitle=true
subtitle_preparation=true
preparation_time=3.0
/hitwtimer reload

|------|----------| | t=0 совпадение субтитра | Появляется falling sand, первая строка Preparation 3.0s…, ниже серый предпросмотр двух событий | | t=3 | Preparation заканчивается, играет start_sound, начинается отсчёт stop falling | | t=18 | Достигнуто sands gone, отсчёт завершён, играет end_sound | 3. Проверьте язык/регистр: при case_sensitive=false регистр не учитывается.
4. Убедитесь, что source совпадает с источником детекта (для субтитров — SUBTITLE или BOTH).

6. Если Preparation не нужен

name=falling sand
subtitle_preparation=false
pattern=falling sand
events=
  stop falling|10
  sands gone|15

subtitle_preparation=false на уровне trap имеет строгий приоритет: даже если список/глобальная конфигурация true, у этого trap никогда не будет фазы подготовки.

name=falling sand
source=CHAT
pattern=falling sand
events=
  stop falling|10
  sands gone|15

Источник Chat никогда не вставляет Preparation.

config/hitwtimer/
├── overallconfig.txt     # глобальная / на уровне мода
├── traplist1.txt         # список 1 (шапка = значения по умолчанию списка + несколько name= trap)
├── traplist2.txt         # можно создать свои
└── ...
  1. trapconfig: поля внутри блока name=
  2. traplistconfig: значения по умолчанию в шапке до первого name= в этом txt
  3. overallconfig: глобальный откат
    Особый случай: subtitle_preparation=false на уровне trap строго без подготовки, без отката к true из списка/глобальной конфигурации. При разборе имена ключей нечувствительны к регистру, подчёркивания можно опускать (например, preparation_time / preparationtime).

overallconfig.txt (глобальная конфигурация)

# HITWtimer Overall Config

# --- Master ---
enabled=true

enabled_lists=traplist1
# enabled_lists=traplist1,pvp,custom

# --- Detection ---
detect_subtitle=true
detect_chat=true

# --- Preparation defaults(переопределяется list/trap)---
subtitle_preparation=true
preparation_time=3.0
preparation_color=#55FF55
main_color=#FFFFFF

hud_x=10
hud_y=10
hud_scale=1.0
render_background=true
hud_horizontal_padding=8
hud_vertical_padding=6

# --- Behavior ---
auto_reload_keywords=hitw,hole in the wall,游戏开始

# --- Misc ---
debug=false

|----|------|------| | enabled | true | Общий выключатель мода | | enabled_lists | traplist1 | Списки, загружаемые при запуске | | detect_subtitle | true | Определять ли субтитры/титры | | detect_chat | true | Определять ли чат | | subtitle_preparation | true | Глобально: включать ли Preparation по умолчанию для субтитров | | preparation_time | 3.0 | Секунды подготовки по умолчанию | | preparation_color | #55FF55 | Цвет фазы подготовки | | main_color | #FFFFFF | Цвет событий по умолчанию | | auto_reload_keywords | … | Зарезервированные ключевые слова (частичная логика) | Цвета поддерживают #RRGGBB или RRGGBB.

Файл traplist (список ловушек)

  • Любое имя, например traplist1.txt, pvp.txt, mytraps.txt
  • В enabled_lists или `/hitwtimer enable ` используйте имя без расширения

# ===== traplistconfig: значения по умолчанию в шапке (должны быть до первого name=) =====
enabled=true
description=经典 HITW 列表
subtitle_preparation=true
preparation_time=3.0
...

name=trap_a
pattern=...
events=
  ...

name=trap_b
pattern=...
events=
  ...

|----|------|

| description | Описание, отображаемое в /hitwtimer list | | subtitle_preparation | Есть ли у trap в этом списке подготовка по умолчанию | | preparation_time / preparation_color | Подготовка по умолчанию для этого списка | | main_color | Основной цвет по умолчанию для этого списка | | start_sound / end_sound | ID звука начала/конца по умолчанию | | source | Источник обнаружения по умолчанию |

match_mode / case_sensitiveСпособ сопоставления по умолчанию
------------
name=Уникальный ID, также используется как запасной заголовок HUD

Необязательные (если не указано — list → overall)

|------|------| | enabled | true/false | | source | SUBTITLE / CHAT / BOTH | | subtitle_preparation | true/false (false = строго без подготовки) | | preparation_time | секунды | | preparation_color | #RRGGBB | | main_color | Цвет событий по умолчанию | | start_sound / end_sound | ID ванильного звука, например block.note_block.pling | | match_mode | CONTAINS / EQUALS / STARTS_WITH / REGEX | | case_sensitive | по умолчанию false |

name=my_trap
pattern=关键词
events=
  phase1|5
  phase2|10
name=your_trap_id
enabled=true
source=SUBTITLE
subtitle_preparation=true
preparation_time=3.0
preparation_color=#55FF55
main_color=#FFFFFF
start_sound=block.note_block.pling
end_sound=block.note_block.bell
pattern=english text|中文关键词
match_mode=CONTAINS
case_sensitive=false
events=
  stage one|5.0|#FFAA00|entity.experience_orb.pickup
  stage two|12.0|
  stage three|20.0|#55FFFF|

Сопоставление выполняется в SubtitleDetector: для каждого включённого trap проверяется component.string по его pattern + match_mode + case_sensitive.

pattern

match_mode

|------|------| | CONTAINS (по умолчанию) | Текст содержит pattern | | EQUALS | Полное совпадение | | STARTS_WITH | Начинается с pattern | | REGEX | Регулярное выражение containsMatchIn |

patternmodeПримеры совпадений
falling sand|sandCONTAINSFalling Sand!, sand is coming
Falling SandEQUALSТолько полное совпадение (зависит от case_sensitive)
anvil.*fallREGEXAnvil is falling
  • source=SUBTITLE: реагирует только на субтитры/заголовки
  • source=CHAT: реагирует только на чат
  • source=BOTH: и то, и другое
    Также глобально должны быть включены detect_subtitle / detect_chat.

Preparation — этап подготовки

|------|------| | Срабатывание по субтитрам + subtitle_preparation = true | Автоматически вставляется Preparation | | Срабатывание по субтитрам + subtitle_preparation=false на уровне trap | Строго без подготовки | | Длительность / цвет | preparation_time / preparation_color из trap → list → overall | | start_sound | Проигрывается при завершении Preparation и переходе в основной этап | Не пишите строку Preparation в events=.

Формат событий (events)

events=

|----|------|------| | Цвет | Нет | #RRGGBB; если не указан — trap main_color → list → overall → белый | | Звук | Нет | ID ванильного звука в стиле namespace:path | Приоритет: указано в событии → trap main_color → значение по умолчанию list → overall main_color → белый.

  1. Включить debug

    debug=true
  2. Сначала ослабить pattern

    /hitwtimer list

    После правки txt нажмите L или /hitwtimer reload.


# Windows
.\gradlew.bat build -x test

# Linux / macOS
./gradlew build -x test

Результат: build/libs/hitwtimer-*.jar (также есть sources jar, можно игнорировать).

.\gradlew.bat runClient

Конфигурация будет записана в рабочей директории run/config/hitwtimer/.

hitwtimer/
├── src/
│   ├── main/                 # Точка входа мода, fabric.mod.json, языковые файлы
│   └── client/
│       └── java/.../mixin/   # Mixin для Options / Gui / Title и т.д.
├── README.md
├── build.gradle.kts
└── gradle.properties

|------|------| | HITWtimerClient.kt | Инициализация клиента, клавиши, tick | | SubtitleDetector.kt | Сопоставление субтитров/чата и запуск таймера | | ActiveTimer.kt / TimerManager.kt | Продвижение этапов и звуки | | HudRenderer.kt + GuiHudRenderMixin | Данные HUD и отрисовка | | HudEditScreen.kt | Режим редактирования | | ConfigLoader.kt | Разбор конфигурации и генерация шаблонов |

HitwCommands.ktКоманда /hitwtimer

В: Не могу найти клавиши в Controls? О: Проверьте pattern, source, enabled, есть ли список в enabled_lists, включён ли detect_subtitle=true, и включите debug=true. В: Preparation не появляется? О: Срабатывание было по чату? Может, subtitle_preparation=false? О: Нужно нажать L или выполнить /hitwtimer reload. enabled_lists=traplist1,pvp или несколько раз enable.

License


Подсказка: при первом запуске создаются config/hitwtimer/ и generated-config-examples/ (если есть) с шаблонами и комментариями. Самый надёжный путь: скопировать пример falling sand → заменить pattern на оригинальный текст субтитров вашего сервера → проверить с debug=true → отключить debug для повседневного использования.

English Documentation

Клиентский мод на Fabric + Kotlin · Minecraft 26.1.2 · Автор KCl · Лицензия CC0-1.0 HITWtimer предназначен для HITW (Hole in the Wall) и похожих мини-игр. Он следит за субтитрами / заголовками и чатом, сопоставляет настраиваемые trap и показывает многоэтапный HUD с обратным отсчётом (опциональный автоэтап Preparation, цвета и звуки).

Этот мод не меняет игровой процесс на сервере. Он только читает текст субтитров/чата на клиенте и рисует HUD. Безопасен для таких серверов, как Hypixel.

Содержание

  1. Возможности
  2. Установка и зависимости
  3. Быстрый старт
  4. Клавиши
  5. Команды
  6. HUD
  7. Пример: Falling Sand
  8. Система конфигурации
  9. overallconfig.txt
  10. Файлы списков trap
  11. Написание trap
  12. Сопоставление
  13. Preparation
  14. Формат событий
  15. Отладка
  16. Сборка
  17. FAQ
  18. License

Возможности {#features-en}

ОбластьОписание
Обнаружение субтитров / чатаMixin заголовков/субтитров + события чата; для каждого trap SUBTITLE / CHAT / BOTH
Многоэтапные таймерыКаждый trap задаёт этапы; HUD показывает текущий обратный отсчёт и предстоящие этапы
PreparationПри срабатывании по субтитрам может автоматически вставить английский Preparation первой строкой этапа (никогда для чата)
HUDПолупрозрачный фон, раскладка для нескольких trap, цвета
Режимы HUDALWAYS / ON_TRAP / DISABLED (переключение по H; DISABLED = нет HUD, нет обнаружения, нет звука)
Прозрачность фонаНастраивается; по умолчанию 50%; редактируется в режиме редактирования HUD
Редактирование HUDK открывает редактор со свободным курсором: перетаскивание, масштаб колёсиком, прозрачность Shift+колёсико
3 уровня конфигурацииoverall → значения по умолчанию заголовка traplist → переопределение на уровне trap
Несколько списковНесколько traplist*.txt; включение/отключение во время работы
Горячая перезагрузкаL или /hitwtimer reload
КлавишиОтображаются в Controls → HITWtimer
i18nфайлы локализации en_us / zh_cn

Установка и зависимости {#install-and-dependencies-en}

ЗависимостьТребование
Minecraft~26.1.2
Fabric Loader≥ 0.19.2
Fabric APIСоответствующий 26.1.2
Fabric Language KotlinСоответствующий вашему стеку
Java≥ 25

Поместите hitwtimer-*.jar в .minecraft/mods/ и запустите с Fabric. При первом запуске создаётся:

.minecraft/config/hitwtimer/

с примерными overallconfig.txt и traplist1.txt.

Быстрый старт {#quick-start-en}

  1. Установите мод и зайдите в мир.
  2. Проверьте config/hitwtimer/overallconfig.txt:

    enabled=true
    enabled_lists=traplist1
    detect_subtitle=true
    hud_mode=ON_TRAP
    hud_bg_opacity=0.5
  3. Отредактируйте traplist1.txt, чтобы каждый pattern= ловушки совпадал с реальным текстом субтитров/чата.
  4. Нажмите L (или /hitwtimer reload).
  5. Играйте в HITW; совпавший текст запускает таймер HUD.
  6. Нажмите K, чтобы переместить/масштабировать/изменить прозрачность HUD; Esc/K для сохранения. Для отладки:
debug=true

Клавиши {#keybinds-en}

Изменяются в Настройки → Управление → Назначения клавиш → HITWtimer.

По умолчаниюНазваниеДействие
HПереключить режим HUDALWAYS → ON_TRAP → DISABLED → … (сохраняется в конфиг)
KРежим редактирования HUDПеретаскивание для перемещения, прокрутка для масштаба, Shift+прокрутка для прозрачности, M — режим, B — фон, Esc/K — сохранить
LПерезагрузить конфигиПерезагружает overall + включённые списки; очищает дедупликацию совпадений

Режимы HUD

РежимПоведение
ALWAYSHUD отображается всегда (заглушка, когда нет ловушки)
ON_TRAPHUD только пока активен таймер ловушки (по умолчанию)
DISABLEDНет HUD, нет обнаружения, нет звуков/таймеров

Режим редактирования HUD

  • Требуется открытый экран редактирования, чтобы мышь была свободна (в игре захват курсора не позволяет перетаскивать UI).
  • Панель-заглушка появляется во время редактирования, даже если нет ловушки.
  • Сохраняет hud_x, hud_y, hud_scale, прозрачность, режим и т.д. в overallconfig.txt при выходе.

Команды {#commands-en}

Клиентские команды:

/hitwtimer
/hitwtimer list
/hitwtimer reload
/hitwtimer enable <name>
/hitwtimer disable <name>
/hitwtimer settings
КомандаЭффект
/hitwtimerСписок подкоманд
listВключённые списки ловушек (название + описание)
reloadТо же, что L
`enable `Включить файл списка name.txt и перезагрузить
`disable `Отключить список и перезагрузить
settingsПростой экран предпросмотра настроек

Списки должны находиться в config/hitwtimer/. Для постоянного включения также отредактируйте enabled_lists= в overallconfig.txt.

HUD {#hud-en}

Раскладка

falling sand  18.0s
  Preparation  3.0s
  stop falling
  sands gone

После подготовки:

falling sand  15.0s
  Preparation
  stop falling  10.0s
  sands gone
  • Метка всегда английская Preparation как первая строка этапа.
  • Не добавляйте Preparation в events=.
  • Несколько ловушек располагаются вертикально с пустым разделителем.

Ключи внешнего вида (overallconfig)

КлючПо умолчаниюЗначение
hud_x / hud_y10 / 10Верхний левый угол (координаты GUI)
hud_scale1.0Масштаб 0.4–4.0
hud_modeON_TRAPALWAYS / ON_TRAP / DISABLED
render_backgroundtrueРисовать фон панели
hud_bg_opacity0.50.0–1.0 (по умолчанию 50%)
hud_horizontal_padding8Горизонтальный отступ
hud_vertical_padding6Вертикальный отступ

Пример: Falling Sand {#worked-example-falling-sand-en}

Сценарий

Субтитр вроде Falling Sand. Вы хотите:

  1. 3с Preparation
  2. Этап на 10с: stop falling
  3. Этап на 15с: sands gone (~5с после stop falling)

traplist1.txt

enabled=true
description=Classic HITW traps
subtitle_preparation=true
preparation_time=3.0
preparation_color=#55FF55
main_color=#FFFFFF
source=SUBTITLE
match_mode=CONTAINS
case_sensitive=false

name=falling sand
enabled=true
source=SUBTITLE
subtitle_preparation=true
main_color=#FFAA00
preparation_time=3.0
preparation_color=#55FF55
start_sound=block.note_block.pling
end_sound=block.note_block.bell
pattern=falling sand|sand
match_mode=CONTAINS
case_sensitive=false
events=
  stop falling|10|#FF5500|entity.blaze.shoot
  sands gone|15|

Время событий — это абсолютные смещения в секундах после окончания Preparation (или после срабатывания, если подготовки нет), отсортированные по значению.
stop falling|10 затем sands gone|15 — верно. sands gone|5 отсортировалось бы перед 10.

Фрагмент overallconfig

enabled=true
enabled_lists=traplist1
detect_subtitle=true
subtitle_preparation=true
preparation_time=3.0
hud_mode=ON_TRAP
hud_bg_opacity=0.5

Затем /hitwtimer reload или L.

Временная шкала (субтитр)

ВремяHUD
t=0 совпадениеfalling sand + обратный отсчёт Preparation
t=3Подготовка окончена, start_sound, вход в stop falling
t=13Узел stop falling
t=18sands gone, конец, end_sound

Без подготовки

name=falling sand
subtitle_preparation=false
pattern=falling sand
events=
  stop falling|10
  sands gone|15

subtitle_preparation=false на уровне ловушки — строгое (игнорирует true из списка/глобального).

Только чат (никогда не подготовка)

name=falling sand
source=CHAT
pattern=falling sand
events=
  stop falling|10
  sands gone|15

Система конфигов {#config-system-en}

config/hitwtimer/
├── overallconfig.txt
├── traplist1.txt
└── ...

Приоритет (высокий → низкий)

  1. trapconfig — поля внутри блока name=
  2. traplistconfig — заголовок перед первым name=
  3. overallconfig — глобальный запасной вариант
    Исключение: subtitle_preparation=false на уровне ловушки — строгое отсутствие подготовки. Ключи нечувствительны к регистру; подчёркивания можно опускать.

overallconfig.txt {#overallconfigtxt-en}

enabled=true
enabled_lists=traplist1

detect_subtitle=true
detect_chat=true

subtitle_preparation=true
preparation_time=3.0
preparation_color=#55FF55
main_color=#FFFFFF

hud_x=10
hud_y=10
hud_scale=1.0
hud_mode=ON_TRAP
render_background=true
hud_bg_opacity=0.5
hud_horizontal_padding=8
hud_vertical_padding=6

auto_reload_keywords=hitw,hole in the wall,游戏开始
debug=false
КлючПо умолчаниюЗначение
enabledtrueГлавный переключатель
enabled_liststraplist1Списки для загрузки (без .txt)
detect_subtitle / detect_chattrueИсточники обнаружения
subtitle_preparationtrueПодготовка по умолчанию для субтитров
preparation_time / preparation_color3.0 / #55FF55Значения подготовки по умолчанию
main_color#FFFFFFЦвет события по умолчанию
hud_modeON_TRAPALWAYS / ON_TRAP / DISABLED
hud_bg_opacity0.5Альфа фона 0–1 (также принимает % или 0–255)
debugfalseПодробные логи совпадений + чат

Цвета: #RRGGBB или RRGGBB.

Файлы списков ловушек {#trap-list-files-en}

  • Любое имя: traplist1.txt, pvp.txt, …
  • Указывайте без расширения в enabled_lists или `/hitwtimer enable `.
# traplistconfig header (before first name=)
enabled=true
description=Classic HITW list
...

name=trap_a
pattern=...
events=
  ...

Ключи заголовка: enabled, description, значения по умолчанию для подготовки/цвета/звука/источника/совпадения.

Написание ловушки {#writing-a-trap-en}

Обязательные

ПолеЗначение
name=Уникальный id / запасной заголовок HUD
pattern=Текст для совпадения (a|b — ИЛИ для не-REGEX)
events= + ≥1 этапСписок этапов

Необязательные (иначе список → общие)

enabled, source, subtitle_preparation, preparation_time, preparation_color, main_color, start_sound, end_sound, match_mode, case_sensitive

Минимальный

name=my_trap
pattern=keyword
events=
  phase1|5
  phase2|10

Полный шаблон

name=your_trap_id
enabled=true
source=SUBTITLE
subtitle_preparation=true
preparation_time=3.0
preparation_color=#55FF55
main_color=#FFFFFF
start_sound=block.note_block.pling
end_sound=block.note_block.bell
pattern=english text|other keyword
match_mode=CONTAINS
case_sensitive=false
events=
  stage one|5.0|#FFAA00|entity.experience_orb.pickup
  stage two|12.0|
  stage three|20.0|#55FFFF|

Сопоставление {#matching-en}

РежимПоведение
CONTAINS (по умолчанию)Подстрока
EQUALSПолная строка
STARTS_WITHПрефикс
REGEXРегулярное выражение
Для не-REGEX `pattern=ab

source=SUBTITLE / CHAT / BOTH. Глобальные detect_* должны разрешать источник. Дедупликация предотвращает быстрые повторные срабатывания от одного и того же текста/ловушки.

Подготовка {#preparation-en}

ПравилоРезультат
Субтитры + подготовка разрешенаАвтоматически вставляется Preparation
У ловушки subtitle_preparation=falseСтрого без подготовки
Триггер из чатаНикогда не подготавливается
Метка HUDВсегда английское Preparation первой строкой
start_soundИграет, когда подготовка заканчивается

Не добавляйте Preparation в events=.

Формат событий {#events-format-en}

events=
  label|offsetSeconds|color(optional)|sound(optional)

Смещения — абсолютные секунды после окончания подготовки (или после триггера), отсортированы по возрастанию. Запасной цвет: событие → main_color ловушки → список → общие → белый.

Отладка {#debugging-en}

  1. debug=true, затем L — логи совпадений в консоли.
  2. Сначала ослабьте pattern + CONTAINS.
  3. Скопируйте реальный текст субтитров с экрана.
  4. /hitwtimer list для включённых списков.
  5. Всегда перезагружайте после редактирования файлов.
  6. HUD не отображается: проверьте режим H, позицию K, enabled / hud_mode.

Сборка {#build-en}

# Windows
.\gradlew.bat build -x test

# Linux / macOS
./gradlew build -x test

Результат: build/libs/hitwtimer-*.jar Разработка: .\gradlew.bat runClient → конфиги в run/config/hitwtimer/.

FAQ {#faq-en}

Клавиши отсутствуют в управлении? Ищите в категории HITWtimer. K ничего не делает / нельзя перетащить? Нужно быть в мире без других экранов; должно появиться жёлтое окно редактирования. Субтитры отображаются, но таймера нет? Проверьте pattern, source, включение списка, detect_subtitle, hud_mode не DISABLED, debug=true. Нет Preparation? Источник — чат? У ловушки subtitle_preparation=false? Глобально/список отключён? Изменения конфига игнорируются? Нажмите L или /hitwtimer reload. Нет звука? Проверьте корректные id звуков vanilla; громкость master/UI включена. Несколько списков? Да: enabled_lists=traplist1,pvp или повторный enable. Не для Minecraft 26.2? Собрано для ~26.1.2. Для 26.2 нужны обновления зависимостей и GUI API (не drop-in).

Лицензия {#license-en}

CC0-1.0 — свободно использовать, изменять и распространять.

Совет: Скопируйте пример с падающим песком → установите pattern на реальный текст субтитров вашего сервера → debug=true, пока не сработает → отключите debug для обычной игры.

Частые вопросы

Как установить HITWtimer?

Установите Fabric под свою версию Minecraft, скачайте HITWtimer под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть HITWtimer?

У HITWtimer есть сборки для Minecraft 26.1.2.

Нужен ли HITWtimer на сервере?

Ставится только в игру; на сервер ставить не нужно

Лицензия и источник
Creative Commons Zero v1.0 Universalможно свободно использовать и распространять с указанием автора
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее