База знаний по МОДификациям для Тайной комнаты и Философского камня

В данной подборке материалов собирается база знаний по созданию своих наборов уровней, дополняющих сюжет игры или рассказывающих другую историю о приключениях Гарри Поттера. Тема модостроения (МОД – сокращение от “модификация” – частичное или полное изменение сюжета основной игры).

Чтобы сделать свой МОД, нужно придерживаться указанных ниже рекомендаций. Имя мода, для примера: hp-games_test

  • Рисуем будущий МОД на бумаге: взаимное расположение комнат; форма комнат; места для ловушек, сундуков, врагов. При наличии опыта – можно и примерно определиться с размерами локаций (в единицах длины движка) и текстурами.
  • Пишем сценарий: по какому маршруту должен двигаться игрок, где должны стоять нужные триггеры, какие нужно использовать диалоги, какие будут использованы сцены-на-движке (cutscenes).
  • После того, как ваш проект будет представлен указанными выше бумажными документами, 10 раз просмотрен, то можно приступать к следующим этапам. Напомним: этап на бумаге кажется ненужным только новичкам и гениям. Но на самом деле он экономит уйму сил и времени, особенно если МОД делается в свободное время, и его создание затягивается на месяцы.
  • Теперь определяемся с файлами. Нам потребуется создать, как минимум, один файл уровня (с расширением unr), пакет с текстурами (utx). Дополнительная музыка, сценарии для сцен-на-движке обычно используются при необходимости.
  • Пакет текстур. Если вам хватает текстур самой игры, то этот пункт можно пропустить. Но если вы хотите использовать и другие текстуры, то здесь есть варианты:
    • просто набрать пакетов из других игр и использовать их в своём МОДе. Способ достаточно простой, но чем больше у вас будет работ, тем больше путаницы будет вызывать этот способ. Также все заимствованные пакеты нужно поставлять вместе с МОДом, в результате чего объём архива получает достаточно заметным, а если забыть положить в архив МОДа ходя бы один пакет текстур – у пользователей МОД может не заработать;
    • модифицировать существующие пакеты текстур (добавить свои текстуры в существующие пакеты). Способ плох тем, что если так будут делать 2 и более автора или же один автор будет использовать разные наборы текстур в файлах с одинаковыми именами, то пользователь не сможет нормально их использовать, получая ошибки во время запуска игры или просто незапускаемый уровень. Причём от этого вполне могут пострадать и оригинальные уровни игры (если перепаковка выполнена с ошибкой);
    • третий вариант идёт посложнее, но позволяет избежать проблем предыдущих способов. Он заключается в том, что делается копия любого пакета текстур оригинальной игры, переименовывается так, чтобы имя совпадало с именем вашего МОДа (но с расширением utx ;-). Например: hp-games_test.utx). После чего из пакета можно удалить ненужные текстуры и добавить свои. Как это сделать – указано на этой же странице, только пониже ;-). Если МОД достаточно объёмный, то можно сделать несколько таких пакетов, с добавлением номеров: hp-games_test_01.utx, hp-games_test_02.utx. Это позволит избежать многих проблем с этим МОДом в будущем. Сохраняем в папке Textures тестовой игры (которую вы подключили к редактору при его настройке). Ну и лучше оставить в этом пакете только те текстуры, которых нет в оригинальных пакетах игры – это позволит уменьшить размеры вашего МОДа.
  • Создание файла уровней. Для этого переходим непосредственно к редактору уровней и создаём новый файл (hp-games_test.unr). Сохраняем в папке Maps тестовой игры (которую вы подключили к редактору при его настройке). Если в вашем МОДе будет несколько уровней, то файлы уровней лучше нумеровать: hp-games_test_01.unr, hp-games_test_02.unr, hp-games_test_03.unr,…
  • Создаём первую комнату и размещаем в ней модель Гарри (берём из дерева актёров, подсказка о путях приведена ниже в этой статье) и PlayerStart (щёлкнуть дополнительной (правой) кнопкой мыши внутри комнаты и выбрать пункт ‘Add PlayerStart’ – “Добавить точку начала”). Для ФК при этом ещё и придётся повозиться с переносом камеры из другого уровня – иначе уровень может не запуститься. Сохраняем результат.
  • Создаём остальные локации согласно бумажному плану-проекту, обклеиваем их текстурами из нужных нам пакетов текстур (или созданного нами пакета). Сохраняем.
  • Создаём головоломки, ловушки, расставляем мебель, врагов, точки патрулирования и прочее. Сохраняем.
  • Запускаем сборку уровня (Build All). Отдельно запускать построение путей, геометрии и освещения не обязательно – это имело смысл на момент создания игры, так как позволяло сэкономить время, если вы с момент последней сборки изменили только пару путей или добавили пару стульев в уровень.
  • После завершения процесса сборки сохраняем и можем попробовать запустить уровень в игре. Если МОД нормально проходится до конца, то можно поделиться им, отправив на публикацию к нам или на свой сайт.
  • Перед отправкой МОДа на публикацию имеет смысл установить МОД на сборку игры без МОДов. Конечно, если это возможно. Перед публикацией мы проверяем уровень на работоспособность и, в случае успеха, создаём снимок экрана (часто и видеопрохождение) и публикуем МОД.
  • Удачных МОДов 🙂

Левая кнопка мыши + движение мышью – перемещение по координатам x,y и поворот камеры влево-вправо.

Правая кнопка мыши + движение мышью – поворот камеры.

Левая и правая кнопки мыши + движение мышью – перемещение влево-вправо, вверх-вниз.

CTRL+ALT+SHIFT + движение мышью – возможность выделить сразу несколько элементов сцены

Примитив (геометрический примитив) – простая модель, объёмная геометрическая фигура (куб, конус, сфера). Применяется для создания более сложных объектов.

Surface (Поверхность) – обычно внешняя сторона примитива. У куба их 6. У более сложных фигур намного больше. Для полых геометрических примитивов также характерны внутренние поверхности.

Cube (куб) – геометрический примитив. Применяется для создания помещений, локаций в целом, кубов для решения головоломок, простых моделей (шкафы, подстриженные кусты, чемоданы с плоскими поверхностями).

Cylinder (цилиндр) – геометрический примитив.

Sheet (лист) – геометрический примитив. Плоская пластина. Применяется для создания неосновных стен, платформ для прыжков.

Cone (конус) – геометрический примитив.

Volumetric (пересечение) – геометрический примитив. Применяется для создания простых моделей кустов.

Tetrahedron (Sphere) (сфера) – геометрический примитив.

Curved Staircase (изогнутая лестница) – геометрический примитив.

Spiral Staircase (спиральная лестница) – геометрический примитив.

Linear Staircase (прямая лестница) – геометрический примитив.

BSP based terrain (поверхность на основе BSP) – сложный объект для создания сложных поверхностей, вроде холмов, гор, впадин.

Mover (подвижный элемент) – модель, обычно получаемая из одного или нескольких примитивов. Основная особенность: может двигаться по заданному пути. В данном подвижный элемент может менять направление движение до 9 раз (имеет 9 ключей перемещения – промежуточных положений). Применяется для создания открывающихся дверей и любых подвижных конструкций.

Projection (Проекция) – определение того, как будет выглядеть сцена, если на неё посмотреть с определённой стороны. Редактор предоставляет доступ к проекции сверху (Top, вид сверху), фронтальной проекции (front, вид спереди), боковой проекции (side, со стороны).

Texture (текстура) – обычно графическое изображение (иногда – набор изображений), размещаемое на поверхности или поверхностях примитива или модели. Обычно если размер текстуры меньше размера поверхности, то текстура располагается в несколько рядов, пока полностью не заполнит поверхность.
Анимированные текстуры (например, – текстуры воды) могут представлять собой плоские фигуры со многими поверхностями с нанесёнными на них обычными текстурами.

Package (Пакет) – файл со сложным строением. Позволяет хранить в упорядоченном виде текстуры, звуковые фрагменты и другие ресурсы.

Actor (Актёр) – сложная модель, которая может содержать набор встроенных сложных анимаций движений (Гарри, Рон, Гермиона) или просто представлять из себя элементы мебели, триггеры и другие элементы, которые можно добавить в сцену.

Scene (сцена) – обычно под этим понимают фрагмент уровня. имеет достаточно много значений.

Collision (Столкновение) – происходит при соприкосновении поверхностей или внутренних каркасов двух и более моделей.

CutScene (заранее созданная сцена) – специальный сценарий, согласно которому движок игры в реальном времени строит и отображает заранее срежессированные сцены, где актёры действуют без вмешательства игрока.

PatrolPoint (Точка патрулирования) – набор этих актёров позволяет задать траекторию движения второстепенных персонажей (огнекрабов, улиток). Пример использования приведён в других подразделах данной страницы.

Camera (Камера) – специальный объект игры. Через него игрок видит игровой мир.

Trigger (Триггер) – в данном редакторе это чувствительный элемент, который может запускать различные игровые механизмы. Пример: триггер заклинаний реагирует на попытку применить заклинание, музыкальный триггер запускает указанную мелодию, если его потревожить (например, пройти сквозь него).

Build (Сборка уровня) – процесс создания игрового мира (или его части) с использованием задействованных в уровне моделей и примитивов. Может включать в себя: построение путей перемещения (по точкам патрулирования, например) неосновных персонажей (улитки, огнекрабы), построение карты освещения, расчёт границ игровых зон и многое другое.

Сохранение уровня – запись уровня на диск в виде файла.

unr – расширение файлов пакетов, содержащих игровые карты (уровни) игры. Обычно не содержит текстур, звуков и других ресурсов. Изменение в основных пакетах игры приведёт к проблемам совместимости у пользователей модов.

utx – расширение файлов пакетов для хранения текстур.Изменение в основных пакетах игры приведёт к проблемам совместимости у пользователей модов.

uax – расширение файлов пакетов для хранения звуков (озвученные реплики). Изменение в основных пакетах игры приведёт к проблемам совместимости у пользователей модов.

u – расширение файлов пакетов для хранения программных классов, моделей, специальных звуков к ним и текстур. Работа с классами осуществляется прямо в самом редакторе. Модели и текстуры, в виде Актёров, добавляются в “дерево актёров” самим редактором. Существуют программы для просмотра и экспорта содержимого этих пакетов (импорт в таких программах обычно недоступен). Изменять содержимое стандартных пакетов крайне не рекомендуется – возникнут проблемы совместимости у пользователей модов (аналог “ада библиотек функций (dll)” у программистов).

int – обычно это расширение файлов, представляющих собой текстовый файл, содержащий игровой сценарий. Изменение основных сценариев игры приведёт к проблемам совместимости у пользователей модов.

  • Открыть 2 экземпляра редактора
  • В одном экземпляре редактора (1) открыть файл, из которого нужно что-то позаимствовать
  • Во втором экземпляре редактора (2) предполагается делать свой уровень на основе вставляемого фрагмента
  • В редакторе (1) выделяем нужный фрагмент сцены и копируем его в буфер обмена (пункт Copy в меню)
  • В редакторе (2) вставляем скопированный фрагмент
  • Удаляем лишние элементы, включая ненужные триггеры, персонажей и прочих объектов и актёров
  • Закрываем редактор (1) без сохранения и продолжаем работу в редакторе (2).

Управление невидимыми стенами с помощью Люмос
Смотрим в статье Атоса

Сколько всего доступно заклинаний?

ФК: порядка 18, но нормально реализованы только те, что были задействованы в игре. Остальные либо вообще не реализованы, либо требуют вмешательство и код движка.

ТК: 27, но нормально реализованы только те, что были задействованы в игре. Остальные либо вообще не реализованы, либо требуют вмешательства в код движка.

  1. Alohomora (Алохомора)
  2. Incendio (Инсендио)
  3. LocomotorWibbly (Локомотор Виббли)
  4. Lumos (Люмос)
  5. Nox (Нокс)
  6. Petrificus Totalus (Петрификус Тоталус)
  7. Wingardium Leviosa (Вингардиум Левиоса)
  8. Verdimillious (Вердимиллиус)
  9. Vermillious (Вермиллиус)
  10. Flintifores (Флинтифорс)
  11. Reparo (Репаро)
  12. Mucor Ad Nauseum
  13. Flipendo (Флипендо)
  14. Ectomatic (Эктоматик)
  15. Avifores (Авифорс)
  16. FireCracker (ФайрКрэкер)
  17. Transfiguration (Трансфигурация)
  18. WingSustain
  19. Diffindo (Диффиндо)
  20. Skurge (Скурж)
  21. Spongify (Спонж(г)ифай)
  22. Rictusempra (Риктусемпра)
  23. Ecto (Экто)
  24. Fire (Файр)
  25. Duel Rictusempra (дуэльная версия Риктусемпры)
  26. Duel Mimblewimble (дуэльная версия Мимбль-Вимбль)
  27. Dual Expelliarmus (дуэльная версия Экспеллиармус)

Обучаем Гарри всем реализованным заклинаниям

Для этого в ТК есть специальный триггер – TriggerTurnOnAllSpells
Гарри достаточно пройти сквозь него и все заклинания, доступные в игре, станут ему известны.

Вопрос: Как создать нору, откуда гном уже не выберется?

Ответ:

  1. Определиться с местом для норы (сделать маленькую комнату, отгородить что-нибудь)
  2. Поместить в неё объект Pawn — KPawn — HPawn — Despawner.
  3. Добавить объект Gnome Home (декоративный вход в нору). Это необязательно.
  4. При необходимости, увеличить радиус действия объекта Despawner.
    Как только гном попадёт на этот объект — исчезнет, превратившись в бобы + появится звук куда-то улетающего гнома.

Вопрос: Как сделать так, чтобы в ловушках исчезали огнекрабы?

Ответ:

  1. Установить свойство огнекраба bDespawnable в True.
  2. Поместить в ловушку объект Pawn — KPawn — HPawn — Despawner.
  3. При необходимости, увеличить радиус действия объекта Despawner.
    Замеченный побочный эффект – после попадания огнекраба в Despawner, огнекраб может не исчезнуть до тех пор, пока не пропадёт из из поля зрения игровой камеры (Гарри).

Вопрос: Размеры гномов и прочих

Ответ (от посетителя ЭМ-Тот самый (Макс Некрасов)):
Сначала мы берем любой объект, ставим.
Дальше заходим в параметры предмета, ищем Display, DrawScale и DrawScale 3D и вводим свой размер.
И готово.

1 Набор уроков для движка Unreal Engine 1.0 (многое подходит и для игр о ГП). Язык: английский. Было бы здорово, если бы нам помогли с переводом основных уроков отсюда. Загрузить (13 МБ)

2 Руководство к редактору с примерами создания уровня с арками и прочим. Загрузить (chm 12 МБ) Язык – английский.
Загрузить (doc, 17,5 МБ) Язык – английский – та же инструкция, но преобразованная в формат MS Word нашим посетителем Serhiy1994.

3 Обзор редактора первых 3 игр. Перейти

Создание головоломок с поворотными колёсами (как в практикуме по риктусемпре): (автор: Дмитрий “Лимон”)

Для начала нужен Elevator Mover нужной формы, в виде кольца, как здесь, или диска либо переключателя со стрелкой, как в библиотеке.

Делаем кольцо нужного размера, делаем на нём метки с нужными текстурами, берём кисть, которая полностью, по всем измерениям перекрывает кольцо, жмём кнопку Intersect.

Кисть принимает форму кольца с вырезами. Делаем на её основе Elevator mover. Задаём для него четыре положения.

Чтобы mover двигался по всем четырём точкам, открываем его свойства – mover – numKeys и ставим в этой строке число положений мувера, в данном случае – 4.

Далее переходим в свойство – ElevatorMover – bGoStraight и ставим там true.

Далее ставим на нужном месте SpellTrigger. В его свойстве TriggerOnceOnly обязательно должно стоять False. К нему надо подключить RoundRobin, он в ветке триггеров. В его свойствах – RoundRobin – bLoop ставим true.

Далее разворачиваем подветку outEvents и пишем в четырёх первых строках названия положений elevator mover’а, например: Ring1Key1; Ring1Key2; Ring1Key3; Ring1Key0 (из третьей точки mover должен перемещаться в нулевую).

Далее размещаем ElevatorTrigger (так же в ветке триггеров), четыре штуки, и подсоединяем их всех Event-oм к Tag-y mover’а. В Tag-ах элеватор триггеров вписываем то, что писали в outEvents RoundRobin’a.

Потом переходим в ветку ElevatorTrigger – GotoKeyframe и вписываем в каждом элеватор триггере номер точки, в которую должен переместиться mover. Эти номера должны соответствовать тому, что написано в Tag‘е этого триггера. И раунд робин и элеватор триггеры следует размещать вне досягаемости Гарри, иначе он может случайно активировать их.

Если всё сделали правильно, то кольцо должно поворачиваться при применении заклинания к спелтриггеру, и из третьего положения обратным ходом, без остановок переходить в нулевое.

Делаем нужное количество таких систем, например три. Необходимо учесть, что outEvents у RoundRobin‘ов и Tag у подсоединённых к ним элеватор триггеров для каждого кольца должны быть разные (например для первого – Ring1Key1; Ring1Key2; Ring1Key3; Ring1Key0, для второго – Ring2Key1; Ring2Key2; Ring2Key3; Ring2Key0, и так далее).

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

Ставим двери, подключаем их к обычным триггерам. Далее размещаем PuzzleTrigger, путь – Triggers – Trigger – KTrigger – PuzzleTrigger. Подключаем их к триггерам дверей. Если подсоединить PuzzleTrigger напрямую к муверу, ничего работать не будет. Переходим в его свойства Puzzle. Там три строки. Во вторую, где написано PuzzleName вписываем что-нибудь, например, Rings1, тоже самое надо записать в свойствах колец – ElevatorMover – PuzzleName. Разворачиваем первую и третью строки свойства Puzzle. В третьей ветке (Tags) вписываем в первых трёх строках Tag‘и колец (например Ring1, Ring2, Ring3). В первой вписываем номера положения колец, в которых эта конкретная дверь должна открываться (например 1, 2, 3).

Если всё сделать правильно, то когда первое кольцо находится в первом положении, второе – во втором, а третье – в третьем, эта дверь будет открыта. Как только хотя бы одно кольцо сместится, дверь закроется. Делаем таким же образом остальные двери.

Если нужно, чтобы такая головоломка активировала не простой мувер, а ещё один элеватор мувер (например, вращающуюся комнату), всё равно придётся помимо раунд робина, управляющего таким вторичным элеватор мувером, подключить к паре пазлТриггер – триггер мувер, иначе ничего не сработает. Можно сделать небольшой мувер в виде кубика, находящийся где-нибудь под полом или за стеной, где его не будет видно.

Надеюсь, объяснил понятно. Удачи вам в модостроении!

Как сделать подвижную платформу (Mover): (спасибо Мистеру Краму)

См. видео: перейти к просмотру.


Более старая текстовая инструкция:

  1. Задаём форму кисти (к примеру 32 а 256 на 256)
  2. В верхней строке выбираем: Brush= Add Mover или жмём на кнопочку на которой изображён параллелепипед со стрелочками (см изображение 1; )
  3. Кликаем правой кнопкой мыши по Mover-у, находим: Movers= Выходит колонка. Там жмём:
    Show Polys и дальше закрашиваем Mover в нужные нам текстуры
    Теперь жмём Key0 (base)
    Потом Key1
    Дальше передвигаем Mover туда куда мы хотим, чтобы она переместилась.
    И жмём Key2 (см изображение 2😉
  4. В свойствах Mover-а устанавливаем следующие значения (см изображение 3😉
    Где KeyNum=0 это количество «кадров» (положений mover-а) по которым он вернётся обратно
    MoveTime это время передвижения Mover-а
    Trigger toggle это свойство Moer-а двигаться за счёт триггера.
  5. Устанавливаем SpellTrigger (триггер заклинаний) и делаем следующие настройки (см изображение 4😉
    Где eVulnerableToSpell это заклинание, которое можно применить, чтобы запустить Mover
    bTriggerOnceOnly это свойство работы триггера: постоянно или один раз.

Вопрос: Как сделать просто лифт (elevator)?

Ответ: Лифт можно сделать с помощью объекта mover, он пурпурного цвета, может двигаться по определённой траектории, по так называемым “ключевым кадрам” (keyframes). Чем больше этих кадров, тем более сложной может быть траектория движения. Для движения “вверх-вниз”, “влево-вправо” достаточно двух кадров.Для перемещения по прямоугольной траектории нужно хотя бы 4 кадра.

Кисти КУБ (Cube) задайте такие размеры, чтобы она приобрела вид пластины.


Вопрос: Гарри поднимает/бросает предметы (благодарность @rtem35 за находку)

Ответ: В свойствах предмета выставить HPawn – bObjectCanBePickedUp = True
Применимо как к вещам, так и к персонажам.

Вопрос: Фоновая музыка?

Ответ: Меню редактора View – Level Properties – Audio – Song. Для ТК указать имя файла из папки music (иногда нужно указывать имя файла без расширения).


Вопрос: Смена музыки в определённой точке?

Ответ: В нужное место поставить NewMusic Trigger. В свойствах триггера найти NewMusicTrigger – Song. Указать имя файла из папки music (Happy_Hogwarts.ogg).

Вопрос: Как поместить в сундук карточку или какой-то персонаж + бобы?

Ответ: Нормально работает в ТК (в ФК с этим бывают проблемы).
Заходим в свойства сундука (для примера – бронзовый сундук).

chestbronze
bMakeSpawnPersistent = True
bRandomBeans = False
EjectedObjects - 0 - выбираем и указываем карточку или персонаж из дерева актёров.
(ячейки 1-7 не трогаем)
iNumberOfBeans = 100 - указываем, сколько нужно положить бобов

Вопрос: Как сделать, чтобы красная бутыль с бобами (DecanterSpawn) исчезала после выдачи бобов?

Ответ: Свойства – Generic Spawner – bDestroable = True.
Аналогично для шкатулок (CigarBoxSpawn, JewelBoxSpawn, MusicBoxSpawn), доспехов (Knightspawn), цветочных горшков (PlantPotSpawn), леек (OilCanSpawn).
Для заведомо одноразовых банок с корой (BarkSpawn) и слизью (MucusSpawn) это свойство уже установлено.


Вопрос: Как задать количество заклинаний Флипендо, после которых бобы в шкатулках, доспехах заканчиваются?

Ответ: Свойства – Genericspawner – Lives

В этом параметре нужно задать число “жизней”. Если указать “1”, то бобы закончатся после первого использования. Если 6 – игроки замучаются извлекать бобы)))

Пределы задаются в свойстве Limits. Количество жизней зависит от этих ограничений.

Применимо к большинству предметов, из которых можно извлечь бобы.


Вопрос: Кстати можно сделать так чтобы из ваз (при разбивании) вылетали всевозможные предметы…

Ответ: (предоставлен нашим посетителем с псевдонимом Крам)

  1. В дереве актёров: Pawn — KPawn — HPawn — HFlipendo — выберите FlapendoVaseBronze и поместите в уровень.
  2. В свойствах FlapendoVaseBronze выберете строку SpellEffects и сделайте следующие настройки:

В данном случае я выбрал звезду практикума, но вы можете выбрать любой другой объект, который будет появляться при разбитии вазы.

Вопрос: Патрулирование (перемещение по определённой траектории). Для ФК и ТК

Ответ: Персонаж (улитка, огнекраб, преподаватель) движется по определённой траектории. Улитки без проблем меняют её, если заметят Гарри, но потом возвращаются назад.

  1. Расставить точки патрулирования (NavigationPoint – PatrolPoint). Например, 4 штуки – по углам воображаемого прямоугольника.
  2. Указать каждой точке патрулирования на следующую точку патрулирования.

Свойства – PatrolPoint – NextPatrol = Имяследующейточки_патрулирования.

Имена всех объектов можно узнать здесь: Свойства – Object – Name

Например, у ваших точек патрулирования выставились такие имена: PatrolPoint11, PatrolPoint12, PatrolPoint13, PatrolPoint14.

Для PatrolPoint11 указываем следующей PatrolPoint12, для PatrolPoint12 – PatrolPoint13, для PatrolPoint14 – PatrolPoint11.

  1. Посадить как можно ближе к одной из точек патрулирования персонаж, например, улитку (OrangeSnail).
  2. В свойствах улитки:

patrol – bLoopPath = True (бесконечно двигаться по указанной траектории)
PatrolPoints – firstPatrolPointObjectName – имя_ближайшей патрульной точки, например: PatrolPoint11.
PatrolPoints – bGoToClosestPatrolPoint = True

Можно поэкспериментировать с типом патрулирования (patrol – ePatrolType). По умолчанию это PATROLTYPE_PATROL_POINTS (патрулирование по патрульным точкам).

Аналогично делается для огнекрабов и прочих объектов, у которых есть свойства патрулирования (Patrol, PatrolPoints).

Программы для создания и подготовки текстур

Потребуется графический редактор – для рисования своих текстур или дооформления фотографий. Это могут быть: MS Paint – входит в состав Windows; Paint.Net – достаточно сложный графический редактор, бесплатен, требует .NetFramework; GIMP – много чего умеет, но сложноват в освоении, бесплатен; Adobe Photoshop – его все знают, жутко дорогой и достаточно сложный в освоении.

Если вы хотите делать текстуры на основе готовых изображений, например, – фотографий, то подойдут редакторы-конверторы. Например:

  1. Photoscape – содержит набор инструментов для постобработки фотографий. Работает как с одной картинкой, так и сразу со многими.
  2. Xnview – редактор-конвертор. Лучше использовать именно его.

Подготовка текстур к импорту в редактор

Игровой движок Unreal Engine 1.5 (ФК, ТК) работает только с текстурами, глубина цвета которых – 256 цветов (8 бит/пиксель).

Ширина и высота могут иметь только такие значения: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 пиксела.

Поэтому картинки необходимо подгонять под размер и уменьшать количество цветов.

Проще всего это делать в программе xnview (ссылка приведена в нижней части раздела).

Порядок действий:

  1. Открываем программу XnView.
  2. Перетаскиваем картинку на окно программы. Картинка открывается в новой вкладке.
  3. Изменение размера картинки: Меню “Изображение” – “Изменение размера…”. В появившемся окне указываете конечный размер (только размер изображения). ОК и получаем уменьшенную картинку. Если получилась ерунда – отмените действие – Меню “Правка” – “отмена”. Если порядок – продолжаем.
  4. Изменение глубины цвета. Меню “Изображение” – “Преобразовать в цветное”. Указываете количество цветов (256) и нажимаете “Применить”.
  5. Сохраняем результат. Меню “Файл” – “Сохранить как…” – выбираем папку и формат (только bmp!). Нажимаем экранную кнопку “Сохранить”.

Текстура готова. Переименуйте её так, чтобы её название было коротким, содержало только английские буквы и арабские цифры. Ну и никаких пробелов.


Создание своих пакетов и импорт текстур

Сейчас у вас должны быть готовы файлы текстур – нужных размеров и глубины цвета.

Теперь нужно:

  1. Открыть папку с текстурами.
  2. Выбрать любой пакет текстур (файл с расширением utx) и сделать его копию в этой же папке.
  3. Переименовать копию так, чтобы в её имени были только английские буквы, арабские цифры. И никаких пробелов. Ну и расширение utx 😉
  4. В редакторе игры в меню найти: “View” (Вид) – “Texture Browser…” (Обозреватель текстур)
  5. В открывшемся окне “Open package” (Открыть пакет) и выбрать только что переименованный пакет. Содержимое пакета появится в обозревателе. Обычно каждый пакет содежит от одной до нескольких групп. Все действия, которые можно выполнить над текстурой, доступны после щёлчка правой кнопкой на текстуре.
  6. Удалите ненужные текстуры.
  7. Импорт своих текстур: в окне Textures (этого самого браузера текстур) находим меню File, а в нём: Import… Указываем на свои текстуры и нажимаем “открыть”. Если текстуры сделаны правильно, то импорт проходит без каких-либо проблем.
  8. По окончании процесса не забудьте нажать кнопку “Save package” (Сохранить пакет), чтобы редактор внёс изменения в ваш пакет.
  9. Текстуры добавлены. Теперь при создании уровня вы можете добавить в него текстуры из своего пакета. Если захотите поделиться своим уровнем с другими, то не зебудьте к unr-файлам приложить свой пакет текстур.

Удачного модостроения!

Найти программу XnView можно на её официальном сайте

Основные редакторы: Metallicafan212’s Harry Potter 2 (только ГП и Тайная комната), UnWorld, очень старый редактор от Koops1997.

1. Первый урок

Список действий из видео (составил Serhiy1994)

  • (куб 512х512х512, выдавливаем)
  • (ещё 1)
  • (3 – проход, причем поуже)
  • (текстурируем)
  • (лампочки)
  • (ставим гарри, разворачиваем на 180)
  • (ставим начинку)
  • (триггер + триггер ТурнОнАллСпелс, точку старта)

2. Подборка ссылок на материалы Дмитрия «Лимона», где показаны основные приёмы создания модификаций-карт.. Перейти

3. Создаём блок, который можно двигать заклинанием Флипендо. Автор удалённого видео: Koops1997.

Описание действий, показанных в удалённом видео

  • В описании могут быть ошибки и неточности, так как купс не комментирует свои действия.
  • Заставка: “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. Запускаем игру.

4. Создание бездны, а также учим Гарри вскарабкиваться на блоки . Автор удалённого видео: Koops1997.

Список действий из видео (составил Serhiy1994)

  • Делаем в ряд 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.
  • Ставим точку старта и Гарри.
  • Компилируем, сохраняем карту и запускаем.

5. Делаем и настраиваем плитки Spongify. Автор удалённого видео: Koops1997.

Список действий из видео (составил Serhiy1994)

  • Рисуем 4 кубика размерами по 512 так, чтобы сформировать некое подобие _|¯ – чтоб было откуда взлетать и куда приземляться.
  • Проставляем свет, добавляем точку старта и Гарри.
  • Текстурируем пол, стены, двери.
  • Рисуем кубик 32x128x128 – стартовую площадку, назначаем ей текстуру змеевидного коврика. Жмем Substract, потом Add.
  • Клацаем по верхнему полигону кубика, Surface properties -> Scale: 0.5.
  • Выбираем в дереве актеров SpongifyPad (путь указан разделом ниже), размещаем его на стартовой площадке.
  • Чуть ниже в дереве находим SpongifyTarget, размещаем там, куда хотим прилететь.
  • ПКМ по SpongifyTarget -> Properties -> Events -> Tag: пишем что-нибудь.
  • ПКМ по SpongifyPad -> Properties -> Events -> Event: пишем то же, что писали в шаге выше; -> Tag: пишем что-нибудь, но отличное от предыдущего слова.
  • Ставим ТОАС, строим, сохраняем

6. Делаем двери. Автор удалённого видео: Koops1997

Список действий из видео (составил Serhiy1994)

  • Рисуем 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 (т.е. пишем то же слово, что и выше писали).
  • Ставим точку старта и Гарри.
  • Компилируем, сохраняем карту и запускаем.

Пути расположения основных актёров в дереве (Тайная комната)

  • Гарри: Pawn – PlayerPawn – KPlayerPawn
  • Генераторы/уничтожители созданий: Pawn – Kpawn – Hpawn
  • Генераторы приятных мелочей (доспехи, лейка, банка со слизью): Pawn – Kpawn – Hpawn – GenericSpawner
  • Основные существа (Докси, Пикси, Гномы, Грибы и прочие): Pawn – Kpawn – Hpawn – HChar
  • “Боссы” (Арагог, Василиск в действии, Вариации на тему Пивза): Pawn – Kpawn – Hpawn – HChar – baseBoss
  • Основные персонажи и некоторые существа (Преподаватели, Добби, Драко, Фоукс, Улитка): Pawn – Kpawn – Hpawn – Characters
  • Игроки в Квиддич: Pawn – Kpawn – Hpawn – QuidditchPlayer
  • Предметы обстановки, неодушевлённые (сундуки, мебель, звёзды, Фордик, Шоколадная лягушка, котлы, маркеры, норы гнома и чёртика, фрагменты грибов, набор Спонж(г)ифай): Pawn – Kpawn – Hpawn – HProp
  • Декорации: (статуи, доспехи, ёлка, телескоп): Pawn – Kpawn – Hpawn – HProp – Hdecoration
  • Сундуки: Pawn – Kpawn – Hpawn – HProp – chestbronze
  • Котлы: Pawn – Kpawn – Hpawn – HProp – HCauldron
  • Для Диффиндо (нити, паутина): Pawn – Kpawn – Hpawn – HProp – HDiffindo
  • Для Флипендо (вазы): Pawn – Kpawn – Hpawn – HProp – HFlipendo
  • Мебель (Столы, стулья, шкафы, кровати, доски, диваны): Pawn – Kpawn – Hpawn – HProp – HFurniture
  • Растения (деревья, кусты, цветы): Pawn – Kpawn – Hpawn – HProp – HPlants
  • Бобы: Pawn – Kpawn – Hpawn – HProp – Jellybean
  • Карточки: Pawn – Kpawn – Hpawn – HProp – WizardCardIcon
  • Освещение: Pawn – Kpawn – Hpawn – HProp – HCandlesLamps
  • Лучи света: Pawn – Kpawn – Hpawn – HProp – LightRay
  • Триггеры: Triggers
  • Книга сохранений: Pawn – KPawn – HPawn – SavePoint
  • Техническая модификация с демонстрацией содержимого видимых объектов дерева актёров: перейти

Триггеры: основное назначение и расположение в дереве (Тайная комната)

  • Triggers – KTriggers – TriggerTurnOnAllSpell – пройдя сквозь этот триггер, Гарри мгновенно обучается всем реализованным в игре заклинаниям (Скурж, Риктусемпра, Диффиндо, Спон(г)жифай).

Настраивать что-либо необязательно.

  • Triggers – Trigger – KTrigger – GiveHousePoints. Получаем баллы

Настройка: указываем число для свойства GiveHousePoints – HousePoints.

  • Triggers – Trigger – KTrigger – NewMusicTrigger. Стоит пройти сквозь этот триггер – заиграет музыка. Достаточно задать значение свойства NewMusicTrigger – Song – имя файла без полного пути в формате ogg, который лежит в папке music игры (sm_SCL_neutralhwo-1-29_01.ogg). Файлы формата ogg можно предварительно прослушать практически любым современным аудиоплеером (Aimp, VLC, KMPlayer,… ).
  • Triggers – Trigger – KTrigger – TriggerChangeLevel. Служит для перехода на следующий уровень.

Настройка: вписываем название уровня (без указания полного пути, например, – test.unr) в свойство TriggerChangeTrigger – NewMapName.

Создание сцен-на-движке (cut-scenes, кат-сцен bz_cut_scenes(jpg))

Видеоуроки Дмитрия «Лимона»

Сюда входят: работа с подвижными кистями (муверами); создание тайников, препятствий и пропастей; оформление; свечи, факелы, лампочки, туман; враждебные существа; бонусы/призы/вкусняшки; использование заклинаний; зацикленный мувер LoopMover; открытое пространство и небосвод (SkyBox); купола, арки, окна; головоломка с вращающимися кольцами; кисти сложной формы; патрулирование; создание текстур в GIMPe; создание дома; таймеры и телепортация; катсцены и другое.

ФК. Создание первого уровня

ФК. Добавление предметов, освещение и музыка

Как отправить нам ваш МОД?

  • Проверьте, что он работает.
  • Упакуйте его файлы в архив (zip, 7z, rar).
  • Напишите нам письмо (адрес можно узнать здесь) или отправьте сообщение в Discord. Добавьте ссылку на ваш МОД в письмо или сообщение.

Обязательно укажите:

  • Название игры.
  • Название вашей модификации.
  • Имя или псевдоним автора.
  • Краткое описание (сюжет или что она делает).
  • Если вы знаете несколько языков, то просьба прислать название и описание на всех известных вам языках.

Используются наработки:

  1. Setebos: изначально оформил.
  2. Крам: делился опытом и картинками.
  3. Наших посетителей, задававших вопросы и помогавших друг другу разобраться с ними 🙂
  4. АlехeyMS : ведение страницы, добавление “справочных” данных.
  5. Serhiy1994: конструктивная критика и описания к некоторым видео.
  6. Вклад остальных участников указан в тексте статьи 😉


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

 

1. Если вы хотите показать комментарий только сотрудникам сайта - добавьте в него слово "секретище" ;-)
2. Для добавления картинки в комментарий воспользуйтесь услугами фотохостинга (подойдёт HTML-код для вставки).
Для размещения файла можно использовать файловый хостинг, например: Яндекс. Диск.

Сов к статье “База знаний по МОДификациям для Тайной комнаты и Философского камня”: 609
  1. А можете помочь со скринами уровней? Сколько цветов должно там быть, чтобы игра читала?

    От модератора: что вы понимаете под скринами уровней? Текстуры? Основные требования к текстурам приведены в подразделе “Добавление собственных текстур” на этой самой странице)

    • Нет то, что запускаешь игру, а на слоте с сохранениями будет показывать кадр из уровня.

      От модератора: могу лишь предположить, что графический файл нужно положить в папку эскизов игры: system\Thumbnails. Параметры: формат bmp, 8 бит (256 цветов), 124х94 пиксела. Имя файла = имя файла вашего МОДа, но с расширением не unr, а bmp. Если что-то пропустил – надеюсь, что Мистер Дмитрий “Лимон” или другой специалист поправит 🙂

  2. Можно как нибудь сделать:
    а) чтобы при переходе с одного уровня на другой сохранялись звёзды и тайники
    или
    б) чтобы в одном уровне можно было использовать несколько скайбоксов?

    • По поводу скайбоксов, к сожалению, ничего не могу сказать. А вот насчёт перехода на другой уровень с сохранением звёзд есть маааленькая идея. В Филосовском Камне есть пара уровней, разбитых на два подуровня: испытание Инсендио (Lev_2_Inc_A.unr и Lev_2_Inc_B.unr) и испытание по Зельеварению (Lev3_Dungeon.unr и Lev3_DungeonB.unr). В этих испытаниях число собранных звёзд сохраняется при переходе на вторую часть. Но как это организовать я не совсем понимаю. Есть подозрение, что всё дело в том, что первая часть практикума заканчивается катсценой, которая направляет уже в следущую локацию. А с катсценами я пока не разбирался.

      • В таком смысле: делаю уровень, состоящий из трёх частей – дневной, вечерней и ночной. Естественно, для каждой части понадобится свой скайбокс. Вот и хочу узнать, можно ли сделать так, чтобы действие одного скайбокса распространялось на одну часть одного, цельного уровня, а два остальных на остальные части. Могу, конечно, сделать и три подуровня, но хотелось бы сделать так, чтобы три части бли взаимосвязаны, то есть действия в одной из них (активация триггера, нахождение тайника) будут влиять на прохождение остальных частей. А при раздельных уровнях такое скорее всего не возможно. Да ещё возникает проблема сохранения звёзд и тайников при переходе между ними.
        Но если такой фокус со скайбоксами всё же невозможен, придётся делать уровень раздельным.

  3. А можно подробнее про лифты?

    От модератора: здесь может потребоваться уточнение – что именно вас интересует. Принцип действия – относительно опорных точек (кадров) приведён в статье, текстуры у подвижного блока (mover’a) могут быть самые разные.

    Добавлено 08.08.2016 в 13:47 (Арахна Спайдер)…
    Интересует их движение. Как именно настраивать последующие кадры после 1?

    От модератора: выставляете новый номер кадра и перемещаете лифт в следующую точку. Если всё сделано верно, то после выбора номера кадра лифт будет перепрыгивать в указанную вами точку. Если этого не происходит — движок вас не понял.

  4. Как сделать зеркальную поверхность в тк? В фк видимо можно, но хотелось бы сделать и в тк

    От модератора: в моих экспериментах для создания зеркала было достаточно в свойствах поверхности установить флажок Mirror.

    • Можно ли сделать так чтобы когда смотришь на дверь она не открыта, а если мы повернёмся – она откроется, а если опять обернёмся к двери она закроется?

      • Если не ошибаюсь, то нет, невозможно. В основоном всё взаимодействие с окружением происходит либо посредством триггера, либо прямым наложением заклинания.

  5. Как думаете: под каким углом лучше поставить книгу сохранения, чтобы при входу в определённую локацию она смотрела страницами на Гарри? А то в редакторе когда ставишь её не видно, даже под видом триггера верблюда.

    • повернуть на 90 градусов против часовой стрелки, если считать, что стрелка-указатель (такая красненькая, у каждого объекта есть) смотрит от вас.
      а что за верблюжий триггер?

  6. Можете помочь? У меня расставлены точки патрулирования на учителя. Но как поставить анимацию, чтобы он нормально ходил, а не катался как манекен?

  7. А как сделать так, чтобы подходя к персонажу, он что нибудь сказал открывая рот?

  8. Воду лучше советую под декор или пропасть, но не для плавание. Во первых-это не реализованно полноценно в игре, а во вторых наличие существ из чёрного озера нужно, что было в книге.
    А можете рассказать о зависимости Mover’ов? Можно если актировали первый скажем перерезав верёвку, запустить второй? Можно так: первый включили, а тот второй? 😉

  9. Скажите пожалуйста, как поставить в уровень плиту (mover) чтобы при воздействии на нее заклинанием (Алохомора)она отодвигалась в сторону?

  10. Здравствуйте!
    Скажите, а правда может возникнуть такая проблема, что при создании очень больших уровней редактор может в конечном счёте отказаться их собирать?

    • Однако, я так понимаю, с этим почти никто не сталкивался, хотя МОДы на сайте есть довольно обширные по размерам локаций. Значит, это весьма маловероятная проблема, да?

      • Может, у Вас компьютер пререгружен. Редактору не хватает доступных ресурсов и он от этого не компилирует (не собирает) уровни.

        • Да нет, благо у меня такой проблемы не было 🙂 . Просто по ряду причин (которые долго объяснять) у меня есть один уровень, в котором я постоянно время от времени строю что-то и добавляю. Где-то прочёл, что редактор лучше не перегружать подобными уровнями, вот и решил узнать. Но, судя по всему, никто с этим не сталкивался, а значит я спокойно могу и дальше “захламлять” тот уровень.
          Спасибо за ответ)

          От модератора: если уровень получается очень уж длинным и не требует сбора звёзд и подобных соревновательных элементов, то его можно разбить на несколько файлов. Проблемы с производительностью обычно не заметны по той причине, что движок достаточно старый. Например, оригинальные уровни игры рассчитывались по компьютеры с 64 МБ оперативной памяти (но играть в них нормально можно было с 128 МБ оперативной памяти) и 8 МБ видеопамяти. Поэтому на компьютерах с 2 и более ГБ оперативной памяти особых подтормаживаний обычно не возникает, кроме проблем с устаревшими функциями и их поддержкой драйверами современного оборудования, но это уже другая история.

          • От размера карты зависит скорость её загрузки…

  11. А как надо настроить Mover- ловушку для огнекраба, чтобы толнув краба туда она закрывалась или открывала отверстие с пропастью откуда зверь не выберется?

    • Нужно подсоединить к муверу триггер, реагирующий на краба. Для этого откройте в свойствах триггера самую последнюю строку, и в свойстве TriggerType измените текущее значение на TT_ClassProximity, далее выделите в дереве огнекраба, выберите в свойствах триггера ClassProximityType и нажмите в конце строки этого свойства “Use”. Если всё сделали правильно, то в строке ClassProximityType появится надпись Class’HGame.firecrab’. Точно также делаются триггеры, реагирующие на любые другие предметы.

        • С самим крабом при этом ничего не надо делать. Главное, разместить его так, чтобы на пути к ловушке не было препятствий.

  12. Попробовала создать уровень в вашем редакторе. Но гарри умирает как только я запускаю свой уровень(

    От модератора: внимательно прочитайте текст этой страницы.

  13. А как поставить гаргулью в самодельный уровень?

    От модератора: найти в дереве актёров соответствующую модель, выбрать для неё место, щёлкнуть правой кнопкой по этому месту и в меню выбрать пункт добавления этой модели. Все модели нужно устанавливать с учётом поворота в 180 градусов: то есть, сундук нужно ставить петлями к игроку – в игре он будет стоять петлями от игрока. Как работать с заклинанием Люмос

  14. Нашел инструкцию на русском, как того страстно желала, в частности, Спайдер. Там автор прямо говорит, что описывает именно 2 версию, то что нужно.
    https://habrahabr.ru/post/185232/
    https://habrahabr.ru/post/188662/ – а это уже УнреалСкрипт, та штука, которой пишутся кошачьи сцены.
    Естественно, тут указано для чистого УЕ, т.е. надо делать поправку, что в ГП свои имена и свойства в ряде случаев.
    Модеры, добавьте, а?

    От модератора: вторая версия относится к Узнику Азкабана. Поэтому в плане совместимости с версией 1.5, которая используется для первых двух игр будут проблемы. Хотя основные моменты первой статьи более-менее соответствуют обеим версиям движка. Указанные автором статьи на gamedev также относятся к более новым версиям движка. Поэтому разве что в раздел документов можно указать ссылки на указанные материалы с пометкой “не всё из рассматриваемого будет работать в играх о ГП”. Но за поиски – благодарность)

    • А мы разве не рассматриваем возможность редактирования УА? По крайней мере, в одном из писем вы утверждали обратное.
      Так что пометку, кмк, надо изменить на “Для третьей игры. Не все из указанного будет работать в первых двух играх”.

      • Да, добавлйте уже в раздел материалов, а то я дважды все спойлеры пооткрывал уже, ища.

  15. А как поджечь камин какой триггер за это отвечает?
    Обращение к Краму и Дмитрию [изменено модератором]

    От модератора: ЭМ-Тот самый, если уж просите помощи, то хотя бы нормально обращайтесь к другим (“Крам с Лимоном” – это больше как описание разновидности чая, а не обращение к людям)

    • Можете сделать так: постройте камин, положите в него дрова (путь Pawn — KPawn — HPawn — HProp — HDecoration – WoodFireplaceLogs), разместите над дровами один или несколько SpawnThingy (путь Triggers – KTriggers – SpawnThingy), в свойствах этого объекта SpawnThingy – SpawnClass надо вставить какой нибудь огонь (путь KActor – ParticleFX (там их несколько разновидностей, разместите несколько разных огней прямо в уровне, запустите его и выберите подходящий)). Все SpawnThingy подключите к триггеру. Что касается света от камина, есть такая штука TriggerLight (путь Light – TriggerLight), попробуйте с ним поэкспериментировать. По идее этот свет должен включаться от триггера, но точно не знаю, так как пока не пытался его использовать.

  16. Кто нибудь может выложить файлик формата 2ds, подходящий для двери? А то я его на компьютере нельзя никак найти.

    • Я выложу завтра.
      3 арки в комплекте.
      Правда приходится мозаику собирать чтобы текстура двери получилась нормальной это у всех так или у меня какие то неполадки?

  17. Кто нибудь может подсказать как сделать ролик или послание в субтитрах в ТК? Спасибо, если получит сайт информацию.

    • По поводу роликов (катсцен) подсказать не могу, а чтобы сделать какое нибудь сообщение (речевое с субтитрами), например, Гарри говорит “Интересно, почему эта дверь заперта?” или “Я могу двигать блоки заклинанием флипендо” нужен PopupTrigger (путь Triggers — Trigger — KTrigger – PopupTrigger). В свойствах ПопапТриггера Popup – DialogID нужно указать какую нибудь реплику персонажа. Просто скопируйте её из какого нибудь попапТриггера из оригинального уровня. Пройдя через этот триггер Гарри что нибудь говорит. Но не забудьте проверить, чтобы эта фраза была уместна.

  18. Подскажите, пожалуйста, как правильно сделать огонёк от свечи? Я уже кажется всё сделал, как в оригинальной карте, выставил в настройках источника света стиль STY_Transluent, предварительно выбрав текстуру огонька свечки. Даже занулил LightBrightness и LightHue. Но при тесте уровня, этого “свечения” нет, хотя видно, что источник света работает. Из игрового уровня боюсь копировать (если что-то приносится из оригинальных уровней, всё, начинаются всякие гадости с камерой при тесте.)

Parchment 11 of 16 1 8 9 10 11 12 13 14 16