ProjectLighthouse icon indicating copy to clipboard operation
ProjectLighthouse copied to clipboard

Verify With App (Discord)

Open m88youngling opened this issue 3 years ago • 8 comments

This is a feature request that is primarily intended to help with the beta test. Beacon won't need it for public release, but it may be useful for the beta test and other private instances in the future.

Now that we are basically finished with implementing invite links and distributing those links, the next step is verification. The problem that needs to be solved is that currently verifying that a user in our beta testing program has connected to the server is a manual process. A Starblazer has to assign the proper USC roles on Discord to a user after confirming that they have connected to our beta testing instance. However, this has a few drawbacks,

  • inefficient
  • prone to error
  • may miss some people

Another problem is that I suspect there are people in the beta test who have been removed on Discord for inactivity, but their account still remains on the server. This means they can continue to play and we may not be aware of them at all. This can potentially be a security issue for the beta testing phase. It's also possible that a user may leave the Discord server without our knowledge while continuing to play on Lighthouse. It's important for us to keep track of users on Discord during the beta test for the following reasons,

  • We need to communicate with them about important server updates and requirements.
  • The purpose of the beta test is to provide us with feedback. Without a channel to facilitate that feedback, their presence isn't as useful.
  • We need to be able to identify people in order to take action against them while we have limited moderation tools.

Here's what I propose as a solution,

  • [ ] Allow or require a Lighthouse account to verify with another app (Discord) with oauth.
  • [ ] Allow admins to scrub the server of accounts that aren't verified with an admin panel button.
  • [ ] If Lighthouse detects that a user is no longer part of a particular Discord server, the connection is revoked, marking it as eligible for removal in an admin-initiated purge as described in the previous task.
  • [ ] If the user has connected to the Lighthouse server in-game, assign a set of roles to them on Discord. For our purposes these are 903896634205814804 and 903897048041005136 respectively.
  • [ ] Remove some roles from a user after the previous step. The list of roles they may have are below:

982495290462441502 985246466501120020 985246652451422228 969361110430007336 987704951008530442 990244237398392832

For other private servers, perhaps this functionality could allow any app to be connected. Perhaps Mark Zuckerberg would want to start his own Lighthouse instance and make people have a Facebook account? :troled:

m88youngling avatar Jul 27 '22 18:07 m88youngling

alright I'm on it, can someone assign this to me please

Zaprit avatar Jul 27 '22 19:07 Zaprit

Sure.

jvyden avatar Jul 27 '22 19:07 jvyden

alright I'm on it, can someone assign this to me please

Best of luck, friend! I'll be here by my desk playing office golf if you need me

m88youngling avatar Jul 27 '22 19:07 m88youngling

How do I star a GitHub comment?

jvyden avatar Jul 27 '22 19:07 jvyden

reactions, I guess

Zaprit avatar Jul 27 '22 19:07 Zaprit

should sign in with discord be a thing then?

Zaprit avatar Aug 05 '22 20:08 Zaprit

Considering how many people get hacked on Discord, probably not.

jvyden avatar Aug 05 '22 20:08 jvyden

@m88youngling Is this still necessary? I can attempt to get something working if so.

sudokoko avatar Nov 05 '23 15:11 sudokoko