جداول النهب: المجموعات، اللفات، والفرق بين الإدخالات والوظائف
جدول النهب الذي لا يسقط شيئًا عادة ما تكون أوزانه أو شروطه في الطبقة الخاطئة. إليك ما تتحكم فيه كل طبقة متداخلة، والوظائف التي تستحق المعرفة.
ملف JSON الخاص بجدول النهب يتكون من أربعة مستويات عميقة، وكل مستوى يعني شيئًا مختلفًا. تقريبًا كل حالة "جدولي لا يسقط شيئًا" هي شرط مرفق بمستوى واحد بعيدًا عن المكان الذي كان من المفترض أن يذهب إليه.
المستويات الأربعة
table
└── pools[] how many independent draws
└── entries[] what can come out of this draw
└── functions[] modify the item that came out
rollsعلى المجموعة هو عدد مرات سحب تلك المجموعة. مجموعة واحدة بـrolls: 3تسحب ثلاث مرات من نفس قائمة الإدخالات.weightعلى الإدخال هو نسبي ضمن مجموعته. لا تحتاج الأوزان إلى أن تتجمع إلى أي شيء؛ إدخال بوزن 10 مقابل إدخال بوزن 90 يظهر عشر مرات.conditionsموجودة في كل مستوى وتعني أشياء مختلفة. على المجموعة، تتحكم في السحب بأكمله. على الإدخال، تتحكم في هذا الخيار الواحد. على الوظيفة، تتحكم في التعديل فقط.
ضمان السقوط يتطلب مجموعة خاصة به
لا يمكن للأوزان أن تضمن أي شيء، لأن المجموعة تختار إدخالًا واحدًا بالضبط لكل لفة. الجدول الذي يجب أن يسقط دائمًا خريطة بالإضافة إلى نهب عشوائي يحتاج إلى مجموعتين:
"pools": [
{ "rolls": 1, "entries": [ { "type": "minecraft:item", "name": "minecraft:filled_map" } ] },
{ "rolls": { "min": 2, "max": 4 }, "entries": [ … weighted list … ] }
]
المجموعة الأولى تحتوي على إدخال واحد، لذا فهي تنتجه دائمًا. المجموعة الثانية تسحب 2-4 مرات من القائمة الموزونة.
الوظائف التي تستحق المعرفة
| الوظيفة | تفعل |
|---|---|
set_count | عدد ثابت أو نطاق uniform |
enchant_randomly | سحر عشوائي، اختياريًا من قائمة |
enchant_with_levels | مثل طاولة السحر عند N مستوى — تتضمن الكنوز إذا طُلب |
set_components | اسم مخصص، قصة، أي مكون بيانات |
looting_enchant | مكافأة لكل مستوى من النهب (Looting)؛ جداول الكيانات فقط |
set_damage | المتانة ككسر، لذا 0.5 هي نصف متآكلة |
furnace_smelt | الشكل المصهور عندما يموت الغوغاء بالنار (Fire) |
enchant_with_levels و enchant_randomly ليسا قابلين للتبديل. الأول يحاكي طاولة السحر ويحترم تكاليف المستوى؛ الثاني يختار بشكل تعسفي ويمكن أن ينتج تركيبات لن تولدها اللعبة أبدًا.
الشروط التي يبحث عنها الناس
random_chance— احتمالية ثابتةrandom_chance_with_enchanted_bonus— الفرصة الحديثة التي تأخذ النهب (Looting) في الاعتبارkilled_by_player— السبب وراء عدم ظهور سقوطك النادر أبدًا من موت السقوطentity_properties— التحقق من نوع الضحية، حالتها أو معداتهاmatch_tool— التحقق من الأداة المستخدمة، لجداول الكتل
الاختبار بدون إعادة بناء العالم
/loot give @s loot my_pack:chests/treasure
يسقط الجدول مباشرة في مخزونك. /loot spawn، /loot insert <pos> و /loot replace تغطي المواضع الأخرى. هذا أسرع بكثير من وضع الصناديق وإعادة التحميل، وهو الطريقة الوحيدة المعقولة للتحقق من توزيعات الأوزان.
قم ببناء جداول متعددة المجموعات مع الوظائف والشروط المرفقة في المستوى الصحيح في منشئ جداول النهب المتقدم.