Display your Faceit CS2 match information in your Discord status.
- Shows current match status (lobby, live, finished)
- Displays map, score, and average lobby ELO
- Shows your K/D/A stats during matches
- Displays ELO change after matches
- Clickable link to view match on Faceit
- Runs silently in system tray
- Privacy options to hide specific information
- Change FACEIT username directly from the tray menu
- Multi-select stats configuration dialog
- Standalone executable option (no Python required)
- Download the latest release from the Releases page
- Extract the files to a folder of your choice
- Copy
.env.exampleto.envand fill in your credentials - Run
FaceitDiscordStatus.exe
-
Clone the repository:
git clone https://github.com/yourusername/DiscordFaceitStatus.git cd DiscordFaceitStatus -
Install dependencies:
pip install -r requirements.txt
-
Copy
.env.exampleto.envand fill in your credentials:cp .env.example .env
-
Generate the tray icon (optional):
python scripts/generate_icon.py
- Go to Faceit Developers
- Sign in with your Faceit account
- Create a new application or use an existing one
- Copy your API key (Client-side API key)
Edit your .env file:
FACEIT_API_KEY=your_faceit_api_key_here
FACEIT_NICKNAME=your_faceit_nickname
DISCORD_APP_ID=your_discord_application_idSettings are stored in config.json (created automatically):
{
"poll_interval": 45,
"show_elo": true,
"show_avg_elo": true,
"show_kda": true,
"show_map": true,
"enabled": true
}Run the application:
python run.pyOr with debug logging:
python run.py --debugThe application will:
- Appear in your system tray
- Automatically detect when you're in a Faceit match
- Update your Discord status with match information
Right-click the tray icon for options:
- Status - Shows current monitoring status
- Tracking - Shows which FACEIT user is being tracked
- Enable/Disable Tracking - Toggle the Discord status
- Match Display - Submenu to toggle match-related display options
- Player Statistics - Submenu to toggle player stat display options
- Change FACEIT Username - Change the tracked user without editing files
- Configure Stats - Multi-select dialog to configure all display options at once
- View Current Match - Open match page in browser
- Exit - Close the application
You can change the tracked FACEIT username directly from the tray menu:
- Right-click the tray icon
- Click "Change FACEIT Username..."
- Enter the new username in the dialog
- Click "Save"
- Choose to restart the application when prompted
To configure multiple display options at once:
- Right-click the tray icon
- Click "Configure Stats..."
- Check/uncheck the options you want
- Click "Save" to apply all changes
Make sure Discord desktop app is running (not just the web version).
Check that your Faceit API key is correct in .env.
- Ensure "Activity Status" is enabled in Discord settings
- Check that the Discord Application ID is correct
- Make sure you're in an active Faceit match
The app respects Faceit API rate limits. If you see these errors, the app will automatically retry after a delay.
To create a standalone executable from source:
- Python 3.8 or higher
- pip (Python package manager)
Windows:
- Open a command prompt in the project directory
- Run the build script:
build.bat
- The executable will be created in the
distfolder
Manual Build (all platforms):
- Install PyInstaller:
pip install pyinstaller
- Install project dependencies:
pip install -r requirements.txt
- Build using the spec file:
pyinstaller FaceitDiscordStatus.spec --clean
- The executable will be in the
distfolder
After building, the dist folder will contain:
FaceitDiscordStatus.exe- The standalone executable.env.example- Template for configurationREADME.txt- Setup instructions for end users
To distribute:
- Copy the contents of the
distfolder - Users must create a
.envfile from the.env.exampletemplate - The
config.jsonandlogsfolder will be created automatically
MIT License