Модификация к BioShock Infinite "Romantic story" ?
Романтично звучит, так ведь?
Третья часть BS заинтересовала даже меня, ведь в этой игре не игрок главный герой, а Элизабет! Она помогает, она проводит нас по выдуманному миру дальше!Если бы мы смогли, не дожидаясь DLC для Infinite, добавить что-то своё в игру, что-то изменить...
Или можем?


**Вступление
«BioShock Infinite» - компьютерная игра, разработанная студией Irrational Games.
Irrational Games, почему ты не можешь предоставить программу для упаковки ресурсов, подтолкнуть нас к созданию простенькой модификации, чтобы игра продолжала жить в руках игроков дальше: год, два года, три... Быть может боишься, что игру украдут?
**Аргументы
Вы знаете, что такое S.T.A.L.K.E.R.? Задумывались, почему такая популярность у этой игры?
Возьмем первую часть. Графика нормальная для того времени.

Прошли раз сюжет, два - дальше становится неинтересно. Геймплей, текстуры - однообразные, скучные.
GSC несильно шифровала архивы. Игроки заинтересовались, а что будет, если? Не программисты, не хакеры, а простые игроки.
Всё началось с текстур и моделей:


А теперь посмотрим, как преобразилась игра сегодня:

2007-2013 - 6 лет и до сих пор люди интересуются этой вселенной.
Красиво, так ведь? Это не помешало следующим частям в продажах!
Так же с GTA, NFS, Skyrim, Half-Life, Minecraft... Я могу продолжать долго, и те названия игр, которые указал, очень популярны.
**Модификация или выдумка? (Часть 1/2)
Вернемся к BioShock Infinite, что удалось узнать?

Откроем ...\Bioshock Infinite\XGame\СookedPCConsole_FR
Именно здесь все внутренности игры: от текстур до моделей и скриптов.
Файлы .tfc и .xxx
Хм, нужно с чего-то начать. Установим Unreal Development Kit, поищем там ответ.
В директории с программой нашли .tfc, второго формата нет.
Сравним две папки:

Core.u - Core.xxx
**Модификация или выдумка? (Часть 2/2)
Снова заходим в ...\Bioshock Infinite\XGame\СookedPCConsole_FR
Может стоит еще что-то поискать? Найдено!
CachedPackageList.bin и SubLevelManifest.manifest - открываются блокнотом.
Итак, что у нас здесь:
В .bin содержится информация: какой формат у файлов был до шифровки. Например:
До
..\ScriptFinalRelease\Engine.u
После
..\..\XGame\CookedPCConsole_FR\Engine.xxx
До
..\ScriptFinalRelease\Core.u
После
..\..\XGame\CookedPCConsole_FR\Core.xxx
..\..\XGame\Content\Maps\SP_Boardwalk\S_BW2_P_PLV.upk - ..\..\XGame\CookedPCConsole_FR\S_BW2_P_PLV_SF.xxx ..\..\XGame\Content\Maps\SP_Boardwalk\S_BW3_P_FWIT.upk - ..\..\XGame\CookedPCConsole_FR\S_BW3_P_FWIT_SF.xxx ..\..\XGame\Content\Maps\SP_Boardwalk\S_BW3_P_PLV.upk - ..\..\XGame\CookedPCConsole_FR\S_BW3_P_PLV_SF.xxx
...
Формат .xxx является: и форматом .upk, и форматом .u
А что в .manifest?
S_TWN_P S_TWN_PARADE_GAME
S_TWN_P S_TWN_FAIRSTREET_NAR
S_TWN_P S_TWN_FAIR_INTRO_NAR
S_TWN_P S_TWN_WC_INT_ELEVATORSHAFT_GEO
S_TWN_P S_TWN_WC_SOUND
...
**Исследование
В конце предыдущей части мы рассмотрели S_TWN_P и формат у него .xxx
Воспользуемся: UModel (UE Viewer). Автор: Konstantin Nosov (Gildor).
С помощью этой программы мы можем посмотреть, что внутри файла. Открываем S_TWN_P.xxx :


Первая текстура находится непосредственно в S_TWN_P.xxx, вторая - текстура бочки (GunBarrel_A_Loot_DIFF) загружается из Worldtextures1.tfc
Выше мы написали, что .xxx = .u = .upk
Исследования показали: файлы .xxx хранят небольшие текстуры размером (например: 32x32), а .tfc подгружает большие (например: 2048х2048), чтобы графика приятной была.
Проверим это: удалим WorldTextures1, WorldTextures2, WorldTextures3. Что мы видим:

Что это? Не должно быть видно лица и вообще игра должна не запуститься!
Оказывается Unreal Engine способен пропускать отсутствие текстур также, как игры, сделанные при помощи него.
Как описано выше файл .xxx способен работать и без глобального .tfc

Значит такая зависимость:
WorldTextures1.tfc <- S_TWN_P.xxx -> все остальные части, указанные в SubLevelManifest.manifest
Кстати, давайте проверим наличие S_TWN_P в CachedPackageList.bin до шифровки, какой формат у него был:
До
..\..\XGame\Content\Maps\SP_Town\S_TWN_P.xcmap
После
..\..\XGame\CookedPCConsole_FR\S_TWN_P.xxx
**Где звезды?
К сожалению, Кен Левин и его команда не узнают об этом сообщении. Посмотрите на Анну Молеву, лицо BioShock Infinite. Девушка получила приглашение от Irrational Games через несколько месяцев! А что сказать про нас?

Таким образом, экспорт и просмотр доступны. Чтобы создать модификацию, осталось запаковать файлы, чтобы игра приняла их!

Я обращаюсь к тебе, читатель, сможешь найти/создать упаковщик ради Элизабет и новых дополнений для игры или тебе слабо?
P.S. Для тех, кто не устал смотреть на всё это, и заинтересовался:
|
P.S.S. Здесь находится информация команд превращения из\в .xxx, .u, .upk ...
Возможно, я что-то упустил и ты найдешь то, что поможет в решении данного вопроса!