Sounds great, do you know how to?
In particular
1) how do I disable a standard button
2) can I prevent the player from issueing the same action via hotkey
3) can I use the free command card space for other abilities?
Note that UI-natives can achieve 1) and 2), but achieving 3) would be a lot of work. So UI-natives are not my preferred solution, but I'm still up for it, if you have a multiplayer-compatible solution without network delay.
It is very easy once you know what to do. You have to extract the file Units\CommandFunc.txt file from war3.mpq. I think war3.mpq no longer exists because of the update of some patch but I'm not sure. If you know where war3.mpq is please tell me.
Anyways I'll share you the file, I will attach it on this post
In the file CommandFunc you just have to modify where it says "Buttonpos=x,x" to "buttonpos=-2147483648,-2147483648". If you put the button position to 0,-11 it also works, but according to what I read, 0,-11 causes the game to crash if you are using MAC. If you don't want a button to be modified just the delete the whole line of "Buttonpos".
In the file I attached the buttons Patrol, Stop and Move are removed. You can also remove Attack, Attack Ground, Hold Position as well as the Hero Abilities button and the Cancel button (the Cancel button is the one what appears when you click the Hero abilities. It also appears in other situations, like when you are researching something; when you click the "build" button on a peasant; or when you open a spell book).
Your questions:
1) Technically the buttons aren't disabled. They are just hidden. Their buttons aren't shown in the user interface, but they are there. If they were really disabled their function would stop working. Example: If you disable "Move" the unit would not be able to move. Since the buttons are just hidden the unit can still use their functions.
2) If you hide a button the hotkey of that button will no longer do something. It will be free of functions.
3) Yes. The command card will have one extra free space for each button you remove.
Very important things:
-Once you import the file you have to change its name to "Units\CommandFunc.txt". If you don't do this, it will be as if you didn't import anything.
-The buttons are removed for ALL units.
-In the second file I attached "CommandFuncExtended" there is more data that you can manipulate.
-You can give orders with triggers of the functions of the buttons that are hidden.
I have no idea what you mean by UI-natives. I'm completely ignorant regard that method. Could you please explain it very detailed for me? I'm really curious.