Modonomicon

Modonomicon

1M Downloads

Undefined states in Block State Matcher matching with default blockstate

vertexcubed opened this issue ยท 1 comments

commented

Describe the bug
When using modonomicon's block state matcher for multiblocks, any undefined states are matched with the default blockstates of said block, rather than accepting any state.

To Reproduce
Steps to reproduce the behavior:

  1. Create modonomicon multiblock
  2. Add mapping to block that has multiple states, do not specify state for state that doesn't equal default (example: facing)
  3. Create multiblock, use blocks with blockstates that do not match default.

Expected behavior
Any states that are not specified in the multiblock json accept any value

Screenshots
Sample multiblock script:

{
    "type":"modonomicon:dense",
    "pattern": [
        [
            "__WCW__",
            "_W___W_",
            "W__G__W",
            "C_G0G_C",
            "W__G__W",
            "_W___W_",
            "__WCW__"
        ],
        [
            "DDDDDDD",
            "DDDDDDD",
            "DDDDDDD",
            "DDDDDDD",
            "DDDDDDD",
            "DDDDDDD",
            "DDDDDDD"
        ]
    ],
    "mapping": {
        "0": {
            "type": "modonomicon:block",
            "block": "occultism:golden_sacrificial_bowl"
        },
        "W": {
            "type": "modonomicon:block",
            "block": "occultism:chalk_glyph_white"
        },
        "G": {
            "type": "modonomicon:block",
            "block": "occultism:chalk_glyph_gold"
        },
        "C": {
            "type": "modonomicon:blockstate",
            "block": "minecraft:oak_stairs[half=top]"
        },
        "D": {
            "type": "modonomicon:display",
            "display": "minecraft:grass_block"
        }
    }
}

Valid design:
Valid design

Invalid design:
Invalid design

System (please complete the following information):

  • Modonomicon Version: 1.8.0
  • OS: Windows 10
  • Minecraft Version: 1.18.2 (should also happen on 1.19.2)

Additional Context
Refer to this Discord forum post about specifics and background info

commented

Thanks for reporting!
Turns out this is not a bug after all, but something I overlooked in the design phase - my code comments even described this behaviour.

The linked issues #72 and #73 will bring a new matcher type as documented here: https://klikli-dev.github.io/modonomicon/docs/multiblocks/state-matchers/blockstate-property-matcher