Progress Report 2 (New Video - Airfield AI and Autopilots!)
Here's a video of RisingFury's latest work - An Airfield AI that can taxi vessels between any two points on an Airfield. For example, if you have an XR2 on the runway and want to taxi to a hangar, the AI will find the shortest route through the taxiways, and steer the XR2 through this route.
Another autopilot featured in the video is take off and landing. Once taxied to the runway, vessels are now capable of getting in the air by themselves. When it's time to land, the landing autopilot can line up the craft with the runway to come in for a smooth touchdown.
The information needed for an Airfield's hangars, taxiways and runways come from two sources - The Base's own configuration file (e.g. Config/Earth/Base/Ascension.cfg) and a "ghost" configuration file. Take-off and landing only requires knowledge of where the runway is, which is well defined in the Base's configuration file. However, taxiing around the airfield requires knowledge of not only where the taxiways and hangars are, but also the connections between them - for example, which taxi ways are one-way? This information is gathered from the "ghost" file for the base. Using a separate file means that the base's files aren't modified, and settings can be distributed freely between users. Vessels also have "ghost" files, to define things like where the weapon hard points are.
Meanwhile I've been focusing on the user interface. OBSP now adds a combat HUD to most vessels (All VESSEL3), showing information such as the target's name and distance. The HUD also includes visual aids such as the bomb pipper, an ellipse centred at the position where a bomb would land if one were dropped.
Another element of the UI is the MFD. Obviously the best way to control OBSP's functionality would be through 2D vessel panels, but this is only possible with vessels created with OBSP's SDK, so an MFD is needed. The MFD includes submodes, much like IMFD. Currently implemented submodes are RADAR, Damage information, Weapons system, autopilot, and countermeasures.
The final new feature worth mentioning is the use of Orbiter Sound. You can now hear missiles and explosions, which adds a lot to the experience. Sounds can be loaded in scripts and timed to be played when notifications (scrolling text across the top of the screen) are started. This opens up the opportunity to use voiceovers, perhaps for tutorials or to add depth to a mission. Currently the OBSP tutorials use pre-generated speech from a TTS service, but we may be looking for voice actors in the future.
Here's some screenshots:
The bombing tutorial, in the D3D9 client. Note that the names that the MFD is showing aren't garbled - there are several vessels close together. Note that the Weapons System submode shows the relative position of each weapon hardpoint, as well as whether or not they are occupied.
Air to air missile tutorial, showing target box. I can easily check whether the target is within the range of my weapons using the MFD.
I've also been working on Aircraft.lib, a static library for creating aeroplanes in orbiter. The library includes Engine modelling, and also helper functions for animations, OBSP, UMMU and more.
More images of the airfield AI:
We're definitely getting close to release now!