После телепортации вместе с питомцем или саммоном происходит их дублирование

gastello

Пляшущий с бубном
Участник
Сообщения
74
Розыгрыши
0
Решения
1
Репутация
0
Реакции
10
Баллы
210
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
l2jserver
Приветствую всех!


Имеется следующая проблема:


После телепортации вместе с питомцем или саммоном происходит их дублирование. Один экземпляр оказывается в центре координат владельца, а второй становится невидимым. Тот, который становится невидимым, — это питомец или саммон, существовавший до телепортации, и он остаётся в мире после применения, например, SOE (телепортации).


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


Если у кого-то есть предложения по исправлению этого бага, буду очень благодарен за помощь!
 
чет звучит как полный бред - с чего бы при телепортациях создавать новый объект для пета/суммона.

с чего ты решил что на старом месте остается невидимая копия?
 
чет звучит как полный бред - с чего бы при телепортациях создавать новый объект для пета/суммона.

с чего ты решил что на старом месте остается невидимая копия?
Вот, я загрузил скриншот. И этот баг почти на всех free исходниках. В итоге один пропадает, который был со мной до телепортации, и становится невидимым объектом после, а второй заново создается в координатах уже владельца.
 

Вложения

  • 85654234234.webp
    85654234234.webp
    29,6 КБ · Просмотры: 36
чет было такое на каких то ебанутых сборках и вроде было связано с инвизом
 
Я за старые сборки имею введу, от l2jfree, l2jserver, l2jopen и так далее
ну тут можно пойти по нескольким путям:
1. Скачать весь репозиторий и по комитам поискать "clone" / "duplication";
2. Под дебагом запустить и смотреть что происходит при вызове события "on_teleported" / "on_teleport" ну или следить за созданием нового "Creature" :)
3. Забить на старье и скачать актуальную сборку.
 
ну тут можно пойти по нескольким путям:
1. Скачать весь репозиторий и по комитам поискать "clone" / "duplication";
2. Под дебагом запустить и смотреть что происходит при вызове события "on_teleported" / "on_teleport" ну или следить за созданием нового "Creature" :)
3. Забить на старье и скачать актуальную сборку.
Понял, спасибо. Так и сделаю :)
 
На примере L2JLisvus можете попробовать в L2PcInstance:
View hidden content is available for registered users!

Там только вместо return было изменено на unSummon, не проверялось.
 
На примере L2JLisvus можете попробовать в L2PcInstance:
*** Скрытый текст не может быть процитирован. ***
Там только вместо return было изменено на unSummon, не проверялось.
Если тебе getPet() отдал null, дохуя логично сразу же вызвать от этого нуля unSummon(). Зато по NPE хотя бы стек увидишь)))
 
ребята из UAC совершают маленькие ошибки
1747065589921.webp
 
Назад
Сверху