key-skeleton-left-rightFeatures

Read below for the full features available on Infracto!

🎯 Features

1. Real-Time Join/Leave Monitoring ✅

  • Automatic tracking of players joining and leaving ERLC server

  • Polls ERLC API every 30 seconds for new join/leave events

  • Sends Discord embeds with player name, Roblox ID, and timestamp

  • Configurable notification channel

  • Never misses events - tracks last processed timestamp

2. Automatic Shift Tracking ✅

  • Zero manual input required - completely automatic

  • Detects when linked users join on staff teams (Police, Fire, Sheriff, etc.)

  • Starts shift timer automatically

  • Ends shift when player leaves or switches to civilian

  • Shift timeout protection - auto-ends stale shifts after 60 seconds if player not detected

  • Calculates total shift time minus breaks

  • Stores all shift data in database

  • View shifts in /lookup command and activity reports

3. Activity Tracking & Quotas ✅

  • /activity view - Check staff activity over custom time periods

  • Set minimum quota requirements with pass/fail status

  • /activity leaderboard - All-time top staff by shift hours

  • /activity end - Management can manually end any shift

  • Automatic shift time calculations

  • Supports filtering by time periods (24h, 7d, 14d, 30d)

  • CSV export with monthly limits (2 free / 4 premium)

4. Comprehensive Moderation System ✅

  • /moderate - Create moderation logs

    • Warning, Kick, Server Ban, Discord Ban types

    • Quick moderation from /lookup action buttons

    • Links to Roblox accounts

    • Automatic logging to moderation channel

  • /editmoderation - Edit or delete existing moderations

  • /viewmoderation - View user's complete moderation history

  • /modstats - View moderator statistics

    • Total moderations

    • Breakdown by type (warnings, kicks, bans)

    • Total shift time

    • Performance metrics

5. Ban Request System ✅

  • /banrequest add - Staff can submit ban requests

  • /banrequest lookup - Search ban requests by user

  • /banrequest revoke - Remove ban requests

  • /banrequest complete - Mark requests as completed

  • /banrequest list - View all pending requests

  • Status tracking (pending, completed, revoked)

  • Automatic notifications to ban request channel

6. Leave of Absence (LOA) System ✅

  • /leave request - Staff can request leaves with date ranges

  • /leave user - View your own LOA history

  • /leave active - View all currently active leaves

  • /leave manage - End your LOA early

  • /leave admin - Admins approve/deny/view LOAs

  • Automatic approval notifications via DM

  • Date range validation

  • LOA nickname prefix ⭐ Premium: Auto-add prefix during LOA

7. Roblox Integration ✅

  • /lookup - Complete Roblox user profiles

    • Username, Display Name, User ID

    • Account age and profile link

    • Avatar display

    • Linked Discord account (if available)

    • Current shift status (on duty or off duty)

    • Total shift time

    • Server badges ⭐ Premium

    • Global badges

    • In-game status (if online)

    • Moderation action buttons (Moderator+)

  • /roblox-link - Secure account linking with profile verification

  • Graceful handling of deleted accounts

8. Discord User Info ✅

  • /whois - Discord user information

    • Username, ID, join date, account creation

    • Role list

    • Linked Roblox account (if available)

    • Total shift time (if linked)

9. Full ERLC API Integration ✅

All endpoints with pagination support for large datasets:

Command
Description

/erlc server

Server name, owner, co-owners, player counts, join key, team balance

/erlc players

Live player list with names, IDs, teams, permissions, callsigns

/erlc joinlogs

Complete join/leave history with timestamps

/erlc killlogs

Kill events with killer, victim, timestamps

/erlc commandlogs

In-game command history and audit trail

/erlc modcalls

Moderator call logs with response status

/erlc bans

Server ban list with player names and IDs

/erlc staff

Complete staff roster with hierarchy

/erlc queue

Players waiting to join with queue position

10. Remote Command System ✅

  • /remotecommand run - Execute ERLC commands from Discord

  • /remotecommand schedule - Schedule recurring commands with intervals

  • /remotecommand list - View all scheduled commands

  • /remotecommand toggle - Enable/disable scheduled commands

  • /remotecommand delete - Remove scheduled commands

  • /remotecommand greeting - Set auto-welcome messages with {player} placeholder

  • Dangerous command protection - kick/ban/shutdown require Admin+

11. Session Management ⭐ Premium ✅

  • /session create - Create session templates

  • /session vote - Staff vote for next session

  • /session start - Manually start session

  • /session stop - End current session

  • Session channel announcements

  • Vote tracking and results

12. Custom Badge System ✅

  • Server badges ⭐ Premium - Custom badges for your server's staff

  • Global badges - Bot admin badges visible across all servers

  • /badge create - Create new badges with emoji and description

  • /badge delete - Remove badges

  • /badge add - Assign badges to users by Roblox ID

  • /badge remove - Remove badges from users

  • /badge list - View all available badges

  • Badges displayed in /lookup with separate sections

13. Configuration System ✅

  • /config - Interactive dropdown menu with modal forms

  • Channel Settings:

    • Join/Leave Notifications

    • Moderation Logs

    • Activity Logs

    • Ban Request Channel

    • LOA Channel

    • Session Channel ⭐

  • Role Settings:

    • Admin Role

    • Moderator Role

    • Management Roles (multiple)

    • Verification Role

    • Active Duty Role ⭐

  • System Settings:

    • ERLC Server API Key

    • LOA Nickname Prefix ⭐

    • Enforce Discord Membership ⭐

    • VC Stat Channels ⭐

14. Premium Features ⭐ ✅

  • /embedcolor - Custom embed colors

  • /serverfooter - Custom footer text

  • Session management system

  • Custom server badges

  • LOA nickname prefix

  • Active duty role auto-assignment

  • VC stat channels (live voice channel names)

  • Enforce Discord membership

  • Higher CSV export limits (4/month vs 2/month)

15. Owner Admin Panel ✅

  • /admin guilds - List all guilds with premium status

  • /admin guild - View/manage specific guild

    • Remove bot (preserve data)

    • Permanently remove (delete data)

    • Toggle premium status

  • /admin stats - Bot-wide statistics

  • /admin blacklist - Manage server blacklist

  • Global badge management

  • Restricted to admin server with admin role


🔧 Technical Features

Rate Limiting System ✅

  • Intelligent queue system for all ERLC API requests

  • Automatic parsing of rate limit headers

  • Exponential backoff for 429 responses

  • Per-bucket rate limit tracking

  • Special handling for POST /server/command (1 req/5 sec)

  • Protects against IP bans

Database System ✅

  • SQLite database via sql.js (in-memory with persistence)

  • 20+ comprehensive tables including:

    • server_config - Per-server settings

    • roblox_links - Discord ↔ Roblox account links

    • shifts - Complete shift history

    • moderations - Moderation logs

    • ban_requests - Ban request tracking

    • leaves - Leave of absence records

    • scheduled_commands - Remote command schedules

    • sessions - Session templates

    • session_votes - Vote tracking

    • badges - Badge definitions

    • user_badges - Badge assignments

    • activity_tracking - Monitoring state

    • premium_servers - Premium status

    • blacklisted_servers - Blacklist

    • server_logs - Command audit trail

Pagination System ✅

  • Interactive button navigation for all log viewers

  • 10-25 items per page (varies by content)

  • Previous/Next/First/Last buttons

  • Page counter display

  • 5-minute interaction timeout

  • Auto-cleanup after timeout

  • Prevents button hijacking (user-specific)

Scheduler System ✅

  • 10-second base interval for all scheduled tasks

  • Join/leave monitoring

  • Shift timeout checks (60-second sync)

  • Scheduled command execution

  • VC stat updates

  • Session management

  • LOA expiration checks

Error Handling ✅

  • Comprehensive try-catch blocks

  • User-friendly error messages with codes

  • Console logging for debugging

  • Graceful degradation

  • Invalid server key detection

  • Roblox API error handling

  • Standard error code system (see ERROR_CODES_AND_COLORS.md)

Permission System ✅

  • PermissionContext class for role-based access

  • Levels: Everyone → Moderator → Management → Admin → Bot Admin → Owner

  • Per-guild role configuration

  • Discord permission integration

  • Owner override for all commands


📊 Data Tracking

Automatic Tracking:

Data
Method

Player joins

ERLC API polling

Player leaves

ERLC API polling

Staff team assignments

ERLC API polling

Shift start/end times

Automatic detection

Total shift durations

Calculated

Roblox ↔ Discord links

User verification

Moderation history

Manual entry

Command execution

Audit logging

Queryable Data:

Query
Command

Total shift time

/lookup, /activity user

Shift history

/activity user

Active shifts

/activity view

Leaderboards

/activity leaderboard

Quota compliance

/activity view

Moderator stats

/modstats

Ban request history

/banrequest lookup

LOA records

/leave user, /leave active

Server logs

/serverlogs


🎨 User Experience

Embeds ✅

  • Color-coded embeds (success=green, error=red, info=blue, warning=yellow)

  • Custom colors per server ⭐ Premium

  • Custom footers per server ⭐ Premium

  • Consistent formatting across all commands

  • Timestamps on all embeds

  • Inline fields for compact display

  • Links to Roblox profiles

  • Avatar displays

Notifications ✅

  • Join/leave events to configured channel

  • Shift start/end notifications

  • Moderation logs to configured channel

  • Ban request submissions

  • Leave approval/denial DMs

  • Session announcements ⭐

Interactive Elements ✅

  • Dropdown menus for configuration

  • Modal forms for data entry

  • Button navigation for pagination

  • Action buttons in /lookup

  • Autocomplete for badges and sessions


📝 Command Statistics

Category
Commands
Subcommands

Utility

9

4 (roblox-link)

Activity

1

8 (view, leaderboard, user, add-time, remove-time, reset-user, reset-global, end)

Moderation

4

-

Ban Requests

1

5 (add, lookup, complete, revoke, list)

Leave System

1

5 (request, user, active, manage, admin)

ERLC Integration

2

15 (9 for /erlc, 6 for /remotecommand)

Sessions ⭐

1

4 (create, vote, start, stop)

Badges ⭐

1

5 (create, delete, add, remove, list)

Premium

2

6 (3 each for embedcolor, serverfooter)

Owner Admin

1

4 (guilds, guild, stats, blacklist)

Total

23 command categories

50+ subcommands


🚀 What Makes This Bot Special

  1. Fully Automatic Shift Tracking - No manual clock-in needed, tracks from ERLC API

  2. Shift Timeout Protection - Auto-ends stale shifts after 60 seconds

  3. Rate Limit Protection - Never gets IP banned, respects all limits

  4. Complete ERLC API Coverage - Every endpoint implemented with pagination

  5. Smart Linking - Connects Discord users with Roblox accounts via verification

  6. Zero Dependencies on Other Bots - Self-contained, works standalone

  7. Rich User Experience - Interactive buttons, modals, autocomplete

  8. Premium Features - Customization and advanced features for paying servers

  9. Badge System - Server and global badge recognition

  10. Comprehensive Admin Panel - Full bot management from Discord


Last updated