Compatibility
Minecraft: Java Edition
Platforms
Links
Tags
Creators
Details

A game-show plugin for Spigot/Paper servers. Asks multiple-choice questions in chat, and players answer by standing on the matching coloured block in an arena. Player chat is muted while questions are live, so nobody can spoil the answers.
A game of Trivia is split into rounds, where each round contains a variable number of questions. The host drives the game with commands:
/trivia game start- enrols every online player except those with thetrivia.ignoredpermission./trivia round start- announces the round number and its name, in chat and as an on-screen title./trivia round ask- asks the next question. Repeat until the round runs out, then/trivia round startfor the next one.
The question is broadcast in chat, and three seconds later the answer options appear, labelled A, B, C, …. Letters are tied to block_options. Which answer appears under each letter is shuffled every question, so players must read the options each time.
Players move onto the pad matching their answer. answer_delay seconds after the options appear, the correct answer is revealed: the block beneath each player is checked (searching downward to block_search_lower_bound), and anyone not standing on the correct block counts as wrong.
Player chat is muted from /trivia round start / /trivia round ask until the answer is revealed, so answers can't be typed out. Grant trivia.ignored to anyone (such as the host) who needs to talk during a question.
Game modes
| Mode | Description |
|---|---|
casual |
Correct answers score a point; nobody is eliminated. Players who join the server mid-game are added automatically, and /trivia game scoreboard shows the standings. |
competitive (default) |
A wrong answer kills the player. When only one player remains, the game ends and the winner is announced (if end_game_on_lone_player is true). |
Commands
All commands are host-only and share the alias /tr.
| Command | Description |
|---|---|
/trivia reload |
Reloads config.yml, questions.yml, and trivia-messages.yml. Round and question progress is reset, so follow up with /trivia game start to restart the game. |
/trivia game start |
Starts a game with all online, non-ignored players. |
/trivia round start |
Starts the next round — the first round if the game has just started, otherwise the next one. |
/trivia round ask |
Asks the next question in the current round. |
/trivia game scoreboard <top N> |
Broadcasts the players with the top N scores. Only functional when game_type is casual. |
Permissions
| Permission | Default | Description |
|---|---|---|
trivia.host |
Server operators | Required to use the /trivia commands. The node checked in-game is the value of permission_host in config.yml (default trivia.host); the command is also registered with trivia.host in plugin.yml, so that node is always required. |
trivia.ignored |
Nobody | Excludes a player from the game: they are never enrolled, and they can chat while questions are live. Grant this to hosts and spectators. |
Configuration
config.yml
| Key | Default | Description |
|---|---|---|
permission_host |
trivia.host |
Enables the use of the /trivia commands. |
permission_ignored |
trivia.ignored |
Player is not counted in the game. |
game_type |
competitive |
casual or competitive |
block_options |
blue/red/yellow concrete | Ordered material: "&colour" map. Keys are vanilla material names, unknown ones are skipped. |
answer_delay |
5 |
Seconds between the options appearing and the answer being revealed. |
block_search_lower_bound |
-64 |
The lowest y-level searched beneath a player for the block they're standing on. |
scoreboard_cutoff |
5 |
Maximum player names listed per score on the scoreboard. |
end_game_on_lone_player |
true |
End the game and announce the winner when only one player remains (competitive). |
questions.yml
Rounds are played in file order, and questions within a round are asked in file order.
| Key | Description |
|---|---|
rounds |
A list of round objects. |
round.name |
The round's name, shown when the round starts. |
round.questions |
A list of question objects. |
question.question |
The question to be asked. |
question.answer |
The correct answer. |
question.incorrectAnswers |
A list of incorrect answers. |
rounds:
- name: "General Knowledge"
questions:
- question: "What is the capital of Norway?"
answer: "Oslo"
incorrectAnswers:
- "Helsinki"
- "Stockholm"
- "Berlin"
Each question shows the correct answer plus incorrect ones, up to min(number of blocks in block_options, incorrectAnswers + 1) options in total - extra incorrect answers are randomly sampled. Provide at least one fewer incorrect answer than you have blocks (e.g. 2 for the default 3 blocks) so every pad gets used.
trivia-messages.yml
All values support & colour codes.
| Key | Placeholder | Broadcast when |
|---|---|---|
game_start |
- | A game starts. |
round_start |
%d = round number |
A round starts. |
scoreboard |
%d = score |
Each score tier on the scoreboard. |
game_end |
%s = winner's name |
A player wins the game. |


