- P3Dv4: SimObjects path in add-on.xml is now dynamically set during install time, fixing missing objects when installed on other drive than C:
- Fixed bug in the object injection routine resulting in missing objects
- Added “LVar” interface to query variables of add-on aircraft, e.g. FSLabs A32X Parking brake and beacon states
- Added support for P3D v4.4+ MDL files
- Fixed bug where UTLive aircraft were not added to the SimObjects list
- Jetway Control System
- Fixed bug where SODE would not recognize the GSX transmitted raw gate name when a custom designator is defined in the xml, resulting in a reset of the jetway
- Enhanced API to transmit jetway docking status and served door IDs to GSX
- Fixed bug in crossing jetway calculation and detection
- Improved automatic multi-jetway assignment logic using the fixed crossing jetway code
- Added ‘Shallow Angle’ jetway trajectory. If the final jetway bridge heading and the aircraft heading form a “shallow angle” (smaller than 20 degrees), then jetway will now move in a two-step manner: partially rotating and fully extending, and then rotating to the door. This avoids the “scraping” of the jetway along the fuselage during extension.
- AI Detection
- Fixed bug where AI Traffic data returned an unexpected user aircraft object ID, resulting in loss of AI detection capability
- Fixed bug where sound could not be found due to the case-sensitive SimTitle
- Fixed bug where GSX created SODE jetway would not move under certain circumstances
- Fixed bug where an environmental data probe would not be reloaded and its associated client objects were lost
- Fixed bug where negative AirTemp values were not properly read
- Fixed some bugs where sound was not stopped from external app (GSX) for reset or premature removal cases
- Jetway Control System
- Fixed bug where in certain situations, the jetway is not properly initialized
- Fixed bug where AI object placement data was not updated
- Added support for VOXATC driven AI aircraft
- Improved AI-to-Jetway assignment logic in case of multiple jetways and multiple doors
- Improved jetway detection routine for AI aircraft using stand data
- Added support for multi-jetway/multi-door operations for AI objects
- Added support for automatic docking and undocking of jetways for the user aircraft. Two ways to trigger:
- Manually via the SODE text-menu
- Automatically using aircraft state variables (Parking brake set, all engines off, beacon off for docking; beacon on for un-docking)
- Added check for crossing jetways when using auto-dock feature
- Refactored and improved the entire jetway logic code
- Added MD-80 series and Concorde to list of supported aircraft
- Fixed VDGS activation logic when aircraft is already parked at stand
- Fixed bug where xml files using case-insensitive SimTitles caused objects not to appear in the sim. SODE does now compare the simtitles ignoring the case, however developers are reminded to use the exact simtitle as defined in the sim.cfg, including case!
- Fixed bug where SODE would not launch when the original Prepar3D.exe was renamed to prepar3d.exe. Again, SODE now checks the exe file name ignoring the case.
- Fixed bug where the Platform Manager would warn users of misconfigured P3Dv4 path although P3Dv4 was not installed on the system.
- Added Parking brake detection also for FSLabs A32X (actual brake position, not parking brake flag variable)
- Fixed bug where certain sim.cfg based SimObjects were marked as “not installed” and thus not showing up in the simulator
- Re-added support for aircraft.cfg based SimObject injection
- Added process watchdog to reliably determine running/shutdown/crashed state of the simulator, removed former SimConnect pipe watchdog
- Added monitoring of user aircraft beacon light and engines RPMs for use in future auto-docking feature
- Added Auto-Stand-Selection when parked at the stand with parking brake set and calling SODE menu
- Added ‘Reload’ event to use for external applications through the API (GSX)
- Changed handling of customized key-combinations (used for calling the SODE menu) to always search for objects, even if wrong key-combination is used
- Example: Before, at Drzewiecki Design airport TAB+S was useless as you’d need to use SHIFT+D. Now use can use either key combo at any airport!
- Fixed bug where user aircraft got warped to some random position when a density altitude object was in the vicinity (Big Bear Airport L35)
- Fixed bug where seasonal data updates were disabled when SimObjects were missing on the harddrive
- Fixed issue where the same customized parking was listed multiple times in the menu when parking was defined in different xml files
- Fixed bug where day of week Sunday was not properly recognized in FSX
- Completely revised the concept of injecting SimObjects!
- Injection only takes place when simulator has finished loading after position reset/init. This should solve floating AGL defined objects since the underlying mesh has loaded when injection takes place.
- Seasonal updates are now suppressed when injection of all objects is not finished, eliminating possible crash of application.
- Injection is now split into chunks of 10 objects to improve load on SimConnect and hence reduce stutters.
- Added existance check of SimObject model files on the harddrive! Before, if the model was missing, the simulator would pause noticeably. Now, if no model is found, SODE replaces it with a placeholder model (big red cross) to indicate a missing model file. This also prevents the pause/stutter.
- SimulationBubble now has a fixed upper limit of 18’000ft. SODE stops updating/loading object above that altitude. Overflying a SODE airport at cruising altitudes will not load all objects on the ground anymore.
- SimulationBubble updating improved from being time-based to event-based. Event does only fire when a certain distance is travelled. Before, the distance was checked at fixed time intervals.
- Jetway Control System
- Aircraft exits are now sorted from front to back along the fuselage when displayed in the menu
- Improved custom designator handling
- Fixed incorrect setting of ‘docked’ status flag and double toggling of flag!
- Detection of upper doors improved by increasing vertical threshold
- Improved automatic jetway detection logic for AI and the new auto-stand-selection function
- Improved CustomDesignator handling when incomplete data is passed
- If custom number is not specified (only the name), the number will be set to base AFCAD/ADE parking number
- More error checking added and logged
- Checking of supplied AFCAD/ADE parking data is now very strict! If incorrect format found, the parking position is ignored.
- Improved CustomDesignator handling when incomplete data is passed
- Added support for traffic-light style docking system (as seen in KSFO)
- Enhanced stop position assignment supporting single aircraft types and/or groups of aircraft
- Added B717 support
- Existance of a VDGS at a parking position can be queried through the SODE API
- Platform Manager
- Logs are generated for each platform separately
- Fixed checking order of registry entries. Checking 64-bit before 32-bit now. This helps detecting P3Dv4 even in misconfigured registries having a P3dv4 entry in the 32-bit part of the registry.
- Added SimConnect check on launch with result displayed in the application title bar.
- Added automatic removal of possible AppCompatLayer registry setting of the SimObjectAnimationModule.dll.
- Settings file ‘SimObjectDisplayEngine.ini’ is now generated automatically when user runs SODE the first time. For any other case, the Platform Manager leaves the file alone and only updates completely new entries or removes legacy settings. The user’s settings are now untouched when updating SODE in the future.
- Removed SimObjectDisplayEngine.ini settings file from being part of the installer. In future, the settings file is managed by the Platform Manager (see above)
- Added the replacement SimObject helper model for missing models
- add-on.xml now properly encoded in UTF-8-BOM, before it was UTF-8 only
- PlatformManager: Fixed Registry key handling when trailing backslash was missing
- General: Fixed aircraft.cfg parsing when a comment is present on the same line
- General: Main object injection loop is now protected from interrupts from the seasonal data update. This fixes double injections of the same object
- DensityAltitudeDisplay: Output is now rounded to the next multiplier of 10
- Radio-Controlled Objects: Grouped SimObjects with common radio-controlled visibility are now correctly handled
- PlatformManager: Fixed P3Dv3 registration issues
- Environmental Data Probe: Fixed an issue where multiple near-by data probes within the SimBubble would not load correctly.
- 64-bit Support: SODE now supports P3D v4 64-bit! The SimObjectAnimationModule.dll, which is responsible for the jetway animation, was ported to 64-bit. SODE will use the 32-bit or the 64-bit version of the dll depending on the sim that is running.
- Platform Manager: Added support for P3D v4
- Platform Manager: Using the P3D v3/v4 native add-on.xml mechanism to install SODE. SODE does not touch any of the dll.xml, exe.xml and simobject.cfg files anymore!
- Jetway Control System: Fixed the incorrect handling of multi-jetways when created by an external app (GSX)
- Jetway Control System: AFCADGateName xml attribute is now converted to the expected format internally
- API: Enhanced API for GSX, allowing linked SimObjects
- XML: Added possibility to define sim-specific models in the xml
- XML: Fixed incorrect sequencing of request IDs
- Watchdog: Changed the launch condition to be after SimConnect connection is established iso fixed delay after SODE startup
- Folder Manager: Fixed a bug during collection of aircraft.cfg data used for AI detection
- Variable Driven Rotation: Removed animated transition between two values!
- Conditional Visibility Wind: Fixed a crash when a single wind value was defined in the xml instead of a range
- General: Fixed handling of aircraft.cfg with incorrect ref_point data
- General: Fixed double injection of SimObjects when a variable update occured during main injection loop.
- Internal Build, no public release
- Jetway Control System: Added new feature “Linked SimObject”! An other SimObject can be “attached” to the jetway which opens up new possibilities such as dynamic gate number display on top of the jetway
- Jetway Control System: Optional AI Traffic Detection now featured in public! While it has been built-in for several versions already, some “showstopper” issues are fixed now (crash at sim exit)
- Jetway Control System: Added hybrid jetway type support (mix of A and N jetway)
- Jetway Control System: Added stairs handling for T-Type jetways
- Jetway Control System: Fixed jetway retraction bug when jetway needed to back up during docking
- Jetway Control System: Refined the IK solving computation of the different jetway types
- AnimationModule: Fixed crash when exiting simulator while jetway(s) still moving
- General: Disabled Secondary Hot-Key SHIFT+VK_MINUS per default (setting the entry to “NONE”). However it is still possible to define a secondary hotkey!
- General: Added small delay during injection of SimObjects in order to not overload the SimConnect server with creation calls -> ensures smooth injection of hundreds of jetways
- General: SODE warns user via message box in case of a still running SODE module from a previous (crashed) sim session
- API: Refinements added for support of the Linked SimObject feature
- API: Fixed removal of SODE menu selected jetways when selected by GSX menu again. However, GSX users should always use the GSX menu exclusively for jetway operation!
- PlatformManager: Added many exception cases to be reported by a new log file. Also, the error code numbers in the pop-up window are now translated to text for better comprehension
- PlatformManager: Added check for numbering sequence for the SimObject paths (especially for the FSX.cfg) and added repair function to automatically fix the number sequence.
- PlatformManager: Added new settings window in the “Tools” section to edit the SimObjectDisplayEngine.ini
- Installer: Added message box to inform user to close the PlatformManager after registering SODE
- Jetway Control System: Fixed bug when Jetway is forced to move to the horizontal position but wasn’t able to do so because of limited range
- VDGS: Changed stop position calculation for the N and T type jetways to use the door location and not the nosewheel position
- VDGS: Added moving aircraft symbol support
- XML: Made XML parser more tolerant when reading AFCADGateName attributes -> Automatically adds missing underscores
- Environmental Data Probe: Fixed bug where data was still requested from a removed EDP
- SimBubble/XML: Added Protection zone for SimBubble update mechanism. Used for animation states that need to persist from far away distances
- Installer: Fixed FSX-SE and FSX detection (once again…)
- Logging: Added more messages concerning AI detection
- Jetway Control System: Added support for 2 new jetway types (fixed leg and T-shaped bridge)
- Jetway Control System: Apron Drive jetways retract the bridge first when needed (if the aircraft is very near to the jetway). Also, the bridge will go level before doing rotations in order to avoid floating/sinking wheels
- Jetway Control System: Fixed bug where the jetway head would snap to the rightmost position when rotation angle very small
- AI Detection: Changed jetway swapping mechanism to first check if IK problem can be solved, then swapping the models
- Modelling: Animation state (TriggAnim) of a master SimObject can be synced with other SimObjects via PartVisibility flags
- General: Fixed SODE crash when P3D Avatar was set as default vehicle
- General: In-game windows now showing the version number
- Logging: More verbosity added to the log and fixed a couple of string conversion errors
- PlatformManager: Fixed bug where FSX-SE and FSX dual detection failed during install/uninstall leading to wrong simobjectpath numbering in fsx.cfg
- XML: Option added to ignore the 12km trigger radius filter for listing in the text-menu (TriggerableAnimation)
- Modelling: Part Visibility flags added for the end states of the forward and reverse animations.
- SODE and PlatformManager: FSX-SE is now properly detected both in single and dual installations
- GroundPolygonShift: Fixed bug where the ground poly was falling back to ground level when moving far away
- Text-Menu: Fixed bug where a SimConnect exception (31) was thrown when trying to remove a menu that was not displayed initially
- AI Detection: Fixed bug during swapping of static to dynamic jetway model
- XML: Option added to ignore the 12km trigger radius filter for listing in the text-menu (TriggerableVisibility)
- XML: Multiple placements of an identical SimObject simplified by creating multiple <Placement/> nodes
- XML: New <GroundPolygonShift> node added
- Jetway Control System: Jetway wheel animation supported
- Text-Menu: When menu is displayed, TAB+S keystroke will close the menu
- SoundEngine: Fixed “no-sound” bug after swapping of static to dynamic model
- Improvements to the overall SODE installer package to make it more user friendly
- Jetway Control System introduces a model swapping technique to increase performance and save memory (VAS)
- API implemented to allow GSX to communicate with SODE. With this, GSX users are able to control SODE compliant jetways from within the GSX menu
- Own aircraft door database introduced. Users do not need to edit aircraft.cfg files anymore
- Major structural changes in the folder organization! SODE is now installed outside of the simulator root folder. The benefit of this is that one SODE install can now drive multiple simulator platforms (FSX, FSX-SE, P3D)
- Jetway Control System rewritten to avoid the “pause-command stutters”
- SODE is a single-instance executable, meaning it will not allow multiple SODE processes to execute at the same time
- ConditionalVisibility: Variables ‘Day of Month’, ‘Day of Week’ and ‘Year’ added
- Bug fixes improving overall stability with SimConnect server connection
- When calling the in-game text-menu, the triggerable objects are now sorted with respect to their distance to the user-aircraft, with the nearest one on the top of the list
- Introduced a SimObjectDisplayEngine.ini file to customize certain settings
- New requirement for the sim.cfg: ‘Module=SODE’ in the [General] section
- Bug fixes
- Jetway Engine added! A new SimObjectAnimationModule.dll is introduced which is needed by the Jetway Engine
- ConditionalVisibility: New variable ‘Time’. Supports UTC (Zulu) time as well as local time (LT)
- Main Module now shuts itself down, when connection to Simulator is lost, e.g. Sim has crashed. This is to avoid multiple running SODE processes in the background when restarting the sim
- Bug fixes
- SoundEngine added
- Pilot controlled lighting added
- In-game text-menu should now be called with “Tab+S”! Old command is still supported.
- Introduction of customization options for Commercial Developers:
- Encoded file format (compiled xml Definition File) in order to hide implementation details
- Customised In-Game Window, showing only triggerable objects of a particular scenery, using a dedicated keyboard shortcut
- Usage of ‘ClientList‘ in conjunction with ‘EnvironmentalDataProbe’ clarified
- Internal Build, no public release
- ConditionalVisibility: Variable ‘TimeOfDay’ added