Автор оригинала: FreeCodeCamp Community Member.
Джош Вульф
Обычно изменение Minecraft требует кодирования в Java, и много лесов. Теперь вы можете написать и поделиться модами Minecraft с помощью Tymdercript/JavaScript.
Сценарий Является ли библиотека Minecting Modding Modding Issicue JavaScript, и мы записали поддержку Sypercript, и куча инструментов для создания знакомого опыта разработчика для тех, кто приходит с земли JavaScript (включая Йоман и НПМ).
В этой статье я пройду тебя через настройки и создание вашего первого Minecraft MINECRAFT в течение часа – всего за 20 минут, в зависимости от вашего подключения к Интернету.
В этом видео ( Нажмите здесь Если встроен не работает выше), я показываю, как написать базовый Minecraft Mod, используя TeampScript, и запустите его на локальном компьютере как на рабочем столе, так и на мобильном сервере Minecraft.
Ниже я буду прогуляться по ступеням, со ссылками на ресурсы.
Предпосылки
Вам понадобится некоторое программное обеспечение, установленное на вашем компьютере, для запуска сервера Minecraft и инструменты для записи плагина. Установите все четыре следующие:
- Докер – решение контейнератора.
- Node.js – двигатель и библиотека выполнения JavaScript.
- Портаин – веб-интерфейс для управления контейнерами Docker.
- Визуальный студийный код – Редактор кода.
Minecraft клиент
Вам нужен Minecraft клиент Чтобы проверить свой плагин.
Установите хотя бы одно из следующих действий:
- Minecraft Java Edition – настольный клиент, если вы хотите проверить на фоне Bukkit Server.
- Minecraft Pocket Edition – мобильный клиент, если вы хотите проверить на сервере NUKKIT (телефон/планшет/Xbox). Если вы используете это, вы можете использовать Minecraft Pocket Edition Bedrock Launcher Чтобы запустить мобильный клиент на вашем компьютере.
Монтаж
Теперь, когда у вас установлены предварительные условия, пришло время установить инструменты для сервера и для разработки плагинов.
- Запустите следующую команду:
npm i -g smac yo generator-sma-plugin typescript
Это установит четыре вещи на вашем компьютере:
SMAC
– Модульная архитектура скрипта, Программа, которая запускает серверы Minecraft для ваших плагинов.Йо
– Йоман инструмент лесов.Генератор-SMA-плагин
– Плагин Yeoman для генерации нового плагина Minecraft с использованием модульной архитектуры сценария.Tymdercript
– Typlection Transpiler для преобразования Tymercript Code в JavaScript ES5, который может работать в Minecraft.
Создать новый плагин
Теперь, когда у вас установлен набор инструментов, создайте новый плагин, запустив эту команду:
yo sma-plugin
Это запускает волшебник плагина:
➜ yo sma-plugin
_-----_ ╭──────────────────────────╮ | | │ Welcome to the │ |--(o)--| │ Scriptcraft SMA Plugin │ `---------´ │ generator by │ ( _´U`_ ) │ Magikcraft.io! │ /___A___\ /╰──────────────────────────╯ | ~ | __'.___.'__ ´ ` |° ´ Y `
? Your package name (workspace)
Есть только один вопрос, который вам нужно ответить здесь – имя вашего плагина. Волшебник создаст новую папку с именем плагина и поместите файлы для нового плагина в нем.
Этот скринкаст показывает вам процесс:
Леса в Minecraft плагин с помощью Magikcraft Magikcraft.io позволяет писать плагины Minecraft в Tymdercript/JavaScript, который будет работать на рабочем столе/мобильном телефоне. asciinema.org.
Как только волшебник завершится, он издает сообщение, похожее на это (я выбрал имя My-SMA-плагин
в этом примере):
Отредактируйте свой новый плагин
Запустите Visual Studio Code и откройте каталог, содержащий новый плагин.
Вот описание файлов в вашем новом плагине:
__tests__
– каталог, содержащий модульные тесты для вашего плагина. Они бегут с жасмином. Добавьте больше тестов здесь, когда вы разработаете свой плагин..vscode
– Настройки для Visual Studio Code.Автозагрузка
– Любые файлы здесь автоматически выполняются, когда ваш плагин включен на сервере Minecraft. Используйте это для задач инициализации, регистрация обработчиков событий и так далее.lib
– место для вас, чтобы поставить файлы, которые не должны автоматически загружаться (или которые требуются от ваших автозагрузочных файлов). Если ваш плагин предоставляет функциональные возможности другим плагинам, вы экспортируете, что черезlib/index.ts
Отказnode_modules
– Модули из NPM устанавливаются здесь. Вы не можете использовать модули из NPM, которые используют API V8 (например, fs или http). Многие из функций, которые вам нужны, предоставляются Scriptcraft API и по @ Magikcraft/Core упаковка..editorconfig
– Настройки для редактора.. Гитаттрибуты
– Настройки дляГит
Отказ.gitignore
– файлы игнорировать дляГит
Отказ.Prettierrc
– Настройки для форматирования кода.Package-lock.json
-Версии установленных зависимостей.Package.json
-Нажмите на этот плагин, включая зависимости и скрипты.Readme.md
– Инструкции по разработке и тестированию вашего плагина.smac-nukkit.json
– Конфигурация для запуска сервера NUKKIT с загруженным плагином.smac.json
– Конфигурация для запуска сервера Bukkit с загруженным плагином.tsconfig.json
– Настройка Teadercript для транспитализации плагина в JavaScript.
Открыть Автозагрузка/index.ts
:
Этот файл автоматически выполняется, когда плагин загружен. Изменения, которые вы заставляете здесь, будут видны, когда вы (Re) загружаете плагин.
Запустите сервер разработки
Вы можете загрузить свой плагин на сервере разработки. Есть два сервера, которые вы можете использовать – один для настольного клиента Java, а другой для мобильного клиента Pocket Edition.
Запустите настольный сервер
Запустите это, чтобы начать настольный сервер:
npm run start:bukkit
Это будет:
- Потяните изображение сервера Bukkit из Docker Hub.
- Запустите Bukkit Server с загруженным плагином.
- Запустите Teamptry Transpiler, чтобы транспорт свой код до ES5.
Теперь вы можете подключиться к серверу с вашим настольным клиентом. Нажмите на Многопользовательский
Тогда Прямой Connect
Затем используйте адрес сервера 127.0.0.1
:
Запустите мобильный сервер
Запустите эту команду, чтобы запустить мобильный сервер:
npm run start:nukkit
Это будет:
- Потяните изображение сервера Nukkit из Docker Hub.
- Запустите сервер NUKKIT с загруженным плагином.
- Запустите Teamptry Transpiler, чтобы транспорт свой код до ES5.
Теперь вы можете подключиться к серверу с помощью клиента Pocket Edition. Нажмите на Играть
Тогда Серверы
Затем добавьте сервер с адресом 127.0.0.1
:
Перезагрузить изменения в свой плагин
Поскольку вы меняете плагин и сохраните измененную машину, он автоматически будет транслироваться в JavaScript.
Чтобы перезагрузить изменения в сервере разработки, введите следующее в консоли сервера:
ts onrefresh()
Смотрите скрингасты ниже, чтобы увидеть, как это выглядит.
Остановите сервер
Чтобы остановить сервер, введите эту команду на консоли сервера:
smac stop
Смотрите скрингасты ниже, чтобы увидеть, как выглядит, когда вы запускаете эту команду.
Screencast: запуск, перезагрузка и остановка
Этот скринкаст показывает, что начинает настольный сервер, перезагружая код плагина, а также останавливая сервер разработки.
Начните Magikcraft Development Server Запустите Magikcraft Development Server. asciinema.org.