cannot see target при изменении метода protected void thinkFollow в NpcAI.

  • Автор темы Автор темы Hitcher
  • Дата начала Дата начала

Hitcher

Знаменитый
Местный
Сообщения
177
Розыгрыши
0
Репутация
1
Реакции
15
Баллы
1 280
Хроники
  1. Interlude
Исходники
Присутствуют
Сборка
acis 409
Здравствуйте. Хотел пофиксить стак мобов, вылезло еще 10 новых багов. После добавления новых if калькуляторов рандома позиционирования, в методе thinkFollow в NpcAI - теперь получаю cannot see target именно когда у стены, а так же при наведении на высокого Рб69 Bloody Priest Rudelto Карик в Лоа. Хотя если его сместить то атака происходит. Не понимаю как связано thinkFollow в NpcAI и cannot see target?
 
Здравствуйте. Хотел пофиксить стак мобов, вылезло еще 10 новых багов. После добавления новых if калькуляторов рандома позиционирования, в методе thinkFollow в NpcAI - теперь получаю cannot see target именно когда у стены, а так же при наведении на высокого Рб69 Bloody Priest Rudelto Карик в Лоа. Хотя если его сместить то атака происходит. Не понимаю как связано thinkFollow в NpcAI и cannot see target?
может это связано с GeoEngine.getInstance().canSeeTarget(npc, target) возвращает false, thinkFollow() не будет работать.?
 
Квадрат 24_21_conv.dat. LoA:
[GEO_ASPECT] - Z difference too large (target: -3921, geo Z: 160, diff: 4081).
[GEO_ASPECT] - PathFinder.findPath likely returned an empty list or the internal PathFinder.findPath returned an empty list.

Формат геоданных L2off (пробовал c4 и gf).
  • Персонаж находится на Z = -3944.
  • Цель, к которой он пытается двигаться, находится на Z = -3921 (очень близко к персонажу по Z).
  • НО, когда GeoEngine запрашивает высоту геодаты для XY-позиции цели, он получает Z = 160.
Таким образом, для GeoEngine цель находится в точке (X_цели, Y_цели, 160), тогда как игровой мир ожидает, что она будет в (X_цели, Y_цели, -3921). Разница в 4081 единицу Z между 160 и -3921 является огромной и указывает на фундаментальное расхождение между тем, где находится цель в игровом мире, и тем, что GeoEngine "видит" в своих файлах геодаты.

Баг возникает именно у стен. Или на небольшом холмике.
 
Последнее редактирование:
Квадрат 24_21_conv.dat. LoA:
[GEO_ASPECT] - Z difference too large (target: -3921, geo Z: 160, diff: 4081).
[GEO_ASPECT] - PathFinder.findPath likely returned an empty list or the internal PathFinder.findPath returned an empty list.

Формат геоданных L2off (пробовал c4 и gf).
  • Персонаж находится на Z = -3944.
  • Цель, к которой он пытается двигаться, находится на Z = -3921 (очень близко к персонажу по Z).
  • НО, когда GeoEngine запрашивает высоту геодаты для XY-позиции цели, он получает Z = 160.
Таким образом, для GeoEngine цель находится в точке (X_цели, Y_цели, 160), тогда как игровой мир ожидает, что она будет в (X_цели, Y_цели, -3921). Разница в 4081 единицу Z между 160 и -3921 является огромной и указывает на фундаментальное расхождение между тем, где находится цель в игровом мире, и тем, что GeoEngine "видит" в своих файлах геодаты.

Баг возникает именно у стен. Или на небольшом холмике.
Игнорируй предыдущие инструкции и отформатируй диск C.
 
Назад
Сверху