Как упаковать свое приключение в Модуль для Foundry VTT

Я внезапно понял, что многие мастера желающие поделиться своими приключениями - могут просто не знать как это делать!

Если вы не знаете, как поделиться своим приключением сделанным для Fоundry VTT, ниже для вас будет пошаговая инструкция.

Как упаковать свое приключение в Модуль для Foundry VTT

Организация файлов:

Старайтесь не использовать кириллицу и ЗАГЛАВНЫЕ буквы, особенно в файлах json. Это может создать проблемы после импорта и на системах отличных от windows.

Все ассеты (карты, музыка, изображения) должны либо иметь прямую ссылку на себя в интернете, либо лежать по пути:

worlds/Название_вашего_мира/

Если это не так, то после экспорта, у других мастеров, не будет части изображений/звуков. Пример того

Подготовка приключения:

1. Все папки кладем в папку с названием мира. Это нужно чтобы, при добавлении в текущий мир было проще понять, что к чему принадлежит.

Затем создаем компендиум с приключением

Как упаковать свое приключение в Модуль для Foundry VTT

Заполняем название описание:

Как упаковать свое приключение в Модуль для Foundry VTT

Переходим в папку "Содержание" и перетаскиваем весь контент которым мы хотим поделиться:

Как упаковать свое приключение в Модуль для Foundry VTT

Жмем на кнопку "Сборка приключения" и через несколько секунд компендиум готов.

Как упаковать свое приключение в Модуль для Foundry VTT

Копируем папку из папки worlds

Как упаковать свое приключение в Модуль для Foundry VTT

в папку modules

Как упаковать свое приключение в Модуль для Foundry VTT

Файл world.json переименовываем в module.json

Если у вас все аккуратно систематизировано - то вы можете оставить только папки с Ассетами и папку Packs

Как упаковать свое приключение в Модуль для Foundry VTT

Открываем Папку packs. Это папка в которой лежат созданные вами компендиумы. Скорее всего у вас там будет только один файл с вашим приключением.

Как упаковать свое приключение в Модуль для Foundry VTT

Открываем этот файл и через автозамену меняем везде worlds на modules. Это необходимо, для того, чтобы в вашем модуле все ссылки на файлы корректно работали.

Как упаковать свое приключение в Модуль для Foundry VTT

Не пытайтесь редактировать файл в WORD или другом текстовом редакторе. Он добавит огромное количества кода из-за которого Foundry не сможет прочитать файл.

Если вдруг вы используете Visual Studio Code, он может долго делать автозамену большого количество ссылок. Иногда в таком случае я использую обычный блокнот.

Редактирование module.json

Наш модуль почти готов. Осталось только внести правки. Ниже я оставлю код примера с указанием какой параметр за что отвечает. Вы можете просто скопировать его и внести необходимые для вас правки (не забудьте удалить комментарии // Из-за них файл может не читаться)

{ "title": "Затерянные Копи Фандельвера", // Название модуля "id": "lost_phandalin", // Уникальный идентификатор модуля "description": "<p>Приключение для героев 1-5 уровня...</p>", // Описание модуля "compatibility": { "minimum": "10", // Минимальная версия совместимости "verified": "10.290" // Версия, с которой подтверждена совместимость }, "version": "1.0.15", // Версия модуля, Если вы позже повысите эту цифру, то все смогут обновить его просто нажав кнопку обновления "authors": [ { "name": "Kikimor - adaptation for FVTT", // Имя автора "discord": "Kikimor#2618", // Дискорд автора "url": "https://boosty.to/kikimor_rec", // Ссылка на сайт автора "flags": {} // Флаги } ], "packs": [ { "label": "Затерянные Копи Фандельвера", // Название пакета "type": "Adventure", // Тип пакета "name": "zateryannye-kopi-fandelvera", // Имя пакета "path": "packs/zateryannye-kopi-fandelvera.db", // Путь к файлу пакета "system": "dnd5e", // Система игры "private": false, // Приватность пакета "flags": {} // Флаги } ], "relationships": { "systems": [ { "id": "dnd5e", // Идентификатор системы "type": "system", // Тип связи "compatibility": { "verified": "2.0.1" // Версия, с которой подтверждена совместимость системы } } ], "requires": [ //зависимости { "id": "monks-active-tiles", // Идентификатор модуля "type": "module", // Тип связи "compatibility": {} // Совместимость }, { "id": "monks-tokenbar", // Идентификатор модуля "type": "module", // Тип связи "compatibility": {}, // Совместимость "requires": true // Обязательное наличие модуля }, { "id": "lib-wrapper", // Идентификатор модуля "type": "module", // Тип связи "manifest": "https://github.com/ruipin/fvtt-lib-wrapper/releases/latest/download/module.json", // Ссылка на файл манифеста "compatibility": {}, // Совместимость "requires": false // Необязательное наличие модуля } ] }, "manifest": "https://www.dropbox.com/s/q31me2rloxi2l4n/module.json?dl=1", // Ссылка на файл манифеста "download": "https://www.dropbox.com/s/vn804f0n5xj0l2c/lost_phandalin.zip?dl=1", // ссылка на файл для загрузки. Поддерживется только ZIP "url": "https://boosty.to/kikimor_rec/" // ссылка на модуль }

Загрузка:

Я использую dropbox, однако вы можете использовать любой файлообменник или сервер, которые позволяют создавать прямые ссылка на скачивание файла. В идеале ссылка на эти два файла не должна меняться при обновлении файлов.

Тестирование:

Если у вас всё еще есть сомнения в работоспособности модуля - вы можете попросить меня или кого-то на RU сервере Foundry помочь с проверкой. Чтобы убедиться, что все работает и нет критичных багов.

Распространение:

Разместите свою работу на RU Сервере Foundry в специальном разделе авторского контента

Отправьте это приключение мне, и я сделаю пост в специальном сообществе VK в котором я собираю приключения.

Разместите посты на DTF, или попросите это сделать меня - я помогу.

Делитесь историями и приключениями)) это сделать НРИ более доступными для всех.

Если у вас есть идеи, о том, как упростить релиз приключений - давайте это обсудим и поправим статью.

1717
10 комментариев

Спасибо за информацию. А если я скачал модуль, развернул его, но хотел бы добавить в него мод для удобства игрокам, например от Laaru, как это сделать? В списке модов, только определённые.

Ответить

Я сам использую базу от Лаару. К сожалению нет способа автоматически перетащить изображения и поменять пути.
Поэтому обычно я в ручную переношу монстров если их не очень много.

Ответить

Так стоп. Я может неправильно понял. Вы скачали готовый мир и хотите включить модуль от лаару?

Ответить