Discord Bot
The FiniAC Discord bot checks the members of your Discord server against FiniAC's ban records and known cheating Discord communities. Members are checked as they join, matches are reported in a log channel, and your staff can review a player's ban history, alias accounts and identity details from within Discord.
Adding the Bot
- Invite the bot using the invite link.
- Create an access token from Profile → Account → User Access Tokens on your FiniAC profile. The token links one Discord server to one FiniAC server.
- Run
/setupand complete the configuration form. - Run
/scanto check the members already in the server. Every joining member is checked.
Permissions
The invite requests Manage Roles for applying the banned role, and Kick, Ban and Timeout for the actions available on ban reports. Any of them can be withheld; the protection panel reports which permissions are missing.
Configuration
/setup opens a configuration form. Saved values are pre-filled when the form is reopened, and clearing a field removes that setting. The access token is the exception: leaving it blank keeps the existing connection, and entering a new token re-links the server.
| Field | What it does |
|---|---|
| Log channel | Where ban reports are posted as flagged members join. |
| Panel channel | Where the persistent protection panel is displayed. Setting a channel posts the panel. |
| Admin role | Who may use the moderation and lookup commands, alongside Discord administrators. |
| Banned role | Applied automatically when a globally banned member joins. |
| FiniAC access token | Links this Discord server to your FiniAC server. |
Two reporting options are set on the command itself rather than in the form:
/setup local_ban_alerts:True- report local bans in addition to global bans./setup show_alts:True- list a flagged member's known alias accounts in the report.
Member Screening
Members are checked against FiniAC when they join. A match is reported in the log channel with the player's ban details, a 🔍 Analyze control, and three controls that act on the member's Discord account: ⏳ Timeout 24h, 👢 Kick and 🔨 Ban.
- Global bans apply across all FiniAC-protected servers. They are always reported, and they apply the banned role when one is configured.
- Local bans are issued by a single community for their own server. They are reported for information only, never apply a role, and are only reported when
local_ban_alertsis enabled.
Authorisation is checked when a control is used, against the admin role configured in /setup. Being able to see the channel does not grant access.
Protection Panel
/panel channel:#channel posts a persistent status panel that updates automatically. It reports:
- Setup status - whether the server is linked, whether the bot can post in the log channel, and whether the banned role can be assigned. Each issue includes instructions to resolve it.
- Activity - members checked over the last 7 days, how many matched a global or local ban, and the most recent matches.
- Last member scan - when
/scanlast ran and what it found. - Controls - Scan Server, Refresh, and a member checker available to staff.
Panel visibility
The panel lists recently flagged members and their global or local status to everyone who can view the channel. Post it in a staff channel.
Commands
| Command | Who can use it | What it does |
|---|---|---|
/setup | Administrators | Open the configuration form for this server. |
/panel | Administrators | Post or move the protection panel. |
/scan | Administrators | Check every current member against FiniAC's ban records. deep:True also checks each member for membership of known cheating Discord communities and takes considerably longer; force:True runs a fresh scan instead of reusing the stored result. |
/analyze | Admin role | Account details, alias accounts, ban history and flagged Discord community membership for one Discord user. |
/ban | Admin role | Add a FiniAC ban for the player behind a Discord account, with a summary and follow-up controls. Their Discord account is not affected. |
/unban | Admin role | Look up a member and link to their threat page, where the ban can be removed. |
/discord | Admin role | Discord activity summary, recent joins and command history (days 1-30, limit 1-10). |
/audit-export | Admin role | Export bot command audit logs to a JSON file (days 1-30, limit 1-200). |
/help | Everyone | Overview of the bot, FAQ and the full command list. |
/setup, /panel and /scan require Discord Administrator and are hidden from other members. Server owners and Discord administrators do not need the configured admin role.
A completed scan is kept current as members join and leave. Use force:True when a full re-check of all members is required.
Troubleshooting
No Ban Reports Are Posted
Issue: flagged members join but nothing is posted in the channel.
Solutions:
- Check the protection panel. It states the issue directly, for example
Cannot post in #channel - grant View Channel and Send Messages. - Confirm a log channel is set in
/setup. - If the members you expected were locally banned, enable
/setup local_ban_alerts:True. Only global bans are reported by default.
The Banned Role Is Not Applied
Issue: a flagged member joins but keeps full access.
Solutions:
- Move the FiniAC role above the banned role in your role list. A bot cannot assign a role positioned above its own.
- Confirm the bot has Manage Roles.
- Check whether the ban was local. Local bans are informational and never apply a role.
A Command Is Missing or Refuses to Run
Issue: a staff member cannot see or use a command.
Solutions:
/setup,/paneland/scanare hidden from members without Discord Administrator.- For the other commands, assign the member the admin role configured in
/setup. - If all commands fail, check the panel for
Not linked - run /setup. The access token may have been revoked.