установить или взять таргет

Die

Прославленный
Проверенный
Сообщения
467
Розыгрыши
0
Решения
1
Репутация
606
Реакции
212
Баллы
1 438
Здравствуйте, давно не писал на форуме. интересует вопроc как сделать установку таргета с последующим его взятием. Точнее игрок А установил таргет на цель А и игрок Б взял его. По принципу ассиста только нужно для других целей
 
проверять текущий таргет у нужной цели и принудительно менять таргет на нее у требующейся
ну а сообщать другим что такой-то игрок выделил такую то цель, можно просто рассылая уведомление всем в определенном радиусе - хоть и изврат но таки шо поделать.
 
Реакции: kick

    kick

    Баллов: 25
    За помощь :)

    Die

    Баллов: 6
    За ответ
Это я понимаю, но что будет с сервером при онлайне в 500 человек в 1 месте?, не умрет ли сервер от отсылания пакетов?
 
серв будет в ах..е.
если я правильно понял, то он хочет сделать как на бсфг. Есть к примеру лидер расы, он выбирает таргет, нажимает действие из социалок и он как бы устанавливается на цель, другие игроки этой же расы могут нажать свое действие из социалок и получить таргет, который был установлен. Проверять таргет конкретной цели идея не очень, лучше небольшой менеджер написать и в нем хранить ассисты
 
Реакции: Die

    Die

    Баллов: 6
    Точно
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
а почему бы не написать банальный скрипт по принципу асиста и не парится...
 
Если я все правильно понял, то для этого нужно:
1) В клиенте добавить 2 новых action`а (если не ошибаюсь, для этого достаточно добавить по строке с определенными данными в ActionName-XX.dat, но возможно я не прав).
2) Обрабатывать эти action`ы при получении пакета RequestActionUse (в многих сборках действия обрабатываются даже не в самом классе RequestActionUse, а в Player.onAction/onActionShift). 1-ый экшн - пометка, на которую будут ссылаться таргеты игроков, которые юзают 2-ой экшн. Для этого достаточно добавить одно свойство Player`у (targetLabel, например), хотя можно еще отправить сообщение мол "Вы пометили *цель*". 2-ой экшн же на подобии обычного ассиста, только цель ассиста уже не брать по текущей цели, а ту, что нужно (пати лидер, лидер расы или т.п.).

Как пример - в Helios есть метки и таргеты по метке в действиях (те самые звездочки-сердечки).
 
Реакции: Die

    Die

    Баллов: 6
    За ответ
На данный момент у меня получилось сделать, что нужно, это вывести action в клиенте, и на сервере, дал возможность героям ставить таргет, а остальные игроки по средсвом 2 action могут его взять. Но проверяя через пакеты с 3 игроками в игре, каждому отправляются пакеты, вот потому и создал тему, чтобы как-то решить данную проблему, просто если в 1 месте даже соберется 50 человек, это каждому будет отправлен этот пакет
 
а потом начнётся адское месиво и сверкание сосок вас не волнует?
 

По одному пакету на человека - это капля в море. Нет ничего критичного, сервер при снятии брони отправляет каждому рядом стоящим тяжеловесные пакеты и прекрасно справляется.
 
Имеешь в виду тот малёхонький пакет RequestActionUse? Так это нормально. Взять, к примеру, тот же TargetSelected: он отправляется всем окружающим в неком радиусе игрокам, когда какой-то другой игрок взял кого-то в таргет.