Fast Block Place Mod 1.8.9 Apr 2026

import java.util.logging.Logger;

public class Transformer implements IClassTransformer {

private byte[] patchPlayerControllerMP(byte[] classBytes) { ClassReader cr = new ClassReader(classBytes); ClassWriter cw = new ClassWriter(cr, ClassWriter.COMPUTE_MAXS); ClassVisitor cv = new ClassVisitor(Opcodes.ASM4, cw) { @Override public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) { MethodVisitor mv = super.visitMethod(access, name, desc, signature, exceptions); if (name.equals("clickBlock") && desc.equals("(Lnet/minecraft/util/BlockPos;Lnet/minecraft/util/EnumFacing;)Z")) { LOGGER.info("Found clickBlock method – removing block hit delay"); return new PatchClickBlock(mv); } return mv; } }; cr.accept(cv, 0); return cw.toByteArray(); }

private static final Logger LOGGER = Logger.getLogger("FastBlockPlace"); fast block place mod 1.8.9

private static class PatchClickBlock extends MethodVisitor { public PatchClickBlock(MethodVisitor mv) { super(Opcodes.ASM4, mv); }

@Override public String getAccessTransformerClass() { return null; } } { "modid": "fastblockplace", "name": "Fast Block Place", "description": "Removes the delay between placing blocks. Place blocks as fast as you can click!", "version": "1.0", "mcversion": "1.8.9", "url": "", "updateUrl": "", "authorList": ["YourName"], "credits": "ASM Patch for 1.8.9", "logoFile": "", "screenshots": [], "dependencies": [] } 5. build.gradle (ForgeGradle Setup) buildscript { repositories { jcenter() maven { url = "https://files.minecraftforge.net/maven" } } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:2.1-SNAPSHOT' } } apply plugin: 'net.minecraftforge.gradle.tweaker-client' apply plugin: 'java'

repositories { mavenCentral() }

@Override public String getSetupClass() { return null; }

@Mod.EventHandler public void preInit(FMLPreInitializationEvent event) { logger = event.getModLog(); logger.info("FastBlockPlace Mod is initializing (1.8.9)"); }

@Override public byte[] transform(String name, String transformedName, byte[] basicClass) { if (basicClass == null) return null; if (transformedName.equals("net.minecraft.client.multiplayer.PlayerControllerMP")) { LOGGER.info("Patching PlayerControllerMP for fast block place"); return patchPlayerControllerMP(basicClass); } return basicClass; } import java

dependencies { compile 'org.ow2.asm:asm-debug-all:5.0.3' } Create src/main/resources/META-INF/fastblockplace_at.cfg :

jar { manifest { attributes( 'FMLCorePlugin': 'com.example.fastblockplace.Plugin', 'FMLCorePluginContainsFMLMod': 'true', 'FMLAT': 'fastblockplace_at.cfg' ) } }

@Mod.EventHandler public void init(FMLInitializationEvent event) { logger.info("FastBlockPlace Mod enabled – block placing delay removed"); } } This patches net.minecraft.client.multiplayer.PlayerControllerMP method clickBlock to remove the 4 tick cooldown ( blockHitDelay ). package com

package com.example.fastblockplace; import net.minecraft.launchwrapper.IClassTransformer; import org.objectweb.asm.*;

Join 500+ PR teams already loving Prezly

Take the stress out of contact management and distribution with a dedicated outreach CRM that your whole team can use.

Made with