You might look into scorbit: https://medium.com/scorbit-pinball/scorbit-pinball-january-2020-update-89b6acb4a79e
For the scoring. For the other things, this is what I'd do:
Get a weebly board. It has more ram and rom on it to track the statistics you're looking for.
Modify the OS rom to record all those statistics. (Not the scores). Once in a while either look at them or record them as well.
To automate this as much as possible I'd likely attach the arduino like Ben Eater did to the J5 connector, and write a sketch to look for a specific strobe to an unused memory location in the stock code, which alerts the arduino to capture a byte. Then, send a stream of bytes along with the strobe to the arduino which comprises your information.
Your project idea would go one of several ways as I see it:
1) Snoop the bus to grab the info you want. Difficulty here would be parsing out the information, for which you'd have to understand the original code anyway, or re-write into Ike's framework - which in this case I think would be easier because you could report the information you're after directly. (Either over the serial monitor, or via an SD card library - lots of these exist already for arduino to do data logging.)
2) Add into the original code the ability to track what you're looking for, and use the arduino to collate it and dump it out. Bally Playboy has open romspace as it's shipped on 3x2716, so you have 2048 bytes available there to add your code. The difficulty here is interfacing the arduino to grab the statistics (well, and depending on how well versed you are in 6800 assembly.... if you can't do that, you'll have to find someone willing to do it/has done it already)
3) Add into the original code the ability to track what you're looking for, with the weebly board's extra ram leveraged to keep track of all the extended statistics. This also requires the ability to recreate the source code. Has the advantage that the arduino doesn't have to dump data in real time, the stats for the game can be kept, then at the end of the game, some handshaking can go on between the arduino and the 6800 coding.
Ike's setup with rewriting the whole game is by far the easiest IMO if you are comfortable with arduino coding (I know enough to barely get by, but I was able to follow his code no problem on BJ2020 and Stars2020, to the point where I think I could modify it as I saw fit.... with google at the handy to help)
There is another alternative to recreating the original source, and that's to re-write anew into something like Oliver Kaegi's PCK kit:
http://www.pinball4you.ch/okaegi/pro_pck.html - a ready built documented OS. There are also various other homebrew OS's available, from whatever LISY has, to one I've written (not publicly available) that requires the weebly board, to a Stern OS rewrite (meteor-up, as well as the earlier mpu100 games).
I've used the weebly stern/pinbol [williams] OS to recreate Stars as a proof of concept. I'm in progress of rewriting Bobby Orr Power Play into Stern PIGS' style code, and used the stern os mpu100 game to write CPR's cancelled Lost Vegas software and also rewritten a couple of other games (some williams in there so not applicable to Bally world). I actually track some statistics in the Night Rider game I wrote, although not down to each switch activation.
I keep track of all my games' scores in a spreadsheet and have done so for at least the last 12 years or so. It helps me track if I'm getting any better at the games (I'm not) and more importantly, tells me if I should think about selling a game, based on the # of plays I put on it year to year. There are external factors at play here though, because I'll go hot on titles for a while and then cold for a long time, or there will be something piled on it, or I'm doing a PF swap, etc.
I'm tempted to try and get something hacked into some of the games and add arduinos to it, ideally that communicate back to a database back end so I can get statistics at a glance, like after a party or something. Baby steps first though.
Stern's sb-100 sound board grabs a byte off the bus as its regular operating mode so I think an arduino could do the same.... heck, you could put the logic chips on it that do that and have the arduino read from those chips instead of trying to grab and debug real time.