CrazyCrates — плагін для додавання кастомних кейсів та скринь із нагородами у Minecraft
CrazyCrates — плагін для додавання кастомних кейсів та скринь із нагородами у Minecraft
CrazyCrates дозволяє додавати на сервер Minecraft крейти. Кожен крейт — це блок у світі або позиція в меню, яку гравець відкриває ключем і отримує випадковий приз. Плагін надає 11 різних типів анімацій, два види ключів — фізичні (предмети в інвентарі) та віртуальні (зберігаються у базі даних) — і систему вагових шансів замість відсоткової. Розповсюджується безкоштовно.

Головне меню /crates з крейтами у вигляді предметів в інвентарі
Типи крейтів
Кожен крейт на сервері — це окремий .yml-файл у папці crates/. У файлі є параметр CrateType, який визначає анімацію відкриття.
При першому запуску плагін генерує 6 готових прикладів, які охоплюють 5 підтверджених типів. Відкрити будь-який з них для тесту без ключа можна командою /crazycrates forceopen <назва_файлу> <нік>.

Всі доступні базові крейти
Прокрутка - в інвентарі з'являється горизонтальна стрічка предметів, яка прокручується, поступово сповільнюється і зупиняється на виграшному предметі посередині. Цей тип використовують два приклади — CrateExample.yml і AdvancedExample.yml.

Виконання CrateExample — горизонтальна стрічка предметів прокручується і зупиняється на виграшному
Cosmic — в інвентарі з'являється кілька призів на вибір. Гравець клікає на той, який хоче забрати. Якщо за 10 секунд нічого не обрати, плагін видає один приз автоматично. Casino — крейт з рівнями (tiers). Спочатку анімація визначає рівень, потім усередині нього — конкретний приз.
QuadCrate — при відкритті чотири фізичні блоки-крейти спавняться навколо гравця у світі. Гравець підходить до кожного і відкриває по черзі — кожен дає окремий приз.
Wonder — з'являється вікно з повним інвентарем з якого поступово пропадають предмети, той який залишиться і буде призом
Ключі
Кожен крейт використовує власний ключ. Фізичний ключ — звичайний предмет з кастомним виглядом, назвою та лором, який гравець тримає в інвентарі. Віртуальний ключ не займає місця — він зберігається у базі даних плагіна та прив'язаний до акаунту гравця.
За замовчуванням фізичний блок-крейт приймає обидва типи. Поведінку можна змінити в config.yml окремо для кожної комбінації.
Якщо інвентар гравця заповнений під час отримання ключа, плагін або конвертує його у віртуальний, або кидає на землю — залежно від налаштувань. При спробі відкрити крейт без ключа гравця відштовхує.
Адміністратори можуть видавати та забирати ключі навіть у офлайн-гравців, роздавати ключ одразу всім онлайн через одну команду або видавати випадковий ключ з усіх доступних крейтів. Гравці з відповідним дозволом можуть передавати свої віртуальні ключі іншим.

Фізичний ключ від крейта — предмет із кастомним описом
Система шансів
Ймовірність кожного призу визначається не відсотками, а вагою — параметром Weight у файлі крейта. Чим вище значення ваги, тим частіше випадає приз; чим нижче — тим рідше.
Максимальний діапазон — це сума всіх у крейті. Якщо три призи мають ваги 10, 15 і 25, діапазон дорівнює 50. Шанс першого — 20%, другого — 30%, третього — 50%.
Перевага такого підходу перед відсотками: не потрібно стежити, щоб сума не перевищувала 100. Можна просто виставляти відносні значення і додавати нові призи без перерахунку решти.
Команди
Основна команда плагіна — /crazycrates, з аналогами /crates і /cc. Гравцям доступні лише /keys (переглянути свої ключі) та /crates (відкрити меню).
Адмінські команди:
/crazycrates giveта/crazycrates take— видати або забрати ключ у конкретного гравця, в тому числі офлайн./crazycrates giveall— роздати ключ усім онлайн-гравцям одночасно./crazycrates forceopen— відкрити крейт для гравця безкоштовно, без ключа./crazycrates editor— режим розміщення крейтів у світі: вказуєш на блок і прив'язуєш до нього крейт./crazycrates debug— отримати всі призи крейта одразу, щоб перевірити налаштування./crazycrates mass-open— масове відкриття вказаної кількості крейтів за раз./crazycrates reload— перезапустити всі конфігурації без рестарту сервера./crazycrates migrate— імпорт крейтів з інших плагінів або конвертація застарілого формату файлів.
Дозволи розбиті на три вайлдкарди: crazycrates.players.* для гравців, crazycrates.admin.* для адмінів, crazycrates.schematic.* для роботи зі схематиками. Гравця можна виключити з масової роздачі /giveall через окремий дозвіл.
Налаштування
Всі файли плагіна знаходяться у папці plugins/CrazyCrates/. Головний — config.yml, де зосереджені глобальні налаштування сервера. Крейти зберігаються у підпапці crates/ — кожен окремим файлом. Папка examples/ містить приклади від розробників, але редагувати їх не варто: вона повністю перезаписується при кожному /crazycrates reload. Усі тексти повідомлень винесені в messages.yml і редагуються окремо.
У config.yml варто звернути увагу на кілька речей. Голограми над крейтами з'являються автоматично, якщо на сервері встановлений DecentHolograms, FancyHolograms або CMI — плагін сам їх підхопить. Якщо жодного немає, голограм просто не буде. Повідомлення гравцям можна направляти або в чат, або в action bar — залежно від того як влаштований сервер. Логування дій з ключами і крейтами вмикається окремо для консолі і для файлу; файлові логи архівуються в zip при перезапуску.
Кожен крейт налаштовується у власному файлі. Окрім типу анімації і списку призів, там задається вигляд фізичного ключа, текст голограми над блоком, розмір і оформлення вікна превью, звуки під час прокрутки і після завершення, а також можливість перекрутити приз повторно якщо результат не влаштував.
Висновок
CrazyCrates додає системи анімацій і для донат-магазину, і для ігрової прогресії у виживанні. Вагова система шансів зручніша за відсоткову при активному редагуванні — не потрібно щоразу перераховувати весь список.
Для PvP- та виживання-серверів із донат-системою CrazyCrates — зручний вибір. Для простого сервера, де потрібен один крейт без анімацій, вистачить QuickCrate і мінімальної конфігурації.
Встановлення
Типове встановлення займає близько 5 хвилин. Порядок однаковий; відрізняються лише лоадер і відповідна збірка.
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.











