When users create macroscripts there is only one context where they are active - the Main UI group.
This means all user-created macroscripts will always be executed regardless of what tool the user is using.
A lot of native macroscripts/shortcuts that comes with 3ds max have context sensitivity, meaning they will only run when a specific tool is active. Why cannot user-created macroscripts have the same functionality without elaborate workarounds?
Defining a macroscript should provide a "group:" parameter or similar to give the macro simple and easy context sensitivity. So if a macro is defined with a group:"Unwrap UVW" it means it will only run if the Unwrap UVW editor is active, just like the native shortcuts that exists under the Unwrap UVW group.
In practice this gives the same functionality as for example pressing "S" when not working in the Unwrap UVW editor toggles the snap, while pressing "S" when the editor is open will stitch selected UV element instead.
This saves a lot of precious keyboard space as keys can be used for multiple purposes with different tool contexts, but it could save even more if same functionality can be provided for user-created macroscripts. This can also save precious quad menu space as menu options will not show unless the user is in the right tool context. This removes bloating of menus if you are someone who like to customize your user interface a lot.
The context sensitivity of scripts should of course respect the Keyboard Shortcut Override mode if the user only want to use Main UI shortcuts.
Context-sensitive macroscripts is a long overdue aspect of user-created functionality that needs to be fixed to get 3ds max on par with the user friendliness of most other modern 3d software out there.
Can't find what you're looking for? Ask the community or share your knowledge.