В описании могут быть ошибки и неточности, так как Koops не комментирует свои действия.
1. Первый урок
Список действий из видео
- В панели инструментов нажимаем кнопку «Куб». Выставляем все 3 размера в 512 и нажимаем «Build». Окно создания куба закрываем.
- Аналогично создаем второй, на отдалении от первого.
- Рисуем третий, с шириной 256 и той же длиной (по факту — с длиной, равной расстоянию между двумя предыдущими кубами). Размещаем кисть посередине между кубами — это будет проход. Нажимаем «Build».
- В обозревателе ресурсов, на вкладке «Текстуры», щёлкаем по кнопке «Открыть». В открывшемся диалоговом окне находим папку с игрой (которая находится в папке с редактором). В ней переходим в папку Textures. Выделяем все utx-пакеты и ждём «Открыть». Ожидаем окончания импорта всех пакетов. В раскрывающемся списке обозревателя текстур находим произвольный пакет и произвольную текстуру.
- Выделяем одну или несколько граней наших кубов (они посинеют — признак выделения). Жмем по выбранной текстуре в обозревателе текстур — грани перекрасятся. Текстурируем так всю конструкцию.
- Щелкаем ПКМ в любом месте карты, в появившемся контекстном меню выбираем пункт Add Light here. На карту добавится источник света. Делаем так несколько раз, чтоб осветить все 3 помещения.
- В обозревателе текстур вверху переходим на вкладку «Актеры» — это список всех объектов в игре. Проходим по дереву по пути Pawn -> PlayerPawn -> harry (это играбельный Гарри). Щелкаем ПКМ в желаемом месте карты, в появившемся контекстном меню выбираем пункт Add Harry here. При надобности разворачиваем его на 180 градусов, чтоб он при игре смотрел не в стену.
- Аналогично из дерева актеров выбираем и ставим желаемые декорации (сундуки, шкафы и т.д.).
- В дереве актеров находим объект Triggers — TriggerTurnOnAllSpell, помещаем его на карте так, чтоб Гарри мог до него добраться в процессе игры. Это триггер, обеспечивающий знание персонажем всех заклинаний с самого начала.
- Важно! В дереве актеров берем объект NavigationPoint — PlayerStart, помещаем на карту. Это — точка старта: игра всегда начнется в этом месте, независимо от того, где размещен актер Гарри. Кроме того, без точки старта карта не запустится.
- Нажимаем кнопку «Построить все» (Build All).
- Сохраняем уровень в папку Maps. Запускаем игру.
2. Создаём блок, который можно двигать заклинанием Флипендо
Описание действий, показанных в видео
- Заставка: «Koops представляет»
- Заставка: «Урок Блок Флипендо»
- Действие: в обозревателе ресурсов, на вкладке «Текстуры», щёлкаем по кнопке «Открыть»
- В открывшемся диалоговом окне находим папку с игрой (которая находится в папке с редактором).
- В ней переходим в папку Textures.
- Выделяем все utx-пакеты и ждём «Открыть».
- Ожидаем окончания импорта всех пакетов.
- В раскрывающемся списке обозревателя текстур находим пакет HP2_Master, а в нём секцию wall_runners
- В панели инструментов нажимаем кнопку «Куб». Выставляем все 3 размера в 512 и нажимаем «Build». Окно создания куба закрываем.
- Делаем куб полым
- Переходим в окно трёхмерного представления и обклеиваем куб текстурами изнутри (стены).
- В обозревателе текстур выбираем секцию «Floors», выбираем текстуры пола
- В обозревателе текстур выбираем секцию «Cellings», выбираем текстуры потолка
- Добавляем в куб источники освещения.
- Добавляем точку старта игрока (PlayerStart)
- В обозревателе переходим к дереву актёров и выбираем Pawn — PlayerPawn — KPlayerPawn — harry
- Добавляем актёра в куб
- С помощью панели инструментов создаём ещё один куб (Куб 2) размерами 512х512х512. Делаем его полым. Размещаем правее первого куба
- С помощью панели инструментов создаём ещё один куб (Куб 3) размерами 128х128х128. Вырезаем его и помещаем в Куб 2. Обклеиваем текстурой из пакета FlipendoBlocks секции Blocks (боковые грани). Верхнюю берём из пакета HP2_Master — Floors. выделяем боковые поверхности и выставляем им атрибут Unlit и Special Poly. Окно настройки поверхностей закрываем.
- Создаём КУБ 4 размерами 256х256х256. Он должен поглотить Куб 3. Далее вырезаем его, переходим в КУБ 1.
- В панели инструментов щёлкаем по кнопке Mover, в меню выбираем GridMover. В свойствах GridMover выставляем GridMover — MoveIncrement = 128, Display — bShadowCast = False
- Нажимаем кнопку «Построить все» (Build All).
- Сохраняем уровень в папку Maps. Запускаем игру.
3. Создание бездны, а также учим Гарри вскарабкиваться на блоки
Список действий из видео
- Делаем в ряд 3 кубика 512х512х512.
- Делаем кубик № 4 посередине, так, чтоб получилась буква Т.
- Текстурируем.
- В частности, стенки и дно ямы красим в что-нибудь маркое.
- Делаем кубик 64х256х256, помещаем посередине на уровне земли над ямой, жмем Add, текстурируем.
- Добавляем свет.
- Рисуем пластину 512х512, ставим ее под платформой в яме, в текстурах выбираем SkyBox.
- Выделяем пластину, жмем Add Special -> Zone Portal -> OK.
- В дереве актеров Info -> Zone Info -> Установить на дне ямы (но над пластиной).
- В свойствах лезем в самый низ, выбираем секцию Zone Info, там пишем bPainZone = True, DamagePerSec = 200.
- Выделяем полигоны стенок ямы, жмем ПКМ -> Surface Properties -> Special Poly.
- Ставим точку старта и Гарри.
- Компилируем, сохраняем карту и запускаем.
4. Добавляем двери
Список действий из видео
- Рисуем 2 помещения с промежутком между ними, куда собираемся поместить дверной проем.
- Текстурируем стены, пол, крышу.
- Полигон, отвечающий месту предполагаемого дверного проема, текстурируем текстурой арки.
- Ставим свет.
- Меню Tools -> 2D editor -> кнопка Open -> выбрать файл HP2/System/Arch.2ds. Загрузится контур арки.
- Жмем кнопку Extrude, в появившемся окошке ставим толщину арки (как правило, равную толщине промежутка между комнатами), ОК. На игровом поле появился красный каркас арки.
- Размещаем кисть в желаемом месте (т.е. на месте проема), жмем Substract. Имеем дверной проем, теперь надо сделать дверь.
- Текстурируем внутренности арки (по желанию).
- Рисуем отдельно ото всего уровня кубик с размерами побольше. Так же, как выше, создаем кисть в форме арки, но с меньшей толщиной.
- Выдавливаем, получаем дверь. Но текстуры лежат криво, надо их поправить. Поэтому выделаем все полигоны на обеих сторонах двери -> ПКМ -> Align selected -> Align Wall Direction. Еще раз ПКМ -> Align Wall Panning.
- Выделяем саму синюю кисть, ПКМ -> Polygons -> Merge.
- Выделяем полигоны обеих сторон, ПКМ -> Surface Properties -> в разделе Pan нажимаем кнопки так, чтоб текстура вписалась в форму двери.
- Рисуем кубик чуть побольше двери, устанавливаем его вровень с дверью, но так, чтоб обтекало по бокам и сверху. Жмем Intersect.
- Размещаем нашу кисть в дверном проеме.
- Жмем ПКМ по кнопке Add Special Brush -> Mover.
- Выставляем муверу ключевые кадры (открыто/закрыто), как указано в соседней секции этой БЗ.
- ПКМ по муверу -> Object -> InitialState: TriggerToggle. Выше, Events -> Tag: Door (любое слово, строго говоря).
- В разделе MoverSounds выставляем звуки, которые будут звучать при открытии/закрытии двери (по желанию).
- Еще выше, Mover -> MoverEncroachT: ME_IgnoreWhenEncroach, MoveTime -> 2.000000 (время открытия в секундах)
- Ставим 2 триггера по обе стороны двери, выделяем их, ПКМ -> Properties -> Events -> Events: Door (т.е. пишем то же слово, что и выше писали).
- Ставим точку старта и Гарри.
- Компилируем, сохраняем карту и запускаем.
5. Реализуем механику заклинания Спонджифай
Примечание: изначально на этой странице было несколько видеоуроков, затем Serhiy1994 создал упрощённое текстовое описание этих видео. А потом автор видео удалил свой канал. В итоге остались только эти текстовые описания. В общем, это исторический материал 😉
В октябре 2024 Serhiy1994 решил восстановить статью, на основе файлов из Веб-архива.
Автор текстового описания: Serhiy1994, на основе удалённых видео Koops1997.