Village Vote Dashboard Documentation

Overview

The /dashboard command gives moderators a secure, time-limited link to a web-based game dashboard for monitoring and managing an active game.

The dashboard is split into two tabs:


/dashboard Command

Generate a personal dashboard link for your server's active game.

Usage

/dashboard

No arguments are required. The bot replies with a private link that expires in 5 minutes.

Requirements

Managed games: if a managed game (started with /managedgame) is running on the server, /dashboard returns a link to the managed-game dashboard instead of the classic dashboard described below.

Overview Tab

The Overview tab displays the current state of the game at a glance.

Game Overview Section

A summary grid at the top shows key game stats:

┌─────────────────┬───────────────────────────────────────┐
│ Field           │ Description                           │
├─────────────────┼───────────────────────────────────────┤
│ Game Started    │ Date the game began (if set)          │
│ Total Alive     │ Number of players currently alive     │
│ [Team] Alive    │ Alive / total count per team          │
└─────────────────┴───────────────────────────────────────┘

One "alive" stat card is shown for each team configured in the game, alongside the overall total.

Players Section

Players are listed grouped by team. Each team shows a header with the team name and alive count, followed by a row for each player.

Player row fields:

┌──────────────┬────────────────────────────────────────────────────────┐
│ Field        │ Description                                            │
├──────────────┼────────────────────────────────────────────────────────┤
│ Avatar       │ Player's Discord avatar (or initial fallback)          │
│ Name         │ Player's display name                                  │
│ Status       │ "Alive" (green) or "Dead" (red); dead rows are dimmed  │
│ Action badges│ One badge per game action category (see below)         │
└──────────────┴────────────────────────────────────────────────────────┘

Action badges show the current game action for each category:

Category filter bar:

If the game has multiple action categories configured, a filter bar appears above the player list. Click a category name to show only that category's action badges across all players. Click "All" to show all categories.

Game Controls Section

Reserved for future game control options.

Team Ordering

Teams are listed in the order they appear in the server's teamChannelsList configuration. Teams not in that list follow alphabetically. Players not assigned to any team appear in a "No Team" group at the bottom.


Activity Tab

The Activity tab displays message activity and interaction data across monitored game channels. All data is loaded dynamically from the server.

Filters

┌──────────────┬───────────────────────────────────────────────────────────────────┐
│ Filter       │ Options / Description                                             │
├──────────────┼───────────────────────────────────────────────────────────────────┤
│ Graph        │ Messages — bar/line chart of message counts                       │
│              │ Replies — force-directed graph of reply interactions               │
├──────────────┼───────────────────────────────────────────────────────────────────┤
│ Time         │ Full game — entire game from start date to now                    │
│              │ Today / Yesterday / YYYY-MM-DD — single-day hourly view           │
├──────────────┼───────────────────────────────────────────────────────────────────┤
│ Day starts   │ The hour that defines the start of a "day" (12am–11pm)            │
│              │ Useful for games that run on a non-midnight schedule               │
├──────────────┼───────────────────────────────────────────────────────────────────┤
│ Channel      │ All channels (default) or a specific monitored channel            │
└──────────────┴───────────────────────────────────────────────────────────────────┘

Filter selections are saved in the URL hash so the view can be bookmarked or shared.

Messages Chart

Displays message counts for each player over the selected time period.

Full game view (multi-day):

Single-day view (hourly):

Tip: The full game view automatically switches to hourly format when the game started today (less than one day of data).

Reply Interactions Graph

Displays a force-directed network graph of reply relationships between players.

Note: Only players registered in the game appear as nodes. Replies to non-players or to players outside the game are excluded.

Activity Warnings

Below the chart, a table lists players who may not be meeting minimum activity requirements for the selected time period.

Thresholds (per day or time window):

┌─────────────────────┬───────────────────────────────────┐
│ Requirement         │ Threshold                         │
├─────────────────────┼───────────────────────────────────┤
│ Minimum messages    │ 10 messages                       │
│ Minimum active hours│ Activity across 3 distinct hours  │
└─────────────────────┴───────────────────────────────────┘

A player is flagged if they fall below either threshold on a given day.

Warning table columns:

┌──────────┬───────────────────────────────────────────────────────────┐
│ Column   │ Description                                               │
├──────────┼───────────────────────────────────────────────────────────┤
│ Player   │ Player's display name                                     │
│ Date     │ The day the warning applies to (YYYY-MM-DD)               │
│ Messages │ Number of messages sent that day                          │
│ Hours    │ Number of distinct hours the player was active            │
│ Warning  │ Description of what threshold was not met                 │
└──────────┴───────────────────────────────────────────────────────────┘

Warnings are sorted by date (most recent first), then alphabetically by player name.

Note: Only currently alive players are checked for activity warnings. Dead players are excluded.

Note: Activity warnings are only shown when the Messages graph is selected. They are hidden when viewing Reply Interactions.


Data Scope

The dashboard pulls data from messages recorded since the game's start timestamp. Messages before the game started are excluded from all charts and warnings.


Tips