Raw file: различия между версиями
GeloMor (обсуждение | вклад) Нет описания правки |
GeloMor (обсуждение | вклад) Нет описания правки |
||
Строка 19: | Строка 19: | ||
ID — это уникальный идентификатор для выделения подклассов объектов (Например, [CREATURE:DOG], ID={{tt|DOG|собака}} or [ITEM:ITEM_WEAPON_SWORD], ID={{tt|ITEM_WEAPON_SWORD|предмет_оружие_меч}}). | ID — это уникальный идентификатор для выделения подклассов объектов (Например, [CREATURE:DOG], ID={{tt|DOG|собака}} or [ITEM:ITEM_WEAPON_SWORD], ID={{tt|ITEM_WEAPON_SWORD|предмет_оружие_меч}}). | ||
=== Типы содержимого === | === Типы содержимого === | ||
*[[Body token|BODY]] — части тела и | *[[Body token|BODY]] — части тела и их структура. | ||
*[[Body detail plan token|BODY_DETAIL_PLAN]] — подобно CREATURE_VARIATION, но используется для приписания [[Token|токенов]], связанных с частями тела(особенно материалы, ткани, позиции частей тела и откуда они растут, относительные размеры и т.д.) | *[[Body detail plan token|BODY_DETAIL_PLAN]] — подобно [[Creature variation token|CREATURE_VARIATION], но используется для приписания [[Token|токенов]], связанных с частями тела (особенно материалы, ткани, позиции частей тела и откуда они растут, относительные размеры и т.д.) | ||
*[[Building token|BUILDING]] — настройка [[Workshop|мастерских]] и плавилен. | *[[Building token|BUILDING]] — настройка [[Workshop|мастерских]] и плавилен. | ||
*[[Creature token|CREATURE]] — [[Creature|существа]]. | *[[Creature token|CREATURE]] — [[Creature|существа]]. | ||
*[[Creature variation token|CREATURE_VARIATION]] — изменения существ (как правило, создание [[Giant animal|гигантов]] или [[Animal people|антропоморфных]] существ). Технически, это наборы токенов, которые добавляются или удаляются из описания существа (в основном шаблонные изменения, вроде добавления пары рук). | *[[Creature variation token|CREATURE_VARIATION]] — изменения существ (как правило, создание [[Giant animal|гигантов]] или [[Animal people|антропоморфных]] существ). Технически, это наборы токенов, которые добавляются или удаляются из описания существа (в основном шаблонные изменения, вроде добавления пары рук). | ||
*[[Descriptor color token|DESCRIPTOR_COLOR]] (основной токен <code>[COLOR]</code>) — цвет для использования с DESCRIPTOR_PATTERN (другое назначение неизвестно). | *[[Descriptor color token|DESCRIPTOR_COLOR]] (основной токен <code>[COLOR]</code>) — цвет для использования с [[Descriptor pattern token|DESCRIPTOR_PATTERN]] (другое назначение неизвестно). | ||
*[[Descriptor pattern token|DESCRIPTOR_PATTERN]] (основной токен <code>[COLOR_PATTERN]</code>) — шаблоны цветовых комбинаций для использования с существами. | *[[Descriptor pattern token|DESCRIPTOR_PATTERN]] (основной токен <code>[COLOR_PATTERN]</code>) — шаблоны цветовых комбинаций для использования с существами. | ||
*[[Descriptor shape token|DESCRIPTOR_SHAPE]] (основной токен <code>[SHAPE]</code>) — описания форм. В прошлой версии использовались для гравюр, но в текущей использование не подтверждено. | *[[Descriptor shape token|DESCRIPTOR_SHAPE]] (основной токен <code>[SHAPE]</code>) — описания форм. В прошлой версии использовались для гравюр, но в текущей использование не подтверждено. | ||
*[[Entity token|ENTITY]] — типы цивилизаций (и не только, в общем смысле сообществ), с заданными расами, языком, культурой, этикой и социальной структурой. | *[[Entity token|ENTITY]] — типы [[Civilization|цивилизаций]] (и не только, в общем смысле сообществ), с заданными расами, языком, культурой, этикой и социальной структурой. | ||
*[[Graphics|GRAPHICS]] — графические тайлы существ. В папке raw/objects отсутствуют. | *[[Graphics|GRAPHICS]] — графические тайлы существ. В папке raw/objects отсутствуют. | ||
*[[Inorganic material definition token|INORGANIC]] — определения неорганических материалов. | *[[Inorganic material definition token|INORGANIC]] — определения неорганических [[Material|материалов]]. | ||
*[[Item token|ITEM]] — предметы, от снарядов до еды, подвиды задаются с помощью [TYPE:ID]: | *[[Item token|ITEM]] — [[Item|предметы]], от снарядов до еды, подвиды задаются с помощью [TYPE:ID]: | ||
**[[Ammo token|ITEM_AMMO]] — боеприпасы для стрелков. | **[[Ammo token|ITEM_AMMO]] — [[Ammo|боеприпасы]] для стрелков. | ||
**[[Armor token|ITEM_ARMOR]] — одежда на тело, включая броню. | **[[Armor token|ITEM_ARMOR]] — одежда на тело, включая [[Armor|броню]]. | ||
**ITEM_FOOD — описания приготовленной пищи. | **ITEM_FOOD — описания приготовленной [[Food|пищи]]. | ||
**ITEM_GLOVES — одежда на руки (перчатки), включая броню. | **ITEM_GLOVES — одежда на руки (перчатки), включая броню. | ||
**ITEM_HELM — головные уборы, включая броню (шлемы). | **ITEM_HELM — головные уборы, включая броню (шлемы). | ||
**[[Instrument token|ITEM_INSTRUMENT]] — описания инструментов. | **[[Instrument token|ITEM_INSTRUMENT]] — описания [[Instrument|инструментов]]. | ||
**ITEM_PANTS — одежда на ноги, включая броню | **ITEM_PANTS — одежда на ноги, включая броню. | ||
**ITEM_SHIELD — щиты. | **ITEM_SHIELD — щиты. | ||
**ITEM_SHOES — обувь, включая броню. | **ITEM_SHOES — обувь, включая броню. | ||
**ITEM_SIEGEAMMO — снаряды для осадных орудий (пока только баллиста). | **ITEM_SIEGEAMMO — [[Siege ammo|снаряды для осадных орудий]] (пока только [[Ballista|баллиста]]). | ||
**[[Tool token|ITEM_TOOL]] — | **[[Tool token|ITEM_TOOL]] — многоцелевые предметы, которые могут быть оружием, контейнером для [[weapon|пищи]] и проч. | ||
**ITEM_TOY — игрушки. | **ITEM_TOY — [[Toy|игрушки]]. | ||
**[[Trap component token|ITEM_TRAPCOMP]] — компоненты, которые можно использовать в оружейных ловушках (два специальных тега определяют компоненты, которые можно использовать в других конструкциях: IS_SCREW и IS_SPIKE). | **[[Trap component token|ITEM_TRAPCOMP]] — [[Trap component|компоненты]], которые можно использовать в оружейных ловушках (два специальных тега определяют компоненты, которые можно использовать в других конструкциях: {{token|IS_SCREW|trap}} и {{token|IS_SPIKE|trap}}). | ||
**[[Weapon token|ITEM_WEAPON]] — оружие, используемое солдатами, а также инструменты для копания. | **[[Weapon token|ITEM_WEAPON]] — [[Weapon|оружие]], используемое солдатами, а также инструменты для [[Mining|копания]]. | ||
*LANGUAGE — определения слов, используемое для | *[[Language token|LANGUAGE]] — определения слов, используемое для сообществ (ENTITY). | ||
**Записи, начинающиеся с [SYMBOL:ID] разделяют слова на символические/поэтические группы. | **Записи, начинающиеся с [SYMBOL:ID] разделяют слова на символические/поэтические группы, чтобы потом сообщества могло ссылаться на них как на свои [[Preferences|предпочтения]]. | ||
**Записи, начинающиеся с [WORD:ID] определяют слова и их альтернативные формы (на английском) | **Записи, начинающиеся с [WORD:ID] определяют слова и их альтернативные формы (уже на английском). | ||
*[[Material token|MATERIAL_TEMPLATE]] — определяет свойства, общие для группы материалов. | *[[Material token|MATERIAL_TEMPLATE]] — определяет [[Material science|свойства]], общие для группы материалов. | ||
*[[Plant token|PLANT]] — определения растений, их материалов а также производных (алкоголь, семена и т.д.) | *[[Plant token|PLANT]] — определения [[Plant|растений]], их материалов а также производных ([[Alcohol|алкоголь]], [[Seed|семена]] и т.д.) | ||
*[[Reactions|REACTION]] — реакции/рецепты для мастерских. | *[[Reactions|REACTION]] — реакции/рецепты для мастерских. | ||
*[[Tissue definition token|TISSUE_TEMPLATE]] — определение шаблонов тканей, для использования BODY_DETAIL_PLAN или существами. | *[[Tissue definition token|TISSUE_TEMPLATE]] — определение шаблонов тканей, для использования [[Body detail plan token|BODY_DETAIL_PLAN]] или существами. | ||
Обычно пустые строки используются для разделения различных типов структур, таких как имя файла и <code>[OBJECT:]</code> или другие записи, однако все, что не является токеном, кроме 1-й строки (которая является именем файла), понимается как комментарии и не рассматривается движком игры. | |||
Эти токены заключены в квадратные скобки ([TOKEN:VALUES]). | Эти токены заключены в квадратные скобки ([TOKEN:VALUES]). | ||
При [[world generation|генерации мира]] raw-файлы перемещаются из | При [[world generation|генерации мира]] raw-файлы перемещаются из <game folder>/raw/ в <game folder>/data/save/REGION/raw/. В настоящее время неизвестно, насколько сильно их можно изменять, не испортив при этом файл сохранения. | ||
Список токенов можно найти в статье [[Token]]. | |||
== Парсер == | == Парсер == |
Версия от 16:54, 11 августа 2021
Raw-файлы — это текстовые файлы, которые находятся в папках \raw\objects (используются при генерации мира) и в сейвах (\data\save\<region-name>\raw\objects) уже сформированных миров. Эти файлы можно просматривать, чтобы выяснить различные особенности предметов, материалов и существ, и можно редактировать для изменения поведения игры. Некоторые игроки называют их просто: "raw" или "равки".
Папка \raw\graphics используется для хранения настраиваемых пользователем наборов графики. Папка raw/interaction examples содержит полезные примеры по моддингу, а файлы в ней полностью игнорируются игрой.
Dwarf Fortress не является программой с открытым исходным кодом, поэтому её моддинг в основном ограничивается правкой raw-файлов или хаком.
Дублирование raw-файлов может привести к ряду ошибок, и даже вылету.
Синтаксис raw-файлов
filename [OBJECT:TYPE] [TYPE:ID] <...contents...>
ID — это уникальный идентификатор для выделения подклассов объектов (Например, [CREATURE:DOG], ID=DOG or [ITEM:ITEM_WEAPON_SWORD], ID=ITEM_WEAPON_SWORD).
Типы содержимого
- BODY — части тела и их структура.
- BODY_DETAIL_PLAN — подобно [[Creature variation token|CREATURE_VARIATION], но используется для приписания токенов, связанных с частями тела (особенно материалы, ткани, позиции частей тела и откуда они растут, относительные размеры и т.д.)
- BUILDING — настройка мастерских и плавилен.
- CREATURE — существа.
- CREATURE_VARIATION — изменения существ (как правило, создание гигантов или антропоморфных существ). Технически, это наборы токенов, которые добавляются или удаляются из описания существа (в основном шаблонные изменения, вроде добавления пары рук).
- DESCRIPTOR_COLOR (основной токен
[COLOR]
) — цвет для использования с DESCRIPTOR_PATTERN (другое назначение неизвестно). - DESCRIPTOR_PATTERN (основной токен
[COLOR_PATTERN]
) — шаблоны цветовых комбинаций для использования с существами. - DESCRIPTOR_SHAPE (основной токен
[SHAPE]
) — описания форм. В прошлой версии использовались для гравюр, но в текущей использование не подтверждено. - ENTITY — типы цивилизаций (и не только, в общем смысле сообществ), с заданными расами, языком, культурой, этикой и социальной структурой.
- GRAPHICS — графические тайлы существ. В папке raw/objects отсутствуют.
- INORGANIC — определения неорганических материалов.
- ITEM — предметы, от снарядов до еды, подвиды задаются с помощью [TYPE:ID]:
- ITEM_AMMO — боеприпасы для стрелков.
- ITEM_ARMOR — одежда на тело, включая броню.
- ITEM_FOOD — описания приготовленной пищи.
- ITEM_GLOVES — одежда на руки (перчатки), включая броню.
- ITEM_HELM — головные уборы, включая броню (шлемы).
- ITEM_INSTRUMENT — описания инструментов.
- ITEM_PANTS — одежда на ноги, включая броню.
- ITEM_SHIELD — щиты.
- ITEM_SHOES — обувь, включая броню.
- ITEM_SIEGEAMMO — снаряды для осадных орудий (пока только баллиста).
- ITEM_TOOL — многоцелевые предметы, которые могут быть оружием, контейнером для пищи и проч.
- ITEM_TOY — игрушки.
- ITEM_TRAPCOMP — компоненты, которые можно использовать в оружейных ловушках (два специальных тега определяют компоненты, которые можно использовать в других конструкциях:
[IS_SCREW]
и[IS_SPIKE]
). - ITEM_WEAPON — оружие, используемое солдатами, а также инструменты для копания.
- LANGUAGE — определения слов, используемое для сообществ (ENTITY).
- Записи, начинающиеся с [SYMBOL:ID] разделяют слова на символические/поэтические группы, чтобы потом сообщества могло ссылаться на них как на свои предпочтения.
- Записи, начинающиеся с [WORD:ID] определяют слова и их альтернативные формы (уже на английском).
- MATERIAL_TEMPLATE — определяет свойства, общие для группы материалов.
- PLANT — определения растений, их материалов а также производных (алкоголь, семена и т.д.)
- REACTION — реакции/рецепты для мастерских.
- TISSUE_TEMPLATE — определение шаблонов тканей, для использования BODY_DETAIL_PLAN или существами.
Обычно пустые строки используются для разделения различных типов структур, таких как имя файла и [OBJECT:]
или другие записи, однако все, что не является токеном, кроме 1-й строки (которая является именем файла), понимается как комментарии и не рассматривается движком игры.
Эти токены заключены в квадратные скобки ([TOKEN:VALUES]).
При генерации мира raw-файлы перемещаются из <game folder>/raw/ в <game folder>/data/save/REGION/raw/. В настоящее время неизвестно, насколько сильно их можно изменять, не испортив при этом файл сохранения.
Список токенов можно найти в статье Token.
Парсер
Последовательность, в которой DF считывает raw-файлы определяется первой строкой raw-файла (там не обязательно имя файла). Последовательность считывания важна для такого рода тегов, как [COPY_TAGS_FROM], но не для большинтсва других.