Astral Sorcery

Astral Sorcery

63M Downloads

[Forge 1.16.4][Client Side Mod Conflict] Enhanced Celestials' Moon Coloring Is not applied during E.C's Lunar events

CorgiTaco opened this issue ยท 5 comments

commented

Hi, I'd like to report a discovered mod incompatibility with my mod Enhanced Celestials(https://www.curseforge.com/minecraft/mc-mods/enhanced-celestials) which is a mod that adds lunar events such as blood moons and harvest moons and your mod. It seems to me that the moon coloring from my mod is not applied.

Relevant Code on my side: https://github.com/CorgiTaco/Enhanced-Celestials/blob/master/src/main/java/corgitaco/enchancedcelestials/mixin/MixinWorldRender.java

As seen here I do a highly compatible and unintrusive mixin here that even works with optifine, so it leads me to believe that A.S is at fault for the incompatibility.

This is what the coloring of each moon should be like:

Blood Moon w/out Astral Sorcery:
8u242-b08 Screenshot 2021 01 21 - 18 05 56 63

Harvest Moon w/out Astral Sorcery:
8u242-b08 Screenshot 2021 01 21 - 18 06 54 64

Blood Moon w/ Astral Sorcery
8u242-b08 Screenshot 2021 01 21 - 18 03 04 35

Harvest Moon w/ Astral Sorcery
8u242-b08 Screenshot 2021 01 21 - 18 03 11 44

If you have questions comments or suggestions for me and my code please lmk!

Have good day,
-Corgi Taco

commented

I am also experiencing this issue.
Minecraft 1.16.4
Forge 35.1.29
Astral Sorcery: 1.16.4-1.13.9
Enhanced Celestials: 1.0-BETA-v2-1.16.4

commented

Also forgot to mention this was an in an instance with these 2 mods alone

commented

I am also currently experiencing this exact same issue.

commented

Your ASM patch does not support custom skyrendering. AS doesn't run vanilla skyrendering code, hence your patch doesn't do anything. As there is no forge hooks for custom moon coloring, this isn't supported.
So much for "compatible ASM".

commented

Well, AstralSourcery does completely override the sky rendering for the overworld which is bound to break any mod that tries to mixin/asm the vanilla sky rendering code for compatibility with each other. It might be worthwhile though to have dedicated mod support for other mods to apply their changes. Or maybe expose an endpoint in your mod if Forge wont add hooks (I kind of doubt Forge will add hooks for this but maybe they will)

However, when I asked around, it seems that ISkyRenderHandler is supposed to be for custom dimensions. And that changes to the vanilla skybox should be done with mixins/asm for maximum mod compatibility until Forge adds hooks. That isn't to say what you are doing is bad but just means you should consider adding explicit mod compatibility or hooks for other people to use in the meantime.