Gridiron Solitaire #21:I'm slowly losing my mind because I'm fine-tuning the play balance, and I can't quite get it right.
The wildcard was a nice addition, and it makes the game more fun to play, but it's tilted the play balance and made it easier to win. I've tightened some things up (like the benevolence of the Big Play button on offense, which is a bit more churlish now), but it's still slightly too easy.
There are changes I could make that would fix this right away--for instance, taking away two card slots if the CPU guesses your playcall instead of one-- but in every case, making the change would make the game less fun.
So after looking at all the "easy" solutions, I arrived at the hard one: the playcalling A.I. Since you lose a card slot if the AI guesses your play call, if I can make the AI even marginally smarter, that should be enough to get the game in balance again.
After working on this for a few days, I've come to an ugly realization: getting the AI from 90% to 100% (or close) in terms of intelligence takes about as much time as it originally took to get to 90%. It's nasty, really nasty, and it's frustrating.
What makes it worse is that I know there is a formula in my head that encompasses almost every situation. One formula, instead of handcrafting the A.I. to a huge set of individual situations. But even though I know that formula is rattling around in my head somewhere, I can't extract it yet. I get pieces, but not the whole.
On a more pleasant note, after mostly fixing problems in rare situations (no crashes, but incorrect behavior), I did have one very solid idea. Up to this point, time has always been a fixed run-off per human card match (if the human player is on offense) or per play (if the CPU is on offense). The clock runs more slowly in the last three minutes of the half/game, but it's still a fixed formula.
Really, though, that doesn't make sense. Football plays aren't that precise. I realized that what I need is for the run-off to have a degree of variability, so that a valid card match--for example--could run off X seconds +/- 10%. Now, it won't be possible a player to calculate time so exactly at the end of the game, and it will feel more natural.
No screenshots this week, but hopefully I'll have something for you next time.