Paradise Lost

Paradise Lost

7M Downloads

Paradise Lost Crashes when loaded with Create's fabric port

EmpressAutumn opened this issue ยท 10 comments

commented

What were you doing when the crash occured? How can we replicate it?

  1. install Fabric API 0.51.1 (latest)
  2. install Create 0.4.1+534 (latest) from here
  3. install Paradise Lost 1.6.8 (latest)
  4. launch game with Fabric Loader 0.13.3

Did it crash the client or server?

Client

Mod Version

Beta 1.6.8

Fabric API Version

0.51.1

Crash Report

https://pastebin.com/ut7Vy5dC

Other mods

Mods are as listed in Replication Steps, but can also be downloaded here.

Additional Information

No response

commented

I also left this as an issue on the Create mod's GitHub, as I am unsure whether it is caused by this mod or theirs.

commented

Having similar issue on 1.6.9 of Paradise Lost

commented

Hm, seems to be crashing due to shaders. Perhaps there is a conflict in regards to how we apply them?

@gudenau would be more knowledgeable about this

commented

According to the Create devs, this is likely caused by the boreal wisteria leaf shader.

commented

Considering the only way for that registry to be locked is by getting the render layers, I would say that create is doing something funky.

Our render layers are registered about as early as possible.

Related code from Satin:

public final class BlockRenderLayerRegistry {
    public static final BlockRenderLayerRegistry INSTANCE = new BlockRenderLayerRegistry();
    private final Set<RenderLayer> renderLayers = new ObjectArraySet<>();   // ArraySet for faster iteration
    private volatile boolean registryLocked = false;
    
    private BlockRenderLayerRegistry(){}
    
    public void registerRenderLayer(RenderLayer layer) {
        if(registryLocked){
            throw new IllegalStateException(String.format(
                "RenderLayer %s was added too late.",
                    layer
            ));
        }
        
        renderLayers.add(layer);
    }
    
    public Set<RenderLayer> getLayers() {
        registryLocked = true;
        return renderLayers;
    }
}
commented

Is this related/the same thing as #665? Which can confirm, I have attempted using both releases of Create with both releases of Paradise Lost for 1.18.2, no combination of them will work.

commented

I'll test this once Create Fabric is updated to 1.19

commented

Needs confirmation if this still occurs in 0.2.0

commented

will be fixed in next Create release

commented

Just tested it today, I'm glad to say the incompatibility is fixed.