Как сделать так, чтобы трассирующие пули не были видны автор
|
|
slogic | Дата: Воскресенье, 17.12.2006, 18:05:26 | Сообщение # 1 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Сейчас это реализуется так: Code | MESSAGE_BEGIN(MSG_PAS, SVC_TEMPENTITY,start); WRITE_BYTE(TE_TRACER); WRITE_COORD(start.x); WRITE_COORD(start.y); WRITE_COORD(start.z); WRITE_COORD(end.x); WRITE_COORD(end.y); WRITE_COORD(end.z); MESSAGE_END(); | MSG_PAS - как я понял означает, что сообщение отправляется только тем, кто слышмт звук выстрела (что-то в этом роде). А можно ли, используя одну рассылку, не отправлять это сообщение (или блокировать) стреляющему?
|
|
| |
VEN | Дата: Пятница, 29.12.2006, 18:07:18 | Сообщение # 2 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| IMHO: no, audible msg "по-любому" для trace owner'a "проскочит" по логике вещей.
|
|
| |
slogic | Дата: Пятница, 29.12.2006, 18:55:48 | Сообщение # 3 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| По одному отправлять тогда? Т.е. MSG_ONE использовать? Интересно, насколько это получится медленнее.
|
|
| |
VEN | Дата: Пятница, 29.12.2006, 23:21:51 | Сообщение # 4 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Да нормально, главное, что для клиентов по "тяжести" равносильно с MSG_ALL, а для сервера не так критично.
|
|
| |
slogic | Дата: Среда, 03.01.2007, 12:58:04 | Сообщение # 5 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Но ведь MSG_PAS эффективнее MSG_ALL, т.к. фильтрует игроков. Можно нечто подобное реализовать с MSG_ONE? Т.е. есть ли функция, которая определяет, может ли видеть трассировку пули тот или иной игрок?
|
|
| |
VEN | Дата: Среда, 03.01.2007, 21:51:38 | Сообщение # 6 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Есть pfnFindClientInPVS и pfnEntitiesInPVS, аналогичных для PAS не существует.
Сообщение отредактировал VEN - Четверг, 04.01.2007, 16:58:54 |
|
| |
slogic | Дата: Четверг, 04.01.2007, 16:55:16 | Сообщение # 7 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Значит самостоятельно определять, виден ли в конусе обзора игрока отрезок тем более не имеет смысла, т.к. проще всем отправить пакеты, чем нагружать FPU.
|
|
| |
VEN | Дата: Четверг, 04.01.2007, 17:08:56 | Сообщение # 8 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Либо я что-то "недогоняю", либо ты путаешь... "Видность" и PAS - это абсолютно разные вещи вообще-то. :-/ PAS - potentially audible set. Причем тут "видность"? PVS (potentially visible set) и то больше сюда "вписывается", но заметь "potentially" - оно все "портит", это не "actually" visible set, поэтому опять таки - разные вещи.
|
|
| |
slogic | Дата: Четверг, 04.01.2007, 17:34:46 | Сообщение # 9 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Да я ушел уже от PAS, PVS. Вообще непонятно почему PAS используется вместо PVS в плагине AXN. Просто я думал как мне самому отсеять этих игроков и имеет ли смысл. Если сервер шустрый, то навреное имеет, т.к. меньше пакетов по сети будет передаваться и меньше лаг будет.
|
|
| |