jabelar / MovingLightSource-1.12

Jabelar's Moving Light Sources Mod
https://minecraft.curseforge.com/projects/jabelars-moving-light-sources
4 stars 2 forks source link

Crash with latest build #4

Closed vico93 closed 6 years ago

vico93 commented 6 years ago

movinglightsource v1.12.2-1.0.4 Crash: https://paste.dimdev.org/oqotomupac.mccrash

Started happening after updating this mod.

Correspondent issue on @Ordinastie 's MalisisDoors repo.

EDIT: Removing MalisisDoors just makes MovingLightSource crash alongsite the next mod in the list (in the case @cubex2 's MoreFurnaces): https://paste.dimdev.org/oqovobimov.rb

After removing it and CXLibrary (its dependency) finally makes Minecraft load.

Anyway i would say theres some issue in all the three mods listed, BUT since the crash is very similar with #6 reported by @tetsune i think something on MLS is causing the error for some modded light sources.

jabelar commented 6 years ago

Okay, it looks like it is an issue where some mods' custom blocks don't associate light levels in the old vanilla way. I think there is a blockstate alternative they might be using. I'll check it out.

jabelar commented 6 years ago

Okay, I figured it out. It happens when the mod uses a single block class with variants where the light value changes based on a property. For example, in the chimneys mod there is a glowstone chimney which emits light.

For now (for emergency fix to prevent crashes) in cases where same block class has variants with different light levels I'm going to default to no light. So for example, all chimney blocks as items will not emit light (including glowstone version).

I put out the fix in version 1.0.6 and then will later look at whether there is a generic way to handle the variants or else I can hard-code compatibility with popular mods.

jabelar commented 6 years ago

Okay, version 1.0.6 is posted. I believe I've handled the crash so will close this issue. But feel free to open issue again if there is remaining problem.

vico93 commented 6 years ago

So i (for myself) guessed right it was an issue on that mods. I hope @Ordinastie and @cubex2 can assign the light in the right way.

jabelar commented 6 years ago

Well, isn't exactly wrong, it just means the default state for their blocks doesn't have a light level that can be returned by the normal method.

In 1.13 all mods will have to "flatten" their blocks so that they don't have any variants. That will generally solve such problems and create better mod compatibility (because there will be less manipulation based on mod-specific properties like a "door type").

I think I can probably figure out a way to support the variants though, just will take more work. I'm kinda busy this week, but hope to look at it soon. I think if I use the same method that the creative tab uses to expand all the block types, maybe I can scan that for light levels.

I can also hard-code support for specific mods, but that will take a bit of work to maintain.

vico93 commented 6 years ago

Well, from my side you dont need to worry about anymore, i realized MoreFurnaces is redundant (i already have another in my modpack adding similar blocks) and removed MalisisDoors entirely (the animation is good but it trigger other issues as well.