Skip to content

Commit 3e8d389

Browse files
Initial commit: Split from EndlessATC/Airports
0 parents  commit 3e8d389

File tree

8 files changed

+2778
-0
lines changed

8 files changed

+2778
-0
lines changed

README.md

Lines changed: 580 additions & 0 deletions
Large diffs are not rendered by default.

cifp_config.ini.example

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
# this is an example config for the cifp parser written by Captain Tux - https://github.com/CaptainTux
2+
# the latest version will be available at https://github.com/AdamJCavanaugh/EndlessATCAirports
3+
4+
# make sure you rename this file to cifp_config.ini
5+
6+
# this is a parser for the CIFP, published by the FAA
7+
# it provides SIDS and STARS for airports in the USA for EndlessATC
8+
# it also generates routes to final, i.e., procedures where pilots navigate to final from an IAF
9+
# the download of the current version is available here:
10+
# https://www.faa.gov/air_traffic/flight_info/aeronav/digital_products/cifp/download/
11+
12+
13+
# make sure to change this to point at the right file (relative path works)
14+
[CIFP_FILENAME]
15+
filename = CIFP/FAACIFP18
16+
17+
# put your airports here
18+
[airports]
19+
kmsp
20+
21+
# pretty self explanatory, apch_default_top_alt is the top altitude to cross an IAF
22+
[defaults]
23+
star_top_alt = 13000
24+
star_top_speed = 280
25+
apch_top_alt = 6000
26+
max_approach_alt = 2500
27+
max_approach_speed = 200
28+
29+
# pretty self explanatory, define entrypoints with bearing, minimum altitude and speed
30+
# entries should look like this: luccy = {"bearing": "360", "alt": "11000", "speed": "280"}
31+
# note the quotes around the numbers, otherwise you'll get a JsonDecodeError
32+
[entrypoints]
33+
luccy = {"bearing": "360", "alt": "11000", "speed": "280"}
34+
bluem = {"bearing": "180", "alt": "11000", "speed": "280"}
35+
twinz = {"bearing": "090", "alt": "11000", "speed": "250"}
36+
ollee = {"bearing": "330", "alt": "11000", "speed": "250"}
37+
zibby = {"bearing": "180", "alt": "10000", "speed": "250"}
38+
kkilr = {"bearing": "090", "alt": "12000", "speed": "280"}
39+
bayks = {"bearing": "090", "alt": "12000", "speed": "280"}
40+
nitzr = {"bearing": "180", "alt": "12000", "speed": "280"}
41+
shonn = {"bearing": "270", "alt": "11000", "speed": "250"}
42+
ofson = {"bearing": "250", "alt": "11000", "speed": "280"}
43+
trget = {"bearing": "180", "alt": "11000", "speed": "250"}
44+
45+
# aircraft on an approach procedure will go no faster than alt_min_speeds[a] if the crossing restriction is aob a
46+
[alt_min_speeds]
47+
4000 = 200
48+
49+
# specify final approach fixes with final altitude, speed and distance from the airport to intercept the ILS
50+
# some final fixes on published charts might be too close to the airport
51+
# in those cases aircraft might not be able to fly the approach in EATC, so you have to specify your own fixes
52+
# often the last fix before the FAF should be sufficient (this is usually around 10 miles out)
53+
# entries should look like this: ketam = {"final_length": "9", "alt": "2300", "speed": "200"}
54+
# note the quotes around the numbers, otherwise you'll get a JsonDecodeError
55+
[final_app_fixes]
56+
ketam = {"final_length": "9", "alt": "2300", "speed": "200"}
57+
hamml = {"final_length": "9", "alt": "3000", "speed": "200"}
58+
zesty = {"final_length": "9", "alt": "3000", "speed": "200"}
59+
arjae = {"final_length": "10", "alt": "2800", "speed": "200"}
60+
cusac = {"final_length": "9", "alt": "2500", "speed": "200"}
61+
fates = {"final_length": "9", "alt": "2600", "speed": "200"}
62+
aabez = {"final_length": "9", "alt": "3000", "speed": "200"}
63+
sammz = {"final_length": "9", "alt": "3000", "speed": "200"}
64+
rozee = {"final_length": "9", "alt": "3000", "speed": "200"}
65+
66+
67+
# replace runway names with your own runway names
68+
# the runway names will consist of the runway prefix (which is specified per airport below)
69+
# followed by the runway name, which you can look up in ./cifp_out/apt_data/cifp_{icao}.csv
70+
# look for the fields which have 'G' in the 'type' column
71+
[replace_runway_names]
72+
kmsp_rw17 = KMSP_17_35
73+
kmsp_rw35 = KMSP_17_35, rev
74+
kmsp_rw12l = KMSP_12L_30R
75+
kmsp_rw12r = KMSP_12R_30L
76+
kmsp_rw30r = KMSP_12L_30R, rev
77+
kmsp_rw30l = KMSP_12R_30L, rev
78+
kmsp_rw04 = KMSP_04_22
79+
kmsp_rw22 = KMSP_04_22, rev

0 commit comments

Comments
 (0)