I think the problem that most people are having is this.
There are existing laws, and therefore existing expectations that customers have , about what it means to 'buy' something.
You cant just go and change that agreement without making it clear to people what you are doing. Otherwise they have a right to be upset.
It is as simple as this:
If I knowingly create a situation , in which you are deceived into thinking you are buying something you are not, they I have lied to you and undermined our , previous, relationship. That is wrong.
I have to question if this use is even legal, ( I'm sure their are corporate lawyers all over this , but there is some grey area here).
The reality is the contracts cannot contravene consumer law.
For instance, it makes no difference what kind of contract you agree too. If you employer pays you less then minimum wage , even if you agreed to it in writing. You can turn around and sue you employer for the rest of your wages.
So, i understand why people are upset.
As far as , making money goes. If the game companies need more money for what they sell, they should
a) charge it.
b) make it easy to know and explicit what they expected to be paid and when.
Anything else is just fraud and there is no reason the consumer should tolerate it.