Devlog #3 — Making a champion
We’re wrapping up implementation of competitions (well, just the basic ones). Technically, it’s more accurate to call what we've worked on
shows, as we will offer athletic competitions as well. Our basic
vanilla shows run multiple times per real-life week. Here’s what they’re for:
- Letting you assess a pastry-cat’s current taste profile. We’re experimenting with hiding taste stats and encouraging you to find other ways of introspecting cats’ current tastes. But show scores are an imperfect measure, as you’ll see.
Scores are shown on the right.
- Earning money. One of the primary ways, besides selling, collecting breeding fees, and other future methods of making a profit. Competitions as a moneymaking device are a staple of our genre, if a bit odd from an in-universe standpoint. (For this to be a viable source of income for players, most entrants should more than recoup the entry fee, and the bottom placers should recover some of their entry fee. Let’s just say there’s a fantastic sponsorship deal at play.)
- Meeting entry requirements into special shows. We’ve planned a host of fun and more prestigious shows (including themed shows, tournament brackets, and shows that ask for assemblages of cats or look at multiple tastes).
Our current specification is just a foundation to support the full gamut of competitions we’ll eventually build out. A(nother) revamp is on the horizon!
Hyping up competitions
The competitions module, in an exciting calendar form!
We want to
avoid taking a click-and-done approach to competitions. Instead, we'd like players to:
- feel anticipation for upcoming competitions
- feel that the playing field is even
- make thoughtful choices when entering competitions
- prepare for upcoming competitions
- gain useful intel from the outcome of competitions. And why not feel that the scores/outcomes are justified while we're at it?
We'll discuss how our present implementation doesn't quite hit all these points and how we'll remedy that.
Priming anticipation: presentation & predictability
Presenting upcoming shows in calendar form feels visually exciting and appropriate. We're tugging at players' instincts to check boxes
by leaving show dates your cat hasn't entered
visually blank. I expect the visual to evolve as we playtest what information players find most pertinent when entering competitions (of course, permitting layout customization is always a good bet!). For instance, when special shows are implemented, players should be able to easily visualize their cats' progress in each series of special shows.
The 4 competition weeks every real-life month, showing minor and major show dates (there's a minor show on the 21st too)
We want to build anticipation predictably around
specific calendar dates, like how some games start events or daily rewards on the 1st of each month. (We will have other systems that develop anticipation for specific dates.)
First, a brief categorization of vanilla shows:
minor shows have fewer participants and a smaller purse than
major shows. Minor shows are judged on dates with multiples of 3, and major shows (and the future special shows) are judged on dates with multiples of 7. Judging means those shows fully
close to all entries and release their results within minutes of midnight.
This system is designed to (hopefully!) create predictability around exact dates, but also
variance, as each competition week will have a different rhythm of show results. The sheer quantity of show dates probably dilutes any sense of hype. But really, more anticipation will come from the accolades, titles, and leaderboard presence, which is all to come!
The nitty gritty of when shows are judged
We have a somewhat unconventional
game time, which I will briefly delve into. Competition weeks run from calendar days 1–7, 8–14, 15–21, and 22–28. All minor shows, major shows, and special shows will
open for entries on the first of that "week". (A small correction: there is no minor show that closes on the 15th, as players would only have a few minutes to enter it after the server's midnight.)
Leveling the playing field
It's no fun when competition outcomes are a foregone conclusion, easily calculated with a single glance at the list of entries. Here's what we're trying to do about that:
- Meaningful RNG involved in computing the score
- Use of qualifying scores to classify cats of differing prowess
- Random division of entrants (rather than giving players the ability to choose based on existing entrants)
- Guaranteed NPC entrants which set the bar
Competition scores: a dance of RNG and stats
Too much RNG spoils the fun but without a random shakeup would make competition scoring deadly dull. We want a system where RNG can be manageable and even surmountable. Enter
taste purity into the scoring formula!
The old visualization for taste gene percentages, where each area represents one of the five tastes
To quickly explain, pastry-cats have two aspects of taste: taste stats and taste "genes". Taste genes are decimal values 0.0 and up that influence a cat's max taste stats. Picture the cat represented in the image above. Such a pastry-cat may have the following genes: out of 200.0
total, 2.0 (1% of the total) sweet, 18.0 (9%) bitter, 56.0 (28%) umami, 24.0 (12%) tart, and 100.0 (50%) salty.
Those percentages represent
taste purity, which in turn directly affect RNG, where
higher percentages lead to
less randomness and
more predictability. For a rough estimate, a cat with 28% umami genes will be scored between 28–100% of its current umami stat value. Thus, taste purity is a gauge of consistency. And because genes can be manipulated by careful breeding over generations, you
can control the levels of RNG present.
All is not lost if your pastry-cat is an even mix of tastes! We will have other competitions that score differently, some prizing a
specific combination of tastes.
Limiting unfair competition
Even mid-level consistency pastry-cats with outrageously high stats can clearly out-perform high-consistency, lower-stat cats. So before your pastry-cat is eligible for the wider world of shows, they must undergo a series of three
qualifying shows to assign them to a
tier.
Qualifying shows are much like minor shows in terms of purse and show dates. Once your cat completes the three shows, their scores are weighted into an average
tier score (with the largest score having a higher weight), which determines their
show tier. Pastry-cats with tier scores falling within certain boundaries are lumped into one tier and show against one another. Subsequent shows continue contributing to an always-updating tier score, until the day they are fully trained (well, we'll implement that change soon).
Wouldn't the tier score be skewed if a pastry-cat rarely enters shows?
That's definitely on our minds. We're thinking of adding
re-qualifying shows, required of pastry-cats whose last score is too "stale". But the date of "expiration" must be carefully balanced to consider what is a reasonable amount to wait for large bakeries juggling hundreds of cats. And we don't want to punish people for taking breaks. Currently, we're considering requiring a single re-qualifying show that fully determines the cat's tier score (perhaps with penalties). Time and data will tell!
NPC pastry-cats & anonymous entrants
As we're only testing locally, and then with a small alpha group, we're not yet concerned with large fields of entrants. When the time comes, we'll divide up all the entrants evenly (ideally keeping many of the same bakery's pastry-cats separate).
A few slots for each show will be reserved for pastry-cats belonging to NPCs, to
set the bar for that tier: this prevents a single show from being stacked with high-performing pastry-cats
and from allowing easy wins. And it creates some story fun, as you'll encounter those NPCs in the far-off (stretch goal) story quests.
Keeping the entrants a mystery should help cut down on canceling entries due to the competition. At the same time, it might be fun to see who else is competing — this will be the case for special shows.
It continues…
I'll address the final three bullet points (making thoughtful choices, prepwork, and gaining useful intel) in a future post! Probably not next, since most of it is under the "want" not the "implemented" category.
Changing or refunding show entries isn't yet implemented; here's the UI
Next post… fleshing out the mechanical distinctions between the five tastes
The five tastes, before their brutal revamp