Задачи: 1. Местоположение (нужен массив на 300-1000 поинтов по городу). 2. Вставка голубя, создание стаи. 3. Анимация голубя. реагирование на раздражители. 4. Прочие проблемы. Проблемы: а) место должно быть осмысленное, чтобы не было здесь никаких моделей наставлено, желательно - не на дорогах, рассматривается только террайн (не гнезда на деревьях), а идеальные места - на тротуарах; б) оптимальный метод создания массива и выборки нужного поинта; в) вставлять как актор ли или модел_объект, стая дупкликатная или некая иная; г) расстановка стаи, и чтобы голуби как-то реагировали друг на друга и не проходили насквозь чего-нибудь; д) осмысленное перемещение голубя (и по земле и по воздуху - траектория\скорость), чтобы не летал сквозь здания; е) назначение анимаций - в зависимости от раздражителей. Решения: - имеет место основному принципу быть одному из двух: вставлять в трафик или нет. 1. Вставка в трафик. Спец гуль_трафлист сделать можно или разбавить имеющиеся трафлисты гуль-моделью. а) Решается проблема поинтов(правда голуби будут переходить улицы и ездить в трамваях если им удастся лол). б) Решается проблема вставки. копить стаю, правда, трудновато. но гдето ж есть плотность каждого педика. в) Проблему анимации решаем вклейкой анимаций голубя в нужные педоанимки. с поведением проблем нет. Но! Проблема еще: хождение - это будет самая массовая анимка, а хождение голубя нам не очень часто-то нужно. д) Проблема саундов когда заговариваешь с челами в трафике: Сделать бы так что например с бабами можно говорить а с мужиками - нет. Если 4дс_трафкода нету то педик - баба вроде. так - не замолчать ее ибо. Или же сделать так чтобы имеено голубь не имел юзалки хотя бы. Нужно найти от чего зависит юзалка у педиков. Или на крайняк можно просто занулить все ж\или\м педосаунды(или екзе_лист их подтереть). Короче итого в моде будет нескоко днц с трафлистами...или один большой гульлист... Потом..замена или доп.пак саундов.ваф Анимки со вклеенным гулем во все нужные мужиков или баб(у баб меньше наверна). Мод весить немного будет. Еще проблема перемещения\стояния есть небольшая А несколько бОльшая проблема - в скорости ходьбы Скорость наверна в екзе задана 2. Не вставлять в трафик, а иметь актор(енеми_дефинишен). Преимущества: имеем полноценный челоскриптинг. т.о. по минимуму имеем 1 актор челогуля со скриптом в сцене2 или в дифке. а) решение поинтов: можно брать фрейм п_траф_елема в радиусе 50...100м и туда сетплейсить гуля. при этом фактически не теряем все преимущества поинтметода вставки в трафик. [а можно также еще вариант - прописать в таксипасе чангемодел на гуля и прочее - это способ через таксипас.] б) решение стаи: например имеем группу акторов(до 5ти) сразу с рнд выборкой их кол-ва перед сетплейсом. или заюзать дупликат. бехавиор его устраивает нас. но скрипт тока на исходном гуле висит тогда. но можно так же заюзать создание группы, и еси мы одного пнем, то взлетит(запаникует) вся стая. в) решение анимаций(см. так же коммент1): в принципе, - общая для обоих методов, ибо и там, и там имеем енеми. если имеем актор со скриптом то можно через enemy_changeanim заменить нужные челоанимки. но думаю дупликат такого не поймет к сожалению, хотя у нас так же есть human_changeanim. если управлять через общий скрипт исходного гуля, то имеем набор human_ команд а также enemy_getstate. а можно вообще работать с фреймами. model_playanim делать при определенном enemy_getstate(хотя так же как и human_playanim). но коль имеем актор то лучше чтобы сама мафа переключала анимки в зависимости от поведения. для этого - универсальный способ - вклеить анимки гуля в нужные челоанимки; тогда и не нужно подменять их вовсе. [для этого нужно так или иначе знать их имена. можно уполовинить массив анимок по половому признаку]. г) коли есть актор, то мы имеем human_talk\stop, так что проблем с саундами нету. нет необходимости даже заменять бехавиорные звуки(паники и пр.) - их можно останавливать стопом(тупо в цикле), а и когда нужно - играть свои спецгульсаунды. 3. Не иметь актора. работать напрямую только с фреймом гуля(хотя скрипт нужен, так что имеем либо чело-, либо скрипт-дефинишен). Проблемы: а) фреймы не имеют клипинга, и тогда с ходьбой на горках будет проблема, собственно, этот метод есть частный случай дупликата; а вообще, генерить голубя можно и через model_create, и тогда актора его мы можем не иметь вовсе. б) если голубь-актор или траффголубь в панике полетят вдоль улицы по тротуару(по чекпоинтам), то в случчае с фреймом правильно выбрать направление его взлета будет затруднительно. хотя если взлет почти вертикальный(быстрый), то это почти неважно(за в дом не улетит). Преимущества: - не нужно редактить челоанимки. Комментарии: 1. анимации гуля: а) анимки стояния(без оружия канешно): челоанимок несколько есть, наверняка как минимум 3 штуки. простое стояние енеми - гуль клюет червячков. вместо анимки стояния-оглядывания можно сделать разворот всего гуля. (т.е. клюет-клюет потом хлоп - и поворачивается,смотрит,потом поворачивается обратно и снова клюет). б) анимки ходьбы: ходьба гуля - это мельтешение лапками, небольшое раскачивание по бокам и анимация головы. в) анимки типа когда юзаешь или стоишь на пути гуля могут иметь место быть. надо не забыть. г) анимки паники: скорость перемещения здесь задает екзе в случае с трафгулем, и SPEED - в настройках енеми, если мы имеем актор гуля), и нам лишь нужно задать взлет(дописать в анимку игрек-перемещение тела). для каждой паниканимки можно варьировать такие параметры как: траекторию в целом и - направление\скорость\вертикальность и\или спиральность и\или поворот влево или вправо взлета - в частности. насчет финальной высоты взлета гуля и его полета есть разные варианты: - либо иметь анимки самого полета и посадки, либо пусть в взлетной анимке гуль улетает в епеня безвозвратно и шкалится в ноль. - несколько проще наверно второй вариант. ибо если гуль у нас педик, то при ретурне из паники мы не сможем его приземлить, и он "сядет" мгновенно. - и если в анимках ходьбы не будет шкалинга в 1, то мы "потеряем" фрейм навсегда(если, конечно, мафа не обновит впоследствии трафмодель(с автоанимкой шкалинга в 1(?))), а иначе же трафгуль мгновенно появится в месте ретурна_из_паники, что не есть очень хорошо. - кстати дупликат и модел_креате наверно модель обновляют. Вообще, на проблему утилизации так же не следует забивать. И нужна ли посадка воообще? нужно продумать нужен ли возврат и выполним ли(зависит от имеющихся чело\педоанимок. Например анимок выхода из паники вроде нету, значит с приземлением у нас напряг).....вопрос пока открыт. 2. Допмысли: Кстати в трафанимках деление большее чем просто на м\ж. есть еще ганг\мент. и оное есть хорошо, ибо, навесив на трафгуля код, например, ганга, можно еще более сузить массив челоанимок. а также - массив саундов. Кстати один параметр трафкода не расшифрован. может это и есть наличие\отсутствие юзалки на педике? Кстати актор-метод может плавно перейти в траф-метод через human_returntotraff. Кстати можно сделать стаи кружащих гулей над городом. через самоль_дефинишен. полный автопилот. летяят ууткиии.... кстати можно наделать своих неморфных каких нить журавелей(поскольку а зачем им морфинг тем более в бреющем полете). Кстати на очереди собачки давно хоте_вши_еся мну... Итого... щас мутим пока акторно-дупликатного гуля в п_трфф_елеме... Может, кого-нибудь заинтересует эта идея здесь |