Создаём простой датапак «Привет, игрок!» - Ресурспаки и шейдеры для Minecraft!

Создаём простой датапак «Привет, игрок!»

Создаём простой датапак «Привет, игрок!»

Привет. Не особо интересовался я датапаками, но течение популярное и посмотреть захотелось. В особенности меня интересовали не изменения каких-то простых вещей или рецепты, а то, как датапаки могут взаимодействовать с миром и игроков. Я это узнал, и даже предлагаю ради интереса написать простенький свой. Начнём с совсем простого.

Этому и будет посвящен сей материал. Разберём как можно создать свой датапак, его структуру увидим и выведем приветствие игрока в чате. Своего рода Hello world! для датапаков.

Датапаки используют сложные комбинации команд консоли, так что понимание команд игры будет очень полезным.

Свой датапак. Начало!

В удобном месте создаём папку для датапака. Я назову свою hello_datapack.

В неё добавляем файл pack.mcmeta. Буквально можно создать обычный .txt и переименовать. Но так можно сделать только если у вас отображены Расширения имен файлов! Убедитесь, что в конце нет никаких txt!

Пишем туда такую конструкцию:

pack.mcmeta

123456{    “pack”: {        “pack_format”: 6, “description”: “Made by Astler”    }}

Как я писал в инструкции к ресурс паку Свои модели для мобов в Minecraft Optifine.

Цифра 6 для pack_format соответствует версиям 1.16.2 — 1.16.5. Для других версий:

  • 4 для версий 1.13 – 1.14.4
  • 5 для версий 1.15 – 1.16.1
  • 6 для версий 1.16.2 – 1.16.5
  • 7 для версии 1.17+

Теперь создадим необходимые папки. В корне датапака создаём папку «data». В этой папке нужно добавить ещё две папки: «minecraft» и папку для ваших файлов, имя которой выбираем сами. У меня это будет «geekstand».

Переходим в папку «minecraft». Сюда добавляем папку «tags», а в ней ещё одну «functions». Ух. Много папок. Но тут наконец всё. В «functions» добавляем файл load.json. Туда пишем:

load.json

12345{  “values”: [    “geekstand:load”  ]}

Этот файлик создаст точку входа для нашего мода, будет запущено при загрузке мира. И да, нужно учитывать, что вашу надпись можно будет увидеть в консоли при запуске мира, но чтобы этот текст увидел игрок: пишем /reload. Впрочем, я спешу, ведь ещё нет никакой фразы :D.

Теперь переходим к самому контенту датапака. Вернемся в «data». Открываем папку «geekstand» и в неё добавляем ещё одну: «functions». С папками теперь всё.

Помните содержимое файла load.json? Мы написали это: «geekstand:load». Значит теперь, в папку «functions» в папке «geekstand» мы добавим load.mcfunction.

Прописываем туда такую команду:

load.mcfunction

1tellraw @a [{“text”:”\nHi, “,”color”:”blue”,”bold”:”true”}, {“selector”:”@a”,”color”:”blue”,”bold”:”true”}, “!”, {“text”:”How are you?”,”color”:”gold”}]

Эту команду вы можете запустить и в обычной игре, но в этом нет никакого интереса.

Сохраняем файлик и собираем это всё в zip архив. Проверьте после запаковки, что папка «data» и файл pack.mcmeta находятся в корне архива.

Установка и запуск датапака

Запускаем игру, переходим к созданию нового мира:

Нажимаем на Наборы данных:

И просто перетягиваем zip датапака в окно игры.

Активируем его и жмём готово. Создаём мир.

Пишем /reload и видим в чате:

Надо добавить пробел. Редактируем команду и перезапускаем:

1tellraw @a [{“text”:”\nHi, “,”color”:”blue”,”bold”:”true”}, {“selector”:”@a”,”color”:”blue”,”bold”:”true”}, “!”, {“text”:” How are you?”,”color”:”gold”}]
Супер!

Добавим кликабельную ссылку

Теперь добавим ссылку? Многие датапаки предлагают посетить ресурс автора.

Под предыдущей командой добавляем такую строку:

1tellraw @a [{“text”:”Visit my website: “,”color”:”blue”},{“text”:”GeekStand.top\n”,”color”:”#FFD166″,”clickEvent”:{“action”:”open_url”,”value”:”https://geekstand.top”}}]
И ссылка кликабельна!