OK, time to blow the cobwebs off this one and literally clear the layer of dust from F-14. Life has been too busy the last couple of years and the pinball mojo kinda disappeared and every time I looked at the machine and its Frankenstein code that I'd cobbled together I just couldn't be bothered.
An extended Christmas break has changed that. I've also decided to switch programming framework and use the Mission Pinball Framework (MPF) instead of the hybrid concoction of Skeletongame, pyProcgame and pyProcgameHD that I was using before. That's after coming to the conclusion that I am not comfortable programming in Python and although Skeletongame does make it simpler it's not for me. That plus MPF has matured a lot since I played around with it a few years ago.
In order to use MPF all my RGB lights (inserts, the radar ring and GI) are now controlled by a Fadecandy board. I could probably have persuaded MPF to drive the Arduino, but it supports Fadecandy out of the box and it was a simple change to make.
At the moment I am recreating the original Williams F-14 ruleset in MPF. It's a good way to learn the framework as it takes away the distraction of coming up with all your own rules. It also means I won't need to run pinmame if I want to play the original, although that is still an option. At the moment the only downside of pinmame is that at the moment it won't drive the Fadecandy or the RGB DMD, but I might come back to that one day.
At the moment I've most of the non-multiball code working....
- Hitting the lit rescue target lights the kickback.
- Kickback working including a short grace period
- Bonus scoring
- Bonus multiplier via the top orbit
- Hitting the moving lit 1-6 target lights the spinner and Bonus multipliers
- Yagov kicker shot awards the kills
- Left inlane gives Launch Bonus Hurrup to the vuk
- vuk shot spots random TOMCAT letter
- TOMCAT targets light locks.
- The diverters on the ramp will route the ball to a lit lock
- Once 3 balls are locked, the vuk shot will start the multiball. At the moment this just kicks the 4 balls onto the playfield, no specific code here yet
The only thing I'm not planning to recreate fully is the display animation etc. I've decided to go back to the RGB DMD matrix display, including 2 half size ones on the apron (the glass *just* clears them). A couple of slightly blurry pictures. At the moment both the apron displays mirror each other for testing.
So far I didn't write one line of Python code to get all of the above working, and I'm pretty confident I can finish the original ruleset without writing any. Once you get your head around the "config" style of the framework and the whole event-based activity it's really good to use.
So next steps ...
- put some new switches in F-14. I've found that some of the old switches are really flaky, especially the 2 centre locks. Often a ball will land in there and the switch won't register even though it's closed. Pinmame and MPF both get confused at that point. Got some replacements on order.
- work out how to attach the apron displays.
- get the full multiball code working
- put some more sounds in - I spent a few hours dumping all the original sounds and music from pinmame, so just need to plumb them in.
- add the missing lamp shows
Then we can extend to the additional Second Sortie rules, but I've learned over the course of this extended thread not to run before I can walk