Инструкция До сих пор не используете Denizen на своём сервере? ФАТАЛЬНАЯ ОШИБКА

До сих пор не используете Denizen на своём сервере? ФАТАЛЬНАЯ ОШИБКА
Краткое описание:
В данном ресурсе расскажу о таком плагине как Denizen!
389
  • Лайк 0
Реакции:1 пользователя
Soqua

Что вы найдете в этой статье?


  1. Краткий обзор
  2. Для чего он реально полезен
  3. Установка плагина
  4. Базы
  5. Полезные ресурсы и ссылки

Что такое Denizen вообще такое?


Denizen - это мощный инструмент, представляющий собой плагин, с помощью которого можно сделать буквально всё что угодно. Но! Для того, чтобы начать пользоваться им, придётся действительно попотеть. Если вы не готовы, пропускайте эту статью.
Проще сказать, что Denizen это своего рода движок для скриптов. Вы можете написать событие, команду, предмет, всё что угодно. Этот плагин использует множество серверов, из самых ярких DMC (почти весь его функционал написан на Denizen)
Порог входа довольно низкий, в отличии от Java или Kotlin, поэтому вы обязательно разберетесь, если у вас будет желание.


Для чего его действительно лучше использовать?


Посмотрев на реакцию разных людей с форума, стало понятно, что многие недолюбливают этот плагин. Для таких людей специально объясню.
Denizen-ом нельзя заменить весь функционал сервера, это очевидно. Он нужен больше для всяких дополнительных вещей. Например, хотите создать какую-нибудь команду, или сделать какой-нибудь крафт. Чтобы сделать это без Denizen, для команды придется скачивать mycommand (о господи), для крафта придется возиться с датапаками. Зачем, когда за 5 минут не перезагружая сервер и даже не мешая игрокам(если сервер работает), можно написать эти скрипты и не мучаться?
Также Denizen хорош для всяких механик и ивентов.


Установка плагина.


Ссылки:

Denizen на Spigot
Denizen на Jenkins (dev)
Denizen на Jenkins (rel)
Официальный сайт Denizen


Установка как у всех обычных плагинов, но рекомендую поставить Vault. У Denizen есть множество дополнений, которые можно использовать например для создание и контроля NPC, дискорд бота, и ещё очень многих вещей.

После установки, нужно поставить Visual Studio Code, а там поставить плагин Denizen Script для подсказок и подсветки синтаксиса, в целом для поддержки языка.

Все скрипты Denizen имеют расширение .dsc, и также все они должны находится в папке Denizen/scripts.


Базы Denizen.


Рекомендую ознакомится с Beginners Guide на их сайте.
Здесь разберем основные термины.

Перезагрузка плагина /ex reload

Разберем очень простой код, который представляет собой отправление сообщения всем игрокам на сервере, когда игрок идет.
В Denizen всё состоит из контейнеров, команд и тегов.
Контейнеры это по сути место, где хранится код. Они бывают разных видов. Есть world, для обработки общих событий, например, когда игрок пишет в чат, или ломает блок, вариантов огромное множество.
Все эти варианты можно посмотреть на Denizen Meta.
Виды контейнеров есть тут

Вообще рекомендую изучить эти страницы, так как на них можно найти абсолютно всё, что есть в ЯП. Также очень сильно помогает знание английского, код можно буквально читать и понимать, что он делает, даже не зная сам ЯП.

Итак, контейнеры разобрали. Дальше команды. Само название говорит за себя. Команд также бесчисленное множество, в данном примере используется самое базовое narrate, оно отправляет сообщение игроку либо заданным targets, то есть целям. Если нужно отправить только игроку, цели не нужно указывать.

Переходим к тегам. По моему, самое обширное, что есть в этом ЯП. Тег это по сути плейсхолдер.
В данном случае используется два тега. Теги находятся между <> и пишутся через точку. Если к тегу есть дополнение, например, определение флага (флаги - это переменные), то название флага пишется в [].

Используя данные знания, вы сможете понять код, данный ниже!

YAML:
my_world:

    type: world
    events:
        after player walks:
        - narrate "<player.name> ходит!" targets:<server.online_players>


Полезные ресурсы.


Скорее всего, вы могли немного запутаться. Это нормально, со мной тоже такое было. И чтобы вы могли спросить кого-то о помощи, или найти скрипты, перейдите на самый крупный русскоязычный Discord сервер по Denizen - DENIZEN СНГ

Дальше все ссылки со статьи:

Официальный сайт Denizen

Denizen Meta
Denizen на Spigot
Denizen на Jenkins (dev)
Denizen на Jenkins (rel)

Begginers Guide

Удачи с изучением!

Автор

Neckyyyyyyyy

Последние отзывы

Icecicerv
Icecicerv
4,00 звёзд
Довольно субъективно. Плагины членизен точно не заменит. Ибо банально на сложных задачах денизен показывается себя хуже чем обычные плагины. Но по сравнению с skript денизен выигрывает
Rossek2
Rossek2
4,00 звёзд
Denizen отлично подходит для несложных задач - например, создания кастомных предметов с уникальными функциями. Такие вещи легко редактировать прямо на сервере.
А вот для более сложных ивентов и механик всё же лучше использовать полноценные плагины.
Впрочем, у каждого свой подход - кто-то предпочитает скрипты, кто-то плагины. Делайте так, как удобно вам.
Mioji
Mioji
4,00 звёзд
Denizen сам по себе неплохой, но уж точно не "замена" плагинов. Скриптовые языки в любом случае хуже по всем параметрам Плагина написанного на Java/Kotlin. Одна и та же хорошо написанная функция на Denizen будет хуже такой же функцией, но сделанной как плагин.

При этом Denizen требует обучения и много парктики чтобы писать хорошо, но вход ниже чем у полноценных языков, хотя преимуществ у Java/Kotlin больше. Выбор за вами.
N
Neckyyyyyyyy
Смотря какие плагины заменять. Тем более гораздо труднее и дороже написать какой-нибудь ивент условно, в виде плагина. На денизене же это дешевле и быстрее. Ну и нет смысла перегружать маленькими плагинами сервер, если можно на денизене написать. Например на выпадение голов, позы и так далее
Set
Set
3,00 звёзд
Используете Denizen? ФАТАЛЬНАЯ ошибка.
N
Neckyyyyyyyy
с чего бы? если нормально пользоваться, то всё будет охеренно и без лишних плагинов на сервере
ВерхНиз