|  | Страницы (271):   « Первая ...   «   171  172  173  174  [175]  176  177  178  179  » ... Последняя » Показать все 4063 сообщений этой темы на одной странице | 
HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Нубские вопросы от <censored> и других нубов (https://hlfx.ru/forum/showthread.php?threadid=4535)
Ku2zoff в БХЛ есть разные анимации для барников, даже для РПГ, делал у себя чтобы они были вооружены разным оружием - с РПГ это получается ультимативный тимкиллер, союзник похуже любого врага  
 
А если враг подойдет то и себя до кучи на воздух отправит. 
Кстати по приколу загрузил в фрагмоушене бег от хранта зомбику, анимация не считая неподходящих пропорций, по поворотам более менее нормально встала, я удалил у всех костей кроме Bip01 кадры отвечающие за перемещение костей, оставив кадры поворотов, и оно еще более менее норм вышло, развернул руки вперед, и с бегом зомбики даже как-то расцвели, они совсем по другому ощущаются когда вместо того чтобы лениво тащится они бегут да и еще резво, правда сильной угрозы все равно не представляют, без гейтсеквенций любой монстр каким он быстрым бы не был догнав останавливается, и пока замахнется игрок уже отойдет, и пока можно бежать назад он не может нанести урон, но для других НПС они стали куда опасней, да и выглядят куда угрожающее.
Добавлено 19-11-2020 в 22:10:
Насчет НПС с базуками, в Свен Коопе заметил что солдаты там тоже как игрок юзают лазерный прицел.
Вам, наверно, нужна отдельная тема по редактированию ИИ в халве\ксаше. 
А так все это звучит и выглядит классно. Реально монстров надо прокачивать. А это это действительно нынче сильно бросается в глаза. Меня вот заботит такая трабла: надо сделать так, чтобы монстры шли друг за дружкой в плотной толпе, как зомби в лефте или киллинг флуре. А то они ждут, пока один дойдет до точки или сдохнет и только после этого начинают идти. А это печаль. Это хотя бы в теории можно реализовать?
__________________
Killing Floor: Horzine Outbreak
А если просто убрать другого монстра из списка препятствий, чтобы монстр пытался просто пройти дальше? Если вся толпа будет так идти, то зацепов не должно быть
__________________
Killing Floor: Horzine Outbreak
KorteZZ Возможо они будут ходить друг через друга
Lev я думаю они просто начнут толкаться
Crystallize Кстати да, ббоксы никто не отменял.
В Killing Floor'e они постоянно пытаются пройти вперед, даже когда перед ними стоит целая толпа монстров) Постоянно проигрывается анимация ходьбы. Хотя из-за этого они начинают порой застревать в дверях. Особенно в узких, одиночных, не пропуская друг-друга.
__________________
Killing Floor: Horzine Outbreak
Плиз хелп. Делаю энтитю выпускающую шары наподобие ХЛ2 (prop_combine_ball). Энтитя 1 (спаунер) создает энтитю 2 (шар). Направление Шара задается через angles Спаунера (сделал). Также Спаунер задает начальную велосити Шара.
Шар представляет собой спрайт с осязаемым боксом (util_setsize).
Шар создается и летит. А потом начинаются проблемы. Я не могу сделать отскок! Попытался сделать наподобие шаров нихиланта (они там тоже отскакивают), но что-то не то. Смотрел как сделано в ксаше отражение лучей от поверхностей. Делал по подобию, но все равно не получается. Тут какая-то математика, а я в ней честно сказать не силен.
Спаунер :: Use
| 1 | ........... | 
| 2 | UTIL_MakeVectors ( GetAbsAngles() ); | 
| 3 | Vector vecShootDir = gpGlobals->v_forward; | 
| 4 | Vector Angle = UTIL_VecToAngles(vecShootDir); | 
| 5 | 
| 6 | CBaseEntity *pBall = Create( "env_ballentity", GetAbsOrigin(), Angle); | 
| 7 | pBall->SetAbsVelocity( gpGlobals->v_forward * 400 ); | 
| 1 | ............ | 
| 2 | UTIL_SetSize( pev, Vector(-4,-4,0), Vector(4,4,4) ); | 
| 3 | SetTouch( BounceTouch ); | 
| 4 | m_vecIdeal = Vector( 0, 0, 0 ); | 
| 1 | void CEnvBallEntity::BounceTouch( CBaseEntity *pOther ) | 
| 2 | { | 
| 3 | Vector m_vecIdeal = GetAbsVelocity(); | 
| 4 | m_vecIdeal = m_vecIdeal + (m_vecIdeal - GetAbsOrigin()).Normalize() * 100; | 
| 5 | 
| 6 | Vector vecDir = m_vecIdeal.Normalize( ); | 
| 7 | TraceResult tr = UTIL_GetGlobalTrace( ); | 
| 8 |   float n = -DotProduct(tr.vecPlaneNormal, vecDir); | 
| 9 | vecDir = 2.0 * tr.vecPlaneNormal * n + vecDir; | 
| 10 | m_vecIdeal = vecDir * m_vecIdeal.Length(); | 
| 11 | SetAbsVelocity(m_vecIdeal); | 
| 12 | } | 
__________________
Мой мод на Xash
Aynekko, а зачем ты вычитаешь позицию из скорости? Убери вторую строчку из BounceTouch и должно заработать.
Ну и определись m_vecIdeal у тебя локальная переменная функции или составная часть объекта. У тебя сейчас получается перекрытие символа.
__________________
I'm on github
I'm on opendesktop.org
FreeSlave, без второй строчки они просто исчезают в стене. Я сделал три спаунера под разными углами (вверх, вбок, вверх по диагонали 45 градусов). Все три исчезают. Если строчку оставить, то они адекватно реагируют на толкание игрока, летят куда толкаешь. А от стены не отскакивают. Прилипают и летят судя по всему на origin мира вдоль стен.
| 1 | Vector m_vecIdeal = pOther->GetAbsVelocity(); // поменял эту строчку | 
| 2 | m_vecIdeal = m_vecIdeal + (m_vecIdeal - GetAbsOrigin()).Normalize() * 100; | 
| 3 | SetAbsVelocity(m_vecIdeal); | 
| 4 | Vector vecDir = m_vecIdeal.Normalize( ); | 
| 5 | TraceResult tr = UTIL_GetGlobalTrace( ); | 
| 6 | float n = -DotProduct(tr.vecPlaneNormal, vecDir); | 
| 7 | vecDir = 2.0 * tr.vecPlaneNormal * n + vecDir; | 
| 8 | m_vecIdeal = vecDir * m_vecIdeal.Length(); | 
 
 | m_vecIdeal = m_vecIdeal + (vecTarget - GetAbsOrigin()).Normalize() * 100; | 
| SetAbsVelocity( m_vecIdeal ); | 
__________________
Мой мод на Xash
Может лучше SetLocalVelocity поставить?
Добавлено 28-11-2020 в 12:18:
Но вообще да, вторая строчка или совсем не нужна или нужна, но в другом виде, впрочем без нее должно работать, но шар будет утопать в стене до точки оригина.
Добавлено 28-11-2020 в 12:20:
У тебя там где GetGlobalTrace надо взять trace_endpos и отнять от позиции шара и считать отскок с этим оффсетом.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
 
 
Проблема решилась одной строчкой
| #define MOVETYPE_BOUNCEMISSILE 11 // bounce w/o gravity | 
__________________
Мой мод на Xash
Ну это ты просто заюзал встроенный тип физики. Но можно было и самому сделать.
__________________
My Projects: download page
F.A.Q по XashNT
Блог разработчика в телеграме
C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'
| Временная зона GMT. Текущее время 02:33. | Страницы (271):   « Первая ...   «   171  172  173  174  [175]  176  177  178  179  » ... Последняя » Показать все 4063 сообщений этой темы на одной странице | 
  На основе vBulletin версии 2.3.0
  Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
  Дизайн и программирование: Crystice Softworks © 2005 - 2024