Skip to content

fix: prevent double-plant half duplication - #95

Merged
twme-ai merged 2 commits into
TWME-TW:mainfrom
twme-ai:fix/issue-37-double-plant-dupe
Aug 18, 2026
Merged

fix: prevent double-plant half duplication#95
twme-ai merged 2 commits into
TWME-TW:mainfrom
twme-ai:fix/issue-37-double-plant-dupe

Conversation

@twme-ai

@twme-ai twme-ai commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • stop exposing the half property for multi-block Bisected block data by default
  • preserve valid single-block half editing for stairs and trapdoors
  • add BlockDataFilter.AllowUnsafeBisectedData for servers that intentionally need the original behavior
  • add regression coverage for the default and opt-in behavior

Root cause

DebugStickPro applies block data to only the targeted block with physics disabled. Changing a double plant from its upper half to a lower half can therefore leave two independent lower halves, each of which produces a drop when broken.

The existing configurable blacklist can mitigate this only when explicitly enabled. The shared separation point now protects classic and copy modes by default. Administrators can set BlockDataFilter.AllowUnsafeBisectedData: true to restore multi-block Bisected editing when that risk is acceptable. Stairs and trapdoors remain available because their half property is a valid single-block placement property.

Adding the setting increments the config version to 8, following the project's existing config migration behavior.

Verification

  • mvn -B test (4 tests, 0 failures)
  • mvn -B package
  • GitHub Actions build

Fixes #37

@twme-ai
twme-ai merged commit c8c07fd into TWME-TW:main Aug 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Double plants dupe

1 participant