محرر NBT لـ Bedrock وJava Edition

يدعم 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 مع جميع نوى خوادم Bedrock، كما يدعم Java Edition مع جميع نوى خوادم Java، بما فيها النوى النادرة. أسقط ملف level.dat أو playerdata أو .nbt أو .mcstructure أو .schem أو .schematic في المربع أدناه، وعدّل أي وسم في الشجرة، ثم نزّله بالتنسيق الثنائي نفسه تمامًا. يُكتشف ترتيب البايتات والترويسة والضغط تلقائيًا. تعمل جميع العمليات داخل متصفحك، بلا رفع للملف أو حساب أو تثبيت.

Bedrock EditionJava EditionVanillaPaperSpigotPurpurPufferfishFoliaLeavesFabricQuiltForgeNeoForgeMohistArclightSpongeBedrock Dedicated ServerPocketMine-MPNukkitPowerNukkitXNukkit-MOTCloudburstDragonflyEndstoneLeviLaminaAllayJukeboxMCGoMintGeyserWaterdogPE

أفلت أي ملف NBT هنا

level.dat · .nbt · .mcstructure · .schem · .schematic · .dat · بيانات مقاطع مستخرجة

كل ملف NBT تكتبه Minecraft

NBT (Named Binary Tag) تنسيق واحد له عدة ترميزات، ويستخدم كل إصدار ومشغّل ونواة خادم في Minecraft تركيبة مختلفة منها. ينفّذ هذا المحرر جميع هذه الترميزات ويختار الصحيح من بايتات الملف نفسها، لذلك لا تحتاج إلى معرفة نوع الملف قبل فتحه.

الملفالمصدرالترميزالضغط
level.datعالم Java — Vanilla، Paper، Spigot، Fabric، Forgeكبير النهاية، بجذر مسمّىgzip
level.datعالم Bedrock — BDS، PocketMine-MP، Nukkit، MCPEصغير النهاية + ترويسة 8 بايتبلا ضغط
<uuid>.datJava playerdata/كبير النهايةgzip
servers.dat، hotbar.nbtعميل Javaكبير النهايةبلا ضغط
idcounts.dat، raids.dat، map_*.datعالم Java data/كبير النهايةgzip
.nbtكتل البُنى وبُنى حزم البياناتكبير النهايةgzip
.schem، .schematicWorldEdit، Sponge، MCEditكبير النهايةgzip
.mcstructureكتل البُنى في Bedrockصغير النهايةبلا ضغط
حمولة القطعةحمولة مستخرجة من منطقة .mca أو قيمة LevelDBأي من ترتيبي البايتاتzlib أو بلا ضغط
تفريغ حزمةبروتوكول Bedrock أو بروتوكول Java 1.20.2+Varint LE / BE بلا اسم للجذربلا ضغط

كيفية تعديل ملف NBT

  1. انسخ الملف من الخادم أو الجهاز. تحتفظ به خوادم Java في world/، وخوادم Bedrock في worlds/YourWorld/، وأجهزة Android في games/com.mojang/minecraftWorlds/<id>/. أوقف الخادم أولًا كي لا تتم الكتابة إلى الملف أثناء نسخه.
  2. أسقطه في المحرر. تعرض الشارة أعلى الشجرة ما تم اكتشافه: الإصدار والترميز والضغط، وفي Bedrock إصدار التخزين الموجود في الترويسة.
  3. عدّل القيم. اضغط على قيمة لتعديلها في موضعها. استخدم البحث للانتقال إلى وسم حسب اسمه أو قيمته، + لإضافة وسوم إلى أي مركّب أو قائمة، × لإزالتها.
  4. احفظ ونزّل. يستخدم محددا تنسيق الإخراج والضغط افتراضيًا الإعدادات التي وصل بها الملف، لذلك يحافظ التعديل العادي على التنسيق والبايتات عند الحفظ.
  5. أعد الملف وشغّل الخادم. احتفظ بالملف الأصلي نسخةً احتياطية حتى يحمّل العالم مرة واحدة وتتحقق من سلامته.

ما الذي يميز هذا المحرر

خمسة ترميزات في منطقة إسقاط واحدة

يدعم Java كبير النهاية وBedrock صغير النهاية وNBT الشبكي بنظام varint في Bedrock وNBT الشبكي بلا اسم للجذر في Java 1.20.2+ وملف level.dat ذي الترويسة في Bedrock. تُكتشف الصيغة من الملف ولا تُخمّن.

gzip وzlib داخل المتصفح

يستخدم فك الضغط وإعادة الضغط واجهة Compression Streams API الأصلية، لذلك يعود ملف level.dat من Java بصيغة تقبلها اللعبة دون تغيير غير مقصود.

أعداد طويلة حقيقية بدقة 64 بت

تُحفظ قيم TAG_Long بصيغة BigInt. لذلك تبقى بذور العوالم وأنصاف UUID سليمة بعد التعديل ولا تتلف بسبب تقريب الفاصلة العائمة، وهي مشكلة شائعة في أدوات NBT داخل المتصفح.

ترميز صحيح للسلاسل النصية

تكتب Java ترميز UTF-8 المعدّل (CESU-8)، بينما تكتب Bedrock ترميز UTF-8 القياسي. يرمّز المحرر حسب الإصدار، فتظل الرموز التعبيرية وأسماء العوالم غير اللاتينية سليمة.

مصمم للملفات الكبيرة

تُخزّن المصفوفات في مصفوفات نمطية وتُعرض الشجرة تدريجيًا بمعدل 200 عنصر في كل مرة. يمكن فتح ميغابايت من NBT الخاص بالقطع دون تجميد علامة التبويب.

البحث في الشجرة كاملة

اعثر على أي وسم باسمه أو قيمته في أي موضع من الملف وانتقل إليه مباشرة مع توسيع مساره.

تصدير SNBT

صدّر الشجرة كاملة بصيغة SNBT، وهي الصيغة النصية التي يستخدمها /data وحزم البيانات، للمقارنة أو المشاركة أو اللصق في أمر.

تحويل التنسيق

اقرأ ملف Bedrock واكتبه بصيغة Java كبيرة النهاية ومضغوطة بـ gzip، أو نفّذ العكس. يفيد ذلك في تطوير البروتوكولات والاختبارات والأدوات.

لا يغادر شيء جهازك

يُقرأ الملف عبر FileReader، ويُحلل في JavaScript، ثم يُعاد ككائن blob في الذاكرة. لا توجد نقطة نهاية لرفع الملفات.

برمجيات الخوادم المدعومة — جميعها

تكتب اللعبة بيانات NBT وليس تنفيذ الخادم، لذلك تخزّن أي نواة تحفظ عالم Minecraft البيانات بأحد الترميزات التي يقرأها هذا المحرر. القائمة التالية شاملة وليست دعائية: كل نواة تكتب العالم ببنية Vanilla لأن العميل المتصل يجب أن يتمكن من قراءته.

Bedrock Edition — ‏NBT صغير النهاية وترويسة level.dat من 8 بايت

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، بالإضافة إلى MCPE و MCBE نفسها على Android وiOS وWindows وأجهزة اللعب وSwitch. تستخدم جميعها worlds/<World>/level.dat نفسه والترويسة والوسوم نفسيهما؛ راجع سير العمل على الخادم.

Java Edition — ‏NBT كبير النهاية وضغط 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 وكل تفرّع آخر أو خادم حزمة تعديلات أو إصدار قديم. إذا كان يكتب world/level.dat فسيتمكن هذا المحرر من فتحه — التفاصيل هنا.

الخوادم الوكيلة والجسور

Geyser, WaterdogPE, Waterfall, Velocity و BungeeCord لا تملك عوالم؛ بل تنقل NBT عبر الشبكة. تكون اللقطات من هذه المقابس NBT شبكيًا: varint صغير النهاية في جهة Bedrock، وكبير النهاية بلا اسم للجذر في Java 1.20.2+، ويمكن فتح النوعين هنا مباشرة.

أي برنامج غير موجود في هذه القائمة

التفرعات المخصصة والنوى الخاصة والمشروعات التعليمية والخادم الذي كتبته بنفسك: إذا كان الملف NBT فسيكتشف المحرر أي الترميزات الخمسة يستخدمه ويفتحه. لا يعتمد أي جزء هنا على اسم النواة.

استخدام المحلل من كودك

تتيح الصفحة محركها عبر window.NBT، لذلك يمكنك تشغيل المحلل نفسه المستخدم في الواجهة من وحدة تحكم المتصفح أو إعادة استخدامه في 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 });

الوسوم كائنات عادية بصيغة { type, name, value, listType }، والمصفوفات من الأنواع Int8Array وInt32Array وBigInt64Array، والأعداد الطويلة من النوع BigInt. يوضح مرجع تنسيق NBT كل نوع من الوسوم والفروق بين الترميزات.

الأسئلة الشائعة

هل محرر NBT هذا مجاني؟

نعم، وهو مفتوح المصدر بترخيص MIT. لا توجد فئة مدفوعة أو عملية تسجيل أو حصة للرفع، لأن المحرر لا يحتوي على مكوّن خادم؛ إنه صفحة ثابتة واحدة مع ملفي أصول.

هل يعمل مع Java Edition وBedrock Edition؟

يعمل مع كليهما. ملفات Java Edition كبيرة النهاية وعادةً مضغوطة بـ gzip، بينما ملفات Bedrock صغيرة النهاية ويحمل level.dat ترويسة إضافية من 8 بايت. يكتشف المحرر النوع الذي استلمه ويكتب النوع نفسه عند الحفظ.

هل يُرفع ملف عالمي إلى أي مكان؟

لا. يُقرأ الملف محليًا عبر FileReader API ويُنشأ التنزيل من كائن blob في الذاكرة. بعد تحميل الصفحة يمكنك قطع الاتصال بالشبكة وسيستمر المحرر في العمل.

هل يمكنني استخدامه على Android أو iOS؟

نعم. صُممت الواجهة للجوال أولًا، بأهداف لمس حجمها 44 px وشريط إجراءات ثابت. في Android يمكنك اختيار ملف العالم مباشرة من مدير الملفات؛ وفي iOS يجب أن يكون الملف في تطبيق Files أولًا بسبب العزل.

ما الفرق بين NBT وSNBT؟

NBT هو الترميز الثنائي الذي تخزّنه Minecraft على القرص. أما SNBT فهو صيغته النصية والبنية التي تكتبها في أوامر مثل /data merge. يقرأ المحرر NBT الثنائي ويصدّر SNBT، ما يسهّل مقارنة ملفين أو لصق بنية في أمر.

ما الأدوات التي يحل محلها؟

يحل محل محررات NBT المكتبية مثل NBTExplorer، وأدوات الويب أحادية الغرض التي تدعم إصدارًا واحدًا فقط. راجع مقارنة NBTExplorer عبر الإنترنت لمعرفة ما ينتقل وما لا ينتقل.

أدوات مرتبطة