Favouriteless / Enchanted

Enchanted minecraft mod repository
6 stars 5 forks source link

Cannot sleep in Fantasy's Furniture's beds #17

Closed KingKottlewing closed 3 months ago

KingKottlewing commented 4 months ago

Describe the bug When attempting to sleep in an FF bed (right click the bed), nothing happens in game, but it sends an error message in console To Reproduce Have Enchanted and the Fantasy's Furnitures Mod in a pack, attempt to sleep in one of the FF beds Expected behavior Normal sleeping occurs Screenshots Log from my server - Errors are near the bottom 2024-04-23-1 (1).log

Logs from another server with the same two mods and error https://mclo.gs/aTRBBvl (Credits to TheBeanMonger)

Favouriteless commented 4 months ago

Thanks for reporting this, I'll get it fixed asap. Seems to crash because the game can't figure out where the BlockEntity for the bed is when trying to handle taglock stuff.

ApexModder commented 4 months ago

Hi developer for Fantasy's Furniture here, sounds like this mod is assuming the block has a associated block entity, which our beds do not, causing the crash.

afaik vanilla beds only have a block entity for the renderer and color, both of which can simply be done with block states and json models, which is exactly how our beds work.

Edit: Its also worth noting that going by the log files the issue appears to be for 1.18.2

Favouriteless commented 4 months ago

That's true for vanilla but Enchanted needs to store the UUID and name of the last entity to use the bed, in 1.18.2 prior to the multiloader porting this was done via a BE cap. I'm not gonna go back and start doing major changes to an older version but I've fixed the crash itself in dev and will upload a new build later where the functionality is disabled entirely.

Edit: disabled entirely for beds lacking a BE

ApexModder commented 4 months ago

both neo & fabric provide a way to attach data to any block / block entity now. fabric-data-attachment-api-v1 module on fabric iirc and net.neoforged.neoforge.attachment package on neo

should maybe update to use these systems rather than assuming a block entity exists, simply attach your data right onto the block no need for a block entity

Favouriteless commented 4 months ago

I'm aware, and from 1.19.2 onwards it doesn't rely on a BE attachment, but I'm not going to retroactively spend hours changing this on 1.18.2, the crash itself will be fixed and if a bed doesn't have a BE it'll just not work for taglocks

Favouriteless commented 3 months ago

Pushed the update for this so closing now.