Progress but not there yet. Here is the report:
Had a play around last night with a few games playing both sides, hotseat and against AI. First impression is that the withdraw fix has improved the chance of a withdraw happening and I haven't spotted any problems caused by the change so far - which is good.
However there are occasions where a unit should withdraw, i.e. at disruption 4, but does not because there is no route available that does not pass through an enemy ZoC. At the moment it will just sit there until either one of the enemy units move out of the way so it can escape or the enemy move in and finish it off. Is it possible in this situation, i.e. unit cannot withdraw as trapped by ZoCs, that the unit is either eliminated or at least starts taking some pip damage? I believe that unless a player sees something happen every time a unit should withdraw then they will continue to think that there's a problem with the game.---------------This is a game change. Have to examine the effects-Tim
With the 'Infinite Assault Hex Loop after Reload', fix, it appears to work. I've tried games saved at various stages of the assault phase (with single and multiple assaults) and all seem to progress correctly. In particular, games saved when no more assaults are to happen and showing 'Finished' progressed OK when they were restarted.
1) Units not withdrawing
Legal withdrawal hexes were limited to hexes that are further from the enemy than the unit's current hex. This could cause a unit to become 'boxed in' and not withdraw at all.
If a unit cannot withdraw under the above constraints, the check is done again allowing a unit to move to hexes equidistant to the enemy
2) Infinite Assualt Hex Loop after Reload
If the game is saved after the assault combat is completed but before the phase is ended, the game will not be able to continue upon loading.
Game now displays "End Phase" button instead of "Next Assault Hex" button.