Jump to content

[1.14] Received empty payload on channel fml:handshake


_Cruelar_

Recommended Posts

I know this has been asked many times but why does this keep happening. In the linked post diesieben07 says that this error atleast for NGYF is related to when he registers his packets, which should be done in the FMLCommonSetupEvent, which I do, I checked with the debugger. As I have no clue what is causing this I'll just list when I sent Packets and an example Packet but if you know specific concepts which might cause this feel free to ask for it.

code:

Spoiler

Common Setup Handler:

Spoiler


private void doSetup(final FMLCommonSetupEvent event) {
        CapabilityManager.INSTANCE.register(IFroidCapability.class, new FroidCapabilityStorage(), FroidCapabilityGetter::new);
        CapabilityManager.INSTANCE.register(IHolyCapability.class, new HolyCapabilityStorage(), HolyCapabilityGetter::new);
        proxy.doSetup(event);
        Personaltoolmod_Core.network = NetworkRegistry.newSimpleChannel(
                new ResourceLocation(Personaltoolmod_Core.MODID, "com.cruelar.personaltoolmod"),
                () -> PROTOCOL_VERSION,
                PROTOCOL_VERSION::equals,
                PROTOCOL_VERSION::equals
        );
        ModPackets.registerPackets();
    }

 

Example Item sending a packet:

Spoiler


@Override
    public ActionResult<ItemStack> onItemRightClick(World worldIn, PlayerEntity playerIn, Hand handIn) {
        if (playerIn instanceof ServerPlayerEntity) {
            IFroidCapability froidCapability = playerIn.getCapability(FroidCapabilityProvider.CAPABILITY, null).orElseThrow(() -> new IllegalArgumentException("LazyOptional must not be empty!"));
            froidCapability.setTransformed(!froidCapability.isTransformed());
            Personaltoolmod_Core.network.sendTo(new PacketFroidUpdated(froidCapability.isTransformed()), ((ServerPlayerEntity) playerIn).connection.netManager, NetworkDirection.PLAY_TO_CLIENT);
            Personaltoolmod_Core.logger.log(Level.DEBUG,"Sent FroidPacket with value "+froidCapability.isTransformed());
        }
        return new ActionResult<ItemStack>(ActionResultType.PASS,playerIn.getHeldItem(handIn));
    }

 

Only other place where I send a packet (besides items with same functionality)

Spoiler


@SubscribeEvent
    public static void tick(final TickEvent.PlayerTickEvent e){
        PlayerEntity player = e.player;
        if (player.isAlive()) {
            ArrayList<Item> items = new ArrayList<>();
            items.add(player.getItemStackFromSlot(EquipmentSlotType.HEAD).getItem());
            items.add(player.getItemStackFromSlot(EquipmentSlotType.CHEST).getItem());
            items.add(player.getItemStackFromSlot(EquipmentSlotType.LEGS).getItem());
            items.add(player.getItemStackFromSlot(EquipmentSlotType.FEET).getItem());
            IHolyCapability holy = player.getCapability(HolyCapabilityProvider.CAPABILITY, null).orElseThrow(() -> new IllegalArgumentException("LazyOptional must not be empty!"));
            IFroidCapability froid = player.getCapability(FroidCapabilityProvider.CAPABILITY, null).orElseThrow(() -> new IllegalArgumentException("LazyOptional must not be empty!"));
            if (froid.isTransformed()) {
                player.setInvisible(true);
                player.setInvulnerable(true);
                player.addExhaustion(0.05F);
                if (player.getFoodStats().getFoodLevel()==0&&player instanceof ServerPlayerEntity){
                    froid.setTransformed(false);
                    Personaltoolmod_Core.network.sendTo(new PacketFroidUpdated(froid.isTransformed()), ((ServerPlayerEntity) player).connection.netManager, NetworkDirection.PLAY_TO_CLIENT);
                }
              ...
            }
        }
    }

 

Example Packet with Handler:

Spoiler


public class PacketFroidUpdated implements ICustomPacket {
    boolean transformed;
    
    public PacketFroidUpdated(){
        
    }
    
    public PacketFroidUpdated(boolean transformed){
        this.transformed = transformed;
    }

    public static void encode(PacketFroidUpdated pkt, PacketBuffer buf)
    {
        buf.writeBoolean(pkt.transformed);
        Personaltoolmod_Core.logger.log(Level.DEBUG,"Encoded FroidPacket with value "+pkt.transformed);
    }

    public static PacketFroidUpdated decode(PacketBuffer buf)
    {
        Personaltoolmod_Core.logger.log(Level.DEBUG,"Decoding FroidPacket");
        return new PacketFroidUpdated(buf.readBoolean());
    }

    public static class Handler {
        public static void handle(final PacketFroidUpdated msg, Supplier<NetworkEvent.Context> ctx) {
            ctx.get().enqueueWork(() -> {
                // Work that needs to be threadsafe (most work)
                ClientPlayerEntity sender = Minecraft.getInstance().player; // the client that sent this packet
                // do stuff
                FroidCapabilityGetter playerInfo = (FroidCapabilityGetter) sender.getCapability(FroidCapabilityProvider.CAPABILITY,
                        null).orElseThrow(()->new IllegalArgumentException("LazyOptional must not be empty!"));
                Personaltoolmod_Core.logger.log(Level.DEBUG,"Received FroidPacket with value "+msg.transformed);
                if (playerInfo != null) {
                    playerInfo.setTransformed(msg.transformed);
                }
            });
            ctx.get().setPacketHandled(true);
        }
    }
}

 

 

What happens before the Client complains about this when joining singleplayer worlds

Spoiler


[13:00:40] [Netty Local Client IO #0/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/PacketThreadUtil.class got resource net/minecraft/network/PacketThreadUtil.class true
[13:00:40] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/math/Vec2f.class got resource net/minecraft/util/math/Vec2f.class true
[13:00:40] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/text/event/ClickEvent.class got resource net/minecraft/util/text/event/ClickEvent.class true
[13:00:40] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/text/event/ClickEvent$Action.class got resource net/minecraft/util/text/event/ClickEvent$Action.class true
[13:00:40] [Server thread/INFO] [minecraft/MinecraftServer]: Dev joined the game
[13:00:40] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class got resource net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class true
[13:00:41] [Client thread/DEBUG] [ne.mi.fm.ne.FMLLoginWrapper/FMLHANDSHAKE]: Recieved login wrapper packet event for channel fml:handshake with index -1
[13:00:41] [Client thread/ERROR] [ne.mi.fm.ne.si.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake

What happens before the Server complains about this when joining singleplayer worlds

Spoiler

[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/AbstractCommandBlockScreen.class got resource net/minecraft/client/gui/screen/AbstractCommandBlockScreen.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/client/event/PlayerSPPushOutOfBlocksEvent.class got resource net/minecraftforge/client/event/PlayerSPPushOutOfBlocksEvent.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/EditSignScreen.class got resource net/minecraft/client/gui/screen/EditSignScreen.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/CommandBlockScreen.class got resource net/minecraft/client/gui/screen/CommandBlockScreen.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/JigsawScreen.class got resource net/minecraft/client/gui/screen/JigsawScreen.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/EditBookScreen.class got resource net/minecraft/client/gui/screen/EditBookScreen.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/audio/UnderwaterAmbientSoundHandler.class got resource net/minecraft/client/audio/UnderwaterAmbientSoundHandler.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/audio/IAmbientSoundHandler.class got resource net/minecraft/client/audio/IAmbientSoundHandler.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/audio/BubbleColumnAmbientSoundHandler.class got resource net/minecraft/client/audio/BubbleColumnAmbientSoundHandler.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/ClientBrandRetriever.class got resource net/minecraft/client/ClientBrandRetriever.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/ClientGameSession.class got resource net/minecraft/client/ClientGameSession.class true
[13:00:41] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/util/RecipeBookCategories.class got resource net/minecraft/client/util/RecipeBookCategories.class true
[13:00:41] [Server thread/DEBUG] [ne.mi.fm.ne.FMLLoginWrapper/FMLHANDSHAKE]: Recieved login wrapper packet event for channel fml:handshake with index -1
[13:00:41] [Server thread/ERROR] [ne.mi.fm.ne.si.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake

What happens before the Client complains about this when joining a multiplayer server

Spoiler

[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/DemoScreen.class got resource net/minecraft/client/gui/screen/DemoScreen.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/particle/ItemPickupParticle.class got resource net/minecraft/client/particle/ItemPickupParticle.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/util/NBTQueryManager.class got resource net/minecraft/client/util/NBTQueryManager.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/item/crafting/RecipeManager.class got resource net/minecraft/item/crafting/RecipeManager.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/resources/JsonReloadListener.class got resource net/minecraft/client/resources/JsonReloadListener.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/multiplayer/ClientAdvancementManager.class got resource net/minecraft/client/multiplayer/ClientAdvancementManager.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/advancements/AdvancementList.class got resource net/minecraft/advancements/AdvancementList.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/multiplayer/ClientSuggestionProvider.class got resource net/minecraft/client/multiplayer/ClientSuggestionProvider.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/command/ISuggestionProvider.class got resource net/minecraft/command/ISuggestionProvider.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/PacketThreadUtil.class got resource net/minecraft/network/PacketThreadUtil.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/gen/layer/traits/IAreaTransformer1.class got resource net/minecraft/world/gen/layer/traits/IAreaTransformer1.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/gen/layer/traits/IDimTransformer.class got resource net/minecraft/world/gen/layer/traits/IDimTransformer.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/network/FMLMCRegisterPacketHandler$ChannelList.class got resource net/minecraftforge/fml/network/FMLMCRegisterPacketHandler$ChannelList.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/CreateFlatWorldScreen.class got resource net/minecraft/client/gui/screen/CreateFlatWorldScreen.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/gui/screen/CreateBuffetWorldScreen.class got resource net/minecraft/client/gui/screen/CreateBuffetWorldScreen.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class got resource net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class true
[13:29:19] [Client thread/DEBUG] [ne.mi.fm.ne.FMLLoginWrapper/FMLHANDSHAKE]: Recieved login wrapper packet event for channel fml:handshake with index -1
[13:29:19] [Client thread/ERROR] [ne.mi.fm.ne.si.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/item/FireworkRocketItem$Shape.class got resource net/minecraft/item/FireworkRocketItem$Shape.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/multiplayer/PlayerController.class got resource net/minecraft/client/multiplayer/PlayerController.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/tags/Tag$Builder.class got resource net/minecraft/tags/Tag$Builder.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/tags/Tag$ListEntry.class got resource net/minecraft/tags/Tag$ListEntry.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/play/server/SCommandListPacket$Entry.class got resource net/minecraft/network/play/server/SCommandListPacket$Entry.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/command/arguments/serializers/StringArgumentSerializer$1.class got resource net/minecraft/command/arguments/serializers/StringArgumentSerializer$1.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/chunk/AbstractChunkProvider.class got resource net/minecraft/world/chunk/AbstractChunkProvider.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/command/arguments/SuggestionProviders.class got resource net/minecraft/command/arguments/SuggestionProviders.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/chunk/IChunkLightProvider.class got resource net/minecraft/world/chunk/IChunkLightProvider.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/client/multiplayer/ClientChunkProvider.class got resource net/minecraft/client/multiplayer/ClientChunkProvider.class true
[13:29:19] [Netty Client IO #1/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/command/arguments/SuggestionProviders$Wrapper.class got resource net/minecraft/command/arguments/SuggestionProviders$Wrapper.class true
[13:29:19] [Client thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/ITickList.class got resource net/minecraft/world/ITickList.class true
[13:29:19] [Netty Client IO #1/ERROR] [minecraft/ArgumentTypes]: Could not deserialize minecraft:
[13:29:19] [Netty Client IO #1/ERROR] [minecraft/ArgumentTypes]: Could not deserialize minecraft:

What happens before the Server complains about this when joining a multiplayer server

Spoiler


[13:29:19] [Server thread/INFO] [minecraft/PlayerList]: Dev[/127.0.0.1:55025] logged in with entity id 230 at (-1.2783264809061672, 65.0, -188.52994855352748)
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/network/FMLMCRegisterPacketHandler$ChannelList.class got resource net/minecraftforge/fml/network/FMLMCRegisterPacketHandler$ChannelList.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/BrandingControl.class got resource net/minecraftforge/fml/BrandingControl.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/math/Vec2f.class got resource net/minecraft/util/math/Vec2f.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/text/event/ClickEvent.class got resource net/minecraft/util/text/event/ClickEvent.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/util/text/event/ClickEvent$Action.class got resource net/minecraft/util/text/event/ClickEvent$Action.class true
[13:29:19] [Netty Server IO #2/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.ModIdArgument@567442bc (class net.minecraftforge.server.command.ModIdArgument) - will not be sent to client!
[13:29:19] [Netty Server IO #2/ERROR] [minecraft/ArgumentTypes]: Could not serialize net.minecraftforge.server.command.EnumArgument@6203a50d (class net.minecraftforge.server.command.EnumArgument) - will not be sent to client!

[13:29:19] [Server thread/INFO] [minecraft/DedicatedServer]: Dev joined the game
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/play/server/SPlayerPositionLookPacket$Flags.class got resource net/minecraft/network/play/server/SPlayerPositionLookPacket$Flags.class true
[13:29:19] [Netty Server IO #2/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/play/server/SPlayerListItemPacket$1.class got resource net/minecraft/network/play/server/SPlayerListItemPacket$1.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/scoreboard/Score.class got resource net/minecraft/scoreboard/Score.class true
[13:29:19] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/common/util/NonNullConsumer.class got resource net/minecraftforge/common/util/NonNullConsumer.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/spawner/WorldEntitySpawner.class got resource net/minecraft/world/spawner/WorldEntitySpawner.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/EntitySpawnPlacementRegistry.class got resource net/minecraft/entity/EntitySpawnPlacementRegistry.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/EntitySpawnPlacementRegistry$PlacementType.class got resource net/minecraft/entity/EntitySpawnPlacementRegistry$PlacementType.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/SpawnReason.class got resource net/minecraft/entity/SpawnReason.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/EntitySpawnPlacementRegistry$IPlacementPredicate.class got resource net/minecraft/entity/EntitySpawnPlacementRegistry$IPlacementPredicate.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/EntitySpawnPlacementRegistry$Entry.class got resource net/minecraft/entity/EntitySpawnPlacementRegistry$Entry.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/spawner/WorldEntitySpawner$1.class got resource net/minecraft/world/spawner/WorldEntitySpawner$1.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/world/DifficultyInstance.class got resource net/minecraft/world/DifficultyInstance.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/monster/ZombieEntity$GroupData.class got resource net/minecraft/entity/monster/ZombieEntity$GroupData.class true
[13:29:20] [Netty Server IO #2/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/play/server/SWorldBorderPacket$1.class got resource net/minecraft/network/play/server/SWorldBorderPacket$1.class true
[13:29:20] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/entity/merchant/villager/VillagerData.class got resource net/minecraft/entity/merchant/villager/VillagerData.class true
[13:29:21] [Netty Server IO #2/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraft/network/PacketThreadUtil.class got resource net/minecraft/network/PacketThreadUtil.class true
[13:29:21] [Server thread/TRACE] [ne.mi.fm.lo.ModJarURLHandler/CORE]: Loading modjar URL modjar://forge/net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class got resource net/minecraftforge/fml/network/NetworkEvent$RegistrationChangeType.class true
[13:29:21] [Server thread/DEBUG] [ne.mi.fm.ne.FMLLoginWrapper/FMLHANDSHAKE]: Recieved login wrapper packet event for channel fml:handshake with index -1
[13:29:21] [Server thread/ERROR] [ne.mi.fm.ne.si.IndexedMessageCodec/SIMPLENET]: Received empty payload on channel fml:handshake

 

My Projects:

Cruelars Triforcemod (1.12 release; 1.14 alpha soon coming)

 

Important:

As my mod is on at least 10 different third party sites without my permission, I want to warn you about that with a link to StopModReposts

Link to comment
Share on other sites

1 hour ago, _Cruelar_ said:

Common Setup Handler:

If I recall correctly you need to use DeferredWorkQueue.runLaterDeffered in the mod life-cycle events because they run on a separate thread. But I honestly don't know what is causing your problem. Could be the lack of sleep I have.

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

What exactly should I run through that as this didn't solve it

private void doSetup(final FMLCommonSetupEvent event) {
        CapabilityManager.INSTANCE.register(IFroidCapability.class, new FroidCapabilityStorage(), FroidCapabilityGetter::new);
        CapabilityManager.INSTANCE.register(IHolyCapability.class, new HolyCapabilityStorage(), HolyCapabilityGetter::new);
        proxy.doSetup(event);
        DeferredWorkQueue.runLater(()-> {
            Personaltoolmod_Core.network = NetworkRegistry.newSimpleChannel(
                    new ResourceLocation(Personaltoolmod_Core.MODID, "com.cruelar.personaltoolmod"),
                    () -> PROTOCOL_VERSION,
                    PROTOCOL_VERSION::equals,
                    PROTOCOL_VERSION::equals
            );
            ModPackets.registerPackets();
        });
    }

Thanks for the effort, and sorry if I'm just stupid with this.

My Projects:

Cruelars Triforcemod (1.12 release; 1.14 alpha soon coming)

 

Important:

As my mod is on at least 10 different third party sites without my permission, I want to warn you about that with a link to StopModReposts

Link to comment
Share on other sites

5 minutes ago, _Cruelar_ said:

What exactly should I run through that as this didn't solve it

Everything that needs to be done on the main thread. Anything that interacts with Minecraft/Minecraft Forge directly I believe. This includes your Capability registration.

Also I didn't expect it to solve it. What exactly is the problem though? Does that error actually even mean anything? Like are your packets working or not?

VANILLA MINECRAFT CLASSES ARE THE BEST RESOURCES WHEN MODDING

I will be posting 1.15.2 modding tutorials on this channel. If you want to be notified of it do the normal YouTube stuff like subscribing, ect.

Forge and vanilla BlockState generator.

Link to comment
Share on other sites

Originally it prevented me from joining my testserver but since moving some Common code which checked the capabilities, that I'd left in the ClientTick event although better suited in another eventhandler it stopped that might just have been some logical side breaking then, I just hoped to prevent problems with multiplayer by fixing this here as I'm not sure if it is able to break my mod on servers as this mod is designed to run on a server

My Projects:

Cruelars Triforcemod (1.12 release; 1.14 alpha soon coming)

 

Important:

As my mod is on at least 10 different third party sites without my permission, I want to warn you about that with a link to StopModReposts

Link to comment
Share on other sites

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.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Join one of the largest civilization experiments in Minecraft under our banner!   Our goal is to create the largest and most prominent civilization across the entirety of Minecraft, and we’d like you to join! We offer lots of unique roles and jobs that tailor to your specific skillset in Minecraft! You can build a city, participate in the government, or fight for Gold, God, and Glory on the battlefield!   Join our nation today! https://discord.gg/hb3cuaDezA
    • I have an issue where after I exit the world the capability data does not save when I reload the world. It will save the initial data such as village name but if I modify any data during gameplay theres a 5% chance the data saves when I exit then reload the world. I read the docs and was told that chunks need to be marked dirty but the docs does not say how to mark the chunk dirty... Heres the provider: public class ChunkCapProvider implements ICapabilityProvider, ICapabilitySerializable<CompoundTag> { private final Capability<IChunk> capability = ChunkCapability.CHUNK_CAPABILITY; private final ChunkCapability instance = new ChunkCapability(); private final LazyOptional lazy = LazyOptional.of(()->instance).cast(); public void invalidate(){ lazy.invalidate(); } @Nonnull @Override public <T> LazyOptional<T> getCapability(@Nonnull Capability<T> cap, @Nullable Direction direction) { if(cap == capability ) return lazy; return LazyOptional.empty(); } @Override public CompoundTag serializeNBT() { return instance.serializeNBT(); } @Override public void deserializeNBT(CompoundTag tag) { instance.deserializeNBT(tag); } }   Heres the capability class: public class ChunkCapability implements IChunk { public static final ResourceLocation ID = new ResourceLocation(Main.MODID, "owner"); public static final String VILLAGE_NAME = "village_name"; public static final String SAVED_ROLES = "saved_roles"; public static final String SAVED_POINTS = "saved_points"; public static final String BAD_CHUNK = "BAD_VILLAGE_CHUNK"; public static Capability<IChunk> CHUNK_CAPABILITY = null; private String villageName = "BAD_VILLAGE_CHUNK"; private String savedRoles = ""; private String savedPoints = ""; public ChunkCapability(){ this.getClass(); } @Override public CompoundTag serializeNBT() { CompoundTag nbt = new CompoundTag(); nbt.putString(SAVED_ROLES, this.savedRoles); nbt.putString(SAVED_POINTS, this.savedPoints); nbt.putString(VILLAGE_NAME, this.villageName); return nbt; } public void deserializeNBT(CompoundTag tag) { this.setVillageName(tag.getString(VILLAGE_NAME)); this.setSavedRoles(tag.getString(SAVED_ROLES)); this.setSavedPoints(tag.getString(SAVED_POINTS)); } public String getVillageName() { return this.villageName; } public void setVillageName(String str) { this.villageName = str; } public void setSavedRoles(String str) { this.savedRoles = str; } public void setRole(String name, String role){ if(!this.hasRole(name)) { this.savedRoles += (name + ":" + role + ","); this.savedPoints += (name + ":" + 10 + ","); return; } String roleName = this.getRole(name); String firstStr = this.savedRoles.substring(0, this.savedRoles.indexOf(name + ":") + name.length() + 1); String lastStr = this.savedRoles.substring(this.savedRoles.indexOf(name + ":") + ((name.length() + 1) + roleName.length())); this.savedRoles = firstStr + role + lastStr; } public String getRole(String name){ if(this.savedRoles.isEmpty() || !this.savedRoles.contains(name)) { this.setRole(name, Roles.Role.FOREIGNER.getName()); } String fStr = this.savedRoles.substring(this.savedRoles.indexOf(name + ":"), this.savedRoles.indexOf(',')); return fStr.substring(fStr.indexOf(':') + 1); } public boolean hasRole(String name) { if(this.savedRoles.isEmpty()) return false; return this.savedRoles.contains(name); } public String getSavedRoles() { return this.savedRoles; } public String getSavedPoints() { return this.savedPoints; } public void setSavedPoints(String name) { this.savedPoints = name; } public int getPoints(String name) { if(this.savedPoints.isEmpty() || !this.savedRoles.contains(name)) this.setPoints(name, 10); String fStr = this.savedPoints.substring(this.savedPoints.indexOf(name + ':')); return Integer.parseInt(fStr.substring(fStr.indexOf(':') + 1, fStr.indexOf(','))); } public void setPoints(String name, int rV) { if(!this.hasPoints(name)){ this.savedPoints += (name + ":" + rV + ","); return; } String oldPoints = String.valueOf(this.getPoints(name)); String points = String.valueOf(rV); String firstStr = this.savedPoints.substring(0, this.savedPoints.indexOf(name + ":") + name.length() + 1); String lastStr = this.savedPoints.substring(this.savedPoints.indexOf(name + ":") + ((name.length() + 1) + oldPoints.length())); Minecraft.getInstance().player.displayClientMessage(Component.nullToEmpty("Saved String: " + (firstStr + points + lastStr)), false); this.savedPoints = (firstStr + points + lastStr); } public boolean hasPoints(String name) { if(this.savedPoints.isEmpty()) return false; return this.savedPoints.contains(name); } }   Heres where I attach/register: @Mod.EventBusSubscriber(modid = Main.MODID) public class CapabilityEvents { @SubscribeEvent public static void attachCapability(AttachCapabilitiesEvent<LevelChunk> event){ ChunkCapProvider provider = new ChunkCapProvider(); event.addCapability(ChunkCapability.ID, provider); event.addListener(provider::invalidate); } }  
    • Id use this ServerLevel#findNearestMapFeature  
    • Trying to play with the mods: Tinkers Construct, Buildcraft and the Blood Magic addon Blood Arsenal; the game crashes. I noticed that when trying to use only two of the three in any combination the game opens without problems, but when trying to put all three together the error occurs. Is there any configuration I can modify or any other way to solve the problem?   ---- Minecraft Crash Report ---- // Hi. I'm Minecraft, and I'm a crashaholic. Time: 5/22/24 8:48 PM Description: There was a severe problem during mod loading that has caused the game to fail cpw.mods.fml.common.LoaderException: java.lang.NoClassDefFoundError: tconstruct/library/weaponry/AmmoWeapon     at cpw.mods.fml.common.LoadController.transition(LoadController.java:163)     at cpw.mods.fml.common.Loader.loadMods(Loader.java:544)     at cpw.mods.fml.client.FMLClientHandler.beginMinecraftLoading(FMLClientHandler.java:208)     at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:480)     at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:878)     at net.minecraft.client.main.Main.main(SourceFile:148)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)     at java.lang.reflect.Method.invoke(Unknown Source)     at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)     at net.minecraft.launchwrapper.Launch.main(Launch.java:28) Caused by: java.lang.NoClassDefFoundError: tconstruct/library/weaponry/AmmoWeapon     at java.lang.Class.forName0(Native Method)     at java.lang.Class.forName(Unknown Source)     at cpw.mods.fml.common.ProxyInjector.inject(ProxyInjector.java:42)     at cpw.mods.fml.common.FMLModContainer.constructMod(FMLModContainer.java:512)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)     at java.lang.reflect.Method.invoke(Unknown Source)     at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)     at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)     at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)     at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)     at com.google.common.eventbus.EventBus.post(EventBus.java:275)     at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)     at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)     at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)     at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)     at java.lang.reflect.Method.invoke(Unknown Source)     at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)     at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)     at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)     at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)     at com.google.common.eventbus.EventBus.post(EventBus.java:275)     at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)     at cpw.mods.fml.common.Loader.loadMods(Loader.java:513)     ... 10 more Caused by: java.lang.ClassNotFoundException: tconstruct.library.weaponry.AmmoWeapon     at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191)     at java.lang.ClassLoader.loadClass(Unknown Source)     at java.lang.ClassLoader.loadClass(Unknown Source)     ... 36 more Caused by: java.lang.NoClassDefFoundError: tconstruct/library/weaponry/AmmoItem     at java.lang.ClassLoader.defineClass1(Native Method)     at java.lang.ClassLoader.defineClass(Unknown Source)     at java.security.SecureClassLoader.defineClass(Unknown Source)     at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:182)     ... 38 more Caused by: java.lang.ClassNotFoundException: tconstruct.library.weaponry.AmmoItem     at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101)     at java.lang.ClassLoader.loadClass(Unknown Source)     at java.lang.ClassLoader.loadClass(Unknown Source)     ... 42 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details:     Minecraft Version: 1.7.10     Operating System: Windows 10 (x86) version 10.0     Java Version: 1.8.0_411, Oracle Corporation     Java VM Version: Java HotSpot(TM) Client VM (mixed mode, sharing), Oracle Corporation     Memory: 271923192 bytes (259 MB) / 402653184 bytes (384 MB) up to 536870912 bytes (512 MB)     JVM Flags: 9 total; -Xmx512M -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -XX:+IgnoreUnrecognizedVMOptions -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump     AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used     IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0     FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1614 14 mods loaded, 14 mods active     States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored     UC    mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)      UC    FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1614-1.7.10.jar)      UC    Forge{10.13.4.1614} [Minecraft Forge] (forge-1.7.10-10.13.4.1614-1.7.10.jar)      UC    AWWayofTime{v1.3.3} [Blood Magic: Alchemical Wizardry] (BloodMagic-1.7.10-1.3.3-17.jar)      UC    Mantle{1.7.10-0.3.2.jenkins191} [Mantle] (Mantle-1.7.10-0.3.2b.jar)      UE    TConstruct{1.7.10-1.8.8.build991} [Tinkers' Construct] (TConstruct-1.7.10-1.8.8.build991.jar)      UC    BloodArsenal{1.2-5} [Blood Arsenal] (BloodArsenal-1.7.10-1.2-5.jar)      UC    BuildCraft|Core{7.1.25} [BuildCraft] (buildcraft-7.1.25.jar)      UC    BuildCraft|Builders{7.1.25} [BC Builders] (buildcraft-7.1.25.jar)      UC    BuildCraft|Robotics{7.1.25} [BC Robotics] (buildcraft-7.1.25.jar)      UC    BuildCraft|Silicon{7.1.25} [BC Silicon] (buildcraft-7.1.25.jar)      UC    BuildCraft|Energy{7.1.25} [BC Energy] (buildcraft-7.1.25.jar)      UC    BuildCraft|Transport{7.1.25} [BC Transport] (buildcraft-7.1.25.jar)      UC    BuildCraft|Factory{7.1.25} [BC Factory] (buildcraft-7.1.25.jar)      GL info: ' Vendor: 'Intel' Version: '4.4.0 - Build 21.20.16.4541' Renderer: 'Intel(R) HD Graphics 610'     Mantle Environment: Environment healthy.     TConstruct Environment: Environment healthy.
    • fixed this problem but now i have a new one  java.lang.RuntimeException: java.lang.NoSuchFieldException: processor  Help 
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.