Мини-игры
Мини-игры — свой плагин HelgaGames (/hg). Он заменил BattleArena и
Pillars: папка plugins/Pillars/ осталась от старого плагина, jar
убран, «Столбы» теперь режим HelgaGames.
Игры идут в отдельном мире helgagames. Каждая идущая игра строит
свою арену в своём слоте мира, поэтому разные игры могут идти
одновременно. Вещи участника сохраняются при входе на арену и
возвращаются после игры.
Режимы
| Игра | Команда | Файл | Суть |
|---|---|---|---|
| Голодные игры | /sg | games/hg.yml | лут из сундуков, последний выживший, вещи убитого выпадают |
| Столбы | /pillars | games/pillars.yml | столбы над пустотой, случайные предметы, сужающийся барьер; одна игра за раз |
| Цветной танцпол | /dance | games/dance.yml | встать на нужный цвет, время раунда сокращается с 8 до 1,5 сек |
| Повтори фигуру | /memory | games/memory.yml | 30 сек запомнить, 60 сек построить |
| Дуэль | /duel | games/duel.yml | игрок вызывает игрока сам, ведущий не нужен; до 10 дуэлей сразу |
Короткие команды (/dance join, /pillars open ...) работают так же,
как /hg ... <игра>.
Права
| Право | Кому | Что даёт |
|---|---|---|
helgagames.play | все (по умолчанию) | join, leave, bet, info, list |
helgagames.create-free | все (по умолчанию) | бесплатные игры, если они включены |
helgagames.host | OP и группа stmoder (ещё через pillars.admin) | объявлять, запускать, отменять игры. Приз в режиме prize платит сервер |
helgagames.admin | OP | карты, reload, переключатель бесплатных игр |
Провести игру
/hg — меню ведущего
/hg open dance prize 5000 — игра с призом 5000 от сервера
/hg open pillars fee 1000 bets — взнос 1000 с каждого, ставки открыты
/hg open hg prize 10000 bets <карта> — голодные игры на конкретной карте
/hg start [№] — запустить, не дожидаясь отсчёта
/hg close [№] — отменить: взносы и ставки вернутся
/hg stop [№] — остановить идущую игру
- prize — приз победителю платит сервер (по умолчанию 5000);
- fee — каждый платит взнос, победитель забирает все взносы минус комиссия 10%;
- bets — зрители ставят на победителя (
/hg bet ник сумма), 10% ставки сгорает, банк делят угадавшие. Если не угадал никто, банк переходит на следующую игру.
Отсчёт — 60 секунд, объявления всему серверу на 60, 30 и 10 секундах. Если арена не построилась за 120 секунд, игра отменяется с возвратом денег.
Бесплатные игры игроков
Сейчас включены (free-games.enabled: true в config.yml).
Игрок открывает выбор через /hg free, кнопку в /help → «Мини-игры»
или NPC «Создать мини-игру» на спавне (FancyNpcs, freegames).
Взноса, приза и ставок нет. Одновременно — одна бесплатная игра
(max-instances: 1).
Выключить: /hg freegames off или переключатель в нижнем ряду /hg.
Уже объявленные игры доигрываются.
Карты
Сохранённые карты лежат в plugins/HelgaGames/maps/<игра>/. Сейчас
есть карты для дуэлей и голодных игр; танцпол, фигура и столбы
строят арену сами.
/hg map save <игра> <карта> — сохранить выделение WorldEdit (//wand) как карту
/hg map edit <игра> <карта> — открыть карту на правку
/hg map spawn add|remove|list — точки появления
/hg map set waiting|spectator|miny
/hg map list <игра> · /hg map delete <игра> <карта>
Статистика и топы
HelgaGames ведёт по каждому игроку два счётчика — для топов на голограммах и в меню:
- Победы — +1 за победу в игре, которую объявил ведущий (право
helgagames.admin) в режимеnormalс призом больше нуля. В командной игре победа засчитывается каждому члену команды. Игры со взносом, бесплатные игры игроков и дуэли победы не добавляют. - Заработок — сколько игрок получил призами и банками взносов
(ставки не считаются). Формат —
1234.50.
Счётчики пишутся в plugins/HelgaGames/data/ledger.yml вместе с
журналом денег и обновляются сразу после выплаты.
Поправить топ
Если в топ попала тестовая игра или проверка, итоги правятся командой
(право helgagames.admin, можно с консоли). Деньги игроков и журнал
выплат она не трогает — меняются только цифры в топах.
| Команда | Что делает |
|---|---|
/hg stats show <ник> | победы, заработок и места игрока |
/hg stats add <ник> money -5000 | убавить заработок на 5000 (для тестовой игры — на её приз) |
/hg stats add <ник> wins -1 | убрать одну победу |
/hg stats set <ник> wins|money <значение> | установить точное значение |
/hg stats reset <ник> | убрать игрока из топов совсем |
Сумма — в обычных деньгах, можно с копейками: 1234.50. Итог меньше
нуля команда не примет. Каждое изменение пишется в лог сервера строкой
Statistics of <ник> … changed by <кто>: wins … -> …, money … -> … —
по ней видно, кто и что поправил.
Сколько выплатила тестовая игра, видно в чате в момент выплаты
(«… получает приз: …»). Если не помните — в ledger.yml, раздел
attempts: записи с direction: CREDIT и UUID игрока в player.
| Плейсхолдер | Что выводит |
|---|---|
%helgagames_top_wins_<N>_name%, %helgagames_top_wins_<N>_value% | ник и число побед на месте N; пустое место — — и 0 |
%helgagames_top_money_<N>_name%, %helgagames_top_money_<N>_value% | ник и заработок на месте N |
%helgagames_wins%, %helgagames_wins_rank% | свои победы и место (0 — не в топе) |
%helgagames_money%, %helgagames_money_rank% | свой заработок и место |
Как поставить из них голограмму — «Голограммы топов».
Настройки
Общие — plugins/HelgaGames/config.yml, по игре —
plugins/HelgaGames/games/<игра>.yml, тексты — messages.yml.
Применить: /hg reload. Пока игра объявлена или идёт, reload
откажет — дождитесь конца.
Во время игры участникам доступны только /hg, короткие команды игр
и личные сообщения (allowed-commands в config.yml).
debug-commands в config.yml на боевом сервере должно быть
false — там есть имитация краша.