TL;DR: Please let the turns of unmet factions calculate while it is the player's turn, while he is moving his army, building stuff and so on. That would save a tremendous amount of time.
The biggest flaw of Warhammer: Total War is the extreme long time it takes to calculate the enemies turns.
It just makes the game unplayable for me. I do not want to wait for about 1-2 minutes after I have finished my turn. Each time.
Now here is a suggestion that could help to improve the situation:
Currently the AI factions are basically in a list and after the players turn they get calculated in that order of the list.
However, it should be possible to calculate the turns of the unmet factions in parallel while it is the players turn.
Basically, make 2 lists of factions, one list of factions who are visible to the player and one with the faction that are not visible or not yet met.
Since the player is not met the calculations do not have to include whatever the player is doing. Now while the player is moving his armies, building stuff and thinking about his options, the game calculates all the unmet factions. In the order of the first list, like it would do normally. After the player has finished his turn the game continues to calculate the remaining factions like it normally would.
Now the problem of course is if the player meets a new faction because in a turn based game 2 factions (the player and the AI) should not be able to move at the same time.
Firstly, this new met faction will be removed from the list with factions that are allowed to be calculated while it is the players turn. The AI faction will normally finish its turn, but it is not allowed to interact or attack the player. It will basically ignore the player. After the player's turn the remaining factions get calculated and the new met faction gets added to the beginning of the other list. This reduces the chance of faction mixing up the order of their turns.
Now, it will happen that the order of turns for some factions get switched around, if one faction is moved from one list to the other, but honestly, who cares. In most cases this will have no impact at all and if it has an impact the player will probably not notice. The player does not care if a random faction has a slight advantage or disadvantage against another random faction.
Even though this sounds complicated this system should be fairly easy to implement because it just changes the order in which things are being calculated.
Seriously, I love this game, but I just can not enjoy it like this.
Thanks for reading