@The_Jerol
False. There is a predetermined factor which is randomly generated beforehand. RNG stands for random number generator so get your facts straight before going all fanboy rant on others. Also the programming has to do this otherwise battles would lag too much as some developer stated in another topic.
As you said yourself, a single aspect of the battle done differently by your side breaks this chain of pre-calculated moves. You can compare this to an old chess computer where the AI repeats moves as patterns arise and you play exactly the same (making the same mistakes or good moves over and over again). If you change strategy, the AI or computer will also change the strategy.