Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Плагин [FUN/MECH/DEV] PlayEffect v0.5.4 - Дыма мало! Нужны ещё эффекты![BukkitDev]

@Korvinius
Да, конечно можно будет исправить, надо только для плагина добраться. Как доберусь, сразу выложу обновленную версию.

Плагин очень даже хороший, подойдет для MiniGame серверов. Но у меня вопрос, какую нагрузку на сервер даёт этот плагин? (Если можно то нагрузку на 1 чанк тоже сказать)

Я не совсем понимаю, что такое нагрузка на 1 чанк.


Вообще сам по себе "эффект" - это не страшно. Страшно когда их много и одновременно ;) Если говорить о нагрузке и лагах в целом, то есть несколько источников лагов от эффектов:

1. Лаги клиента. Когда-то ещё во времена NoSmoking, я понял, что любой клиент можно нагрузить отобразив огромное количество дыма в относительно небольшой области - как игрок туда заходит, так сразу начинаются лаги. Что-то подобное было со сферами опыта как только они появились (наверняка все помнят).
Насколько этот эффект сохранился в клиенте я не знаю - у меня с тех пор компьютер апгрейдился раза два (да и Dinnerbone, время от времени, рапортует о каких-то улучшениях клиента по части производительности), а специальной цели повесить клиент я не ставил.
Правда, кстати, всё же знаю - клиент 1.6.х точно можно повесить даже одним фейерверком (если задать ему очень большую длительность полёта, запустить и смотреть ему в след -- именно из-за этого я в Munchausen Firework взрываю фейерверки сразу после того как с них игрок спрыгивает) или циклическим проигрыванием огромного числа фейерверков на небольшом удалении от игрока (с частотой несколько раз в секунду).
В общем если не злобствовать, то клиенту будет хорошо.

2. Нагрузка на сеть. Каждый эффект - это пакет отправляемый серверу. Приблизительно во времена появления NoSmoking! я в другом плагине (я так и не собрался выложить его в общий доступ) проигрывал огромное множество эффектов - дыма (я уже затрудняюсь назвать количество, но их было несколько тысяч). Выяснилось, что даже если этих эффектов никто не видит, то всё равно начинаются лаги - банально забивался интернет-канал сервера.
Вот этот момент я предусмотрел в PlayEffect. Во-первых, пакеты отправляются только тем игрокам, которые находятся поблизости от эффекта. Соответственно если рядом с эффектом никого нет, то эффект не проигрывает, пакеты не отправляются; Во-вторых, есть лимит на количество эффектов проигрываемых за один тик (настраивается в конфиге). Этот лимит, на мой взгляд, всё-же лишней - первого условия уже достаточно, но на всякий случай я оставил и эту "подстраховку".

3. Лаги сервера. Если не считать нагрузки на сеть, то на мой взгляд в реальной ситуации не может быть такого, чтобы эффекты вызвали бы падение TPS.
Вообще, когда-то, в ранних версиях NoSmoking! была недоработка, связанная с энтити-эффектом (там эффект создавался падением жемчужины эндера -- и поскольку они спавнились в выгруженных чанках и соответственно не падали и "не умирали", то это могло привести к тому, что в памяти сервера висело множество не отработавших "жемчужин", а рано или поздно - out of memory :)
В PlayEffect этого точно нет ;)
 
@Korvinius
Да, конечно можно будет исправить, надо только для плагина добраться. Как доберусь, сразу выложу обновленную версию.



Я не совсем понимаю, что такое нагрузка на 1 чанк.


Вообще сам по себе "эффект" - это не страшно. Страшно когда их много и одновременно ;) Если говорить о нагрузке и лагах в целом, то есть несколько источников лагов от эффектов:

1. Лаги клиента. Когда-то ещё во времена NoSmoking, я понял, что любой клиент можно нагрузить отобразив огромное количество дыма в относительно небольшой области - как игрок туда заходит, так сразу начинаются лаги. Что-то подобное было со сферами опыта как только они появились (наверняка все помнят).
Насколько этот эффект сохранился в клиенте я не знаю - у меня с тех пор компьютер апгрейдился раза два (да и Dinnerbone, время от времени, рапортует о каких-то улучшениях клиента по части производительности), а специальной цели повесить клиент я не ставил.
Правда, кстати, всё же знаю - клиент 1.6.х точно можно повесить даже одним фейерверком (если задать ему очень большую длительность полёта, запустить и смотреть ему в след -- именно из-за этого я в Munchausen Firework взрываю фейерверки сразу после того как с них игрок спрыгивает) или циклическим проигрыванием огромного числа фейерверков на небольшом удалении от игрока (с частотой несколько раз в секунду).
В общем если не злобствовать, то клиенту будет хорошо.

2. Нагрузка на сеть. Каждый эффект - это пакет отправляемый серверу. Приблизительно во времена появления NoSmoking! я в другом плагине (я так и не собрался выложить его в общий доступ) проигрывал огромное множество эффектов - дыма (я уже затрудняюсь назвать количество, но их было несколько тысяч). Выяснилось, что даже если этих эффектов никто не видит, то всё равно начинаются лаги - банально забивался интернет-канал сервера.
Вот этот момент я предусмотрел в PlayEffect. Во-первых, пакеты отправляются только тем игрокам, которые находятся поблизости от эффекта. Соответственно если рядом с эффектом никого нет, то эффект не проигрывает, пакеты не отправляются; Во-вторых, есть лимит на количество эффектов проигрываемых за один тик (настраивается в конфиге). Этот лимит, на мой взгляд, всё-же лишней - первого условия уже достаточно, но на всякий случай я оставил и эту "подстраховку".

3. Лаги сервера. Если не считать нагрузки на сеть, то на мой взгляд в реальной ситуации не может быть такого, чтобы эффекты вызвали бы падение TPS.
Вообще, когда-то, в ранних версиях NoSmoking! была недоработка, связанная с энтити-эффектом (там эффект создавался падением жемчужины эндера -- и поскольку они спавнились в выгруженных чанках и соответственно не падали и "не умирали", то это могло привести к тому, что в памяти сервера висело множество не отработавших "жемчужин", а рано или поздно - out of memory :)
В PlayEffect этого точно нет ;)
Запишу себе - интересная заметка по поводу работы плагина + немного теории :3
 
@Korvinius
Да, конечно можно будет исправить, надо только для плагина добраться. Как доберусь, сразу выложу обновленную версию.



Я не совсем понимаю, что такое нагрузка на 1 чанк.


Вообще сам по себе "эффект" - это не страшно. Страшно когда их много и одновременно ;) Если говорить о нагрузке и лагах в целом, то есть несколько источников лагов от эффектов:

1. Лаги клиента. Когда-то ещё во времена NoSmoking, я понял, что любой клиент можно нагрузить отобразив огромное количество дыма в относительно небольшой области - как игрок туда заходит, так сразу начинаются лаги. Что-то подобное было со сферами опыта как только они появились (наверняка все помнят).
Насколько этот эффект сохранился в клиенте я не знаю - у меня с тех пор компьютер апгрейдился раза два (да и Dinnerbone, время от времени, рапортует о каких-то улучшениях клиента по части производительности), а специальной цели повесить клиент я не ставил.
Правда, кстати, всё же знаю - клиент 1.6.х точно можно повесить даже одним фейерверком (если задать ему очень большую длительность полёта, запустить и смотреть ему в след -- именно из-за этого я в Munchausen Firework взрываю фейерверки сразу после того как с них игрок спрыгивает) или циклическим проигрыванием огромного числа фейерверков на небольшом удалении от игрока (с частотой несколько раз в секунду).
В общем если не злобствовать, то клиенту будет хорошо.

2. Нагрузка на сеть. Каждый эффект - это пакет отправляемый серверу. Приблизительно во времена появления NoSmoking! я в другом плагине (я так и не собрался выложить его в общий доступ) проигрывал огромное множество эффектов - дыма (я уже затрудняюсь назвать количество, но их было несколько тысяч). Выяснилось, что даже если этих эффектов никто не видит, то всё равно начинаются лаги - банально забивался интернет-канал сервера.
Вот этот момент я предусмотрел в PlayEffect. Во-первых, пакеты отправляются только тем игрокам, которые находятся поблизости от эффекта. Соответственно если рядом с эффектом никого нет, то эффект не проигрывает, пакеты не отправляются; Во-вторых, есть лимит на количество эффектов проигрываемых за один тик (настраивается в конфиге). Этот лимит, на мой взгляд, всё-же лишней - первого условия уже достаточно, но на всякий случай я оставил и эту "подстраховку".

3. Лаги сервера. Если не считать нагрузки на сеть, то на мой взгляд в реальной ситуации не может быть такого, чтобы эффекты вызвали бы падение TPS.
Вообще, когда-то, в ранних версиях NoSmoking! была недоработка, связанная с энтити-эффектом (там эффект создавался падением жемчужины эндера -- и поскольку они спавнились в выгруженных чанках и соответственно не падали и "не умирали", то это могло привести к тому, что в памяти сервера висело множество не отработавших "жемчужин", а рано или поздно - out of memory :)
В PlayEffect этого точно нет ;)
Смотри, если очень большая нагрузка на чанк он тупо не прогрузится
 
@MrSkaTFeeD это ничего не объяснило. Я не понимаю фразы "нагрузка на чанк". Про возможные причины лагов, источником которых могут быть эффекты, я написал выше.
 
А можно ли привязать один из вышеперечисленных эффектов к игроку, а точнее к группе в permissonsEx?
Просто любопытно чтобы раз в 1-2 секунды отображался определенный эффект :3
 
А можно ли привязать один из вышеперечисленных эффектов к игроку, а точнее к группе в permissonsEx?
Просто любопытно чтобы раз в 1-2 секунды отображался определенный эффект :3
С помощью плагина ReActions можно привязать этот эффект, например к легинам, чтобы эффект включался для игрока одевшего такой предмет и также право одевать этот предмет привязять к группе или пермишену, с помощью этого же плагина ReActions.
 
v0.4.0
  • Добавлены новые эффекты из MC 1.8.1
  • Эффекты переименованы согласно внутренних названий в Minecraft (клиенте и сервере)
  • Убрана (возможно временно) поддержка ProtocolLib
http://dev.bukkit.org/bukkit-plugins/playeffect/files/11-play-effect-v0-4-0/

P.S. Эта версия только для 1.8.1
Перечень эффектов тут:
http://dev.bukkit.org/bukkit-plugins/playeffect/pages/main/effects/
50 визуальных эффектов из PlayEffect 0.4.0:
 
Я хочу сделать VisualEffect.INSTANTSPELL другого цвета (по-умолчанию белый). А мне нужен красный, как у зелья мгновенного здоровья.
3KfINzrxdwc.jpg
 
Я хочу сделать VisualEffect.INSTANTSPELL другого цвета (по-умолчанию белый). А мне нужен красный, как у зелья мгновенного здоровья.
3KfINzrxdwc.jpg

Можно попытаться манипулировать "доп.параметрами" - speed и offset, но к сожалению все цветные частицы не поддерживают цвета адекватным образом. Я пытался вычислить, но пока не достиг результата, который можно было бы выносить в виде отдельных параметров.

Ну и кстати, сегодня обновил:

v0.4.1
  • Добавлена поддержка версии 1.8.3 (совместимость с 1.8.1 осталась).

http://dev.bukkit.org/bukkit-plugins/playeffect/files/12-play-effect-v0-4-1/
 
@ElverTP
Ошибка стандартная - пишется когда "что-то не так". Значит что-то с синтаксисом команды. Что пишите? И какая версия плагина? (последние работают только с 1.8)
 
Затеял у себя обновления на тестовом, я понимаю, что плагин для версии 1.8.3., а у меня 1.8.8., сам плагин, вроде как работает, только при старте в логах есть такая ошибка:
Код:
[07:26:38 INFO]: [PlayEffect] Warning! PlayEffect was not tested with server version:1.8.8-R0.1-SNAPSHOT
>
[07:26:38 INFO]: [PlayEffect] Check updates at http://dev.bukkit.org/bukkit-plugins/playeffect/
>
[07:26:38 INFO]: [PlayEffect] or use this version at your own risk.
>
[07:26:38 ERROR]: Error occurred while enabling PlayEffect v0.4.2 (Is it up to date?)
java.lang.IllegalArgumentException: No enum constant me.fromgate.playeffect.VisualEffect.RUNES
        at java.lang.Enum.valueOf(Unknown Source) ~[?:1.7.0_67]
        at me.fromgate.playeffect.VisualEffect.valueOf(VisualEffect.java:1) ~[?:?]
        at me.fromgate.playeffect.Effects.loadEffects(Effects.java:282) ~[?:?]
        at me.fromgate.playeffect.PlayEffect.onEnable(PlayEffect.java:67) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[server11486.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:357) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:317) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:414) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.k(MinecraftServer.java:378) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.a(MinecraftServer.java:333) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:263) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:525) [server11486.jar:git-Spigot-db6de12-18fbb24]
        at java.lang.Thread.run(Unknown Source) [?:1.7.0_67]
>
 
На help падает это:
Так и должно быть?
 

Вложения:

  • Снимок экрана 2016-08-28 в 1.56.39.png
    Снимок экрана 2016-08-28 в 1.56.39.png
    Размер файла
    91,3 КБ
    Просмотров
    15

Вложения:

  • Снимок экрана 2016-08-29 в 17.14.50.png
    Снимок экрана 2016-08-29 в 17.14.50.png
    Размер файла
    33,8 КБ
    Просмотров
    14
Можно ли как то запустить на Spigot 1.9 ?
Сейчас сыпет ошибки.

924f85ad0a57.png


d8b1826e084c.png
 
@Albetron
Эту версию не запустить. В Spigot 1.10 добавлена частица к которой я обращаюсь напрямую. Соответственно в 1.9 её нет и мы получаем NoClassDefFound.
Я постараюсь в ближайшем будущем выпустить версию где это учтено, чтобы была совместимость с 1.9
@Albetron

v0.5.3

  • Add support for spigot 1.9.4
  • Fixed minor issue with non-formated text (/playeffect list)

https://dev.bukkit.org/media/files/945/618/PlayEffect.jar
 
@Albetron
Эту версию не запустить. В Spigot 1.10 добавлена частица к которой я обращаюсь напрямую. Соответственно в 1.9 её нет и мы получаем NoClassDefFound.
Я постараюсь в ближайшем будущем выпустить версию где это учтено, чтобы была совместимость с 1.9
@Albetron

v0.5.3

  • Add support for spigot 1.9.4
  • Fixed minor issue with non-formated text (/playeffect list)

https://dev.bukkit.org/media/files/945/618/PlayEffect.jar
О спасибо. Уважаемый @fromgate весьма вам благодарен.
 
@fromgate
Юзаю версию под Spigot 1.8.8
[10:57:22 WARN]: [PlayEffect] Task #1130251 for PlayEffect v0.4.2 generated an exception

java.lang.NoClassDefFoundError: me/fromgate/playeffect/firework/InstantFireworks18R2

at me.fromgate.playeffect.effect.EffectFirework$1.run(EffectFirework.java:46) ~[?:?]

at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftTask.run(CraftTask.java:71) ~[spigot.jar:git-Spigot-21fe707-e1ebe52]

at org.bukkit.craftbukkit.v1_8_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:350) [spigot.jar:git-Spigot-21fe707-e1ebe52]

at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:723) [spigot.jar:git-Spigot-21fe707-e1ebe52]

at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [spigot.jar:git-Spigot-21fe707-e1ebe52]

at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [spigot.jar:git-Spigot-21fe707-e1ebe52]

at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [spigot.jar:git-Spigot-21fe707-e1ebe52]

at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]

Снимок экрана 2016-11-20 в 12.58.38.png
Поможешь?
 

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

Назад
Верх