Posted September 11, 2021 by AGuyNamedEdward
This piece is going to delve into a bunch of pseudocode, so if you're not much of a programmer: hey, twins!
The Hustle is about leveraging mechanics (sometimes against each other) to get a leg up in a brutally silly version of capitalism.
It’s a bit like a clockwork puzzle, and I wanted to reward players for pulling at the gears. I also wanted to give them something at the end to remember the experience: a hopefully-funny snapshot of their notable moments that would make the exploration worth it.
So, I created the epilogue system.
At the end of The Hustle, when all the money/property/capitalism has been tallied, the game assigns each player an adjective and a noun. "Here's who you were," basically.
And so on.
In order for the game to recognize your notable moments, it has to:
#1 is easy. I have to take steps to stop my computer from remembering everything I do.
But #2, though. That’s hard.
How would a computer know when a player’s behavior is notable?
I haven’t let that stop me so far, sooooooooo —
All the possible descriptors start with a relevance score of zero, and through the process of sifting, we increase the score until one is clearly the most relevant. It starts with a word’s prerequisites.
Every potential adjective or verb has prerequisites that the player’s performance must meet in order for the word to make sense.
Let's say the word was "Bedraggled," as in "Bedraggled Game Developer." The prerequisites might look like:
And that means:
All of these must be true for "Bedraggled" to make sense, and be eligible as “the final adjective.”
There’s a nitpicky part of my brain that’s screaming right now, and it looks like this:
But allow me to remind myself: it's actually very performant. It allows me to add new epilogues on my cellphone at 2am, which is about as performant as I can hope for.
My rationale is this: if a word has 15 prerequisites, it is very rare and very specific, and therefore very relevant if the player qualifies.
Death is a critical game mechanic in capitalism (kinda doesn't work without it), so it had to be present in The Hustle also.
But that would leave me with one constraint:
didYouSrslyGetFraggedByABoardGame_=_true
Which, according to the system so far, is worth exactly "1 chunk" of relevance.
"Am I dead" is a lot more relevant than "1 chunk's worth."
So, each word has additional relevance weight: a plain integer that mathematically represents me leaning on the relevance scale.
That way, if the player passes this one:
wonAtBingo_=_true, splurgedOnBurgers_=_false
And this one:
rammedToDeathByCop_=_true
"Didn't spend bingo money on empty calories" isn't assumed to be twice as relevant as "died in a fiery explosion of injustice."
We’ve made it this far: the player clearly is a “Sociopathic Penny-Pincher,” let’s say.
But: this player plays the same way every time. They always get Sociopathic Penny-Pincher. And today, they were playing with their cousin, the grandparent of sociopathic penny-pinching.
To avoid this, the game asks two questions:
If so, knock it to the very bottom of the list. We don’t use this unless there’s literally nothing else that applies.
Jokes are not as funny the 20th time.* So if this word has been used a lot in the past, knock its relevance score down a bunch.
In this way, “relevance” represents not just “applicability,” but “usability:” will it actually be fun to use this word again?
Where the tuning happens is "by how much do we reduce the relevance of a word that's already been used?" If a word is really relevant, and maybe represents a very memorable moment / series of choices in the game, we want them to get that label, even if it's been seen before.
And that's the part I'm still sorting through.
If you’re interested in this kind of thing, I highly recommend "The System Behind Hades' Astounding Dialogue" by People Make Games, which partly inspired this system.
We'll talk about The Hustle itself, and trying to fix the terrible, terribly popular game called Monopoly.
(This graphic is leftover from an earlier draft of this post:)
* Jokes are hilarious the 21st time you hear them, but that’s outside the scope of this discussion.