Database changes have finished applying - please report any issues you're (still) seeing to support@shoutwiki.com.
Официальная документация GMDK: Создание и установка
Как мне модифицировать Gothic?[править | править код]
Большая часть данных сохранена в VDF-томах в папке /data/. Исключением являются файлы скриптов и (по техническим причинам) видео и аудио файлы.
Основным каталогом данных Gothic является папка / _work / data/ (в справке коротко будем указывать [GDATA]); не перепутайте с папкой /data/, в которой хранятся VDF-файлы. VDF-файлы содержат в себе полную структуру каталогов [GDATA] и представляют собой виртуальные образы этих каталогов.
С помощью программы \VDFS-Tool\GothicVDFS.exe вы можете просмотреть содержимое VDF-томов или распаковать их. Чтобы работать с данными, хранящимися в VDF, их для начала необходимо извлечь.
Вы можете распаковать VDF-файлы в каталог [GDATA], после чего удалить их. Теперь Gothic будет искать необходимые файлы не в VDF-томах, а в соответствующих каталогах на жестком диске. При таком подходе время поиска нужных файлов может длиться немного дольше.
Почти все форматы данных Gothic существуют в компилированном варианте. О форматах мы поговорим в следующих темах более подробно. На данный момент достаточно отметить, что все скомпилированные файлы хранятся в соответствующих compiled-каталогах.
Примечание: В папке System находится файл path.d, содержащий в себе пути к особенно важным каталогам. Файл желательно не модифицировать, так как в дальнейшем вы не сможете запустить Gothic.
Текстуры
Каталоги текстур:
Некомпилированные: [GDATA]/textures Компилированные (*.TEX): [GDATA]/textures/_compiled
Текстуры Gothic сохраняются в формате TEX. В такой формат Gothic компилирует текстуры автоматически. При этом в качестве исходников служат текстуры в формате TGA. Gothic ищет нужную TGA-текстуру по всем подкаталогам. Избегайте одинаковых названий текстур, даже если они расположены в разных папках.
Конвертирование текстур
Новые текстуры в формате TGA автоматически распознаются Gothic и конвертируются. Конвертированные текстуры сохраняются в папке _compiled в формате TEX. Для замены уже существующих конвертированных текстур вам нужно будет запустить игру через GothicStarter.exe с включенной опцией Advanced-Options: convert textures.
Звуковое сопровождение
Каталоги звуков:
Общие: [GDATA]/sounds
Звуки, точно так же, как и текстуры, Gothic ищет по всем подкаталогам. Здесь также старайтесь избегать идентичных имен файлов. Звуки не подвергаются конвертированию, а используются непосредственно, как файл WAV.
Миры / Уровни
Каталоги уровней:
Общие: [GDATA]/worlds
Уровни сохраняются в виде ZEN-файлов. Для того, чтобы создать свой уровень, необходимо:
1. Загрузить 3D-поверхность в Spacer в формате 3DS. 2. Чтобы нанести текстуры на поверхность, необходимо компилировать мир в режиме Editor Mode. При этом очень важен параметр Indoor/Outdoor, отвечающий за глобальное освещение. [li]Наносите текстуры[/li] 3. Для работы с объектами мира необходимо компилировать мир, сняв галочку с режима Editor Mode. Также не забудьте правильно выбрать параметр Indoor/Outdoor. [li]Устанавливаете области, используемые по умолчанию (DefaultFogZone и DefaultMusicZone).[/li] [li]Вставляете объекты, деревья и пр.[/li] [li]Наполняете мир звуком и светом: Звуковые объекты и Источники света.[/li] [li]Создаете головоломки/[/li] [li]...[/li] 4. Компилируете свет 5. Сохраняете уровень как ZEN-файл. Более подробную информацию по созданию уровней вы можете найти в следующих документах:
Скрипты
Каталоги скриптов:
[li]Некомпилированные: [GDATA]/scripts[/li] [li]Компилированные (*.DAT): [GDATA]/scripts/_compiled[/li] [li]Content (*.D,*.SRC): [GDATA]/scripts/content[/li] [li]System (*.D,*.SRC): [GDATA]/scripts/system[/li]
Каталог Content содержит в себе все скрипты, которые имеют какое-то отношение к игровому контенту: NPC, Предметы рюкзака, Квесты, AI;
Скрипты System описывают поведение главного меню, визуальных эффектов и т.п.
Сценарии сохранены в трех типах файлов:
[li]D-Скрипты (Расширение ".d") являются фактическими скриптами, с которыми работает человек, и которые впоследствии переводит в машинный код Gothic. Они написаны на языке, отдаленно напоминающим С. Существует возможность использования логических выражений (If...else), переменных, типов и функций. Кроме того, используются понятия классов и инстанций. Более развернутую информацию по используемому языку программирования вы можете найти в соответствующем документе.[/li]
[li]SRC-Списки (Расширение ".SRC") являются простым списком, состоящем из D и SRC скриптов. Их можно сравнить, скорее всего, с блоками INCLUDE. В них перечислены файлы (с использованием шаблонов), последовательность которых будет сохранена в файл DAT.[/li]
[li]DAT-Файлы (Расширение ".SRC") - скомпилированная версия списков SRC.[/li]
Компиляция и тестирование скриптов
Для того, чтобы перезаписать измененные скрипты и сохранить новый DAT-файл, необходимо запустить Gothic с параметром -zreparse. Также эту опцию можно активировать при запуске через GothicStarter.exe (Advanced-Options: reparse all scripts). После этого начинается компиляция сценариев, добавление каталогов и создание нового DAT-файла.
Более подробно о сценариях и о том, как они работают, вы можете узнать из следующих тем (указать тут ссылки):
Скриптовый язык Daedalus Скрипты Gothic Уроки скриптописания
Как Gothic находит мои файлы
Механизм поиска, в сущности, совсем прост.
Сначала Gothic ведет поиск по VDF-томам на наличие требуемого файла. Если требуемый файл найден только в одном VDF-томе, то только он и будет загружен. Если необходимый файл будет найден в нескольких VDF-томах, то будет использоваться самый актуальный по дате создания. На этом построена система патчей для ваших модификаций. Если требуемый файл не найден в VDF-томах, то поиск начинает выполняться по соответствующим каталогам на жестком диске. Если файл нигде не был обнаружен, то программа выдаст сообщение об ошибке. Естественно, при таком подходе возникают проблемы:
Если необходимый файл был обнаружен в VDF-томах, то поиск по каталогу на жестком диске не выполняется вовсе, а это усложняет тестирование измененных файлов, хранящихся как раз в тех самых каталогах (такая проблема возникает, например, при работе с текстурами).
Теперь давайте разберем возникшую проблему шаг за шагом:
При добавлении совершенно новых файлов, к примеру, уровней, текстур, музыки, проблем не возникает. Таких файлов нет в VDF-томах, поэтому поиск идет непосредственно по каталогам жесткого диска. Это замечательно. Но что делать, если вы модифицировали те файлы, которые уже есть в VDF-томах? Ведь при этом измененные файлы, хранящиеся в каталогах жесткого диска, будут игнорироваться. Рассмотрим несколько способов решения возникшей проблемы: Старайтесь создавать собственные VDF-тома, в которых будут храниться тестируемые файлы. Можно воспользоваться опцией VDFS:physicalfirst. Опция предусмотрена в GothicStarter и позволяет просканировать сначала жесткий диск, а только затем перейти к VDF-томам. Вы также можете удалить все VDF-тома, предварительно, конечно, распаковав их в каталоги жесткого диска [GDATA].
Итак, мы произвели краткое описание некоторых элементов, которые могут быть созданы или модифицированы. Но перед тем, как взяться за создание нового мода, мы настоятельно рекомендуем дочитать нашу документацию до конца.
Как создается GothicMOD?[править | править код]
Содержимое модификации
В этой теме мы постараемся объяснить, каким образом необходимо составлять модификации, чтобы их можно было передавать другим. Мы акцентируем внимание на том, как нужно упаковывать модификации. Вопрос по самим данным, хранящимся в модификациях, мы пока пропустим.
Модификация Gothic обычно состоит из двух файлов:
./system/modname.ini ./data/modvdf/modname.mod
Ini-файл модификации
Для каждой модификации необходимо создать файл инициализации вида modname.ini, в котором указываются все необходимые файлы для запуска, и прочие установки игры. Файл инициализации должен храниться в папке System. Подробное описание всех параметров и записей ini-файла можно просмотреть в соответствующем документе.
VDF-том модификации
Все файлы вашей модификации (звуки, текстуры, уровни, скрипты) необходимо упаковать в VDF-том. В отличии от стандартных VDF-томов Gothic, ваш файл модификации должен храниться в каталоге /data/modvdf/ под расширением .MOD. Для каждой модификации должен быть только один такой том.
Для упаковки ваших модификаций вам потребуется специальная программа \VDFS-Tool\GothicVDFS.exe. С её помощью вы можете упаковывать все ваши модифицированные/новые данные в VDF-том (*.mod). При упаковке модификации используются только скомпилированные файлы, такие, как DAT-файлы скриптов, а не исходники в *.d формате.
В теме "Файлы - исключения" вы найдете информацию по использованию собственных аудио и видео данных, которые не нужно упаковывать в VDF-тома.
Файлы исключения[править | править код]
Некоторые файлы Gothic не нуждаются в упаковке в VDF-том. К таким файлам можно отнести файлы скриптов для DAT-файлов, которые, собственно, и не нужно упаковывать, а также файлы видео и аудио сопровождения. Для таких файлов необходимо создать отдельные каталоги в папках:
Пример модификации с видео и аудио содержимым (упакованном в ZIP или RAR.exe):
./system/modname.ini ./data/modvdf/modname.mod ./_work/data/music/modname/file1.sgt ./_work/data/music/modname/file2.dls ./_work/data/videos/modname/video1.bik ./_work/data/videos/modname/video2.bik
Как видите, основные файлы так и хранятся в VDF-томе, исключение составляют только видео и аудио файлы.
Создание самораспаковывающихся архивов
Gothic MOD прекрасно устанавливается через самораспаковывающиеся архивы:
Содержание modname.exe (к примеру, ZIP или RAR EXE):
. / System / modname.ini . / Data / modvdf / modname.mod
Самораспаковывающийся EXE-файл должен содержать только относительные пути по отношению к каталогу Gothic.
Рассмотрим другой случай
Если вы создали собственную структуру каталогов, в которых сохранены ваши файлы модификации, то используйте примерно следующие пути установки:
c:/mymod/system/mymod.ini c:/mymod/data/modvdf/mymod.mod
Для подобных каталогов также создается самораспаковывающийся архив. (К слову, стандартный способ применения WinZIP/WinRAR не принесет желаемого результата).
Создание самораспаковывающегося архива в WinZIP
Запустите WinZIP Создайте новый архив с именем файла modname.zip. Удостоверьтесь, что опция "Store full path info" не включена. Добавьте в архив каталог с вашим модом (например, c:/mymod/). Выберите каталоги System/ и data/ и нажмите кнопку ADD. После этого в архиве должны появится VDF и INI файлы вашей модификации. Проследите, чтобы в столбце "Path" были указаны правильные пути data\modfvdf\ и System\. Чтобы создать самораспаковывающийся файл, выберите пункт меню Action -> Make EXE File. Укажите в качестве пути по умолчанию значение: "./" Готово! Только не забудьте проверить созданный вами файл. См. раздел "Инсталляция GothicMOD.
Теперь разберемся с WinRAR
Запустите WinRAR. С помощью WinRAR перейдите к каталогу с модификацией (c:/mymod/). Выберите каталоги System/ и Data/. На панели инструментов нажмите кнопку ADD. Удостоверьтесь, что опция "Store relative paths" на вкладке "FILES" включена. Дайте имя архиву modname.rar и включите опцию "Create SFX Archive". Архив modname.rar станет modname.exe. Нажмите OK для подтверждения и получите исполняемый файл - самораспаковывающийся архив. См. раздел "Инсталляция GothicMOD.
Инсталляция GothicMOD
Используя правильно созданный архив GothicMOD.exe, вы сможете с легкостью установить модификацию.
Копируете EXE-архив в каталог Gothic. Запускаете EXE-архив.
Если вы все сделали правильно, то все файлы модификации установятся в соответствующие папки.
Запуск GothicMOD
После того, как вы правильно установили модификацию, ее можно запустить с помощью GothicStarter.exe. В этой программе отображаются все доступные модификации, а также она позволяет использовать ряд функций при запуске модификации. Для запуска модификаций используется только этот инструмент. Кроме того, стоит ознакомиться с документацией к программе Gothic Starter.