https://pinballmakers.com/ has a lot of great info, especially on construction and also the pros and cons of the different controllers available.
There are a few options for ways to create the code, but I think most use Mission Pinball, which is pretty robust. You can start playing around with it by working through the tutorial at https://missionpinball.org/
This sounds like an awesome thing and you have a lot of cool ideas for rules.