The thing I want to achieve is:
Some recipes now have RPM limits (must be greater than x and smaller than y)
Cogwheels made from different materials have different RPM limit
Some recipes now have rotation direction limit (must be clockwise or so)
Now I want to ask you about the abstract best practice to achieve this. Not too much in detail, I just want to ask a direction to get started with.
First, it is obvious that we can add new blocks and recipe categories which inherits from Create's base classes. Many mod addons are built in this way (AE2Fluid, Create:Connected...). However, the machines in original Create mod might not compat with our modified recipes.
Therefore, I think it is better if we can change the behaviors of the cogwheels and machines in original Create mod with an addon mod. But I encountered many difficulties, since I do not know how to modify a block / item / blockstate after it is registered (both in content and JEI), not to mention that it comes from another mod. I am sorry that I am not familiar with Mod development.
We can also try to fork the Create repository and made changes directly on the codes, but it might introduce more problems, such as new version merge conflicts, license problems (if you use the modified mod in modpack it would not link to the original one) or so.
I wish you can provide some clues or ideas so that I can get started with something.