Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE REQUEST] Support for Velocity or Multi-Server Setups #122

Open
onycius opened this issue Sep 2, 2024 · 7 comments
Open

[FEATURE REQUEST] Support for Velocity or Multi-Server Setups #122

onycius opened this issue Sep 2, 2024 · 7 comments
Labels
Status: On hold Needs more work Type: Enhancement New feature or request

Comments

@onycius
Copy link

onycius commented Sep 2, 2024

Velocity is a server proxy used to connect multiple servers together. Currently, there is limited support for Fabric multi-server setups, which is expected since Velocity was originally built to connect Paper/Spigot servers.

It would be nice to be able to relay in-game messages to Discord from more than one server. Existing solutions that claim to support Fabric are difficult to set up, extremely buggy, or not up to date. Simple Discord Link is already the go-to solution for Fabric multiplayer servers, so adding this functionality could significantly expand the capabilities of modern modded Fabric servers.

@hypherionmc
Copy link
Owner

hypherionmc commented Sep 2, 2024

We already have paper support on the [to-do] (#118) list. Of cause we'll have to compete with DiscordSRV, but it's still being planned for this year.

The paper version will be identical to the current modded version. We basically just have to provide a paper version of CraterLib for it to work

@onycius
Copy link
Author

onycius commented Sep 2, 2024

DiscordSRV does not currently support Velocity/Bungee or Fabric.

I'm suggesting that SDLink adds support for multi-server Fabric setups so that each server chat can forward messages to the same channel from the same bot. An approach would be to add support for the Velocity proxy so that it can hook onto the chats of all backend servers collectively and forward the messages from the proxy itself.

Ex) server setup: 1 Velocity Proxy -> backend server 1 and backend server 2
Have SDLink installed on the Velocity proxy and have it read the chats from both backend servers 1 & 2, and relay them to a single Discord Channel

A plugin example (which requires it to be installed on Paper/Spigot backends, so I can't use it for Fabric): https://hangar.papermc.io/beanbeanjuice/SimpleProxyChat

@hypherionmc
Copy link
Owner

I see what you mean.

That does open you up to some security concerns (which is a big concern for us too), in terms of the "backends" having to expose data so that the velocity server can read it.

It would also put us back on the curseforge malware scanner "blacklist", since they really don't like mods sending data outside of a server.

I will take a look at how such a system can be implemented securely and safely

@onycius
Copy link
Author

onycius commented Sep 2, 2024

I know it's pretty niche of a suggestion but so far I haven't seen a proper implementation of this for specifically Fabric/Modded. This would open up so many possibilities since modded server network setups aren't as widely supported as Paper server networks.

I also made suggestions regarding cross-server setups on PatBox's StyledChat and StyledPlayerList as well, which I know you recently just added support for.

Thank you for the quick reply and consideration!

@hypherionmc
Copy link
Owner

Btw just to add, you can technically run 2 bots (one on each backend server), with the same bot token, channels and webhooks.

The only feature of the mod that will be an issue that way, is the linked commands.

The other thing will be that chats sent in discord, will be shown in both servers, but chats sent from minecraft will only be visible in discord and won't be sent to the other server

@hypherionmc hypherionmc added Type: Enhancement New feature or request Status: On hold Needs more work labels Oct 11, 2024
@hypherionmc
Copy link
Owner

@onycius Just wanted to give an update on this

We recently added a feature where if you disable the ignoreBots config, you can have the webhooks/bot messages in the chat channel relayed as well.

So if you set up two discord link bots on the same chat channel, with ignoreBots disabled on both, Bot A will be able to send messages from Bot B to minecraft, and Bot B will be able to send the messages from Bot A.

Not exactly what you are looking for, but something that may work in the mean time

@onycius
Copy link
Author

onycius commented Nov 27, 2024

Hey, thank you for the reply! I went ahead and tried setting ignoreBots = false on both bot instances, but nothing changed vs. setting it to true. Is there anything else I should enable/disable in the config, or is this a bug? This is on the latest snapshot of SDL and Craterlib 1.21

Thank you again!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: On hold Needs more work Type: Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants