Unbreakables

Unbreakables

Mod

Configure blocks to be unbreakable under certain conditions. Compatible with Waystones.

Client and server Game MechanicsUtility

327 downloads
0 followers
Follow Save
90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!

Requires Balm Support on Patreon

This mod adds configurable rules for controlling whether a block can be broken. Rules allow for granular control through conditions and even modifiers (such as costing xp or items). This mod does not enable any unbreakable rules by default. Modpack developers or server owners must configure the mod, e.g. by enabling the "waystones:generated_waystones" ruleset. This mod is useless unless configured by a modpack or server owner.

Features

  • Prevent certain blocks from being broken if configurable conditions are met
  • Optionally, require xp or items to break configured blocks (note: there is no display that makes the cost apparent yet, but it's planned)
  • Inbuilt support for disallowing breaking of generated waystones (enable via "rulesets" config option)

Usage

Modpack developers or server owners must configure this mod in order for it to be useful.

That means either configuring rules in the config file or enabling an inbuilt ruleset. Mods or datapack developers can also provide rulesets through a datapack by providing a "data/yourpack/unbreakables/yourruleset.json" file.

Example for making generated waystones unbreakable through the default ruleset:

rulesets = [ "waystones:generated_waystones" ]

Example for making generated waystones unbreakable through a custom rule:

rules = [ "[is_tag(waystones:waystones), is_not_state(origin, player)] refuse($chat.waystones.cannot_break_waystone)" ]

Example for some other custom rules:

rules = [ "[is_in_dimension(minecraft:the_nether)] refuse(You cannot break blocks in the Nether)", "[is_block(minecraft:dirt)] refuse(You cannot break dirt)", "[is_state(lit, true)] refuse(You cannot break lit furnaces)" ]

Example for a datapack ruleset (included by default in Waystones). 

{
"rules": [
"[is_tag(waystones:waystones), is_not_state(origin, player)] refuse($chat.waystones.cannot_break_waystone)"
]
}

Datapack rulesets must be enabled through the "ruleset" config option (see above).


Project members

BlayTheNinth

Member

Details

Licensed ARR
Published a month ago
Updated 7 days ago