
Air Traffic Control Simulator - dshankar
http://zlsa.github.io/atc/
======
asherdavidson
This is a lot of fun. I've always been a huge fan of flight sims, but I never
realized that ATC was just as much fun. Just a few notes:

* All the planes enter at 90 degree angles. I assume this is intentional, but it would be nice to have semi-random entry angles.

* There are a fixed number of planes in the simulation. It would be more challenging and fun if more planes would arrive while I'm taking care of the others.

* The words are small and hard to read.

All in all I think this is a really cool simulation. I can see myself wasting
many more hours on it. Thanks!

~~~
dsl
If this is something you find interesting and like flight sims, you should
check out some of the live ATC groups.

[http://www.bostonvirtualatc.com/](http://www.bostonvirtualatc.com/) and
others allow you to work as a controller for a virtual airspace populated by
human "pilots."

~~~
asherdavidson
It's funny you mention BVA. I joined them many years ago (before FSX closed
gamespy) and I flew with them quite a bit. I think I was just a little
intimidated by how professional they were. I did a few of their lessons, and
then I went back to free flight in the offline sim where I could take off the
from the taxi ways :).

~~~
astrobe_
I flew virtually with real life general aviation pilots, some of them assuming
the role of the ATC in the sim; or else players would proceed like with
uncontrolled airstrips in real life: announcing take-offs, landings, etc. on
the "frequency" (a channel on a teamspeak server, one for each airport).

For someone like me who is has never flown a plane, it added kind of an RPG
aspect to the simulation.

~~~
RoseO
I used to work on quite a large Flight Sim website a few years back and a lot
of our users would do this. It gets interesting when you have 20+ people in an
area because people do not fly as perfectly as shown in any ATC simulator.

------
jrockway
I've found a new way to make airports handle twice as many departures per
hour: send a plane to each end and tell them to take off at the same time! So
far: 0 crashes!

It's the counter-intuitive out-of-the-box thinking that I come to HN for!

~~~
waterlesscloud
Disrupting the ATC space. Like Uber for air traffic!

~~~
jrockway
I'll even add a $1 "Safe Departures Fee".

~~~
fnordfnordfnord
__* During holiday surge pricing the Safe Departure Fee may be as much as
$25.00.

------
lucb1e
Fun, but not as good as the ATC game I know from the bsdgames package in many
Linux distributions. This is a lot more graphical but there are a few
disadvantages, mostly regarding input:

\- Callsigns are long. In, let's call it bsdgames ATC, you have to type only
one letter to indicate an aircraft. When Z is reached, you've long cleared A
so the letter can be reused. This is more realistic though, I guess.

\- It is not clear to me what an aircraft wants. Do all the flying ones want
to land and all the landed ones to fly? Because in bsdgames ATC they each have
a destination.

\- The locations on the map (where you can fix an aircraft on, the triangles)
are small and you have to properly look to make sure you typed it correctly.
There is no highlighting like for planes.

\- Runways are even harder to read. Here too there is no highlighting like for
planes.

\- You cannot send, as bsdgames ATC calls it, delayed commands (e.g. "N926JW
fix QUITE then turn 0").

\- You can not set an aircraft in "ignore mode", or otherwise mark it as "I
have finished giving it directions".

\- There is no command autocompletion. In bsdgames ATC you type "atdab0" to
indicate "plane A, Turn to direction D (90 degrees) At Beacon 0." Or as the
game displays it while you type the letters: "a: turn to 90 at beacon #0".
After typing every letter, the game will display the next word to indicate it
understood. (E.g. typing "at" it will display "a: turn to" and "atda" displays
"a: turn to 90 at".)

There are a few things I really like though:

\- The score system makes it not immediately 'game over' when you make a
single simple mistake.

\- It not only looks more modern, but because it's graphical and not ASCII
there is a lot more space on the map to maneuver (at least it looks like that,
maybe there are simply more planes). It also gives way more space for fix
locations (triangles).

\- Either this is common for ATC systems, or it looks like the good old
bsdgames ATC. I like that it is a modern version which, with rather minor
improvements, is better than the original.

~~~
zlsa
Author here.

\- I wanted to be a realistic as possible, hence the long callsigns. However,
all you have to type is the shortest unique callsign and that aircraft will be
selected.

\- If the aircraft has a red strip, it wants to land; if it's blue, it wants
to takeoff and depart the area.

\- The fix names are now bigger.

\- The runway names are bigger. I'll make them more obvious, too.

\- You cannot send delayed commands, just like real life.

\- You can type "baw1234 tu 90 d 3 sp 2"; like callsigns, you only have to
type the unique first few characters of the commands.

~~~
lucb1e
Thanks for the reply. Perhaps my comment sounded a bit too much like negative
criticism, it wasn't meant that way. Re:re:

\- "cannot send delayed commands, just like real life". It's not standard to
tell pilots to fly a certain path, e.g. to a point and then head south? (I'm
not sure, that's why I ask.)

\- "shortest unique callsign" Yeah well, it might help to always make the
first two or three characters unique, then you can be certain it always works
without having to check the list. Realism is kept that way.

\- "you only have to type the unique first few characters of the commands"
Yes, but it doesn't autocomplete while typing. Though I guess learning those
abbreviations might be part of the game.

In any case, thanks for making this. I've already mentioned some good points
so I won't repeat myself :)

~~~
0xffff2
> Yeah well, it might help to always make the first two or three characters
> unique, then you can be certain it always works without having to check the
> list. Realism is kept that way.

Unfortunately these two are fundamentally at odds. In real life the call signs
are based on carrier (or tail number if no call sign is assigned). In the
current iteration, there are two airlines, United (all of the UAL flights) and
British Airways (all of the BWA flights), plus the Cessna "airline" that
mimics general aviation craft by prefixing the call sign with "N".

------
danwakefield
Its fun, The two speeds are at the extremes though, Maybe a third halfway
between them. Runway names are impossible to see while landing a plane and
it's not obvious that takeoff always happen on *R runways.

If it was expanded it use actual flight data (if its legal) it would be
something I could see myself losing a lot of time to it.

~~~
asdfaoeu
I seemed to be able to takeoff fine off both. Also the runway names are just
their heading.

------
dshankar
FYI, it's open source:
[https://github.com/zlsa/atc](https://github.com/zlsa/atc)

------
breckenedge
OK I know it's a simulation, but as a pilot, this really helps understand what
ATC is going through. If I was a flight instructor, I'd recommend my students
spend some time with this.

~~~
bulte-rs
One of my flight instructors actually put me through a few hours of tracon ;)

------
lisper
Command entry seems broken in Safari. But no JS errors.

~~~
eddieroger
Same here. Safari 8.0.2 on Yosemite 10.10.2. It worked in Firefox though, but
unfortunately didn't make me any good at the game. I couldn't get ILS. Maybe I
didn't understand the landing part.

~~~
fennecfoxen
It looks like it works best when you point the plane in the right direction at
5000 feet, then have them fix on the named point in front of the runway in
question, and tell them to land. Waiting until they're on the runway-skewers
is too late.

------
maroonblazer
I love this.

It'd be great to have the option to turn on/off radio chatter, the sort you
hear when listening to real ATC transmissions. Would definitely make the
experience feel a bit more immersive.

~~~
0xffff2
You can always open up [http://www.liveatc.net/](http://www.liveatc.net/) in
another tab.

------
VLM
Can someone suggest a sim that handles real procedural / system design issues
properly, like the difference between being a terminal ATC or a ARTCC ATC?

The real world is more of a team approach and most game sims have a pretty
distorted view of reality. The guy who's doing ground taxi control at a tower
doesn't usually moonlight at simultaneously running approach control while
also simultaneously running departure control and enroute. A dude running
approach 200 miles away usually doesn't get to play tower 200 miles away to
tell a plane when they get to take off.

In my experience with aviation and ATC games, I haven't found one yet where
the game designer was a pilot or ATC or listened on a scanner to pilots and
ATC during the design phase.

I've also never seen a sim that handles dynamics for anything but planes. Real
ATC is all about handling very local weather, and NOTAMS, and hot/cold MOAs
(military training areas, if cold you just fly thru, if hot you get out of the
way or get shot down). And of course it changes in real time not just once at
game start. Also you trade / share space with other ATCs, so that dynamic
would be interesting. And your shift doesn't end when all the planes land,
you'll always both start and end a shift with planes in the air.

I don't expect much from the arcade games but there have been some sims out
there that at least graphically have tried to look realistic and have at least
sorta realistic procedures and limitations.

~~~
bencoder
I think [http://www.londoncontrol.com/](http://www.londoncontrol.com/) is the
closest one out there to what you're looking for

------
dejawu
This is great. After a few minutes of being frantically overwhelmed I
gradually figured things out. Cool to see what ATC has to deal with, I was
always curious how that looked.

There are two things I'd like to see:

\- More than two speed options. A slider, if possible?

\- Some sort of simple scripting. I'd like to be able to dial in, "Navigate to
WAYPOINT, then when you reach that, navigate to OTHER WAYPOINT, then descend
to 5000 feet, then land on runway XX."

~~~
dsl
Waypoint scripting would be counter to how ATC works. The challenge is
remembering your plan for each plane and mentally queuing up the instructions
you need to give to pilots.

~~~
bdonlan
Except that real ATC can indeed give instructions of that sort. It's not so
common for terminal environments to give really long clearances during
approach because the pilots may not be ready to copy them down right away, but
instructions like 'fly direct WAYPOINT, cross WAYPOINT at or above 5000 then
descend at pilot's discretion to 2500' are common enough a bit further out.

------
tantalor
After going through the tutorial and landing a few planes, my first impression
is the interface is extremely user hostile... I hope real ATC is better.

~~~
lisper
Real ATC is done verbally over radio. You'd need pretty good voice recognition
(and probably some non-trivial AI) to simulate it.

~~~
superuser2
For the very limited vocabulary used in vectoring aircraft, the voice
recognition part might not be horribly difficult (since it knows what it's
expecting.)

~~~
jjwiseman
The general speech recognition engines from Nuance, Google, etc. might have
difficulty with the specialized language. There are corpora available of
transcribed radio communications with ATC, e.g.
[https://catalog.ldc.upenn.edu/LDC94S14A](https://catalog.ldc.upenn.edu/LDC94S14A)
and
[http://cvsp.cs.ntua.gr/projects/pub/HIWIRE/WebHome/HIWIRE_db...](http://cvsp.cs.ntua.gr/projects/pub/HIWIRE/WebHome/HIWIRE_db_description_paper.pdf)
You could use the corpora to train an acoustic model and language model for
the Sphinx or Pocketsphinx open source speech recognizers.

~~~
jjwiseman
The reason I was looking into doing such a thing is that the NASA Airspace
Operations Challenge[1] (now canceled) included as part of the competition the
ability for drones to take verbal commands from ATC in case the communications
links with their controllers were lost. The U.S. military has also been
interested in giving drones this capability.

1\. [http://www.uasaoc.org/](http://www.uasaoc.org/)

~~~
tantalor
Sounds like a nasty security problem.

~~~
jkaljundi
Interestingly real ATC radio comms has a nasty security problem as well: no
authentication. As a broadcast medium, anyone can hop on the frequency and
pretend to be ATC or a plane. No way to know who is the real one. You can take
out your handheld radio right now and pretend to be JFK Tower or SF Approach.

~~~
VLM
"pretend to be ATC"

Pilots are really good at pretending to be ATC because of training to handle
CTAF MULTICOM UNICOM all of which is basically the same idea despite some
paperwork differences. I guess CTAF is what it is, and the COMs are individual
technical implementations. Its been a long time since student pilot days and I
remember UNICOM had flight service stations and I don't think MULTICOM allows
FSS chatter about fuel prices and car rentals or whatever on freq.

I live nearby and did student pilot training at an airport that doesn't have
ATC staffing over 3rd shift. There was only perhaps one landing per hour
overnight, so they don't staff the tower. Pilots just kinda broadcast off into
space, listen to each other, and talk to each other.

I guess you'd describe it as a quiet party line rather than the formal meeting
of staffed ATC communications.

Contrary to popular belief pilots listen constantly to each other and will get
sorta-complaints from the tower if they haven't been paying attention to other
pilots... Cessna 1234 do you have Cessna 6789 traffic in sight to your SW? And
if you haven't been paying attention to the conversation between ATC and 6789
such that you don't know 6789 exists or is to your SW, then ATC is going to be
kinda sorta pissed. This is why you can't replace ATC with a cellphone, at
least not practically.

Another popular, weird, belief is ATC is like radio control and shutting down
radio control makes all the planes fall out of the sky. Without the "meeting
coordinator / committee chairperson" effect of the ATC, everything will happen
in agonizing slow motion with massive distraction, but it'll all happen
perfectly well. The reason ATC exists is it saves the pilots time, lets them
focus on flying the plane a little more than focusing on commo with every
other plane in the area. Its the cognitive difference between a hub-spoke
topology and a full mesh. At 2am when there's only 0, 1, or 2 planes up in the
airspace over the field, there's not much difference.

ATC does occasionally fail and there are procedures for load sharing.

One interesting EE problem is good luck talking over a 500 watt ATC tower at
the field, from a couple miles away and 1 watt handheld. Just saying. Sure you
can piss a lot of people off, but complete and utter long term takeover is
going to be rather non-trivial. And there are a huge number of planes and
sites with DF gear for tracking the old fashioned emergency beacons, so of all
the things to jam, aircraft freqs are probably the one freq band likeliest to
result in your demise ... You'll live a lot longer jamming the FM radio band
or CB or the cops. Maybe not long, but longer.

~~~
mschuster91
> You'll live a lot longer jamming the FM radio band

Speaking out of experience, yes. 1kW sorta-portable system on a hill in a car,
no problems even after half an hour of running a pirate station.

------
javindo
This is really good fun except it's incredibly difficult to read the
navigation beacon names, even with zoom it is just very pixilated.

------
max0563
Is this not just a clone of [http://www.atc-sim.com/](http://www.atc-sim.com/)
?

------
jimmcslim
Some indication of when aircraft are risking violation of separation would be
handy, I assume that real ATC consoles have this? Its unclear what the scale
is.

Voices would be great. Emergencies (minimal fuel, medical, etc) and weather
would also be great!

------
imownbey
Woah this is super fun and nothing was wrong with it. It was kind of annoying
but I feel like all sims are that way. I want to be able to run different
airports!!!! And a mode that just goes on forever would be awesome.

------
Moral_
Needs better error correction when it comes to landing I haven't been able to
land one yet I get it close to the lines but no cigar. I've resorted to just
trying to get them to collide.

~~~
zrail
You have to tell them where to land with the "land" command.

------
rwmj
There was a ZX Spectrum ATC game which (considering 1983 hardware) was
reasonably accurate:
[http://www.worldofspectrum.org/infoseekid.cgi?id=0002270](http://www.worldofspectrum.org/infoseekid.cgi?id=0002270)
It was written by an actual air traffic controller and pilot (picture:
[http://www.worldofspectrum.org/showmag.cgi?mag=BigK/Issue03/...](http://www.worldofspectrum.org/showmag.cgi?mag=BigK/Issue03/Pages/BigK0300022.jpg))

------
aluhut
Thank you!

A printable list of commands would be nice.

~~~
popey456963
I'm currently working on this at the wiki, although I've only completed three
right now:
[https://github.com/zlsa/atc/wiki](https://github.com/zlsa/atc/wiki) If you
want to contribute, please do!

~~~
aluhut
I'm pretty much a beginner. I think the last time I saw a similar game was on
my C64 ;)

Thanks for the commands :)

------
known
[http://www.flightradar24.com/](http://www.flightradar24.com/) shows live
flight tracker

~~~
vhost-
Dammit, you opened up a can of worms. Now I've been at this for hours.

[http://www.northkoreatech.org/2014/08/01/whos-using-north-
ko...](http://www.northkoreatech.org/2014/08/01/whos-using-north-korean-
airspace/)

~~~
lucio
are we just highly technified ants?

------
pizzashark
I wish the planes continued to generate rather than having a fixed amount. I
don't like when I run out of planes.

------
jarsj
Has anyone able to crash 2 planes yet ? I tried landing one on a runway while
other was taxied, nothing happened.

------
fnordfnordfnord
I didn't want to be reminded how terrible ATCs' consoles are. The game is
super neat though.

------
jgeorge
I used to play an old Windows game called Tracon that was very similar, that I
would get totally lost playing way longer than I ever intended. Good job! I
prefer my ATC simulators with a little more realism than the bsdgames one. I
like actual callsigns instead of letters.

------
refurb
Nice job! Pretty simple game, but you had me playing it for an hour!

------
ssully
I like it! It's not for me at all, but it seems really well made. I am going
to send it to a friend who is ATC and see what he thinks.

~~~
lucb1e
I'm interested, please let us know what he says :)

------
ForFreedom
To get it to land is pretty difficult. How can I know the altitude, speed?

~~~
kissickas
Altitude is the first number, speed is the second number. Try using "fix x" to
set the plane on the waypoints along the runway, c 1, then land runway.

------
ForFreedom
Is there an equivalent for ATC on the MAC?

------
rrggrr
awesome job

~~~
rrggrr
Why did I get downvoted for complementing the OP on a game I ended up playing
for over an hour.

~~~
tomelders
It's because your comment didn't really add anything to the conversation. I
didn't down vote you by the way, but HN frowns on such comments.

In this instance though, when someone is showing the community their work, I
feel it's a bit unfair to expect everyone who comments to have detailed and
constructive feedback. Some people just want to say "awesome!" and I suspect
the people submitting their work also want to hear that. Alas, it's a
shortcoming. Perhaps up votes are the way to say "awesome".

------
jmtucu
I like it

------
Knox32
Nice

------
albumedia
Awesome work, I like it.

------
eccstartup
No one knows there is a hyperbolic PDE out there?

