Hello
I would like to bring an issue to your attention.
The melee enemies, especially beasts ( so far encountered zombies, megascorpions and white shamblers), seem to operate like this:
1) if within range to move and attack player's gal they do so;
2) in out of range to attack this turn, the beast mills around aimlessly, neither advancing meaningfully, nor purposefully hiding out of line of sight.
As a result they often wander around and stay in sight of my soldiers, who happily shoot them to bits turn after turn.
Perhaps it would be possible to change melee-only enemies action algorithms to something more meaningful like:
1) if within range to move and attack player's gal they do so;
2) if out of range, move to end it's turn closer to nearest enemy* but out of sight or in cover from maximum number of enemies (advancing from cover to cover, so to speak).
3) if unable to do so, either charge straight at nearest enemy, or hide out of line of sight.
When measuring what player unit is nearest to "advance under cover" to, ai melee units should ignore units that can fly (unless they can fly too, or mission is in tunnels where units can't fly very high), to avoid parrot or some other flying unit baiting away all the monsters who can't even touch it.
Also, the "advance under cover / charge towards nearest opponent" might be changed to "advance to end up as close to as many opponents", calculating lowest sum distance.
Note that when saying "closest" I mean "requiring least TU to reach it", not just linearly closest, otherwise if there is a wall between monster and soldier, monster just bumps into wall, because going around would take him linearly further away from it's target.