mojira.dev
MC-101235

Providing wrong property values for blocks throws exception instead of ignoring property

The bug

The following is based on a decompiled version of Minecraft 1.9 using MCP 9.24 beta.

The method net.minecraft.block.state.BlockStateContainer.StateImplementation.withProperty(IProperty<T>, V) throws an IllegalArgumentException if a invalid value for a property is given. This is problematic because there are multiple situations in which the user can directly provide a value.

I would instead expect it to ignore this property but print a error message in the log.

How to reproduce

  1. Use the following superflat preset

    3;minecraft:hopper:1;1;

The game will crash because the value "1" is invalid as facing value (it would be "up")

Linked issues

Attachments

Comments 2

Cannot reproduce this in 20w07a also due to MC-118624.
The general solution proposed here to ignore unknown properties and log them might not actually be that good.

[Mod] markderickson

This issue can no longer be reproduced due to the resolution of MC-118624.

marcono1234

(Unassigned)

Confirmed

(Unassigned)

block, crash, exception, metadata, properties

Minecraft 1.9.3 Pre-Release 1, Minecraft 1.10.2, Minecraft 16w32a, Minecraft 16w32b, Minecraft 16w33a, Minecraft 1.11, Minecraft 1.11.2

Retrieved