Profile Chaining

Summary

Profile Chaining allows users to build inheritance of profiles within Joystick Diagrams.

This can be done cross-provider of profiles, allowing you to as an example combine Joystick Gremlin profiles with DCS Profiles to make a single set of binds for export.

Creating a chain

  1. Ensure you’ve processed some profiles to access the Customise screen
  2. Select “Profile Setup”
  3. Select the Profile (Base Profile) you want to chain into (apply things on top of)
  4. Add the parent profiles you wish to apply on top
  5. Order the parent profiles to get the desired behaviour (see Profile Inheritance Logic)
  6. The base profile can now be viewed in View Binds by Profile to see the merged result

Warning: Be Cautious When Removing Plugins

When you start using profile chaining, the existence of parent profiles depends on the plugins you have installed. Therefore, you should always run the same set of plugins or add more plugins, but never remove any plugins.

If you disable a plugin that has profiles as parents, it will clean up any parent profiles associated with that plugin, effectively removing those associations. If you later run the missing plugin again, you will need to re-establish those parent profile associations.

Profile Inheritance Logic

  • Profiles are inherited down to the base profile (the profile with parents configured).
  • The base profile will become modified until the parents are removed.
  • Parent profile merging only affects the base profile, it won’t modify the parents themselves across the application as this would be incredibly confusing!

Example

Below is an example for the selected profile F-15e, showing how the inheritance works

The lower Profile currently always takes precedence, this is the case for controls and their modifiers.

Parent

UiLayer

Button 1 Action A
Button 2 Action B
Button 3 Action C

Parent

F-15e_WSO

Button 4 Action D
Button 5 Action E

Base Profile

F-15E

Button 1 Action F
Button 6 Action G

Resulting Profile Binds

Final state of F-15E Profile

UiLayer to F-15e_WSO profiles have no identical keys so are merged

Button 1 Action A
Button 2 Action B
Button 3 Action C
Button 4 Action D
Button 5 Action E

Result is merged with Base Profile, but Button 1 already exists on base. Button 1 becomes Action F

Button 1 Action F
Button 2 Action B
Button 3 Action C
Button 4 Action D
Button 5 Action E
Button 6 Action G

Note

This is an initial advanced feature, and welcome feedback on its implementation for your use cases. It’s not currently possible to have more than one active action per button or multiple of the same modifier until such a need arises.