# Default Templates The easiest way to plug in an instrument or switch using Model Behaviors is to use one or more existing template (either from the default ones or from the templates that you yourself have previously created). In the best case scenario, that means that you could implement your yoke with only the following code in the XML file: ``` xml ``` This will call the code defined in the following template that contains all the required logic to implement the Yoke: ``` codeblock ..\Asobo_EX1\Common\Interior\Templates\Handling.xml ```   That template contains a call to another template called `ASOBO_IT_HANDLING_Yoke_SubTemplate`, which defines a number of *default* parameters: ``` xml ``` In the example above, the default parameters are not overridden because the animation name and node ID defined by the artists match the values that are being defined by default. {{< callout context="note" title="NOTE" icon="outline/bulb" >}} Default parameters are defined inside of the [``](../../general-template-xml-properties/#Parameters) tags. Previously the templates used `` however this has been depricated, and `` should be used as they can be chained multiple times in a row, while `` can only be used once by template/component. {{< /callout >}}   If the animations and/or nodes are *not* named the same as the default parameters, then they can be overridden by setting their values Inside of the [``](../../general-template-xml-properties/#UseTemplate) tag, for example: ``` xml Yoke_Anim_LR Yoke_Anim_UD Yoke ``` The default parameters of this template also contain a [``](../../program-template-xml-properties/#Condition) tag, which allows the template to have different behaviors depending on the value of a parameter. Here this is used to define an extra `NODE_ID` - if the yokes are in separate nodes, but it can also be used inside of the logic of the template itself. The `ASOBO_HANDLING_Yoke_SubTemplate` template then uses the same condition in its logic to define an extra component when this condition is true: ``` xml #NODE_ID2# ``` This `` can then be triggered by setting `` as follows: ``` xml True ``` It is also important to note that all the parameters defined are **inherited**: ``` xml True False False ``` Note that, once defined, a parameter cannot be "undefined". It can only be overridden by giving it a new value inside a [``](../../general-template-xml-properties/#Parameters), or directly inside of a `` tag.   As a rule of thumb, when using the default templates, you should try to avoid using templates that include "**Subtemplates**" in their names, as those are meant to be called by going though another template. They can be called directly, but doing so will often mean that you are missing some default parameters that would have been set by that template, which can cause the template not to work. In addition, you should note that templates stored in the [Generic](../../templateexplorer/asobo/generic/index-page/) subfolder are generally building blocks templates that are meant to be used to create other templates. They do not implement any specific instrument on their own.     ### Text In Default Templates Many of the templates will require you to include some text as part of the input elements for the template. For example, the [ASOBO\_CT\_Switch\_Template](../../templateexplorer/asobo-ex1/common/shared/utils/interaction/interaction-templates/#ASOBO_CT_Switch_Template) has the element `` which gives a tooltip string to be displayed when the user interacts with the switch. This would be used something like as follows: ``` xml SWITCH_ADJUSTMENT_R RIGHT_PEDAL_ADJUSTEMENT BACK_NEUTRAL_FRONT_Settings @TT_Package.RIGHT_PEDAL_SWITCH ``` Now, if you are using *localised* text, then you need do nothing more, and this will work perfectly fine. However, if you wish to use **plain text** then you will have to do things slightly differently, depending on whether you are using the legacy *[Asobo](../../templateexplorer/template-explorer/#h2)* templates, or the MSFS 2024 *[Asobo\_EX1](../../templateexplorer/template-explorer/#h1)* templates.   For **legacy** templates, you can simply include the text in single quotes `''`, for example: ``` xml LIGHTING_Switch_Light_Cabin_1 LIGHTING_Switch_Light_Cabin_1 3 4 ToggleSimvars (R:1:@TT_Package.GT_STATE_LEFT) (R:1:@TT_Package.GT_STATE_RIGHT) @TT_Package.LIGHTING_SWITCH_CABIN_ACTION_SET 'Cabin Light Left' ```   For the current **EX1** templates, not only must you include the text in single quotes `''`, you must also wrap the text element(s) in the `` parent element, as shown in the example below: ``` xml SWITCH_ADJUSTMENT_R RIGHT_PEDAL_ADJUSTEMENT BACK_NEUTRAL_FRONT_Settings 'RIGHT PEDAL ADJUSTEMENT' True ```