Установка и настройка дополнений (addons) на Bedrock сервере — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «= Установка и настройка дополнений (addons) на Bedrock сервере = == 1. Подготовка == * Убедитесь, чт…») |
(нет различий)
|
Текущая версия на 10:16, 3 ноября 2025
Содержание
- 1 Установка и настройка дополнений (addons) на Bedrock сервере
- 1.1 1. Подготовка
- 1.2 2. Что такое дополнения (Addons)
- 1.3 3. Структура директорий для дополнений
- 1.4 4. Установка дополнений
- 1.5 5. Активация дополнений на сервере
- 1.6 6. Проверка установки =
- 1.7 7. Удаление дополнений =
- 1.8 8. Обновление дополнений =
- 1.9 9. Популярные дополнения =
- 1.10 10. Устранение неполадок =
- 1.11 Заключение
Установка и настройка дополнений (addons) на Bedrock сервере
1. Подготовка
- Убедитесь, что Bedrock сервер установлен и находится в `/opt/bedrock`.
- Имейте права доступа для редактирования файлов сервера.
- Приготовьте `.mcpack` или `.mcaddon` файлы дополнений.
- Рекомендуется использовать Ubuntu 24.04 LTS.
2. Что такое дополнения (Addons)
Типы дополнений
Bedrock поддерживает два типа дополнений:
1. Behavior Packs (BP) - поведенческие пакеты
* Изменяют поведение игры * Добавляют механики, сущности, предметы
2. Resource Packs (RP) - ресурсные пакеты
* Изменяют внешний вид * Текстуры, модели, звуки
3. Addons - комбинация BP и RP в одном файле
Форматы файлов
- `.mcpack` - пакет ресурсов или поведения
- `.mcaddon` - дополнение (оба пакета вместе)
- `.zip` - архив с дополнением
3. Структура директорий для дополнений
Расположение пакетов
1. Behavior Packs находятся в:
cd /opt/bedrock ls -la behavior_packs/
2. Resource Packs находятся в:
ls -la resource_packs/
3. Структура директорий:
/opt/bedrock/
├── behavior_packs/
│ └── [название_пакета]/
│ └── manifest.json
└── resource_packs/
└── [название_пакета]/
└── manifest.json
4. Установка дополнений
Метод 1: Ручная установка
1. Скачайте дополнение (`.mcpack`, `.mcaddon` или `.zip`)
2. Распакуйте в соответствующие директории:
cd /opt/bedrock \# Для .mcpack или .mcaddon (это zip файлы) unzip дополнение.mcaddon -d temp_addon
3. Определите тип пакета:
ls temp_addon/ \# Если есть manifest.json с "type": "data" - это BP \# Если есть manifest.json с "type": "resources" - это RP
4. Переместите в нужную директорию:
\# Для Behavior Pack mv temp_addon/* behavior_packs/название_пакета/ \# Для Resource Pack mv temp_addon/* resource_packs/название_пакета/ \# Очистка rm -rf temp_addon
Метод 2: Через скрипт
1. Создайте скрипт установки:
sudo nano /usr/local/bin/bedrock-addon-install.sh
2. Добавьте содержимое:
\#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <addon-file.mcpack|mcaddon|zip>"
exit 1
fi
ADDON_FILE="$1"
SERVER_DIR="/opt/bedrock"
TEMP_DIR="/tmp/bedrock-addon-$$"
if [ ! -f "$ADDON_FILE" ]; then
echo "File not found: $ADDON_FILE"
exit 1
fi
\# Создание временной директории
mkdir -p "$TEMP_DIR"
cd "$TEMP_DIR"
\# Распаковка
if [[ "$ADDON_FILE" == *.zip ]] || [[ "$ADDON_FILE" == *.mcpack ]] || [[ "$ADDON_FILE" == *.mcaddon ]]; then
unzip -q "$ADDON_FILE" -d .
else
echo "Unsupported file format"
exit 1
fi
\# Определение типа пакета
if [ -f "manifest.json" ]; then
PACK_TYPE=$(grep -o '"type": "[^"]*"' manifest.json | cut -d'"' -f4)
PACK_NAME=$(grep -o '"name": "[^"]*"' manifest.json | head -1 | cut -d'"' -f4 | tr ' ' '_')
if [ "$PACK_TYPE" == "data" ]; then
TARGET_DIR="$SERVER_DIR/behavior_packs/$PACK_NAME"
echo "Installing Behavior Pack: $PACK_NAME"
elif [ "$PACK_TYPE" == "resources" ]; then
TARGET_DIR="$SERVER_DIR/resource_packs/$PACK_NAME"
echo "Installing Resource Pack: $PACK_NAME"
else
echo "Unknown pack type: $PACK_TYPE"
rm -rf "$TEMP_DIR"
exit 1
fi
mkdir -p "$TARGET_DIR"
cp -r . "$TARGET_DIR"
echo "Addon installed to: $TARGET_DIR"
else
\# Попытка найти вложенные пакеты
for dir in */; do
if [ -f "$dir/manifest.json" ]; then
PACK_TYPE=$(grep -o '"type": "[^"]*"' "$dir/manifest.json" | cut -d'"' -f4)
PACK_NAME=$(grep -o '"name": "[^"]*"' "$dir/manifest.json" | head -1 | cut -d'"' -f4 | tr ' ' '_')
if [ "$PACK_TYPE" == "data" ]; then
TARGET_DIR="$SERVER_DIR/behavior_packs/$PACK_NAME"
echo "Installing Behavior Pack: $PACK_NAME"
elif [ "$PACK_TYPE" == "resources" ]; then
TARGET_DIR="$SERVER_DIR/resource_packs/$PACK_NAME"
echo "Installing Resource Pack: $PACK_NAME"
fi
mkdir -p "$TARGET_DIR"
cp -r "$dir"* "$TARGET_DIR"
echo "Pack installed to: $TARGET_DIR"
fi
done
fi
\# Очистка
rm -rf "$TEMP_DIR"
echo "Installation completed!"
3. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-addon-install.sh
4. Использование:
sudo /usr/local/bin/bedrock-addon-install.sh /path/to/addon.mcaddon
5. Активация дополнений на сервере
Через world_behavior_packs.json
1. Найдите файл для мира:
cd /opt/bedrock find . -name "world_behavior_packs.json"
2. Отредактируйте файл:
nano worlds/ваш_мир/world_behavior_packs.json
3. Добавьте пакет:
[
{
"pack_id": "uuid-пакета",
"version": [1, 0, 0]
}
]
4. UUID пакета находится в `manifest.json`:
cat behavior_packs/название_пакета/manifest.json | grep "uuid"
Через world_resource_packs.json
1. Отредактируйте файл:
nano worlds/ваш_мир/world_resource_packs.json
2. Добавьте пакет:
[
{
"pack_id": "uuid-пакета",
"version": [1, 0, 0]
}
]
Примеры конфигураций
1. Активация одного Behavior Pack:
\# worlds/ваш_мир/world_behavior_packs.json
[
{
"pack_id": "12345678-1234-1234-1234-123456789abc",
"version": [1, 0, 0]
}
]
2. Активация нескольких пакетов:
\# worlds/ваш_мир/world_behavior_packs.json
[
{
"pack_id": "12345678-1234-1234-1234-123456789abc",
"version": [1, 0, 0]
},
{
"pack_id": "87654321-4321-4321-4321-cba987654321",
"version": [1, 0, 0]
}
]
3. Комбинация BP и RP:
\# worlds/ваш_мир/world_behavior_packs.json
[
{
"pack_id": "bp-uuid-1234-5678",
"version": [1, 0, 0]
}
]
\# worlds/ваш_мир/world_resource_packs.json
[
{
"pack_id": "rp-uuid-5678-9012",
"version": [1, 0, 0]
}
]
6. Проверка установки =
Проверка структуры
1. Проверьте наличие пакетов:
ls -la /opt/bedrock/behavior_packs/ ls -la /opt/bedrock/resource_packs/
2. Проверьте manifest.json:
cat /opt/bedrock/behavior_packs/название_пакета/manifest.json
3. Проверьте конфигурацию мира:
cat /opt/bedrock/worlds/ваш_мир/world_behavior_packs.json
Проверка через консоль
1. Подключитесь к консоли:
screen -r minecraft-bedrock
2. Проверьте загруженные пакеты через логи:
tail -f /opt/bedrock/logs/*.log | grep -i "pack"
7. Удаление дополнений =
Ручное удаление
1. Удалите из world_behavior_packs.json или world_resource_packs.json:
nano /opt/bedrock/worlds/ваш_мир/world_behavior_packs.json \# Удалите запись о пакете
2. Удалите директорию пакета (опционально):
rm -rf /opt/bedrock/behavior_packs/название_пакета
Скрипт удаления
1. Создайте скрипт:
sudo nano /usr/local/bin/bedrock-addon-remove.sh
2. Добавьте содержимое:
\#!/bin/bash
if [ -z "$1" ]; then
echo "Usage: $0 <pack-name> [behavior|resource]"
exit 1
fi
PACK_NAME="$1"
PACK_TYPE="$2"
SERVER_DIR="/opt/bedrock"
if [ -z "$PACK_TYPE" ]; then
\# Попытка определить автоматически
if [ -d "$SERVER_DIR/behavior_packs/$PACK_NAME" ]; then
PACK_TYPE="behavior"
elif [ -d "$SERVER_DIR/resource_packs/$PACK_NAME" ]; then
PACK_TYPE="resource"
else
echo "Pack not found: $PACK_NAME"
exit 1
fi
fi
if [ "$PACK_TYPE" == "behavior" ]; then
PACK_DIR="$SERVER_DIR/behavior_packs/$PACK_NAME"
WORLD_CONFIG="$SERVER_DIR/worlds/*/world_behavior_packs.json"
elif [ "$PACK_TYPE" == "resource" ]; then
PACK_DIR="$SERVER_DIR/resource_packs/$PACK_NAME"
WORLD_CONFIG="$SERVER_DIR/worlds/*/world_resource_packs.json"
else
echo "Invalid pack type: $PACK_TYPE"
exit 1
fi
if [ ! -d "$PACK_DIR" ]; then
echo "Pack directory not found: $PACK_DIR"
exit 1
fi
\# Удаление из конфигурации миров
for config in $WORLD_CONFIG; do
if [ -f "$config" ]; then
echo "Removing from world config: $config"
\# Можно использовать jq для более точного удаления
fi
done
\# Удаление директории
echo "Removing pack directory: $PACK_DIR"
rm -rf "$PACK_DIR"
echo "Pack removed successfully!"
3. Сделайте исполняемым:
sudo chmod +x /usr/local/bin/bedrock-addon-remove.sh
4. Использование:
sudo /usr/local/bin/bedrock-addon-remove.sh название_пакета behavior
8. Обновление дополнений =
Процесс обновления
1. Сделайте резервную копию:
cp -r /opt/bedrock/behavior_packs/название_пакета /backup/
2. Удалите старую версию:
rm -rf /opt/bedrock/behavior_packs/название_пакета
3. Установите новую версию:
sudo /usr/local/bin/bedrock-addon-install.sh новая_версия.mcaddon
4. Обновите версию в world_behavior_packs.json:
nano /opt/bedrock/worlds/ваш_мир/world_behavior_packs.json \# Измените version на новую версию
5. Перезапустите сервер:
sudo systemctl restart minecraft-bedrock
9. Популярные дополнения =
Примеры дополнений
1. Моды на мобов
* Новые сущности * Изменения поведения существующих мобов
2. Моды на предметы
* Новые инструменты * Новые блоки и ресурсы
3. Моды на механики
* Новые игровые механики * Изменения существующих систем
Где найти дополнения
- Официальный маркетплейс Minecraft
- Сторонние сайты с дополнениями
- GitHub репозитории
10. Устранение неполадок =
Дополнение не загружается
1. Проверьте формат manifest.json:
python3 -m json.tool /opt/bedrock/behavior_packs/название_пакета/manifest.json
2. Проверьте UUID в конфигурации мира:
cat /opt/bedrock/worlds/ваш_мир/world_behavior_packs.json
3. Проверьте логи:
tail -f /opt/bedrock/logs/*.log | grep -i error
Конфликты дополнений
1. Отключите все дополнения 2. Включайте по одному 3. Определите конфликтующее дополнение
Проблемы с версиями
1. Убедитесь, что версия дополнения совместима с версией сервера 2. Проверьте версию в manifest.json:
cat /opt/bedrock/behavior_packs/название_пакета/manifest.json | grep "minecraft"
Заключение
Установка и настройка дополнений (addons) на Bedrock сервере позволяет значительно расширить возможности сервера. Правильная установка и активация дополнений обеспечит стабильную работу сервера с новым контентом.
Для размещения ваших Bedrock серверов с дополнениями на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных Bedrock серверов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних серверов
Наши специалисты помогут с установкой и настройкой дополнений на Bedrock серверах!