Open endorphinrush opened 4 years ago
It should also be noted that the Padding modifier is supposed to muffle sounds so in hindsight makes sense that it may not mesh well.
From the EnderIO Wiki:
Dark Steel Upgrade "Padding"
Crafted with a Blank Upgrade and a piece of Wool Upgrade for Dark Steel Items Muffles nearby sound Can be applied to: Dark, Ender, and Stellar Helmets
Yeah - sound modifiers like this are hard to deal with. With the way Forge integrates with the sound system, a mod can intercept a sound play request, cancel it, and replace it with a different sound. When this happens to a DS initiated sound, DS thinks that the sound finished playing or failed submission. If this is a looping sound effect DS could think it finished playing and then resubmit the sound. Distortion comes in because there is a limit to the number of sounds MC sound engine can handle. When this list gets full sounds can get choppy.
Thanks @OreCruncher, I was playing with this a bit further and I believe this is related to a crash I experience while going to "The Midnight." To reproduce this:
Here is one of the crash logs that would actually upload. Seems some of my others are too big to upload. https://paste.ee/p/BesGM
Thanks for your work on this mod. It brings a whole new level of detail to modded minecraft!
edit: I add this mainly for documentation if someone else comes across this. In hindsight it makes sense that a sound modifier would cause unexpected results with a mod that specifically alters the sounds in the game
Caused by: java.lang.IndexOutOfBoundsException: readerIndex(4) + length(1) exceeds writerIndex(4): UnpooledSlicedByteBuf(ridx: 4, widx: 4, cap: 4/4, unwrapped: PooledUnsafeDirectByteBuf(ridx: 0, widx: 5, cap: 5))
at io.netty.buffer.AbstractByteBuf.checkReadableBytes0(AbstractByteBuf.java:1396)
at io.netty.buffer.AbstractByteBuf.readByte(AbstractByteBuf.java:687)
at com.mushroom.midnight.common.entity.RiftBridge.handleState(RiftBridge.java:150)
at com.mushroom.midnight.common.network.MessageBridgeState$Handler.lambda$onMessage$0(MessageBridgeState.java:47)
at com.mushroom.midnight.client.ClientProxy.lambda$handleMessage$1(ClientProxy.java:39)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at net.minecraft.util.Util.runTask(SourceFile:529)
I think the Midnight Portal mod has a problem handling some IO packets.
Mod Version:
1.12.2-3.6.0.2
Forge Version:
14.23.5.2847
Description:
While playing MC Eternal I found that adding the "Padding" modifier to EnderIO's Dark Steel armor caused sounds in the game to loop and become distorted. This can be recreated by wearing the dark steel armor with the modifer applied and walking up to a water fall. The sound will be distorted and after walking away many of the normal sounds like footsteps will not play at all. Additionally while wearing the armor many normal sounds such as machine sounds will loop and become louder and louder. Restarting the game will clear the issue but only for a short time.