public void sendToPlayer(Location l, Player p) throws Exception { Object packet = Class.forName( "net.minecraft.server." + ReflectionUtil.getVersionString() + ".Packet63WorldParticles") .getConstructors()[0] .newInstance(); ReflectionUtil.setValue(packet, "a", particleName); ReflectionUtil.setValue(packet, "b", (float) l.getX()); ReflectionUtil.setValue(packet, "c", (float) l.getY()); ReflectionUtil.setValue(packet, "d", (float) l.getZ()); ReflectionUtil.setValue(packet, "e", new Random().nextFloat()); ReflectionUtil.setValue(packet, "f", new Random().nextFloat()); ReflectionUtil.setValue(packet, "g", new Random().nextFloat()); ReflectionUtil.setValue(packet, "h", defaultSpeed); ReflectionUtil.setValue(packet, "i", particleAmount); ((CraftPlayer) p).getHandle().playerConnection.sendPacket((Packet) packet); }