Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DCS VR Performance Optimizer

A performance monitoring and optimization tool for DCS World with Pimax Crystal Light VR headset.

Features

  • Real-time Performance Monitoring: Track FPS, GPU/CPU usage, VRAM, and temperatures
  • Multiplayer Server Tracking: Automatically detects which server you're playing on and player counts
  • Aircraft Tracking: Monitors which aircraft you're flying with per-aircraft performance baselines
  • Statistical Analysis: Variance-aware analysis with confidence intervals for multiplayer sessions
  • Settings Management: View and track DCS and PimaxXR settings
  • Performance Recommendations: Smart suggestions based on your data

Requirements

  • Windows 10/11
  • Python 3.11+
  • NVIDIA GPU (for GPU metrics via NVML)
  • DCS World installed
  • Pimax Crystal Light with PimaxXR (optional, for Pimax settings tracking)

Installation

  1. Clone or download this repository

  2. Create a virtual environment (recommended):

    python -m venv venv
    venv\Scripts\activate
  3. Install dependencies:

    pip install -r requirements.txt

Usage

GUI Mode (Recommended)

Launch the desktop dashboard:

python main.py

CLI Mode

Run headless monitoring (useful for background data collection):

python main.py --cli

How It Works

Data Collection

  1. Start the monitor before launching DCS (or while DCS is running)
  2. The system automatically detects when DCS starts/stops
  3. Performance samples are collected every second while DCS is running
  4. Server and aircraft information is parsed from DCS.log

Multiplayer Focus

This tool is designed for real multiplayer testing:

  • Tracks server name and player counts
  • Accounts for variance from multiplayer sessions
  • Reports confidence intervals instead of just averages
  • Identifies when more data is needed for statistical significance

Per-Aircraft Analysis

Different aircraft have different performance characteristics:

  • Full-fidelity glass cockpits (F-16, F/A-18) are heavier
  • FC3 aircraft are lighter
  • The tool tracks performance per-aircraft for tailored recommendations

Statistical Analysis

The analysis engine:

  • Uses t-tests and Mann-Whitney U tests for comparisons
  • Reports 95% confidence intervals
  • Identifies outliers from thermal throttling or server issues
  • Tracks GPU vs CPU bottlenecks

Dashboard Tabs

Live Monitor

  • Real-time FPS, GPU, CPU, VRAM metrics
  • Current session info (server, aircraft, players)
  • Immediate recommendations

Analysis

  • Data quality report (sample counts per aircraft)
  • Flyability report (which aircraft run well with current settings)

Aircraft

  • All aircraft you've flown
  • Average FPS and sample counts per aircraft

Sessions

  • History of all monitoring sessions
  • Server, duration, and sample counts

Settings

  • View current DCS VR-relevant settings
  • Reference presets for different performance/quality levels

Data Storage

All data is stored in a local SQLite database at data/performance.db.

Tables:

  • servers - Known multiplayer servers
  • aircraft - Aircraft with complexity ratings
  • sessions - Monitoring sessions
  • samples - Performance measurements
  • settings_snapshots - Settings at session start

Configuration

Edit data/config.json to customize:

  • DCS installation path (auto-detected by default)
  • Sampling interval
  • Confidence level for statistics
  • Minimum samples for significance

Known Limitations

  • FPS estimation is approximate without OpenXR integration
  • Settings changes require DCS restart
  • AMD GPU metrics not yet implemented (NVIDIA only)
  • Reprojection detection requires further OpenXR integration

Future Improvements

  • OpenXR frame timing integration for accurate FPS
  • AMD GPU support via ADL
  • Automated A/B testing workflow
  • Export reports to CSV/PDF
  • Mission-specific tracking
  • VR overlay for in-game stats

Troubleshooting

"DCS Not Running" but DCS is open

  • The monitor looks for DCS.exe process
  • Try running as administrator if process detection fails

No GPU metrics

  • Ensure NVIDIA drivers are installed
  • pynvml requires NVIDIA Management Library

Settings not loading

  • Verify DCS is installed in standard location
  • Check that options.lua exists in Saved Games/DCS/Config/

License

MIT License - See LICENSE file for details.

About

A simple DCS settings optimizer

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages