Skip to content

Hanging signs cause crashes, blacklisting does not work #31

@1Mercenary

Description

@1Mercenary

Description:

When using TFC Dynamic Structures to dynamically replace wood in structures, the mod crashes whenever a hanging sign is present. Normal signs can be blacklisted successfully, but hanging signs (minecraft:hanging_sign) are treated as a separate block entity and cannot be skipped via the existing blacklist logic.

Steps to Reproduce:

Use TFC Dynamic Structures with a tfcWorldReplacements mapping for "wood": "tfc:wood".

Load a structure containing a hanging sign (for example, any Valarian Conquest fort with hanging signs).

Start a new world or regenerate the structure.

Observe the crash:

Caused by: java.lang.IllegalArgumentException: No model for layer tfc:hanging_sign/acacia#main

Expected Behavior:

Blacklisting "minecraft:sign" prevents crashes for normal signs.

Hanging signs should be either handled by the same blacklist logic or a dedicated hook so dynamic wood replacement does not attempt to resolve their model before registry completion.

Current Behavior:

Dynamic wood replacement attempts to resolve hanging sign block families during structure placement, before the renderer/model is registered, causing a crash.

Manual overrides for logs and planks do not prevent this crash because the hanging sign is still included in the structure’s palette.

Suggested Fix / Improvement:

Add support for blacklisting minecraft:hanging_sign as a separate entity.

Alternatively, provide a “safe-late-load” hook for block family resolution, so block entities like signs and hanging signs are not resolved until their models are fully registered.

Environment:

Minecraft version: 1.20.1

TFC Dynamic Structures version: 0.3.2

Additional Notes:

This issue occurs with both “biome-adaptive” tfc:wood replacements and manual per-block overrides.

Normal signs (minecraft:sign) are unaffected when blacklisted.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions