Game freezes for ~10 seconds when equipping rocket launcher


When I select the rocket launcher as the active weapon for a soldier, the game soft freezes for 10 seconds. If I make any clicks during that time, they queue and all activate at once when control returns. This has caused me to insta-launch the rocket launcher directly on the character firing it, as I clicked directly on the soldier during this time. Nothing else causes this freeze for me; not even grenades, so it doesn’t seem that the explosive’s targeting feature is the global cause of this issue. The issue reproduces 100% for me, even within the same battle and same turn.

I am familiar with Unity, and I know that it is not asynchronous. I know that the Coroutines yield chunks of code to be executed by the single thread, and that thread just runs through chunks of code across all monobehaviours in the scene at once, simulating asynchonocity. All I can imagine is that the triggered logic when selecting this weapon is hitting logic that does not utilize a Coroutine to yield return something, and is instead executing all that logic in one go. But I also would expect this to have been reported before if it was a universal problem, and I couldn’t find an existing report of this.

Steps to Reproduce:

  1. Start mission
  2. Select soldier with rocket launcher
  3. Select rocket launcher as active weapon

Game freezes for ~10 seconds.
Windows Desktop
8 core, 5.0 ghz processor
Single GTX 1080i

Interesting, doesn’t happen to me on weaker rig.