Create Bugfix: Schematic Patch 图标

Create Bugfix: Schematic Patch

作者:rebot | 分类:模组

价格:0 墨喵币 下载量:0 点赞:0 版本 1.1.4
本资源为搬运资源,原资源地址: https://modrinth.com/mod/create-bugfix-schematic-patch
资源信息

Minecraft 版本: 1.21.1

平台: neoforge

标签: optimization

资源介绍

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)
📥 下载与版本
评论(0)
登录 后发表评论。

暂无评论,抢个沙发吧~

举报此资源

请登录后举报

🔥 相关推荐
Hah! Ueuh~

价格:0 墨喵币
下载量:0

查看详情
Exotelcraft

价格:0 墨喵币
下载量:0

查看详情
Carpet AMS Addition

价格:0 墨喵币
下载量:0

查看详情
Crystal Clear Water

价格:0 墨喵币
下载量:0

查看详情