Dear All,
with the demise of flight-sim.org - and having a bit of time during the holidays - I came up with a small project that snowballed (pun intended) into a full blown server.
That’s why I waited a bit to have everything ready as best as I can before creating this thread. Target was, Xmas holidays, people have the time, we can have a flight all together. Meanwhile, the closure of flight-sim.org put sustainability on the vocabulary of everyone building projects for the community.
With some help along the way, the website (and server) https://abflug.cloud is alive.
What is it, you’re going to ask? Well, my relatives described it best - “flightradar for flight sims”. And believe me, bless their heart, they wouldn’t distinguish a 747 from an A320.
Enough with the preambles that I started to sound like a YouTube video sponsored by Raid Shadow Legend - so smash that like button...
I saw a few messages here and there about “when can we have multiplayer” in the forum and decided that there was an opportunity.
The simplified idea is the following: you register, get an API key, use the client, can see all the other pilots participating online on a map, like on FlightRadar24.
How to get up and running:
- Register at https://abflug.cloud
- Download the Client and Rewinger from the download link https://abflug.cloud/downloads.html
- Enter your API key in both tools
- Start flying and see live traffic!
The semi-technical jargon:
- you register (email or Google account) and you get an API key.
- You use a client (Abflug Client) to transform your UDP flight data into API calls to Abflug Server
- The map script (an heavily modified Rewinger) polls the server via API for traffic around you using your API key, .
- then displays the data on a map merging it with the UDP data from Aerofly
With the administrative parts done and dusted, I want to give you a few screenshots of how it looks:

The scripts that you need to run:

the Abflug Client:
The multiplayer tab in Rewinger:

Now with the eye candy out of the way, a bit more information regarding the features, how it works, what is the plan for the future:
How it works
the API key:
Most important thing to remember is - you do everything with the API key. If you lose it or get shared accidentally, you can easily recreate a new one and the previous one gets invalidated immediately. It's used by the Client, Rewinger and the Server to keep track of you on the system.
The Client and Rewinger polls the server using the key to, respectively, send your position in the network or getting the people around you.
the ICAO Code:
Easy mode explanation: Your API key generates a unique ICAO code and callsign for the network. You can also set your own callsign.
The nitty and gritty - skip if you just want to fly:
Client, Server and Rewinger use the same function to calculate a hashed version of the API key - called the "ICAO code" to keep with the aviation theme.
When the client or Rewinger needs to recognise itself in the traffic, they send a single "ping" ("one ping only, Vasily") at login into the server and checks in the traffic response for its own ICAO code and the callsign.
Why the complex setup?
I wanted to be sure that my logs or any call doesn't return the API key for any reason. The API key is yours and yours only. This enables other tools to interface without getting other users API keys.
The callsign:
if you do not set a callsign, it is calculated using another hash function that returns a string similar to the ICAO - this is to enable a cheap callsign collision on the network without having to check for every user.
If you are using an airline callsign (e.g. LH123) the collision detection is not yet implemented; however, I didn't want to limit people using their favourite callsigns having to abandon it.
The traffic:
The traffic gets returned based on your inflight position and a radius in nautical miles. The server calculates the havesine distance between your position and the radius, returning the traffic inside the "bubble".
The observer mode:
Observer mode lets you act as ATC by setting a fixed position to watch traffic. Note: if you start flying (UDP stream active - scramming for an intruder Top Gun-Style?), it automatically switches back to flight mode.
The server:
Please be gentle with the server. It runs a puny Oracle Cloud instance with 1 CPU and 1 GB of RAM, 44GB of disk space. If you are reading this on a smartphone, the server has less horsepower than the chip driving your screen probably.
Privacy concerns:
- the entire system works on HTTPS
- The website sets only cookies to keep you logged in via Auth0, no profilation cookies
- The client and Rewinger never save the API key anywhere on the system for later retrieval.
- Your IP address is masked by Cloudflare - I never see your IP address.
- the client and Rewinger code is delivered via the download link - you can check it as you wish on what is sent.
- I live in EU, I'm EU citizen, the server is in Frankfurt, Germany, the Auth0 tenant is set to Europe.
- I couldn't have made myself more into the GDPR red tape just to show a few flying icons on a screen...
- ... so that's the reason why the website has a cookie banner even if for technical cookies I don't have to.
Basic Q&A:
Q: Will it work on mobile?
NO, IT DOES NOT WORK ON MOBILE (yet) unless the documentation for FSWidgets gets opened (mobile version has no UDP capability).
Still, you will need a machine to interpret the data and convert it to API calls that the server can understand.
Q: is it free? Will you end up like flight-sim.org?
Currently the costs are pretty minimal and can sustain approx 50 users at the same time. Features that will come in the future may be paid features, but the idea is that basic "FlightRadar24" usage will be free and without ads.
Q: why no binaries?
Because it would create headaches with signing the .exe and the .app files. Also, the binaries would be bigger than the entire memory footprint of the server code.
Q: No really - will it work on mobile?
No.
The future:
planned for the future are a bunch of features, but feel free to write me here or on the contacts on the website if you have ideas.
- Open the technical documentation of the API
- Client able to import a flight plan from the flight sim Armitage I may need your help on this
- Rewinger moved to a browser
- Interoperability with other systems (someone said ATC down there in the back?)
- collision / TCAS system (TA only) becomes possible
- Using navigational charts
- Virtual Airlines - create, manage, distribute flight plans that can be imported by the pilots rooster
- Icons for different aircraft models (currently the icons are rather crude)
Thanks:
thanks to Armitage and Jugac64 for the ideas and the support, the IPACS team for creating Aerofly
Disclaimer / licenses:
Abflug Client (abflug_client.py and abflug_client_gui.py) are released as it is and without any warranty, explicit or implied. It may contain bugs.
Rewinger (rewinger.py) is released under MIT License and contains code from Aircraft Tracker by Jugac64
I do not guarantee that the server will be always running. Maintenance, crashes, lack of funding may cause me to stop the server at any time.
In the first days I will monitor the situation and restart the server when I see that there are issues. Please ping me here or at support@abflug.cloud if something doesn't work.
This is a beta system. It will contain bugs. Do not use for real flights. I assume no responsibility on incorrect usage.
Let me say the last joke: "Cleared for takeoff".