Как должен работать nexttarget?

Projack

Чиловый парень
VIP
Участник Новогоднего Фонда 2023
Победитель в номинации 2023
Победитель в номинации 2022
Стальной Визионер
Куратор Данных
Сообщения
579
Розыгрыши
0
Решения
2
Репутация
1 066
Реакции
1 159
Баллы
1 783
Хроники
  1. Chaotic Throne: High Five
Исходники
Присутствуют
Сборка
l2j
Неумею красиво разворачивать вопросы как делает @Rolo.
Спрошу как есть. Как вообще на PTS, или user friendly серверах работает nexttarget?
Хроники думаю тут не важны, но для контекста пусть будет high five.

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

В самом простом случае, когда игрок стоит и все цели вокруг неподвижны, то:
Код:
target1: 100 range
target2: 200 range
target3: 399 range
При первом клике будет взят в цель target1.
При втором клике будет target2.
При третьем будет target3.

А что будет происходить, если цели все двигаются и range меняется?
Запомнить список и также ходить по списку персонажей в радиусе?
А если target3 - даггер и прыгает вам за спину, то кажется тут nexttarget должен помогать и выбирать его. Если он так отработает, то получается список переранжировался?
А если он так, то он может выдать и следующий результат: target2->target3->target2, будет ли это правильным?

Следующая часть вопросов, это реализация nexttarget2. Не знаю где именно впервые он появился. Он просто такой же nexttarget, но с радиусом побольше? Или он вообще выбирает самую дальнюю цель? Или выбирает цель между nexttarget радиусом и nexttarget2 радиусом?

На форуме тут есть где-то примеры когда бородатых сборок и там местами вообще rand берется из целей вокруг.
 
  • Ха-ха-ха
  • Мне нравится
Реакции: Rolo и Olympicus

    Rolo

    Баллов: 10
    Я аж польстился прям, ну! )
не знаю как правильно и как нет, но на сколько я знаю и множество раз видел на многих сборках и проектах . то nexttarget может взяться любой не зависимо от расстояния до цели рандомно в какой то области.
 
C AdvExt HF pts.


По ощущением работает примерно следующим образом.

Получаем фиг знает как составленный список(не выглядит так, что на основе отсортированного).
Если цели нет, то ищем ближайшую. Если цель есть то ищем её в списке и берем следующий за ней(если за ней нет, то первый элемент).
Список меняется во времени и можем получить что-то похожее на pts, там тоже видна какая-то рандомность(1:20 в видео) и не прям самый близкий выбирается

Но кажется это не верный алгоритм. Если так, то дагеры бы вообще не попадали в нексттаргет в масс пвп, и ты бы умирал не успев их выделить через nexttarget(хотя это может быть слабо заметно, из-за ренджа 400 у nexttarget)
 
виды таргета
1) таргет рандонный
2) таргет направленный
2.1)берет сначало ближайших
2.2)берет сначало дальних
3)таргет опасностей
3.1) берет самого опасного врага
3.2)берет 1 кто на агрится на тебя
и так далее могу перечислить очень много вариантов которые применялись в l2
 
разницы нет. птс или ява решает клиент.
разница есть если сервером отправлены некорректные релейшны для объектов вблизи
от этого будет зависеть состав списка, из которого нексттаргет выбирает цели.
 

in the meantime it's still weird the way how its collected and select the next target, looks like near target but after a few second spaming target change
PD: video from AdvExt
 
Назад
Сверху Снизу