Hi,
it rather sounds like your project will require quite a lot of custom code.
You can do so in Mach3....but its not easy. The scripting language is a variant of Visual Basic, and that in itself has shortcomings. So much so......that is why is
changed to Mach4 all those years ago.
Mach4 is a highly structured and modularised application. It uses Lua as a scripting language. Lua is not especially easy to use, but it has a very lightweight software
footprint and runs blazingly fast. The two combined means that Mach4 is a vastly better proposition for customisation. Having said that there is a distinct learning curve,
all that flexibility, power and speed don't come free!
In Mach4 there are two main areas to put custom code.
The first is a a macro within the Gcode interpreter/trajectory planner. For example you might wish to write a macro to change injector from one color to another:
m150() changes to Red
m151() changes to Blue
m152() changes to Green
etc.
These macros are small blocks of code that you would put in the macros folder of your profile. If you need a different color, Blue say, then you would write a line of m151 in the Gcode.
When the job is running and Mach encounters an m151 call it will execute that code.
Another area where you can place custom code is the 'Screen Script'. This is large block of code that includes all the screen elements, things like DROs, toolpath windows etc.
You can add chunks of code to this script and that would provide a specific functionality which is generally available throughout Mach.
There are yet other scripts, like the PLC script that give you a place to put code that runs every few milliseconds, and the PMC script that gives you ladder logic.
All-in-all this modularity gives Mach4 scripting a great deal more power and flexibility than Mach3.
Craig