No Shield Delay

No Shield Delay

Mod

A recreation of Revvilo's Responsive Shields in Fabric.

Server EquipmentUtility

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

No Shield Delay

Configurable reduction of the delay in Minecraft's blocking system for Fabric based off of Revvilo's Responsive Shields

Ever notice a strange occurrence where you try to block and attack and it hits you anyway? Even though your shield was definitely up by then? Well, it isn't in your head! That delay is very much real and this mod removes it!

When holding use on an item, there is a base 'use time' which is stored and then decremented every tick while it's being held.

Minecraft will only block an attack after the shield has been raised for more than 5 ticks. It checks this by looking at the difference between the current use time countdown and the base use time of the item.

(from LivingEntity's isBlocking() method)

return item.getMaxUseTime(this.activeItemStack) - this.itemUseTimeLeft >= 5;

This mod bypasses this by using mixin to alter the 5 constant, allowing comparison between any given integer 0 thorough 5.

This mod is supposed to be an alternative to Revvilo's Responsive Shields. Because of this, if Revvilo ever makes a Fabric port of their own, I will cease maintaining this project. Give it a look if you need a Forge equivalent.


🧰 Setup

This mod should work with 1.17+. It possibly could work with versions older than that, but I don't feel like testing it.

This mod is only necessary server side. Installing on the client as well will not yield any benefit.

The Fabric API is not needed for this mod. Only the Fabric Loader.


âš™ Configs

Files and contents:

no-shield-delay.toml

RaiseTime

(From 0 to 5. default: 0) The amount of time, in ticks, from when you right-click before the game will block attacks.

Enabled

(Default: true) Whether or not the effect of the mod is enabled.

Info:

  • Setting Raise Time to 0 makes shields capable of blocking immediately

  • The client-side raise animation takes roughly one tick to complete. So setting Raise Time to 1 is a decent balance between responsiveness and not being able to blockhit as easily.

📜 License

Copyright 2022 Quplet, Apache License 2.0. Please credit if you use or distribute my work.

Kinetic Server Hosting Banner


Project members

Quplet

Owner

revvilo

Original Creator

Details

Licensed MIT
Published 2 years ago
Updated 3 months ago