Actions:
ESRI Sat
📋 SYSTEM AUDIT LOG (LIVE)
📥 IMPORT VALIDATION REPORT
✈️
Initializing systems...
📦 AIRFIELD OBJECTS
Loading object list...
🩺 AIRPORT HEALTH CHECK
Click RE-SCAN to start the analysis..
📈 2D GlideSlope & Terrain Profile Visualizer
Ready. Fetching elevation profile...
3.0° Glidepath 2.5°-3.5° Sector Terrain Profile Runway Surface Touchdown Point +1km RESA
Hover mouse over profile chart to inspect height & terrain clearance ⣿ Drag

🛩️ GJi Airport Designer v2.1.483 Comprehensive Guide

Little Helper for the Airport Scenery Design

1. Top Level Functions

1. SCHEME & 2. DICT: The project foundation. Loads schema definitions and GUID dictionaries. In the online version, these are loaded automatically (indicated by green borders). You can overwrite them anytime by uploading your own custom files.
IMPORT (📂): Universal importer for .JSON and .XML files. Auto-reconstructs object hierarchies.
EXPORT (JSON): Saves your current work. Use this as your primary save format.
EXPORT (XML): Generates professional BGL-ready XML for MSFS.
PRJ (📦): Creates a complete MSFS project ZIP structure.
3D (🧊): Opens 3D Generator for rapid building blocking.
MAP (🌍): Toggles between map providers (OpenStreetMap, Satellite, Voyager, OpenTopo, Terrain, Aero). Hover to see current provider.
HEALTH (🔍): Health check system. Scans your airport for structural errors, overlaps, and invalid properties.

2. Toolbox & Creation

Create Objects

📍 Taxi Point: Places a node on the map. Use Right-Click to place.
📏 Taxi Path: Connects two nodes. Click dot A then dot B to create a link. Supports Bezier Curves via parameter window.
🅿️ Parking: Places an aircraft parking spot. Supports Airline Codes and Pushback directions.
NEW Type Tools: Select Runway, Apron, etc. and hit NEW. Follow the bottom hint banner for instructions.

Tools & Measurements

Edit Vertex: Drag the yellow handles to reshape runways, aprons or move nodes.
Insert Point: Click on any edge or path to split it and add a new vertex point.
🗑️ Delete Obj: The red trash button in the toolbox removes selected objects. Use DEL key as shortcut. Requires confirmation if vertices or group children are involved.
🔍 Health Check: Scans for structural errors like orphan points, index conflicts, or invalid object properties. Use the RE-SCAN button to refresh validation after making fixes.
Ruler: Toggle a draggable visual ruler overlay. Double-click the toolbox button to reset its position.
Undo: Revert your last Map edit (tracked up to 10 steps back).
⚙️ Settings: Change global airport defaults (elevation, user email, ID limits).

3. Interaction Reference

Select: Left-Click on map object or in the Object List.
Multi-Select: Hold SHIFT + Left-Click to select multiple items.
Precision Move: Select object(s), hold CTRL and use Arrow Keys.
Delete Vertex: In Edit mode, hold ALT and click a vertex handle.
Move BG: Hold CTRL and drag the background image or its calibration handles.
Hint Banner: Pay attention to the notification at the bottom when a tool is active. It provides step-by-step guidance.

4. Object & Parameter Info

📦 Airfield Objects Window

List view of everything in your airport. Features category folding, search filtering, and hierarchy grouping. Click the eyeball (👁️/❌) to toggle visibility on the map. Double-click the object name to instantly jump to and center that object on the map.

⚙️ Sidebar Editor

Pinning: Keeps the editor visible while you work on the map.
Batch Mode: Check the checkboxes next to multiple parameters and hit BATCH-SYNC. This will push those specific values to all selected objects instantly!
Save vs Autosave: Always hit Save or Batch-Sync to persist your changes before switching master modes.

5. Specialized Tools

🧊 3D Placeholder Generator & Central modelLib Workflow

Create temporary footprints on the map. Extrude layers by defining height, color, offset, and opacity. Useful for blocking out terminals, hangars, or custom shapes.
Fixed GUID Workflow (Central modelLib): When creating or modifying a 3D model, its MSFS GUID is preserved across edits and re-imports. This prevents modelLib mismatch and invisible buildings.
Inspector GUID Controls: In the Inspector for LibraryObject / SceneryObject, you can:
• 🔒/🔓 Lock / Unlock: Protect the GUID from accidental edits or unlock it to edit.
• 🎲 Re-Roll GUID: Generate a fresh MSFS GUID when needed.
• 📋 Copy: Instantly copy the GUID to clipboard.

🩺 Health Check

Scans for structural issues: Orphans (unconnected points), missing names, overlap conflicts. The CLEANUP button automatically fixes redundant data.

🔍 Layer & Altitude Analysis

Located inside the sidebar of Polygons. Analyzes vertical drawing order. Use the SNAPPING feature to align 3D objects or nodes to the exact height of a polygon.

6. Advanced Background (BG)

Calibrate your blueprint by dragging handles. Once calibrated, use CTRL+Drag on the image to move it or the handles to scale/rotate with fixed focus points.

7. TextMarking Suite & Fine-Tuning

📐 Multi-Select & 1-Click Snapping

Multi-Selection: Hold CTRL or SHIFT and click signs on the map or in the list to select multiple signs. Alternatively, click ➕ Select Nearby (25m) to automatically select adjacent markings within 25 meters.
Anchor Sign: The primary active sign acts as the Anchor (highlighted in green with 👑). Snapping and attribute matching use this anchor as the reference.
↔️ Side-by-Side: Snaps all selected signs along the anchor's horizontal axis (preserving exact sequence, orientations, and individual headings).
↕️ Stacked: Vertically stacks signs in a neat column behind/under each other along the heading axis.
Snap Gap: Configurable spacing in meters between signs (default 0.00m for seamless adjoining signboards).

✨ 1-Click Attribute Alignment

📐 Align Heading: Instantly aligns the heading of all selected signs to match the Anchor sign.
☑️ Keep 180° opposite facings (e.g. signs viewed from top): When enabled (checked by default), signs that face in the reverse direction (heading difference between 90° and 270°, such as back-to-back signboards or signs designed to be read from opposite taxiway approaches) are preserved. They will be aligned parallel along the same axis at (Anchor Heading + 180°) without being flipped over. Uncheck this box if you want all signs to strictly face the exact same angle.
📏 Match Scale: Copies all dimensions, signboard width, height, scale factor, font size, letter spacing, line spacing, and internal padding from the Anchor sign to all selected signs, guaranteeing consistent proportions across the cluster.
🎨 Match Color & Style: Harmonizes the visual styling from the Anchor sign to all selected signs, synchronizing text color, background plate fill, and border outline styling.

🎯 Single & Cluster Fine-Tuning

Heading Indicator as Primary Direction: In the Fine-Tuning (Feinjustierung) tools (for single signs and multi-sign clusters), all movement directions are strictly oriented relative to the sign's Heading Indicator (the orange directional needle on the map):
  • Forward (⬆️): Moves in the direction the heading needle points (front).
  • Backward (⬇️): Moves opposite the heading needle (rear).
  • Left (⬅️) / Right (➡️): Moves perpendicularly relative to the heading needle facing forward (left / right).
  • Rotate (↺ / ↻): Precision rotation by 0.5°, 1.0°, 5.0°, or 15.0°.

8. SDK Targets: MSFS 2020 vs MSFS 2024

🎯 Target Architecture Overview

The designer allows you to target both Microsoft Flight Simulator 2020 and Microsoft Flight Simulator 2024 SDK standards. While the underlying airport layout geometry is largely shared, key differences exist in package structure, custom ground markings, and asset libraries.

📦 MaterialLibs & Ground Markings (TextMarking / StandMarking)

MSFS 2020 Target:
• Custom ground markings such as TextMarking and StandMarking rely on projected custom materials.
Deterministic Locked GUIDs: Marking materials now use deterministic content-hashing (locked GUIDs derived from text, colors, and dimensions). As long as you don't edit or add markings, their GUIDs remain 100% identical across all XML exports and editing sessions.
Smart Change Detection: When exporting XML in MSFS 2020 mode:
  – Unchanged MaterialLibs: Redundant ZIP downloads and popups are automatically skipped when marking materials are unchanged (existing project materials remain valid without any re-copying).
  – Updated MaterialLibs: When a marking is added, modified, or removed, an updated MaterialLibs_TextMarkings_MSFS2020_*.zip is downloaded automatically, and a toast notifies you to unpack it into PackageSources/MaterialLibs/textmarkings to update your project.
Full Project Export (PRJ / 📦): Full project ZIP exports always generate and include the complete, up-to-date MaterialLibs package ready to compile.
MSFS 2024 Target:
• MSFS 2024 uses native procedural surface markings and streamlined airport XML elements without requiring separate legacy MaterialLibs packages for standard text and stand markings.
• No extra material folder deployment is needed for text/stand markings under the MSFS 2024 workflow.

🧊 3D Models & modelLib Management

Central modelLib Workflow:
• For both MSFS 2020 and MSFS 2024, custom 3D models (glTF and XML) are managed in your project's modelLib directory.
• Using the Central modelLib workflow, keep your master models in a central local folder and copy the modelLib folder into the respective MSFS project.
• Thanks to Fixed GUID persistence in the 3D Generator and Inspector, existing GUIDs are preserved across model updates and re-imports, preventing GUID mismatches or invisible objects in either simulator.

⚙️ XML Export Principle (MSFS 2020 Target Mode)

Strict MSFS 2020 Schema Filtering:
• When exporting the airport XML in MSFS 2020 target mode, the exporter strictly outputs only those objects, parameters, and attribute values supported by the official MSFS 2020 BGL compiler.
Omission of MSFS 2024-native features: Any tags, attributes, or object structures exclusive to MSFS 2024 (e.g. extended surface parameters or 2024-only procedural markings) are safely omitted from the 2020 XML stream to avoid compiler rejections and syntax errors.
Adaptive Fallbacks & Transpilation: Where possible, newer features are adapted for 2020 compatibility. For example, TextMarking and StandMarking are translated into projected mesh / custom material assignments backed by the generated MaterialLibs, ensuring visual parity in the sim.

📋 Key Differences Checklist

Feature / Component MSFS 2020 MSFS 2024
Ground Markings (Text & Stand) Requires generated MaterialLibs textures & XML Native procedural elements (No MaterialLibs needed)
Package Folder Deployment Copy MaterialLibs + modelLib into package source Copy modelLib only into package source
3D Model GUID Handling Fixed MSFS GUID (Central modelLib) Fixed MSFS GUID (Central modelLib)
XML Schema Compatibility MSFS 2020 BGL compiler standard MSFS 2024 extended properties supported
Pro Tip: Use the Overlay Log (📑 LOG) to see real-time feedback on your actions and catch errors during import/export.

9. Tutorial - The basic steps to your Airport

In this section, we will build a simple example airport step-by-step. Follow these instructions to get familiar with the core workflow of the GJi Airport Designer.

Step 1: Preparation & Information Gathering

Search for relevant information about your desired airport. Use the satellite map in the tool, consult official AIPs (Aeronautical Information Publications), and gather reference images.

Step 2: Placing the AIRPORT Object

The first step in any project is to place the AIRPORT object. This acts as the anchor and parent container for all other elements of your scenery.

Step 3: Flattening the Terrain

Place a Polygon to flatten the terrain and exclude default auto-gen objects (like trees or default buildings) that might overlap with your custom airport.

Step 4: Creating the Airport Grounds

Draw an Apron covering the general airport area. Assign a natural texture to it, such as Sand, Stone, or Grass, to seamlessly blend it with the surrounding environment.

Step 5: Adding the Runway

An airport isn't complete without a place to land! Place a Runway object, configure its length/width and surface material, and don't forget to add RunwayStarts at both ends so you can spawn there in the simulator.

Step 6: Laying out the Taxiway Network Area

Place another Apron specifically for the taxiway and parking areas. Assign a solid surface material like Concrete or Asphalt to contrast with the grassy surroundings.

Step 7: Routing the Taxiway Network

Add TaxiwayPoints, connect them with TaxiwayPaths, and establish TaxiParking spots to define where AI traffic and players will move and spawn.

Step 8: Adding 3D Objects

Bring your airport to life by placing 3D elements like hangars, a tower, or a windsock using LibraryObjects or SceneryObjects. It instantly makes the scenery feel real!

Step 9: Export & Flight Simulator Build

Once you're happy with your design, click on EXPORT (XML). Save the generated XML into your MSFS Project's PackageSources/Scene folder, then build the package inside the Flight Simulator to fly your creation!

(More detailed instructions and illustrations will be added here step-by-step in future updates.)

10. File Types & Project Management

How to Save & Load Your Progress

To ensure you never lose your work, always save your project as a JSON-Airport file. The XML export is for the simulator, but the JSON file contains all the tool's internal metadata and editing features.

  • Save / Backup: Click the EXPORT (JSON) button. This downloads your current progress as a .json file to your computer. Store it safely!
  • Load / Resume: Click the IMPORT (📂) button at the top and select your previously saved .json file. Your airport will load exactly as you left it. You can also import standard MSFS .xml scenery files to load existing airports into the designer!

Glossary of File Types

  • JSON-Airport: Your main save file. Contains all objects, coordinates, and designer configurations. Always use this to resume work.
  • JSON-Scheme: The structural blueprint for the tool. Tells the designer which attributes (like length, width, surface) belong to which objects. Usually loaded automatically from the cloud.
  • JSON-Dictionary: A library file containing all known 3D Object GUIDs and names. Usually loaded automatically from the cloud.
  • XML-Export: The compiled code format meant only for Microsoft Flight Simulator. You place this in your MSFS PackageSources/Scene folder to build your airport in the simulator.
  • PRJ-Export (📦): Creates a ready-to-use, complete MSFS project folder structure packed in a ZIP file. Ideal if you are starting a brand new project and need the full folder layout (including PackageDefinitions and PackageSources).
  • modelLib: An MSFS folder inside your project that stores custom 3D models and their textures.
  • materialLibs: An MSFS folder (specifically for MSFS 2020) that stores custom ground markings (like TextMarking or StandMarking materials). Uses deterministic locked GUIDs so you only need to update this folder in your MSFS project when markings are added or modified.

Legal & Privacy (Impressum)

Legal Notice / Responsible for Content:
[Your Name / Your Company]
[Your Address / Street & Number]
[Zip Code, City, Country]

Contact:
Email: [Your Email Address]

Privacy Policy:
This application runs entirely locally in your browser (client-side). No user data is collected, no tracking cookies are set, and no user or usage data is stored or analyzed on our servers. All imported files and edited projects remain exclusively on your local device until you manually export them.

Powered by:
This tool was developed with the assistance of Google Gemini and Google AI Studio.

Welcome to GJi Airport Designer! 🛩️

Please note that this tool is currently in early Draft/Development stage. You might encounter bugs, unfinished features, or unexpected behaviour.

If you encounter any issues or errors, please feel free to report them using the contact email provided in the HELP (?) tab -> Legal & Privacy section.

It is highly recommended to save and backup your work frequently via the JSON Export (💾) feature.

Enjoy now Designing your (virtual) Airport,
so you may departure from it soon!
Claus "MumbaikarJi" and GJi