Flight Director Controls

Alex Anderson 🚀Alex Anderson 🚀, November 3, 2021
Flight Director Controls

It's no secret that Thorium Nova is designed with Flight Directors in mind. I think having a person behind the scenes can make the whole experience so much more exciting and enjoyable. At the same time, these Flight Director controls need to be easy to use and understand, approachable, and powerful. To best illustrate this, lets take a look at how not to do this.

The Flight Director screen in Thorium Classic is probably the most intimidating thing for beginners. For starters, Thorium Classic requires a Flight Director, which means somebody has to know how to use this screen in order for anyone to play the game. But take a look at it. Daunting barely begins to describe it.

image

Before we all collectively rage quit over information overload, lets talk about what the Flight Director screen really needs to do. As the director of the entire game, the Flight Director needs to be able to observe everything going on. That includes knowing what the crew is doing and the status of different simulated parts, like the reactor heat or dilithium stress level. Naturally, there's a lot of things going on, since you might have as many as 12 people in the crew, so by necessity there's a lot of things to include on this screen.

Thorium Classic improved upon the simulator controls it was based on by adding the Core Feed - A series of notifications that stream in as things happen. You can see this in the lower-right of the screenshot. This is the easiest way for the Flight Director to know what the crew is doing and respond to actionable events.

Thorium Classic also introduced notifications for the Flight Director which appear when something crucially important has happened. We could make these more actionable where clicking on the notification highlights the relevant part of their Flight Director screen so they can actually take action. Or perhaps we can define buttons on the notification to let them perform actions with a mere click.

This brings us to the next thing flight directors need to do: Make adjustments to the simulation. The crew is able to do this through their own controls, and the Flight Director should be able to do the same thing from their end, like change the speed of the ship or change the power levels of the ship systems. However, the Flight Director also has near-Godlike powers, including the ability to spawn other ships on the sensor grid and immediately overload the crew's reactor heat.

Thorium Nova will hopefully simplify many of these things through automation.

Automation

In Thorium Classic, the Flight Director has to manually give the crew a tractor beam target, regardless of whether there is an object in tractor beam range. In Thorium Nova, on the other hand, the system will be smart enough to know that if a ship is behind the crew's ship within so many kilometers, it is available as a tractor beam target. Tractor beam stress will also be automated, based on the mass of the ship being towed. Similar automation can happen for transporters, shuttles, cargo bays, intruders, sensor scans, and many other things. This will be built in, and not necessarily part of mission timelines, although missions can add even more automation as appropriate for that mission.

With Thorium Nova's automation, alarms will automatically be triggered when there are intruders or overheating systems. Warnings will appear on the crew's stations and on the viewscreen. In fact, most of what a Thorium Classic Flight Director needs to do will be automated. This changes their responsibilities slightly. Instead of being focused so much on what is going on inside the crew's ship, the Flight Director will be much more responsible with coordinating the NPC ships around the crew and making fine-tune adjustments to provide the crew with the best possible experience. Of course, the Flight Director will still be able to make direct adjustments to the crew's ship, but the hope is they won't even have to worry about that.

Automation isn't the only thing Thorium Nova adds, though - there's also the Star Map and the Ship Map, both of which add a lot of complexity but also much potential. Let's take a look at how other bridge simulators display their Flight Director screens and what lessons we can learn for making the screens simple, approachable, and powerful.

Dreamflight Adventures

Dreamflight Adventures is the sister simulator controls to Thorium. It even supports a Thorium Classic integration! It is intended for educational missions and requires a flight director, but features a beautiful 3D universe and viewscreen and a bunch of automation. In fact, nearly every station is automated. The Flight Director only needs to direct the NPC ships and has some ability to make adjustments to the crew's ship, but not much.

Dreamflight Adventures Flight Director Controls

Notice how you can see the ships in the map. Clicking on one shows options for that ship underneath, which makes it easier to see the ship's status and assign orders. The player's ship is highlighted in green and includes circles indicating sensor range and weapons range. Even though this is a 3D world, the map is shown in 2D, which makes it easier to see the ships and navigate around the map.

The rest of the screen provides the timeline, controls for changing the crew's location, changing the music or playing special sound effects, monitors for the crew's health, and special messages for the Flight Director as part of the mission timeline.

To me, this feels approachable and intuitive. Less insight and control for the Flight Director, but still plenty of power for telling great stories. It's also a lot of fun to play - if you haven't already, check out the home edition on their website.

Empty Epsilon

image

Empty Epsilon has a much more hands-off Game Master approach, with many scenarios requiring no Flight Director. Even still, that Game Master has, perhaps more power than the DFA Flight Director, since they can make any kind of tweak to the systems and properties of any ship mid-flight, in addition to spawning new ships and giving orders to existing ships.

One thing that I really like about Empty Epsilon is the buttons that you see on the side. The scenario itself gets to define what those buttons are and what they do. The buttons you see here spawn waves of enemy ships, to provide more of a challenge to the player. They could be configured to trigger important mission events, or change the properties of the player's ship or NPC ships.

One example I considered is a mission where you have to track down and destroy a dangerous enemy ship. Perhaps you want to speed up the mission, so you could have a button which sets the position of the enemy ship to the destination of the player ship, so they'll find their target as soon as they arrive. It could also include buttons to buff (strengthen) the enemy if the crew is doing well or nerf (weaken) the enemy if the crew is doing poorly. Having these defined by the mission writer gives them a lot of power in helping the Flight Director succeed in the mission.

Another thing I like about Empty Epsilon is how you can see at-a-glance details about the selected ship, like it's type, it's shield strength, and its orders. Buttons towards the bottom make it easy to change the orders, and right clicking on the star map can give more specific orders, like "move here" or "attack this object".

Huge thanks to Xansta for pointing these features out to me at our recent contributors meeting!

Command Palette

Contributor Connor suggested the command palette, which is becoming a more common UI feature in many apps. Word's don't do it justice - just take a look at this mockup video he made.

There's a lot of really great things going on here. First, it lists the options that you have, which makes it easier for Flight Directors to learn what things they are able to do. The search feature makes it easier for them to find specific options.

Each command is executed in context. For the mockup, you first pick the command "Assign a Side Quest". You then pick from the list of stations on the ship. From there, it shows a list of available side quests specific to that station, with an option to pick a random sidequest. At the end, you can confirm or cancel the command. All of this with just a few keystrokes.

I also imagine it could be used to bring up information about a particular ship or system, kind of like Siri or a Google Search. I imagine we could expand it further to change the view of the Star Map to show the location of a particular ship, or open or highlight other controls on the Flight Director screen for performing certain tasks.

Huge thanks to Connor for putting together this amazing UI demo!

Static Flight Director Layouts

As we saw before, Thorium Classic has a dynamic grid which can be configured however the Flight Director wants. This makes it really hard for beginners, since they have to learn what all the different controls are and make their own layout. This tells me that these extra controls should be laid out for them in a static way. And since the station configurations will be static, it almost makes sense to have the Flight Director layout be based on the stations.

Jumpstart Flight Director Controls

This is a screenshot from an older set of simulator controls called Jumpstart. Each of the station sections is split into cards, where you can see controls that pertain to that specific card. This can help players who are familiar with the stations and cards transition to being a Flight Director, since the controls will mirror what they see in the station. The Flight Director screen can even have each station section follow what card the crew member is currently viewing.

Thorium Nova could do the same thing - create separate Flight Director controls that correspond to the specific card and then generate the layout based on the stations assigned to that ship. Here's another layout mockup that applies a similar concept. Hat tip to Todd Rasband and BJ Warner for creating this design.

Core Mockup

FlexLayout

While I said I think the Flight Director screen should be simple and approachable, I still want to provide powerful tools to the most ambitious of Flight Directors. That's why I also think it might be a good idea to consider including a dynamic, configurable layout like Thorium Classic. I've found this library called FlexLayout which would serve as an excellent starting point for building something like this. Play around with it and you'll see why I think it's a good idea for our power users.

Summary

Let me summarize with a list of features and ideas that could help the Flight Director be successful.

  • Core Feed
  • Actionable notifications
  • Mission Timeline
  • Automation
  • Star Map & Ship Map
  • Mission-configured action buttons
  • Tweak menus for NPC ships
  • Command Palette
  • Static Flight Director Layouts, designed around cards and stations
  • Configurable layouts for power users

Of course, none of this is exactly how we'll build the Thorium Nova Flight Director controls. It merely serves as a guide and inspiration for how we might do it eventually. I imagine we'll combine several of these things together, to provide a balance between simiplicity, power, and flexibility.

And, like everything else, everything related to the Flight Director should have documentation pages and possibly tutorial videos and walkthroughs. This should make it possible for anyone with the desire to learn how to use these controls well and become a great Flight Director.

Anything you would add? Join us on Discord and let us know!