Simply Swords [Fabric & Forge]

Simply Swords [Fabric & Forge]

16M Downloads

(1.19.2 Forge) changing the loot tables through datapacks prevents unique weapons from dropping from entities

SillyGoblin opened this issue ยท 5 comments

commented

During my testing I have found that entities that I was adding the the loot_config.json and the wither were having issues with dropping unique's even when made guaranteed drops. I have found that any data pack that changes the loot tables of these entities completely prevents said unique weapons from dropping, this issue is also unfortunately affected by incendium since that adds a custom item to the loot table to the wither, conflicting with this mods ability to add its drop to the wither. I haven't got a chance to test this with fabric yet, but I am assuming the issue persist there too

this can be reproduced by taking the default datapack loot table of the wither and applying it to the world or installing incendium to the world, killing the wither after.
tested with
forge 43.2.3
architectury-6.5.82-forge
simply swords-forge-1.46.1
incendium_v5.1.4_hotfix

commented

As Incindium is a datapack, I believe it's just overriding existing loot tables when it loads. Meaning that it will always override whatever changes Simply Swords, or any other mod, makes to the vanilla loot tables.

I'm not sure that there's any way around this.
You could create your own datapack to override the loot tables as a possible solution.

commented

I've seen some other mods inject their tables in a way that would bypass datapacks, End Remastered is one of those mods that comes to mind.

As for making the datapack unfortunately since any datapack would break what your injecting into entities, that would then require these unique drops to be fully coded into the datapack, I'm not personally worried about doing that since I am doing that for other things for my modpack anyways, but I'm assuming there will be others that might not be as willing to do that.

This is something that I wanted to report since I see this functionality breaking if any other mod maker decided to use a datapack for their loot tables, possibly even preventing the ability to use modded entities as a potential source since most makers have to use a datapack for that.

commented

Thanks for the information!
I'll take a suss at how End Remastered does it and see if I can do something similar ๐Ÿ™‚

commented

Anytime, if the coding from that maker doesn't bear fruit for any reason, I know the maker for Enigmatic legacy has their own method of injecting loot tables too.

commented

Upon further investigation it just look to be a limitation of Architectury with Forge. Not much I can do about it, I'm afraid:
This event only runs for built-in loot tables on Forge due to the limitations of LootTableLoadEvent.

Appreciate the report all the same!

2023-05-25 11_23_59-Window