nvb-uy / Item_Obliterator

Remove unwanted items
Other
4 stars 4 forks source link

[Bug] NBT based item disabling does not work #51

Open BIG-Viljo opened 2 weeks ago

BIG-Viljo commented 2 weeks ago

Minecraft: 1.20.1 Fabric: 0.15.11 Item obliterator: 2.3.0 Necronomicon: 1.4.2 Fabric API: 0.92.2+1.20.1

I've been trying to at least get the example entry working by putting "Potion:\"minecraft:regeneration\"" into the "blacklisted_nbt" list, but potions with that NBT weren't disabled. I've also tried removing every item with any NBT by putting "!.*" into the list, but nothing was disabled. This leads me to think one of two things (or both): A: I've typed in the specific NBT using wrong format B: regex NBT disabling doesn't work.

No other mods are installed.

latest.log


  // -----------------------------------------------------------
  //              Item Obliterator by ElocinDev
  // -----------------------------------------------------------
  //  
  // How to add items?
  //   - They are json strings, so you need to separate each
  //     entry with a comma, except the last
  //   - If you start an entry with !, it will be treated as a regular expression
  //     Example: "!minecraft:.*_sword" to disable all swords
  //  
  // -----------------------------------------------------------
  // Do not touch this
  "configVersion": 2,
  // -----------------------------------------------------------
  // Items here will be unusable completely
  //    Example: minecraft:diamond
  "blacklisted_items": [
    "examplemod:example_item"
  ],
  // -----------------------------------------------------------
  // Removes an item if it contains certain nbt tag. If the whole entry (or expression) is present, the item gets removed.
  // Use with caution! This is a very expensive operation and can cause lag if you have a lot of items blacklisted.
  //    
  //     Example to disable a regeneration potion: Potion:"minecraft:regeneration"
  //    
  //     You can also use regular expressions by starting the value with !
  "blacklisted_nbt": [ "!.*" ],
  // -----------------------------------------------------------
  // Items here will not be able to be right-clicked (Interact)
  //    Example: minecraft:apple
  "only_disable_interactions": [
    "examplemod:example_item"
  ],
  // -----------------------------------------------------------
  // Items here will not be able to be used to attack
  //    Example: minecraft:diamond_sword
  "only_disable_attacks": [
    "examplemod:example_item"
  ],
  // -----------------------------------------------------------
  // Items here will get their recipes disabled
  // Keep in mind this already is applied to blacklisted items
  "only_disable_recipes": [
    "examplemod:example_item"
  ],
  // -----------------------------------------------------------
  // If true, the mod will use a hashset to handle the blacklisted items
  // This is a more optimized approach only if you have a lot of items blacklisted (20 or more is recommended)
  // If you just have a small amount of items blacklisted, keep this false
  //  
  // [!] Enabling this will disable all regular expressions
  // [!] Does not apply to NBT, only item blacklist / interaction / attack
  "use_hashmap_optimizations": false
}
nvb-uy commented 1 week ago

Will look into it!