Добавить в корзинуПозвонить
Найти в Дзене

Часть 1 "Начало" - как делать моды для Vintage Story

Приветствую тебя, любопытный читатель. Сегодня я научу (Или хотя бы попытаюсь) создавать простые моды для игры Vintage Story. 1. Папки и их расположение По пути AppData\Roaming\VintagestoryData\Mods создаёте папку и называете её так, как будет назван мод. Далее создаёте папку assets и файл с расширением JSON. В папке assets создаёте ещё одну папку, с названием вашего мода (Без пробелов. Это ID вашего мода). А в самой папке, которая названа как ID вашего мода, уже можно делать другие папки. В нашем случае, это будут папки: lang, blocktypes, itemtypes, textures и recipes. Должно выглядеть как-то так: После этого всего, ищем тот самый JSON файл, и переименовываем его в modinfo.json. После этого, пишем в этот файл вот это: "Что же это всё значит?" - Вы можете задаться таким вопросом. А я сейчас объясню. Жёлтые фигурные скобы в левой части изображения - это можно сказать "крышка сундука". Без них нельзя ни в одном JSON файле, при создания мода для VS. "type" - это тип мода. Мод бывает ти

Приветствую тебя, любопытный читатель. Сегодня я научу (Или хотя бы попытаюсь) создавать простые моды для игры Vintage Story.

1. Папки и их расположение

По пути AppData\Roaming\VintagestoryData\Mods создаёте папку и называете её так, как будет назван мод. Далее создаёте папку assets и файл с расширением JSON. В папке assets создаёте ещё одну папку, с названием вашего мода (Без пробелов. Это ID вашего мода). А в самой папке, которая названа как ID вашего мода, уже можно делать другие папки. В нашем случае, это будут папки: lang, blocktypes, itemtypes, textures и recipes. Должно выглядеть как-то так:

Shapes пока что можно не добавлять. Модели мы не будем разбирать в этом уроке.
Shapes пока что можно не добавлять. Модели мы не будем разбирать в этом уроке.

После этого всего, ищем тот самый JSON файл, и переименовываем его в modinfo.json. После этого, пишем в этот файл вот это:

-2

"Что же это всё значит?" - Вы можете задаться таким вопросом. А я сейчас объясню.

Жёлтые фигурные скобы в левой части изображения - это можно сказать "крышка сундука". Без них нельзя ни в одном JSON файле, при создания мода для VS.

"type" - это тип мода. Мод бывает типов: "Набор" - это просто визуальные эффекты, "Контент" - может добавлять какие либо предметы и т.д., и использует JSON файлы, "Программный" - использует скрипты C#. В нашем случае записываем туда "content" (Внимание: все буквенные записи нужно помещать в кавычки).

"modid" - это ID мода. Сюда просто записываем то, как называется папка после папки assets.

"name" - это имя мода. Сюда можно записать что угодно.

"authors" - это авторы самого мода. Тут нужен список (То есть квадратные скобки). Все имена пишутся через запятую.

"description" - описание мода. Тоже можно писать что угодно.

"verson" - версия самого мода.

"dependency" - для какой версии предназначен мод. Здесь нам нужно открыть массив (Фигурные скобки). В массиве записываете для какой версии этот мод (После "game")

Поздравляю! Вы создали информацию о своём моде! Можете зайти в VS и посмотреть. Должно выглядеть так:

-3

Если всё так - вы на правильном пути.

2. Первые блоки и текстуры

Создаём любую текстуру, и помещаем её по пути <mod>\textures\block. Тут будут храниться текстуры для блоков

Теперь, наконец-то, мы добавим блок для нашего мода. В папке blocktypes нам нужно сделать JSON файл (Называете его так, как будет называться блок). После пишем это:

Выглядит интереснее, не правда ли?
Выглядит интереснее, не правда ли?

Тут мы так же ставим фигурные скобки, и начинаем писать.

"code" - это ID блока в моде. Так как у меня это блок картона - то я записал "cardboardblock".

"creativeinventory" - это список вкладок, в которых будет этот блок. Вы так же можете добавить свою вкладку (Просто написать вместо "general" что то своё).

"blockmaterial" - материал блока. У меня это камень, но вы можете сделать керамику, стекло, почва и т.д.

"drawtype" - это тип модели блока. В основном тут используется только "cube".

"textures" - просто текстуры.

"all" - указание того, что мы указываем путь к текстуре для всех сторон куба.

"base" - основная текстура. (Примечание: "cardboard" - это домен (ID) нашего мода. "block/cardboard_texture2" - это путь к самой текстуре. Путь начинается от папки textures)

"alternates" - альтернативные текстуры. (Если таковых не будет, то можно просто не добавлять их).

"resistance" - твёрдость блока.

"sounds" - звуки.

"place" - звук, который воспроизводиться, когда игрок ставит этот блок. (Примечание: "game" - указывает, что звук взят из самой игры. "block/planks" - путь к звуку. Звуки можно искать по пути: AppData\Roaming\Vintagestory\assets\survival\sounds)

"walk" - звук, который воспроизводиться, когда игрок ходит по этому блоку.

На самом то деле, всё это можно написать хоть в одну строку. Главное не забывать запятые (Порядок, кстати, вроде как тоже не важен).

Теперь вы можете зайти в VS (Если что, в мир в котором тестируется мод можно не перезаходить, а просто нажать ctrl + f1). Вот так должно получится:

-5
-6

На самом то деле, у вас должно быть написано что то непонятное, потому что мы ещё не добавили локализацию. Сейчас мы её и добавим.

3. Локализация

Помните папку "lang"? А она вас помнит. Пора локализовывать свой мод!

По пути AppData\Roaming\VintagestoryData\Mods\cardboard\assets\cardboard\lang создаём JSON файл с названием ru.json и файл en.json (Для английской и русской локализации). После этого, заходим в любой из файлов

Так как я показываю мод, который уже в разработке, тут больше переводов чем нужно
Так как я показываю мод, который уже в разработке, тут больше переводов чем нужно

По традиции ставим скобки, и пишем.

"block-*" - это тип того, что мы хотим локализовать.

"cardboardblock" - это ID того, что мы хотим локализовать

"Блок картона" - это сам перевод

Теперь, зайдя в игру, вы увидите чудо: ваш блок переведён на <lang> язык!

Локализация - это просто. Главное знать перевод.

На этом часть 1 закончена. Часть 2 выйдет совсем скоро!