Repository navigation
Releases
Releases · LPaicen/brarchive-extractor
brarchive-extractor v0.2.2
Schema Configuration
- Add the package-level
schema-config.jsoncompatibility configuration. - Make document-root title aliases, versionless document rules, and
oneOfdecoding overrides configurable without changing source code. - Continue schema discovery and decoding with empty compatibility rules when
schema-config.jsonis absent.
Compatibility and Diagnostics
- Preserve physical schema filename casing in schema-related error messages.
- Report schema references and unsupported schemas using their actual exported file paths.
brarchive-extractor v0.2.1
What's Changed
- Restore JSON
format_versionfrom the version stored in the MCB header. - Continue using the selected schema version only for decoding and diagnostics.
- Recognize
Camera Documentas a root schema forminecraft:camera_entity. - Add regression coverage for MCB and schema version mismatches.
- Update the English and Chinese MCB format documentation.
Known Limitation
Camera restoration still requires schema exporters to emit "type": "object" for empty marker components. Untyped
empty camera schemas will continue to report unsupported-schema.
Verification
- All 24 automated tests pass.
brarchive-extractor v0.2.0
v0.2.0 - Schema Compatibility and Extraction Tooling
Highlights
- Added
--json-onlyto extract restored MCB content and existing JSON files while ignoring other file types. - Added full-task progress reporting with processing speed.
- Improved compatibility with schemas exported by LLClientSchemaExporter.
- Added Python utilities for preparing test data, copying client schemas, and merging schema exports.
Schema Compatibility
- Read the Minecraft version from LLClientSchemaExporter
export-report.json. - Resolve LL client schema references when title-based
$idvalues differ from underscore-based physical filenames. - Show real schema file paths in missing-reference errors.
- Support schema roots without
exist.json,contents.json, or ametadatadirectory. - Improved schema discovery, document mappings, beta format-version handling, and JSON document restoration.
- Added semantic schema merging with reference rewriting and validation.
CLI Improvements
- Added
--json-only. - Added processing speed to the current and total progress bars.
- Suppressed the
use --list for detailshint when--listor--list-allis already active. - Added filtering and reporting improvements for failed files, empty directories, archive splitting, JSON formatting,
and in-place extraction. - Improved result classification and concise/listed output modes.
Helper Tools
prepare_test_data: copies Minecraft packs and optionally downloads schemas.copy_client_schemas: copies LLClientSchemaExporter output from LeviLauncher installations.merge_schemas: combines schema trees with semantic replacement and reference validation.- Minecraft discovery now checks registered packages and common installation paths without recursively scanning entire
drives.
Documentation and Testing
- Expanded English and Chinese documentation for CLI usage, brarchive structure, and MCB binary layouts.
- Renamed the local test tree to
tests/and the schema fixture directory totests/schemas/. - Added regression coverage for LL schema references, JSON-only extraction, progress speed, schema metadata, and
helper tools.
brarchive-extractor v0.1.0
brarchive-extractor v0.1.0
Initial public release of brarchive-extractor, a TypeScript command-line tool for extracting Minecraft Bedrock
.brarchive files and restoring MCB documents to JSON.
Highlights
- Extract individual
.brarchivefiles or process entire directories recursively - Restore MCB documents using JSON Schemas exported by
bedrock-apis/bds-docs - Select compatible schemas according to document format versions
- Support standard bds-docs exports and recursively discovered schema directories
- Preserve failed MCB files and continue processing by default
- Detect and interactively resolve conflicting archive contents
- Support merged and split archive output layouts
- Format restored MCB JSON or all JSON/JSONC files
- Preserve single-line and block comments when formatting JSONC
- Provide progress indicators, reports, failure summaries, and detailed result listings
- Support MCB-only extraction, in-place processing, and omission of empty directories
Requirements
- Node.js 20 or newer
Notes
MCB restoration depends on the schemas available in the specified schema directory. When a compatible schema cannot be
found or restoration fails, the original MCB binary is preserved by default.