Overview
The two main parts to Flight Code-X is the Studio the main interface to Create Scenarios, and the other is the runtime the plugin for X-Plane to load and run scenarios
- runtime location Resources>plugins>FlightCodex>64 lin.xpl or win.xpl
- studio location Resources>plugins>FlightCodex>studio FlightCodex-studio or FlightCodex-studio.exe
- scenarios should be save and loaded from Resources>plugins>FlightCodex>scenarios
- scenarios folder contains an assets folder for aircraft objects and sounds to be used with multiple scenario
- each scenario folder contains an assets folder for aircraft objects and sounds to be used with individual scenario
- each project is saved as a .simp with the same name as the folder containing
- after generation .simc and .sims files are created this is for the runtime ( if you want to share a scenario the .simp file is not needed for the runtime) assets will need to be shared as well
- more info in the Folder Structure section
Studio Interface: Main elements
- Node canvas
- Scenario data
- Properties
- Mini map
- Main menu
Main Menu
- File
- New - create new scenario Ctrl + 'n'
- Open - open scenario Ctrl + 'o'
- Save - saves scenario Ctrl + 's'
- Save as - save scenario first time or as a copy Ctrl + Shift + 's'
- Generate - will generate the scenario's .simc and .sims files
- import
- Edit
- undo - work in progress
- redo - work in progress
- copy - Ctrl + 'c'
- past - Ctrl + 'v'
- cut - Ctrl + 'x'
- Arrange
- align
- horizontal Alt +'h'
- vertical Alt +'v'
- distribute
- horizontal Alt +'d'
- vertical Alt + Shift + 'd'
- align
- View
- Mini-map - location in the canvas
- Style - light or dark theme
- Help
- Licence Manager - update key to unlock from demo or de-register machine to move to different computer
- Visit - go to flightcodex.com
- About window
Node Canvas
Navigation
- Middle mouse to scroll the canvas
- left click to select node - displays selected node's setting in properties
- left click and drag on canvas to box select multiple nodes
- left click on pin and drag to create link
- left click hold on node to move node or multiple selected
- backspace or delete to remove selected node/nodes or links
- right click or press 'a' key to add a generic node to canvas - change node type in Properties
Action Nodes
One time Actions when triggered
- generic
- Place holder node
- start
- sets a start point for the scenario
- all nodes connected to start nodes will execute on scenario run
- if no start nodes all nodes with out an input connection will execute
- sound
- Plays a wave file set by the path from the flight lab directory
- waits till sound is done before executing the next node.
- pause
- Pause or unpause the sim
- does not pause the scenario
- command
- Trigger selected commands form command list
- multiple commands can be added to this node
- edit objects
- Sets new location for objects
- multiple objects can be added to this node
- delay
- add a delay before executing the next node
- set data
- Sets new value to data refs
- multiple data refs can be added each with there own value
- condition
- branches the path based on conditions when checking data refs
- if all conditions are successful will continue down true path else will continue down false path
- stopwatch
- controls the stopwatch functionality
- start - starts and displays the stopwatch
- stop - stops the running of the stopwatch
- close - stops and turns off stopwatch
- reset - sets time to zero, clears laps and penalties
- lap - shows the time elapsed from for a lap
- penalty - add time to penalty accumulator
- controls the stopwatch functionality
- time control
- controls the selected timer trigger node
- pause - pauses the running of the timer
- resume - continue running the timer
- stop - closes and stops the timer will not execute any other nodes attached to timer trigger
- controls the selected timer trigger node
- monitor control
- turns on or off a monitor node
- stop
- ends and cleans up scenario
- removes objects, closes timers, data refs, commands and sounds.
- ends and cleans up scenario
Trigger Nodes
Action waits till condition are completed to continue to next node
- generic
- Place holder node
- timer
- starts a count down timer
- can be set to display the reaming time
- an arc can be added to the display
- set warning percent - turns timer display from green to yellow
- set caution percent - make the the timer display red
- starts a count down timer
- command
- when the command is triggered will execute next node
- create a command in the command list
- when the command is triggered will execute next node
- watch
- waits for data ref conditions to be met before continuing
- target
- wait till near a target either raw Geo location or objects Geo location from list
- window
- sets up a window at position that need to be flew through
- altitude - center point of the window
- altitude above and below - upper and lower bounds
- width - how wide is the window
- heading direction window is facing
- sets up a window at position that need to be flew through
- point
- sets a point in space
- altitude - center of point
- altitude above and below - upper and lower bounds
- distance to - radius to point to be within to trigger
- sets a point in space
- window
- wait till near a target either raw Geo location or objects Geo location from list
Monitor Nodes
Nodes that when active continue to monitor condition. can set repeat delay in seconds
- generic
- Place holder node
- watch
- waits for data ref conditions to be met before triggering next node
- will continue to repeat the condition check till turned off by action control node
Scenario Data
- scenario
- name - name that will be displayed in scenario brief
- (wip) - needs new loader
- description - a short summary of the scenario for the brief
- (wip) - needs new loader
- location - airport code to load when starting the scenario
- also used for scenario brief (wip)
- name - name that will be displayed in scenario brief
- aircraft
- aircraft name - name that will be displayed in scenario brief (wip)
- path - path to the aircraft .acf file must be contained within the X-Plane directory
- start parameters
- starting Geo location latitude, longitude (decimal format)
- starting heading - mag variance compensated
- altitude in meters sea level
- starting speed knots
- objects - list of objects for the scenario
- add or remove object from list with buttons
- select object to see properties in properties window
- object name - name to reference object by in scenario and other nodes
- path - path to .obj file built for x-plane best if in scenario > assets > objects folder in Flight Code-X plugin folder
- starting Geo location latitude, longitude (decimal format)
- starting pitch, roll and heading - mag variance compensated
- commands - list of commands for the scenario
- add or remove object from list with buttons
- select object to see properties in properties window
- command name - name to reference command by in scenario and other nodes
- description - short description of what the command is for
- path - command reference path of what X-Plane uses Resources > plugins > Commands.txt or set your own path for custom command
- Create Command check box - will notify the runtime to create the command needs a Trigger - Command node to be selected
- data references -list of data references for the scenario
- add or remove data references from list with buttons
- select data references to see properties in properties window
- data references name - name to reference data references by in scenario and other nodes
- path - data references reference path of what X-Plane uses Resources > plugins > DataRefs.txt or set your own path for custom data ref
- type - what data type is this reference int, float or double referenced in DataRefs.txt or user defined for custom
- array check box - defines if data ref is an array or not
- create data ref check box will create a custom data ref for this scenario
- sounds - list of sounds for the scenario
- add or remove sounds from list with buttons
- select sound to see properties in properties window
- sound name - name to reference sound by in scenario and other nodes
- path - path to sound to be loaded by the run time only plays .wav files
- caption - a note about the sound
- (wip) - display text on the screen
Folder Structure
- Resources/ (inside of X-Plane install location)
- plugins/ (X-Plane plugin)
- FlightCodex/
- 64/
- lin.xpl (runTime)
- win.xpl (runTime)
- Logs/
- logs for Flight Code-X
- Studio/
- FlightCodex-studio (Scenario builder and editor - Linux)
- FlightCodex-studio.exe (Scenario builder and editor - Windows)
- Scenarios/
- Assets/ (used across multiple scenarios)
- Sounds/
- Objects/
- Aircraft/
- Scenario_1/ (Individual scenario)
- Assets/ (used local only to scenario)
- ... (similar structure as Assets under top level Scenarios)
- Scenario_1.conf (generated from studio - Scenario configuration required for plugin)
- Scenario_1.sim (generated from studio - Scenario script required for plugin)
- Scenario_1.spro (studio project file - Scenario project not necessary to run scenario from plugin here for organization )
- Assets/ (used local only to scenario)
- Learning_To_Takeoff/ (group of related scenarios)
- Assets/
- ... (similar structure as Assets under top level Scenarios)
- Scenario_1/
- ... (similar structure as Scenario_1)
- Scenario_2/
- ... (similar structure as Scenario_1)
- Assets/
- Lesson_grou/ (group of related scenarios)
- Assets/
- ... (similar structure as Assets under top level Scenarios)
- Scenario_1/
- ... (similar structure as Scenario_1)
- Scenario_2/
- ... (similar structure as Scenario_1)
- Assets/
- Another_Lesson_Group/
- ... (similar structure as Learning_To_Takeoff)
- Assets/ (used across multiple scenarios)
- 64/
- FlightCodex/
- plugins/ (X-Plane plugin)