Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[🐞]: Getting a nullable Pos with Supplementaries & Axiom #1236

Open
5 tasks done
zipCoder933 opened this issue Nov 19, 2024 · 12 comments
Open
5 tasks done

[🐞]: Getting a nullable Pos with Supplementaries & Axiom #1236

zipCoder933 opened this issue Nov 19, 2024 · 12 comments
Labels
1.20.1 Minecraft Version bug Something isn't working not related Others | Not related to Supplementaries

Comments

@zipCoder933
Copy link

zipCoder933 commented Nov 19, 2024

Before Continuing:

  • Check you are using the latest version of the mods and its dependencies
  • Always include a latest.log if you are crashing
  • Remove mod that enhances Minecraft: Optifine, Sodium, others. The issue persists.
  • If you are unsure which mod is the culprit.
    Disable all of your mods and enable them 1-2 mods each time to isolate the culprit
  • Confirm that there is no existing issue with a similar description submitted in the list of issues.

Version

1.20.1-FORGE

Supplementaries Version

supplementaries-1.20-2.8.18

Moonlight Lib Version

moonlight-1.20-2.13.26-forge

Issue Detail

The game crashes whenever trying to enter a minecraft world. supplementaries and Axiom (v4.1.1, MC1.20.1) is installed (https://modrinth.com/mod/axiom/version/4.1.1) (This problem doesn't occur when axiom is not installed)

java.lang.NullPointerException: Cannot invoke "net.minecraft.core.BlockPos.m_123343_()" because "pos" is null
	at net.mehvahdjukaar.supplementaries.client.LumiseneFluidRenderProperties.getStillTexture(LumiseneFluidRenderProperties.java:33) ~[supplementaries-1.20-3.0.0.jar%23345!/:?]
	at net.minecraftforge.client.ForgeHooksClient.getFluidSprites(ForgeHooksClient.java:491) ~[forge-1.20.1-47.3.7-universal.jar%23367!/:?]
	at net.fabricmc.fabric.impl.client.rendering.fluid.FluidRendererCompat$ForgeFluidRenderHandler.getFluidSprites(FluidRendererCompat.java:60) ~[fabric-rendering-fluids-v1-3.0.28+4ac5e37a77.jar%23544!/:3.0.28+4ac5e37a77]
	at net.minecraft.client.renderer.texture.TextureAtlas.handler$fjo001$axiom$cycleAnimationFrames(TextureAtlas.java:2546) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]

	at net.minecraft.client.renderer.texture.TextureAtlas.m_118270_(TextureAtlas.java:108) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.renderer.texture.TextureAtlas.m_7673_(TextureAtlas.java:120) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.renderer.texture.TextureManager.m_7673_(TextureManager.java:163) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.Minecraft.m_91398_(Minecraft.java:1760) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1112) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23362!/:?]
	at net.minecraft.client.main.Main.main(Main.java:218) ~[forge-47.3.7.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:?]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.3.7.jar:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.3.7.jar:?]

Log

latest.log

@zipCoder933 zipCoder933 added the bug Something isn't working label Nov 19, 2024
@github-actions github-actions bot added the 1.20.1 Minecraft Version label Nov 19, 2024
@Xelbayria Xelbayria changed the title [🐞]: [🐞]: Getting a nullable Pos with Supplementaries & Axiom Nov 19, 2024
@MehVahdJukaar
Copy link
Owner

idk what axiom is but 100% their issue as you cansee from here
image

they are passing null to a method that does not accept null

@MehVahdJukaar
Copy link
Owner

also you arent using latest version

@MehVahdJukaar
Copy link
Owner

also why is it even calling fabric api call when supp is a forge mod and you do have the forge version

@Xelbayria Xelbayria added the not related Others | Not related to Supplementaries label Nov 19, 2024
@zipCoder933
Copy link
Author

zipCoder933 commented Nov 19, 2024

The issue occurred on the latest version of supplementaries too, however I didn't log it when I tested it on that version. Any version of supplementaries after 3.0.0 will crash when Axiom is installed.

The reason why it might look like am using fabric, is because axiom is a fabric mod and I am using sinytra connector to run it in my forge modpack.

@MehVahdJukaar
Copy link
Owner

In that case it could even be a connector issue

@zipCoder933
Copy link
Author

Any version of moonlight api at or before V2.13.0 works fine (later versions could also be ok as well, I just haven't tested them all)

And any version of supplementaries before v3.0.0 doesn't crash

While other mods may be contributing to the crash, something must be happening in supplementaries, post 3.0.0 that is also contributing to the crash.

1 similar comment
@zipCoder933
Copy link
Author

Any version of moonlight api at or before V2.13.0 works fine (later versions could also be ok as well, I just haven't tested them all)

And any version of supplementaries before v3.0.0 doesn't crash

While other mods may be contributing to the crash, something must be happening in supplementaries, post 3.0.0 that is also contributing to the crash.

@MehVahdJukaar
Copy link
Owner

well its obvious that it doesnt crash before 3.0.0 as there i didnt have added a new liquid

@MehVahdJukaar
Copy link
Owner

as ive said from the log it looks very clear that some mod is passing a null position in one of my methods and thats invalid

@zipCoder933
Copy link
Author

zipCoder933 commented Nov 23, 2024

Ok. It seems like supplementaries.client.LumiseneFluidRenderProperties.getStillTexture is where the null pointer is being passed into.

This corresponds the crash that occurs because axiom is changing the rendered fluid opacity

Is it possible to somehow gracefully handle the null pointer? Somehow handing it in said method in a way that wont crash the game?

@MehVahdJukaar
Copy link
Owner

It is but adding random null checks that are not needed is bad practice just as adding random try catch statement that don't throw as they hide issues.

@MehVahdJukaar
Copy link
Owner

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.20.1 Minecraft Version bug Something isn't working not related Others | Not related to Supplementaries
Projects
None yet
Development

No branches or pull requests

3 participants