Tinkers Construct warning
Sereath opened this issue ยท 4 comments
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:
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
Debug Logs
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
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.
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.
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.