What I realized though, regarding the enemy types, is whether in the game anything like damage amount different to "0" or "1" is actually a thing. Do you have any RNG going on in the damage system in your game or does the damage system include any other value than "true=hit=dead" or "false=missed=survive"?
In the original WH40K, there are "wounds" and one hit equals one wound. In order to deal a wound, one needs to hit the target, then the hit impact needs to bypass the endurance of the target, then the target has the right for "armour=saving" test, but only if the armour piercing value of the weapon is lower than the actual armour value of the target. Sounds complicated, but it is actually pretty straightforward.
Anyway, some characters could stand more than one wound, but I am uncertain whether this was the case with regular Tyranid troops. Majority of troops are dead on first received impact.
If we assumed that in your game one Xeno could survive a single shot from one gun type but die instantly to a shot from another gun type, there must be some measure telling by what rule this happens. If the game is to be diversified, some rebalancing is unavoidable either how.
Both trails lead us to assuming how much of damage do certain guns deal and how much damage per shot one Xeno of given kind can survive. For example, bolter could deliver 2 points of damage. Xeno tier "1" has 2 points of health, so dies instantly to one bolter shot. Xeno tier "3" has 3 points of health, so survives one bolter shot. Xeno tier "2" has 1 point of health, so dies instantly to one bolther shot. There is some space to come up with different ideas revolving around it, both the guns and the Xeno types.
Guns could furthermore affect the speed of a unit. Light firearms would grant bonus to AP, while heavy guns, a penalty. So, quite like in the Chaos Gate, perhaps before each mission, one could change the weapon deployment?
EDIT:
Also, maybe it would be feasible to make a browser-based version of the game?