5種類のエンコードを1か所で処理
Javaビッグエンディアン、Bedrockリトルエンディアン、Bedrock varintネットワークNBT、Java 1.20.2+の名前なしルートネットワークNBT、ヘッダー付きBedrock level.dat に対応します。推測ではなく内容から判定します。
Minecraft Bedrock EditionとJava Editionに対応し、一般的なものから小規模なものまで両方の全サーバーコアを扱えます: Vanilla、Paper、Spigot、Purpur、Folia、Fabric、Forge、NeoForge、Mohist、Sponge、Bedrock Dedicated Server、PocketMine-MP、Nukkit、PowerNukkitX、Cloudburst、Dragonfly、Endstone、LeviLaminaなど。全一覧。
Bedrock Editionの全サーバーコアに対応し、Java Editionの一般的なものから小規模な実装まで扱えます。下の領域に level.dat、playerdata、.nbt、.mcstructure、.schem、.schematic をドロップし、ツリー内の任意のタグを編集して、同じバイナリ形式でダウンロードできます。バイト順、ヘッダー、圧縮方式は自動判定されます。処理はすべてブラウザー内で完結し、アップロード、アカウント、インストールは不要です。
ここに任意のNBTファイルをドロップ
level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · チャンクのダンプNBT(Named Binary Tag)は複数のエンコードを持つ単一の形式で、Minecraftの各エディション、ランチャー、サーバーコアはそれぞれ異なる組み合わせを使います。このエディターはすべてを実装し、ファイルのバイト列から適切な形式を選ぶため、開く前に種類を調べる必要はありません。
| ファイル | 生成元 | エンコード | 圧縮 |
|---|---|---|---|
level.dat | Javaワールド — Vanilla、Paper、Spigot、Fabric、Forge | ビッグエンディアン、名前付きルート | gzip |
level.dat | Bedrockワールド — BDS、PocketMine-MP、Nukkit、MCPE | リトルエンディアン + 8バイトヘッダー | なし |
<uuid>.dat | Java playerdata/ | ビッグエンディアン | gzip |
servers.dat, hotbar.nbt | Javaクライアント | ビッグエンディアン | なし |
idcounts.dat, raids.dat, map_*.dat | Javaワールドの data/ | ビッグエンディアン | gzip |
.nbt | ストラクチャーブロック、データパックの構造物 | ビッグエンディアン | gzip |
.schem, .schematic | WorldEdit、Sponge、MCEdit | ビッグエンディアン | gzip |
.mcstructure | Bedrockのストラクチャーブロック | リトルエンディアン | なし |
| チャンクペイロード | リージョン .mca の抽出データ、LevelDB値 | どちらのバイト順も可 | zlibまたはなし |
| パケットダンプ | Bedrockプロトコル、Java 1.20.2+プロトコル | Varint LE / nameless BE | なし |
world/、Bedrockサーバーでは worlds/YourWorld/、Androidでは games/com.mojang/minecraftWorlds/<id>/ にあります。コピー中に書き込まれないよう、先にサーバーを停止してください。Javaビッグエンディアン、Bedrockリトルエンディアン、Bedrock varintネットワークNBT、Java 1.20.2+の名前なしルートネットワークNBT、ヘッダー付きBedrock level.dat に対応します。推測ではなく内容から判定します。
展開と再圧縮には標準のCompression Streams APIを使うため、Java level.dat を編集してもゲームがそのまま受け付けるファイルになります。
TAG_Long の値は BigInt で保持します。ワールドシードやUUIDの各半分が浮動小数点の丸めで壊れません。
Javaは修正版UTF-8(CESU-8)、Bedrockは標準UTF-8を使います。エディション別にエンコードするため、絵文字や非ラテン文字のワールド名も維持されます。
配列は型付き配列で保持し、ツリーは200項目ずつ遅延描画します。数MBのチャンクNBTでもタブを停止させずに開けます。
ファイル内の任意のタグを名前または値で検索し、経路を展開した状態で直接移動できます。
ツリー全体を、/data やデータパックで使うテキスト形式のSNBTとして出力できます。比較、共有、コマンドへの貼り付けに使えます。
Bedrockファイルを読み、Javaビッグエンディアンgzipで書き出すことも、その逆も可能です。プロトコル開発、テスト、ツール作成に利用できます。
ファイルは FileReader で読み取り、JavaScriptで解析し、メモリー内のblobとして返します。アップロード用エンドポイントはありません。
NBTはサーバー実装ではなくゲーム形式によって定義されます。Minecraftワールドを保存するコアは、このエディターが読めるいずれかのエンコードを使います。以下は宣伝用の一覧ではなく技術的な互換範囲です。
level.dat ヘッダーBedrock Dedicated Server (BDS)、PocketMine-MP(PM3、PM4、PM5)、Nukkit、Nukkit-MOT、PowerNukkitX、Cloudburst Server、Dragonfly、Endstone、LeviLamina、BDSX、Allay、JukeboxMC、GoMint、Sculk、ElementZero、LiteLoaderBDS、およびAndroid、iOS、Windows、コンソール、Switch上の MCPE と MCBE クライアント。いずれも同じ worlds/<World>/level.dat、ヘッダー、タグを使います。サーバー側の手順も参照してください。
Vanilla、CraftBukkit、Spigot、Paper、Purpur、Pufferfish、Folia、Leaves、Gale、Petal、Airplane、Sponge(SpongeVanilla、SpongeForge)、Fabric、Quilt、Forge、NeoForge、Mohist、Arclight、Magma、Ketting、Banner、Cardboard、Glowstone、Thermos、Uberbukkit、その他すべてのフォーク、Modパックサーバー、旧ビルド。world/level.dat を書く実装なら開けます。詳細はこちらです。
Geyser、WaterdogPE、Waterfall、Velocity、BungeeCord はワールドを保持せず、通信上でNBTを転送します。ソケットから取得したデータはネットワークNBTで、Bedrock側はvarintリトルエンディアン、Java 1.20.2+側は名前なしルートのビッグエンディアンです。どちらも直接開けます。
独自フォーク、非公開コア、教材、自作サーバーでも、ファイルがNBTなら5種類のエンコードから判定して開きます。処理はコア名に依存しません。
ページはエンジンを window.NBT として公開しています。UIと同じパーサーをブラウザーコンソールから操作したり、ユーザースクリプトで再利用したりできます。
const bytes = new Uint8Array(await file.arrayBuffer());
const { root, format, compression, headerVersion } = await NBT.read(bytes);
root.value.find(t => t.name === "LevelName").value = "New World";
const out = await NBT.write(root, format, { compression, headerVersion });
タグは { type, name, value, listType } 形式の通常のオブジェクトです。配列は Int8Array、Int32Array、BigInt64Array、longは BigInt です。完全なNBT形式リファレンスに各タグ型とエンコードの違いを記載しています。
はい。MITライセンスのオープンソースです。有料プラン、登録、アップロード容量の制限はありません。サーバー側コンポーネントを使わず、静的ページと2つのアセットファイルだけで動作します。
両方に対応します。Javaファイルはビッグエンディアンで通常gzip圧縮、Bedrockファイルはリトルエンディアンで、level.dat には追加の8バイトヘッダーがあります。受け取った形式を判定し、保存時に同じ形式で書き戻します。
いいえ。ファイルはFileReader APIで端末内から読み取り、ダウンロードデータはメモリー内のblobから生成されます。ページ読み込み後はネットワークを切断しても動作します。
はい。44 pxのタップ領域と固定アクションバーを備えたモバイル優先の画面です。Androidではファイルマネージャーから選択できます。iOSではサンドボックス制限により、先に「ファイル」アプリへ保存してください。
NBTはMinecraftがディスクへ保存するバイナリエンコードです。SNBTはそのテキスト表現で、/data merge などのコマンドに入力する構文です。このエディターはバイナリNBTを読み、比較やコマンドへの貼り付けに使えるSNBTを出力できます。
NBTExplorerなどのデスクトップNBTエディターや、1エディションだけを扱うWebツールの代わりに使えます。対応機能の違いはNBTExplorerオンライン版との比較を参照してください。