Resurrecting the Airline
A couple of years ago - driven more by curiosity than requirement, I set about building a virtual airline on the internet - where the pilots of flight simulators could log flights around the world, and experience a flavor of a common technology in the commercial aviation world called “ACARS”. I suppose in many ways standing up a virtual airline was a way for me to give something back to the community I have enjoyed being a part of.
ACARS stands for “Aircraft Communication, Addressing and Reporting System”. It is a digital data link system used for the transmission of short messages between aircraft and ground stations via airband radio or satellite. ACARS enables automated exchange of various data, improving communication efficiency and reducing the workload on flight crews compared to traditional voice radio.
In contrast with the real-world, in consumer flight simulators ACARS is typically a “black box” of sorts - recording the state of the aircraft during the flight, along with it’s speed, altitude, and attitude - which can then be used after the flight to judge the pilot’s performance against a range of standard operating procedures - such as correct use of lights, management of speed, and so on.
It’s worth pointing out that there are many virtual airlines on the internet that flight simulator pilots can take part in. I had been a member of one of the bigger ones a few years ago, and after racing through their rank structure to the top-level in a matter of weeks, started to think “if I had built this, I wouldn’t do it like that”…
It’s the perennial problem of the software developer - if you can build things, you’re never quite happy with how somebody else is doing something. I love to enable people, and don’t like being constrained too much. Most of the airlines I looked at or tried out did the opposite - taking things away, and penalising - rather than providing encouragement or opportunity.
After a couple of iterations, I ended up building an airline using an open source platform called phpVMS, and a commercial ACARS offering called vmsACARS. I installed it on some commercial webspace and told the world - and quite unexpectedly, the world arrived.
In the first weeks we had twenty, sometimes thirty pilots in the air at once - flying legs of tours, scheduled flights, or free flights - climbing the rank structure, and visiting airfields all over the world they would never have considered previously.
And then along came Flight Simulator 2024. And it wasn’t quite as compatible, and it had it’s own “career” mode.
I wondered for a long time if the “airline” was on borrowed time - if it had run it’s natural course. Waiting for the ACARS client to become compatible with 2024 stretched on from weeks to months. And then one night I discovered quite by chance that the beta was available - and that I hadn’t received the notification I should have (software developers are famously terrible at communication).
And so it was that I set about trying out the beta of the new ACARS client - and discovered that it didn’t quite work. My attention then turned to the airline itself - a heavily modified installation of phpVMS with all manner of functions that we had disabled and/or crippled in order to make it more fun (it simulated service cycles for aircraft, and took them out of service - we had to introduce multiple airframes of each aircraft type to combat it - which still all ended up in the service hangar every night following countless people smashing them into runways all over the world every day…)
I ran the updates on the website, hoping it would fix ACARS. With hindsight, this might now be seen as a mistake. It turns out software developers are pretty terrible at testing upgrade programming too.
The airline website lunched itself pretty spectacularly. So much so that I then set about a number of efforts to resurrect it. Finally, in the early hours of the morning, I reverted the entire site to a stock installation of the underlying airline platform - without any bells and whistles - and re-attached the existing database. It burst back into life. At 3am.
One of the major features of the airline had been “tours” - where people could fly legs of various journeys around the world and mark their progress. While I managed to keep the record of what they had done in the past (their pilot reports), I lost the interface through which they interacted with them. Being honest, I had never been happy with it anyway - it didn’t work well, required constant maintainance, and wasn’t programmed well either.
So what to do?
Over the weekend I realised that people didn’t really need a huge and complicated tour tracking facility - they just needed ideas for flights. And so I set about building some new tours, and creating webpages listing links to the legs of the tours; allowing them to be flown in any aircraft, in any order.
Of course every time I set foot in the airline now, I see something I want to change - but I’m trying desperately not to. It’s time to sit back, let people use it, and see how it goes.
If you want to go play with the airline, the best place to start is at the following URL: