о боги, как же я давно об этом говорил. и как все благополучно (по крайней мере те, кто понял о чем я говорил) забивали на это. зачем обновлять конкретные данные, ведь проще же захерачить broadcastUserInfo() и все в абажуре, зачем использовать inventoryupdate, ведь можно itemlist воткнуть.
почему во всех l2j-like версиях чуть ли не в каждом действии идет отправка actionfailed так, "на всякий случай". и почему после 30 минут активной игры клиент показывает в 3-4 раза меньше фпс, чем только зашел игру. что вынуждало некоторых игроков просто делать релог, чтобы поднять фпс до желаемого вида.
вот к примеру в клиенте ертеи (классика) я вижу разделение всех параметров на группы, которые можно отсылать по нужде маленькими порциями, но и даже в этом случае умельцы забивают болт и шлют весь комплект параметров ради обновления одного. как удобно при обновлении стата (после добавления эффекта бафа или зоны или еще чего) разослать всем вокруг чаринфо и юзер игроку, но зачем, ведь стат, который изменился - был regHP.
строить схемы, где запоминается последний параметр, кешируется пакет, и вдруг-кто его спросит - отдать ему кешированный - это абсурд. пакет должен уходить только в том случае, если он действительно нужен.
в нынешнем случае большинство сборок невозможно модифицировать, что бы все это работало как надо, эти сборки надо попросту переписывать заново.
кстати на l2j есть statusListeners, которые и выполняют вышеописанную роль "списка тех, кто меня выделил", броадкастя им СУ.
зы. не понимаю чем этим твиком с кешем могло помочь игрокам, это возможно сэкономит какое-то время на создании этих СУ, но в жестком замесе это время уйдет на блокированные коллекции. количество пакетов конечному игроку осталось несменным. пиковое значение их отправки показывает это. и где пакет Attack в логах?
Добавлено через 4 минуты
в ертее и классике этот фикс от бога только создаст проблемы, клиент игры мониторит изменения параметров, и если хп было обновлено, но на клиент из-за этой хрени не ушел пакет - зеленых "плюсиков" не будет. а также мне интересно, как они вычислили размер окна, который игрок мог раздвинуть и на котором даже малейшие изменения параметров становятся заметны.
и да, фича с хпбаром вроде бы и ничего такого, а на деле вылазит хороший трафик
почему во всех l2j-like версиях чуть ли не в каждом действии идет отправка actionfailed так, "на всякий случай". и почему после 30 минут активной игры клиент показывает в 3-4 раза меньше фпс, чем только зашел игру. что вынуждало некоторых игроков просто делать релог, чтобы поднять фпс до желаемого вида.
вот к примеру в клиенте ертеи (классика) я вижу разделение всех параметров на группы, которые можно отсылать по нужде маленькими порциями, но и даже в этом случае умельцы забивают болт и шлют весь комплект параметров ради обновления одного. как удобно при обновлении стата (после добавления эффекта бафа или зоны или еще чего) разослать всем вокруг чаринфо и юзер игроку, но зачем, ведь стат, который изменился - был regHP.
строить схемы, где запоминается последний параметр, кешируется пакет, и вдруг-кто его спросит - отдать ему кешированный - это абсурд. пакет должен уходить только в том случае, если он действительно нужен.
в нынешнем случае большинство сборок невозможно модифицировать, что бы все это работало как надо, эти сборки надо попросту переписывать заново.
кстати на l2j есть statusListeners, которые и выполняют вышеописанную роль "списка тех, кто меня выделил", броадкастя им СУ.
зы. не понимаю чем этим твиком с кешем могло помочь игрокам, это возможно сэкономит какое-то время на создании этих СУ, но в жестком замесе это время уйдет на блокированные коллекции. количество пакетов конечному игроку осталось несменным. пиковое значение их отправки показывает это. и где пакет Attack в логах?
Добавлено через 4 минуты
Gaikotsu Написал:насколько я помню, в овере (в фениксе не помню уж) по тому же принципу сделана рассылка StatusUpdate - вычисления размеров баров хп/мп и т.д. и отправка пакета только если реально визуально будет видно изменение текущего значения, да и рассылка так же только тем кто реально это изменение может увидеть - выбравшие в цель и т.д.
З.Ы. правда в ГоД приходится и тупо всем в определенном радиусе данный пакет бродакастить в случаях когда объектом является моб - там то полоску хп над тушкой моба видно всем.
в ертее и классике этот фикс от бога только создаст проблемы, клиент игры мониторит изменения параметров, и если хп было обновлено, но на клиент из-за этой хрени не ушел пакет - зеленых "плюсиков" не будет. а также мне интересно, как они вычислили размер окна, который игрок мог раздвинуть и на котором даже малейшие изменения параметров становятся заметны.
и да, фича с хпбаром вроде бы и ничего такого, а на деле вылазит хороший трафик