PastryCats — breed the saltiest cupcake-cat (if you want!)

Recurrence

New member
pastrycats-logo-light.webp

~ PastryCats devlog series ~
A pastry-like cat-raising sim in a baking-themed universe ~ for the browser + mobile

Get invited for beta: pastrycats.com ~ Quick development snippets on Mastodon @coffee ~ You can also read this here: blog.pastrycats.com


We’re a two-partner team, merging our love for immersive stories, slow-burn progression, spreadsheeting our lives, and of course virtual pet sims into one!


To whet your appetite…


We want to bring something new to the virtual pet / raising sim genre! I hope to share our development of these features:

  • multi-breed cross-breeding (think recipes with 3 or more ingredients!)
  • collaborative pet care (à la collaborative documents) for breeding teams/groups
  • custom training buttons (as a basic example, picture a button that triggers a series of training actions in order)
  • spreadsheet-style views to help organize and analyze your pets (this will arise organically from players’ needs)


Crossbreed ingredient cats to make pastry cats with recipes!


This simple idea drives the gameplay for PastryCats, a half-breeding, half-baking (but not half-baked!) raising sim game. What are the wonderful creatures inhabiting this game? Sugar cats, butter cats, flour cats (and egg cats!), for starters. When you crossbreed all four cats, you get a cupcake cat 🧁🐈 There’s a tangle of fun complications to get that working — more on that in a future post.


Meet Butter-Me-Up, a butter cat with high bitterness


buttercat-temporary-art.webp



The cat art is only temporary, as we’re exploring different avenues

As a butter cat, her “fur” is a layer of butter. She essentially sheds butter. Bitter butter. (Well, that’s an approximate explanation.) Grooming any pastrycat yields some form of pastry, mix, or ingredient.

buttercat-taste-profile.webp

Butter-Me-Up’s taste profile

Her taste profile consists of five tastes: sweet, umami, bitter, salty, tart (the names chosen to avoid too many s__ words, i.e. sweet/salty/sour/savory). The max each taste reaches is controlled by genetic predisposition. As you can see, she has a higher percentage of bitterness, and will likely breed a bitter cupcake cat!

In keeping with the theme of baking, percentages of taste matter in the context of competitions, especially those that account for purity of taste.


Not just a chimera


We want our pastrycats to have internal consistency, unlike a chimera of sewn-together parts. Beyond the alpha stage of PastryCats, the eponymous cats will have:

  • textures (such as airiness and crunch)
  • dominant flavor note (such as floury)
  • protein content

These characteristics will interweave with other mechanics, like personality, custom mixed feed, and competitions. (They will also be supported by lore, which is in-development!)


Cats with autonomy


It’s important for us to keep the pastrycats cat-like. That’s why caring for a pastrycat requires juggling their current level of interest per activity, their autonomy meter, and various other needs — or the cat will assert their independence and perform actions autonomously.

buttercat-daily-log.webp

A log of Butter-Me-Up’s day. The peach background color highlights autonomous actions

Giving the cat control of their activities is also a basic care action!

pastrycat-care-actions.webp

The “Free” action lets the cat choose their next activity


Next post… how our multi-breed cross-breeding system works


This is just a quick introduction/teaser. Hope to see you in the next post! Feel free to ask questions at any time 🙂

→ Next post (devlog #1)

cupcake-recipe-visualized.webp

 ​

The cupcake recipe, visualized

----​

All images, text, and other media belong to PastryCats.com, unless otherwise stated, in this and all following posts.
 
Last edited by a moderator:
Devlog #1 — Multi-breed cross-breeding, recipe-style


Baking recipes as a model for cross-breeding: this idea forms the core of PastryCats, hence it was the first we programmed and polished. Keep in mind sugar cats, buttercream cats, and cupcake cats are all considered “breeds”. We split the breeds into three categories (with increasing rarity!):

  • ingredients, the basic building blocks (like eggs and cream, even if in reality cream is derived from milk, but we may expand on this fact in the future)
  • mixes, combinations that are not considered “finished” products, hence wouldn’t be served at a bakery (buttercream = butter + sugar)
  • pastries, combinations that you would serve at a bakery (like tiramisu and cupcakes, even if cupcakes can be further crossed to make chocolate cupcakes)

← Intro post (devlog #0)

Here’s a cupcake’s pedigree visualized with emojis. It features a sugar cat, butter cat, flour cat, and egg cat, respectively, as the grandparents:

cupcake-recipe-visualized.webp

When two cats are bred, we determine the final breed of each kitten according to strict specifications, while also allowing flexibility from the simple fact that recipes can fail.

Sample recipes:

  • buttercream = butter + sugar
  • cupcake = sugar + butter + flour + egg
  • chocolate cupcake = chocolate + cupcake
  • macaron = buttercream + egg + sugar + almond

Let’s get some terms straight to make the rest of the explanations clear. All components to the right of the equal sign are considered direct components. Contrast those with indirect components, which constitute the union of all the ingredients that are transitively components of direct components. For example, the indirect components of a chocolate cupcake are sugar, butter, flour, and egg (but not chocolate — that’s a direct component).


Let’s bake a cupcake! Or, a meandering journey to create an algorithm to match recipes


Here’s how I stumbled into our present algorithm. To skip straight to the rules, see the headings below.

Let’s whip up a simple cupcake!

cupcake-level-pyramid.webp

(For this pedigree to work, note that pairings which don’t match a recipe result in one of the parents.)

We lack the Michelin chops to pull off noodle-filled dessert cupcakes, so no noodle cats permitted in our cupcake cat’s pedigree. Let’s issue an ultimatum: no unrelated cats in our recipe. How far back should we check? Three generations for pastries seems reasonable, allowing eight direct components; two generations for mixes, allowing four direct components.

invalid-cupcake-noodle.webp

What about indirect components — like sugar, butter, flour — in a chocolate cupcake? Kind of a necessity, otherwise a pedigreed cupcake could not hope to breed something interesting, hence the pedigree chart on the left. So indirect components can happily contribute to a pedigree, but…

chocolate-cupcake-direct-parents.webp

…a chocolate cupcake with flour as a parent? Opinionated, yes, but somehow that strikes the wrong tone. Let’s disallow indirect components as parents.

It would be dead simple to propagate cupcakes endlessly, if they bred true, so let’s further disallow purebred cupcakes. For a recipe to match, the parents must be direct components. (Hmm, but what a shame for cupcake x cupcake to never result in a cupcake, right? We’ll fix that.)

So cupcake ingredients are fairly common — in fact, identical to the recipe for pound cake. With our desire for an ever-expanding recipe book, this poses a problem: how can we differentiate pastries with maddeningly identical ingredients? A future feature may involve external or additional conditions (picture location-specific breeding, the presence of certain genes, and so on), but a simple temporary solution is to pick randomly when multiple recipes match.

And prioritize pastry recipes over mixes since pastries are complicated to breed, and possibly more coveted. It would be unpleasant for the following pedigree to always result in buttercream.

cupcake-not-buttercream.webp

What about that cupcake x cupcake conundrum? Introducing failure! All breeding attempts can result in recipe-matching failure, producing either a copy, direct component, or indirect component. So you can bake a cupcake out of pure cupcake parents, but to keep it challenging, it’s a rare one!

cupcake-x-cupcake.webp


Breeding on hard-mode


Remember how pastry recipes consider three generations, and mix recipes consider two generations? This allows for nightmarishly difficult pastries with 14 (!) direct components, and mixes with 6 direct components. Let’s imagine the fantasy recipe: butter-choc mix = buttercream + chocolate cupcake + sugar + butter + chocolate + cupcake….

max-pedigrees.webp

No failures allowed. Can you imagine breeding the hypothetical 14-ingredient pastry? Whew!


Concrete rules for matching a recipe


To summarize the above:

  • all direct components are in the immediate pedigree



    for pastries: look at the previous 3 generations (allows 8 direct components)

    cupcake-uneven.webp

  • for mixes: look at the previous 2 generations (allows 4 direct components)

[*]both parents must be direct components



chocolate-cupcake-direct-parents.webp


  • all indirect components are allowed

chocolate-cupcake-indirect.webp


  • nothing else is allowed

invalid-cupcake-buttercream.webp



Rules for finalizing a breed


  • if multiple recipes match, one is selected at random so plan your pedigrees wisely
  • pastry recipes will match before mixes (if the breeding is considered successful, mixes won’t even be checked)

cupcake-not-buttercream.webp


  • all recipes have a chance of failing: this guards against the possibility that every two components match a recipe (what if every possible cross of sugar, butter, flour, and egg created some mix/pastry such as buttercream?)

invalid-cupcake-buttercream.webp


  • failure (or lack of a match) results in either a copy, a direct component, or an indirect component of a parent (likelihood is ingredients > mixes > pastries)

cupcake-x-cupcake.webp


Now that I’ve listed out all the rules and examples, it might be time for me to revisit our tests…. Incidentally, pastries can’t at present “fail” into a mix (so no cupcake-matching pedigree can produce, say, buttercream). Something to be added….


This sounds needlessly complicated….


Yet fun! I’m toying with the idea of adding tools to “preview” all possible outcomes of a particular pairing of cats. Perhaps it only displays outcomes that the player has unlocked? (So if you’ve never bred a cupcake before, it won’t be easy to check if your pairing can produce a cupcake.) Another expansion on this idea is to adjust failure chances. Maybe your first cupcake will be the most punishing to breed (and require a recipe success), after which the success rate goes up?


UI Design Frenzy


(All those unfortunate gray circles are an artifact of Sketch’s comment system.)

ui-design-screenshot.webp


Pictured above is a screenshot of our Sketch file, where I design the UI components piecemeal (with a chaotic sense of organization). Each UI component is iterated on until I am satisfied, upon which it receives the 🐈‍⬛ stamp of approval. Afterwards, my all-seeing cat god (read: loyal frontend implementer) does her thing, then bestows the 🐈 stamp of completion. I keep all the rejects mixed up with approved versions, because in time, rejects prove to be gems for another purpose.

I fully expect UI overhauls are in short order, upon opening up the game to people that are not myself or my partner. Hopefully, I’ve created a system where primary actions are self-explanatory for most, and elements that may require learning are less essential. It’s a careful balance to strike between self-evident UI, aesthetics, and screen real-estate. (Make it “too obvious”, and it may result in generic UI or UI that occupies large screen space.)

Of course, short tutorials, tooltips, and a high degree of customization will likely ease the problem of UI confusion. Also, the cat’s care page doesn’t begin so cluttered: features are unlocked as their age/training progresses to vary the gameplay over time, provide a sense or progression, and not overwhelm players on their first cat.


Next time… cat autonomy in greater detail!


The peach background indicates autonomous actions taken by Butter-Me-Up

cat-autonomous-actions.webp


 
Devlog #2 — Autonomy: when cats shed interest like fur


Before discussing the autonomy/interest system we’re developing....


Current state of the game



Functional features


  • our recipe-based cross-breeding system, which produces litters
  • cats have needs (fullness, repose, amusement, presentation, autonomy) that decay over the course of a day
    pastrycat-need-meters.webp

  • care actions that satisfy their needs
    pastrycat-care-actions.webp

  • cats have taste genes and stats (sweet, umami, bitter, salty, tart), with a special algorithm (not just the average) for passing down genes and birth stats
  • training activities that increase taste stats
    puzzle-feeder-log.webp




    obstacle course, toys, cat tree, and puzzle feeder
  • each corresponds to a taste; there’s a “missing” 5th activity that might be included someday

[*]a rudimentary trust meter
pastrycat-trust-breakdown.webp


[*]cats have differing levels of interest in most activities, which decay if repeated too many times and increase over time away

[*]cats can perform autonomous actions, especially when their autonomy need is low



  • these actions prioritize some needs, and otherwise operate as “random events”

[*]actions are logged (and take time in the day) along with changes in stats

[*]partially done “cat show” system



  • cats can compete in general shows, with points tallied according to their taste stat and taste purity (the ratio of max taste stat to max overall stats)
  • NPC cats also compete
  • cats must enter qualifying shows, in order to be placed into tiers to even the field

[*]rudimentary NPC accounts that take random actions with their cats and enter them into shows




What we’re cooking up now


  • personalities that develop as cats age and which influence aspects of their daily lives, like stat changes
  • different need decay rates for kittens
  • a special series of shows run in the style of single-elimination tournaments
  • overhauling the NPC cats so that they’re more evenly spread in shows and provide score baselines


Autonomy: when cats shed interest like fur


Just as real-life cats experience boredom and crave novelty, we want our pastrycats to react to their own needs and behave autonomously.

Pastrycats attach independent interest levels to nearly all actions — besides eating from a bowl, sleeping (proofing!), and free time. Their interest in a particular activity decreases (growing bored) when you, the player, run the action and increases when other activities are performed (taking a break) — essentially encouraging cycling through activities in short bursts.

activity-interest-decaying.webp

interest falling like a waning moon
Interest decay is calculated as a base amount with multipliers. The base amounts differ across different activities — egg-washing provokes a lot more interest loss than playing with toys, for instance. This base is multiplied by various factors:

  • low average of needs
    need-meters-low.webp

  • certain personality “traits” (such as, well, “craves novelty”)

Now, for the big picture....


An interesting feedback loop


pastrycat-interest-loop.webp

Needs → Interest → Autonomy → Free time → Needs


A nice and neat (almost) circle. More specifically, what happens is....

pastrycat-detailed-interest-loop.webp

In greater detail, when a particular activity is performed:

  • low average needs apply a larger multiplier to that activity’s interest decay
  • performing an activity the pastrycat has little interest in decreases the autonomy need
  • low autonomy needs can trigger a 15–45 min. free period immediately after the activity
  • this free period: in future updates will prioritize fixing low needs, but at present chooses randomly


Actually, pastrycats can fix some needs


Repose and presentation are so important (and easy to DIY) that pastrycats automatically address these needs when they fall below a certain threshold. Naturally, self-grooming is less efficient than when you groom them. Thus, you are encouraged to make time for grooming (except in rare cases where a personality trait leads to more efficient self-grooming).

Otherwise, the free period behaves the same as the free time activity.

pastrycat-care-actions.webp

the rightmost care button

Freedom is a random event generator


cat-autonomous-actions.webp

Butter-Me-Up’s final activity of the day was to groom her own fur, triggered by low presentation
During free time, pastrycats indulge in a variety of activities such as hunting, proofing, and playing. While stat gains are lower than activities planned by you, these activities may result in a number of outcomes. Pastrycats may catch certain prey after hunting, experience dreams while proofing, or interact with your other cats while playing — inter-bakery interactions are a topic for a future post of their own (and unlikely to come to fruition until public beta).


A brief aside re: the daily log


I need to rethink the display of the daily log to better convey which entries represent autonomous actions or outcomes, and what the original activity should be....


Next post... current state of visuals, or maybe personality, who knows?


buttercat-color-variants.webp


 
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.
    pastrycat-show-record.webp

    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


pastrycat-show-calendar.webp

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.

minor-and-major-show-calendar.webp

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!

visualizing-taste-gene-percentages.webp

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.

pastrycat-show-selection.webp

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.

show-entry-edit-form.webp

Changing or refunding show entries isn't yet implemented; here's the UI


Next post… fleshing out the mechanical distinctions between the five tastes


pastrycat-taste-activities.webp

The five tastes, before their brutal revamp
 
Devlog #4 — Five tastes, five play styles


The cat art is slowly coming in! Our resident artist has a lot to learn. Here’s the first draft (to be reworked during public beta)!


This flourcat is Glaze-d (like a donut!) B&W making-of gif here.

Moving on, we’ve fleshed out how personalities are assigned and slowly revealed—all implemented about 2 months ago! But…


Pivoting from personality


Tiny snag: we want to relate personality traits to effects (like slowing trust gain, or increasing the likelihood of certain autonomous actions). With dozens of personality traits, each with the potential of affecting multiple areas of interactions with pastry-cats, there is a real possibility that the overall behavior of a pastry-cat becomes muddied and unpredictable. As it stands, the current implementation of training activities feels like a mishmash of potential—some tastes are considerably slower to train at the onset.


When a pastry-cat begins training, their progression in certain tastes is pretty substandard—this begs fixing!

Time to revisit the core traits of a pastrycat: the five tastes. (And swing back to personality in a future post.)


Five tastes, five play styles


Right now, the five tastes are interchangeable, which is boring.

Catering to specific play styles has long been in our sights. You know: the strategists, the completionists, the collectors, the competitors, the roleplayers. Why not support these play styles concretely? This neatly solves our problem with interchangeable tastes: by associating each with a distinct play style. So picking one or more tastes to devote your bakeries to is tantamount to subscribing to one or more play styles.


Something for everyone


We’ll briefly whet your appetite for each taste, then reveal a big picture for the deeper interplay between taste stats plus their corresponding play styles and associated features and how the two things buff each other—then finally dive into our umami taste!

Here’s how tastes and play styles match up:



Sweet pastry-cats are all about competing. We’re planning five types of athletic competitions to specialize in too, and sweetness boosts athletic performance. If you’re madly into tailoring training regimens and are hyper competitive—into the rat-race and all—keep an eye on this one!


The classic feather teaser, a 1-star toy

To cover the umami taste quickly before we dive deep, this specialization scratches that crafting itch. Pastry-cats gather materials while hunting (and, in the future, you may collect materials while exploring the wider worlds) and you can gather ingredients by grooming them—all to craft into a wide assortment of toys, tools, and accessories.


Trust (as well as obedience & empathy) are important for all pastry-cats, but especially affect bitter pastry-cats.

The bitter taste is for those who love text-based roleplay & RPGs, and who want to see the pastry-cats as cats to bond with. RPGs old and new are our inspiration. Exploration (with your cat!) is most certainly relevant here!

Any player worth their salt should be a top breeder! Breed for saltiness if you enjoy the thrill of perfecting breeding matches, growing strong lineages, and obsessing over intricate genetics. We’ll have your standard Mandelian inheritance, of course, but also some outlandish systems that are themselves a sort of mini-game, shall we say.

Tart pastry-cats are for the aesthetic. If you love to collect pretty things, decorate, hoard, and customize, we’ve got you covered here! We’re planning on freeform ways to customize the presentation of cats and a novel way to colorize each breed.


Legions of tasty cats


So the appetizer above may be a little abstract! More specifically:

  • each taste’s training is buffed by associated features (crafted toys, in the case of the bitter taste)
  • each taste’s current stat value can mildly buff that pastry-cat’s interactions with other associated features
  • maxing a taste stat provides another boost (adds a bonus to their athletic competition score, for sweet cats)
  • maintaining a legion (well, maybe just 100) of quality cats of a specific taste nets you a bakery-wide boost

This will be gradually hammered out. Basically, we want to achieve a nice positive feedback loop for each taste and have taste-training feed into the very features that define each play style.


Crafting, now & soon


We’re focusing on MVPs (minimum viable products) here! Think of it like an onion we’re slicing for you: layer by layer. Our first layer is rudimentary, practically vanilla.


Choose which toy to craft


What’s implemented


Umami pastry-cats engage in play to train. Which toys they play with hold a lot of sway in their training: they’re more engaged by higher-star toys 🌟🌟🌟 and toys made with materials they’ve personally gathered. While crafting and playing with toys are fully implemented, yet-to-come are pastry-cats hunting for the materials and picking favorite toys (which gives a tiny boost and keeps their interest high).


A snippet of the crafting form—note the pawprint symbol indicating the pastry-cat’s personal contribution

Crafting, along with a pastry-cat’s success in gathering, are clearly vital for its umami training. Higher-star toys train umami faster but are far more elusive to gather.


The future of toys & crafting


As hinted at, pastry-cats may eventually show favoritism for one particular toy—be sure to keep it in stock and repair it! You’ll also need to keep a good variety of toys in your toy box, as pastry-cats will grow bored from too much repetition. But you can also delay boredom with fancier versions of the same toys—using all 8 feather slots for a feather teaser, for instance, or choosing more exotic variants of feathers. Different variants of the same material (silk string vs. flax string) lead to different durabilities.

For minimalist purposes, crafting is currently a one-click wonder. Later, there will be crafting durations, cooldowns, and limited slots—and perhaps a few more novel aspects to come. Auto-crafting might be somewhere down the line!

We’re cycling through the five play styles to give each their fair attention, but I for one am excited to properly brainstorm interesting ways to handle crafting.


Next post… we may be spinning up a whole new system for training


Fewer actions, tighter strategy—let’s just say a larger spreadsheet is involved! And your pastry-cat’s distinct personality will require an entirely customized strategy!
 
Back
Top