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

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

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

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

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Пожалуй, далеко не самый удачный опыт. Не могу назвать этот форк ошибкой, но никакой речи о счастливом будущем не идёт.
    Впрочем, не хочется продолжать разработку этого форка на серьезных щах. Если кому всё ещё требуется РеА под 1.15.2 - прошу в ЛС. Не знаю, что именно сейчас не работает, потому желательно отсылать логи с ошибками и прочими проблемами. Быстрых фиксов обещать не могу - исправим просто со временем. Билды будут в том же месте.
    А вот тему закрою, пожалуй.
     
  2. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Решил снова взяться чутка. Ничего серьезного - раз в неделю просто буду тыкать в этот труп палкой и надеяться, что оно задвигается, а в идеале затанцует.
    Если кому всё ещё нужен стабильный скриптовый плагин - советую обратить взор на Skript(плагин в "Assets"), ибо он активно обновляется сообществом и несложен в обращении, особенно если вы знакомы с английским языком как таковым. Впрочем, если вы собираетесь делать на нём большие проекты - лучше возьмитесь за Java или наймите разработчика (нет, не меня)
     
  3. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Поправил некоторые баги, в том числе: создание папок вместо файлов активаторов, кривое сохранение материалов в некоторых активаторах, работа кастомных команд при малом кол-ве аргументов, триггер на вход в кубоид.
    Полностью вырезана поддержка Towny, RaceAndClasses, PlayEffect, Factions, Craftconomy3. Все были удалены либо потому что сами устарели, либо в РеА использовалась слишком старая версия(в случае с Towny).
    Для вычислений через плейсхолдер CALC заменил старую математическую библиотеку на свою собственную, которая работает в несколько раз быстрее. Поддерживает все старые функции, плюс немного сверху - список.
    Частично переделана система плейсхолдеров - теперь в первую очередь будут обрабатываться внутренние плейсхолдеры, и лишь потом внешние.
    Код:
    EXEC:
      test_phs:
        actions:
        - var_set=id:test value:WTF
        - var_set=id:testhi value:YAY
        - var_temp_set=id:hello value:hi
        - response=%var:test%hello%%
    В данном случае новый алгоритм покажет YAY. Раньше же для этого результата приходилось извращаться, если у вас была переменная, которая начинается с имени другой переменной(здесь testhi). Впрочем, на практике это происходило и в некоторых других случаях.
    Был добавлен плейсхолдер %activator_name%, который, очевидно из его написания, отвечает за название активатора. Немного бесполезно, но мне в своё время этого очень не хватало.
    Вернул название активатору COMMAND.

    Всё ещё не рекомендую форк к использованию, но это уже что-то. Пока не тестировал его в игре - лишь из консоли.
     
  4. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Добавил ссылку на скачивание через GitHub Actions - открываете последний успешный билд и скачиваете артефакт. В новом CircleCI черт ногу сломит, уберу позже.
     
  5. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Доработана система плейсхолдеров. Работает шустрее, да и пользоваться со стороны разработки удобнее. Единственное "но" - нет плейсхолдеров raw; пока думаю, как лучше всего реализовать. В качестве временного решения, если у вам нужно экранировать плейсхолдер без вложенных плейсхолдеров, воспользуйтесь синтаксисом &\%placeholder%
    Переработана система параметров. Разницу в обращении вы не ощутите, но работает намного быстрее.
    Несколько незначительных оптимизаций.
    Потихоньку переношу плагин в ООП. По сути, пока ничего не сделано, но после окончания всё же смогу организовать систему модулей. Если не обленюсь в край.
     
    Последнее редактирование: 29 июл 2020
  6. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Попрошу - если кому не лень, проверьте работоспособность на каких-нибудь базовых скриптах. На своем ноутбуке не могу запустить клиент+сервер без последствий.
    Сейчас всё делается под 1.16, должно работать на 1.14.
     
  7. snr93

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

    Баллы:
    88
    /react add region_enter tpuser tpreg

    говорит неизвестный тип активатора...
    pspigot 1.16
    WG 7.0.2
    ReActions v0.13.0-SNAPSHOT

    WG при этом увидел и подцепил...

    [23:29:22] [Server thread/INFO]: [ReActions] WorldGuard 7.0.2-SNAPSHOT;bf2593e found. Bridge loaded: WGBridge 0.0.2/WG7x

    даже не стандарный в примере тоже самое пишет
    /react add button tpbut
     
    Последнее редактирование: 2 авг 2020
  8. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Создание активаторов работает через /react create тип название параметры.
    Сделано это для того, чтобы разгрузить команду /react add - сейчас она лишь для действий/противодействий и флагов.
     
  9. snr93

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

    Баллы:
    88
    что-то я не понимаю. Сделал регион tpreg
    пишу
    /react create region_enter tpuser tpreg
    Окей, сделал активатор tpuser
    Потом иду куда мне нужна телепортация и пишу
    /react add tpuser action tp %here%
    он мне говорит хорошо, действие TP добавлено. Я захожу в регион tpreg и ничего не происходит....

    В файле активаций это:

    Код:
    REGION_ENTER:
      tpuser:
        actions:
        - TP=world,-1250.0,77.0,8079.0,192.0,17.0
        region: tpreg
    
     
  10. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Можешь проверить тоже самое с действием MESSAGE?
     
  11. snr93

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

    Баллы:
    88
    проверил, при входе в регион показывается текст. Проблем нет.
    А вот ТП не работает. И вот еще выбивает ошибку, когда выхожу с сервера


    Код:
    [17:50:12] [Server thread/ERROR]: Could not pass event PlayerQuitEvent to ReActions v0.13.0-SNAPSHOT
    java.lang.NullPointerException: null
        at me.fromgate.reactions.logic.StoragesManager.raiseQuitActivator(StoragesManager.java:412) ~[?:?]
        at me.fromgate.reactions.events.listeners.BukkitListener.onPlayerQuit(BukkitListener.java:466) ~[?:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor837.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.16.1.jar:git-Paper-130]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.16.1.jar:git-Paper-130]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.1.jar:git-Paper-130]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.PlayerList.disconnect(PlayerList.java:509) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.PlayerConnection.a(PlayerConnection.java:1594) ~[patched_1.16.1.jar:git-Paper-130]
        at com.denizenscript.denizen.nms.v1_16.impl.network.handlers.AbstractListenerPlayInImpl.a(AbstractListenerPlayInImpl.java:361) ~[?:?]
        at net.minecraft.server.v1_16_R1.NetworkManager.handleDisconnection(NetworkManager.java:481) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.ServerConnection.c(ServerConnection.java:162) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.MinecraftServer.b(MinecraftServer.java:1379) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.DedicatedServer.b(DedicatedServer.java:377) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.MinecraftServer.a(MinecraftServer.java:1213) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.MinecraftServer.v(MinecraftServer.java:1001) ~[patched_1.16.1.jar:git-Paper-130]
        at net.minecraft.server.v1_16_R1.MinecraftServer.lambda$a$0(MinecraftServer.java:177) ~[patched_1.16.1.jar:git-Paper-130]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]
     
  12. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Ошибку поправил, телепорт тоже должен заработать. Если нет - придется глубже копать...
     
  13. snr93

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

    Баллы:
    88
    Да, теперь телепорт отлично работает!
     
  14. snr93

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

    Баллы:
    88
    При обновлении на 1.16.2 получаю вот такую ошибку кучу раз

    Код:
    [21:04:33] [Server thread/ERROR]: Could not pass event EntityDamageByBlockEvent to ReActions v0.13.0-SNAPSHOT
    org.bukkit.event.EventException: null
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:319) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.craftbukkit.v1_16_R2.event.CraftEventFactory.callEvent(CraftEventFactory.java:246) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.craftbukkit.v1_16_R2.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:858) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.craftbukkit.v1_16_R2.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:802) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.craftbukkit.v1_16_R2.event.CraftEventFactory.handleLivingEntityDamageEvent(CraftEventFactory.java:991) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityLiving.damageEntity0(EntityLiving.java:1754) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityHuman.damageEntity0(EntityHuman.java:828) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityLiving.damageEntity(EntityLiving.java:1130) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityHuman.damageEntity(EntityHuman.java:745) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityPlayer.damageEntity(EntityPlayer.java:716) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.citizensnpcs.nms.v1_16_R2.entity.EntityHumanNPC.damageEntity(EntityHumanNPC.java:154) ~[?:?]
        at net.minecraft.server.v1_16_R2.Entity.burnFromLava(Entity.java:466) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.Entity.entityBaseTick(Entity.java:412) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.EntityLiving.entityBaseTick(EntityLiving.java:261) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.citizensnpcs.nms.v1_16_R2.entity.EntityHumanNPC.playerTick(EntityHumanNPC.java:378) ~[?:?]
        at net.citizensnpcs.nms.v1_16_R2.util.NMSImpl.playerTick(NMSImpl.java:960) ~[?:?]
        at net.citizensnpcs.util.NMS.playerTick(NMS.java:340) ~[?:?]
        at net.citizensnpcs.util.PlayerUpdateTask.run(PlayerUpdateTask.java:56) ~[?:?]
        at org.bukkit.craftbukkit.v1_16_R2.scheduler.CraftTask.run(CraftTask.java:81) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at org.bukkit.craftbukkit.v1_16_R2.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:400) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.MinecraftServer.b(MinecraftServer.java:1059) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.DedicatedServer.b(DedicatedServer.java:352) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.MinecraftServer.a(MinecraftServer.java:1007) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.MinecraftServer.w(MinecraftServer.java:846) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at net.minecraft.server.v1_16_R2.MinecraftServer.lambda$0(MinecraftServer.java:164) ~[server.jar:git-Spigot-379750e-43c7ff9]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]
    Caused by: java.lang.NullPointerException
        at me.fromgate.reactions.logic.storages.DamageByBlockStorage.prepareVariables(DamageByBlockStorage.java:39) ~[?:?]
        at me.fromgate.reactions.logic.storages.Storage.init(Storage.java:60) ~[?:?]
        at me.fromgate.reactions.logic.ActivatorsManager.activate(ActivatorsManager.java:486) ~[?:?]
        at me.fromgate.reactions.logic.StoragesManager.raiseDamageByBlockActivator(StoragesManager.java:473) ~[?:?]
        at me.fromgate.reactions.events.listeners.BukkitListener.onPlayerDamage(BukkitListener.java:335) ~[?:?]
        at sun.reflect.GeneratedMethodAccessor138.invoke(Unknown Source) ~[?:?]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_231]
        at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_231]
        at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:315) ~[server.jar:git-Spigot-379750e-43c7ff9]
        ... 28 more
     
  15. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Поправил, попробуй сейчас.
     
  16. snr93

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

    Баллы:
    88
    Да, это исправило проблему, благодарю!
     
  17. snr93

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

    Баллы:
    88
    и снова увидел ошибку

    Код:
    [16:20:16] [Server thread/ERROR]: Could not pass event PlayerInteractEvent to ReActions v0.13.0-SNAPSHOT
    java.lang.NullPointerException: null
        at me.fromgate.reactions.logic.storages.BlockClickStorage.prepareVariables(BlockClickStorage.java:55) ~[?:?]
        at me.fromgate.reactions.logic.storages.Storage.init(Storage.java:60) ~[?:?]
        at me.fromgate.reactions.logic.ActivatorsManager.activate(ActivatorsManager.java:486) ~[?:?]
        at me.fromgate.reactions.logic.StoragesManager.raiseBlockClickActivator(StoragesManager.java:422) ~[?:?]
        at me.fromgate.reactions.events.listeners.BukkitListener.onPlayerInteract(BukkitListener.java:409) ~[?:?]
        at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor860.execute(Unknown Source) ~[?:?]
        at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.16.1.jar:git-Paper-136]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.16.1.jar:git-Paper-136]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.16.1.jar:git-Paper-136]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:607) ~[patched_1.16.1.jar:git-Paper-136]
        at org.bukkit.craftbukkit.v1_16_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:498) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.PlayerInteractManager.a(PlayerInteractManager.java:459) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.PlayerConnection.a(PlayerConnection.java:1451) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:27) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:5) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.PlayerConnectionUtils.lambda$ensureMainThread$1(PlayerConnectionUtils.java:23) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.TickTask.run(SourceFile:18) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.MinecraftServer.aZ(MinecraftServer.java:1137) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.MinecraftServer.executeNext(MinecraftServer.java:1130) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.MinecraftServer.sleepForTick(MinecraftServer.java:1091) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.MinecraftServer.v(MinecraftServer.java:1005) ~[patched_1.16.1.jar:git-Paper-136]
        at net.minecraft.server.v1_16_R1.MinecraftServer.lambda$a$0(MinecraftServer.java:177) ~[patched_1.16.1.jar:git-Paper-136]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_231]
     
  18. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Звиняюсь, пока не могу исправить - ноутбук в ремонте. Завтра должны закончить, тогда и поправлю.
     
  19. Автор темы
    imDaniX

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

    Баллы:
    96
    Имя в Minecraft:
    imDaniX
    Tолько сейчас "вернулся" ноутбук. Попытался исправить, попробуй последний билд.
     
  20. snr93

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

    Баллы:
    88
    да, вроде ушла ошибка, спасибо
     

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