Modscraper Modscraper Minecraft
Create Bugfix: Schematic Patch logo

Create Bugfix: Schematic Patch

Mod

by cff1028

Fixed a bug with the Schematic item of the create mod

Type

Mod

CurseForge Downloads

13,087

CurseForge ID

1312416

Modrinth Downloads

7,741

Modrinth ID

E7HuZiWj

Last Updated

Jun 27, 2026

Description

## This mod has been discontinued and will no longer receive updates or support. Please visit https://modrinth.com/mod/createschematicchecker to find a similar mod. ### Overview This mod fixes a critical schematic item exploit in the Create mod for Minecraft 1.21+. Please note: when using the mod for the first time on your server (mod_version ≥1.1), execute the command `/schematic-config reload` to initialize the mod configuration. ### Original Issue Create's schematics could store blocks/items with illegal components, allowing players to obtain unobtainable survival items. ### Fix Features * **Anomaly Detection**: Scans uploaded schematics in real-time * **Data Sanitization**: Automatically removes illegal components/blacklisted blocks * **Alert Logging**: Outputs server warning when player uploaded anomaly schematic * **Auto-Archiving**: Backups anomalous schematics at:/schematics/anomaly/playername/schematic.nbt #### For mod_version<1.1.3 * **Configurable**: Blacklist management via `schematicsfix-common.toml` * **Advanced Configuration Feature**: You can define the schematic NBT detection logic using JSON in `schematicsfix.jsonl`. However, please note that this feature is still experimental. Unless you know what you are doing, do not modify the default advanced configuration. #### For mod_version≥1.1.3 * **Configurable**:Define NBT filter rules freely through `schematicsfix.yaml` ### Admin Benefits 1. Real-time exploit blocking 2. Automatic evidence preservation 3. Customizable filter rules 4. Zero manual review for legitimate uploads ### Configuration File Format (mod_version≥1.1.3) #### Configuration File Location: config/schematicsfix.yaml #### Basic Structure: ``` version: "1.0" rules: - name: "rule_name" target_path: "target_path" conditions: - condition_list cleanup_actions: - cleanup_action_list ``` #### Rule Fields: - name: Unique identifier for the rule, used for logging and command display - target_path: Target path to search for in NBT data, supports wildcards - conditions: List of conditions that must all be satisfied to trigger cleanup - cleanup_actions: List of cleanup actions to execute when conditions are met #### Path Syntax: - Normal path: Use dots to separate, e.g., "blocks.nbt.id" - Wildcard: Use [* ] to match all array elements Example: "blocks[* ].nbt" matches nbt fields in all blocks arrays Example: "messages[* ]" matches all elements in messages array - Specific index: Use [number] to match specific array index Example: "messages[0]" matches the first element in messages array #### Condition Types: ``` field_equals - Field value equals type: "field_equals" path: "field_path" value: expected_value ``` ``` field_not_equals - Field value not equals type: "field_not_equals" path: "field_path" value: expected_value ``` ``` field_exists - Field exists type: "field_exists" path: "field_path" ``` ``` string_contains - String contains type: "string_contains" path: "field_path" value: "string_to_find" ``` #### Cleanup Action Types: ``` conditional_remove - Conditional removal type: "conditional_remove" target_path: "target_field_path" condition: removal_condition (optional) remove_strategy: "field_only" (only removes field value) ``` ``` path_remove - Path removal type: "path_remove" target_path: "target_path" remove_strategy: "entire_object" (removes entire object) ``` ``` nested_string_remove - Nested string cleanup type: "nested_string_remove" target_path: "target_path" condition: trigger_condition (optional) remove_pattern: "regex_pattern" remove_strategy: "regex_replace" ``` #### Complete Examples: Example 1: Clean specific fields of valve handles Rule name: valve_handle_capacity_cleanup Target path: blocks[* ].nbt Condition: id field equals "create:valve_handle" Action1: If Network.Capacity not equals 256.0, remove this field Action2: If Speed not equals 32.0, remove this field Example 2: Clean container data from clipboards Rule name: clipboard_container_cleanup Target path: blocks[* ].nbt Condition: id field equals "create:clipboard" Action: Remove Item.components.minecraft:container path Example 3: Clean click events from signs Rule name: sign_clickevent_cleanup Target path: blocks[* ].nbt Condition: id field equals "minecraft:sign" Action: Search for strings containing "clickEvent" in front_text.messages[*], use regex to remove clickEvent objects #### Configuration Example Code: ``` version: "1.0" rules: - name: "valve_handle_capacity_cleanup" target_path: "blocks[*].nbt" conditions: - type: "field_equals" path: "id" value: "create:valve_handle" cleanup_actions: - type: "conditional_remove" target_path: "Network.Capacity" condition: type: "field_not_equals" path: "Network.Capacity" value: 256.0 remove_strategy: "field_only" - type: "conditional_remove" target_path: "Speed" condition: type: "field_not_equals" path: "Speed" value: 32.0 remove_strategy: "field_only" - name: "clipboard_container_cleanup" target_path: "blocks[*].nbt" conditions: - type: "field_equals" path: "id" value: "create:clipboard" cleanup_actions: - type: "path_remove" target_path: "Item.components.minecraft:container" remove_strategy: "entire_object" - name: "sign_clickevent_cleanup" target_path: "blocks[*].nbt" conditions: - type: "field_equals" path: "id" value: "minecraft:sign" cleanup_actions: - type: "nested_string_remove" target_path: "front_text.messages[*]" condition: type: "string_contains" value: "clickEvent" remove_pattern: "\"clickEvent\":\\s*\\{[^}]*\\}" remove_strategy: "regex_replace" ``` #### Important Notes: 1. Use `/schematic-config reload` to reload configuration after changes 2. Use `/schematic-config rules` to view loaded rules 3. Use `/schematic-config status` to check mod status 4. All operations are removal operations only, no replacement functionality 5. Regular expressions use Java standard syntax 6. Make sure YAML file uses proper indentation (spaces, not tabs)

Compatibility

Mod Loaders

Neoforge

Game Versions

1.21.1

Similar Mods

Included in Modpacks

External Resources