Skip to main content

No project description provided

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, and manage packs, ensuring that 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.
  • Configurable: Specify the server directory using command-line arguments, environment variables, or .env files.
  • Interactive: Prompts before overwriting existing packs to prevent accidental data loss.

Installation

  1. Install via pip:

    pip install bdspackmanager
    
  2. Set up your environment:

    • Optionally, create a .env file in the root directory to store your BDS directory path:
      BDS_DIRECTORY=/path/to/your/bedrock_server
      

Usage

Command-line Arguments

python -m bds_pack_manager.main [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 environment variable).
  • --validate: Validate and rescan JSON files for consistency with the actual content in the resource_packs and behavior_packs directories.

Example Usage

  1. Adding a Pack:

    python -m bds_pack_manager.main /path/to/your_pack.mcpack
    
  2. Adding Multiple Packs:

    python -m bds_pack_manager.main /path/to/your_pack_1.mcpack /path/to/your_pack_2.mcaddon /path/to/pack_directory
    
  3. Validating Pack Consistency:

    python -m bds_pack_manager.main --validate
    

Directory Structure

.
├── bds_pack_manager
│   ├── __init__.py
│   ├── main.py
│   ├── pack_handler.py
│   ├── manifest_parser.py
│   ├── json_updater.py
│   ├── utils.py
├── tests
│   ├── test_pack_handler.py
│   ├── test_manifest_parser.py
│   ├── test_json_updater.py
│   ├── test_utils.py
├── .env
├── requirements.txt
└── README.md

Development

Running Tests

To run tests, use pytest:

pytest

Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any improvements or bug fixes.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Notes

  • Ensure that your Bedrock Dedicated Server is properly configured before using this tool.
  • Handle with care: Always back up your server before making significant changes.

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-0.1.10.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

bdspackmanager-0.1.10-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for bdspackmanager-0.1.10.tar.gz
Algorithm Hash digest
SHA256 81fccf797f109ede6df8402055d2d2eca5777630c9cc0e522266ccfda562fa10
MD5 9ce55e11c36d85921f255f1a169d077b
BLAKE2b-256 9cb29c1ab71078da0a78d15b32e9492f082102e15bc6c580748cd2f335c552cb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for bdspackmanager-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3f82ef8b7e244ad159f1bb986a3d02425393b5cdbd9537e4251cbe5490e25796
MD5 717c0e8d39519a028b0f0c412e7363ea
BLAKE2b-256 108137fcf238d28e7ae3384a389fd0d6f359d8f01924f7a9ad9c5bb1aa6b4d79

See more details on using hashes here.

Supported by

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