The workflow for any sim-related behavior is completely different to what we're used to. The model itself hardly contains any sim-related data, other than the material extensions/extras. The way you link ANYTHING interactive, like mouserects, animations or visibility conditions, is by creating an animation - it can be just one keyframe at kf0 - and then linking the name of that animation with a behavior. You can find and change the name of the animation in the outliner of your Blender scene.
To link that animation with a behavior, you need to reference it in the xml file of the model. You can either use the legacy format, which is similar to the modeldef.xml programming we're used to, or you switch over to the new, more flexible and re-usable "template" version that Asobo implemented. For the first, check the sampleAircraft of the SDK. For the later, just open any of the Asobo aircraft for reference. It's a huge topic to discuss, and we don't have all the information of how those templates work, but if you read through the xml files of the aircraft that come with the sim, you'll get the gist of how it works.
I haven't done any visibility codes yet, but it is my understanding that it all works essentially the same. So as an example, I can only show you what I've got so far in my xml file:
Code:
<ModelBehaviors>
<!-- Includes ###################################### -->
<Include Path="Asobo\Common.xml"/>
<Include Path="Asobo\Exterior.xml"/>
<!-- ###################################### -->
<Component ID="HANDLING">
<UseTemplate Name="ASOBO_HANDLING_Elevator_Template">
<ANIM_NAME>elevatorAction</ANIM_NAME>
</UseTemplate>
<UseTemplate Name="ASOBO_HANDLING_Elevator_Template">
<TRIM_ONLY>True</TRIM_ONLY>
<ANIM_NAME_TRIM>elevator_trim_percent_key</ANIM_NAME_TRIM>
<INVERT_ANIM>False</INVERT_ANIM>
</UseTemplate>
<UseTemplate Name="ASOBO_HANDLING_Aileron_Template">
<ANIM_NAME_LEFT>aileron_leftAction</ANIM_NAME_LEFT>
<ANIM_NAME_RIGHT>aileron_rightAction</ANIM_NAME_RIGHT>
</UseTemplate>
<UseTemplate Name="ASOBO_HANDLING_Rudder_Template">
<ANIM_NAME>rudderAction</ANIM_NAME>
</UseTemplate>
</Component>
[...]
</ModelBehaviors>
In order to make those work, all you need to do is put the name of your animation in the <ANIM_NAME> attributes. When this is loaded in the sim, it'll read the templates, and subtemplates and fill the variables of the templates with the values you provided. For the sim, this ends up looking similar to the modeldef.xml code we had before, but it's done dynamically.
All that said, I've seen people reporting that there's some problem with visibility code in the current SDK v0.51, but I don't know if that's an issue with the 3dsmax exporter or the packagetool...