Profile Chaining
Profile Chaining lets you build inheritance between profiles, even across different plugins. Combine Joystick Gremlin binds with DCS World profiles into a single diagram output per device.
How It Works
A Base Profile is the profile that will receive bindings from one or more Parent Profiles. Parent bindings are merged down into the base, with the base profile's own bindings taking precedence in any conflict.
Creating a Chain
- Process at least one plugin so profiles are available.
- Go to Profile Setup in the application.
- Select the Base Profile you want to receive bindings from parents.
- Add one or more Parent Profiles to apply on top.
- Order the parent profiles to control merge precedence (lower = higher priority).
- The base profile now shows the merged result in View Binds.
Be cautious when removing plugins. If a plugin that provides parent profiles is
disabled, those parent associations will be cleaned up automatically. Re-enabling the plugin later will require you
to re-establish the chains.
Inheritance Logic
- Bindings are inherited down from parents into the base profile.
- The base profile's bindings always win in a conflict. Parents cannot override the base.
- Parent profiles merge in order. The lowest listed parent has the highest priority among parents.
- Merging only affects the base profile. Parent profiles are never modified.
Worked Example
Consider a base profile F-15E with two parent profiles: UiLayer and
F-15E_WSO.
Parent: UiLayer
BTN 1 Action A BTN 2 Action B BTN 3 Action C
Parent: F-15E_WSO
BTN 4 Action D BTN 5 Action E
Base Profile: F-15E
BTN 1 Action F BTN 6 Action G
Merged result
Result: F-15E (after chaining)
BTN 1 Action F base wins BTN 2 Action B BTN 3 Action C BTN 4 Action D BTN 5 Action E BTN 6 Action G
BTN 1 exists on both the base and a parent. The base profile wins, so Action F is kept. All other bindings are merged in.
Profile Chaining is currently limited to one active action per button and does not yet support multiple identical
modifiers on the same control. Feedback on this feature is welcome on Discord.