You can change their triggers in the character.cmd file. Add a power requirement or increase it to make it more rare:
trigger1 = power >= x
The higher the number on x, the more power the move needs to be used, with 3000 typically being the maximum for most characters in my experience.
You can also add a randomizer:
trigger1 = random >= x
With this, the game will roll a dice and give you a number somewhere between 1 and 1000. The higher the number in the example, the lower the chance the move will appear.
Or you can do them both in one:
trigger1 = power >= x && random >= x
You can of course replace the greater-than sign with a lesser-than sign for the random trigger, but it would get the same effect either way, just that you need to set a low number instead of a high one.
For your Ryu example, you would simply need to give the hadoken a random chance at <= 600 (or >= 400), and the tatsumaki senpyukakku to <= 400 (or >= 600), and you'd technically get 60% chance for hadoken and 40% for tatsumaki.
Just know that a lot of characters already have triggers like these, and might fuck with any alterations you make, in which case you'll just have to experiment. I'm new to this myself, but I've changed a few characters to alter their move lists at least. Still trying to crack LeoFM...
Hope that helps! And maybe someone else has a better way to do this, in which case I'd gladly take their advice as well.
Edit: keep in mind that adding a power requirement does NOT take away from their power bar, it just adds another required trigger for the move to be used. You need to add or alter a poweradd statement in the character.cns for that move (state) if you want it to actually take away power.
For example, if you add a trigger for power >= 500, you need to have a poweradd = -500 in the cns file for the move to actually COST 500.