Skip to content
This repository has been archived by the owner on Mar 8, 2024. It is now read-only.

[Forge 1.19.2] Issue with FramedBlocks #190

Closed
unweeked opened this issue Aug 1, 2023 · 2 comments
Closed

[Forge 1.19.2] Issue with FramedBlocks #190

unweeked opened this issue Aug 1, 2023 · 2 comments
Labels
bug Something isn't working forge Forge version of the mod mod-conflict Conflict with another mod vanilla Problem occurs with vanilla wontfix This will not be worked on

Comments

@unweeked
Copy link

unweeked commented Aug 1, 2023

Having both FramedBlocks and Starlight installed, glowing blocks from FramedBlocks won't emit light anymore after a relog into the world. I hope you're still active because I love both mods and it would be awesome to be able to use both together. (:

@Spottedleaf
Copy link
Member

Yeah this must be because they route their TileEntity retrieval to the Vanilla method, which will return null server-side due to the light engine being run off-main. So their methods to retrieve the correct light source value will not work serverside, and so when you log in again you will see the server's computed light value.

Relates to #197

@Spottedleaf Spottedleaf added bug Something isn't working wontfix This will not be worked on mod-conflict Conflict with another mod forge Forge version of the mod vanilla Problem occurs with vanilla labels Oct 17, 2023
@Spottedleaf
Copy link
Member

After looking at the code again, it's become clear to me that I can't fix this. The TileEntity data is not actually available until the chunk has completely loaded into the world, and so as long as Starlight does edge checks this may happen.
I'm pretty sure if you were to wipe the light data without Starlight installed it would also happen, as the Vanilla light engine doesn't do anything different when calculating values - just that Starlight performs checks on loading that Vanilla doesn't.

It's generally not safe for mods to be accessing this data off-main anyways, which is why Vanilla returns null.

I can tell from the general design of the mod that it's not really their fault either, making this work while being thread-safe is a not really easy since there's no way that Forge provides to facilitate this behavior and that this is a general architecture issue with how TEs and BlockStates work.

You will have to use Vanilla. In 1.20, it's not really bad anyways.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Something isn't working forge Forge version of the mod mod-conflict Conflict with another mod vanilla Problem occurs with vanilla wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants