Argh, I love this so much!
Huge post, I'm sorry!
However, I'm excited about where this is going, and can see how it could be better, so (as always) I have to make suggestions. Leave PACE blank early on:
the PACE number, as implemented here, is literally meaningless until at least level 4 at the very earliest. All that number is, during the early going, is a red-herring that would cause needless confusion. I've tried different styles of 1-1 and I get all sorts of crazy numbers depending on how I play it. If I just run it and skip the hammers, I get a pace of 500K-odd, which is an almost impossibly-low KS score while a weak-ish 7K gives me a 943K pace. I think that number should just stay blank until 6-1, or say "TBD" or "PENDING" or some such. IMO, a projected pace should not appear until it can have some semblance of accuracy.
Toward that end, here are some ideas.Ignore L1 through L4 boards:
Include the level totals in the tally of course, but integrating individual board-type averages from L1 through L4 into the pace is not sensible
First reason: every board up to 4-5 has a different set of rules than what comes after. Without even getting into the differences of the speed/number/behavior of the obstacles, it really boils down to the timer, which, relative to L5+, starts at a lower value, and ticks down more slowly. That one factor really changes everything when it comes to scoring, and makes these boards useless as data points for producing an average from which to extrapolate pace (though one could make the argument that the Level 4 boards are close enough, especially the elevator board, which is identical to L5+).
Consider how much more difficult it is to get 11,000 points on 1-1 than it is to get 11,000 points on 5-1, or how easy it is to get a 9,000 point 1-2 (where leeching Kong can add thousands to your score), versus getting 9,000 points on 5-6 (where leeching is almost useless, and you instead need cooperative fireballs).
Second reason: a player's start strategy often has nothing to do with middle-game strategy. For example, it's common for players who want a low 1 million type score, or even up to 1.05, to simply warp to L5 by speeding through the early boards. But if the early-board numbers are included in the average, whether or not they're somehow calculated with a mind for their "L5 equivalent", they'll muck everything up. Depending on your strategy, you can go for 1.05M with a 100K start, or go for 1M with a 120K start. I think the calculator should only take the player's post-start
playstyle into account, because unless you're going for 1.1+, just about any approach to the start (fully-pressed or torn through) can get you the score you're trying to get.
Regardless of how the player approaches them, the early boards are junk data for numerous reasons, and they'll leave a strong taint
on the averages until deep in the game.Don't spot the player ANY death points:
death points should be considered a bonus, not an expectation. When the player dies, just add those points to the final projected score. Since most deaths are accidental (unless you're Wes), they can be worth anything from 0 points to over 10,000 points, and they simply can't be predicted or averaged out before-the-fact in any reasonable way. (But if you do ultimately decide to pre-include death points, 8K per death is DEFINITELY too high! The 5K in Pauline is bad enough. I would say no higher than 3,000.)Until at least Level 10, only calculate "real" averages for the barrel and elevator boards:
I've never actually said it out loud, but I have a saying - barrels and springs are about getting what you take. Pies and rivets are about taking what you're given
If the player's style is consistent, individual barrel and elevator board scores won't deviate much from the mean, because on these board-types, the player has a high degree of control over the score achieved.
But for pie factories and rivets, "you take what you're given," and what you're given will often deviate hugely (on the plus or minus side) from expectation. So if you get an outlier board or two early in the run, they will be super-confounding data points. This can sometimes be a serious problem for pace calculation until fairly deep into the game.
It may be a controversial idea, but I think you should handle L5+ pies and rivets by pre-populating them with 17-times some fairly-reliable average value (something like 8,000 pie, 7,500 rivet), and replace with the actual numbers as the player completes boards.
Early outlier pie and rivets just cause players to over (or under) estimate their pace, and bewilder those who don't understand the problem of averaging from a small, deviant sample. Anything that can be done to prevent JCB and Brian Allen from beaming about their "1.1 million pace" on 6-1 (after just having gotten some silly 10,500 point rivet) would be a good thing.
While the trainer will never be able to be used for actual, submittable games, it's worthwhile to get a genuinely good pace-calculator algorithm going, since it would have the potential of being ported over to a standalone pace calculator. I have yet to see or use a pace calculator that isn't deeply flawed, and I'm hopeful about moving toward one that isn't!