Introduction
Welcome to the SSC-Tracker help page. Here you'll find all the information you need to get started with SSC-Tracker.
SSC-Tracker.org is a community and hobby project created by flight sim enthusiasts, and it is a work in progress. The service is free to use, but I cannot guarantee the permanent functionality of these services. In the event of misuse, ssc-tracker.org reserves the right to limit or completely discontinue the services.
SSC-Tracker is an add-on for tracking multiplayer group flights with Microsoft Flight Simulator 2020 and
2024. You
simply download the SSC-Tracker client
from this site, connect it to MSFS, and it will transmit your
aircraft data to ssc-tracker.org using your ID. Any member of your group can see your aircraft on a map
along with your flight data.
To display the aircraft on a map, you can use commonly available tools such as Little Navmap, B21
Taskplanner, or ssc-tracker.org itself. These tools support the Whazzup data format v1 or the
SSC-Tracker JSON format.
SSC-Tracker works with all types of aircraft but is optimized and includes specific features for glider
task flights. It also has deep integration and compatibility with the B21 Task
Planner.
Credits: The idea of SSC-Tracker is based on the virtualflight.online tool by Jonathan Beckett
but has
been completely rewritten.
Much of the work is also based on B21s Soaring Task Engine and tools,
with help
from the SSC Glider Community.
Quick Start
Get up and running quickly with these simple steps.

-
Download SSC-Tracker and unzip it
to a folder.
-
Execute SSC-Tracker.exe, confirm the security alert for the app and the ports (55055) of your
firewall, otherwise the SSC-Tracker will not work.
Enter the following details:
Pilot Name: Your name or nickname.
Pilot ID: A short, unique ID in your flight group (no special characters or spaces).
Group: A short, unique ID of your flight group (no special characters or spaces).
-
SSC-Tracker automatically connects to MSFS and transmit your flight to the server (blinking green).
If no flight simulator is running, SSC-Tracker operates in spectator mode to view the setup group
without transmitting your flight data (blinking yellow).
-
Open SSC-Tracker.org to show the
aircrafts from your flight group.
Connect from moving maps and setup
Connect Options
SSC-Tracker has a built-in web server with various options to retrieve flight data for the tools of your choice. You can find all connection options in different formats on the setup page of the SSC-Tracker app.
For your information or copy and paste:

www.ssc-tracker.org
If you open www.ssc-tracker.org on your local PC, it will automatically connect to the running SSC-Tracker app on the same PC.
If you would like to display the map on a second PC or tablet, open www.ssc-tracker.org and enter your group name to view the flight group.
You have many options to show or hide the group data and adjust the screen layout. To center or follow an aircraft, simply click on the Pilot ID. To uncenter it, click on the map.

(Scale UI+-, Docking left or top, show/hide aircraft data)
Click on the gear to show/unshow available data fields
Little Nav Map
Instructions for integrating SSC-Tracker with Little Nav Map.

LNM supports the Whazzup v1 format, and SSC-Tracker delivers it on localhost:55055 or from
the LAN
using the IP address of the PC where the SSC-Tracker app is running.
SSC-Tracker also writes a Whazzup file that LNM supports if you encounter issues connecting
via
HTTP. Simply copy and paste the URL or path of your choice from the SSC-Tracker setup page.
Note
that LNM does not support the /json formats.
B21 Task Planner
Using SSC-Tracker with B21 Task Planner.
Click on Settings and type in your Pilot ID and url from SSC-Tracker.org

For all options, please refer to the help section in the B21 Task Planner.
Task / Flightplan Flights
How to manage tasks and flightplans with SSC-Tracker.
SSC-Tracker has a feature to distribute task/flightplan (.pln) and/or weather presets (.wpr) data for every group. If a task is available for the group, it will be automatically downloaded and saved to the app’s task folder.


Pre Flight - for tasksetters
For this feature the tasksetter need to create a group with a secret first(8). Click on this
icon:
Upload .pln(9) and optional .wpr(10) files and a short info/Url (11)with icon (5) for your group
For all options and instructions on how to create B21 task files, please refer to the help section in the B21 Task Planner.
Tasksetters can reset(7) the task progress or delete(6) the task for the group on the upload page.
In Flight - for the pilots
Click on the reload icon (1) if you want to force a task download. Otherwise, SSC-Tracker will automatically check every minute for new shared group flightplans/task data and download it to the app folder (3). If you check “Copy Task Files” on the setup page, .WPR and .PLN files will also be copied to the MSFS default folders for weather presets (4) and flight plans.
Click on SSC-Tracker.org to open the map with flightplan or click on “Task” to open the current task alternativly in the B21 Task Planner.
If no group task exists, SSC-Tracker will try to load the .pln from MSFS. Alternatively, you can manually upload (2) a .pln to SSC-Tracker for a single flight.
SSC-Tracker will automatically track the task progress for the entire group and display it on ssc-tracker.org like a live scoreboard. The task progress is only available on the ssc-tracker.org map.
If you need to reset your task progress in case of restart, click on (1) to reset your task progress.
MSFS in-game SSC-Tracker-Panel
The SSC-Tracker app includes the SSC-Tracker-Panel.zip. If you would like to display the ssc-tracker.org map in-game, install the panel to your MSFS community folder on the SSC-Tracker app setup page and restart MSFS.
Currently, the panel is optimized for use in VR and will automatically connect to the running SSC-Tracker app to show the aircraft and task, if available.

Specification / API
Understanding the data format and API used by SSC-Tracker.
To retrieve data from a third-party app or webpage, you need a running SSC-Tracker client app. SSC-Tracker acts as a proxy to ensure that the ssc-tracker.org server does not experience overload. You can access Tracker data on the default port 55055 on localhost. Additionally, you can access it from a device on your LAN. In this case, you must run the app as an administrator to allow access via http://your-pc:55055. Currently, only HTTP is implemented.
How to retrieve live aircraft data
Using http://localhost:55055/json or http://[your-pc-name]:55055/json you receive the following json
data format with all aircraft data from every pilot in your group.
This live data values will be updated every second. TSK* values only, if a task/flightplan is
loaded.
Description:
GN: Groupname
TASK: Current taskname (if a shared task uploaded to the group)
WEATHER: Current weather preset name (if a shared task uploaded to the group)
ID: Pilot ID of the user
CONFIG: No data, for future purposes
ITEMS: Aircrafts data list
CMD: No data
SECRET: No data
GN: Aircraft groupname
ID: Aircraft pilot ID
NAME: Aircraft pilot Name
AC: Aircraft name
MODEL: Aircrfat model
TH: Aircraft true heading
LON: Aircraft longitude [decimal]
LAT: Aircraft latitude [decimal]
IAS: Aircraft indicated airspeed [kn]
TAS: Aircraft true airspeed [kn]
GS: Aircraft groundspeed [kn]
LV: Aircraft (last) landing velocity [kn]
VS: Aircraft vertical speed [kn]
WD: Aircraft wind direction [°]
WV: Aircraft wind velocity [kn]
MSL: Aircraft altitude above MSL [ft]
AGL: Aircraft altitude above ground [ft]
TSK_TIME: Task time from start line [seconds]
TSK_AVG: Task average speed from start line [kn]
TSK_AVG_PATH: Task average speed from start line (flown flightpath) [kn]
TSK_NEXT: Next task waypoint name
TSK_DIS: Distance to finish line [nm]
TSK_DIS_PATH: Flown flightpath distance [nm]
TSK_DIS_ALL: Flown task distance [nm]
TSK_DIS_WP: Distance to next waypoint [nm]
TSK_ONGROUND: 1 = aircraft on ground in task
TSK_SLEWT: 1 = aircraft slewt in task
TSK_ENG: 1 = glider aircraft engine on in task
DIS: Distance from user aircraft to this aircraft
FLAPS: Flaps pos is available
MC: No data, for future purposes
TW: Aircraft total weight [lbs]
VER: Tracker and MSFS version
ONLINE: No data, for future purposes
Sample:
{
"GN": "ssc2",
"TASK": "Bolzano Dolomiti SE",
"WEATHER": "SSC2 08 Clear Sky SE 15kt",
"ID": "FELTE",
"CONFIG": 0,
"ITEMS": [{
"CMD": "",
"SECRET": "",
"GN": "ssc2",
"ID": "FELTE",
"NAME": "Felte",
"AC": "AS-33me",
"MODEL": "AS-33me",
"TH": 0.8,
"LON": 0.013974836799020448,
"LAT": 0.0004074412919623835,
"IAS": 0.0,
"TAS": 0.0,
"GS": 0.0,
"LV": 0.0,
"VS": 0.0,
"WD": 270.0,
"WV": 12.5,
"MSL": 1.0,
"AGL": 1.0,
"TSK_TIME": 0.0,
"TSK_AVG": 0.0,
"TSK_AVG_PATH": 0.0,
"TSK_NEXT": "Start",
"TSK_DIS": 93.9,
"TSK_DIS_PATH": 0.0,
"TSK_DIS_ALL": 0.0,
"TSK_DIS_WP": 2852.5,
"TSK_ONGROUND": 0,
"TSK_SLEWT": 0,
"TSK_ENG": 0,
"DIS": 0.0,
"FLAPS": "1",
"MC": 0.0,
"TW": 1208.0,
"VER": "0.5.4.0|MSFS2020",
"ONLINE": 0.0
}
]
}
How to retrieve current flightplan .pln data
If a flightplan/task is active you get it in MSFS xml format using http://localhost:55055/activetaskpln or http://[your-pc-name]:55055/activetaskpln.
How to retrieve current parsed B21 flightplan in json format
If a flightplan/task is active you can get it in JSON format using http://localhost:55055/activetask
or http://[your-pc-name]:55055/activetask.
This format includes the ready to use parsed task data, which can be planned in the B21 Task
Planner
This task data values will be updated in a running task every second.
Sample:
{
"DefaultWaypointRadius": 500,
"DefaultSimbriefWaypointRadius": 2000,
"Name": "Bolzano Dolomiti Airport",
"GN": "ssc2",
"DepartureID": "LIPB",
"DepartureName": "Bolzano Dolomiti Airport",
"DeparturePosition": "1",
"DestinationID": "LIPB",
"DestinationName": "Bolzano Dolomiti Airport",
"NextWPIndex": 1,
"StartWPIndex": 1,
"FinishWPIndex": 4,
"StartTime": "0001-01-01T00:00:00",
"TimeMin": 0,
"DistanceAll": 0.0,
"DistanceReal": 0.0,
"DistanceAATMin": 0.0,
"DistanceAATMax": 0.0,
"TimeFinished": 0.0,
"Distance": 173906.5768361785,
"IsEmpty": false,
"IsStarted": false,
"IsFinished": false,
"IsAATTask": false,
"IsSlewt": false,
"IsEngine": false,
"IsOnGround": false,
"Version": "0.5.4.0|MSFS2020",
"Waypoints": [
{
"Name": "Bolzano Dolomiti Airport",
"Type": "User",
"ICAO": "LIPB",
"Runway": "1",
"Location": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"Elevation": 237.74399239219225,
"Radius": 0.0,
"MinAlt": 0.0,
"MaxAlt": 0.0,
"IsStart": false,
"IsFinish": false,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 0.0,
"BearingTo": 0.0
},
{
"Name": "Start",
"Type": "User",
"ICAO": "S0LZ0P08",
"Runway": "",
"Location": {
"Latitude": 46.51068333333333,
"Longitude": 11.240388888888888,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.51068333333333,
"Longitude": 11.240388888888888,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.51068333333333,
"Longitude": 11.240388888888888,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.51068333333333,
"Longitude": 11.240388888888888,
"Altitude": 0.0
},
"Elevation": 241.09679228490266,
"Radius": 2500.0,
"MinAlt": 0.0,
"MaxAlt": 1219.1999609856014,
"IsStart": true,
"IsFinish": false,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 8653.636913006078,
"BearingTo": 310.52413927258899
},
{
"Name": "WP 1",
"Type": "User",
"ICAO": "C7TP0A00",
"Runway": "",
"Location": {
"Latitude": 46.57042777777778,
"Longitude": 10.288333333333334,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.57042777777778,
"Longitude": 10.288333333333334,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.57042777777778,
"Longitude": 10.288333333333334,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.57042777777778,
"Longitude": 10.288333333333334,
"Altitude": 0.0
},
"Elevation": 3090.976701088746,
"Radius": 1000.0,
"MinAlt": 0.0,
"MaxAlt": 0.0,
"IsStart": false,
"IsFinish": false,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 73070.14425006564,
"BearingTo": 275.55819259250998
},
{
"Name": "WP 2",
"Type": "User",
"ICAO": "D4QS0K00",
"Runway": "",
"Location": {
"Latitude": 46.264355555555557,
"Longitude": 10.599063888888889,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.264355555555557,
"Longitude": 10.599063888888889,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.264355555555557,
"Longitude": 10.599063888888889,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.264355555555557,
"Longitude": 10.599063888888889,
"Altitude": 0.0
},
"Elevation": 1873.910340034869,
"Radius": 2000.0,
"MinAlt": 0.0,
"MaxAlt": 0.0,
"IsStart": false,
"IsFinish": false,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 41513.24303334908,
"BearingTo": 144.89948444622599
},
{
"Name": "Finish",
"Type": "User",
"ICAO": "F0KZ0K00",
"Runway": "",
"Location": {
"Latitude": 46.451838888888897,
"Longitude": 11.32335,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.451838888888897,
"Longitude": 11.32335,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.451838888888897,
"Longitude": 11.32335,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.451838888888897,
"Longitude": 11.32335,
"Altitude": 0.0
},
"Elevation": 230.12399263603224,
"Radius": 2000.0,
"MinAlt": 0.0,
"MaxAlt": 0.0,
"IsStart": false,
"IsFinish": true,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 59323.18955276376,
"BearingTo": 69.17874051420199
},
{
"Name": "Bolzano Dolomiti Airport",
"Type": "User",
"ICAO": "LIPB",
"Runway": "",
"Location": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationMin": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationMax": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"LocationReal": {
"Latitude": 46.46011388888889,
"Longitude": 11.326402777777778,
"Altitude": 0.0
},
"Elevation": 237.74399239219225,
"Radius": 0.0,
"MinAlt": 0.0,
"MaxAlt": 0.0,
"IsStart": false,
"IsFinish": false,
"IsAATWP": false,
"IsInAATRadius": false,
"IsDone": false,
"DistanceTo": 948.7507281392525,
"BearingTo": 14.258728612977962
}
]
}
How to set a group shared flightplan/task from a third-party app
Send a POST request with following JSON data format to http://localhost:55055/settask or
http://[your-pc-name]:55055/settask to upload and share a task/flightplan to a group.
It is required to set a group secret in the Tracker app beforehand.
(CMD, GN, SECRET, TASK, TASKDATA is mandatory, other values are optional)
{
"CMD": "UPLOAD",
"GN": "[GROUPNAME]",
"SECRET": "[GROUP SECRET]",
"TASK": "[TASK NAME]",
"TASKDATA": "[.PLN XML CONTENT]",
"TASKINFO": "[URL]",
"WEATHER": "[WEATHER PRESET NAME]",
"WEATHERDATA": "[.WPR XML CONTENT]"
}
How to set a user flightplan/task from a third-party app
Send a POST request with following JSON data format to http://localhost:55055/settask or
http://[your-pc-name]:55055/settask to upload and share a task/flightplan to a group.
(CMD, TASK, TASKDATA is mandatory, other values are optional)
{
"CMD": "SET",
"GN": "[GROUPNAME]",
"TASK": "[TASK NAME]",
"TASKDATA": "[.PLN XML CONTENT]",
"TASKINFO": "[URL]",
"WEATHER": "[WEATHER PRESET NAME]",
"WEATHERDATA": "[.WPR XML CONTENT]"
}
Legal information
SSC-Tracker.org does not store any permanent user data on the website except for the group names. During usage, ssc-tracker temporarily stores user IP addresses, pilot names, pilot IDs, virtual flight sim data, and flight plans for its functionality. SSC-Tracker.org limits the distributed flight plan data to a minimum and verifies their authenticity. However, there is no guarantee for the accuracy or security of the distributed data and included links.
You use SSC-Tracker.org and the app at your own risk. I cannot be held liable for any damages that may arise from the use of these services.
By using SSC-Tracker.org and the app, you acknowledge and agree that any data collected will be handled in accordance with this privacy policy. We are committed to protecting your personal information and ensuring its confidentiality.
Legal notice as required by german law
Responsible for content:
Detlef Wilmsen
Erlenweg 1
33442 Herzebrock-Clarholz
Germany
Email: info@ssc-tracker.org
Liability für content
The content of this site has been created with the greatest of care. I cannot, however, guarantee that the information in it is accurate, complete or up-to-date. As a service provider I am responsible under Section 6(1) of the German Media Services Inter-State Agreement and Section 8(1) of the German Teleservices Act for my own content on this site. Service providers are not however obliged to monitor third party information transmitted or stored on their site by them or to look for circumstances which may suggest a violation of the law. This does not affect my statutory obligations to remove or block the use of information. My liability in such cases shall however commence from the time I become aware of an actual violation. On becoming aware of such violations I shall remove this content immediately.
Liability for links
This website contains links to external third-party websites, over the content of which I have no control. I cannot, therefore, make any guarantees regarding this third-party content. Responsibility for the content of linked sites lies solely with the provider or operator of the site concerned. All linked sites were checked for possible violations of the law when they were linked to mine. At that time I was not aware of any content which may violate the law. However, I cannot be expected to monitor the content of linked sites on an ongoing basis unless I have reason to suspect a violation of the law. On becoming aware of such a violation I shall remove the respective link immediately.
Copyright
The operator of this site makes every effort to respect the copyrights of outside parties and to employ his own material and material in the public domain. All content and material on this site created by the site operator is governed by German copyright law. Downloads and copies of this site may be made for private, non-commercial use only. Reproduction, processing, distribution and any form of exploitation beyond that permitted by copyright law requires the written consent of the author or creator concerned. Contributions by third parties are identified as such. Should anyone become aware of a possible copyright infringement, I kindly request that you inform me of such. Upon becoming aware of such a violation I shall remove the respective content immediately.