Skip to main content

Command-line tool designed for managing resource and behavior packs on a Minecraft Bedrock Dedicated Server (BDS)

Project description

BdsPackManager

BdsPackManager is a command-line tool designed for managing resource and behavior packs on a Minecraft Bedrock Dedicated Server (BDS). It allows you to easily add, validate, update, and manage packs, ensuring your server is always up-to-date with the latest content.

Features

  • Add Packs: Supports adding .mcpack, .mcaddon, and directories containing valid manifest.json files.
  • Automatic Unzipping: Automatically extracts and processes .mcpack and .mcaddon files.
  • Validation: Ensures consistency between the packs listed in your server's configuration files and the actual content in the resource_packs and behavior_packs directories.
  • Version Updates: Update the @minecraft/server dependency version in behavior_packs manifests to ensure compatibility with your server version.
  • Selective Updates: Use --update-only to update versions for packs in a specific folder, including .mcpack files.
  • Configurable: Specify the server directory using command-line arguments, a .env file, or ~/.bdspackrc for a global configuration.
  • Interactive or Automatic: Prompt for overwrites or use the --force flag to skip confirmation and automate updates.

Installation

  1. Install via pip:

    pip install bdspackmanager
    
  2. Set up your environment:

    • Optionally, create a .env file in your project directory or a ~/.bdspackrc file for global configuration:

      BDS_DIRECTORY=/path/to/your/bedrock_server
      
    • The tool prioritizes the following configuration sources:

      1. Command-line arguments
      2. Environment variables from .env in the project directory
      3. Environment variables from ~/.bdspackrc

Usage

Command-line Arguments

python -m bdspackmanager [OPTIONS] [PACKS...]

Options

  • PACKS...: One or more paths to .mcpack, .mcaddon, or directories containing a valid manifest.json.
  • --bds-dir: Specify the path to the Bedrock Dedicated Server directory (overrides .env and ~/.bdspackrc).
  • --validate: Validate and rescan JSON files for consistency with the actual content in the resource_packs and behavior_packs directories.
  • --update: Update @minecraft/server dependency versions in all behavior_packs.
  • --update-only <dir>: Update @minecraft/server dependency versions for packs in the specified folder, including .mcpack files.
  • --version <version>: Specify the target version for @minecraft/server when using --update or --update-only.
  • --force: Skip confirmation prompts when overwriting existing packs.

Example Usage

  1. Adding a Pack:

    python -m bdspackmanager /path/to/your_pack.mcpack 
    
  2. Validating Pack Consistency:

    python -m bdspackmanager --validate 
    
  3. Updating All Behavior Packs:

    python -m bdspackmanager --update --version "1.16.0-beta" 
    
  4. Updating Packs in a Specific Folder:

    python -m bdspackmanager --update-only /path/to/pack_folder --version "1.16.0-beta"
    

Global Configuration Support

BdsPackManager supports global configuration through the ~/.bdspackrc file. This file behaves like .env and allows you to set environment variables for the tool. For example:

BDS_DIRECTORY=/path/to/your/bedrock_server

When present, ~/.bdspackrc is automatically loaded and used as a fallback if a .env file is not found in the project directory. You can override these settings with command-line arguments.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bdspackmanager-1.1.3.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bdspackmanager-1.1.3-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file bdspackmanager-1.1.3.tar.gz.

File metadata

  • Download URL: bdspackmanager-1.1.3.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.3 Windows/11

File hashes

Hashes for bdspackmanager-1.1.3.tar.gz
Algorithm Hash digest
SHA256 0960356b28f6498ce315af6574b8d83d659a6865186c5bed73af5851d773dcdc
MD5 246040d02f5ef652960cfae222af6d51
BLAKE2b-256 d21c42b89f11f7fe8643bd1bf684188472fa62a58a41db21e81e338362492849

See more details on using hashes here.

File details

Details for the file bdspackmanager-1.1.3-py3-none-any.whl.

File metadata

  • Download URL: bdspackmanager-1.1.3-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.12.3 Windows/11

File hashes

Hashes for bdspackmanager-1.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0c391fe8ff8466e46ddfd57a52cbcd0c483e3359dfa24b7f1399b5a5c4aa1c70
MD5 bd7f21bdace41b34eff7cd06980d0361
BLAKE2b-256 6ad8537fddf251833f8a579ffaa8b6b450180fc261958c440f4018c15a3c6d88

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page