Java Edition NBT Düzenleyici

Minecraft Bedrock Edition ve Java Edition desteği — her iki sürümün yaygın veya az bilinen tüm sunucu çekirdekleriyle: Vanilla, Paper, Spigot, Purpur, Folia, Fabric, Forge, NeoForge, Mohist, Sponge, Bedrock Dedicated Server, PocketMine-MP, Nukkit, PowerNukkitX, Cloudburst, Dragonfly, Endstone, LeviLamina ve diğerleri. Tam liste.

Minecraft Java Edition verilerini çoğunlukla gzip ile sıkıştırılmış big-endian NBT olarak saklar. Aşağıya herhangi bir Java dosyası bırakın: level.dat, bir playerdata UUID dosyası, servers.dat, bir yapı .nbt, bir WorldEdit şeması. Düzenleyici dosyayı açar, big-endian olarak ayrıştırır ve oyunun kabul edeceği gzip sıkıştırmalı biçimde geri yazar.

VanillaPaperSpigotPurpurFoliaFabricQuiltForgeNeoForgeSponge

bir Java NBT dosyası öğesini buraya bırakın

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · chunk dökümleri

Java dünyasının dosyaları

Aşağıdakilerin tümü yukarıdaki düzenleyicide açılır. Bölge dosyaları (.mca) tek NBT belgesi değil, çok sayıda sıkıştırılmış chunk içeren kapsayıcılardır. Önce bir chunk yükü çıkarın; düzenleyici çıkan zlib sıkıştırmalı chunk NBT’sini okur.

YolİçerikSıkıştırma
world/level.datDünya adı, oyun modu, kurallar, spawn, DataVersiongzip
world/level.dat_oldAynı dosyanın önceki kaydıgzip
world/playerdata/<uuid>.datEnvanter, ender chest, konum, sağlık, XP, niteliklergzip
world/data/raids.dat, idcounts.dat, map_*.datRaid durumu, varlık kimliği sayaçları, harita öğelerigzip
world/data/scoreboard.datHedefler, takımlar, puanlargzip
world/region/*.mcaBölge kapsayıcısındaki chunk NBT’siher chunk için zlib
servers.datİstemcideki çok oyunculu sunucu listesiyok
hotbar.nbtKaydedilmiş creative hızlı çubuklarıyok
*.nbt veri paketlerindeYapı blokları ve jigsaw’larla yerleştirilen yapılargzip

Java NBT’yi nasıl kodlar

  • Big-endian. Her integer ve float, Java’nın DataOutputStream.
  • Adlı kök. Dosya 0x0A, ardından uzunluk önekli UTF-8 kök adı gelir; bu ad tarihsel olarak level.dat.
  • Değiştirilmiş UTF-8. Dizeler Java’nın writeUTF kodlamasını kullanır: iki baytlık uzunluk, NUL için C0 80, temel düzlem dışındaki karakterler iki üç baytlık parçaya (CESU-8) ayrılır. Bunu standart UTF-8 sayan araçlar emojileri bozar; bu düzenleyici doğru kodlar.
  • Varsayılan olarak gzip. NbtIo.readCompressed gzip akışı bekler. Sıkıştırılmadan yazılan dosyalar bazı araçlarda açılır ancak oyunda açılmaz.
  • Ağda adsız kök. 1.20.2’den itibaren protokol NBT’yi kök adı olmadan gönderir. Bu biçimdeki paket dökümleri burada Java ağı olarak algılanır.

Paper, Spigot, Fabric, Forge — aynı dosyalar

Fork’lar ve mod yükleyiciler dünyanın yazılma biçimini değil, sunucunun çalışma biçimini değiştirir. Paper, Purpur, Pufferfish, Folia, Fabric, Quilt, Forge, NeoForge, Mohist, Arclight ve Sponge, Vanilla NBT düzenini kullanır; bu sayfadaki bilgiler aynen geçerlidir. Fork’ların eklediği şey dünya yanındaki ek dosyalardır: paper-world.yml, mod yapılandırmaları — bunlar YAML veya TOML’dir ve NBT ile ilgili değildir.

Modlar ve eklentiler level.dat veya playerdata. Bu etiketler de diğerleri gibi açılır; modun bunları nasıl kullandığını bilmiyorsanız değiştirmeyin.

DataVersion ve sürüm geçişi

Java dünyaları, dünya biçimini tanımlayan ve her snapshot’ta artırılan bir DataVersion integer değeri taşır. Bazı referanslar: 1.16.5 = 2586, 1.17.1 = 2730, 1.18.2 = 2975, 1.19.4 = 3337, 1.20.4 = 3700, 1.21 = 3953. Dünya, onu yazan sürümden eski istemcide bu etiket nedeniyle açılmaz. Değeri elle düşürmek chunk verilerini eski sürüme dönüştürmez; yalnızca korumayı kaldırır. Dünyayı hangi sürümün yazdığını öğrenmek için okuyun, sürüm düşürmeye zorlamak için değiştirmeyin.

Sık Sorulan Sorular

Oyunda yüklenmeyen bir Java level.dat dosyasını açabilir miyim?

Genellikle evet. Düzenleyici sondaki ek baytlara karşı oyundan daha toleranslıdır ve dosya kesilmişse ayrıştırmanın nerede durduğunu bildirir. O da reddederse önceki otomatik kayıt olan level.dat_old dosyasını deneyin.

1.20.2+ ağ NBT’sini destekliyor mu?

Evet. 1.20.2’den itibaren protokol kök adını kullanmaz. Bu biçimdeki döküm Java ağı olarak algılanır; ağ NBT’si veya normal adlı kök dosyası olarak yeniden kaydedilebilir.

.mca bölge dosyasındaki chunk’ı düzenleyebilir miyim?

Chunk NBT’sini bölge kapsayıcısından çıkardıktan sonra düzenleyebilirsiniz. .mca, bir indeks ile çok sayıda zlib sıkıştırmalı chunk yükü içerir; bu düzenleyici kapsayıcıyı değil tek NBT belgesini işler.

playerdata düzenlemek oyuncuyu bozar mı?

Yalnızca sunucu çalışırken düzenlerseniz: sunucu oyuncu durumunu bellekte tutar ve çıkışta dosyaya yazarak değişikliğinizi ezer. Oyuncuyu çevrimdışı bırakın, düzenleyin ve yeniden bağlanmasına izin verin. Bkz. playerdata düzenleyici.

gzip level.dat gerekli mi?

Vanilla yükleyicisi gzip okur. Sıkıştırmayı gzip olarak kaydedin; dosya bu şekilde geldiyse zaten varsayılandır. Oyun dosyayı kabul eder.

İlgili araçlar