Immersive Engineering

Immersive Engineering

152M Downloads

BlueprintShelfBlockEntity java.lang.ArrayIndexOutOfBoundsException: Index 9 out of bounds for length 9

slwold opened this issue · 0 comments

commented

Minecraft Version

1.21.1

Immersive Engineering Version

Immersive Engineering 12.4.2-194

How did it happen?

问题描述 (Issue Description)

在Minecraft 1.21.1使用Immersive Engineering 12.4.2-194版本时,游戏在尝试渲染蓝图架(Blueprint Shelf)方块的叠加文本时崩溃,出现数组越界错误。

When using Immersive Engineering 12.4.2-194 with Minecraft 1.21.1, the game crashes with an ArrayIndexOutOfBoundsException when trying to render overlay text for Blueprint Shelf blocks.

错误信息 (Error Information)

java.lang.ArrayIndexOutOfBoundsException: Index 9 out of bounds for length 9
at java.base/java.util.Arrays$ArrayList.get(Arrays.java:4266)
at TRANSFORMER/[email protected]/net.minecraft.core.NonNullList.get(NonNullList.java:66)
at TRANSFORMER/[email protected]/blusunrize.immersiveengineering.common.blocks.wooden.BlueprintShelfBlockEntity.getOverlayText(BlueprintShelfBlockEntity.java:181)

复现步骤 (Reproduction Steps)

  1. 放置一个蓝图架方块

  2. 游戏尝试渲染方块叠加文本时崩溃

  3. Place a Blueprint Shelf block

  4. Game crashes when trying to render block overlay text

环境信息 (Environment Information)

  • Minecraft版本: 1.21.1
  • NeoForge版本: 21.1.211
  • Immersive Engineering版本: 12.4.2-194
  • 整合包: All the Mods 10: To the Sky

可能的解决方案 (Possible Solution)

问题出在BlueprintShelfBlockEntity.java的第181行,getOverlayText()方法中尝试访问索引9,但数组长度只有9(有效索引为0-8)。需要添加边界检查或修复数组访问逻辑。

The issue is in BlueprintShelfBlockEntity.java line 181, where getOverlayText() method tries to access index 9, but the array length is only 9 (valid indices are 0-8). Boundary checking or array access logic needs to be fixed.

crash-2025-10-20_09.17.16-client.txt

Crash Log

https://mclo.gs/TdYvHgS