"Как создать (сделать) мод на (для) сталкер?", "учебник сталкерского модостроения", "основы модостроения", "гайд по созданию модов сталкер" - эти и другие поисковые запросы, связанные со всевозможными гайдами по модостроению, предположительно, присутствуют в истории вашего браузера, если вы сейчас читаете данное руководство. И, предположительно, вы новичок в модостроении и полны энтузиазма и желания постичь сталкерский модострой, чтобы своими руками создать "сталкер мечты".
Что же, если вы волею судьбы (или силами своего поисковика) попали на данное руководство, то, надеюсь, оно станет для вас исчерпывающим. Особенность же данного гайда по модостроению в том, что он является динамическим - руководство будет постоянно дорабатываться и обновляться, а при помощи общения в комментариях вы сможете напрямую повлиять на структуру гайда, скорость его пополнения и, самое главное, получить ответы на все свои вопросы.
Разархивирование файлов gamedata для Steam-версии игрыИтак, с чего же начинается сталкерское модостроение? Естественно, с папки "gamedata", которая является основой любого любительского мода. Но простое создание данной папки в корне игры ничего не принесет, так как для модостроения нужны файлы, достать которые можно двумя путями: либо взять за основу любую другую модификацию, либо использовать файлы оригинальной игры. И, так как редактирование сторонней модификации будет скорее модификацией модификации, а не собственноручно созданным модом, то мы за основу модифицирования возьмем оригинальные файлы игры.
Но, соответственно, появляется вопрос, как разархивировать файлы gamedata в оригинальной игре, если они используют формат db0 - dbd? Ответ прост - необходимо воспользоваться специальной программой, открывающей путь в сталкерское модостроение. Но абы какая версия программы не подойдет. В отличие от пиратских версий "Сталкер: Тень Чернобыля", лицензионная Steam-версия игры не поддается разархивированию типичными программами-арихваторами.
Поэтому специально для вас я выкладываю правильную версию архиватора, при помощи которой можно разархивировать файлы лицензионного Steam-издания S.T.A.L.K.E.R.: Тень Чернобыля. Скачать программу вы сможете по ссылке ниже:
Скачать Unpacker for Steam by E1nher1 Можете не беспокоиться, архив без вирусов. По сути, вы также можете распаковать пиратскую версию S.T.A.L.K.E.R.: Тень Чернобыля любым другим анпакером, благо, их достаточно много в интернете, но зачем тратить свое время и место на жестком диске, когда проще распаковать лицензию?
Стоит обратить внимание, данная программка тестировалась лишь на Steam-версии S.T.A.L.K.E.R.: Тень Чернобыля. Пиратские версии, а также версия игры для GOG не проходили тестирование.
Итак, когда вы скачаете архив, внутри него вас будет ждать лишь один файл. Эта и есть подходящая программка. Ее вы просто перетаскиваете из архива на рабочий стол и запускаете.
В этой же программе вы указываете путь к корневой папке со сталкером и от туда начинаете разархивировать файлы gamedata.
Вы просто выбираете нужный файл gamedata и нажимаете кнопку "открыть". Далее архиватор вам предложит выбрать место хранения файлов. Я рекомендую разархивировать файлы в отдельную папку на рабочем столе. Себе же для удобства я разархивировал каждую "геймдату" в отдельную папку. Зачем? Вы узнаете далее.
Теперь, когда вы научились разархивировать файлы игры оригинальной лицензионной Steam-версии S.T.A.L.K.E.R.: Тень Чернобыля, возникает вопрос - какие именно файлы gamedata необходимо разархивировать для создания того или иного мода?
Содержимое файлов gamedata db0 - dbdИтак, если поштучно разархивировать все файлы gamedata db0 - dbd, то на это уйдет крайне много времени. Куда проще разобраться, какие файлы из gamedata db0 - dbd вам действительно нужны для создания собственной модификации.
Предлагаю выяснить, какие файлы таятся в каждом архиве gamedata db0 - dbd.
gamedata.db0 - папка ai (в ней содержатся файлы типа .efd, отвечающие за искусственный интеллект),папка anims (игровая анимация, а также эффекты камеры), папка config (игровые параметры), папка levels (локации).
gamedata.db1 - папка levels (локации).
gamedata.db2 - папка levels (локации).
gamedata.db3 - папка levels (локации).
gamedata.db4 - папка levels (локации), папка meshes (игровые модели, в формате .ogf),
папка scripts (скрипты), папка shaders (шейдеры, для двух DX8 и 9), папка sounds (звуки и музыка, формат .ogg).
gamedata.db5 - папка sounds (звуки и музыка, формат .ogg), папка textures (текстуры домов, оружия, монстров и др. Формат - .dds).
gamedata.db6 - папка textures (текстуры домов, оружия, монстров и др. Формат - .dds).
gamedata.db7 - папка textures (текстуры домов, оружия, монстров и др. Формат - .dds).
gamedata.db8 - папка spawns (респаун NPC), папка textures (текстуры домов, оружия, монстров и др. Формат - .dds).
gamedata.db9 - папка config (игровые параметры), папка sounds (звуки и музыка, формат .ogg).
gamedata.dba - папка config (игровые параметры), папка scripts (скрипты), папка shaders (шейдеры, для двух DX8 и 9), папка spawns (респаун NPC).
gamedata.dbb - папка config (игровые параметры), папка levels (локации), папка scripts (скрипты), папка shaders (шейдеры, для двух DX8 и 9), папка spawns (респаун NPC), папка textures (текстуры домов, оружия, монстров и др. Формат - .dds).
gamedata.dbс - папка config (игровые параметры), папка scripts (скрипты).
gamedata.dbd - папка config (игровые параметры), папка scripts (скрипты).
Для создания простой любительской модификации совсем не обязательно распаковывать все файлы gamedata db0 - dbd. Вам достаточно распаковать какие-то отдельные файлы, которые будет задействовать ваша модификация. Например, если вы хотите всего лишь поменять параметры предметов и оружия в игре, вам достаточно лишь распаковать файлы, содержащие папки config.
Для 90% любительских модификаций будет достаточно распакованного gamedata.db0.
Простая навигация. Основы для новичков.Предположим, что вы не имеете никакого опыта в простейшем модостроении и еще не разобрались с файлами и папками. Для начала стоит разобраться с простейшими параметрами, которые бы вы, предположительно, хотели изменить в игре. Вот самая простая навигация для новичков лишь по одной папке Config.
По отдельным файламОружие - папка Config/Weapons (конфиги пушек вы сможете отыскать, разархивировав gamedata.db0).
NPC - папка Config/Сreatures (параметры NPC вы сможете отыскать, разархивировав gamedata.db0). Обратите внимание, что в данной папке находятся и параметры главного героя - файл actor.ltx.
Игровые предметы - папка Config/Misc (станет доступна при разархивации той же gamedata.db0). Свойства патронов находятся в файле weapons.ltx, а бронежилетов – в outfit.ltx.
Свойства артефактов находятся в файле artefacts.ltx, предметов – items. ltx.
По параметрамОсновные параметры оружия, например, w_ak74.ltx
ammo_mag_size – размер магазина (можно поставить хоть 999).
ammo_class – класс патронов, используемых оружием.
hit_power – мощность оружия. Чем больше, тем лучше.
silencer_hit_power - мощность оружия, когда на него надет глушитель.
misfire_probability - вероятность осечки при максимальном износе (0 ставить не рекомендуется!).
condition_shot_dec - увеличение износа при каждом выстреле (0 ставить не рекомендуется!).
zoom_enabled - можно ли целиться (true / false).
Основные параметры NPC, например, actor.ltx
max_walk_weight - максимальный вес, при достижении которого игрок перестает двигаться.
pickup_info_radius – радиус от ГГ, в котором над предметами выводятся их названия.
camera_height_factor – высота ГГ. По умолчанию стоит 0.85, но можно увеличить рост ГГ до 0.95 например.
disp_base – разброс при стрельбе. Если уменьшать, то и разлёт уменьшается соответственно.
wound_incarnation_v - скорость заживления раны.
cant_sprint_power_begin - порог силы, меньше которого актер не может бежать в спринте.
hit_probability_gd_novice, hit_probability_gd_stalker, hit_probability_gd_veteran, hit_probability_gd_master - эти строчки отвечают за вероятность попадания по вам, при игре на разных уровнях сложности.
Некоторые параметры из System.ltx (папка Config)start_blood_size - размер раны, при наличии которой начинает литься кровь.
stop_blood_size - размер раны, при которой кровотечение останавливается.
max_weight – вес, с которым ГГ может бежать.
Некоторые параметры артефактовhealth_restore_speed - скорость восстановления здоровья (0.0001 = +100%)
radiation_restore_speed - скорость накопления радиации (0.0004 = 4). Если поставить отрицательное значение, то артефакт будет ускорять выведение радиации.
Иммунитетыstrike_immunity - ударозащита.
shock_immunity - электрозащита.
chemical_burn_immunity - химзащита.
telepatic_immunity - сопротивление телеппатии.
radiation_immunity - сопротивление радиация.
wound_immunity - разрывозащита.
explosion_immunity - взрывозащита.
fire_wound_immunity - пулестойкость.
Некоторые параметры items.ltxcost - цена.
eat_health - сколько восстанавливает здоровья.(если будет 0, то колбаса лечить не будет.)
eat_power - сколько восстанавливает силы.
inv_weight - вес предмета.
Параметры бронежелетов outfit.ltxinv_weight – вес костюма.
cost – цена костюма.
burn_protection - коэффициент защиты от огня
strike_protection - коэффициент защиты от пуль
shock_protection - коэффициент защиты от молний
radiation_protection - коэффициент защиты от радиации
telepatic_protection - коэффициент защиты от телепатии
chemical_burn_protection - коэффициент защиты от хим. ожогов.
explosion_protection - коэффициент защиты от взрыва.
(коэффициенты выставляются от 0.0 до 1)
Вот самые основные параметры, изменения которых помогут вам в создании простейших модификаций.
Создание простейшей модификации и добавление изменений в игру. Первая практика модостроения.Для того, чтобы реализовать в игре модификацию, вам потребуется создать папку gamedata в корневой папке игры.
Далее, допустим, я хочу модифицировать главного героя, работая в файле actor.ltx.
Он расположен по пути config\creatures, соответственно, в папке gamedata я создаю папку config, с ней создаю папку creatures. В данную папку я закидываю файл actor.ltx. Но для корректной работы внесенных параметров в actor.ltx, необходимо их же продублировать в system.ltx. Файл system.ltx находится в папке config, соответственно, данный файл переноситься по пути корень/gamedata/config
Файл с расширением .ltx открываются при помощи простого блокнота (Notepad++ или Notepad2).
В файл я вношу некоторые изменения, самые простейшие и наглядные, увеличив переносимый вес ГГ до 200 кг. Для этого я изменяю параметр max_walk_weight, который находится в категории [actor_condition]. Параметр, соответственно, выставляется в значение 200. Также я выставляю аналогичное значение параметра в файле system.ltx. В категории [inventory] меняется параметр max_weight.
После этого внесенные изменения сохраняются. Модифицированный сталкер можно будет запустить сразу, начав новую игру.
Таким образом, первая небольшая модификация занимает место всего в 33 КБ.
Как мы можем наблюдать, для создания модификаций совершенно не обязательно иметь полностью разархивированную папку gamedata в корень игры. Простейшие модификации требуют в папке gamedata только тех файлов, которые подвергаются изменению.
С другой стороны, создание модов требует комплексного подхода и знания взаимосвязей файлов игры. Даже для изменения параметров грузоподъемности ГГ необходимо знать о взаимосвязях того же actor.ltx и system.ltx.
Поэтому советую практиковаться, но перед этим изучать теорию сталкерского модостроения.
Как редактировать текстуры в сталкер ТЧ?Как визуально улучшить картинку в игре? Как изменить (поменять) текстуры? При помощи каких программ работать с текстурами? На этот и все другие вопросы, связанные с текстурированием и визуализацией вы найдете ответы в текущей главе гайда по модостроению в сталкере ТЧ.
Итак, перерисовать текстуры в сталкере достаточно просто. Причем, перерисовать можно абсолютно все текстуры в игре, начиная от стен и оружия, заканчивая текстурой старого скряги Сидоровича. Если вы хотите начать работать с текстурами, вам потребуется либо программа Photoshop (желательно CS6) с установленным плагином для работы с DDS, либо же можно обойтись и простым Paint.net, являющимся абсолютно бесплатным, но, тем не менее, его возможности позволяют работать с DDS без помощи сторонних плагинов.
Я же предпочитаю работать в программе Photoshop CS6, потому что его инструментарий и работа со слоями мне ближе, чем функционал Paint.net.
Допустим, вы обзавелись одной из программ. Далее для работы с текстурами вам понадобится папка textures. Из предыдущих глав гайда вы уже должны понимать, где при разархивации будет находиться данная папка.
Итак, в папке textures содержится крайне много папок, вот, что вы сможете найти в каждой из них:
папка act - в ней находятся текстуры всех NPC, представленных в игре. Как тела и лица людей, так и текстуры мутантов целиком. В этой папке можно найти даже вырезанных из игры персонажей;
папка andy - для начинающего мододела интереса не представляет;
папка atifact - соответственно, в ней находятся текстуры артефактов;
папка car - машины в этой папке не найти, но в ней есть ролик из начальной заставки (грузовик смерти);
папка controller - различные эффекты контроллера, вырезанные, для начинающего мододела интереса не представляет;
папка corp - соответственно, в этой папке находятся текстуры мертвых тел. Можно поразвлечься!
папка crete - черепица, напольные покрытия;
папка det - растения и листва;
папка detail - текстуры земли, травы и других поверхностей;
папка door - двери и дверные проемы;
папка ed - не особо полезна в моддинге;
папка effects - в ней находятся некоторые эффекты;
папка fbr - напольные покрытия;
папка flare - ничего особенного для начинающих;
папка fronts - что-то вроде шрифтов, в 99% случаев бесполезно;
папка FX - а это уже интересно! Тут находятся различные эффекты, такие как горение костра, свечение, луна... Но самое интересное для начинающего - это кадры из телевизора. Допустим, вам ничего не мешает заставить Сидора или военных смотреть ВВП, кадры с которым вам никто не мешает нарезать!
папка glas - оконные стекла, может быть полезна при создании витражей в Припяти!
папка glow - glow эффекты, быть может, кому-то и пригодится;
папка gr - обрывки фотографий, доски, дальние окна, плитки, балконы;
папка grnd - различная земля, песок;
папка hud - элементы hud;
папка human - вырезанный изуродованный человек (по этическим причинам?);
папка icon - билдовские иконки оружия (в том числе и вырезанные);
папка internal - узор свечения фонаря;
папка интро - в ней находятся несколько роликов, которые вы можете увидеть в игре;
папка item - текстуры предметов, как существующих в игре, так и вырезанных;
папка jeffry - эффект расколотой маски противогаза, вырезан из игры;
папка level -
папка lights - эффекты свечения фонариков NPC;
папка map - карты из PDA, в том числе и вырезанных местностей;
папка mtl - металлические поверхности и бочки;
папка pda - эффекты из КПК игрока;
папка pfx - эффекты артефактов, в том числе и вырезанных;
папка prop - разные мелочи, в основном вырезанные из игры, много интересного для исследователя, но не для модера, пример:
папка sign - различные знаки и значки (дорожные, доски объявлений и тд);
папка sky - текстуры неба, очень качественные;
папка sleep - в ней находятся сны, которые могли бы сниться меченному. Как видео, так и текстуры;
папка ston - плитка, стены, камни;
папка temp - разное, вырезанное. Не представляет особого интереса;
папка terrain - карты местностей с грубыми пометками, не имею возможности представить, как это использовть;
папка tree - ветка дерева и "fuflo", как пометил разработчик;
папка trees - все, что связано с природой и деревьями;
папка ui - очень важная папка, в которой содержатся текстуры меню, текстуры заставки, текстуры элементов hud, текстуры иконок (портретов) всех сталкеров и мутантов, фотокарточки, которые можно найти в PDA, иконки (модельки) оружия из инвентаря. Обратить внимание на данную папку категорически приветствуется.
папка veh - в ней содержится текстуры, связанные с транспортными средствами - от машин до поездов и прицепов;
папка water - текстуры воды, которой в игре категорически мало;
папка wind - окна и дальние объекты. Пригодится при редактировании Припяти;
папка wm - значки, текстурная кровь, газеты, плакаты, пулевые отверстия;
папка wood - все, что связано с деревом (заборы, полы, паркет);
папка wpn - все, что связано с оружием (от патронов и пушек до разметки прицела);
На этом папки закончились. Но у вас, собственно, возникает вопрос, а каким образом рисовать новые текстуры? А я вам скажу - берете и рисуете, все в ваших руках. Можете хоть измалевать все кисть. в пэинте, такой же эффект вы получите в игре. Единственное, рекомендую изучить в фотошопе такой инструмент, как печать, чтобы у вас выходила не мазня красками, а вы брали фото и натурально переделывали текстуру задавая ей фотореалистичный вид. Таким образом, например, можно покрыть проклятого Сидора г@вном. Но я вам об этом не говорил...
Сохраняете текстуры вы, естественно, в формате DDS. Если пользуетесь плагином для Photoshop, то советую оставлять в настройках Nvidia все как есть.
Большой раздел об изменении имен персонажей игрыКак изменить имя главного героя игры (Меченого)?
Имя ГГ, в отличие от имен остальных NPC, изменяется в файле character_desc_general, формата .xml, который редактируется блокнотом, либо же через Notepad++. Стоит запомнить, что все, что связанно с текстовыми правками, редактируется либо через блокнот, либо через Notepad++, последний вариант более предпочтительный, так как, на мой взгляд, более удобный.
Изменяем непосредственно поле name, между "><" пишем, что хотим. Пробел, символы и цифры, а также латиницу в названии использовать можно.
Если вы ранее распаковали файлы gamedata так, как я посоветовал, то файл с именем ГГ стоит искать по пути: dbb\config\gameplay
Как изменить имена ключевых NPC?Нас теперь интересует файл stable_bio_name, в нем находятся имена ключевых NPC в игре. Все текстовые изменения в игре делаются в папке rus, конкретно этот файл стоит искать по пути db9\config\text\rus, если вы ранее, опять же, распаковали gamedata так, как я просил.
Допустим, что необходимо изменить имя известного персонажа Волка, для этого стоит найти строку <text>Волк</text>, а за место имени Волк между "><" вписываем что угодно. Вопрос: "Как переименовать Сидоровича в П*доровича?", относится к этой же категории, торговец есть в этом же файле, стоит только поискать (ctrl+f).
Как переименовать мутантов?Чтобы переименовать мутантов, ищем файл string_table_enc_mutants, который расположен по пути db9\config\text\rus.
Допустим, необходимо изменить название плоти. Ищем строку: <text>"Плоть"</text>, между "><" вписываем что угодно.
Как изменить имена случайных сталкеров / бандитов / монолитовцев и прочих NPC?Чтобы изменять имена персонажей в игре, вам понадобятся два файла: stable_generate_fnames и stable_generate_snames. Следовательно, первый файл отвечает за имя, во втором файле записана кличка. В игре имена NPC генерируются случайным сочетанием имени и клички.
К слову, оба файла расположены по пути db9\config\text\rus.
Допустим, нам необходимо изменить кличку бандита ищем следующую форму:
<string id="lname_bandit_0">
<text>Сивый</text>
В первой строке "lname_bandit_0" означает, что кличка свойственна бандитам из игры, а строка <text>Сивый</text> означает, как не сложно догадаться, кличку. Изменяем, как обычно, то, что вписано между "<text></text>", вписываем прямо между "><" без пробелов и прочего.