|
Новичкам Информация для всех новичков, новичкам рекомендуется задавать свои вопросы здесь |
|
Опции темы | Поиск в этой теме | Опции просмотра |
05.05.2011, 12:23 | #1 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Вопросы по боунд радиусам и SPLINEFLAG_FLYING в мувмент генераторах.
Добрый день.
Всем кому не лень потратить немного времени на ответы на нубовопросы - заранее спасибо. Вопрос первый - касательно боунд радиусов. Фактически столкнулся с такой ситуевиной, когда определенные боссы, мобы - достаточно крупных размеров фактически обрабатываются как по большему БР, нежели имеется у их 3д модели. Как пример гидра из БФД, или Ониксия. Фактически для облучивания тушки этот вопрос ценности никакой физической не несет.. Но скажем находясь в зоне от 8 до 25 ярдов нельзя чарджнуться, сразу прочтем сообщение о том, что цель слишком близко. + ко всему бой происходящий по мили, касты не рассматриваю даже, выглядит несколько нелепо. Тот - же танк стоит в ярдах 40 от боунда Ониксии и преспокойно лупцует оню, как и оня танка, ближе подходить ей не к чему. Хотя все действо по сути должно происходить непосредственно у боунда, перед лапами драконихи. В какую сторону рыть с некорректными боундами, нужно направление. Вопрос второй. Касательно - SPLINEFLAG_FLYING, на примере той-же ониксии возьмем. С наступлением летной фазы все ок, включается поинт мувмент геренатор, ониксия летает по заранее заданным точкам. Но тут есть одно но. Как только оня остается без дела, фактически флаг с нее спадает. Сперва мне говорили про спадающую анимацию полета, мол Оня стоит в воздухе как на земле, но поскольку использую мувмапы, сразу становится видно, что происходит пересчет Z координаты после достижения финальной точки. Имею мнение, что данный момент связан конкретно с финализацией передвижения по мувгену, в прочем как и по остальным генераторам, ведь в бою в воде мы наблюдаем примерно схожую ситуацию со спадением флага. На примере поинт мув гена. Код:
template<class T> void PointMovementGenerator<T>::Finalize(T &unit) { unit.clearUnitState(UNIT_STAT_ROAMING|UNIT_STAT_ROAMING_MOVE); if (i_destinationHolder.HasArrived()) MovementInform(unit); } Ну примерно на словах, без кода - просто голая идея. но добавить в эту часть дополнительный проверки на из ин вотер и из флай. по з координате до террейна. И именно с насильным сохранением как флага так и положения на последней точке? Или же я слишком ничего не понимаю? В любом случае реквестирую помощь, любым ответам буду рад.
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
05.05.2011, 19:07 | #2 |
Ученый
Регистрация: 17.11.2010
Сообщений: 204
Сказал(а) спасибо: 40
Поблагодарили 20 раз(а) в 14 сообщениях
Записей в дневнике: 1
|
Данная проблема довольно серьезная и старая.
Как пример босс Moam, бьющий за 100км в мили, не желающий подходить поближе.
__________________
Ололо, мангос сила :D |
05.05.2011, 20:21 | #3 |
Умный
Старожил
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
|
1) С этими параметрами игрались?
2) Может стоит не снимать флаг SPLINEFLAG_FLYING до возвращения таких НПС на место? |
05.05.2011, 20:58 | #4 | |
Ученый
Регистрация: 17.11.2010
Сообщений: 204
Сказал(а) спасибо: 40
Поблагодарили 20 раз(а) в 14 сообщениях
Записей в дневнике: 1
|
Цитата:
2) хз
__________________
Ололо, мангос сила :D |
|
05.05.2011, 22:06 | #5 |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
Да ты что? Этими параметрами можно пофиксить имба боунд у хаккара в зг.
__________________
SpellWork Qt4 |
06.05.2011, 04:16 | #7 | |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Цитата:
2 - флаг спадает сам. Непонятно по какой особой причине. Если моб кастует на игрока, то полет есть, оня бьется крыльями в агонии пуляя фаербол. Если передвигается по поинтам - флаг работает. Если долетела до точки - бухается пузом. При учете, что сам флаг насильно снимается только на 3ей фазе, когда у они осталось менее 40% вроде. До этого она летает как оголделая по фазе. За исключением конечной позиции в которой идет простой!
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 Последний раз редактировалось BloodWarrior; 06.05.2011 в 04:34. |
|
06.05.2011, 20:29 | #9 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
1 - поиграюсь бесспорно, за это спасибо.
2 - во время бездействя моба он сам падает, хз почему) В скрипте он насильно прописан на всю фазу. Именно в период пассивности и бездействия. Думал это мувмент генераторы, расширить пофлагово на стоп и на конечную обработку - не вканало) Вообще странная работа с этими флагами по манго. Взять тех же самых мурлоков в любом болоте. До того как начинаем с ними биться они красиво плавают, только таскать их, махинировать существами, так визуализация плаванья пропадает, начинается поиск з координаты на террейне при каждой остановке в движении на конечном поинте и фейд до уровня дна и снова поднятие до плеера)
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
07.05.2011, 07:34 | #11 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Ммапсы еще как использую.
Благодаря этому азговор о у ониксии нет анимации полета когда она останавливается она стоит в воздухе как на земле перетек в другое русло. Флаг полета слетает и прет пересчет. А если поставить насильно в базу. Она ведь тогда будет зараза вечно летать)
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
07.05.2011, 22:54 | #12 |
Умный
Старожил
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
|
1) ммапсы не до конца отточены - именно они могут быть причиной твоего бага. Попробуй вообще без них. Именно скомпилированный без них сервер, а не просто отключенные. Если ошибки не будет на "чистом" - тогда к разрабам ммапс писать
2) Не должна вечно летать. Если скрипт грамотный - он должен в подходящее время снимать флаг и совсем не важно, где он был изначально выставлен - в базе или в самом скрипте. |
08.05.2011, 06:58 | #13 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
KiriX
Как я написал в самом начале: Сперва мне говорили про спадающую анимацию полета, мол Оня стоит в воздухе как на земле, но поскольку использую мувмапы, сразу становится видно, что происходит пересчет Z координаты после достижения финальной точки. Это какбе подтверждает наличие бага и без ммап. Просто визуально Оня стоит в воздухе. И не происходит получение з координаты новой на земельке. Но стоит на 4х лапах. Стои как на земле и стоит без анимации. В ммапах тут явно нет проблемы. Как нет проблемы со спадающим свимом у мурлоков в воде которые вошли в бой и начинаеш их таскать. Тоже вечные пересчеты. Все это указано еще с самого начала. Про базу попробую просто ради интереса.
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
09.05.2011, 05:40 | #15 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
KiriX
А что для Вас аргумент?) До сервера добраться и тестонуть с изменениями не могу. Но разве - становление ониксии в воздухе на 4 лапы как на твердой поверхности только в воздухе не аргумент? Или вечные попытки получить земельку у плывущего за вами и бьющего вас мурлока в любом водоеме, тоже? На сервере буз мувмап. Правда в подобных случаях это называют - отсутствием анимации. ---- Так, же луркал в инфо по базе и нашел примерно следующее. ПРИМЕЧАНИЕ: MONSTER_MOVE_SPLINE_FLY = MONSTER_MOVE_WALK + MONSTER_MOVE_SPLINE и существо сможет летать от точки к точки. Про поведение между точками в момент простоя ничего не говорится.
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 Последний раз редактировалось BloodWarrior; 09.05.2011 в 06:49. |
09.05.2011, 09:23 | #16 |
Ученый
Регистрация: 02.04.2010
Сообщений: 237
Сказал(а) спасибо: 41
Поблагодарили 99 раз(а) в 44 сообщениях
|
Написал бы что ты про MangosZero.
В нем код Код:
m_creature->SetByteValue(UNIT_FIELD_BYTES_1, 3, UNIT_BYTE1_FLAG_ALWAYS_STAND | UNIT_BYTE1_FLAG_UNK_2);
__________________
SpellWork Qt4 |
09.05.2011, 10:26 | #17 | |
Ученый
Регистрация: 09.03.2010
Адрес: Кыргызстан
Сообщений: 266
Сказал(а) спасибо: 41
Поблагодарили 115 раз(а) в 34 сообщениях
|
Цитата:
|
|
09.05.2011, 11:05 | #18 |
Новичок
Регистрация: 07.04.2010
Сообщений: 25
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
|
зачем ставить анимацию вручную? анимации(большинство анимаций) определяются клиентом по мувимент флагам.
Насколько я знаю, для полета достаточно добавить MOVEFLAG_HOVER флаг(в MovementInfo) и вызвать SendHeartBeat Последний раз редактировалось Forgotten; 09.05.2011 в 12:12. Причина: надеюсь это "мечение бисера" будет не впустую |
09.05.2011, 11:42 | #19 | |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
Цитата:
Все равно у меня на сервер кроме меня еще только 1 чел заходит, для меня особой разницы нет упадет ли оня на землю получив корректную з координату без полета или нет. Просто как-то это нетак) Вот и пытался понять в чем тупка) И как исправить)
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
|
09.05.2011, 16:37 | #20 |
Умный
Старожил
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
|
Если оня при возвращении на поинт зависает высоко вверху - тут проблема в чём-то ином, т.к. она должны вернутся в точку респа по всем координатам, включая x, y, z и даже о.
|
09.05.2011, 17:28 | #21 | |
Ученый
Регистрация: 09.03.2010
Адрес: Кыргызстан
Сообщений: 266
Сказал(а) спасибо: 41
Поблагодарили 115 раз(а) в 34 сообщениях
|
Цитата:
Собственно нужно сделать в ядре функцию, вроде STAND_CUSTOM, (для червей это закапывание в землю, при установке нормального флага червь вылезает из земли.), которая будет при установке воспроизводить анимацию fly_up, после поднимет модель на 5 метров и будет отвечать за воспроизведение анимаций FLY. И наоборот, убираем, модель снижается, воспроизводится анимация fly_down. При наличии этого флага ммапс игнорирует Z координату и не мутит ничего левого. Последний раз редактировалось MaxXx2021; 09.05.2011 в 17:38. |
|
10.05.2011, 01:33 | #22 |
Новичок
Регистрация: 07.04.2010
Сообщений: 25
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
|
HOVER мув. флаг это не просто анимация, при включении воспроизводится нужная fly_up и переход в hover анимацию.
Вы хотите вручную ставить fly_up, затем hover при взлете и fly_down при снятии(приземлении)? Можно, но имхо это велосипед. Не все анимации можно заменить мув. флагами, но я за более простой путь Последний раз редактировалось Forgotten; 10.05.2011 в 01:39. |
10.05.2011, 03:14 | #23 | |
Ученый
Регистрация: 09.03.2010
Адрес: Кыргызстан
Сообщений: 266
Сказал(а) спасибо: 41
Поблагодарили 115 раз(а) в 34 сообщениях
|
Цитата:
Последний раз редактировалось MaxXx2021; 10.05.2011 в 03:28. |
|
10.05.2011, 04:17 | #24 |
Новичок
Регистрация: 07.04.2010
Сообщений: 25
Сказал(а) спасибо: 1
Поблагодарили 2 раз(а) в 2 сообщениях
|
Да мы говорили о разных анимациях.
Попробуйте найти hover анимацию у валькирии. Вы не найдете ее, но найдете похожую fly_stand с другим номером. Мало того - модельки некоторых анимаций не содержат(сравните dragon.m2 и dragononyxia.m2). Я к тому что работать c анимациями чаще всего дело клиента, чем сервера. В случае ониксии(отдельная модель) возможно действительно нужно вручную выставлять некоторые анимации. Последний раз редактировалось Forgotten; 10.05.2011 в 04:24. |
10.05.2011, 05:15 | #25 | |
Ученый
Регистрация: 09.03.2010
Адрес: Кыргызстан
Сообщений: 266
Сказал(а) спасибо: 41
Поблагодарили 115 раз(а) в 34 сообщениях
|
Цитата:
|
|
22.05.2011, 15:16 | #26 |
Ученый
Регистрация: 08.05.2010
Адрес: Новокузнецк
Сообщений: 141
Сказал(а) спасибо: 32
Поблагодарили 21 раз(а) в 9 сообщениях
|
HOVER в принципе был бы великолепен, работай он еще в классике)))
__________________
MZero - z1686 SDZero - z0354 - 17.05.2011 |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопросы по использованию Git | anvd24 | Новичкам | 21 | 25.01.2012 09:17 |
[11384] Use SPLINEFLAG_FLYING for flying creatures, SPLINEFLAG_UNKNOWN7 is never used. Simplify Map: | newsbot | CMaNGOS Commits | 0 | 20.04.2011 03:00 |
Вопросы по базе | Mediv | MaNGOSZero (1.12.X) | 10 | 13.04.2011 04:31 |
Вопросы от новичка | Archon64 | MaNGOSZero (1.12.X) | 6 | 04.05.2010 13:25 |