Creeper Healing
This server and client side, customizable mod allows the world to automatically heal Creeper explosions. It has support for configuring a custom block-replace list, for telling the mod what blocks to use to replace a previously broken one, allowing for balancing and preventing potential abuse of this mod.
Sponsored by Ember Host
Check out Ember Host if you are looking for a Minecraft server host that offers exceptional value for price. You can support my development by using the banner below, which gives a 50% cut for every first purchase to me, alongside a 10% discount to you.
Features
Explosion healing modes
Special modes that customize the way explosions are healed even further:
- Daytime Healing Mode: Makes explosions wait until sunrise to begin healing. When they do, they will need a source of light to be able to heal.
- Difficulty-based Healing Mode: Speeds up or slows down the healing of explosions depending on the difficulty of the world or server.
- Blast-resistance based Healing Mode: Blocks with a higher blast resistance will take longer to heal. Their delays will also receive a randomized offset, causing blocks to heal in bursts.
Blocks will be healed during the explosion healing process. A block may be healed at a position if a player would also be able to place a block at that position.
Different explosion sources
This mod also supports the healing of different types of explosion sources, such as mobs, TNT and blocks such as beds and end crystal blocks. You can also configure a blacklist for mob explosion sources that should not be healed.
Make explosions not drop items
You can individually configure whether explosions coming from different sources should drop their items. By default, all explosion source types except mob explosions are not allowed to drop their items, but you can configure these settings individually via the config file or via commands. There is also a blacklist for mob explosion sources that should not drop items when exploding.
Configurable delays
Configure the amount of time it takes for an explosion to start healing, and the amount of time between each block placement. Keep in mind that some explosion modes will use their own values for the explosion heal and block placement delays.
- Warning: Both delays have a minimum value of 0.05 seconds. Attempting to force a lower value by setting it manually in the config will make the mod use the default values instead.
Restore the NBT data of block entities
Toggle the restoration of block NBT data when healing the block. You can also optionally force this block to always heal to guarantee the original block along with its nbt data is always healed
Make falling blocks not fall
You can make blocks such as sand and gravel remain in place when healed. These will only fall when receiving a neighbor update.
Whitelist
You can configure an optional whitelist that allows you to specify the blocks that are allowed to heal in an explosion. To do this, you can open the mod's configuration file, and find the following section:
#Use an optional whitelist to customize which blocks are allowed to heal. To add an entry, specify the block's namespace
#along with its identifier, separated by a colon, and add it in-between the square brackets below. Separate each entry with a comma.
#Example entries:
#whitelist_entries = ["minecraft:grass", "minecraft:stone", "minecraft:sand"]
[whitelist]
whitelist_entries = ["minecraft:placeholder"]
To add entries to the whitelist, you can add a string containing the block's namespace and identifier separated by a colon to the array, like shown in the example above. Separate each entry with a comma. You can also find a preference setting named "enable_whitelist" to enable or disable the usage of the whitelist.
Replace map
In the mod's config file, you can customize a "replace map". This is used if you would like a certain block to be healed with another one, instead of using the same block. If a block is healed with another one, the properties of the original block will be carried over to the new block, preserving properties like the block's orientation.
To add entries to the replace map, you can open the configuration file (located in your config folder and named creeper-healing.toml), scroll down and add entries below the [replace_map] section, using the following format, and separating each entry by skipping a line:
"minecraft:name_of_old_block" = "minecraft:name_of_new_block"
By default, the mod includes the following entry in the replace map:
"minecraft:diamond_block" = "minecraft:stone"
- Warning: Do not set the same block to be replaced with multiple blocks, as this will cause a crash upon game startup. That is, do not use the same key twice or more in the replace map.
Extra settings
You can also find settings to toggle extra features, such as:
- Enable or disable the block placement sound effect when a block is healed.
- Heal explosions faster via splash potions of Healing or Regeneration.
Commands
All of the mod's settings can also be modified in-game via commands. Access all of them via the /creeper-healing parent command. The config file also supports being reloaded in-game via /creeper-healing reload_config to avoid having to restart the server or world. Note that all commands require operator permission.
Configuration File
When the server or game is started, the mod will look for an existing creeper-healing.toml file for the config folder of your game. If it exists, it will read the values from there. If not, it will create a new config file in /config/creeper-healing.toml. You can then edit this file to configure the mod, and restart the server or game to apply the changes, or use the /creeper-healing reload_config in-game command.
The following is the default configuration file generated upon first mod initialization or whenever the mod fails to find the config file during server or world shutdown.
#Configure the delays related to the healing of explosions.
[delays]
#(Default = 3.0) How much time in seconds should an explosion wait for to begin healing.
explosion_heal_delay = 3.0
#(Default = 1.0) The time in seconds that a block takes to heal.
block_placement_delay = 1.0
#Toggle whether certain explosion should drop items. Does not include items stored in container blocks.
[explosion_item_drops]
#(Default = false) Whether to drop items on explosions caused by mobs such as Creepers.
drop_items_on_mob_explosions = false
#(Default = true) Whether to drop items on explosions caused by blocks such as beds or end crystal blocks.
drop_items_on_block_explosions = true
#(Default = true) Whether to drop items on explosions caused by TNT blocks and TNT minecarts.
drop_items_on_tnt_explosions = true
#(Default = true) Whether to drop items on explosions such as those caused by wind bursts.
drop_items_on_triggered_explosions = true
#(Default = true) Whether to drop items on explosions whose source is not any of the ones provided in this setting category.
drop_items_on_other_explosions = true
#Add mob identifiers to this blacklist to prevent explosions caused by the added mobs from dropping items if drop_items_on_mob_explosions is enabled.
drop_items_on_mob_explosions_blacklist = ["minecraft:placeholder"]
#Configure which explosions are allowed to heal.
[explosion_sources]
#(Default = true) Heal explosions caused by mobs such as Creepers.
heal_mob_explosions = true
#(Default = false) Heal explosions caused by blocks such as beds or end crystal blocks.
heal_block_explosions = false
#(Default = false) Heal explosions caused by TNT blocks and TNT minecarts.
heal_tnt_explosions = false
#(Default = false) Heal explosions such as those caused by wind bursts.
heal_triggered_explosions = false
#(Default = false) Heal explosions caused by sources which aren't any of the ones provided in this setting category.
heal_other_explosions = false
#Add mob identifiers to this blacklist to prevent explosions caused by the added mobs from healing if heal_mob_explosions is enabled.
heal_mob_explosions_blacklist = ["minecraft:placeholder"]
#Choose between different special modes for explosion healing. Note that certain healing modes will not follow the explosion delay and block delay settings.
[explosion_healing_mode]
#(Default = "default_mode") Choose any of the following healing modes by copying one of the strings and pasting it into the value of the "mode" setting below:
#"default_mode", "daytime_healing_mode", "difficulty_based_healing_mode", "blast_resistance_based_healing_mode"
mode = "DEFAULT_MODE"
#Toggleable settings for extra features.
[preferences]
#(Default = false) Whether to restore block nbt data upon healing. This option prevents container blocks like chests from dropping their inventories. Does not apply when the healed block is different from the destroyed block due to a replace map entry.
restore_block_nbt = false
#(Default = false) Whether to force blocks with nbt data to always heal, even if the replace map specifies a replacement for that block, and regardless of the block that may be occupying that position at the moment of healing.
force_blocks_with_nbt_to_always_heal = false
#(Default = true) Allows for a falling block, like sand or gravel, to fall when healed. Disabling this option makes the falling block have to receive a neighbor update before falling.
make_falling_blocks_fall = true
#(Default = true) Whether a block placement sound effect should be played when a block is healed.
block_placement_sound_effect = true
#(Default = true) Whether a block placement sound effect should produce some cloud particles.
block_placement_particles = true
#(Default = true) Makes explosion heal immediately when a potion of Healing is thrown on them.
heal_on_healing_potion_splash = true
#(Default = true) Makes explosions begin their healing process when a potion of Regeneration is thrown on them.
heal_on_regeneration_potion_splash = true
#(Default = false) Toggle the usage of the whitelist.
enable_whitelist = false
#Use an optional whitelist to customize which blocks are allowed to heal. To add an entry, specify the block's namespace
#along with its identifier, separated by a colon and enclosed in double quotes, and add it in-between the square brackets below. Separate each entry with a comma.
#Example entries:
#whitelist_entries = ["minecraft:grass", "minecraft:stone", "minecraft:sand"]
[whitelist]
whitelist = ["minecraft:placeholder"]
#Add your own replace entries to configure which blocks should be used to heal other blocks. The block on the right will be used to heal the block on the left.
#Specify the block's namespace along with the block's name identifier, separated by a colon and enclosed in double quotes.
#Example entry:
#"minecraft:gold_block" = "minecraft:stone"
#Warning, the same key cannot appear more than once in the replace map! For example, the following will cause an error:
#"minecraft:diamond_block" = "minecraft:stone"
#"minecraft:diamond_block" = "minecraft:air"
[replace_map]
"minecraft:diamond_block" = "minecraft:stone"
Support
If you would like to report a bug, or make a suggestion, you can do so via the mod's issue tracker.
Credits
- Thanks to Kioku for the mod's icon.
- Thanks to @sulpherstaer for giving me the idea and inspiration for making this mod.
- Thansk to @_jacg on the Fabric Discord server helping me out with setting up the custom config file.
- Thanks to @dale8699 for helping me improve and give me ideas for the mod.
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
|
R
2.1.4
|
10mo ago | 1 | |||
|
R
2.1.3
|
10mo ago | 1 | |||
|
R
2.1.2
|
last yr. | 1 | |||
|
R
2.1.1
|
last yr. | 1 | |||
|
R
2.1.0
|
last yr. | 1 | |||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 | ||||
| last yr. | 1 |
- Updated to 1.21.11.
- Update to 1.21.10
- Updated to 1.21.6.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- Fix crash on startup due to broken creation of map sections.
- Updated the dependency version for Monkey Utils.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- Update to Minecraft 1.21.5
- Version number will from now on not include the Minecraft version, as it will be assumed that the latest version of the mod supports the latest Minecraft version.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
Use [this](https://modrinth.com/mod/monkey-utils/version/0.1.2+1.21) release of Monkey Utils for this version of Creeper Healing.
## Changelog
- Fix double blocks like doors or beds not being properly replaced with another double block when using the replace map.
- Fix redstone dust, repeaters and comparators dropping from explosions even if that explosion is set to not drop items.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- Update to 1.21.4
- Fix bug where attempting to heal double chests would crash the server.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- When attempting to place the corresponding partner of a double chest block, check if that block is already placed before attempting to place it.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- The
explosion_sourcesandexplosion_item_dropssetting categories have been reworked. The original settings have been replaced by new settings that correspond to Minecraft's own explosion source types. This was done in order to increase compatibility with modded explosions. You will find now find settings that correspond to the following source types:mob,tnt,block,triggered, andother. In addition, both setting categories have a new blacklist setting, where you can add mob identifiers to make explosion source types coming from those mobs to not heal or to not drop items. - ExplosionManagers now expose an ID that you can use to emit
ExplosionContextinstances to. This makes it easier for other mods to register and use new ExplosionManagers to allow support for entirely custom explosions. - Miscellaneous API and internal changes.
- Updated the Fabric Loader and Fabric API dependencies.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- No longer heal nether portal, end portal and end gateway blocks.
- Include logical client side checks in Explosion.mixin for safety by [Aurora](https://github.com/StellarWitch7).
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- Fix shulker box blocks not being properly excluded from the mod's features.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
- Optimized the retrieval of indirectly affected positions, resulting in considerable faster performance, especially noticeable when multiple explosions happen on the same tick.
- The max recursion depth for obtaining indirectly affected positions is now the same as vanilla's max depth for block updates (512).
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
This version of the mod will invalidate your current
scheduled-creeper.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
- Updated to 1.21**.
- Added support for indirect block healing**: The mod will now be capable of healing blocks which were indirectly destroyed by explosions. For example, a torch whose support block was destroyed will now be taken into account. A column of signs will now be healed if an explosion destroys one of the supporting sign blocks. The mod will be able to heal indirectly exploded blocks up to a maximum of 100 blocks starting from the supporting block and counting down as it encounters more connected blocks.
- Block placement particles**: A new feature to spawn cloud particles above a block placement has been added. A new configuration setting, called
block_placement_particles, has been added to thepreferencessection of the config file and config commands. This setting istrueby default. - The mod will now heal both halves of a chest at the same time**.
- Item drops for creeper explosions is now disabled by default**: Courtesy of [hiisuuii](https://github.com/hiisuuii).
- The mod's logo has been updated**: Courtesy of [Swanslab](https://github.com/swanslab).
- The mod now depends on a new mod library called [Monkey Config](https://github.com/ArkoSammy12/Monkey-Config)**: The internal configuration system has been migrated to this library. Note that Monkey Config has a dependency on Fabric Language Kotlin.
- Major internal refactor**: To make the mod more extendable and to function as an API for other mods to use to make additions to Creeper Healing.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues).
This version of the mod will invalidate your current
scheduled-creeper.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update contains a major rework of the mod's internal configuration system. All of these changes are at the code level and will not change how you currently use the configuration system. Furthermore, the following features and changes have been made:
- Added three new preference settings:
restore_block_nbt: This new setting will save the block's NBT data (such as inventories) and subsequently restore it upon healing. When a block with NBT data is destroyed by an explosion and it is to be healed, the block itself (such as the chest or furnace) will not drop as an item, so as to avoid duplication of the chest. This does not necessarily mean that surrounding blocks won't drop their items when exploded. This option is disabled by default.force_blocks_with_nbt_to_always_heal: This setting makes it so that blocks with NBT data destroyed from explosions that will be healed always heal, regardless of whether this block is mapped to another block in the replace map, or whether there is a block at the position where the block with NBT will try to be healed at. This option should be enabled alongsiderestore_block_nbtto ensure that inventories of blocks like chests always end up restored. This option is disabled by default.make_falling_blocks_fall: This setting makes it so that blocks affected by gravity do not fall upon being healed, unless triggered by a neighbor update, which can include the healing of blocks adjacent to the gravity affected block.- The serialization of explosions will now use compressed JSON instead of regular JSON.
- Updated the Fabric Loader dependency to 0.15.10.
- An internal, non user-modifiable list of excluded blocks has been hard-coded into the mod's mechanics to exclude certain blocks from being affected by the mechanics of this mod. As of the release of this update, it only includes Shulker Boxes, This is because shulker boxes always drop their item with the inventory contained within it, making the restoration of Shulker boxes unnecessary. Furthermore, attempting to integrate them proved to be troubling due to their unique behavior regarding the dropping of items when destroyed.
- Corresponding commands to edit the newly added preference settings have been added.
- Made it so that, if an explosion cannot be healed, then force all blocks affected by that explosion to drop their items, regardless of the user defined settings.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
This version of the mod will invalidate your current
scheduled-creeper.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update contains a major rework of the mod's internal configuration system. All of these changes are at the code level and will not change how you currently use the configuration system. Furthermore, the following features and changes have been made:
- Added three new preference settings:
restore_block_nbt: This new setting will save the block's NBT data (such as inventories) and subsequently restore it upon healing. When a block with NBT data is destroyed by an explosion and it is to be healed, the block itself (such as the chest or furnace) will not drop as an item, so as to avoid duplication of the chest. This does not necessarily mean that surrounding blocks won't drop their items when exploded. This option is disabled by default.force_blocks_with_nbt_to_always_heal: This setting makes it so that blocks with NBT data destroyed from explosions that will be healed always heal, regardless of whether this block is mapped to another block in the replace map, or whether there is a block at the position where the block with NBT will try to be healed at. This option should be enabled alongsiderestore_block_nbtto ensure that inventories of blocks like chests always end up restored. This option is disabled by default.make_falling_blocks_fall: This setting makes it so that blocks affected by gravity do not fall upon being healed, unless triggered by a neighbor update, which can include the healing of blocks adjacent to the gravity affected block.- The serialization of explosions will now use compressed JSON instead of regular JSON.
- Updated the Fabric Loader dependency to 0.15.10.
- An internal, non user-modifiable list of excluded blocks has been hard-coded into the mod's mechanics to exclude certain blocks from being affected by the mechanics of this mod. As of the release of this update, it only includes Shulker Boxes, This is because shulker boxes always drop their item with the inventory contained within it, making the restoration of Shulker boxes unnecessary. Furthermore, attempting to integrate them proved to be troubling due to their unique behavior regarding the dropping of items when destroyed.
- Corresponding commands to edit the newly added preference settings have been added.
- Made it so that, if an explosion cannot be healed, then force all blocks affected by that explosion to drop their items, regardless of the user defined settings.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
This version of the mod will invalidate your current
scheduled-creeper.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update contains a major rework of the mod's internal configuration system. All of these changes are at the code level and will not change how you currently use the configuration system. Furthermore, the following features and changes have been made:
- Added three new preference settings:
restore_block_nbt: This new setting will save the block's NBT data (such as inventories) and subsequently restore it upon healing. When a block with NBT data is destroyed by an explosion and it is to be healed, the block itself (such as the chest or furnace) will not drop as an item, so as to avoid duplication of the chest. This does not necessarily mean that surrounding blocks won't drop their items when exploded. This option is disabled by default.force_blocks_with_nbt_to_always_heal: This setting makes it so that blocks with NBT data destroyed from explosions that will be healed always heal, regardless of whether this block is mapped to another block in the replace map, or whether there is a block at the position where the block with NBT will try to be healed at. This option should be enabled alongsiderestore_block_nbtto ensure that inventories of blocks like chests always end up restored. This option is disabled by default.make_falling_blocks_fall: This setting makes it so that blocks affected by gravity do not fall upon being healed, unless triggered by a neighbor update, which can include the healing of blocks adjacent to the gravity affected block.- The serialization of explosions will now use compressed JSON instead of regular JSON.
- Updated the Fabric Loader dependency to 0.15.10.
- An internal, non user-modifiable list of excluded blocks has been hard-coded into the mod's mechanics to exclude certain blocks from being affected by the mechanics of this mod. As of the release of this update, it only includes Shulker Boxes, This is because shulker boxes always drop their item with the inventory contained within it, making the restoration of Shulker boxes unnecessary. Furthermore, attempting to integrate them proved to be troubling due to their unique behavior regarding the dropping of items when destroyed.
- Corresponding commands to edit the newly added preference settings have been added.
- Made it so that, if an explosion cannot be healed, then force all blocks affected by that explosion to drop their items, regardless of the user defined settings.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
This version of the mod will invalidate your current
scheduled-explosions.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update includes a major refactor of the mod's code-base, with several minor optimizations.
- Removed the settings
heal_on_flowing_water,heal_on_source_water,heal_on_flowing_lavaandheal_on_source_lava. Whether a block can be healed at a location will now act identically to whether a player would be able to place a block at that location. This includes liquids, grass, etc. The goal of removing these options is to simplify the configuration of the mod and make its behavior more consistent with Minecraft's own block placement rules. - Unused config setting keys will now be automatically removed.
- Explosions healed with the daytime healing mode will now react to the usage of the
/time addand/time setcommands, where they will recalculate their timers based on the remaining ticks until the next morning. - Updated Fabric Loader version requirement to 0.15.6.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
This version of the mod will invalidate your current
scheduled-explosions.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update includes a major refactor of the mod's code-base, with several minor optimizations.
- Removed the settings
heal_on_flowing_water,heal_on_source_water,heal_on_flowing_lavaandheal_on_source_lava. Whether a block can be healed at a location will now act identically to whether a player would be able to place a block at that location. This includes liquids, grass, etc. The goal of removing these options is to simplify the configuration of the mod and make its behavior more consistent with Minecraft's own block placement rules. - Unused config setting keys will now be automatically removed.
- Explosions healed with the daytime healing mode will now react to the usage of the
/time addand/time setcommands, where they will recalculate their timers based on the remaining ticks until the next morning. - Updated Fabric Loader version requirement to 0.15.6.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
This version of the mod will invalidate your current
scheduled-explosions.json file, meaning that after updating the mod, any currently stored explosions will be lost.## Changelog
This update includes a major refactor of the mod's code-base, with several minor optimizations.
- Removed the settings
heal_on_flowing_water,heal_on_source_water,heal_on_flowing_lavaandheal_on_source_lava. Whether a block can be healed at a location will now act identically to whether a player would be able to place a block at that location. This includes liquids, grass, etc. The goal of removing these options is to simplify the configuration of the mod and make its behavior more consistent with Minecraft's own block placement rules. - Unused config setting keys will now be automatically removed.
- Explosions healed with the daytime healing mode will now react to the usage of the
/time addand/time setcommands, where they will recalculate their timers based on the remaining ticks until the next morning. - Updated Fabric Loader version requirement to 0.15.6.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Fix crash when attempting to use the mod with Lithium.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added two new preference settings:
- "heal_on_source_water": Whether blocks should be healed where there is currently a source water block. False by default.
- "heal_on_source_lava": Whether blocks should be healed where there is currently a source lava block. False by default.
- A new configuration category, named "explosion_item_drops" has been added, along with its corresponding command sub-category, to individually configure whether items should be dropped from certain explosion sources. All of these settings are enabled by default.
- Added two new explosion sources: "heal_bed_and_respawn_anchor_explosions" and "heal_end_crystal_explosions", both false by default.
- The preference command settings "block_placement_delay" and "explosion_heal_delay" have been moved out of the "preferences" sub-command category, and moved into their own "delays" category, to better match the configuration file.
- Explosions will no longer heal fire or soul fire under any circumstances.
- Explosions will now always heal blocks where there is currently fire or soul fire.
- Fixed attachable blocks such as torches or rails dropping their items after an explosion, even that explosion was configured to not drop items.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added two new preference settings:
- "heal_on_source_water": Whether blocks should be healed where there is currently a source water block. False by default.
- "heal_on_source_lava": Whether blocks should be healed where there is currently a source lava block. False by default.
- A new configuration category, named "explosion_item_drops" has been added, along with its corresponding command sub-category, to individually configure whether items should be dropped from certain explosion sources. All of these settings are enabled by default.
- Added two new explosion sources: "heal_bed_and_respawn_anchor_explosions" and "heal_end_crystal_explosions", both false by default.
- The preference command settings "block_placement_delay" and "explosion_heal_delay" have been moved out of the "preferences" sub-command category, and moved into their own "delays" category, to better match the configuration file.
- Explosions will no longer heal fire or soul fire under any circumstances.
- Explosions will now always heal blocks where there is currently fire or soul fire.
- Fixed attachable blocks such as torches or rails dropping their items after an explosion, even that explosion was configured to not drop items.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added two new preference settings:
- "heal_on_source_water": Whether blocks should be healed where there is currently a source water block. False by default.
- "heal_on_source_lava": Whether blocks should be healed where there is currently a source lava block. False by default.
- A new configuration category, named "explosion_item_drops" has been added, along with its corresponding command sub-category, to individually configure whether items should be dropped from certain explosion sources. All of these settings are enabled by default.
- Added two new explosion sources: "heal_bed_and_respawn_anchor_explosions" and "heal_end_crystal_explosions", both false by default.
- The preference command settings "block_placement_delay" and "explosion_heal_delay" have been moved out of the "preferences" sub-command category, and moved into their own "delays" category, to better match the configuration file.
- Explosions will no longer heal fire or soul fire under any circumstances.
- Explosions will now always heal blocks where there is currently fire or soul fire.
- Fixed attachable blocks such as torches or rails dropping their items after an explosion, even that explosion was configured to not drop items.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added new optional whitelist configuration feature, which allows you to specify what blocks should be healed in an explosion:
- You will now find a new configuration section above the replace map to customize the whitelist. To add entries to the whitelist, you can add a string containing the block's namespace and identifier separated by a colon to the array, like shown in the example below. Separate each entry with a comma.
``
toml
#Use an optional whitelist to customize which blocks are allowed to heal. To add an entry, specify the block's namespace
#along with its identifier, separated by a colon, and add it in-between the square brackets below. Separate each entry with a comma.
#Example entries:
#whitelist_entries = ["minecraft:grass", "minecraft:stone", "minecraft:sand"]
[whitelist]
whitelist_entries = ["minecraft:placeholder"]
`
- Added new "enable_whitelist" preference to toggle the usage of the whitelist. It is disabled by default
`toml
#(Default = false) Enable or disable the usage of the whitelist
enable_whitelist = false
``- Renamed "settings" sub-command category to "preferences".
- Moved "reload" command to outside the "preferences" sub-command category and renamed it to "reload_config".
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added new optional whitelist configuration feature, which allows you to specify what blocks should be healed in an explosion:
- You will now find a new configuration section above the replace map to customize the whitelist. To add entries to the whitelist, you can add a string containing the block's namespace and identifier separated by a colon to the array, like shown in the example below. Separate each entry with a comma.
``
toml
#Use an optional whitelist to customize which blocks are allowed to heal. To add an entry, specify the block's namespace
#along with its identifier, separated by a colon, and add it in-between the square brackets below. Separate each entry with a comma.
#Example entries:
#whitelist_entries = ["minecraft:grass", "minecraft:stone", "minecraft:sand"]
[whitelist]
whitelist_entries = ["minecraft:placeholder"]
`
- Added new "enable_whitelist" preference to toggle the usage of the whitelist. It is disabled by default
`toml
#(Default = false) Enable or disable the usage of the whitelist
enable_whitelist = false
``- Renamed "settings" sub-command category to "preferences".
- Moved "reload" command to outside the "preferences" sub-command category and renamed it to "reload_config".
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added new optional whitelist configuration feature, which allows you to specify what blocks should be healed in an explosion:
- You will now find a new configuration section above the replace map to customize the whitelist. To add entries to the whitelist, you can add a string containing the block's namespace and identifier separated by a colon to the array, like shown in the example below. Separate each entry with a comma.
``
toml
#Use an optional whitelist to customize which blocks are allowed to heal. To add an entry, specify the block's namespace
#along with its identifier, separated by a colon, and add it in-between the square brackets below. Separate each entry with a comma.
#Example entries:
#whitelist_entries = ["minecraft:grass", "minecraft:stone", "minecraft:sand"]
[whitelist]
whitelist_entries = ["minecraft:placeholder"]
`
- Added new "enable_whitelist" preference to toggle the usage of the whitelist. It is disabled by default
`toml
#(Default = false) Enable or disable the usage of the whitelist
enable_whitelist = false
``- Renamed "settings" sub-command category to "preferences".
- Moved "reload" command to outside the "preferences" sub-command category and renamed it to "reload_config".
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added 2 new healing mode settings:
- "Blast resistance-based healing mode": This mode will make blocks with lower blast resistance heal faster than those with a higher blast resistance. A small randomized amount of delay is added or subtracted from the block placement delay of each affected block. This results in blocks tending to heal in bursts, rather than in predictable timings.
- "Difficulty-based healing mode": This mode makes the healing of explosions speed up when the difficulty of the server or world is set to peaceful or easy, and slow down when it is set to normal or hard. Additionally, if the difficulty is set to hard, there is a considerable chance that explosions will not heal all the way through. Note that changing the difficulty will not affect currently on-going explosions with the Difficulty-based healing mode enabled.
- The "mode" sub-command and its settings have been modified to accommodate for these additions. To see the current healing mode, run
/creeper-healing mode. To select a healing mode, such as the daytime healing mode, run/creeper-healing mode daytime_healing_mode. - The config file has been retouched as well. You will now see a setting section named "explosion_healing_mode" with a single setting named "mode" to select a mode by using one of (currently) 4 strings, mentioned in the config file itself.
- Note** that if you currently have the Daytime Healing mode enabled, you will have to manually set it back to that mode upon updating the mod.
- Added 2 new preference settings:
- "heal_on_healing_potion_splash": Makes any explosion hit by a splash potion of healing begin healing immediately, regardless of explosion healing mode. Enabled by default.
- "heal_on_regeneration_potion_splash": Makes explosions created with the default healing mode begin their healing process immediately. This only sets the explosion heal delay of the explosion to 0. Enabled by default.
- The "requires_light" preference setting has been removed and has instead been integrated into the Daytime Healing Mode, affecting explosions created with that healing mode enabled only.
- Note**:
If this section of the config file refuses to go away
``
toml
#Toggle different special modes for explosion healing.
[modes]
#(Default = false) Whether or not daytime healing mode should be enabled.
#Explosions will wait until the next sunrise to start healing, and they will finish healing at nighttime.
#Note that this only applies for explosions that occurred while this setting was enabled.
daytime_healing_mode = false
`` you can safely remove it.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added 2 new healing mode settings:
- "Blast resistance-based healing mode": This mode will make blocks with lower blast resistance heal faster than those with a higher blast resistance. A small randomized amount of delay is added or subtracted from the block placement delay of each affected block. This results in blocks tending to heal in bursts, rather than in predictable timings.
- "Difficulty-based healing mode": This mode makes the healing of explosions speed up when the difficulty of the server or world is set to peaceful or easy, and slow down when it is set to normal or hard. Additionally, if the difficulty is set to hard, there is a considerable chance that explosions will not heal all the way through. Note that changing the difficulty will not affect currently on-going explosions with the Difficulty-based healing mode enabled.
- The "mode" sub-command and its settings have been modified to accommodate for these additions. To see the current healing mode, run
/creeper-healing mode. To select a healing mode, such as the daytime healing mode, run/creeper-healing mode daytime_healing_mode. - The config file has been retouched as well. You will now see a setting section named "explosion_healing_mode" with a single setting named "mode" to select a mode by using one of (currently) 4 strings, mentioned in the config file itself.
- Note** that if you currently have the Daytime Healing mode enabled, you will have to manually set it back to that mode upon updating the mod.
- Added 2 new preference settings:
- "heal_on_healing_potion_splash": Makes any explosion hit by a splash potion of healing begin healing immediately, regardless of explosion healing mode. Enabled by default.
- "heal_on_regeneration_potion_splash": Makes explosions created with the default healing mode begin their healing process immediately. This only sets the explosion heal delay of the explosion to 0. Enabled by default.
- The "requires_light" preference setting has been removed and has instead been integrated into the Daytime Healing Mode, affecting explosions created with that healing mode enabled only.
- Note**:
If this section of the config file refuses to go away
``
toml
#Toggle different special modes for explosion healing.
[modes]
#(Default = false) Whether or not daytime healing mode should be enabled.
#Explosions will wait until the next sunrise to start healing, and they will finish healing at nighttime.
#Note that this only applies for explosions that occurred while this setting was enabled.
daytime_healing_mode = false
`` you can safely remove it.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).
- Added 2 new healing mode settings:
- "Blast resistance-based healing mode": This mode will make blocks with lower blast resistance heal faster than those with a higher blast resistance. A small randomized amount of delay is added or subtracted from the block placement delay of each affected block. This results in blocks tending to heal in bursts, rather than in predictable timings.
- "Difficulty-based healing mode": This mode makes the healing of explosions speed up when the difficulty of the server or world is set to peaceful or easy, and slow down when it is set to normal or hard. Additionally, if the difficulty is set to hard, there is a considerable chance that explosions will not heal all the way through. Note that changing the difficulty will not affect currently on-going explosions with the Difficulty-based healing mode enabled.
- The "mode" sub-command and its settings have been modified to accommodate for these additions. To see the current healing mode, run
/creeper-healing mode. To select a healing mode, such as the daytime healing mode, run/creeper-healing mode daytime_healing_mode. - The config file has been retouched as well. You will now see a setting section named "explosion_healing_mode" with a single setting named "mode" to select a mode by using one of (currently) 4 strings, mentioned in the config file itself.
- Note** that if you currently have the Daytime Healing mode enabled, you will have to manually set it back to that mode upon updating the mod.
- Added 2 new preference settings:
- "heal_on_healing_potion_splash": Makes any explosion hit by a splash potion of healing begin healing immediately, regardless of explosion healing mode. Enabled by default.
- "heal_on_regeneration_potion_splash": Makes explosions created with the default healing mode begin their healing process immediately. This only sets the explosion heal delay of the explosion to 0. Enabled by default.
- The "requires_light" preference setting has been removed and has instead been integrated into the Daytime Healing Mode, affecting explosions created with that healing mode enabled only.
- Note**:
If this section of the config file refuses to go away
``
toml
#Toggle different special modes for explosion healing.
[modes]
#(Default = false) Whether or not daytime healing mode should be enabled.
#Explosions will wait until the next sunrise to start healing, and they will finish healing at nighttime.
#Note that this only applies for explosions that occurred while this setting was enabled.
daytime_healing_mode = false
`` you can safely remove it.
Please make sure to **report** any issues or make suggestions in the [issue tracker](https://github.com/ArkoSammy12/creeper-healing/issues) or in the [Discord server](https://discord.gg/UKr8n3b3ze).