Skip to content

Verification Module

Introduction

The verification module is a powerful tool that allows venues to lock their server and channels behind a verification wall. This wall requires users to solve a captcha, verify their character data against the Lodestone, and optionally perform a 2FA code grant against their Lodestone profile before gaining access to the server's content.

Preparation

First off, ensure that you have FroggeBot installed in your server.

It's also advisable to have created a new public channel for users to join and verify their character data. This channel should be accessible to @everyone, even those who have not yet verified their character data.

Verification Criteria

The following are the steps, in order, used by the FroggeBot to perform user verification:

  • Captcha Verification - Requires users to solve a captcha before gaining access.
  • Character Data Verification - Requires users to verify their character data against the Lodestone.
  • 2FA Authorization - Requires users to enter a 2FA code on their Lodestone profile.
  • Role Assignment - Assigns the user the role specified in the verification module configuration menu.
  • Log Event - Logs the successful verification event in the server's configured log channel.

Accessing the Configuration

Use the /admin configuration command to access the configuration menu for the verification module.

Admin Configuration Command

Then select the Configure Verification Module button. The verification module configuration menu will appear.

Verification Configuration Menu

Verification Configuration Menu

Event Logging

This setting toggles the logging of successful verification events in the server's configured log channel.

Example logged event


Toggle Change Name

Note

If the captcha step and the 2FA authorization step are both turned off, this element will be disabled by default (as there is no need to verify character data).

Suggestion

When enabled, this button works best in combination with the global Change Nickname permission set to OFF for all major server roles. (i.e. Patron, Staff, @everyone, etc.)

This button toggles the change nickname step of the verification process.

If enabled, the user's server-specific nickname will be changed to match their character name upon successful verification.

Verification requires users to verify their character data against the Lodestone by entering first and last character name into a prompt and selecting data center and world from a dropdown menu.

Character Name Entry Example


Toggle Captcha

This button toggles the captcha step of the verification process.

If it is enabled, users will be required to solve a captcha before gaining access. Only the user in question can see the captcha, and it is not stored or logged by the app.

Captcha Example


2FA

Warning

This step is a significant additional security feature and should be used with caution.

This button toggles the 2FA code grant step of the verification process.

If it is enabled, users will be required to enter a 2FA code on their Lodestone profile. The bot will read back the code to verify that the user owns the account.

2FA Example


Verified Role

Upon successful verification, the user will be assigned this role.

Typically, the role will grant access to the entirety of the server's public channels.

Warning

If the role is not set or missing, this step will be skipped.

Role Relations

The verification module can be used in conjunction with Discord's onboarding system to provide a seamless and secure experience for new users.

Using Discord's Onboarding System

Before understanding how to integrate FroggeBot's onboarding system with Discord, let's discuss some of the Pros and Cons of utilizing Discord's feature on its own.

  • Ease of Use - Discord's onboarding system is easy to set up and use.
  • Familiarity - Users are already familiar with Discord's onboarding system.
  • No Additional Bots - No need to add additional bots to your server.
  • Opens Server Immediately - Discord's onboarding system is designed to apply vanity roles to new members immediately upon joining the server. These roles are often configured to provide access to various parts of the server without requiring additional verification, which can be a security risk. This causes a conflict with the verification module, which requires users to verify their character data before gaining access to the server.

Our solution with FroggeBot is to use Discord's onboarding system to assign a dummy role to new users initially, which will be swapped to the actual role upon successful verification. This allows us to preserve the onboarding experience offered by Discord while maintaining the security of the FroggeBot verification module. For example:

  • Artist Pending (Does Nothing) ➡ User Verifies ➡ Artist (User can access art-oriented channels)
  • Modder Pending (Does Nothing) ➡ User Verifies ➡ Modder (User can access modding-oriented channels)

To set up the FroggeBot onboarding system extension, click the Add Role Relation button in the configuration menu.

Add Role Relation Menu

Set Pending Role

This role is assigned to users upon completing Discord's onboarding process.

Typically, this role will not grant access to any channels.

Set Final Role

This role is assigned to users upon successful verification.

Typically, this role will grant access to the server's related public channels.

Customize Welcome Message

This button opens a text box where you can customize the welcome message that is sent to users upon completing verification.