Is PPR already hardcoded somewhere into the suicide mechanism? I vaguely recall it was so i will operate under that assumption...If not, it's clearly a large improvement to be made.
I'd almost think that province buys shouldn't be automatic every time you have 8, but codified based on the number of provinces left.
If 8-4 provinces are left, just buy it.
If 3 left, only buy if vp differential <-18 (this number is a bit sketchy, but when you're behind 4 provinces to 1...you only stand a chance if you get a 5-3 duchy split and they never get a province, so why not try to get that 5-3 split ASAP instead of giving them the extra turns)
(Probably not worth a whole lot, but it has to come up a few times in 10000 games)
If 2 left, buy if vp differential >0 (>=0 if you're 2nd player) or if between -7 and-8.5 (you want to win if you get both of them in 2 turns, but assume your opponent will at least manage a duchy, and obviously you buy it if you're already winning)
Also, endgame sort of depends on your opponents last several turns, particularly in BM. Maybe there needs to be a GetOpponentTotalMoney function?
In fact, if a GOTM function were implemented, there should also be one for OpponentTotalMoneyPlayedThisShuffle, and OpponentCardsInDeck / OpponentCardsPlayedThisShuffle so you can do something like:
If (GOTM-OTMPTS) / (OCID-OCPTS) <8, Go for it, else take the duchy.