Skip to main content

Game Configuration

TriviaFlow's game logic and behavior are controlled through the game_config.ini file and can be managed through the Admin Panel interface.

Setup & Initialization

During the deployment process, you need to create and initialize the game configuration:

  1. Create the config file:

    cp game_config.ini.example game_config.ini
  2. Initialize in database:

    docker compose exec web python manage.py init_game_config
Setup Reference

For the complete deployment workflow, see the Deploy TriviaFlow guide.

Managing Configuration

You have two ways to manage game configuration:

The easiest way to adjust game settings is through the Admin Panel:

  1. Log into the Admin Panel at https://your-domain.com/admin
  2. Navigate to Game Management > Game Configuration
  3. Modify settings through the web interface
  4. Save changes - they take effect immediately
Admin Panel Guide

For a complete overview of the Admin Panel and all its features, see The Admin Panel.

2. Via Configuration File (Advanced)

For advanced users or bulk changes, you can directly edit the game_config.ini file. After making changes, restart the application:

docker compose restart web

Configuration Sections

Below are the available configuration options organized by category.

Lobby Settings

[lobby]

  • max_active_lobbies: Maximum number of simultaneous games (default: 5).
  • lobby_timeout_minutes: Time before an inactive lobby is closed (default: 5).

Scoring System

[scoring]

  • points_per_question: Base points for a correct answer (default: 100).
  • min_points_per_question: Minimum points guaranteed for a correct answer (default: 25).
  • enable_time_based_scoring: If True, points decrease as time passes.
  • speed_bonus_factor: Multiplier for answering quickly (default: 0.5).

Question Settings

[questions]

  • default_question_duration: Time in seconds for each question (default: 20).
  • enforce_question_duration: If True, the server auto-advances even if players haven't answered.
  • allow_answer_change: If True, players can change their answer before time runs out.

Display & UI

[display]

  • ui_language: Interface language (en or de).
  • leaderboard_limit: Number of top players to show (default: 5).
  • hide_disconnected_from_leaderboard: If True, disconnected players aren't shown.

Advanced

[advanced]

  • lobby_transition_mode: How the game moves from lobby to start (WAITING is standard).