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

Tinkers Construct warning #48

Open
3 tasks done
Sereath opened this issue May 20, 2024 · 3 comments · Fixed by ACGaming/UniversalTweaks#488
Open
3 tasks done

Tinkers Construct warning #48

Sereath opened this issue May 20, 2024 · 3 comments · Fixed by ACGaming/UniversalTweaks#488
Labels

Comments

@Sereath
Copy link

Sereath commented May 20, 2024

Describe the bug

Log notified me about:

[Client thread/WARN] [Alfheim]: Something (likely another mod) has attempted to modify the world's state from the wrong thread!
This is *bad practice* and can cause severe issues in your game.
Alfheim has done as best as it can to mitigate this violation, but it may negatively impact performance or introduce stalls.
In a future release, this violation may result in a hard crash instead of the current soft warning.
You should report this issue to our issue tracker with the following stacktrace information.
java.lang.IllegalAccessException: World is owned by 'Server thread' (ID: 203), but was accessed from thread 'Client thread' (ID: 1)
	at dev.redstudio.alfheim.lighting.LightingEngine.lock(LightingEngine.java:206) [LightingEngine.class:?]
	at dev.redstudio.alfheim.lighting.LightingEngine.processLightUpdatesForType(LightingEngine.java:180) [LightingEngine.class:?]
	at net.minecraft.world.chunk.Chunk.getLightFor(Chunk.java:2295) [axw.class:?]
	at net.minecraft.world.World.getLightFor(World.java:859) [amu.class:?]
	at net.minecraft.world.World.alfheim$getLight(World.java:6661) [amu.class:?]
	at net.minecraft.block.Block.alfheim$getLightFor(Block.java:2766) [aow.class:?]
	at net.minecraft.block.state.BlockStateContainer$StateImplementation.alfheim$getLightFor(BlockStateContainer.java:632) [awu$a.class:?]
	at net.minecraft.world.World.getLightFromNeighborsFor(World.java:6651) [amu.class:?]
	at net.minecraft.world.World.getCombinedLight(World.java:887) [amu.class:?]
	at net.minecraft.client.particle.Particle.getBrightnessForRender(Particle.java:344) [btf.class:?]
	at net.minecraft.client.particle.Particle.renderParticle(Particle.java:189) [btf.class:?]
	at net.minecraft.client.particle.ParticleCrit.renderParticle(SourceFile:45) [bsn.class:?]
	at slimeknights.tconstruct.shared.client.ParticleEffect.renderParticle(ParticleEffect.java:74) [ParticleEffect.class:?]
	at net.minecraft.client.particle.ParticleManager.redirect$zbk000$particleculling$maybeCullLitParticle(ParticleManager.java:686) [btg.class:?]
	at net.minecraft.client.particle.ParticleManager.renderLitParticles(ParticleManager.java:451) [btg.class:?]
	at net.minecraft.client.renderer.EntityRenderer.renderWorldPass(EntityRenderer.java:1869) [buq.class:?]
	at net.minecraft.client.renderer.EntityRenderer.renderWorld(EntityRenderer.java:1621) [buq.class:?]
	at net.minecraft.client.renderer.EntityRenderer.updateCameraAndRender(EntityRenderer.java:1390) [buq.class:?]
	at net.minecraft.client.Minecraft.runGameLoop(MinecraftAccessor.java:1119) [bib.class:?]
	at net.minecraft.client.Minecraft.run(MinecraftAccessor.java:8614) [bib.class:?]
	at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_411]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_411]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_411]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_411]
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_411]
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_411]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_411]
	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_411]
	at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:243) [NewLaunch.jar:?]
	at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:278) [NewLaunch.jar:?]
	at org.multimc.EntryPoint.listen(EntryPoint.java:143) [NewLaunch.jar:?]
	at org.multimc.EntryPoint.main(EntryPoint.java:34) [NewLaunch.jar:?]

after wearing a tcon armour set and being attacked by many Mo Creatures mobs
Tinkers addons:
image
Modpack:
https://www.curseforge.com/minecraft/modpacks/unyielding

Reproducibility

  • I reproduced this issue with as few other mods as possible installed.
  • I am unable to reproduce this issue consistently.

Screenshots and/or videos

No response

Logs

https://mclo.gs/JXrjR0E

Debug Logs

https://mclo.gs/ICt7bU5

Crash Reports

No response

Alfheim Version

1.3

Forge Version

1.12.2 - 14.23.5.2860

MixinBooter Version

8.8

Java Version

1.8 - 411

Java Virtual Machine

Hotspot

Operating System

Windows 10

GPU Vendor

AMD

Code of Conduct

  • I agree to follow this project's Code of Conduct
@Sereath Sereath added the Bug label May 20, 2024
@Desoroxxx
Copy link
Member

Desoroxxx commented May 21, 2024

You should report this issue to our issue tracker with the following stacktrace information.

Why, why is that a thing?

Pretty sure this is on the mods side to fix, I will still take a look anyway.

@jchung01
Copy link

jchung01 commented May 21, 2024

It looks like Tinkers' can leak the server's world to the client because it spawns particles via its Proxy classes improperly. See CommonProxy and ClientProxy.
It's easily reproduceable with just Tinkers + Alfheim (and related dependencies): just get any Tinkers' weapon, apply the Fiery modifier with blaze powder in a tool forge, and start hitting mobs with it.
Might be something for Universal Tweaks to fix.

@Sereath
Copy link
Author

Sereath commented May 22, 2024

Thank you both for checking. Yeah, I also had a tinker's longsword equipped, I believe, I noticed this warning about 5+ times when I was testing stuff in a new world.

jchung01 added a commit to jchung01/UniversalTweaks that referenced this issue Jun 14, 2024
- Particles are client-side; in SP/integrated server cases these mods could leak the server's world to the client when creating particles.
- Fixes Red-Studio-Ragnarok/Alfheim#48
- Fixes Red-Studio-Ragnarok/Alfheim#50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants