Модинфо

From Vintage Story Wiki
This page is a translated version of the page Modinfo and the translation is 100% complete.
Other languages:

This page was last verified for Vintage Story version 1.15.


Обзор

Каждому моду нужна некоторая базовая информация, чтобы его можно было распознать как мод. Это можно сделать либо путем помещения этой информации в сборку (больше не рекомендуется), либо с помощью файла modinfo.json. Modinfo.json находится в корне каталога вашего мода и выглядит, например, так:

{
  "type": "code",
  "modid": "mycoolmod",
  "name": "My Cool Mod (very cool)",
  "authors": ["SakuraSpiritKid69"],
  "description": "Mod that is so cool it freezes you.",
  "version": "1.2.3",
  "dependencies": {
    "game": "1.14.10",
  }
}

Ссылка

Поддерживаются следующие свойства и значения. Значения Жирный обязательны. Свойства не чувствительны к регистру и могут отображаться в любом порядке.

Свойство Пример Описание
type "type": "code" Тип этого мода. Может быть «Тема», «Содержание» или «Код».
name "name": "My cool Mod" Название этого мода.
modid "modid": "mycoolmod" Идентификатор мода (домен) этого мода.
Должен содержать только строчные буквы и цифры. Не допускается использование специальных символов, пробелов, заглавных букв и т. д.
Если он не указан, он будет сгенерирован из имени, но рекомендуется выбрать идентификатор самостоятельно, поскольку он будет использоваться в качестве домена для вашего мода.
version "version": "1.2.3" Версия этого мода (используется для разрешения зависимостей)
networkVersion "networkVersion" : "1.2.3" Сетевая версия этого мода.
Измените этот номер, если пользователю, у которого установлена более старая версия вашего мода, не должно быть разрешено подключаться к серверу с более новой версией.
Значением по умолчанию является версия.
textureSize "textureSize" : 32 Если мод представляет собой пакет текстур, который изменяет текстуры травы верхнего слоя почвы, укажите размер текстуры здесь. Значение по умолчанию = 32
description "description": "Mod that is so cool it freezes you." Краткое описание того, что делает этот мод.
website "website": "https://wiki.vintagestory.at" Расположение сайта или сайта проекта этого мода.
authors "authors": ["SakuraSpiritKid69"] Имена людей, работающих над этим модом. Должен быть отформатирован как массив, даже если есть только один автор.
contributors "contributors": ["noone"] Имена людей, участвовавших в создании этого мода.
side "side" : "Universal" На какой стороне(ах) работает этот мод. Может быть «Server», «Client» или «Universal». Значение по умолчанию = "Universal"
requiredOnClient "requiredOnClient": true Если установлено значение false и мод является универсальным, клиентам не нужен мод для присоединения. Значение по умолчанию = True
requiredOnServer "requiredOnServer": true Если установлено значение false и мод универсальный, мод не отключается, если его нет на сервере. Значение по умолчанию = True
dependencies "dependencies": { "game": "1.12.14", "survival": "1.12.14"} Список модов (и версий), от которых зависит этот мод.
Игра использует SemVer для сравнения, используя логику, описанную здесь: https://semver.org/, например 1.15. 0 > 1.15.0-rc.3 > 1.15.0-rc.2
Например, если вы установите зависимость вашего мода от "game": "1.15.0-rc.2", он будет совместим с этой версией и всеми версиями, выпущенными позже.
Вы можете установить значение пустой строки или звездочки ("game": "*"), чтобы обеспечить совместимость со всеми версиями.

Техническое примечание

Свойства modinfo.json напрямую соответствуют полям и свойствам класса API ModInfo (и являются загружается в этот класс с помощью JsonConvert.DeserializeObject). Проверьте доступные поля в документации API, чтобы увидеть полный актуальный список всех возможных свойств.


Создание модов
Зеленые вещи требуют программирования на C#
Основы

С чего начать | Типы модов | Простые примеры | Набор тем

Система ассетов | Текстуры | Предметы | Рецепты | Блоки | Сущности | Редактор моделей | Базовая анимация | VTML и иконки | Упаковка и выпуск мода | Modinfo | Отладка

Продвинутое

JSON-патчи | Продвинутый предмет JSON | Ремаппер|Modding:The_Remapper | Сервер и клиент | Совместимость с другими модами

Настройка среды разработки (Основное - Windows - Linux)

Продвинутые блоки en | Продвинутые предметы en | Взаимодействие блоков и предметов en | Block Behavior | Block Entities en | Простые частицы en | Доступ к миру en | Базовая обработка инвентаря en | Команды чата en | GUI en | Взаимодействие сервер-клиент en | Monkey patching (Harmony) en

Управление данными

Хранение данных в игровом сейве en | Конфиг мода en | Хранение данных в чанке en | Tree Attribute en

Генерация мира

Концепт генерации | Рельеф | Руды en | Деревья en | WorldGen API en

Рендеринг

Шейдеры и рендереры en

Обзор свойства

Предмет en | Энтити en | Блок en | Block Behaviors en | Классы блока en | Block Entity en | Block Entity Behaviors en

Рабочие процессы и инфраструктура

Советы по эффективности моддинга | Совместимость мод-движка | Расширяемость модов | Порядок загрузки

Дополнительные ресурсы

List of server commands/ru | List of client commands/ru | Client startup parameters/ru | Creative Starter Guide/ru | Рандомные тики | Система ботов | WorldEdit | Cinematic Camera/ru

Примеры модов | Документация по API | Репозиторий GitHub