What is the change?
Allow loot tables to reference the same loot table in data packs before them.
For example, allow a zombie loot table to generate the default loot as well as some additional loot from this pack. (example loot table is attached below). This would allow data packs to extend on others or even the default game without having to copy the files.
How should it work?
Currently a self reference results in an error:

With this change a self-reference would look in the data packs before it for a loot table to draw from.
In the attached example zombies would drop the regular drops as well as a diamond 50% of the time.
This would only happen in loot tables that reference themselves. Other tables that reference them would maintain the same behaviour of getting the table from the current data pack.
One special case would be if a loot table references another that then references the first.
E.g. zombie -> creeper -> zombie.
The proposed way of handling this would be to disallow indirect references.(recursion error mentioned previously) While removing certain possibilities with loot tables, it makes sure behaviour is consistent.
In Summary:
Loot tables can reference themselves directly (not indirectly though), resulting in the equivalent table being used from the data packs before them. This behaviour would be similar to tags being able to append contents rather than overwrite.
Loot table for "minecraft:entities/zombie"

Please sign in to leave a comment.
2 Comments