tovac Posted March 5 Posted March 5 Hello. I want to write a client mod (for version 1.12.2), which simply print "Break!" in the game console when some player (not only me) breaks a block. I used this documentation, but I ran into a problem. Here is the mod code: @Mod(modid = ExampleMod.MODID, name = ExampleMod.NAME, version = ExampleMod.VERSION) public class ExampleMod { public static final String MODID = "examplemod"; public static final String NAME = "Example Mod"; public static final String VERSION = "1.0"; private static final Logger logger = LogManager.getLogger(ExampleMod.MODID); @Mod.EventHandler public void init(FMLInitializationEvent event) { logger.info("Started"); } } @Mod.EventBusSubscriber(modid = ExampleMod.MODID) class TestHandler { private static final Logger logger = LogManager.getLogger(ExampleMod.MODID); @SubscribeEvent public static void onBlockBreak(BlockEvent.BreakEvent event) { logger.info("Break!"); } } The problem is that the mod works in singleplayer mode, but stops working when I go to the server. In multiplayer, I do not receive block breaking events, either from other players or from myself. It seems to me that the mod is loaded as a server one. But I did not find a way to explicitly indicate that the mod should be loaded as a client one. Quote
eMigrowsLy1 Posted March 16 Posted March 16 In multiplayer, BlockEvent.BreakEvent is called only on the server. The client does not receive these events. Quote
Xoroshio Posted March 20 Posted March 20 You will probably have to do some research into packets, as the server tends to send those types of updates as packets. If you want to actually trigger anything when those packets are received (if they exist) you will have to set the client players packet listener impl to your own custom one or write some mixins. Preferably the former as it is a much friendlier and flexible approach whereas mixins are just downright evil. Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.