1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Плагин [ADMIN] Re:ReActions | Простейший скриптовый плагин (1.19+)

Тема в разделе "Неподтвержденные плагины", создана пользователем imDaniX, 6 сен 2019.

  1. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    1-2. Будут, просто я несколько занят двумя другими проектами. В скором времени вернусь к РеА.
    3. Неполная вики есть на оригинальном гитхабе. Позже скопирую к себе и буду обновлять.
     
  2. crazy12345

    crazy12345 Активный участник Пользователь

    Баллы:
    63
    в IF_ELSE изменилось чтото?
    старые скрипты перенес на этот форк, не пашут

    например, вот на это нет результата и ошибок нет:
    - IF_ELSE=if:{%arg1% < 1000} then:run:actions:{action1:{message=Недостаточно денег!}} else:run:actions:{action1:{message=Достаточно денег!}}
     
  3. Soul_KRT

    Soul_KRT Активный участник Пользователь

    Баллы:
    76
    Попробуйте после run: тоже добавить {
    Ну и вконце ещё одну } соответственно.
    У меня так все работает. Если не поможет - отпишите, также указав используемую версию RA. Я попробую заставить работать ваш скрипт :)
     
  4. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Во-первых, не советую использовать это действие - оно буквально использует JavaScript чтобы проверить условие в if. Это намного медленнее, чем если бы ты проверял это же в обычном exec активаторе.
    Во-вторых, действительно занимался этим действием, чтоб хоть как-то облегчить его работу. Мб перемудрил. Если способ @Soul_KRT не сработает - отпишись здесь.
     
  5. crazy12345

    crazy12345 Активный участник Пользователь

    Баллы:
    63
    это помогло

    а так и должно быть, что нет никаких ошибок в консоли, даже если я специально сделаю синтаксическую ошибку? например лишнюю } поставлю

    ReActions v0.13.0-b0
     
  6. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    О, значит работает.
    Возможно, дело в новом парсере параметров - он работает в десятки раз быстрее, но немного отличается от старого в нестандартных случаях.
    В данном случае у нас "слово"(без пробелов и скобок т.е.) с несколькими двоеточиями идет, и из-за этого он, вероятно, прочёл выражение иначе. T.е. парсер рассчитывает увидеть что-то вроде then:{run:{actions:{...бла-бла-бла...}}}, а получает then:run:actions:{...бла-бла-бла...}.
    Ошибок быть не должно при этом - РеА всегда просто игнорировал действия/флаги с неправильно-записанным синтаксисом, либо вызывал какие-то действия с настройками по-умолчанию. Возможно, стоит поменять такой расклад, и предупреждать о каждом недочете?
     
  7. crazy12345

    crazy12345 Активный участник Пользователь

    Баллы:
    63
    по мне так лучше указывать на ошибки. а то написал скрипт, забыл где то скобку указать, в логах тишина и приходится искать
     
  8. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Привет. Сильно проседает tps при использовании плагина на кастомные чары, а именно при использовании зачарования, которое позволяет киркой убирать сразу 3Х3 блоков. Репорт по timings в топе показывает этот класс:
    ReActions::Task: me.fromgate.reactions.logic.StoragesManager$$Lambda$7344 (Single)
    Как бы это пофиксить?

    P.S. Я бы сам пофиксил, был бы доступ к исходникам.
    Может автор откроет код сообществу? Все таки в случае чего, мы сможем продолжить благородное дело.
     

    Вложения:

  9. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Но исходный код и так открыт - в конце первого же поста ссылка на гитхаб. Если сможешь поправить проблему - буду рад принять пул реквест.
     
  10. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Спасибо, пропустил видимо. Попробую исправить
     
  11. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Посмотрел в код и понял, что узкое место - это сохранение переменных в json файл, переключил плагин на MySql базу и проблема ушла.
     
  12. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Вроде имеется асинхронное сохранение в файлы - не пробовал включить? К слову, с MySQL всё может пойти ещё хуже, ибо все запросы делаются в основном потоке. Для исправления нужно много чего переделывать...
     
  13. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Да, кстати синхронное сохранение я тоже включал локально и кажется как раз оно и помогло, но MySql проблем вроде как не добавил.
     
  14. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Вот только спамит теперь в логах:
    [13:57:36 WARN]: java.io.FileNotFoundException: plugins/ReActions/variables.yml (No such file or directory)
    Хотя файл есть, просто он теперь пустой.
     
  15. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Не работает DAMAGE_BY_MOB. Сообщение "Тыц!" не появляется ни в actions ни в reactions. Что я делаю не так?
    DAMAGE_BY_MOB:
    prison_kick:
    damager-type: PLAYER
    damager-name: ''
    entity-type: PLAYER
    cause: ANY
    flags:
    - REGION=new_world.prison
    actions:
    - MESSAGE=§6[§cПобег из Тюряги§6]§f Тыц!
    - cancel_event=true
    - cmd_console=counter inc %damagername% grt 1
    - execute=activator:put_to_random_cell_on_leave
    - execute=activator:giftik_%random:1-10%
    reactions:
    - MESSAGE=§6[§cПобег из Тюряги§6]§f Тыц!
     
  16. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Попробуй убрать damager-name.
     
  17. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    Не работает.
    При этом же не работает создание активатора через комманды, например комманда
    /react add MOB_CLICK mob_cklick1 type:pIG
    возвращает ошибку
    Unknown type of activator
     
  18. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Ehh. Постараюсь пофиксить в ближайшие пару дней.
    Создание активаторов, локаций, таймеров и меню перенесены в команду /react create, ибо логика самой команды была очень напряженной.

    Обещаю, что займусь РеА вплотную в следующем месяце. Мне нужно разгрести последние дела с другими проектами. РеА весьма комплексный плагин, но одновременно с этим оригинальный код плагина часто написан очень и очень топорно - многое проще и лучше переписать с нуля(как я это уже сделал с системами параметров и плейсхолдеров), нежели пытаться исправить положение, но это требует много усилий.
     
  19. OOME

    OOME Участник Пользователь

    Баллы:
    36
    Имя в Minecraft:
    OOME
    В копилку к неработающему функционалу: мне так же не удалось завести TIMERS, ни INGAME ни SERVER не хотят тригериться...
     
  20. Автор темы
    imDaniX

    imDaniX Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Довольно странно - у меня таймеры работали.
     

Поделиться этой страницей