Helpful Hitboxes
This Minecraft mod makes working with small blocks easier by expanding their interaction boundaries. Inspired by scaffolding behavior, it makes fences, panes, chains, and end rods increase their click area to full cube size when you aim at them with a similar block in hand.
This approach greatly simplifies construction: you no longer have to aim your cursor with jewelry-like precision when placing blocks on top of each other. The system works correctly even if the appropriate block is in the off-hand, making breaking with tools more convenient. The mod also fixes bug MC-143005.
Settings and Parameters
The extended area function can be temporarily disabled with a hotkey (default Y). In the accessibility settings menu, you can change the switch mode to a button that must be held down.
If you want to add other blocks to work with this system or make blocks from other mods compatible (for example, new types of bars or chains), this can be configured through the configuration file.
helpfulhitboxes.json that looks like this by default.
The JSON array compatible_blocks defines the blocks that work with the mod. Blocks whose names are directly specified in the array, such as minecraft:chain, work individually. This means they will only exhibit full cube behavior when the player is holding that specific block; by default, chains only work with chains, and end rods only work with end rods. (Scaffolding is added only for off-hand work). However, if you define another JSON array called group inside it, all block names within will be "grouped" and will work with each other. For example, by default, any fence will use a full cube when the player is holding any other fence, and all pane-type blocks (glass panes and iron bars) will use a full cube when holding any other of them.
It is possible to specify block tags either in the grouped main array or in one of the groups, as can be seen in the default file. It doesn't matter if redundant block IDs are declared, as can be seen with the use of both names for each vanilla glass pane and the c and forge tags, which support new panes from fabric and forge respectively but also include vanilla ones. This is also an example that it's not necessary for a block or tag ID to correspond to an actual value - the mod will ignore any that don't exist in the game, such as quark:gold_bars However, the configuration file must use correct JSON syntax. If you forget to put a comma after one of the IDs or groups that isn't the last one in its array, or if you open a bracket without closing it, the file won't be read, and the mod will revert to the default list of compatible blocks. If you're having syntax trouble, try putting the configuration file into an online JSON validator, which will highlight errors for you.
For versions 1.19 and higher, the Fabric version of this mod requires Fabric API.