carpet-autoCraftingTable icon indicating copy to clipboard operation
carpet-autoCraftingTable copied to clipboard

Incompatible with clients without the mod and with Fabric API on 1.20+ or exactly 0.79.0

Open altrisi opened this issue 1 year ago • 9 comments

carpet:autocraftingtable is being regsynced, so the client will complain it doesn't know about it.

Idk if you need Fabric API on the server (any version).

I think this is also currently an issue if there's other mods that affect the registry but not autocraftingtable, given it seems to have been a bug in Fabric API that is being fixed on 1.20 (kept in 1.19.4 for backwards compat with mods working because of the bug).

altrisi avatar May 01 '23 14:05 altrisi

Also experiencing this issue, this is how it looks:

[17:11:34] [Render thread/ERROR]: Received unknown remote registry entries from server
[17:11:34] [Render thread/ERROR]: Registry entry (carpet:crafting_table) is missing from local registry (minecraft:block_entity_type)
[17:11:34] [Render thread/ERROR]: Registry remapping failed!
net.fabricmc.fabric.impl.registry.sync.RemapException: Received a registry entry that is unknown to this client.
This is usually caused by a mismatched mod set between the client and server. See the client logs for more details.
The following registry entry namespaces may be related:

carpet

	at net.fabricmc.fabric.impl.registry.sync.RegistrySyncManager.checkRemoteRemap(RegistrySyncManager.java:388) ~[fabric-registry-sync-v0-2.2.6+b3afc78b27-e0e706316d1e86c1.jar:?]
	at net.fabricmc.fabric.impl.registry.sync.RegistrySyncManager.apply(RegistrySyncManager.java:284) ~[fabric-registry-sync-v0-2.2.6+b3afc78b27-e0e706316d1e86c1.jar:?]
	at net.fabricmc.fabric.impl.registry.sync.RegistrySyncManager.lambda$receivePacket$0(RegistrySyncManager.java:118) ~[fabric-registry-sync-v0-2.2.6+b3afc78b27-e0e706316d1e86c1.jar:?]
	at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768) ~[?:?]
	at net.minecraft.util.thread.ThreadExecutor.executeTask(ThreadExecutor.java:156) ~[client-intermediary.jar:?]
	at net.minecraft.util.thread.ReentrantThreadExecutor.executeTask(ReentrantThreadExecutor.java:23) ~[client-intermediary.jar:?]
	at net.minecraft.util.thread.ThreadExecutor.runTask(ThreadExecutor.java:130) ~[client-intermediary.jar:?]
	at net.minecraft.util.thread.ThreadExecutor.runTasks(ThreadExecutor.java:115) ~[client-intermediary.jar:?]
	at net.minecraft.client.MinecraftClient.render(MinecraftClient.java:1175) ~[client-intermediary.jar:?]
	at net.minecraft.client.MinecraftClient.run(MinecraftClient.java:802) ~[client-intermediary.jar:?]
	at net.minecraft.client.main.Main.main(Main.java:250) ~[minecraft-1.20-rc1-client.jar:?]
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.14.21.jar:?]
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.14.21.jar:?]
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126) ~[NewLaunch.jar:?]
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71) ~[NewLaunch.jar:?]

kosma avatar Jun 04 '23 16:06 kosma

Additional information from Fabric devs: https://fabricmc.net/2023/05/25/120.html

During one of the code refactors, one bug related to the Registry Sync was “accidentally” fixed. The bug previously allowed clients with Fabric API (but without content mods) to join a server with modded contents, despite the mod being missing on the client. The refactor was merged to both 1.19.4 and 1.20 snapshot branches; however, the bug was reintroduced to 1.19.4 only to prevent unexpected breakage. If you have previously relied on the bug, make sure to have users install the mods on the client.

kosma avatar Jun 04 '23 16:06 kosma

Patbox said that the minimal dependency for this would be depending on and including polymer-reg-sync-manipulator, so no need for the entire Polymer.

kosma avatar Jun 12 '23 00:06 kosma

Also experiencing this issue, the client receives an error about mismatched mods but it tells the user that the mod is carpet instead of carpet-autoCraftingTable, this has caused quite a bit of confusion with members switching from vanilla to a fabric client

Mostly just an inconvenience for members to have to install more mods on top of what they may already have

image

cohenerickson avatar Jul 11 '23 17:07 cohenerickson

+1

This is really annoying!

probablypablito avatar Jul 20 '23 21:07 probablypablito

Is there any way to refactor this mod so that it can just be server-side? Otherwise there should be a mention somewhere that carpet-autocrafter is a server and client-sided mod and also note its incompatibility with optifabric.

ChromesDuzez avatar Jul 24 '23 02:07 ChromesDuzez

It seems that optifabric was making changes to make these two mods compatible but as you can see whatever I am trying to run isn't working so looking into whether the changes were included into the most recent build that is published on curseforge. As you can see here... [Question] Regarding latest build on curseforge

ChromesDuzez avatar Jul 24 '23 03:07 ChromesDuzez

It seems that optifabric was making changes to make these two mods compatible

That's about fabric-carpet, not carpet-autocraftingtable, see https://github.com/Chocohead/OptiFabric/issues/1010.

kosma avatar Jul 24 '23 08:07 kosma

+1 for getting this fixed asap! Server-only mods should not force clients to also be modded.

end-user avatar Aug 04 '23 02:08 end-user