SED 1.0 Helicopter Tutorial


Всем добрый день, с вами Псих, и сегодня я расскажу вам про создание полностью управляемого вертолета. Вам понадобится Player Parenter, длл которого не заменяет стандартную EntitiesMP.dll, поэтому вы можете свободно использовать ее в любом моде/карте. Скачать его вы можете по этой ссылке. Безусловно, вы всегда можете воспользоваться энтитей Vehicle из ХВОХ-мода, однако данный туториал хорош тем, что позволяет создать вертолет без замены Вашей длл, как я уже говорил.


1. Создаем комнату произвольного размера, но желательно так, чтобы там было, где полетать. Я остановлюсь на комнате 300х300х100.


2. Комната есть, теперь нужен вертолет, на котором будем летать. Можете его смоделировать/создать из брашей/нарисовать плоским спрайтом, что угодно. Однако данный туториал предусматривает создание вертолета с управлением полностью от первого лица, поэтому я рекомендую вам остановиться на брашах или моделях.


3. Далее нам потребуется пространство, в котором вертолет будет летать, для этого над созданной комнатой создаем еще одну так, чтобы они соединялись двумя нижними полигонами.


4. У вас должна получиться одна большая комната размерами 300х300х200. Выделяем верхний сектор...


5 ...и настраиваем его следующим бразом.

Мы отключили всю гравитацию в верхнем секторе комнаты, верно.

6. Теперь, когда пространство для полетов готово, размещаем игрока где-нибудь в верхнем секторе.


7. Чтобы игрок не провалился вниз, выделяем нажатием клавиш Shift + ПКМ этот полигон,


8. и снимаем галочку с параметра Passable.


9. А сейчас - внимание! Важная часть туториала. На сцену выходит Player Parenter.
Размещаем его где-нибудь на карте, но желательно рядом с игроком, чтобы не потерять.


10. Настраиваем соответствующим образом Player Parenter.


11.


12. Время разместить на уровне триггер, который запустится при начале игры и активирует Player Parenter. у PlayerStart'a в параметре Target укажите созданный триггер, а у самого триггера параметр Target 01 должен ссылаться на Player Parenter.


13. Тип события (Event Type) должен быть следующим.


14. Теперь пора сажать игрока в вертолет. Прежде всего нужно убедиться, что у Player Parenter'a не включен следующий параметр:


15. Размещаем вертолет так, чтобы игрок находился прямо в его кабине.


16. Фактически, вертолет готов, однако он еще крайне недоработан и багнут. Первый из багов - невозможность нормально на нем полетать, игрока все время как-бы останавливает невидимая стенка. Чтобы устранить это, выделите все полигоны вертолета,


17. и настройте их следующим образом:


18. Теперь вертак может свободно летать под вашим управлением.
ИЗВЕСТНЫЕ ПРОБЛЕМЫ НА ЭТОМ ЭТАПЕ - вертолет летает, но при приближении к краям комнаты он выходит за их пределы. Чтобы этого не произошло, достаточно просто разместить невидимые стены на некотором расстоянии от стенок комнаты. 
Однако, если вам всего этого мало, и вы хотите большего функционала, то вертак можно научить стрелять. Ракетами, лазерами, чем угодно. Чтобы это осуществить, делаем прямо под носом у игрока невидимый браш (Moving Brush),
а лучше коробку вокруг игрока, ведь тогда, если игрок перейдет в режим вида от третьего лица, он не увидит себя в... странной позе мужика, стоящего ногами сквозь сидение.

19. Браш настраиваем следующим образом:

(Не забываем припарентить его к вертолету.)

20-21. Здесь все крайне просто. Не нуждается в разъяснении. Создаем на карте Switch и еще один Trigger. У созданного Moving Brush'a в параметре Switch указываем (Вот неожиданность!) Созданный нами Switch. Его же мы в свою очередь настроим позже.

Вертак можно и протестировать.

22. Просто удостоверьтесь, что созданный нами браш перед игроком присоеден к вертолету.


 23. Все корректно, но перед глазами маячит надпись Use. 


24. Существует множество способов его убрать. Можно, например, сделать ее стопроцентно прозрачной, и игрок ее не увидит. Однако я сделаю ее такой большой, что она просто не поместится на экране и будет невидима. Для этого в параметре Message у Switch'a вводим следующее.


Для тех, кто ленив - вставляем следующее: ^s900BlaBlaBla

 25. Настало время размещать эрупторы по бортам вертака, именно они будут стрелять всякими лазерами/ракетами. 


26. Не забываем присоединить из к вертолету.


27. Настраиваем Spawn time


28. А вот теперь возвращаемся к Switch'y. Создаем новый триггер...

...и нацеливаем на него Switch следующим образом:

29. ON-OFF Target:


30. OFF Target:


31. ON Event Type:


32. OFF Event Type:


33. Создем еще два триггера.
От главного триггера, на которого нацелен Switch, проводим Target 01 к Триггеру А, а от него Target 01 к Триггеру Б. Поясняющий скриншот, чтобы не запутаться:


34. Акцентируем свое внимание на Триггере А.


35. На этой таблице показано, как он должен быть настроен.


36. Теперь переходим к Триггеру Б. Его параметр Wait должен быть равен 0.6


37. Эта таблица показывает настройку Триггера Б.


38. С триггерами все. Переходим к эрупторам. Убедимся, что они правильно настроены. Speed Min я поставлю побольше.


39. Angle обязательно должен быть равен 0, если, конечно, вам не нужна ацццкая дисперсия при стрельбе.


40. Также эрупторы следует сделать невидимыми. Однако если вы просто поставите их размер на 0.0001, или еще что в этом роде, то потом найти их будет проблематично. Разве что только через окно Select Entities. Достаточно просто отключить параметр Active


 41. Вертак теперь абсолютно готов, вы можете на нем летать, стрелять, мочить армии Ментала. Протестируйте еще раз. 
ИЗВЕСТНЫЕ ПРОБЛЕМЫ НА ЭТОМ ЭТАПЕ Существует такой баг, когда монстры просто не атакуют игрока, находящегося в вертолете. Чтобы исправить это, выделите все его полигоны, а также полигоны невидимого браша перед игроком, и поставьте галочку у следующих параметров: 

Translucent
Transparent
Portal


HAVE FUN!



Ну, вот и все, всем спасибо, все свободны, увидимся позже.)


Комментарии   

[Материал]  |  № 29  |  29.09.2014  |  0  
и еще, когда я наблюдаю из нижнего сектора, все, что есть наверху исчезает
Ответ Цитата

[Материал]  |  № 28  |  29.09.2014  |  0  
у меня есть вопрос попроще - как сделать так, чтобы игрок не проваливался сквозь границу гравитаций и при этом через нее пролетали ракеты/лазеры? если отключаем параметр Passable, то ведь и ракеты вниз не пролетят.
Ответ Цитата

[Материал]  |  № 27  |  30.07.2014  |  -1  
Лол, а я для убирания надписи Use в Message оставляю одиночный пробел и всё.
Ответ Цитата

[Материал]  |  № 26  |  24.04.2014  |  0  
Замечательная статья! Но этот заголовок... Что это вообще? Аргонианин ведущий новости? Тогда почему он ведет их с обнаженным торсом? Блин мне это изображение будет в страшных снах сниться. Завязывай ты с этим! (Ну или по крайней мере не выставляй на показ.)
Ответ Цитата

[Материал]  |  № 25  |  16.01.2014  |  0  
Псих, ну ты даешь! Молодчина!
Ответ Цитата

[Материал]  |  № 20  |  06.01.2014  |  0  
Бинго!

Даже более того - от PlayerView можно унаследоваться в дополнительной ДЛЛке и подсунуть игроку этого "мутанта" вместо обычного PlayerView, после чего можно лепить замысловатые вариации парента к игроку без использования мода.
Ответ Цитата

[Материал]  |  № 17  |  05.01.2014  |  0  
Ответ Цитата

[Материал]  |  № 7  |  04.01.2014  |  0  
Ответ Цитата

[Материал]  |  № 8  |  04.01.2014  |  0  
Да, прикольнулся типо.) :D
Ответ Цитата

[Материал]  |  № 4  |  04.01.2014  |  0  
А как из открывшейся ссылки скачать Player Parenter?
Ответ Цитата

[Материал]  |  № 3  |  04.01.2014  |  0  
Оценка выше чем 5+ ставить надо !
Ответ Цитата

[Материал]  |  № 1  |  04.01.2014  |  0  
Молодец. Но чтобы спрятать Eruptor не обязательно изворачиваться, достаточно отключить у него параметр Active. Этот параметр у него от ModelHolder2, и "неактивный" Eruptor сможет стрелять, просто будет невидимым.

А теперь вопрос на миллион долларов. Обычный PlayerParenter прикрепляет объект к нижней части игрока (к ногам). Поэтому, если повернуться на месте, а потом нажать "вперёд", вертолёт очень резко развернётся. Как этого избежать? За правильный ответ - награда.
Ответ Цитата

[Материал]  |  № 2  |  04.01.2014  |  0  
Я не гоняюсь за наградами, и это никак исправить нельзя, а если даже и можно, то я не знаю.
Ответ Цитата

[Материал]  |  № 5  |  04.01.2014  |  0  
А при чём здесь ты? Кто первый правильно ответит - тому и награда.
Ответ Цитата

[Материал]  |  № 6  |  04.01.2014  |  0  
В следующем тексте я опять показываю себя с крайне плохой стороны. Пожалуйста, минусуйте меня, портите мне репутацию, говорите, какой я плохой ящер, вы поступите абсолютно правильно. Нет, серьезно.
Ответ Цитата

[Материал]  |  № 9  |  04.01.2014  |  0  
Сначала говоришь, что не гонишься за наградами, а потом возмущаешься, что её тебе не дали. ) Так и быть, я вручу тебе награду, чтобы ты в следующий раз написал статью про создание боевого дрона и управляемого механоида (Как из ФЕАР) без каких либо EntitiesMP.dll.
Ответ Цитата

[Материал]  |  № 11  |  05.01.2014  |  0  
Ну дык дело в принципе. Забей уже, я вообще удивлен, как меня не заминусовали ниже плинтуса.

P.S.
Окай, будет вам и механоид, и боевой дрон, и джетпак...
Ответ Цитата

[Материал]  |  № 24  |  08.01.2014  |  0  
А мну сделал игру без всяких dll... а награбы не было ='(
Ответ Цитата

[Материал]  |  № 10  |  05.01.2014  |  0  
Я бы парентил к игроку маркеры MovingBrush'а, а сам вертолет бы им и сделал и поставил достаточно высокую скорость, что бы успевать за игроком и в то же время избегать такого глюка. Еще можно было бы парентить маркеры камеры, а вертолет парентить к камере - так было бы плавнее %)
Ответ Цитата

[Материал]  |  № 12  |  05.01.2014  |  0  
Ты мог бы это все по-подробнее расписать? Тогда я помещу это в статью под заголовком типо "Исправление бага с резким изменением поведения вертолета по методике SeriousAlexej"
Ответ Цитата

[Материал]  |  № 14  |  05.01.2014  |  0  
Сначала исправь то, что ты написал про прятание Eruptor'ов.
Ответ Цитата

[Материал]  |  № 13  |  05.01.2014  |  0  
Такое я уже проверял; и с камерой, и с MovingBrush вертолет будет дергаться на каждом маркере, к тому же, игрок не будет постоянно находиться в кабине, она начнет ездить туда-сюда. Но идея неплохая, добавь сюда телепортацию маркеров с помощью типа Teleport entity у EffectMarker'a и получишь управляемый автомобиль, который однажды склеил именно таким образом некто Смертоносец.
Ответ Цитата

[Материал]  |  № 18  |  06.01.2014  |  0  
Управляемая тачка делается без всего этого.
Ответ Цитата

[Материал]  |  № 19  |  06.01.2014  |  0  
Без ДЛЛ её иначе не сделаешь управляемой.
Ответ Цитата

[Материал]  |  № 21  |  07.01.2014  |  0  
Psych, причем тут Кадат? Ты меня не любишь?
Ответ Цитата

[Материал]  |  № 22  |  07.01.2014  |  0  
Я тебе и остальным не отвечу вот этот раз. Профилактика срачей, которые неминуемо возникают в любом моем материале. Ничего личного.
Ответ Цитата

[Материал]  |  № 23  |  07.01.2014  |  0  
Ой, тут есть правильный ответ... =)
Ответ Цитата

[Материал]  |  № 15  |  05.01.2014  |  0  
Простите за глупый вариант, написать свой парентер, который позволит избежать этого? Он должен будет парентить не к самой энтите класса CPlayer, а к его модели. Однако, если парентить к одной из моделей игрока, то все это чудо может невероятно дергаться, кстати. Так и не понял, при каких условиях
Ответ Цитата

[Материал]  |  № 16  |  05.01.2014  |  0  
Правильно мыслишь. ) Но! Привычный PlayerParenter прикрепляет как раз таки к модели игрока. Если RenderType у энтити равен RT_MODEL (как у игрока), то положение модели и самой энтити совпадает. А тебе нужно припарентить вертолёт к верхней части игрока, то есть, к аттачменту Torso. Итак, вопрос упрощается - как припарентить вертолёт к аттачменту игрока?
Ответ Цитата

Оставьте комментарий

Мини-профиль

Гость

Вы в группе: Гости
Ваш IP: 3.83.187.36

Сейчас обсуждают

MuxaX5
Ar2R-devil-PiNKy18
Ar2R-devil-PiNKy17
Kraz_Marozov12
Kraz_Marozov40
Kraz_Marozov21
Kraz_Marozov41
Biktim11
Night_Hunter29
Night_Hunter50

МЕМЫ

НОВЫЙ
Kuska 3 0

Файлы

Omletus_3856
306 15 0

Ar2R-devil-PiNKy
10972 3417 52

zorgpro
1463 394 8

T02my
3775 1145 7

тигр
1546 383 14

Категории раздела

Croteam [4]
Материалы по студии разработчика игр CroTeam.
Интервью с разработчиками [9]
Интервью с разработчиками, а также их издателями.
Serious Sam 1 [9]
Статьи о Serious Sam 1
Serious Sam 2 [6]
Статьи о Serious Sam 2
Serious Sam HD [4]
Статьи о HD-серии, ремейков классических версий Сэма.
Serious Sam 3: BFE [10]
Статьи о Serious Sam 3: BFE
Уроки по Serious Editor 1 [60]
Уроки по Serious Editor 2 [3]
Самое серьёзное редактирование, на русском!
Уроки по Serious Editor 3 [40]
Уроки по работе с редактором.
Serious Engine [6]
Описание возможностей всех движков компании Croteam
Разное [26]
Всё что не подошло не под одну из вышеупомянутых категорий.
Serious Sam: Revolution [1]
Материалы по SS: Revolution, серьёзном обновлении классических Крутых Сэмов.
Serious Sam 1.05/1.07 SDK [10]
SDK - набор исходников для Serious Sam: The Second Encounter 1.05/1.07.

Видео

Выживание в Затопленном Городе: Бесконечные перезапуски! - Aftermath (Serious Sam Map) №5
80 0.0

Обновлённый "Нож брутальным хватом"
140 5.0

Serious Sam Xbox - улучшенная классика
197 5.0

Взрывная поездка в прошлое - Aftermath (Serious Sam Map) №4
116 5.0

Бой в тумане и боулинг - Aftermath (Serious Sam Map) №3
141 5.0

Статистика



На сайте: 11
Гостей: 10
Пользователей: 1
Chiperd