- #1280 - Remove redundant timeout-based TAXI->WAITING mechanism
- #1705 - Re-fix range ring drawing position
- #1703 - Add more PTL ranges, some including 30sec PTLs
- #1697 - Refactor command parsing with new
ParsedCommand
class - #1699 - Improve command documentation
- #1565 - Prevent aircraft from taxiing to a runway they're already holding short of
- #1190 - Prevent selection of text in most dialogs
- #1614 - Spell out squawk code in single digit form in readbacks
- #1654 - Add Greensboro - Piedmont Triad Airport (KGSO)
- #1652 - Update EIDW/EICK airspace and procedures
- #1658 - Update LIPZ airspace
- #1633 - Add missing important fixes to KPDX
- #1651 - Deactivate or fix airports with broken airspace
- #1615 - Fix broken link in KSTL airport guide
- #1583 - Update EDDF to AIRAC 2009
- #1645 - Change expedite command from "x" to "ex" (since "x" is now used for "cross")
- #391 - Add support for multiple airspace sections
- #1617 - Add LXJ to fix crash at KIAD
- #1626 - Draw range rings where the file specifies instead of at the airport center
- #1523 - Re-introduce Washington Dulles International Airport (KIAD); add Mountain Air Cargo (MTN) and CommutAir (UCA)
- #1568 - Add command reference and slack links to help menu
- #39 - Fix misaligned compass headings around scope border
- #1590 - Update KLAX airport guide description
- #1589 - Update KDCA airport guide links
- #1581 - Add ability to reset scratchpad with "."
- #1606 - Retitle options menu to "Settings"
- #1608 - Add/Update Japanese Airline Files
- #1573 - Add missing waypoints from KJFK to fix crash
- #1523 - Introduce Venice Marco Polo Airport (LIPZ) and Volotea airline (VOE)
- #1563 - Add Cork Airport (EICK)
- #1534 - Reintroduce Los Angeles International Airport (KLAX)
- #1537 - Make KJFK traffic more realistic
- #1543 - Remove BEE/TCX airlines
- #1551 - Add missing waypoint CORDS at KJFK
- #1271 - Update the tutorial
- #1526 - Introduce Montevideo Carrasco Airport (SUMU)
- #1389 - Prevent unfair penalty at KDCA on IRONS7 arrivals by deactivating R6601B/C
- #1218 - Ensure proper removal of aircraft who collide with terrain/traffic
- #1513 - Add missing fleets to AFR/LDM airlines that were crashing EDDM/EIDW
- #1398 - Fix go-arounds from aircraft with low descent rates
- #1486 - Update AFL airline
- #1507 - Fix broken link in aircraft commands documentation
- #1022 - Reintroduce Munich Airport (EDDM)
- #1387 - Update LOWW to AIRAC 1908
- #1499 - Reintroduce Ministro Pistarini Airport (SAEZ)
- #1503 - Reintroduce Dublin Airport (EIDW)
- #1471 - Change all airport guide links to open in new tab
- #1514 - Reintroduce Malvinas Argentinas Ushuaia Airport (SAWH)
- #1381 - Change all airport names in airport loadList to the official English name according to Jeppesen charts
- #242 - Update KJFK to AIRAC 2002
- #1528 - Remove heavies from KDCA
- #1525 - Reintroduce Mendoza El Plumerillo Airport (SAME)
- #1517 - Reintroduce Princess Juliana Airport (TNCM)
- #1480 - Ensure settings menu appears above flight strip bay
- #1105 - Add in-sim Airport Guide accessible via footer button
- #1191 - Consolidate command bar buttons
- #45 - Add range/bearing measurement tool via Control button
- #1456 - Only allow headings between 001 and 360
- #1474 - Fix crash at KAUS from missing FDX fleet
- #1476 - Fix missing terrain at KSTL
- #1451 - Add ability to specify the radial with the
hold
command - #1458 - Add support for holding patterns with distance-based legs
- #1431 - Expand capabilities for predefined holding patterns in airport files
- #1402 - Prevent assignment of reserved/nondiscrete beacon codes
- #1472 - Add water polygons to airport terrain files
- #1463 - Fix travis build notifications
- #1453 - Fix EINN video maps format which was causing sim to crash
- #1418 - Fix error from EDDF spawn pattern
- #1395 - Fix aircraft's wind correction angle math (which was causing go-arounds)
- #1420 - Spawn pre-spawned aircraft on correct heading instead of 360 heading
- #1432 - Prevent aircraft from leaving their holding patterns
- #1440 - Add missing "b738"-fleet to TUI Airways
- #23 - Ensure focus remains on the text input box in MS Edge
- #1448 - Lower spawn altitudes of KSFO arrivals so can comply with STAR restrictions
- #1446 - Ensure
sh
/sah
commands return headings within 001-360
- #1410 - Restore functionality of local server from
npm run start
- #1387 - Update EDDF to AIRAC 1906
- #1327 - Airport Revival: San Francisco International Airport
- #1390 - Update KAUS to AIRAC 1909
- #1231 - Draw STAR labels left of fix to prevent text overlap with SID labels
- #1434 - Update EINN to AIRAC 1909
- #1313 - Add F1/F2 shortcut to decrease/increase length of PTLs
- #1363 - Fix aircraft not squawking assigned code
- #1351 - Fix turn command with incremental turns of less than 10 degrees
- #1230 - Upgrade from
cedar-14
toheroku-14
stack and simplifies build commands - #1344 - Add
EventTracking
calls toTrafficRateController
and traffic rate concerns. - #1072 - Overhaul of El Paso International Airport (KELP)
- #1378 - Change KBOS wind to permit usage of Runway 27
- #1375 - Correct overflight example in spawnPatternReadme
- #1338 - Add
fph
command to aircraft command documentation - #1370 - Upgrade dependencies and address
npm audit
issues - #1319 - Addresses lint errors in documentation files
- #1260 - Update all airports to AIRAC 1813
- #1366 - Remove/combine conflicting spawn patterns from multiple airports
- #943 - Fix random spawn calculations to ensure arrivals are available quickly
- #1355 - Ensure LSZH arrivals descend properly
- #1358 - Ensure traffic resumes spawning after a spawn pattern is turned off and back on
- #804 - Add ability to view changelog for the current version
- #1330 - Allow user to choose which mouse button drags the canvas
- #16 - Add traffic volume scaling controls
- #1335 - Fix inconsistent state of control buttons
- #1341 - Fix CID number generation bug when generated CID is already in use
- #1183 - Ensure a deep render occurs when changing themes
- #10 - Add command for altitude restrictions at fixes ("cr")
- #598 - Add linting (
lint-diff
) to Travis CI task list
- #1305 - Fix range rings center is undefined
- #1312 - Fix KRDU arrival descent problems to some extent
- #1329 - Free up CIDs after use
- #1324 - Restore support for numpad enter
- #1032 - Add range ring options and toggle button
- #1234 - Add scope command for drawing halos around aircraft data blocks
- #1292 - Ensure taxi instructions are ignored when aircraft is taking off
- #1309 - Fix GameController.game_interval calls continuously after it fires initially
- #1247 - Determine initial climb altitude from the SID
- #1290 - Add Pull Reminders badge to repository readme
- #1286 - Update EDDF to AIRAC 1901
- #1288 - Update event tracking arguments sent to GA
- #1308 - Clarify that TimeKeeper and GameController.game_timeout are using seconds (not milliseconds)
- #1284 - Fixes overflow issues with tests
- #1250 - Fix fatal error code 128 during
npm install
- #1240 - Fix readback from departure cleared for takeoff when they aren't first in line
- #1259 - Fix speech synthesis's use of "heavy/super" in callsigns
- #1266 - Fix A380 speed definitions
- #1158 - Fix Firefox strip bay scrollbars are not working
- #1242 - Fix too-low glideslope intercept messages not showing
- #1279 - Fix erroneous altitudes appearing in flight strip
- #1264 ӱ - Change the "super" weight class identifier from
U
toJ
- #1269 - Updates Google Analytics tracking function from
ga
togtag
- #727 ӱ - Updates to the tutorial
- #1238 - Grant IFR clearance when any type of route amendment is issued
- #1232 - Require proper application of separation with same-runway subsequent departures
- #1275 - Updates
buildMarkup
task to output date and time when generating theindex.html
file
- #1003 - Add assigned runway to the aircrafts' strips
- #945 - Add airport information panel to scope
- #159 - Add in-game link to GitHub repo
- #1212 - Randomize pilot voice for each aircraft
- #1197 - Adds custom analytics event tracking
- #1147 - Fix Callsigns in tutorial should update when switching airports
- #1045 - Fix descent planning logic so arrivals can meet their altitude restrictions
- #1084 - Add messages for too-low glideslope intercepts
- #155 - Accept entrail property in spawnPatternModel
- #1193 - Adds
SettingsController
instantiation toUiController.init()
- #1202 - Prevent pilot from responding with "say again, say again"
- #1154 - Ensure that the runway is valid for SID before takeoff
- #955 - Fix
sid
command`
- #1075 - Typo In surgePattern documentation
- #883 - Stop penalizing light tailwind landings
- #1001 - Remove support for work-in-progress airports
- #1179 - Extract settings related code from UiController into its own controller
- #1171 - Move tutorial from InputController to UiController
- #1114, #1115 - Update broken documentation links
- #308 - Abstract Aircraft.getWind() to the AirportModel
- #1199 - Change taxi readback to "taxi to and hold short of Runway 1"
- #1208 - Update Thomas Cook callsign
- #1209 - Update TUI Airways callsign
- #604 - Adds support for dataBlock timeshare data
- #678 - Removes wind vane visualization from
CanvasController
- #1137 - Updates project dependencies
- #1033 - Add support for overflights
- #793 - Add AIRAC airport file key and system command
- #1017 - Add more GA aircraft
- #1099 - Fix wrong B747 entry in Turkish Airlines file
- #1104 - Fix console warnings for removing StripViewModel which doesn't exist
- #1103 - Fix pressing ESC doesn't fully clear the command bar
- #1149 - Ensure all flight strips are removed when switching to another airport
- #1152 - Fix GameClockView crashes sim in Firefox
- #1108 - Overhaul of KLAS
- #794 - Bring KMIA back into compliance with the airport specs
- 1123 - Make runway mandatory in "taxi" command
- #1112 - Cleanup of eslint errors and warnings
- #1138 - Remove contributors block from package.json
- #696 - Default canvas theme no longer hardcoded in CanvasController
- #1144 - Move calculateSpawnHeading to SpawnPattenModel
- #1142 - Update documentation for taxi command
- #966 - Improve terrain generation documentation
- #1133 - Improve InputController class
- #1086 - Update P28A Climb rate fm 2000ft/m to 700ft/m
- #1034 - Fix waypoint time-to-turn calculations to ensure smooth turns
- #935 - Prevent aircraft from skipping fixes that require tight turns
- #870 - Fix unusable runway bug after changing one aircraft's departure runway
- #1101 - Fix console error caused by vector waypoints
- 1077 - Update flight strips view by separating arrival and departure strips
- #1074 - Update link to "aircraft separation rules" in scoring.md
- #111 - Draw STARs on scope like we do with SIDs
- #206 - Add Bucharest Henri Coandǎ International Airport (LROP)
- #994 - fix "Aircraft vectored off ILS maintain over-precise altitude"
- #1048 - fix "Aircrafts do not land after ILS clearance" because runway is not part of their STAR
- #1044 - fix aircrafts drift off ILS localizer during final approach causing "strange behaviour after landing"
- #1047 - fix "Flight number 5000 pronounced incorrectly"
- #993 - fix Arrivals exiting and reentering airspace causes error about missing strip
- #724 - fix settings modal doesn't add active class to control icon
- #421 - Add missing keys to spawnPatternModelJsonValidator
- #836 - Fix "hold in STAR procedure isn't working"
- #933 - Revival of Istanbul Atatürk Airport (LTBA)
- #1053 Add optional altitude argument for 'descend via STAR' command
- #1071 Add optional altitude argument for 'climb via SID' command
- #403 - Add Flughafen Düsseldorf (Düsseldorf Airport, EDDL)
- #1018 - Fix "leaving airspace without proper clearance" bug at KSEA
- #915 - Change passing/diverging separation logic to use assigned heading, not ground track heading
- #38 - Fix issues with localizer interception
- prevents aircraft from spinning in circles (in most cases we're seeing)
- ensures descents below assigned altitude do not begin until established on the localizer
- penalizes localizer interception above glideslope
- triggers go-arounds at final approach fix if not established on both localizer and glideslope
- #1030 - Fix background color of options menu dropdowns
- #1005 - Minor updates to KRDU
- #1023 - Standardize
openScope
capitalization - #949 - Keep video map clearly visible at all zoom levels
- #1000 - Increase max width of airport selection dialog to permit longer airport names
- #272 - Add Cincinnati/Northern Kentucky International Airport (KCVG)
- #1008 - Correct airline files using old callsign format
- #893 - Add Prague Václav Havel Airport (LKPR)
- #444 - Adds option button to toggle video map display
- #884 - Add airline files for non-US registration callsigns
- #968 - Fixed N-numbered GA aircraft having callsign "default" if voice is on
- #907 - Updates
SpawnPatternModel
to handle integer or float values for#rate
- #996 - Add airport guide directory entry for LKPR
- #956 - Updated 'descend via STAR' documentation to change mentioning SID to STAR
- #782 - Overhaul of KATL
- #961 - Updated climb and descent rates using Eurocontrol data
- #874 - Continue and clean up following FMS / Route refactor
- #982 - Remove empty .gitkeep file
- #916 - Consolidates aircraft removal logics, renames AircraftModel#inside_ctr -> AircraftModel#isControllable, simplifies aircraft update logic in AircraftController
- #972 - Updated airline fleets to newest data
- #953 - Fix aircraft not descending into airspace when airspace ceiling is below STAR bottom altitude
- #950 - Fix left turn command
t l ###
- #818 - Allows selection of only aircraft within controlled airspace
- #838 - Add Zürich Airport (LSZH)
- #24 - Add command to inform arrivals of assigned landing runway
- #918 - Fix failed load by verifying "last airport" in loadList before attempting to use it
- #939 - Fix airline fleet detection logic that was erroring during spawn of properly declared patterns
- #899 - Fix improper merging of routes when divergent waypoint is not in the middle of the leg
- #940 - Fixes British Airways fleets; re-adds 'short' fleet and removes historic fleet
- #947 - Fix lack of red response for 'land' and update documentation
- #910 - Reactivate KBOS and KSTL
- #856 - Overhaul of Doha Hamad International Airport (OTHH)
- #246 - Overhaul OMAA (Abu Dhabi)
- #908 - Minor updates to KSEA
- #928 - Minor updates to KPDX
- #923 - Overhaul of KABQ
- #931 - Minor updates to KDCA
- #241 - Overhaul of London Luton Airport (England, United Kingdom)
- #927 - Fix climb rates for CRJs
- #677 - Add test which ensures all airport JSONs contain valid JSON data (helpful for airport developers)
- #809 - Major reconfiguration of FMS and navigation-related components of the sim
- #108 - Add Ottawa Macdonald–Cartier International Airport (Canada)
- #265 - Add Leeds Bradford Airport (England, United Kingdom)
- #816 - Add Kansas City Int'l (KMCI)
- #819 - Add Raleigh-Durham Int'l (KRDU)
- #785 - Add Pittsburgh International Airport (KPIT)
- #106 - Add Halifax Stanfield International Airport (CYHZ)
- #864 - Resolve console.warning() is not a function (when drawing SIDs), by removing the -ing
- #879 - Restore functionality of non-procedural descents to airspace ceiling
- #895 - Ensure number-type variables defined in spawn patterns are cast to numbers if provided as strings
- #840 - Updates documentation on airport file standards
- #655 - Set new standards for airport difficulty levels
- #529 - Convert
NavigationLibrary
to a singleton - #881 - Remove nonfunctional airports from load list broken by feature/809
- #216 - Overhaul of Ronald Reagan Washington National Airport (DC, USA)
- #854 - Overhaul of Manchester International Airport (England, United Kingdom
- #866 - Customisation of callsign formats
- #199 - Overhaul of Frankfurt Am Main International Airport (Germany)
- #842 - Updates KBOS to AIRAC 1802
- #844 - Updates KSTL to AIRAC 1802
- #851 - Updates KPDX to AIRAC 1802
- #837 - Refactors
StripView
classes to not use$.show()
and$.hide()
- updates css to use
flexbox
instead of the clevertranslateY()
tricks. - #885 - Removes loading indicator and simplifies
LoadingView
- updates css to use
- #796 - Updates ENGM (Oslo Airport, Norway)
- #723 - Add contribution guidelines document
- #831 - Add empty video maps to WIP airports to keep them from crashing
- #823 - Add restricted and prohibited areas to KSEA
- #825 - Updates KSTL to AIRAC 1712
- #821 - Updates KDTW to AIRAC 1712
- #829 - Updates EDDH (Hamburg Airport, Germnay)
- #833 - Updates documentation on airport format
- #485 - Updates KLAS (McCarran International Airport, NV)
- #801 & #802 - Removed Monarch Airlines and Airberlin
- #814 - Fix severe canvas bug for airports with runways that don't draw extended centerlines
- #647 - Add Tampa Intl. (KTPA)
- #107 - Add Theodore Francis Green Memorial State Airport (Providence, US)
- #559 - New Airport: KDTW (Detroit Metropolitan Wayne County Airport, MI)
- #236 - Splits canvas into STATIC and DYNAMIC canvases, only drawing updates when there are updates to draw.
- Moves CanvasController arrow functions to bound class methods
- #667 - Fix bug where aircraft cleared twice for ILS won't join glideslope
- #567 - Fix bug of aircraft descending via STAR to '0' altitude
- #787 -
sid
command no longer sets the aircraft's destination property - #812 - Ensure aircraft future path is drawn only when directed by settings menu
- #755 - Deprecated the
rate
command - #80 - Add git strategy flow chart to documentation
- #662 - Force arrivals with non-altitude-restricted STARs/routes descend at least to ceiling of controlled airspace
- #725 - Consolidate GameController timing elements into TimeKeeper
- #764 - Fix links in airport guide documentation
- #768 - Fix mistake in version number
- #768 - Minor renaming of holding related methods in FMS
- #427 - Updates KSFO (San Francisco International Airport, CA)
- #773 - Updates KABQ to AIRAC 1711
- #775 - Updates KSEA to AIRAC 1711
- #777 - Updates KSTL to AIRAC 1711
- #780 - Updates KBOS to AIRAC 1711
- #726 - Adds
CanvasStageModel
class and abstracts canvas dimensions, pan, zoom, and unit translation methods to this new singleton - #650 - Updates KPDX (Portland International Airport, OR)
- #791 - Adds useful error message and tests for case when airport file has procedure with improperly defined
draw
segment
- #709 & #744 - Checks if the airport in localStorage exists before loading it
- #710 & #744 - Updates
.eslint
rules to ignore unusedevent
anderror
parameters
- #641 - Add
sa
,saa
,sh
,sah
,ss
,sas
commands - #14 - Add toggleable scope command bar, and lays foundation for the Scope, its commands, and its collections of radar targets.
- #564 - The mouse button to drag the radar screen is now right click
- #637 - Adds Ted Stevens Anchorage Intl. (PANC)
- #683 - Fix SID Names at MDSD following the screen centre
- #685 - Fix the command bar displaying a '?' when the up or down arrow is pressed
- #699 - Extends departing spawnPatterns outside the airspace at KSDF to prevent point deduction
- #704 - Adds
footer
section toindex.html
and combines former partialscontrols
andscore
with the#command
input- updates styles to use flexbox with properly organized children
- #728 - Clear radar target collection when changing airports
- #732 - Ensure radar targets are removed when aircraft model is deleted
- #711 - Ensure game options initialize to correct default values
- #741 - Remove call to
AirportController.hasAirport()
inindex.js
- #740 - Changes background-color of settings option selects to transparent
- #743 - Updates param passed to RadarTargetCollection from within AircraftController.aircraft_remove(
- #742 - Ensure failure message responses are shown in red
- #679 - Modifies
StripView
background-color to use rgba instead of hex to allow for a semi-transparent background - #657 - Adds Eric Meyer CSS Reset and updates existing CSS to work without
*
reset - #695 - Stops
console.warn()
spam every frame if terrain is less than zero - #670 - Adds
localStorage.setItem()
toGameOptions.setOptionByName()
and adds test file forGameOptions
- #452 - Update airport format document with new properties and requirements
- #614 - Update developer documentation regarding git strategy
- #717 - Execute scope command by clicking radar target
- #296 - Adds
TimeKeeper
singleton and movesApp.incrementFrame()
logic to this new class - #721 - Removed the
version
command - #527 - Updates Shannon (EINN) - Updated all procedures, added video map and terrain, updated traffic
- #707 - Makes first pass at
CanvasController
refactor- adds
TimeKeeper
singleton to make time tracking easier to manage - moves logic to update properties of the
CanvasController
to live within theCanvasController
and happen via triggered events - sets the stage for next round of
CanvasController
updates by addingCANVAS_NAME
enum to be used when creating canvas elements
- adds
- #29 - Add airport guide files and start ksea as an example
- #354 - Ensure tutorial selects departure aircraft
- #718 - Add documentation and tutorial section for scope commands
- #630 - Update UI green colors to match default blue theme
- #326 - Checks if an aircraft can reach assigned altitude/speed
- #327 - Fix WIP airports which fail to load due to improper procedure formatting
- #327 - Add Albuquerque Sunport (KABQ)
- #541 - Add Hartsfield–Jackson Atlanta Intl. (KATL)
- #557 - Add Louisville Intl. (KSDF)
- #331 - New Airport: KELP (El Paso International Airport, TX)
- #349 - New Airport: KSTL (St. Louis Lambert International Airport, MO)
- #555 - New Airport: KTUS (Tuscon International Airport, AZ)
- #624 - New Airport: KJAX (Jacksonville International Airport, FL)
- #618 - Fix VNAV descents on STARs with only "at/above" and "at/below" restrictions
- #664 - Updates order of elements in the StripViewTemplate so the FlightRules element is properly floated to the right
- #659 - Fix misalignment in airport selection dialog
- #619 - Removed index.html as it is generated from templates when run
- #619 - Implements new loading screen with new color scheme and animated radar sweep
- #566 - Extends departing spawnPatterns outside the airspace at EIDW to prevent point deduction
- #615 - Extends departing spawnPatterns outside the airspace at MDSD to prevent point deduction
- #635 - Extends departing spawnPatterns outside the airspace at KBOS to prevent point deduction
- #15 - Implement scope themes, and changed default theme to blue-based
- #431 - Deactivate unused WIP airports from the load list, and add premium flag
- #7 - Document airport terrain generation process
- #653 - Remove index.html from document root in tools/README.md
- #640 - Deprecate the
say route
command - #481 - Adds LESS preprocessor and adds CSS folder structure
- #639 - Deprecated
abort
command - #365 - Renamed
index.md
tocommands.md
and added system commands and a TOC - #480 - Consolidate console warnings for missing fixes to single message
- #516 - Update Ezeiza (SAEZ) - Updated all procedures, added video map, updated traffic, added new airlines
- #660 - Lower spawn altitude for arrivals into MDSD so they can descend in time
- #288 - New airport: MDSD (Las Américas International Airport, Dominican Republic)
- Includes Terrain and Video map
- Adds Copa Airlines (CMP) and PAWA Dominicana (PWD)
- #572 - Add new openScope emblem vector graphic
- #484 - Adds additional meta tags to index.html head
- #581 - Adds a link to the full command reference at the end of the tutorial
- #536 - The distance separator behind aircraft on ILS is now toggleable
- #411 - Removes the blue line "departure window"
- #562 - Removes inactive danger areas at EIDW
- #570 - Make aircraft proceed direct new fix after full reroute
- #383 - Recalculate SID/STAR legs when changing assigned runway
- #510 - Remove +/-/= zoom hotkey, conflicts with speed
- #577 - Correct EGKK's departure fix
- #586 - Fix spelling error of
CanvasController
asConvasController
- #290 - Remove deprecated fixRadialDist()
- #593 - Renamed
MIDDLE_PESS
asMIDDLE_PRESS
inInputController
- #602 - Fix instances of misspelling of @param in code docblocks
- #599 - Deprecates
gulp server
task and addsnodemon
package
- #549 - Ensure previously specified directions of turn are not preserved when a new heading instruction is given
- #310 - Add capability for vectors in route strings
- #138 - Adds more context to the Model classes by adding an optional input paramater
- #191 - Adds object helper class for object validation
- #402 - Renamed AircraftInstanceModel with AircraftModel
- #19 - Add capability for fly-over fixes in route strings
- #372 - Adds squawk/sq command
- #40 - Adds the ability to call an airplane by its callsign
- #457 - Adds
EventBus
andEventModel
- #93 - Adds
RunwayCollection
andRunwayRelationshipModel
and moves some runway logic to live in these new classes - #469 - Updates
SpawnPatternModel
to use theAirportModel.arrivalRunway
property when gathering waypoint models needed to calculate initial aircraft heading - #33 - Adds support for suffixes in SID and STAR procedures
- #476 - Adds game option to include/hide WIP airports in the airport list
- #285 - Adds
StripViewController
,StripViewCollection
, andStripViewModel
classes- Removes progress strip logic from the
AircraftModel
- Completely reworks CSS for
StripViewList
- Removes progress strip logic from the
- #491 - Adds
.isGroundedFlightPhase()
and implements this helper in.buildWaypointModelsForProcedure()
- This allows for waypointModels to be build from the correct collection based on
flightPhase
- This allows for waypointModels to be build from the correct collection based on
- #477 - Updates
AircraftModel.onAirspaceExit()
to look only at themcp.headingMode
value - #423 - Adds user setting option to change length of PTL
- #208 - Updates Dublin (EIDW) - Improved procedures, added terrain and video map, modified airspace, realistic traffic
- #508 - Updates logic to display historical aircraft position for aircraft outside controlled airspace
- #418 - Updates development-workflow-procedures, adds Quick Start guide to README and consolidates all documentation in the
documentation
directory - #434 - Adds tests and verifies functionality of non-procedural departures and arrivals (support for direct route strings)
- #483 - Adds unique transponder and CID generation methods
- #137 - Abstracts non game loop logic into new class
AppController
, which provides facade methods forApp
to call during game loop - #72 - Converts
AirportController
,GameController
andUiController
to static classes- updates
window
references to these classes - updates
prop
references to these classes
- updates
- #32 - Add support for ranged altitude and speed restrictions in procedures
- #32 - Improve VNAV climbs and descents to better comply with restrictions
- #228 - Updates Boston Logan Intl. (KBOS) - Updated procedures, added video map and terrain, modified airspace, realistic traffic
- #535 - Removes left over references to
AircraftStripView
inAircraftModel
- #385 - Fixes coordinate letter issue at SBGL
- #424 - Prevent NaNs being passed on if invalid altitude is given
- #356 - Removes fix command from tutorial and replaces it with infomation on 'route', 'Say Route', and 'Proceed Direct'
- #325 - Fixes coordinate letter issues at RJBB, OSDI, OTHH
- #448 - Removes KBOS fixes from EKCH
- #492 - Runway, wind and spawnPattern changes to allow EGNM to operate
- #467 - Prevent attempts to access positions of vector waypoints
- #451 - Adjusts fix validation for hold/vector/flyover fix names
- #521 - Prevents simulator from wrongfully overriding assigned alt/hdg during approach clearances
- #522 - Updates
AirportModel.buildRestrictedAreas()
to build the coordinate array with the correct shape - #539 - Adds local reference to
EventBus
insideAircraftCommander
- #344 - Cancel approach clearances whenever an altitude or heading instruction is given
- #546 - Make flight strips show appropriate altitude values
- #458 - Fixes or removes from load list all airports that fail to load
- #316 - adds deployment-checklist document
- #184 - Updates the airport-format.md file
- #374 - allow for specification of airport's default arrival and departure runway
- #367 - adds airport-file-standards document
- #364 - Adds additional check for
undefined
inCommandParser
when adding args to aCommandModel
- #370 - Deprecates and removes
AircraftController._setDestinationFromRouteOrProcedure()
as it was implemented to maintain a previous api which is no longer used - #188 - Ensure the verbal and text instructions/readbacks state the correct directionality
- #396 - Updates Pilot.applyDepartureProcedure() to use RunwayModel correctly
- #399 - Updates
fms.getDestinationName()
to return thefixName
whencurrentLeg
is not a procedure - #394 - Fix wrong PTL length and set to 1 minute
- #404 - Fixes broken link in airport-format
- #395 - Fix datablock speed to show GS, not IAS
- #408 - Ensure red response is given to
rr FIXXA..FIXXB
- #410 - Fix strip update crash for arrivals on vectors
- #359 - Updates
AircraftStripView
to display departure procedures with the correctNAME.EXIT
shape
- #139 - Refactors FMS
- This represents a ground-up, from scratch, re-build of the flight management system with new classes:
Fms
,LegModel
, andWaypointModel
- Introduces the
ModeController
that completely separates Altitude, Heading and Speed settings from the FMS and allowing the FMS to be in charge of the flight plan and any fixRestrictions defined for a given route - Adds
Pilot
class that acts as a coordinator layer between theAircraftCommander
,AircraftInstanceModel
,ModeController
, andFms
- Completely reworks how
Aircraft.target
is calculated - Introduces the concept of
flightPhase
, and begins integrating that property in lieu of category (arrival/departure) - Adds ability to define hold waypoints with a symbol
@
- Splits
PositionModel
into two new classes;StaticPositionModel
andDynamicPositionModel
- Work on this issue also resolves or invalidates previously recorded issues:
- #57 -
aircraftInstanceModel.fms
has a circular dependency withaircraftInstanceModel.fms.my_aircraft.fms
- #73 - Using STAR command to change aircraft's assigned STAR throws errors
- #77 - Abstract current waypoint altitude and speed setting
- #78 - Add Leg to modelSourcePool
- #79 - Refactor fms param out of Leg
- #81 - Extend RouteModel, or add new layer, to handle compound routes
- #86 - Rerouting aircraft causes it to climb to unassigned altitude
- #87 - deprecate
aircraft.eid
- #114 - Implied holding in route strings
- #122 - Rerouting uncleared aircraft onto SID fails
- #123 - Using "fix" command yields legs with lower case route
- #129 - Create getter in
AircraftInstanceModel
to get the current runway - #144 - create RouteBuilder class and smooth out RouteModel
- #153 -
fix
command with multiple arguments skips to last fix - #158 - Add
.hasFix()
method to FixCollection - #197 - Route amendments will stop altitude changes
- #287 -
StaticPositionModel
and enforcing use of Positions where appropriate
- #57 -
- This represents a ground-up, from scratch, re-build of the flight management system with new classes:
- #256 - Standardized indentation in all json files
- followed up and corrected 2 mistakenly cleared out aircraft files
- #263 - Fixes Firefox compatibility issue by changing ajax to getJSON
- #303 - Fixes bug with departures at SAME
- #321 - Fixes coordinates for PAM at EHAM
- #340 - Ensure aircraft reach their targeted speed
- #342 - Fixes last-second go-arounds by landing aircraft
- #346 - Ensure aircraft follow glideslope
- #338 - Fix mispronunciation of grouped numbers '820' as 'eight-twenty-zero'
- #252 - Updates
static.json
to not use ssl
- #249 - Restores spawning of GA aircraft at EDDT
- #154 - Removes GitHub Pages specific files and moves hosting out of GitHub Pages.
- #230 - Updates build process to:
- minify css and javascript and output to
public
directory - minify airport json/geojson files and output to
public
directory - combine aircraft and airline json files into
aircraft.json
andairline.json
and output them to thepublic
directory - copy static assets (fonts and images) to
public
directory - introduce Handlebars templates and create
buildMarkup
build process - point the local server to the
public
directory`
- minify css and javascript and output to
- #109 - Makes sure the output for sid and star commands are always uppercase.
- #179 - Marks all airports as works in progress
- #166 - Changes deployment server from Express to Nginx
- #163 - Adds javascript minification to build process
- adds copy task to public directory
- translates
json_assembler.rb
tojsonAssembler.js
and adds it to the build process.
- #222 - Corrects
icao
of the Boeing 767-400 and also updates the information to Eurocontrol data - #224 - Updates
app.json
to use correct buildpacks - #104 - Overhauls Munich - updates Munich to AIRAC 1702, adds STARs, and adds a realistic traffic flow.
- #103 - Adds Tokyo Narita International Airport as per AIRAC 1702
- #149 - Fixes an instance of two runways called "34R" in Shanghai Pudong
- #201 - Adds the required space between 'fh' and its argument in the tutorial
- #195 - Updates airline json files to include
icao
key. UpdatesAirlineCollection
andAirlineModel
to handle variable casing oficao
- #207 - Adds a default position value to
SpawnPatternModel
so aircraft have, at least, a[0, 0]
starting position - #210 - Ensures data block colored bars are all the same width (3px), regardless of callsign length
- #210 - Adds missing
return
in.generateFlightNumberWithAirlineModel()
that was needed to properly recurse back through the method in the case of a duplicate flight number. - #203 - Updates boolean logic in
App.updateViewControls()
which was evaluating an asynchronous property that, typically, had not finished loading. - #148 - Fixes internal fms error that was breaking the game when issuing holds over present position
- #170 - Adds Openscope favicon
- #176 - Removes
ALM
andSVD
arrival patterns from 'EKCH' because there aren't enough fixes to support them - #177 - Updates
entryPoint
andexitPoint
to be pluralized as is the airport json standard - #175 - Adds
entryPoints
togcrr
star route definitions - #174 - Fixes arrival pattern that was using an array of fix names instead of a routeString.
- #173 - Updates
wmkk
StandardRoute definition to include at least one fixname
- n8rzz/atc#220 - Restructures
src
files intoclient
andserver
folders. - n8rzz/atc#184 - Updates Node to version 7.0.0
- n8rzz/atc#181 - Moves aircraft command logic from
AircraftInstanceModel
to newAircraftCommander
class - n8rzz/atc#243 - Adds
spawnPatterns
to airport json and vastly simplifies aircraft creation. Work on this issue ended up resolving many other smaller issues listed below.- n8rzz/atc#229 - Restructure
Airport.departures
to utilize routes - n8rzz/atc#56 - Abstract inline fix object out of ArrivalBase
- n8rzz/atc#27 - Simplify creation of arrival aircraft
- n8rzz/atc#242 - Include airline id in airline json
- n8rzz/atc#235 - Create SpawnCollection, SpawnModel and SpawnScheduler classes
- n8rzz/atc#28 - Circular reference in airportModel.departures.airport
- n8rzz/atc#28 - Circular reference in airportModel.departures.airport
- n8rzz/atc#229 - Restructure
- n8rzz/atc#193 - Changes
AircraftStripView
text outputs to be all uppercase - n8rzz/atc#133 - Ensures proper removal of all
AircraftConflict
instances involving an aircraft that has been removed from the simulation- Originally reported in zlsa/atc#734
- n8rzz/atc#205 - Changes the names from having the flags in their name by adding WIP variable to the
AIRPORT_LOAD_LIST
inairportLoadList
- n8rzz/atc#192 - Fixes white space in that is displayed from the
AircraftInstanceModel
- n8rzz/atc#233 - Adds cache to travis build
- n8rzz/atc#104 & n8rzz/atc#237 - Resets current indicies when issuing a new star to an arriving aircraft
- Originally reported in zlsa/atc#730 & zlsa/atc#768
- n8rzz/atc#206 - Restores behavior of aircraft flying present heading after completing all legs in their flightplan
- Originally reported in zlsa/atc#767
- n8rzz/atc#241 - Fix wrongful removal of departures from runway queues when arrivals land
- Originally reported in zlsa/atc#770
- n8rzz/atc#240 - Fix erroneous voice readbacks for altitude command
- Originally reported in zlsa/atc#769
- n8rzz/atc#133 - Fixes behavior of AircraftConflict in various ways, particularly with removal after deletion of aircraft
- Originally reported in zlsa/atc#734
- n8rzz/atc#53 - Integrates
sidCollection
andstarCollection
withRouteModel
withinAircraftInstanceModel
- Creates getters for
currentLeg
andcurrentWaypoint
- Abstracts restrictions logic to live within
Waypoint
- Consolidates
runSID()
andclimbViaSid()
logic
- Creates getters for
- n8rzz/atc#54 - Deprecates
sid
andstar
properties of theAirportModel
in favor ofsidCollection
andstarCollection
- n8rzz/atc#169 - Adds Express server to serve static assets and add travis config file for travis continuous integration
- n8rzz/atc#114 - Rewrites the CommandParser from the ground up
- n8rzz/atc#216 - Removes
Pegjs
and references completing switch to new CommandParser
- n8rzz/atc#77 - Implements
modelSourceFactory
andmodelSourcePool
- n8rzz/atc#144 - Refactors
canvasController.canvas_draw_sids
method to useairport.sidCollection
instead ofairport.sid
- n8rzz/atc#55 - Moves properties shared by all
Arrival
types up toArrivalBase
- n8rzz/atc#52 - Removes
$.each()
fromAirportModel
in favor of_forEach()
and uses_get()
insideaircraftInstanceModel.parse()
instead of if statements - n8rzz/atc#135 - Moves creation of Legs and Waypoints to constants instead of as method arguments
- n8rzz/atc#17 - Moves
.parseCoordinate()
out ofPositionModel
and intounitConverters
- n8rzz/atc#128 - Moves flight management system files to
FlightManagementSystem
folder - n8rzz/atc#163 - Adds
RouteModel
toAircraftInstanceModel.runSTAR
for easier handling of a route string - n8rzz/atc#159 - Adds static
calculatePosition
method toPositionModel
and abstracts common functions - n8rzz/atc#135 - Replaces active airport icao in view with a zulu time clock
- n8rzz/atc#167 - Consolidates test fixtures in fixtures directory
- n8rzz/atc#176 - Addresses issue with video maps being drawn incorrectly.
- Updates
PositionModel
to run all calculations through the static.calculatePosition()
method and vastly simplifies internal logic.
- Updates
- n8rzz/atc#186 - Refactors the the function names in
FixCollection
to better fit their function.init()
toaddItems()
anddestroy()
toremoveItems()
- n8rzz/atc#194 - Adds gulp-cli and adds tools readme link to gulp issues with Windows
- n8rzz/atc#188 - Changes
routeString
torouteCode
inRouteModel
and moves.toUpperCase()
from the getter to.init()
- n8rzz/atc#175 - Updates
StandardRouteModel
to throw when entry/exit point doesn't exist within a collection and updates.setDepartureRunway()
to send therouteCode
toLeg
on instantiation - n8rzz/atc#134 - Prevents collision detection for aircraft that are outside of our airspace
- Originally reported in zlsa/atc#736
- n8rzz/atc#211 - Escape clears commands but not callsign if commands are present
- Originally reported in zlsa/atc#763
- n8rzz/atc#145 - Moves
_comment
blocks in airport json file to be within object the are describing - n8rzz/atc#151 - Streamlines flight number generation and adds new method to add new callsigns to the existing list
- n8rzz/atc#182 - Adds
_isNumber
check instead of!magneticNorth
insidePositionModel.calculateRelativePosition()
and theAirspaceModel
constructor.- Originally reported in zlsa/atc#754
- n8rzz/atc#196 - Adds additional handling to
StandardRouteModel._buildEntryAndExitCollections
to handle case whereentryPoints
andexitPoints
don't exist in theairport.sids
definition- Originally reported in zlsa/atc#760
- n8rzz/atc#132 - Ensures proper removal of aircraft from the runway queue(s) when that aircraft has been deleted.
- Originally reported in zlsa/atc#706
- n8rzz/atc#18 - Adds
FixModel
and static classFixCollection
for reasoning about airport fixes - n8rzz/atc#19 - Adds
StandardRoute
classes reasoning about SIDs and STARs - n8rzz/atc#82 - Moves
airlineController
andaircraftController
to instantiate from withinairportController
instead fromApp
- n8rzz/atc#88 - Enable airport load without bundling and moves
airportLoadList.js
out of thesrc
folder - n8rzz/atc#96 - Updates score calculations and how they are recorded
- n8rzz/atc#41 - Correct casing for Arrival and Departure factories
- n8rzz/atc#36 - Rename
AreaModel
toAirspaceModel
- n8rzz/atc#57 - Changes
StandardRoute
property nameicao
toidentifier
- n8rzz/atc#44 - Introduce early exit for airport load when airport data is not complete
- n8rzz/atc#60 - Adds git-flow strategy document
- n8rzz/atc#100 - Adds
BaseModel
- n8rzz/atc#101 - Adds
BaseCollection
- n8rzz/atc#45 - WMKK has misnamed star name
- n8rzz/atc#58 - Updates spelling in
.convertMinutesToSeconds[)
- n8rzz/atc#75 - Future aircraft path, when on ILS, wrong width
- n8rzz/atc#90 -
areas
is undefined inAirportModel
- n8rzz/atc#91 -
FixCollection.init()
does not clear current_items
if any exist - n8rzz/atc#108 - Aircraft strips show arrival airport in uppercase
- n8rzz/atc#109 - Updates
FixCollection.findFixByName()
to accept upper, mixed, or lower case fix name - n8rzz/atc#115 - Switching to a previously loaded airport does not clear previous airport fixes
- n8rzz/atc#191 - Fixes
parseElevation()
so that it does not return NaN when it is given the string'Infinity'
- Originally reported in zlsa/atc#756