Better mobGriefing GameRule

Mods
170,337 Downloads Last Updated: Apr 24, 2018 Game Version: 1.12.2

About

"Better mobGriefing GameRule" is a Minecraft Forge mod which improves the "mobGriefing" game rule, allowing separate values to be specified for individual types of entity.

Features

The below game rules can be used to override the mobGriefing behaviour for the associated entity type, the value of these rules will be used instead of the original "mobGriefing" game rule.

In Minecraft version 1.11 the naming convention for entities was changed, the commands for setting the entity based rule values in Minecraft 1.11+ have been updated to be consistent with those changes.

Entity GameRule Version
Blaze mobGriefing Blaze 1.8-1.10
  mobGriefing blaze 1.11+
Creeper mobGriefing Creeper 1.7-1.10
  mobGriefing creeper 1.11+
EnderDragon mobGriefing EnderDragon 1.7-1.10
  mobGriefing ender_dragon 1.11+
Enderman mobGriefing Enderman 1.7-1.10
  mobGriefing enderman 1.11+
Evoker mobGriefing evocation_illager 1.11+
Ghast mobGriefing Ghast 1.7-1.10
  mobGriefing ghast 1.11+
Husk mobGriefing husk 1.11+
PigZombie mobGriefing PigZombie 1.8-1.10
  mobGriefing zombie_pigman 1.11+
Rabbit mobGriefing Rabbit 1.8-1.10
  mobGriefing rabbit 1.11+
Sheep mobGriefing Sheep 1.7-1.10
  mobGriefing sheep 1.11+
Silverfish mobGriefing Silverfish 1.7-1.10
  mobGriefing silverfish 1.11+
SnowMan mobGriefing SnowMan 1.9-1.10
  mobGriefing snowman 1.11+
Villager mobGriefing Villager 1.8-1.10
  mobGriefing villager 1.11+
Wither mobGriefing WitherBoss 1.7-1.10
  mobGriefing wither 1.11+
Zombie mobGriefing Zombie 1.7-1.10
  mobGriefing zombie 1.11+
ZombieVillager mobGriefing zombie_villager 1.11+

Each rule can be set to truefalse or inherit, when the value is inherit the entity's mobGriefing behaviour will be inherited from the original "mobGriefing" game rule.

Entity Rule Effects

The following list describe the effect of each of the default entity rules.

  • Blaze
    • Whether the Blaze's fireball can set blocks on fire. (1.8+)
  • Creeper
    • Whether the Creeper's explosion can destroy blocks. (1.7+)
  • EnderDragon
    • Whether the EnderDragon can destroy blocks upon contact. (1.7+)
  • Enderman
    • Whether the Enderman can pick up and/or place blocks. (1.7+)
  • Evoker
    • Whether the Evoker can turn blue sheep in to red sheep. (1.11+)
  • Ghast
    • Whether the Ghast's fireball can destroy blocks. (1.7+)
    • Whether the Ghast's fireball can set blocks on fire. (1.8+)
  • Husk
    • Whether the Husk can destroy wooden doors. (1.11+)
    • Whether the Husk can pick up loot from the ground. (1.11+)
  • PigZombie
    • Whether the PigZombie can destroy wooden doors. (1.8+)
  • Rabbit
    • Whether the rabbit can eat carrot crops. (1.8+)
  • Sheep
    • Whether the Sheep eating grass damages the grass. (1.7+)
  • Silverfish
    • Whether the Silverfish egg can hatch and destroy the block. (1.7+) (1.12.2 requires version 1.12.2-7.0.0+ of this mod and Forge 14.23.2.2646+)
    • Whether the Silverfish can hide and convert stone to monster eggs. (1.9+)
  • SnowMan
    • Whether the SnowMan can place a snow layer as it moves. (1.9+)
  • Villager
    • Whether the Villager can harvest crops. (1.8+)
    • Whether the Villager can pick up loot from the ground. (1.8+)
  • Wither
    • Whether the Wither's spawn explosion can destroy blocks. (1.7+)
    • Whether the Wither's attacks can destroy blocks. (1.7+)
    • Whether the Wither can destroy blocks upon contact. (1.7+)
  • Zombie
    • Whether the Zombie can destroy wooden doors. (1.7+)
    • Whether the Zombie can pick up loot from the ground. (1.7+
  •  ZombieVillager
    • Whether the ZombieVillager can destroy wooden doors. (1.11+)
    • Whether the ZombieVillager can pick up loot from the ground. (1.11+)

Several behaviours are handled in common code and so can affect multiple entities, these are detailed below with the entities which use them as standard.

  • Whether an entity falling upon farmland reverts it to dirt. (Used by all entities.) (1.7+)
  • Whether an entity eating grass damages the grass. (Used by Sheep only.) (1.7+)
  • Whether an entity can destroy wooden doors. (Used by Husks (1.11), PigZombies (1.8+), Zombies (1.7+) and ZombieVillagers (1.11).)
  • Whether an entity can pick up loot from the ground. (Used by PigZombies (1.7+), Skeletons (1.7+), Strays (1.11), Villagers (1.8+), WitherSkeletons (1.11) and Zombies (1.7+).)
  • Whether large fireballs can destroy blocks. (Used by Ghasts only.) (1.7+)
  • Whether large fireballs can set blocks on fire. (Used by Ghasts only.) (1.8+)
  • Whether wither skull projectiles can destroy blocks. (Used by Wither only.) (1.7+)
  • Whether an entity can harvest crops. (Used by Villager only.) (1.8+)

Any entities which include these behaviours can be added to be handled with a separate entity rule at any time by using the command /gamerule mobGriefing <entity-name> <value>. For example the loot pickup behaviour of Skeletons is not handled by standard but could be stopped by using /gamerule mobGriefing Skeleton false.

Any changes made by other mods may change the inheritance of mob griefing behaviour, so creating new entity rules as above may be necessary to account for changes or new mob types which extend the original mob types.

Configuration

The default values of the mobGriefing game rules can be set using the in-game configuration menu. Default values can be changed for both the global mobGriefing game rule and each individual entity.

The specified default values will be used to set the initial mobGriefing values during world creation as well as for any existing world in which a given rule does not already exist.

All entities supported out of the box will be added to the configuration file automatically, additional entities can be added manually to the configuration file. Once added the entity can then be managed using the in-game configuration menu. The entity name specified must match the name as it appears in the EntityList for that entity, for example S:PigZombie=true (1.7-1.10) or S:zombie_pigman=true (1.11+).

The structure of the configuration file follows the Forge structure:

# Configuration file
defaultmobgriefingvalues {

    globalrules {
        S:mobGriefing=true|false
    }

    entityrules {
        S:<entity name 1>=true|false|inherit
        ...
        S:<entity name n>=true|false|inherit
    }
}

Supported Versions

This mod is a Minecraft Forge and has only been tested as such, there are known compatibility issues with SpongeForge with are non-trivial to resolve. Listed below are the supported version of Minecraft Forge for each release of this mod, recommended versions of Forge were picked and no later versions have been tested.

Mod Version Forge Version
1.12.2-7.0.0 1.12.2 - 14.23.2.2646
1.12.2-6.1.0 1.12.2 - 14.23.2.2611
1.11.2-5.0.0 1.11.2 - 13.20.1.2386
1.10.2-4.0.1 1.10.2 - 12.18.3.2185
1.9.4-3.0.0 1.9.4 - 12.17.0.1976
1.8.9-2.0.0 1.8.9 - 11.15.1.1722
1.7.10-1.0.0 1.7.10 - 10.13.4.1558

Versioning

The versioning used for this project uses a combination of the target Minecraft version and SemVer in the formatMCVERSION-MAJOR.MINOR.PATCH.

License

This project is licensed under the MIT License (MIT).

Comments

  • To post a comment, please or register a new account.
Posts Quoted: