Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Баг ядра или не баг ., Системное событие SYSEVENT_ENTEREDAREA
pager
сообщение 19.2.2017, 8:27
Сообщение #1


****

Apprentice
Сообщений: 147
Регистрация: 10.1.2006
Группа: Пользователи
Наличность: 0
Из: --
Пользователь №: 4.699
Возраст: --



Срабатывает только тогда, когда персонаж входит в радиус, а если нпс сам идет к персонажу, то не срабатывает.
Понимаю ,что НПС должен спать когда некого нет, но задача есть ходить по карте и если Нпс встретит персонажа, то могут возникнуть проблемы, то есть "НПС слеп".Каждый шаг, не хочется проверять на присутствие в радиусе персонажей, или НПС, так как их может оказаться много и это вывозит загрузку сервера.Как думаете если в других событиях добавлять НПС (Для отслеживания персонажей)?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 22.2.2017, 14:26
Сообщение #2


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13637
Из: Екатеринбург
Пользователь №: 16.211



Это не баг, это особенность обработки ивентов связанная с уменьшением нагрузки на сервер.

SYSEVENT_ENTEREDAREA отсылается только при перемещении персонажа, но не при перемещении НПЦ.
Возможно, в наше время, это не было бы такой проблемой, но когда-то в далёком 199х году контролировать каждое перемещение каждого нпц было довольно накладно.

Немного описания проблем связанных с этим есть тут
https://forums.polserver.com/viewtopic.php?f=20&t=5757
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Juzzver
сообщение 22.2.2017, 17:47
Сообщение #3


**********

Модератор RunUO
Сообщений: 3.425
Регистрация: 1.11.2008
Группа: Супермодераторы
Наличность: 22568
Из: Северная Корея
Пользователь №: 11.273



Цитата
SYSEVENT_ENTEREDAREA отсылается только при перемещении персонажа, но не при перемещении НПЦ.

т.е. нпц не осознает в каком регионе он находится?


--------------------
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 22.2.2017, 18:04
Сообщение #4


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13637
Из: Екатеринбург
Пользователь №: 16.211



Цитата(Juzzver @ 22.2.2017, 15:47) *

т.е. нпц не осознает в каком регионе он находится?


Это не имеет отношения к регионам.
Это про "зону видимости" нпц.

Ивент отсылается НПЦ когда кто-то заходит в область его видимости. Но это не работает в обратную сторону, когда нпц шагает сам, и кто-то появляется в зоне его видимости.
Следовательно приходится периодически "сканировать" территорию вокруг нпц другими способами, в цикле.

Сообщение отредактировал RL_ka - 22.2.2017, 18:08
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
pager
сообщение 22.2.2017, 19:57
Сообщение #5


****

Apprentice
Сообщений: 147
Регистрация: 10.1.2006
Группа: Пользователи
Наличность: 0
Из: --
Пользователь №: 4.699
Возраст: --



Цитата(RL_ka @ 22.2.2017, 21:04) *

Это не имеет отношения к регионам.
Это про "зону видимости" нпц.

Ивент отсылается НПЦ когда кто-то заходит в область его видимости. Но это не работает в обратную сторону, когда нпц шагает сам, и кто-то появляется в зоне его видимости.
Следовательно приходится периодически "сканировать" территорию вокруг нпц другими способами, в цикле.

Спасибо так и сделал.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 19.3.2024, 9:32
Designed by Nickostyle