Open source Python GUI to stream and log War Thunder match data "real-time"
This program uses vehicle telemetry data publicly provided by War Thunder via a localhost server to do the following:
- Create and save ACMI log files for post-match replay
- Stream telemetry to the application Tacview, simultaneously stream/download telemetry to/from remote allied players (i.e. War Thunder squadron mates)
- Provides a real-time and post-match "AWACS view" of the War Thunder match
- Stream telemetry to a USB IoT device (i.e. an Arduino)
- Download the latest release (exe in Thunder_Viewer.zip found under "assests" within the release)
- Extract the Thunder_Viewer.zip where you want
- Open the extracted file
- Double click Thunder_Viewer.exe
- Download and install Anaconda3 from https://www.anaconda.com/distribution/
- Ensure the path to pip.exe is in your PATH system variable
- Download Thunder Viewer from https://github.com/PowerBroker2/Thunder_Viewer (clone or download/extract zip file)
- Run "src/setup.bat"
- Double click "src/run.bat" or run "src/Thunder_Viewer.py" via Python
No! Thunder Viewer uses only data provided by War Thunder itself and provides no advantage above other players.
Yes! Streaming and replaying match data to Tacview are only two of the several features of this tool. Thunder Viewer can also be used to save War Thunder data for processing by other programs (other Python scripts, MATLAB scripts, etc) and to stream data to IoT devices like Arduinos!
Nope! Some planes in War Thunder historically do not have an artificial horizon (i.e. early Russian biplanes). If the plane does not have an artificial horizon, War Thunder's localhost does not provide pitch data. When flying such vehicles, Thunder Viewer defaults to pitch angle of 0 degrees at all times for that particular plane.
Depends - Sometimes the map served by War Thunder's localhost (which is used by Thunder Viewer and sent to Tacview for display on the globe) is the map used for ground battles instead of the one for air battles. This is a bug with War Thunder. It is possible, however, that the scale of the map is incorrectly set in the Python library WarThunder. If you think this is the case, please submit an issue ticket either on this repo or the repo for WarThunder.