As far as I understand, the amount of TP you gain from punching is based on how much MND/mind you have, and also changes slightly if your opponent is a lot stronger than you.
You also only get as much % of the TP based on how much % of your power you are using, so when you would get 10 TP at 100%, you would only get 5 at 50%.
But when I tested it against a shadow dummy, I noticed that the amount of power im using does not affect how much TP i gain, because I get same amount of TP at 5% as I would get when I am at 100%.
I honestly don’t know if this is a bug or not, but it feels quite out of place and also doesn’t make a lot of sense, because there would be no good reason to train with weights/gravity, when you can simply power down to 5% and still get the same amount of TP.