Trình sửa NBT Bedrock — hỗ trợ cả Java Edition

Hỗ trợ Minecraft Bedrock Edition và Java Edition — cùng mọi phần mềm máy chủ phổ biến hoặc ít gặp của cả hai: Vanilla, Paper, Spigot, Purpur, Folia, Fabric, Forge, NeoForge, Mohist, Sponge, Bedrock Dedicated Server, PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly, Endstone, LeviLamina và các phần mềm còn lại. Danh sách đầy đủ.

Hỗ trợ Bedrock Edition cùng mọi phần mềm máy chủ Bedrock, đồng thời hỗ trợ Java Edition và mọi phần mềm máy chủ Java, kể cả các bản ít gặp. Thả tệp level.dat, playerdata, .nbt, .mcstructure, .schem hoặc .schematic vào ô bên dưới, sửa bất kỳ thẻ nào trong cây rồi tải xuống với đúng định dạng nhị phân ban đầu. Thứ tự byte, header và kiểu nén được tự động phát hiện. Mọi thao tác chạy trong trình duyệt — không tải tệp lên, không cần tài khoản hay cài đặt.

Bedrock EditionJava EditionVanillaPaperSpigotPurpurPufferfishFoliaLeavesFabricQuiltForgeNeoForgeMohistArclightSpongeBedrock Dedicated ServerPocketMine-MPNukkitPowerNukkitXNukkit-MOTCloudburstDragonflyEndstoneLeviLaminaAllayJukeboxMCGoMintGeyserWaterdogPE

Thả tệp NBT bất kỳ vào đây

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · dữ liệu chunk trích xuất

Mọi tệp NBT do Minecraft tạo

NBT (Named Binary Tag) là một định dạng có nhiều kiểu mã hóa, và mỗi phiên bản Minecraft, launcher cùng phần mềm máy chủ dùng một tổ hợp khác nhau. Trình sửa này triển khai tất cả và tự chọn đúng kiểu từ chính các byte, nên bạn không cần biết biến thể của tệp trước khi mở.

TệpNguồnMã hóaKiểu nén
level.datThế giới Java — Vanilla, Paper, Spigot, Fabric, ForgeBig-endian, thẻ gốc có têngzip
level.datThế giới Bedrock — BDS, PocketMine-MP, Nukkit, MCPELittle-endian + header 8 byteKhông
<uuid>.datplayerdata/ JavaBig-endiangzip
servers.dat, hotbar.nbtMáy khách JavaBig-endianKhông
idcounts.dat, raids.dat, map_*.datdata/ của thế giới JavaBig-endiangzip
.nbtStructure block, cấu trúc datapackBig-endiangzip
.schem, .schematicWorldEdit, Sponge, MCEditBig-endiangzip
.mcstructureStructure block BedrockLittle-endianKhông
Payload chunkTrích xuất vùng .mca, giá trị LevelDBMột trong hai thứ tự bytezlib hoặc không nén
Bản dump gói tinGiao thức Bedrock, giao thức Java 1.20.2+Varint LE / BE không tênKhông

Cách sửa tệp NBT

  1. Lấy tệp khỏi máy chủ hoặc thiết bị. Máy chủ Java giữ tệp trong world/, máy chủ Bedrock trong worlds/YourWorld/, Android trong games/com.mojang/minecraftWorlds/<id>/. Trước tiên hãy dừng máy chủ để tệp không bị ghi trong lúc sao chép.
  2. Thả tệp vào trình sửa. Nhãn phía trên cây cho biết những gì đã phát hiện: phiên bản, kiểu mã hóa, kiểu nén và với Bedrock là phiên bản lưu trữ trong header.
  3. Sửa. Chạm vào giá trị để sửa tại chỗ. Dùng tìm kiếm để chuyển đến thẻ theo tên hoặc giá trị, dùng + để thêm thẻ vào compound hoặc danh sách, và × để xóa.
  4. Lưu & tải xuống. Bộ chọn định dạng đầu ra và kiểu nén mặc định dùng đúng giá trị của tệp đầu vào, nên thao tác sửa thông thường giữ nguyên định dạng đến từng byte.
  5. Chép lại và khởi động. Giữ tệp gốc làm bản sao lưu cho đến khi thế giới tải thành công một lần và hiển thị đúng.

Điểm khác biệt của trình sửa này

Năm kiểu mã hóa, một vùng thả tệp

Java big-endian, Bedrock little-endian, NBT mạng varint Bedrock, NBT mạng không tên gốc từ Java 1.20.2+ và level.dat Bedrock có header. Công cụ phát hiện, không phỏng đoán.

gzip và zlib trong trình duyệt

Việc giải nén và nén lại dùng Compression Streams API gốc, vì vậy level.dat Java được ghi lại thành tệp mà trò chơi chấp nhận với định dạng không đổi.

Long 64 bit thực

Giá trị TAG_Long được giữ dưới dạng BigInt. Seed thế giới và các nửa UUID không bị sai do làm tròn số dấu phẩy động như ở nhiều công cụ NBT trên trình duyệt.

Mã hóa chuỗi chính xác

Java ghi UTF-8 sửa đổi (CESU-8), Bedrock ghi UTF-8 tiêu chuẩn. Trình sửa mã hóa theo từng phiên bản nên emoji và tên thế giới không dùng chữ Latin vẫn nguyên vẹn.

Được thiết kế cho tệp lớn

Mảng được giữ trong typed array và cây kết xuất theo nhu cầu, mỗi lần 200 mục. Một megabyte NBT chunk có thể mở mà không làm treo tab.

Tìm kiếm toàn cây

Tìm thẻ theo tên hoặc giá trị ở bất kỳ đâu trong tệp và chuyển thẳng đến thẻ với đường dẫn đã mở rộng.

Xuất SNBT

Xuất toàn bộ cây thành SNBT — dạng văn bản dùng bởi /data và datapack — để so sánh, chia sẻ hoặc dán vào lệnh.

Chuyển đổi định dạng

Đọc tệp Bedrock rồi ghi thành Java big-endian gzip hoặc ngược lại. Hữu ích cho công việc giao thức, kiểm thử và xây dựng công cụ.

Dữ liệu không rời thiết bị

Tệp được đọc bằng FileReader, phân tích trong JavaScript và trả lại dưới dạng blob trong bộ nhớ. Không tồn tại endpoint tải lên.

Phần mềm máy chủ được hỗ trợ — tất cả

NBT do trò chơi ghi, không phải do cách triển khai máy chủ quyết định, nên mọi phần mềm lưu thế giới Minecraft đều dùng một trong các kiểu mã hóa mà trình sửa đọc được. Danh sách bên dưới là đầy đủ theo nghĩa đó, không phải nội dung quảng cáo: phần mềm ghi thế giới phải dùng cấu trúc của Vanilla vì máy khách ở đầu kia cần đọc được.

Bedrock Edition — NBT little-endian, header level.dat 8 byte

Bedrock Dedicated Server (BDS), PocketMine-MP (PM3, PM4, PM5), Nukkit, Nukkit-MOT, PowerNukkitX, Cloudburst Server, Dragonfly, Endstone, LeviLamina và BDSX, Allay, JukeboxMC, GoMint, Sculk, ElementZero, LiteLoaderBDS, cùng chính các máy khách MCPE và MCBE trên Android, iOS, Windows, console và Switch. Cùng worlds/<World>/level.dat, cùng header, cùng thẻ — xem quy trình phía máy chủ.

Java Edition — NBT big-endian, gzip

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 và mọi fork, máy chủ modpack hoặc bản cũ khác. Nếu ghi world/level.dat, trình sửa này sẽ mở được — xem chi tiết tại đây.

Proxy và cầu nối

Geyser, WaterdogPE, Waterfall, Velocity và BungeeCord không sở hữu thế giới; chúng truyền NBT qua mạng. Dữ liệu bắt từ các socket này là NBT mạng — varint little-endian phía Bedrock, big-endian không tên gốc trên Java 1.20.2+ — và cả hai đều mở trực tiếp tại đây.

Phần mềm không có trong danh sách

Fork tùy chỉnh, phần mềm riêng, dự án học tập hoặc máy chủ do bạn tự viết: nếu tệp là NBT, trình sửa sẽ phát hiện một trong năm kiểu mã hóa và mở nó. Không có chức năng nào ở đây phụ thuộc vào tên phần mềm.

Dùng bộ phân tích trong mã của bạn

Trang cung cấp engine qua window.NBT, vì vậy bộ phân tích chạy giao diện cũng có thể được điều khiển từ console trình duyệt hoặc tái sử dụng trong userscript:

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 });

Thẻ là các đối tượng thuần — { type, name, value, listType } — mảng dùng Int8Array, Int32Array và BigInt64Array, còn long dùng BigInt. Tài liệu đầy đủ về định dạng NBT mô tả mọi kiểu thẻ và điểm khác nhau giữa các kiểu mã hóa.

Câu hỏi thường gặp

Trình sửa NBT này có miễn phí không?

Có, và mã nguồn được phát hành theo giấy phép MIT. Không có gói trả phí, không cần đăng ký và không giới hạn dung lượng tải lên vì hoàn toàn không có thành phần máy chủ — toàn bộ trình sửa chỉ gồm một trang tĩnh và hai tệp tài nguyên.

Công cụ có dùng được với Java Edition và Bedrock Edition không?

Có, với cả hai. Tệp Java Edition dùng big-endian và thường được nén gzip; tệp Bedrock dùng little-endian, còn level.dat có thêm header 8 byte. Trình sửa tự phát hiện biến thể đã nhận và ghi lại đúng biến thể đó khi lưu.

Tệp thế giới của tôi có được tải lên đâu không?

Không. Tệp được đọc cục bộ bằng API FileReader và bản tải xuống được tạo từ blob trong bộ nhớ. Sau khi trang tải xong, bạn có thể ngắt mạng và công cụ vẫn hoạt động.

Tôi có thể dùng trên Android hoặc iOS không?

Có. Bố cục ưu tiên thiết bị di động, với vùng chạm 44 px và thanh thao tác cố định. Trên Android, bạn có thể chọn tệp thế giới trực tiếp từ trình quản lý tệp; trên iOS, do cơ chế sandbox, trước tiên tệp phải nằm trong ứng dụng Files.

NBT khác SNBT ở điểm nào?

NBT là dạng mã hóa nhị phân Minecraft lưu trên đĩa. SNBT là dạng văn bản của nó, tức cú pháp dùng trong các lệnh như /data merge. Trình sửa này đọc NBT nhị phân và có thể xuất SNBT để dễ so sánh hai tệp hoặc dán cấu trúc vào lệnh.

Công cụ này thay thế những phần mềm nào?

Các trình sửa NBT trên máy tính như NBTExplorer và các công cụ web chỉ xử lý một phiên bản. Xem phần so sánh NBTExplorer trực tuyến để biết chức năng nào tương đương và chức năng nào không.

Công cụ liên quan