ФЭНДОМ


Первоначально эта страница была портирована со страницы Modding FAQ на официальном форуме Stonehearth Discourse. Он был составлен сообществом как набор вопросов и ответов о создании модов для игры.

Вводные вопросы Править

В: Есть ли какие-нибудь «праймеры» на modding Stonehearth? Править

Лучшими местами для получения дополнительной информации о моделях Stonehearth являются Блог разработчиков и Официальный форум.

Для введения в mixinto, переопределения и структуры «entity»/«component» эти сообщения будут особенно полезны:

В: Что такое mixinto? Править

Mixinto позволяет добавлять дополнительный контент в существующий файл .json. .Json-файлы содержат почти все изменчивые параметры игрового процесса Stonehearth. Проще всего использовать это для замены значений, определенных в существующем .json.

Более сложный (менее документированный / стабильный / поддерживаемый) вариант использования - это добавить полностью новый контент в существующие .json-файлы. Это опасно, поскольку формат этих .json-файлов еще не завершен, поэтому раздел, который вы изменили, может измениться или пропасть без вести.

В: Что такое переопределение? Править

Функция переопределения позволяет вам заменить любой файл в игре другим файлом. Используйте переопределения для замены активов другими активами. Если вы используете это для замены файлов кода другими файлами кода, Team Radiant не несет ответственности за результаты или поддерживаемость изменений в будущем.

В: Как узнать, какие файлы .json являются возможными целями для mixinto и как мне ссылаться на них? Должен ли я использовать их псевдоним или имя файла или что? Править

Смотрите этот пост.

В: Что делает file(...) do? Править

file(...) - это ярлык, который упрощает объявление файловых путей в .json-файлах.

Во-первых, он добавляет каталог мода в путь в скобках. Как упоминает @RepeatPan, file(/foo) равен /my_mod/foo

file() также может использоваться для добавления пути к текущему каталогу: файл (mystuff.json) эквивалентен /my_mod/path/path1/path2/mystuff.json

Наконец, если путь внутри инструкции file() заканчивается папкой, а не файлом с расширением, он автоматически добавит файл с похожим name.json в путь. Например, file(/stuff) становится /my_mod/stuff/stuff.json

В: Что за файлы .smod? Как открыть их? Править

Файлы .smod содержат большинство игровых активов и являются просто zip-файлами с модифицированными расширениями.

Вы можете извлечь содержимое файла .smod с помощью любой программы сжатия, поддерживающей формат .zip (7zip, WinRAR и т.д.).

В: Могу ли я работать с моей выделенной папкой для мода? Править

Да. Обратите внимание, что Stonehearth предпочитает файлы .smod по папкам: если у вас есть папка с именем my_mod и .smod с именем my_mod.smod, она всегда будет загружать my_mod.smod и игнорировать вашу папку!

В: Как я могу создать файлы .smod? Править

Сожмите папку мода с использованием сжатия zip и изменение расширения архива с ".zip" на ".smod".

Дополнительные вопросы Править

В: Можете ли вы использовать mixintos для изменения массива .json? Править

Да. Изменения добавляются в верхнюю часть массива, хотя это может измениться и в будущем.

В: Что за файлы .luac? Как я могу открыть их? Править

Файлы Luac - это миниатюрные файлы lua. Процесс минимизации удаляет ненужные (в компьютер) пространства, разрывы строк и комментарии и сокращает имена переменных до отдельных букв (например, n, t, e). Это затрудняет понимание человеком, но может улучшить производительность процессора lua.

В: Можно ли использовать mixinto для html-кода? Править

Нет.

В: Можно ли просмотреть информацию об отладке? Править

Да. Установите для параметра enable_debug_keys значение true в файле user_settings.json.

Troubleshooting Править

В: Почему мой мод перестает работать после обновления версии Stonehearth? Править

Возможно, необходимо увеличить поле версии в файле manifest.json мод. В Alpha 14 было введено требование, чтобы была версия 2:

{
    "info" : {
        "name" : "my_mod",
        "version" : 2
    },
...

Имейте в виду, что это требование не является произвольным. Он был введен специально для предотвращения загрузки старых модов, поэтому также могут потребоваться более значительные изменения в вашем модуле.

Общие вопросы Править

В: Где находятся мои файлы Stonehearth? Править

  • Steam: C:\Program Files (x86)\Steam\SteamApps\common\Stonehearth
  • Humble Bundle: C:\Program Files (x86)\Stonehearth

В: Где хранятся мои настройки? Править

User_settings.json.

В: Вы замените термин «mixinto» на «extension»? Править

Может быть. Если мы это сделаем, это будет просто синтаксическое изменение.

Примеры Править

В: Могу ли я взять деревья, чтобы получить шерсть? Править

Да. Resource_node определяет, что выпадает на дерево или растение, когда оно собирается. Найдите файл .json для дерева (например, small_oak_tree.json) и измените ресурс из stonehearth:resources:wood:oak_log на stonehearth:resources:fiber:wool_bundle:

"stonehearth:resource_node": {
     "resource": "stonehearth:resources:fiber:wool_bundle", 
     "durability": 20
}

Другие Править

В: Как уменьшить время загрузки? / Как я могу создать меньший мир? Править

Попробуйте добавить это в свой user_settings.json:

"mods" : {
   "stonehearth" : {
       "world_generation" : "tiny"
    }
 },