[Feature Suggestion] Configuration Option to enable compatibility with un-modded clients
BNTFryingPan opened this issue ยท 4 comments
I am currently running a lightly modded server (used in a way similar to Spigot or Paper where vanilla clients can join), but I would like to add Immersive Portals to the server for players who would like to take the time to install the mod, but also allow vanilla players to still join. Currently, if a vanilla client connects, Immersive Portals sends an invalid packet to the client, which causes it to disconnect from the server. I know this would be of high priority, but it would be nice if you could think about adding a configuration option that allows compatibility with vanilla clients. I understand that this configuration option would most likely disable a lot of the features of this mod (like global portals).
A possible way to implement this is by before sending the client any information relevant to Immersive Portals, wait for a special packet from the client that would only be sent from a client that also has Immersive Portals installed, and if the server never gets this packet, then just don't send that player any packets about the portals.
To help with the inconsistency of vanilla portals taking time and IP portals being instant, you could remove the portal time, similar to having carpet installed and setting portalSurvivalDelay
to 0 or 1 so that walking into a portal is almost instant.
An extra thing that would be really cool to have with this is an extra config option that works along side this is sending the client block information from the dimension, which would look similar to many command block and datapack tech demos in vanilla.
Spigot plugins do not work on a fabric server. And the main thing this is asking for is simply allowing vanilla clients to at least be able to connect instead of being disconnected because the client received an invalid packet. Allowing vanilla players to see into the portal was simply an extra thing. I also understand that Immersive Portals does more than just change nether portals to look fancy, which is why I suggested it to be a configuration option and not the default behavior. The only reason I want it on my server is for the nether portals, and I would assume anyone else who would want this configuration option feels the same way.
Then use this:
https://www.curseforge.com/minecraft/mc-mods/bukkit
Again, crippling an existing mod is unlikely to be a solution. I have no influence over the mod i'm just telling you that it's probably not going to happen, and why.
Just use this:
https://www.spigotmc.org/resources/nether-view.78885/
Immersive portals does far more than just changing nether portals. The portals in Immersive Portals mod can be any size, shape and orientation. The only reason the Nether View effect works is because everything is aligned to the block grid and the portal frame obscures the transition between overworld and nether, but how do you deal with an Immersive portal that is at a weird angle, and a strange shape?
Adding any sort of config option to disable these more advanced placements would basically cripple it to the point where you might as well use the nether view plugin anyway. If you want these advanced features your only option is to get your users to install a mod which takes only 10 minutes and is completely free. Up to you.
This is technically difficult and is not worth the effort. If the vanilla client connects, it does not recognize the portal entity so the player cannot use portal. It's possible to manifest vanilla nether portal blocks to the vanilla client but it would be very complex.
Anyway installing the mod is not too hard. If your server audience refuses to install any mod then I don't recommend using this mod on the server.