Как настроить Scoreboard в Minecraft

Иван Корнев·29.04.2026·5 мин

Scoreboard (доска счетов) — это встроенный инструмент Minecraft для отслеживания статистики игроков, создания квестов и автоматизации игровых процессов. Чтобы быстро начать, используйте три базовые команды: scoreboard objectives add для создания цели, scoreboard players add/set для изменения очков и scoreboard objectives setdisplay для вывода информации на экран. Система работает в ванильной версии игры без модов и подходит как для одиночных миров, так и для многопользовательских серверов.

Основы работы с Scoreboard

Система досок счетов состоит из трех основных элементов: целей (objectives), значений (scores) и отображения (display). Понимание их взаимодействия позволяет создавать сложные механики: от простых рейтингов до автоматических систем награждения.

Создание и удаление целей

Цель — это категория, которую вы отслеживаете (например, «Убийства», «Деньги», «Прогресс квеста»).

scoreboard objectives add <имя> <критерий> [отображаемое_название]
  • <имя>: техническое имя цели (без пробелов, латиница). Используется в командах.
  • <критерий>: тип отслеживаемого события.
  • [отображаемое_название]: текст, который увидят игроки (поддерживает цвета и пробелы в кавычках).

Популярные критерии:

  • dummy — универсальный тип. Очки меняются только вручную через команды. Идеально для квестов, валюты, жизней.
  • playerKillCount — количество убийств игроков.
  • totalKillCount — общее количество убийств мобов и игроков.
  • health — текущее здоровье игрока (обновляется автоматически).
  • deathCount — количество смертей.

Для удаления цели используйте:

scoreboard objectives remove <имя>

Важно: Техническое имя цели используется во всех командах управления. Если вы ошиблись в названии при создании, проще удалить цель и создать новую, чем пытаться исправить её параметры.

Управление очками игроков

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

КомандаОписание
scoreboard players set <игрок> <цель> <число>Устанавливает точное значение (перезаписывает старое).
scoreboard players add <игрок> <цель> <число>Добавляет указанное число к текущему значению.
scoreboard players remove <игрок> <цель> <число>Вычитает число из текущего значения.
scoreboard players reset <игрок> <цель>Сбрасывает очки игрока по конкретной цели.
scoreboard players list <игрок>Показывает все цели и очки конкретного игрока.

Вместо имени игрока можно использовать селекторы (@a, @p, @r) и условия. Например, начислить 10 очков всем игрокам с ником, начинающимся на "Admin":

scoreboard players add @a[name=Admin*] money 10

Настройка отображения (Display)

Чтобы игроки видели прогресс, цель нужно вывести на экран. В Minecraft есть четыре слота для отображения:

  1. sidebar — боковая панель справа (самый популярный вариант для меню сервера).
  2. belowName — отображает значение под ником игрока (удобно для здоровья или уровня).
  3. list — показывает значение в списке игроков (клавиша Tab).
  4. nameTag — отображает значение над головой игрока (требует включения в настройках).

Команда для настройки:

scoreboard objectives setdisplay <слот> <имя_цели>

Пример вывода статистики убийств в боковую панель:

scoreboard objectives setdisplay sidebar kills

В слоте sidebar можно отображать только одну цель одновременно. Если нужно показать несколько параметров (здоровье, деньги, уровень), используйте составные цели или плагины, либо чередуйте отображение через командные блоки.

Продвинутые техники: тестирование и селекторы

Мощь Scoreboard раскрывается при использовании значений как условий для других команд. Это позволяет создавать триггеры: «Если у игрока 5 очков квеста, выдать награду».

Проверка значений в селекторах

Вы можете фильтровать игроков по количеству очков в любой цели.

Синтаксис: score_<имя_цели>=<диапазон>

Примеры:

  • Найти всех игроков, у которых в цели money ровно 100 очков:
    @a[score_money=100]
    ```
*   Найти игроков с деньгами от 50 до 100:
    
```minecraft
    @a[score_money_min=50,score_money=100]
    ```
    *(Примечание: в новых версиях Minecraft 1.13+ синтаксис упростился до `score_money=50..100`)*.

*   Найти игроков, у которых **нет** очков в цели `quest_started` (значение 0):
    
```minecraft
    @a[score_quest_started=0]
    ```

### Команда `testfor` и выполнение действий

Хотя команда `testfor` устарела в пользу селекторов внутри `/execute`, логика остается прежней. Используйте `/execute` для запуска команд при выполнении условий.

Пример: Если у игрока `Alex` в цели `level` значение 10, повысить его ранг.

```minecraft
execute as @a[scores={level=10}] run function give_rank_up

Практические примеры для сервера и одиночной игры

1. Простая система валюты (Экономика)

Создаем виртуальные деньги, которые можно тратить и накапливать.

  1. Создаем цель:
    scoreboard objectives add money dummy "Баланс"
    ```
2.  Выводим на экран:
    
```minecraft
    scoreboard objectives setdisplay sidebar money
    ```
3.  Начисляем зарплату (через командный блок на повторении):
    
```minecraft
    scoreboard players add @a money 10
    ```
4.  Покупка предмета (проверка баланса и списание):
    
```minecraft
    execute as @a[scores={money_min=100}] run scoreboard players remove @s money 100
    execute as @a[scores={money_min=100}] run give @s diamond 1
    ```

### 2. Система квестов «Найди 5 алмазов»

Используем `dummy` цель для отслеживания прогресса.

1.  Создание цели:
    
```minecraft
    scoreboard objectives add diamonds_found dummy "Алмазы"
    ```
2.  Отслеживание добычи (командный блок на повторении, всегда активен):
    
```minecraft
    execute as @a[nbt={Inventory:[{id:"minecraft:diamond"}]}] run scoreboard players add @s diamonds_found 1
    ```
    *Примечание: этот метод требует очистки инвентаря или сложной логики, чтобы не накручивать очки. Для простоты лучше использовать статистику `mine_block`.*
    
    **Более надежный вариант через статистику:**
    
```minecraft
    scoreboard objectives add mineDiamonds minecraft.mined:minecraft:diamond
    scoreboard objectives setdisplay sidebar mineDiamonds
    ```
    Эта цель будет обновляться автоматически при разрушении блока алмазной руды.

3.  Награда за завершение:
    
```minecraft
    execute as @a[scores={mineDiamonds_min=5}] run tellraw @a {"text":"Игрок выполнил квест!","color":"gold"}
    execute as @a[scores={mineDiamonds_min=5}] run scoreboard players set @s mineDiamonds 0
    ```

### 3. Таймер обратного отсчета (Мини-игра)

1.  Создаем таймер:
    
```minecraft
    scoreboard objectives add timer dummy "Время"
    ```
2.  Устанавливаем начало (например, 60 секунд):
    
```minecraft
    scoreboard players set @a timer 60
    ```
3.  Запускаем отсчет (командный блок на повторении):
    
```minecraft
    scoreboard players remove @a timer 1
    ```
4.  Действие при окончании времени:
    
```minecraft
    execute as @a[scores={timer=0}] run tell @s Время вышло!
    ```

## Частые ошибки и проблемы

<div class="table-container"><table style="border-collapse: collapse; width: 100%; margin: 16px 0;"><thead><tr><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">Проблема</th><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">Причина</th><th style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; background: #f9fafb; font-weight: 600;">Решение</th></tr></thead><tbody><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Очки не отображаются</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Цель не назначена на слот display</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Выполните <code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">scoreboard objectives setdisplay sidebar &lt;имя&gt;</code></td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Ошибки в селекторах</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Неверный синтаксис диапазона</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Используйте формат <code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">min..max</code> (например, <code style="background-color: rgba(0,0,0,0.05); padding: 2px 4px; border-radius: 3px; font-family: monospace; font-size: 0.9em;">score_money=0..10</code>)</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Накрутка очков</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Команда срабатывает слишком часто</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Добавьте задержку или условие сброса флага после начисления</td></tr><tr><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Сброс после рестарта</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">Данные не сохраняются</td><td style="border: 1px solid #e5e7eb; padding: 8px; text-align: left; vertical-align: top;">В ванильном Minecraft данные Scoreboard сохраняются в файлах мира автоматически. Проверьте права доступа к папке мира.</td></tr></tbody></table></div>


Перегрузка интерфейса: Не выводите более одной цели в sidebar. Игроки запутаются. Если нужно показать много данных, используйте belowName для второстепенных параметров или создайте систему меню через книги и предметы.

FAQ

В: Можно ли изменить цвет текста в Scoreboard? О: Да, в отображаемом названии цели можно использовать коды цветов (§ или §-коды, а также JSON-форматирование в новых версиях). Например: scoreboard objectives add test dummy "§6Золотые очки".

В: Как скрыть Scoreboard для определенных игроков? О: В ванильном Minecraft нет прямой команды скрытия доски для конкретного игрока. Однако можно использовать команду /gamerule sendCommandFeedback false для снижения спама, а для полного скрытия потребуются сторонние плагины (например, ProtocolLib) или ресурспаки, меняющие интерфейс.

В: Почему очки не сбрасываются после смерти? О: Очки в целях типа dummy не сбрасываются автоматически. Если вам нужно обнуление при смерти, создайте команду, привязанную к событию смерти (через тег или статистику deathCount), которая выполняет scoreboard players reset @s <цель>.

В: Работает ли Scoreboard в Bedrock Edition? О: Да, базовые команды Scoreboard работают в Minecraft Bedrock (консоли, мобильные устройства, Windows 10/11), но синтаксис может немного отличаться (например, отсутствие некоторых сложных селекторов NBT). Всегда проверяйте команды в конкретной версии.