TypeScript tools for reading, validating, editing, and writing BrickVerse binary files outside of the engine.
The root format is expected to be:
{
properties: {
Type: string,
Name: string,
...
},
children: []
}npm install
npm run buildInspect a file:
npx tsx examples/inspect.ts ./world.bvbRename an object:
npx tsx examples/edit-name.ts ./world.bvb OldName NewName ./world.edited.bvbRoundtrip test:
npx tsx examples/roundtrip.ts ./world.bvb ./world.copy.bvbCurrently supported:
- null
- bool
- int
- float
- string
- array
- dictionary
- Vector2
- Vector3
- Vector4
- Color
- Transform2D
- Transform3D
- Basis
- Quaternion
- NodePath
- PackedStringArray
- PackedInt32Array
- PackedFloat32Array
- PackedVector3Array
- Resource references
- Object references
These cover common Godot math, path, packed-array, and object/reference payloads used in exported BrickVerse data.
These Godot-specific Variant values still need additional readers/writers:
- Vector2i
- Vector3i
- Vector4i
- Rect2
- Rect2i
- Plane
- AABB
- Projection
- StringName
- RID
- Callable
- Signal
- PackedByteArray
- PackedInt64Array
- PackedFloat64Array
- PackedVector2Array
- PackedColorArray
- PackedVector4Array
import {
readBrickVerseFile,
walkBrickVerseTree,
isKnownBrickVerseType,
} from "..src-to-this";
const scene = readBrickVerseFile("world.bvb");
walkBrickVerseTree(scene, (object) => {
if (!isKnownBrickVerseType(object.properties.Type)) {
console.warn("Unknown type:", object.properties.Type);
}
});This library is not a Godot/BrickEngine runtime.
It does not instantiate BrickVerse classes. It only reads and writes the serialized object tree.
That makes it useful for:
- validation
- static checking
- automated moderation
- migration scripts
- batch edits
- asset inspection
- CI checks
- external world editing tools
BrickVerse Community Source License (BCSL)
Version 1.0
Copyright (c) 2026 Meta Games LLC
This software and associated files (the “Software”) are proprietary intellectual property owned by Meta Games LLC.
Permission is granted to use, modify, and distribute the Software solely for authorized BrickVerse-related projects, services, tools, integrations, infrastructure, development workflows, or content that directly operate with or support the official BrickVerse platform located at https://brickverse.gg.
You may NOT, without prior written permission from Meta Games LLC:
1. Use the Software to create, operate, support, or distribute any competing platform, game engine, sandbox platform, user-generated-content platform, social gaming platform, or virtual world service.
2. Use the Software, in whole or in part, to create clones, replicas, forks, derivative platforms, or substantially similar services to BrickVerse.
3. Remove, alter, or obscure any copyright, trademark, branding, or ownership notices contained within the Software.
4. Redistribute the Software outside of approved BrickVerse-related environments or projects.
5. Sell, sublicense, lease, commercially host, or commercially exploit the Software except as expressly authorized by Meta Games LLC.
6. Reverse engineer proprietary backend systems, authentication systems, moderation systems, anti-cheat systems, networking systems, or platform infrastructure associated with BrickVerse.
Any rights not expressly granted under this license are reserved by Meta Games LLC.
Termination
This license automatically terminates if you violate any term of this agreement. Upon termination, you must immediately cease use of the Software and delete all copies in your possession or control.
No Warranty
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
Limitation of Liability
IN NO EVENT SHALL META GAMES LLC BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY ARISING FROM THE SOFTWARE OR ITS USE.
Meta Games LLC reserves the right to revoke, modify, or replace this license at any time for future versions of the Software.