energy-loop is the way to go, just to answer your last question. :-)
regarding the unwonted behavior - first thing to check is: is your airframe well tuned? I mean is it holding altitude and speed well. after a wile?
If so you should check probably the values for ( ) against the flight log for straight flight and climb.
| <!-- auto throttle inner loop -->|
| <define name="AUTO_THROTTLE_NOMINAL_CRUISE_THROTTLE" value="0.3"/>|
| <define name="AUTO_THROTTLE_NOMINAL_CRUISE_PITCH" value="0."/> <!-- default 0 -->|
| <define name="AUTO_THROTTLE_CLIMB_THROTTLE_INCREMENT" value="0.1" unit="%/(m/s)"/>|
in the scenario you described you are changing from fixed values to the energy loop - its always a good idea to have the plane in a rather similar attitude/speed to do this. So what is your alt for stby? just thing about it - if it is the same alt as your deroute from the previous block try to increase the stby alt or decrease the deroute alt
<exception cond="GetPosAlt() > ground_alt+50" deroute="Standby"/>
this allows the plane to catch up.