Jump to content

Recommended Posts

Posted (edited)

After spending more time with QAG, I have some ideas and proposals to submit to the kind people at ED. I think that the proposed goals for QAG to serve as an easy, quick method to attract and keep engrossed new players is very difficult to accomplish with the current incarnation of QAG. Since I do want to be as constructive as possible, below please find an illustrated proposal how QAG can easier bridge the gap between a new player and having fun with DCS. Please be advised that the proposal is squarely aimed at new, or low-sophisticated users, and it's scope is limited to low-complexity missions. My goal was to pare down the UX/UI to a level that allows a quick mission creation, focused on a fun interaction. 

So, with that in mind...

GOAL
The aim of this GUI and underlying App is to provide a quick, simple interface and forgiving interface that results in simple, engaging non-repetitive missions for neophyte users of DCS. As such, it should guide the player through the process, always be tolerant of mistakes, and create missions that make sense from the perspective of the player (for example, if the players chooses to start an "Ground Attack" mission, and forgets to equip Air to ground weapons, there should at least be a warning, and the ability to go back to setting up th emission). This means that a lot of smart defaulting for values is required, and should a user change a setting that would require new defaulting of values that already were changed by the player, a warning will appear (for example, if the player has chosen a load-out for his aircraft, and changes the aircraft, a warning that this will void his previous load-out will appear. If they did not change the load-out, changing the aircraft will not bring up the warning)
NOTE: the aim of this generator is ease of use, not generating a broad range of mission complexity. Complex missions are the realm of Mission Editor. This generator is aimed at QUICKLY generating FUN missions for new/inexperienced players, so the scope of the generated missions must be tightly controlled. It is NOT designed to generate any kind of mission imaginable, nor advanced, high-complexity missions (e.g. any mission requiring air-to-air refueling is well outside the generator's scope).

The GUI is set up as a panel with several Tabs. Each tab is dedicated to an aspect of the mission. Values in each tab are defaulted intelligently to help guide the player, and they never overwrite values that have been changed by the player without prior warning and acceptance from the player.

Currently two tabs (IMHO) suffice to set up this QAG, the images below propose a third (as to yet undefined) tab "Other" that is not required. It's just how I work, please bear with me.

NOTE
Any edit on any tab should support AT LEAST ONE LEVEL OF UNDO

NOTE
All generated missions should be saved to a folder and be instantly recallable by players so they can be shared and modified.

 

THE MISSION TAB
image.png

MAP Pop-Up
Allows selection of map. Only maps owned by the player are enabled, while all maps are shown (a map that isn't owned by the player is greyed out, and still visible so the player knows what maps are available should they purchase them. A later iteration of the map should allow the player to go to the store to purchase the map now). A low-res rendition of the map is show (perhaps taken from the relevant map folder).

Notes: No Country selection, player is always Combined joint blue, enemy is always red. 
Defaults to Caucasus or whatever last used

Note: No map is actually loaded, as the entire QAG UX does not support locality. This level of complexity is not necessary for new players. Implementation-dependent, a map may have to be loaded during the actual mission generation

MISSION TYPE
A Clear-Text selection of SIMPLE TO UNDERSTAND mission types that define the parameters of the mission. For example "Attack Ground Vehicles" defines a mission where the player is expected to attack ground vehicles with their aircraft. Note that the type of mission does NOT prejudice the aircraft in any way, so any mission type can be chosen for any aircraft, even if that does not make sense from an expert's mind. It's the challenge for the app to make this engaging, not a task for the player to know enough about their plane and it's capabilities. If, for example, the player has chosen 'Carrier Operations' as mission type, and an A-10A as aircraft, there should be a warning that the A-10 isn't carrier capable, and if th emission starts, the A-10 is put into the air above the carrier, with the same goals as a carrier capable aircraft would have. The player will then have to decide how to proceed. But the generator will let the player do what they want.

The generator is also smart to utilize the resources owned by the player: if the player chooses a warbird for a 'search and destroy' mission and owns the WWII asset pack, the gen automatically also includes objects/enemies from that pack; if the player chooses 'carrier ops' as mission type and owns SC, SC resources are prioritized over standard DCS carriers etc.


Defaults to Ferry or whatever last used 

Examples
Ferry / Transport - fly an aircraft from A to B. Distance and other obstacles are determined by difficulty.
Escort / Formation - An escort type mission where the player is to fly close/accompany another aircraft(s). Difficulty determines dissimilarity and number of changes that the flight path of the other planes have.
Attack Ground Vehicles - Attack a number of ground vehicles at a location. Which and number of vehicles are determined by difficulty
Attack Installation - Attack and destroy a building, installation or bridge at some map coordinates. Difficulty controls how well it is defended 
Air Combat - engage enemy aircraft. Which aircraft and number of enemies is determined by difficulty 
Attack Ships - attack ships. Which ships and number determined by difficulty 
Carrier Operations - launch from the carrier and (depending on difficulty), some other goals. If player owns the SC module, the generator automatically uses SC units, standard DCS (Stennis) units else. The generator should be smart in these things,
Attack Air Defenses -Attack Air defenses. Difficulty determines type and number.
Air Patrol - Defend an airspace from enemy aircraft ("CAP")
Search And Destroy - Look for, and destroy, ground vehicles in an area. The gen's "secret sauce" can shine here - if ac type is a helo, the area can be smaller and more rugged, if it's an attack plane there can be heavy armor, if it's a fast mover some lightly armed vehicles etc. And of course, the gen guarantees that all targets are era-compliant (or older) with player's aircraft, so we don't need to set that. Be smart about the data we have. 
(SAR - later)


DIFFICULTY
The magic dust in this mission generator, a catch-all to hide complexity. In general it is used to determine the number, skill level and lethality of the enemy in relation to the player's aircraft. On lower levels, this should be conservative: For example, if the player's aircraft is an A-10 and mission type is "Air combat", the gen only uses planes that match the A-10's capabilities or less, for example another A-10, or perhaps some less capable helicopters. Making this work well, balancing the mission well though this diffuse parameter will be the make-or-break feature of this generator, so place utmost attention to the design and balancing of this attribute.
Defaults to Easy or whatever last used. 

Choices could be "Easy - Fun - Normal - Challenging - Hard - Deadly"
Difficulty is never explained. It just is. It's the magic of the game.

SEASON
Time of year, usually only affects the map (and perhaps air temperature). 
Defaults to Any owlu

Choices are "Any (random) - Spring - Summer - Autumn - Winter"

TIME OF DAY
Choices "Any (random" - Dawn (shortly after sunup" - Mid-Day - Dusk (shortly before sundown) - Night"
Defaults to Dawn owlu 

WEATHER
Only a few choices here to simplify settings
Choices "Good - Cloudy - Bad" -- with wind picking up progressively, as does precipitation and fog. "Good" translates to little wind, Clear to scattered, "Cloudy" to mid wind and Overcast etc.
Note: "Difficulty does not affect Season nor weather"
Defaults to "Good" owlu 

START
Where the aircraft starts from. For some missions (e.g. Air Combat) 'In Air' is preferrable, and a warning should be shown if something else is chosen, but it should not be prevented.

Choices:
Runway (from the runway of an airfield that the gen chooses sufficiently close to the action)
Tarmac/Hangar COLD & DARK (airfield that the gen chooses sufficiently close to the action)
Tarmac/Hangar Started up (airfield that the gen chooses sufficiently close to the action)
In Air close to Action

DESCRIPTION
A brief narration of ALL current settings (including those from other tabs), what the player should expect should they press GO now

GO
Start the mission with current settings now. Before the mission is started, a number of consistency checks are run. All checks that fail are collected and presented as a list to the player (e.g. "The A-10A is not suitable for carrier operations", with the player being able to choose between "Proceed anyway" or "Go Back" to change some offending settings.

Note: player has no control over locality of neither their plane nor the enemy, this is al decided by the generator to keep complexity for the player down.
 

 

MY PLANE TAB
This controls the player's loadout and number of aircraft in wing. Note that the loadout should be intelligently defaulted when the player changes mission type UNLESS THE PLAYER HAS CHANGED THE LOADOUT, in which case the player has the ability to decline defaulting via a dialog.
If the player changes the aircraft type, and they already have changed the loadout, allow the player to not change the aircraft. Note that since the App should support at least one level of UNDO, this is merely interface chrome.
When a new aircraft type is chosen, the best possible loadout is chosen for the particular mission type.

image.png

AIRCRAFT
A pop-up menu of player-controllable aircraft types. It should list all aircraft modules that are potentially purchasable, with those that aren't currently owned by the player disabled (note that in future versions there could be the option of players linking directly to the store to purchase the module). If a type is well suited for the currently chosen mission type, the type name is preceded by a diamond (and/or in boldface letters, and the background may be dark green although if used exclusively, color-coding fails for some color-blind people), to indicate mission suitability. If a type is unfit for the current mission type (e.g. A-10A for carrier missions), the type name is preceded by a skull (or similarly discouraging) symbol, and the background may be red (exclusively color-coding is a bad UX decision because of potentially color-blind players).

NUMBER OF AIRCRAFT IN WING:
A pop-up menu for the number of aircraft (all same type) in wing. Choices are 1 (player only) to 4 (player, plus three AI). AI skill level is defined by difficulty (panel I), and should always be Veteran or above. Loadout of all aircraft is identical to player.
 

UNDER-WING Boxes 1..N 
LEFT-Clicking into this box brings up the loadout selection. The DCS drop-down menu isn't all that bad, it's just not neophyte friendly. A better, more elaborate, neophyte-friendly per-item description would be helpful (e.g. instead of "LAU 105 with 1xAIM 9L Sidewinder IR AAM" we would use "AIM 9L Sidewinder ("Heat Seeker") Missile"
A click and drag interface window that open as and allows players to drag the possible armament from a selection (with good description, to allow players to differentiate a short-range Heat-Seeker Sidewinder from a radar-controlled mid-range "Slammer") to that station would be MUCH better and should be implemented in a later release

NOTE: There is no interface for Fuel, Gun ammo, chaffs, flares, formation etc. It always defaults to the best (most logical) values for the chosen mission. 

GET BEST LOADOUT (Button)
Button to load the best loadout for all station for the particular mission that is currently selected. 


LIVERY (OPTIONAL, CLUTTERS INTERFACE, LITTLE BENEFIT)
Pop-up for all available liveries for this type.
 

DESCRIPTION
A brief narration of ALL current settings (including those from other tabs), what the player should expect should they press GO now

GO
Start the mission with current settings now. Before the mission is started, a number of consistency checks are run. All checks that fail are collected and presented as a list to the player (e.g. "The A-10A is not suitable for carrier operations", with the player being able to choose between "Proceed anyway" or "Go Back" to change some offending settings.

 

"OTHER" TAB
Not required, we already have enough info to auto-generate a fun and engaging mission. 

Edited by cfrag
  • Like 6
  • Thanks 3
Posted (edited)

SOME ADDITIONAL NOTES FOR CLARIFICATION

HIGH LEVEL OF GENERATOR ABSTRACTION 
Above describes the UI/UX for a (neophyte) player, to enable them to quickly generate a fun mission. The entire generator revolves around accessibility: it does not require the player to have specific knowledge about the era, area, aircraft or weapons and still be able to have an engaging mission. As such, the generator abstracts as much as possible, and uses accessible phrases and iconography and engaging UI to guide the player as much as possible; the results should be as forgiving for mistake as possible, and it should anticipate what the player may have intended, to have some fun. The generator's focus is on a fun experience, not an optimum of realism. To achieve this, the number of UI elements and choices is greatly reduced, and attributes that aren't strictly required are automatically fit for the mission by the generator. 

For example, setting the amount of fuel, chaff, flares etc are distractions that merely can confuse and do not significantly increase the experience or outcome. Therefore, this and similar settings (e.g., frequencies, gun ammo, flight formation) are abstracted and automatically filled by the generator. Similarly for enemy units, their AI, position etc - setting these up requires know-how of things that a new player may not have and lead to their frustration. It becomes a chore to provide, is unpleasant UX, and it is something that the generator can be much better at providing.  

Similarly, choosing Season, Time of day and weather can be abstracted into much easier terms that the player understands. Choosing "Dawn" as starting time does not require the player to know at what time the sun goes up on that map (Month), and that Winter on the Southern hemisphere is different from the Northern. Dawn means dawn, and the generator can sweat the details. It is this kind of smart player support that makes for an engaging interaction.

THE GENERATOR MAKES OR BREAKS THIS APP!
Providing many of the above 'nitty gritty' mission details (like enemy) the generator derives from the 'difficulty' attribute that the player sets on Panel 1.

image.png

Abstracting so many different Attributes into a single setting will provide a challenge, and doing it well will decide the fate of the generator: since it is the generator's job to balance the mission, to make it a fun experience, not properly balancing a mission, not correctly anticipating what the player wants, not erring on the side of fun, and not being a fun experience can ruin the entire generator.

Here is how I envision that this could work: Difficulty, together with the aircraft type that the player selects already yields an abundance of information: era, capabilities, potential enemies etc. We can use this with mission type to drive enemy unit selection, their number, placement, orders, alert status and AI settings.

Examples:
For example, the player does not have know which AAA are era era correct for his aircraft type, nor which of them are too lethal. Driven by the aircraft type and difficulty, the generator selects appropriate unit types and numbers for the mission type, and sets their alert status, skill level and how/when they activate (or if at all). For example, a difficulty setting of "Easy" can cause the generator to set all enemy units to ROE to "Weapons Hold", etc. 
Similarly, the difficulty attribute can control mission complexity for carrier ops: While "Easy" only has the player depart from the carrier, attack some hapless (weapons hold) unit on the shore and then proceed to a land-based airfield, a "Challenging" mission alters this so that the hapless unit now has teeth, some company, and the player has to return to the boat. 

This way, the generator can quickly automate mission generation without requiring the player to be confronted with settings that simply are too complex and ruin the experience. 

Note also that this UI (outside the theatre map) fully abstracts locality. The player is not required to place units nor their plane. This is done by the generator. It may be counter-intuitive at first, but not having to worry where the action takes place takes a lot of burden from the player, and also allows the generator to shine and keep generated missions fresh by leveraging map knowledge and always randomly picking the best locations for a particular mission type

Mission generation
The mission is generated after the player clicks on GO. Since there is no locality managed by the player (other than choosing the map/theater) loading and operating QAG is fast, and should on average only take a few seconds. QAG should retain settings between sessions, so subsequent sessions will be even faster (please see the note on Reuse below)

Randomization
This is an area where the generator can truly shine and leverage ED knowledge and experience. Each map has areas that are particularly well suited for certain engagement, and can show off the features of a map (for example, Caucasus can be drab in some places, while drop-dead beautiful in others). Picking the correct spot for a generated mission can make it an exponentially better experience.
Since the generator places enemies and friends alike, it can randomize and optimize both at once and guarantee a steady stream of good experiences.

Modularization, Templates (?)
I suggest a heavily modularized approach to getting this version of QAG out of the door. Generation of mission types can be modularized (with planned missions already being mentioned in the Mission Type drop-down, but not yet available), as can be optimization for a particular map (leveraging/optimizing the beauty of a particular map can be a per map module that is added later). For example, an SAR mission type module can be added later.

Since the generator picks the location of all action, it can also use an 'embellishment' module for 'eye candy' at the source and destination airfields, as well as the general location of the mission's action. This way, no matter which airfield is used, it can look good to the player and be era-compliant - the joys of automation. This embellishment module can be based on templates and be added later.

I will not mention the potential monetization options.. ooops.  

API 
I strongly recommend that ED define and release the API for both QAG front-end and mission generator back-end so that the community can provide their own. The downslide here is that downloading and installing add-ons to DCS currently is not neophyte-friendly, so this will have to be a later development, when DCS's UX/UI matures sufficiently to integrate this.

Reusability / Save / Retrieve / Exchange 
I'm assuming that the generator backend creates a '.miz' type mission as it does now, that is loaded into DCS like a standard mission created with Mission Editor, and that the output is compatible. If so, I strongly recommend that the generated missions are named sensibly (maybe ask the player) and are placed in a location where they can later be retrieved and re-played without having to re-generate them. I also strongly advise that QAG's GUI provide an interface to access and manage previously generated missions (it is trivial to store this version of QAG's settings within a .miz), so players can either replay a previously mission (if it was fun), or generate a new one based on the settings used (this was the origin of the 'Other' tab in the examples above. I merely chose to abstract that detail).

Edited by cfrag
  • Like 5
  • Thanks 1
Posted

Clearly you care, @cfrag

Thanks for spending considerable time and energy making suggestions in a nonthreatening and constructive manner.  

  • Like 1

System Specs:

Spoiler

📻Callsign:Kandy  💻Processor:13th Gen Intel(R) Core(TM) i9-13900K - 🧠RAM: 64GB - 🎥Video Card: NVIDIA RTX 4090 - 🥽 Display: Pimax 8kx VR Headset - 🕹️Accessories:  VKB Gunfighter III MCG Ultimate, VKB STECS Standard, Thrustmaster TPR Pedals, Simshaker JetPad, Predator HOTAS Mounts, 3D Printed Flight Button Box 

📹 Video Capture Software:  Open Broadcaster Software (OBS), 🎞️ Video Editing Software:  PowerDirector 35

 Into The Jungle (MP Mission)  F18: Scorpion's Sting  Apache Campaign - Griffins  Kiowa Campaign - Assassins 

 

Posted

Excellent post - addresses precisely what I'd imagined a QAG to be. This is a clear design / high-level view of what should be the Player / QAG interface and feature set. The Current QAG is built very much from the perspective of attempting piece together something from the existing structures. It is incoherent in terms of what it want to achieve and how the player interacts with it.

The Design above flows, it leads the player though intuitive simple options, and gets them to the cockpit quickly. The job of the QAG is to take care of the details. The player might then have the option to use the mission editor/planner should they wish.

Overall the goal of the QAG should be a Randomised mission, generated though a simple intuitive interface, and not for the player to manually build the mission in a simplified mission editor. I believe the OPs design, while not perfect, illustrates succinctly what could work, and also the minimum of what a Player would expect of a Game interface.

Nate

  • Like 2
Posted
On 6/18/2025 at 11:00 AM, Nate--IRL-- said:

Excellent post - addresses precisely what I'd imagined a QAG to be. This is a clear design / high-level view of what should be the Player / QAG interface and feature set. The Current QAG is built very much from the perspective of attempting piece together something from the existing structures. It is incoherent in terms of what it want to achieve and how the player interacts with it.

The Design above flows, it leads the player though intuitive simple options, and gets them to the cockpit quickly. The job of the QAG is to take care of the details. The player might then have the option to use the mission editor/planner should they wish.

Overall the goal of the QAG should be a Randomised mission, generated though a simple intuitive interface, and not for the player to manually build the mission in a simplified mission editor. I believe the OPs design, while not perfect, illustrates succinctly what could work, and also the minimum of what a Player would expect of a Game interface.

Nate

This ! I agree with everything said here and cfrag proposal is really good and what I'd like to see in game ^^

Posted

the thing is, that all this functionality existed already in the 3rd party DCS Briefing Room.  And it sort of worked!  Well, at least some times.  OK, almost never.

The issue was DCS AI being all borky, so none of the non-player controlled aircraft did what they were supposed to.  

ED should have contracted that developer.

  • 4 weeks later...
Posted (edited)

I just saw this topic today. What fantastic work. I think it would be quite impressive to the DCS community,if ED would consult/work with you for an improved DCS QAG.Thanks for your efforts.

Edited by _JMax
grammar
  • Like 1

Intel I7 13700KF  48GB DDR4  GeForce 4070 Ti   2x1000GB SSD  Quest 3   MSI 3440x1440@100hz.  VKB Stecs  VKB Gladiator EVO  G502

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...