SamuZai
waffle_mix_ins
waffle_mix_ins

patreon


"Why can't I cook from the stove with more than 2 fridges?"

Update: EA has released a post explaining things that can contribute to performance issues, and functional objects with lots of interactions- like Fridges and Stoves- is one of them! You ever notice when you click on a fridge or a stove, the game might take a second before the click feels like it registered? That's because they're FULL of interactions. Unless you have my Simple Fridge mod, you'll experience this even on high-end computers. When Sims do something autonomously, they're basically "mentally clicking on stuff" and experience the same hangs, which is just another reason they want to direct you in certain ways with these objects! Every time a Sim wants to cook, they have this same little hiccup of checking all the available options...And if you're on a lot with a lot of fridges, and a lot of sims about to cook, a lot of options are gonna potentially be considered at any given time. If you have 8 Fridges and 8 Stoves but don't allow stove cooking, Sims have halved their options for what to think about when starting the process!

I've seen some people (reddit, again) complaining about this, and attributing it to "spaghetti code".

First off, The Sims 4 does not have spaghetti code, and you don't know what that is.

The reason this is a restriction is pretty simple:

Cooking from the stove and the fridge work differently. Who would have guessed!

Also, I think some people believe the tooltip in the image is saying "You're not allowed to use stoves at all on a lot with multiple fridges". But it's not. It's saying "You can't select which food to cook via the stove pie menu on a lot with multiple fridges, use the fridge instead".

Admittedly, the tooltip isn't well written and it does make it read like "You CANT use this stove IDIOT! No cooking is ALLOWED on this stove AT ALL!". But that's not what it means!

There are two reasons this works the way it does.

The main, guaranteed reason is because while all fridges inventories on a lot are shared- so it never, ever matters which Fridge a Sim is using to cook from- cooking on a Stove is something that can be "occupied". Multiple Sims can grab from a fridge in sequence, but sims cannot stand around and wait for a stove to be empty before cooking.

If you cook from the stove, you are sort of "claiming" the stove for the recipe you're about to make. But what if another Sim on the lot did the same thing, because you're at a cooking competition with 8 contestants all trying to cook at once, and they all happened to pick the same stove?! Well, if you cook from the fridge, it doesn't matter- because they'll just route to use any available stove. Even if there's only one fridge, the lot and competition work.

But if there's only one stove, they won't stand in line- they'll give up. If two Sims started from the same Stove- they won't stand in line, they'll give up. If there's 8 stoves and 1 fridge they then choose a stove after starting from the fridge and can pick any that isn't being used. But if there's 8 stoves and each sim starts from the same stove by sheer luck, it won't. Make sense?

The reason it works this way is about the proximity to the fridge I just mentioned, although it's kind of the same problem but in reverse.

When cooking from the Fridge, the process is as follows:

When cooking from a Stove, the process is as follows:

Can you see the issue?

Because the Fridge steps start before the Stove steps do, the Sim decides which Stove to use while cooking. They'll use normal routing procedures for picking objects, usually preferring the combination of "Closest" and "Highest Quality". When it comes time to use the Stove, they just look for a stove.

But what if a Sim starts from the Stove?

The Fridge Cooking order of operations kinda "just works" in a big kitchen environment. The stove cooking order doesn't necessarily because there's an intermediary step between selecting the food, and a Sim being able to start the process- from the fridge!

There are systems in game to "claim" something in the sense that you stop someone else from using it. But in most cases, Sims will simply choose another option. Gonna sit? Someone took your chair? They'll sit somewhere else. But for cooking, they're expecting a more rigid process, because it involves multiple steps and objects. When you start from the stove, they do "pick that stove" and intend to use it after they start cooking. But Sims aren't picking chairs before they eat, right?

But they base the process on the decision, they don't actually "claim" the stove in the sense that another Sim can't also try to do the same thing- they just pick the best items near the chosen stove, and go from there. Once they start cooking they'll try to pick a stove, which would normally be the one you chose because they started the process BASED ON that stove, then start to head for it- and realize it's being used, and give up, because both Sims technically "claimed" that stove, and will end up heading for it.

It's like when you start to cook, realize there's no counter space, and put the cutting board down. The reason the Sim didn't check for this to begin with is because it's more performant on routing and calculations to do it step by step than decide all these pieces ahead of time.

So you get Select Stove -> Pick Recipe -> Sim heads to Fridge most logical based on stove choice -> Grab -> Think about what counter to use -> use that counter -> prepare -> think about which stove to use -> use that stove

Instead of Recipe Chosen -> Pick where to do every step of it -> Mark the future steps as occupied so other Sims can't take it -> Force other Sims doing the same thing to calculate this all at once too and account for your claimed sources

As a result, even though you said "Use this stove, and the general area around it", and the Sim says "Ok, sure!", you can run into a situation where multiple Sims end up doing the same thing and getting confused.

Because the game isn't typically expecting a kitchen to even have more than one of either of these things, it has no system in place to "permanently claim" a stove, pick a recipe, and ensure the Sim uses that stove after heading to the fridge, and no other Sims try to do the same. Because Lots typically don't have multiple Sims trying to cook at once, it has no systems in place to be sure they don't simultaneously pick the best stove and one cancels the other out.

The result is that a new lot type that might have multiples of each on it, because there's a built in function to run a cooking competition...needs a way to be more certain Sims are gonna behave believably when making these choices. And the best way to do that is to allow you to start from any fridge, but not from any stove.

Tada!

The code for this is also extremely simple, there's no spaghetti. It literally checks if the lot has >2 stoves on it and turns off the options on the stove.

I imagine when testing out a cooking competition, the devs realized that Sims were getting caught up in the process when they tried to get to the Stove part of cooking at the same time, especially on lots where they were all starting from the same fridges, next to the same stoves.

TLDR:

If you've got 8 contestants and "cook" time starts up, all the sims are gonna go start doing the same things. If they all start from the fridge they can all get to the "go to a stove" step and start heading to an available stove, because at that step, they simply look for an available stove. If they all start from the stove...the stove isn't exactly specifically reserved for them exclusively, but they do specifically want to use that stove...and they can bump into each other and cancel each other out.

It's much simpler than reworking the way routing works in general just for this specific niche usage of objects. In essence, it's the exact opposite of spaghetti code. It's a simple, functional solution for a surprisingly complicated problem. There's no reason to complicate cooking, recipes, and stoves, all at once, by designing a new system to claim a stove, when you can just say "Hey, for this one? Start from the fridge!"!

"Why can't I cook from the stove with more than 2 fridges?"

Comments

Good to know! I've never had this issue because I only cook pet food on the stove, and sims aren't really vying to do that, lol.

Toni Hawthorne

I mean if a sim is using the fridge, no, they can't use it at the same time. The point is that if they're constantly trying to cook- which they would be in this context- they'll eventually manage to find a fridge. But because cooking STARTS at the fridge, they'd be risking cancelling it out at stoves, which would leave cutting boards all over the place. If they start from the fridge exclusively, they don't have that problem, once they grab the board itself.

Intern Waffle

My sims can't get to the fridge if someone else is at it in that exact moment, they say they can't reach it. This wasn't always like this, they used to be able to queue but not anymore. I always thought EA just broke this, but if you're saying they should be able to maybe it's a mod I have...

feather


More Creators