To replicate in the intro screen (which is where I first noticed it), take a ship with Omsk armor and shields (I used the Krethul frigate from TSB, but Nasser should also work). For the opposition, fill the screen with Hornets. There shouldn’t be any real slowdown. Change those Hornets out for Earthzones, however, and the lag should be noticeable.

  I’m not exactly sure what’s causing it, but something somewhere is wrong. Basicially, a ship with a <GetMaxHP> shield will cause lag if there are a lot of other ships with shields (which don’t need the event). My first thought was that the one shield’s event is somehow checking for every shield instead of just itself…?

assumedpseudonym 16 Aug 2019:

 …Actually, I just went back and retested everything again, and this time there was no lag. The difference this time is that I didn’t have my intro screen damage gauges active (which are done with overlays that are updated every tick). It might just have been some weird interaction.

 On the other hand, even without said damage gauges, having lots of <GetMaxHP> shields active at one time does still cause a pretty hefty slowdown, so it probably still needs looked into.

george moromisato 28 Feb 2020:

Made a couple of fixes:

  • Reduced the number of (internal) calls to <GetMaxHP>.
  • Cached result of <GetMaxHP> so that we don't call it more than once per frame per shield (we used to call it a lot more).