Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

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

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Информационная доска

Данный раздел предназначен для обсуждения, а также решения технических проблем связанных с серверной частью. Обсуждения касательно игровых клиентов ведутся здесь.

1. Во время создания новой темы аккуратно оформляйте её, не допускайте грамматических ошибок.
2. Описывая проблему старайтесь, как можно больше рассказать о ней, а так же о действиях с сервером после которых она возникла, по возможности подкрепите информацию логами.
3. Если вопрос касается проблемы в работе сервера, то обязательно прикрепляйте список плагинов (введите в консоли сервера: meta list и amxx plugins), настройки server.cfg, логи. Так же указывайте операционную систему, версию HLDS (введите к консоли сервера: version) и где хостится сервер.

Длинную информацию скрывайте под спойлер.

Игроки с флагом, отличным от z на радаре

, В какую сторону копать?
Статус пользователя Yaroslav
сообщение 30.7.2013, 23:22
Сообщение #1


Стаж: 12 лет

Сообщений: 296
Благодарностей: 247
Полезность: 1084

Доброго времени суток.
Собственно сабж. На радаре отображаются красной точкой игроки с флагом, отличным от z.
Не пойму в какую сторону копать, это функция плагина? Все перерыл, не нашел.
Или это задается в entity карты? Брр..

Заранее благодарен за направление по раскопкам :)
Извините, если создал тему не там.

Отредактировал: Yaroslav, - 30.7.2013, 23:22
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Surf
сообщение 31.7.2013, 0:47
Сообщение #2


Стаж: 14 лет

Сообщений: 1089
Благодарностей: 501
Полезность: 583

список плагинов в студию
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.7.2013, 1:18
Сообщение #3
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Для этого используются месседжи:
  • HostageK/HostagePos
  • BombDrop/BombPickup
  • Radar - работают только для тиммейтов
Как применять:
Код:
new MsgHostagePosID

public plugin_init() {
MsgHostagePosID = get_user_msgid("HostagePos")
}

ShowDot( id, <> ) {
message_begin(MSG_ONE_UNRELIABLE, MsgHostagePosID, .player = id )
<>
message_end()
}

Описания месседжей и их форматы описаны в Half-Life 1 Game Events.

Отредактировал: Safety1st, - 31.7.2013, 1:19
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Yaroslav
сообщение 31.7.2013, 17:22
Сообщение #4


Стаж: 12 лет

Сообщений: 296
Благодарностей: 247
Полезность: 1084

Цитата(Surf @ 31.7.2013, 2:47) *
список плагинов в студию

Серф, при всем моем уважении к Вашим постам, в моем случае данное действие не даст результата.
Все плагины либо написаны с 0, либо переработаны. Ну за исключение Amx Bans и 2-3 дефолтовых. Но спасибо, что откликнулись :)

Цитата(Safety1st @ 31.7.2013, 3:18) *
Для этого используются месседжи

Спасибо большое, вы натолкнули меня на старые грабли - тут:
Скрытый текст
Код:

message_begin(MSG_ALL, get_user_msgid("ScoreAttrib"))
write_byte(id)
write_byte(4)
message_end()


Причем решение для части этого вопроса, я нашел для себя достаточно простым:
Скрытый текст

Код:

if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
HasC4[id] = true;
else
HasC4[id] = false;

//трам-пам-пам

if (HasC4[id])
{
give_item(id,"weapon_c4")
cs_set_user_plant(id,1,1)
}


или проще:
Скрытый текст

Код:

HasC4[id] = (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)


Видимо это вторая часть проблемы и решения для нее я пока не вижу.

Отредактировал: Yaroslav, - 31.7.2013, 17:32
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
XyLiGaN
сообщение 31.7.2013, 18:07
Сообщение #5
Стаж: 13 лет
Город: Югорск

Сообщений: 11668
Благодарностей: 6450
Полезность: 1052

Меценат Меценат

точки на радаре это игроки вип... у них моделька другая тоже... и это не изменить если только движок не переписать... если честно напрягает...
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Yaroslav
сообщение 31.7.2013, 18:29
Сообщение #6


Стаж: 12 лет

Сообщений: 296
Благодарностей: 247
Полезность: 1084

Цитата(XyLiGaN @ 31.7.2013, 20:07) *
точки на радаре это игроки вип... у них моделька другая тоже... и это не изменить если только движок не переписать... если честно напрягает...

Признаться, была такая мысль, все спихнуть на движок Gold Src и алгоритм обработки team(id) == 1, написанный через пятую точку. Но.
Долгое прочтение архивов оленей привело меня к мысли, что именно:
Код
write_byte(id)
write_byte(4)

вызывает следующие конвульсии сервера:
1. Не отображается на радаре бомба (если она у игрока с флагами, отличными от Z), пока её не выбросить и не поднять.
2. Показывает тиммейт игроков с флагами, отличными от Z на радаре красной точкой (у обоих комманд).
3. Ну и понятно, не показывает attr=VIP живым TT в Score Atr.

P.S. (не Вам)
Мой фикс 1 пункта я специально не дописал, скрыв функции в "трам-пам-пам", чтобы те, кто не хочет думать и не понимает написанного бездумно не дергали код.

Отредактировал: Yaroslav, - 31.7.2013, 18:54
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Safety1st
сообщение 31.7.2013, 23:37
Сообщение #7
Стаж: 14 лет
Город: Moscow

Сообщений: 7228
Благодарностей: 8071
Полезность: 196

Yaroslav, на всякий случай: какая вам сейчас помощь требуется? У меня голова туго соображает из-за недосыпа, не въезжаю)
В любом случае, если знаете English - лучше просить помощи у pro на AM, а не тут.

Отредактировал: Safety1st, - 31.7.2013, 23:37
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Yaroslav
сообщение 1.8.2013, 14:06
Сообщение #8


Стаж: 12 лет

Сообщений: 296
Благодарностей: 247
Полезность: 1084

Цитата(Safety1st @ 1.8.2013, 1:37) *
Yaroslav, на всякий случай: какая вам сейчас помощь требуется? У меня голова туго соображает из-за недосыпа, не въезжаю)
В любом случае, если знаете English - лучше просить помощи у pro на AM, а не тут.

Да я думал, может кто придумал костыль, как закрыть красные точки от этих игроков. Но видимо нет.
На АМ не хочу пока, там странные люди, меряющиеся валидностью кода и страдающие текстовыми припадками :)
Значит будем ждать выходных у Маздана :)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: