Skip to content

checks.md

checks.yml — это файл правил для всех проверок Matrix.

TIP

Прежде чем читать это, убедитесь, что вы ознакомились с Основными концепциями Matrix.

Вы можете:

  • Включать/Отключать проверки / подпроверки
  • Изменять наказания за нарушения
  • Изменять пороговые значения проверок
  • Изменять магические значения проверок

Начало работы

Откройте checks.yml, вы увидите что-то вроде этого:

yaml
# Проверка A
check-name-a:
  enable: true

  other-settings: ...

  decay:
    interval: 15
    amount: 5

  commands:
    10: '...'
    20: '...'

# Проверка B
check-name-b:
  enable: true

  other-settings: ...

  decay:
    interval: 15
    amount: 5

  commands:
    10: '...'
    20: '...'

# Проверка C
check-name-c:
...

Позвольте мне объяснить: в checks.yml корневой узел представляет тип проверки, а после двоеточия идет набор ее настроек.

  • enable обозначает, включена ли эта проверка
  • other-settings обозначает другие настройки этого типа проверки. Обычно здесь можно определить настройки подпроверок (модулей) или включить/отключить их
  • decay обозначает настройки снижения уровня нарушений для данного типа проверки
  • commands обозначает команды, которые выполняются, когда уровень нарушений для данного типа проверки достигает определенного значения

Возьмем проверку KillAura в качестве примера

yaml
killaura:
  # Включить проверку KillAura?
  enable: true

  # Список различных модулей проверки KillAura в Matrix
  modules:
    # Проверка, демонстрирует ли игрок ошибки в бою
    flaw:
      type_a:
        enable: true
        vl: 3
      type_b:
        enable: true
        vl: 10
      type_c:
        enable: true
        vl: 10
      type_d:
        enable: true
        vl: 10
      type_e:
        enable: true
        vl: 5
    # Проверка, корректны ли вращения игрока при атаке
    rotation:
      type_a:
        enable: true
        vl: 2
      type_b:
        enable: true
        vl: 2
    # Проверка, демонстрирует ли игрок характеристики прицеливания, похожие на aimbot
    aimbot:
      vl_weight: 7
      cancel_hit: true

      check_aimbot_sync: true
      check_aimbot_shake: true
      check_aimbot_snap: true
      check_aimbot_sensitivity: true
      check_aimbot_acceleration: true
      check_aimbot_bad_rotation: true

    # Проверка KillAura NPC, она создаст фейкового игрока позади игрока, чтобы определить,
    # использует ли игрок KillAura. Не волнуйтесь, игрок увидит только своего собственного NPC
    npc:
      enable: true
      vl_weight: 5

      # Должен ли расчет позиции NPC выполняться асинхронно? Это может потреблять ресурсы
      async: true

      # Должен ли NPC использовать реальные идентификаторы сущностей вместо случайно генерируемых?
      # Некоторые чит-клиенты могут обходить случайные идентификаторы сущностей
      real_entity_id: true

      # NPC создается только командой? Если установлено значение false, NPC будет автоматически
      # создаваться, когда игрок вступает в бой. Если установлено значение true, вы можете создать NPC для игрока
      # только через команду "matrix npc". (по умолчанию: true)
      only_command_trigger: true

      # Должен ли игрок видеть этого NPC? (true = видимый)
      visible: true

      # Принудительно случайное имя (по умолчанию: false)
      # Если эта опция включена, NPC, созданный Matrix, будет использовать случайное имя
      # вместо случайного имени онлайн-игрока. Это может решить проблему некоторых клиентов,
      # обходящих NPC с "дублирующимся" именем. Однако Matrix НЕ применяет команды к NPC со случайным именем,
      # вам может потребоваться использовать API для применения команды NPC самостоятельно. В противном случае
      # некоторые клиенты будут обходить проверки на основе наличия цвета в имени NPC
      force_random_name: false

      # Настройки времени существования NPC (тиков)
      check_ticks:
        base: 100
        attack_add: 20
        hit_bot_add: 50

      # Настройки движения NPC
      movement:
        distance_base: 3.2
        distance_random_size: 0.75
        distance_attack_base: 3.0
        move_up_after_attack: false

    # Проверка критического удара. Предотвращает выполнение игроками аномальных критических атак
    critical:
      # Включить этот модуль?
      enable: true

      # Сколько очков VL должен получить игрок после срабатывания этого модуля?
      vl_weight: 5

      # Должен ли Matrix отменить атаку игрока после обнаружения читерства?
      cancel_attack: true

    # Проверка Strafe
    strafe:
      enable: true
      vl_weight: 3
      cancel_move: true

    # Скомбинированная проверка
    combine:
      aimbot_with_reach:
        time: 5000
        condition:
          - 'ka.abt.magic'
          - 'hb.reach'
          - 'hb.reach'
        action: 5 # +5 VL

  # Пользовательский интервал снижения VL (секунды) и шаг снижения VL
  decay:
    interval: 15
    amount: 5

  # Пороговые значения нарушений
  # количество нарушений: '<команда>'
  commands:
    10: 'matrix npc %player% 100'
    20: 'matrix notify %player% might be using combat hacks (KillAura)'
    35: 'matrix notify %player% is using combat hacks (KillAura) #2'
    45: 'matrix delay 5 matrix kick %player% KillAura'

Раздел decay особенно важен, так как он управляет тем, как уровень нарушений (VL) игрока уменьшается со временем. Настройка interval определяет время в секундах между каждой операцией снижения, а настройка amount определяет, насколько уменьшается VL за один раз. Это позволяет уровню VL игрока постепенно снижаться, если он прекращает читерство, предотвращая постоянное высокое значение VL за временное читерство.

Раздел commands используется для определения действий, которые должны быть выполнены, когда уровень VL игрока достигает определенных пороговых значений. Числа слева представляют пороговые значения VL, а строки справа — команды, которые выполняются при достижении этих порогов.

Например, когда уровень VL игрока достигает 10, выполняется команда matrix npc %player% 100. Эта команда создает неигрового персонажа (NPC) на 100 тикков для дополнительной проверки, использует ли игрок KillAura.

Когда уровень VL достигает 20 и 35, на сервер отправляются уведомления администраторам, предупреждающие их о том, что игрок, возможно, использует боевые читы.

Наконец, когда уровень VL достигает 45, игрок исключается с сервера через 5 секунд с причиной "KillAura".

Этот файл конфигурации позволяет администраторам сервера настраивать проверку KillAura в соответствии с их потребностями, регулируя чувствительность проверки и строгость наказаний.

Переменные

  • %player%: Имя игрока, который вызвал проверку.
  • %message%: Сообщение с деталями обнаружения.
  • %tooltips%: Сообщение подсказки с деталями обнаружения.
  • %add_vl%: Количество очков VL, добавляемых к общему уровню VL игрока.
  • %vl%: Общий уровень VL игрока.
  • %ping%: Пинг игрока.
  • %tps%: TPS сервера.
  • %component%: Компонент проверки.
  • %version%: Версия игрока.
  • %world: Мир игрока.

Вы также можете установить PlaceholderAPI, чтобы получить больше переменных.

Сделано с ❤️ от RE