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

Редактор / Editor

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

В комментариях вы можете задавать вопросы, на которые мы вместе постараемся ответить, переработать и в нести в текст данного материала. Если кто-то из наших посетителей сможет сам написать раздел (согласование производится посредством электронной почты, поэтому указывайте реальные e-mail), то в разделе обязательно указывается автор данного раздела. По мере накопления знаний, материалы могут дополняться.

Основной порядок действий для создания МОДа

Показать полностью

Чтобы сделать свой МОД, нужно придерживаться указанных ниже рекомендаций. Имя мода, для примера: 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 нашим посетителем serhiy.

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.

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

4. В свойствах улитки:

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 можно на её официальном сайте


Вернуться к началу страницы


Видеоуроки

Показать полностью

1. Где найти и как настроить редактор

Эта информация приведена в обзоре редактора первых игр. Перейти


2. Создаём свой первый уровень. Автор: Koops1997

Рекомендуется смотреть в качестве 720/1080p — иначе не будет видно надписи в меню. Просмотреть видео

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

Рекомендуется смотреть в качестве 720/1080p — иначе не будет видно надписи в меню. Просмотреть видео

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

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

Рекомендуется смотреть в качестве 720/1080p — иначе не будет видно надписи в меню. Просмотреть видео


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

Рекомендуется смотреть в качестве 720/1080p — иначе не будет видно надписи в меню. Просмотреть видео


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

Рекомендуется смотреть в качестве 720/1080p — иначе не будет видно надписи в меню. Просмотреть видео


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

Их можно найти на странице проектов Дмитрия


Вернуться к началу страницы


Дерево актёров. Триггеры

Показать полностью

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

  • Гарри: 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 — chestbronze
  • Элементы освещения: Pawn — Kpawn — Hpawn — HProp — HCandlesLamps
  • Котлы: Pawn — Kpawn — Hpawn — HProp — HCauldron
  • Декорации (статуи, доспехи, ёлка, телескоп): Pawn — Kpawn — Hpawn — HProp — Hdecoration
  • Для Диффиндо (нити, паутина): 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 — LightRay
  • Карточки: Pawn — Kpawn — Hpawn — HProp — WizardCardIcon
  • Триггеры: 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.


Вернуться к началу страницы


Отправка своих уровней

  • Если размер файлов мода до 15 МБ, то нужно отправить почтой на адрес, указанный на странице О сайте. Если более 15 МБ, что бывает крайне редко — через файловый обменник того же Яндекса, например.
  • Если использовались текстуры и объекты из игры — достаточно отправить файл с расширением unr. Желательно упаковать его в один из распространённых форматов сжатия: zip, 7z, rar, …
  • Если же создавался свой пакет текстур — потребуется и он.

Итого требуется отправить:

  1. Файлы с расширением unr (зависит от числа уровней в вашем моде — может быть как один, так и несколько — если использовали триггер перехода на следующий уровень), упаковать в архив.
  2. Файлы с расширением utx — только если использовали свои текстуры. Если использовали те, что есть в игре — этот пункт пропускается.
  3. Отправить файлы вложением к письму (если до 15 МБ) или ссылку на файловом обменнике
  4. Указать игру — для первых трёх игр расширения почти всех файлов одинаковы.
  5. Ну и не забыть указать своё имя или псевдоним, краткое описание уровня/мода и картинку, если есть.

 

 

Создание этой странички…

 

Hidden text

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

  1. Setebos: изначально оформил.
  2. Koops1997: создал доступную сборку редактора для создания модификаций.
  3. Крам: делился опытом и картинками.
  4. Наших посетителей, задававших вопросы и помогавших друг другу разобраться с ними :-)
  5. Alexms69 : ведение страницы, добавление «справочных» данных.
  6. Вклад остальных участников указан в тексте статьи ;-)

 

Примечание: после загрузки МОДа с ЛЮБОГО сайта, обязательно проверьте его с помощью антивирусной программы — автор мода может нечаянно, а иногда и специально занести в архив с модом компьютерный вирус. Поэтому лишняя проверка не повредит.


 

Share in social networks:

 


Add a comment (send an owl)

Your e-mail will not be published. Required fields are marked *

 

1. If you want to display a comment only to employees of the site - add the word "секретище" ;-)
2. Our emoticons (opens in a new tab)
3. To add a picture in a comment, use the services of photo hosting, for example https://postimage.org/, suitable HTML-code to insert (radikal.ru and hung with such advertisements with a rating higher than 12+ options should be avoided).
To place file, you can use a file hosting, for example, Yandex. Drive.
If you have chosen not the best option, after viewing your comment links are deleted, but the data will still be accepted for consideration.

Сов к статье “База знаний по МОДификациям для Тайной комнаты и Философского камня”: 503
    • Такое может случиться из за кистей слишком сложной формы, или из за ограничителей, вступивших в конфликт с зон порталами. А иногда причина вообще не понятна. Попробуйте подвигать или вообще убрать элементы, находящиеся в этой области.

Parchment 14 of 14 1 11 12 13 14