Character specific variations are possible. I foresee them being done like this:
For each set of codes that gives certain variables, we will find a location which can be referenced by the code which stores the information of the player using it. For example, the Dash Speed/FF/SH code recalls information from the actual Character Memory (I suspect all of them will, conveniently), and I think it's pretty clear there will be an indicator there of which character it is.
In the constants write field, we will instead write every single value used in a codeset. For example, we would have 0.8, 0.85, 0.9, 0.95...1.2 all written next to each other.
The ASM code then performs a check. It sets dash speed to AA. Then it checks if the character value field is equal to XX or YY or ZZ. If it is, it sets dash speed to BB. Then it checks if the character value field is equal to VV or WW. If it is, it sets dash speed to CC. etc. This way we can format it for many characters, and the line limit is not very large (about 1 line per character).
With a code increase, certain character specific codes will be made. The game sets up a loop, and goes to Player One's character information field. It then navigates to the move data section (which I pray exists), picking up the character ID of the character involved on the way. If the character ID is XX, then the variable V attached to the move M is changed to a specific value (we will know what to change it to because we will know its default). If the character ID is YY, then the variable W attached to the move N is changed to a different specific value. Etc. etc. The code then loops back to the start, except this time looking at Player 2's character information and repeats. This code is more line consuming (about a 30-40 line setup, then 2-3 lines per specific move modified, but will serve to fix certain annoying things such as Sheik's tiltlock without nerfing the move beyond belief.
Finally, moves which we believe are completely broken can be specifically retweaked with move specific codes if completely necessary. I recommend not, though.
Of course, some of this is circumstancial. A code length increase is feasible based on some of the work being done on Gecko OS, but it is still a whiles away and may not work as well as we want. I also rely on move data being stored in memory - I trust it is there, but it may be hard to find. The main problem, though, is that this type of modification is not the kind of thing that is THAT easy to do, and you will not make friends with hackers by asking for every permutation. We require some form of authority.