▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Плагины/ResourcePackNoUpload
ResourcePackNoUpload

ResourcePackNoUpload

Плагин ResourcePackNoUpload позволяет раздавать ресурспаки игрокам без внешнего хостинга. Просто, надёжно и без лишних заморочек.

Оцените первым
2.1K
9

ResourcePackNoUpload - раздача ресурспаков без хостинга

Когда у тебя свой сервер Майнкрафт, рано или поздно встаёт вопрос: как раздать игрокам ресурспак? Обычные методы - залить на Google Диск, Dropbox или какой-нибудь хостинг. Но это геморрой: ссылки горят, трафик кончается, а если ресурспак весит под сотню мегабайт - ещё и качается вечно. ResourcePackNoUpload (сокращённо RNU) решает эту проблему.

Что это и зачем нужно

RNU - это плагин (и мод) для Minecraft, который позволяет серверу самому отдавать ресурспак игрокам. Никаких сторонних сервисов, никаких загрузок на сторонние сайты. Ты просто указываешь, где лежит твой ресурспак - хоть в папке, хоть в ZIP-архиве - и RNU сам раздаёт его всем, кто подключается. Игроки получают текстурпак напрямую с твоего сервера, как обычный файл.

Это особенно удобно для:

  • Приватных серверов, где не хочется светить ссылки.
  • Больших ресурспаков, которые не влезают в бесплатные хостинги.
  • Серверов на Pterodactyl, где внешний хостинг подключить сложно.
  • Тех, кто хочет иметь полный контроль над тем, что и как отдаётся.

Как это работает

Всё строится на двух конфигах: server.yml и config.yml. Первый отвечает за порт и адрес, второй - за то, откуда брать ресурспак и как его обрабатывать.

Настройка порта

В server.yml ты указываешь порт, который будет слушать плагин:

port: 25008

Этот порт должен быть открыт для игроков. Если не знаешь, какой выбрать - бери любой свободный, но не конфликтующий с портом самого сервера (обычно 25565).

Также можно задать publicLinkRoot - это полный URL, который получит игрок. Если у тебя Pterodactyl - это поле обязательно, иначе игроки не смогут подключиться.

Загрузка ресурспака

Тут есть несколько вариантов, и каждый подходит под свою ситуацию.

ReadFolder - простая загрузка из папки Если твой ресурспак лежит в виде распакованной папки с файлами, просто укажи путь:
  type: ReadFolder
  folder: "rnu resource pack/Cool Folder/"

Главное, чтобы внутри была та же структура, что и у обычного ресурспака: pack.mcmeta, assets/minecraft... и всё такое.

ReadZip - загрузка из ZIP-архива Если у тебя готовый ZIP-файл с текстурпаком - тоже окей:
  type: ReadZip
  zip: "rnu resource pack/Cool Resource Pack.zip"

Плагин сам его распакует и раздаст игрокам.

Download - скачивает с HTTP-ссылкой и заголовками Звучит странно для плагина, который "не требует загрузки на хостинг", но бывают случаи. Например, ресурспак лежит на Google Drive с приватным доступом. Обычный Minecraft не умеет скачивать с авторизацией, а RNU - умеет, через заголовки:
  type: Download
  cacheName: drive_private_pack
  url: https://www.googleapis.com/drive/v3/files/FILE_ID?alt=media
  headers:
    - key: "Authorization"
      value: "Bearer drive_api3213xih32i9DASKxE83hd9203f1930c0ll-d1v3-t0k3n2389"

Плюс можно включить кеширование, чтобы не скачивать одно и то же каждый раз.

WithMovedFiles - перенос файлов из одного загрузчика в другой Допустим, ты скачал ресурспак из GitHub, но внутри ZIP-архива он лежит во вложенной папке. RNU может перенести файлы в корень:
  type: WithMovedFiles
  folder: "?/"
  destination: ""
  loader:
    type: Download
    url: https://api.github.com/repos/Robsutar/super-cool-pack/zipball
    headers:
      - key: "Authorization"
        value: "Bearer github_pat_uS78ih32i9DASKxE83hd9203f1930c0ll-g1t-t0k3n2389"

Полезно, если не знаешь, как называется вложенная папка.

WithDeletedFiles - удаление лишних файлов из другого загрузчика Надо убрать из ресурспака все `README.md` и прочие текстовки? Легко:
  type: WithDeletedFiles
  toDelete: "**.md"
  loader:
    type: ReadFolder
    folder: "rnu resource pack/Cool Folder/"

Или можно удалить целую папку:

  toDelete: "assets/all_inside_me_will_be_deleted/**/*"
Merged - объединение нескольких ресурспаков А вот это уже интересно. Можно взять несколько загрузчиков и склеить их в один общий ресурспак. Первый в списке имеет приоритет - его файлы перезаписывают остальные:
  type: Merged
  mergedJsonLists:
    - files: "assets/minecraft/models/item/**.json"
      orderBy: "predicate.custom_model_data"
  loaders:
    - type: ReadFolder
      folder: "rnu resource pack/Cool Folder/"
    - type: ReadZip
      zip: "plugins/ModelEngine/resource pack.zip"

Особенно полезно, если хочешь совместить свой ресурспак с чужим, не перезаписывая файлы вручную. А mergedJsonLists автоматически сортирует кастомные модели по числовому полю - чтобы всё работало как надо.

Автоматическая перезагрузка

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

invokers:
  - eventClass: "com.ticxo.modelengine.api.events.ModelRegistrationEvent"
    delay: 10
    repeatCooldown: 10

Это значит, что RNU сам перечитает ресурспак после того, как ModelEngine обновится. Задержка 10 тиков - чтобы дождаться завершения, а repeatCooldown не даст перезагружаться слишком часто.

Разные способы отправки игрокам

По умолчанию RNU использует Delayed отправитель - он работает почти всегда. Но если хочется заморочиться, есть варианты:

PaperPropertyInjector - экспериментальный На серверах Paper можно внедриться прямо в системные свойства сервера, чтобы он сам раздавал ресурспак:
sender:
  type: PaperPropertyInjector

Экспериментально, но если заработает - удобно.

NoSenderFixedLink - если не хочешь автоматической отправки Может, тебе нужно, чтобы ссылка была фиксированной, а игроки сами скачивали через неё? Тогда:
sender:
  type: NoSenderFixedLink
  route: "pack"

Ссылка будет вида http://192.0.2.1:25008/pack.zip. Можно указать в server.properties как resource-pack=... и всё.

Дополнительные настройки

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

Итог

ResourcePackNoUpload - вещь, которая выручает, когда нужно раздавать большие ресурспаки на сервере без внешнего хостинга. Особенно если у тебя Pterodactyl или ты используешь Google Drive с авторизацией. Настройка не самая тривиальная, но один раз разобрался - и забыл. Плюс возможность склеивать несколько ресурспаков в один - это вообще киллер-фича. Скачайте ResourcePackNoUpload и настройте раздачу текстурпаков на своём сервере Minecraft без лишней головной боли.

Партнёрский материал

Сервер для плагина ResourcePackNoUpload - как у профи

Плагин ResourcePackNoUpload создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином ResourcePackNoUpload для друзей можно за пару минут - BungeeHost всё уже подготовил.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

1.21.x1.20.x1.19.x1.18.x1.17.x1.16.x1.15.x1.14.x1.13.x1.12.x1.11.x1.10.x1.9.x1.8.x

Зависимости

Ссылки

Создатели

Детали

Лицензия:
Опубликован:1 год назад
Обновлён:1 год назад
Главная