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

Ouch!

Настраиваемый индикатор урона на стороне сервера! Для Fabric

FabricQuilt
Загрузчики
FabricQuilt
Скачиваний на Modrinth
32,9 тыс.
Подписчиков на Modrinth
94
версий
13
Обновлён
12 сентября 202612 сент.
Опубликован
в 2024
Main image — Zombie with bunch of indicators · свайп

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

Работает на Fabric и Quilt
Для Minecraft 1.21–1.21.1, 1.21.3–26.3
Ставится только на сервер; игрокам ставить не нужно
Последняя версия — 1.10.0+26.3-rc-1 от 12 сентября 2026
Лицензия LGPL-3.0-only — бесплатно
Где нужен
В игрене нуженНа сервереобязателен

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

Версии игры1.21–1.21.1, 1.21.3–26.3
Описание переведено автоматическиПоказать оригинал (EN)

Ouch!

Надоело гадать, сколько урона получила атакованная сущность? А может, ты просто хотел сделать бои чуть покрасивее? Тогда этот мод для тебя!

Ouch! — это серверный мод для Fabric (и Quilt), работающий на базе Polymer, который добавляет эффект частиц с числами/текстом, срабатывающий после получения сущностью урона, смерти или лечения (по умолчанию виден только урон/лечение)! Этот мод также полностью настраиваемый, позволяя менять текст (цвет и отображение), размер, движение и время видимости в зависимости от предикатов, проверяющих тип урона, жертву (получившую урон сущность), источник (атакующий или снаряд) и атакующего (нападающего). Он также может отображать несколько частиц с разными настройками для одного и того же урона, что позволяет создавать дополнительные забавные сообщения и тому подобное.

== Скачать на Modrinth ==

Настройка.

Файл конфигурации этого мода хранится по пути ./config/ouch.json.

Конфиг выбора пресета.

По умолчанию конфиг имеет формат выбора пресета, позволяя выбрать встроенный в мод стиль/вид по умолчанию.

{
  "preset": "default"
}

Доступные пресеты: default, minimal

Полный конфиг.

Этот конфиг позволяет менять любой текст и его поведение. Может использоваться для продвинутой настройки. Значения по умолчанию, используемые пресетами, можно найти здесь: https://github.com/Patbox/ouch/tree/master/preset Весь пользовательский текст в нём использует формат QuickText. Все используемые предикаты предоставляются Predicate API, использующим этот формат. Строки с префиксом // не являются частью реального конфига и здесь только для пояснения.

{
  // Все значения отображения для урона.
  "damage": [
    // Верхний массив определяет списки, в которых будут найдены текст/настройки.
    // Используется только одно определение из каждого включённого массива. Они сопоставляются сверху вниз.
    [
      // Определение текста/отображения.
      {
        // [Опционально] Сопоставляет урон по типу, будь то одна запись ("minecraft:generic"),
        // тег ("#minecraft:is_fire") или список записей (["minecraft:mob_attack", "minecraft:player_attack"])
        // По умолчанию (не задано) сопоставляется со всем.
        "type": "...",
        // [Опционально] Предикат, проверяющий жертву (получившую урон сущность).
        // По умолчанию всегда успешен.
        "victim": {
          "type": "..."
        },
        // [Опционально] Предикат, проверяющий атакующего (сущность, которая атаковала сущность).
        // По умолчанию всегда успешен.
        "attacker": {
          "type": "..."
        },
        // [Опционально] Предикат, проверяющий источник (снаряд или атакующий).
        // По умолчанию всегда успешен.
        "source": {
          "type": "..."
        },
        // [Опционально] Минимальное количество урона, необходимое для отображения.
        // По умолчанию не задано.
        "min_value": 0,
        // [Опционально] Максимальное количество урона, допустимое для отображения.
        // По умолчанию не задано.
        "max_value": 999999,
        // [Опционально] Число с плавающей точкой от 0 до 1 (включительно), описывающее шанс
        // выбора этого сообщения. 1 означает, что оно всегда выбирается, если совпадают остальные свойства,
        // 0.5 — это 50%, а 0 — никогда.
        // По умолчанию установлено в 1.
        "chance": 1,
        // [Опционально] Задаёт значение, на которое умножается скорость частицы каждый тик.
        // Должно быть числом от 0 до 1
        // Значение по умолчанию: 0.7
        "per_tick_velocity_multiplier": 0.7,
        // [Опционально] Задаёт значение (направленной вниз) гравитации, влияющей на частицу.
        // Должно быть числом от -1 до 1
        // Значение по умолчанию: 0.05
        "gravity": 0.05,
        // [Опционально] Задаёт время (в тиках, 20 тиков — это секунда), в течение которого частица
        // видима. Должно быть числом больше 0.
        // Значение по умолчанию: 20
        "staying_time": 20,
        // [Опционально] Задаёт масштаб/размер частицы.
        // Должно быть числом от 0 до 5
        // Значение по умолчанию: 0.8
        "text_scale": 0.8,
        // [Опционально] Переопределяет вычисленную скорость статичной.
        // Значение по умолчанию: не задано / используется вычисленная.
        "velocity_override": [0, 2, 0],
        // Текст, используемый для частицы урона. Имеет плейсхолдеры:
        // ${value} - показывает округлённый урон с 1 числом в дробной части.
        // ${value_rounded} - показывает урон, округлённый до целого.
        // ${value_raw} - показывает необработанное значение урона.
        "text": "<red>-${value}"
      }
    ]
  ],
  // Все значения отображения для текста смерти.
  "death": [
    // Верхний массив определяет списки, в которых будут найдены текст/настройки.
    // Используется только одно определение из каждого включённого массива. Они сопоставляются сверху вниз.
    [
      // Определение текста/отображения.
      {
        // [Опционально] Сопоставляет урон по типу, будь то одна запись ("minecraft:generic"),
        // тег ("#minecraft:is_fire") или список записей (["minecraft:mob_attack", "minecraft:player_attack"])
        // По умолчанию (не задано) сопоставляется со всем.
        "type": "...",
        // [Опционально] Предикат, проверяющий жертву (получившую урон сущность).
        // По умолчанию всегда успешен.
        "victim": {
          "type": "..."
        },
        // [Опционально] Предикат, проверяющий атакующего (сущность, которая атаковала сущность).
        // По умолчанию всегда успешен.
        "attacker": {
          "type": "..."
        },
        // [Опционально] Предикат, проверяющий источник (снаряд или атакующий).
        // По умолчанию всегда успешен.
        "source": {
          "type": "..."
        },
        // [Опционально] Минимальное количество лечения, необходимое для отображения.
        // По умолчанию не задано.
        "min_value": 0,
        // [Опционально] Максимальное количество лечения, допустимое для отображения.
        // По умолчанию не задано.
        "max_value": 999999,
        // [Опционально] Число с плавающей точкой от 0 до 1 (включительно), описывающее шанс
        // выбора этого сообщения. 1 означает, что оно всегда выбирается, если совпадают остальные свойства,
        // 0.5 — это 50%, а 0 — никогда.
        // По умолчанию установлено в 1.
        "chance": 1,
        // [Опционально] Задаёт значение, на которое умножается скорость частицы каждый тик.
        // Должно быть числом от 0 до 1
        // Значение по умолчанию: 0.7
        "per_tick_velocity_multiplier": 0.7,
        // [Опционально] Задаёт значение (направленной вниз) гравитации, влияющей на частицу.
        // Должно быть числом от -1 до 1
        // Значение по умолчанию: 0.05
        "gravity": 0.05,
        // [Опционально] Задаёт время (в тиках, 20 тиков — это секунда), в течение которого частица
        // видима. Должно быть числом больше 0.
        // Значение по умолчанию: 20
        "staying_time": 20,
        // [Опционально] Задаёт масштаб/размер частицы.
        // Должно быть числом от 0 до 5
        // Значение по умолчанию: 0.8
        "text_scale": 0.8,
        // [Опционально] Переопределяет вычисленную скорость статичной.
        // Значение по умолчанию: не задано / используется вычисленная.
        "velocity_override": [0, 2, 0],
        // Текст, используемый для частицы урона. Имеет плейсхолдеры:
        // ${message} - используемое сообщение о смерти.
        // ${victim} - имя жертвы.
        // ${attacker} - имя атакующего.
        "text": "<red>${message}"
      }
    ]
  ],
  // Все значения отображения для лечения.
  "healing": [
    // Верхний массив определяет списки, в которых будут найдены текст/настройки.
    // Используется только одно определение из каждого включённого массива. Они сопоставляются сверху вниз.
    [
      // Определение текста/отображения.
      {
        // [Опционально] Предикат, проверяющий вылеченную сущность.
        // По умолчанию всегда успешен.
        "entity": {
          "type": "..."
        },
        // [Опционально] Число с плавающей точкой от 0 до 1 (включительно), описывающее шанс
        // выбора этого сообщения. 1 означает, что оно всегда выбирается, если совпадают остальные свойства,
        // 0.5 — это 50%, а 0 — никогда.
        // По умолчанию установлено в 1.
        "chance": 1,
        // [Опционально] Задаёт значение, на которое умножается скорость частицы каждый тик.
        // Должно быть числом от 0 до 1
        // Значение по умолчанию: 0.7
        "per_tick_velocity_multiplier": 0.7,
        // [Опционально] Задаёт значение (направленной вниз) гравитации, влияющей на частицу.
        // Должно быть числом от -1 до 1
        // Значение по умолчанию: 0.05
        "gravity": 0.05,
        // [Опционально] Задаёт время (в тиках, 20 тиков — это секунда), в течение которого частица
        // видима. Должно быть числом больше 0.
        // Значение по умолчанию: 20
        "staying_time": 20,
        // [Опционально] Задаёт масштаб/размер частицы.
        // Должно быть числом от 0 до 5
        // Значение по умолчанию: 0.8
        "text_scale": 0.8,
        // [Опционально] Переопределяет вычисленную скорость статичной.
        // Значение по умолчанию: не задано / используется вычисленная.
        "velocity_override": [0, 2, 0],
        // Текст, используемый для частицы лечения. Имеет плейсхолдеры:
        // ${value} - показывает округлённое количество лечения с 1 числом в дробной части.
        // ${value_rounded} - показывает количество лечения, округлённое до целого.
        // ${value_raw} - показывает необработанное значение лечения.
        "text": "<green>+${value}"
      }
    ]
  ]
}

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

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

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

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

У Ouch! есть сборки для Minecraft 1.21–1.21.1, 1.21.3–26.3.

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

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

Лицензия и источник
GNU Lesser General Public License v3.0 onlyможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

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