Настройка среды для разработки

From Vintage Story Wiki
Jump to navigation Jump to search

Программное обеспечение

Когда вы будете готовы начать создавать моды для Vintage Story, вы, вероятно, захотите создать среду разработки, которая упростит процесс кодирования и тестирования ваших творений. Есть несколько приложений, которые помогут вам в разработке модов. Вот несколько предложений:

  • Visual Studio Community это бесплатная и очень мощная среда разработки, описанная ниже. Это также инструмент, который команда Vintage Story использует для создания игры. Он также имеет версию для MacOS
  • MonoDevelop еще одна интегрированная среда разработки, более легкая, чем Visual Studio Community.
  • Notepad++ Это очень простой инструмент для редактирования текста с некоторыми дополнительными функциями. Вы можете кодировать моды в любом текстовом редакторе. Однако при программировании не хватает мгновенной контекстно-зависимой обратной связи, что очень полезно. Если вы выберете этот способ, вы можете использовать саму игру для проб и ошибок, перезагрузив моды во время игры.


Установка инструментов разработки

VintageStory разработан на C #. Выберите одну из вышеперечисленных IDE или других альтернатив. Мы предлагаем «Visual Studio Community» в Windows и в Linux, вы можете использовать «MonoDevelop» или «Visual Studio Code».

Руководство по установке в Linux с MonoDevelop

1. Установить FlatPak Требуется установить MonoDevelop, поэтому, если у вас уже есть FlatPak, вы можете пропустить этот шаг. У FlatPak есть свои руководства по установке для многих дистрибутивов тут.

2. Установить MonoDevelop

Просто откройте терминал и выполните следующую команду: flatpak install --user --from https://download.mono-project.com/repo/monodevelop.flatpakref
Это может занять несколько минут в зависимости от вашего интернет-соединения. (Последняя версия на момент написания была около 275 МБ.) Чтобы открыть MonoDevelop, введите flatpak run com.xamarin.MonoDevelop в терминале.

инструкция по установке Visual Studio на Windows ОС

1. Перейдите по адресу https://visualstudio.microsoft.com/vs/community/ и установите Visual Studio Community. Бесплатный и с полным функционалом. 2. Теперь вы можете либо получить проект шаблона мода, либо вручную настроить проект мода. Шаблон мода предлагает удобный инструмент для настройки нескольких проектов модов, быстрой упаковки и наличия готового к отправке мода.


Настройка с использованием шаблона Mod

Для начала скачайте решение VSModTemplate (от сюда) Теперь вам просто нужно распаковать zip-архив в нужное вам место:

VSMods9.png

Перейдите в VSMods и дважды щелкните VSMods.sln (работает, только если установлен VisualStudio). В качестве альтернативы вы также можете запустить VisualStudio, нажав Открыть проект / решение (Open Project/ Solution), перейдите к извлеченной папке и выберите VSMods.sln .

Но прежде чем вы сможете начать работать, вы должны сначала настроить ModTools.

ЗапускModTools

ModTools позволяет довольно легко выполнять различные задачи, набирая команду. Каждая платформа требует своего способа запуска. Обратите внимание, что мод-инструменты были протестированы только с Visual Studio и MonoDevelop, но они не требуются для модификации игры, это просто упрощает некоторые задачи.

Windows

Двойной клик для запуска vsmodtools.exe.

Linux

Откройте терминал, перейдите к этой папке и введите mono vsmodtools.exe.

Mac OS

Двойной клик modtools.command.

ModTools.png

Настройки

Syntax: setup [optional path]

Прежде чем делать что-то еще, вы должны настроить рабочее пространство. Просто запустите setup , и он автоматически попытается найти каталог установки VintageStory. Если он не сможет найти его, вам будет предложено ввести полный путь. Как только вы ввели свой путь, он обновит файлы вашего проекта, чтобы вы могли начать работать с ним. Теперь снова откройте проект и запустите свой первый тест, нажав start VSMods10.png. Если все сделано правильно, следует запустить VintageStory.


Настройка проекта (ZIP)

Система исходных модов позволяет вам создавать почтовые моды, которые могут поставлять исходный код помимо своих активов. Исходный код компилируется во время выполнения движком modloader. Это имеет большое преимущество в том, что игра открыта и легко модифицируется на ходу, но также имеет 2 основных недостатка. Вплоть до версии 1.7.x у вас есть только жестко запрограммированный список доступных ссылок на библиотеки (System.dll, System.Core.dll, System.Drawing.dll, System.Xml.dll, System.Net.Http.dll, VintagestoryAPI.dll, VSCreativeMod.dll, VSSurvivalMod.dll, VSEssentials.dll, Newtonsoft.Json.dll, protobuf-net.dll, Tavis.JsonPatch.dll, cairo-sharp.dll), любые другие ссылки не будут загружены и, таким образом, Ваш мод не сможет скомпилироваться. Вторым существенным недостатком, влияющим на все версии игры, является то, что встроенный компилятор исходного кода может компилировать код только до C # 6.0, поэтому новые функции языка не поддерживаются. Если какой-либо из этих недостатков является для вас критическим, мы советуем вам создать скомпилированный мод.

Добавление Модов

Syntax: add <modid>

Добавляет новый мод-проект в ваше рабочее пространство, а также генерирует assets , папку src и файл modinfo.json . Мод будет добавлен в VisualStudio и будет загружен VintageStory. Обязательно заполните всю дополнительную информацию в modinfo.json .

Удаление Модов

Syntax: delete <modid>

Перед выполнением убедитесь, что ваш проект закрыт, иначе вы можете столкнуться с некоторыми трудностями. Запуск этой команды полностью удалит данный мод (необратимый).

Упаковка Мода

Syntax: pack <modid>

Создает zip-файл мода и помещает его в / release / <modid> / <modid> _v <modversion> .zip . Этот файл готов к использованию и может быть передан другим людям.

Syntax: pack-all

Упаковывает все моды в вашем рабочем пространстве одновременно.

Настройка проекта (скомпилированный Zip)

Как dll, так и zip моды имеют свои преимущества и недостатки, так почему бы не объединить их вместе? Эта настройка проекта очень похожа на zip. Вместо добавления исходного кода в zip-файл он использует скомпилированную dll. Это позволяет вам иметь все преимущества dll при сохранении структуры активов zip-мода.

Добавление Модов

Syntax: add <modid> compiled

Добавляет скомпилированный zip мод шаблон в ваше рабочее пространство. Разница в том, что он использует скомпилированную dll вместо фактического исходного кода. Все остальные команды одинаковы с zip.

Установка Мода

Syntax: set <modid> <source|compiled>

Устанавливает данный мод zip или компилирует в исходный код. Это может быть полезно, если вы хотите позже изменить тип вашего мода.

Настройка проекта (DLL)

Модификации Dll гораздо более мощные, чем исходные, но у них есть два основных недостатка. Во-первых, они не способны нести библиотеке, которые будут загружены игрой, во-вторых, потому что они настолько мощные, что могут быть опасными. Помимо того, что dll-моды могут (в отличие от других) иметь перекрестные ссылки на мод, предоставлять API и использовать C#7. Мы рекомендуем этот тип мода для более опытных разработчиков.

Добавление Модов

Syntax: add-dll <modid>

Добавляет новый мод в вашу рабочую область. Сгенерированный файл AssemblyInfo.cs будет находиться в вашей рабочей папке, он содержит информацию о моде (имя, автор, версия, описание и т. Д.), Поэтому обязательно измените их, прежде чем распространять мод другим людям. , Мод будет добавлен в Visual Stidio и будет загружен VintageStory.

Удаление мода

Syntax: delete <modid>

Перед выполнением убедитесь, что ваш проект закрыт, иначе вы можете столкнуться с некоторыми трудностями. Запуск этой команды полностью удалит данный мод (необратимый).

Релиз мода

Как только вы запустите VintageStory в вашей рабочей области, будет скомпилирован мод с расширением dll. Вы можете найти его в папке mods с именем: <modid> .dll . Если вы хотите загрузить этот мод или поделиться им с друзьями, это файл, который вам нужно использовать.

  • Создать новый проект
  • Добавьте хотя бы библиотечную ссылку на VintageStoryApi.dll (в Windows она расположена в % appdata% / VintageStory)
  • Откройте свойства проекта. Под отладкой выберите «Запустить внешнюю программу», выберите VintageStory.exe. Также настройте рабочий каталог, в котором находится VintageStory.exe
  • Если вы компилируете в .dll файл, установите атрибут ModInfo в вашем AssemblyInfo.cs (пример)
    • Добавьте следующие аргументы командной строки: -openWorld = "modsamplestest" -p3 --addModPath = "C: \ путь\ до \ вашей \ bin \ папки" --addOrigin = "C: \ путь \ до \ вашей \ assets \ папки \ если \ вы \ такую \ имеете "
  • Если вы хотите отправить исходный мод или мод с assets, настройте modinfo.json (пример). Убедитесь, что ваши папки настроены таким образом, что modPath содержит modinfo.json и папку с именем «src», связывающую ваши исходные файлы. При желании он также может содержать папку ресурсов для ваших assets.
    • Добавьте следующие аргументы командной строки: -openWorld = "modsamplestest" -p3 --addModPath = "C: \ путь\ до \ вашей \ modPath"
  • Я рекомендую добавить файл RedirectLogs.cs в ваш проект, чтобы вы могли видеть вывод журнала в окне вывода вашей Visual Studio. Но, всё же, вы не должны грузить свой мод с ним.
  • Запустите проект и надейтесь на лучшее :D
  • Чтобы отправить мод, взгляните на Modding:Mod Packaging


Если у вас возникли проблемы с vsmodexamples, вы можете узнать о них из проекта vsmodexamples