fm_fakedamage неправильно выставляет dmg flag
|
|
slogic | Дата: Четверг, 01.03.2007, 13:48:33 | Сообщение # 1 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Точнее вообще не выставляет. Все время DMG_GENERIC приходит в Damage сообщении, в котором параметр take_dmg <> 0.
|
|
| |
VEN | Дата: Суббота, 03.03.2007, 15:42:05 | Сообщение # 2 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Я уверен, что это некорректное утверждение - на практике, насколько мне не изменяет память, отображались различные HUD dmg-иконки, что свидетельствует о том, что dmg type передается клиенту корректно.
|
|
| |
VEN | Дата: Воскресенье, 04.03.2007, 11:18:02 | Сообщение # 3 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Кстати, вот, что говорят о dmg type:Quote (sawce) | Most mods do not * follow the standard HLSDK damage flags, so * you may have to do some testing! * The only flags I figured out were CS related: * * (16) = no slowdown on damage * * (113) = always gib * * (112) = never gib | Детали: http://amxmodx.ucoz.ru/forum/12-280-1 Прим.: форум явно недолюблювает открывающиеся треугольные скобки.
Сообщение отредактировал VEN - Воскресенье, 04.03.2007, 11:20:55 |
|
| |
slogic | Дата: Вторник, 06.03.2007, 12:30:51 | Сообщение # 4 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Кстати, а почему ты в плагине Empty Weapon Throw (зря ты его не опубликовал) при перехвает DeathMsg опять устанавливаешь короткое имя оружия? Ты же его передаешь в user_damage(). Значит при отлдаке плагина тоже столкнулся с тем, что некорректно формируется сообщение?
|
|
| |
VEN | Дата: Вторник, 06.03.2007, 13:27:13 | Сообщение # 5 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Просто как бы для "акцентирования" (самому себе и другим).
|
|
| |
slogic | Дата: Среда, 07.03.2007, 11:22:19 | Сообщение # 6 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Не надо акцентировать. Надо писать эффективный код. Зачем делать то, чего не надо? Странно, это же не обучающий вроде пример был. Или я не прав? =)
|
|
| |
VEN | Дата: Среда, 07.03.2007, 14:11:24 | Сообщение # 7 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Точно не помню, но мне кажется, я просто не захотел на 100% доверять существующему поведению. Решил, что кодер все-таки должен устанавливать "орудие" именно в конечном сообщении, тем более что hook был как раз "под рукой". Почему я так решил? Немного уйдем от конкретного случая. Практика показывает, что не во всех случаях attacker/inflictor classname передается в качестве "орудия" DeathMsg, а, как известно, в некоторых ситуациях такое сообщение вобоще не генерируется. Учитывая такую специфичность считаю ссылку на эффективность не достаточно уместной. Также понятие эффективности стоит обсуждать очень аккуратно. Простой пример: "бутерброд с ветчиной" изменил inflictor/attacker index - в DeathMsg отправляется другое "орудие". А насчет обучающего - каждый сам решает. Например, для меня обучающими зачастую были скрипты, авторы которых соображали, что творили. Когда я учился, wiki, tutorial'ов и пр. как таковых не было, зато сейчас многим подавай подробное руководство "как стать кодером".
Сообщение отредактировал VEN - Среда, 07.03.2007, 14:32:36 |
|
| |
slogic | Дата: Пятница, 09.03.2007, 11:50:58 | Сообщение # 8 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| У меня теперь есть док-во. Скачай скрипт отсюда: http://amxmodx.ucoz.ru/forum/17-103-1 Забинди команду damage_me на что-нибудь удобное. Убей себя. Флаг DMG_FALL в Damage с реальным уроном НЕ передается.
Сообщение отредактировал slogic - Пятница, 09.03.2007, 11:51:22 |
|
| |
VEN | Дата: Пятница, 09.03.2007, 17:37:01 | Сообщение # 9 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Уф, fm_fakedamage тут абсолютно не причем, просто клиенту передаются только те dmg типы, на которые у него есть иконки. См. тест-скрипт для деталей.
Сообщение отредактировал VEN - Понедельник, 12.03.2007, 11:25:15 |
|
| |
slogic | Дата: Пятница, 09.03.2007, 19:30:28 | Сообщение # 10 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Чушь какая-то. Тип нужен только для отрисовки иконок?! DMG_BURN передавался когда я убивал себя с пом. airstrike на crossfire.
|
|
| |
VEN | Дата: Пятница, 09.03.2007, 20:15:06 | Сообщение # 11 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Думаю, это специфика CS мода (или engine? - не пробовал в HLDM).
|
|
| |
VEN | Дата: Понедельник, 12.03.2007, 11:29:25 | Сообщение # 12 |
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Статус: Не в сети
| Quote | Тип нужен только для отрисовки иконок?! | Скажем, сумма dmg типов, которые передаются клиенту через Damage msg нужна только для отрисовки иконок, но "реальная" сумма dmg типов отличается от "клиентской" суммы. Чтобы отследить "реальную" сумму, можно, например, использовать "бутерброд с ветчиной". Quote | DMG_BURN передавался когда я убивал себя с пом. airstrike на crossfire | Может, это был napalm-strike. :] EDIT: Для Damage msg: DMG_SONIC -- number_3 иконка (см. sprites/hud.txt) DMG_MORTAR -- number_2 (1<<30) - number_1 (1<<31) - number_4
Сообщение отредактировал VEN - Понедельник, 12.03.2007, 11:58:29 |
|
| |
slogic | Дата: Понедельник, 12.03.2007, 11:54:14 | Сообщение # 13 |
Генералиссимус
Группа: Админы
Сообщений: 1941
Статус: Не в сети
| Quote (VEN) | Может, это был napalm-strike. :] | На half-life.ru почему все называют это ядерным ударом. Так что у кажого своя правда.
|
|
| |