fonnymunkey / SimpleHats

Simple hat mod for Minecraft
Other
6 stars 10 forks source link

LegendarySurvivalOverhaul/SinytraConnector break Curio Custom Validation #82

Open wsxiya opened 2 months ago

wsxiya commented 2 months ago

I have a package with nearly 100 mods. I found that the hat cannot be worn in the accessories column. The minimum number of mods that cause the problem is listed below. When you delete Connector-1.0.0-beta.45+1.20.1 or legendarysurvivaloverhaul-1.20.1-1.3.9, the hat can be worn in the accessories column. Note that the game has not crashed. If you need any information, I can upload it I{_ZAS8AYS%Y2544V_UYP61 1%I28( { (P2855MK8(5N)W

wsxiya commented 2 months ago

It seems that the problem is caused by legendarysurvivaloverhaul-1.20.1-1.3.9. I deleted it in my 126 mod package, and the hat can be worn in the accessories column.

fonnymunkey commented 2 months ago

I matched your mod list and am unable to reproduce the issue, I am able to equip and remove hats as normal. Can you upload the latest.log file from the logs folder when only those mods are loaded and the issue still happens? Do you have any datapacks or config file settings that may be causing the issue? I don't see anything in the LegendarySurvivalOverhaul code that would cause issues unless Curios in general was being broken by something.

wsxiya commented 2 months ago

I matched your mod list and am unable to reproduce the issue, I am able to equip and remove hats as normal. Can you upload the latest.log file from the logs folder when only those mods are loaded and the issue still happens? Do you have any datapacks or config file settings that may be causing the issue? I don't see anything in the LegendarySurvivalOverhaul code that would cause issues unless Curios in general was being broken by something.

Please create a new world and try again

wsxiya commented 2 months ago

我匹配了您的模组列表,但无法重现该问题,我能够像往常一样装备和摘下帽子。当仅加载了那些模组并且问题仍然存在时,您可以从 logs 文件夹中上传 latest.log 文件吗?是否有任何可能导致问题的数据包或配置文件设置?我在 LegendarySurvivalOverhaul 代码中看不到任何会导致问题的内容,除非 Curios 总体上被某些东西破坏。

I found that if I add legendarysurvivaloverhaul later and then enter the previous world, the hat can still be worn in the accessories column, but the newly created world cannot

wsxiya commented 2 months ago

[Uploading latest.log…]()

wsxiya commented 2 months ago

Maybe Curios is corrupted

fonnymunkey commented 2 months ago

That is very strange, I am able to reproduce it in new worlds but not existing. Even rejoining the old world still works fine when new ones don't. I have to assume this is something related to Connector breaking Curios but I don't know why the world matters.

wsxiya commented 2 months ago

Yes, it may be a problem with Curios API and Sinytra Connector, but after removing legendarysurvivaloverhaul in my 126mod package, this problem will not occur, I have mentioned this issue in curseforge of legendarysurvivaloverhaul

fonnymunkey commented 2 months ago

SimpleHats registers itself with Curios to add a cosmetic head slot, along with a custom validator for adding hats to those slots which was added in Curios 5.9.0. This file is loaded in data/curios/curios/slots/head.json

Based on the cosmetic slot being missing, as well as from my testing hats not being able to go in manually added hat slots, it seems that some interaction between LegendarySurvivalOverhaul, Curios, and Connector breaks this file being loaded/read.

Given general Curio mods still work with the combination, I assume the issue is the combination of mods is breaking how Curio's custom validator system works and errors out, unfortunately no error is posted in the log.

I don't believe this is something solvable on my side without removing the custom validator, but I also have no idea which mod is truly responsible for the issue.

In the meantime, if you want to continue using both SimpleHats and LegendarySurvivalOverhaul and Connector, you can enable wearing hats in the helmet slot in the SimpleHats config instead.

mcmaidong commented 2 months ago

I did not install LegendarySurvivalOverhaul, Curios, and Connector, but I also can't install the hat

fonnymunkey commented 2 months ago

Ensure you are using the latest version of SimpleHats and Curios, and if the issue persists create a new issue with your latest.log file.

sfiomn commented 2 months ago

Hello there, Trying to solve this issue on LSO side. I can indeed reproduce the issue but the logs are completely empty of any error, and I'm not an expert in curios ... How have you found out the issue lays in the custom validators of curios ? Even when I don't use the curios api, the issue remains, so it's pretty hard to find where the interaction fails to make curios working properly. I've found out that the problem is the interaction with forgified fabric api, for some reason

fonnymunkey commented 2 months ago

I don't know know that it is absolutely the validator where the issue lies, but it is the only thing that makes sense to me as Curios added without a validator such as from mods like Artifacts work fine, as well as the file that defines the validator defines the slot as cosmetic, which is also missing with this issue.

Its possible and in my opinion more likely that the issue isn't necessarily the validator breaking, as much as it is some issue between FFApi and Sinytra breaking how data assets are loaded/read/accessed, as the validator and cosmetic slot are defined in a json and not through code, causing the file to fail to be read properly in the first place.

sfiomn commented 2 months ago

For what I see, it's only FFApi that breaks the cosmetic slots in curios, but what I don't understand, is the influence of LSO in that ... Maybe the json is a good lead, as LSO heavily relies on that, but I failed to see the problem for now ...