I have done quite a bit of work with the Shockwave 3D lights and have configured 17 aircraft to use them, both FSX default and add-ons. This is a clever product and the visual effect is outstanding. When you replace the entries in the [lights] section of the aircraft.cfg file with the shockwave entries - voila - you get 3D lights.
The one flaw that bothered me is the "floating nose gear light" syndrome. When there is a landing light or a taxi light mounted on the landing gear, a problem occurs. When the gear is retracted, the landing (or taxi) light is hidden behind the gear doors, so it doesn't matter whether they are on or off - you can't see them and they appear to be off. They really don't turn off until you use the panel switch. The challenge is to simulate that with the A2A lights, but the problem is they do not move with the gear and will appear to float just beneath the aircraft until you hit the Off switch.

I started looking under the hood to figure out how the lights work. The key is A2A's Shockwave_Lights.cab file, stored in the Gauges folder. If you single click that file in Windows Explorer, you can see and even copy the contents to another folder. A2A supplies five .xml files, and they were a complete mystery to me. So I loaded the FSX SDK and started tearing through all that documentation, looking for enlightenment. I found it, too.
The XML modules are very short pieces of code that check certain variables and then invoke certain events. I was surprised to see how little code is actually involved, it's very simplistic. That was good news, because it convinced me that I could come up with a solution to the problem. I just had to go figure out that XML thingy.
The A2A lights piggyback on the MSFS lights for the most part. In other words, the original beacon lights are controlled by a switch on the aircraft panel. After you substitute the A2A beacons in the aircraft.cfg file, they operate the same way. Same for navs and strobes and any other non-moving lights. No additional code is necessary. That holds true for landing and taxi lights . . . as long as they are not mounted on landing gear.
Using XML code, I can tell when the landing lights and taxi lights are ON or OFF. I can also tell when the landing gear is extended or retracted. There are two A2A modules that deal with these constructs: "SW Lights_gear.xml" and "SW Lights_taxi_gear.xml". I originally thought these were the solution and some entries on the A2A forum seemed to suggest so. However, when I tested these modules, the nose gear lights didn't operate any differently.
So I thought back to my programming days and realized I needed a decision table to figure out this logic.
- First, I want to check the gear position; if it's down and the taxi light panel switch is on, I want to check the nose gear light - if it's off, turn it on. End of logic chain.
- Second, if the gear is down and the taxi light panel switch is off, I want to check the nose gear light - if it's on, turn it off. End of logic chain.
- Third, if the gear is up, check the nose gear light - if it's on, turn it off. End of logic chain.
The problem with all this? I needed another way of designating the light type (in the aircraft.cfg) of the nose gear lights. Keeping them as Landing lights or Taxi lights just did not work. The panel switch position kept overriding the XML code.
That's when I started looking at the different light types: Types: 1=beacon, 2=strobe, 3=navigation, 4=cockpit, 5=landing, 6=taxi, 7=recognition, 8=wing, 9=logo, 10=cabin. Hmmmm, how about that recognition light thingy? It turns out that particular light is not used in most of the planes I checked. Not only that, I can manipulate it with XML code. That led to the development of the "SW Lights_Growley_Recognition.xml" module.
There are special situations for some planes. The FSX A381 controls the recognition light from the panel so I had to designate the taxi light as a cabin light instead. The feelThere ERJ v2 jets (E-135 and E-145) have both a taxi light and a landing light on the nose gear. I solved it by designating the nose taxi light as a recognition light and the nose landing light as a cabin light.
For maximum flexibility, I developed 8 XML modules. Four of them morph the nose taxi light into either a recognition, wing, logo, or cabin light. The other four morph the nose landing light into either a recognition, wing, logo, or cabin light. I added these modules to a new GrowleyLights.cab file and invoke one or two of them from the plane's panel.cfg file. This is your starting point.
Copy the GrowleyLights.cab file (I don't want to post a link to it, so message me if you want a copy) into the FSX Gauges folder. I also have Word files (again, message me) that explain how to update aircraft.cfg and panel.cfg files for several aircraft. You'll need to patch your aircraft.cfg and panel.cfg files as explained in the Word docs. Hold your breath and test the results. If this works the first time, have a beer and light up a cigar.
One caution. I have found that many of the newer add-ons have coded custom light routines that deviate from the default FSX [lights] scheme. The CS B777 is a good example of this. Their aircraft config allows you to switch out the two beacons, the strobe and nav lights on the tail, possibly the virtual cockpit lights (maybe), and two recognition lights. There is (as yet) no way to swap out the landing, taxi or wing lights from the aircraft.cfg file. To make matters worse, the 777 wings flex, which means the wing lights are moving lights, but the Shockwave lights are non-moving lights. So I don't think there is a way to fully implement them on this aircraft.