X-Ray SDK 0.7 или сталкерский модострой

  • IV <> V
    • Следите за дальнейшими новостями в официальном паблике проекта в ВК или в треде новостей проекта.
    • Регистрация персонажей открыта!
    • Регистрация топиков персонажей, фракционных топиков и других тредов, связанных с ролевым миром - вновь действуют.

барановичи

Новичок
84
216
Сейчас активно веду разработку своей модификации на сталкер: зов припяти по мотивам фракции в которой я сейчас играю «Он возомнил себя Наполеоном» буду сюда кидать всякие скриншоты с полей разработки ну или смешные картинки всяких моментов.
 

барановичи

Новичок
84
216
Собственно говоря, раз модификация будет сюжетная, нужно сделать первый и самый главный шаг, без которого сюжетный мод не сюжетный - "вырезание" или же "документирование" проще говоря отключение всего сюжета оригинального зова припяти. Работа это долгая и кропотливая но благо делается без всяких замудрений, пока что получилось вот так:
XOBeniJ.jpg
не смотря на то, что весь сюжет задокументирован, по локации продолжают разгуливать симуляционные сквады или же отряды которые имитируют жизнь на уровне, прописано им много всего, от прохождения по контрольным точкам (граф поинтам) до охраны какого-то лагеря, тоже самое с мутантами.
SuBeEIH.jpg

37ME7fD.jpg

2B3vpaa.jpg
для облегчения перемещения по локациям (без модифицирования движка X-Ray и добавления команды "jump_to_level" которая вырезана в финальной версии игры) добавлены проводники (не смотря на то что это один и тот же персонаж, в нашем случае Ной, на каждой локации он прописан по своему, например на затоне он zat_provodnik_noy, а на юпитере он становится jupiter_provodnik_locman, сделано это дабы их файлы логики не путались и не пересекались, потому что для каждой локации нужен свой файл логики)
ZvgD9TR.jpg
теперь же что касается всех безопасных зон ("Скадовск", станция "Янов", прачечная в Припяти), на них были удалены ВСЕ сюжетные и симуляционные отряды кроме проводников, нетронутыми остались разве что личные ящики и места для сна, даже логика дверей, которые не открывались при нахождении в руках ГГ оружия потерпела изменений и теперь двери открываются в любом случае, но голос торговца (Бороды, Гавайца, Ковальского) всё так-же остался и говорит спрятать оружие.
NPTWa2m.jpg

ONzCLvw.jpg
 
Последнее редактирование:

барановичи

Новичок
84
216
второй, немало важный шаг без которого разработка практически что невозможна это SDK (Software Development Kit) почему я выбрал именно зов припяти и его SDK? В сдк имеются все нужные инструменты для разработки (Actor Editor, Dialog Editor, Level Editor, Particle Editor, Postprocess, Scripts Debug, Shader Editor и собственно сам движок последней версии из которого мною был вырезан сюжет), если посмотреть на СДК от других частей (тень чернобыля SDK 0.4, чистое небо SDK 0.6) то в них будет урезанный СДК, предназначенный для создания и добавления только мультиплеерных карт, народные умельцы правда уже смастерили компоненты для одиночной игры, но я им не очень то и доверяю. В финальной версии SDK 0.7 имеются все компоненты, созданые ПЫСами для разработки как для одиночной так и для мультиплеерной игр. (ПЫСы - GSC на русской раскладке, разработчики сами называли себя так ещё во времена разработки сталкер обливион лост, сейчас такой термин в основном используют мододелы или же форумчане из форума AMK, на котором сидит много мододелов, собстенно по нему я и учился и учусь модострою).
7QNsXvH.png
 

барановичи

Новичок
84
216
Разберём по порядку состав самого SDK 0.7, начнём с Actor Editor`а (далее AE)
Что такое Actor Editor и с чем его едят? AE - программа для создания, исправления и добавления новых моделей для игрока(актёра(actor))/нпс/мутанта или же динимаческих/статических моделей, динамические модели - модели которые можно двигать, открывать, крутить, нажимать, статические модели - столы, деревья, разрушенные постройки, машины.
При запуске батника !ActorEditor у нас вылазит экран загрузки, так как я использую X-Ray SDK 0.7 RePack by DaaGuda V2 тоесть сразу готовый к работе СДК у меня красивый экран загрузки, как он выглядит на стандартном СДК понятия не имею.
39OGQ6u.png

После недолгой загрузки нас встречает интерфейс, у меня стоит русификатор чтобы было понятнее.
j1ND2vx.png
Если приглядется, интерфейс может чем-то напоминать 3ds max, который тоже используется для разработки своих уровней.
Пока что разберём вот это окошко:
LuNzoyg.png

Кнопочка "Файл" отвечает за ипорт/экспорт/сохранение/открытие сохраненных файлов, к примеру откроем модель какого-нибудь НПС, нажимаем Файл, загрузить
U2ZqNvS.png

в открывшемся окне переходим по пути objects/dynamics/actors/stalker_bandit/ и открываем одну из трёх первых моделей (stalker_bandit_1.object, stalker_bandit_2.object, stalker_bandit_3.object)
svs1GXg.png

Да! В игре оказывается всего 3 модели бандита! Рассмотрим каждые по порядку.
JR9YIrH.png
7QkrCB4.png
QiloQRi.png
stalker_bandit_1.object - бандит-новичок в куртке
stalker_bandit_2.object - бандит-опытный в кобре
stalker_bandit_3.object - ветеран в плаще
если приглядется на скриншоты моделей можно заметить на некотрых участках красные области, чтобы рассмотреть их поближе залетаем внутрь текстуры
wzrQBDO.png
видим те самые кости, это фигуры, расположенные в разных частях тела и соединенные между собой, каждую кость можно найти в разделе "Структура обьекта" в подразделе "bones"
zo5HKf1.png
Кости точно так-же как и в сампе выполняют свои функции, тоесть они сгибаются когда персонаж сидит на корточках, когда персонаж целит с оружия и т.п. НО в отличии от того же сампа тут есть ещё и кости глаз, которые периодически создают эффект что персонаж моргает.

На этом пока что всё, заколебался за сегодня писать, разбирать Dialog Editor и другие компоненты буду завтра.
 

барановичи

Новичок
84
216
Продолжаем знакомство с инструментарием SDK 0.7, на очереди у нас Dialog Editor.
Название говорит само за себя, Dialog Editor - редактор диалогов, при помощи него можно создавать как абсолютно новые диалоги, так и переписать или дополнить старые.
Запускаем соответствующий bat файл с названием !DialogEditor в корне СДК и попадаем в сам редактор.
EzWLs64.png
Видим много кнопок, выглядит страшно, согласен, но на деле всё довольно просто.
Кликаем на кнопку Open STRING TABLE XML дабы выбрать таблицу диалога в которой прописаны все инфопоршни, каждая таблица привязана к своей локации, к примеру я выберу
st_dialogs_zaton.xml
50tBhfy.png
Теперь у нас открылись новые кнопки, нажимаем кнопку Open DIALOG description XML дабы открыть сами диалоги, прописанные в другом файле, отдельном от таблицы, открываем файл с припиской _zaton, тоесть dialogs_zaton.xml
NZHgJfF.png
После открытия мы видим все диалоги, прописанные в этом файле, каждый диалог имеет своё техническое название и в каждого есть свой номер который ставили сами разработчики Зова Припяти, к примеру zat_a2_stalker_barmen_army где zat - название локации, a2 - номер сцены, каждая сцена прописана в диздоках (Дизайн документах, которые опять же делали GSC при разработке игры) и подробно описана. stalker_barmen - персонаж, к которому привязан диалог, в нашем случае это борода, да! Именно такое техническое название он имеет! army - суть диалога. Для примера кликнем по диалогу который я только что описал и вот что мы видим:
tDVTpHP.png
Как мы видим по диалогу он относится к сюжетному, а именно к тому моменту когда Дегтярев нашёл карту точек эвакуации.
Переводим свой взгляд правее и видим, что к этому диалогу, а точнее к фразе нашего ГГ привязан инфопоршень, который обновляет/завершает/отменяет квест после клика по диалогу в самой игре.
tMsDy0T.png

На сегодня всё, завтра будет достаточно большой обзор редактора уровней (LevelEditor`а)
 

барановичи

Новичок
84
216
Завершаем изучение основных программ SDK 0.7 движка X-Ray Engine, сегодня у нас Level Editor.
Level Editor
(LE) - редактор уровней (локаций) предназначен для создания/редактирования/переработки игровых локаций, идёт вместе с компилятором/декомпилятором игровых уровней в формат LE.
Декомпилятор - утилита которая конвертирует локацию в формат .level для дальнейшей работы в LE.
Компилятор - утилита, ничем отличается от декомпилятора но работает в обратную сторону, тоесть конвертрует локацию из формата LE (.level) в формат движка XrEngine.
Для начала работы с локацией в программе Level Editor нам необходимо декомпилировать локацию, для примера я возьму уровень "Окрестности Юпитера" (тех. название "jupiter"), переходим по пути: "Диск с SDK:\X-Ray_CoP_SDK\editors\converter" и попадаем в такую папку:
qWvLWU4.png

Нас интересует два файла:
!Декомпиляция уровня x64.cmd
!Декомпиляция уровня x64-CUDA.cmd

Первый файл - стандартный конвертер который использует стандартный метод декомпиляции.
Второй файл - конвертер, который использует технологии видеокарты NVIDIA (возможно и AMD).
Для декомпиляции локации кликаем по подходящему для вас файлу правой кнопкой мыши, изменить, в зависимости от файла который вы выбрали появится блокнот с командой для выполнения.
Далее нам понадобится заменить названия уровней в этих строках:
-level cop:zaton
-out zaton

первое меняем на -level cop:jupiter
второе меняем на -out jupiter
Сохраняем.
Локация готова к компиляции, запускаем отредактированный нами конвертер.
У нас на экране появляется консоль на которой показано что на данный момент конвертируется.
Далее процесс ненадолго останавливается на конвертации лод-текстур.
Дело в том, что чем больше локация, тем больше на ней лод-текстур, думаю пояснять что такое лод-текстуры не нужно.
После окончания декомпиляции нам предложит нажать на любую клавишу.
Нажимаем любую клавишу, конвертер закрывается.
Переходим в папку editors и открываем !LevelEditor.cmd
Нас как и в Actor Editor`e встречает загрузочный экран но немного другой, ожидаем.
Попадаем в редактор.
TJUv1VT.png

Первым, что необходимо сделать - перевести взгляд в правый верхний угол.
1VbISZ8.png

Выбираем "Файл>Открыть"
SpAQOoy.png

Переходим по пути editors>rawdata>levels и открываем локацию с форматом .level
y7i9efS.png

Локация начинает прогружатся, ждём некотрое время.
В левом нижнем углу появляется лог в виде консоли.
cXgShV2.png

Как только локация прогрузилась крутимся на 360 градусов дабы все текстуры подгрузились и у нас не было фризов.
S3qwxMK.png
Террейн (земля) уровня - белый. Почему так происходит? Конвертер просто не умеет копировать файлы и поэтому чтобы это исправить в gamedata\levels\jupiter\terrain и достаём два файла от-туда и копируем два файла по пути gamedata\textures\terrain.
Получаем такой результат:
nXuUux4.png

Заходим обратно в SDK, ищем чуть ниже кнопки "Файл" кнопку "Текстуры", кликаем и нажимаем "Обновить текстуры в сцене".
TmQTl5Q.png

Снова ждём.
Почти готово, осталось разобраться с текстурами растительности, декомпилированые уровни вместо использования текстур из файлов используют trees_fuflo, название крутое, но вот чтобы с этим разобраться переходим в gamedata\textures\trees.
Cg7Krfk.png
находим два файла:
trees_fake.dds
trees_fake.thm
.dds - сама текстура
.thm - опции текстуры, тоесть где она должна накладываться и как.
Снова обновляем и теперь получаем готовую к роботе локацию.
Рассмотрим базовые компоненты для создания квестов и спавна НПС.
Подлетаем на место сферы, которая выбрасывает отряд Генерала Ткаченко в оригинале и видим зелёные квадраты.
Выбираем в правом меню секцию Spawn Element.
CEPwNpP.png

переводим курсор на зеленый квадрат и нажимаем ЛКМ.
Он выделился белыми углами, снова нажимаем по нему но на этот раз ПКМ.
PR9OXCZ.png

Выбираем свойства и нам открываются свойства этого сектора.
dJYas9S.png

Как мы видим, это рестриктор, тоесть зона которая что-то активирует когда в ней находится игрок.
Понять какой это тип сектора можно по этому профилю, где указано что это space_restrictor, тоесть зона активации.
49Di6Zy.png

С этим разобрались, идём дальше.
Залетаем внутрь станции "Янов" и видим такую картину:
gP8TwwH.png

Много синих сфер с флажками внутри, кликаем по одной из них ПКМ>Свойства.
Смотрим сюда, и видим что это опция для стойки НПС.
scnddqK.png

Да! Каждая стойка у НПС в том или ином месте настроена заранее!
Если посмотрим в центр этой сферы мы увидим модель сталкера с анимацией которая прописана этому смарт каверу.
Вылетаем на улицу и первое, что бросается в глаза - зеленые линии, разбросанные по всей локации.
В меню справа нажимаем "Точки пути" и видим куда ведут линии от этой точки.
Как уже можно было понять, это - точки следования по которым ходят НПС.
NfOX7YA.png

Отлетаем немного от точки следования и замечаем фиолетовый конус, выбираем Spawn Element и кликаем по нему.
Открываем свойства, и видим что это некий graph_point, тоесть точка по которой ходят отряды и мутанты в оффлайне.
Оффлайн - часть местности которая находится вне поля зрения и не прогружена игроком.
IGpPDKM.png

И последнее на что мы сегодня посмотрим, места рождения артефактов, подлетаем к месту в котором в оригинале спавнятся артефакты и видим вокруг него smart_cover.
Открываем свойства и видим следующее.
cBYBfES.png

Смотрим в профиль и видим что это зона в которой есть радиация определенного уровня, всего их три (лёгкая, средняя и сильная).
Залетаем внутрь этого смарт кавера и видим белый смарт кавер поменьше, открываем свойства и видим:
LBofFg3.png

Да, это та самая зона которая рождает артефакт.
Вокруг неё раскиданы такие-же смарт каверы красного цвета, если посмотреть в их свойства, то увидим что это аномалия, в моём случае - электра.

На этом можно закончить, мы разобрали три базовых инструмента в X-Ray SDK 0.7. Теперь я приступаю к работе со своей модификацией.
Спойлеры вышли из чата, перфекционисты недовольны
 
Последнее редактирование:

savvin

Напиздел денег, закрыл сервер
2 269
2 333

барановичи

Новичок
84
216